Recommended Posts

Lutzkhie    345
19 hours ago, DarkMoge said:

Just having access to more options causes more lag

So thats why lifegrow's playthrough he always dig everything out almost no more natural tile to run to

  • Like 1

Share this post


Link to post
Share on other sites
Xenologist    1,260

I think the pathing of everything could be simplified to "Calculate most efficient/ most time left to current errand" and then "Calculate to a certain area around the dupe or critter for idling." Just make it so that no unnecessary calculations are made. The dupe should also calculate ahead, using the schedule and who else will be influencing the pathing. I'm not a game dev but I have thought of this all day. The only flaw is the whole "Move a dupe to a certain place" but this can be solved by using the "path to current errand". Dupes calculate the avg. time to get there and ajust accordingly. If a dupe is already clearing the path or doing something else that would affect the pathing, either making a more efficient route or if the dupe would have a more efficient route if the time it takes to build or dig is too long or if the dupe isn't going to be done in time. However, if the most efficient path is the same path, the dupe will either (being greedy and mean) do the orders themselves, wasting the other dupe's time for attempting to build that, do the order in their path that another dupe was going to do and then that said dupe has more time if an errand that they were pathing towards, or just wait, using the wait that the dupe stopper anim if the task would cost more time if the dupe waiting did the pathing correction errand.

Share this post


Link to post
Share on other sites
Lifegrow    1,525
51 minutes ago, Lutzkhie said:

So thats why lifegrow's playthrough he always dig everything out almost no more natural tile to run to

Bingo, baby ;)

Less calculations = more good. Science!

I really feel it's the errand system that ***** everything up. I don't believe pathfinding is as bad as everyone says - from my testing it's an offender, but not currently the lead culprit (although it certainly has been in the past). Nor do I believe it to be critters - aside from maybe shove voles - they're world class dangusses... I don't believe we need to dig out every tile of the map, nor vacuum the entire outside of our bases - but there's no denying that we are very much limited in what we can do freely.

We've all been trying to find our workarounds, be it single tile wild ranches, lower dupe bases, smaller bases, less piping, less digging, more digging, storing in vacuums, storing in storage bins, storing individual items PER storage bin, the list goes on....

Fact is, we as the players shouldn't need to consider any of this crap unless we take things to extremes. It strikes me that the issue here seems to be that the game has been designed to cope with less than we're capable of, aspire to do, or expect. Maybe thats a shortfall on Kleis part, or maybe its us expecting too much for a £20 game... Either way - they are considerations that we physically HAVE to act upon, or face the inevitable spiral of a base thats too laggy to enjoy playing, and too laggy to be arsed fixing.

If that isn't cause for concern, then I don't know what is honestly. Don't mistake this for hate/bitterness. I love this game - i'm on the forums because I liked this game enough to become a part of the community... I've put over 3300 hours into the game (I've streamed over 2000 hours...) so it's not like I haven't had my moneys worth :p 

If only the game ran smoothly I daresay we'd have some sort of illegitimate lovechild by now.... 

Alas, it does not, and so that is why I blame Klei. Klei denied me my illegitimate oozebabbie, and it sickens me.

  • Like 2

Share this post


Link to post
Share on other sites
Aelfled    37

I don't think preventing digging/construction/automated-doors from invalidating all routes is really workable. People would be complaining even louder about dupe pathing if they didn't re-evaluate when you just opened a short-cut, let alone if they kept walking to a now-unreachable task. 

 

If you have 30 dupes working on some massive construction task then you take the hit because every completed task requires the potential re-evaluation of 29 other tasks (on top of the completed dupe needing a new one), and with 30 dupe the rate at which tasks are completed is also much higher than if you have 10.

 

The best way to solve this is to disable triple speed for people with poor CPUs, but that would lead to another pitchfork mob.

Share this post


Link to post
Share on other sites
withers    137
Posted (edited)
3 hours ago, DarkMoge said:

My tests lead me to believe that the game does not even run those check on time basis. It seems to run a loop for every dupe that gets executed when your processor is free from other tasks. Which should be already better than any time based setups. The way to optimize it is to make some sort of mapping that saves some data about the state of the map and use the saved data to ease the calculations... Which is a difficult task, because it means almost inventing an ai that can deal with multiple different maps and make best marking solution for them... Considering that every map is different and players make poor design choices, the task is quite complicated. Also, it seems like oni already does it. So, optimizing the process becomes even more difficult.

