quake3live/code
serge_shubin c6af63ae42 SNAPFLAG_RESET_ENTITIES: no-interpolation reset without gamestate resend
Replace the gamestate resend approach for map_restart with a custom
snapshot flag (SNAPFLAG_RESET_ENTITIES, bit 4 in snapFlags byte).

Server side (sv_netdemo.c):
- On restart frame, OR the flag into svs.snapFlagServerBit (one-shot)
- Cleared at the start of the next playback frame

Client side (cg_snapshot.c):
- CG_SetNextSnap: clear currentValid for all entities when flag is set,
  making them all "new" — existing interpolation check at line 228
  sets interpolate=qfalse, CG_TransitionEntity calls CG_ResetEntity
- Also set cg.nextFrameTeleport=qtrue to prevent playerstate
  interpolation during follow mode

No loading screen, no lost frames, no gamestate resend. Entities and
playerstate both snap to correct positions on map_restart.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 00:19:36 +08:00
..
botlib Migrate to Visual Studio 2022: replace .vcproj with .vcxproj, add .gitignore 2026-03-18 13:36:28 +08:00
bspc Migrate to Visual Studio 2022: replace .vcproj with .vcxproj, add .gitignore 2026-03-18 13:36:28 +08:00
cgame SNAPFLAG_RESET_ENTITIES: no-interpolation reset without gamestate resend 2026-03-24 00:19:36 +08:00
client Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
game SNAPFLAG_RESET_ENTITIES: no-interpolation reset without gamestate resend 2026-03-24 00:19:36 +08:00
jpeg-6 Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
macosx Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
null Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
q3_ui Copy game/cgame/ui to missionpack/ for TA configurations 2026-03-18 16:06:35 +08:00
qcommon QL movement foundation: auto-hop, PM_Jump/PM_CanJump extraction, lastJumpTime 2026-03-21 05:45:18 +08:00
renderer Migrate to Visual Studio 2022: replace .vcproj with .vcxproj, add .gitignore 2026-03-18 13:36:28 +08:00
server SNAPFLAG_RESET_ENTITIES: no-interpolation reset without gamestate resend 2026-03-24 00:19:36 +08:00
splines Migrate to Visual Studio 2022: replace .vcproj with .vcxproj, add .gitignore 2026-03-18 13:36:28 +08:00
ui Build system cleanup: rename to quake3live.exe, fix DLL loading, default to missionpack 2026-03-20 18:17:28 +08:00
unix Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
win32 Input sticky buttons fixed 2026-03-21 20:51:28 +08:00
cgame.lnt Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
clean.bat Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
Construct Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
game.lnt Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
installdebug.bat Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
installrelease.bat Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
installvms.bat Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
Makefile Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
opts.lnt Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
quake3.sln Build system cleanup: rename to quake3live.exe, fix DLL loading, default to missionpack 2026-03-20 18:17:28 +08:00
quake3.vcxproj Optional LZ4 compression for demo files 2026-03-23 05:22:41 +08:00
quake3.vcxproj.filters Migrate to Visual Studio 2022: replace .vcproj with .vcxproj, add .gitignore 2026-03-18 13:36:28 +08:00
renderer.lnt Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
run.bat Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00
runrelease.bat Initial commit: Quake 3 1.32b GPL source 2026-03-18 13:32:24 +08:00