Jump to content
 Share

Vauff

The cause of Panorama map change client crashes

Recommended Posts

Hi all,

 

In the past few months since the CS:GO Panorama update I'm sure many of you who play CS:GO community servers have been aware of that bug where you sometimes have random client crashes after a map change. After talking to someone from the 1v1 server and seeing how it was an issue there too, I thought I'd make this post explaining what I've discovered to help prevent this issue affecting the new servers being launched/relaunched in the CS:GO division.

 

In essence, when you compile a map for CS:GO there are 3 lighting compile options you can use with vrad, HDR, LDR or both. HDR is the preferred way of compiling and is the standard option typically used in CS:GO maps. LDR is a legacy lighting method that is basically deprecated, however it still exists as a compile option in CS:GO's Hammer editor. Because of that, some mappers who don't know better end up choosing this option and don't think anything of it. Both is basically what it implies, both lighting options, however using this option is just a waste of compile time and space since the game will always prefer HDR lighting when available.

 

Before the Panorama update, any of those three compile options worked fine and neither caused any issues. However after Panorama was released, an issue arose on some community servers of crashing immediately after loading into a certain map. This turns out to only happen when loading a map compiled in LDR, or loading a map after playing on an LDR map. The issue is random and doesn't seem to happen every time, but the link is definitely with LDR maps.

 

I should note that I wasn't the first one to discover this, I was first tipped off by Syoudous from Mapeadores and after seeing his messages I did some investigation on our ZE server and map pool and came up with very similar results.

 

Here are some connect log examples with IP addresses redacted from the ZE server that will help illustrate the point better. This is the first few minutes after switching to frostdrake, a map compiled in HDR. This is an example of what the connect log normally looks like after a map change.

10:11:11 - ===== Map change to ze_frostdrake_tower_v1 =====
10:11:32 - <Killerlite> <STEAM_1:0:120610637> <> DISCONNECTED after 8 minutes. <Disconnect>
10:12:02 - <???????> <STEAM_1:0:427509907> <> DISCONNECTED after 5 minutes. <Disconnect>
10:12:18 - <❤Harurun - Apple Cider> <STEAM_1:1:173562751> <> DISCONNECTED after -1 minutes. <Disconnect>
10:12:27 - <DavidRO> <STEAM_1:0:16839134> <> CONNECTED from <Romania>
10:12:54 - <1318hau1318> <STEAM_1:0:454250225> <> DISCONNECTED after -1 minutes. <Disconnect>
10:12:56 - <dani320541> <STEAM_1:1:215233614> <> CONNECTED from <Indonesia>
10:13:12 - <❤Harurun - Apple Cider> <STEAM_1:1:173562751> <> CONNECTED from <Indonesia>
10:14:36 - <OUCHY> <STEAM_1:0:213127759> <> CONNECTED from <Philippines>

And here we have ze_paranoid_rezurrection_v11_9_ps16, this map is compiled in LDR only.

18:02:16 - ===== Map change to ze_paranoid_rezurrection_v11_9_ps16 =====
18:02:26 - <Jolun_> <STEAM_1:1:445782901> <> DISCONNECTED after -1 minutes. <Jolun_ timed out>
18:02:34 - <Elemental> <STEAM_1:0:79547757> <> DISCONNECTED after 10 minutes. <No user logon>
18:02:38 - <allihoppa> <STEAM_1:0:32697527> <> DISCONNECTED after 10 minutes. <allihoppa timed out>
18:02:39 - <Anatole> <STEAM_1:1:147610767> <> CONNECTED from <Korea, Republic of>
18:02:40 - <Xert-Z> <STEAM_1:1:456653225> <> DISCONNECTED after 10 minutes. <Xert-Z timed out>
18:02:41 - <supremechampion> <STEAM_1:1:49300902> <> DISCONNECTED after 9 minutes. <supremechampion timed out>
18:02:43 - <Con Noire> <STEAM_1:1:5317755> <> DISCONNECTED after 10 minutes. <No user logon>
18:02:44 - <Ogaraf ☠ †> <STEAM_1:1:48054960> <> DISCONNECTED after 9 minutes. <Ogaraf ☠ † timed out>
18:02:45 - <Benadryl> <STEAM_1:0:27518541> <> DISCONNECTED after 10 minutes. <Benadryl timed out>
18:02:46 - <Tame> <STEAM_1:0:417608718> <> DISCONNECTED after 10 minutes. <No user logon>
18:02:48 - <J3wÐÎÇ€> <STEAM_1:1:124231807> <> DISCONNECTED after 11 minutes. <J3wÐÎÇ€ timed out>
18:02:50 - <Saitama Sensei> <STEAM_1:0:49212392> <> DISCONNECTED after -1 minutes. <Disconnect>
18:02:57 - <floaties> <STEAM_1:0:47176640> <> DISCONNECTED after 7 minutes. <floaties timed out>
18:03:05 - <allihoppa> <STEAM_1:0:32697527> <> CONNECTED from <Japan>
18:03:06 - <Ritualzzzzzzzzzzzzzzzzz> <STEAM_1:1:457000714> <> DISCONNECTED after 10 minutes. <No user logon>
18:03:09 - <Nox-> <STEAM_1:1:54559783> <> DISCONNECTED after -1 minutes. <No user logon>

