Вопрос Doubletap clientsided on community servers.

Начинающий
Статус
Оффлайн
Регистрация
17 Дек 2018
Сообщения
116
Реакции[?]
5
Поинты[?]
0
Meh, switched from the writeusercmd hook to cl_move since I heard it was better. Tested on local servers, worked like a charm. However, when testing on community servers, it was always clientsided. From my understanding, this could be caused because the commands sent have too high of a tick_count. As to why it does, or how to fix it, I'm not certain at all which is why I am making this post. I read about blocking prediction on cmds with too high of a tick_count, but I'm not sure.
here is my shifting:
Пожалуйста, авторизуйтесь для просмотра ссылки.

This is what "my" cl_move hook look like:
Пожалуйста, авторизуйтесь для просмотра ссылки.


I also attempted fixing my tickbase, but from my understanding fixing tickbase is not needed for the doubletap to not be clientsided.
Any help is appreciated.
 
ima sippin lean
Забаненный
Статус
Оффлайн
Регистрация
6 Май 2020
Сообщения
495
Реакции[?]
380
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
dont really know how exactly it can be better but however
prevent ur cheat from changing send_packet ( should be false while u are in shift cycle )
fix netvars compression, setup final tick on last shifted tick and set accumulate_extra_samples on zero when u shifting
 
Начинающий
Статус
Оффлайн
Регистрация
17 Дек 2018
Сообщения
116
Реакции[?]
5
Поинты[?]
0
[QUOTE = "L1ney, post: 2487708, member: 348914"]
dont really know how exactly it can be better but however
prevent ur cheat from changing send_packet (should be false while u are in shift cycle)
fix netvars compression, setup final tick on last shifted tick and set accumulate_extra_samples on zero when u shifting
[/QUOTE]

Why would sendpacket matter? wouldn't the cmds still be simulated no matter if it's true or false?

edit: Also, you'd want to set send_packet to true when shifting. Calling cl_move original also calls createmove, therefore in createmove, we set sendpacket to our last shifted command which would be one.
 
Последнее редактирование:
ima sippin lean
Забаненный
Статус
Оффлайн
Регистрация
6 Май 2020
Сообщения
495
Реакции[?]
380
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Начинающий
Статус
Оффлайн
Регистрация
17 Дек 2018
Сообщения
116
Реакции[?]
5
Поинты[?]
0
u will stop them from how u call it "simulation" if u gonna send the packet durning shifting tru the cl_move
How so? valve does something like:
if (Cmd->tickcount <g_Globals-> tickcount + maxprocesscmd )
SimulateCommands ();

Setting send_packet to false does not make any sense.
 
ima sippin lean
Забаненный
Статус
Оффлайн
Регистрация
6 Май 2020
Сообщения
495
Реакции[?]
380
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
ima sippin lean
Забаненный
Статус
Оффлайн
Регистрация
6 Май 2020
Сообщения
495
Реакции[?]
380
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
setting it to false does not change anything, tested btw.
maybe dont shift tru the cl_move if u cant ( kek )
also if u cant move ur doubletap from write_user_cmd_delta_to_buffer to cl_move means that u dont even shifting tru the wucdtb
u are just overriding real commands and run them tru the cm cmd from client_mode which means that u just pasted double tap from lw o___o
 
Начинающий
Статус
Оффлайн
Регистрация
17 Дек 2018
Сообщения
116
Реакции[?]
5
Поинты[?]
0
maybe dont shift tru the cl_move if u cant ( kek )
also if u cant move ur doubletap from write_user_cmd_delta_to_buffer to cl_move means that u dont even shifting tru the wucdtb
u are just overriding real commands and run them tru the cm cmd from client_mode which means that u just pasted double tap from lw o___o
no, the doubletap was not pasted from lw.

also:
CCSPlayer::PlayerRunCommand:
  1. // don't run commands in the future
  2. if ( !IsEngineThreaded() &&
  3. ( ucmd->tick_count > (gpGlobals->tickcount + sv_max_usercmd_future_ticks.GetInt() ) ) )
  4. {
  5. DevMsg( "Client cmd out of sync (delta %i).\n", ucmd->tick_count - gpGlobals->tickcount );
  6. return;
  7. }
edit: Doesn't really matter, i still don't know how to fix the issues as I am new to this kind of stuff.
 
Пользователь
Статус
Оффлайн
Регистрация
15 Июл 2021
Сообщения
233
Реакции[?]
85
Поинты[?]
0
no, the doubletap was not pasted from lw.

also:
CCSPlayer::PlayerRunCommand:
  1. // don't run commands in the future
  2. if ( !IsEngineThreaded() &&
  3. ( ucmd->tick_count > (gpGlobals->tickcount + sv_max_usercmd_future_ticks.GetInt() ) ) )
  4. {
  5. DevMsg( "Client cmd out of sync (delta %i).\n", ucmd->tick_count - gpGlobals->tickcount );
  6. return;
  7. }
edit: Doesn't really matter, i still don't know how to fix the issues as I am new to this kind of stuff.
C++:
send packet on last tick only

if (shifting && !final_tick)
{
return false;
}
 
Похожие темы
Сверху Снизу