quake3live/code/game
serge_shubin ba2dbb803e Implant QL pmove system into Q3 Team Arena
Replace Q3TA player movement with Quake Live's pmove system,
decompiled from qagamex64.so via Ghidra MCP.

Struct changes:
- playerState_t: +12 bytes (field_08c, field_094, field_09c,
  lastJumpTime, jumped, crouchSlideTimer, forwardmove/rightmove/upmove)
- usercmd_t: +4 bytes (field_15, field_16 between weapon and forwardmove)
- pmove_t: +16 bytes (field_0dc/0e0/0e4/0f8, removed framecount)
- pml_t: +12 bytes (isJumppad, wallContact, isStepJump)
- pm_flags: remapped to QL values (21 flags, several moved/new)

New physics systems:
- Dual VQ3/PQL physics (PMF_PROMODE)
- Double jump, crouch slide, chain/ramp/step jump
- Wall contact movement, grapple hook physics
- 34 server-tunable pmove_* cvars with cgame prediction sync

Network protocol updated for new struct fields and usercmd bytes.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-20 02:57:53 +08:00
..
ai_chat.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
ai_chat.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
ai_cmd.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
ai_cmd.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
ai_dmnet.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
ai_dmnet.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
ai_dmq3.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
ai_dmq3.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
ai_main.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
ai_main.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
ai_team.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
ai_team.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
ai_vcmd.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
ai_vcmd.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
be_aas.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
be_ai_char.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
be_ai_chat.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
be_ai_gen.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
be_ai_goal.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
be_ai_move.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
be_ai_weap.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
be_ea.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
bg_lib.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
bg_lib.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
bg_local.h Implant QL pmove system into Q3 Team Arena 2026-03-20 02:57:53 +08:00
bg_misc.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
bg_pmove.c Implant QL pmove system into Q3 Team Arena 2026-03-20 02:57:53 +08:00
bg_public.h Implant QL pmove system into Q3 Team Arena 2026-03-20 02:57:53 +08:00
bg_slidemove.c Implant QL pmove system into Q3 Team Arena 2026-03-20 02:57:53 +08:00
botlib.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
chars.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
Conscript Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_active.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_arenas.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_bot.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_client.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_cmds.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_combat.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_items.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_local.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_main.c Implant QL pmove system into Q3 Team Arena 2026-03-20 02:57:53 +08:00
g_mem.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_misc.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_missile.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_mover.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_public.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_rankings.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_rankings.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_session.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_spawn.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_svcmds.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_syscalls.asm Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_syscalls.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_target.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_team.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_team.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_trigger.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_utils.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
g_weapon.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
game.bat Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
game.def Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
game.q3asm Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
game.sh Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
game.vcxproj Copy game/cgame/ui to missionpack/ for TA configurations 2026-03-18 16:06:35 +08:00
game.vcxproj.filters Migrate to Visual Studio 2022: replace .vcproj with .vcxproj, add .gitignore 2026-03-18 13:36:28 +08:00
game_ta.bat Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
game_ta.q3asm Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
game_ta.sh Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
inv.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
match.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
q_math.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
q_shared.c Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
q_shared.h Implant QL pmove system into Q3 Team Arena 2026-03-20 02:57:53 +08:00
surfaceflags.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
syn.h Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00