AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Plugin/Gameplay Ideas and Requests (https://forums.alliedmods.net/forumdisplay.php?f=60)
-   -   How to solve this problem? (https://forums.alliedmods.net/showthread.php?t=305123)

geipoe 02-08-2018 12:45

How to solve this problem?
 
I upload 48 tripartity maps on my server,sometimes when there are 1-2 players are playing one of those maps,another player put in and the server will crash with this:
Client "xxxxx" connected (xxx.xxx.xxx.xxx : xxxxx).
############################################# ########################################
Can't recreate dictionary for maps/l4d2_crashbandicootvs1.bsp, file must be writable!!!
############################################# ########################################
Host_Error: Overflow error writing string table baseline Scenes
Host_Error: Overflow error writing string table baseline Scenes
Segmentation fault (core dumped)
Add "-debug" to the ./srcds_run command line to generate a debug.log to help with solving this problem
Server restart in 10 seconds

Can anyone help me with this,thanks a lot.

freak.exe_uLow 02-08-2018 13:01

Re: How to solve this problem?
 
Quote:

Originally Posted by geipoe (Post 2577099)
I upload 48 tripartity maps on my server,sometimes when there are 1-2 players are playing one of those maps,another player put in and the server will crash with this:
Client "xxxxx" connected (xxx.xxx.xxx.xxx : xxxxx).
############################################# ########################################
Can't recreate dictionary for maps/l4d2_crashbandicootvs1.bsp, file must be writable!!!
############################################# ########################################
Host_Error: Overflow error writing string table baseline Scenes
Host_Error: Overflow error writing string table baseline Scenes
Segmentation fault (core dumped)
Add "-debug" to the ./srcds_run command line to generate a debug.log to help with solving this problem
Server restart in 10 seconds

Can anyone help me with this,thanks a lot.

Mhh maybe this here "file must be writable!!!" give the map the "640" required rights and try it again :/

cravenge 02-09-2018 22:34

Re: How to solve this problem?
 
Quote:

Originally Posted by geipoe (Post 2577099)
[...]

The client isn't the cause of the crash. It's the map's fault.

Simply because there's no stringtable dictionary on some maps in some custom campaigns. The crash doesn't occur when the map is loaded with players. It happens when someone TRIES to join the map when there ARE other players.

Once that someone connects, the server tries to write a new stringtable in the (non-writable, maybe?) .bsp file but since it is already packed, the server has no other choice but to abort the process and force crash.

There is three ways to fix this, though. Either:
  1. Manually type "stringtabledictionary" in the server console (but you need to restart the map after this),
  2. Add "-stringtables" in the server's launch parameters, or;
  3. Set "stringtable_alwaysrebuilddictionaries" convar to 1 to let the server create a stringtable automatically while the custom map is being loaded.

geipoe 02-11-2018 09:22

Re: How to solve this problem?
 
Quote:

Originally Posted by cravenge (Post 2577386)
The client isn't the cause of the crash. It's the map's fault.

Simply because there's no stringtable dictionary on some maps in some custom campaigns. The crash doesn't occur when the map is loaded with players. It happens when someone TRIES to join the map when there ARE other players.

Once that someone connects, the server tries to write a new stringtable in the (non-writable, maybe?) .bsp file but since it is already packed, the server has no other choice but to abort the process and force crash.

There is three ways to fix this, though. Either:
  1. Manually type "stringtabledictionary" in the server console (but you need to restart the map after this),
  2. Add "-stringtables" in the server's launch parameters, or;
  3. Set "stringtable_alwaysrebuilddictionaries" convar to 1 to let the server create a stringtable automatically while the custom map is being loaded.

Thanks for the help,i will try it this way.:wink:
With the 1st way:
stringtabledictionary
############################################# ########################################
Can't recreate dictionary for maps/bha01.bsp, file must be writable!!!
############################################# ########################################
The 2nd and 3rd way seems have no effect,it still crash the server when a new player join.
Maybe i should just delete this kind of bad maps.

cravenge 02-12-2018 07:02

Re: How to solve this problem?
 
Quote:

Originally Posted by geipoe (Post 2577650)
[...]

Huh? Odd... 1st fix should have done this.

Anyways, when you used the 2nd or 3rd fix, did a message like one below showed? (The map name is just an example.)
PHP Code:

============== Host_ChangeLevel ==============
Stringtable for maps/rocketbuild1.bsp rebuilt successfully


Visual77 02-12-2018 07:23

Re: How to solve this problem?
 
Would it work automated in a plugin? If OnMapStart is too late, maybe AddCommandListener to changelevel, check the argument of changelevel and do the action.

Code:

OnMapStart(){ mapStringContains l4d2_crashbandicoot ? ServerCommand("stringtabledictionary") : return; }
Or
Code:

OnMapStart(){ mapStringContains l4d2_crashbandicoot ? stringtable_alwaysrebuilddictionaries.SetInt(1) : stringtable_alwaysrebuilddictionaries.RestoreDefault();

cravenge 02-13-2018 07:35

Re: How to solve this problem?
 
Forgot to mention this important note: :(
Quote:

Once the map's stringtable dictionary is rebuilt, your clients will have no other choice but to download your server's versions, leaving them no access to other servers which have the original versions of the map.
Sooo... The best solutions would be either to request an update of the campaign from its author or, as what as you have mentioned, remove those maps. :)

geipoe 02-22-2018 23:02

Re: How to solve this problem?
 
Quote:

Originally Posted by cravenge (Post 2577792)
Huh? Odd... 1st fix should have done this.

Anyways, when you used the 2nd or 3rd fix, did a message like one below showed? (The map name is just an example.)
PHP Code:

============== Host_ChangeLevel ==============
Stringtable for maps/rocketbuild1.bsp rebuilt successfully


Sorry for the late reply for something busy,i try the 1st way and it says:
Code:

Updated stringtable dictionary saved to maps/msd2_gasstation.bsp
I have on idea about solving this problem,maybe remove them is the best way,thanks for the help.:)
By the way,is that possible causing this problem because i've played these maps on my PC before i upload them?

Dragokas 05-17-2019 07:26

Re: How to solve this problem?
 
Code:

#0 0xb5feefcc in Sys_Error_Internal(bool, char const*, char*) () from /home/server4419/game/bin/engine.so
#0 0xb5feefcc in Sys_Error_Internal(bool, char const*, char*) () from /home/server4419/game/bin/engine.so
#1 0xb5feeff3 in Sys_Error(char const*, ...) () from /home/server4419/game/bin/engine.so
#2 0xb5f45498 in Host_Error(char const*, ...) () from /home/server4419/game/bin/engine.so
#3 0xb5f7cd22 in CNetworkStringTableContainer::WriteBaselines(char const*, bf_write&) () from /home/server4419/game/bin/engine.so

Quote:

Originally Posted by cravenge
Sooo... The best solutions would be either to request an update of the campaign from its author or, as what as you have mentioned, remove those maps.

Maybe, we could somehow temporarily block that engine's function WriteBaselines() using e.g. DHooks or so?

Dragokas 05-17-2019 07:46

Re: How to solve this problem?
 
As about map rebuilding, here is more detailed explanation (not tested yet):

Quote:

Originally Posted by Guillaume
How to fix:

- extract the freddyfazbearspizzeria1987.vpk into the add-on folder ("Left 4 Dead 2\left4dead2\addons\") by dragging it into "Left 4 Dead 2\bin\vpk.exe"
- make sure the folder isn't write protected
- run Left 4 Dead 4, run the fnaf2 map in either single player or listen server (local host) mode
- open up the console
- type "stringtabledictionary"
- type "buildcubemaps", wait until it is done
- quit
- move and replace fnaf2.bsp from "Left 4 Dead 2\left4dead2\maps\" to "Left 4 Dead 2\left4dead2\addons\freddyfazbearspizzeria198 7\maps"
- repack the map into a vpk by dragging it into vpk.exe again

Source: https://steamcommunity.com/workshop/...46292769227606


All times are GMT -4. The time now is 12:08.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.