Spellmasons Update v1.8.0
I have high-hopes for the desync fixes in this build. I think it will resolve many of the desyncs that people have been encountering. Please continue to report any desync issues that you encounter in our Discord channel - the reports so far have been monumentally helpful in uncovering these issues. I have still detected a few minor desync issues but as of this update I, personally, have not found any remaining major issues.
Thank you to everyone who messaged on Discord to report issues and thank you all for your support!
Changes in v1.8.0:
-
gameplay balance: Dark Summoners
so they start with 40 mana out of 60 so it takes them
one turn before they can cast and make them regen mana slower.
Thanks to Sander and Shurimoo for the suggestions -
gameplay balance: Dark Summoner summons
Dark Priests and Mana Vampires instead of more summoners
to prevent overpopulation from crashing the game -
Translations (i18n): Add Japanese and French and Korean
-
Thanks to Cie, Skornett and Vedmin_Studen for the translations!
-
refactor: Scrolls
Scrolls still trigger the "pick upgrade" screen, but they will no longer disappear after a number of turns have passed. This should resolve numerous issues encountered with scrolls. -
fix: desync: Update lastUnitId when loading Player
-
fix: Extra desync protection, send lastUnitId along with SYNC_PLAYERS message
When lastUnitId is out of sync it opens the possibility of a desync
where there can be multiple units that share the same ID which can
result in different results on different clients if one client has the
shared id bug and another client does not. -
fix: Killing ally player allows scroll to drop
Scrolls will only drop when killing enemies now -
fix: menu: Fix blank mods screen
-
fix: Bug where freezing yourself would result in
you missing 2 turns instead of one because
your turn got ended before the modifier got added to
your unit which meant when the onEndTurnEvent fn ran,
there was no freeze modifier to remove and so it didn't get removed
until the next turn. -
npm: @websocketpie/client@1.0.0
Upgrade wsPie client so that it doesn't handle client messages immediately by default.
Client messages will bounce off the server before being handled to
alleviate desync issues -
optimize: Throttle PLAYER_THINKING messages
Prevent messages from sending with no cardIds (unless it's clearing a previous thought)
Before this change the server was being inundated with messages because
every client was sending a player_thinking message on every mouse move -
UX: Give players immediate feedback if they send
SPAWN_PLAYER while other messages are still processing -
UI: Fix updating unit health and mana bars
at the start of player turns and after ending player turns.
This is triggered manually so that the player doesn't have to move their
mouse to get the updated prediction UI
Changed files in this update