Factorio is two games: pre and post robots.

Post all other topics which do not belong to any other category.
blazespinnaker
Filter Inserter
Filter Inserter
Posts: 665
Joined: Wed Sep 16, 2020 12:45 pm
Contact:

Re: Factorio is two games: pre and post robots.

Post by blazespinnaker »

Another approach, less algorithmic and more trial and error, to solving this is properly segmenting the runs and getting the community to work on it.

I would suggest bots and post bots.

For pre bots, I would suggest ore production first, research, and then post automation. For automation, I would concurrently hand craft red science and ore production at the same time, unless it can be shown that two labs are better than one (which is very possible, automation is huge and getting it fast may very well be the right way to go. But labs are very expensive, and that can be used to build ore production).

One key assumption I make, is that the longer you work on ore production before crafting anything else (like science), means the more ore production you can get. Just In Time theory is not to over produce anything you can't use, though there could be keyboarding reasons why this isn't done. So as soon as you start producing more ore than you can realistically craft faster than production into something else, you should work on power/labs.

Four segments could be
a) initial iron/coal/stone prod + 1 copper;
b) power+labs+automation+mass ore prod (including full copper);
c) assembler production + hand feeding for labs. Put down labs, and then hand feed for red/green science until oil.
d) oil + blue science prod to bots. Likely you want to start building red engines/frames here before you get to construction bots, but there's very little tech in between so I'm not sure the concurrency helps that much.

One thing also is how to use your hand crafting queue for this whole period. Also, what the best way to manage coal and hand feeding into burners is. You really need to minimize this as it's an unproductive activity. Labs factories (belts /inserters/labs) might be the way to go here rather than hand feeding.

I've prototyped this, and I've definitely found that hand feeding assemblers is very productive over building infra. It was getting the initial ore production that had me stumped, but I've discovered playing around with gotlap that automation can easily get you massive ore production very early on as I mentioned above. A minmax search alg would have found that faster, I'm sure.

Post bot play is a hugely complex problem and would involve intricate factories as bots can't handfeed assemblers. Logistics system is too expensive, I'm sure. I have some heuristics in mind for bootstrappings to massive prod as I've mentioned previously. Direct insertion to start for sure to reduce smelting -> finished product latency for bot malls, and then more mass automation perhaps. I dunno. Reducing bot travel time is obviously key. Laying out power/belts first is nice, though I get the micromanagement of this is hard without blueprint import.

Frankly, blueprint import should be a part of speedrunning. Keyboarding is cool, but really isn't the soul of factorio. Plus, let's face it, the runners are using blueprints either memorized or printed next to their monitors.

It's possible there may be some factories to build before bots, but I'm very skeptical. The argument for factories is just in time mechanics (assembly occurs as raw materials arrive), but you can hand pull/hand feed very fast and it skips all the belt/ inserter lag. Also, you can't dedicate your entire assembler production to a specific item (such as labs or science) with factories when you need that item most.
OptimaUPS Mod, pm for info.

User avatar
jodokus31
Smart Inserter
Smart Inserter
Posts: 1619
Joined: Sun Feb 26, 2017 4:13 pm
Contact:

Re: Factorio is two games: pre and post robots.

Post by jodokus31 »

blazespinnaker wrote:
Thu Dec 10, 2020 8:52 am
Post bot play is a hugely complex problem and would involve intricate factories as bots can't handfeed assemblers. Logistics system is too expensive, I'm sure. I have some heuristics in mind for bootstrappings to massive prod as I've mentioned previously. Direct insertion to start for sure to reduce smelting -> finished product latency for bot malls, and then more mass automation perhaps. I dunno. Reducing bot travel time is obviously key. Laying out power/belts first is nice, though I get the micromanagement of this is hard without blueprint import.

Frankly, blueprint import should be a part of speedrunning. Keyboarding is cool, but really isn't the soul of factorio. Plus, let's face it, the runners are using blueprints either memorized or printed next to their monitors.
This is IMO the main question here: blueprint import, yes or no?
With blueprint import, you can approach it very differently and it would be more planning and less execution. You can do it very complex, with circuit network, etc.
There's a category: New Game Plus, which is not very popular. Basically any% with BPimport allowed. (And 100% of course, which is very popular)
I wonder why. Maybe the community likes it more, to do the execution? "Keyboarding" is also a big part of factorio, which is not my skill either. Actually, I don't like to watch videos, where someone just places blueprints and rebuilds them pre bots. And with bots it's also not so interesting, because the main thing is not happening on screen.

