Dev Blog 130: Last phase of multiple floor, completing the de-icing implementation, localization tests and NG19!

May 24, 2019

Hello airport CEO and welcome to the 130th development blog! We’re writing to you from the floor of the third day of the Nordic Game Conference 2019 here in Malmö, right by to the Game Habitat (featuring Airport CEO) booth, getting interrupted from time to time by various visitors who want to check out what it means to be an airport CEO. The preparation process of this conference is why this dev blog is delayed as we’ve impromptu had to design rollups, fix demoing hardware and more but at last we’ve finally found the time to sit down and let you know what we’ve been up to these past two weeks and all the good progress we’ve made. Let’s get into it…

The hopefully final multiple floor algorithm revision

As of last Monday, we released the, hopefully, last revision of the multiple floor algorithm update onto the internal branch. We mentioned in the last dev blog that we wanted to make sure that all realistic use cases in how a section of terminals and areas can be laid out and with the last revision we now believe that so is the case. We’ve let our amazing test CEOs have a stab at it and this last version seems to have covered the last few remaining design cases that previously broke some parts the path finding logic. With this new revised algorithm version out, and at that a few rounds of bug fixes, we’re currently working on preparing the first experimental release of the final phase of the multiple floor implementation with the last step: Visuals and polish. Since Airport CEO lives in the obscure world of being a game comprised of 2D assets but displayed a 3D world with vertical depth, there are a few technical challenges to deal with in relation to moving vehicles. These consist mainly of sprite renderer sorting layer and order priority in combination with sprite renderer placement on the z-axis (the up direction in Airport CEO). We’re currently investigating a few different ways to solve this in a manner that is visually pleasing while also computationally reasonable, i.e. it needs to look as well as it needs to perform. On top of that there are a few other visual aspects such as roof rendering and when and where to hide and reveal simulated objects depending on their world placement but we do believe these to be inferior in terms of development resources compared to the challenge of making a vehicle disappear smoothly under a terminal overpass.

As you know, we won’t set any exact final release date to when we believe this will be out on the experimental branch, but we do recognize this phase as being the last and final part of this feature update and that with so much internal release testing it should be a fair bit more stable than previous large releases. Hopefully we’ll have it out on the experimental within the next two weeks.

Completing the de-icing implementation

A lot has happened with the de-icing simulation since we last wrote and we’ve overall made such notable progress that we’re only another internal release or so from deeming it stable enough for experimental branch testing, together with catering. As of the last dev blog’s reporting, we’ve made several additions to the simulation process and a few improvements to the visual aspects.

De-icing in progress

Just like aviation fuel, de-icing fluid is a consumable commodity. Thus, we’ve added a de-icing depot, de-icing fluid suppliers and simulation to support their interaction. De-icing trucks consume de-icing fluid as they de-ice aircraft and over time they will need to refill, aborting a current job task and then resuming it once it’s replenished its tanks. The de-icing depot is filled with de-icing fluid from a supplier similar to how aviation fuel is supplied and is delivered in special green trucks. As for the visual improvements they mainly center around polishing of the de-icing process itself, including crane movement and particle simulation improvements. In normal cases, we’d reveal the de-icing depot for you in a picture below, but we thought that to keep some of the mystery for once the update goes live, we’ll hold off on that. Instead you can check out some of the improved de-icing visuals below:


About to de-ice the tail wing...

Starting next week, we’ll move onto the third and final turnaround service: Cabin cleaning! More to come about that in the next dev blog.

Localization tests on internal

It’s getting cramped on the internal testing branch! Together with de-icing we also launched the first version of the localization system onto the internal branch. Fundamentally, this is a very large change as all of the hard-coded strings throughout the code base have been replaced with a system that serves text from a .json database. Together with this new system we have also implemented a wide array of tools for implementing localized text on the fly, ensuring that the new system does not impact the development speed we’re used to but instead propel it. On top of that we’ve received quotes from a few various localization agencies and will be making a move on that next week, all in all everything points to that the game will be fully localized to Germany as of the multiple floor release. We can also happily announce that a key binding system has also been developed, allowing you to bind keys to your own preferences, and will be included in the next release.

In other news

… if you missed out on the introduction, we’ve spent the end of the week at the Nordic Game Conference 2019! And if you’re interested in how we spent our time, you can head over to Apoapsis Studio’s instagram profile and check out the highlight called “NG19”. You can also check out the highlight called "Airport Tour" as we a week ago went to visit Copenhagen Airport on a tour to freshen up on our airport knowledge and get some inspiration.

… Steve’s been at it with the aircraft and just now completed, amongst a few other secret large aircraft, the Beechcraft 1900 D! It’ll be launched together with Alpha 31 and the multiple floor update but since you’re probably wondering what it looks like we’ll of course share it in the wild with you below:

So nice to see something else occupying a small commercial stand!

… just to clear a few things up regarding the upcoming experimental releases: Multiple floor and German localization will deploy without the new turnaround services as part of Alpha 31. Once Alpha 31 is stable we will enable the new turnaround services as part of Alpha 32 and test each enabled turnaround service one by one. Once a newly deployed feature is deemed stable, we will carry on with the next.

So that’s it for this week. Thanks for tuning in and fly safe!

Related blog posts

Dev Blog 150: Stabilizing Alpha 35, Alpha 36 and beyond!

May 8, 2020

Well hello there, airport CEO, and welcome to the one hundred and fiftieth development blog! It’s been a little over another two weeks since we last spoke and we are very, very...

Read more

Dev Blog 149: Experimental testing of Alpha 35, new airlines and the studio tour!

April 24, 2020

Hello airport CEO and welcome to the 149th development blog! It’s been a while since we last spoke and it’s simply due to the very heavy workload we’ve been pulling the past two...

Read more


Enter your email to get the latest updates and news.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.