Compatibility
Minecraft: Java Edition
Platforms
Supported environments
Tags
Creators
Details
Changelog
Thermoo 10.0.0 Alpha 1 for Minecraft 26.1-snapshot-11
A first pre-release build for Thermoo 10 for Minecraft 26.1. This is an alpha version, and the API remains extremely unstable as further breaking changes are planned. Because of this, the documentation has also not yet been updated! The Thermoo Docs will be fully updated when the API changes are finalized for 26.1.
This release is primarily intended for me to get a head start on updating Frostiful and Scorchful, and also to open Thermoo up to public bugtesting from whomever wants to do that.
- Begun adding version numbers to API packages.
- So far this has impacted the following packages:
com.github.thedeathlycow.thermoo.api.command->com.github.thedeathlycow.thermoo.api.command.v1com.github.thedeathlycow.thermoo.api.temperature.effect->com.github.thedeathlycow.thermoo.api.temperature.status.v2
- More packages will be moved before the full 26.1 release.
- So far this has impacted the following packages:
- Removed command definition classes from API.
- These are now implementation classes.
- Renamed
*ArgumentTypeclasses to*Argumentin the command API. - Replaced the Temperature Effect API with the Temperature Status API (#104).
- Added Temperature Status Tags (#106).
Temperature Status API
The Temperature Effect API was rewritten and renamed to the Temperature Status API to better distinguish between the JSON files (statuses) and the effect types that actually do the work. The API largely does the same thing, but here is a summary of the changes:
- Replaced the
thermoo/temperature_effectregistry withthermoo/temperature_statusregistry - The new status registry is now an actual registry, which supports tags, synchronisation, and
Holders, and all that. - Replaced
configobjects with a directeffectslist entry. - Moved type delegation to entries of the effects, rather than at the root of the registry object.
- Merged the
attribute_modifierandscaling_attribute_modifierinto a single type, differentiated with a field. - Removed the
emptyandsequencetypes, they are no longer needed. - Added a way to define the application order of statuses with the
thermoo:application_ordertemperature status tag.
This also removed some functionality:
- Temperature statuses can no longer be "hot reloaded"; you must restart the server to reload them.
- There is no longer a
loading_priorityfield. The intended functionality behind this was to allow Thermoo Patches to override the effects from Frostiful/Scorchful with a check for Origin. This was superseded by the enable API. It is not known if anyone else used this for any particular functionality that was actually necessary, so it is being removed.
Example migration
Old effect
{
"type": "thermoo:damage",
"temperature_scale_range": {
"max": -0.99
},
"config": {
"amount": 1,
"damage_interval": 20,
"damage_type": "minecraft:freeze"
}
}
New status
{
"temperature_scale_range": {
"max": -0.99
},
"interval": 20,
"effects": [
{
"type": "thermoo:damage",
"amount": 1,
"damage_type": "minecraft:freeze"
}
]
}



