Version 0.1.6: Dungeon Tooling


This week's update is a smaller one for two reasons. First, I needed some time to fix some longstanding technical bugs and mechanics that weren't implemented correctly. Second, I have started on the tooling for the dungeon part of the game, but which takes some time.

You can read about the bugfixes in the changelog, but in general they shouldn't be noticeable except that the game will be more stable. So instead let me introduce the new dungeon tooling system.

Dungeon Tooling

In Ero Dungeons

Dungeons consist of Rooms, and the way these Rooms are laid out in the Dungeon has been cleaned up in Ero Dungeons already. However, the Rooms themselves were always made in the Godot engine itself. The issue with this is that modifying them is a mess. You may remember the myriad of issues in Ero Dungeons where a Room was inaccessible from a direction or a wall was misplaced or collisions were wrong. That all stems from the fact that the Rooms didn't have all the validation and safeties that other aspects of the game have. Additionally, it meant that the Rooms weren't moddable at all. To make it worse, the tile layout and the content (such as curios) was handled completely separately.

For example, this is what a Room (the Stronghold) looks like in Ero Dungeons. Notice that there's a lot of tilemap stuff going on to handle the different connections it can have with neighbouring rooms. This Room broke in 4 or so versions.

Tiles

The basic tilemap of Rooms was a weird mix between scripts decided by the dungeon (such as make a circle in the middle with radius 3 to 5) and then sometimes in-engine overrides from the Rooms themselves. This caused many bugs where the content of Rooms didn't fit the actual tilemap, but only sometimes.

In the rework, I can now just draw the tiles myself, including when a tile should only show up if a certain connection with a neighbouring room exists. This allows rooms to be more versatile, and saves me a bunch of time.

Rooms can exist in different biomes, giving different floor and wall tiles, so when tiling I can either use the generic tiles (which then gets replaced by biome tiles) or use very specific ones. Something that also wasn't possible in Ero Dungeons.


Actors

The content of a Room are called Actors. These are Curios, Enemies, or anything else that isn't a tile in a Room. Until now, these Actors were hand crafted in the Godot engine and had custom code. They were a mess since they didn't have to be streamlined. Now, they have been reworked to use the general scripting tools of the game, meaning they can do whatever a move/item/curio/console can do.

The visuals of these Actors also use scripts, allowing fine grained control. For example, in Ero Dungeons, a WoodenChest curio couldn't delete the wooden chest in one outcome, keep it closed in another, and open it in a third. Now, that's possible.

Testing

Another reason for the high amount of Room related bugs is that testing them was difficult. I needed to load up a dungeon, hope that the room spawned and then hope that it had the desired connections. To remedy this, I can now see an instant preview of the Room and even enter a small test dungeon to see the Room in action.


Next

To achieve parity with the current system, I only need to add the EnemyGroups. Of course, I want more than simple parity, or else there wouldn't be a reason for making this change, so will make sure there are some new Curios and other special Rooms for next week's version.

Changelog:

Minor:

  • Trainings will now be repeated until no longer possible (mostly for levelling training).
  • Slots now use a priority system under the hood, instead of working dynamically.
  • Cursed enemies no longer get the "owned" penalty if there are no uncursed enemies left.
  • Added a texture for Wolfkin breeding.
  • Second tier buildings only require one worker, but they also require that one to be level 10+
  • You get warned about invalid workers in buildings with a notification flag
  • When naming new girls, the game will prioritize unused names.

Bugfixes:

  • The way players and enemies are stored under the hood has been changed in a way that should prevent all those weird duplication and swapping bugs. Note that this means that when loading an older save in combat, that combat will end immediately.
  • Fixed an issue where top and bottom hairstyle got swapped.
  • Rank based tokens (only Entangled for now) actually work and are linked to a combat rank.
  • On Disrupt didn't work at all.
  • Permanent moves couldn't upgrade existing moves.
  • Conditioning and Ear Piercing trainings could repeat forever.
  • The container for perks could overflow.
  • Higher level perks didn't overwrite lower level ones.
  • Duplicate texture layers would get duplicated twice if multiple puppets had them as duplicates.
  • Also fixed some other technical issues with the texture system.
  • Loading older saves would break if the amount of workers in a building had changed.
  • Height didn't get saved during new game setup if it was set to the lowest value
  • Armbinder small sprites didn't work correctly
  • Hood small sprites didn't work correctly for bunnies
  • Added a fallback so having an empty party doesn't break the game
  • Prevent players from removing the last partymember
  • Crotch layer got ordered incorrectly in animations
  • Tech wouldn't get cleared correctly when swapping between saves
  • The charging bolt wasn't shown correctly when charging
  • Wool Earmuffs had incorrect secondary color in the small sprite

Hotfix 1 additionally also fixes the following bugs:

  • Fixed shrines trying to unlock upon starting a combat, instead of upon winning.
  • Fixed an error when clicking an empty profile picture on the Party and Workers screen.
  • Fixed recipes getting cleared when reloading the game.
  • Fixed Ration/Strapon and Consumable counts getting out of sync when items are spent
  • "Good Aim" was increasing chance to be caught instead of chance to catch
  • Consumables that could be produced weren't always shown on the production screen.
  • Enemies lost their ID after a save/load.
  • You could still employ last partymember in Breeding/Enchanting/Trading.
  • The GearGrid didn't calculate max pages correctly in GirlInfoGearPanel.
  • Whenever you swapped starting positions, the extra girls would be permanent.
  • You can no longer start breeding when at -100% productivity to prevent you from wasting a strapon.
  • After breeding you could continue using the same strapon even if you had run out.
  • You could complete the "clear out an area for the mana generator" mission even by losing the first fight.
  • Auto-craft buildings wouldn't start crafting again if they stopped earlier but you've increased production targets since.
  • The Dungeon Loot notification flag didn't work for fully completed dungeon only partial ones.
  • The Partial Dungeon Loot button could be grayed out if you interacted with a non-completed dungeon earlier.
  • Gear requirements were completely broken.
  • Adding perks could sometimes fail when directly adding a higher level perk.
  • Charge icon didn't clear after using charged move.

If you want access to the preview with these changes (and a debug console), support me here:

PATREON | SUBSCRIBESTAR

Get Ero Hunters

Leave a comment

Log in with itch.io to leave a comment.