Index: binaries/data/mods/public/gui/gamesetup/gamesetup.js
===================================================================
--- binaries/data/mods/public/gui/gamesetup/gamesetup.js	(revision 13133)
+++ binaries/data/mods/public/gui/gamesetup/gamesetup.js	(working copy)
@@ -107,7 +107,13 @@
 	var mapTypes = getGUIObjectByName("mapTypeSelection");
 	mapTypes.list = ["Scenario","Random"];
 	mapTypes.list_data = ["scenario","random"];
+	
+	// Init Game speed
+	var GameSpeed = getGUIObjectByName("gameSpeedSelection");
+	GameSpeed.list = ["Slow","Normal","Fast","Faster"];
+	GameSpeed.list_data = [0.5,1,1.5,2];
 
+
 	// Setup map filters - will appear in order they are added
 	addFilter("Default", function(settings) { return settings && !keywordTestOR(settings.Keywords, ["naval", "demo", "hidden"]); });
 	addFilter("Naval Maps", function(settings) { return settings && keywordTestAND(settings.Keywords, ["naval"]); });
@@ -125,7 +131,8 @@
 	{
 		mapTypes.selected = 0;
 		mapFilters.selected = 0;
-
+		GameSpeed.selected=1;
+	
 		initMapNameList();
 
 		var numPlayersSelection = getGUIObjectByName("numPlayersSelection");
@@ -245,7 +252,9 @@
 		getGUIObjectByName("mapSelection").hidden = true;
 		getGUIObjectByName("victoryConditionText").hidden = false;
 		getGUIObjectByName("victoryCondition").hidden = true;
-		
+		getGUIObjectByName("gameSpeedSelection").hidden = true;
+		getGUIObjectByName("gameSpeedText").hidden = false;
+
 		// Disable player and game options controls
 		// TODO: Shouldn't players be able to choose their own assignment?
 		for (var i = 0; i < MAX_PLAYERS; ++i)
@@ -394,6 +403,7 @@
 		break;
 
 	case "start":
+		Engine.SetSimRate(+(g_GameAttributes.settings.gameSpeed)); // change the GameSpeed
 		Engine.SwitchGuiPage("page_loading.xml", {
 			"attribs": g_GameAttributes,
 			"isNetworked" : g_IsNetworked,
@@ -804,6 +814,27 @@
 	updateGameAttributes();
 }
 
+
+function selectGameSpeed(speed)
+{
+	// Avoid recursion
+	if (g_IsInGuiUpdate)
+	{
+		return;
+	}
+
+	// Network clients can't change map filter
+	if (g_IsNetworked && !g_IsController)
+	{
+		return;
+	}
+
+	g_GameAttributes.settings.gameSpeed=speed;
+
+
+	updateGameAttributes();
+}
+
 function launchGame()
 {
 	if (g_IsNetworked && !g_IsController)
@@ -902,6 +933,7 @@
 			"playerAssignments": g_PlayerAssignments
 		});
 	}
+Engine.SetSimRate(+(g_GameAttributes.settings.gameSpeed)); //change the Gamespeed	
 }
 
 ////////////////////////////////////////////////////////////////////////////////////////////////
@@ -931,6 +963,10 @@
 		var startingResourcesBox = getGUIObjectByName("startingResources");
 		startingResourcesBox.selected = startingResourcesBox.list_data.indexOf(mapSettings.StartingResources);
 		initMapNameList();
+		
+		var gameSpeedSelection = getGUIObjectByName("gameSpeedSelection");
+		var indexGameSpeed = gameSpeedSelection.list_data.indexOf(g_GameAttributes.settings.gameSpeed);
+		getGUIObjectByName("gameSpeedText").caption = gameSpeedSelection.list[indexGameSpeed];
 	}
 
 	// Controls common to all map types
@@ -939,6 +975,7 @@
 	var victoryCondition = getGUIObjectByName("victoryCondition");
 	var lockTeams = getGUIObjectByName("lockTeams");
 	var mapSize = getGUIObjectByName("mapSize");
+    	var gameSpeed = getGUIObjectByName("gameSpeed");
 	var enableCheats = getGUIObjectByName("enableCheats");
 	var populationCap = getGUIObjectByName("populationCap");
 	var startingResources = getGUIObjectByName("startingResources");
@@ -948,6 +985,7 @@
 	var revealMapText = getGUIObjectByName("revealMapText");
 	var victoryConditionText = getGUIObjectByName("victoryConditionText");
 	var lockTeamsText = getGUIObjectByName("lockTeamsText");
+	var gameSpeedText = getGUIObjectByName("gameSpeedText");
 	var enableCheatsText = getGUIObjectByName("enableCheatsText");
 	var populationCapText = getGUIObjectByName("populationCapText");
 	var startingResourcesText = getGUIObjectByName("startingResourcesText");