There is also this mod Brave New World, which could be a nice addition to change the pre bot phase. This would basically remove the keyboarding factor, if BP import is allowed

BTW: Here's part 1 of a very nice seablock speedrun with BNW from SMTaishan, which is insane: https://www.youtube.com/watch?v=TNv0GiDGDBg
Should really have more clicks.

blazespinnaker
Filter Inserter
Filter Inserter
Posts: 665
Joined: Wed Sep 16, 2020 12:45 pm
Contact:

Re: Factorio is two games: pre and post robots.

Post by blazespinnaker »

Yeah, that's new, didn't see it before under category extensions. Deathworld too! Nice!

Unless a mod is largely used (say 50% of all installs), I'm skeptical that a mod category is a great idea. That said, I did want the ghostplacer mod, which I thought was a nice compromise between blueprint import and keyboarding.

And why not just throw it under category extensions? If it gets runs, promote it.

Part of the very annoying thing though, is that they suppress categories even though they have lots of runs like GOTLAP. It has the third most runs. And then there is 100% which has like the least amount of runs of all. Though I guess it's a nod to Nefrums which is reasonable, I suppose.

Not sure why you think 100% is popular. It has very few youtube views relative to all categories. Sure, nefrums gets a bunch, but he's at the top and one of the few that submitted. You need to sum over total views of all videos to get a correct appreciation.
I wonder why. Maybe the community likes it more, to do the execution? "Keyboarding" is also a big part of factorio, which is not my skill either. Actually, I don't like to watch videos, where someone just places blueprints and rebuilds them pre bots. And with bots it's also not so interesting, because the main thing is not happening on screen.
Yeah, it's popular, until you think it through and realize that all they doing is the run over and over again they're just doing a slow motion manual blueprint import. Also, I've watched many runs and after bots, it's all about blueprints. It happens all so fast and unless you knew what you were watching, they could just as easily be using blueprints imports.

"the main thing is not happening on screen." Not sure what you're saying there. You do realize, the main thing is *not* happening on the screen, right?

It's a cute trick, but disappointing when you think it through. On top of that, it discourages great runs. Still, nice to see NewGame+

Once the run category beats out all the others, it will garner some attention I'm sure. The problem is all about getting to bots, though.

I can get to bots in 40 now. Once I rocket launch in 20, I'll share my blueprints.
OptimaUPS Mod, pm for info.

User avatar
jodokus31
Smart Inserter
Smart Inserter
Posts: 1619
Joined: Sun Feb 26, 2017 4:13 pm
Contact:

Re: Factorio is two games: pre and post robots.

Post by jodokus31 »

blazespinnaker wrote:
Mon Dec 14, 2020 4:31 am
Yeah, that's new, didn't see it before under category extensions. Deathworld too! Nice!

Unless a mod is largely used (say 50% of all installs), I'm skeptical that a mod category is a great idea. That said, I did want the ghostplacer mod, which I thought was a nice compromise between blueprint import and keyboarding.

Yeah, mods or mod packs are not so update-safe, but should be possible for a small, well maintained mod. It's rather the bad smell, that a mod could provide some cheats, i guess

And why not just throw it under category extensions? If it gets runs, promote it.

Part of the very annoying thing though, is that they suppress categories even though they have lots of runs like GOTLAP. It has the third most runs. And then there is 100% which has like the least amount of runs of all. Though I guess it's a nod to Nefrums which is reasonable, I suppose.

Afaik, you can define and run a category and then they (Anti, Nefrums) will add it, if you ask them. The question is the popularity, though

Not sure why you think 100% is popular. It has very few youtube views relative to all categories. Sure, nefrums gets a bunch, but he's at the top and one of the few that submitted. You need to sum over total views of all videos to get a correct appreciation.

100% is a very long run and the runners, who run those, need a ton of preparation. But if they run it, its a big event and very popular in my perception.
I wonder why. Maybe the community likes it more, to do the execution? "Keyboarding" is also a big part of factorio, which is not my skill either. Actually, I don't like to watch videos, where someone just places blueprints and rebuilds them pre bots. And with bots it's also not so interesting, because the main thing is not happening on screen.
Yeah, it's popular, until you think it through and realize that all they doing is the run over and over again they're just doing a slow motion manual blueprint import. Also, I've watched many runs and after bots, it's all about blueprints. It happens all so fast and unless you knew what you were watching, they could just as easily be using blueprints imports.

