a23e1eda8fccf173633ffc447b0c1ba830d8ba15 RELEASE NOTES - Apr 08 2024 *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)