Исходник Resolver для legendware по леерам с фиксами из otcv2.idb

Модератор форума
Участник
Участник
Статус
Оффлайн
Регистрация
26 Янв 2020
Сообщения
378
Реакции
157
Короче строго не судите, попытался сделать что то годное. Получилось или нет, судите сами.
C++:
Expand Collapse Copy
void resolver::resolve_yaw()
{

    float no_side = FLT_MAX;

    auto animstate = player->get_animation_state();

    AnimationLayer layers[15];
    AnimationLayer moveLayers[3][15];
    memcpy(moveLayers, player->get_animlayers(), sizeof(AnimationLayer) * 15);

    auto speed = player->m_vecVelocity().Length2D();
    int m_side;
   
        if (speed <= 0.1f)
        {
            auto delta = math::AngleDiff(player->m_angEyeAngles().y, player->get_animation_state()->m_flGoalFeetYaw);

            if (layers[3].m_flWeight == 0.0f && layers[3].m_flCycle == 0.0f)
            {
                resolving_way = (math::AngleDiff(player->get_animation_state()->m_flEyeYaw, player->get_animation_state()->m_flGoalFeetYaw) <= 0.0) - 1;
            }
        }

        if (int(layers[12].m_flWeight * 1000.0f) == int(layers[6].m_flWeight * 1000.0f))
        {
            float firstDelta = fabs(layers[6].m_flPlaybackRate - moveLayers[0][6].m_flPlaybackRate);

            float secondDelta = fabs(layers[6].m_flPlaybackRate - moveLayers[2][6].m_flPlaybackRate);

            float thirdDelta = fabs(layers[6].m_flPlaybackRate - moveLayers[1][6].m_flPlaybackRate);

            if (firstDelta < secondDelta || thirdDelta <= secondDelta || (secondDelta * 1000.0))
            {
                if (firstDelta >= thirdDelta && secondDelta > thirdDelta && !(thirdDelta * 1000.0))
                {
                    m_side= 1;
                }
            }
            else
            {
                m_side= -1;
            }
        }
 


    if (m_side= -1)
    {
     
        animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y - 60.f);
        switch (g_ctx.globals.missed_shots[player->EntIndex()] % 2)
        {
        case 0:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y + 60.f);
            break;
        case 1:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y - 30.f);
            break;
        }

     
    }
    else if (m_side= 1)
    {
   
        animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y + 60.f);
        switch (g_ctx.globals.missed_shots[player->EntIndex()] % 2)
        {
        case 0:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y - 60.f);
            break;
        case 1:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y + 30.f);
            break;
        }
    }

 
}
 
