После перезахода в игру (на карту) сбрасывается скорость, скорость атаки, урон.

Версия Minecraft
1.16.5
API
Forge
Всем привет.

Мне нужно поменять скорость игрока, его урон, скорость атаки и многое другое.
В версии 1.12.2 все получалось, но вот в 1.16.5 что-то пошло не так...

С помощью данного кода я изменяю максимальное здоровье игрока:
Java:
Player.getAttribute(Attributes.MAX_HEALTH).setBaseValue(value)

По этому примеру, я начал изменять все нужные мне атрибуты. А именно:
Java:
Attributes.MAX_HEALTH
Attributes.ARMOR
Attributes.ATTACK_DAMAGE
Attributes.ATTACK_SPEED
Attributes.MOVEMENT_SPEED

С такими атрибутами, как Attributes.MAX_HEALTH и Attributes.ARMOR проблем нет. Здоровье и броня устанавливаются правильно, и после перезахода в игру не скидываются.
Но я не могу сказать так же про остальные атрибуты (Attributes.ATTACK_DAMAGE, Attributes.ATTACK_SPEED, Attributes.MOVEMENT_SPEED). Они все так же работают, но после перезахода в мир - сбрасываются.

Раньше я сталкивался с этим в версии 1.12.2, но только с атрибутом Attributes.MOVEMENT_SPEED. И "фиксил" я это с помощью кода ниже:
Player.capabilities.setPlayerWalkSpeed(value);

Вот и вопрос у меня возник. Как мне сделать, чтобы скорость игрока, урон и скорость атаки не сбрасывались после перезахода в мир (на сервер)?
Что я делаю не так? Это же должно работать...

Заранее благодарен за каждый ответ!
 
Решение
Проблема решилась обычным перезапуском игры. Даже не знаю, с чем это было связанно.
Но Attributes.MOVEMENT_SPEED так и продолжает обнуляться, после перезапуска.

Я пришел к выводу (провел пару тестов), что Attributes.MOVEMENT_SPEED зависит напрямую от WalkingSpeed.

Это значит, что нужно увеличивать не Attributes.MOVEMENT_SPEED, а WalkingSpeed. Но это же так глупо...
Проблема решилась обычным перезапуском игры. Даже не знаю, с чем это было связанно.
Но Attributes.MOVEMENT_SPEED так и продолжает обнуляться, после перезапуска.

Я пришел к выводу (провел пару тестов), что Attributes.MOVEMENT_SPEED зависит напрямую от WalkingSpeed.

Это значит, что нужно увеличивать не Attributes.MOVEMENT_SPEED, а WalkingSpeed. Но это же так глупо...
 
Сверху