EA.0.21 goes live!

EA.0.21 goes live!


Version EA.0.21 will be live in an hour or so. What’s new you ask?

Minor additions:
– Added option for scroll wheel function – move forward/backward or zoom in/out. Settings balance against horizon and setting scroll wheel function to moving forward/backward basically means you can accomplish almost every movement option necessary to move around the city. If you prefer combining mouse and keyboard this can be done as well.
– Modifier tool tips added. They’re currently a bit undersized, but I will address this at a later stage.
– Camera follow on build option added. When enabled, the camera will follow to the last item built when placing roads, blocks or multi placed buildings.
– Added spacebar to pause and resume game
– Added intermediate tutorial about how to enable advisors and citizen reps for additional information. Also shortened and updated the other tutorials.

Major changes:
– Code that handles connections had gotten a bit mixed up with controls for traffic. Now they’ve been properly separated and traffic now also runs parts of the code threaded to improve performance. The performance improvement should be fairly noticable, especially in large cities. There will be fixes for cars going off road later on, but this is not a priority at the moment.
– Changed how time progresses in game. Before the game changed Unity Time to accelerate, which affects a bunch of other things, among them physics. This was a bit hacky so I’ve now changed it over to an internal time function. This means that framerate isn’t affected as much when running the game in 2x, 4x and 8x speed.

Minor changes:
– Global time tick starting value increased. This just means that when loading a city, more values are updates right away, rather than with a delay.
– Domestic advisor advice conditions changed a bit (less spamming of certain messages now).
– Multi building placement UI fixed. Might add some additional bling over time.
– Changed how modes are handled in game, to prepare for further expansion of different modes and to make code more easily managed.
– Added extra condition for overwriting how many campaign levels and challenge levels have been completed so this data can’t be overwritten with null.
– Increased draw distance for props.
– Bloom strength setting added in options menu.
– Added night lighting to dot decoration.

Bug fixes:
– Some issues with modifiers fixed.
– Fixed some ui placement issues in 16:10 aspect ratios.
– Fixed not being able to build roads over roads. This was a new bug introduced after redoing some of the construction mode code.
– Fixed issue with minister of labour staying quiet most of the time!
– Fixed random placement of islands in retro mode on load.
– Line, dot and circle hedge decoration tiles description fixed.
– Fixed a building counting bug that overstated the number of zones in the city.
– Fixed issue when conglomerates leave and don’t properly hand over their property to remaining conglomerates. If this issue has been present in your city, it would have likely caused stagnation and other weird issues. When loading a city, this will be resolved automatically by reintroducing conglomerates for buildings that were left without owners.
– Fixed issue where bridges sometimes couldn’t be built despite there being enough space.
– Fixed focus distance.

Focus this week has been tweaks and bug fixes. I’ve received a host of feedback on bugs and issues that I’ve focused on addressing. I’ve also started refactoring code, as this is long overdue and there’s code that needs fixing for performance and stability reasons.


I’ve continued work on performance related to 2x-8x game speed. The game has now moved away from using UnityEngine.Time to speed up and instead uses an internal clock to speed up the intervals at which calculations are performed. That way I don’t have to use the hackery I had to keep physics time stable. I’ve also started cleaning up the connectivity class – this checks what roads are connected to which buildings. Over time, code that is only remotely related to connectivity has ended up in this class, for example position checking for vehicles. The class has now been cleaned up and now only contains code relevant to connectivity. Position checking for vehicles is now in the traffic manager and has also been moved to a thread which improves performance quite a bit, especially in large cities.


Controls have been a continued focus, and I’ve now added scroll wheel function to the options menu allowing the scroll wheel to either zoom or move the camera. I find that controls are now quite stable and functional and you can basically get around a city using only the mouse.
I’ve also added an auto follow function, so that when roads are placed, the camera will automatically pan to the last road placed. There will be some further tweaking to this, but it seems to work fairly well most of the time.


A new tutorial has been added, this basically descibes where information can be found in the game and some of the common issues that will be facing a city. I find that tutorials should become less necessary, the more advisor, citizen rep and econopedia entries are added. There will, however, be more tutorials coming in the future. These will take a while to make as I intend on making lengthier ones.


A number of bugs have also been fixed. For example, at times when a conglomerate leaves the city, buildings would not be transferred to a new conglomerate. This meant these buildings were left “hanging” and could cause null ref errors and stagnate the city. This has been fixed and if the city was in this state, the “hanging” buildings will be given a new owner on load. Aside from this, there have been some minor bugs fixed, like not being able to place roads when starting from an existing road (which you could before, and now can again).


Next update will be in two weeks as I’m moving onto some bigger additions and will need more time to work these into the game.

Comments are closed.