DevLog 101: Performance, Performance, Performance, Performance, Performance…

It’s about performance… :computer: :speedboat: :fast_forward: :flight_departure:

https://www.airportceo.com/devlog-101-performance-performance-performance-performance-performance/

5 Likes

Moving an object with several attached child objects can become an increasingly performance costly task for each new agent that is spawned, which is why we’ve been focusing a lot on redesigning ACEO’s agent objects to fit the same kind of detail but on a smaller simulation footprint.

EVE online had this too, due to skills of a player having an effect on objects surrounding the player, they solved it with a project called Brain in a Box; make an object that is a container with an object with childs within the container, have the calculation path finder only calculate with the main container and not with the object with all childs.

2 Likes

I’m liking the performance improvement. But, only 5000 in your GIF? Hah! Amateurs. My present airport had 21000 passengers before I edited PersonData.json to eliminate them. FPS was garbage and keyboard response nearly non-existent. Even after eliminating the 21000 passengers, FPS was still lagging. And, within 30 minutes (real time), I had 5000 passengers again. Even setting the Percent of Passengers Per FLight slider to 10% was of little consequence. As a C#/C++/C developer myself for many decades, I understand how hash-lookup can suck up RAM and take a performance hit.

Bottom line: cautious wait and see.

sidebar: still looking for that 25.3 that was supposed to drop Saturday…Sunday…Tuesday…soon

Well, as a developer yourself you might be familiar to deadlines being pushed forward :stuck_out_tongue: … deployment is scheduled for later this afternoon! :slight_smile:

3 Likes

CI/CD everything :smiling_imp:

reminds of setting up travis ci … need to go back to work ^^"

LOL. I’m just jerking your chain, my friend. My philosophy is simple: Better to be done right and later, rather than early and buggy. Keep on doin’ what you’re doin’.

2 Likes

Do we think my save is corrupted- I have been unable to play it for weeks because no aircraft arrive? I have submitted bug reports and whinged on the forums but nothing…

Are you using mods? Sometimes, that prevents a saved game from running. You can do what another player recently di when he got no arrivals. Store your savegame on a DropBox account, and provide the link here. This way, other players can test for you.

If you use mods try changing the value in that text file that uses default companies. Mine was set to FALSE, I changed it to TRUE and flights began arriving.

Sadly, due to hardware issues we have to push the deployment of 25.3 until tomorrow. Will keep you posted!

A new .gif on the performance progress in the lab world is also available:

7 Likes

Understandable…
Keep up the hard work going into the game! It is slowly becoming better and better, and this performance fix is a big step! :grinning:

Delayed again!

This_is_an_Outrage_

That .gif is oddly satisfying to stare at for some reason.

2 Likes

I though gif wasn’t working for only me :blush:

1 Like

This sounds amazing!! I have been doing the whole plane/airport thing (in real life) for the last 28 or so hours and it kills me that I now will not be able to try this update until I get home in 3 weeks time :disappointed_relieved:

2 Likes

@daniel, by the time you return, there will probably be two more updates.

Can’t wait to see the performance improvement with my 20,000+ passengers.

2 Likes

Well, with 20k pax I wouldn’t really count on any major differences. This first update really only takes care of some major rendering and simulation (in terms of moving agents) performance issues. Next deploy will then contain optimized data structures for all objects in the game, i.e. items, structures, job tasks, basically anything that’s stored in a structured order. Lastly, we’ll deploy the new path finding update and when all of these three deployments are completed on the experimental branch (hopefully by end of next week) we’ll asses it’s impact and reevaluate our position in relation to performance.

We found a few visual bugs that we deem need fixing before we push 25.3, so the window is again delayed until tomorrow. Nothing too serious, but to provide some insight into what we are doing, and what is holding us back right now, you can follow the progress here:

Ready for deployment on experimental branch: https://apoapsisstudios.atlassian.net/browse/ACEO-3517?jql=status%20%3D%20"Ready%20for%20Experimental"%20order%20by%20lastViewed%20DESC

In review: https://apoapsisstudios.atlassian.net/browse/ACEO-3518?jql=status%20%3D%20"In%20Review"%20order%20by%20lastViewed%20DESC

In progress: https://apoapsisstudios.atlassian.net/browse/ACEO-3057?jql=status%20%3D%20"In%20Progress"%20order%20by%20lastViewed%20DESC

LOVE the addition of the stand info. WOOT.

Makes debugging late flights so much easer. Thank you so much.

26

5 Likes

You mean your bus-stops with 11k passengers :stuck_out_tongue:

@jasperwillem, I had an airport with 20k pax, before editing PersonData.json to be rid of them. My airport adds about 1000 pax every 5-10 minutes.