Index: binaries/data/mods/public/gui/gamesetup/gamesetup.xml
===================================================================
--- binaries/data/mods/public/gui/gamesetup/gamesetup.xml	(revision 13133)
+++ binaries/data/mods/public/gui/gamesetup/gamesetup.xml	(working copy)
@@ -95,27 +95,38 @@
 			</object>
 		</object>
 		<object size="24 64 100%-460 358" type="image" sprite="CoverFillDark" name="playerAssignmentsPannelCover" hidden="true"/>
-		<!-- Map selection -->
+
+		<!-- Map Preview -->
+		<object  type="image" sprite="BackgroundIndentFillDark" name="gamePreviewBox" size="100%-426 57 100%-24 359">
+			<object type="image" sprite="snMapPreview" size="1 1 401 301" name="mapPreview"/>
+		</object>
+
+
+
+		<!-- Map selection and Settings -->
 		
 		
-		<object size="100%-425 363 100%-325 455" name="mapTypeSelectionTooltip">
+		<object size="100%-425 363 100%-325 55" name="mapTypeSelectionTooltip">
 			<object type="text" style="RightLabelText" size="0 0 100% 30">Match Type:</object>
 			<object type="text" style="RightLabelText" size="0 32 100% 62">Map Filter:</object>
 			<object type="text" style="RightLabelText" size="0 64 100% 94">Select Map:</object>
 			<object type="text" style="RightLabelText" size="0 96 100% 126">Map Size:</object>
+			<object type="text" style="RightLabelText" size="0 128 100% 158">Game Speed:</object>			
 		</object>
 
+
 		<object size="100%-327 363 100%-25 423" name="mapFilterSelectionTooltip">
 			<object name="mapTypeText" type="text" style="LeftLabelText" size="0 0 100% 30"  hidden="true"/>
 			<object name="mapFilterText" type="text" style="LeftLabelText" size="0 32 100% 62"  hidden="true"/>
 			<object name="mapSelectionText" type="text" style="LeftLabelText" size="0 64 100% 94"  hidden="true"/>
 			<object name="mapSizeText" type="text" style="LeftLabelText" size="0 96 100% 126" hidden="true"/>
+			<object name="gameSpeedText" type="text" style="LeftLabelText" size="0 128 100% 158" hidden="true"/>
 		</object>
 		
 		<object name="mapTypeSelection"
 			type="dropdown"
 			style="StoneDropDown"
-			size="100%-325 363 100%-25 391"
+			size="100%-320 363 100%-25 391"
 			tooltip_style="onscreenToolTip"
 			tooltip="Select a map type.">
 			<action on="SelectionChange">selectMapType(this.list_data[this.selected]);</action>
@@ -124,13 +135,13 @@
 		<object name="mapFilterSelection"
 			type="dropdown"
 			style="StoneDropDown"
-			size="100%-325 395 100%-25 423"
+			size="100%-320 395 100%-25 423"
 			tooltip_style="onscreenToolTip"
 			tooltip="Select a map filter.">
 			<action on="SelectionChange">selectMapFilter(this.list[this.selected]);</action>
 		</object>
 		
-		<object size="100%-325 427 100%-25 455" name="mapSelectionPannel" z="55">
+		<object size="100%-320 427 100%-25 455" name="mapSelectionPannel" z="55">
 
 			<object name="mapSelection"
 				style="StoneDropDown"
@@ -142,16 +153,32 @@
 			</object>
 
 		</object>
+
+		<object size="100%-320 492 100%-25 519" name="gameSpeedSelectionPannel" z="55">
+
+			<object name="gameSpeedSelection"
+				style="StoneDropDown"
+				type="dropdown"
+				size="0 0 100% 100%"
+				tooltip_style="onscreenToolTip"
+				tooltip="Select your Gamespeed">
+				<action on="SelectionChange">selectGameSpeed(this.list_data[this.selected]);</action>
+			</object>
+
+		</object>
+
+
 		
+		
 		<object name="mapSize" size="100%-325 459 100%-25 487" type="dropdown" style="StoneDropDown" hidden="true" tooltip_style="onscreenToolTip" tooltip="Select map size. (Larger sizes may reduce performance.)"/>		
 		
-		<!-- Map Preview -->
-		<object  type="image" sprite="BackgroundIndentFillDark" name="gamePreviewBox" size="100%-426 57 100%-24 359">
-			<object type="image" sprite="snMapPreview" size="1 1 401 301" name="mapPreview"/>
-		</object>
+
+
+
+
 		
 		<!-- Map Description -->
-		<object size="100%-425 497 100%-25 100%-60">
+		<object size="100%-425 100%-400 100%-25 100%-60">
 			<object name="mapInfoName" type="text" style="LeftLabelText" size="0 0 100%-120 30"/>
 			<object type="image" sprite="BackgroundIndentFillDark" size="0 30 100% 100%">
 				<object name="mapInfoDescription" type="text" style="MapDescription" size="0 0 100% 100%"/>
@@ -159,7 +186,7 @@
 		</object>
 		
 		<!-- Options -->
-		<object name="gameOptionsBox" size="100%-425 497 100%-25 525">
+		<object name="gameOptionsBox" size="100%-425 100%-432 100%-25 525">
 			<!-- More Options Button -->
 			<object
 				name="showMoreOptions"
