Fix (make usable) save and load commands
Hello,
I'd like to use 'save' and 'load' commands in creation of tool-assisted-speedruns, but I've found they're broken or unusable, tested on two computers (Debian and Mint).
'save' seems to save the game, but writes this:
Warning: saving a multiplayer game may have strange results when restored (to properly resume, all players must join in the same player slots and then the game can be reloaded).
Saving game to aaa.sav...
PRVM_GetString: Invalid temp-string offset (363 >= 223 prog->tempstringsbuf.cursize)
Caller-provided information: PRVM_ED_WriteGlobals, name=gettaginfo_name
PRVM_GetString: Invalid temp-string offset (249 >= 223 prog->tempstringsbuf.cursize)
Caller-provided information: PRVM_ED_WriteGlobals, name=trace_dphittexturename
PRVM_GetString: Invalid temp-string offset (303 >= 223 prog->tempstringsbuf.cursize)
Caller-provided information: PRVM_ED_WriteGlobals, name=g_buf_s
PRVM_GetString: Invalid temp-string offset (834 >= 223 prog->tempstringsbuf.cursize)
Caller-provided information: PRVM_ED_WriteGlobals, name=get_model_parameters_description
PRVM_GetString: Invalid temp-string offset (291 >= 223 prog->tempstringsbuf.cursize)
Caller-provided information: PRVM_ED_WriteGlobals, name=MUTATOR_ARGV_1_string
PRVM_GetString: Invalid temp-string offset (3153543 >= 223 prog->tempstringsbuf.cursize)
Caller-provided information: PRVM_ED_Write, ent=2196, name=m_mutators
done.
Even in single player campaign.
'load' behaves very buggy:
- If I load a game during a game, it becomes extremely laggy, and some bugs appear, such as the starting message for the map is displayed constantly.
- If I disconnect and load the game from the menu, the game is not laggy, but there are no bots in the level, even though they are seen in the score table and there are additional bugs, e.g. views through teleports don't work, they only show a grid texture (probably a shader that doesn't load).
Here is beginning of a message written when I load from the menu (it then keeps spamming some text and gets extremely long):
]load aaa
Loading game from aaa.sav...
Server using port 26000
Server listening on address 0.0.0.0:26000
Server listening on address [0:0:0:0:0:0:0:0]:26000
Loading extended DarkPlaces savegame
Authenticated connection to local:2 has been established: client is ldYCr7ovvv7SqJwKkVbBQX0kCIV0Ztf9iek55wAR/CU=@Xon//Ks, I am ldYCr7o@Xon//Ks
Authenticated connection to local:1 has been established: server is ldYCr7ovvv7SqJwKkVbBQX0kCIV0Ztf9iek55wAR/CU=@Xon//Ks, I am ldYCr7o@Xon//Ks
Connection accepted to local:1
<-- server to client keepalive
Server: Xonotic build 22:06:02 Mar 31 2017 - release (progs 46032 crc)
<===================================>
Stormkeep
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
CSQC Build information: xonotic-v0.8.2~
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
The key you just pressed is not recognized by SDL. To help get this fixed, please report this to the SDL mailing list <sdl@libsdl.org> X11 KeyCode 151 (143), X11 KeySym 0x1008FF2B (XF86WakeUp).
VM_buf_del: invalid buffer 35 used in server
s503701: IFNOT _MapInfo_filtered_allocated (=1), statement 503705
s503702: STORE_F _MapInfo_filtered (=35), GLOBAL4
s503703: CALL1 buf_del (=buf_del())
rm2 : MapInfo_Filter_Free : statement 2
rm2 : MapInfo_Shutdown : statement 1
rs : RestoreGame : statement 6
VM_bufstr_get: invalid buffer 16 used in server
s160034: STORE_F GLOBAL53580, GLOBAL53581
s160035: IFNOT GLOBAL53580, statement 160037
s160036: LT GLOBAL53598, Gametypes_COUNT (=15), GLOBAL53581
s160037: AND GLOBAL53581, GLOBAL53581, GLOBAL53580
s160038: IFNOT GLOBAL53580, statement 160049
s160039: FIELD_F _Gametypes (=entity 1978), .al_buf (=.al_buf), GLOBAL4
s160040: STORE_F GLOBAL53598, GLOBAL7
s160041: CALL2 bufstr_get (=bufstr_get())
arm2 : _Gametypes_from : statement 8
rm2 : MapInfo_CurrentGametype : statement 4
rs : RestoreGame : statement 8
Loaded game, everyone rejoined - unpausing
dropclient: that client slot is not connected
s368736: GOTO , statement 368707
s368737: STORE_ENT GLOBAL53580, GLOBAL53598
s368738: FIELD_F GLOBAL53580, .createdtime (=.createdtime), GLOBAL53599
s368739: GOTO , statement 368702
s368740: IFNOT GLOBAL53601, statement 368745
s368741: SUB_F currentbots (=4), GLOBAL26728, currentbots (=4)
s368742: STORE_ENT GLOBAL53598, GLOBAL4
s368743: CALL1 dropclient (=dropclient())
found_secrets : bot_removefromlargestteam : statement 65
found_secrets : bot_removenewest : statement 1
found_secrets : bot_fixcount : statement 41
found_secrets : bot_serverframe : statement 18
./server/sv_main.qc : _StartFrame : statement 111
: StartFrame : statement 1
dropclient: that client slot is not connected
s368736: GOTO , statement 368707
s368737: STORE_ENT GLOBAL53580, GLOBAL53598
s368738: FIELD_F GLOBAL53580, .createdtime (=.createdtime), GLOBAL53599
s368739: GOTO , statement 368702
s368740: IFNOT GLOBAL53601, statement 368745
s368741: SUB_F currentbots (=3), GLOBAL26728, currentbots (=3)
s368742: STORE_ENT GLOBAL53598, GLOBAL4
s368743: CALL1 dropclient (=dropclient())
found_secrets : bot_removefromlargestteam : statement 65
found_secrets : bot_removenewest : statement 1
found_secrets : bot_fixcount : statement 41
found_secrets : bot_serverframe : statement 18
./server/sv_main.qc : _StartFrame : statement 111
: StartFrame : statement 1
dropclient: that client slot is not connected
s368736: GOTO , statement 368707
s368737: STORE_ENT GLOBAL53580, GLOBAL53598
s368738: FIELD_F GLOBAL53580, .createdtime (=.createdtime), GLOBAL53599
s368739: GOTO , statement 368702
s368740: IFNOT GLOBAL53601, statement 368745
s368741: SUB_F currentbots (=2), GLOBAL26728, currentbots (=2)
s368742: STORE_ENT GLOBAL53598, GLOBAL4
s368743: CALL1 dropclient (=dropclient())
found_secrets : bot_removefromlargestteam : statement 65
found_secrets : bot_removenewest : statement 1
found_secrets : bot_fixcount : statement 41
found_secrets : bot_serverframe : statement 18
./server/sv_main.qc : _StartFrame : statement 111
: StartFrame : statement 1
dropclient: that client slot is not connected
s368736: GOTO , statement 368707
s368737: STORE_ENT GLOBAL53580, GLOBAL53598
s368738: FIELD_F GLOBAL53580, .createdtime (=.createdtime), GLOBAL53599
s368739: GOTO , statement 368702
s368740: IFNOT GLOBAL53601, statement 368745
s368741: SUB_F currentbots (=1), GLOBAL26728, currentbots (=1)
s368742: STORE_ENT GLOBAL53598, GLOBAL4
s368743: CALL1 dropclient (=dropclient())
found_secrets : bot_removefromlargestteam : statement 65
found_secrets : bot_removenewest : statement 1
found_secrets : bot_fixcount : statement 41
found_secrets : bot_serverframe : statement 18
./server/sv_main.qc : _StartFrame : statement 111
: StartFrame : statement 1
dropclient: that client slot is not connected
s368736: GOTO , statement 368707
s368737: STORE_ENT GLOBAL53580, GLOBAL53598
s368738: FIELD_F GLOBAL53580, .createdtime (=.createdtime), GLOBAL53599
s368739: GOTO , statement 368702
s368740: IFNOT GLOBAL53601, statement 368745
s368741: SUB_F currentbots (=0), GLOBAL26728, currentbots (=0)
s368742: STORE_ENT GLOBAL53598, GLOBAL4
s368743: CALL1 dropclient (=dropclient())
found_secrets : bot_removefromlargestteam : statement 65
found_secrets : bot_removenewest : statement 1
found_secrets : bot_fixcount : statement 41
found_secrets : bot_serverframe : statement 18
./server/sv_main.qc : _StartFrame : statement 111
: StartFrame : statement 1
assignment to world.anticheat_div0_evade_offset (field 2237) in server
s170436: MUL_F GLOBAL1, GLOBAL26730, GLOBAL53599
s170437: FIELD_ENT GLOBAL53598, ._cs (=._cs), GLOBAL53580
s170438: ADDRESS GLOBAL53580, .anticheat_div0_evade_offset (=.anticheat_div0_evade_offset), GLOBAL53580
s170439: MUL_F GLOBAL26741, GLOBAL53599, GLOBAL53581
s170440: SUB_F GLOBAL53581, GLOBAL26728, GLOBAL53581
s170441: MUL_F sys_frametime (=0.0333333015), GLOBAL53581, GLOBAL53581
s170442: ADD_F servertime (=17.0000858), GLOBAL53581, GLOBAL53581
s170443: STOREP_F GLOBAL53581, GLOBAL53580
rm10 : anticheat_physics : statement 18
orld : sys_phys_monitor : statement 36
./ecs/systems/physics.qc : sys_phys_update : statement 16
./common/physics/player.qc : _SV_PlayerPhysics : statement 2
: SV_PlayerPhysics : statement 3
assignment to world.anticheat_div0_evade_v_angle (field 2238) in server
s170440: SUB_F GLOBAL53581, GLOBAL26728, GLOBAL53581
s170441: MUL_F sys_frametime (=0.0333333015), GLOBAL53581, GLOBAL53581
s170442: ADD_F servertime (=17.0000858), GLOBAL53581, GLOBAL53581
s170443: STOREP_F GLOBAL53581, GLOBAL53580
s170444: FIELD_ENT GLOBAL53598, ._cs (=._cs), GLOBAL53580
s170445: ADDRESS GLOBAL53580, .anticheat_div0_evade_v_angle (=.anticheat_div0_evade_v_angle), GLOBAL53580
s170446: FIELD_V GLOBAL53598, .v_angle (=.v_angle), GLOBAL53581
s170447: STOREP_V GLOBAL53581, GLOBAL53580
rm10 : anticheat_physics : statement 22
orld : sys_phys_monitor : statement 36
./ecs/systems/physics.qc : sys_phys_update : statement 16
./common/physics/player.qc : _SV_PlayerPhysics : statement 2
: SV_PlayerPhysics : statement 3
I would be happy if this could be fixed so that the commands are usable for the singleplayer campaign and bot games, since I have at least one use case for them now. My use case would also welcome when you could save a demo from a loaded game as a whole, from the start.