Dev Blog 78: Steam Direct Update, Early Access Trailer, Condition and Skills and Stress

August 1, 2017

Good evening! Hope you are doing swell and welcome to yet another edition of the Airport CEO development blog. The weeks are flying by and so are we, as you might know we have now officially announced Airport CEO to arrive onto Steam within August 2017. We’ll talk more about an exact release date and why we won’t give you that exact release date, or a release price just yet, a little bit further into this devlog. For starters however, we’ll talk about what we’ve been doing on the development side of this past week’s effort! Fredrik is currently on leave as he is enjoying his first days of marriage but Olof has been staying put in Sweden and kept the ACEO plane flying. Let’s get into it…


Last week we talked about cleanliness and how objects can become filthy and require cleaning. This week, well, directly after we received some feedback on the work we made some adjustments and presented it in a tweet. Through some input from the community we decided to implement different types of filth depending on what the origin object of the filth is, so now there’s going to be puddle around the sinks, body fluids around relief items and more dusty and muddy filth tiles on the floor where people have been walking. We also had some time to adjust the behavior of the cleaning crew and animations and effects related to this.

Looks like someone finally sent that cleaning crew! #gamedev #indiegame #indedev #gamedesign #indiegames #gameart #madewithunity #unity3d
— AirportCEO (@AirportCEO) July 25, 2017

However, this was not what we were going to talk about today. That same week we also implemented condition deterioration, meaning that objects not only get dirty but they also break. This can have a significant impact as a breakdown in an important piece of airport infrastructure can cause your whole operations to stall. When something breaks, it needs to be repaired and so we also implemented a new employee class know as “Service Technicians”. They will roam the airport and repair anything that breaks down as long as its an item as larger structures must be repaired by contractors. Here’s a .gif of a technician repairing a broken stage one conveyor belt scanner and as the baggage is starting to pile up you can definitely see that it is of importance to get it done sooner than later…

Skills and Stress

Implementing cleanliness and condition allowed us to dig into the micro simulation aspects of employees and staff. We had some legacy code in the basic model class of an employee and decided to revamp it. An employee now has four traits, logic, technicality, pleasantness and stress management (while these are actually traits can be debated, that’s what they’re called for now at least). These values are generated at random, but certain employees can only have a certain max value of a certain trait depending on their employee class. For example, aircraft maintenance technicians can max out their technicality trait but are generally less pleasant than airport staff (this goes for all the executives too). Unlike earlier, the traits of an employee now matter, When an employee are performing a job, say when a janitor is cleaning up some mess, they are doing so by increasing a cleanliness value over time with a standard value added for each time they perform the cleaning motion. However, each time this is run they are also adding a skill multiplier, the total sum of their combined traits, which means that they better they are in general, the better they are at completing a task. However, it doesn’t stop here. Employees can now also become stressed. For each little work stuff they do, they increasingly also become more stressed. This impacts their skill multiplier, and the more stressed they are the worse they perform their job. However, the stress value is of course mitigated by how well they can manage stress as a result of their stress management trait. If a janitor is stressed they will take longer time to clean stuff up and if an airport staff is stressed, passengers will pick up on this and consider them worse at their job ultimately impacting their satisfaction of your airport operations.

So what impact does this have? In the short run, maybe not that much. In the long run? Definitely something. Only hiring low achievers will mean that you might save some cash on wages but at the same time you put on more operational risk. An easily stressed service technician could take a long time to repair that baggage scanner which of course in turn impacts your airport in a number of different ways. At the moment we really don’t know how well balanced this is, and it is definitely something we need help with testing out. Maybe it’s not noticeable at all, then we need to increase it’s impact, maybe its way to noticeable, then we need to decrease its impact. Either way we think that this kind of micro simulation will be fun to test and if the player can build strategies around hiring high performing staff and in turn cutting back on other fronts, or if idiots running the airport but with a strategy to cover that up can still make stuff run.

Steam Direct Update

As we mentioned earlier, last week we released the Airport CEO Steam Store page! This of course marks a major milestone for the Airport CEO release train and is a requirement from Steam. The page must be live at least two weeks before any initial release can be made and that part is now in motion. This week we will also submit a build version for Steam to review, hopefully it should pass without any problems. We know that many of you are very interested in an exact release date and an exact price point but we’re still not comfortable doing so. Partly because of the mentioned “hurdle” which where we need to get the “OK” from Steam but also because we, from that OK, need to plan a suitable release date so that we can focus entirely on bug squashing and pushing updates. Regarding the price, we’ll leave that as a surprise. The game is developed by a completely new studio and is currently in an Early Access alpha state, which we are very aware of, and will thus be priced as such. Upon launch we will provide a detailed breakdown of the costs so that you can see what you’re paying for.

If you haven’t checked out the store yet, make sure to do it by clicking here!

Early Access Trailer

In combination with the launch of the store page we also, of course, put together a little trailer. If you haven’t seen it, well help you out:

