v0.1.2 - Performance & Balance
Another small update for you all today (they won't always be this frequent, but I'm still heavily tweaking things)! The most important thing is I've fixed what I believe to be responsible for all the complaints about late-game performance issues. It's a funny bug actually, due to the way fire spreading is handled.
Any time a mob comes in contact with an active flame, there's a chance it will spread to them. Of course, to avoid infinite reactions, I have to check to make sure they're not already on fire. This is all well and good and seemed to be working, but I did notice the spread in large crowds seemed too quick, and that there were bright illuminations as it spread, brighter than the light source for a single flame should be. What I discovered after some debugging is that bad things were happening when minions die while on fire.
When a minion dies, it was removing the flame effect from them to clean things up, which made sense. The problem is that there is a death animation (the blood splatter on death is actually still the minion's object animating) which plays out, so the minion actually sticks around for a few frames. During this time, it's eligible to be a target of fire spread again, and so the fire that's still on the screen (playing its own fade out animaiton) would spread to the dying minion, and now we have two fires. The minion then clears its effects because it's still dying, and those two fires can both catch it on fire again. One minion dying might result in 3-4 new flames being ignited, which is bad but not too noticeable.
Now when multiple minions are all together, those 3-4 flames each trigger their own spread checks on all surrounding minions. Those minions then end up catching on fire, and of course dying. Now you have an exponentially growing number of flames as they all multiply their own number as well as the number around them. This could result in thousands of fire effects being spawned onto the screen.
So in effect, any minion that died while on fire became a small bomb that could cause havoc in a large crowd! I've fixed the issue now and hopefully the game will run smoother in the later parts. Fire is a little less powerful now, but still spreads quite effectively in crowds!
Additionally, I've rebalance the minions spawns again. The spawn table overall is much more spread out so that the later stronger minions will take some time to start appearing, and in the beginning you'll mostly be fighting the weaker guys. To account for this, I've also made most minions much stronger, with about twice as many hit points as previous.
Files
Tower Survivors
One against millions! Can you survive the necromancer's minions?
Status | In development |
Author | SlightlyMadman |
Genre | Action |
Tags | 16-bit, 2D, Action RPG, Arcade, Bullet Hell, Fantasy, Pixel Art, Retro, Roguelite, Singleplayer |
More posts
- v0.4.1 - The monolith that towers over meFeb 10, 2023
- v0.4 - Harder Better Faster StrongerFeb 07, 2023
- v0.3 - Getting from there to hereFeb 06, 2023
- v0.2.1 - Cool for CatsOct 05, 2022
- v0.2 - There's a light (over at the Frankenstein place)Oct 01, 2022
- v0.1.10 - Go your own waySep 27, 2022
- v0.1.9 - Performance hotfixSep 26, 2022
- v0.1.8 - I will build my castle with the stones thrown at me.Sep 25, 2022
- v0.1.7 - Tower Power!Sep 22, 2022
- v0.1.6 - These go to 11Sep 21, 2022
Leave a comment
Log in with itch.io to leave a comment.