Hello everyone and welcome to the 50th edition of the Airport CEO development blog! Now isn’t that insane, 50 posts yabbing on about code and airports and to think that some of you have read them all is insanely humbling. Since we announced Airport CEO we have together with you, the community, managed to build a product that is far bigger than what was originally intended. “Why would you announce a title before its even near completion?” some might ask, and we think that the development cycle and the achievements we’ve made is a pretty great answer to that question. There is no greater value than the input we get from you, and in turn, we will try and build the best airport tycoon game yet.
To celebrate the 50th DevLog, we went back and had a look at some of the first ACEO development blogs, published almost a year ago. In DevLog 2 we presented one of the very first screenshots. In this version of the game there was no possibility to build a terminal and passengers were not yet implemented. The aircraft models were only temporary and the building system was very basic. It gives us a great sense of achievement as we start up the current version and just see how far we have come. Today, there’s a robust construction simulation system in place together with a vast set of different items and structures you can build, and still only marks the beginning of what’s to come. In DevLog 27 we revealed the first take on our weather system, a feature that is still heavily requested and that we have a solid foundation for which’ll come to evolve more and more as time passes, ultimately impacting flights and the success of your operations. In DevLog 42 we simply had one of those really nice weeks where we were able to work on a lot of different stuff and could push out a lot of varied content.
In DevLog 50, we’re going to talk about (yet again) performance and show you the, for now, finished flight planning panel. But first, we want to thank you and all of the 5000+ Airport CEO fans across a multitude of different social channels that comment, like and share the stuff we do in collaboration with you. With your help, Airport CEO is currently ranked as the 49th most popular game on Steam Greenlight Concepts which to us says… a lot, if not everything. Thank you. Now, let’s get into it.
As mentioned the previous week, Fredrik has started the fairly big task of improving the build system, making it 100 percent free of physics colliders and other performance costly objects. The improvements will mostly effect the main grid meaning where objects are placed and their respective boundaries. This is then used for things like restricting placement, for example not allowing the player to place a check in desk on the runway. We have also started sketching on other uses such as a passenger surrounding scanner. Although it is unclear if we will have time to implement this in the first release, the idea is that with the new optimized grid-system, each passenger can quickly scan the surrounding area and make appropriate decisions based upon what they “see” on each grid point. This will further put demands on the layout of the terminal to ensure that things like toilets, shops and restaurants are located in optimal positions and in the end render a more natural passenger behavior.
This improvement is not particularly visual and is a fairly time consuming job, but we are already seeing great performance results and we are confident the time spent on this redesign will be worth it. To be honest, Airport CEO has grown to be the largest coding project we have ever undertaken and there has been a lot of lessons learned along the way. Over the time we have figured out even more clever ways to improve code, performance and playability. Our keywords around code are dynamic, performance and cleanliness. So we decided that now, rather sooner than later, is the time to get rid of that old technical debt as it will only be more difficult later on. The less stuff you have stacked on top of an object, the easier it is to temporarily lift it up and fix its foundation.
As promised, the flight planner is now “complete”. Yes, the quotes are there because how do you ever know if something is complete? Perhaps it should say “good enough for now”, which is exactly what it is. The check list from the previous week has been achieved and remaining empty or faulty variables in the panel will be fixed as the rest of the code catches up. We are still collecting input from you when it comes to the business decisions we asked about, and have gotten a lot of valuable insights. Allocation cool down periods, financial retributions and questions wether you as a CEO at all even should plan the flights have been raised and we’ve gained a lot of valuable insight. We’ll keep this discussion alive with you and continue to balance realism, game play and operational control.
With the evolution of the flight planner panel, the code for describing a flight has followed in its footstep. We have sort of redefined what a flight really is to make it more realistic and so that it works in a continuous context. For example, the old system only supported a flight once, for example at 01/01/2016 12:00 but has now been evolved to a daily, weekly or biweekly schedule. As you know,we try to avoid generating all too stupid flights and so the travel system now takes into account the aircraft model’s cruise speed in order to determine the time it takes for the aircraft to travel the route, thus making sure that if a flight occurs more than once a day, this is achievable from a realistic perspective (of course, routes can be trafficked by multiple flights but that’s an airline issue).
Moving on from this point includes adapting the air traffic control system to the new principles of how flights work which ultimately also impacts the job system meaning that check-in jobs should only be generated for flights when relevant. What does this mean in the end? It means that we are perhaps just one week from achieving a “generic continuous simulation cycle” for the entire build, meaning that if you’d hire enough people and stuff like that, balance the budget, plan an few flights and leave the computer on over night it would run continuously without any operating logic breaking. From a sandbox mode perspective, that’s a major and definitive milestone.
Here’s a few short answers to a few questions we imagine you might have…
Where’s the gameplay video you promised?
Sorry, it’s coming. With Fredrik’s move and then the decision of solving the last major technical debt we had to put it on hold. Once the building system is back to normal, better than ever, we’ll shoot the video.
What happened to the promise of a funding campaign during this autumn?
We’re simply not fully convinced that a funding campaign is the best way to go right now. We need more credibility, and we need to get your input on the next video. From that point on we can then plan the next move.
Well… okay then but what about Q1 2017?
Q1 2017 is still on.
… is cancelled to make room for this flashback of previous Airport CEO .gifs!
While we're snuggly coding inside, these poor souls brave the elements. #madewithunity #unity3d #indiedev #gamedev #indiegame #AirportCEO pic.twitter.com/i72QiEVEZd
— AirportCEO (@AirportCEO) October 7, 2016
… and that closes the book on the 50th development blog. It’s going to be interesting to look back on this when we reach a 100, and what Airport CEO and the community is going to look like then. Once again, from the bottom of our hearts, thank you for your continued input and support in helping us building the next airport tycoon game. We really can’t thank you enough. Until next week, fly safe!
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
Hi there, airport CEO! Welcome back to another dev blog and perhaps a little break from Alpha 33 and the big bird update which was deployed on the default branch just this...Read more