News for hackers. Stuff that matters.
Re:Factorio 1.1 stable by munificent on Friday January 29, 2021 @12:58PM (#25960231)
Yes, I think Factorio's engine is more complex and difficult to implement well than a typical AAA game with rich graphics and "realistic" physics.

In Factorio, you have a very large number of active objects with very dense, complex, time-critical and deterministic interactions. In most other games, you have relatively few active entities. The game gives you the illusion of a rich living world, but a lot of the graphical bits floating around can't actually be interacted with. The physics system is a complex bit of math but is fairly isolated from the rest of the engine and has relatively few entities to process. If it gets things "wrong" in minor ways, the player is unlikely to tell.

Also, many AAA game physics and graphics engines work the same enough that engines can even be reused. There's a relatively small amount of bespoke system design. It's just following the same well-tread paths. Factorio's gameplay has enough novelty that the engine has to solve challenging somewhat unique problems.

Source: Senior software engineer at EA for eight years and wrote a best-selling book on software architecture for games.

Re:Factorio 1.1 stable by DonHopkins on Friday January 29, 2021 @06:53PM (#25964444)
One metaphor for The Sims I had while developing it was that it was like a pinball machine with lots of balls in play at once -- all the characters, bouncing around off of each other and the objects in the house, which can run autonomously without any user input, but then you can change the simulation's fate with the flippers (pie menus selecting actions overriding the default behavior).

But Factorio is like a pinball machine with MILLIONS of balls in play at the same time, and it perfectly and efficiently tracks each and every one of them.

There is one sad aspect to Factorio: There is only one character: you. Alone. On a planet. All by yourself. Destroying the environment. But once you get over that depressing aspect, it's great fun! ;)

Re:Factorio 1.1 stable by maccard on Friday January 29, 2021 @03:02PM (#25961656)
> Yes, I think Factorio's engine is more complex and difficult to implement well than a typical AAA game with rich graphics and "realistic" physics.

I think this is maybe true, but it's not a fair comparison. The real comparison is how much effort would go into making factorio with all of its polish in a 3d world rather than a 2d world.

Factorio's technical impressiveness (?) Comes from how well it's designed and implemented. The limitations that it imposes are part of the reason it runs so well, and also what make it such a great game.

> The physics system is a complex bit of math but is fairly isolated from the rest of the engine and has relatively few entities to process. If it gets things "wrong" in minor ways, the player is unlikely to tell.

The difference between doing the above for physics and graphics is orders of magnitude in how expensive they are, and how complicated they are to implement. You're right that most people don't notice when they go slightly wrong, but they often go catastrophicly wrong. (Much more often in 3d than in 2d). Factorio skirts around this by not running a general purpose physics sim for the game logic, and constraining the problem space (which to me is even more impressive than getting a 3d physics engine right)

Re:Factorio 1.1 stable by DonHopkins on Friday January 29, 2021 @07:09PM (#25964581)
Satisfactory is 3D Factorio, by the makers of Goat Simulator.

It's a great game, but quite different than Factorio in many ways, and much simpler along certain dimensions, with less abstraction and meta-programming: no drones, no blueprints, etc.

The fact that Factorio is based on a two-dimensional grid vastly simplifies it and makes it more like a precise programming language or spreadsheet, than a free-form 3d graphics editor. I do love them both, though.

Don't get me wrong: 3D adds a lot of cool stuff, like the ability to make layers and build vertically way up into the sky. And you have much more freedom about where you place objects. But that makes it practically impossible to implement the kind of precise grid-based blueprints and drone construction and logistics system that Factorio has.

To its credit, Satisfactory would be practically unusable if it weren't for the wonderfully easy-to-use well designed construction tools, that make it a snap to route and connect conveyer belts and pipes in 3D. But that's a much messier user interface problem that the precise grid of tightly constrained tiles that Factorio uses. But it does live up to its name: building and connecting 3D conveyor belts and especially pipes is quite satisfying!

Here's a great example of how you can abuse the fantastic degree of freedom that Satisfactory provides -- but that freedom comes at a cost of user interface complexity and the lack of higher level automation and abstraction -- the features that make Factorio such addictive "programmer crack".

I Produced so Much Nuclear Waste the World Is Ruined Forever - Satisfactory

https://www.youtube.com/watch?v=Oh2oF-eZTD8&ab_channel=Let%2...

The Satisfactory developers must have been equally horrified and gratified to see how people abused their beautiful game in unintended ways, but they responded by optimizing it a lot so it still runs smoothly. But the scale of Factorio's world is still much larger than Satisfactory, even though it's more constrained.

And another thing about Satisfactory is that the world is hand designed and breathtakingly rich and beautiful, unlike Factorio's procedurally generated world (which has beautiful 2D graphics, but no human touch). But that makes it even more tragic that the goal is to cut down all the trees, peel up all the glowing slugs, and ruin the bucolic countryside with mega-factories belching out pollution and waste.

More about Satisfactory:

https://news.ycombinator.com/item?id=24156912

>Satisfactory is like a 3D version of Factorio, which lets you build huge multi-layer mega factories up into the sky. But it's not as deep and sophisticated as Factorio, and doesn't have drones or blueprints. (That would be a lot more difficult to accomplish in free-form 3D, than with Factorio's 2D tile grid.) It's kind of like the giant simple Legos for younger kids, as opposed to Factorio that's more like Lego Technic.

>Satisfactory is well worth playing if you yearn for a 3D version of Factorio, but I still keep going back to Factorio, which is more like "Dwarf Fortress" in its depth and sophistication. Satisfactory's world is breathtakingly beautiful, lovingly hand-crafted by artists instead of procedurally generated, which makes it all the more satisfying to despoil and ruin with huge mega-factories belching out smoke and radiation.

Re:Factorio 1.1 stable by Baeocystin on Friday January 29, 2021 @09:08PM (#25965298)
I've played quite a bit of both. Satisfactory is beautiful to look at, and you can tell it's a labor of love for the developers. But there are so many bugs compared to Factorio, even compared to Factorio early on in development. Part of the problem is that Factorio sets the bar incredibly high in terms of developmental rigor, but if I were to recommend one over the other, Factorio would get the nod from me.
Re:Factorio 1.1 stable by maccard on Saturday January 30, 2021 @06:33AM (#25968265)
I didn't want to bring satisfactory up myself but I completely agree with everything you've said. You're right that factorio leans into the spreadsheet-esque aspect of the game, and it uses that to it's advantage both from a gameplay and a technical perspective. Making satisfactory a 2d game wouldn't give you the same experience as factorio!
Re:Factorio 1.1 stable by DonHopkins on Sunday January 31, 2021 @01:48AM (#25976684)
Where Satisfactory really shines is its 3d building tools. It makes building fun and easy and precise, and then you get to jump and climb and ride around on the stuff you built. It's very satisfying. That's hard stuff to get as right as they did.
Re:Factorio 1.1 stable by maccard on Monday February 01, 2021 @05:13AM (#25987318)
I found the building controls _slightly_ clunky, (but I don't think I could improve on them hugely). I actually felt what you said in your original post was what really draws me to it; I genuinely felt like I didn't want to ruin the planet!