Any of the "No user logon" or "x timed out" messages mean that the client disconnected unexpectedly from the server, in this context we know that they're client crashes.

 

However one thing to take note of, the crash won't always occur after switching to the LDR map. You can also get a client crash after switching to an HDR map if you were on an LDR map before. Here's an example of that with ze_ffxiv_wanderers_palace_v4_10 compiled in LDR and ze_tesv_skyrim_v5_6 in HDR. You can see that despite being on an HDR map, there is still a mass client crash from some sort of remnants from wanderers.

15:36:58 - ===== Map change to ze_ffxiv_wanderers_palace_v4_10 =====
15:37:23 - <allihoppa> <STEAM_1:0:32697527> <> DISCONNECTED after 22 minutes. <Disconnect>
15:37:29 - <hust02.114> <STEAM_1:1:187876730> <> CONNECTED from <United States>
15:37:31 - <allihoppa> <STEAM_1:0:32697527> <> CONNECTED from <Japan>
15:37:32 - <Saitama Sensei> <STEAM_1:0:49212392> <> DISCONNECTED after -1 minutes. <Disconnect>
15:37:38 - <Koshaka> <STEAM_1:0:65885705> <> DISCONNECTED after 21 minutes. <Disconnect>
15:37:51 - <BlackPowa> <STEAM_1:0:155785692> <> DISCONNECTED after 10 minutes. <Disconnect>
15:38:15 - <Minny> <STEAM_1:0:59238997> <> CONNECTED from <United States>
15:38:15 - <Cliam> <STEAM_1:1:206750519> <> CONNECTED from <United States>
15:38:35 - <Saitama Sensei> <STEAM_1:0:49212392> <> CONNECTED from <United States>
15:38:58 - <lol eggs dee> <STEAM_1:1:66579802> <> DISCONNECTED after 45 minutes. <Disconnect>
15:39:00 - <BlóòdyKiller™> <STEAM_1:0:14568743> <> CONNECTED from <France>
(...)
16:25:26 - ===== Map change to ze_tesv_skyrim_v5_6 =====
16:25:29 - <●DamiR> <STEAM_1:0:50724955> <> DISCONNECTED after -1 minutes. <Disconnect>
16:25:49 - <Con Noire> <STEAM_1:1:5317755> <> DISCONNECTED after -1 minutes. <Con Noire timed out>
16:25:49 - <Pattefolle> <STEAM_1:0:71293754> <> DISCONNECTED after -1 minutes. <Disconnect>
16:25:50 - <Tame> <STEAM_1:0:417608718> <> DISCONNECTED after -1 minutes. <Tame timed out>
16:25:50 - <Magical> <STEAM_1:1:116799414> <> DISCONNECTED after -1 minutes. <Magical timed out>
16:25:50 - <Elemental> <STEAM_1:0:79547757> <> DISCONNECTED after -1 minutes. <Elemental timed out>
16:25:51 - <DuMa> <STEAM_1:0:10765634> <> DISCONNECTED after 8 minutes. <No user logon>
16:25:51 - <Jonano> <STEAM_1:1:425508031> <> DISCONNECTED after -1 minutes. <No user logon>
16:25:53 - <J3wÐÎÇ€> <STEAM_1:1:124231807> <> DISCONNECTED after 71 minutes. <No user logon>
16:25:58 - <Seker> <STEAM_1:0:145809429> <> DISCONNECTED after 58 minutes. <No user logon>
16:25:59 - <[NRG]Ven> <STEAM_1:0:56177311> <> DISCONNECTED after -1 minutes. <No user logon>
16:26:00 - <ZeDanny> <STEAM_1:1:99054480> <> DISCONNECTED after 26 minutes. <ZeDanny timed out>
16:26:00 - <Saitama Sensei> <STEAM_1:0:49212392> <> DISCONNECTED after -1 minutes. <Disconnect>
16:26:01 - <Lolicx ◑︿◐> <STEAM_1:0:214812230> <> DISCONNECTED after -1 minutes. <No user logon>
16:26:07 - <Deimos> <STEAM_1:0:84461333> <> DISCONNECTED after 33 minutes. <Deimos timed out>
16:26:08 - <dark horse presents> <STEAM_1:0:3786788> <> DISCONNECTED after 8 minutes. <Disconnect>
16:26:08 - <allihoppa> <STEAM_1:0:32697527> <> DISCONNECTED after 49 minutes. <Disconnect>
16:26:13 - <Steve> <STEAM_1:1:98996685> <> DISCONNECTED after 15 minutes. <No user logon>
16:26:16 - <Cliam> <STEAM_1:1:206750519> <> DISCONNECTED after -1 minutes. <Cliam timed out>
16:26:17 - <Genji> <STEAM_1:1:48666297> <> CONNECTED from <Brazil>
16:26:19 - <allihoppa> <STEAM_1:0:32697527> <> CONNECTED from <Japan>
16:26:19 - <DuMa> <STEAM_1:0:10765634> <> CONNECTED from <United States>
16:26:26 - <Frid> <STEAM_1:0:32970771> <> DISCONNECTED after -1 minutes. <No user logon>
16:26:29 - <BlóòdyKiller™> <STEAM_1:0:14568743> <> DISCONNECTED after 49 minutes. <BlóòdyKiller™ timed out>

