Amidst the work done below, a refactor is in progress to prepare for Rulesets, which will allow the game to be tweaked for version 0.3, and pave the way for different game modes and upcoming mod support.
For now, this patch resolves many issues regarding online gameplay, physics issues, input issues, and other oddities. Development towards version 0.3 continues.
Thank you for all the bug reports and suggestions as well – your feedback helps to resolve issues and keeps the journey going.
Translated by acexthree and Tycho Davydov.
GAMEPLAY FIXES & IMPROVEMENTS
Fixed many issues where creatures colliding with walls would have their movement be interrupted and snagged. This was very apparent when jumping (or falling) and moving against a wall in anticipation for traversing around a corner.
The game's internal "world object position fixer" was being too heavy-handed, and is now toned down.
Jumping and moving against walls should now feel buttery smooth.
Fixed a regression where some frames would prevent your character from jumping; you'd just spin in place.
This was an issue with the "world object position fixer" being too harsh.
Jumping is now reliable again.
Fixed an issue where pending movement directions remained queued after flinching or becoming stunned.
This sometimes resulted in your character about-facing after becoming unstunned, which was disastrous if you wanted to raise your shield ASAP but then turned the wrong way.
Now, pending movement directions are cleared from the queue when you flinch or become stunned.
If you have full health and want to consume a potion that grants an additional buff or effect, you can now consume the potion from your Inventory menu without having to damage yourself first.
Creature Center Points:
Fixed an issue where creature center point calculations were not actually centered.
Previously, center points used the creature's sprite container, which is slightly offset from their physics collider, and was prone to different position calculations if the creature was facing west or east.
Now, center point calculations use the creature's physics collider bounds, and is consistent no matter which direction the creature is facing.
Such calculations are minor but important, and mainly affect Flail hit detection (with shield raised), Stun Bomb hit detection (with shield raised), pinwheel trap hit detection (with shield raised), Katana teleportation, aiming with ranged weapons, and movement checks against walls.
The Buyback system now has a limit of 25 items. Excess items are destroyed when entering a new room or saving the game.
Fixed an issue where damage received from non-creature sources (such as traps and poison ticks) would not trigger OnReceivedDamage procs.
Fire Wall Traps:
Fixed an issue where projectiles from this trap counted as Physical damage instead of Fire damage.
The Dungeon Actually Grows Stronger Now:
Fixed an issue where the server did not send enemy and trap level-up data (eg higher health and damage numbers) to the client during the "Dungeon grows stronger" intermission.
Previously, disconnecting and reconnecting was the only way to receive the stronger enemy and trap data.
As such, online gameplay will feel more challenging after each intermission, but this now matches Couch Co-op gameplay numbers as intended.
Fixed many issues where health would not sync on the client correctly, especially after reconnecting to a game or equipping different shields.
Health syncing and damage calculations are now more robust.
Fixed many potion transaction issues. Previously, the server could consume an incorrect potion, or not consume a potion at all.
Drinking potions should now work reliably in all cases.
Fixed an issue where OnReceivedDamage and OnDealtDamage procs would not trigger across all clients.
Fixed an issue where, if the "Hold to Attack" option was enabled, throwing a key could cause your weapon to start attacking immediately.
Fixed an issue where the "Dungeon grows stronger" intermission would display when re-entering a room.
Improved handling of long chat messages.
Fixed an issue where unneeded data was being retained in saved game files for old rooms that had been closed off and vacuumed, but not vacuumed enough. Old data for traps, pedestals, enemies that were not slain, enemy weapons, treasure chests, and items in treasure chests, were not being pruned.
Unneeded data is now vacuumed better, resulting in smaller saved game file sizes and faster loading times.
This issue became apparent when a bug report came in from a player that had reached Room 900+ with over 20 hours of gameplay – their saved game had run out of internal ID numbers to allocate to new entities.
This version now fixes such saved game files. Vacuuming and pruning will be applied upon load.
For example, said saved game file had all ~65,000 internal ushort ID numbers allocated, and the file size was 2.8 MB. Now, after proper vacuuming of old rooms and cleaning up unneeded data, only ~3,000 internal ID numbers are used, and the file size is reduced to 450 KB.
Fixed an issue where blood particles would still appear on the UI if the Blood option was disabled.
Fixed an issue where off-screen player indicators would not show the correct character portrait if a player changed their character with the Magic Mirror.
Off-screen player indicators now hide as soon as a player’s name label becomes slightly visible, rather than waiting for the entire creature to become visible.
Off-screen player indicators now hide during cutscenes.
Fixed an issue where the mouse cursor would snap to the center of the screen on menus if the "Hide Cursor Automatically" option was enabled and any key was pressed.
Improved handling of mouse cursor visibility when switching between keyboard and game controllers.
Socket errors are now suppressed as warnings.
Fixed text wrapping issues.
Fixed an incorrect warning message if you tried to use Quick Heal without having any potions available.
Long sentences now wrap lines.
Fixed a POST error that could occur when a server sent data to the master server tracker.
Improved white space padding, text wrapping, and general readability for item pop-up UIs, especially for potions and shields.
Added Spanish / Español – translated by Martín Martos.
Online game-saving has been added:
Parties can now exit an online game and resume it later.
Online games are saved on the selected server when a party enters Room 1.
Games are saved to the server's disk when the party reaches a new room.
Games are linked to players' Steam accounts.
Games are retained for 90 days.
Games are deleted from the server's disk when the party dies.
To resume an online game from a previous session:
One player should load the game by going "Online Co-op", "Load game", select the server that was previously used, then select the game.
Once loaded, the game will appear in the "Join game" category for the other player(s).
Tabs are now separated into Single-player, Couch Co-op, and Online Co-op.
Servers are now listed in a category instead of a context menu.
Servers are now sorted by ping.
The best-ping server is now selected by default.
As part of an ongoing investigation into rare Unity engine errors:
Unity's "Use incremental garbage collection" option has been disabled for now.
Many checks around Unity's MonoBehaviour classes have been added.
Prior to 0.2.4, incremental garbage collection was enabled. It keeps performance smooth, but I suspect it was accidentally removing non-garbage pointers in memory,
causing errors regarding lists, arrays, and null references. This patch will help see if incremental garbage collection was the underlying issue.
Frame rate performance should still be adequate, but if not, please submit in-game feedback, post on the
or email me.
Fixed error during game-over screen if a controller had disconnected.
Improved handling of disk errors when writing LocalSettings.ini.
Fixed a pause menu issue.
Fixed certain buttons not updating when player changed input type between keyboard and controller.
Fixed date and time formatting issues.
Improved messages regarding timeout issues.
Fixed player name text-wrapping issues on treasure chest items.
Fixed errors with rewards and shields.
Added option: Advanced> Delete Local Settings.
Fixed player spawn point position being incorrect.
Fixed issue where only one entry would be submitted per session. Multiple entries are now submitted per session, rather than being stuck in a queue.
Fixed a rare error after an entry finished submitting.
Addressed rare errors with the weapon selector and item pop-ups.