Browsed by
Category: Atmocity

Bug and performance patch!

Bug and performance patch!

Hello!

The new build will be up soon! Like the previous two weeks, I have focused most of the time this week on fixing recurring issues with performance and also bugs, but I have also managed to get the second density of mid scale residentials in:

w41a.png

This is the maximum density for the mid scale residential zones. They generally demand less utilities and aren’t as demanding when it comes to nearby buildings like parks, schools and clinics, so they can be a good way to fill out narrow arreas with little room for anything else.

w41b.png

The above image shows the low, lower mid and mid tiers mixed in with some full scale buildings.

On the performance side of things, I’ve finally managed to resolve the bug that caused major slowdown when buildings grow and in particular when many buildings are destroyed at once. One of the issues was checking for nearby buildings. Way back, all buildings were on the same layer, so buildings were fetched and then the type was tested. If a residential building was next to an industrial building, it would get an efficiency penalty (fewer residents). Over time, buildings have been separated to several layers, but all layers have still been checked. However, residential and commercial buildings (for example), never need to check for other residential or commercial buildings. So depending on the type of building performing the vicinity check, layers are adapted so only relevant buildings are checked. This speeds things up dramatically, as fewer colliders need to be checked.
Also, this is all now performed with NonAlloc, to speed things up further.

w41c.png

Another improvement using NonAlloc, is when buildings have either been placed, or grown. When checking for a nearby road tile to “attach” to, buildings now use NonAlloc, preventing FPS-hickups further.
There’s also been a recurring issue with buildings registering a nearby “bad” building, despite there not being one. This should now have been fixed completely.

w41d.png

I’ve also tweaked economy and found a few areas of optimization. In doing so I also found an issue where, specifically industry, could get efficiency levels that were too low and also too high (in the range of 6 to 300%). This has now been fixed and industry will rarely go below 60% unless an input (water, power or labour) is missing. Further tweaks to economy will be done in the upcoming version.

I’ve also fixed a bug where loading cities was bugged out on Mac, and while doing so also found a null ref that was fixed on Mac as well.

w41e.png

As for overall progress, I am slightly behind on inflation, currency and wages, due to a heavy focus on bug hunting and optimization. I do think, however, that I will be all but caught up come next update!

Performance and bug fix patch

Performance and bug fix patch

Hello!

This week marks one year of posting (near) weekly devlogs in this kind of five image + text format! So lots of progress has been made I feel. By this time last year I was working my way towards getting a stable enough build for Dreamhack Winter. I had just cut the block size and started adding roads, the carbon pressurization plant and police station buildings had made it into the game and I was also working on merging blocks to create a shadow casting volume to keep down the amount of shadow casters.
Although there’s still a lot to be done in the game, it’s nice to see that it has come as far as it has.
The devlog can be seen here for those interested in a blast from the past: https://www.indiedb.com/games/atmocity/news/progress-update-5-atmocity

To update on current matters though. This week has been almost solely focused on squashing bugs and optimizing the game. With the amount of new things added over the past few months, it’s been high time to take a step back on feature additions and trying to fix some old and annoying bugs.

Change log:

– City hall building added.
– Halloween prop added. More time specific props will be added over time.
– New vactrack icons.

– Fixed bug where sometimes loading a city from the main menu would stall.
– Fix for bug where roadtiles on bridges would not connect to road network on loaded cities.
– Fix for bug where destructed bridges would leave surrounding road tiles unaffected.
– Fix for bug where buildings would sometimes not connect to roads when loading cities. This might still occur in rare situations.
– Bug where notices would not move out smoothly fixed.
– Fix for building props not being removed correctly when demolishing.
– Further optimization when demolishing several buildings at the same time.
– Minor slowdown from sound stopping when demolishing a building playing an ambient sound fixed.
– Performance when deregistering cars when owner building has been demolished improved.
Known issues: Traffic is being optimized and a few bugs are being ironed out, so there’s unexpected behaviour at times.