The fix for this issue is to either remove or recompile the LDR maps on a server. The reason you don't see this issue happening on official servers is because all Valve maps are compiled in HDR. So by default this issue is only going to affect community servers on custom maps, where the quality of mapping varies a lot more.

 

You can figure out which maps are compiled in HDR, LDR or both by using a tool called bspinfo included in the bspsrc download. You can check the vrad compile parameters used for each map like so and so.

 

Hopefully this information can help our CS:GO servers retain more players, thanks for reading.

Share this post


Link to post
Share on other sites


after having a short convo with sneaks I feel like it's best to make use of this https://forums.alliedmods.net/showthread.php?t=310542 idk if it is the exact plugin he was talking about how ever he mentioned something about forcing clients to to reconnect and perhaps do what @Vauff is talking about as a fix for well the bigger picture.

Share this post


Link to post
Share on other sites

Achievements

Posted  Edited by virusking

I'm currently testing the plugin that forces players to reconnect and miss the gap of timeout on CS:GO 1v1 server to see if it reduces the random disconnect crashing, from what it looks like the plugin could potentially reduce the full playercount timeout, but not completely at all times. I'm still debugging and researching, but it doesn't seem to make any difference with how the map has been compiled and it has occurred before and after panorama update. It does not happen to every server nor is it reproducible issue, meaning it can happen twice in a row on maps or not at all.

SourceEngine is a mystical old beast, so it can be a pain to find if the issue can even be fixed or is it CS:GO game bug. The more we can reduce this the better, since it hurts the servers (ex. 1v1 was +20 pop, after crash it was only 5-10 for an hour). Will report back in a day or two to see how it performs. If the issue persists I'll try to debug more with the maps recompiled

Edited by virusking

Share this post


Link to post
Share on other sites


Posted  Edited by Vauff
21 minutes ago, virusking said:

I'm currently testing the plugin that forces players to reconnect and miss the gap of timeout on CS:GO 1v1 server to see if it reduces the random disconnect crashing, from what it looks like the plugin could potentially reduce the full playercount timeout, but not completely at all times. I'm still debugging and researching, but it doesn't seem to make any difference with how the map has been compiled and it has occurred before and after panorama update. It does not happen to every server nor is it reproducible issue, meaning it can happen twice in a row on maps or not at all.

SourceEngine is a mystical old beast, so it can be a pain to find if the issue can even be fixed or is it CS:GO game bug. The more we can reduce this the better, since it hurts the servers (ex. 1v1 was +20 pop, after crash it was only 5-10 for an hour). Will report back in a day or two to see how it performs. If the issue persists I'll try to debug more with the maps recompiled

The crashes that I describe here refer specifically to a large increase of crashes that people on the ZE server started complaining about after switching to Panorama (and my own personal experience). If whatever crashes you're trying to fix were happening before the panorama update, it makes me think that 1v1 might be dealing with a different issue entirely. Since this only became an issue for us when Panorama launched.

Edited by Vauff

Share this post


Link to post
Share on other sites


1 minute ago, Vauff said:

The crashes that I describe here refer specifically to a large increase of crashes that people on the ZE server started complaining about after switching to Panorama (and my own personal experience). If whatever crashes you're trying to fix was happening before the panorama update, it makes me think you might be dealing with a different issue entirely. Since this only became an issue for us when Panorama launched.

The user timeout and crashes on map change have been reported on Alliedmods before panorama update as well, but it is still the same, seems to have gotten more common after panorama update on the ZE. It's not linked to any specific server, it can encountered on a fresh empty server as well.

Share this post


Link to post
Share on other sites


Posted  Edited by rapperdan

I have been in game for well let's see

since I messaged you and sent you this

 

I think it's safe to say the issue seems to be pretty cash money for now.

 

so my game is well not crashing and it normally always has crashed and it's 8:36 pm est atm.

Today at 3:24 PM

 
 
anyways gonna take a nappy nap ayyylmao been up all night
Edited by rapperdan

Share this post


Link to post
Share on other sites

Achievements

It's unbelievable how broken this game still is even after basically taking two - three years away from CS:GO community servers.

 

My future Reddit post is going to be addressing dumb issues such as this.

 

Thanks.

Share this post


Link to post
Share on other sites


Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×
×
  • Create New...