Not sure I understand how you conclude this.  In your tests, did the game not immediately explode whenever the dupes get access to your "infinite path" ladders?   This tells me they are continuously doing pathfinding checks, in real time.... which means every tick.

As confirmation, just watch the task tab on any dupe.  It's constantly getting updated in rel time.  Not only that, it's constantly updating an entire list of future tasks in real time.  As soon as the path to any of these tasks gets blocked, the task disappears.  Which means continuous pathfinding checks each and every tick, for an entire catalogue of future tasks, for each and every dupe.  That is waaaaaaaaay unnecessary.

Give me full access to the code and a few full days.... I'll optimize the crap out of their game.

Edited by withers

Share this post


Link to post
Share on other sites
Lifegrow    1,525
27 minutes ago, Aelfled said:

The best way to solve this is to disable triple speed for people with poor CPUs, but that would lead to another pitchfork mob.

I have a Ryzen 7 2700x, not exactly a shabby CPU and I can barely play on triple speed without making my eyeballs bleed :p

Share this post


Link to post
Share on other sites
avc15    416
10 hours ago, Aelfled said:

There is no magic wand to miraculously make this faster, blaming Klei is silly.

There actually is, but people would not enjoy it much: reduce the size of the map.

Share this post


Link to post
Share on other sites
DarkMoge    138
15 minutes ago, Lifegrow said:

I have a Ryzen 7 2700x, not exactly a shabby CPU and I can barely play on triple speed without making my eyeballs bleed :p

huh, my pc is like 5 years old at this point(intel i5-4590), so I am considering updating it, but I run the game exclusively on triple speed.

I am hoping to save up enough to update pc sometime soon D:

Share this post


Link to post
Share on other sites
Lifegrow    1,525
Just now, DarkMoge said:

huh, my pc is like 5 years old at this point(intel i5-4590), so I am considering updating it, but I run the game exclusively on triple speed.

I am hoping to save up enough to update pc sometime soon D:

Depends how big you go buddy. 

Round these parts we go big, or we pack up our things and mosey on out of town... ;) 

Share this post


Link to post
Share on other sites
DarkMoge    138
Just now, Lifegrow said:

Depends how big you go buddy. 

Round these parts we go big, or we pack up our things and mosey on out of town... ;) 

playing at 20 dupes. I would add more, but I never get enough water to support more. Like, idk, its usually 2-3 geysers around the map, which on average produce enough water for oxygen for 20 dupes... and you need water for food too... getting more only comes by boiling oil or working on some oxygen solutions that do not require water...I play both on normal difficulty and on hardest... All of my food usually comes from ranches to save water for oxygen... 8 pips support 2 dupes on normal and 1 on ravenous hunger... 8 drecko are twice as good... so, it ends up being over 100 critters to produce enough food.... than, I also have ****ton of shine bugs, because I use them for power and they become my power source... 1 shine bug is 10W of power on average in my setups, I put them in chunks of 50 into solar panels rooms for average 500W which actually spikes to 1000W at times.

I am sorry that my builds are not ambitious enough.

Share this post


Link to post
Share on other sites
Lifegrow    1,525

Was just a joke bud - y'know, "go big or go home"...

Saying your game runs at triple speed is all well and good, but it depends whether you're at cycle 200 or 2000, and whether you've built a pig sty or a palace :D Point I was making is that my CPU is no slouch. 

Share this post


Link to post
Share on other sites
nakomaru    1,392
Posted (edited)
10 hours ago, Sasza22 said:

Only cause it at the beginning of the cycle, which is nit that bad.

I go through one cycle per minute. A big hitch every minute from critters is unacceptable. Good thing they aren't needed.

18 hours ago, metallichydra said:

Its as if lag is part of the game.

Sure is. Either you optimize your base for performance or you make everyone on the forums pay the price.

Re: pathing load. I agree with the sentiment that it's not an easy problem and there are limits to what can be done. For the tiny amount of money this game costs we are getting a good value. But there are also many paths to performance increase. This is a very parallelizable sim, and yet it seems to use about two main threads.

At the least they could separate the main thread from all expensive tasks to prevent hitching. Even if the game has to pause for critter calcs or saving, you should be able to continue planning and panning without Windows thinking your program has crashed.