One issue has been with bridges not registering road tiles properly and messing up buildings registering to a road network. There’s still an issue that sometimes buildings will still not connect to a proper road network, but it should be all but fixed now.

Here’s an image of my test build, fittingly featuring lots of bridges:

w40_a.png

The city hall building has been added. Currently it doesn’t do anything except swallow some mid skilled workers, but it will be given a proper function fairly soon. As can be seen in the following images, I’ve also added a bit of a halloween theme (temporary of course):

w40_c.png
w40_d.png

Another bug that has been fairly tricky to find a solution to was that sometimes cities would not load, instead the game would freeze on the loading screen. This has finally been fixed. I’ve also found some sources of performance issues, among them fading out sounds when buildings are demolished and deregistering cars that belong to demolished buildings. These issues are now fully fixed, which cuts down lag when destroying buildings, especially when destroying many at a time. I’ve also managed to fix the multi destruct bug that was particularly noticable when destroying many mini zones.

w40_e.png

Traffic still shows off some odd behaviour, which will be given some time next week. Hopefully I can improve performance further too, although it is pretty performant as is. Next week I will also go back to working on inflation, currency and wages, getting a proper implementation in. This will be a stepping stone towards adding some new policy options and adding more economic management options. Until next time!

w40_b.png
Small update

Small update

Hello!

This week’s update will be rather brief, as there’s not been a whole lot of visible progress. I’m working towards improving performance in some of the newer features as well as fixing some existing bugs.

Among the few new things added are the mini-size commercial zones. So now you can fill in those left over areas with commercial zones. As they won’t grow into bigger buildings, they don’t provide that many workplaces for your citizens, but they also don’t have many demands.

w40a.png

The mini-size industrial buildings have also been added:

w40b.png

The bonds and currency panel is in development still. I’ve started adding in the option to set interest rates, which affects inflation. Currently, the whole system is still in the works, so it is currently not generally necessary to make adjustments.

w40c.png

With the ongoing development on currency, trading prices are now affected by the value of currency. This means that when the currency value is low, it is expensive to import goods, but beneficial to export. When the currency has a high value, imports will be relatively cheaper, but exports will suffer.

w40d.png

As mentioned, focus this week has been on optimization and bug fixes. A bug that has been around quite some time is that buildings would sometimes not display the correct amount of production. This should now be fixed, and the entire system calculating production and consumption has been optimized and simplified a bit.
Another long lived bug is that buildings would sometimes incorrectly receive a penalty for a nearby bad building when loading cities. This has finally been fixed.

w40e.png
Atmocity version 0.14 is live!

Atmocity version 0.14 is live!

Hello!

Version 0.14 is now live.

Changelog:

Features:
– Trade overhauled. If you had active trades in your save file, then these will disappear. There have been quite a few changes made to the underlying systems (demand, pricing etc.) so there may be glitches!
– Resource demand. Global demand for goods now affect pricing. Global demands are divided into four groups, raw materials, building materials, foods and consumer goods. Demand for each resource follows the group demand, but with a random offset.
– Goods tickets are in. These are bigger orders for resources that give rewards like resources or modifiers.
– Small family homes/businesses/industry implemented.
– Local economy factor added. Ensure that conglomerates are kept happy (don’t demolish their buildings, deliver goods via goods tickets and keep taxes on a fair level) to ensure that production of consumer goods and services are kept high.
– First iteration of inflation and currency value added. There will be more additions to this in the upcoming few weeks. Initially it won’t affect gameplay much, instead values are fixed. National bank building required to unlock bonds. The UI will see several changes in the upcoming few weeks.
– Corkscrew pieces for vactrack added. Icons will be updated in the next version.
– Because issuing bonds now requires a National bank building (which is available at 10k population) when you reach minuscredits you are allowed one emergency loan to get things going.

UI:
– UI performance increased.
– Open objective panel on start of campaign level.
– Fixed tutorial text panel being offscreen on certain resolutions.
– UI can now be hidden.
– Fix for hint texts for windows being cut off.
– Updated hint texts for trade to accomodate new trade and bonds options.
– Food production tier added to econopedia input/output info.

