
Thermoo
Temperature and Environment library mod for Fabric and Quilt. Used by Frostiful and Scorchful.
Thermoo 9.1.0
release21 февраля 2026 г.Thermoo 9.1: Atmospheric Pressure
- Added ability to dynamically toggle temperature effects on and off on a per-entity basis using the command
/thermoo temperature effect set_enabled. - Added a Java API to dynamically toggle temperature effects on and off on a per-entity basis to the
ConfiguredTemperatureEffectclass. - Added Thermoo specific entries to the F3 debug screen, these are disabled by default.
- Added an atmospheric pressure environment component type.
- This component stores the local atmospheric pressure in millibars.
- Added an atmospheric pressure gameplay environment attribute.
- This attribute is used as the default value for the environment component map.
- Added a sub-command to
/thermoo environmentto get the atmospheric pressure value at a block position. - Added
thermoo:set_temperature_from_pressureenvironment provider type. - Added
thermoo:set_pressure_from_altitudeenvironment provider type. - The relative humidity can now be queried using
/thermoo environment relative_humidity.- The old usage of
/thermoo environment relativehumiditystill works but is now deprecated.
- The old usage of
Thermoo Neoforge 4.7.1+neoforge
alpha22 декабря 2025 г.Thermoo for Neoforge 1.21.1
Thermoo has now been ported to Neoforge 1.21.1, courtesy of Forgified Fabric API. This port may not be fully stable just yet and as such is released as an Alpha. However, it does not require Connector and as such should work a bit better.
Server owners should note that this port does not include the Polymer patch, as Polymer is a Fabric-only mod. If you want to use Thermoo server side with Polymer, you will still need to use the Fabric version of Thermoo via Connector.
I do not plan to update this port to any game version other than 1.21.1. FFAPI is currently not available for any later version, and I am just simply uninterested in 1.20.1 (not to mention that I would also need to translate Thermoo 1.20.1 to Mojmap). If/when FFAPI updates to a newer Minecraft version, I will remake the port for that version too.
Changes from Thermoo 4.7.0+neoforge:
- 4.7.1: Published interface injection data
Thermoo Neoforge 4.7.0+neoforge
alpha22 декабря 2025 г.Thermoo for Neoforge 1.21.1
Thermoo has now been ported to Neoforge 1.21.1, courtesy of Forgified Fabric API. This port may not be fully stable just yet and as such is released as an Alpha. However, it does not require Connector and as such should work a bit better.
Server owners should note that this port does not include the Polymer patch, as Polymer is a Fabric-only mod. If you want to use Thermoo server side with Polymer, you will still need to use the Fabric version of Thermoo via Connector.
I do not plan to update this port to any game version other than 1.21.1. FFAPI is currently not available for any later version, and I am just simply uninterested in 1.20.1 (not to mention that I would also need to translate Thermoo 1.20.1 to Mojmap). If/when FFAPI updates to a newer Minecraft version, I will remake the port for that version too.
Thermoo 9.0.0
release19 декабря 2025 г.Thermoo 9.0.0
This update brings Thermoo to Minecraft 1.21.11. Per the LTS policy, this release marks the end of support for Minecraft 1.21.9-10.
- Updated to Minecraft 1.21.11.
- Added new Environment Attributes to control seasons and temperature.
- Reworked the seasons API to better support the environment attribute integration. This is a major breaking change for anyone using the Java-side Seasons API. See below for details. The JSON API should remain exactly the same.
- Added a new
mildtropical season.
Environment Attributes
Thermoo now provides several new environment attributes that integrate this new vanilla system with seasons and temperature. These new attributes are documented on the Thermoo wiki.
Seasons API Rework
The Seasons API has been reworked with, broadly, two major changes to support better future extensibility: First, the
ThermooSeason enum was converted into an interface which is implemented by two separate enums for temperate and
tropical seasons, called TemperateSeason and TropicalSeason respectively. A mild tropical season was also added
with this change to represent transition periods from wet to dry.
Secondly, the type returned by the seasons events was changed from an optional season to an optional season state,
which includes not only the original season but also a new progress value. This captures the "state" of a season at
some particular point in time. The new progress value is a number in the range [0, 1] which represents how far the
season has progressed.
Here is a basic migration overview:
ThermooSeason.SPRING->TemperateSeason.SPRINGThermooSeason.AUTUMN->TemperateSeason.AUTUMNThermooSeason.SUMMER->TemperateSeason.SUMMERThermooSeason.WINTER->TemperateSeason.WINTERThermooSeason.TROPICAL_DRY->TropicalSeason.DRYThermooSeason.TROPICAL_WET->TropicalSeason.WET- Added
TropicalSeason.MILD ThermooSeason#getCurrentSeason(Level)->TemperateSeason#getCurrentState(Level, BlockPos)(note the addedBlockPosparameter)ThermooSeason#getCurrentTropicalSeason(Level, BlockPos)->TropicalSeason#getCurrentState(Level, BlockPos).map()
Examples:
-Optional<ThermooSeason> season = ThermooSeason#getCurrentSeason(level);
+Optional<TemperateSeason> season = TemperateSeason#getCurrentState(level, pos).map(ThermooSeasonState::season);
ThermooSeasonEvents.GET_CURRENT_TROPICAL_SEASON.register(
(level, pos) -> {
- return Optional.of(ThermooSeason.TROPICAL_WET);
+ return Optional.of(TropicalSeason.WET.createState());
}
);
Thermoo 8.1.1
beta22 ноября 2025 г.- The entity position chosen for the environment tick context is now based on the entity's root vehicle, and not their actual position.
- This fixes some downstream issues with Frostiful where players would not warm up when in a boat. See #90.