Edited by nakomaru
  • Like 2

Share this post


Link to post
Share on other sites
On 27.8.2019 at 4:01 PM, Aelfled said:

There is no magic wand to miraculously make this faster, blaming Klei is silly.

The Devs can do a LOT for Performance.

Look at Factorio it was an Game with horrible performance even with 2-3 players and no mods. 

Now after nearly a year of optimisations (while providing contend and modding capabilities) we can play with >100 People on a modded server.

And factorio had quite a lot of identical problems:

Pathfinding (but any unit could move like our flying critters since it is top down)

Liquid dynamics, AI controlls (with far more units), complex Automations (someone build an working video game with factorio automations...), Fire & Smoke

The only thing that factorio not have is gas interactions and for optimized bases this isn't an lag issue like the others...

And yes rebuilding a gmae for multithreading is possible and feasable. Many interactions can be capsuled to free up capacities.

One example is the inner interactions of elements in storage lockers... 

 

KLEI has good Devs and i like ONI a lot but the Performance is rotten like my mushfry .....

 

Share this post


Link to post
Share on other sites
suxkar    99
On 8/28/2019 at 3:06 AM, DarkMoge said:

playing at 20 dupes. I would add more, but I never get enough water to support more. Like, idk, its usually 2-3 geysers around the map, which on average produce enough water for oxygen for 20 dupes... and you need water for food too... getting more only comes by boiling oil or working on some oxygen solutions that do not require water...I play both on normal difficulty and on hardest... All of my food usually comes from ranches to save water for oxygen... 8 pips support 2 dupes on normal and 1 on ravenous hunger... 8 drecko are twice as good... so, it ends up being over 100 critters to produce enough food.... than, I also have ****ton of shine bugs, because I use them for power and they become my power source... 1 shine bug is 10W of power on average in my setups, I put them in chunks of 50 into solar panels rooms for average 500W which actually spikes to 1000W at times.

I am sorry that my builds are not ambitious enough.

If you boil petroleum and have a way to deal with the CO2 (hello slicksters, they feed your entire colony), you basically get 3,750kg/s PH20, which is enough for around 30 dupes on its own. Actually, after the release patch, you can get so many oil wells that you don't necessarily need to boil petroleum, so using petroleum refineries will give you even more dupes through natural gas. If you want to overkill it and have space materials, you can boil to sour gas and then freeze to natgas. That allows for hundreds of dupes and more enrgy then you will even need. So, actually going back to the topic, the only limitation is the lag produced by so many dupes!

I don't understand why people ranch anything other then slicksters for food.. By the time coal is over on the map, you have access to space so you don't need hatches (unless you are melting regolith I guess), drekos produce reed/plastic too slowly and require more micromanagement to be kept in hydrogen to grow scales, pips produce half the meat and are, like drokos, more intensive to ranch since they walk on walls (unless you imprison them with liquids). Sliksters don't have any of these disadvantages, offer the same amount of meat, dispose of the CO2 you basically cannot avoid to produce and output oil/petroleum to make the process even more water positive.

Edited by suxkar

Share this post


Link to post
Share on other sites
Oozinator    2,376
On 28.8.2019 at 2:03 AM, Aelfled said:

The best way to solve this is to disable triple speed for people with poor CPUs, but that would lead to another pitchfork mob.

You mean for PC below system spec?

 

Share this post


Link to post
Share on other sites
DarkMoge    138
3 hours ago, suxkar said:

I don't understand why people ranch anything other then slicksters for food.. By the time coal is over on the map, you have access to space so you don't need hatches (unless you are melting regolith I guess), drekos produce reed/plastic too slowly and require more micromanagement to be kept in hydrogen to grow scales, pips produce half the meat and are, like drokos, more intensive to ranch since they walk on walls (unless you imprison them with liquids). Sliksters don't have any of these disadvantages, offer the same amount of meat, dispose of the CO2 you basically cannot avoid to produce and output oil/petroleum to make the process even more water positive.

you see, every time I look at slicksters, they appear to be incredibly hard to ranch compared to other critters... I do not ranch hatches, because I am naturally averse to the idea of feeding them non renewable resources... I could compromise for something like feeding mealwood to sage hatches, but that results in almost no coal, so why bother with hatches at all.

