Forum posts

Forum: Factorio

Thread: New GOTLAP record.

Started by: blazespinnakerblazespinnaker

(edited: )

Very impressive. I didn't think it could be improved on.

It'd be very cool if there was some addition to the description about what was improved. I tried watching it, but I couldn't see what was done. Was it just a more flawless execution of keystrokes?

I'd also really like to understand why we don't split this into pre bots and post bots.

I assume everyone agrees that once you get bots, the theoretical potential for minimum times is quite significant. Bots let you go into parallel building mode and there is a vast universe there of different approaches.

If we have people focusing on post bots and pre bot runs, we could probably figure out some great times. This would require more community collaboration tho.

 

Forum: Factorio

Thread: Invalid run?

Started by: JD-PlaysJD-Plays

(edited: )

I have to say, the massive multiplayer + blueprints allowed runs are actually pretty interesting. Theoretically, I imagine the min time is potentially very very low and we haven't plumbed the depths of it because the experts haven't really bothered to focus on it.

The key really is the more people you get involved in run, theoretically the faster it can be. So the limits really are the amount of people you can get involved. Kinda fun when you think about it.

However, I also believe that once you hit bots, they should be used heavily. Coordinating 1000s of bots is far easier than coordinating 1000s of people.

The way to get to bots is likely everyone does hand crafting and hand feeding. Imagine if you had 100 people, all hand crafting gears, inserters, belts and feeding that into red/green assemblers. Each individual would have their own assigned burner miners to draw from.

A subset of people would be responsible for taking the resulting science and both putting the resulting science into labs / chest for belt feeding. Belt feeding is a good way to queue up science in the labs assuming all the labs are already full.

Another group of people would be responsible for increasing lab capacity.

 

Forum: Factorio

Thread: Invalid run?

Started by: JD-PlaysJD-Plays

(edited: )

Yeah, if there aren't any rules, how do you prove to everyone you're the best! Best at what, amiright? Best at having fun?

 

Forum: Factorio

Thread: Using trains for 100% speedrun

Started by: blazespinnakerblazespinnaker

(edited: )

I did a poc .. the only cumbersone aspect of this is the length. This approach will not win awards for SPM density per sqm. I think the UPS efficiency will be fairly good as there are no bots or belts.

You'll want to be careful not to make mistakes and probably have a car handy. Fortunately the stops are very commodity so everything is much the same and requires a very narrow set of memorized keystrokes.

It's very high output tho. Around 30 SPM per line using 1 length trains. Longer length trains would be higher SPM, but more cumbersome to build because of the length.

It is very very circuit logic heavy, so blueprints are probably a must.

 

Forum: Factorio

Thread: Using trains for 100% speedrun

Started by: blazespinnakerblazespinnaker

(edited: )

Here's the basic idea for the factory.

https://imgur.com/a/hchSCqC

https://imgur.com/a/I7fcZqS

You will need to figure out the ideal length of trains and timing for stops at each processing step, based on the ratios. Your patch mining route needs to make sure it's spending the right time at each patch so it doesn't put too little or too much of a particular raw resource in a wagon.

Having roughly the same timing per phase may be the best way to go to manage a consistent throughput, and you can double up the phases and tweak with modules/beacons. Some thought towards optimizing will want to be done here.

The rail lines below are complete copy/paste which bots will be very ideal for. A train arriving with wagons filled with raw resources will pick one of the paths and go down it, whichever is available. In this way you can do unlimited amounts in parallel.

Once you get to this point you'll just be pasting in the lines. You'll probably want to grid the map a bit with roboports so they can lay down track for you as well.

DI design on the patches can be a little tricky, but very large megapatches will give you some breathing room to waste a little space. OF course, you can just chest it if that's what you prefer.

 

Forum: Factorio

Thread: Using trains for 100% speedrun

Started by: blazespinnakerblazespinnaker

(edited: )

This might be applicable to the other runs, not sure, but definitely I think for the 100%.

The core of the idea is this: One track with trains as belt is sorta the same as 40 different theoretical sides of a belt, amiright? Imagine the simplicity. Screw belt weaving.. Plus you've got random access belt sides! No side switching required.

