This update includes a ton of new things, like new spells, new enemies, new bosses, a new area and new secrets. There's also a bunch of tweaks, updates and bug fixes.
Unfortunately your old save games won't survive the update. But there is now a new Steam beta branch called "update_20240214". It will allow you to finish your run with the old version of Noita.
GENERAL
- FEATURE: Spell - Sparkly bounce
- FEATURE: Spell - Lightning bounce
- FEATURE: Spell - Vacuum bounce
- FEATURE: Spell - Null shot
- FEATURE: Spell - Inner spell
- FEATURE: Spell - Giga white hole
- FEATURE: Spell - True orbit
- FEATURE: Spell - Hookbolt
- FEATURE: Spell - Anti homing
- FEATURE: Spell - Holy lance
- FEATURE: Added 8 modifier spells
- FEATURE: Added 6 new enemies
- FEATURE: Added 6 new spells
- FEATURE: Added 3 new secret spells
- FEATURE: Added new rare materials
- FEATURE: Added chemical reactions
- FEATURE: Added new small biome
- FEATURE: Item - Utility box
- FEATURE: Potion reactions
- FEATURE: Audio is muted when unfocusing the game if "Pause the game when unfocused" is On
- FEATURE: Amazing golden spell
- FEATURE: 3 new bossfights
- FEATURE: Added a new creature
- FEATURE: New materials and reactions
- FEATURE: New secret quest
- FEATURE: Added a new easter egg
- UPDATE: Dupe around and find out
- UPDATE: Better interaction with No Wand Tinkering and Tinker With Wands Everywhere perks
- UPDATE: Lukki Minion is slightly more powerful
- UPDATE: Spells can now be dropped from inventory at all times
- UPDATE: Spell drop rates rebalanced
- UPDATE: Explosive bounce's radius increased
- UPDATE: Shiny Orb is now more lucrative
- UPDATE: Moved a boss into a slightly more accessible spot
- UPDATE: Adjusted various spell mana costs and prices
- UPDATE: Adjusted weakness modifiers
- UPDATE: Updated the look of the Hiisi Alchemist's potions
- UPDATE: Potion content percentages are displayed now (Thank you Evaisa)
- UPDATE: Vomiting now requires eating a bit more nasty materials
- UPDATE: Buffed Vampirism
- UPDATE: A little surprise for the turophiles
- UPDATE: Audio - new sounds for [REDACTED], glue, eldritch portal, freezing gaze, barrier & wall spells
- UPDATE: Audio - bzzzt
- UPDATE: Audio - new sound for [REDACTED]
- UPDATE: Audio - new music for a few side areas
- UPDATE: Powder pouches have a new functionality
- UPDATE: New enemies show their statuses in the UI
- UPDATE: Visual, audio and other fx when moving very fast
- UPDATE: Tele bolt resets caster's vertical velocity
- UPDATE: Less harsh sound for tele bolt for more pleasant tele spamming experience
- UPDATE: Improved camera tracking when moving fast
- UPDATE: Lukki Minion should no longer be killable to make it more useful
- UPDATE: Optimized file system performance when using mods
- UPDATE: Optimized performance of some game effect queries in various systems
- UPDATE: All bosses use final boss style health bars
- UPDATE: Added up to date localizations
BUG FIXES
- BUGFIX: Nightmare mode - the boss arena and orb rooms could be overwritten
- BUGFIX: Nightmare mode - Orbs should now drop hearts even if the spell is unlocked
- BUGFIX: Nightmare mode - enemies no longer spawn with Attract Gold perk
- BUGFIX: Permanent polymorph is permanent
- BUGFIX: Carrying 5th wand by frame perfect swapping is fixed
- BUGFIX: Rare crash when enemy was converted to a ragdoll (text sprite) (Thank you Dexter Castor Döpping)
- BUGFIX: Fixed another inventory exploit, that allowed carrying of extra wands
- BUGFIX: Fixed Lukki Minion sometimes escaping and disappearing
- BUGFIX: Vaihdosmestari can no longer move cursed rock
- BUGFIX: Closing inventory while starting to drag items is fixed
- BUGFIX: Alt tab silliness is should now be fixed
- BUGFIX: Optimized particle effects
- BUGFIX: Player can no longer polymorph to Olematon
- BUGFIX: Runestone of edges could cause Puska to shoot forever
- BUGFIX: Mouse cursor displays the material even in the far lands
- BUGFIX: Optimized Circle of stillness and Freezing gaze
- BUGFIX: Fixed Null shot breaking modifiers cast after it
- BUGFIX: Cosmetic fix to the alchemist's background
- BUGFIX: More optimizations, including Freeze Field perk and Iceball spell
- BUGFIX: Fixed a rare crash that could happen with too many materials
- BUGFIX: Rare wand generation bug (the default green wand should be now fixed)
- BUGFIX: Minor - a perk icon was missing a pixel
- BUGFIX: Fixed a security vulnerability in the modding API (Thank you Dexter Castor Döpping)
- BUGFIX: Fixed Hookbolt having a buggy sprite
- BUGFIX: Fixed Giga White Hole not repelling projectiles
- BUGFIX: Fixed certain spell unlocks happening in an unintended way
- BUGFIX: Physics objects are less likely to fall through the bottom of the world
- BUGFIX: Fixed Explosive Detonator being bugged in certain circumstances
- BUGFIX: Fixed a boss not dropping all the spells it was meant to
- BUGFIX: Fixed a secret dropping spells that it shouldn't
- BUGFIX: Fixed multiple spells have some erroneous/missing data
- BUGFIX: Fixed a rare case of sky being black
- BUGFIX: Nullifying Altar did not remove the perk icons (Thank you Priskip)
- BUGFIX: Related perks should now be removed from the perk pool
- BUGFIX: Surprise puddles behind potions fixed
- BUGFIX: Certain endgame item can now be dragged in the inventory without TWWE
- BUGFIX: Saving and loading while stained caused extra status effects
- BUGFIX: Vomit based status effect glitch is fixed
- BUGFIX: Longer runs should be more stable and largely address aware thanks to Dexter Castor Döpping
- BUGFIX: Game mode selection UI has been optimized
- BUGFIX: Improved overall security of modding API
- BUGFIX: Audio - rewrote audio event stealing logic - should fix issues with audio sometimes "wrapping up" in a janky manner
- BUGFIX: Audio - ambience events no longer trigger lots of silent audio instances - reduces ambience CPU use
- BUGFIX: Audio - droplet sounds would rarely end up repeating without a cause
- BUGFIX: Audio - liquid flow sound was sometimes left playing
- BUGFIX: Fixed a potential issue in regards to file paths
- BUGFIX: Fixed an xml parsing issue
- BUGFIX: A fix caused more issues than it solved
- BUGFIX: A fix broke some translation mods that used custom fonts
- BUGFIX: Possible fix for "Game will restart due to mod changes" without changes
- BUGFIX: Fungal shifts rarely didn't occur
- BUGFIX: Fungal shifts that didn't fully realise still counted towards the maximum limit
- BUGFIX: Certain spells weren't keeping the ID of their caster around like they should've
- BUGFIX: These release notes were so long that the UI had performance issues
- BUGFIX: Some surface areas had no sky light after above areas had been visited, and were not counted as surface by audio etc
- BUGFIX: Final boss hanging around very far from the player could block mini-boss music
- BUGFIX: Wands retain cast delay, recharge etc over a game restart
- BUGFIX: A settings menu item was using a missing translation key when hovered
- BUGFIX: Infinite rain exploit
- BUGFIX: Some localization strings were incorrectly escaped
- BUGFIX: Text in tablets and books didn't display correctly in all languages
- BUGFIX: Fixed issues with UI in some languages
- BUGFIX: More robust mod check when saving bones files
MODDING
- MODDING: Lua - added PolymorphTableAddEntity
- MODDING: Lua - added PolymorphTableRemoveEntity
- MODDING: Lua - added PolymorphTableGet
- MODDING: Lua - added LoadRagdoll
- MODDING: Lua - GameCreateCosmeticParticle - now with gravity_x and gravity_y
- MODDING: Lua - LoadPixelScene - now with allow_duplicate param
- MODDING: Lua - added PolymorphTableSet
- MODDING: Lua - added ComponentGetTags
- MODDING: Lua - added InputIsKeyDown
- MODDING: Lua - added InputIsKeyJustDown
- MODDING: Lua - added InputIsKeyJustUp
- MODDING: Lua - added InputGetMousePosOnScreen
- MODDING: Lua - added InputIsMouseButtonDown
- MODDING: Lua - added InputIsMouseButtonJustDown
- MODDING: Lua - added InputIsMouseButtonJustUp
- MODDING: Lua - added InputIsJoystickButtonDown
- MODDING: Lua - added InputIsJoystickButtonJustDown
- MODDING: Lua - added InputGetJoystickAnalogButton
- MODDING: Lua - added InputIsJoystickConnected
- MODDING: Lua - added InputGetJoystickAnalogStick
- MODDING: Lua - added PhysicsComponentGetTransform, PhysicsComponentSetTransform
- MODDING: Lua - added PhysicsPosToGamePos, GamePosToPhysicsPos
- MODDING: Lua - added PhysicsBodyIDGetFromEntity, PhysicsBodyIDQueryBodies
- MODDING: Lua - added PhysicsBodyIDGetTransform, PhysicsBodyIDSetTransform
- MODDING: Lua - added PhysicsBodyIDApplyForce, PhysicsBodyIDApplyTorque
- MODDING: Lua - added PhysicsBodyIDGetWorldCenter
- MODDING: Lua - added PhysicsBodyIDGetDamping, PhysicsBodyIDSetDamping
- MODDING: Lua - added PhysicsBodyIDGetGravityScale, PhysicsBodyIDSetGravityScale
- MODDING: Lua - added PhysicsBodyIDGetBodyAABB
- MODDING: Lua - added ModDoesFileExist
- MODDING: Lua - added RemovePixelSceneBackgroundSprite and RemovePixelSceneBackgroundSprites
- MODDING: Lua - added EntitiesGetMaxID
- MODDING: Lua - added ModMaterialFilesGet
- MODDING: Lua - added ModRegisterMusicBank (init.lua) and example in mods/example
- MODDING: Lua - added GameGetSkyVisibility, GameGetFogOfWar, GameGetFogOfWarBilinear, GameSetFogOfWar
- MODDING: Lua - added DEBUG_LUA_DONT_REPEAT_ERRORS magic number to log recurring, consecutive errors only once (defaults to 1)
- MODDING: Lua - lua error stack traces
- MODDING: Lua - added ModImageMakeEditable, ModImageIdFromFilename, ModImageSetPixel, ModImageGetPixel
- MODDING: Lua - added ModImageWhoSetContent, ModImageDoesExist
- MODDING: Lua - added ModLuaFileGetAppends, ModLuaFileSetAppends
- MODDING: Lua - added ComponentGetEntity
- MODDING: Lua - added optional 'tag' parameter to EntityGetAllChildren
- MODDING: Lua - exposed ModTextFileGetContent and ModTextFileWhoSetContent to all lua scripts
- MODDING: Lua - made ComponentGet/SetValue2 up to 300% faster. Old ComponentGet/SetValue API is also a bit faster
- MODDING: Lua - added GameSetPostFxTextureParameter, GameUnsetPostFxTextureParameter
- MODDING: Lua - added PhysicsBodyIDApplyLinearImpulse, EntityGetHotspot, EntityRemoveStainStatusEffect
- MODDING: Lua - added use_material_colors & replace_existing_cells parameters to EntityConvertToMaterial
- MODDING: Lua - added font and scale options to GuiText, GuiButton and GuiGetTextDimensions
- MODDING: Lua API documentation - improved documentation of some functions
- MODDING: MagicNumber UI_WAND_TAG_OVERWRITES_NAME has been added
- MODDING: MagicNumber DESIGN_ALLOW_INVENTORY_CLOSING_AND_DRAGGING_GLITCH has been added
- MODDING: MagicNumber DESIGN_ALLOW_FULL_INVENTORY_SPELLS_DRAG has been added
- MODDING: MagicNumber DESIGN_TELEKINESIS_GLITCH_FOR_TABLETS has been added
- MODDING: MagicNumber DESIGN_TELEKINESIS_GLITCH_FOR_ITEM_PHYSICS has been added
- MODDING: MagicNumber GLITCH_ALLOW_5TH_WAND_CARRY has been added
- MODDING: MagicNumber GLITCH_ALLOW_ALT_TAB_SILLINESS has been added
- MODDING: MagicNumber GLITCH_ALLOW_STAIN_DUPLICATION_GLITCH has been added
- MODDING: MagicNumber GLITCH_ALLOW_VOMIT_BASED_STATUS_EFFECT_GLITCH has been added
- MODDING: MagicNumber DEBUG_DISPLAY_INTERNAL_ID_IN_PROGRESS_MENU has been added
- MODDING: Components - GameEffectComponent - polymorph_target should now work
- MODDING: Components - LaserEmitterComponent - ConfigLaser - added damage_apply_hitbox_dmg_multiplier
- MODDING: Components - PhysicsKeepInWorldComponent - added
- MODDING: Components - AttachToEntityComponent - added
- MODDING: Components - BiomeTrackerComponent - added
- MODDING: ComponentGetValue2() and ComponentSetValue2() now work with types::iaabb
- MODDING: Components - LuaComponent - added limit_all_callbacks to allow limiting of all callbacks
- MODDING: Fixed DEBUG_DISPLAY_INTERNAL_ID_IN_PROGRESS_MENU
- MODDING: Updated debug_keys.txt
- MODDING: Added support for static_tile biomes, that are like wang biomes without randomization, consisting of one large tile
- MODDING: Added support for static_tile_bg_mask, that are repeating backgrounds with a rough mask that defines the visibility
- MODDING: Added audio_music_trigger_without_danger to Biome. Used in watercave. Also added other new audio-related properties
- MODDING: Added intensity2 parameter to GameEntityPlaySoundLoop
- MODDING: IKLimbWalker, IKLimbsAnimator - exposed ray_skip_material
- MODDING: CharacterPlatforming - added audio_liquid_splash_intensity
- MODDING: PhysicsAI works better with non-levitating creatures
- MODDING: Added auto-generated any_liquid any any_powder Material tags
- MODDING: Audio - reports filename on bank load error
- MODDING: Improved init.lua API documentation
- MODDING: Fixed a possible rare crash when using the mod API in not recommended ways
- MODDING: CharacterData/CharacterCollision - added dont_update_velocity_and_xform
- MODDING: Exposed some path finding debug rendering features in F7 menu
- MODDING: Materials.xml loading - doesn't log error if a material would have reaction to itself because of a reaction with duplicate material from tags
- MODDING: Entity xml - added _remove_from_base (on Base components) to exclude components from base entities
- MODDING: Added 'json' to accepted file types of ModTextFileGet/SetContent and workshop uploader
- MODDING: Default biome map loads via 'data/scripts/biome_map.lua' (makes biome map multi-mod editing less of a hassle)
- MODDING: fungal_shift.lua doesn't call CellFactory_GetType on file scope, so mods can use the file before that function is ok to call
- MODDING: Added AUDIO_PLAY_GAME_OVER_SOUND and AUDIO_FADE_MUSIC_ON_DEATH magic numbers
- MODDING: Biome - added parameters to control parallax bg look
- MODDING: MaterialAreaCheckerComponent - added always_check_fullness & count_min
- MODDING: IKLimbsAnimatorComponent - added is_limp,
- MODDING: GameStatsComponent - dont_do_logplayerkill
- MODDING: PhysicsShapeComponent - added material
- MODDING: AnimalAIComponent - added keep_state_alive_when_enabled (without this AnimalAI can get stuck in no state when Disabled & Enabled)
- MODDING: VegetationComponent - added random_flip_x_scale
- MODDING: CellData - added vegetation_random_flip_x_scale
- MODDING: CellData - added is_grass_hashed (for more natural look when grass grows on a long, flat horizontal surface)
- MODDING: PotionComponent - added custom_color_material
- MODDING/BUGFIX: Removing a game mode mod while there was an active run with it could make the game crash or behave weirdly
- MODDING/BUGFIX: Pressing "Install mods..." in mods menu would take one back to the main menu
- MODDING/BUGFIX: EntitySerializer couldn't always update entities on hot load changes
- MODDING/BUGFIX: Fixed a warning on game start if MaterialAreaChecker.material2 is not set
- MODDING/BUGFIX: ModSettingGetNextValue returned setting key if no next value is set for the setting (now returns nil)