Minor bugs/glitches/fixes/changes:
– Long term trade bug where resources would not be sold or purchased fixed.
– Fixed missing texture for medium sized industrial building (mid density).
– Spawn conditions changed for crates. Crates only spawn once the city has grown to a specific size.
– Fixed issue with challenge achievement being granted if five campaign levels had been completed (due to loading the wrong data).
– Mid tier industry bug fixed. Lack of firedepartment penalty counted twice.
– Performance when demolishing several buildings at a time improved. More work on this is required.
– Carbon power plant carbon consumption lowered (8 -> 4).

Localisation:
– Brushed up on german achievement localisation.
– Adjusted a few achievement names slightly.

Controls:
– Possible fix for camera moving long distances when there’s an FPS hickup. More work will be done on this.
– Reset to default controls option added in optionsmenu (bottom button that says “Allow tilt”, reference to the wrong text element, will be fixed for the next update).
– Fix for camera jerkiness and spinning out of control when looking straight up or down when tilt i disabled (which it is by default).

Tutorials:
– Updated movement tutorial.
– Added basic production into the humble beginnings tutorial.

Other:
– Reverted to TAA from SMAA.
– Goods requirements for schools dropped.
– Base trade prices increased. Resources will cost more, but also allow for greater profits when trading.
– Achievement “Dopey” renamed.
– Added field of view option in options menu.
– Added some atmofleet bling.

The central change of this version is an overhaul of trade. This was initially scheduled for mid october, but it seemed vital to get this implemented earlier to make sense of other upcoming changes (currency, inflation etc.).
Goods tickets are also finally in. Completing these will grant resources and modifiers and also make conglomerates happy, which boosts production for a while. Tweaks in the reward structure will be made over the upcoming few updates.

W38a.png

On the subject of currency and inflation, a first, very early iteration has now been implemented. Currently these additions do not affect gameplay much as the values input are fairly consistent. As such, there shouldn’t be any major surprises with stuff like sudden onset of hyper inflation.

:p

Since currency and inflation is tied in with bonds, the national bank building is required to unlock bonds. This means it’s not possible to loan money in cities with less than 10k population (this is the prereq. for the national bank building). As an extra precaution, an emergency loan is granted to the player once, if credits go below 0.

W38b.png
W38c.png

I’ve continued working on tutorials and controls. The changes to the controls are mostly to ensure that what is there functions well and behaves the way one might expect. There’s been a rotation issue when the camera faces straight up or down that has now been fixed. This should prevent sudden jerkiness and unexpected behaviour.
The tutorials have been expanded to include some more information. The controls tutorial has been cleaned up a bit more and the combination of spinning and panning has been added as a hint. This is a movement option I find is one of the most efficient ways of getting around in the game along with just panning and using WASD.
The Humble beginning tutorial has been given a small building materials tutorial. In one of the upcoming updates in october, I will be adding a more intermediate tutorial that delves deeper into production and other resource and trade related topics.

There are some QoL improvements in this version too, FOV slider, the ability to hide the HUD, being able to reset controls to default (although the I missed the button text element on this one… d’oh!).
I’ve taken time to also make some minor brush ups here and there. The atmofleets now have some additional bling with trails and particle effects when landing and taking off.

W38d.png

The vactrack system now also has a slightly inclined turn piece that can be used to make cork screw like tracks.
Make sure to take motion sickness pills before getting on this commute.

;)


W38e.png

As can be seen, there are a few items that were initially planned for this version that didn’t make it in. The mini commercial and industrial buildings among others. This was a tradeoff for getting the trade overhaul in earlier.
Moving forward, the next few updates will be posted weekly, starting the 29th of september, then october 6th and october 13th. These updates will be smaller, and focused a bit more on consolidating feature additions made up until now. So they will be less feature heavy and more geared towards fixing issues and improving newer features.

One week until 0.14

One week until 0.14

Hello!