So you use miner -> wagon direct insert and long trains instead of belts and zero chests. Via DI You fill each wagon with enough copper/iron/coal/stone by rotating them around patches for an appropriate amount of time. To keep things simple, the rotation never cross so there is never an intersection to deal with (see the clockwork design I discuss on this thread - https://forums.factorio.com/viewtopic.php?f=5&t=96099&p=553933#p553933)

Basically rotate enough for 15 each science in raw resources in each* wagon. So each wagon has all the resources required, doesn't need anything from another wagon (except fluids). Perhaps a bit less science as you may need extra coal for furnaces if you're not using electric ones. I dunno the exact numbers, but it's somewhere around 10-15. Depends on module usages as well.

Once the trains have got their raw resources after clockworking around the patches, they then come back to the processing factory where it removes the raw from the wagons and replace them with intermediates. No chests, no belts, just pull resource from wagon and replace back into the wagon.

And then the train moves onto the next processing steps: plates, gc, gears, belts, inserters, red science, green science, steel, pipes, rc, engines, sulfur, blue science, sticks, rails, modules, bricks, furnaces, violet science, bc, red engines, batteries, frames, lds, yellow science. rcu. jetfuel is all fluid so mabye not train fed. white science you'll want to pull and deliver to the labs like any other science. Again, no funky belts required as you have 40 different spots to put stuff.

Red inserters not required, you can probably use some very very basic assembler patterns. Just up and down.

You could lay out the factory horizontally for the steps and expand vertically downwards as you add more patches for production and trains.

With 100% megapatches though, you wouldn't need as many patches and you could use longer trains.

The advantage to this approach I think would be the very minimal amount of actions and infrastructure to lay it out and the very easy expandability. Obv you want to be processing as many wagons in parallel as possible. You're going to end up with a lot of trains running by the end here.

Filter inserters are pretty handy. You can fit about 6 steel furnaces per wagon, but electric furnaces can utilize modules. 4 assemblers per wagon, some use of inter assembler DI might be advisable.

Fluids would be done separately of course. Doesn't make sense to train that around.

 

Forum: Factorio

Thread: Wave Defense and Rocket Rush (again)

Started by: SpleeSplee

(edited: )

gameplay enjoyment is purely subjective. Not sure what I can possibly say if you don’t agree to that.

edit:

Here's a trick that works extremely well on WD Hard. I discovered it from extensive (too much) deathworld marathon play: artillery targeting remote. It's really worth the time to craft it. Much greater range and well placed shots can take out several spawners per shell, and you don't waste shells on worms. You can also manage agro much better.

You can also use it for defending as well to take out large swarms massing at the walls. Tricky, but doable if you're talented at that sort of thing.

I got projectile damage up to level 10, and then started putting everything into mining productivity. Might be a bit overkill on damage, we'll see how it goes.

You can actually get artillery up an running around the 3 minute mark with blueprint import (depending on oil location), though shell production is minimal at that point. Hand crafting red circuits helps. You could probably do it even faster, like 1 to 2 minutes depending on the shortcuts you take (eg: use coal from rocks for plastic production).

Initial slow shell prod isn't a terrible idea, as you don't necessarily want to blitz spawners until you get your phys damage up.

In theory, you could try to take out all the spawners, but I really don't see that as a feasible strategy in WD Hard. Better is to take out just enough to upgrade and give you breathing space to launch a rocket. Balancing between phys dmg and miner prod is important.

 

Forum: Factorio

Thread: Wave Defense and Rocket Rush (again)

Started by: SpleeSplee

(edited: )

Anyways, true story, I really suck at APM, so obviously I'm going to denigrate the whole concept. If you're good at it, than I can understand why you wouldn't want imported blueprints to be allowed.

It's like my favorite saying goes, I wish they could invent a popular video game that is hyper difficult for everyone but me.

 

Forum: Factorio

Thread: Wave Defense and Rocket Rush (again)

Started by: SpleeSplee

(edited: )

"APM is not that important in Factorio speedruns ... execute it without too many mistakes is (at least for now) way more important."

"Execute it" is literally what APM is. Actions per minute. It's not 'mistakes per minute'.

But, look, proof is the pudding. TAS run doesn't even use bots, and is by far the fastest run around here. Has really great operator APM.. Not sure about the strategy, but who cares when you can do everything with nanosecond speed.

In AI versus human competitions, they specifically have to throttle AI APM, cause if they didn't, it would never be a competition - even if the AI was dead stupid.

 

Forum: Factorio

Thread: Wave Defense and Rocket Rush (again)

Started by: SpleeSplee

(edited: )

Splee, no, I have bits and pieces of a run. I'm really not interested in proving I can do the best time - especially because everyone here only seems to care about operator APM of which my runs are devoid of due to use of imported blueprints.

I'm really just interested in new, clever ideas backed by math. If this doesn't interest you, than I can see that my answer is very unsatisfying.

" solvability is the enemy of gameplay", for you maybe, for me it is the essence of gameplay. I see Factorio as just a search for shortest path in a very large and complex graph. You see it as 'donkeyspace'.

It's hard to discuss when our fundamental assumptions and motivations differ so much, but at least we can agree to disagree I guess.

Perhaps if someone likeminded comes along and posts a video that I find interesting from my perspective, I'll feel motivated to join in and post a complete video as well. But honestly, external validation is not a thing for me.

For now, I contribute in the way that I'd wish others would contribute. Ideas and math.

I'm glad you got WD added, though. Well done. I think it's unfortunate it's not a bot specific run, as it's obviously designed that way.

Prioritizing operator APM in a run with bots already researched seems very counterintuitive to me. But I gave up on caring about what the rules and categories are around here awhile ago, so no big deal.

..

For WD hard, I haven't tried it yet, but I'd go straight to mass artillery and immediately farm upgrades if I couldn't get a rocket up before biters overwhelm the base. Given what I can do in 5 minutes when I'm trying to overcome the copper bottleneck, I can imagine I could do the same for artillery in 5 minutes. It would mean fewer miners, and focused artillery set up.

Once artillery is up, like I said, go for mass upgrades. You'll have quite a lot of cash to do so.

..

I think we might be able to agree on one thing, btw. WD Hard is definitely very interesting. Personally, I think it's more interesting than anything else posted in the videos. Good luck getting anyone to seriously run it, however. I kept on suggesting deathworld, but got no takers.

I love deathworld. Deathworld marathon is even more fun.

If this is what you mean by solvability is the enemy of gameplay, I can agree somewhat. But the real solution there is PvP and not speedrunning.

I'd love to play anyone PvP factorio. Rocket Rush / Imported blueprints!

..

Just did a WD Hard run without dropping anything down. First map, it took about 15 minutes before they overwhelmed my base. Artillery rush is definitely how I'd go there.

Comparing it with your video, I think you can see now how imported blueprints dramatically change the game.

5 minutes to basic artillery is not hard at all with BP which not just pushes back the biters but also increases offensive power via mass upgrades (artillery takes out a lot of spawners).

Totally different game than what you played.

 

Forum: Factorio

Thread: Wave Defense and Rocket Rush (again)

Started by: SpleeSplee

(edited: )

"Sure, but again, who cares? The metric is speed."

Absolutely, no argument here! And speed, for me, is imported blueprints and optimal factorio. I'm targeting sub 30 minutes now for WD. Anything more is just a function of operator APM and too subjective to be interesting. To me. IMHO!

I've also said much the same as you elsewhere for other runs. In fact, it's the basic premise of my rush to bots strategy for Any% that I've talked about in this forum. Rush to bots, and then massively overproduce late via megapatches and mini bot factories.

The issue with WD is that we are bottlenecked/critical pathed by our small copper patches. If we had megapatches, we'd have a lot more room for such creativity. 110 copper miners is the most I could get going on a WD map, which means we have to conserve copper for LDS/RCU. Speed Modules is a way of taking copper miners off the critical path, but I am skeptical the profit/loss of that approach is enough. Assemblers / inserters / belts are cheap, but they're not that cheap. Pretty soon iron becomes a bottleneck as well.

Also, we only have 15 bots powered by solar panels. Rapid late overproduction will require more than our current bot setup, I am guessing.

TBH, if you read closely, you will see I was still considering going bots and late overproduction and adding an early bot factory, but recently changed my mind because of the copper miner bottleneck.

On top of that, n(n+1)/2 is still the golden rule. Time is an input that must be utilized.

Which all means I am betting that avoiding any unnecessary use of copper is probably a better way to go for WD - but I'm not 100% confident.

Probably we'll eventually have to try both approaches to be sure. It annoys me to no end there isn't a more methodical method of calculating minimax here. That formula is really my meta-agenda in factorio speedrunning.

But for now for WD, it's the initial approach I mentioned and I'm trying (basically), power -> pumpjack -> miner -> minimall -> RC/modules/base production -> miners -> rocket part production.

Pumpjacks are early because it takes a few seconds for coal to find its way into steamers, and the run time can be used to hand craft, set up the hotkey bar and put down BPs. Buffering the raw oil can't hurt, either. Base production here is the start of GC/BC/steel production that is readily expandable.

Any bot down time will likely be spent just manually laying down belts.

I can get up to RC/M/baseprod in about 5 minutes, which is a pretty good start. Another 5 minutes to get the rest of the miners, furnaces, and base rocket part prod. And then the n(n+1)/2 10 minute ticker starts for rocket part production.

Copper will likely once again be the critical path, but speed modules could help. That would be a good sign, as it means it's likely the optimal approach as we are dedicating all copper production very early on.

As an addendum to the critical path analysis method - when an atomic critical path can not be reduced further, it means you're likely looking at minimal plan time.

It also means we're now looking at maybe a 20-30 minute run for WD.

Using imported blueprints of course!

 

Forum: Factorio

Thread: Wave Defense and Rocket Rush (again)

Started by: SpleeSplee

(edited: )

"I can't even tell what you're imagining that has this problem. Isn't this part of what buffers can address? "

yes, absolutely. You are agreeing with me I expect in every sense.

My post is in part trying to explain why we do the things we do, hopefully interesting to someone new to speedrunning in Factorio. I'm more interested in them, then I am in folks who are rather set in their ways.

Also, what is the proof that buffering is optimal? It seems obvious, but not so easy to prove. Lots of math problems are like that. There may be an exception that we're all missing and may be the secret to super fast times. Or maybe there is no secret, and this is the only way.

The only proof I can come up with, is a weak sort of proof by absurdity. If we don't buffer, we end up having to create say, 500 RCU assemblers in the last minute. Not a great proof, really, because if you found a way to generate a lot of robots and assemblers, than that actually might work.

'Also "massive unused over production at the last minute" doesn't even matter if it's the fastest way to get 720 each of RCUs, LDS & RF. If I hit all those numbers as early as possible, I don't really care about production rates 5 minutes later. (Quite possibly slowed to a crawl because buffers are empty.)'

Right! Maybe that is the way. Though your total build will end up being much larger than one that appropriately used buffering. So maybe it is a problem after all. Intuitively, I'm pretty sure appropriate buffering is the only way, but I wish I could be more literally authoritative.

I think a lot of folks around here, don't like talking about factorio, because well, 'math is hard'. That seems silly to my mind. If we develop an appropriate grammar and ways of numerically describing it, there should be a way to reason about how to solve for best times. Like any problem, really.

"If you ignore the module slots, one T3 assembler manufactures at a slower rate than two T2s. You're really thinking of using your only eight assemblers with 4 module slots to assign recipes that can't accept / aren't worth prodmods?"

No, not at all. The question is though, how should they be used? Reducing entities is very important to cut down on robot placement. 2 assemblers require extra inserters, belt, power. Also RCU is critical path, wheras BC is definitely less so. Perhaps the ASM3 should be used for RC, which are the biggest critical path, especially if you put SM in miners or have a map with large copper patches.

Whatever is critical path, we need to shrink down time for that in order to get it off the critical path. A lot of factorio planning is that (any project planning), looking for critical path and getting it off critical path. You never want to be on critical path, because you become the task holding everyone up.

https://hbr.org/1963/09/the-abcs-of-the-critical-path-method

From the link:

In essence, the critical path is the bottleneck route. Only by finding ways to shorten jobs along the critical path can the over-all project time be reduced; the time required to perform noncritical jobs is irrelevant from the viewpoint of total project time.

Of course, at some point, you end up with everyone on critical path, and if that path becomes too long, that's a problem as well.

I think the whole run is basically convergent / critical paths of copper -> oil/RC -> modules -> rocket parts. Copper less so, if you have a two copper patch map like I'm using right now.

". I simply don't BP / C&P"

If I get a few moments, I'll build out some early stuff via imported blueprints and incremental blueprints. It should be obvious, and perhaps it is, but if it isn't - bots and blueprints are basically TAS runs. You can't beat them with a keyboard.

I get the issue with this (note 'theoretical'), but FWIW:

25 robots can place about 100 entities in 5 seconds, if very close by. There's under 2K entities you're provided above (see exact list in previous post), which is 20 * 5, or 100 seconds, or less than two minutes theoretical minimum to place the entire inventory you are provided.

The approach I'm looking at right now is to immediately go for oil after placing down all the miners and as few furnaces/assemblers as possible (just enough to get more miners). I buffer the ore and using burner inserters / burners for coal. https://imgur.com/a/CjVpdcx.

This will allow me to get more bots and batteries/solar panels/roboports. Roboports are probably the way to go, because the personal solar panels are really awful.

This will also allow for logistic chests. Logistics bots are cheap, and we have alllll the tech.

edit to add:

https://factorioprints.com/view/-MZ4LwnjHnVczfQ2v24q

(minus turrets / silo of course)

I can get this done before first night (4.5m). Ironically, I had to remove all (mostly, not tricky stuff) the belts from the BP in order to make it happen and hand do them, which is sort of the opposite of what I normally do.

The problem is those damn solar panels are so weak and don't charge the bots very fast so you quickly run out of power if you push them too hard.

Replacing poles with BIP/Medium helped as well.

The run to pumpjacks is painful and had to practice running with multitasking BPs, hotkey, forestry a little bit. Can't get away from APM. I'll upload the sub BPs as well when I can figure out why the factorioprints.com UI is bugging on me. They basically just partition that BP so that the robots don't do things out of order.

I spend the 41s of night hand feeding the bot boxes to construct 15 bots. Not sure this is the strategy I want to go forth with, might go straight to RC / roboports instead, but it's a useful metric for how fast I can place entities.

Getting logistics bots will be very useful. Not just the simplification in terms of belting, but also you can hand tune / rate limit requester chests and change that tuning as you push more blueprints overtop what you've already done.

As always, suggestions for improvements welcomed. Feel free to steal as much from this for your own runs as well. The more the merrier.

 

Forum: Factorio

Thread: Wave Defense and Rocket Rush (again)

Started by: SpleeSplee

(edited: )

Nahhhh, you're making a bizarro knee jerk assumption. You may want to reflect on what drove you to do that.

You see, I watched what you did, but there is no reason to quote me like you have there, as it should be obvious I'm talking about my plan for a run and not yours. The plan is an extension of my earlier wins in WD that I linked to, except instead of artillery I'm going for rocket.

And it should be very clear that my plan obviously doesn't have anything to do with what you did.

That's because you're not doing imported / incremental blueprints, so there is going to be little relation to anything I have in mind and what you've done. The timing of things is going to be absurdly different. Totes apples and oranges runs at every point most likely.

As speedrunning isn't an ego thing for me, I have zero problem conceding that there is no way I could do WD in 50 minutes without imported blueprints. ¯\_(ツ)_/¯

But if you want, you can post your blueprints and I'll try to give you some feedback if that's what you're looking for. Honestly, I'm not going to try to reverse engineer a zoomed in video to figure out what you're thinking exactly is.

I probably won't be much help as I'm sure keystroke talent is a big factor in your run time, something I know little about.

Anyhooooo, here's my plan summary, and in a format you can read in about 60 seconds even without having to sit through an hour long video:

1. Coal from stone, trees via bots
2. Power, engines, car
3. Coal prod
4. Iron plates
5. Gears
6. Stone prod
7. Copper plates (one challenge that starts around here, is that the bots are solar powered, so when night hits, you need to start manually building)
8. Wire and GC, miners, underground
9. Steel
10. Minimall - belt, inserters, asm2, furnace, pipes, bricks, flame turret?
11. Iron and Copper prod expansion (see edit 1: 200 miners, 112 furnaces, start with 50 and 20, step should be done by ~ minute 11.)
12. Wire and GC
13. Oil
14. Plastics
15. RC
16. PM and SM
17. Beacons
18. Solid Fuel
19. Wire and GC expansion
20. Sulfuric acid and BC
20.5 PM2/PM3 (edit 1: going to merge this with step 16)
20.6 PM1 in Silo (edit 1: going to remove this step)
--- minute 35 --
21. Rocket Part prod wave 1 (waves may involve intermediate expansion, speed modules)
22. Upgrade to Silo PM3 or PM2 (Much of the plan may largely revolve around this step)
23. Rocket part prod wave 2
24. Silo beacons
25. Rocket Part prod wave 3
26. Rocket Part prod wave 4 (if required)

A general technique I'm using here, will be to utilize time buffered intermediates from initial reduced production capability in order to get necessary intermediates built up to proceed and feed downstream production. Later, I expand the intermediate prod as buffer is consumed.

The underlying concept is that time is a resource, just as anything else is in the game. And time is a natural byproduct of merely building out your infra. How you use that byproduct is important.

And so I leverage that time to create buffered intermediates, which serves two purposes: reduced need for end game production capability and intermediates for necessary and/or convergent downstream prod.

If you did just waterfall (not going back and increasing intermediate production), you'd end up wasting resources on unnecessary massive unused over production at the last minute.

This approach is a result of the gaussian formula for production, n(n+1)/2.

You can see this technique used to great effect in the GOTLAP runs. Some of the best runs ever done on this website, IMHO.

I am generally informed by the calculator: https://kirkmcdonald.github.io/calc.html#data=1-1-19&min=3&dbc=6&items=rocket-part:r:100

For rough cut, I look first at intermediates that require the largest amounts of infra weighted by position in the production stream. Eg: copper plates require the most, and then iron, red circuits, and then wire.

plastics/RC in particular is very key because it's downstream in the chain of production and it branches off to various things. RC also requires significant infra.

Moreover, there is convergent production requirements in terms of PM2/PM3. Ideally I don't start feeding my silo too hard until that is present to save significantly on copper/intermediate production.

I'll take another stab at it the next few days to add some rough numbers beside each one in terms of prod at minute N. At some point, I'll do some prototype runs, and firm up the numbers/order until I can spiral into a solution.

For prototype runs, I like to test backwards, forwards, from the middle, etc - especially parts of the run I'm not sure about and are 'critical path'.

Eg, via /editor I'll paste in an entire blueprint (say everything except rocket part production) and see if there are any issues with getting rockets up in 10 minutes.

Again, feedback always appreciated. Especially feedback which is not ego driven and is mostly numerical.

edit 1:
-------
Here's an initial first draft of what I'll need to build for infra: (apologies for the url shortener, I'm not tracking you, but this site is bugged on long links. messes with the posts display. never click on url shorteners unless you have the appropriate vpn/etc/iOS security mechanisms in place and you know what you're doing.)

shorturl.at/hyGH7

One of the things I'll probably do is go very large on undergrounds as that will reduce the need to manually build / drain robot battery. I may have to still do manually building anyways, but prefer to spend time on blueprint placement as there will be a lot of incremental blueprints in this run. Also, I will need to spend time pulling from chests to resupply.

As mentioned, copper prod is critical path in this plan because it's the largest req. With PM3, you need about 67K. If by step 11 I assume zero prod, that means I need to finish that step by minute 10-13 or so. If we put down all initial 50 miners, say 10/35/5 for iron/copper/coal, than we can 350.560*10, than that's about 10K by minute 10. Staying at max copper 2k/m prod for 35 minutes will probably be difficult, so that seems like good buffer and a good target - finish step 11 by minute 11.

This will give us hopefully enough copper. It will be tight. Rerolling for larger copper patches doesn't seem to be helping, either. 65-68 miners seems to be the max which leads to about 80K production over 50 minutes, though sometimes copper patches are very nearby the walls, but that will add biter pain.

One possibility is speed modules (SM) in the miners, which will add 60% production. Depending on when they get in, they can add amp up copper prod to 3.2Kpm, which gives about another 25k to 30k worth of copper. A chance to get copper off critical path at the very least, but at the cost of greater SM (3*66) / power requirements.

I think it would make sense to complete PM3 prod capability in step 16. It requires very extra little infra as build requirements are mostly in PM1 (60/15/3), and sadly you can't put PM in PM3 🙂

Worth noting, we get 8 ASM3 to start with. Using those tactically would be wise. The could be used initially for PM production and then repurposed perhaps for RCUs. 8 of those with RCUs, that's about 40 p/m.

Another idea would be to put PM1 in BC production. This is because BC is used for both PM3 prod and RCU prod. 859 BCs are required for RCU/PM3 production, also fewer BC asm is required than for RCU prod. RCUs are more critical path than BC.

Putting PM1 in RCU additionally wouldn't save much at that point, as PM1 costs about 32 copper per module. Maybe save about 1K copper total, ignoring added PM production requirements, and you'd have to mess with beacons in order to recoup that.

One of the things I'll do for sure is get rid of the exoskeleton and replace it with batteries at the very earliest. The exoskeleton does not help at all, cause you outrun your robots and without the batteries, your robots do poorly at night. Making more robots is probably a good idea. We are rate limited on copper ore production, but nothing else. More assemblers are fairly cheap to build.

edit 2: rerolled a few more times. Found a map with two copper patches and oil placed well inside the barriers. Good map. That gives 110 miners for copper and 110 miners for iron. Could be enough to run without SM in the miners.

Whups, didn't save it. But found this - 1891162722. Use it, or just reroll until you get a map that dupes your practice run. End result is the same, but one approach is more honest.

edit 3: One way of looking at the run is comparing relative complexity of RCU versus LDS versus Jet Fuel. One score might be 54 versus 11 versus 8. See here - https://forums.factorio.com/viewtopic.php?f=5&t=98041&p=544434#p544434

Still, adding prod capability for all three in the last K minutes might still make sense, as you want to get modules ASAP. Buffering LDS / Jetfuel doesn't really help get you there.

The lesson there is leverage time buffering, yes, but also make sure you're buffering something that is priority.

In non-robot runs, this may be somewhat different as it can be easier to keyboard out adding prod capability upfront, rather than incrementally.

edit 4: One thing about this run or any run, is that certain things can easily be hand fed. For example, sulfuric acid requirements are quite small, one iron plate can provide for 10 BC.

Feed about 600 iron plates into a chest inserting directly into one sulfuric acid chem plant should be enough and avoids a lot of building and complexity. Others: Beacon prod, robot prod, flame turret prod.

In theory you could do the same for infra (miners, inserters, etc), but they are rather low on the complexity scale linked to above, so it's not really necessary.

edit 5: Fun fact, you get 50 burners and 50 burner inserters in WD. https://imgur.com/a/CjVpdcx I have a special place in my heart for burner based designs.

In fact, it's worth noting exactly what you start out with:

50 burners, 50 burner inserters,
600 belts, 40 underground, 40 splitters
20 steam engines, 10 boilers, 1 offshorepump
200 pipes, 50 corner pipes
50 power poles, 50 medium pp, 50 BEP, 10 substations
100 yellow inserters, 100 fast, 100 long
35 furnaces, 20 steel furnaces, 8 electric furnaces (great for steel)
50 assemblers, 20 asm2, 8 asm3
10 pumpjack, 5 refineries, 20 chem plants
8 turrets
200 iron plates, 200 copper plates, 200 steel, 250 gears, 200 GC
20 lights!

Other than lack of miners and steel furnaces, this can get you very very far into the run before you need anything. More assemblers, inserters, belts, undergrounds will be required, of course, but not right away.

25 robots can place about 100 entities in 5 seconds, if very close by. There's under 2K entities, there, which is 20 * 5, or 100 seconds, or less than two minutes theoretical minimum to place the entire inventory you are provided.

edit 6: There are two ways to go, bots or miners. Carefully managed by laying out belts, furnaces, assemblers manually, the personal roboport might be doable. Not going straight miners risks turning copper into a bottleneck. If there were megapatches around where you could massively overproduce ore, it might be doable, but there isn't. Best I've seen so far is max about 120 copper miners or so.

edit 7: This is the Rocket Part Plan, using Kpn(n+1)/2> 72 (assuming PM3), where K is the number of added prod and p is the length period in minutes. N is # of periods.

I'd like to do this in about 15 minutes with 3 periods, so n=3 and p=5. Solving for Kx5x3x4/2>72, we get k=2.4 (or 24 RCU/LDS/Jetfuel).

Eg, for RCU

24 rcu per minute 5 minutes = 120 total over the first 5 minutes
48
5 = 240 over the next 5 minutes
72 * 5 = 360 over the last 5 minutes
total 720

For the last 5 minutes, I need to average 72pm prod. I will need to go over as I will start out the 5 minutes with less than 102. 100pm is roughly a good target for RCU/LDS/Jetfuel.

edit 8: Buffering oil may be important. According to the calculator, we need about 200K oil to launch a rocket with PM3. That would take 20 minutes with the pumjacks on my map. Speed modules would help there as well.

edit 9: I need to take a bit of break from factorio for a week or two, but I have the final end build mostly roughed in, 100pm LDS/RCU/jetfuel. I see now that coal will be a bit of an issue because of power. Splee's run uses solid fuel, which may be a good way to go. https://snippi.com/s/bismgre

 

Forum: Factorio

Thread: TAS WR (1:21) and other interesting speedruns.

Started by: blazespinnakerblazespinnaker

A wave defense run, very cool -

1.29, I would say that is WR unless anyone has anything better.

 

Forum: Factorio

Thread: Wave Defense and Rocket Rush (again)

Started by: SpleeSplee

(edited: )

I'm ok with rerolling, though I'd prefer a community agreed upon seed. I think that would be more interesting, more communal, and we can at least share strategies better.

In terms of WD, yeah, I was thinking of using artillery as defense. It seems like a large distraction though with the new rules. Before, you could win the game by just killing spawners.

An interesting, if cheesy hack is if you kill yourself you can get another 15 robots (or as many as you want if you can put up with the spawn delay). I tested with a train beside the spawn point and it works. Likely get nerfed, so basing strats on that would be temporary I suspect.

The goal of WD is getting your rocket parts per minute up as high as possible as soon as possible. Megapatches would help a lot, of course, but if I think if you get your copper prod up very early, you can use buffered prod.

If you use the simple function K p n(n+1)/2 = 100, where K is the amount of rocket part production you add every period(p), you can figure out how long it will take.

Assume for example, you can add 1 rocket part per minute production every minute, than K = 1, period = 1 minute. That's about 10 minutes (period*n), assuming you can actually get to 10 parts per minute and not be bottlenecked by the silo.

If that's too hard, you can change the period to 2 minutes. Now it's 1 2 n(n+1)/2=100, or n is slightly less than 7. However, 7 periods, each 2 minutes, means it will take 14 minutes to get the rockets going.

Some other datapoints:

2 every 3 minutes would be 15 minutes
3 every 4 minutes would be about 12-15 minutes

And so on.

WD is definitely a great map to use incremental blueprints. I talk about my earlier experiences with WD and incremental blueprints here - https://forums.factorio.com/viewtopic.php?f=5&t=90012

My feeling with highly optimized incremental blueprints, we could probably do this before biters overwhelm the base at 50 minutes. (Somewhat seed dependent, I guess)

As a data point, waves are every 5 minutes.

On a map with no building, major damage starts to occur on the night of day 6, and day 7 tends to be where a biter starts to eat it's way through as a turret has no ammunition.

This is around 35 minutes in.

By day 8 / 45 minutes, I've lost a bunch of turrets and walls. A biter sneaks through. At 50 minutes another one sneaks through, nothing 3 turrets couldn't keep off.

However, the 10th wave is pretty much unstoppable unless you've supplemented your defense.

Kills/losses graph here - https://imgur.com/a/k73bHIR

Another datapoint, my patches are 1.4M for iron, 1.2M for copper. You need about 49K, and 92K copper to launch a rocket, but ideally you'd have very large patches for mass over production. https://kirkmcdonald.github.io/calc.html#data=1-1-19&min=3&dbc=6&items=rocket-part:r:100

(ignore earlier edits, misuse of calculator I guess)

You're definitely going to want to get your copper / iron prod up very very early to start buffering immediately, so as you build out the rest you'll have something to draw on.

Using robots to pull coal from rocks and using that to bootstrap coal production is good I think.

GC prod would come next, and perhaps a minimall.

I'd recommend steel and engines so you can build some flame turrets to protect the oil patch, but there are other ways to go there. If you're using imported blueprints you can get this up very fast as you don't need a lot.

I have an oil patch nearby with 2400% production, and that would probably be enough.

Artillery might be a way to go here, so as to take out spawners and grab military upgrades. Only do that if the sub 50 is too hard, I guess.

But otherwise, once oil is set up, I think the clock is ticking on the 10 minutes, whatever rocket prod additional per whatever minutes, as long as kpn(n+1)/2=>100 If you can start that by minute 35-40, it may be possible to make sub 50.

If you don't go artillery to knock out the spawners, speed modules in the miners might be the way to go.

"Is actually pretty important", well, it's definitely important to those who think it's important. But not so important to those who don't.

Personally, the ideas and specifically the math behind speedruns are more interesting to me. Probably because I really suck at learning hotkeys, I guess, and my APM is very low.

I also find the videos lead to a lot of duplication of ideas and less original thinking. More fun might be sharing imported blueprint runs, and the contribution people make is not better execution of keystrokes, but improvements to the blueprints themselves.

I understand though, that some folks prefer practicing keystrokes and playing factorio rather than just thinking about it. Especially for those who are good at that. Completely understandable. It is a video game, after all.

"Literally what I did there."

Where?

Here's my thread - https://www.speedrun.com/factorio/thread/t5igk

I'll put a link to your thread in there as well if you share one. Please don't reference discord tho. I and likely many others have no interest in using discord channels moderated by randos.

edit to add:

I can fit about 67 miners on my copper, which gives about 1.5K p/m unoptimized miners, but redirecting belts can get it up to 2kp/m. Likely necessary to get sub 50 times. Steel, stone bricks, and a minimall will be required here. Your biggest bottleneck are miners and stone furnaces, of the latter you'll need a lot and they take forever to craft. (90 * 3s).

Putting in prod module 3 into the silo, saves 10K copper over pm1. 3 PM1 will cost 2400 copper. Might be worth it. PM2 at a minimum. PM1s in the RCU, I dunno. Doesn't seem worth the added complexity.

The next real bottleneck is red circuits after plates and then RCUs, but it'd be good to get some copper wire going as well before oil. Setting up some GC could be useful as well, and then you could skip some of the extensive wire/gc production and instead go straight to red circuits.

Steel as well for LDS. It doesn't take much, and you can use that for flame turrets. YOu'll need a bunch for infra too (furnaces, asm2)

By the time plastic/RC is done, you can stretch out the GC and wire production as you'll have worked through your reserves by then. I'd hit speed modules, solid fuel production and then the BC oil infra + asms last. The last steps there can be tweaked depending on your layout.

At that point, your 3 PM3s should be done and I'd start the 10 minute count down, adding rocket part production incrementally in waves. Incremental blueprints in particular really shine here.

Beacons might help, but I'm a tad skeptical. They're rather expensive copper wise, your bottleneck in the game.

One beacon has 15 assembler2 worth of copper? It might be a win after TCO/Time/Complexity/PM modules is taken into account, but not a very large one. They could be required on the silo though, in which case if you are already building them, why not.

Maybe if you go down the PM1 in ass2 for RCUs, beacons would be worth it? Seems like a lot of hassle though. I'd rather just put speed modules in the asm2 directly.

as mentioned, the key is to find a way to launch a rocket before biters break through. The distraction of doing any kind of defense is very time consuming.

I'll see if I can summarize this plan more succinctly. It'd be interesting to hear feedback.

 

Forum: Factorio

Thread: Wave Defense and Rocket Rush (again)

Started by: SpleeSplee

(edited: )

Yeah, they made WD different with the rocket launching only. I was able to get it done in about 50 minutes or so before by going straight to artillery and taking out spawners. I never bothered with supplementing my defense.

Some of the upgrades were gimmes as well, so probably could do it a lot faster. The upgrades now seem less useful.

I should try it again.

Rocket Rush would be awesome, be interested about hearing folks experiences. My strategy was to buy 500 belts, 200 inserters, 100 poles, 200 pipes, 50 bots, 10 logistic, 1 roboport, 45 assemblers, 10 steam engines, 5 pumpjacks, but I'm wondering if that was best. I think if I were to try it again, I'd get more bots maybe.

It really is a great scenario which focuses on robots.

Ideally, these forums would also be on factorio site where I think folks would get less anxious around the video requirement.

I think a lot of people are getting stressed out because this is really the only place to discuss speedruns and there are conflicting views, goals, and priorities that are confusing for some folks here.

Also, for new folks suggesting categories with no videos, perhaps it's because there isn't a category they wish to submit for? That seems like it kind of follows, right?

Adding the obvious ones to misc wouldn't hurt anyone, and it just feels like silliness not to humor folks.

Another idea might be just open a thread for folks to post videos they've done or found. Sort of an any rules any category any video speedrun.

 

Forum: Factorio

Thread: Using external blueprint generator

Started by: teksturiteksturi

(edited: )

You don't really need it for 100%. Your imported blueprints will work fine.

Even with the very silly rule 100% doesn't use a set seed.

It's silly because unless you disable preview as an option you can just keep previewing until you find a map close enough to your practiced seed. On a 6 hour run, the 10 minutes you take would obviously be worth it.

It's a hurdle that doesn't add much except something for viewers to get annoyed by and skip over.

Perhaps using an agreed upon community seed would be a better idea. It ensures the playing field is even and removes the annoyance factor.

Not much in the way of submissions on 100%, which is probably why no one has bothered worrying about this.

edit: lol, looking at nefrums run he doesn't seem to be including the many previews he likely did before he arrived at his final map. I guess the rule is the timer starts on the last regeneration you do.

So, yeah, the rule really does nothing then. With megapatches you really have a lot of margin for error.

Also keep in mind, that the big improvement in speedrun time for 100% will come from using incremental blueprints. So in truth, you probably don't even want to just throw down one big blueprint even if you could.

You want to use incremental blueprints as it allows you to manage bots intelligently, something the speedrunners are finally catching onto.

If you're thinking about a tool to create, make one which can take a blueprint and split it up into sub-blueprints. I have some lua code which helps doing this, basically it allows you to insert entities into a set of blueprints.

This allows you to have say 10 blueprints of basically the same thing, but b1 is a subset of b2 which is a subset of b3 .. up to b10. The code assists such that if you change b1, it will insert the entity into blueprints b2 -> b10.

Once completed, I number them carefully in my BP book and they're very straightforward to just paste in during gameplay.

This is great for such things as putting down support structures first (power, belt, robotports, mini-malls, logistics chests, etc) and then the larger build afterwards. The massive improvements to productive curves are really impressive when you do this.

This is because bots placement intelligence is inscrutable in realtime gameplay. Missing a key belt or power pole means that your production may not occur until 100% placement occurs. If you use incremental blueprints, you'll ensure that support structure is built first.

There are other reasons as well, but I'm really getting away from your main point.

And towards that point, try not to worry about the rules here. I think you'll find speedrunning immensely more enjoyable if you don't turn it into a source of external validation.

Also, they openly admit a lot of the rules and categorization are geared towards getting twitch / youtube views. If that's your goal to, then go crazy I guess.

 

Forum: Factorio

Thread: Speedrunning design tips and other ideas

Started by: blazespinnakerblazespinnaker

Ah, good point. I guess that's about another 35iron or so per 10 miners? I'm not entirely sure the exact coal cost for smelting, but I believe it's fairly marginal. Assemblers / inserters should be too bad. I'll try to do a test sometime soon and see the total cost.

 

Forum: Factorio

Thread: Speedrunning design tips and other ideas

Started by: blazespinnakerblazespinnaker

(edited: )

The segmented runs are unlikely to happen for several reasons, however it doesn't make sense worrying or talking about that. The puzzle is interesting enough, tbh. Much like a crossword puzzle or anything else.

There are many different ways to ensuring that materials are close at hand for bots, from hand feeding to underground belts to proper placement of mini-malls. It requires quite a bit of thinking and tinkering with layout plans for post bot part of the run.

Btw, I'd like to take some issue with the 5K cost for compressing a 15p/s belt with plates. I believe that cost is somewhat design dependent.

For the mining op, fundamentally, it it costs ~1K plates. 30 miners (30 * 0.5=15ore p/s) + underground + belts + poles = ~1K plates. https://kirkmcdonald.github.io/calc.html#data=1-0-0&items=electric-mining-drill:r:30,underground-belt:r:14,transport-belt:r:15,small-electric-pole:r:8

For the furnace side, it takes roughly about another 1000 plates, assuming 48 stone furnaces, 96 inserters, plus at least 4*48 belts. That's about 800 plates, but you may need more to move stuff around to deal with a compressed belt. Stone I find isn't really an issue as you can just set aside a few miners early on pointing DI at some assemblers and you'll have about 5K of them by the time you need them.

That's about 2000 / 15, or 133s. Or just over 2 minutes to produce what is required.

Assembly for miners, inserters, underground and belts though is required and is an interesting problem. And it gets obviously complex here. If your goal is to handle a compressed belt, than I estimate you need about 4 or 5 assemblers. Optimizing assembler usage here is something you'll want to do, for example, one compressed belt could be dedicated to inserters/belts, another to miners. Belting in copper is something that needs to be considered.

Bottom line though, assembly may not have to be that expensive. And in order to produce about half of what is required in every 2 minutes, will probably take just another 500 plates or so. That comes to 2500 plates.

Even if you add some error, and make it 3K plates total, that is still a very very large speedup over the 5K above. We are now talking about 30% increase every minute, or 15% increase every 30 seconds. That can result in 16x increase in production over 10 minutes.

High level, I believe maxing out local ore resource production in 10 minutes is perhaps a possibility, assuming a reasonable smelting farm created at the beginning of the run. Perhaps getting to 90kp/m in 10 minutes on a good map.

That would, of course, require 100 compressed belts. I'll admit I've yet to find a map that would be ideal for that, but I keep looking.

To tech up and launch a rocket, you need less than 700k plates. This doesn't include assemblers/labs/bots/oil tho, which will get expensive. 200k plates might not be enough to do it all in 10 minutes, but it's a start.

I admit these goals are all quite aggressive, but I don't think totally unrealistic.

 

Forum: Factorio

Thread: Speedrunning design tips and other ideas

Started by: blazespinnakerblazespinnaker

(edited: )

Hmm, well, no.

Your math doesn't quite add up, or at least it's reaching the same conclusion I am, but then for some reason discounting the significant gains. 6.7x is significantly better than 4x. You could even improve that to 7x with faster printing. If you started with say 10kpm, that would be the difference of 70kpm versus 40kpm. Over the next 10 minutes after that, assuming you stop expanding production, that's a difference of 700k plates versus 400k plates. You can do a lot with 300k plates.

Also, if you stretched it out to 15 minutes of expansion, it's the difference of 8x versus 18x. I know I like to talk about sub 60 as my goal, but let's face it, sub 70 minutes would be pretty awesome too.

For incremental blueprints, I encourage you to try it first before commenting further. If you give it a sincere attempt, you'll quickly see that incremental blueprints are very very powerful in their ability to deliver a superior productive curve.

You can read my wave defense post for further hints on how it works as well as some detailed results of experiments - https://forums.factorio.com/viewtopic.php?f=5&t=90012

When I get some time, I'll do a quick demo for everyone. Let me say that the reason why it likely didn't occur to folks here is because they don't deal with imported blueprints mostly where it's much easier to implement and appreciate.

As for bots, they have huge untapped potential that have not yet been considered or at least properly exploited. Think of it like this, a bot that travels to the edge of a roboport range from the middle, can place 1 entity and then return. The same bot, when placing entities near its logistic chest, can place up to 25x in the same amount of time.

Much of what I'm talking about here is obviously much easier to realize via imported blueprints. It deserves repeating.

I think another issue going on here, is the genetic algorithm aspect of all this. Getting the top rank is just a matter of beating the previous #1 player by 1 second. This leads to borrowing large sequences and making very incremental improvements. There is little incentive to making dramatic improvements in time, especially if they result in spending large portions of time off the leaderboard.

And of course, if you do make dramatic improvements in time, there is very little to keep someone from simply copying everything you've done and improving on that by one second.

I suppose you could hoard as much as possible and not share what you've done (blueprints, ideas, analysis techniques, etc) to slow people down, but where is the fun in that?

For these reasons, I find run submitting not to be particularly useful motivation from a speedrunning point of view.

One way to solve this problem, is to create more categories in the speedrun which break up the entire run into segments (with certain assumptions) and encourage folk to attack them with the goal that we'll put everything together and get the ultimate speedrun.

It would be a team effort, for sure, but I think a very interesting and fun one.