L4D2 and other games have some hidden maps like curling_stadium.bsp tucked away but can still be played but after you changelevel to something else afterwords it will "attempt" to write string tables to the server map file and also the client map file as well but if someone wants to connect with the older version they will get booted out with a message about "string table differs"
Code:
changelevel gm_construct
---- Host_Changelevel ----
Server using sv_pure 2.
Caching file CRCs for pure server...
Finished caching file CRCs for pure server in 0 seconds.
Error opening maps/gm_flatgrass.bsp! (Check for write enable)
I set this file to READ ONLY on my server and on my client but the server will still exit after this error