"the main thing is not happening on screen." Not sure what you're saying there. You do realize, the main thing is *not* happening on the screen, right?
I mean, in a "usual" speedrun, you can follow the building process on screen and follow, what the player does. With blueprints, its often a fast and blind rebuilding, without thinking to much (see a 100%-run for instance). Some magic happens, which is not very obvious to the viewer. Personally, i like to watch "usual" speedruns more, and I guess, its also a bit more fun to play, if you got the dexterity

It's a cute trick, but disappointing when you think it through. On top of that, it discourages great runs. Still, nice to see NewGame+

Once the run category beats out all the others, it will garner some attention I'm sure. The problem is all about getting to bots, though.

I can get to bots in 40 now. Once I rocket launch in 20, I'll share my blueprints.
Sounds nice
My answers in green.

blazespinnaker
Filter Inserter
Filter Inserter
Posts: 665
Joined: Wed Sep 16, 2020 12:45 pm
Contact:

Re: Factorio is two games: pre and post robots.

Post by blazespinnaker »

"without thinking to much"

Hmmm, just fyi, in speedruns there is zero thinking. It's all reflexes and memorization. Everything has been organized, planned and practiced ad nauseum off screen. It really is just manual blueprint import. It may look like they are figuring it out as they go, but they really aren't. That's the illusion.
OptimaUPS Mod, pm for info.

User avatar
jodokus31
Smart Inserter
Smart Inserter
Posts: 1619
Joined: Sun Feb 26, 2017 4:13 pm
Contact:

Re: Factorio is two games: pre and post robots.

Post by jodokus31 »

blazespinnaker wrote:
Thu Dec 17, 2020 6:53 pm
"without thinking to much"

Hmmm, just fyi, in speedruns there is zero thinking. It's all reflexes and memorization. Everything has been organized, planned and practiced ad nauseum off screen. It really is just manual blueprint import. It may look like they are figuring it out as they go, but they really aren't. That's the illusion.
It has been organized and planned by themselves beforehand, often commonly used patterns, but sometimes new, creative builds. They always analyze and try to optimize the strategy. And it has to be optimized to be built quickly by hand.

Any% with blueprint import needs a very different strategy, because you can build more complex setups, with logic and magic. Set recipes of assemblers, connected wires with conditions and limited chests are a big advantage even without bots. Not to mention to plonk down complete builds

blazespinnaker
Filter Inserter
Filter Inserter
Posts: 665
Joined: Wed Sep 16, 2020 12:45 pm
Contact:

Re: Factorio is two games: pre and post robots.

Post by blazespinnaker »

Yes, blueprint import would enable a greater level of optimization, especially post bots. Prebots, I don't think blueprint import helps that much, just reduces the memorization involved. If you had the ghostplacer mod, it might help.

That said, have you watched a speedrun post bots? It's all blueprint wizardry at that point. It happens very fast, and unless you know what you're looking for, they might as well be imported.
OptimaUPS Mod, pm for info.

User avatar
jodokus31
Smart Inserter
Smart Inserter
Posts: 1619
Joined: Sun Feb 26, 2017 4:13 pm
Contact:

Re: Factorio is two games: pre and post robots.

Post by jodokus31 »

blazespinnaker wrote:
Fri Dec 18, 2020 2:23 am
Yes, blueprint import would enable a greater level of optimization, especially post bots. Prebots, I don't think blueprint import helps that much, just reduces the memorization involved. If you had the ghostplacer mod, it might help.

That said, have you watched a speedrun post bots? It's all blueprint wizardry at that point. It happens very fast, and unless you know what you're looking for, they might as well be imported.
Pre bots it's still a bunch of help to have import as I described before (chest limits, recipes, circuits wires and conditions, pick items with pipette etc.). But its also a bit dull imo.

With bots, the big difference without import is, that you cannot create blueprints from nothing. You have to have the stuff placed once for real or as ghost and copy it together, that it works. And then its quite error prone. The player needs to place a modular build, which can be copied easily. All in all, much harder than to place optimized blueprints from library.

blazespinnaker
Filter Inserter
Filter Inserter
Posts: 665
Joined: Wed Sep 16, 2020 12:45 pm
Contact:

Re: Factorio is two games: pre and post robots.

Post by blazespinnaker »

Pre bots it's still a bunch of help to have import as I described before (chest limits, recipes, circuits wires and conditions, pick items with pipette etc.). But its also a bit dull imo.
Yeah, it'd help a little I guess, but in terms of actions you have to perform, those amount to a very tiny % of a typical speedrun. combinators are rare in speedruns and I'm very skeptical they're helpful prebots. You can shift copy assembler stuff anyways, so minor help there IMHO.