Последнее редактирование:
Короче строго не судите, попытался сделать что то годное. Получилось или нет, судите сами.
C++:
Expand Collapse Copy
void resolver::resolve_yaw()
{
    CGameTrace enterTrace;

    auto isEnemy = ((player_t*)enterTrace.hit_entity)->m_iTeamNum() != g_ctx.local()->m_iTeamNum();

    float no_side = FLT_MAX;

    auto animstate = player->get_animation_state();

    AnimationLayer layers[15];
    AnimationLayer moveLayers[3][15];
    memcpy(moveLayers, player->get_animlayers(), sizeof(AnimationLayer) * 15);

    auto speed = player->m_vecVelocity().Length2D();
    int resolving_way;
    if (isEnemy)
    {
        if (speed <= 0.1f)
        {
            auto delta = math::AngleDiff(player->m_angEyeAngles().y, player->get_animation_state()->m_flGoalFeetYaw);

            if (layers[3].m_flWeight == 0.0f && layers[3].m_flCycle == 0.0f)
            {
                resolving_way = (math::AngleDiff(player->get_animation_state()->m_flEyeYaw, player->get_animation_state()->m_flGoalFeetYaw) <= 0.0) - 1;
            }
        }

        if (int(layers[12].m_flWeight * 1000.0f) == int(layers[6].m_flWeight * 1000.0f))
        {
            float firstDelta = fabs(layers[6].m_flPlaybackRate - moveLayers[0][6].m_flPlaybackRate);

            float secondDelta = fabs(layers[6].m_flPlaybackRate - moveLayers[2][6].m_flPlaybackRate);

            float thirdDelta = fabs(layers[6].m_flPlaybackRate - moveLayers[1][6].m_flPlaybackRate);

            if (firstDelta < secondDelta || thirdDelta <= secondDelta || (secondDelta * 1000.0))
            {
                if (firstDelta >= thirdDelta && secondDelta > thirdDelta && !(thirdDelta * 1000.0))
                {
                    resolving_way = 1;
                }
            }
            else
            {
                resolving_way = -1;
            }
        }
   }
   


    if (resolving_way = -1)
    {
       
        animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y - 60.f);
        switch (g_ctx.globals.missed_shots[player->EntIndex()] % 2)
        {
        case 0:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y + 60.f);
            break;
        case 1:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y - 30.f);
            break;
        }

       
    }
    else if (resolving_way = 1)
    {
     
        animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y + 60.f);
        switch (g_ctx.globals.missed_shots[player->EntIndex()] % 2)
        {
        case 0:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y - 60.f);
            break;
        case 1:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y + 30.f);
            break;
        }
    }

   
}
а как его вставить в легендвар?
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
auto isEnemy = ((player_t*)enterTrace.hit_entity)->m_iTeamNum() != g_ctx.local()->m_iTeamNum();
ЧЕГО НАХУЙ -________________------------
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Код:
Expand Collapse Copy
auto isEnemy = ((player_t*)enterTrace.hit_entity)->m_iTeamNum() != g_ctx.local()->m_iTeamNum();
красиво делаешь, ничего не скажешь
 
C++:
Expand Collapse Copy
e->GetEyeYaw().y = e->GetEyeYaw().y + math::random_float(-60.0f, 60.0f);

так будет лучше
 
Код:
Expand Collapse Copy
auto isEnemy = ((player_t*)enterTrace.hit_entity)->m_iTeamNum() != g_ctx.local()->m_iTeamNum();
красиво делаешь, ничего не скажешь
уже увидел, сейчас исправлю
C++:
Expand Collapse Copy
e->GetEyeYaw().y = e->GetEyeYaw().y + math::random_float(-60.0f, 60.0f);

так будет лучше
я тут не на рандом значения выбираю. В начале идет первый сайд а потом уже идет перебор 2х других
 
Хуйня, ориг резольвер куда лучше...
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
What's the point of this? Default Lw resolver is 100x better than this wrong reversed shit.
 
Короче строго не судите, попытался сделать что то годное. Получилось или нет, судите сами.
C++:
Expand Collapse Copy
void resolver::resolve_yaw()
{

    float no_side = FLT_MAX;

    auto animstate = player->get_animation_state();

    AnimationLayer layers[15];
    AnimationLayer moveLayers[3][15];
    memcpy(moveLayers, player->get_animlayers(), sizeof(AnimationLayer) * 15);

    auto speed = player->m_vecVelocity().Length2D();
    int m_side;
  
        if (speed <= 0.1f)
        {
            auto delta = math::AngleDiff(player->m_angEyeAngles().y, player->get_animation_state()->m_flGoalFeetYaw);

            if (layers[3].m_flWeight == 0.0f && layers[3].m_flCycle == 0.0f)
            {
                resolving_way = (math::AngleDiff(player->get_animation_state()->m_flEyeYaw, player->get_animation_state()->m_flGoalFeetYaw) <= 0.0) - 1;
            }
        }

        if (int(layers[12].m_flWeight * 1000.0f) == int(layers[6].m_flWeight * 1000.0f))
        {
            float firstDelta = fabs(layers[6].m_flPlaybackRate - moveLayers[0][6].m_flPlaybackRate);

            float secondDelta = fabs(layers[6].m_flPlaybackRate - moveLayers[2][6].m_flPlaybackRate);

            float thirdDelta = fabs(layers[6].m_flPlaybackRate - moveLayers[1][6].m_flPlaybackRate);

            if (firstDelta < secondDelta || thirdDelta <= secondDelta || (secondDelta * 1000.0))
            {
                if (firstDelta >= thirdDelta && secondDelta > thirdDelta && !(thirdDelta * 1000.0))
                {
                    m_side= 1;
                }
            }
            else
            {
                m_side= -1;
            }
        }



    if (m_side= -1)
    {
    
        animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y - 60.f);
        switch (g_ctx.globals.missed_shots[player->EntIndex()] % 2)
        {
        case 0:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y + 60.f);
            break;
        case 1:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y - 30.f);
            break;
        }

    
    }
    else if (m_side= 1)
    {
  
        animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y + 60.f);
        switch (g_ctx.globals.missed_shots[player->EntIndex()] % 2)
        {
        case 0:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y - 60.f);
            break;
        case 1:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y + 30.f);
            break;
        }
    }


}

