This Mod is a Tribute to the Game ULTRAKILL by Arsi "Hakita" Patala.
It recreates its Weapons, Enemies and even Mechanics like parrying and movement tech
Автор: absolutelyaya80,4 тыс.296обновлён 10 авг. 2024 г.
This mod depicts overexaggerated, cartoony pixel blood and violence; if that's too mature for you, don't play it.
ULTRACRAFT
Mankind isDead.Blood is Fuel.Hellis Full.
This Mod is a Tribute to the Game ULTRAKILL by Arsi "Hakita" Patala.
Contents
7 Levels
A Soundtrack
Cybergrind
UltraHUD
Node//Block based Scripting System to make functional Levels like in Ultrakill
Blood (and a lot of it too!)
All Prologue and Limbo Enemies
19 Weapons (Revolver Variants + Slab, Shotgun Variants & Machine Sword, Nailgun Variants, Flamethrower, Soap, and an original one)
Parry and offhand Punch Mechanic
Ultrakill movement tech (enter High Velocity mode pressing V) (even including things like Wall-Jumps, Alternate Underwater Physics and Slam Storage)
A bunch of Blocks and Items
Lots Settings for Server/World configuration
Intro sequence and Custom Main Menu Backgrounds (toggleable)
Structures
Customizable Wings
Almost too Customizable Terminals
ULTRACRAFT Discord
Join our community-run Discord Server to connect with other fans of the mod and discover Modpacks and Servers using it! https://discord.gg/BWcnACAvHC
V2.2.0 Release Trailer
Other Information
The mod is fully Server compatible; for serverside config stuff gamerules are used. (they all start with an "ultra-" prefix to make them easier to find)
Some Items have hidden lore. This is usually Jokes or dev Comments. To see it, press F3+H to enable advanced tooltips.
Currently the mod isn't integrated into normal gameplay that much. Enemies don't spawn in the world, Some items aren't obtainable in survival, etc. I plan on changing that in a future update.
Feel free to put this mod in modpacks, but I wouldn't recommend doing so as it's a bit unstable and probably won't mesh well with many other mods lol
## Major Changes
- Added fragile Skulls
- Disappear when leaving a level to prevent keeping skulls from levels
- Level Changes
- limbo1 `Illusionary Paradise`
- Fixed an unprotected gap inbetween Room `Hall of Nails` and Room `Filthy Staircase`
- Fixed a bunch of Spawner Listeners `yaw` Attribute
- Replaced Skulls with fragile Skulls
- limbo2 `Halls of the Blameless`
- Fixed an unprotected gap in Room `Lava`
- Fixed an unprotected gap in Room `Hideous Court`
- Replaced Skulls with fragile Skulls
- Added some more Stained Glass Windows
- limbo3 `Clair de Lune`
- Fixed an unprotected gap right outside the Entrance Elevator
- Replaced Skulls with fragile Skulls
- Fixed Bucket Items being usable to both take and place fluids in protected Areas
- Fixed Flint and Steel being usable to place fire in protected Areas
- `Disable Flashy VFX` Setting is now disabled by default
- It was enabled by accident
- Fixed `punch_breakable` and `knuckle_breakable` block tags not working properly
- Knuckleblaster punches and blasts can now break cracked stone bricks
- Ultracraft Explosion Knockback will now always go upwards
- As in, it takes the absolute value of y; it still applies velocity on the x and z axis of course
- Fixed Magnet Slots not being freed up when a Magnet is removed
- Updated Russian Translation provided by closet748
## Commands
- Fixed `/ultracraft progression level grant-all` not unlocking Level `clair de lune`
- Fixed `/ultracraft progression <unlocked//obtained> grant-all` not unlocking `Hivel Wings`, `Blood Healing` and `UltraHUD`
- Added `/ultracraft progression <list> revoke-all <target>`
- Clears the given progression list on given targets (level unlocks are still global, so any target will affect everyone)
## Tweaks
- Buffed Knuckleblaster Explosion Damage (1.0 -> 2.0)
- Increased Style decay rate
## Minor Changes
- Fixed Shotgun Pump Animation
- Fixed the Counterfeit Music Disc not being in the REI Music Disc Item Group
## Resource Changes
- Reverted some unintended changes to the shotgun model in 2.2.0 (mainly animation related)
just a quick hotfix
## Major Changes
- Fixed Saw Shotgun and Jumpstart Nailgun being uncraftable in old worlds due to a logic error
- Weapon Variants now get automatically added to the corresponding Weapon Loadout when obtained
- V2 in clair de lune now skips her intro animation once the fight was started once in the current instance
## Edit Mode Changes
- Added special spawn `ultracraft:v2_nointro` to Spawner Listener
## Major Changes
- Added `Versus` by [Aavanitro](https://www.youtube.com/@Aavanitro) to OST
- Added `Counterfeit` by [ENNWAY](https://www.youtube.com/@ENNWAY) to OST
- Played in Limbo Freeroam Dimension as long as you're not in creative mode
- Added Level `Clair de Lune`
- Improved V2 Boss Fight
- Buffed Speed slightly
- Decreased Attack Cooldowns
- Fixed Wing Rendering
- Beam Projectiles aren't Sharpshooter hittable anymore
- Fixed Movement after Death issue
- Fixed V2 ascension issue
- Fixed V2 running off of ledges
- Fixed V2 trying to chase after dead and or creative//spectator targets
- Sort of fixed V2s Green Movement (fleeing)
- Added Sawed-On Shotgun
- Added Jumpstart Nailgun
- Added new ████
- Added Hank
- Added new varians of Stained Glass Windows
- Removed "glitched" Blockstate from Fake Leaves
- The Glitch visuals still appear, but it's random now
- Removed Proximity Blockstate from Cerberus Block
- Proximity triggered Cerberi now use the nbt tag `proximity` instead
- Added `intro` Attribute to level music data
- This allows setting an intro sound played before the actual track starts
- Added Flipped state to Cerberus Block
- Added `sacrificial` nbt tag to Pedestals
- Added Hyacinth
- Added Hyacinth patches to Limbo worldgen
- Added Butteflies :3
- Changes to old levels
- Replaced all Black Stained Glass with Darkness Blocks
- limbo1 `Illusionary Paradise`
- Fixed enemies not spawning again after dying in `room-62`
- Fixed the room where you obtain the red skull not actually being a room and thus not being protected
- Fixed red pedestal in `room-67` not being locked
- Fixed checkpoint in Room `filthyStaircase` being parented to Room `HallOfNails` instead
- Added Tutorial Message on Pedestals
- Added Hyacinth
- limbo2 `Halls of the Blameless`
- Fixed Checkpoint in Room `Funtain`
- Fixed Room `Funtain` resetting when left due to a misconfigured spawn trigger
- Fixed Checkpoint in Room `TheBigRed` being too big, allowing it to be triggered before finishing the preceeding Room (`Funtain`)
- Added Hyacinth
- Fixed Fall Damage not working correctly for Players
- Fixed Deadcoins not being shootable
- Added Fire Sky Block variant
- Added Luna Sky Block variant
- The old Night Sky Block variant now doesn't have a moon anymore
- Style doesn't decay anymore while time is frozen
- Added Malicious Statue Item
- Level Timer now pauses while time is frozen
- Fixed Level Timer Pausing not actually working at all lmao
- Added Item to place decorative Malicious Faces more easily
- Fixed sprint and sneak states tending to get stuck when enabling hivel mode
- Changed how slide and slam states are handled
- Changed how movement sounds are handled
- Reinforced Stained Glass windows don't need to be supported by blocks anymore once they've been placed successfully
- Improved Beam Projectiles
- Fixed Punchable Blocks (like Pedestals) not reaction to Main Hand punches in protected Areas
- Added `style` and `collision` Properties to Sky Blocks
- Regular Machineswords now only drop During Cybergrind
- Obtaining it so early on was throwing off the pacing a *lot*
- Fixed entities sometimes not being Removed when level instances get destroyed
- Coin fixes
- Players can now only deadcoin their own coins; meaning ricoshots won't be interrupted anymore by others throwing coins
- Fixed chained coins only doing damage as if 1 coin was hit
- Fixed logic error when checking whether nearby coins are valid targets
## Settings & Config
- Added `rememberVariant` Client Setting
- If disabled, switching off of a weapon will replace it with its first equipped variant. Enabled by default
- Moved `Repeat Intro` Setting to Debug Category
- This always was a debug setting for triggering the Intro to repeat as the name suggests
- If you want to disable the intro repeating after switching versions, use the `Don't show Intro after switching Versions` Setting
## Tweaks
- Reduced delay before Malicious Faces first attack
## Minor Changes
- Fixed Cerberus Cracking Sounds not playing
- Fixed the modification suppression message in limbo showing up when it shouldn't
- Fixed fake trees being able to generate on any block
- Moved photosensitivity warning to Intro Sequence
- Fixed Style resetting when taking damage equal to or greater than half of the players Health
- Fixed Malicious Face not being immune to explosions anymore
- Opening the UltraCredits Screen now stops main menu ambience sounds
- This fixes an issue where they'd stack when opening and closing the credits
- Fixed Nailgun alt-fire animation not being interrupted by rapid uses while not primary firing
- Fixed Weapons that weren't obtained yet, but aren't already equipped in the weapons loadout, being uncraftable
- Normally all weapons are equipped by default, the unobtained ones just were skipped when switching weapons; newly added weapons weren't in previously saved loadouts though, revealing this issue
- Added `sprite-override` Attribute to UltraRecipes
- Changed how Fishes are handled
- Fixed a minor issue with Malicious Faces rotation
- Kinda fixed transparency layering issues with visual effects (only works with `Fabulous!` graphics enabled)
- Fixed an issue that caused the music in limbo1 to switch back to `Mirage of Paradise` when it shouldn't
- Added Hyacinth and//or Butterflies to old Limbo Levels
- Music Sounds now get streamed, meaning they cause less lag
- Progression Unlock Logic now uses the items UltraRecipe unlock list instead of being hard-coded
- Progression Unlock checks now take Unlock Logic into account
- That means, as long as you have obtained for example the Piercer Revolver, the Marksman and Sharpshooter are unlocked
- Added Darkness Block
- Stained Glass Windows in Levels no longer drop when broken
- Fixed Level Music (half) restarting when changing volume
- Only the Version that isn't currently primarily playing is reset
- Instead of locking Players out of the Patterns menu completely, the `Disable Flashy VFX` Setting now only removes animated patterns from there
- Previously Wing Overlays would be inaccessible due to that
- Updated LOLCAT translation provided by Doggochleb (up to 2.1.3)
- Updated Russian translation provided by closet748 (up to RIGHT NOW)
- Improved UltraCredits Screen
- Added scrolling
- Fixed text overflow
- Changed Texture to be pure white instead of very light blue to make it consistent with the rest of the text
- Fixed an issue with Greater Filth enraging
- Reduced volume of Blood-Heal noise from per-tick damage
## Edit Mode Changes
- Changes to Spawn Listeners
- Added `noAI` Attribute
- Added `onGround` Attribute
- Tries to spawn the entity on the first Solid Block directly below the spawner instead of at its Blocks Center position
- If there's no suitable ground block within 64 Blocks, the entity will just be spawned at the Blocks Position anyways
- Removed Special Spawn Identifier `ultracraft:dummy`
- Added `knockbackOnly` Attribute ot explosion listeners
- Enabling this, will make the explosion listeners throw entities within its `explosionRadius` away from it
- The velocity is calculated using `(1f - (distance(entity, block) / explosionRadius)) * explosionDamage`
- This is used to launch V2 after spawning
- Added Timer Listener
- Starts//Stops the Timer for all players in its parent room when the flag bound to it is activated
- This is used to stop the Level Timer after V2 has been defeated
- Added Unlock Check Trigger
- Sets the bound flag based on whether enough players with a specific Progression Entry are within the Blocks Area.
- The Attributes `checkUnlocked` and `checkObtained` define whether the target is required to have unlocked and//or obtained the progression entry
- This is used to ensure the Knuckleblaster is picked up before leaving limbo3 `Clair de Lune`
## Resource Changes
- Changed Shotgun UVs(moved smoke to make room for the chainsaw)
## Major Changes
- Added an OST composed by various Ultrakill Fan//UST Composers
- Prelude 1 - `Beyond the Fire` by [Triage](https://www.youtube.com/@triageGremlin)
- Prelude 2 - `Inferno` by [Efefski](https://www.youtube.com/@efefski)
- Prelude 3 - `Wardens of Hell` by [Psykomatic](https://www.youtube.com/@psykomatic0)
- Limbo 1 (intro) - `Mirage of Paradise` by [Oxblood](https://www.youtube.com/@OxbloodXIX)
- Limbo 1 - `Truth of the Broken Screen` by [Oxblood](https://www.youtube.com/@OxbloodXIX)
- Limbo 2 - `Blameless` by [Efefski](https://www.youtube.com/@efefski)
- Cybergrind - `Infinite` by [Efefski](https://www.youtube.com/@efefski)
- And more Tracks to come!! (very exciting)
- All Tracks have Music disks for both their calm and combat version (if applicable)
- These currently cannot be obtained in survival. I'll think of something for that.
- Everyone involved has done a fantastic Job and were a joy to work with. If you like their work, please consider supporting them!
- Remade limbo2
- Made slight changes to limbo1
- Fixed a soft-lock in prelude1
- Fixed the Level Unlock Trigger in prelude1 being too big
- Major Improvements to the Music System
- When the Game is paused or the local player is dead, the music will lower in pitch and volume
- Combat Music is now triggered by all Hostile entities, not just ultracraft enemies
- It's now possible to set multiple Tracks per Level
- Added a Popup that shows up whenever a new Track starts playing, and it has sufficient metadata
- It says the Name and Author of the Track along with a neat colored stripe
- To add credit pop-ups for non-ultracraft music, make a resourcepack containing a `music.json` file in the same directory that the `sounds.json` would go in
- Music will fade out when the Level is finished (or in other words, when a Force Travel Trigger is entered)
- For more info on the specifics, refer to the `Resource Changes` Segment
- Added Music to Cybergrind
- You can put your own cybergrind playlist in the game using a Resourcepack that replaces the sound `ultracraft:music.cybergrind`
- Added Support for Custom Layers // Level Collections using Datapacks
- Rage is now a Potion Effect
- Doesn't alter any stats by itself
- Makes any living entity have the rage halo
- Makes any living entity red
- except for those in the entity type tag `ultracraft:no_rage_tint`
- If applicable, Enemies Enraged Behavior will be used while having the Effect, regardless of other requirements like Health
- Added Emissive Layer to Hideous Mass Enraged and Dying Textures
- Added separate Emissive Texture for Enraged Swordsmachine
- Changed Pixel [42,45] of the Uncracked Cerberus Entity Texture from #7c7c7c to #7d7d7d
- Added New Progression Unlock Items
- Feedbacker - Unlocks the Feedbacker Arm
- Hivel Wings - Unlocks Ability to toggle High Velocity Mode
- Absorbant Plating - Unlocks Blood Healing Ability
- All of these Items are unobtainable in Survival per default; They were just added for map and modpack creators pretty much
- If Trinkets is installed, these Items lose their Progression Unlock Functionality and are used as equippable Trinkets instead.
- If the Gamerule `ultra-startAsV1` is enabled, then the basic mechanics always work regardless of whether the Trinkets are equipped or not!
- Added Trinkets Support (optional)
- This is mainly for Modpack Creators that want more control over ultracraft core mechanic unlocking//progression.
- Added Fancy Carpet Variants in all Colors
- Fixed players that kept their inventory due to a checkpoint still dropping XP
- Added System that automatically detects whether a damage type is applied every tick
- This only affects IFrames in Hivel Mode
- The List of detected Damage Types isn't saved; it'll be cleared when the server//world is closed
- Damage Types that were detected as per tick will use iframes as if the player wasn't in hivel
- Schisms can now be interrupted by punching them with the feedbacker while they're firing; this kills them instantly
- Fixed the `carry on` Mod allowing picking up and placing blocks within modification suppressed areas
- Edit Mode Blocks can no longer be picked up using the `carry on` Mod
- Changed how respawning is handled again
- Fixed the `You're in Grave Danger` Mod still clearing the Inventory and placing a Grave for Players in Levels or with an active Checkpoint
- When being rescued from a Level (which shouldn't normally be necessary), you now get teleported to your own Spawn Point instead of World Spawn
- Added Fake Leaves Block
- Fixed Swordsmachine seething with rage so hard that it doesn't actually do anything
- Replaced all leaves and.. "leaves" in limbo dimension and structures belonging there with Fake Leaves
- This change doesn't change old worlds retrospectively ofc
- Replaced all Levels kill planes with the new Edit Mode Abyss Triggers
- aside from the abyss at the end of prelude3 because funi
- Fixed Tundra//Agony stun animation not playing
- Fixed Thrown Machineswords not saving Sword Item data
- Fixed Swordsmachine getting stuck in a interruptible state when interrupted
## Settings & Config
- Added Server Config `DisableModificationSuppression` which allows disabling Edit Mode Room Modification Suppression; Default is `false`
- Or in other Words, it lets you break and place Blocks in otherwise protected Areas, like Levels
- Added Server Config `ProtectNature` which disables natural blocks like flowers and grass to be broken by ultracraft explosions; Default is `false`
- Changed default value for `UnlockCustomLevels` Server Config to `false`
- If your Server//World is set to the old default value, the config will update to reflect this change automatically upon loading next.
- Added a new Gamerule `ultra-startAsV1`; Default is `true`
- Whether Hivel Wings, Blood Healing and the Feedbacker are unlocked per default
- This Gamerule can be used in conjunction with the new Progression Unlock Items to add more progression to maps//modpacks
- Added Client Setting `armSkinFirstPerson`; Default is `true`
- Whether the First Person offhand arm skin is replaced by that of the equipped ultracraft arm
- Added Client Setting `onlyShowarmWhilePunching`; Default is `false`
- Whether the First Person offhand arm is always visible when holding an item and an ultracraft arm is equipped
- Added Client Setting `hideVanillaHotbar`; Default is `false`
- Whether the Vanilla Hotbar is hidden; all other HUD elements stay.
- Due to an Internal name change, your Third Person ultracraft Arm Skin Setting might be reset to its default value
## Commands
- Added new Debug Command `/ultracraft debug clearLikelyPerTickDamageTypes`
- Clears the List of automatically identified per-tick damage types
## Tweaks
- Nerfed Nailgun Damage a little
- Heatsink Nails against Enemies (0.3 -> 0.25)
- Heatsink Nails against Players (0.3 -> 0.1875)
- Regular Nails against Players (0.3 -> 0.225)
## Minor Changes
- Crops now break from slamming//explosions
- Slam block breaking area was extended upwards by one Block
- Made Bright Panels actually bright (they now emit Light Level 6)
- Removed Clair de Lune Music Disc from V2s Loot Table
- Fixed Wing Customization Screen messing up FoV Effect Scale Setting
- Progression Unlock Items now don't get consumed upon use while in creative
- Progression Unlock Items now use Ultracraft Titles instead of Vanilla ones
- Knuckleblaster Unlcok Item is no longer Stackable
- Edit Mode HUD now renders behind chat
- Fancy Carpet is no longer Waterloggable
- Fancy Carpet is no longer Flammable
- Added Band-Aid fix for sky block textures getting messed up when using Sodium
- Shaders still make the skybox invisible tho unfortunately
- Finally added some missing Icons to the `/ultracraft config` screen
- Changed Interruptable Charge rendering
- Changed Schism Interruption-Explosion positioning slightly
- Changed Stray Interruption-Explosion positioning slightly
- Added Dispenser Behavior to Blood Buckets
- You'd think that stuff would just kinda work automatically, but I guess not
- Fancy Carpet now doesn't break when placement conditions aren't met anymore
- Fancy Carpet can now be placed on any Block that isn't Air
- Machinesword is no longer a two-handed weapon when using Better Combat
- Hideous Mass doesn't contribute to the Music State while it's hidden
## Edit Mode Changes
- Rooms can now be Parented to Rooms (yay, recursion)
- Added `/edit config recursiveRooms`, which toggles whether Rooms you place while having another Room focused, will be parented to the selected Room or just be placed as new Root.
- Focusing a Room that's part of a Room Hierarchy, the entire Hierarchy is rendered
- Added `/edit config showRelations`, which toggles whether colored lines between related Rooms are shown (default: true)
- Rooms will tick regardless of whether their parent room is active (or in other words, the hierarchy doesn't affect Rooms Ticking)
- Recoursive Rooms are disabled by default for convenience
- Changed the Edit Mode Renderer a lot to make rendering the Room Hierarchies easier//possible without more bloat
- Added new Edit Mode Blocks to control Music in Levels
- Music Listener
- Changes the currently playing Soundtrack Key of everyone in the Room while the bound **local** flag activates
- If `stopOnDisable` is enabled, the currently playing Soundtrack Key of Players will be cleared (meaning the music stops) upon the bound **local** flag deactivating.
- Music Trigger
- Changes the currently playing Soundtrack Key of Players that enter its Area IF the bound **local** flag is active
- If the Track Key is already playing for the Player, it won't do anything
- To stop the currently playing music, either set the key to an unused value, or leave it empty
- When a Track Switches, the last one will fade out and the next one will Fade in to make for a smooth transition
- Added Attribute `forceDestination` to ForceTravelTriggers
- If this value is set, the player won't get a choice on where they travel
- If `openRanking` is enabled, they'll still be shown the Ranking Screen; however, the next Level button will always lead to the forced Destination and the Select Level Button is Disabled
- If `openRanking` is disabled, they'll travel to the forced Destination immediately after the Travel Screen intro Animation finished
- It takes an Identifier being either a level or layer dimension id (in other words a valid destination) and its Default Value is `none`
- The Default value can be restored by setting it to any of the following: [`null`, `none`, `default`]
- Improved Edit Mode Block removal handling
- In other words, all children // the parent of a broken Block now immediately know that it was removed
- Added new Edit Mode Block "Abyss"
- Acts as a Trigger that applies damage and teleports players that enter its Area to its Block Position (or rather the first solid Block below it (in a range of 16 Blocks))
## Resource Changes
- The Icon for the Sound Listener Mapping Block is now used for Music Listeners instead
- Changed how Music in the Level Metadata works
- You can now set multiple Tracks for the same Level
- Their Key (value in quotes `""` before the colon `:`) will be their Track ID
- Any String works as a track Key. If you set the key to be `default`, it will start playing immediately upon entering the level
- Added `title`, `author` and `color` Fields
- These will be used for a pop-up that shows up whenever the Track starts playing, IF an author is set
- Added `combat-threshold` Field
- The music will automatically switch to the combat version if there are more enemies than the combat-threshold around the local player
- Default is 0, so if there's 1 Enemy, the Combat track variant will play
- Added `no-calmdown` Field
- Setting this to true makes it so that once the combat track is playing, it won't go back to the calm track anymore
- This is used in Limbo3 for example
- Added `unlocked` Field to Level Metadata
- This defines whether a Level should always be unlocked. The default is `false`
- Changed the order Clair de Lunes Music disc description to be more uniform with minecraft (it's now `Author - Title` and not the other way around)
- Added `fragile_nature` Block Tag
- Fragile Plants like Flowers and Leaves were separated into this tag to allow for nature to be protected from ultracarnage using the new `ProtectNature` Server Config
- Crops were added to the `fragile_nature` Block Tag
- Translation Keys for Layer Buttons changed (`screen.ultracraft.travel.layer<index>` -> `layer.ultracraft.<layer-name>`)
- Clair de Lune (Music Disc) Identifier changed (`ultracraft:clair_de_lune` -> `ultracraft:disc/clair_de_lune`)
- Changed Progression Item Tooltip color (`item.ultracraft.progression-item.lore` | §8 -> §7)
- Renamed Fancy Carpet Block (`block.ultracraft.carpet` | `Fancy Carpet` -> `Blue Fancy Carpet`)
- Added missing translation key for Server-Join-Info (`message.ultracraft.parry-chaining`)
- Fixed typo in translation key for Server-Join-Info (`message.ultracraft.fall-drowning` -> `message.ultracraft.drowning`)
- Changed Level Rescue Messages
- Fixed Culling issue in Pedestal Model
This isn't a full update; 2.1.3 isn't fully ready yet.. Until it is, happy pride!
## Major Changes
- Added Wing Overlays
- Wing Overlays are like Wing re-textures. They aren't recolorable.
- Added Pride themed Wing overlays
- Happy Pride Month!
- You don't need to be a Supporter to use these. Pride should never have a price tag
- Please let me know if you feel like more should be added
- Inverted Scrolling on Wing Customization Screen
- Added Unique Textures for almost every ultracraft Spawn Egg
- Fixed some nullref issues when setting Mapping Block Attributes to values that fail parsing
## Minor Changes
- Changed how Splash Texts work internally to allow for them being translated
- Changed `Map Level Unlock Listener` icon and name back because I have the Stupid
- Added `rankingTitleSuffix` Attribute to Force Travel Trigger Mapping Blocks
- If this is enabled, the title of the ranking screen will have `.title` suffixed to it
- In the built-in Levels this is used to display a different Translation Key on the Ranking Screen than on the Travel Screen more easily.
- Fixed a broken edit mode feedback message (`Nothing focused with key '%s'`)
- Fixed parrying your own projectiles healing you
- Weapon Descriptions are now only shown either Shift Key is held
- Added Loot Tables for Blocks that were missed
- Fixed Creative Players defaulting to flying when entering a world
- Fixed `/edit reparent` desyncing the user
another mini bug fix patch; sort of a 2.1.2 Part 2
## Major Changes
- Fixed some crashes
- Fixed an Issue where out of bounds Players would wouldn't be removed from Cybergrinds, causing desyncs
- and they'd be counted as out of bounds when just walking into the arena walls
## Tweaks
- Fixed Malicious Face Nail Damage Modifier (1x -> 1.5x)
## Minor Changes
- Fixed Level Unlock Trigger Icon having an Question Mark as if it were a Listener
- Also fixed it being sorted into the Listener Items in the Creative Inventory
a quick mini bug fix patch
## Major Changes
- Fixed Carpet mod incompatibility
- Reduced chance of mixin conflicts by replacing all `ModifyConstant`s with `ModifyExpressionValue`s
- Fixed possible Nullref crash in Pause Menu
## Minor Changes
- Updated Russian translation
- Provided by closet748
Mainly fixing annoying bugs from the initial release
## Major Changes
- Fixed Overheat Nailgun being uncraftable
- Fixed rare client crash caused by style bonus nullref
- Fixed the last target of a piercing shot not actually taking the damage of all remaining pierces due to I-Frames
- Fixed Hell Bullets doing vanilla thrown projectile damage, which scales with difficulty
- Fixed Persistent Projectiles being parriable when stuck in ground
- Fixed Slam storage.. storage(?) issue
- Fixed alternate revolver hammer pull not working like in the original
- Hopefully fixed issue with enemies in levels not despawning properly
- If it does work, that should also fix stained glass windows sometimes staying behind when a level instance gets destroyed
- Improved Drone parrying
- Improvements to Levels
- All Levels Entrance Elevator door trigger has been expanded
- All Level Unlock Triggers have been expanded
- With some rare exceptions, none of the Rooms in Levels should have Reset Timers anymore
- Prelude2 // Straight to Hell
- Expanded first spawn trigger in `BigOutdoors` Room
- Changed `mainRoom` wave 2 Schism placement to guide players towards the right door more naturally
- Limbo1 // Illusionary Paradise
- Fixed softlock in `room-68`
- Moved spawn trigger in `room-69` slightly
- Fixed one of the doors in `room-69` not locking properly
- Made decorative Maurice in the room with the red skull more visible
- Limbo2 // Halls of the Blameless
- Nailgun Pedestal now gets removed after obtaining the Nailgun to reduce confusion
- Made `Odd5ShapedRoom`s Spawn Trigger harder to skip accidentally
- Reduced delay before second wave in `FirstRoomIEverMade`
- Added a safeguard that fixes an edit mode desync preventing focusing of blocks
- Hopefully fixed or at least improved door desyncing issue
- Fixed Coin Splitting
- Hitscans can no longer hit dead entities
- Fixed all Mod Explosions doing 2.25x the damage they were supposed to
- Fixed Mod Explosion damage boost towards non-mod entities also affecting Players
- Fixed Mod Explosion damage scaling with difficulty
- Fixed double//triple//multi kill style bonuses not working correctly
- Fixed Style Bonus Weapon Staleness still being used when only one Weapon is held//equipped
- Fixed a rare crash involving enemies in levels dying
- Fixed alternative cybergrind loot tables for enemies being messed up, resulting in nothing being dropped at all
- Made getting locked out of the `destiny-chapel` Limbo Challenge Structure harder
- Hopefully fixed Structures and Levels being breakable when they shouldn't be
- Fixed typo in Triple Kill
- Fixed Main Menu Crashing the game when using Vivecraft
- Added Travel Button to Pause Screen while in a level
- Added Drone dodging behavior back
- Fixed Hideous Mass Harpoon Velocity being way too high because I forgor to normalize a vector
- Fixed V2s Arm Progression Item Drop (or any that are set to not give actually an item really) not working properly
- Room Mapping Blocks can now be set to not use the reset timer using `/edit attribute set room resetCooldown never`
- Fixed Progression Item Entities being.. pick-uppable..? multiple times
- Fixed Swordsmachine (2nd phase only) spawning with too little health
- Fixed Swordsmachine not dropping a Shotgun Progression Item when mob loot is disabled
- Fixed Vanilla and Progression Item Entities being destroyed by slamming on them
- Fixed ████████ not being stackable
- Fixed Sneak and Sprint state sort of getting stuck server side when enabling hivel mode
- Offhand punches now get disabled when no arm is unlocked (feedbacker is still unlocked by default)
- Punching while having a locked arm equipped, now switches to the first unlocked one automatically
## Tweaks
- Reduced Hell Bullet damage (6 -> 5)
- Made Interrupting Swordsmachines Melee Attacks easier
- Made Coin Splitting easier
- Made Hideous Mass Enrage faster and reduced all of its Attacks Cooldowns
- Reduced Malicious Face Attack Cooldown
- Slightly improved Overpump Knockback
## Minor Changes
- Finally removed the Console spam caused by datafixers missing from entities
- Updated Russian Translation
- Thanks to closet748, it's no longer scrapped
- Added `debug` nbt tag to mod enemies
- setting it to true does debug stuff with the enemy
- currently it only makes melee interruptable enemies glow while they are interruptable
- Changed draw order of Style Bonuses
- Fixed a small bit of weirdness with weapon loadouts
- Added more Hell Mass to Demons
- Travelling between dimensions now cancels slams
- Fixed Limbo Decal Structure `gateway2` having a stripe of red terracotta
- Terminals without Owner can no longer be customized by any Player
- Fixed Hideous Mass T-Posing under specific conditions after an Attack animation
- no more funi flesh doggo :pensive:
## Resource Changes
- Fixed minor issue with `ultracraft:bright_panel` blockstate//model
## Major Changes
- Added Prelude Structure to Overworld
- Complete this Dungeon to obtain a Teleporter that can be used to travel to other Layers
- Added Cybergrind
- Wave-Based survival mini-game; face off against hordes of enemies
- Endless Cybergrind along with its own dimension and a morphing arena is planned to be added in the future as well
- Revolver, Shotgun and Nailgun Recipes are no longer unlocked per default (see point below)
- Added Playable Levels
- These Levels are only themed around the different Layers; they're by no means recreations of the Original Levels
- Throughout the Levels, Players are taught the new mechanics, enemies and will unlock new Weapons
- You will obtain the Piercer Revolver at the beginning of the first Prelude Level for Instance
- At the end of a Level, your performance will be ranked in 3 Categories; Time, Kills and Style
- If you beat a level without dying and have an S-Rank in all 3 Ctagories, you can put your run in the ultracraft Discords P-Rank Forum channel! (Each level has its own post in which you'd comment your best times)
- Using a datapack, you can make and add Custom Levels of your own! If you publish one, we'd love to put it in the ultracraft Discord to make it easy to discover for other Players
- Added Overheat Nailgun
- Primary fire of all Nailgun variants now builds up "heat"
- The higher the heat, the slower the fire rate (this one only applies to the Overheat Nailgun)
- Alt fire uses a "heatsink", firing 5 nails and consuming 5 "heat" per tick until heat is used up.
- Added Slab Revolvers
- An Alternate Version for each revolver
- Slower, but does more damage and pierces up to 1 weak enemy
- Have a Hammer that has to be pulled back before firing; if the variant is switched before this happens, it'll be pulled back when you switch back to that weapon.
- Piercer pierces more
- Marksman coin splits reset all Hammers and hit a single target multiple times instead of multiple
- Sharpshooter has only 1 Charge, but spins at full speed instantly
- Added Limbo Dimension
- Custom Worldgen inspired by Limbo
- Pre-placed Structures with Scripted Events and Progression
- Activate all 4 Slab Blocks to obtain the Slab Revolver
- Other Random Limbo Themed Structures
- Instead of random mob spawning, every night there's a chance for a Cybergrind to start
- The Amount of Waves that need to be beaten (and the amount // strength of enemies) depends on your worlds difficulty and number of Participants
- Cybergrind can be configured using a config file
- "Why no random mob spawning??" trust me, it's *really* not fun.
- Removed cooldown caused by stopping to use the Flamethrower
- Added Slab Blocks
- Right click // Punch to toggle; alternatively, use a redstone signal of level 15
- Emits redstone Signal equal to it's displayed number when active
- Power with a redstone signal of <=10 to change its displayed number
- Malicious Face can now be summoned as a non-decaying corpse using `{decorative: 1b}`
- Added Screenshake
- Can be turned off in the Client Settings
- Fixed Keybind conflicts making only one action mapped to that key execute
- Not even my fault, like I'm fixing an issue on Mojangs end here
- Rewrote Hivel Movement
- no more hard coded values; you can customize everything in detail using a config file.
- Greater Filth will not enrage anymore without a Target
- Added Fancy Carpet Block
- Connects to other fancy carpet blocks directly next to it
- Added Flowerbed Block
- Placed like snow layers, each layer having different flowers
- If an entity falls more than 0.5 Blocks, they fall through Flowerbeds; this can be used to hide secrets or as a parcour gimmick
- Added Customizeable Loadouts
- Check the Weapons Tab on Terminals for a new Button in the bottom left
- Improved Sounds for Shotguns by using Sound Keyframes in their animations
- Added a new Fish
- Added new Weapon Info HUD element when holding Nailguns
- Added Minecart Parries
- Fucked around with Coin Physics a lot; they're probably as good as they'll get now
- Fixed Tundra//Agony Spawn Egg crashing Servers when used in Hell Spawners
- Remodeled Schism
- the old model was trash and I knew I could do better
- Visually Improved Cerberus
- Ball//Apple now has an aura and is emissive
- Changed colors to be closer to the Vanilla Stone palette
- Fixed Streetcleaners dodging upwards when shot from below
- Fixed Backtanks eating projectiles
- Added "Edit Mode"
- A Component Based System to basically make working Ultrakill levels
- Being in edit mode allows you to fly with noClip, but still place blocks. It's much faster than normal creative flight and can be further adjusted.
- Edit mode lets you see known mapping blocks; to search for them, use `/edit ping`.
- Mapping Blocks themselves have no rendering (with the only exception being checkpoints) and aren't interactable outside of edit mode.
- Each Component is its own Block and has an Area (with some exceptions)
- This System is not exactly designed for accessibility; I will make a tutorial on it in the near future, but I won't teach it to people individually.
- Flags
- There's "Local" and "Global" Flags
- **Local** Flags are stored in a room and can only be true or false
- **Global** Flags are stored in a world and can be any 16-bit integer
- Room Blocks
- Levels are divided into rooms
- these blocks can be seen as the root, with all other components being children of a Room
- Only when a Player is in the Rooms Area, the child blocks will tick
- Resets all **local** Flags and Child Blocks when empty of Players for a certain duration or the last player in the room dies and respawns at a Child Checkpoint Block
- Can be set to suppress Block breaking//placing within its area (actually, that's enabled by default)
- Trigger Blocks
- Their Area detects Entities and sets a bound **local** Flag to true or false depending on if something of the right type is in them
- There are Normal//Player Triggers and Enemy Triggers
- Triggers can be set to not deactivate automatically, making them activate only once until the room resets
- Triggers can be set to have an activation period, requiring something to stay in the trigger for a certain amount of time to actually set the bound **local** Flag; same for deactivating
- Progression Triggers grant a progression entry and optionally give an item as well once entered by a player; if the progression entry is already unlocked//obtained, it won't give an item
- Redstone Receivers set a **local** Flag when their redstone power state changes
- Timer Triggers start or stop a Players Timer; only works inside Levels
- Force Travel Triggers open the Travel Screen for a Player that enters it; the close button is removed though, forcing them to travel
- Title Triggers display a title for Players that move into it; if a **local** flag is bound, it'll only display a title if the flag is enabled
- Damage Triggers damage entities that enter them for a given amount using a given damage type
- Global Redstone Receivers set a **global** Flag (stored in world) to one of two values, depending on whether it is powered by redstone or not
- Listener Blocks
- Listen for the state of the bound **local** Flag being changed and performs an action based on its type
- All Listeners can have a set delay for their action; if the bound **local** flag is deactivated again before the activation cooldown is run out, it'll be cancelled
- Door Listeners fill their area with a chosen Block Type when activated; Same for deactivating. When the door closes, it will only fill blocks of the "open" block-type in it's area, opening works the opposite way; this means doorframes and stuff stay unaffected as long as they're not of either of the door block's block types
- Spawn Listeners spawn a chosen mob when activated and if it's still alive when deactivated, despawns it again
- Redstone Listeners give off a redstone Signal of a chosen duration when activated
- Explosion Listeners perform an explosion of chosen radius and damage when activated. These do not Break blocks, but could be used in conjunction with a Door Block to get the same effect
- Sound Listeners play a sound when activated
- Level Unlock Listeners unlock a Level globally (for the entire Server)
- Cybergrind Listeners trigger a Cybergrind once the bound **local** flag is enabled; It sets a separate **local** Flag upon finishing the Cybergrind (if it is won)
- Light Listeners give off a set light level when the bound **local** flag is enabled
- Title Listeners display a title for every Player in the parent Rooms Area when the bound **local** flag is enabled.
- Global Redstone Listeners listen for a **global** Flag (stored in world); otherwise the same as normal Redstone Listeners
- Global Title Listeners display a title for every Player in that world when a **global** Flag is set to a specific value
- Checkpoints
- Checkpoints tick regardless of if the room is ative; placing their Block and Area outside the Rooms is recommended to make room resets work properly
- Checkpoints set the Spawnpoint of a player that enters its area to the position of the Block itself.
- If a player dies and respawns at a Checkpoint, the parent Room will check if it's empty of Players; if it is, it'll force reset
- The Spawnpoint Text will be oriented depending on which side of the area is longer
- I'd love to expand on this System in the future; some ideas I already have will take longer to make than I'm willing to further delay this update though
- Made Flesh Blocks break faster using Hoes
- Shotgun Pellets are now Parriable
- Added Large Animated Titles
- Added Text Box Titles
- Punching//Blasting a Player that is using a Shield with a Knuckleblaster, will now disable their Shield and give the `+ GUARD BREAK` style bonus
- Streetcleaners now actually pathfind to their target
- Fixed a Bug that made hugging swordsmachine plushies not work properly; you can now hug them again by putting them in your offhand :D
- Charged shots no longer split from coins
- Hitscans now actually get reflected off of Hideous Mass' Shielded Parts
- Added a fuck ton of Prelude Blocks
- Added separate keybinds for punching with each arm
- Added Credits Screen
- Only selected Projectiles will now be knocked back by explosions (See Entity Type Tag `#ultracraft:explosion_affected_projectiles`)
- Hell Bullets knocked back by explosions can now actually hit entities of their owners type
- Fixed Malicious Faces Beam attack being **visually** offset as if it was a hitscan from a Player
- Fixed Exploding Hitscans not actually exploding if they hit an Entity and not a Block
- Filth Attacks are now interrupted if they leave the ground
- Made it impossible to Maurice yourself;
- while it was funi, since the mauricing radius was increased (see tweaks section) it became too easy and thus annoying
- You can still Maurice other Players tho ofc
- Slightly Changed how parrying works yet again
- The Punch animation triggered by throwing coins using a marksman can now be interrupted, making coin punching less clunky
- Filths and Drones no longer randomly wander around
- All Enemies now ignore Visibility when targeting Players
- Shooting Core Ejects with a Hitscan now actually increases the damage of the caused explosion
- Swordsmachines different melee Attacks now actually do different damage amounts
- Changed how Progression Item Entities work
- They work like client side Item Entities. Every Player can pick them up individually, as long as it exists on the Server
- They can be set to either only give a progression entry, or also the item itself
- If the progression Entry not yet obtained but any Weapon of the unlocked Weapons Type is held, it'll unlock the progression entry but will not give an Item
- If the progression Entry is already obtained AND any Weapon of the unlocked Weapons Type is already held, the item entity will disappear for that Client
- Previously these would disappear from the client if they just had the set progression entry already; This Behavior could soft-lock Players in Prelude2, and potentially other future levels
- Additionally, the item pickup animation works correctly for these now as well
- Added Unlock Logic to Progression System
- **obtaining** a progression entry that would **unlock** other progression entries, will now automatically do so
- for example, **obtaining** a Piercer Revolver through any method (crafting, commands, progression triggers, whatever) will unlock the recipes for the Marksman and Sharpshooter Revolvers
- Added initial attack cooldown to Cancerous Rodent
- Cancerous Rodent is now immune to Cancer and Fire Damage
- Fixed Cerberus Distance//Attack Priorities being flipped
## Settings & Config
- Removed all gamerules
- Added Option to disable Screenshake
- Added new Config System
- `/ultracraft config` still works, but all hivel related entries have been moved.
- for now Hivel Config has to be done via the config file named `hivel.properties`; edit at your own risk (I mean, have fun ig; not like anything terrible could happen. If you fuck something up, delete the file and the defaults will be restored)
- Config files are found under `saves/<world>/ultracraft/`
- Added Config to allow for the overpump self-damage being dodgeable (default: `false`)
- Added Config for how much damage the Feedbacker and Knuckleblaster do
- Added Config for Parry and Coin Punch range (I'll make icons for these 2 later, this is kind of a last minute thing lmao)
## Commands
- `/ultrawhitelist` can now be used by non-players
- Fixed time unfreeze command not clearing the time freeze VFX on Clients
- Added Command to trigger Style Bonuses `/ultracraft style`
- Added Command to trigger large and box titles `/ultracraft title`
- Added `/edit` to perform most edit mode interactions
- Added `level` list to progression command; this list is effective globally//server-wide!
- Added Debug Commands for level instancing//destructing level instances
- DO NOT USE THESE!!!
- I mean, you could if you want to, but they could crash servers.
- Added Debug Commands to reset best level completion times//ranks
- fixed all Skewer Type Projectiles dealing a magnets impact damage on top of their normal damage
- Magnets no longer deal damage on impact at all
## Tweaks
- Buffed overpump damage towards others (10 Dmg -> 15 Dmg)
- Hitscans don't cause Thorn Damage from Guardians anymore
- Player Armor Thorns still do damage though to stay consistent with Minecrafts inconsistent logic
- Reduced Filths Health (2 -> 1)
- Tweaked parry area yet again
- Successful Parries now do full heals
- Successful Parries now make you unhittable for projectiles for a few ticks
- Increased Blood Heal Radius (2 -> 4 Blocks)
- Decreased Nail Blood Heal Amount (x0.25)
- Increased Mauricing Radius (+0.5)
- Buffed Strength of Knockback Projectiles get from Mod Explosions (x1.1)
- Buffed Sharpshooter Projectile Explosion Radius (5.0 -> 7.5)
- Malicious Face Buff
- Beam Attack is now much Quicker to be more accurate to the original timing (100 -> 70 ticks)
- Slightly Buffed movement Speed (0.4 -> 0.5)
- Increased Parry Range (0.9 -> 3.0)
- Increased Coin Punch Range (0.9 -> 4.0)
- Players are now exempt from damage boost (mod damage is multiplied by 2.5 towards non-mod entities, with some exceptions)
- Nerfed Cerberus to be closer to the Original
- Nerfed Ram Damage (8 -> 5)
- Nerfed Ball Damage (8 -> 7)
- Nerfed Boss Health (180 -> 160)
- Buffed Shockwave Growth Rate, ironically making it easier to dodge (0.25 -> 0.35)
- Tweaked Hideous Mass to be closer to the Original
- Slam Shockwave Damage (3 -> 6)
- Clap Shockwave Damage (2 -> 4)
- Harpoon Damage (3.5 -> 5) **(effective for Hideous Skewer as well)**
- Mortar Damage (15 -> 12)
- Mortar Damage Falloff (4 -> 6)
- Mortar Explosion Radius (4 -> 2.5)
- Reduced un-hide radius (16 -> 10)
- Tweaked Swordsmachine to be closer to the Original
- Boss Health (125 -> 250)
- Shotgun Pellet Count (16 -> 10)
- Combo Slash Damage (8 -> 5)
- Spin (8 -> 6)
- Tweaked Agony//Tundra to be closer to the Original
- Health (90 -> 100)
- Tweaked Drone to be closer to the Original
- Health (2 -> 4)
- Explosion Damage (6 -> 7)
- Tweaked Streetcleaner to be closer to the Original
- Eplosion Damage (8 -> 10)
- Tweaked a bunch of weapons to account for the Enemy Health Scaling (can't believe I forgor to do that)
- Revolvers
- Primary (1 -> 2)
- Sharpshooter alt (3 -> 2)
- All Shotguns
- Proj-Boost Explosion Damage (3.5 -> 7)
- Proj-Boost Explosion Falloff (2.3 -> 4.6)
- Core Eject Shotgun
- Core Eject Explosion Damage (10 -> 7)
- Core Eject Explosion Damage Falloff (4 -> 4.6)
- Core Eject Snipe Explosion Damage (10 -> 14)
- Core Eject Snipe Explosion Damage Falloff (4 -> 9.2)
- Pump Shotgun
- 1 Pump Pellets (15 -> 16)
- 2 Pump Pellets (20 -> 24)
- Overpump Explosion Damage (15 -> 20)
- Overpump Explosion Damage Falloff (0 -> 16.6)
- Pumps now actually decrease accuracy
- Made sharpshooter cheaper
- Reduced Core Eject alt fire charge time (30 -> 20 ticks // 1.5 -> 1 second)
- Reduced Marksman Coin recharge time (200 -> 100 ticks // 10 -> 5 seconds)
## Minor Changes
- Fixed water skimming not playing sounds
- Removed the "vents" MOTD from the non-essential resources
- Skyblocks no longer allow mobs to spawn on them naturally
- Stained Glass Windows can now be set to not drop an item when destroyed by giving them the NBT tag `{noDrop:1b}`
- Fixed World Join Message not displaying
- Improved display of rapidly changing weapon overlays
- The cancerous Rodent glows now with LambDynamicLights installed
- Added decorated pots to `#ultracraft:fragile` blocktag
- Fixed Hell Spawner Spawn Egg Rendering
- Finally fixed the half pixel offset on animated wing pattern shaders
- Changed Revolver Textures to be closer to the original
- Updated Carpet texture in Limbo Main Menu BG
- Fixed Blood Fluid not being masked by Boats
- Fixed Mixin Conflict with Origins Classes addon mod
- The Sharpshooter now spins in the right direction
- Shotguns are now a bit more Satisfying
- Fixed Attractor Nailgun Magnet recharge cooldown starting at the wrong time
- Fixed a rare nullref involving the Sharpshooter and Tundra//Agony
- Added Block Tag `#ultracraft:cannot_connect`
- allows to designate Blocks that fences and walls cannot connect to; because for some reason base Minecraft doesn't do that and checks block states indiviually in an `or` chain
- Added Block Tag `#ultracraft:knuckle_blast_breakable`
- Added Proper Spawn Restrictions to all basic Enemies
- Fixed the first person Arm staying hidden when dying while focused on a Terminal
- Bloodheal noise can no longer be triggered multiple times on the same tick
- Fixed an issue that would crash the game upon trying to render white terminals while using specific System locales
- Added Cap to UltraHUD scale
- Added many Entity Tags for map//datapack makers
- `#ultracraft:living`
- `#ultracraft:non-living` (Caution: `#ultracraft:projectiles` is included in this tag)
- `#ultracraft:projectiles`
- `#ultracraft:husks`
- `#ultracraft:demons`
- `#ultracraft:machines`
- `#ultracraft:angels` (empty for now obv)
- `#ultracraft:funis` (the joke entities)
- `#ultracraft:streetcleaner_dodge` (entities streetcleaners will try to dodge)
- `#ultracraft:streetcleaner_counter` (entities streetcleaners will try to counter)
- `#ultracraft:explosion_affected_projectiles` (only listed projectiles get thrown away by mod explosions)
- Added Damage type tag `#ultracraft:reduced_knockback`
- Nails use this for example
- Added `{parries:<count>}` NBT tag to all Projectiles
- The value would only naturally go above 1 if parry-chaining is enabled
- You can now Right Click with the Knuckleblaster Item to grant yourself the Progression Entry
- Husks now scream when falling from a lethal height
- Added AshenWulf Plushie
- Model, Texture & Pose were made by AshenWulf
- Please don't ask to get a Plushie (unless you're an ultrakill dev, then it's fine)
- Decided to hide PitrPoin Plushie since it's too much of a niche reference to be featured so prominently
- Added Cancerous Status Effect
- Fixed a bug that caused the scrolling in Wing Pattern-//Preset-Lists to get more abrupt the more options there were.
- Fixed Hideous Mass still Attacking when in its Hidden State
- Fixed some firstperson offhand weirdness
- Added Feedback to hitting a Shielded Part of Hideous Mass (a little *tching* kinda sound)
- Drones now immediately explode if damaged for 3x their max health or more
- Finally fixed the issue with the wrong Hideous Mass shaking while one is dying if multiple are present
- Updated Goop to v0.3
- Fixed Malicious Face sometimes starting to charge a beam attack while still performing a salvo
- Fixed a small logic error that resulted in the intro not being repeated when setting both "repeatIntro" and "neverIntro" to true
- "neverIntro" is just intended to suppress showing the intro again after switching versions
- The catchphrase in the intro now fades later than the rest
- Made Bloodrays always edible
- Hopefully improved Skewer-Type Projectile Jittering
- Potentially fixed Skewered Status Effect
- Improved Magnet Attraction Position
- Fixed the offset between mouse and terminal cursor while focused
- Added Lava Ambience to Limbo Main Menu BG
- Added Lore to all Weapons explaining what they do
## Resource Changes
- Continued Adding Sounds
- Shotgun Animations now have a few sound keyframes
- Hideous Mass Mortar and Emerge Animations now have a few sound keyframes
- The `discharge` animation on Revolvers now also animates the Hammer of Alt Revolvers
- The catchphrase is now separated into its own translation key (formerly part of `intro.ultracraft.status`)
- Updated Intro Sequence Content Text (`message.ultracraft.content`)
- Added LOLCAT localization provided by Doggochleb (doesn't contain new 2.1.0 lines)
- Community translations//localizations are always welcome! (I won't give out unreleased versions language file tho; updated localizations will have to follow in minor patches)