Chest limits, I suppose that wouldn't be so bad as chest limits are slow, though you can shift copy those as well. But how many chest limits do you really do?

Mostly it's belt / inserter / power layout, hand pulling/feeding, entity placement. Oil in particular is big pain with the pipes.

An frankly, blueprint power poles drive me up the wall. Very confusing what they've done.
With bots, the big difference without import is, that you cannot create blueprints from nothing. You have to have the stuff placed once for real or as ghost and copy it together, that it works. And then its quite error prone. The player needs to place a modular build, which can be copied easily. All in all, much harder than to place optimized blueprints from library.
Yeah, to someone who knows what's going on, that's true, but to the naive viewer, it looks like a lot of imported blueprints. But someone who knows what's going on would generally also know that the entire thing is just manual blueprint import and everything has been planned and done offline.

You'll even notice that the runners will sometime take pains to explain that the blueprints are coming from their copy/paste buffer.
OptimaUPS Mod, pm for info.

mudcrabempire
Fast Inserter
Fast Inserter
Posts: 110
Joined: Sun Oct 28, 2018 2:44 pm
Contact:

Re: Factorio is two games: pre and post robots.

Post by mudcrabempire »

As far as I understand, the prime reason that throws you off of testing your theories yourself is that you simply lack the finger skill required to keep up with your thoughts.

Have you thought about writing a bot to do that for you? Building a factory is basically just executing a very elaborate script of instructions, which would be both trivial to code and trivial for a machine to execute flawlessly. The main hurdle would be to find a way to interface between your program and factorio (eg how to send fake keyboard/mouse orders to it or something equivalent). But this has been done before, and as opposed to other games, it´s not "illegal" in factorio (eg noone will have a problem with it, though if you post a video you should still declare what you are doing i think).

If you manage to do that (or find someone to do it) you could open a new category of speedruns: Scripted.

Sidenote: The perfekt script would only work without biters. With biters you may want to introduce a "pause" feature to take manual control for some biter clearing or you have to delve into the black depths of AIs.

Zavian
Smart Inserter
Smart Inserter
Posts: 1646
Joined: Thu Mar 02, 2017 2:57 am
Contact:

Re: Factorio is two games: pre and post robots.

Post by Zavian »

mudcrabempire wrote:
Sat Dec 26, 2020 1:38 pm
Have you thought about writing a bot to do that for you? Building a factory is basically just executing a very elaborate script of instructions, which would be both trivial to code and trivial for a machine to execute flawlessly.
...
If you manage to do that (or find someone to do it) you could open a new category of speedruns: Scripted.
https://mods.factorio.com/mod/AnyPctTAS
https://www.youtube.com/watch?v=qYIplmAQcWU
Sidenote: The perfekt script would only work without biters. With biters you may want to introduce a "pause" feature to take manual control for some biter clearing or you have to delve into the black depths of AIs.
My understanding is Pollution is deterministic, so you should be able to determine when and where pollution is hitting biter nests, and hence where you need to build defences. Biter behaviour should also be deterministic, but might be affected by a psuedo-random generator that varies between runs, which might make automating clearing nests difficult. (Although a conservative turret creep strategy might be workable, especially if expansion is off).

Yoyobuae
Filter Inserter
Filter Inserter
Posts: 499
Joined: Fri Nov 04, 2016 11:04 pm
Contact:

Re: Factorio is two games: pre and post robots.

Post by Yoyobuae »

Zavian wrote:
Sat Dec 26, 2020 2:00 pm
My understanding is Pollution is deterministic, so you should be able to determine when and where pollution is hitting biter nests, and hence where you need to build defences. Biter behaviour should also be deterministic, but might be affected by a psuedo-random generator that varies between runs, which might make automating clearing nests difficult. (Although a conservative turret creep strategy might be workable, especially if expansion is off).
Once a map is started the pseudo-RNG is strictly dependent on player inputs. That is, if player input is always the same frame perfect script then the pseudo-RNG will always give the same results.

Now if you change just one input by just one frame then the rest of the run will probably have different RNG.

blazespinnaker
Filter Inserter
Filter Inserter
Posts: 665
Joined: Wed Sep 16, 2020 12:45 pm
Contact:

Re: Factorio is two games: pre and post robots.

Post by blazespinnaker »

mudcrabempire wrote:
Sat Dec 26, 2020 1:38 pm
As far as I understand, the prime reason that throws you off of testing your theories yourself is that you simply lack the finger skill required to keep up with your thoughts.
The suggestion was to slow the game down using /c game.speed = X which is I think the best way to do it. Scripting isn't really a lot of fun, at least for me.