Work on 0.14 progresses. Quite a few things remain, but a lot of things are falling into place.

As mentioned in last week’s log, I was working on adding separate demand functions for each resource.This is now fully implemented. Demand is set in two steps: each group of resources has a demand function. The groups are raw materials, building materials, foods and consumer resources (like eletronics or plastic). These run along a random sin curve similar to how the global economy works. The other step, is that buying and selling large quantities affects demand. There’s also a bit of randomness implemented to make things develop independetly on a per resource level.

w37a.png

The demand curves will be able to be toggled on and off (in fact they can be already, but the picture is from before that

:p

). All these things combined, trade can now be part of a player’s strategy to make more money.
Goods tickets, which have been mentioned before are also in the works. These are requests for three resources (one from each of the four groups). If you can deliver them in time, you will be given a resource or modifier as a reward. Delivering on them also boosts conglomerate happiness, which boosts output. Here’s the trade panel along with one goods ticket (work in progress, thus a bit messy). As can be seen, you can now also add trades that are not timed, so they will run until cancelled.

w37b.png

The mini size zones are also in the works. Industry and residences are now finished. You can now fill those small left over spots with some small single family homes.

:)
w37c.png

I’ve come across some performance issues, primarily in the new click n drag demolish function. This was a recent discovery, so it has not been fixed yet, but I’m hoping to have it fixed for 0.14.

w37d.png

Other than that, there’s a bunch of smaller things done, like the addition of a restore default controls button in the options menu as well as an FOV slider.
In the upcoming week I will be finishing the goods tickets, working on currency, inflation and interest rates for an early implementation of this as well as finishing up the mini sized commercial zones and a bunch of other smaller fixes and additions.

w37e.png
Road to 0.14

Road to 0.14

Hello!

Work on the next update is on-going! This update will primarily focus on expanding trade and a basic addition of currency and inflation. In this version, the “mini”-sized zones will also be added. These are single family homes, small business and small industry. They only have one density, so they won’t hold many people (4-6 each), but can be used to fill small leftover areas or add variation to bigger neighborhoods.

W36a.png
W36b.png

The trade overhaul is in the works. Mainly, this week I’ve worked on separating the bonds related functionality from the trade panel. What is currently known as the resource panel has also been added into the trade panel. This should prove more logical once it’s finished. Trade and overall resource management will be under one panel, and joining bonds will be currency, currency depreciation and interest rate setting. More on the latter next week.

Trade functionality has also been changed a bit. First, what has been refered to as “direct trade” has been removed. You can no longer buy resources and instantly receive them. Now, you can instead place an order of 500 units of a resource and it will be delivered over time. This, like the direct trade, costs extra. To enable trading contracts, a customs house has to be built. Trading contracts work the same way as before, except you will now be able to set indefinite contracts that expire only when you cancel them. This will allow players to build wealth using trade in a much more natural and less time consuming way.
Trade yields have also been raised. This means you can expect higher costs when purchasing resources, but also higher revenue when selling.

W36c.png

Another feature that is in the works, is that unlike before, each resource will be given its own demand function. Before, the pricing on a resource depended on the global economy and on how much you had traded in recent time. Now, there are four demand functions – raw materials, building materials, foods and consumer goods – that determine the demand of the respective groups. On top of this, a random demand offset will be added to each resource. Like before, the amount you have traded will also affect demand slightly.

W36d.png

Inflation is also making its way into the game. This means cities will now be given its own currency that needs to be managed. Generally, things that are isolated to the city itself will not be affected much by the strength of the currency. Building maintenance costs will remain the same, as will tax revenue. Where the presence of a currency will mostly be evident is in trade, where a strong currency allows you to buy resources cheaply, and a relatively weak currency will be benefitial when exporting. Wages and production output will be affected slightly be the strength of the currency.

Overall, these changes will add a new layer of complexity to the game, but with the additional help documentation I’m working on and after giving it a go, I think most people will find it nifty.

:)

I’ve also continued work on controls, tutorials and help texts. More on this next week, as well as more on trade and currency.

