Crypt of the NecroDancer v4.1.1 is now available!
Happy Rhythm Fest everyone! We're celebrating with a new update, discounts on Crypt of the NecroDancer and all DLC, and the Rift of the NecroDancer demo is back if you didn't get a chance to play it last time.
https://store.steampowered.com/app/3029150/Rift_of_the_NecroDancer_Demo/
Now on to the patch notes!
New features
- Added Win Streak tracking to All Zones Mode
- Deathless Mode's win counter is shared with the win streak tracker
- Deathless Mode now allows interrupting win streaks on the first floor to switch to a different mode or character
- All Zones Mode runs now automatically submit to the corresponding Deathless Mode leaderboards upon completion
- Each combination of character and game mode tracks its own win streak individually
- Win streaks are preserved when quitting to the lobby on the run summary menu or the first floor after a win
- Win streaks are lost when quitting to the lobby (after the first floor), quick restarting mid-game or losing a run
- Menu options that are about to break a win streak now show a warning message while on a streak
- Added an option to toggle DLC playtime being counted separately on supported platforms
- Added a 1 in 1024 chance for Dice Traps to spawn a rare enemy
- Added controller rumble options to the "Reassign controls" menu
- Added HUD indicators for diagonal movement button bindings to the lobby while playing Diamond, Klarinetta or Miku
- This can be disabled in the options
- Added visual spark effect for ground wires in Zone 5
- Added a "Restore Unlock Progress" menu under "Manage save data"
- This makes specific game content (characters, zones, items, NPCs) quickly accessible if they've previously been unlocked on another platform
- Added an option to enable floating selection boxes in the editor when copying and pasting
Balance changes
- Changed Miku to no longer take damage when pressing too many buttons in a single beat
- Standing still by not pressing any buttons for a beat will still inflict damage as before
- Changed Zone 4 walls to be breakable without a shovel if the AMPLIFIED DLC is disabled
- This helps Miku traverse Zone 4 more easily, as she cannot pick up shovels
- Changed Pawnbroker to present a unique scroll as a special offer to Miku
- Changed enemies disintegrated via teleportation to drop gold, increase multiplier and reduce cooldowns
- This most commonly occurs when dashing into an enemy against an unbreakable wall as Miku
- Changed Shrine of the Feast to no longer appear for Aria and Coda
- Changed Shield of Shove to push frozen and sunken enemies
- Changed Chaunter to possess Skeleton Knights directly with piercing attacks
- Changed Granite Golems to move more slowly in Randomizer Mode
- Changed Pixies to heal the player when pushed into them (via Bounce Trap or Shovemonster)
- Changed Red Chests on boss floors to no longer contain Backpack, Holster or Cursed Potion
Modding features
- Added support for passing 4x4 matrices to
VertexBuffer.setTransform()andGFX.setGlobalTransform() - Added functions
VertexBuffer.read()/.write()to manipulate raw vertex attributes - Added function
VertexBuffer.getQuadCount()to check how many triangle pairs have been drawn - Added function
VertexBuffer.hook()to intercept calls toVertexBuffer.draw()/.drawText()/.drawQuad() - Added function
VertexBuffer.isHooked()to check if a vertex buffer has been hooked for the current frame - Added function
placementUtils.isImpassable()to check if a tile contains an obstacle or stationary enemy - Added function
placementUtils.isBlocking()to check if a tile is the only way to pass between adjacent tiles - Added component
itemGlobalBanto automatically ban an item for all characters - Added component
inventoryUnbannedItemsto lift bans for items with specific components - Added component
tilePassabilityInhibitorto mark an entity as an impassable obstacle - Added component
Sync_itemShrinkingFlashEffectto highlight items in the HUD regardless of stackability - Added component
enemyPoolRareto mark enemies as rare - Added parameter
ev.weapontoevent.objectCheckAttack, allowing attacks to be restricted to a single weapon - Added field
shapeto return value ofPlacementUtils.getRoomAt()and related functions - Added field
targetFlagsto componentColdsteel_itemTunnelAttack - Added field
disableSwipeto componentattackOnPartialMove - Added attribute
hardModeMinibossesto enumLevelSequence.Zone - Added attribute
hardModeMinibossPositionto enumBoss.Type - Added data field
randomizertoCustomEntities.extendwhen using theenemytemplate - Changed invalid component accesses on entities to no longer raise an error for packaged mods
- Changed Pawnbroker to present a Potion as a special offer if all other items are banned, instead of no item
- Added a custom rule to enable an additional shop-restocking effect for Ring of Charisma (SYNCHRONY DLC)
- This is currently disabled by default, but might become a permanent change in a future update based on feedback
Bugfixes
Gameplay bugfixes
- Fixed Gorgon Statues not appearing on the next level after falling through a trapdoor
- Fixed Familiars failing to affect enemies larger than one tile
- Fixed Miku being able to build up unlimited "SING" ability charges on boss floors
- Fixed Miku incorrectly double-hitting enemies when performing an electric attack
- Fixed Deep Blues being able to instantly attack the player when hit by an electric attack
- Fixed Wisps materializing too close to players if a Monocle, Circlet of Telepathy or Glass Torch is picked up
- Fixed Dragons and Nightmares being able to stomp other enemies posthumously
- Fixed shrines placing their items at unreasonably long distances if the tiles below the shrine are occupied
- Fixed Shrine of Sacrifice placing items on top of gold if the enemy is killed underneath the shrine
- Fixed Dove getting stuck on boss floors in Ensemble Mode when using a bomb to teleport the miniboss
- Fixed Deep Blues breaking the rules of chess while castling in rare cases
- Fixed Chaunter not dropping the Golden Lute on death
- Fixed Cadence's penultimate boss passing through incorporeal Ghosts during phase 2
- Fixed Berserk Spell ending if one of Reaper's soul familiars bumps into an enemy
- Fixed Nocturna not dropping the Golden Lute when dying while in Bat Form
- Fixed monsters charmed by Miku's "SING" ability not dropping their items upon healing Miku
- Fixed Miku's "SING" ability instantly vaporizing Mimics and their loot
- Fixed Red and Blue Dragons moving too quickly if knocked back after exhaling
- Fixed some levels being impassable for Monk/Coda without items if the SYNCHRONY DLC is disabled
- Fixed Dancepad mode causing zones to generate in an incorrect order when playing Aria
- Fixed Mannequins not accounting for cursed hearts
- Fixed Miku getting stuck behind locked chests/cages
- Fixed "I love gooooooold!" achievement not being unlocked when playing as Nocturna
Level generation bugfixes
- Fixed Zone 3 generating differently for the same seed depending on whether the Shopkeeper is alive
- Fixed Wind Gargoyles sometimes obstructing shop entrances
- Fixed Thief and Cracked Floors sometimes appearing in secret rooms
- Fixed Bounce Traps sometimes pointing into walls
- Fixed Sarcophagi causing some layouts to be impassable for Monk/Coda
- Fixed Shop Wall Mimics rarely being placed at incorrect locations
- Fixed cracked walls rarely obstructing the path through the level for Monk and Coda
- Fixed inconsistent training staircase position for hot and cold Zone 3 monsters
Audio bugfixes
- Fixed Miku's voice lines becoming nearly inaudible while shrunk
- Fixed Banshee's deafening effect ceasing if an enemy damages the Banshee
- Fixed Banshee's and Monstrous Shopkeeper's screams not stopping when transformed into another enemy
Visual bugfixes
- Fixed Miku's attack preview displaying inaccurately near enemies larger than one tile
- Fixed run summary screen displaying an incorrect seed in All Characters Mode and Story Mode
- Fixed Map, Monocle, and other vision items continuing to take effect after entering or leaving spectator mode
- Fixed missing outline pixels on Obsidian Shield's equipment sprite
- Fixed chat messages with line break characters obscuring the screen
- Fixed Miku's armors not being obscured in Mystery mode
- Fixed missing outline pixel in Miku's virtual armor
- Fixed Gorgons not flashing upon turning into statues
- Fixed Klarinetta's eyes glowing in the wrong color while electrified
- Fixed Miku's attack causing enemies larger than one tile to bounce incorrectly
- Fixed Mary visually appearing beneath her sheep in Phasing Mode while in the lobby
- Fixed Mannequins' health bars not always being visible
- Fixed animations briefly playing incorrectly after loading a save
Level editor bugfixes
- Fixed Slimes and other stationary enemies being removed from custom dungeons when playing Monk or Coda
- Fixed hidden playable characters still being listed in the level editor's side panel
Performance bugfixes
- Fixed performance issues when playing very long Deathless Mode runs
- Fixed performance issues after creating large numbers of text flyaways or attack swipes within a single level
- Fixed performance issues if multiple different players activate Berserk Spell
- Fixed post-game replay rarely causing errors while showing the perspective of the enemy that dealt the final blow
Engine bugfixes
- Fixed SYNCHRONY DLC requiring a separate Steam launch option on macOS
- Fixed crash when playing the SYNCHRONY DLC on Windows 7
- Fixed freeze on Windows if the computer has not been shut down for a few days
- Fixed freeze when changing the system clock on Linux while the game is running
Modding bugfixes
- Fixed Klarinetta incorrectly causing modded weapons to perform attacks after moving
- Fixed item bans sometimes being incorrectly auto-assigned to modded spells
- Fixed Leprechauns not gaining extra health when playing as a modded character extending Eli's template
- Fixed stairs and trapdoor penalty boxes unlocking when a miniboss is transmuted into another miniboss
- Fixed error when an enemy with AI type
PATTERNdoes not have theaiPatterncomponent - Fixed errors if an entity has the
spritecomponent, but not thespriteExtrapolatablecomponent - Fixed error when calling
audio.getPosition()in multi-instance mode - Fixed error when a modded character without the
healthcomponent activates Shrine of Blood - Fixed flickering visuals when using
VertexBuffer.drawQuad() - Fixed beat bars cutting out on Cadence's final boss when using custom music
- Fixed Weekly Challenge leaderboards not handling custom rule changes correctly
- Fixed
Sync_excludeFromDiceTrapnot having an effect on minibosses - Fixed Shrine of Blood appearing for modded health-locked characters
- Fixed error when banning a component that doesn't exist
- Fixed custom dungeon secret shops generating two overlapping entrance runes