fuck$ociety
-
Автор темы
- #1
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Как мы знаем, десники ограничены максимальной дельтой, и её нужно вычислять.
Для примера, поможет setupvelocity.
fake = netwoked. //угол, при тике (отправки пакетов)
real = rotation. //переменная анимстате, он же feetYaw
return animstate->yaw_desync_adjustment() * unk2;
}
Переменные в анимстате:
Нужно запомнить, что во время движения, максимальной скоростью является 29.
Когда игрок стоит, 58.
//by collashe
Для примера, поможет setupvelocity.
Суть метода десника в том, что:float GetMaxFakeDelta(SDK::CBaseEntity* entity)
{
auto animstate = entity->GetAnimState();
float speedfactor = Clamp<float>(animstate->m_flSpeedFraction(), 0.0f, 1.0f);
float unk1 = ((animstate->m_flLandingRatio() * -0.3f) - 0.2f) * speedfactor;
float unk2 = unk1 + 1.0f;
if (animstate->m_fDuckAmount > 0.0f) {
float max_velocity = Clamp<float>(animstate->m_flMaxWeaponVelocity(), 0.0f, 1.0f);
float duck_speed = animstate->m_fDuckAmount * max_velocity;
unk2 += (duck_speed * (0.5f - unk2));
}
fake = netwoked. //угол, при тике (отправки пакетов)
real = rotation. //переменная анимстате, он же feetYaw
return animstate->yaw_desync_adjustment() * unk2;
}
Переменные в анимстате:
float& m_flSpeedFraction()
{
return *(float*)((uintptr_t)this + 0xF8);
}
float& m_flMaxWeaponVelocity()
{
return *(float*)((uintptr_t)this + 0xFC);
}
float& yaw_desync_adjustment2()
{
return *(float*)((uintptr_t)this + 0x330);
}
float& yaw_desync_adjustment()
{
return *(float*)((uintptr_t)this + 0x334);
}
Нужно запомнить, что во время движения, максимальной скоростью является 29.
Когда игрок стоит, 58.
//by collashe