1. Crypt of the NecroDancer
  2. News
  3. Update v4.1.1

Update v4.1.1

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!

[h2]New features[/h2]
  • 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

[h2]Balance changes[/h2]
  • 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

[h2]Modding features[/h2]
  • Added support for passing 4x4 matrices to [noparse]VertexBuffer.setTransform()[/noparse] and [noparse]GFX.setGlobalTransform()[/noparse]
  • Added functions [noparse]VertexBuffer.read()[/noparse]/[noparse].write()[/noparse] to manipulate raw vertex attributes
  • Added function [noparse]VertexBuffer.getQuadCount()[/noparse] to check how many triangle pairs have been drawn
  • Added function [noparse]VertexBuffer.hook()[/noparse] to intercept calls to [noparse]VertexBuffer.draw()[/noparse]/[noparse].drawText()[/noparse]/[noparse].drawQuad()[/noparse]
  • Added function [noparse]VertexBuffer.isHooked()[/noparse] to check if a vertex buffer has been hooked for the current frame
  • Added function [noparse]placementUtils.isImpassable()[/noparse] to check if a tile contains an obstacle or stationary enemy
  • Added function [noparse]placementUtils.isBlocking()[/noparse] to check if a tile is the only way to pass between adjacent tiles
  • Added component [noparse]itemGlobalBan[/noparse] to automatically ban an item for all characters
  • Added component [noparse]inventoryUnbannedItems[/noparse] to lift bans for items with specific components
  • Added component [noparse]tilePassabilityInhibitor[/noparse] to mark an entity as an impassable obstacle
  • Added component [noparse]Sync_itemShrinkingFlashEffect[/noparse] to highlight items in the HUD regardless of stackability
  • Added component [noparse]enemyPoolRare[/noparse] to mark enemies as rare
  • Added parameter [noparse]ev.weapon[/noparse] to [noparse]event.objectCheckAttack[/noparse], allowing attacks to be restricted to a single weapon
  • Added field [noparse]shape[/noparse] to return value of [noparse]PlacementUtils.getRoomAt()[/noparse] and related functions
  • Added field [noparse]targetFlags[/noparse] to component [noparse]Coldsteel_itemTunnelAttack[/noparse]
  • Added field [noparse]disableSwipe[/noparse] to component [noparse]attackOnPartialMove[/noparse]
  • Added attribute [noparse]hardModeMinibosses[/noparse] to enum [noparse]LevelSequence.Zone[/noparse]
  • Added attribute [noparse]hardModeMinibossPosition[/noparse] to enum [noparse]Boss.Type[/noparse]
  • Added data field [noparse]randomizer[/noparse] to [noparse]CustomEntities.extend[/noparse] when using the [noparse]enemy[/noparse] template
  • 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

[h2]Bugfixes[/h2]
[h3]Gameplay bugfixes[/h3]
  • 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

[h3]Level generation bugfixes[/h3]
  • 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

[h3]Audio bugfixes[/h3]
  • 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

[h3]Visual bugfixes[/h3]
  • 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

[h3]Level editor bugfixes[/h3]
  • 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

[h3]Performance bugfixes[/h3]
  • 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

[h3]Engine bugfixes[/h3]
  • 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

[h3]Modding bugfixes[/h3]
  • 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 [noparse]PATTERN[/noparse] does not have the [noparse]aiPattern[/noparse] component
  • Fixed errors if an entity has the [noparse]sprite[/noparse] component, but not the [noparse]spriteExtrapolatable[/noparse] component
  • Fixed error when calling [noparse]audio.getPosition()[/noparse] in multi-instance mode
  • Fixed error when a modded character without the [noparse]health[/noparse] component activates Shrine of Blood
  • Fixed flickering visuals when using [noparse]VertexBuffer.drawQuad()[/noparse]
  • 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 [noparse]Sync_excludeFromDiceTrap[/noparse] not 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