On the other hand, dreckos are really easy to ranch. First of all, they require no micromanagement, because you need to setup their farm only once. Secondly, you do not even need to setup their farm, you could just keep them in pure oxygen. You can just sheer them once in their entire life and it will give you a substancial amount of resources for early game.. All you need is just put them inside a ranch with mealwood. In comparison, growing thimble reeds requires much more effort and costs enormous amount of water. Unless you are trying to burn your water, you should not consider domestic thimble reeds. They are amazing for plastic as well, honestly, I do not even know any good setup for making plastic out of oil, because I have dreckos for that.

Once you get enough plastic, all you need is to just setup a sealed room with access only through transit tubes. Use canister filler + canister emptier to setup an ideal ratio of chlorine to hydrogen or CO2 to hydrogen. Pips are also amazing and they naturally fit with a drecko ranch... Because they give a source of dirt that happens to be just enough to maintain drecko ranches. You just need 3 wild arbor trees for 8 pips... Also, pips give 2 times less meat than drecko, but their eggs are as good for omelette. (actually, even better, because pips have higher reproduction rate) Making omelette is easier through early-mid game... Another benefit of drecko is that they produce food for shine bugs... And shine bugs produce power:

shinebugs.thumb.PNG.d25c7aaad10be038f189a940d543a692.PNG

50 shine bugs with 2 solar panels result in average 500W. They need to be fed 10kg of phosphorite per cycle (1 drecko). Sometimes, their population jumps to 100, they will eat 20 kg at that time (2 drecko).
So, 8 drecko ranch transition to being at least 2kW.

2 ranches of shine bugs (16 bugs) will produce 50 eggs within 5 cycles... So, you can keep on adding easy 500W to your network every 5 cycles.

Now, what does setting up slickster ranch requires... You need to use power generators that produce CO2 which I usually do not use and you need to place them in a way that you can gurantee the venting of CO2 to the ranch. That is already more work than setting up drecko ranch. Next, you need to make the area next to the ranch livable for dupes, unless you want them to travel from the other end of the map. While you also need to make sure to keep high temperature inside slickster ranch... They produce minimal amount of oil, but in the end, you need to setup some oil disposal machinery and it needs to be able to work in high temperatures (gold amalgam is not easy to obtain on all asteroids, so you might have to resort to steel)... And what do you get in the end in terms of food? An amount that is pretty close to what you would get from drecko ranch...

Pacu ranches can be great too, but I usually do not find myself in a need of building one after they changed their drop to pacu fillet instead of meat. And I want to make drecko ranches either way for fiber and plastic, sooo, I have enough food.

Some day, I should experiment more with trying out shove vole ranches, but it is more high tech than slicksters.
Also, havent tried pokeshell ranch.

