Temperature

Here is the default temperature.yml:
enabled: true
temperature-update-interval: 40
modifiers:
season-base-temperature:
winter:
min-temp: -12
max-temp: 0
spring:
min-temp: 0
max-temp: 20
summer:
min-temp: 20
max-temp: 40
fall:
min-temp: 5
max-temp: 20
armor:
leather: 20
leather-temperature-cap: 25
iron: 5
gold: 5
diamond: 5
netherite: 3
weather:
rain: -4
storm: -5
block-effects:
enabled: true
blocks:
- LAVA{range=7,modifier=22}
- TORCH{range=7,modifier=7}
- LANTERN{range=7,modifier=7}
- CAMPFIRE{range=7,modifier=15}
- WALL_TORCH{range=7,modifier=7}
- FIRE{range=7,modifier=16}
- SOUL_TORCH{range=7,modifier=-7}
- SOUL_WALL_TORCH{range=7,modifier=-7}
- SOUL_CAMPFIRE{range=7,modifier=-10}
- SOUL_FIRE{range=7,modifier=-16}
- SOUL_LANTERN{range=7,modifier=-7}
- ICE{range=3,modifier=-6}
- PACKED_ICE{range=3,modifier=-6}
- BLUE_ICE{range=7,modifier=-15}
touching-water:
summer: -10
spring: -4
fall: -4
winter: -10
foods-and-drinks:
water-bottle: -10
full-hunger-bar: 5
max-sprinting-modifier: 4
height:
enabled: true
other-dimensions:
nether: 25
end: 0
effects:
cold:
hunger: -10
slowness: -15
freezing: -20
boosts:
min: 15
max: 30
potioneffects:
- NONE
warm:
no-healing: 50
slowness: 60
fire: 65
display:
convert-to-fahrenheit: false
temperature:
actionbar: true
actionbar-display: ' [ %temperature% ]'
fahrenheit: °F
celcius: °C
warnings:
messages:
enabled: true
overheating: '&4&lWarning! &4&rYour temperature is really high, cool down quickly!'
freezing: '&3&lWarning! &3&rYour temperature is really low, heat up quickly!'
actionbar:
enabled: true
overheating: Cool down!
freezing: Heat up!
custom:
items:
example-item:
enabled: false
material: LEATHER_BOOTS
custom-model-data: 5
use-custom-model-data: true
temperature-modifier: 10
activation:
wearing: true
holding: false
torch:
enabled: true
material: TORCH
custom-model-data: 5
use-custom-model-data: false
temperature-modifier: 7
activation:
wearing: false
holding: true
lava:
enabled: true
material: LAVA_BUCKET
custom-model-data: 5
use-custom-model-data: false
temperature-modifier: 15
activation:
wearing: false
holding: true
campfire:
enabled: true
material: CAMPFIRE
custom-model-data: 5
use-custom-model-data: false
temperature-modifier: 7
activation:
wearing: false
holding: true
lantern:
enabled: true
material: LANTERN
custom-model-data: 5
use-custom-model-data: false
temperature-modifier: 7
activation:
wearing: false
holding: true
soultorch:
enabled: true
material: SOUL_TORCH
custom-model-data: 5
use-custom-model-data: false
temperature-modifier: -7
activation:
wearing: false
holding: true
soulcampfire:
enabled: true
material: SOUL_CAMPFIRE
custom-model-data: 5
use-custom-model-data: false
temperature-modifier: -7
activation:
wearing: false
holding: true
soullantern:
enabled: true
material: SOUL_LANTERN
custom-model-data: 5
use-custom-model-data: false
temperature-modifier: -7
activation:
wearing: false
holding: true
ice:
enabled: true
material: ICE
custom-model-data: 5
use-custom-model-data: false
temperature-modifier: -6
activation:
wearing: false
holding: true
packedice:
enabled: true
material: PACKED_ICE
custom-model-data: 5
use-custom-model-data: false
temperature-modifier: -6
activation:
wearing: false
holding: true
blueice:
enabled: true
material: BLUE_ICE
custom-model-data: 5
use-custom-model-data: false
temperature-modifier: -15
activation:
wearing: false
holding: true

Modifiers

Combining all modifiers results in the temperature of the player. A random temperature is chosen every day between the bounds of season-base-temperatureand all modifiers will stack on top of it. The modifiers of armor are the modifiers applied when a player wears a full set. Each piece of armour results in 1/4 of the total modifier being applied.

Effects

You can change at what temperature players get rewarded or punished with a temperature effect. The cold and warm effects should be self-explanatory (check the effects page for details). You can also give the players a boost if they have a "good" temperature using the effects->boosts section. The temperature meter of the player will become purple if they're between the specified temperature range and you can give them potion effect(s) if you want. Replace NONE with any potion effect found here. It doesn't have to be one effect, the list accepts multiple effects. The effects will immediately be removed when a player's temperature goes outside the specified boost range.

Display

The temperature is displayed on the action bar by default. Warnings are given in the chat and on the action bar when the player reaches dangerous temperatures. You can disable all of this separately in the display section of the temperature.yml. The (air) temperature can also be displayed anywhere you want using PlaceHolderAPI.
Air temperature is by default only viewable in the /season command.
The plugin can automatically convert the temperature to Fahrenheit right before it gets displayed. Set display->convert-to-fahrenheit to true and don't forget to change "°C" to "°F" in display->temperature->actionbar-display. The plugin also automatically switches a new player's temperature to Fahrenheit if it detects the player comes from a country that uses Fahrenheit. Players can switch between Fahrenheit and Celcius themselves using the command /togglefahrenheit.

Custom items

A full explanation of custom items can be found here. The configuration should be self-explanatory together with the page. A full list of materials can be found here.