[SPIGOT-6768] setFreezeTicks() is limited to getMaxFreezeTicks() Created: 22/Oct/21  Updated: 23/Oct/21  Resolved: 23/Oct/21

Status: Resolved
Project: Spigot
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: JishunaMatata Assignee: Unassigned
Resolution: Fixed Votes: 0
Labels: Craftbukkit
Environment:

 

 


Version: 3262-Spigot-dc75aca-f0f801e (MC: 1.17.1)
Guidelines Read: Yes

 Description   

The method setFreezeTicks is arbitrarily limited to getMaxFreezeTicks (The value of which is the point where the entity starts taking freeze damage) despite vanilla allowing much higher values.

This can be seen by spawning a chicken and running:

/data merge entity @e[type=minecraft:chicken,sort=nearest,limit=1] {TicksFrozen:30000} 

Which will successfully set the entity's freeze ticks to 30000, causing them to soon freeze to death.



 Comments   
Comment by JishunaMatata [ 22/Oct/21 ]

Damage is taken every 2 seconds when the ticks are above 140 (I think). When the entity is not in powder snow these ticks will constantly go down, so you have no way to keep an entity in the damage range with spigot, as it will immediately drop below 140.

Setting it to 140 every tick is also not an option as this will prevent them from every actually taking the damage.

Comment by md_5 [ 22/Oct/21 ]

Can you please explain further? Is damage from freezing non-linear with TicksFrozen?

Generated at Thu Apr 03 16:14:48 UTC 2025 using Jira 10.3.3#10030003-sha1:d220e3fefc8dfc6d47f522d3b9a20c1455e12b7b.