forked from ddnet/ddnet
-
Notifications
You must be signed in to change notification settings - Fork 55
Open
Description
Description
When tc_frozen_katana is enabled, entering freeze-area state can make the top-left weapon HUD show the wrong active weapon.
This appears to be a side effect of the "katana in freeze" feature: the player model should display katana, but HUD should still reflect the real held weapon.
Version
- Latest release tested: 10.8.7
- Also reproducible on current master build (as of 2026-03-25)
Environment
- OS: Windows 11 x64
- Map mode: DDRace-like maps with freeze areas (including situations where
in-freezeis true)
Steps To Reproduce
- Enable
tc_frozen_katana 1. - Hold a non-ninja weapon (gun/shotgun/grenade/laser).
- Enter a freeze-area/in-freeze state.
- Check the top-left weapon HUD (DDRace player-state weapon row).
Expected Behavior
- Player model can show katana (visual effect), but
- HUD highlight should still show the real active weapon.
Actual Behavior
- HUD active weapon becomes desynced, instead of the real held weapon.
Suspected Cause
CPlayers::OnRender mutates shared render state weapon (m_RenderCur.m_Weapon = WEAPON_NINJA) for freeze-katana rendering.
Later, HUD reads m_RenderCur.m_Weapon to determine active weapon highlight, so HUD is polluted by a model-only visual override.
Suggested Fix
Keep freeze-katana override in a temporary per-render copy used only for tee model rendering.
Do not write the katana override back into shared m_RenderCur.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels