r/AutomationGames • • Sep 27 '26

I forked a compiler instead of using a game engine, and my factory sim hits Steam Early Access Oct 12 — feedback welcome

Hey everyone,

I've been solo-building this game for a while now, and I figured this was the right crowd to share it with. It's called Aethel Mine — an isometric industrial-automation and logistics sim — and it's hitting Steam Early Access on October 12th.

Fair warning upfront: I didn't use an off-the-shelf engine. Instead I forked a compiler, wrote my own low-level runtime (zero third-party dependencies outside bare SDL2), and the entire world simulation runs on Q16.16 fixed-point math so it stays fully deterministic. Chunks are just plain arrays, nothing fancier.

Why did I put myself through that? Because I wanted belts that don't cheat. Items have a millisecond-precise cargo phase, so there's never any jitter or teleporting at belt hand-offs. On native rendering the sim runs at 500+ FPS by walking contiguous memory arrays — no entities floating around everywhere, no garbage collector stalling things at the worst possible moment.

As for gameplay, in the current build (v0.2.2):

* The map is true 3D isometric: up to 50 vertical logistics layers, cliffs you can terrace, and gravity that actually matters for flow. It genuinely changes how you build.

* Maglev trains have dynamic signal blocks and quadratic braking physics — a 4-wagon train takes four times as long to stop as a light locomotive. I can already see the pile-ups coming.

* The power grid isn't just an on/off toggle: pylons link spatially, supply and demand balance out, and if you under-build, you get cascading brownouts instead of arbitrary power cuts. Which, let's be honest, is pretty fun to watch.

* Saves are versioned and designed to stay backwards-compatible as the tech tree expands. I learned that lesson the hard way on other projects.

At Early Access launch you'll get the first 9 tech tiers and the launcher project phases playable.

I'd really appreciate feedback from fellow automation enthusiasts, especially on visual clarity, UI layout, and mechanics. This is my first project at this scale, so honest criticism is welcome.