W36e.png
0.13 is live!

0.13 is live!

Hello,

Version 0.13 is uploading! Here’s what’s new:

New features:
– Customs house building -> in the next version this will unlock long term trade.
– National bank building -> in the next version this will unlock unlock bonds
– Super absorbent. A later stage water production building. More expensive, but produces more water and can be built near pollutant buildings without production penalty.
– Side decoration, to spruce up those concrete blocks.
– Modifiers implemented. The first batch of modifiers include increased tax revenue, increased production, lowered production costs among others. These are valid for 20 time cycles. Modifiers are saved on a per user basis, so they can be collected in one city and used in another with the exception of super challenges. Building info may be off when mods are activated, this will be fixed in the next version.
– First challenge added. Challenges are tricky scenarios that will require a lot of planning and skill to complete.

Visual:
– Day/Night cycle adjusted to hide some of the TAA ghosting.

Construction:
– Temporary blocks now autodestruct also in paused mode.
– Temporary blocks can be demolished.
– Parks and decorations were missing prices – fixed.

Controls:
– Rotation can now be performed on either mouse or keyboard, rebindable in the options menu.
– Fixed issue of accidentally anchoring to buildings when rotating view.

UI:
– Crates now display icon of reward.
– Added background to text in upper stats bar to increase contrast and readability.
– Tidied up the controls tutorial and added a few more control items to it.
– Objectives are now hidden when using visibility modes. Unhidden when opening panels.
– UI panels location moved.

Other:
– Two new achievements, found crates and challenges finished (this one can’t be done yet, as there are not enough challenges atm, but soon!).
– Increased zones’ road reach slightly, allowing small scale zones to be packed more densely.
– Increased number of active trade sales/purchases from 5 to 20 each.
– Electronics plant production yield increased.
– Tweaked density check that allows buildings to grow to the next density.
– New basic building practice tutorial – humble beginnings. Practice makes perfect tutorial will be back in the next update, but then as a more in depth tutorial.
– Objective skip bug in campaign fixed.

As can be seen, goods tickets were not implemented this version. This is due to prioritising further tutorial improvements and additions based on feedback. They should be in with the next version.

w35a.png

The major additions this time around are challenges. Currently only one challenge has been added. Challenges are tricky scenarios, similar to the campaign levels, but way more difficult. Often they require some clever solutions both in terms of policy to make money and maximizing the space available.

On the subject of tutorials, the old “basic” tutorial has been replaced with a simpler one that is more direct in how to get a city going. For the next version, another more in depth tutorial will be added too.

w35b.png

I continue to tweak controls and systems. This week I’ve changed the anchoring mechanic, as well as adding camera rotation to the keyboard as well. I’ve noticed that most movements can be performed with WASD and panning and rotation with the mouse, which will be added into the movement tutorial as well as a hint.

w35c.png

There is now also a later stage water production building. It’s more expensive, but produces more water and can be placed in dirty industrial areas with no penalty.

w35d.png

The next version, 0.14, will not add as many new features, but rather focus on changing things that are already in the game. Primarily the trade mechanic, which will be expanded quite a bit, and there will be an addition of timed delay when trading directly as well as a purchase/sales price that later on will depend on the strength of your currency.

There will also be a focus on optimization of systems, old and new. As well as fixing minor bugs and issues that I’ve noticed.

w35e.png
EA version 0.12b is live!

EA version 0.12b is live!

Hello,
The latest build will be live in a bit! It features a bunch of additional features, some QoL improvements, UI fixes and some other things.
In the retromode, there’s now an alternate version of the windfarm that can be built in the sea. Similarly, there’s now also a wave power plant.
In the retro mode, the research for the centrifugal particle extractor has been replaced with research for the resource separator building. This building is available in the standard mode without research too.

W33a.png
W33c.png
W33b.png

