-
Автор темы
- #1
Я видел дохуя постов с паблик анимациями, ресольвером и т.д. Но чтобы кто-то додумался сделать что-то своё? Людям просто лень изучать игру? Или может кто-то не помог пастерам в начинаниях? НЕТ! Вина всему этому посты некоторых "умных людей". Вы просто засираете форум своим говном, которое и так уже лежит в паблике! Из-за этого другие начинающие пастеры не могут различить что из этого мусора может оказаться полезным для них. Ну да ладно, это всего-лишь моё мнение о ситуации которую видят многие и сами.
Приступим.
Начнём с того, что ваш легендвар - довольно понятная для начала база, но она имеет очень, и ещё раз ОЧЕНЬ много мусора. Пасты лв могут иметь хорошие визуалы, и то не везде качественный рендер, который просто жрёт весь ваш фпс, за то потом, мы натыкаемся на темы по типу: "Автоволл жрёт фпс", хотя это ошибка не ваших кривых рук, а тех, кто до вас держал сурс.
Разберём ещё одну очень забавную вещь.
На форуме лежат темы по типу: "Правильное обновление анимаций" или же вопросы по данной теме.
Ну как вам сказать... Давайте посмотрим на исходный код вашего говна:
И дело не только в неправильном сетапе матриц..
Дело в том, что при включённом рейдже, моделька енеми будет соответствовать данному положению:
И весь ваш ресольвер, который вы тоже спастили, идёт нахуй!! Потому что данное положение модельки енеми уже неправильное!
И никакие паблик ресольверы на анимлеерах вам не помогут, это всё тот же мусор!
Это только один пример из множества мусора, присутствующего в данной базе. Поэтому если хотите делать достойный рекод - начните с нуля. Даже будь это легендвар, оставьте только то что реально выглядит не так плохо, пусть это будут визуалы, антиаимы, фейклаги, но такие вещи по типу анимаций, аимбота и множества хуков, влияющих на возможности вашей пасты вы должны разобрать сами! Не нужно пытаться улучшить труп, напихивая его говном с паблика. Лучше от этого точно не станет!
Надеюсь кто-то начнёт думать. А то смотря на такие темы реально блевать хочется.
Ну в принципе это всё :)
Приступим.
Начнём с того, что ваш легендвар - довольно понятная для начала база, но она имеет очень, и ещё раз ОЧЕНЬ много мусора. Пасты лв могут иметь хорошие визуалы, и то не везде качественный рендер, который просто жрёт весь ваш фпс, за то потом, мы натыкаемся на темы по типу: "Автоволл жрёт фпс", хотя это ошибка не ваших кривых рук, а тех, кто до вас держал сурс.
Разберём ещё одну очень забавную вещь.
На форуме лежат темы по типу: "Правильное обновление анимаций" или же вопросы по данной теме.
Ну как вам сказать... Давайте посмотрим на исходный код вашего говна:
animations.cpp:
#if RELEASE
if (!player_info.fakeplayer && g_ctx.local()->is_alive() && e->m_iTeamNum() != g_ctx.local()->m_iTeamNum() && !g_cfg.legitbot.enabled) //-V807
#else
if (g_ctx.local()->is_alive() && e->m_iTeamNum() != g_ctx.local()->m_iTeamNum() && !g_cfg.legitbot.enabled)
#endif
{
animstate->m_flGoalFeetYaw = previous_goal_feet_yaw[e->EntIndex()]; //-V807
g_ctx.globals.updating_animation = true;
e->update_clientside_animation();
g_ctx.globals.updating_animation = false;
previous_goal_feet_yaw[e->EntIndex()] = animstate->m_flGoalFeetYaw;
memcpy(animstate, &state, sizeof(c_baseplayeranimationstate));
animstate->m_flGoalFeetYaw = math::normalize_yaw(e->m_angEyeAngles().y); //-V807
g_ctx.globals.updating_animation = true;
e->update_clientside_animation();
g_ctx.globals.updating_animation = false;
setup_matrix(e, animlayers, NONE);
memcpy(animstate, &state, sizeof(c_baseplayeranimationstate));
animstate->m_flGoalFeetYaw = math::normalize_yaw(e->m_angEyeAngles().y + 60.0f);
g_ctx.globals.updating_animation = true;
e->update_clientside_animation();
g_ctx.globals.updating_animation = false;
setup_matrix(e, animlayers, FIRST);
memcpy(animstate, &state, sizeof(c_baseplayeranimationstate));
animstate->m_flGoalFeetYaw = math::normalize_yaw(e->m_angEyeAngles().y - 60.0f);
g_ctx.globals.updating_animation = true;
e->update_clientside_animation();
g_ctx.globals.updating_animation = false;
setup_matrix(e, animlayers, SECOND);
memcpy(animstate, &state, sizeof(c_baseplayeranimationstate));
player_resolver[e->EntIndex()].initialize(e, record, previous_goal_feet_yaw[e->EntIndex()], e->m_angEyeAngles().x);
player_resolver[e->EntIndex()].resolve_yaw();
switch (record->side)
{
case RESOLVER_ORIGINAL:
animstate->m_flGoalFeetYaw = previous_goal_feet_yaw[e->EntIndex()];
break;
case RESOLVER_ZERO:
animstate->m_flGoalFeetYaw = math::normalize_yaw(e->m_angEyeAngles().y);
break;
case RESOLVER_FIRST:
animstate->m_flGoalFeetYaw = math::normalize_yaw(e->m_angEyeAngles().y + 60.0f);
break;
case RESOLVER_SECOND:
animstate->m_flGoalFeetYaw = math::normalize_yaw(e->m_angEyeAngles().y - 60.0f);
break;
case RESOLVER_LOW_FIRST:
animstate->m_flGoalFeetYaw = math::normalize_yaw(e->m_angEyeAngles().y + 30.0f);
break;
case RESOLVER_LOW_SECOND:
animstate->m_flGoalFeetYaw = math::normalize_yaw(e->m_angEyeAngles().y - 30.0f);
break;
}
e->m_angEyeAngles().x = player_resolver[e->EntIndex()].resolve_pitch();
}
Дело в том, что при включённом рейдже, моделька енеми будет соответствовать данному положению:
animations.cpp:
animstate->m_flGoalFeetYaw = math::normalize_yaw(e->m_angEyeAngles().y - 60.0f);
g_ctx.globals.updating_animation = true;
e->update_clientside_animation();
g_ctx.globals.updating_animation = false;
И никакие паблик ресольверы на анимлеерах вам не помогут, это всё тот же мусор!
Это только один пример из множества мусора, присутствующего в данной базе. Поэтому если хотите делать достойный рекод - начните с нуля. Даже будь это легендвар, оставьте только то что реально выглядит не так плохо, пусть это будут визуалы, антиаимы, фейклаги, но такие вещи по типу анимаций, аимбота и множества хуков, влияющих на возможности вашей пасты вы должны разобрать сами! Не нужно пытаться улучшить труп, напихивая его говном с паблика. Лучше от этого точно не станет!
Надеюсь кто-то начнёт думать. А то смотря на такие темы реально блевать хочется.
Ну в принципе это всё :)