The Factorio Mindset
thediff.co
thediff.co
It really reminds me of software in many ways. You fiddle with tiny little things like balancing a belt, and then move on to building belt balancers. You then move up the abstractions to where you're not really placing inserters all the time. Maybe you make some blueprints and you're placing a whole set of nuke power plants in one go, or looking at trains.
The kid loves it, but you can (luckily) tell the difference between what he makes and what I make. That engineer keep-stuff-organized thing takes a bit of time to hone, but he's getting there. He also understands how to find root causes now, based on looking at where there's a blockage in production and tracking back along the chain.
One thing that's interesting is that the game is a bit, you know, dark. I mean we've built hell and the kid doesn't mind. Literally paved paradise with concrete. The air is black with robots, 100k of them at the moment. There's furnaces all over the place. We got rid of the steam power generation but there are huge areas of nukes all over. The natives are getting atomic bombs thrown at them constantly, it takes a while to even get to the nearest spawner. Or water that isn't green.
And yet he doesn't ask about how we destroyed all the cliffs and filled in the lakes, and chopped the trees.
"How should we make it bigger, dad?"
DSP is a great successor, even more than Satisfactory. It's amazing how well the DSP devs have figured out how to scale from small factory plots to inter-planetary supply chains to galaxy-wide economies, all to build a mega project.
The only thing that's really missing (and same with Satisfactory, IMO) is the punishment for expanding too far too fast, the way the bugs in Factorio operate. DSP is supposedly adding combat later though, so we'll see how it pans out.
Oxygen Not Included does that really well IMO. Almost every production process has inputs and outputs, and a lot of the outputs are waste that you need to figure out either how to utilize as input in another process, or to dispose of safely and in a scalable way so as to avoid negative repercussions. Waste isn't just in the form of products either. For example, one of the challenges that sneaks up on new players is that heat is also a type of waste, and if you don't take steps to manage it (for example, by insulating your power generators), it can wreck your colony.
With DSP you can just move to another planet and rebuild, which is great from scalability but less important challenge wise.
I went in expecting it to have "cringeworthy levels of hippy idealism", but no, it is actually a reasonably sane game. It is the first game since Wurm Online that I have felt like part of a community thanks to the game mechanics themselves, and not just incidentally. A lone person will need inordinate amounts of time to go far into the tech tree, so instead people specialize, and soon after I was running a delivery company that moved orders of resources between players, with people greeting eachother when passing by at the trade district.
But thanks to how it works, it doesn't need 10s of coordinated people, you can certainly just join some existing server with a friend and have an equally good time.
DSP is prettier, grander in scale, and also has a lot of niceties that come with being part of the second generation of the genre. Absolutely worth playing if you enjoy Factorio.
What have you done to me! Loved that game and wasted way too much time on it, will have to spend some more.
Edit: Looks like it even got a fair few upgrades since! You can even code in game now.
It essentially made it fun to destroy the native environment and replace it with concrete. It's not even that we didn't mind doing it, it's that we enjoyed it. It was kind of unsettling, since it made me think that is how I would feel if I were a 19th century British colonialist bringing "order" to various native lands.
I'm planning to start a new save soon, and I think I'm going to try playing with some self-imposed rules, like not removing vegetation. Not as much, anyways. I'm not exactly a budding architect; where I bothered with buildings at all they're mostly giant boxes filled with machines. But I've seen some pretty creative, inspiring buildings on the Satisfactory subreddit and I think the game is flexible enough that I could create a factory that incorporates the nature around it rather than just smashing everything flat.
Really? Worse than an asteroid strike, a massive volcanic eruption, a massive flood? Blights and other naturally occurring diseases that have wiped out entire species are much worse ecological disasters than building an entire Manhattan.
If you building was the worst thing that ever happened to that planet, it wasn’t modeled as a real planet in the first place.
Amazing graphics optimizations, considering the dynamic lighting and how many objects are rendered.
With a few exceptions, I think building placement is outstanding. Hold alt and it snaps, even if the other building is far away, with audio cues. Conveyor belts give a dopamine hit every time I place a long one. That is with foundations of course. Without them you get the spaghetti mess.
What is more difficult than Factorio is that there are no blueprints or robots to build stuff for you. Also, the terrain doesn't help, we can't just destroy cliffs. But that's also interesting.
However my gripes are the same as yours. Placement is an unwanted meta-game that they ought to remove via better QoL features. The existing alignment, snapping, picking, and repeating features are inadequate for a game like this.
I guess it's because he knows that it's just a game. And there's nothing in the game's rules that allows you to befriend the natives. There's simply no other choice that is rewarded other than expansion and domination, because the natives will always be hostile when you get close to them. Plus: The natives expand too. From time to time new biter bases spawn.
so the engineer motive is clear: survival, not invasion.
besides, the aliens are an infestation, not part of the ecosystem; as a matter of fact, alien left to their own device will expand and kill the planet biomass. aliens are there to consume, no less than the engineer.
Same as all other life really.
That’s what really bothered me with this game. I’ve tried playing it in the past but this kept me from liking it and continuing. It’s depressing enough we’re doing some version of that in real life, but at least I’m not fully responsible for it. In the game, I am causing it and am 100% responsible for it.
I don’t know why they did it that way. It could just as well have been without this destructive and deathly element.
Oh well, I have other hobbies.
On one hand, before we disabled it for being buggy i nearly made a bunch of things perfect (if energy intensive) recycled, OTOH I found we had a nuclear artillery shells and trains that could fire them... Then built a pipeline to make the shells and started cleansing...
Its has some connection to reality that cuts deep and yet I want to play more get my SPM to go higher, it feels like everything wrong with modern life depressing and fun at the same time.
I think the problem for me is that these games give me the illusion of learning, building, and accomplishing things, which my little engineer brain loves. But once I come out of the haze of addiction, I realize it's nothing more than an illusion, and I just stomach going on.
I'm sure that if I applied myself in the same obsessive/borderline-autisitc manner that factorio brings out of me, I could accomplish real world things that actually matter to my life.
I feel like HN browsing also does this to some extent. Makes me feel smart and very technical - but I don't actually DO anything with this knowledge.
Much like with story-telling in the form of books and movies, playing (good) games is an opportunity to learn about yourself and reality, and then grow in response.
You are the player of games. Be mindful so the game doesn't play you. ;) It sounds like you're doing well to recognize "enough," when the trade-offs don't make sense anymore, though a bit late. Maybe next time you'll slow down before anxiety need kick in. Good luck, have fun!
You can like doing something and then realize you’re spending more time on it than you want and stop, both things are fine.
Why do it? Because building stuff in the real world isn’t necessarily better. What are you gonna do with things you build? In a game, at least you’re not wasting real resources.
Riding a bike is probably better, but what do you do when you’re done?
So personally, I think it is totally fine to invest these 100 hours and then abandon, because they were entertaining. You don’t have to deeply invest and hence, I don’t see it as "a problem".
Many games can be social experiences. Even if the game isn't multiplayer, like a rogue-like (or Wordle -- is Wordle a rogue-lite?) you can compare "runs" with others. Other single-player games have a compelling story or characters you can discuss with friends who have also played it. But some games don't work for meaningful social discussion at all, and it can be hard to want to play them!
https://www.reddit.com/r/slatestarcodex/comments/ml00ac/how_...
>I often wonder if these specific types of games are redirecting a nontrivial amount of human intellectual output into a deadend. They're explicitly geared to lure in the kind of obsessive tinkerer types who've historically driven scientific and engineering progress. Only now, there's little to no payoff for the rest of humanity if they spend thousands of hours consumed by one of these games. What's Newton's modern equivalent doing right now? Probably perfecting a build order in Stellaris.
And there's an assumption that people who aren't 'playing' would automatically be doing something 'worthy' instead.
I suspect the reality is that most of us here went through an obsessive period of learning something which paid off in unexpected ways later. Eve could be teaching all sorts of things, including business and organizational skills: https://youtu.be/6rEfQ3GT73A?t=878
The companies we work at have been made to understand that the factory must grow.
Thanks for the wargerr recommendation!
> that my time would be better spent working on a personal software project, where i get reasonably similar enjoyment, more satisfaction, and presumably more transferable skills.
Sure. Maybe your time would be better spent working overtime too. Factorio is a game, and focus on the fun parts. Battling NPM dependencies after a full work day is not fun, it's just more work. There are some days when you are just cranking out code and not worrying about much else, but those days are not necessarily the norm.
So, yes, programming is of course more productive, but that's not really the point of leisure time.
Programming also comes with baggage that Factorio can do away with (eg sibling comment mentioned build tools, I've given up on an evening of personal programming before because setting up the build environment was too much effort... looking at you cmake you piece of garbage... Or because I hit a bug that was too much effort to find/fix. Factorio "debugging" is much simpler, its about finding blockages or optimizing things, not figuring out why undefined is not a number in some deeply nested code where the value couldn't possibly be undefined but it turns out some async code changed it without you realizing...)
I'll have cycles where I'll choose lower levels. For example, most recently I purchased a classic hp rpn programmable calculator and have had fun working through the manual, doing exercises, solving problems with it, and of course, learning to program it.
One faction is focused on harmony with the environment, the other is heavily focused on modifying it.
(factorio fan, but with little time to enjoy it)
Or heck, even completing either Angels or SpaceEx mods show a serious amount of dedication, "self-starter-ness" and competence in reading documentation. I've put 5000+ hours in and fell off spaceex in the green space science - so much depth.
[1] http://psdoom.sourceforge.net [2] https://github.com/docker/dockercraft
But someone should figure out how to simplify the Clustorio installation into a docker-based one. Then everyone could enjoy 60k SPM giga-bases. Even better add auto-scaling to spin up a new EC2 instance when UPS drops below 60 on any node in the cluster.
https://registry.terraform.io/providers/efokschaner/factorio...
Spoilers!?!
Playing Factorio is actually doing some sort of real-world silicon design, or when you I'll the aliens you're really killing aliens... ?
Not read the book, only watched the movie. Probably someone will come and tell me I misunderstood it.
I think the last starfighter would be a more apt analogy
I've only really played 2 games. Started messing with making mods and decided I'd better stop playing that game for a while.
Hell of an opener that just makes me immediately dislike this guys entire worldview.
Kinda also backed up by the fact that he doesn't mention the very unsubtle commentary of you basically strip mining an alien planet clean mutating the wild life into a homicidal frenzy in desperate attempt to stop you from killing their home with pollution.
People who get hung up on this are pretty shallow though. It’s such a tiring trope of “oh no, look at how bad colonialism is”. There is a lot of good stuff to discuss about the game beyond the sophomoric analogies with the native aliens.
When people are discussing things like call of duty, battlefield, etc it would be equally as idiotic to discuss “the unsubtle commentary of the horrors of war”.
However. I do think it’s a pretty amazing mechanic that the game designers put in the game, and is a great tool to shine light on the darkest aspect of the human race: our unbelievable capacity to subdue and destroy.
Factorio isn’t just about being dropped in a war zone and shooting the bad guys. It’s about scaling up destruction to a planetary scale. Often unintentionally (pollution) but also intentionally (nukes). These are all very rich and interesting things to speculate on, none of it is “shallow”.
I saw some recently on twitter who were discussing how they run their relationships like a corporate business... They have standups, 1on1's, scheduled relationship sync up meetings, etc. As if doing this bullshit during their day jobs wasn't enough.
I would be careful about this stuff as a lot of people are in the “productivity coach” market.
When you consider this inherent contradiction you really start wondering what the point of capitalism is. You reach the end and stop playing. Why haven't we stopped "playing" the same way I stopped playing?
There is an existential crisis at the core of capitalism. Productivity can only exist for the sake of leisure.
You can disable them entirely at game start, completely skip military tech, and your pollution cloud will still blight the land, poisoning trees and lakes (and fish) around you.
You can turn off pollution too.
There are also mods that'll let you grow trees or fight pollution in other ways.
There's a cost to pollution in the vanilla game, when both pollution and biters are turned on, so it's not like this game is pro-pollution.
I have a bigger problem with nuclear waste having no consequences.
But even then... it's just a game!
I find it curious that some people get up in arms over the ethical issues in a game like Factorio, yet hardly anyone (outside the religious right) complains in all the violence in the most popular games of all: AAA first-person-shooters... or most games, really, as most of them place the player in the role of a killer, where you solve problems and win by learning to be a more effective killer.
Sure locally a bear can get me in a forest, but I don't need ecocide to survive a bear, and neither the engineer has to to survive biters.
The biters don't actually destroy the biomass. Canonically, in the game, they've been there forever : https://wiki.factorio.com/Enemies , so their expansion is only triggered by the arrival of the engineer.
They also consume pollution, making them symbiotic with the local biomass.
I found the necessity to have a devastating impact on the planet's ecosystem fascinating. Even trying a "clean run" where you minimize pollution and number of killed aliens, you can't avoid the alien native's natural expansion. It's probably impossible to win without a lot killing.
That said, I don't think the game has bad intentions. It highlights the zero sum nature of resources and negatives of expansion at all costs.
He just beat the game for the first time. I bought it, we played multiplayer. And I taught him the mantra "great is the enemy of good enough". Our run took 14 hours.
I also know many people like this at work, and wish they could have the Factorio experience.
If you refactor at the first sign of trouble, you remain blind to totally new to problems just around the corner.
Also -- playing the game over again gives a colossal speed benefit. Probably half of my time spent on this game has been ripping up everything I did that I realize clearly won't work nicely once I reach the next tech tree item. Knowing what the end game looks like in advance saves a lot of time.
I think I partly like this game because it reminds me of programming before programming was work. Trying to get through everything as fast as possible sounds like the antithesis of that, but maybe that's just me.
You may need to shift-click some electric poles to disconnect them from other poles, and use copper wire to connect them exactly how you want.
Add a lowkey alarm buzzer (the speaker) to let you know this is going on. Try to have a second, louder one that detects whether it's failed and the factory is still on because of a short circuit. Conduct tests by wiring in a constant combinator outputting a fixed value of A (possibly negative).
One-man Factorio is a lot different than big-team Factorio. As a single factory-developer, you need to be startup-like and remember that your time in the present is the most valuable resource.
So always automate everything the first time, because you WILL need more of that component. But do it in a quick and dirty and unscalable manner so you can move on to something else. Start with box-fed production lines; when you're sick and tired of refilling the boxes, it's time to re-do it better.
Build a system to support this throwaway development, where you can tear things down later and replace them and it keeps working. Start with a narrow bus, not eight lanes each for iron and copper — but keep it open for expansion downstream. When you run out of space near the start of the bus, don't just move things a few tiles to squeeze in an incremental upgrade: build a much bigger production line further downstream. You'll have more and better components to do it right.
And always, always, always, keep your interconnects separate from your production components. You don't need a single straight-line bus like some people think, right angles and parallels and grids are fine, but if your belts are snaking through something else, it's real hard to tear down that something-else, and it's real hard to scale up. Encapsulation is important.
And when you're finally scaling up like crazy, ready for the big leagues, use a high-throughput component someone else developed and have your robots install it.
If you haven't, read their blog! It's a master class in release notes and development communication.
You can put up a manifold without doing any math and just stop adding factory components when it can't feed the next building. You can sink hours into just designing the perfect balancer for your situation, let alone building it. I always go the manifold way.
Now, there are two things that code has to handle. You could put in a simple bit of special-case logic, or a case statement, and move on, OR you could instead spend time, codes, and tests making it robust to handle many different types of input, with a type-specific config system that makes it easy to add new type-specific behavior.
Our predilection on many teams is to skip the middle part, and write robust automation the first time we hit a special exception. ("This used to be about ordering burgers but now we want to also order shakes, and they don't have a cook-time.") It seems like the OP was suggesting that we do a "crappy" good-enough solution to that intermediate phase of complexity, as there's a chance you might not need more than that.
The idea is that you grit your teeth and let code be deduplicated twice (but no more), rather than immediately DRYing up code, so you'll (hopefully) have a better sense of what the common code should look like.
(I personally think it's too hard in practice, as common code can be written sufficiently differently to not be recognizable as common by the Engineers Of Tomorrow).
Second iteration is almost always copy and paste of first with small tweaks. I’d rather that than some kind of conditional.
The best UI almost never fits the most convenient technical solution so we optimize for UI and then technical.
Bots are roughly blue-science, or the ~halfway point of the tech tree.
---------
So everything "Before" construction bots can be basically seen as a "prototype" or "throwaway" factory. Everything "after" construction bots is also a prototype, because you can just hit the "deconstruct planner" and tear everything down automatically and reconstruct from scratch whenever you want.
If everything is a prototype, then perfection doesn't matter. Instead, you're "pursuing" perfection, teardown whenever you think you have a better grand plan, and copy/paste the design back if you make a mistake (or Ctrl-z / undo your decisions as needed. Etc. etc.)
more general tip: clean interfaces are more important than massive capacity up front. in the long run, you will always need more steel/circuits/etc than you can serve with a single production line. but even if the internal layout is a mess, a functional unit with a clean interface can be scaled horizontally forever.
-----------
So long as you've unlocked enough military (ie: shotgun in the early game, or tank in the mid-game), you can just clear out more room and then build there. (Shotgun has significant pierce-damage, enough to kill the alien bases. Tank also has significant pierce damage and impact-damage, allowing you to win against small / medium aliens through the midgame rather easily and cheaply)
Don't even "tear down" your oldbase. Just fully abandon it and move elsewhere. Even without bots, there's no penalty to "just leaving".
---------
Bots / deconstruction planner is more of a thing if you're tired of cleaning out biter-territory and want to "recycle" your old areas.
I agree clean layouts inside of functional units is unnecessary. land is cheap; just make something that works and cp it everywhere.
https://anuke.itch.io/mindustry
and
In particular, mindustry can actually run scripts within the game to automate a lot of things. If you like factorio you're going to like these 2 games.
[1] https://www.captain-of-industry.com/
PS: To my surprise, simulation games are a lot of very technical work full of algorithms and optimizations, compared to an average SWE work in a tech company.
When I mentioned our focus on reality, I meant that the mechanics and processes are mostly driven how things are done in the real world and by playing the game you can even learn something new (e.g. steel production needs oxygen). However, it is a game and this can be done only to a certain degree, especially the early game has a lot of "shortcuts".
As an example of realistic mechanics and processes, you build excavators that mine ores and coal, trucks haul materials around the factory, terrain collapses as it is being mined, iron and steel smelting produces slag that needs to be disposed, fertilizer for farms is made from ammonia (synthetic process) or from compost (natural process), etc. (see our wiki for more https://wiki.captain-of-industry.com/ ).
Im working on a video game too so I understand the necessity of limitations and shortcuts. And your point could be entirely clear if I were to play the game. I'm just pointing out, IMO, there's a disjoint between what I see and what you say.
Edit: I'll add, I believe the communication and interpretation of game functions is extremely important. Im creating a city builder/simulation game, but the depth of the simulation is determined by what's communicated to the player, not what the code does. I could create an intelligent game AI and a sophisticated economy, but if it doesn't communicate that to the player in any way, then it's no different than RNG to the players eyes.
I really like mindustry. It's open source, available for free on multiple platforms (it's java), and paid on others.
It constantly gets updated, and has a nice progress curve. I'm not entirely sure how I feel about the recent addition of processors. It breaks the balance of the game a bit, as you can basically program your own AI for it, and do stuff like smart electric grid load balancing, shutting down reactors before they overheat, and use units as resource transports. On the other hand, it's fun to play with, and with a bit of automation you can save a lot of space.
As an electronics engineer, that game is quite appealing to me, and nicely illustrates some of the challenges we face everyday in engineering: refactoring, dependencies, synchronization, modularity vs optimization, "security", etc.
I feel like a better link might be the official website at https://mindustrygame.github.io/
There's also Satisfactory if you like a 1st person view of things.
Song of Syx looks interesting though, definitely worth at least a try. Thanks for the recommendation.
Songs of syx is very fun.
1) Hmm, this game is a lot like programming. A lot like it.
2) Maybe I should just program? That is real work & I can get done more work done, be more productive.
3) [stopped game, started programming]
Plus without the inevitable bullshit that's coupled to any real work.
I am an artist; I flirted briefly with Minecraft for a while, then looked up from a flawed first attempt at an underwater glass dome at 3AM, decided I would much rather exercise my creativity in a realm where I can show it to other people and maybe make some money from it, and uninstalled Minecraft forever.
The Sequence, The Sequence 2, by One Man Band:
https://play.google.com/store/apps/dev?id=640940791858937636...
I have the same problem with the various Japanese logic puzzles (Soduku, Nurikabe, Hashi, etc): 1) This is fun! 2) Hmm, I'm using the same algorithms to solve every puzzle 3) I could probably write a solver 4) Don't write solver. Move on to something else.
It is more about physical layout and queuing than programming.
With Factorio for me, I always reach a point where I know how I'm going to scale up, and then I lose interest in actually doing so. Just knowing that I could do it is satisfying enough.
I started it, but never finished it.
On the one hand, it is a vastly better debugging experience. You can see the entire state of the machine, and easily step through the execution.
In contrast, with my day job, I'm dealing with incomplete documentation, poorly designed and very large libraries without adequate comments or organization, subtle bugs that only occur in unidentified situations, etc.
But at the end of the day, TIS-100 felt more like work or a hobby project, so I'd be better off doing one of those.
I was frustrated by TIS-100 for exactly the opposite reason: it wasn't enough like programming to interest me.
It's really a puzzle game, not a programming game. Its similarity to programming is just window dressing.
Still I enjoy the absolutely insane creations of some people in those games. I'll never forget the Doom-style 3D engine[0] someone created inside Factorio, with (iirc) a clever configuration of trains as a huge graphical display.
Some of my favorite modpacks are Enigmatica 2: Expert, Omnifactory, and one I just started recently, Divine Journey 2.
They all have a similar process of starting with nothing but a book full of quests to guide your progression, and end up with you automating everything from farms to quarries to mob grinders in order to produce items that have comically difficult "recipes" to craft.
Scratches the same itch as Factorio, Zachtronics games, Satisfactory, etc. but often has some fun side goals such as making your factory look beautiful, exploration, fighting bosses, and best of all, getting your friends hooked on the game and playing on a server in a group!
One of the first public posts about it was on the industrial craft forums: https://forum.industrial-craft.net/thread/8845-factorio/?pos...
Some are more programming-like than others.
The man's rich enough to be swimming with whales or partying in space and he's sitting in his basement playing Satisfactory.. there must be something to it
Some lesser-known recommendations:
Bitburner (a game in which you use javascript to "hack" computers... not really hacking, but really using your javascript skills)
Screeps (use real programming languages to harvest and compete for resources... sort of like an RTS, but where you program your units instead of directly telling them what to do)
Neon Noodles (use a simple visual programming language to program robots to make sushi... super innovative game, with a free demo on steam... highly recommended)
Mindustry has a little programming if I recall correctly -- mostly it is tower defense and resource gathering, though.
EDIT: As you can see, everybody was excited to bring up Zachtronics. Really neat developer.
minecraft (redstone/technical farms get quite sophisticated)
astroneer
The be fair the 3 last are more programming than like :)
I dunno if the author is joking or not, but I heard this argument over and over. Am I in the minority to think that it's totally insane that everything should revolve around raising the GDP?
I feel smart people working at Facebook or Google working hard at finding new ways to serve more ads to more people is the huge waste of talent.
(assuming a demurrage currency and land value taxes)
As for automation: I'm surprised that scaling is presented as the main - or actually only - reason for automating. I for one don't automate for speed, I automate for correctness.
The other day we discovered that some of the tens-of-megabytes JSONs we're reading on a regular basis have an error: single-element arrays were replaced by that element, so e.g. `[1]` would become just `1`. That was okay for the parser on the receiving end, but not for the recently introduced more efficient serializing module.
I could just go over those files and search all such occurrences by comparing them to the reference type definition - would take less than an hour provided I didn't make any mistakes. But I'm only human, so I opted for something else, namely: drawing from the pile of rich manure that is the npm repository and finding modules for:
1. Generating JSON schemas from TypeScript type definitions.
2. Validating JSON files against JSON schemas.
Armed with these tools I modified the files until the validator confirmed full correctness. Took longer than expected, but now not only can I guarantee that these files are error free, but any future ones as well.
First there is no automation, then one resource is automated but others are not, then several are automatized, but combining them is not. There are gaps where building the next thing doesn't make sense even if it makes sense when you have little bit more resources.
I think this is true in business as well. It's hard to tell when you have crossed the threshold where building the next level makes sense.
You tend to use a lot of time and money to build the next level of automation and only then you can measure if it was worth it or not.
Someone higher up must really like it?
Now comping employees for after-hours time spent playing factario -- now that would be groundbreaking haha
I'd be skeptical of that claim. I'm sure there would be at least a few engineers that showed up to work pretty tired because the factory needed more iron plates. :-)
There is a very popular player mod for Stardew that allows automation of all “click to perform” actions normally operated by the player: Harvest fruit from a tree, Brew honey into mead, Cook wood into coal, Age mead in cask, and so on. Essentially, it introduces the conveyor systems of any production game — Verb Noun With Machine — and uses footpaths as the invisible conveyer belts. It is possible, with careful pathing, to build a farm that is automated from harvest to sale, and generates an endless supply of any product with minimum downtime.
I found that when I applied this approach to Stardew, it was really fun making it work, and once I had it all working, there just wasn’t anything left to enjoy. Not because the game doesn’t have a near-infinite list of things you can produce (especially with mods), but because it turns out that the joy I derived from Stardew is about doing things myself. And so my intricately-pathed full scale production farm sits unopened.
I point this out because in tech we often forget that capacity and automation can, in some cases, be inversely proportional to enjoyment. I could apply a photo editing ML algorithm to my photo library and no doubt it would be nice, but I enjoy the act of taking a photo and fiddling with it, even if I send exponentially fewer photos to my friends. One of them has a complex multi-device “ingestion pipeline” and it treats them well for their purposes, and I’ve built one before, and it turns out I just don’t enjoy digital photography at that scale.
I love playing games like Factorio (though I haven’t gotten much into it yet) for their own sake, and I don’t deny that it’s possible to enjoy the art of scaling and automating these things, and that others feel differently. But my experience with Stardew pipelines was a really useful lessons in learning what I enjoy and when I enjoy it, and when that means I shouldn’t scale it up any further.
The factory doesn't have to grow to feed the rocket. The factory must grow because it must grow. And you're there to make it grow.
Then pretty soon you've launched hundreds of rockets and you're still thinking "if I can just get my trains working a bit better, remove this bottleneck then I can expand over there..."
Rarely does an article online hit me as directly as this one does, good work.
That's probably too much to ask. :-)
https://news.ycombinator.com/item?id=27476768
---
When I was learning to program, I tried to make a toy artificial life evolution simulation. Particle organisms on a 2D plane had 'dna' which was a list of heritable traits, like size, speed, number of offspring. Bigger organisms could eat smaller organisms, but they burn energy faster. 0 energy = death. When two organisms of opposite gender collided and had sufficient energy, they'd give some of their energy split among the offspring, with each offspring's 'dna' values set to one of the parent's +/- 5%. As I was developing this, I hadn't figured out how I wanted to do food yet, so as an easy first step, I just had a constant amount of energy that was split amongst all organisms on the screen. Lots of little dots buzzing around, was kind of neat but nothing too special. I left it to run overnight.
When I came back I was very surprised: previously i was running at about 30FPS - now it was running at about 4 seconds per frame. The screen was filled with dense expanding circles of tiny slow organisms emanating from where organisms had mated and nothing else.
My simulation evolved to outsmart my simple food algorithm: when food is divided equally among all organisms, the best strategy is to use minimal energy and maximize offspring count. I had populated the world with a default offspring count of ~5 and they had evolved to the tens of thousands. The more offspring an organism had, the greater the amount of the energy pool would go to their offspring.
It was a very cool "Life, uh, finds a way" moment - that such a simple toy simulation of evolution was able to find an unanticipated optimal solution to the environment I created overnight was very humbling and gave me a lot of respect for the power of evolution.
I'm hoping that some day the source code is released, i've talked to the critterding person, but they don't seem amenable to it. Critterdrug is probably my favorite evolutionary algorithm example.
I'll never be able to do the game(s) justice, even if i link a video of the shared screen.
You can use a functional language to program them, or any other kind of language of your own choosing.
You could write your own from scratch or using any one of many libraries to do some of the heavy lifting for you and concentrate on higher level problems.
There's a lot of literature and research on all this, so it's not at all hard to get started if you're in to programming already.
Rip up large fractions of the setup and lay them out again with more straight lines and sensibility"
Newb.
You don't rip the first spaghetti base up and rebuild, that's a waste of time.
The first base only exists to get you to the point where you can build a main belt line and then make everything nice and straight and coherent.
The old base just sits abandoned, until the new belt line eventually encroachs, and then you just unceremoniously raze it.
Plus my skill can be replaced by roughly how well I can memorize other peoples' factory patterns.
Don't get me wrong though, it's a great game, and probably had the same impact for its genre as Doom had for FPS games.
What about Factorio circuits? :)
Satisfactory's unexpected joy is in exploration, such as finding all the alternative recipes. However mid game starts to be a bit of a drag, and late game is borderline miserable (the Smart! mod helps tremendously but I'm talking vanilla-only experience here). In particular in satisfactory you never out-tech problems. You never get tools to help you start abstracting away details like you do in Factorio with construction bots, beacons, modules, and substations.
Satisfactory makes me want to design & build pretty or well laid out factories. But since it doesn't give me any tools to help with that, I end up with just floating slabs in the sky of endlessly repeated simple connections.
Factorio feels far more rewarding when you come up with clever layouts for things, as you can then copy/paste it. Or design it to be modular for later expansion. There's the metagame there if making things tileable for rapid expansion later on. Satisfactory largely doesn't have that. It's too painful to expand anything, so it's all one & done stuff
I suspect this is part of my own mindset. Satisfactory is all about watching the sunset over your factory as you goof around with good friends after a real world hard days work. There's no frantic action to be had by design. The factory is slower.
I really didn't like Factorio at all. It's either too frantic with enemies or just a grind with no enemies. I'm always down for Satisfactory and beer with friends though. That game has a relax and chill factor like no other.
Shouldn't this be the other way around? Speccing out requires higher upfront effort, meaning a higher coefficient, but ultimately results in better long term results in overall required effort, for an O(log(n)) graph.
The logistics network is too powerful, pilers don't really change how items move around, and fluids/gases/solids are treated the same.
I can understand that Factorio is balanced differently but it's annoying to build up a factory and then need to do non-factory things when a resource runs out or aliens attack your base.
Early game I agree, but mid/late game I couldn't disagree more. Satisfactory desperately needs a construction bot or blueprints or something to help you build at the scales it starts pushing you towards, or you just afk forever. Also the ticket loop as the endless resource sink is far less interesting than factorio's endless research paths.
Also some mods can counteract resource depletion if desired.
If you've completed enough of the base game, I can recommend Seablock (which includes AngelBob) and Space Exploration as two mods that make the game dramatically larger. I played some of Pyanodon (which is also sometimes mentioned as a big mod) but I found it kind of gratuitously complex.
—
So, this is totally pop-evolutionary-psychology, but I think the relevant predisposition is towards hoarding. For 100,000 generations, humans (and our ancestors before then) have had to gather and store food and other supplies to see them through the winter (or other hard times). We are wired to do this because we would have died out if we didn’t.
Building games let you build up your hoard of stuff (whether trains, rails, buildings, tiberium silos, green circuits, …) in a tight feedback loop that repeatedly triggers the “this is my stuff, now I am safe” dopamine response.
This also explains collecting hobbies, and goes some way towards explaining the desire for wealth acquisition in general.
Most physical objects deteriorate over time which makes gold inspired money an exceptionally poor way to keep track of things because the things that deteriorate disappaer but the gold that represents the things that deteriorated did not. So people hold onto gold or money without limit as it does not capture the full cost of deterioration leading to an imminent crisis in an economy that is not growing because the ponzi scheme has been exposed.
Love this game.
At least this article doesn't tell me I will love this and I should play it, unlike all the others. So thumbs up for the article :P
When you’re first starting out, it feels amazing to input two numbers, add them together, and print them out to the console. When you’re a professional programmer, it feels like you’re wasting time if you’re not defensively coding against future concerns and potential feature needs.
Likewise in Factorio, I can’t enjoy success in any part of the game because I feel that any investment in one level could potentially be taking away from planning for the next level. Level, in this case, being the current level of technology researched in the game.
I realize that this is irrational but I surely can’t be alone on this.
https://www.protondb.com/app/526870
Factorio seems to run on macOS and SteamOS + Linux.
Layout your process and point it at your cloud service(s). Monitoring built in.
As much as I love vanilla Factorio, mods make it 10x better for me, and solve all sorts of little complaints and annoyances in the vanilla game.
If there's something in the vanilla game you don't like or want to improve, odds are there's already a mod that fixes it for you.
= Todo List - don't know how I ever lived without this mod, which I use to keep track of what I need to do next... absolutely essential for larger bases. I really wish it could be used 100% from the keyboard, but it's still good despite requiring the use of a mouse.
= Angel's Addons - Storage Options - the only one of the Angel mods I use... it gives me much larger storage containers, like warehouses, so I don't have to bother with the annoyance of dealing with lots of tiny containers
= Attila's Zoom Mod - lets me zoom much further out than the vanilla game does, also lets me view specific positions on the map very quickly and reliably
= Auto Deconstruct - marks drills for deconstruction once the resources they're mining run out... just a nice little convenience mod that stays out of the way 99% of the time, and simply makes the game just a little bit smoother in that I don't have to manually find any of the drills that need deconstructing
= Belt reverser - quickly reverse belts... saves so much time. This should really be in the base game.
= Bob's adjustable inserters - a quick and easy way to adjust where inserters pick up and drop off to... should also really be part of the vanilla game
= Closest first - make construction bots build and deconstruct close things first.. don't know why this isn't the default
= Even Distribution - super useful way of quickly distributing resources over many consumers, instead of loading resources to one consumer at a time.. should also be in the base game, imo
= Exploration Vehicle 1.1 - lets vehicles run over and destroy trees and rocks in the way
= Explosive Termites - quickly destroy annoying trees. There's a Tree Deleter mod I used to use until it stopped working. That was good too, and even faster than the termites.
= Far Reach - some might consider it cheating, but I just find it annoying and a waste of time to always run back and forth across the screen to do something... this lets me do it from anywhere on the screen.. with a zoom mod, my reach becomes even greater.. both of these together with some turrets make fighting vanilla biters too easy, so if you want to fight biters with this combination I'd recommend using a biter enhancement mod like Rampant to make the biters more of a challenge
= Fill4Me - auto-fill items with fuel/ammo when you place them... very convenient. See the above note on the Far Reach mod, as this is another mod that together with Far Reach and the zoom mod makes fighting the biters too easy.
= Ingos Advanced Start - gives you a bunch of bots and an exoskeleton to start with.. I love this, as I really don't enjoy the slow speed and slow construction/deconstruction rate that I'm stuck with in the early game... this lets me get to the fun parts of the game faster. Not recommended for one's first playthrough, but I find it essential afterwards.
= Inventory Repair - uses repair packs auto repair items in one's inventory.. another nice convenience mod that just does the right thing without interaction
= Laser Lines - super useful for aligning stuff perfectly
= Land Mover - dig holes to make landfill... with the Far Reach and a zoom mod using landfill will let you make 100% secure barriers against biters. Some might consider this cheating, others a welcome relief. I just turned off biters completely eventually, so it doesn't matter to me now, but the mod is still useful to me for crossing lakes and the like.
= LTN - Logistics Train Network - not an easy mod to learn to use, but totally worth it for large train networks, and my favorite of mods of its kind, but I'd use it with LTN Combinator and LTN Content Reader for more convenience
= Miniloader - very quick loaders and unloaders that don't impact UPS nearly as much as some similar mods
= Nixie Tubes - a nice way to display info about various signals
= Power+: Power Utilization Meter - adds signals showing useful information about your power networks
= Splatter Guard - keeps you from being run over by trains.. there are a bunch of other mods like this, which I haven't tried... probably anything that does the same thing will be good enough
= Squeak Through - absolutely essential mod that lets you walk through tight spaces you otherwise couldn't
= Train Network for Players - an easy way to call a passenger train to your location
= Vacuum Cleaner - quickly pick up stuff on belts or from the ground.. much more convenient than the vanilla method
= Where is my body - shows where you died... lots of mods to do this sort of thing.. any of them are probably good. Something like this should probably be part of the vanilla game too.
I use many, many, many more mods (over 100 in total).. but this should be a good start for just about anyone.
I've also disabled biters in my games, because I just find them annoying at this point, but when I had them enabled I also liked to use the Rampant mod to make them more challenging, and a bunch of improved weapon mods like Modular Turrets, which I remember liking.
Restarted it few times to apply what I learned. It is still early in the game, they keep adding things but that thing is really amazing and provided fun to me that I didn't feel in the game for a long time.
Oh no, the GDP!
I appreciate most of the rest of the article, but the premise that it's value is tied to it's ability to influence one economic metric is a very flawed lens to view the world through.
Instead tinkering more with self-hosting stuff lately. I find it scratches the same itch - building / optimisation / problem solving vibe but has a slightly more tangible enduring value (something useful + learning)
https://www.reddit.com/r/slatestarcodex/comments/ml00ac/how_...
>I often wonder if these specific types of games are redirecting a nontrivial amount of human intellectual output into a deadend. They're explicitly geared to lure in the kind of obsessive tinkerer types who've historically driven scientific and engineering progress. Only now, there's little to no payoff for the rest of humanity if they spend thousands of hours consumed by one of these games. What's Newton's modern equivalent doing right now? Probably perfecting a build order in Stellaris.
great observation :)
"Here's why the game factorio is like programming or here's why it's like life. yada yada yada"
Yeah, AND this guy takes the next step and turns the analogy into a "mindset."
Great. Revolutionary. First off.. analogy is amazing. Second... turning that analogy into a way of life blows my mind. Is your mind blown too? This guy is a genius.
The next step, (and I've seen plenty of this on HN), is to turn that analogy into a full blown "theory" of some sort... complete with diagrams.
Factorio can literally be renamed "Iterative Development: The Game" and players wouldn't find anything confusing about any of it.
I think all the analogies I've seen are good. The problem is they're obvious. They don't really bring anything new to the table.
Great you identified an analogy. Big deal?
Still, it never seems to stop people from doing it despite not "bringing anything new to the table" with their comment. So why do it?
I'm not sure why this would be so frustrating for you. It's not like the author themselves went down your slippery slope to full blown theory. If they had? Sure, that would be a bit of the usually breathless attempts at "thoughtleading", but I see no need for preemptive criticism.
Also congratulations for being really tall. I'm about average height.
https://www.google.com/search?q=factorio+is+like+programming
There are tons and tons of these.
Is it your opinion that Factorio does not have elements of gameplay that require (or benefit from) an approach to what is used in programming?