неплохо только сурс лв сам говно типо когда меняешь глобально резольвер (тобеж на animlayer) рейдж тупит
 
я не согласен, этот рес могет. Тем более что это фри версия. И с учетом того что это не весь код)
Не весь код) ГЫ) Смешно) Хахахаха). Держу в курсе половина пастеров этого форума никак не дополнит. А знающие люди давно уже написали резольверы. Соу бесполезная хуйня. /del тему
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Короче строго не судите, попытался сделать что то годное. Получилось или нет, судите сами.
C++:
Expand Collapse Copy
void resolver::resolve_yaw()
{

    float no_side = FLT_MAX;

    auto animstate = player->get_animation_state();

    AnimationLayer layers[15];
    AnimationLayer moveLayers[3][15];
    memcpy(moveLayers, player->get_animlayers(), sizeof(AnimationLayer) * 15);

    auto speed = player->m_vecVelocity().Length2D();
    int m_side;
 
        if (speed <= 0.1f)
        {
            auto delta = math::AngleDiff(player->m_angEyeAngles().y, player->get_animation_state()->m_flGoalFeetYaw);

            if (layers[3].m_flWeight == 0.0f && layers[3].m_flCycle == 0.0f)
            {
                resolving_way = (math::AngleDiff(player->get_animation_state()->m_flEyeYaw, player->get_animation_state()->m_flGoalFeetYaw) <= 0.0) - 1;
            }
        }

        if (int(layers[12].m_flWeight * 1000.0f) == int(layers[6].m_flWeight * 1000.0f))
        {
            float firstDelta = fabs(layers[6].m_flPlaybackRate - moveLayers[0][6].m_flPlaybackRate);

            float secondDelta = fabs(layers[6].m_flPlaybackRate - moveLayers[2][6].m_flPlaybackRate);

            float thirdDelta = fabs(layers[6].m_flPlaybackRate - moveLayers[1][6].m_flPlaybackRate);

            if (firstDelta < secondDelta || thirdDelta <= secondDelta || (secondDelta * 1000.0))
            {
                if (firstDelta >= thirdDelta && secondDelta > thirdDelta && !(thirdDelta * 1000.0))
                {
                    m_side= 1;
                }
            }
            else
            {
                m_side= -1;
            }
        }



    if (m_side= -1)
    {
   
        animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y - 60.f);
        switch (g_ctx.globals.missed_shots[player->EntIndex()] % 2)
        {
        case 0:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y + 60.f);
            break;
        case 1:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y - 30.f);
            break;
        }

   
    }
    else if (m_side= 1)
    {
 
        animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y + 60.f);
        switch (g_ctx.globals.missed_shots[player->EntIndex()] % 2)
        {
        case 0:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y - 60.f);
            break;
        case 1:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y + 30.f);
            break;
        }
    }


}
AnimationLayer layers[15]; // зачем
AnimationLayer moveLayers[3][15]; // зачем
Ты должен его сторить и потом сравнивать 0.о, а не одно и тоже сравнивать 0.оооооооооооооооооооо
memcpy(moveLayers, player->get_animlayers(), sizeof(AnimationLayer) * 15); // погугли чё такое мемкопи блин

