Jump to content

Lategame Megabase


Recommended Posts

Hi,

I hope you guys can help me out with some more pointers how to create a lategame mega-base.

I'm at cycle 1600-abouts, 80 duplicants and completely self-sustaining.

I'm proud that I can let the game run all night, and when I wake up, most likely all my duplicants are still alive!

Most challenges are dealt with, except one... my duplicants take 5 seconds between tasks. If I pause the game, I can wait out until they have "found a task" to remove this 5 second pause.

Do you guys have any pointers how I could reduce this time (lag) between jobs? Also, my save file is still increasing in size with every cycle (30+ mb now), any tips to deal with that? I have read the posts on dealing with lag on this forum and I have applied a lot of the tips, my fps is actually decent, my only problem is time between tasks for dupes.

Any other pointers for my base are also greatly appreciated! I have attached my savefile.

Thanks in advance,

Sepoki
 

Save My Base.sav

Link to comment
Share on other sites

Jet suits are very laggy, my game speed 1/2's when I get a couple of dupes in them things.

Lots of creatures cause lag too, if you can, reduce their reach to reduce the path finding calculations.

if you can make open areas contain only a single gas or better, a full vacuum, you'll save some calculations, mixed gasses cause lag.

Try to reduce the number of debris piles, more piles is more calculations.  big piles are better than lots of small piles.

Link to comment
Share on other sites

Please attach some screenshots with a bit of fluff text. ;)

 

Regarding the dupes reaction times, it might help to reduce the number of tasks the dupes have to chose from and the number of paths the dupes can take. Restrict their access to the base with doors. Restrict the amount of errands each dupe will care for. Reduce the amount of rubble lying around. And finally reduce the number of paths that your dupes can take. Add some clear transfer tubes instead of several ladders with multiple parallel pathes.

Reducing the number of dupes might also be an option, but i agree that this wouldnt be a nice solution.

No guarantee that it will work. But if you can chip off just 1 second, you are already alot happier, i guess.;)

Link to comment
Share on other sites

Hey,

Thanks a lot for your replies thus far. The delay between actions has only slowly been creeping up over time, I'm pretty sure I could go for much more duplicants if I can optimize my base further. The map has enough regenerative resources to support 120 duplicants, if only I can get this lag thing fixed.

I don't use jet suits and I don't think my ranching is extreme. I closed off a lot of doors to reduce pathing options. I let the game run for 200 cycles to sweep stuff, but this hasn't reduced the pause between tasks. I even used Duplicity to destroy all loose debris, but it made no impact on their 5-sec delay... I think it has even gotten worse over past cycles even tho my fps might be better without the debris.

I think I might need to change pathing/restrict access in my base as Craigjw and Blash365 have suggested. Any advice how to do that specifically in my base?  I've attached a new save + a screenshot. 

Kind regards,

Sepoki

 

sweepay.png

sweepay.sav

Link to comment
Share on other sites

33 minutes ago, sepoki said:

Hey,

Thanks a lot for your replies thus far. The delay between actions has only slowly been creeping up over time, I'm pretty sure I could go for much more duplicants if I can optimize my base further. The map has enough regenerative resources to support 120 duplicants, if only I can get this lag thing fixed.

I don't use jet suits and I don't think my ranching is extreme. I closed off a lot of doors to reduce pathing options. I let the game run for 200 cycles to sweep stuff, but this hasn't reduced the pause between tasks. I even used Duplicity to destroy all loose debris, but it made no impact on their 5-sec delay... I think it has even gotten worse over past cycles even tho my fps might be better without the debris.

I think I might need to change pathing/restrict access in my base as Craigjw and Blash365 have suggested. Any advice how to do that specifically in my base?  I've attached a new save + a screenshot. 

Kind regards,

Sepoki

 

sweepay.png

sweepay.sav

The only things that haven’t been said seem to be conveyor rails they are performance intensive.And removing all unused space by pasting neutronium in every unused area of your map may also help you could vacuum and block the areas if you don’t want to debug.

But to be honest it seems you are approaching the limit of performance optimization without putting dupes in capsules of having an “unfortunate accident”.

Link to comment
Share on other sites

You can control access to each bedroom for example. Only dupes which sleep in the specific room have access to it. Same for bathrooms, showers and even machines. Let's say, only dupes with 20 in Operating will have access to refinery room, for example.

