Raised This Month: $32 Target: $400
 8% 

[CSGO]how to add more default model options for surf/jb/and dm servers?


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
PresidentEvil
AlliedModders Donor
Join Date: Jun 2012
Old 10-03-2012 , 20:15   [CSGO]how to add more default model options for surf/jb/and dm servers?
Reply With Quote #1

right now on my surf rpg and dm server is only 1 model for each team, ive seen servers with like 4 different default models on each team

plz help?
__________________

Last edited by PresidentEvil; 10-03-2012 at 22:19.
PresidentEvil is offline
jholland
Member
Join Date: Sep 2012
Location: Minnesota
Old 10-12-2012 , 14:30   Re: [CSGO]how to add more default model options for surf/jb/and dm servers?
Reply With Quote #2

Go into your GameModes.txt file and find the following (I'm going to use cs_office as the example, but choose whichever map you want to do this on):

Code:
        "cs_office"
        {
            "nameID"            "#SFUI_Map_cs_office"
            "name"                "cs_office"
            "imagename"            "map-office-overall"
            "t_arms"            "models/weapons/t_arms_separatist.mdl"
            "t_models"
            {
                "tm_separatist"        ""
                "tm_separatist_variantA"        ""
                "tm_separatist_variantB"        ""
                "tm_separatist_variantC"        ""
                "tm_separatist_variantD"        ""
            }
            "ct_arms"            "models/weapons/ct_arms_fbi.mdl"
            "ct_models"
            {
                "ctm_fbi"        ""
                "ctm_fbi_variantA"    ""
                "ctm_fbi_variantB"    ""
                "ctm_fbi_variantC"    ""
                "ctm_fbi_variantD"    ""
            }
        }
There you have two preset models, and a few variations of that model (Goggles on your helmet, different toolbelt, a patch on your arm, etc). What we need to do is add more preset models, as well as variations that it can load. From here, I'm just going to concentrate on the Terrorist portion, in an effort to keep this post short-ish.

In order to add more preset models, simply do the following:

Code:
        "cs_office"
        {
            "nameID"            "#SFUI_Map_cs_office"
            "name"                "cs_office"
            "imagename"            "map-office-overall"
            "t_arms"            "models/weapons/t_arms_separatist.mdl"
            "t_arms"            "models/weapons/t_arms_phoenix.mdl"
            "t_arms"            "models/weapons/t_arms_balkan.mdl"
            "t_models"
If you can't tell, all I did was add more "t_arms" lines, with different models - Separatists are default, and I'm adding the phoenix and balkan models. You can find all the different models in the directory that is shown, or just look at other map entries and copy/paste them from there.

From there, all we need to do is change the variations (Or add more) in order to include those new preset models. That'll look something like this:

Code:
            "t_models"
            {
                "tm_separatist"        ""
                "tm_separatist_variantA"        ""
                "tm_phoenix"        ""
                "tm_phoenix_variantA"    ""
                "tm_balkan_variantA"        ""
                "tm_balkan_variantC"        ""
             }
So there we now have 3 preset models to choose from, and 1 or 2 variations of each model.

When it's all put together, you're final output will look something like this:

Code:
        "cs_office"
        {
            "nameID"            "#SFUI_Map_cs_office"
            "name"                "cs_office"
            "imagename"            "map-office-overall"
            "t_arms"            "models/weapons/t_arms_separatist.mdl"
            "t_arms"            "models/weapons/t_arms_phoenix.mdl"
            "t_arms"            "models/weapons/t_arms_balkan.mdl"
            "t_models"
            {
                "tm_separatist"        ""
                "tm_separatist_variantA"        ""
                "tm_phoenix"        ""
                "tm_phoenix_variantA"    ""
                "tm_balkan_variantA"        ""
            }
            "ct_arms"            "models/weapons/ct_arms_fbi.mdl"
            "ct_arms"            "models/weapons/ct_arms_st6.mdl"
            "ct_arms"            "models/weapons/ct_arms_idf.mdl"
            "ct_models"
            {
                "ctm_fbi"        ""
                "ctm_st6_variantA"    ""
                "ctm_st6_variantB"    ""
                "ctm_idf_variantC"    ""
                "ctm_idf_variantD"    ""
            }
            "hostage_models"
            {
                "models/hostage/hostage_variantD.mdl"    ""
                "models/hostage/hostage_variantE.mdl"    ""
                "models/hostage/hostage_variantF.mdl"    ""
                "models/hostage/hostage_variantG.mdl"    ""
            }
        }
Feel free to just copy/paste that into your gamemodes.txt if you want to use those models and variations, or look at the gamemodes.txt and choose which ones you want specifically. If you're going to be doing this on custom maps, which it sounds like you are, you're going to need to add an entry into gamemodes.txt for that map. You could do it pretty easily by just replacing "cs_office" everywhere you see in the above snippet with "surf_ski_2_GO" (Took that mapname from your signature).

Hope that helps. If it's not clear enough, feel free to let me know, but I just tested the above snippet on my server and everything seemed to be working just fine.

Edit: I should also mention that you're ALWAYS going to want to keep a backup of the default gamemodes.txt handy. For two reasons, in case you mess something up beyond repair, and because every time CS:GO updates, it overwrites the gamemodes.txt file and you'll lose all your newly added models. Personally, I keep a backup vanilla version of gamemodes.txt (Completely untouched), as well as a backup of my current gamemodes.txt that has all the changes that I've made.
__________________

Last edited by jholland; 10-12-2012 at 14:39.
jholland is offline
PresidentEvil
AlliedModders Donor
Join Date: Jun 2012
Old 10-13-2012 , 01:01   Re: [CSGO]how to add more default model options for surf/jb/and dm servers?
Reply With Quote #3

can't seem to get them working, im trying on my JB server on a single map called jb_castleguarddev_v4

gamemodes.txt
Code:
// DO NOT MODIFY THIS FILE
// 
// To customize your server, see gamemodes_server.txt.example


"GameModes.txt"
{
	"gameTypes"
	{
		"classic"
		{
			"value"				"0"
			"nameID"			"#SFUI_GameTypeClassic"

			"gameModes"
			{
				"casual"
				{
					"value"			 	"0"
					"nameID"		 	"#SFUI_GameModeCasual"
					"descID"		 	"#SFUI_GameModeCasualDesc"
					"matchmakingvalue"	"casual"
					"uid"				"1"
					"maxplayers"			"20"

					// These are the descriptive ui elements to display in the information box on.
					// These key/values should be pairs of strings.  The "key" will appear in the left
					// column, the "value" will appear in the right column.
					"ui"
					{
						"0"		{ "label" "#SFUI_CashColon"				"value" "$400" }
						"1"		{ "label" "#SFUI_WinMatchColon"			"value" "30 #SFUI_Minutes" }
						"2"		{ "label" "#SFUI_TimePerRoundColon"		"value" "3 #SFUI_Minutes" }
						"3"		{ "label" "#SFUI_BuyTimeColon"			"value" "45 #SFUI_Seconds" }
						"4"		{ "label" "#SFUI_SpectateColon"			"value" "#SFUI_SpectateAnyone" }
						"5"		{ "label" "#SFUI_BotsColon"				"value" "#SFUI_BotDifficulty2" }
					}

					// These are the configs that get executed when a game mode of this type is created
					"exec"
					{
						"exec" "gamemode_casual.cfg"
						"exec" "gamemode_casual_server.cfg"
					}

					// Map groups for offline modes
					"mapgroupsSP"
					{
						"mg_de_train"		"0"
						"mg_de_dust"		"1"
						"mg_de_dust2"		"2"
						"mg_de_aztec"		"3"
						"mg_de_inferno"		"4"
						"mg_de_nuke"		"5"
						"mg_de_vertigo"		"6"
						"mg_cs_italy"		"7"
						"mg_cs_office"		"8"
						"random_classic"	"9"
					}

					// Map groups for online modes
					"mapgroupsMP"
					{
						"mg_bomb"		"0"
						"mg_hostage"	"1"
						"mg_dust"		"2"

					}
				}
	
				"competitive"
				{
					"value"			  	"1"
					"nameID"		  	"#SFUI_GameModeCompetitive"
					"descID"		  	"#SFUI_GameModeCompetitiveDesc"
					"matchmakingvalue"	"competitive"
					"uid"				"2"
					"maxplayers"			"10"
				
					// These are the descriptive ui elements to display in the information box on.
					// These key/values should be pairs of strings.  The "key" will appear in the left
					// column, the "value" will appear in the right column.
					"ui"
					{
						"0"		{ "label" "#SFUI_CashColon"				"value" "$800" }
						"1"		{ "label" "#SFUI_WinMatchColon"			"value" "30 #SFUI_Rounds" }
						"2"		{ "label" "#SFUI_TimePerRoundColon"		"value" "2 #SFUI_Minutes" }
						"3"		{ "label" "#SFUI_BuyTimeColon"			"value" "45 #SFUI_Seconds" }
						"4"		{ "label" "#SFUI_SpectateColon"			"value" "#SFUI_SpectateTeamOnly" }
						"5"		{ "label" "#SFUI_BotsColon"				"value" "#SFUI_BotDifficulty3" }
					}

					// These are the configs that get executed when a game mode of this type is created
					"exec"
					{
						"exec" "gamemode_competitive.cfg"
						"exec" "gamemode_competitive_server.cfg"
					}

					// Map groups for offline modes
					"mapgroupsSP"
					{
						"mg_de_train"		"0"
						"mg_de_dust"		"1"
						"mg_de_dust2"		"2"
						"mg_de_aztec"		"3"
						"mg_de_inferno"		"4"
						"mg_de_nuke"		"5"
						"mg_de_vertigo"		"6"
						"mg_cs_italy"		"7"
						"mg_cs_office"		"8"
						"random_classic"	"9"
					}

					// Map groups for online modes
					"mapgroupsMP"
					{
						"mg_bomb"			"0"
						"mg_hostage"		"1"
						"mg_de_train"		"2"
						"mg_de_dust"		"3"
						"mg_de_dust2"		"4"
						"mg_de_aztec"		"5"
						"mg_de_inferno"		"6"
						"mg_de_nuke"		"7"
						"mg_de_vertigo"		"8"
						"mg_cs_italy"		"9"
						"mg_cs_office"		"0"

					}
				}
			}	
		}

		"gungame"
		{
			"value"				"1"
			"nameID"			"#SFUI_GameTypeGungame"

			// This is the list of game modes supported by this game type.
			"gameModes"
			{
				"gungameprogressive"
				{
					"value"				"0"
					"nameID"			"#SFUI_GameModeGGProgressive"
					"descID"			"#SFUI_GameModeGGProgressiveDesc"
					"matchmakingvalue"	"competitive"
					"uid"				"11"
					"maxplayers"			"10"

					// These are the descriptive ui elements to display in the information box on.
					// These key/values should be pairs of strings.  The "key" will appear in the left
					// column, the "value" will appear in the right column.
					"ui"
					{
						"0"		{ "label" "#SFUI_WinMatchColon"			"value" "30 #SFUI_Minutes" }
						"1"		{ "label" "#SFUI_SpectateColon"			"value" "#SFUI_SpectateAnyone" }
						"2"		{ "label" "#SFUI_BotsColon"				"value" "#SFUI_BotDifficulty2" }
					}

					// These are the configs that get executed when a game mode of this type is created
					"exec"
					{
						"exec" "gamemode_armsrace.cfg"
						"exec" "gamemode_armsrace_server.cfg"
					}
					
					// Map groups for offline modes
					"mapgroupsSP"
					{
						"mg_ar_baggage"		"0"
						"mg_ar_monastery"	"1"
						"mg_ar_shoots"		"2"
						"random_ar"			"3"
					}

					// Map groups for online modes
					"mapgroupsMP"
					{
						"mg_armsrace"	"0"
					}

					"weaponprogression_ct"
					{
						"mp9"			{ "kills"	"1" }
						"mac10"			{ "kills"	"1" }
						"mp7"			{ "kills"	"1" }
						"bizon"			{ "kills"	"1" }
						"ump45"			{ "kills"	"1" }
						"p90"			{ "kills"	"1" }
						"nova"			{ "kills"	"1" }
						"mag7"			{ "kills"	"1" }
						"xm1014"		{ "kills"	"1" }
						"sawedoff"		{ "kills"	"1" }
						"galilar"		{ "kills"	"1" }
						"famas"			{ "kills"	"1" }
						"ak47"			{ "kills"	"1" }
						"m4a1"			{ "kills"	"1" }
						"sg556"			{ "kills"	"1" }
						"aug"			{ "kills"	"1" }
						"awp"			{ "kills"	"1" }
						"m249"			{ "kills"	"1" }
						"negev"			{ "kills"	"1" }
						"glock"			{ "kills"	"1" }
						"hkp2000"		{ "kills"	"1" }
						"tec9"			{ "kills"	"1" }
						"p250"			{ "kills"	"1" }
						"deagle"		{ "kills"	"1" }
						"fiveseven"		{ "kills"	"1" }
						"elite"			{ "kills"	"1" }
						"knifegg"			{ "kills"	"1" }
					}
					
					"weaponprogression_t"
					{
						"mp9"			{ "kills"	"1" }
						"mac10"			{ "kills"	"1" }
						"mp7"			{ "kills"	"1" }
						"bizon"			{ "kills"	"1" }
						"ump45"			{ "kills"	"1" }
						"p90"			{ "kills"	"1" }
						"nova"			{ "kills"	"1" }
						"mag7"			{ "kills"	"1" }
						"xm1014"		{ "kills"	"1" }
						"sawedoff"		{ "kills"	"1" }
						"galilar"		{ "kills"	"1" }
						"famas"			{ "kills"	"1" }
						"ak47"			{ "kills"	"1" }
						"m4a1"			{ "kills"	"1" }
						"sg556"			{ "kills"	"1" }
						"aug"			{ "kills"	"1" }
						"awp"			{ "kills"	"1" }
						"m249"			{ "kills"	"1" }
						"negev"			{ "kills"	"1" }
						"glock"			{ "kills"	"1" }
						"hkp2000"		{ "kills"	"1" }
						"tec9"			{ "kills"	"1" }
						"p250"			{ "kills"	"1" }
						"deagle"		{ "kills"	"1" }
						"fiveseven"		{ "kills"	"1" }
						"elite"			{ "kills"	"1" }
						"knifegg"			{ "kills"	"1" }
					}
				}

				"gungametrbomb"
				{
					"value"				"1"
					"nameID"			"#SFUI_GameModeGGBomb"
					"descID"			"#SFUI_GameModeGGBombDesc"
					"matchmakingvalue"	"competitive"
					"uid"				"12"
					"maxplayers"			"10"

					// These are the descriptive ui elements to display in the information box on.
					// These key/values should be pairs of strings.  The "key" will appear in the left
					// column, the "value" will appear in the right column.
					"ui"
					{

						"0"		{ "label" "#SFUI_WinMatchColon"			"value" "10 #SFUI_Rounds" }
						"1"		{ "label" "#SFUI_TimePerRoundColon"		"value" "90 #SFUI_Seconds" }
						"2"		{ "label" "#SFUI_SpectateColon"			"value" "#SFUI_SpectateTeamOnly" }
						"3"		{ "label" "#SFUI_BotsColon"				"value" "#SFUI_BotDifficulty3" }
					}

					// These are the configs that get executed when a game mode of this type is created
					"exec"
					{
						"exec" "gamemode_demolition.cfg"
						"exec" "gamemode_demolition_server.cfg"
					}

					// Map groups for offline modes
					"mapgroupsSP"
					{
						"mg_de_bank"		"0"
						"mg_de_lake"		"1"
						"mg_de_safehouse"	"2"
						"mg_de_sugarcane"	"3"
						"mg_de_stmarc"		"4"
						"mg_de_shorttrain"	"5"
						"random_demo"		"6"
					}

					// Map groups for online modes
					"mapgroupsMP"
					{
						"mg_demolition"		"0"
					}

					"weaponprogression_ct"
					{
						"m4a1"			{ "kills"	"1" }
						"p90"			{ "kills"	"1" }
						"ump45"			{ "kills"	"1" }
						"deagle"		{ "kills"	"1" }
						"nova"			{ "kills"	"1" }
						"fiveseven"		{ "kills"	"1" }
						"hkp2000"		{ "kills"	"1" }
						"ssg08"			{ "kills"	"1" }
						"awp"			{ "kills"	"1" }
						"Scar20"		{ "kills"	"1" }
					}
					
					"weaponprogression_t"
					{
						"ak47"			{ "kills"	"1" }
						"p90"			{ "kills"	"1" }
						"bizon"			{ "kills"	"1" }
						"deagle"		{ "kills"	"1" }
						"nova"			{ "kills"	"1" }
						"p250"			{ "kills"	"1" }
						"glock"			{ "kills"	"1" }
						"ssg08"			{ "kills"	"1" }
						"awp"			{ "kills"	"1" }
						"g3sg1"			{ "kills"	"1" }
					}
				}
			}
		}


		"training"
		{
			"value"				"3"
			"nameID"			"#SFUI_GameTypeFreestyle"
			"singleplayeronly"	"1"
	
			"gameModes"
			{
				"training"
				{
					"value"				"0"
					"nameID"			"#SFUI_GameTypeTraining"
					"descID"			"#SFUI_GameModeTrainingDesc"
					"showdisclaimer"	"1"
					"uid"				"21"
					"maxplayers"		"1"
	
					// These are the descriptive ui elements to display in the information box on.
					// These key/values should be pairs of strings.  The "key" will appear in the left
					// column, the "value" will appear in the right column.
					"ui"
					{
						"0"		{ "label" "#SFUI_CashColon"				"value" "$16,000" }
						"1"		{ "label" "#SFUI_WinMatchColon"			"value" "30 #SFUI_Minutes" }
						"2"		{ "label" "#SFUI_TimePerRoundColon"		"value" "5 #SFUI_Minutes" }
						"3"		{ "label" "#SFUI_BuyTimeColon"			"value" "90 #SFUI_Seconds" }
						"4"		{ "label" "#SFUI_SpectateColon"			"value" "#SFUI_SpectateAnyone" }
						// Bot data is determined by user selection.
					}
	
					// These are the configs that get executed when a game mode of this type is created
					"exec"
					{
						"exec" "gamemode_training.cfg"
						"exec" "gamemode_training_server.cfg"
					}

					// Map groups for offline modes
					"mapgroupsSP"
					{
						"mg_training1"		"0"
					}
				}
			}
		}
	}

	"mapgroups"
	{
		// 
		// Map cycle groups
		//

		"mg_hostage"
		{
			"imagename"		"mapgroup-hostage"
			"nameID"		"#SFUI_Mapgroup_hostage"
			"name"			"mg_hostage"
			"maps"
			{
				"cs_office"		""
				"cs_italy"		""
			}
		}

		"mg_bomb"
		{
			"imagename"		"mapgroup-bomb"
			"nameID"		"#SFUI_Mapgroup_bomb"
			"name"			"mg_bomb"
			"maps"
			{
				"de_dust2"		""
				"de_train"		""
				"de_inferno"		""
				"de_dust"		""
				"de_aztec"		""
				"de_nuke"		""
				"de_vertigo"		""
			}
		}


		"mg_dust"
		{
			"imagename"		"map-dust2-overall"
			"nameID"		"#SFUI_Mapgroup_dust"
			"name"			"mg_dust"
			"maps"
			{
				"de_dust"		""
				"de_dust2"		""
			}
		}

		"mg_armsrace"
		{
			"imagename"		"mapgroup-armsrace"
			"nameID"		"#SFUI_Mapgroup_armsrace"
			"name"			"mg_armsrace"
			"maps"
			{
				"ar_monastery"	""
				"ar_shoots"		""
				"ar_baggage"		""
			}
		}

		"mg_demolition"
		{
			"imagename"		"mapgroup-demolition"
			"nameID"		"#SFUI_Mapgroup_demolition"
			"name"			"mg_demolition"
			"maps"
			{
				"de_lake"		""
				"de_stmarc"		""
				"de_sugarcane"		""
				"de_bank"		""
				"de_safehouse"		""
				"de_shorttrain"		""
			}
		}
			
		//
		// Single map groups
		//

		"mg_de_train"
		{
			"imagename"		"map-train-overall"
			"nameID"		"#SFUI_Map_de_train"
			"name"			"mg_de_train"
			"maps"
			{
				"de_train"		""
			}
		}

		"mg_de_dust"		
		{
			"imagename"		"map-dust-overall"
			"nameID"		"#SFUI_Map_de_dust"
			"name"			"mg_de_dust"	
			"maps"
			{
				"de_dust"		""
			}	
		}

		"mg_de_dust2"
		{
			"imagename"		"map-dust2-overall"
			"nameID"		"#SFUI_Map_de_dust2"
			"name"			"mg_de_dust2"
			"maps"
			{
				"de_dust2"		""
			}
		}

		"mg_de_aztec"
		{
			"imagename"		"map-aztec-overall"
			"nameID"		"#SFUI_Map_de_aztec"
			"name"			"mg_de_aztec"
			"maps"
			{
				"de_aztec"		""
			}
		}

		"mg_de_inferno"
		{
			"imagename"		"map-inferno-overall"
			"nameID"		"#SFUI_Map_de_inferno"
			"name"			"mg_de_inferno"
			"maps"
			{
				"de_inferno"		""
			}
		}

		"mg_de_nuke"
		{
			"imagename"		"map-nuke-overall"
			"nameID"		"#SFUI_Map_de_nuke"
			"name"			"mg_de_nuke"
			"maps"
			{
				"de_nuke"		""
			}
		}
		"mg_de_vertigo"
		{
			"imagename"		"map-vertigo-overall"
			"nameID"		"#SFUI_Map_de_vertigo"
			"name"			"mg_de_vertigo"
			"maps"
			{
				"de_vertigo"		""
			}
		}

		"mg_cs_italy"
		{
			"imagename"		"map-italy-overall"
			"nameID"		"#SFUI_Map_cs_italy"
			"name"			"mg_cs_italy"
			"maps"
			{
				"cs_italy"		""
			}
		}

		"mg_cs_office"
		{
			"imagename"		"map-office-overall"
			"nameID"		"#SFUI_Map_cs_office"
			"name"			"mg_cs_office"
			"maps"
			{
				"cs_office"		""
			}
		}

		"mg_ar_baggage"
		{
			"imagename"		"map-baggage-overall"
			"nameID"		"#SFUI_Map_ar_baggage"
			"name"			"mg_ar_baggage"
			"maps"
			{
				"ar_baggage"		""
			}
		}

		"mg_ar_shoots"
		{
			"imagename"		"map-vietnam-overall"
			"nameID"		"#SFUI_Map_ar_shoots"
			"name"			"mg_ar_shoots"
			"maps"
			{
				"ar_shoots"		""
			}
		}
		"mg_ar_monastery"
		{
			"imagename"		"map-monastery-overall"
			"nameID"		"#SFUI_Map_ar_monastery"
			"name"			"mg_ar_monastery"
			"maps"
			{
				"ar_monastery"		""
			}
		}

		"mg_de_bank"
		{
			"imagename"		"map-bank-overall"
			"nameID"		"#SFUI_Map_de_bank"
			"name"			"mg_de_bank"
			"maps"
			{
				"de_bank"		""
			}
		}

		"mg_de_lake"
		{
			"imagename"		"map-boathouse-overall"
			"nameID"		"#SFUI_Map_de_lake"
			"name"			"mg_de_lake"
			"maps"
			{
				"de_lake"		""
			}
		}

		"mg_de_safehouse"
		{
			"imagename"		"map-house-overall"
			"nameID"		"#SFUI_Map_de_safehouse"
			"name"			"mg_de_safehouse"
			"maps"
			{
				"de_safehouse"		""
			}
		}

		"mg_de_sugarcane"
		{
			"imagename"		"map-mill-overall"
			"nameID"		"#SFUI_Map_de_sugarcane"
			"name"			"mg_de_sugarcane"
			"maps"
			{
				"de_sugarcane"	""
			}
		}

		"mg_de_stmarc"
		{
			"imagename"		"map-shacks-overall"
			"nameID"		"#SFUI_Map_de_stmarc"
			"name"			"mg_de_stmarc"
			"maps"
			{
				"de_stmarc"		""
			}
		}

		"mg_de_shorttrain"
		{
			"imagename"		"map-train-overall"
			"nameID"		"#SFUI_Map_de_shorttrain"
			"name"			"mg_de_shorttrain"
			"maps"
			{
				"de_shorttrain"		""
			}
		}

		"mg_training1"
		{
			"imagename"		"map-alleyway-overall"
			"nameID"		"#SFUI_Map_training1"
			"name"			"mg_training1"
			"maps"
			{
				"training1"		""
			}
		}

		"random_ar"
		{
			"nameID"			"#SFUI_Map_random"
			"imagename"			"map-random-ar"
			"name"				"random"
			"maps"
			{
				//Empty
			}
		}
		
		"random_demo"
		{
			"nameID"			"#SFUI_Map_random"
			"imagename"			"map-random-demo"
			"name"				"random"
			"maps"
			{
				//Empty
			}
		}
		
		"random_classic"
		{
			"nameID"			"#SFUI_Map_random"
			"imagename"			"map-random-overall"
			"name"				"random"
			"maps"
			{
				//Empty
			}
		}
	}

	"maps"
	{
		//
		// Classic Maps
		//

		"cs_italy"
		{
			"nameID"			"#SFUI_Map_cs_italy"
			"name"				"cs_italy"
			"imagename"			"map-italy-overall"
			"t_arms"			"models/weapons/t_arms_separatist.mdl"
			"t_models"
			{
				"tm_separatist"		""
				"tm_separatist_variantA"		""
				"tm_separatist_variantB"		""
				"tm_separatist_variantC"		""
				"tm_separatist_variantD"		""
			}
			"ct_arms"			"models/weapons/ct_arms_gign.mdl"
			"ct_models"
			{
				"ctm_gign"		""
				"ctm_gign_variantA"	""
				"ctm_gign_variantB"	""
				"ctm_gign_variantC"	""
				"ctm_gign_variantD"	""
			}
			"hostage_models"
			{
				"models/hostage/hostage.mdl"	""
				"models/hostage/hostage_variantA.mdl"	""
				"models/hostage/hostage_variantB.mdl"	""
				"models/hostage/hostage_variantC.mdl"	""
			}
		}
	
		"cs_office"
		{
			"nameID"			"#SFUI_Map_cs_office"
			"name"				"cs_office"
			"imagename"			"map-office-overall"
			"t_arms"			"models/weapons/t_arms_anarchist.mdl"
			"t_models"
			{
				"tm_anarchist"		""
				"tm_anarchist_variantA"		""
				"tm_anarchist_variantb"		""
				"tm_anarchist_variantc"		""
				"tm_anarchist_variantd"		""
			}
			"ct_arms"			"models/weapons/ct_arms_fbi.mdl"
			"ct_models"
			{
				"ctm_fbi"		""
				"ctm_fbi_variantA"	""
				"ctm_fbi_variantB"	""
				"ctm_fbi_variantC"	""
				"ctm_fbi_variantD"	""
			}
			"hostage_models"
			{
				"models/hostage/hostage_variantD.mdl"	""
				"models/hostage/hostage_variantE.mdl"	""
				"models/hostage/hostage_variantF.mdl"	""
				"models/hostage/hostage_variantG.mdl"	""
			}
		}
	
		"de_aztec"
		{
			"nameID"			"#SFUI_Map_de_aztec"
			"name"				"de_aztec"
			"imagename"			"map-aztec-overall"
			"t_arms"			"models/weapons/t_arms_phoenix.mdl"
			"t_models"
			{
				"tm_phoenix"		""
				"tm_phoenix_variantA"	""
				"tm_phoenix_variantB"	""
				"tm_phoenix_variantC"	""
				"tm_phoenix_variantD"	""
			}
			"ct_arms"			"models/weapons/ct_arms_st6.mdl"
			"ct_models"
			{
				"ctm_st6"		""
				"ctm_st6_variantA"	""
				"ctm_st6_variantB"	""
				"ctm_st6_variantC"	""
				"ctm_st6_variantD"	""
			}
		}
		
		"de_train"
		{
			"nameID"			"#SFUI_Map_de_train"
			"name"				"de_train"
			"imagename"			"map-train-overall"
			"t_arms"			"models/weapons/t_arms_balkan.mdl"
			"t_models"
			{
				"tm_balkan_variantA"		""
				"tm_balkan_variantB"		""
				"tm_balkan_variantC"		""
				"tm_balkan_variantD"		""
				"tm_balkan_variantE"		""
			}
			"ct_arms"			"models/weapons/ct_arms_st6.mdl"
			"ct_models"
			{
				"ctm_st6"		""
				"ctm_st6_variantA"	""
				"ctm_st6_variantB"	""
				"ctm_st6_variantC"	""
				"ctm_st6_variantD"	""
			}
		}
	
		"de_dust"
		{
			"nameID"			"#SFUI_Map_de_dust"
			"name"				"de_dust"
			"imagename"			"map-dust-overall"
			"t_arms"			"models/weapons/t_arms.mdl"
			"t_models"
			{
				"tm_leet_variantA"		""
				"tm_leet_variantB"		""
				"tm_leet_variantC"		""
				"tm_leet_variantD"		""
				"tm_leet_variantE"		""
			}
			"ct_arms"			"models/weapons/ct_arms_idf.mdl"
			"ct_models"
			{
				"ctm_idf"		""
				"ctm_idf_variantB"	""
				"ctm_idf_variantC"	""
				"ctm_idf_variantD"	""
				"ctm_idf_variantE"	""
			}
		}
		
		"de_dust2"
		{
			"nameID"			"#SFUI_Map_de_dust2"
			"name"				"de_dust2"
			"imagename"			"map-dust2-overall"
			"t_arms"			"models/weapons/t_arms.mdl"
			"t_models"
			{
				"tm_leet_variantA"		""
				"tm_leet_variantB"		""
				"tm_leet_variantC"		""
				"tm_leet_variantD"		""
				"tm_leet_variantE"		""
			}
			"ct_arms"			"models/weapons/ct_arms_idf.mdl"
			"ct_models"
			{
				"ctm_idf"		""
				"ctm_idf_variantB"	""
				"ctm_idf_variantC"	""
				"ctm_idf_variantD"	""
				"ctm_idf_variantE"	""
				// We can only have 5 of these models so I'm removing this last one since it won't get read in anyway.
				//"ctm_idf_variantF"	""
			}
		}
	
		"de_inferno"
		{
			"nameID"			"#SFUI_Map_de_inferno"
			"name"				"de_inferno"
			"imagename"			"map-inferno-overall"
			"t_arms"			"models/weapons/t_arms_separatist.mdl"
			"t_models"
			{
				"tm_separatist"		""
				"tm_separatist_variantA"		""
				"tm_separatist_variantB"		""
				"tm_separatist_variantC"		""
				"tm_separatist_variantD"		""
			}
			"ct_arms"			"models/weapons/ct_arms_sas.mdl"
			"ct_models"
			{
				"ctm_sas_variantA"		""
				"ctm_sas_variantB"		""
				"ctm_sas_variantC"		""
				"ctm_sas_variantD"		""
				"ctm_sas"		""
			}
		}
	
		"de_nuke"
		{
			"nameID"			"#SFUI_Map_de_nuke"
			"name"				"de_nuke"
			"imagename"			"map-nuke-overall"
			"t_arms"			"models/weapons/t_arms_balkan.mdl"
			"t_models"
			{
				"tm_balkan_variantA"		""
				"tm_balkan_variantB"		""
				"tm_balkan_variantC"		""
				"tm_balkan_variantD"		""
				"tm_balkan_variantE"		""
			}
			"ct_arms"			"models/weapons/ct_arms_sas.mdl"
			"ct_models"
			{
				"ctm_sas_variantA"		""
				"ctm_sas_variantB"		""
				"ctm_sas_variantC"		""
				"ctm_sas_variantD"		""
				"ctm_sas"		""
			}
		}
		
		"de_vertigo"
		{
			"nameID"			"#SFUI_Map_de_vertigo"
			"name"				"de_vertigo"
			"imagename"			"map-vertigo-overall"
			"t_arms"			"models/weapons/t_arms_professional.mdl"
			"t_models"
			{
				"tm_professional"		""
				"tm_professional_var1"		""
				"tm_professional_var2"		""
				"tm_professional_var3"		""
				"tm_professional_var4"		""
			}
			"ct_arms"			"models/weapons/ct_arms_swat.mdl"
			"ct_models"
			{
				"ctm_swat"		""
				"ctm_swat_variantA"	""
				"ctm_swat_variantB"	""
				"ctm_swat_variantC"	""
				"ctm_swat_variantD"	""
			}
		}


//custom maps*****************************

        "jb_castleguarddev_v4"
        {
            "nameID"            "#SFUI_Map_cs_office"
            "name"                "cs_office"
            "imagename"            "map-office-overall"
            "t_arms"            "models/weapons/t_arms_separatist.mdl"
            "t_arms"            "models/weapons/t_arms_phoenix.mdl"
            "t_arms"            "models/weapons/t_arms_balkan.mdl"
            "t_models"
            {
                "tm_separatist"        ""
                "tm_separatist_variantA"        ""
                "tm_phoenix"        ""
                "tm_phoenix_variantA"    ""
                "tm_balkan_variantA"        ""
            }
            "ct_arms"            "models/weapons/ct_arms_fbi.mdl"
            "ct_arms"            "models/weapons/ct_arms_st6.mdl"
            "ct_arms"            "models/weapons/ct_arms_idf.mdl"
            "ct_models"
            {
                "ctm_fbi"        ""
                "ctm_st6_variantA"    ""
                "ctm_st6_variantB"    ""
                "ctm_idf_variantC"    ""
                "ctm_idf_variantD"    ""
            }
            "hostage_models"
            {
                "models/hostage/hostage_variantD.mdl"    ""
                "models/hostage/hostage_variantE.mdl"    ""
                "models/hostage/hostage_variantF.mdl"    ""
                "models/hostage/hostage_variantG.mdl"    ""
            }
        }

		//
		// Gun Game Maps
		//

		"ar_baggage"
		{
			"nameID"			"#SFUI_Map_ar_baggage"
			"name"				"ar_baggage"
			"imagename"			"map-baggage-overall"
			"t_arms"			"models/weapons/t_arms_phoenix.mdl"
			"t_models"
			{
				"tm_phoenix"		""
				"tm_phoenix_variantA"	""
				"tm_phoenix_variantB"	""
				"tm_phoenix_variantC"	""
				"tm_phoenix_variantD"	""
			}
			"ct_arms"			"models/weapons/ct_arms_gsg9.mdl"
			"ct_models"
			{
				"ctm_gsg9"		""
				"ctm_gsg9_variantA"	""
				"ctm_gsg9_variantB"	""
				"ctm_gsg9_variantC"	""
				"ctm_gsg9_variantD"	""
			}
		}
		
		"ar_shoots"
		{
			"nameID"			"#SFUI_Map_ar_shoots"
			"name"				"ar_shoots"
			"imagename"			"map-vietnam-overall"
			"t_arms"			"models/weapons/t_arms_pirate.mdl"
			"t_models"
			{
				"tm_pirate"		""
				"tm_pirate_variantA"	""
				"tm_pirate_variantC"	""
				"tm_pirate_variantD"	""
				"tm_pirate_variantB"	""
			}
			"ct_arms"			"models/weapons/ct_arms_gign.mdl"
			"ct_models"
			{
				"ctm_gign"		""
				"ctm_gign_variantA"	""
				"ctm_gign_variantB"	""
				"ctm_gign_variantC"	""
				"ctm_gign_variantD"	""
			}
		}
		
		"ar_monastery"
		{
			"nameID"			"#SFUI_Map_ar_monastery"
			"name"				"ar_monastery"
			"imagename"			"map-tibet-overall"
			"t_arms"			"models/weapons/t_arms_balkan.mdl"
			"t_models"
			{
				"tm_balkan_variantA"		""
				"tm_balkan_variantB"		""
				"tm_balkan_variantC"		""
				"tm_balkan_variantD"		""
				"tm_balkan_variantE"		""
			}
			"ct_arms"			"models/weapons/ct_arms_gsg9.mdl"
			"ct_models"
			{
				"ctm_gsg9"		""
				"ctm_gsg9_variantA"	""
				"ctm_gsg9_variantB"	""
				"ctm_gsg9_variantC"	""
				"ctm_gsg9_variantD"	""
			}
		}

		"de_lake"
		{
			"nameID"			"#SFUI_Map_de_lake"
			"name"				"de_lake"
			"imagename"			"map-boathouse-overall"
			"t_arms"			"models/weapons/t_arms_phoenix.mdl"
			"t_models"
			{
				"tm_phoenix"		""
				"tm_phoenix_variantA"	""
				"tm_phoenix_variantB"	""
				"tm_phoenix_variantC"	""
				"tm_phoenix_variantD"	""
			}
			"ct_arms"			"models/weapons/ct_arms_st6.mdl"
			"ct_models"
			{
				"ctm_st6"		""
				"ctm_st6_variantA"	""
				"ctm_st6_variantB"	""
				"ctm_st6_variantC"	""
				"ctm_st6_variantD"	""
			}
		}

		"de_bank"
		{
			"nameID"			"#SFUI_Map_de_bank"
			"name"				"de_bank"
			"imagename"			"map-bank-overall"
			"t_arms"			"models/weapons/t_arms_professional.mdl"
			"t_models"
			{
				"tm_professional"		""
				"tm_professional_var1"		""
				"tm_professional_var2"		""
				"tm_professional_var3"		""
				"tm_professional_var4"		""
			}
			"ct_arms"			"models/weapons/ct_arms_swat.mdl"
			"ct_models"
			{
				"ctm_swat"			""
				"ctm_swat_variantA"		""
				"ctm_swat_variantB"		""
				"ctm_swat_variantC"		""
				"ctm_swat_variantD"		""

			}
		}

		"de_safehouse"
		{
			"nameID"			"#SFUI_Map_de_safehouse"
			"name"				"de_safehouse"
			"imagename"			"map-house-overall"
			"t_arms"			"models/weapons/t_arms_professional.mdl"
			"t_models"
			{
				"tm_professional"		""
				"tm_professional_var1"		""
				"tm_professional_var2"		""
				"tm_professional_var3"		""
				"tm_professional_var4"		""
			}
			"ct_arms"			"models/weapons/ct_arms_swat.mdl"
			"ct_models"
			{

				"ctm_swat"			""
				"ctm_swat_variantA"		""
				"ctm_swat_variantB"		""
				"ctm_swat_variantC"		""
				"ctm_swat_variantD"		""
			}
		}

		"de_sugarcane"
		{
			"nameID"			"#SFUI_Map_de_sugarcane"
			"name"				"de_sugarcane"
			"imagename"			"map-mill-overall"
			"t_arms"			"models/weapons/t_arms_pirate.mdl"
			"t_models"
			{
				"tm_pirate"		""
				"tm_pirate_variantA"	""
				"tm_pirate_variantC"	""
				"tm_pirate_variantD"	""
				"tm_pirate_variantB"	""
			}
			"ct_arms"			"models/weapons/ct_arms_gign.mdl"
			"ct_models"
			{
				"ctm_gign"		""
				"ctm_gign_variantA"	""
				"ctm_gign_variantB"	""
				"ctm_gign_variantC"	""
				"ctm_gign_variantD"	""
			}
		}

		"de_stmarc"
		{
			"nameID"			"#SFUI_Map_de_stmarc"
			"name"				"de_stmarc"
			"imagename"			"map-shacks-overall"
			"t_arms"			"models/weapons/t_arms_pirate.mdl"
			"t_models"
			{
				"tm_pirate"		""
				"tm_pirate_variantA"	""
				"tm_pirate_variantC"	""
				"tm_pirate_variantD"	""
				"tm_pirate_variantB"	""
			}
			"ct_arms"			"models/weapons/ct_arms_gign.mdl"
			"ct_models"
			{
				"ctm_gign"		""
				"ctm_gign_variantA"	""
				"ctm_gign_variantB"	""
				"ctm_gign_variantC"	""
				"ctm_gign_variantD"	""
			}
		}

		"de_shorttrain"
		{
			"nameID"			"#SFUI_Map_de_shorttrain"
			"name"				"de_shorttrain"
			"imagename"			"map-train-overall"
			"t_arms"			"models/weapons/t_arms_balkan.mdl"
			"t_models"
			{
				"tm_balkan_variantA"		""
				"tm_balkan_variantB"		""
				"tm_balkan_variantC"		""
				"tm_balkan_variantD"		""
				"tm_balkan_variantE"		""
			}
			"ct_arms"			"models/weapons/ct_arms_sas.mdl"
			"ct_models"
			{
				"ctm_sas_variantA"		""
				"ctm_sas_variantB"		""
				"ctm_sas_variantC"		""
				"ctm_sas_variantD"		""
				"ctm_sas"		""
			}
		}

		//
		// Random Map
		//

		"random"
		{
			"nameID"			"#SFUI_Map_random"
			"name"				"random"
			"minplayers"		"#SFUI_VariesByMap"
			"maxplayers"		"#SFUI_VariesByMap"
			"imagename"			"map-random-overall"
			"t_models"
			{
				// these will be pulled from the assigned map
			}
			"ct_models"
			{
				// these will be pulled from the assigned map
			}
		}


		"training1"
		{
			"nameID"			"#SFUI_Map_training1"
			"name"				"training1"
			"minplayers"		"1"
			"maxplayers"		"1"
			"extraspectators"	"2"
			"imagename"			"map-alleyway-overall"
			"t_arms"			"models/weapons/t_arms_phoenix.mdl"
			"t_models"
			{
				"tm_phoenix"		""
			}
			"ct_arms"			"models/weapons/ct_arms_st6.mdl"
			"ct_models"
			{
				"ctm_st6"		""
			}
		}
	}
	
	"botDifficulty"
	{
		"none"
		{
			"nameID" "#SFUI_BotDifficulty0"
			"value" "0"
			"awardProgressDisabled" "1"
			"convars"
			{
				"bot_difficulty"		"0"
				"bot_dont_shoot"		"1"
				"bot_quota"				"0"
			}
		}
		
		"dumb"
		{
			"nameID" "#SFUI_BotDifficulty1"
			"value" "1"
			"awardProgressDisabled" "1"
			"convars"
			{
				"bot_difficulty"		"0"
				"bot_dont_shoot"		"1"
			}
		}
		
		"easy"
		{
			"nameID" "#SFUI_BotDifficulty2"
			"value" "2"
			"awardProgressDisabled" "0"
			"convars"
			{
				"bot_difficulty"		"0"
				"bot_dont_shoot"		"0"
			}
		}
		
		"medium"
		{
			"nameID" "#SFUI_BotDifficulty3"
			"value" "3"
			"awardProgressDisabled" "0"
			"convars"
			{
				"bot_difficulty"		"1"
				"bot_dont_shoot"		"0"
			}
		}
		
		"hard"
		{
			"nameID" "#SFUI_BotDifficulty4"
			"value" "4"
			"awardProgressDisabled" "0"
			"convars"
			{
				"bot_difficulty"		"2"
				"bot_dont_shoot"		"0"
			}
		}
		
		"expert"
		{
			"nameID" "#SFUI_BotDifficulty5"
			"value" "5"
			"awardProgressDisabled" "0"
			"convars"
			{
				"bot_difficulty"		"3"
				"bot_dont_shoot"		"0"
			}
		}
	}
	
	"mpSessionVisibility"
	{
		"public"
		{
			"nameID" "#SFUI_SessionVisibilityPublic"
			"value" "0"
			"matchmakingvalue" "public"
		}
		
		"private"
		{
			"nameID" "#SFUI_SessionVisibilityPrivate"
			"value" "1"
			"matchmakingvalue" "private"
		}
	}

	"maptypes"
	{
		"de_"
		{
			"nameID" "#SFUI_BombMap"
			"imagename" "icon-overview-bomb"
		}
		
		"cs_"
		{
			"nameID" "#SFUI_HostageMap"
			"imagename" "icon-overview-hostage"
		}

		"gungameprogressive"
		{
			"nameID" "#SFUI_GunGameProgressiveMap"
			"imagename" "icon-overview-progressive"
		}
		
		"gungametrbomb"
		{
			"nameID" "#SFUI_GunGameTRMap"
			"imagename" "icon-overview-trbomb"
		}

		"training"
		{
			"nameID" "#SFUI_TrainingSelectMap"
			"imagename" "icon-overview-select"
		}
				
		"unknown"
		{
			"nameID" "?"
		}
	}
}
shouldn't I be editing gamemodes_server.txt? cuz thats where I have all my custom maps

i've NEVER editted gamemodes.txt for anything, always gamemodes_server.txt


gamemodes_server.txt
Code:
// DO NOT MODIFY THIS FILE
// 
// To customize your server, see gamemodes_server.txt.example


"GameModes.txt"
{
	"gameTypes"
	{
		"classic"
		{
			"value"				"0"
			"nameID"			"#SFUI_GameTypeClassic"

			"gameModes"
			{
				"casual"
				{
					"value"			 	"0"
					"nameID"		 	"#SFUI_GameModeCasual"
					"descID"		 	"#SFUI_GameModeCasualDesc"
					"matchmakingvalue"	"casual"
					"uid"				"1"
					"maxplayers"			"32"

					// These are the descriptive ui elements to display in the information box on.
					// These key/values should be pairs of strings.  The "key" will appear in the left
					// column, the "value" will appear in the right column.
					"ui"
					{
						"0"		{ "label" "#SFUI_CashColon"				"value" "$400" }
						"1"		{ "label" "#SFUI_WinMatchColon"			"value" "30 #SFUI_Minutes" }
						"2"		{ "label" "#SFUI_TimePerRoundColon"		"value" "3 #SFUI_Minutes" }
						"3"		{ "label" "#SFUI_BuyTimeColon"			"value" "45 #SFUI_Seconds" }
						"4"		{ "label" "#SFUI_SpectateColon"			"value" "#SFUI_SpectateAnyone" }
						"5"		{ "label" "#SFUI_BotsColon"				"value" "#SFUI_BotDifficulty2" }
					}

					// These are the convars that get setup when a game mode of this type is created.			
					"convars"
					{
						"extraspectators"         "0"
						"bot_quota_mode"					"fill"
						"bot_quota"						"0"
						"bot_defer_to_human_items"			"1"
						"bot_defer_to_human_goals"			"0"
						"bot_difficulty"					"1"
						"bot_dont_shoot"					"0"
						"bot_chatter"						"normal"
						"cl_playerspraydisable"				"1"
						"mp_friendlyfire"					"0"
						"ff_damage_reduction_grenade"		"0"
						"ff_damage_reduction_bullets"		"0"
						"ff_damage_reduction_other"			"0"
						"ff_damage_reduction_grenade_self"	"0"
						"mp_afterroundmoney"				"0"
						"mp_playercashawards"				"1"
						"mp_teamcashawards"					"1"
						"mp_maxrounds"						"10"
						"mp_halftime"						"0"
						"mp_timelimit"						"45"
						"mp_roundtime"						"8"
						"mp_freezetime"						"5"
						"mp_buytime"						"45"
						"mp_forcecamera"					"0"			// Set to 1 for team only spectating.
						"mp_defuser_allocation"				"2"			// 0=none, 1=random, 2=everyone
						"mp_death_drop_gun"					"1"			// 0=none, 1=best, 2=current or best
						"mp_death_drop_grenade"				"2"			// 0=none, 1=best, 2=current or best
						"mp_death_drop_defuser"				"1"	
						"cl_enable_roundstart_autobuy"		"1"
						"sv_ignoregrenaderadio"					"1"
						"mp_molotovusedelay"					"0"

						"sv_alltalk"						"1"
						"sv_deadtalk"						"1"
						"mp_force_pick_time"				"8"
						"bot_autodifficulty_threshold_low"	"-2.0"	// Value between -20.0 and 20.0 (Amount below avg human contribution score, below which a bot should raise its difficulty)
						"bot_autodifficulty_threshold_high"	"0.0"	// Value between -20.0 and 20.0 (Amount above avg human contribution score, above which a bot should lower its difficulty)
						"spec_freeze_time"					"5.0"
						"spec_freeze_panel_extended_time"	"0"
						"mp_match_can_clinch"				"1"			// 0=No mercy rule, 1=team can clinch match win early if they win > 1/2 total rounds
						"mp_startmoney"						"1000"
						"mp_maxmoney"						"10000"
						"mp_playerid"	"0"						
						"sv_hibernate_when_empty"					"0"	
						"sv_allow_votes"					"0"		// Voting allowed in this mode
						"sv_arms_race_vote_to_restart_disallowed_after"	"0"

						// cash award convars
						"cash_team_terrorist_win_bomb"				"2700"
						"cash_team_elimination_hostage_map"			"2700"
						"cash_team_elimination_bomb_map"			"2700"
						"cash_team_win_by_time_running_out"			"2700"
						"cash_team_win_by_defusing_bomb"			"2700"
						"cash_team_win_by_hostage_rescue"			"2700"
						"cash_team_loser_bonus"						"2400"
						"cash_team_loser_bonus_consecutive_rounds"	"0"
						"cash_team_rescued_hostage"					"100"
						"cash_team_hostage_alive"					"0"
						"cash_team_planted_bomb_but_defused"		"200"
						"cash_team_hostage_interaction"				"50"
						"cash_player_killed_teammate"				"-3300"
						"cash_player_killed_enemy_default"			"200"
						"cash_player_killed_enemy_factor"			"0.5"
						"cash_player_bomb_planted"					"200"
						"cash_player_bomb_defused"					"200"
						"cash_player_rescued_hostage"				"200"
						"cash_player_interact_with_hostage"			"0"
						"cash_player_damage_hostage"				"-30"
						"cash_player_killed_hostage"				"-1000"

						// gungame tr defaults (not used in this mode)
						"mp_ggtr_bomb_respawn_delay"			"0"
						"mp_ggtr_bomb_detonation_bonus"			"1"
						"mp_ggtr_bomb_defuse_bonus"				"1"
						"mp_ggtr_bomb_pts_for_upgrade"			"2"
						"mp_ggtr_bomb_pts_for_he"				"3"
						"mp_ggtr_bomb_pts_for_flash"			"4"
						"mp_ggtr_bomb_pts_for_molotov"			"5"
						"mp_ggtr_halftime_delay"				"0.0"
						"mp_ggtr_rounds_per_half"				"5"
						"mp_ggtr_end_round_kill_bonus"			"1"
						"mp_ggtr_last_weapon_kill_ends_half"	"0"

						// gungame progressive defaults (not used in this mode)
						"mp_gungameimmunitytime"				"4"
						"mp_ggprogressive_round_restart_delay"	"15"
						"mp_ggprogressive_win_panel_pct"		"0.33333"

						"mp_weapons_allow_zeus"					"1"
						"mp_solid_teammates"					"0"
						"mp_free_armor"							"1"			
					}

					// Map groups for offline modes
					"mapgroupsSP"
					{
						"mg_de_train"		""
						"mg_de_dust"		""
						"mg_de_dust2"		""
						"mg_de_aztec"		""
						"mg_de_inferno"		""
						"mg_de_nuke"		""
						"mg_cs_italy"		""
						"mg_cs_office"		""
						"random_classic"	""
						}

					// Map groups for online modes
					"mapgroupsMP"
					{
						"mg_bomb"		""
						"mg_hostage"		""
						"mg_dust"		""
						"ba_jail_electric_global"		""
						"ba_jail_futurouta"		""
						"Ba_Jail_Kajoly_CsGO1"		""
						"jb_castleguarddev_v4"		""


						

					}
				}
	
				"competitive"
				{
					"value"			  	"1"
					"nameID"		  	"#SFUI_GameModeCompetitive"
					"descID"		  	"#SFUI_GameModeCompetitiveDesc"
					"matchmakingvalue"	"competitive"
					"uid"				"2"
					"maxplayers"			"10"
				
					// These are the descriptive ui elements to display in the information box on.
					// These key/values should be pairs of strings.  The "key" will appear in the left
					// column, the "value" will appear in the right column.
					"ui"
					{
						"0"		{ "label" "#SFUI_CashColon"				"value" "$800" }
						"1"		{ "label" "#SFUI_WinMatchColon"			"value" "30 #SFUI_Rounds" }
						"2"		{ "label" "#SFUI_TimePerRoundColon"		"value" "2 #SFUI_Minutes" }
						"3"		{ "label" "#SFUI_BuyTimeColon"			"value" "45 #SFUI_Seconds" }
						"4"		{ "label" "#SFUI_SpectateColon"			"value" "#SFUI_SpectateTeamOnly" }
						"5"		{ "label" "#SFUI_BotsColon"				"value" "#SFUI_BotDifficulty3" }
					}

					// These are the convars that get setup when a game mode of this type is created.			
					"convars"
					{
						"bot_quota_mode"					"fill"
						"bot_quota"						"10"
						"bot_defer_to_human_items"			"1"
						"bot_defer_to_human_goals"			"1"
						"bot_difficulty"					"2"
						"bot_dont_shoot"					"0"
						"bot_chatter"						"normal"
						"cl_playerspraydisable"				"1"
						"mp_friendlyfire"					"1"
						"ff_damage_reduction_grenade"		"0.85"
						"ff_damage_reduction_bullets"		"0.33"
						"ff_damage_reduction_other"			"0.4"
						"ff_damage_reduction_grenade_self"	"1"
						"mp_afterroundmoney"				"0"
						"mp_playercashawards"				"1"
						"mp_teamcashawards"					"1"
						"mp_maxrounds"						"30"
						"mp_halftime"						"1"
						"mp_timelimit"						"0"
						"mp_roundtime"						"2"
						"mp_freezetime"						"15"
						"mp_buytime"						"45"
						"mp_forcecamera"					"1"			// Set to 1 for team only spectating.
						"mp_defuser_allocation"				"0"
						"mp_death_drop_gun"					"1"			// 0=none, 1=best, 2=current or best
						"mp_death_drop_grenade"				"2"			// 0=none, 1=best, 2=current or best
						"mp_death_drop_defuser"				"1"	
						"cl_enable_roundstart_autobuy"		"0"
						"sv_ignoregrenaderadio"				"0"
						"mp_molotovusedelay"				"0"
						"sv_alltalk"						"0"
						"sv_deadtalk"						"1"
						"bot_autodifficulty_threshold_low"	"-2.0"	// Value between -20.0 and 20.0 (Amount below avg human contribution score, below which a bot should raise its difficulty)
						"bot_autodifficulty_threshold_high"	"0.0"	// Value between -20.0 and 20.0 (Amount above avg human contribution score, above which a bot should lower its difficulty)
						"mp_force_pick_time"				"15"
						"spec_freeze_time"					"5.0"
						"spec_freeze_panel_extended_time"	"0"
						"mp_match_can_clinch"				"1"			// 0=No mercy rule, 1=team can clinch match win early if they win > 1/2 total rounds
						"mp_startmoney"						"800"
						"mp_maxmoney"						"16000"

						"sv_allow_votes"						"0"		// Voting allowed in this mode
						"sv_arms_race_vote_to_restart_disallowed_after"	"0"

						// cash award convars
						"cash_team_terrorist_win_bomb"				"3500"
						"cash_team_elimination_hostage_map"			"3000"
						"cash_team_elimination_bomb_map"			"3250"
						"cash_team_win_by_time_running_out"			"3250"
						"cash_team_win_by_defusing_bomb"			"3500"
						"cash_team_win_by_hostage_rescue"			"3500"
						"cash_team_loser_bonus"						"1400"
						"cash_team_loser_bonus_consecutive_rounds"	"500"
						"cash_team_rescued_hostage"					"750"
						"cash_team_hostage_alive"					"150"
						"cash_team_planted_bomb_but_defused"		"800"
						"cash_team_hostage_interaction"				"150"
						"cash_player_killed_teammate"				"-3300"
						"cash_player_killed_enemy_default"			"300"
						"cash_player_killed_enemy_factor"			"1"
						"cash_player_bomb_planted"					"300"
						"cash_player_bomb_defused"					"300"
						"cash_player_rescued_hostage"				"1000"
						"cash_player_interact_with_hostage"			"150"
						"cash_player_damage_hostage"				"-30"
						"cash_player_killed_hostage"				"-1000"

						// gungame tr defaults (not used in this mode)
						"mp_ggtr_bomb_respawn_delay"			"0"
						"mp_ggtr_bomb_detonation_bonus"			"1"
						"mp_ggtr_bomb_defuse_bonus"				"1"
						"mp_ggtr_bomb_pts_for_upgrade"			"2"
						"mp_ggtr_bomb_pts_for_he"				"3"
						"mp_ggtr_bomb_pts_for_flash"			"4"
						"mp_ggtr_bomb_pts_for_molotov"			"5"
						"mp_ggtr_halftime_delay"				"0.0"
						"mp_ggtr_rounds_per_half"				"5"
						"mp_ggtr_end_round_kill_bonus"			"1"
						"mp_ggtr_last_weapon_kill_ends_half"	"0"

						// gungame progressive defaults (not used in this mode)
						"mp_gungameimmunitytime"				"4"
						"mp_ggprogressive_round_restart_delay"	"15"
						"mp_ggprogressive_win_panel_pct"		"0.33333"

						"mp_weapons_allow_zeus"					"0"
						"mp_solid_teammates"					"1"
						"mp_free_armor"							"0"			

					}

					// Map groups for offline modes
					"mapgroupsSP"
					{
						"mg_de_train"		""
						"mg_de_dust"		""
						"mg_de_dust2"		""
						"mg_de_aztec"		""
						"mg_de_inferno"		""
						"mg_de_nuke"		""
						"mg_cs_italy"		""
						"mg_cs_office"		""
						"random_classic"	""
						
						
					}

					// Map groups for online modes
					"mapgroupsMP"
					{
						"mg_bomb"		""
						"mg_hostage"		""
						"mg_dust"		""
						
					}
				}
			}	
		}

		"gungame"
		{
			"value"				"1"
			"nameID"			"#SFUI_GameTypeGungame"

			// This is the list of game modes supported by this game type.
			"gameModes"
			{
				"gungameprogressive"
				{
					"value"				"0"
					"nameID"			"#SFUI_GameModeGGProgressive"
					"descID"			"#SFUI_GameModeGGProgressiveDesc"
					"matchmakingvalue"	"competitive"
					"uid"				"11"
					"maxplayers"			"10"

					// These are the descriptive ui elements to display in the information box on.
					// These key/values should be pairs of strings.  The "key" will appear in the left
					// column, the "value" will appear in the right column.
					"ui"
					{
						"0"		{ "label" "#SFUI_WinMatchColon"			"value" "30 #SFUI_Minutes" }
						"1"		{ "label" "#SFUI_SpectateColon"			"value" "#SFUI_SpectateAnyone" }
						"2"		{ "label" "#SFUI_BotsColon"				"value" "#SFUI_BotDifficulty2" }
					}

					// These are the convars that get setup when a game mode of this type is created.			
					"convars"
					{
						"bot_quota_mode"					"fill"
						"bot_quota"						"10"
						"bot_defer_to_human_items"			"1"
						"bot_defer_to_human_goals"			"0"
						"bot_difficulty"					"1"
						"bot_dont_shoot"					"0"
						"bot_chatter"						"off"
						"cl_playerspraydisable"				"1"
							// bot_quota is ommited here because the map's min/max players determine's it's value.
						"mp_friendlyfire"					"1"
						"ff_damage_reduction_grenade"		"0.4"
						"ff_damage_reduction_bullets"		"0.1"
						"ff_damage_reduction_other"			"0.4"
						"ff_damage_reduction_grenade_self"	"0"
						"mp_startmoney"						"0"
						"mp_maxmoney"						"0"
						"mp_afterroundmoney"				"0"
						"mp_playercashawards"				"0"
						"mp_teamcashawards"					"0"
						"mp_timelimit"						"30"
						"mp_roundtime"						"30"
						"mp_freezetime"						"6"
						"mp_buytime"						"0"
						"mp_forcecamera"					"0"			// Set to 1 for team only spectating.
						"mp_defuser_allocation"				"0"			// 0=none, 1=random, 2=everyone
						"mp_death_drop_gun"					"0"			// 0=none, 1=best, 2=current or best
						"mp_death_drop_grenade"				"0"			// 0=none, 1=best, 2=current or best
						"mp_death_drop_defuser"				"0"	
						"mp_match_can_clinch"				"0"			// 0=No mercy rule, 1=team can clinch match win early if they win > 1/2 total rounds

						"mp_gungameimmunitytime"			"4"
						"cl_enable_roundstart_autobuy"		"0"
						"spec_freeze_time"					"2"
						"spec_freeze_panel_extended_time"	"1"
						"sv_ignoregrenaderadio"				"1"
						"mp_ggprogressive_round_restart_delay" "15"
						"mp_ggprogressive_win_panel_pct" "0.33333"

						"mp_weapons_allow_zeus"				"0"
						"mp_solid_teammates"				"0"
						"mp_free_armor"							"1"			

						"mp_molotovusedelay"				"0"
						"sv_alltalk"						"1"
						"sv_deadtalk"						"1"
						"bot_autodifficulty_threshold_low"	"-2.0"	// Value between -20.0 and 20.0 (Amount below avg human contribution score, below which a bot should raise its difficulty)
						"bot_autodifficulty_threshold_high"	"0.0"	// Value between -20.0 and 20.0 (Amount above avg human contribution score, above which a bot should lower its difficulty)

						"sv_allow_votes"						"0"		// Voting allowed in this mode
						"sv_arms_race_vote_to_restart_disallowed_after"	"26"

						// cash award convars (not used in this mode)
						"cash_team_terrorist_win_bomb"				"0"
						"cash_team_elimination_hostage_map"			"0"
						"cash_team_elimination_bomb_map"			"0"
						"cash_team_win_by_time_running_out"			"0"
						"cash_team_win_by_defusing_bomb"			"0"
						"cash_team_win_by_hostage_rescue"			"0"
						"cash_team_loser_bonus"						"0"
						"cash_team_loser_bonus_consecutive_rounds"	"0"
						"cash_team_rescued_hostage"					"0"
						"cash_team_hostage_alive"					"0"
						"cash_team_planted_bomb_but_defused"		"0"
						"cash_team_hostage_interaction"				"0"
						"cash_player_killed_teammate"				"0"
						"cash_player_killed_enemy_default"			"0"
						"cash_player_killed_enemy_factor"			"0"
						"cash_player_bomb_planted"					"0"
						"cash_player_bomb_defused"					"0"
						"cash_player_rescued_hostage"				"0"
						"cash_player_interact_with_hostage"			"0"
						"cash_player_damage_hostage"				"0"
						"cash_player_killed_hostage"				"0"

						// gungame tr defaults (not used in this mode)
						"mp_ggtr_bomb_respawn_delay"			"0"
						"mp_ggtr_bomb_detonation_bonus"			"1"
						"mp_ggtr_bomb_defuse_bonus"				"1"
						"mp_ggtr_bomb_pts_for_upgrade"			"2"
						"mp_ggtr_bomb_pts_for_he"				"3"
						"mp_ggtr_bomb_pts_for_flash"			"4"
						"mp_ggtr_bomb_pts_for_molotov"			"5"
						"mp_ggtr_halftime_delay"				"0.0"
						"mp_ggtr_rounds_per_half"				"5"
						"mp_ggtr_end_round_kill_bonus"			"1"
						"mp_ggtr_last_weapon_kill_ends_half"	"0"

						// required defaults
						"mp_maxrounds"						"0"
						"mp_halftime"						"0"
						"mp_force_pick_time"				"15"
					}
					
					// Map groups for offline modes
					"mapgroupsSP"
					{
						"mg_ar_baggage"		""
						"mg_ar_shoots"		""
						"random_ar"			""
					}

					// Map groups for online modes
					"mapgroupsMP"
					{
						"mg_armsrace"	""
					}

					"no_reset_vote_threshold_ct" 		"knife"
					"no_reset_vote_threshold_t" 		"knife"

					"weaponprogression_ct"
					{
						"mp9"			{ "kills"	"1" }
						"mac10"			{ "kills"	"1" }
						"mp7"			{ "kills"	"1" }
						"bizon"			{ "kills"	"1" }
						"ump45"			{ "kills"	"1" }
						"p90"			{ "kills"	"1" }
						"nova"			{ "kills"	"1" }
						"mag7"			{ "kills"	"1" }
						"xm1014"		{ "kills"	"1" }
						"sawedoff"		{ "kills"	"1" }
						"galilar"		{ "kills"	"1" }
						"famas"			{ "kills"	"1" }
						"ak47"			{ "kills"	"1" }
						"m4a1"			{ "kills"	"1" }
						"sg556"			{ "kills"	"1" }
						"aug"			{ "kills"	"1" }
						"awp"			{ "kills"	"1" }
						"m249"			{ "kills"	"1" }
						"negev"			{ "kills"	"1" }
						"glock"			{ "kills"	"1" }
						"hkp2000"		{ "kills"	"1" }
						"tec9"			{ "kills"	"1" }
						"p250"			{ "kills"	"1" }
						"deagle"		{ "kills"	"1" }
						"fiveseven"		{ "kills"	"1" }
						"elite"			{ "kills"	"1" }
						"knifegg"			{ "kills"	"1" }
					}
					
					"weaponprogression_t"
					{
						"mp9"			{ "kills"	"1" }
						"mac10"			{ "kills"	"1" }
						"mp7"			{ "kills"	"1" }
						"bizon"			{ "kills"	"1" }
						"ump45"			{ "kills"	"1" }
						"p90"			{ "kills"	"1" }
						"nova"			{ "kills"	"1" }
						"mag7"			{ "kills"	"1" }
						"xm1014"		{ "kills"	"1" }
						"sawedoff"		{ "kills"	"1" }
						"galilar"		{ "kills"	"1" }
						"famas"			{ "kills"	"1" }
						"ak47"			{ "kills"	"1" }
						"m4a1"			{ "kills"	"1" }
						"sg556"			{ "kills"	"1" }
						"aug"			{ "kills"	"1" }
						"awp"			{ "kills"	"1" }
						"m249"			{ "kills"	"1" }
						"negev"			{ "kills"	"1" }
						"glock"			{ "kills"	"1" }
						"hkp2000"		{ "kills"	"1" }
						"tec9"			{ "kills"	"1" }
						"p250"			{ "kills"	"1" }
						"deagle"		{ "kills"	"1" }
						"fiveseven"		{ "kills"	"1" }
						"elite"			{ "kills"	"1" }
						"knifegg"			{ "kills"	"1" }
					}
				}

				"gungametrbomb"
				{
					"value"				"1"
					"nameID"			"#SFUI_GameModeGGBomb"
					"descID"			"#SFUI_GameModeGGBombDesc"
					"matchmakingvalue"	"competitive"
					"uid"				"12"
					"maxplayers"			"10"

					// These are the descriptive ui elements to display in the information box on.
					// These key/values should be pairs of strings.  The "key" will appear in the left
					// column, the "value" will appear in the right column.
					"ui"
					{

						"0"		{ "label" "#SFUI_WinMatchColon"			"value" "10 #SFUI_Rounds" }
						"1"		{ "label" "#SFUI_TimePerRoundColon"		"value" "90 #SFUI_Seconds" }
						"2"		{ "label" "#SFUI_SpectateColon"			"value" "#SFUI_SpectateTeamOnly" }
						"3"		{ "label" "#SFUI_BotsColon"				"value" "#SFUI_BotDifficulty3" }
					}

					// These are the convars that get setup when a game mode of this type is created.			
					"convars"
					{
						"bot_quota_mode"					"fill"
						"bot_quota"						"10"
						"bot_defer_to_human_items"			"1"
						"bot_defer_to_human_goals"			"0"
						"bot_difficulty"					"2"
						"bot_dont_shoot"					"0"
						"bot_chatter"						"normal"
						"cl_playerspraydisable"				"1"
						"mp_friendlyfire"					"1"
						"ff_damage_reduction_grenade"		"0.85"
						"ff_damage_reduction_bullets"		"0.33"
						"ff_damage_reduction_other"			"0.4"
						"ff_damage_reduction_grenade_self"	"0"
						"mp_startmoney"						"0"
						"mp_maxmoney"						"0"
						"mp_afterroundmoney"				"0"
						"mp_playercashawards"				"0"
						"mp_teamcashawards"					"0"
						"mp_timelimit"						"0"
						"mp_roundtime"						"1.5"
	 					"mp_freezetime"						"6"
						"mp_buytime"						"0"
						"mp_forcecamera"					"0"			// Set to 1 for team only spectating.
						"mp_defuser_allocation"				"2"			// 0=none, 1=random, 2=everyone
						"mp_death_drop_gun"					"0"			// 0=none, 1=best, 2=current or best
						"mp_death_drop_grenade"				"0"			// 0=none, 1=best, 2=current or best
						"mp_death_drop_defuser"				"0"	
						"mp_match_can_clinch"				"1"			// 0=No mercy rule, 1=team can clinch match win early if they win > 1/2 total rounds
						"mp_gungameimmunitytime"				"0"
						"mp_ggtr_bomb_respawn_delay"			"1"
						"mp_ggtr_bomb_detonation_bonus"			"1"
						"mp_ggtr_bomb_defuse_bonus"				"0"
						"cl_enable_roundstart_autobuy"			"0"
						"sv_ignoregrenaderadio"					"1"
						"mp_ggtr_bomb_pts_for_upgrade"			"1"		// Kill points required to upgrade a player's weapon
						"mp_ggtr_bomb_pts_for_he"				"2"		// Kill points required in a round to get a bonus HE grenade
						"mp_ggtr_bomb_pts_for_flash"			"3"		// Kill points required in a round to get a bonus flash grenade
						"mp_ggtr_bomb_pts_for_molotov"			"4"		// Kill points required in a round to get a bonus molotov cocktail
						"mp_ggtr_halftime_delay"				"10.0"	// Number of seconds to delay during half-time
						"mp_ggtr_rounds_per_half"				"10"		// Number of rounds to play before/after half-time
						"mp_molotovusedelay"					"0"
						"sv_alltalk"							"0"
						"sv_deadtalk"							"0"
						"mp_ggtr_end_round_kill_bonus"			"0"		// Number of bonus points to award the team when a "knife" kill ends the last round
						"bot_autodifficulty_threshold_low"		"-2.0"	// Value between -20.0 and 20.0 (Amount below avg human contribution score, below which a bot should raise its difficulty)
						"bot_autodifficulty_threshold_high"		"0.0"	// Value between -20.0 and 20.0 (Amount above avg human contribution score, above which a bot should lower its difficulty)
						"mp_ggtr_last_weapon_kill_ends_half"	"0"		// End the half and give a team round point when a player makes a kill using the final weapon

						"sv_allow_votes"						"0"		// Voting allowed in this mode
						"sv_arms_race_vote_to_restart_disallowed_after"	"0"

						// cash award convars (not used in this mode)
						"cash_team_terrorist_win_bomb"				"0"
						"cash_team_elimination_hostage_map"			"0"
						"cash_team_elimination_bomb_map"			"0"
						"cash_team_win_by_time_running_out"			"0"
						"cash_team_win_by_defusing_bomb"			"0"
						"cash_team_win_by_hostage_rescue"			"0"
						"cash_team_loser_bonus"						"0"
						"cash_team_loser_bonus_consecutive_rounds"	"0"
						"cash_team_rescued_hostage"					"0"
						"cash_team_hostage_alive"					"0"
						"cash_team_planted_bomb_but_defused"		"0"
						"cash_team_hostage_interaction"				"0"
						"cash_player_killed_teammate"				"0"
						"cash_player_killed_enemy_default"			"0"
						"cash_player_killed_enemy_factor"			"0"
						"cash_player_bomb_planted"					"0"
						"cash_player_bomb_defused"					"0"
						"cash_player_rescued_hostage"				"0"
						"cash_player_interact_with_hostage"			"0"
						"cash_player_damage_hostage"				"0"
						"cash_player_killed_hostage"				"0"

						// gungame progressive defaults (not used in this mode)
						"mp_ggprogressive_round_restart_delay"	"15"
						"mp_ggprogressive_win_panel_pct"		"0.33333"

						"mp_weapons_allow_zeus"					"0"
						"mp_solid_teammates"					"0"
						"mp_free_armor"							"1"			

						// required defaults
						"mp_maxrounds"						"0"
						"mp_halftime"						"1"
						"mp_force_pick_time"				"15"
						"spec_freeze_time"					"5.0"
						"spec_freeze_panel_extended_time"	"0"
					}	

					// Map groups for offline modes
					"mapgroupsSP"
					{
						"mg_de_bank"		""
						"mg_de_lake"		""
						"mg_de_safehouse"	""
						"mg_de_sugarcane"	""
						"mg_de_stmarc"		""
						"mg_de_shorttrain"	""
						"random_demo"		""
					}

					// Map groups for online modes
					"mapgroupsMP"
					{
						"mg_demolition"		""
					}

					"weaponprogression_ct"
					{
						"m4a1"			{ "kills"	"1" }
						"p90"			{ "kills"	"1" }
						"ump45"			{ "kills"	"1" }
						"deagle"		{ "kills"	"1" }
						"nova"			{ "kills"	"1" }
						"fiveseven"		{ "kills"	"1" }
						"hkp2000"		{ "kills"	"1" }
						"ssg08"			{ "kills"	"1" }
						"awp"			{ "kills"	"1" }
						"Scar20"		{ "kills"	"1" }
					}
					
					"weaponprogression_t"
					{
						"ak47"			{ "kills"	"1" }
						"p90"			{ "kills"	"1" }
						"bizon"			{ "kills"	"1" }
						"deagle"		{ "kills"	"1" }
						"nova"			{ "kills"	"1" }
						"p250"			{ "kills"	"1" }
						"glock"			{ "kills"	"1" }
						"ssg08"			{ "kills"	"1" }
						"awp"			{ "kills"	"1" }
						"g3sg1"			{ "kills"	"1" }
					}
				}
			}
		}


		"training"
		{
			"value"				"3"
			"nameID"			"#SFUI_GameTypeFreestyle"
			"singleplayeronly"	"1"
	
			"gameModes"
			{
				"training"
				{
					"value"				"0"
					"nameID"			"#SFUI_GameTypeTraining"
					"descID"			"#SFUI_GameModeTrainingDesc"
					"showdisclaimer"	"1"
					"uid"				"21"
					"maxplayers"		"1"
	
					// These are the descriptive ui elements to display in the information box on.
					// These key/values should be pairs of strings.  The "key" will appear in the left
					// column, the "value" will appear in the right column.
					"ui"
					{
						"0"		{ "label" "#SFUI_CashColon"				"value" "$16,000" }
						"1"		{ "label" "#SFUI_WinMatchColon"			"value" "30 #SFUI_Minutes" }
						"2"		{ "label" "#SFUI_TimePerRoundColon"		"value" "5 #SFUI_Minutes" }
						"3"		{ "label" "#SFUI_BuyTimeColon"			"value" "90 #SFUI_Seconds" }
						"4"		{ "label" "#SFUI_SpectateColon"			"value" "#SFUI_SpectateAnyone" }
						// Bot data is determined by user selection.
					}
	
					// These are the convars that get setup when a game mode of this type is created.			
					"convars"
					{
						// For offline games, bot_difficulty and bot_quota are specified in the "botDifficulty" section later in this file.
						"bot_quota_mode"				"fill"
						"bot_defer_to_human_items"		"1"
						"bot_defer_to_human_goals"		"0"
						"bot_chatter"					"normal"
						"bot_difficulty"					"1"
						"bot_dont_shoot"					"0"
							// bot_quota is ommited here because the map's min/max players determine's it's value.
						"mp_friendlyfire"					"0"
						"ff_damage_reduction_grenade"		"0"
						"ff_damage_reduction_bullets"		"0"
						"ff_damage_reduction_other"			"0"
						"ff_damage_reduction_grenade_self"	"0"
						"mp_startmoney"						"0"
						"mp_maxmoney"						"0"
						"mp_afterroundmoney"				"0"
						"mp_playercashawards"				"0"
						"mp_teamcashawards"					"0"
						"mp_timelimit"						"0"
						"mp_roundtime"						"0"
						"mp_freezetime"						"0"
						"mp_buytime"						"0"
						"mp_forcecamera"					"0"			// Set to 1 for team only spectating.
						"mp_defuser_allocation"				"0"
						"cl_enable_roundstart_autobuy"		"0"
						"sv_ignoregrenaderadio"				"0"
						"sv_deadtalk"						"0"

						"sv_allow_votes"					"0"			// No voting allowed in this mode
						"sv_arms_race_vote_to_restart_disallowed_after"	"0"

						// cash award convars (not used in this mode)
						"cash_team_terrorist_win_bomb"				"0"
						"cash_team_elimination_hostage_map"			"0"
						"cash_team_elimination_bomb_map"			"0"
						"cash_team_win_by_time_running_out"			"0"
						"cash_team_win_by_defusing_bomb"			"0"
						"cash_team_win_by_hostage_rescue"			"0"
						"cash_team_loser_bonus"						"0"
						"cash_team_loser_bonus_consecutive_rounds"	"0"
						"cash_team_rescued_hostage"					"0"
						"cash_team_hostage_alive"					"0"
						"cash_team_planted_bomb_but_defused"		"0"
						"cash_team_hostage_interaction"				"0"
						"cash_player_killed_teammate"				"0"
						"cash_player_killed_enemy_default"			"0"
						"cash_player_killed_enemy_factor"			"0"
						"cash_player_bomb_planted"					"0"
						"cash_player_bomb_defused"					"0"
						"cash_player_rescued_hostage"				"0"
						"cash_player_interact_with_hostage"			"0"
						"cash_player_damage_hostage"				"0"
						"cash_player_killed_hostage"				"0"

						// gungame tr defaults (not used in this mode)
						"mp_ggtr_bomb_respawn_delay"			"0"
						"mp_ggtr_bomb_detonation_bonus"			"1"
						"mp_ggtr_bomb_defuse_bonus"				"1"
						"mp_ggtr_bomb_pts_for_upgrade"			"2"
						"mp_ggtr_bomb_pts_for_he"				"3"
						"mp_ggtr_bomb_pts_for_flash"			"4"
						"mp_ggtr_bomb_pts_for_molotov"			"5"
						"mp_ggtr_halftime_delay"				"0.0"
						"mp_ggtr_rounds_per_half"				"5"
						"mp_ggtr_end_round_kill_bonus"			"1"
						"mp_ggtr_last_weapon_kill_ends_half"	"0"

						// gungame progressive defaults (not used in this mode)
						"mp_gungameimmunitytime"				"4"
						"mp_ggprogressive_round_restart_delay"	"15"
						"mp_ggprogressive_win_panel_pct"		"0.33333"

						// required defaults
						"mp_weapons_allow_zeus"				"0"
						"mp_solid_teammates"				"0"
						"mp_free_armor"						"1"			
						"cl_playerspraydisable"				"1"
						"mp_maxrounds"						"0"
						"mp_halftime"						"0"
						"mp_death_drop_gun"					"0"
						"mp_death_drop_grenade"				"0"
						"mp_death_drop_defuser"				"0"	
						"mp_molotovusedelay"				"0"
						"sv_alltalk"						"0"
						"mp_force_pick_time"				"15"
						"bot_autodifficulty_threshold_low"	"-2.0"
						"bot_autodifficulty_threshold_high"	"0.0"
						"spec_freeze_time"					"5.0"
						"spec_freeze_panel_extended_time"	"0"
						"mp_match_can_clinch"				"0"
					}

					// Map groups for offline modes
					"mapgroupsSP"
					{
						"mg_training1"		""
					}
				}
			}
		}
	}

	"mapgroups"
	{
		// 
		// Map cycle groups
		//

		"mg_hostage"
		{
			"imagename"		"mapgroup-hostage"
			"nameID"		"#SFUI_Mapgroup_hostage"
			"name"			"mg_hostage"
			"maps"
			{
				"cs_office"		""
				"cs_italy"		""
			}
		}

		"mg_bomb"
		{
			"imagename"		"mapgroup-bomb"
			"nameID"		"#SFUI_Mapgroup_bomb"
			"name"			"mg_bomb"
			"maps"
			{
				"de_dust2"		""
				"de_train"		""
				"de_inferno"		""
				"de_dust"		""
				"de_aztec"		""
				"de_nuke"		""
				"ba_jail_electric_global"		""
				"ba_jail_futurouta"		""
				"Ba_Jail_Kajoly_CsGO1"		""
				"jb_castleguarddev_v4"		""


			}
		}


		"mg_dust"
		{
			"imagename"		"map-dust2-overall"
			"nameID"		"#SFUI_Mapgroup_dust"
			"name"			"mg_dust"
			"maps"
			{
				"de_dust"		""
				"de_dust2"		""
			}
		}

		"mg_armsrace"
		{
			"imagename"		"mapgroup-armsrace"
			"nameID"		"#SFUI_Mapgroup_armsrace"
			"name"			"mg_armsrace"
			"maps"
			{
				"ar_shoots"		""
				"ar_baggage"		""
			}
		}

		"mg_demolition"
		{
			"imagename"		"mapgroup-demolition"
			"nameID"		"#SFUI_Mapgroup_demolition"
			"name"			"mg_demolition"
			"maps"
			{
				"de_lake"		""
				"de_stmarc"		""
				"de_sugarcane"		""
				"de_bank"		""
				"de_safehouse"		""
				"de_shorttrain"		""
			}
		}
			
		//
		// Single map groups
		//

		"mg_de_train"
		{
			"imagename"		"map-train-overall"
			"nameID"		"#SFUI_Map_de_train"
			"name"			"mg_de_train"
			"maps"
			{
				"de_train"		""
			}
		}

		"mg_de_dust"		
		{
			"imagename"		"map-dust-overall"
			"nameID"		"#SFUI_Map_de_dust"
			"name"			"mg_de_dust"	
			"maps"
			{
				"de_dust"		""
			}	
		}

		"mg_de_dust2"
		{
			"imagename"		"map-dust2-overall"
			"nameID"		"#SFUI_Map_de_dust2"
			"name"			"mg_de_dust2"
			"maps"
			{
				"de_dust2"		""
			}
		}

		"mg_de_aztec"
		{
			"imagename"		"map-aztec-overall"
			"nameID"		"#SFUI_Map_de_aztec"
			"name"			"mg_de_aztec"
			"maps"
			{
				"de_aztec"		""
			}
		}

		"mg_de_inferno"
		{
			"imagename"		"map-inferno-overall"
			"nameID"		"#SFUI_Map_de_inferno"
			"name"			"mg_de_inferno"
			"maps"
			{
				"de_inferno"		""
			}
		}

		"mg_de_nuke"
		{
			"imagename"		"map-nuke-overall"
			"nameID"		"#SFUI_Map_de_nuke"
			"name"			"mg_de_nuke"
			"maps"
			{
				"de_nuke"		""
			}
		}

		"mg_cs_italy"
		{
			"imagename"		"map-italy-overall"
			"nameID"		"#SFUI_Map_cs_italy"
			"name"			"mg_cs_italy"
			"maps"
			{
				"cs_italy"		""
			}
		}

		"mg_cs_office"
		{
			"imagename"		"map-office-overall"
			"nameID"		"#SFUI_Map_cs_office"
			"name"			"mg_cs_office"
			"maps"
			{
				"cs_office"		""
			}
		}

		"mg_ar_baggage"
		{
			"imagename"		"map-baggage-overall"
			"nameID"		"#SFUI_Map_ar_baggage"
			"name"			"mg_ar_baggage"
			"maps"
			{
				"ar_baggage"		""
			}
		}

		"mg_ar_shoots"
		{
			"imagename"		"map-vietnam-overall"
			"nameID"		"#SFUI_Map_ar_shoots"
			"name"			"mg_ar_shoots"
			"maps"
			{
				"ar_shoots"		""
			}
		}

		"mg_de_bank"
		{
			"imagename"		"map-bank-overall"
			"nameID"		"#SFUI_Map_de_bank"
			"name"			"mg_de_bank"
			"maps"
			{
				"de_bank"		""
			}
		}

		"mg_de_lake"
		{
			"imagename"		"map-boathouse-overall"
			"nameID"		"#SFUI_Map_de_lake"
			"name"			"mg_de_lake"
			"maps"
			{
				"de_lake"		""
			}
		}

		"mg_de_safehouse"
		{
			"imagename"		"map-house-overall"
			"nameID"		"#SFUI_Map_de_safehouse"
			"name"			"mg_de_safehouse"
			"maps"
			{
				"de_safehouse"		""
			}
		}

		"mg_de_sugarcane"
		{
			"imagename"		"map-mill-overall"
			"nameID"		"#SFUI_Map_de_sugarcane"
			"name"			"mg_de_sugarcane"
			"maps"
			{
				"de_sugarcane"	""
			}
		}

		"mg_de_stmarc"
		{
			"imagename"		"map-shacks-overall"
			"nameID"		"#SFUI_Map_de_stmarc"
			"name"			"mg_de_stmarc"
			"maps"
			{
				"de_stmarc"		""
			}
		}

		"mg_de_shorttrain"
		{
			"imagename"		"map-train-overall"
			"nameID"		"#SFUI_Map_de_shorttrain"
			"name"			"mg_de_shorttrain"
			"maps"
			{
				"de_shorttrain"		""
			}
		}

		"mg_training1"
		{
			"imagename"		"map-alleyway-overall"
			"nameID"		"#SFUI_Map_training1"
			"name"			"mg_training1"
			"maps"
			{
				"training1"		""
			}
		}

		"random_ar"
		{
			"nameID"			"#SFUI_Map_random"
			"imagename"			"map-random-ar"
			"name"				"random"
			"maps"
			{
				//Empty
			}
		}
		
		"random_demo"
		{
			"nameID"			"#SFUI_Map_random"
			"imagename"			"map-random-demo"
			"name"				"random"
			"maps"
			{
				//Empty
			}
		}
		
		"random_classic"
		{
			"nameID"			"#SFUI_Map_random"
			"imagename"			"map-random-overall"
			"name"				"random"
			"maps"
			{
				//Empty
			}
		}
	}

	"maps"
	{
		//
		// Classic Maps
		//

		"cs_italy"
		{
			"nameID"			"#SFUI_Map_cs_italy"
			"name"				"cs_italy"
			"imagename"			"map-italy-overall"
			"t_arms"			"models/weapons/t_arms_separatist.mdl"
			"t_models"
			{
				"tm_separatist"		""
				"tm_separatist_variantA"		""
				"tm_separatist_variantB"		""
				"tm_separatist_variantC"		""
				"tm_separatist_variantD"		""
			}
			"ct_arms"			"models/weapons/ct_arms_gign.mdl"
			"ct_models"
			{
				"ctm_gign"		""
				"ctm_gign_variantA"	""
				"ctm_gign_variantB"	""
				"ctm_gign_variantC"	""
				"ctm_gign_variantD"	""
			}
			"hostage_models"
			{
				"models/hostage/hostage.mdl"	""
				"models/hostage/hostage_variantA.mdl"	""
				"models/hostage/hostage_variantB.mdl"	""
				"models/hostage/hostage_variantC.mdl"	""
			}
		}
	
		"cs_office"
		{
			"nameID"			"#SFUI_Map_cs_office"
			"name"				"cs_office"
			"imagename"			"map-office-overall"
			"t_arms"			"models/weapons/t_arms_anarchist.mdl"
			"t_models"
			{
				"tm_anarchist"		""
				"tm_anarchist_variantA"		""
				"tm_anarchist_variantb"		""
				"tm_anarchist_variantc"		""
				"tm_anarchist_variantd"		""
			}
			"ct_arms"			"models/weapons/ct_arms_fbi.mdl"
			"ct_models"
			{
				"ctm_fbi"		""
				"ctm_fbi_variantA"	""
				"ctm_fbi_variantB"	""
				"ctm_fbi_variantC"	""
				"ctm_fbi_variantD"	""
			}
			"hostage_models"
			{
				"models/hostage/hostage_variantD.mdl"	""
				"models/hostage/hostage_variantE.mdl"	""
				"models/hostage/hostage_variantF.mdl"	""
				"models/hostage/hostage_variantG.mdl"	""
			}
		}
	
		"de_aztec"
		{
			"nameID"			"#SFUI_Map_de_aztec"
			"name"				"de_aztec"
			"imagename"			"map-aztec-overall"
			"t_arms"			"models/weapons/t_arms_phoenix.mdl"
			"t_models"
			{
				"tm_phoenix"		""
				"tm_phoenix_variantA"	""
				"tm_phoenix_variantB"	""
				"tm_phoenix_variantC"	""
				"tm_phoenix_variantD"	""
			}
			"ct_arms"			"models/weapons/ct_arms_st6.mdl"
			"ct_models"
			{
				"ctm_st6"		""
				"ctm_st6_variantA"	""
				"ctm_st6_variantB"	""
				"ctm_st6_variantC"	""
				"ctm_st6_variantD"	""
			}
		}
		
		"de_train"
		{
			"nameID"			"#SFUI_Map_de_train"
			"name"				"de_train"
			"imagename"			"map-train-overall"
			"t_arms"			"models/weapons/t_arms_balkan.mdl"
			"t_models"
			{
				"tm_balkan_variantA"		""
				"tm_balkan_variantB"		""
				"tm_balkan_variantC"		""
				"tm_balkan_variantD"		""
				"tm_balkan_variantE"		""
			}
			"ct_arms"			"models/weapons/ct_arms_st6.mdl"
			"ct_models"
			{
				"ctm_st6"		""
				"ctm_st6_variantA"	""
				"ctm_st6_variantB"	""
				"ctm_st6_variantC"	""
				"ctm_st6_variantD"	""
			}
		}
	
		"de_dust"
		{
			"nameID"			"#SFUI_Map_de_dust"
			"name"				"de_dust"
			"imagename"			"map-dust-overall"
			"t_arms"			"models/weapons/t_arms.mdl"
			"t_models"
			{
				"tm_leet_variantA"		""
				"tm_leet_variantB"		""
				"tm_leet_variantC"		""
				"tm_leet_variantD"		""
				"tm_leet_variantE"		""
			}
			"ct_arms"			"models/weapons/ct_arms_idf.mdl"
			"ct_models"
			{
				"ctm_idf"		""
				"ctm_idf_variantB"	""
				"ctm_idf_variantC"	""
				"ctm_idf_variantD"	""
				"ctm_idf_variantE"	""
			}
		}
		
		"de_dust2"
		{
			"nameID"			"#SFUI_Map_de_dust2"
			"name"				"de_dust2"
			"imagename"			"map-dust2-overall"
			"t_arms"			"models/weapons/t_arms.mdl"
			"t_models"
			{
				"tm_leet_variantA"		""
				"tm_leet_variantB"		""
				"tm_leet_variantC"		""
				"tm_leet_variantD"		""
				"tm_leet_variantE"		""
			}
			"ct_arms"			"models/weapons/ct_arms_idf.mdl"
			"ct_models"
			{
				"ctm_idf"		""
				"ctm_idf_variantB"	""
				"ctm_idf_variantC"	""
				"ctm_idf_variantD"	""
				"ctm_idf_variantE"	""
				// We can only have 5 of these models so I'm removing this last one since it won't get read in anyway.
				//"ctm_idf_variantF"	""
			}
		}
	
		"de_inferno"
		{
			"nameID"			"#SFUI_Map_de_inferno"
			"name"				"de_inferno"
			"imagename"			"map-inferno-overall"
			"t_arms"			"models/weapons/t_arms_separatist.mdl"
			"t_models"
			{
				"tm_separatist"		""
				"tm_separatist_variantA"		""
				"tm_separatist_variantB"		""
				"tm_separatist_variantC"		""
				"tm_separatist_variantD"		""
			}
			"ct_arms"			"models/weapons/ct_arms_sas.mdl"
			"ct_models"
			{
				"ctm_sas_variantA"		""
				"ctm_sas_variantB"		""
				"ctm_sas_variantC"		""
				"ctm_sas_variantD"		""
				"ctm_sas"		""
			}
		}
	
		"de_nuke"
		{
			"nameID"			"#SFUI_Map_de_nuke"
			"name"				"de_nuke"
			"imagename"			"map-nuke-overall"
			"t_arms"			"models/weapons/t_arms_balkan.mdl"
			"t_models"
			{
				"tm_balkan_variantA"		""
				"tm_balkan_variantB"		""
				"tm_balkan_variantC"		""
				"tm_balkan_variantD"		""
				"tm_balkan_variantE"		""
			}
			"ct_arms"			"models/weapons/ct_arms_sas.mdl"
			"ct_models"
			{
				"ctm_sas_variantA"		""
				"ctm_sas_variantB"		""
				"ctm_sas_variantC"		""
				"ctm_sas_variantD"		""
				"ctm_sas"		""
			}
		}

        "jb_castleguarddev_v4"
        {
            "nameID"            "#SFUI_Map_cs_office"
            "name"                "jb_castleguarddev_v4"
            "imagename"            "map-office-overall"
            "t_arms"            "models/weapons/t_arms_separatist.mdl"
            "t_arms"            "models/weapons/t_arms_phoenix.mdl"
            "t_arms"            "models/weapons/t_arms_balkan.mdl"
            "t_models"
            {
                "tm_separatist"        ""
                "tm_separatist_variantA"        ""
                "tm_phoenix"        ""
                "tm_phoenix_variantA"    ""
                "tm_balkan_variantA"        ""
            }
            "ct_arms"            "models/weapons/ct_arms_fbi.mdl"
            "ct_arms"            "models/weapons/ct_arms_st6.mdl"
            "ct_arms"            "models/weapons/ct_arms_idf.mdl"
            "ct_models"
            {
                "ctm_fbi"        ""
                "ctm_st6_variantA"    ""
                "ctm_st6_variantB"    ""
                "ctm_idf_variantC"    ""
                "ctm_idf_variantD"    ""
            }
            "hostage_models"
            {
                "models/hostage/hostage_variantD.mdl"    ""
                "models/hostage/hostage_variantE.mdl"    ""
                "models/hostage/hostage_variantF.mdl"    ""
                "models/hostage/hostage_variantG.mdl"    ""
            }
        }

		//
		// Gun Game Maps
		//

		"ar_baggage"
		{
			"nameID"			"#SFUI_Map_ar_baggage"
			"name"				"ar_baggage"
			"imagename"			"map-baggage-overall"
			"t_arms"			"models/weapons/t_arms_phoenix.mdl"
			"t_models"
			{
				"tm_phoenix"		""
				"tm_phoenix_variantA"	""
				"tm_phoenix_variantB"	""
				"tm_phoenix_variantC"	""
				"tm_phoenix_variantD"	""
			}
			"ct_arms"			"models/weapons/ct_arms_gsg9.mdl"
			"ct_models"
			{
				"ctm_gsg9"		""
				"ctm_gsg9_variantA"	""
				"ctm_gsg9_variantB"	""
				"ctm_gsg9_variantC"	""
				"ctm_gsg9_variantD"	""
			}
		}
		
		"ar_shoots"
		{
			"nameID"			"#SFUI_Map_ar_shoots"
			"name"				"ar_shoots"
			"imagename"			"map-vietnam-overall"
			"t_arms"			"models/weapons/t_arms_pirate.mdl"
			"t_models"
			{
				"tm_pirate"		""
				"tm_pirate_variantA"	""
				"tm_pirate_variantC"	""
				"tm_pirate_variantD"	""
				"tm_pirate_variantB"	""
			}
			"ct_arms"			"models/weapons/ct_arms_gign.mdl"
			"ct_models"
			{
				"ctm_gign"		""
				"ctm_gign_variantA"	""
				"ctm_gign_variantB"	""
				"ctm_gign_variantC"	""
				"ctm_gign_variantD"	""
			}
		}

		"de_lake"
		{
			"nameID"			"#SFUI_Map_de_lake"
			"name"				"de_lake"
			"imagename"			"map-boathouse-overall"
			"t_arms"			"models/weapons/t_arms_phoenix.mdl"
			"t_models"
			{
				"tm_phoenix"		""
				"tm_phoenix_variantA"	""
				"tm_phoenix_variantB"	""
				"tm_phoenix_variantC"	""
				"tm_phoenix_variantD"	""
			}
			"ct_arms"			"models/weapons/ct_arms_st6.mdl"
			"ct_models"
			{
				"ctm_st6"		""
				"ctm_st6_variantA"	""
				"ctm_st6_variantB"	""
				"ctm_st6_variantC"	""
				"ctm_st6_variantD"	""
			}
		}

		"de_bank"
		{
			"nameID"			"#SFUI_Map_de_bank"
			"name"				"de_bank"
			"imagename"			"map-bank-overall"
			"t_arms"			"models/weapons/t_arms_professional.mdl"
			"t_models"
			{
				"tm_professional"		""
				"tm_professional_var1"		""
				"tm_professional_var2"		""
				"tm_professional_var3"		""
				"tm_professional_var4"		""
			}
			"ct_arms"			"models/weapons/ct_arms_swat.mdl"
			"ct_models"
			{
				"ctm_swat"			""
				"ctm_swat_variantA"		""
				"ctm_swat_variantB"		""
				"ctm_swat_variantC"		""
				"ctm_swat_variantD"		""

			}
		}

		"de_safehouse"
		{
			"nameID"			"#SFUI_Map_de_safehouse"
			"name"				"de_safehouse"
			"imagename"			"map-house-overall"
			"t_arms"			"models/weapons/t_arms_professional.mdl"
			"t_models"
			{
				"tm_professional"		""
				"tm_professional_var1"		""
				"tm_professional_var2"		""
				"tm_professional_var3"		""
				"tm_professional_var4"		""
			}
			"ct_arms"			"models/weapons/ct_arms_swat.mdl"
			"ct_models"
			{

				"ctm_swat"			""
				"ctm_swat_variantA"		""
				"ctm_swat_variantB"		""
				"ctm_swat_variantC"		""
				"ctm_swat_variantD"		""
			}
		}

		"de_sugarcane"
		{
			"nameID"			"#SFUI_Map_de_sugarcane"
			"name"				"de_sugarcane"
			"imagename"			"map-mill-overall"
			"t_arms"			"models/weapons/t_arms_pirate.mdl"
			"t_models"
			{
				"tm_pirate"		""
				"tm_pirate_variantA"	""
				"tm_pirate_variantC"	""
				"tm_pirate_variantD"	""
				"tm_pirate_variantB"	""
			}
			"ct_arms"			"models/weapons/ct_arms_gign.mdl"
			"ct_models"
			{
				"ctm_gign"		""
				"ctm_gign_variantA"	""
				"ctm_gign_variantB"	""
				"ctm_gign_variantC"	""
				"ctm_gign_variantD"	""
			}
		}

		"de_stmarc"
		{
			"nameID"			"#SFUI_Map_de_stmarc"
			"name"				"de_stmarc"
			"imagename"			"map-shacks-overall"
			"t_arms"			"models/weapons/t_arms_pirate.mdl"
			"t_models"
			{
				"tm_pirate"		""
				"tm_pirate_variantA"	""
				"tm_pirate_variantC"	""
				"tm_pirate_variantD"	""
				"tm_pirate_variantB"	""
			}
			"ct_arms"			"models/weapons/ct_arms_gign.mdl"
			"ct_models"
			{
				"ctm_gign"		""
				"ctm_gign_variantA"	""
				"ctm_gign_variantB"	""
				"ctm_gign_variantC"	""
				"ctm_gign_variantD"	""
			}
		}

		"de_shorttrain"
		{
			"nameID"			"#SFUI_Map_de_shorttrain"
			"name"				"de_shorttrain"
			"imagename"			"map-train-overall"
			"t_arms"			"models/weapons/t_arms_balkan.mdl"
			"t_models"
			{
				"tm_balkan_variantA"		""
				"tm_balkan_variantB"		""
				"tm_balkan_variantC"		""
				"tm_balkan_variantD"		""
				"tm_balkan_variantE"		""
			}
			"ct_arms"			"models/weapons/ct_arms_sas.mdl"
			"ct_models"
			{
				"ctm_sas_variantA"		""
				"ctm_sas_variantB"		""
				"ctm_sas_variantC"		""
				"ctm_sas_variantD"		""
				"ctm_sas"		""
			}
		}

		//
		// Random Map
		//

		"random"
		{
			"nameID"			"#SFUI_Map_random"
			"name"				"random"
			"minplayers"		"#SFUI_VariesByMap"
			"maxplayers"		"#SFUI_VariesByMap"
			"imagename"			"map-random-overall"
			"t_models"
			{
				// these will be pulled from the assigned map
			}
			"ct_models"
			{
				// these will be pulled from the assigned map
			}
		}

		//
		// DLC Maps
		//

		"de_embassy"
		{
			"nameID"			"#SFUI_Map_de_embassy"
			"name"				"de_embassy"
			"imagename"			"map-dust-overall"
			"t_arms"			"models/weapons/t_arms.mdl"
			"t_models"
			{
				"tm_anarchist"		""
				"tm_anarchist_variantA"		""
				"tm_anarchist_variantb"		""
				"tm_anarchist_variantc"		""
				"tm_anarchist_variantd"		""
			}
			"ct_arms"			"models/weapons/ct_arms_swat.mdl"
			"ct_models"
			{
				"ctm_swat"			""
				"ctm_swat_variantA"		""
				"ctm_swat_variantB"		""
				"ctm_swat_variantC"		""
				"ctm_swat_variantD"		""
			}
		}

		"cs_assault"
		{
			"nameID"			"#SFUI_Map_cs_assault"
			"name"				"cs_assault"
			"imagename"			"map-assault-overall"
			"t_arms"			"models/weapons/t_arms_phoenix.mdl"
			"t_models"
			{
				"tm_phoenix"		""
				"tm_phoenix_variantA"	""
				"tm_phoenix_variantB"	""
				"tm_phoenix_variantC"	""
				"tm_phoenix_variantD"	""
			}
			"ct_arms"			"models/weapons/ct_arms_fbi.mdl"
			"ct_models"
			{
				"ctm_fbi"		""
				"ctm_fbi_variantA"	""
				"ctm_fbi_variantB"	""
				"ctm_fbi_variantC"	""
				"ctm_fbi_variantD"	""
			}
		}

		"de_balkan"
		{
			"nameID"			"#SFUI_Map_de_balkan"
			"name"				"de_balkan"
			"imagename"			"map-vostok-overall"
			"t_arms"			"models/weapons/t_arms_balkan.mdl"
			"t_models"
			{
				"tm_balkan_variantA"		""
				"tm_balkan_variantB"		""
				"tm_balkan_variantC"		""
				"tm_balkan_variantD"		""
				"tm_balkan_variantE"		""
			}
			"ct_arms"			"models/weapons/ct_arms_gsg9.mdl"
			"ct_models"
			{
				"ctm_gsg9"		""
				"ctm_gsg9_variantA"	""
				"ctm_gsg9_variantB"	""
				"ctm_gsg9_variantC"	""
				"ctm_gsg9_variantD"	""
			}
		}

		"de_vertigo"
		{
			"nameID"			"#SFUI_Map_de_vertigo"
			"name"				"de_vertigo"
			"imagename"			"map-vertigo-overall"
			"t_arms"			"models/weapons/t_arms_professional.mdl"
			"t_models"
			{
				"tm_professional"		""
				"tm_professional_var1"		""
				"tm_professional_var2"		""
				"tm_professional_var3"		""
				"tm_professional_var4"		""
			}
			"ct_arms"			"models/weapons/ct_arms_fbi.mdl"
			"ct_models"
			{
				"ctm_fbi"		""
				"ctm_fbi_variantA"	""
				"ctm_fbi_variantB"	""
				"ctm_fbi_variantC"	""
				"ctm_fbi_variantD"	""
			}
		}

		"de_cranes"
		{
			"nameID"			"#SFUI_Map_de_cranes"
			"name"				"de_cranes"
			"imagename"			"map-cranes-overall"
			"t_arms"			"models/weapons/t_arms_professional.mdl"
			"t_models"
			{
				"tm_professional"		""
				"tm_professional_var1"		""
				"tm_professional_var2"		""
				"tm_professional_var3"		""
				"tm_professional_var4"		""
			}
			"ct_arms"			"models/weapons/ct_arms_fbi.mdl"
			"ct_models"
			{
				"ctm_fbi"		""
				"ctm_fbi_variantA"	""
				"ctm_fbi_variantB"	""
				"ctm_fbi_variantC"	""
				"ctm_fbi_variantD"	""
			}
		}

		"ar_monastery"
		{
			"nameID"			"#SFUI_Map_ar_monastery"
			"name"				"ar_monastery"
			"imagename"			"map-tibet-overall"
			"t_arms"			"models/weapons/t_arms_balkan.mdl"
			"t_models"
			{
				"tm_balkan_variantA"		""
				"tm_balkan_variantB"		""
				"tm_balkan_variantC"		""
				"tm_balkan_variantD"		""
				"tm_balkan_variantE"		""
			}
			"ct_arms"			"models/weapons/ct_arms_gsg9.mdl"
			"ct_models"
			{
				"ctm_gsg9"		""
				"ctm_gsg9_variantA"	""
				"ctm_gsg9_variantB"	""
				"ctm_gsg9_variantC"	""
				"ctm_gsg9_variantD"	""
			}
		}

		"de_depot"
		{
			"nameID"			"#SFUI_Map_de_depot"
			"name"				"de_depot"
			"imagename"			"map-depot-overall"
			"t_arms"			"models/weapons/t_arms_balkan.mdl"
			"t_models"
			{
				"tm_balkan_variantA"		""
				"tm_balkan_variantB"		""
				"tm_balkan_variantC"		""
				"tm_balkan_variantD"		""
				"tm_balkan_variantE"		""
			}
			"ct_arms"			"models/weapons/ct_arms_gsg9.mdl"
			"ct_models"
			{
				"ctm_gsg9"		""
				"ctm_gsg9_variantA"	""
				"ctm_gsg9_variantB"	""
				"ctm_gsg9_variantC"	""
				"ctm_gsg9_variantD"	""
			}
		}

		"de_alleyway"
		{
			"nameID"			"#SFUI_Map_de_alleyway"
			"name"				"de_alleyway"
			"imagename"			"map-alleyway-overall"
			"t_arms"			"models/weapons/t_arms_professional.mdl"
			"t_models"
			{
				"tm_professional"		""
				"tm_professional_var1"		""
				"tm_professional_var2"		""
				"tm_professional_var3"		""
				"tm_professional_var4"		""
			}
			"ct_arms"			"models/weapons/ct_arms_swat.mdl"
			"ct_models"
			{
				"ctm_swat"			""
				"ctm_swat_variantA"		""
				"ctm_swat_variantB"		""
				"ctm_swat_variantC"		""
				"ctm_swat_variantD"		""
			}
		}

		"training1"
		{
			"nameID"			"#SFUI_Map_training1"
			"name"				"training1"
			"minplayers"		"1"
			"maxplayers"		"1"
			"extraspectators"	"2"
			"imagename"			"map-alleyway-overall"
			"t_arms"			"models/weapons/t_arms_phoenix.mdl"
			"t_models"
			{
				"tm_phoenix"		""
			}
			"ct_arms"			"models/weapons/ct_arms_st6.mdl"
			"ct_models"
			{
				"ctm_st6"		""
			}
		}
	}
	
	"botDifficulty"
	{
		"none"
		{
			"nameID" "#SFUI_BotDifficulty0"
			"value" "0"
			"awardProgressDisabled" "1"
			"convars"
			{
				"bot_difficulty"		"0"
				"bot_dont_shoot"		"1"
				"bot_quota"				"0"
			}
		}
		
		"dumb"
		{
			"nameID" "#SFUI_BotDifficulty1"
			"value" "1"
			"awardProgressDisabled" "1"
			"convars"
			{
				"bot_difficulty"		"0"
				"bot_dont_shoot"		"1"
			}
		}
		
		"easy"
		{
			"nameID" "#SFUI_BotDifficulty2"
			"value" "2"
			"awardProgressDisabled" "0"
			"convars"
			{
				"bot_difficulty"		"0"
				"bot_dont_shoot"		"0"
			}
		}
		
		"medium"
		{
			"nameID" "#SFUI_BotDifficulty3"
			"value" "3"
			"awardProgressDisabled" "0"
			"convars"
			{
				"bot_difficulty"		"1"
				"bot_dont_shoot"		"0"
			}
		}
		
		"hard"
		{
			"nameID" "#SFUI_BotDifficulty4"
			"value" "4"
			"awardProgressDisabled" "0"
			"convars"
			{
				"bot_difficulty"		"2"
				"bot_dont_shoot"		"0"
			}
		}
		
		"expert"
		{
			"nameID" "#SFUI_BotDifficulty5"
			"value" "5"
			"awardProgressDisabled" "0"
			"convars"
			{
				"bot_difficulty"		"3"
				"bot_dont_shoot"		"0"
			}
		}
	}
	
	"mpSessionVisibility"
	{
		"public"
		{
			"nameID" "#SFUI_SessionVisibilityPublic"
			"value" "0"
			"matchmakingvalue" "public"
		}
		
		"private"
		{
			"nameID" "#SFUI_SessionVisibilityPrivate"
			"value" "1"
			"matchmakingvalue" "private"
		}
	}

	"maptypes"
	{
		"de_"
		{
			"nameID" "#SFUI_BombMap"
			"imagename" "icon-overview-bomb"
		}
		
		"cs_"
		{
			"nameID" "#SFUI_HostageMap"
			"imagename" "icon-overview-hostage"
		}

		"gungameprogressive"
		{
			"nameID" "#SFUI_GunGameProgressiveMap"
			"imagename" "icon-overview-progressive"
		}
		
		"gungametrbomb"
		{
			"nameID" "#SFUI_GunGameTRMap"
			"imagename" "icon-overview-trbomb"
		}

		"training"
		{
			"nameID" "#SFUI_TrainingSelectMap"
			"imagename" "icon-overview-select"
		}
				
		"unknown"
		{
			"nameID" "?"
		}
	}
}
__________________

Last edited by PresidentEvil; 10-13-2012 at 01:47.
PresidentEvil is offline
jholland
Member
Join Date: Sep 2012
Location: Minnesota
Old 10-13-2012 , 01:55   Re: [CSGO]how to add more default model options for surf/jb/and dm servers?
Reply With Quote #4

I would assume it has to do with the "nameID" and "imagename" lines being duplicates from the original cs_office entry.

Try "#SFUI_Map_jb_castleguarddev_v4" for the nameID and "map-castleguarddev_v4-overall"

Also, I wasn't able to get the models to change just by switching maps, I had to actually reset the server. I can see you've got players on there right now, so that's probably not an option, but you might want to try it when it quiets down a bit. (Edit: Nevermind, I see you're working on a server that differs from the one in your sig)

Also, I honestly never even thought about directly copying the Gamemodes.txt to Gamemodes_server.txt and you just made me feel quite stupid, but yes, you're correct, that would make sense to make the changes to gamemodes_server.txt since yours is setup correctly. Mine isn't, so I've always just tossed stuff in gamemodes.txt, my mistake!

In the meantime, I'll see if I can get this working on a custom map as well, as I only tried it on one of the default maps so far.
__________________

Last edited by jholland; 10-13-2012 at 01:58.
jholland is offline
PresidentEvil
AlliedModders Donor
Join Date: Jun 2012
Old 10-13-2012 , 02:04   Re: [CSGO]how to add more default model options for surf/jb/and dm servers?
Reply With Quote #5

ok i didnt reset the server, only changed maps

ill try again tommorow

thanks for your help
__________________
PresidentEvil is offline
jholland
Member
Join Date: Sep 2012
Location: Minnesota
Old 10-13-2012 , 12:59   Re: [CSGO]how to add more default model options for surf/jb/and dm servers?
Reply With Quote #6

Alright! Took a bit longer than expected but I finally got this working.

Basically, you need to take your entry that's in your gamemodes_server.txt for your custom map, so this:

Code:
        "jb_castleguarddev_v4"
        {
            "nameID"            "#SFUI_Map_jb_castleguarddev_v4"
            "name"                "jb_castleguarddev_v4"
            "imagename"            ""
            "t_arms"            "models/weapons/t_arms_separatist.mdl"
            "t_arms"            "models/weapons/t_arms_phoenix.mdl"
            "t_arms"            "models/weapons/t_arms_balkan.mdl"
            "t_models"
            {
                "tm_separatist"        ""
                "tm_separatist_variantA"        ""
                "tm_phoenix"        ""
                "tm_phoenix_variantA"    ""
                "tm_balkan_variantA"        ""
            }
            "ct_arms"            "models/weapons/ct_arms_fbi.mdl"
            "ct_arms"            "models/weapons/ct_arms_st6.mdl"
            "ct_arms"            "models/weapons/ct_arms_idf.mdl"
            "ct_models"
            {
                "ctm_fbi"        ""
                "ctm_st6_variantA"    ""
                "ctm_st6_variantB"    ""
                "ctm_idf_variantC"    ""
                "ctm_idf_variantD"    ""
            }
            "hostage_models"
            {
                "models/hostage/hostage_variantD.mdl"    ""
                "models/hostage/hostage_variantE.mdl"    ""
                "models/hostage/hostage_variantF.mdl"    ""
                "models/hostage/hostage_variantG.mdl"    ""
            }
        }
and copy/paste that into it's own text file. Name that text file jb_castleguarddev_v4.kv, and toss that .kv file in your csgo\maps folder. Replace the existing one if there is one.

That fixed it for me on de_piranesi as well as cs_estate, so it should work for any other custom maps I would assume.

The reasoning is apparently: "Custom maps in CSGO need a .kv file to specify what player models and hand models to use. If you don't make a .kv file, you will always have default models."

Let me know if that doesn't work
__________________

Last edited by jholland; 10-13-2012 at 13:03. Reason: Fixed formatting of code snippet
jholland is offline
PresidentEvil
AlliedModders Donor
Join Date: Jun 2012
Old 10-13-2012 , 18:13   Re: [CSGO]how to add more default model options for surf/jb/and dm servers?
Reply With Quote #7

its works!

you sir are awesome
__________________
PresidentEvil is offline
ImACow
AlliedModders Donor
Join Date: Feb 2015
Old 02-06-2019 , 19:22   Re: [CSGO]how to add more default model options for surf/jb/and dm servers?
Reply With Quote #8

I know its a 7 year old thread.
But I'm failing to use the new SAS models & Dangerzone models.

When added into gamemodes_server.txt and rebooting the t_models and ct_models gets wiped out of the file.

When adding it as jb_castleguarddev_v4.kv in /csgo/maps it gets ignored.

Code:
"jb_castleguarddev_v4"
{
	"name"	"jb_castleguarddev_v4"
	"nameID"	"#SFUI_Map_jb_castleguarddev_v4"
	"imagename"	""
	"t_arms"	"models/weapons/t_arms_phoenix.mdl"
	"t_models"
	{
		"tm_jumpsuit_varianta"	""
		"tm_jumpsuit_variantb"	""
		"tm_jumpsuit_variantc"	""
	}
	"ct_arms"	"models/weapons/ct_arms_sas.mdl"
	"ct_models"
	{
		"ctm_sas"	""
		"ctm_sas_variantA"	""
		"ctm_sas_variantB"	""
		"ctm_sas_variantC"	""
		"ctm_sas_variantD"	""
	}
}
Any tips/tricks?
__________________
ImACow is offline
ImACow
AlliedModders Donor
Join Date: Feb 2015
Old 02-15-2019 , 12:24   Re: [CSGO]how to add more default model options for surf/jb/and dm servers?
Reply With Quote #9

Even when placing on the client + server it does not change the default models.

__________________
ImACow is offline
Indarello
Senior Member
Join Date: Nov 2015
Location: Russia
Old 02-17-2019 , 08:26   Re: [CSGO]how to add more default model options for surf/jb/and dm servers?
Reply With Quote #10

Try my example
And set mapgroup = mg_wcstry
Attached Files
File Type: txt gamemodes_server.txt (1.4 KB, 140 views)

Last edited by Indarello; 02-17-2019 at 09:18.
Indarello is offline
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 05:31.


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