2.4-b04a
Fixes:
Technical Changes:
Fixes:
- Fixed gradually decreasing server performance due to registry leaks
- Fixed long freeze when exiting a world or server
- Fixed crash when loading TOML configs in some cases
- Fixed boolean block state values in JSON not being read properly
Technical Changes:
- (1.16) The file structure of JSON registries has changed to match that of other versions:
- Registries are now located in data/<yourmod>/cold_sweat/* (instead of data/cold_sweat/config/*)
- This means that JSON registries registered by other mods will have that mod's namespace in their IDs
- Datapacks still do not work. This is only for mod developers
- Block temperature JSON configs can now be added to "effect groups"
- Block temperatures in an effect group will count towards each other's max effect limits
- i.e. if redstone lamps and copper bulbs are part of the same group, redstone lamps will count towards the max number of copper bulbs and vice-versa
- Implemented via the "effect_group" field in block temperature JSON configs
- This field takes in a tag ID containing block temps (i.e. "yourpack:yourtag" [no #hashtag])
- Add your block temp tag to data/<yourpack>/tags/cold_sweat/block/block_temp/<yourtag>.json
- Include the IDs of the block temps in the tag (i.e. "yourpack:your_block_temp")
- registerByClassName() in TempModifierRegisterEvent now accepts constructor arguments as its last parameter (varargs)
- These arguments will be passed to the constructor of the modifier class upon creation
2.4-b03d
Fixes:
Technical Changes:
- Big improvements to config files:
- Improved the formatting and wording of comments, making them more readable and clear
- Improved the spacing between config settings and comments, making it easier to locate specific settings
- List-based configs are now formatted vertically with one element per line, rather than all elements on one line
- This behavior is indicated by the "//v" tag at the top of the config's comment. Removing the tag reverts this behavior
- Formatting changes take effect upon restarting the game
- ! Existing configs should be updated automatically, but backing up is recommended
- TOML configs that take in IDs, like blocks, items, entities, biomes, etc. now support negation (i.e. "!minecraft:stone")
- Most useful when used in lists. Excludes the given ID from having the setting applied to it
- Also supports negating tags ("!#minecraft:leaves")
- i.e. "#forge:dyes,!minecraft:black_dye" applies to all dyes EXCEPT black dye
- ! Some config settings have been moved:
- "Require Thermometer": main.toml -> item.toml
- "Fire/Ice Resistance Immunity" main.toml -> item.toml
- Armor items that provide built-in insulation can now accept insulation themselves
- Built-in armor insulation can also be configured to either take up the item's available insulation slots, or not
- Insulation tooltips can now be configured to show under specific circumstances:
- "always": Always show the tooltip (even for armor items with no insulation)
- "if_present": The default behavior. Shows the tooltip only if the item gives or has insulation
- "on_shift": Show the insulation tooltip if SHIFT is held (even for armor items with no insulation)
- "shift_and_present": Show the tooltip if SHIFT is held AND the item gives or has insulation
- "never": Never show the insulation tooltip for any items
- Leather, hoglin hide, goat fur, and chameleon scale armor can no longer be sewn into other armor by default
- Increased the amount of insulation provided by leather, hoglin hide, goat fur, and chameleon scale armor when worn
- Increased ice resistance potion durations:
- Normal length: 90 seconds -> 3 minutes
- Extended length: 3 minutes -> 6 minutes
- (1.16) Added Valkyrien Skies support
Fixes:
- Fixed crashing and/or disconnection when loading Cold Sweat datapacks that include dimensions, structures, or biomes
- Fixed crash when using a hearth, boiler, or icebox in a Valkyrien Skies ship
- (1.21) Fixed strange temperature behavior when an entity with temperature is killed or leaves the world
- Fixed temperature effects being removed when the player's body temperature is above 100 or below -100
- Fixed the player's spawn point not being set at a bed if it is sweltering or freezing
- Fixed water droplets sometimes spawning in lopsided patterns on the screen
- Fixed shears consuming double durability when used to shear goats
Technical Changes:
- Chameleons will now target and eat any entities in the #cold_sweat:chameleon_eats tag
2.4-b03c
Fixes:
- Soul sprouts can now be planted with dispensers
- Soul stalks that became glitched after updating to b03a will now correct themselves upon receiving a block update
- Slightly decreased the effectiveness of growing items on soul stalk (now takes 2-3 items instead of always 2)
- Removed sticks from the loot table for soul stalk
- Mod compat for specific mods can now be disabled by using the "disabled_mods" file in the CS config folder
- These mods will still work, but special integration features will not be applied
- The "Require Thermometer" and "Fire/Ice Resistance Immunity" settings have been moved to item.toml
- Improved Primal Winter support:
- Now respects disabled biomes/dimensions in Primal Winter's config
- Only decreases the temperature for configured biomes, since Primal Winter already changes default biome temperatures
Fixes:
- (1.21) Fixed crash during server startup
- Fixed crash when rendering frozen health
- Fixed crash due to Cold Sweat registries not being synced to the client
- Fixed un-enchantable armor items inheriting enchantments from insulators
2.4-b03c
Fixes:
- Soul sprouts can now be planted with dispensers
- Soul stalks that became glitched after updating to b03a will now correct themselves upon receiving a block update
- Slightly decreased the effectiveness of growing items on soul stalk (now takes 2-3 items instead of always 2)
- Removed sticks from the loot table for soul stalk
- Mod compat for specific mods can now be disabled by using the "disabled_mods" file in the CS config folder
- These mods will still work, but special integration features will not be applied
- The "Require Thermometer" and "Fire/Ice Resistance Immunity" settings have been moved to item.toml
- Improved Primal Winter support:
- Now respects disabled biomes/dimensions in Primal Winter's config
- Only decreases the temperature for configured biomes, since Primal Winter already changes default biome temperatures
Fixes:
- (1.21) Fixed crash during server startup
- Fixed crash due to Cold Sweat registries not being synced to the client
- Fixed un-enchantable armor items inheriting enchantments from insulators
2.4-b03c
Fixes:
- Soul sprouts can now be planted with dispensers
- Soul stalks that became glitched after updating to b03a will now correct themselves upon receiving a block update
- Slightly decreased the effectiveness of growing items on soul stalk (now takes 2-3 items instead of always 2)
- Removed sticks from the loot table for soul stalk
- Mod compat for specific mods can now be disabled by using the "disabled_mods" file in the CS config folder
- These mods will still work, but special integration features will not be applied
*
- The "Require Thermometer" and "Fire/Ice Resistance Immunity" settings have been moved to item.toml
- Improved Primal Winter support:
- Now respects disabled biomes/dimensions in Primal Winter's config
- Only decreases the temperature for configured biomes, since Primal Winter already changes default biome temperatures
Fixes:
- (1.21) Fixed crash during server startup
- Fixed crash due to Cold Sweat registries not being synced to the client
- Fixed un-enchantable armor items inheriting enchantments from insulators
2.4-b03b
Fixes:
Technical Changes:
- The icon of the input slot in the sewing table now switches between leather and shears to indicate that shears can be used
- Added custom temperatures to biomes from Regions Unexplored
- ! This only applies to freshly-generated configs, so world.toml might need to be deleted
- Insulating armor items that don't grant any insulation will now accept insulation
- i.e. the Create netherite diving set, which only gives attribute modifiers
- Soul stalk now generates more commonly in the soul sand valley biome
- The attribute modifiers for the Create netherite diving set have been removed from the helmet, leggings, and boots
- The backtank now gives the full effect (+100% heat dampening, +50% cold dampening)
- The primary (right-click) and secondary (sneak-right-click) actions for the waterskin are now configurable:
- Both can now be set to either drink or pour, so they can be swapped around or disabled
- These settings are in client.toml and are player-specific
Fixes:
- (1.21) Fixed the effect ID for frigidness still being "cold_sweat:chill"
- Fixed crash when calculating player/entity temperature attributes in some cases
- Fixed potential crash when managing entity temperature caches internally
- Fixed log spam when loading new entities into the world
- Fixed soul stalks generating with an incorrect bottom block
- Fixed all soul block segments turning into buds when upgrading an older world
- Fixed water drip effects appearing when emerging from water in spectator mode
- Fixed HUD elements rendering above other UI elements that they shouldn't
- Fixed "matches" field in registry removals not accepting a list of values
- Fixed "fuel" argument in KubeJS fuel configs being mistakenly named "temperature"
- Fixed the thermometer showing Fahrenheit units when right-clicked, even if units are set to Celsius
- Fixed TemperatureChangedEvent firing at incorrect times
- Fixed mixin conflict with mods that modify smithing recipes (like Sortilege)
Technical Changes:
- Temperature effects are now a modular system
- Added a new TempEffect Forge (Java-based) registry
- Each individual temperature effect (freezing health, screen blur, etc.) is now registered as a TempEffect
- TempEffects are assigned to entities via JSON, and apply to certain temperature ranges
- i.e. health freezes over if the player's temperature is between -50 and -100
- This system will be expanded upon and more thoroughly documented in the future
- Registry removals now support removing JSON registries by ID (i.e. "cold_sweat:entity/entity_temp/on_fire") via the "entries" field
- This does not work for TOML or KubeJS configs, as they do not have registry IDs
- KubeJS configs are now passed through the normal config pipeline
- They are now present in CreateRegistriesEvent
- They can now be targeted by registry removals
- The "matches" field in registry removals now uses NBT requirements instead of normal NBT
- This means that Cold Sweat's special NBT functions (cs:any_of, etc.) can now be used
- Registry removals can now choose which config types to target via the "config_type" field
- Accepts a list of strings ("toml", "json", or "kubejs")
- Added dedicated addRegistry() and addRegistries() methods to CreateRegistriesEvent
- Create backtank pressure now drains if the player has any insulator equipped that is part of the #drains_backtank tag and passes its requirements