Pufts are amazing, but tend to be buggy :( You can build their ranch around chroline geysers, making the geyser produce food... But the real goal of ranching pufts is to try feeding them polluted oxygen, which is quite hard (more accurate, very space demanding) to produce in current state of the game.

Ranching morbs was awesome at some point, but they got nerfed really hard... You need 1000 morbs to get anywhere now. Also, it is not hard to get 1000 morbs, but it is game lag inducing.

But pip + drecko + shine bugs is awesome.

Edited by DarkMoge
  • Like 1

Share this post


Link to post
Share on other sites
DarkMoge    138
3 hours ago, suxkar said:

Actually, after the release patch, you can get so many oil wells that you don't necessarily need to boil petroleum, so using petroleum refineries will give you even more dupes through natural gas.

using oils wells -> oil refinery is not the most water positive process...

Share this post


Link to post
Share on other sites
bobucles    335
15 minutes ago, DarkMoge said:

using oils wells -> oil refinery is not the most water positive process...

Plain petrol processing will cost some water and give an okay amount of power. A sour gas cracker will produce a huge amount of energy and even replaces more water than it costs. It's true perpetual energy, which is more than good enough.

Share this post


Link to post
Share on other sites
DarkMoge    138
3 minutes ago, bobucles said:

Plain petrol processing will cost some water and give an okay amount of power. A sour gas cracker will produce a huge amount of energy and even replaces more water than it costs. It's true perpetual energy, which is more than good enough.

I am more than aware... But I have not been able to make a design that does not require super coolant. Here is an old thread.
 


Also, on topic of dreckos:

drecko.thumb.PNG.c9ade0a880e8fbd04b6818a2a0e9ad66.PNG

Share this post


Link to post
Share on other sites
Oozinator    2,376

@Ipsquiggle watch this ponderlagfest.

It's like watching a breakdance festival and @Lifegrow has badass hardware and plays only on doublespeed!
It took only half an hour to build a liquid lock..

 

Edited by Oozinator
  • Sad 1

Share this post


Link to post
Share on other sites
suxkar    99
2 hours ago, DarkMoge said:

using oils wells -> oil refinery is not the most water positive process...

Yes, my brain farted, sorry

About drekos vs slickster, as I said before, they output the same meat, but slickster dispose naturally of the CO2 you would anyway have to dispose of with some gas pumps. CO2 can be heated naturally by making pipes pass through an oil reservoir (which is around 80 degrees), the temperature isn't a problem for dupes as I don't see any reason not to have atmosuits everywhere expect the core base.
The crude oil output is not that bad: say you produce around 2kg/s of CO2 (8kW power), that translates into 1kg/s of crude oil. It's enough for half an extra petroleum generator (1kW power) or a Polymer Press.
Finally, and most important, you cannot trap drekos efficiently with liquid if you want to feed them. As displayed in your pics, the time it takes a dreko to get to the grooming/sheating station can end up being more then the time to get groomed/sheated. It's a huge waste of dupe time.
Just to be clear, I'm not saying dreko farming sucks, god no, I just want to point out why it seems clear to me that slicksters are superior in every regard.
The only thing drekos have for them is reed/plastic production, but it is so abysmal compared to the dupe time required..
If a dreko stays in hydrogen 100% time (which is impossible if you want to feed them), it produces 2 reed fibers every 8 cycles. By comparison, 2 wild thimble reeds will produce as much (actually more due to scale growth and delay of sheating) for only a fraction of the dupe time.
Same goes for glossy drekos: with the (impossible) 100% scale growth time, they produce 50kg/cycle plastic, while a single polymer press produces 300kg/cycle, for an easily manageable cost of power and heat and no dupe time. Well, now that I look at the numbers, considering they would give food as well, they are not that bad. I guess it's a personal choice, I go for power asap to be able to do what I want anytime so for me it sounds simpler to just mass produce plastic instead of having to wait, plus it spares a lot of dupe time.
Anyway, this is my 2 cents!

Edited by suxkar

Share this post


Link to post
Share on other sites
bobucles    335
39 minutes ago, suxkar said:

, but slickster dispose naturally of the CO2 you would anyway have to dispose of with some gas pumps

The gas pumps aren't really needed. If the petroleum generators are built up high enough, the CO2 can be vented directly to space. How the CO2 gets disposed of is all a matter of preference really, but spacing it is the least work. 

Share this post


Link to post
Share on other sites
suxkar    99
16 minutes ago, bobucles said:

The gas pumps aren't really needed. If the petroleum generators are built up high enough, the CO2 can be vented directly to space. How the CO2 gets disposed of is all a matter of preference really, but spacing it is the least work. 

An obvious solution I had never thought about lol. Thanks for the opinion! I'll stop derailing the topic now, sorry!

Share this post


Link to post
Share on other sites
hpongledd    56

Wihtout reading the whole topic...i'll just post my two cents.

Klei will most probably do nothing about pathing optimization. Reason? Although its just an assumption, im pretty sure it is like that, they are using a framework. Blackbox. Period.

Unless Klei has a (really) big brain in their company nobody will understand whats going on in this framework. Google "ant colony optimization algorithm" to see a glimpse on how complicated this **** can be.  I assume they already have contact with the developers and most probably they dont give 2cents about klei. Conclusion? Nothing will happen.

Funny side story: We needed a framework with the above mentioned algorithm. We could only find two ppl/company who did that. One was google and wanted 10k/year for a licence. The other one was a random professor at MIT who gave it to us for free. :D

Share this post


Link to post
Share on other sites
DarkMoge    138
2 hours ago, hpongledd said:

Google "ant colony optimization algorithm" to see a glimpse on how complicated this **** can be. 

what do you mean? that is elementary. You can implement that under a day of work, depending on what you already have... Just writting the algorythm is like 2 hours at most. I do not think it would make any sense to use in oni though, with the rate of how often it changes the available paths.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now