v0.140 - A Fresh Coat of Paint


Hello, dear reader, and welcome to the first Alchemickal devlog! I figure I should start making these to detail the development of the game in a cleaner fashion, not everyone wants to wade through scattered 4chan and Discord posts after all. So, what's new? A lot of stuff! It's been a while since the last update (6 months!) so bear with me here. 

First of all, I significantly improved how the dungeon generation algorithm works. There was little rhyme or reason to how a floor progressed before this update, as rooms were placed and connected essentially at random. This meant that you could potentially have the spawn and exit rooms be right next to each other, making for a terrible level. Another issue was a lack of incentive for players to fully explore the dungeon: reaching a dead end was frustrating since that meant you wasted time for no reason. I addressed both of these issues by adding depth-based room generation to the dungeon algorithm! I won't go into too much detail, but basically a few "anchor" rooms are placed at random, then their depth values relative to the spawn room are used to further generate the dungeon. The deepest path is used to generate the exit room while other paths are used to generate special terminal rooms, killing two birds with one stone. 

Before I can talk about these so-called special rooms, I have to mention the new currency/loot mechanics. The game now features two currencies that the player can acquire: scrap and arcane coins (you might've noticed these names floating around in previous builds). Scrap is used for crafting weapon upgrades while arcane coins are used for purchasing character buffs, and both currencies are acquired through chests you find throughout the dungeon. Upon clearing a room, a loot chest spawns and grants currency drops to the player. 


This is where the allure of terminal rooms come in: they reward players that see a path to the end with greater loot. There are currently two terminal room types: treasure and elite combat. The former is a small room with a free regular chest and the latter plays like a standard combat room with the addition of a dangerous miniboss at the last wave. Upon killing this miniboss, a gilded chest appears and grants a bunch of shinies to the player. What this means is that if a player wants to deck out their build then they have a natural incentive to explore dungeons to their fullest, and reaching a dead end isn't that bad anymore since you get rewarded for it. Unfortunately, I have not yet implemented weapon upgrades nor character buffs. They're both top priority so expect to see them next update. I also haven't made a proper miniboss yet so you have to fight a giant beefed up Watcher for the time being.

Instead of making those things that would've made the game more fun, I made a bunch of new art assets! Some older models and textures were really clunky and ugly, I just had to get rid of them. I mean, just look at some of these.

I also made some brand new dungeon assets, you can expect to see a little more environmental variety now. That's about it for the new content, the rest of the changes are more boring and behind-the-scenes. For one, I spent quite a while trying to optimize the game and made some good progress. Improvements include but are not limited to...

  • Enhanced occlusion culling. It now applies to the entire dungeon instead of just props, meaning the game only renders what you see. 
  • Static batching. Something something less draw calls equals more frames.
  • Reduction in dungeon generation times. The game went from taking 6-8 seconds per generation to something like 1-3 in my experience, but your mileage may vary. 
  • Reduced disk accesses when handling save data. The game used to lag pretty badly after building up a large save file, that's no longer the case. 
  • Script rewrites. Some scripts (mostly UI) needlessly relied on functions that call every frame so I rewrote them.

Despite all this, the game isn't buttery smooth just yet. The framerate can dip significantly during combat from my experience, so there's still quite a ways to go with optimizing. Please tell me how the game runs for you and if the graphical settings help at all, it would be very useful to hear.

The main goal of the next update is to make buttloads of gameplay-centered content. Once I get the weapon upgrade and character buff mechanics done, I'll FINALLY start making new enemies and things for the player to do. Believe me, I am beyond tired of fighting the same 4 robots over and over again, so I really want to do this. Not only that, the game will be feature complete once those two mechanics are in, meaning I can finally make a tutorial! Whether I'll get around to that or not is a mystery. 

If you actually read through this whole thing, I kneel. I'm excited about the future of this game again after having my passion temporarily extinguished by a very stressful semester, so I'm eager to keep developing the project and writing devlogs for (You)! Since you're already here, consider joining the community Discord server and/or following the game's Twitter (X?) account if you haven't already. The former is a great way to chat about the game so hopefully I'll see you there!


Files

Alchemickal v0.140 - Windows.zip 106 MB
74 days ago
Alchemickal v0.140 - Linux.zip 124 MB
74 days ago

Get Alchemickal

Leave a comment

Log in with itch.io to leave a comment.