Skip to content

Commit 5055e7f

Browse files
committed
fix: change tick counter in tools (experimental)
1 parent 4f5b316 commit 5055e7f

File tree

2 files changed

+3
-15
lines changed

2 files changed

+3
-15
lines changed

src/Features/Tas/TasPlayer.cpp

Lines changed: 3 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -467,7 +467,7 @@ TasPlayerInfo TasPlayer::GetPlayerInfo(int slot, void *player, CUserCmd *cmd, bo
467467
}
468468
}
469469

470-
pi.tick = FetchCurrentPlayerTickBase(player, clientside);
470+
pi.tick = cmd->tick_count + 1;
471471
pi.angles = engine->GetAngles(pi.slot);
472472

473473
pi.oldButtons = m_nOldButtons;
@@ -484,16 +484,6 @@ TasPlayerInfo TasPlayer::GetPlayerInfo(int slot, void *player, CUserCmd *cmd, bo
484484
return pi;
485485
}
486486

487-
int TasPlayer::FetchCurrentPlayerTickBase(void *player, bool clientside) {
488-
if (!clientside) {
489-
ServerEnt *pl = (ServerEnt *)player;
490-
return pl->template field<int>("m_nTickBase");
491-
} else {
492-
ClientEnt *pl = (ClientEnt *)player;
493-
return pl->template field<int>("m_nTickBase");
494-
}
495-
}
496-
497487
void TasPlayer::SaveUsercmdDebugs(int slot) {
498488
std::string filename = playbackInfo.slots[slot].path;
499489
std::vector<std::string> &lines = playbackInfo.slots[slot].userCmdDebugs;
@@ -667,9 +657,8 @@ void TasPlayer::PostProcess(int slot, void *player, CUserCmd *cmd) {
667657
if (!ready) return;
668658
if (slot == playbackInfo.coopControlSlot) return;
669659

670-
// player tickbase seems to be an accurate way of getting current time in ProcessMovement
671-
// every other way of getting time is incorrect due to alternateticks
672-
int tasTick = FetchCurrentPlayerTickBase(player) - startTick;
660+
// previously controlled by player's tickbase. revert if it's causing any problems
661+
int tasTick = (cmd->tick_count + 1) - startTick;
673662

674663
TasFramebulk& fb = RequestProcessedFramebulkAt(slot, tasTick);
675664

src/Features/Tas/TasPlayer.hpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,6 @@ class TasPlayer : public Feature {
112112
TasFramebulk &RequestProcessedFramebulkAt(int slot, int tick);
113113

114114
TasPlayerInfo GetPlayerInfo(int slot, void *player, CUserCmd *cmd, bool clientside = false);
115-
int FetchCurrentPlayerTickBase(void *player, bool clientside = false);
116115

117116
void SaveProcessedFramebulks();
118117
void SaveUsercmdDebugs(int slot);

0 commit comments

Comments
 (0)