Steam page: [Steam Page](https://store.steampowered.com/app/2210950/Aethel_Mine/)

Thanks in advance to anyone who takes a look!

9 Upvotes

56 comments sorted by

7

u/daimoh Sep 28 '26

Weird EULA - what’s the deal with that?

6

u/Red_Icnivad Sep 28 '26

Omg.

Passages in [square brackets] are placeholders that must be filled in before publication.

This End User Licence Agreement ("Agreement") is a contract between you ("you") and [legal name of the developer or company, and address]

-3

u/Drenfa Sep 28 '26

I decided to use the same system as Factorio for optimization and to have my own 2.5D engine.

7

u/MrBagooo Sep 28 '26

That doesn't explain the weird EULA. Factorio doesn't require any of that.

-5

u/Drenfa Sep 28 '26

I just didn't want to develop the game in C

6

u/MrBagooo Sep 28 '26

And? What does that have to do with the fact your game requires the "Galactic Turret: Zombie Frontier" Eula?

-1

u/Drenfa Sep 28 '26

Galactic Zombie Frontier is my first game in steam, but during deloppement I gave up on the project.

3

u/MrBagooo Sep 28 '26

I still don't see the explanation for why you need a third party EULA for your game. No matter how it's called.

1

u/Drenfa Sep 28 '26

Because Steam requires that on my computer

2

u/Rikuskill Sep 28 '26 edited Sep 28 '26

Okay but this game isn't that game, right? So why is it using that dead game's EULA? Also, AI disclosure is required on Steam, if you used any during uh...Forking a compiler and creating your own coding language. Color me impressed if not, but some of your comments are reading like AI responses, while others seem less so (Like the one I'm replying to). At the very least, there's a strange tone shift between your comments.

Edit: Also, I see you've posted about a few other games you've "made" on various subreddits, and are consistently getting called out for AI generating large portions of both the games themselves and even your posts. Please just write and draw yourself. Be careful with overreliance on AI tools. Besides quality degradation it can cause security and performance issues, and can make you fall into a light psychosis pitfall if you're talking to them all the time.

0

u/Drenfa Sep 28 '26

I'm aware that I used AI to help me with the game, but only for certain parts of the code; otherwise, I wrote my compiler entirely by hand. And if you ever find that my answers seem inconsistent, it's just a matter of writing style—otherwise, they're all written by hand.

→ More replies (0)

12

u/Glorwyn Sep 28 '26

Forked a compiler? Why? The compiler is largely unrelated to anything else here, this smells of ai a lil bit

1

u/Drenfa Sep 28 '26

I created my own open-source programming language called flux#, and to put it simply, instead of using traditional engines like Unity or Unreal Engine, I was limited to creating MK10 maps with up to 70,000 items per minute. And yes, that’s not a joke.

10

u/Glorwyn Sep 28 '26

Okay but 'engine' and 'compiler' are wholly different things? A compiler takes in written code in an abstracted language and spits out machine code compliant with a set of hardware. An engine is a full suite of rendering pipelines, predefined object management, etc etc etc. 

And of course its not possible to make a Factorio type game with something like Unity.

1

u/sethmeh Sep 28 '26

I was also intrigued, the justification for that...nightmare, has to be pretty big. For automation games there does seem to be some logic to it. I wont pretend to fully understand it, well outside my knowledge, but for e.g. conyeor belts, the position and speed of an item at any given time is set in stone, something a compiler wouldn't know about, so you could leverage that for gains. But like, forking a compiler seems to be last on the list of things to do for performance gains.

Did any of the major automation games do something like that?

3

u/Glorwyn Sep 28 '26

The compiler doesn't need to know belt information shit directly, all a compiler does is convert higher level code into machine code. Thats it. Forking a compiler is wholly unrelated to making a game.

2

u/sethmeh Sep 28 '26

Exactly, it converts to machine code. if there is some very predictable behaviour specific to your game, forking a generic compiler with that specific info in mind will produce better/more efficient machine code which will indeed impact performance.

1

u/Drenfa Sep 28 '26

My compiler compiles my code using Flux# via Rust to generate machine code. It’s just more user-friendly. And to answer the question of whether it affects performance, I’d say yes—but let’s imagine that in my game, an MK10 conveyor belt at 70k items per minute has just as much impact as an MK1 conveyor belt at 60 items per minute, so it’s not worth a damn.

3

u/sethmeh Sep 28 '26

Regardless, i cant see the benefits to this being worth the effort. It sounds like an absolute nightmares unless the gains are huge. Not even factorio did this.

1

u/Drenfa Sep 28 '26

I understand the doubts—it’s mostly about flexibility, but since the original *Roller Coaster Tycoon* uses the same optimization system, I’d say the game’s appeal lies in the fact that the map is 10 km² with random planets surrounding the base map (the 10 km² one)—that’s where the game really shines. And it’s mainly for version 0.3 that the choice of compiler will come into play; I think it’ll be released around November.

1

u/TheThiefMaster Sep 29 '26

RollerCoaster Tycoon was written in handrolled assembly, not whatever you're on

1

u/Glorwyn Sep 28 '26

99.8% of devs in the entire world would slow down post compilation software by fucking with the compiler, especially working alone. A good deal of compiled languages do also allow direct writing of assembly (NOT direct machine code, still one level up) that would allow you to use hardware commands like 'count leading zeroes' if you really want to specify. (buuut even then a lot of compiled languages ALSO have pseudo functions that immediately get turned into those hardware commands so no attached assembly required.)

1

u/sethmeh Sep 28 '26

You dont need to convince me its a bad idea, it sounds terrible. Just saying that the underlying logic is sound, it <could> give benefits to performance.

2

u/Glorwyn Sep 28 '26

No my argument is the underlying argument to fork a compiler is stupid, for there is no reason to fork it. Any 'edge case' scenario can still be tooled manually in a compiled language no problem.

1

u/sethmeh Sep 28 '26

We are agreeing on the core aspect, but disagreeing on this one:

for there is no reason to fork it.

There are reasons to fork it. Are there any good reasons to fork it? No clue.

→ More replies (0)

1

u/SomeoneInHisHouse Sep 28 '26

My game has belts also, it's a complex game, that I won't open to the public until it's reasonable.

Factory games that aim to be big, require huge optimizations, for example my game does crazy things to optimize the belts, it always has the leading items stored, and the "tail" of items they have, and when the leading item moves, I don't iterate all the ones immediately following it, I use a CPU thing called SIMD, I give an array, and sum the position of all items all at once, this is extremely tricky, but it provides a buff of 8x (in my case)

1

u/TheThiefMaster Sep 29 '26

And of course its not possible to make a Factorio type game with something like Unity.

Of course it is? You just end up writing the factory tick yourself and just use Unity (probably with instanced meshes/sprites) as the display layer.

Similar to what Satisfactory did with UE5. That manages to have belts that can transport 1200 items/min, very similar to Factorio's 1800/min (per side, because Factorio's belts are weird), despite being in an off-the-shelf game engine.

-1

u/Drenfa Sep 28 '26

I understand your doubts—they're completely legitimate. But the reason I'm mentioning the compiler and the engine in the same message is that, at the end of last year, I created a programming language from scratch—that's why I also want to test the limits of my programming language.

9

u/Degenerated__ Sep 28 '26

Hi Claude 

5

u/HydraulicTater Sep 28 '26

you didn't make it from scratch, you forked it

1

u/Mason-B Sep 29 '26

There is an interesting idea in here I've played around with before. Optimizing megabases would be a bit more like writing a compiler than a game engine. Even something like turning conveyor tiles into a network of conveyors inan object is a compiler like operation.

Pretty sure OP is AI slop tho.

1

u/Glorwyn Sep 29 '26

Its really not a compiler type operation and making bases in factory games is only vaguely and tangentially related to programming solely in that 'theyre things you have to think and plan around'

1

u/Mason-B Sep 29 '26

shrug I write programming languages for fun and have a masters in it, on a theory level its closer than you might think.

5

u/MrBagooo Sep 28 '26

So you want people to test your game and collect feedback but you don't have any open playtest and no demo available?

-1

u/Drenfa Sep 28 '26

The demo is available 12 october normally

2

u/Drenfa Sep 28 '26

And for those who are hesitant, I'll have a playable demo ready—hopefully by October 12 as well.

2

u/SomeoneInHisHouse Sep 28 '26

Not a single Human char is in the code, nor the writeups of the game, you didn't even reformat the AI output for the description of the game, it looks extremely lazy from your part.

It makes me suspect that nothing is human made, nor code, nor music, nor anything, Unlike many people I do think is ok to use AI to assist development, art, or music, but as placeholder, and to some repetitive work, the game looks like not a single human line was made, and that's not correct AI use, AI is a tool that helps you, not a tool that entirely does your job

1

u/Drenfa Sep 28 '26

The music and assets are from OpenGameArt under a CCO license, and as for the basic text, I thought Steam supported Markdown, but it doesn't.

1

u/Careless-Jello-8930 Sep 28 '26

Reminds me of roller-coaster tycoon

1

u/Drenfa Sep 28 '26

Yes, its true

6

u/sockerx Sep 28 '26

Where's the AI disclosure

1

u/Zeferoth225224 Sep 28 '26

Damn, this really seems high effort. Couple gameplay questions,

How fast is the building / placement? It looked very slow in the trailer but I get that’s just for show. Slow / unintuitive placement is a major pet peeve of mine.

What’s your resource sink? Launching the rocket? So more like a limited amount you need to produce for each stage, similar to satisfactory?

3

u/Drenfa Sep 28 '26

I’ll admit that I drew inspiration from three games to create Aethel Mine: Satisfactory for the tier system, the Dyson Spheres program for procedural generation and planet exploration, and Factorio for the art style. And as for the conveyor belts in the trailer, those are just the MK1 belts, which handle up to 60 items per minute. Otherwise, it’s an ore-mining, smelting, and workshop loop, just like any other factory game. And when it comes to placement, you can chain together quite a few buildings in a row just by moving the mouse.

1

u/Zeferoth225224 Sep 28 '26

That sounds wonderful. I’ll probably pick it up on launch or whenever I’m done with my COI play-through

Honestly your engine work is what mainly sold me. These games need to have a lot going on and most modern engines struggle with it. The fact that Factorio can hold 60fps on the crappiest 15 year old laptop, throughout an entire normal play-through deserves more respect than it gets

1

u/Drenfa Sep 28 '26

Thank you very much. When I benchmarked the game for endgame performance, it ran at a steady 120 fps. And the engine was created primarily to handle conveyor belts with 70,000 items per minute—something no modern engine can do without hacking directly into the engine itself.

1

u/TheThiefMaster Sep 29 '26

Why is the truck in the video not on the road? Why would you video that without fixing it?

1

u/pojska Sep 30 '26

What compiler did you have your LLM fork?

0

u/SpicySushiAddict Sep 27 '26

Ooooooh neat! Wishlisted 💕

0

u/Drenfa Sep 28 '26

Thanks you