Dev Blog 51: Happy Holidays, Development Tooling & Weather

December 27, 2016

Ho, ho, ho, CEO! If you celebrate Christmas, we hope you’ve had a relaxing couple of days, if you don’t celebrate Christmas, we still hope that you’ve had a couple of relaxing days. While you have, hopefully, been having theses relaxing days, we have been hard at work developing Airport CEO on a multitude of different areas. While Fredrik has been busy completing the transition to the new and improved building and grid system, Olof has been focusing on various different UI aspect including flight planner details, weather and development tools for testing isolated builds.

But before we get into it, we just want to make sure you’ve gotten our Holiday greeting!

Happy Holidays! #christmas #AirportCEO #gamedev #gamedesign #indiedev #indiegames #gameart #indiegame #aviation #madewithunity #unity3d
— AirportCEO (@AirportCEO) December 25, 2016

And on the forum we shared the night version as well.

Disassemble, Improve, Assembler

The work with the new grid and build system continues. A lot of effort have been put into reducing unneccessary complex part of code and adapting all objects to the new changes. As we have said before, this is a lot of “under the hood” changes, which can’t really be seen from the game perspective other than improving the overall performance. As we’ve said, what we are doing is essentially resizing all buildable objects as well as all simulated agents which sums up to just about… everything. While this process might be monotone and tedious it should not take too long for us to finish off the transition as we expect all objects to be back to normal by the end of this development week.

Development Tooling

Up to this point we’ve been building and testing ACEO in the game engine editor but as we move closer to a playable build we need proper tools to test without the aid of the editor’s console. For this reason we’ve implemented a development action panel and a development console that serve different purposes, the console is used for printing logs (errors, exceptions, messages) and we also gave it features like log type sorting, cheat codes and function keywords like ‘set time 14:51″.

The development action panel highlights various bool values as well as enabling quick and easy spawning of agents in various stages, essentially functions that are too long and complex for inputting in string format.

Weather and Time

As you can see, we’ve done a lot more on the weather system. Snow, sleet and hail has been implemented and we’ve scrapped the old system where precipitation was rendered sideways and changed it to top down. This made a lot more sense from a simulation perspective, gives a really cool depth feature to the game and allows us to more realistically play with factors of wind. The next step is properly implementing fog and the fusing the simulation of the precipitation into the existing weather controller and the generated weather data. More on this next week!

This Week’s Changelog

  • Implemented a new daily flight system ensuring that daily flights are properly planned
  • Integrated the principles and logic of the new flight planner into the air traffic control simulation aspects ensuring
  • Adapted the job creation system into the new principle of recurring flights
  • Implemented a proper cycling system for transitioning arriving flights to departing flights
  • Fixed a shadow rotation bug
  • Flight slot containers now show their respective flight series number
  • Flight slot containers cycle color shades based on their flight series group
  • Flight slot containers have been fitted with a “light knob” indicating its activation status
  • In order to support the new daily flight system, a number of planning rules have been implemented so that you can’t break any flight planning base principle logic (for example, flight CL450 must be planned after flight CL445 if they are in the same flight series).
  • A feedback console have been fitted to the planner providing specific feedback whenever the CEO attempts to plan an impossible flight, indicating what’s not possible.
  • Implemented support for 16:10 ratio screens and verified UI scaling correctly
  • Implemented support for retina screens
  • Implemented a development console to cast log messages in separate build as well as to allow text input enabling execution of commands or cheat codes
  • Implemented an development action panel containing buttons executing common commands to allow for quick testing and debugging
  • Several new particle systems with top down precipitation has been implemented.
  • Rain re-implemented
  • Hail implemented
  • Sleet implemented
  • Snow implemented
  • A new wind system has been implemented in order to properly simulate weather effects on the top down precipitation, for example if the wind direction is 321 degrees the precipitation will move in this direction.
  • Season cycling system implemented

All right, that’s it for this week. Hope you’ve had a good one and once again, Happy Holidays and Happy New Year! This is the last post for this year and when we see you again it’s 2017: Can’t wait for that! See you soon and fly safe!

Related blog posts

Dev Blog 142: Revealing The R&D Update

December 12, 2019

Hello airport CEO! Two weeks has passed since we moved the dev blog day from Mondays to Wednesdays and as you can see it’s...

Read more

Dev Blog 141: Stabilizing one and developing the other

November 28, 2019

Good evening airport CEO and welcome to yet another development blog post. This is the 141st in order and today we’ll put most aspects of...

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.