Features:
– Click/drag demolition.
– Windpower plant, seabased – Retromode.
– Wavepower plant, seabased – Retromode.
– Recycling centers now return small amounts of metal and sand.
– Separator building, all modes. Researchable in Retromode. Recycles trash and outputs a small amount of all base resources (metal, sand, carbon etc.).
– Goods crates now randomly spawn. If found they grant a reward. Currently missing some UI items displaying what has been found.
Performance:
– Fixed issue with controls settings always saving on window closing.
Controls
– Fix for camera panning reversing when letting go of mousebutton and moving the mouse pointer.
Bugs:
– Fix for laboratory not registering after load.
UI
– Close windows button (marked with x) added.
– Info button (marked with ?) added for each panel in game.
– Camera sensitivy slider reversed in options. Moving it to the right makes the camera floatier.
– Mine and sand extractor descriptions and names added for French, German, Russian and Spanish.
– Fixed some text sizes in russian.
– Fix for campign objectives UI blocking clicks.
– Property tax revenue per conglomerate added into local economy panel.
Other
– Research in retromode fixed to include and exclude buildings specific to mode.
– Research times cut by 10-50%.
– Rich presence expanded.

Devlog entry 43

Devlog entry 43

Hello!
Well, release into EA is just around the corner and the builds are now up, waiting to be launched on tuesday.

:)

This week I’ve done some additional polish to the campaign, and added one of the retro modes. This retro mode is a “flooded Earth” type scenario, where resources are mined from small islands (mountain peaks).

W30a.png
W30b.png

Instead of the particle filtration plant, in this mode there is instead a mine/excavator and a sand extractor:

W30c.png
W30d.png

Initially, this mode doesn’t play much differently from the rest of the game except builds are flat. What will be worked into the mode though is a greater emphasis on environmetal care and citizens will demand you treat the remainder of the environment with care.

I’ve started working on the future feature list for the game. There will some additional res/com/ind buildings of different sizes. These are being worked on currently. I’m also adding citizen representatives that will be assigned to buildings across the city and will advise you on things they need.

Moving forward, updates will mainly be biweekly so that I can focus more time on adding features and fixing issues.

W30e.png
Devlog entry 42

Devlog entry 42

Hello,
A bit more than a week to go before the game releases into Early Access!

:D

It’s been a pretty rough week due to a bunch of Unity related issues. Among them scenes corrupting requiring a lot of time to find the source of the issue and issues with colliders.
As such, some images this week will be a bit random.

One of the issues with colliders caused roads to suddenly stop working requiring a bit of rewriting of the code that checks if the road is connected to another road tile as well as the code that checks if buildings are connected to a road and what road network it is connected to. Not the kind of stuff that I like doing when I still have a few more things left to do before the game releases, but on the upside, it meant that I could also remove some ugly code and also improve load speeds a bit.

w29e.png

I’ve started doing some last minute fine tuning to tax yields, upping yields from industry and commerce and lowering it a bit for residence. I’m hoping this evens out the yields a bit and incentivizes more planning.

w29d.png

The campaign is now finished and tested. There are a few things that might need to be added into it post EA-release, but mostly regarding instructions etc. There are a few things that can perhaps be explained a bit better. Should there be time in the upcoming week, there will be some more polish added to it as well.

w29c.png

Atmo fleets are now implemented. There’s some minor work still needed for path finding, so that they don’t fly through things. But they function as expected now. I will be adding some more bling to them to make them a bit more interesting.

https://twitter.com/CorrectureGames/status/1150840295933861888

The land mode is coming along nicely. I’ve made the necessary changes to the UI and started adding items to the mode. The buildings will be made this upcoming week. There will be a set of excavators to replace the atmospheric particle filtration plant, a sand collector and I’m also adding a wave power plant. The mode itself will be more fleshed out over time and it will eventually diverge a bit from the main modes of the game.

w29b.png

There’s been a tonne of work put into optimizing things and speeding things up in game as well as fixing music and texture imports. I’m hoping that the game will run well enough on target machines.

Next week will be the last pre EA devlog, so stay tuned for that. Here’s a shot from an early campaign level:

w29a.png