решение нашел в ValidatePosition
было
} else if (diff > 256) {
activeChar.validateLocation(1);
} else {
activeChar.setIncorrectValidateCount(0);
}
стало
} else if (diff > maxDiff) {
activeChar.validateLocation(1);
} else {
activeChar.setIncorrectValidateCount(0);
}
final int maxDiff = 256 + getClient().getPing() * activeChar.getMoveSpeed() / 1000;
у друга на Грации финал на Фениксе, чуть по другому но я думаю феникс у нас уже не кто не юзает, но суть думаю понятно копать в этом методе , я нашел его по логированию и сделал фикс у себя