фа-фа-фаина, фаина
-
Автор темы
- #1
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Делаем резовлер для xy0, PS: не говорите что какаха, я знаю. Заходим в resolver.cpp - вставляем эту поеботу -
Заходим в IEngineTrace - и заменяем струкутуру ray_t на вот это -
Вот и все.
C++:
__forceinline float MaxDesyncAmount()//хыхыхых
{
auto animstate = uintptr_t(Globals::LocalPlayer->AnimState());
float
rate = 180,
duckammount = *(float*)(animstate + 0xA4),
speedfraction = (0.f, (*(float*)(animstate + 0xF8), 1.f)),
speedfactor = (0.f, (1.f, *(float*)(animstate + 0xFC)));
float
unk1 = ((*(float*)(animstate + 0x11C) * -0.30000001) - 0.19999999) * speedfraction, // animstate
unk2 = unk1 + 1.f;
if (duckammount > 0)
unk2 += ((duckammount * speedfactor) * (0.5f - unk2));
return *(float*)(animstate + 0x334) * unk2;//получаем норм десинк амоунт
};
void DetectTrueSideIDX_TRACER_RAY(C_BaseEntity* player, int* side)
{
Vector src3D, dst3D, forward, right, up, src, dst;
float back_two, right_two, left_two;
C_Trace tr;
ray_t ray, ray2, ray3, ray4, ray5;
C_TraceFilter filter(player);
AngleVectors(Vector(0, GetBackwardYaw(player), 0), &forward, &right, &up);
filter.pSkip1 = player;
src3D = player->GetEyePosition();
dst3D = src3D + (forward * 384);
ray.initialize(src3D, dst3D);
g_pTrace->TraceRay(C_Ray(ray.m_start, ray.m_end), mask_shot, &filter, &tr);
back_two = (tr.end - tr.start).Length();
ray.initialize(src3D + right * 35, dst3D + right * 35);
g_pTrace->TraceRay(C_Ray(ray2.m_start, ray2.m_end), mask_shot, &filter, &tr);
right_two = (tr.end - tr.start).Length();
ray.initialize(src3D - right * 35, dst3D - right * 35);
g_pTrace->TraceRay(C_Ray(ray3.m_start, ray3.m_end), mask_shot, &filter, &tr);
left_two = (tr.end - tr.start).Length();
if (left_two > right_two) {
*side = -1;
//боди щуд би райт
}
else if (right_two > left_two) {
*side = 1;
}
else
*side = 0;
}
int FreestandSideProped_dfv23[64];
void resolver(C_BaseEntity* ent)
{
if (!Globals::LocalPlayer->IsAlive())
return;
if (DoesPlayerHaveJitterCMD(ent, jittered_side));//детект джиттеров а че)
{
newsidefromdetect = jittered_side;
JITTER = true;
}
if (!DoesPlayerHaveJitterCMD(ent, jittered_side));//
{
newsidefromdetect = 1;
JITTER = false;
}
bool resolve;
int nohint_resolve = 1;
//hints
float MAXDELTA = MaxDesyncAmount();//абузим макседдльту, нах 60.
auto animStateIndex_prop = ent->AnimState(); // get animstate ez
int proper_index = ent->EntIndex();
float angle = GetRealAngleFromAnim(ent);//текущий угол
if (&c_config::get().aimbot_resolver)
{
resolve = true;
// animStateIndex_prop->m_flGoalFeetYaw = GetNormalizedAngleyaw_property(animStateIndex_prop->m_flGoalFeetYaw); /// useless
}
else
{
resolve = false;
}
if (Globals::MissedShots[ent->EntIndex()] == 0)//если 0 миссов, делам детект сайда, или че у вас там есть)) bruh))) xd
{
//detect jopa
DetectTrueSideIDX_TRACER_RAY(ent, &FreestandSideProped_dfv23[proper_index]);
animStateIndex_prop->m_flGoalFeetYaw = GetNormalizedAngleyaw_property(angle - MAXDELTA * FreestandSideProped_dfv23[proper_index]);
}
else
{//def bruteforce
//0____0 bruteforce
switch (Globals::MissedShots[ent->EntIndex()] % 2) {
case 0: // brute right side
MAXDELTA = MaxDesyncAmount();
animStateIndex_prop->m_flGoalFeetYaw = GetNormalizedAngleyaw_property((angle + (MAXDELTA)) * nohint_resolve);//max delta 0__0
break;
case 1: // brute left side
MAXDELTA = MaxDesyncAmount();
animStateIndex_prop->m_flGoalFeetYaw = GetNormalizedAngleyaw_property((angle - (MAXDELTA)) * nohint_resolve);//0_0
break;
}
}
animStateIndex_prop->m_flGoalFeetYaw = GetNormalizedAngleyaw_property(animStateIndex_prop->m_flGoalFeetYaw);
}
Заходим в IEngineTrace - и заменяем струкутуру ray_t на вот это -
C++:
struct ray_t {
Vector m_start; // starting point, centered within the extents
Vector m_end; // starting point, centered within the extents
Vector m_delta; // direction + length of the ray
Vector m_start_offset; // Add this to m_Start to get the actual ray start
Vector m_extents; // Describes an axis aligned box extruded along a ray
const matrix3x4_t* m_world_axis_transform;
//const matrix_t *m_pWorldAxisTransform;
bool m_is_ray; // are the extents zero?
bool m_is_swept; // is delta != 0?
void initialize(const Vector& start, const Vector& end) {
m_delta = end - start;
m_is_swept = (m_delta.LengthSqr() != 0);
m_extents.x = m_extents.y = m_extents.z = 0.0f;
m_is_ray = true;
m_start_offset.x = m_start_offset.y = m_start_offset.z = 0.0f;
m_start = start;
m_end = end;
}
void initialize(Vector& vecStart, Vector& vecEnd, Vector min, Vector max) {
m_delta = vecEnd - vecStart;
m_is_swept = (m_delta.LengthSqr() != 0);
m_extents.x = (max.x - min.x);
m_extents.y = (max.y - min.y);
m_extents.z = (max.z - min.z);
m_is_ray = false;
m_start_offset.x = m_start_offset.y = m_start_offset.z = 0.0f;
m_start = vecStart + ((max + min) * 0.5f);
}
private:
};