It seems sluggish at first, but you find yourself very soon having to move very fast even at slow speeds trying to be optimal. So many decisions, so little time.
OptimaUPS Mod, pm for info.

Nefrums
Long Handed Inserter
Long Handed Inserter
Posts: 75
Joined: Mon Jan 01, 2018 12:57 am
Contact:

Re: Factorio is two games: pre and post robots.

Post by Nefrums »

I agree that the game before and after bots are very different, but the exponential curve is mush slower than what you expect.

There are also several game engine limitations that are important.
You cant have more than like 2-3k entities blueprinted before the bot construction queues start to slow down construction. This get much worse if some of the blueprinted entities don't have construction material available or are outside of roboport range. The game can maximum dispatch 3 pots per tick, if it tries any item that dos not have materials or are outside of roboport range it stops. So if you have big blueprints outside of roboport range it can take a minute or so before any bots are dispatched. This is important in categories that allow blueprint import, like NG+ or 100%


The trigger point to when the game switches from before bots to after bots are when you have bots flying, have enough roboports, and have enough construction materials for the bots. In my experience it is not worth rushing one of these things without getting all of them.

After you have gotten to the post bot game you want to spend all your time setting up the next thing to blueprint spam. So for me it is important that you do as much of the things that you cant just copy paste before bots. like the automated mall that feeds the bots with construction materials. One idea that we have used before it to copy paste the entire mall to double it, first thing after bots.

Another thing to consider is the startup time and payback time of the builds. It takes several minutes for any build to fill al belts and internal assembler/furnace buffers before it starts running at full capacity.
The resource cost of anything you blueprint is very high. It takes 5-10 min for a build to produce more than it cost to set it up.
This means that it is not worth to increase production in the last 10 min of a speedrun. Mostly the bots just idle then.

There is also a limitation of the map, as there is a finite amount of resources available close by, and the setup time of anything increases with distance.

I've spend much time trying to optimize the post bots gameplay. And I do believe that it is not worth it to connect more than 1-2 ore patches of each type.

If the goal is to launch only one rocket, like in any% speedruns, then you need to calculate the amount of recourses you need to do that to se how fast you can get that running and when it it time to stop expanding and just do final processing. getting from bots to rocket is orders of magnitudes more resources than just getting to bots.

One simple calculation is that to go twice as fast after bots you need to build twice as mush in half the time. so the mall producing construction materials for the bots need to be 4x as big, and you would need 2x the number of bots and roboports. Note, construction cost of bots and roboports are about equal, roboports are expensive and you need lots of them.

If we discount the last 5 min of a run as not worth expanding any more. we get around 45 min of expansion with bots in current meta. This can be achieved with 3-4 belts of ore going into construction materials for the bots. This leads me to believe that you're claim that you can finish this in 15 min is unreasonable. You would need 9x more material production for the bots. like 30 belts of ore worth.
Even with blueprint imports it would not be possible, as the production does not scale that fast. Even if you have more bots then the number of items in a blueprint, and all construction materials available, it would till take 4-5 min before that blueprint was running fully.

I don't understand how you practically would play the game after bots to achieve a much faster post game bots time. But I would very much like to be proven wrong!

Sorry @blazespinnaker for not taking you seriously. But there has been several people coming into this community with bold claims on how fast a run can be finished based on speedruning other games. So far they have all given up when they realize that this game is not just apm etc. I really hope you stick with it and actually do a full run with your strategy!

User avatar
jodokus31
Smart Inserter
Smart Inserter
Posts: 1619
Joined: Sun Feb 26, 2017 4:13 pm
Contact:

Re: Factorio is two games: pre and post robots.

Post by jodokus31 »

Nefrums wrote:
Wed Dec 30, 2020 12:30 am
..
Thank you! Great post

blazespinnaker
Filter Inserter
Filter Inserter
Posts: 665
Joined: Wed Sep 16, 2020 12:45 pm
Contact:

Re: Factorio is two games: pre and post robots.

Post by blazespinnaker »

Yeh, nefrums is one of the legends for sure. His speedruns are pretty incredible.

I was going to follow up, but there is a good discussion here - https://www.speedrun.com/factorio/thread/dpitd/1#vamhq

Wish we had a achievements/scenario category on Factorio forums. It'd be a good place to discuss things like rocket rush, wave defense, gotlap, there is no spooon, etc.
OptimaUPS Mod, pm for info.

Post Reply

Return to “General discussion”