Repository navigation
R&D: ds_debug_log_gun_lowered, POV vs HLTV gun lowering timelines (#704) - #707
Merged
Merged
Conversation
…oes down and up (#704) Each change is logged with the demo player's clock: in a POV demo from client.dll's g_ihidexhair (set by DoDGunGoOnOffScreen every frame), in an HLTV demo's in-eye view from dodstudio_spec_match_pov's copy, with the reason anim_fix lowered it (sprinting, prone transition, crawling, in the air, on a ladder). Played over the same stretch of a POV demo and the HLTV demo of that half, the two lists line up to show where the copy differs. Part of #704. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
After #719 the R&D cvar is ds_debug_log_gun_lowered (the #555 table). lib.rs keeps dev's module list with gun_log in order; Commands.txt takes dev's side with the entry re-added; docs/dodstudio_commands.md gets the row it never had; console_commands_data.js regenerated; the name is listed in console_prefix's NEW_SINCE_555. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Owner
Author
|
Merged
🤖 Generated with Claude Code |
Conflicts: console_prefix.rs's NEW_SINCE_555 keeps both sides' names; console_commands_data.js is regenerated with console_names.py. The cvar's docs row, Commands.txt line and gun_log.rs module doc now say that in a POV demo it reads client.dll's own lowering sum, not the drawn gun, so it misses jump and crouch-jump lowering (#704). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ccoventry
marked this pull request as ready for review
October 23, 2026 23:17
console_commands_data.js regenerated with console_names.py after #962. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
console_commands_data.js regenerated with console_names.py after #986. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Release note: none
Part of #704.
A debug cvar,
ds_debug_log_gun_lowered, logs every time the first-person gun goes down or comes back up, with the demo player's clock:client.dll'sg_ihidexhair, found by a pattern that is unique and the same on both installs;ds_spec_match_pov's copy (spectator_gun), withanim_fix's reason (sprinting, prone transition, crawling, in the air, on a ladder).Played over the same stretch of a POV demo and the HLTV demo of that half, the two lists line up. The findings are on #704: the two agree 94-96% of the time, with four kinds of difference. The jump one turned out to be the log's, not the game's (see the limit below), so no decision is needed there.
It's a measuring tool; the fixes it points at come in their own PRs (#767 for the mid-sprint bounce).
Tests:
cargo test -p goldsrc-hookspasses, and clippy 1.98.1 (host and i686) is clean.Commands.txtandconsole_commands_data.jsare updated.After merging dev (#719), the name is
ds_debug_log_gun_lowered, as the #555 table lists it. It has a row indocs/dodstudio_commands.mdnow and is listed inconsole_prefix'sNEW_SINCE_555. All checks pass: hook tests (687), workspace tests, clippy (both targets), fmt andnpm run test:unit. I rebuilt the test DLL intolocal\test-704b\. game_probe on PRE and POST playedwsod25_grp2_h1_hltvfrom 1499 s, in-eye on player 13. Both loggedgun_log: down at 1540.949 (spec 13: sprinting)-style lines and never loggedcould not find g_ihidexhair. Reports:local\game-probe\707-ds-pre\,707-ds-post\.Merged dev again (ready for review). The only conflicts were
console_prefix.rs'sNEW_SINCE_555(kept both sides' names) andconsole_commands_data.js(regenerated withconsole_names.py, not hand-merged);lib.rs,commands.rs,Commands.txtanddocs/dodstudio_commands.mdmerged cleanly. Checks: hook tests (736),nativetests (769), clippy 1.98.1 on host and i686, fmt andnpm run test:unit(779) all pass. The new test DLL is inlocal\test-707\.The log's limit: in a POV demo it reads
client.dll's own lowering sum (g_ihidexhair), not the gun that is drawn, so it misses POV's lowering on a jump or a crouch-jump. That is what made the first finding ("POV never lowers for a jump") wrong; see the correction on #704. Treat a POV-vs-HLTV difference it reports as a lead to check against the drawn frames. The cvar's docs row, itsCommands.txtline andgun_log.rs's module doc now say so.🤖 Generated with Claude Code