With over 20k views over the weekend we are more than delighted. Thank you to everyone for your great feedback and amazing comments. We hope to be able to meet some of your expectations very soon.

This Week’s Changelog

  • Identified some minor sprite layering issues, otherwise everything should work
Economy and Business:
  • Increased the procurement time for several procurable products to reflect more realistic values
Building and Construction:
  • Solved a minor issue which caused the weather panel to be enabled even though there was no weather station built
  • Fixed a minor issue where the fence, bus shelter and basic weather station objects would not toggle its sprite correctly upon construction
  • Adjusted construction time and max number of contractors working on an object for several objects to reflect more realistic values
  • Solved an issue where employees would not arrive if they were hired by night (such lazy people)
  • Revamped several parts of the employee model so that their respective traits now not only match their salary claim and fictive GPA but also equals their skill multiplier for any job they perform
  • Implemented an employee stress factor which impacts their skill multiplier and passenger perception
  • Solved an issue where an employee could have 50 years of work experience but only lived for 25 years
  • Solved an issue where tools would not deserialize into their proper sprite sorting layer and activation status
  • Implemented a generic tool usage animation
  • Solved an issue where deserialization of rooms sometimes were overwritten by default values
  • Solved a performance issue causing a notable lag when deploying all hired contractors at once
  • Solved a bug which allowed aviation fuel supply trucks to on load aviation fuel to unbuilt fuel depots
  • Solved an issue which upon dismissal of contractors kept spawning contractor shuttles even though all contractors were accounted for
  • Ground outside of the terminal can no longer become filthy
  • Solved an issue where construction material were not delivered to the closest available delivery site
  • Solved an issue where not enough construction material was ordered
UI and Audio:
  • A “locate object” on the notification containers has been added so that an object relevant for the notification easily can be located
  • Solved an issue with standard labels showing on the check-in desk UI if no flight was scheduled
  • Solve an issue related to Enum values being badly converted to readable strings
  • Several UI enhancement to the new conveyor belt connection system per suggestions from the community, lines now have different colors depending on activation status of objects and baggage handling system enablement as well as custom messages in the panel which instruct the player on the current connectivity status
  • Solved a really annoying dropdown toggle issue on staff rooms for setting allowed employee types
  • Solved an issue related to an icon bubble effect which had bad sizing upon activation and deactivation
  • Tweaked several logarithmic roll-off values for vehicles audio sources for more natural and realistic sound emittance
  • Tweaked the persistent sound landscape so that environment audio sources would blend better
  • Solved an issue where service vehicles would emit sound even though they were parked in the vehicle depot
  • Soved a minor issue where input field which were left empty were not repopulated with their standard text phrase
  • Solved an issue with incorrect logo cycling for the airport creation panel
  • Solved an issue where test version labels would show up on launch prior to load sequence completion
  • Tutorial e-mails now have a flat green container color
  • Solved an bug which caused the search function in the placeable panel not to function
  • Removed the ugly deactivation icons on the small runway and replaced with a more generic floating “power off” icon
  • Implemented a generic system for spawning floating attention icon based on an objects state such as deactivation, broken or lacking staff
  • Lowered the volume on the contract signing sound
  • Improved the generic system for spawning audio sources in the world and balanced various environment variables such as volume, range and fall-off
  • Solved an issue where the small ATC tower would emit sound prior to being fully built
  • Solved an issue where the incorrect panel would show up when clicking “return” on the selected e-mail panel
  • Solved an issue where the inspection menu would not go away if deactivated in a bad position
  • Implemented a sport light feature which turns on if a player attempts to build something at night with the purpose of enhancing visibility
  • Sovled an issue where right-clicking in a building process would cause the placement panel to disappear
  • Solved an issue where the budget overview panel’s default multiplier turned all values to zero (x * 0 is definitely zero)
  • Solved several minor labels not updating correctly due to bad logic
  • Increased the “loading speed” for the procurement system loading animation
  • Solved a null reference exception on the check-in desk panel

As you can see from the changelog we’ve been very invested in QA testing this week. It’s mostly consisted of running long play throughs where we’ve evaluated the functionality and playability of the game, jotted down notes, solved any minor errors we could and then carry on with the tests. One discovery that we made, which really was about time, was the need for nighttime lighting when constructing and thus we quickly implemented a little flashlight to make building easier during night. It currently looks something like this (ignore the shitty quality)…

In other news, as you might see, we’ve done some website makeover and will continue to do so over time. Nothing major, just some new colors and overall structural improvements. A lot of time this week has also gone into making our release pipeline even more optimized so that we now can perform one-click build and deploy to either the default or experimental branch, both which are up and running and are receiving updates. All right… I think that’s it. For anyone who just joined us and to all of those who’s been with us for the past two years: Great to have you with us and looking forward to making you all airport CEOs soon. That’s it for this week. 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.