This can be complemented by good priority management. Let's say, cookers only cook and they have it at max priority. On top of that, limiting access through doors as mentioned above.

The pain in the ass is to do that manually for hundreds of doors and dozens of duplicants. Good luck! Please report back in case you get a worthful improvement.

 

Link to comment
Share on other sites

Hey,

I'm barely using any conveyors and only in space, less heat calculations in vacuum.

Managing access to each door for each duplicant actually sounds like a possibly promising thing to try. I will optimize my pathings on a per-duplicant basis and will report back to you guys.

I was wondering if there is anyone else with a huge base (80+, ideally 120+)? Ideally I want to build a 120-duplicant base. I think optimizing bases to reduce lag is an interesting, if unintended mechanic. Do you guys think it can be done?

If it is possible to make a 120-duplicant base that can still perform well on average computers (mine is definitely average), then Klei doesn't have to spend more time optimizing performance. It would be time for the players to start optimizing their bases ;) 

It would be great if Klei could make their performance metrics publicly available tho. Then players have some kind of way to see ways where they can optimize their bases.

Kind regards,

Sepoki

Link to comment
Share on other sites

26 minutes ago, BT_20 said:

The only things that haven’t been said seem to be conveyor rails they are performance intensive

I think there`s one more thing. One of the devs mentioned critter dropoffs in space can hit the performance. They keep checking for critters in the room and space is a pretty big room.

Link to comment
Share on other sites

1 hour ago, sepoki said:

I think I might need to change pathing/restrict access in my base as Craigjw and Blash365 have suggested. Any advice how to do that specifically in my base? 

I opened up your save.  Its massive!  Took me about 10 minutes to load.  Once opened, it ran at about 12 to 24 fps, with large pauses any time I opened up an overlay.

Let me just say, 80 dupes are tough to manage -- especially when there are a dozen Ellies and Nisbits running around causing chaos.  In my bases I'm usually operating with only 10 to 20 dupes.  I would definitely recommend restricting access with doors -- a daunting endeavor with your base.  For example, a farmer has no need to visit the rocket launch bays, and an astronaut doesn't need to visit the ranches.

After looking at your base, there are some design changes that I'm going to implement in my future base designs:

  1. When a new dupe is assigned to a bedroom, their name gets added to the door permissions list with full access.  Later, if I decide to restrict access, they're already on the list and I won't have to figure out WHICH Ellie gets to go into the room.  This will also apply to any specialty rooms, such as ranches, farms, and engineering bays.
  2. My bathrooms will be re-designed, such that several can be grouped on a single loop.  My current design will run into issues with plugged latrines if I end up with more than 20 dupes.
  3. I definitely need to leave room for tubes.  Those suckers seem to get dupes around quickly.
  4. I'm going to start back-filling unused space with sandstone tiles.  They're quick to deconstruct later if I need to use the area, and they should help reduce gas movement and pathing calculations.

 

Link to comment
Share on other sites

1 hour ago, sepoki said:

Managing access to each door for each duplicant actually sounds like a possibly promising thing to try. I will optimize my pathings on a per-duplicant basis and will report back to you guys.

As i tried to say earlier. Your base is build like a huge mesh, where you have several pathing options on every floor/ladder combination.

e.g. going from the top right to the bottom left has a bazillion permutations of going down/left. This could be reduced by simply removing some of the redundant pathes.

I'd also just wall off certain parts of your base completely and just make it accessable via tubes. That way there is only _one_ way to get there.

If you wall off enough areas, it should greatly reduce the complexity of pathfinding (hopefully. it's not something i have actual test-data on).

 

 

 

Link to comment
Share on other sites

I've been mining out biomes and filling them with regular tiles. This way it removes any gas (vacuum is also gas) from large areas, and blocks path that would never be used in the first place. It does take some time with lots of managing, since we don't have the technology to make dupes not wall themselves in while also getting things properly done.

I suppose using insulated tiles would be even better, when/if temperature calculations in the tile massive falls below the threshold.

Link to comment
Share on other sites

Hey all,

I'm not using critter drop-offs in space either (I saw that dev post, hehe)

I decided to use Duplicity to delete everything that wasn't in a container. It dropped my savefile about 3 mb and seemed to speed stuff up.

I also tagged all my duplicants in their names according to what their main jobs are. Only suppliers are allowed to move through the space gates, only farmers allowed to go through farm gates, only ranchers through ranch gates. I think restricting the amount of people allowed through space makes a very noticable impact. I also further walled off every part off the map where duplicants aren't supposed to operate things. Finally, I also further reduced the amount of travel paths. 

The good news: My fps is amazing for what I am used to. I think if I wall off just a bit further (making some parts tube-only sounds good), I could further optimize things. What is also really cool is that with 80 duplicants you seem to be able to sweep regolith faster than it drops down. 

The bad news: The pause time between jobs still is about the same. It must be lag, because if I pause the game, I can wait for the dupe to pick up a task. Is reducing pathing complexity the only influence we have in reducing the "pause time"? I think if I reduce possible paths any further, my dupes will spend a lot of the time taking suboptimal routes.

I think I might still be able to get to 120 dupes like things are now (I will definitely try!), I was wondering wether anyone got to such a number of duplicants and still has a base that doesn't lag?

In case you guys are interested, here's my updated save.

Kind regards,

Sepoki

 

More optimized.png

More optimized.sav

Link to comment
Share on other sites

Hey, as a small update, I'm at 100 duplicants now. Pause between jobs is definitely getting worse, although fps is still somewhat acceptable. Anyone else have experience reducing this pause between jobs with many duplicants? 

Also, is 100 duplicants a record? =P

Link to comment
Share on other sites

There's something really fun about watching 100 duplicants run around like a swarm of busy little bees :p

I hope Klei or the community finds some more ways to deal with the pause between tasks lag that happens with a lot of duplicants. I would really like to see extremely big bases become a thing, so we can compete with eachother to build the biggest/most efficient base.

Meanwhile, in hopes of drawing out people with bigger bases, I will claim the world record of the biggest base in Oxygen Not Included!

Kind regards,

Sepoki

Link to comment
Share on other sites

It is called the AI lag, it kills everybody at some point. I run bases on quite the same scale, and usually at about 50 dupes it starts, until it is really bad around 90 dupes. The FPS are still ok, in a playable range, but the overall performance of the base, how quickly everything gets done, gets worse with every dupe I hire. I tried most of the advices given here, but to no help. 

2 hours ago, sepoki said:

Also, is 100 duplicants a record? =P

Not yet. My previous base was at 106 before I had to give it up due to frequent (< 1 cycle) game crashes.


One thing that helped me a bit is using shifts, sleeping dupes seem to ease the problem a little. So I have 3 shifts with pretty long rest and downtimes, maybe try that if you do not use that already

Link to comment
Share on other sites

1 hour ago, sepoki said:

I hope Klei or the community finds some more ways to deal with the pause between tasks lag that happens with a lot of duplicants.

I started a new base this week with the goal to keep it with 3 duplicants. I can confirm even in the first 100 cycles with no spaghetti piping, no stabllished ranch, there is a pause between tasks. I suppose it's not as severe as yours but it's there.

I hope they manage to fix that. :(

Link to comment
Share on other sites

I just hit cycle 217 and finished building my first cooling system for my base.  I have 8 dupes and am running at 60fps.  There doesn't seem to be any lag between jobs, but if a dupe completes their entire list, then they stand around idle (without being idle) for several seconds while jobs are re-distributed.  I'm thinking that perhaps its a compromise to reduce the computing hit for continuously updating job lists.

 

Addendum: They only seem to run out of tasks in two cases: Everything is caught up, OR I'm on Triple Speed.

Link to comment
Share on other sites

On 12/20/2019 at 2:49 PM, Stoned said:

It is called the AI lag, it kills everybody at some point. I run bases on quite the same scale, and usually at about 50 dupes it starts, until it is really bad around 90 dupes. The FPS are still ok, in a playable range, but the overall performance of the base, how quickly everything gets done, gets worse with every dupe I hire. I tried most of the advices given here, but to no help. 

Cool to hear from someone who also has a big base, your experience sounds very comparable to mine. When I went from 80 to 100 duplicants the productivity of my colony seemed to stay about the same. I can go to 120, but it will make my duplicants stand around like zombies for half the time, since any additional duplicant will just add one more to the "task assignment queue". You can see this lag in effect when you assign duplicants to dig out sand or regolith. If you start digging from the bottom, dupes will keep digging until no more sand/regolith falls down. if you start digging at the top, dupes will dig out the first tile, then idle until they get the task to dig out the second tile. If you pause the game, you can take away the task assignment lag so it doesn't matter whether you dig from top or bottom, if you don't, digging startng from bottom will be faster.

On 12/20/2019 at 3:05 PM, Junksteel said:

I started a new base this week with the goal to keep it with 3 duplicants. I can confirm even in the first 100 cycles with no spaghetti piping, no stabllished ranch, there is a pause between tasks. I suppose it's not as severe as yours but it's there.

I hope they manage to fix that. :(

I hope so too, I wanna go for a 150 dupe base :p  I don't care if it will take me a lot of crazy optimization. Right now, every place in my base can only be accessed from one direction (and only if it is Dupe's role to be there), to make pathfinding as easy as possible, but with 100 dupes I still have a lot of pause lag.

Maybe I should just get a faster computer.

Link to comment
Share on other sites

Maybe instead of one giant central megabase, build separate smaller base clusters and restrict dupes to those clusters? Then free-floating dupes can do other stuff. That way 1,000 jobs for 100 dupes becomes 100 jobs for 10 dupes (10 times) which is a lot fewer permutations.

Disclaimer: I'm not close to 100 dupes. I am frustrated already by how poorly dupes are assigned jobs. Left alone, a dupe will mine a single tile, then go disinfect something, then mine another tile in the same place...

I know that there are lots of ways to avoid this, and I'm employing them (particularly restricting some dupes to prefer certain tasks), but this speaks to the base algorithm, which treats 20 tiles of digging grouped together as 20 jobs. Setting them as one job would make things a bit easier to plan and take up less space, but that's also pretty complicated. It's not easy doing this, so despite my annoyances I'm pretty impressed with what's already out. 

Link to comment
Share on other sites

On 12/26/2019 at 8:52 AM, smcjones said:

Maybe instead of one giant central megabase, build separate smaller base clusters and restrict dupes to those clusters? Then free-floating dupes can do other stuff. That way 1,000 jobs for 100 dupes becomes 100 jobs for 10 dupes (10 times) which is a lot fewer permutations.

You are exactly right.

I tried to solve this for the last week. First, to counter the task/AI lag I made a script to pause the game for 5 seconds every 1 second. It actually didn't work; even running the game at 0.2x of normal speed didn't even stop all the AI lag. Finally I got so frustrated, I saved my game and murdered duplicants until I was down to 60-70 and murdered critters until I had 100 (down from around 400). It didn't help at all.

This was actually great news to me (and should be great news to the community also), because it meant my task/AI lag was coming from my base design, not from my number of duplicants. So I spent around 10-12 hours doing nothing but making sure every duplicant can only access like 10% of my base. That solved it. Every duplicant now has their own little personal part of the base they can access.

I'm now at 110 duplicants and my base is planned for 113. My framerate is still good and task/AI lag is 1-2 sec for most duplicants, the ones that can go to space have higher task lag. For anyone else trying to solve this, these are the things that helped for me:

- Like smcjones said, you absolutely cannot have every duplicant access every part of the base. In fact, I don't think you can rely on Klei's task priority system much at all in the late game, because finding the task with most priority lags a lot, you need to make sure dupes have as few tasks available as possible to begin with. In particular very few duplicants should be able to go to space.
- You absolutely need to constantly sweep/remove all debris, including the stuff that drops down from space (regolith/metals) and you HAVE to put it in dedicated containers, or it will lag you also.

The interesting thing to me is that my problems should pop up in every base, not only in a megabase. If  you have 36 duplicants, you can still have incredibly high task lag per duplicant lategame if you use a base design like I do (mesh-like, many paths and many different places reachable) and don't clean up your debris. The problem to me is the game doesn't point this out to you, ONI definitely cannot deal with a multiple-paths base and in particular the debris falling down from space will lag every game to death sooner or later if you don't clean up all the debris.

Here's a screenshot of my 110-dupe base (not much changed), I want to do a bigger showcase once I've reached 113.

Kind regards,

Sepoki

wa6w3aw36wa36.png

Link to comment
Share on other sites

Regarding the dupes reaction times, it might help to reduce the number of tasks the dupes have to chose from and the number of paths the dupes can take. Restrict their access to the base with doors. Restrict the amount of errands each dupe will care for. Reduce the amount of rubble lying around. And finally reduce the number of paths that your dupes can take. Add some clear transfer tubes instead of several ladders with multiple parallel pathes.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

Please be aware that the content of this thread may be outdated and no longer applicable.

×
  • Create New...