retard
-
Автор темы
- #1
del.
Последнее редактирование:
I did a okay lby pred without anims, it does the job. Thanks anyway.so much which has to be fixed with that, not only that it can break under many conditions for example dormancy, no it also can let u mag dump on it due to animation desync (yes this exists in legacy).
so u better fix ur anims first and go with some logic of maybe try to hit it just when u rly noticed the lby update and add a miss count on it
this has so many errors you're either autistic or new to source engine. Check 2018 source. Not sure how people still are so retarded that cant check an open source game and fix its shit. bare in mind it has been leaked for 1 year nowLike, supremacy's LBY prediction is okay and all, but it's very simple. So here's a better one (don't send any hate comments just point out what could be improved)
enjoy I guess (btw I got this from guy on discord)C++:if (data->m_records.size() >= 2) { LagRecord* previous = data->m_records[1].get(); if (previous) { if (record->m_body != previous->m_body) { record->m_eye_angles.y = record->m_body; data->m_body_update = record->m_anim_time + 1.1f; record->m_mode = Modes::RESOLVE_BODY; return; } } }
Forgot to add this is mostly public code
im pretty sure anim time is m_flcycle so idk what you mean hereI did a okay lby pred without anims, it does the job. Thanks anyway.
static float NextLBYUpdate[65];
static float Add[65];
/*if (CurrentRecord.Dormant) {
NextLBYUpdate[Player->EntIndex()] = -1;
Add[Player->EntIndex()] = -1;
Global::NextLBYUpdate[Player->EntIndex()] = NextLBYUpdate[Player->EntIndex()];
}*/
if (Player->GetAnimationTime() >= NextLBYUpdate[Player->EntIndex()])
{
CurrentRecord.PredLBYFlick = true;
Add[Player->EntIndex()] = 1.1f;
NextLBYUpdate[Player->EntIndex()] = Player->GetAnimationTime() + Add[Player->EntIndex()];
Global::NextLBYUpdate[Player->EntIndex()] = NextLBYUpdate[Player->EntIndex()];
}
else
CurrentRecord.PredLBYFlick = false;
if (CurrentRecord.LBY != Player->m_flLowerBodyYawTarget() && !CurrentRecord.Dormant && !Player->IsDormant())
{
CurrentRecord.LBYFlick = true;
Add[Player->EntIndex()] = g_GlobalVars->interval_per_tick + 1.1f;
NextLBYUpdate[Player->EntIndex()] = Player->GetAnimationTime() + Add[Player->EntIndex()];
Global::NextLBYUpdate[Player->EntIndex()] = NextLBYUpdate[Player->EntIndex()];
}
else
CurrentRecord.LBYFlick = false;
if (CurrentRecord.Velocity.Length2D() > 0.1f && !CurrentRecord.Fakewalking) {
Add[Player->EntIndex()] = 0.22f;
NextLBYUpdate[Player->EntIndex()] = Player->GetAnimationTime() + Add[Player->EntIndex()];
Global::NextLBYUpdate[Player->EntIndex()] = NextLBYUpdate[Player->EntIndex()];
}
im pretty sure anim time is m_flcycle so idk what you mean here
never seen such a shit paste tranny codeshit code
Credits: KlawNКод:static float NextLBYUpdate[65]; static float Add[65]; /*if (CurrentRecord.Dormant) { NextLBYUpdate[Player->EntIndex()] = -1; Add[Player->EntIndex()] = -1; Global::NextLBYUpdate[Player->EntIndex()] = NextLBYUpdate[Player->EntIndex()]; }*/ if (Player->GetAnimationTime() >= NextLBYUpdate[Player->EntIndex()]) { CurrentRecord.PredLBYFlick = true; Add[Player->EntIndex()] = 1.1f; NextLBYUpdate[Player->EntIndex()] = Player->GetAnimationTime() + Add[Player->EntIndex()]; Global::NextLBYUpdate[Player->EntIndex()] = NextLBYUpdate[Player->EntIndex()]; } else CurrentRecord.PredLBYFlick = false; if (CurrentRecord.LBY != Player->m_flLowerBodyYawTarget() && !CurrentRecord.Dormant && !Player->IsDormant()) { CurrentRecord.LBYFlick = true; Add[Player->EntIndex()] = g_GlobalVars->interval_per_tick + 1.1f; NextLBYUpdate[Player->EntIndex()] = Player->GetAnimationTime() + Add[Player->EntIndex()]; Global::NextLBYUpdate[Player->EntIndex()] = NextLBYUpdate[Player->EntIndex()]; } else CurrentRecord.LBYFlick = false; if (CurrentRecord.Velocity.Length2D() > 0.1f && !CurrentRecord.Fakewalking) { Add[Player->EntIndex()] = 0.22f; NextLBYUpdate[Player->EntIndex()] = Player->GetAnimationTime() + Add[Player->EntIndex()]; Global::NextLBYUpdate[Player->EntIndex()] = NextLBYUpdate[Player->EntIndex()]; }
static float NextLBYUpdate[65];
static float Add[65];
/*if (CurrentRecord.Dormant) {
NextLBYUpdate[Player->EntIndex()] = -1;
Add[Player->EntIndex()] = -1;
Global::NextLBYUpdate[Player->EntIndex()] = NextLBYUpdate[Player->EntIndex()];
}*/
if (Player->GetAnimationTime() >= NextLBYUpdate[Player->EntIndex()])
{
CurrentRecord.PredLBYFlick = true;
Add[Player->EntIndex()] = 1.1f;
NextLBYUpdate[Player->EntIndex()] = Player->GetAnimationTime() + Add[Player->EntIndex()];
Global::NextLBYUpdate[Player->EntIndex()] = NextLBYUpdate[Player->EntIndex()];
}
else
CurrentRecord.PredLBYFlick = false;
if (CurrentRecord.LBY != Player->m_flLowerBodyYawTarget() && !CurrentRecord.Dormant && !Player->IsDormant())
{
CurrentRecord.LBYFlick = true;
Add[Player->EntIndex()] = g_GlobalVars->interval_per_tick + 1.1f;
NextLBYUpdate[Player->EntIndex()] = Player->GetAnimationTime() + Add[Player->EntIndex()];
Global::NextLBYUpdate[Player->EntIndex()] = NextLBYUpdate[Player->EntIndex()];
}
else
CurrentRecord.LBYFlick = false;
if (CurrentRecord.Velocity.Length2D() > 0.1f && !CurrentRecord.Fakewalking) {
Add[Player->EntIndex()] = 0.22f;
NextLBYUpdate[Player->EntIndex()] = Player->GetAnimationTime() + Add[Player->EntIndex()];
Global::NextLBYUpdate[Player->EntIndex()] = NextLBYUpdate[Player->EntIndex()];
}
Проект предоставляет различный материал, относящийся к сфере киберспорта, программирования, ПО для игр, а также позволяет его участникам общаться на многие другие темы. Почта для жалоб: admin@yougame.biz