Description
CobbleTooHot
CobbleTooHot is a tiny “bridge” mod that lets Cobblemon Pokémon affect Tough As Nails temperature when they’re near a player.
Want a Charizard to feel hotter than a Charmander? Or an Articuno to chill the air more than an Abomasnow? This mod allows you to do that with a simple configuration.
What It Does
- Scans for nearby Cobblemon
PokemonEntityaround each player. - Applies a temperature influence based on either:
- Per-species config (
perPokemon), or - Optional per-type fallback (
perType) if a species isn’t listed.
- Per-species config (
- Feeds into Tough As Nails’ player temperature modifiers system.
TAN temperature remains (ICY, COLD, NEUTRAL, WARM, HOT) and continues to change over time (TAN’s delays/configs still apply).
Requirements
- Minecraft
1.21.1 - Tough As Nails (required)
- Cobblemon (optional, but you’ll want it for… Pokémon)
Config
{
"enabled": true,
"radiusBlocks": 8,
"maxTotalShift": 4,
"updateIntervalTicks": 20,
"perPokemon": {
"cobblemon:charizard": "HOT",
"cobblemon:charmander": "WARM",
"cobblemon:articuno": "ICY",
"cobblemon:abomasnow": "COLD"
},
"perType": {
"fire": "HOT",
"ice": "ICY"
}
}
Notes:
perPokemonvalues are TAN levels:ICY | COLD | NEUTRAL | WARM | HOTperTypeis optional. Keys are Cobblemon type showdown IDs (e.g.fire,ice,water).- Dual-types use an average between the two type deltas (so Fire+Ice tends toward neutral unless you tune your
perTypemapping). maxTotalShiftcaps how strong the combined effect can be (prevents “stack 30 Pokémon” situations).updateIntervalTicksthrottles scans (default20= once per second).
Color codes supported in messages:
- Legacy
&codes (ex:&a,&e,&l,&r) - Hex colors:
&#RRGGBB - Escape a literal ampersand with
&&
Commands
/cobbletoohot status- Shows your current TAN temperature and nearby configured Pokémon influences.
/cobbletoohot reload(perm 2)- Reloads
config.json+messages.json.
- Reloads
/cobbletoohot debug(perm 2)- Extra info for troubleshooting (registration, computed shifts, etc.).
Performance
This mod does an entity query in a radius around each player, then reflects species/type info from nearby Pokémon.
If you expect a lot of Pokémon around players, keep radiusBlocks modest and increase updateIntervalTicks (e.g., 20–40).