C++:
Expand Collapse Copy
if (m_side= -1)
    {
   
        animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y - 60.f);
        switch (g_ctx.globals.missed_shots[player->EntIndex()] % 2)
        {
        case 0:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y + 60.f);
            break;
        case 1:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y - 30.f);
            break;
        }

   
    }
    else if (m_side= 1)
    {
 
        animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y + 60.f);
        switch (g_ctx.globals.missed_shots[player->EntIndex()] % 2)
        {
        case 0:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y - 60.f);
            break;
        case 1:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y + 30.f);
            break;
        }
    }
Крутой брутфорс друк, интересно, у таких как ты вообще есть логика, про мозг я молчу
да ещё и брать всё с паблик "реверс", вронг вронг и ещё раз вронг
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Своими темами вы заблуждаете друг людей, которые только вникаются в сферу хвх кодинга, половина форума обсурда
Как минимум, еслиб не было таким stupid тем, было бы легче другим развиваться, смотря на ПРАВИЛЬНЫЙ КОД ИЛИ ПОДСКАЗКИ, ХУЙ КТО ВАМ ДАСТ ЗА ФРИ ЧТО-ТО НОРМАЛЬНОЕ.
 
Блять когда сливаешь свои идею находится какие то пидорасы которые начинают пиздить то что они всё знают но на самом деле всё кто много пиздят уже на помойке валяются. Человек блять бесплатно дал свои наработки а вы бляди не до оцениваете друд чужих. Так что пошли нахуй отсюда гении хуевы.
Ну у парня половина кода не правильно сделана. Хотя сама логика брута, уже есть прогресс. Но как минимум, ему следовало бы изучить С++.

Из-за того, что он присваивает сайды, вместо проверки на равенство, он ломает весь код. Я уже молчу о том, что он сравнивает вейт 12 леера с вейтом 6 леера, вместо того, что б нормально спастить.

Нафиг вы вообще пастите этот мусор, я спастил себе, ели попадает. Ну ладно там я, может я дурень и что-то не так сделал. Так в меня пандора тоже миссает в мувы постоянно, у которой такой же пащенный ресольвер.... Перестаньте пастить этот бред, обычный +- 60 рандом на мувы будет куда полезнее чем вот это вот все, даже если бы оно на 100% правильным.
 
Ну у парня половина кода не правильно сделана. Хотя сама логика брута, уже есть прогресс. Но как минимум, ему следовало бы изучить С++.

Из-за того, что он присваивает сайды, вместо проверки на равенство, он ломает весь код. Я уже молчу о том, что он сравнивает вейт 12 леера с вейтом 6 леера, вместо того, что б нормально спастить.

Нафиг вы вообще пастите этот мусор, я спастил себе, ели попадает. Ну ладно там я, может я дурень и что-то не так сделал. Так в меня пандора тоже миссает в мувы постоянно, у которой такой же пащенный ресольвер.... Перестаньте пастить этот бред, обычный +- 60 рандом на мувы будет куда полезнее чем вот это вот все, даже если бы оно на 100% правильным.
уже работаем над фиксом ошибочек
 
Короче строго не судите, попытался сделать что то годное. Получилось или нет, судите сами.
C++:
Expand Collapse Copy
void resolver::resolve_yaw()
{

 

    if (m_side= -1)
    {
   
        animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y - 60.f);
        switch (g_ctx.globals.missed_shots[player->EntIndex()] % 2)
        {
        case 0:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y + 60.f);
            break;
        case 1:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y - 30.f);
            break;
        }

   
    }
    else if (m_side= 1)
    {
 
        animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y + 60.f);
        switch (g_ctx.globals.missed_shots[player->EntIndex()] % 2)
        {
        case 0:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y - 60.f);
            break;
        case 1:
            animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y + 30.f);
            break;
        }
    }


}
это что за говно код блин если ты сделал фикс анимацию енеми правильно и хочей брутить по анимации то этот часть кода нахер не нужно
это что за говно код блин если ты сделал фикс анимацию енеми правильно и хочей брутить по анимации то этот часть кода нахер не нужно
и да какие нафиг
animstate->m_flGoalFeetYaw = math::normalize_yaw(player->m_angEyeAngles().y - 30.f); всегда было 60 и 45,
 
resolving_way is undefined
 
Назад
Сверху Снизу