Forráskód Böngészése

Updating project client/server/unified cmake to give access to autogen files; allows Module.cpp to registery multiplayer components. Moved demo level into the defaultlevel to follow project standards and is loaded by default. Adding laser gun asset, and HUD reticle so users can see where they are shooting

Signed-off-by: AMZN-Gene <[email protected]>
AMZN-Gene 1 éve
szülő
commit
51cfe2a958
25 módosított fájl, 1623 hozzáadás és 945 törlés
  1. 3 0
      Templates/Multiplayer/Template/Assets/Characters/Attachments/Laser_Gun/gun.fbx
  2. 32 0
      Templates/Multiplayer/Template/Assets/Characters/Attachments/Laser_Gun/gun_gun.material
  3. 3 0
      Templates/Multiplayer/Template/Assets/Characters/Attachments/Laser_Gun/textures/gun_low_Default_BaseColor.png
  4. 3 0
      Templates/Multiplayer/Template/Assets/Characters/Attachments/Laser_Gun/textures/gun_low_Default_Emissive.png
  5. 3 0
      Templates/Multiplayer/Template/Assets/Characters/Attachments/Laser_Gun/textures/gun_low_Default_Height.png
  6. 3 0
      Templates/Multiplayer/Template/Assets/Characters/Attachments/Laser_Gun/textures/gun_low_Default_Metallic.png
  7. 3 0
      Templates/Multiplayer/Template/Assets/Characters/Attachments/Laser_Gun/textures/gun_low_Default_Normal.png
  8. 3 0
      Templates/Multiplayer/Template/Assets/Characters/Attachments/Laser_Gun/textures/gun_low_Default_Roughness.png
  9. 2 2
      Templates/Multiplayer/Template/Assets/Characters/Mixamo/Ybot/YBot.motionset
  10. 213 0
      Templates/Multiplayer/Template/Assets/InputBindings/player.inputbindings
  11. 285 80
      Templates/Multiplayer/Template/Assets/Prefabs/4x4x4BoxGrid.prefab
  12. 100 0
      Templates/Multiplayer/Template/Assets/Prefabs/Player.prefab
  13. 4 5
      Templates/Multiplayer/Template/Assets/Prefabs/laser_pistol.prefab
  14. 240 0
      Templates/Multiplayer/Template/Assets/UI/BasicHUD/BasicHUD.uicanvas
  15. 3 0
      Templates/Multiplayer/Template/Assets/UI/BasicHUD/Reticle.png
  16. 3 0
      Templates/Multiplayer/Template/Assets/UI/BasicHUD/Reticle.sprite
  17. 3 0
      Templates/Multiplayer/Template/Gem/CMakeLists.txt
  18. 7 0
      Templates/Multiplayer/Template/Gem/Source/${Name}Module.cpp
  19. 11 0
      Templates/Multiplayer/Template/Gem/Source/${Name}SystemComponent.cpp
  20. 2 1
      Templates/Multiplayer/Template/Gem/Source/Components/NetworkSimplePlayerCameraComponent.cpp
  21. 5 2
      Templates/Multiplayer/Template/Gem/Source/Components/NetworkWeaponsComponent.cpp
  22. 550 138
      Templates/Multiplayer/Template/Levels/DefaultLevel/DefaultLevel.prefab
  23. 0 651
      Templates/Multiplayer/Template/Levels/Demo/Demo.prefab
  24. 41 4
      Templates/Multiplayer/Template/Registry/physxsystemconfiguration.setreg
  25. 101 62
      Templates/Multiplayer/template.json

+ 3 - 0
Templates/Multiplayer/Template/Assets/Characters/Attachments/Laser_Gun/gun.fbx

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ebc42ae49ea96f7dec0756e92a6ce571045e79b8faa3a9cd2e266c9c4cac7f03
+size 219356

+ 32 - 0
Templates/Multiplayer/Template/Assets/Characters/Attachments/Laser_Gun/gun_gun.material

@@ -0,0 +1,32 @@
+{
+    "materialType": "@projectroot@/Cache/Intermediate Assets/materials/types/standardpbr_generated.materialtype",
+    "materialTypeVersion": 5,
+    "propertyValues": {
+        "baseColor.color": [
+            0.9243610501289368,
+            0.9243610501289368,
+            0.9243610501289368,
+            1.0
+        ],
+        "baseColor.textureBlendMode": "Lerp",
+        "baseColor.textureMap": "textures/gun_low_Default_BaseColor.png",
+        "emissive.color": [
+            0.18448157608509064,
+            1.0,
+            0.0,
+            1.0
+        ],
+        "emissive.enable": true,
+        "emissive.intensity": 8.300000190734863,
+        "emissive.textureMap": "textures/gun_low_Default_Emissive.png",
+        "irradiance.irradianceColorSource": "BaseColor",
+        "metallic.factor": 0.05999999865889549,
+        "normal.textureMap": "textures/gun_low_Default_Normal.png",
+        "opacity.factor": 1.0,
+        "roughness.factor": -0.6000000238418579,
+        "roughness.lowerBound": 0.4000000059604645,
+        "roughness.textureMap": "textures/gun_low_Default_Roughness.png",
+        "roughness.upperBound": 0.28999999165534973,
+        "specularF0.factor": 0.47999998927116394
+    }
+}

+ 3 - 0
Templates/Multiplayer/Template/Assets/Characters/Attachments/Laser_Gun/textures/gun_low_Default_BaseColor.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:1db0802c9c7a67cde209c3bcec5fc218dddcfbb403b48a16d867dc7264e75bde
+size 321824

+ 3 - 0
Templates/Multiplayer/Template/Assets/Characters/Attachments/Laser_Gun/textures/gun_low_Default_Emissive.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:40974cf1503cd28a188ebbc0aa340551233fc7d1d3e13278031b0d6592c44826
+size 63421

+ 3 - 0
Templates/Multiplayer/Template/Assets/Characters/Attachments/Laser_Gun/textures/gun_low_Default_Height.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:5b0372da1adfd4bc45136eed04849ce1f6d35d845ac690adf9450669848471e6
+size 25415

+ 3 - 0
Templates/Multiplayer/Template/Assets/Characters/Attachments/Laser_Gun/textures/gun_low_Default_Metallic.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:e7a112e3393cbbea866a8aa6437c7766905bc98abcbd504f8fb03a3325809482
+size 146070

+ 3 - 0
Templates/Multiplayer/Template/Assets/Characters/Attachments/Laser_Gun/textures/gun_low_Default_Normal.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:749e2530a826688b22c5ebe357066aeb3a81435ac472cba1695df62c4d5d7d99
+size 4120093

+ 3 - 0
Templates/Multiplayer/Template/Assets/Characters/Attachments/Laser_Gun/textures/gun_low_Default_Roughness.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:200b5f10f6cc9823de06b52ae4f2a753f24c46a034bac6d3562b9b8728767137
+size 147945

+ 2 - 2
Templates/Multiplayer/Template/Assets/Characters/Mixamo/Ybot/YBot.motionset

@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:f366a6fb4c51368f00e2b46262cd861de984697ebbef9bb40602a9f11862b2f4
-size 36754
+oid sha256:9aeb2f1a537d7301ba4cdca1b5c4435069af5b62536202624de538ad4e060636
+size 37654

+ 213 - 0
Templates/Multiplayer/Template/Assets/InputBindings/player.inputbindings

@@ -0,0 +1,213 @@
+<ObjectStream version="3">
+	<Class name="InputEventBindingsAsset" type="{25971C7A-26E2-4D08-A146-2EFCC1C36B0C}">
+		<Class name="InputEventBindings" field="Bindings" version="1" type="{14FFD4A8-AE46-4E23-B45B-6A7C4F787A91}">
+			<Class name="AZStd::vector&lt;InputEventGroup, allocator&gt;" field="Input Event Groups" type="{E7A38039-E414-5322-B384-210475DA7732}">
+				<Class name="InputEventGroup" field="element" version="1" type="{25143B7E-2FEC-4CC5-92FE-270B67E79734}">
+					<Class name="AZStd::string" field="Event Name" value="move_fwd" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+					<Class name="AZStd::vector&lt;InputSubComponent*, allocator&gt;" field="Event Generators" type="{7B0B6F41-794A-5CFF-8275-91A3137E747D}">
+						<Class name="InputEventMap" field="element" version="2" type="{A14EA0A3-F053-469D-840E-A70002F51384}">
+							<Class name="AZStd::string" field="Input Device Type" value="keyboard" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="AZStd::string" field="Input Name" value="keyboard_key_alphanumeric_W" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="float" field="Event Value Multiplier" value="1.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+							<Class name="float" field="Dead Zone" value="0.2000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+						</Class>
+					</Class>
+					<Class name="bool" field="Exclude From Release" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+				</Class>
+				<Class name="InputEventGroup" field="element" version="1" type="{25143B7E-2FEC-4CC5-92FE-270B67E79734}">
+					<Class name="AZStd::string" field="Event Name" value="move_back" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+					<Class name="AZStd::vector&lt;InputSubComponent*, allocator&gt;" field="Event Generators" type="{7B0B6F41-794A-5CFF-8275-91A3137E747D}">
+						<Class name="InputEventMap" field="element" version="2" type="{A14EA0A3-F053-469D-840E-A70002F51384}">
+							<Class name="AZStd::string" field="Input Device Type" value="keyboard" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="AZStd::string" field="Input Name" value="keyboard_key_alphanumeric_S" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="float" field="Event Value Multiplier" value="1.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+							<Class name="float" field="Dead Zone" value="0.2000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+						</Class>
+					</Class>
+					<Class name="bool" field="Exclude From Release" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+				</Class>
+				<Class name="InputEventGroup" field="element" version="1" type="{25143B7E-2FEC-4CC5-92FE-270B67E79734}">
+					<Class name="AZStd::string" field="Event Name" value="move_left" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+					<Class name="AZStd::vector&lt;InputSubComponent*, allocator&gt;" field="Event Generators" type="{7B0B6F41-794A-5CFF-8275-91A3137E747D}">
+						<Class name="InputEventMap" field="element" version="2" type="{A14EA0A3-F053-469D-840E-A70002F51384}">
+							<Class name="AZStd::string" field="Input Device Type" value="keyboard" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="AZStd::string" field="Input Name" value="keyboard_key_alphanumeric_A" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="float" field="Event Value Multiplier" value="1.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+							<Class name="float" field="Dead Zone" value="0.2000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+						</Class>
+					</Class>
+					<Class name="bool" field="Exclude From Release" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+				</Class>
+				<Class name="InputEventGroup" field="element" version="1" type="{25143B7E-2FEC-4CC5-92FE-270B67E79734}">
+					<Class name="AZStd::string" field="Event Name" value="move_right" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+					<Class name="AZStd::vector&lt;InputSubComponent*, allocator&gt;" field="Event Generators" type="{7B0B6F41-794A-5CFF-8275-91A3137E747D}">
+						<Class name="InputEventMap" field="element" version="2" type="{A14EA0A3-F053-469D-840E-A70002F51384}">
+							<Class name="AZStd::string" field="Input Device Type" value="keyboard" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="AZStd::string" field="Input Name" value="keyboard_key_alphanumeric_D" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="float" field="Event Value Multiplier" value="1.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+							<Class name="float" field="Dead Zone" value="0.2000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+						</Class>
+					</Class>
+					<Class name="bool" field="Exclude From Release" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+				</Class>
+				<Class name="InputEventGroup" field="element" version="1" type="{25143B7E-2FEC-4CC5-92FE-270B67E79734}">
+					<Class name="AZStd::string" field="Event Name" value="firePrimaryWeapon" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+					<Class name="AZStd::vector&lt;InputSubComponent*, allocator&gt;" field="Event Generators" type="{7B0B6F41-794A-5CFF-8275-91A3137E747D}">
+						<Class name="InputEventMap" field="element" version="2" type="{A14EA0A3-F053-469D-840E-A70002F51384}">
+							<Class name="AZStd::string" field="Input Device Type" value="mouse" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="AZStd::string" field="Input Name" value="mouse_button_left" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="float" field="Event Value Multiplier" value="1.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+							<Class name="float" field="Dead Zone" value="0.2000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+						</Class>
+					</Class>
+					<Class name="bool" field="Exclude From Release" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+				</Class>
+				<Class name="InputEventGroup" field="element" version="1" type="{25143B7E-2FEC-4CC5-92FE-270B67E79734}">
+					<Class name="AZStd::string" field="Event Name" value="fireSecondaryWeapon" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+					<Class name="AZStd::vector&lt;InputSubComponent*, allocator&gt;" field="Event Generators" type="{7B0B6F41-794A-5CFF-8275-91A3137E747D}">
+						<Class name="InputEventMap" field="element" version="2" type="{A14EA0A3-F053-469D-840E-A70002F51384}">
+							<Class name="AZStd::string" field="Input Device Type" value="mouse" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="AZStd::string" field="Input Name" value="mouse_button_right" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="float" field="Event Value Multiplier" value="1.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+							<Class name="float" field="Dead Zone" value="0.2000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+						</Class>
+					</Class>
+					<Class name="bool" field="Exclude From Release" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+				</Class>
+				<Class name="InputEventGroup" field="element" version="1" type="{25143B7E-2FEC-4CC5-92FE-270B67E79734}">
+					<Class name="AZStd::string" field="Event Name" value="lookLeftRight" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+					<Class name="AZStd::vector&lt;InputSubComponent*, allocator&gt;" field="Event Generators" type="{7B0B6F41-794A-5CFF-8275-91A3137E747D}">
+						<Class name="InputEventMap" field="element" version="2" type="{A14EA0A3-F053-469D-840E-A70002F51384}">
+							<Class name="AZStd::string" field="Input Device Type" value="mouse" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="AZStd::string" field="Input Name" value="mouse_delta_x" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="float" field="Event Value Multiplier" value="0.1000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+							<Class name="float" field="Dead Zone" value="0.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+						</Class>
+					</Class>
+					<Class name="bool" field="Exclude From Release" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+				</Class>
+				<Class name="InputEventGroup" field="element" version="1" type="{25143B7E-2FEC-4CC5-92FE-270B67E79734}">
+					<Class name="AZStd::string" field="Event Name" value="lookUpDown" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+					<Class name="AZStd::vector&lt;InputSubComponent*, allocator&gt;" field="Event Generators" type="{7B0B6F41-794A-5CFF-8275-91A3137E747D}">
+						<Class name="InputEventMap" field="element" version="2" type="{A14EA0A3-F053-469D-840E-A70002F51384}">
+							<Class name="AZStd::string" field="Input Device Type" value="mouse" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="AZStd::string" field="Input Name" value="mouse_delta_y" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="float" field="Event Value Multiplier" value="0.1000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+							<Class name="float" field="Dead Zone" value="0.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+						</Class>
+					</Class>
+					<Class name="bool" field="Exclude From Release" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+				</Class>
+				<Class name="InputEventGroup" field="element" version="1" type="{25143B7E-2FEC-4CC5-92FE-270B67E79734}">
+					<Class name="AZStd::string" field="Event Name" value="sprint" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+					<Class name="AZStd::vector&lt;InputSubComponent*, allocator&gt;" field="Event Generators" type="{7B0B6F41-794A-5CFF-8275-91A3137E747D}">
+						<Class name="InputEventMap" field="element" version="2" type="{A14EA0A3-F053-469D-840E-A70002F51384}">
+							<Class name="AZStd::string" field="Input Device Type" value="keyboard" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="AZStd::string" field="Input Name" value="keyboard_key_modifier_shift_l" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="float" field="Event Value Multiplier" value="1.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+							<Class name="float" field="Dead Zone" value="0.2000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+						</Class>
+					</Class>
+					<Class name="bool" field="Exclude From Release" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+				</Class>
+				<Class name="InputEventGroup" field="element" version="1" type="{25143B7E-2FEC-4CC5-92FE-270B67E79734}">
+					<Class name="AZStd::string" field="Event Name" value="jump" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+					<Class name="AZStd::vector&lt;InputSubComponent*, allocator&gt;" field="Event Generators" type="{7B0B6F41-794A-5CFF-8275-91A3137E747D}">
+						<Class name="InputEventMap" field="element" version="2" type="{A14EA0A3-F053-469D-840E-A70002F51384}">
+							<Class name="AZStd::string" field="Input Device Type" value="keyboard" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="AZStd::string" field="Input Name" value="keyboard_key_edit_space" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="float" field="Event Value Multiplier" value="1.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+							<Class name="float" field="Dead Zone" value="0.2000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+						</Class>
+					</Class>
+					<Class name="bool" field="Exclude From Release" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+				</Class>
+				<Class name="InputEventGroup" field="element" version="1" type="{25143B7E-2FEC-4CC5-92FE-270B67E79734}">
+					<Class name="AZStd::string" field="Event Name" value="crouch" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+					<Class name="AZStd::vector&lt;InputSubComponent*, allocator&gt;" field="Event Generators" type="{7B0B6F41-794A-5CFF-8275-91A3137E747D}">
+						<Class name="InputEventMap" field="element" version="2" type="{A14EA0A3-F053-469D-840E-A70002F51384}">
+							<Class name="AZStd::string" field="Input Device Type" value="keyboard" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="AZStd::string" field="Input Name" value="keyboard_key_modifier_ctrl_l" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="float" field="Event Value Multiplier" value="1.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+							<Class name="float" field="Dead Zone" value="0.2000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+						</Class>
+					</Class>
+					<Class name="bool" field="Exclude From Release" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+				</Class>
+				<Class name="InputEventGroup" field="element" version="1" type="{25143B7E-2FEC-4CC5-92FE-270B67E79734}">
+					<Class name="AZStd::string" field="Event Name" value="drawWeapon" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+					<Class name="AZStd::vector&lt;InputSubComponent*, allocator&gt;" field="Event Generators" type="{7B0B6F41-794A-5CFF-8275-91A3137E747D}">
+						<Class name="InputEventMap" field="element" version="2" type="{A14EA0A3-F053-469D-840E-A70002F51384}">
+							<Class name="AZStd::string" field="Input Device Type" value="keyboard" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="AZStd::string" field="Input Name" value="keyboard_key_alphanumeric_E" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="float" field="Event Value Multiplier" value="1.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+							<Class name="float" field="Dead Zone" value="0.2000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+						</Class>
+					</Class>
+					<Class name="bool" field="Exclude From Release" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+				</Class>
+				<Class name="InputEventGroup" field="element" version="1" type="{25143B7E-2FEC-4CC5-92FE-270B67E79734}">
+					<Class name="AZStd::string" field="Event Name" value="zoomIn" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+					<Class name="AZStd::vector&lt;InputSubComponent*, allocator&gt;" field="Event Generators" type="{7B0B6F41-794A-5CFF-8275-91A3137E747D}">
+						<Class name="InputEventMap" field="element" version="2" type="{A14EA0A3-F053-469D-840E-A70002F51384}">
+							<Class name="AZStd::string" field="Input Device Type" value="mouse" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="AZStd::string" field="Input Name" value="mouse_button_other1" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="float" field="Event Value Multiplier" value="1.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+							<Class name="float" field="Dead Zone" value="0.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+						</Class>
+					</Class>
+					<Class name="bool" field="Exclude From Release" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+				</Class>
+				<Class name="InputEventGroup" field="element" version="1" type="{25143B7E-2FEC-4CC5-92FE-270B67E79734}">
+					<Class name="AZStd::string" field="Event Name" value="zoomOut" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+					<Class name="AZStd::vector&lt;InputSubComponent*, allocator&gt;" field="Event Generators" type="{7B0B6F41-794A-5CFF-8275-91A3137E747D}">
+						<Class name="InputEventMap" field="element" version="2" type="{A14EA0A3-F053-469D-840E-A70002F51384}">
+							<Class name="AZStd::string" field="Input Device Type" value="mouse" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="AZStd::string" field="Input Name" value="mouse_button_other2" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="float" field="Event Value Multiplier" value="1.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+							<Class name="float" field="Dead Zone" value="0.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+						</Class>
+					</Class>
+					<Class name="bool" field="Exclude From Release" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+				</Class>
+				<Class name="InputEventGroup" field="element" version="1" type="{25143B7E-2FEC-4CC5-92FE-270B67E79734}">
+					<Class name="AZStd::string" field="Event Name" value="show_player_coin_counts" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+					<Class name="AZStd::vector&lt;InputSubComponent*, allocator&gt;" field="Event Generators" type="{7B0B6F41-794A-5CFF-8275-91A3137E747D}">
+						<Class name="InputEventMap" field="element" version="2" type="{A14EA0A3-F053-469D-840E-A70002F51384}">
+							<Class name="AZStd::string" field="Input Device Type" value="keyboard" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="AZStd::string" field="Input Name" value="keyboard_key_edit_tab" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="float" field="Event Value Multiplier" value="1.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+							<Class name="float" field="Dead Zone" value="0.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+						</Class>
+					</Class>
+					<Class name="bool" field="Exclude From Release" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+				</Class>
+				<Class name="InputEventGroup" field="element" version="1" type="{25143B7E-2FEC-4CC5-92FE-270B67E79734}">
+					<Class name="AZStd::string" field="Event Name" value="open_game_menu" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+					<Class name="AZStd::vector&lt;InputSubComponent*, allocator&gt;" field="Event Generators" type="{7B0B6F41-794A-5CFF-8275-91A3137E747D}">
+						<Class name="InputEventMap" field="element" version="2" type="{A14EA0A3-F053-469D-840E-A70002F51384}">
+							<Class name="AZStd::string" field="Input Device Type" value="keyboard" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="AZStd::string" field="Input Name" value="keyboard_key_escape" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="float" field="Event Value Multiplier" value="1.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+							<Class name="float" field="Dead Zone" value="0.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+						</Class>
+						<Class name="InputEventMap" field="element" version="2" type="{A14EA0A3-F053-469D-840E-A70002F51384}">
+							<Class name="AZStd::string" field="Input Device Type" value="keyboard" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="AZStd::string" field="Input Name" value="keyboard_key_function_F10" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="float" field="Event Value Multiplier" value="1.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+							<Class name="float" field="Dead Zone" value="0.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+						</Class>
+						<Class name="InputEventMap" field="element" version="2" type="{A14EA0A3-F053-469D-840E-A70002F51384}">
+							<Class name="AZStd::string" field="Input Device Type" value="keyboard" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="AZStd::string" field="Input Name" value="keyboard_key_alphanumeric_1" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="float" field="Event Value Multiplier" value="1.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+							<Class name="float" field="Dead Zone" value="0.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+						</Class>
+					</Class>
+					<Class name="bool" field="Exclude From Release" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+				</Class>
+			</Class>
+		</Class>
+	</Class>
+</ObjectStream>
+

A különbségek nem kerülnek megjelenítésre, a fájl túl nagy
+ 285 - 80
Templates/Multiplayer/Template/Assets/Prefabs/4x4x4BoxGrid.prefab


+ 100 - 0
Templates/Multiplayer/Template/Assets/Prefabs/Player.prefab

@@ -484,6 +484,106 @@
                             ]
                         }
                     }
+                },
+                "${Name}::AttachPlayerWeaponComponent": {
+                    "$type": "GenericComponentWrapper",
+                    "Id": 5697568613687465938,
+                    "m_template": {
+                        "$type": "${Name}::AttachPlayerWeaponComponent",
+                        "WeaponAsset": {
+                            "assetId": {
+                                "guid": "{4B358BE5-26BC-5462-AA8A-38F9AF5D2D0B}",
+                                "subId": 992460137
+                            },
+                            "assetHint": "assets/prefabs/laser_pistol.spawnable"
+                        },
+                        "Bone To Attach To": "mixamorig:RightHand",
+                        "Transform": {
+                            "Translation": [
+                                -0.05999999865889549,
+                                0.03999999910593033,
+                                0.17000000178813934
+                            ],
+                            "Rotation": [
+                                0.0,
+                                0.0,
+                                0.0,
+                                1.0
+                            ],
+                            "Scale": 1.0
+                        }
+                    }
+                },
+                "${Name}::NetworkAnimationComponent": {
+                    "$type": "GenericComponentWrapper",
+                    "Id": 8962712398833988332,
+                    "m_template": {
+                        "$type": "${Name}::NetworkAnimationComponent",
+                        "MovementDirectionParamName": "movement_direction",
+                        "MovementSpeedParamName": "movement_speed",
+                        "AimTargetParamName": "aim_target",
+                        "CrouchParamName": "crouching",
+                        "AimingParamName": "aiming",
+                        "ShootParamName": "attacking",
+                        "JumpParamName": "jumping",
+                        "FallParamName": "falling",
+                        "LandParamName": "landing",
+                        "HitParamName": "hit",
+                        "DeathParamName": "death_state_index"
+                    }
+                },
+                "${Name}::NetworkPlayerMovementComponent": {
+                    "$type": "GenericComponentWrapper",
+                    "Id": 14371235535355148386,
+                    "m_template": {
+                        "$type": "${Name}::NetworkPlayerMovementComponent",
+                        "SprintSpeed": 6.0,
+                        "MaxJumpHeight": 1.625
+                    }
+                },
+                "${Name}::NetworkSimplePlayerCameraComponent": {
+                    "$type": "GenericComponentWrapper",
+                    "Id": 15298635055737856859,
+                    "m_template": {
+                        "$type": "${Name}::NetworkSimplePlayerCameraComponent"
+                    }
+                },
+                "${Name}::NetworkWeaponsComponent": {
+                    "$type": "GenericComponentWrapper",
+                    "Id": 7684530501405980471,
+                    "m_template": {
+                        "$type": "${Name}::NetworkWeaponsComponent",
+                        "WeaponParams": [
+                            {
+                                "WeaponType": 1,
+                                "WeaponMaxAimDistance": 50.0,
+                                "CooldownTimeMs": 250,
+                                "GatherParams": {
+                                    "CastDistance": 2000.0,
+                                    "TravelSpeed": 200.0
+                                },
+                                "DamageEffect": {
+                                    "HitMagnitude": 10.0
+                                }
+                            },
+                            {
+                                "WeaponMaxAimDistance": 25.0,
+                                "CooldownTimeMs": 2000,
+                                "GatherParams": {
+                                    "CastDistance": 100.0,
+                                    "TravelSpeed": 50.0,
+                                    "Multihit": true
+                                },
+                                "DamageEffect": {
+                                    "HitMagnitude": 50.0
+                                }
+                            }
+                        ],
+                        "FireBoneNames": [
+                            "mixamorig:RightHand",
+                            "mixamorig:RightHand"
+                        ]
+                    }
                 }
             }
         }

+ 4 - 5
Templates/Multiplayer/Template/Assets/Prefabs/laser_pistol.prefab

@@ -78,10 +78,10 @@
                         "Configuration": {
                             "ModelAsset": {
                                 "assetId": {
-                                    "guid": "{76B6FE48-1A08-53EF-92E4-A5F70A034972}",
+                                    "guid": "{E7D3739C-A796-50D3-B168-F685145804FB}",
                                     "subId": 278644059
                                 },
-                                "assetHint": "attachments/laser_gun/gun.azmodel"
+                                "assetHint": "assets/characters/attachments/laser_gun/gun.fbx.azmodel"
                             }
                         }
                     }
@@ -111,9 +111,8 @@
                                     "Value": {
                                         "MaterialAsset": {
                                             "assetId": {
-                                                "guid": "{B67B074C-11F3-5615-9C82-EE5C47630AA7}"
-                                            },
-                                            "assetHint": "attachments/laser_gun/gun_gun.azmaterial"
+                                                "guid": "{9F87E4B8-7201-5A0B-BC50-AE063892498E}"
+                                            }
                                         }
                                     }
                                 }

+ 240 - 0
Templates/Multiplayer/Template/Assets/UI/BasicHUD/BasicHUD.uicanvas

@@ -0,0 +1,240 @@
+<ObjectStream version="3">
+	<Class name="UiCanvasFileObject" version="2" type="{1F02632F-F113-49B1-85AD-8CD0FA78B8AA}">
+		<Class name="AZ::Entity" field="CanvasEntity" version="2" type="{75651658-8663-478D-9090-2432DFCAFA44}">
+			<Class name="EntityId" field="Id" version="1" type="{6383F1D3-BB27-4E6B-A49A-6409B2059EAA}">
+				<Class name="AZ::u64" field="id" value="22955765598897" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+			</Class>
+			<Class name="AZStd::string" field="Name" value="UiCanvasEntity" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+			<Class name="AZStd::vector&lt;AZ::Component*, allocator&gt;" field="Components" type="{13D58FF9-1088-5C69-9A1F-C2A144B57B78}">
+				<Class name="UiCanvasComponent" field="element" version="4" type="{50B8CF6C-B19A-4D86-AFE9-96EFB820D422}">
+					<Class name="AZ::Component" field="BaseClass1" type="{EDFCB2CF-F75D-43BE-B26B-F35821B29247}">
+						<Class name="AZ::u64" field="Id" value="13213715406544811900" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+					</Class>
+					<Class name="AZ::u64" field="UniqueId" value="5454186325061340139" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+					<Class name="EntityId" field="RootElement" version="1" type="{6383F1D3-BB27-4E6B-A49A-6409B2059EAA}">
+						<Class name="AZ::u64" field="id" value="22908520958641" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+					</Class>
+					<Class name="unsigned int" field="LastElement" value="383" type="{43DA906B-7DEF-4CA8-9790-854106D3F983}"/>
+					<Class name="Vector2" field="CanvasSize" value="1920.0000000 1080.0000000" type="{3D80F623-C85C-4741-90D0-E4E66164E6BF}"/>
+					<Class name="bool" field="IsSnapEnabled" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+					<Class name="int" field="DrawOrder" value="0" type="{72039442-EB38-4D42-A1AD-CB68F7E0EEF6}"/>
+					<Class name="bool" field="IsPixelAligned" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+					<Class name="bool" field="IsTextPixelAligned" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+					<Class name="bool" field="RenderToTexture" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+					<Class name="Asset&lt;AttachmentImageAsset&gt;" field="AttachmentImageAsset" value="id={00000000-0000-0000-0000-000000000000}:0,type={82CEA86B-E891-4969-8F35-D8017E8902C8},hint={},loadBehavior=1" version="3" type="{61538C1C-2EDA-593B-AA53-701FF7D854E7}"/>
+					<Class name="bool" field="IsPosInputSupported" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+					<Class name="bool" field="IsConsumingAllInput" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+					<Class name="bool" field="IsMultiTouchSupported" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+					<Class name="bool" field="IsNavigationSupported" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+					<Class name="float" field="NavigationThreshold" value="0.4000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+					<Class name="AZ::u64" field="NavigationRepeatDelay" value="300" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+					<Class name="AZ::u64" field="NavigationRepeatPeriod" value="150" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+					<Class name="EntityId" field="FirstHoverElement" version="1" type="{6383F1D3-BB27-4E6B-A49A-6409B2059EAA}">
+						<Class name="AZ::u64" field="id" value="4294967295" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+					</Class>
+					<Class name="UiAnimationSystem" field="AnimSystem" version="1" type="{2592269B-EF74-4409-B29F-682DC0B45DAF}">
+						<Class name="AZStd::vector&lt;AZStd::intrusive_ptr&lt;IUiAnimSequence&gt;, allocator&gt;" field="Sequences" type="{9F8D44A9-9731-5314-885E-B958D4216073}"/>
+					</Class>
+					<Class name="AnimationData" field="AnimationData" version="1" type="{FDC58CF7-8109-48F2-8D5D-BCBAF774ABB7}">
+						<Class name="AZStd::string" field="SerializeString" value="" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+					</Class>
+					<Class name="EntityId" field="TooltipDisplayElement" version="1" type="{6383F1D3-BB27-4E6B-A49A-6409B2059EAA}">
+						<Class name="AZ::u64" field="id" value="4294967295" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+					</Class>
+					<Class name="float" field="SnapDistance" value="10.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+					<Class name="float" field="SnapRotationDegrees" value="10.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+					<Class name="AZStd::vector&lt;float, allocator&gt;" field="HorizontalGuides" type="{6106BF95-5ACD-5071-8D0E-4F846C2138AD}">
+						<Class name="float" field="element" value="-311.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+					</Class>
+					<Class name="AZStd::vector&lt;float, allocator&gt;" field="VerticalGuides" type="{6106BF95-5ACD-5071-8D0E-4F846C2138AD}"/>
+					<Class name="Color" field="GuideColor" value="0.2500000 1.0000000 0.2500000 1.0000000" type="{7894072A-9050-4F0F-901B-34B1A0D29417}"/>
+					<Class name="bool" field="GuidesLocked" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+					<Class name="AZStd::vector&lt;SimpleAssetReference&lt;TextureAtlasAsset&gt;, allocator&gt;" field="TextureAtlases" type="{73F8CC7B-8504-5F80-BD45-1620CD7EF9AB}"/>
+				</Class>
+			</Class>
+			<Class name="bool" field="IsDependencyReady" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+			<Class name="bool" field="IsRuntimeActive" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+		</Class>
+		<Class name="AZ::Entity" field="RootSliceEntity" version="2" type="{75651658-8663-478D-9090-2432DFCAFA44}">
+			<Class name="EntityId" field="Id" version="1" type="{6383F1D3-BB27-4E6B-A49A-6409B2059EAA}">
+				<Class name="AZ::u64" field="id" value="11980591618472" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+			</Class>
+			<Class name="AZStd::string" field="Name" value="11980591618472" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+			<Class name="AZStd::vector&lt;AZ::Component*, allocator&gt;" field="Components" type="{13D58FF9-1088-5C69-9A1F-C2A144B57B78}">
+				<Class name="SliceComponent" field="element" version="3" type="{AFD304E4-1773-47C8-855A-8B622398934F}">
+					<Class name="AZ::Component" field="BaseClass1" type="{EDFCB2CF-F75D-43BE-B26B-F35821B29247}">
+						<Class name="AZ::u64" field="Id" value="60212667748417090" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+					</Class>
+					<Class name="AZStd::vector&lt;AZ::Entity*, allocator&gt;" field="Entities" type="{21786AF0-2606-5B9A-86EB-0892E2820E6C}">
+						<Class name="AZ::Entity" field="element" version="2" type="{75651658-8663-478D-9090-2432DFCAFA44}">
+							<Class name="EntityId" field="Id" version="1" type="{6383F1D3-BB27-4E6B-A49A-6409B2059EAA}">
+								<Class name="AZ::u64" field="id" value="22908520958641" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+							</Class>
+							<Class name="AZStd::string" field="Name" value="_root" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="AZStd::vector&lt;AZ::Component*, allocator&gt;" field="Components" type="{13D58FF9-1088-5C69-9A1F-C2A144B57B78}">
+								<Class name="EditorOnlyEntityComponent" field="element" type="{22A16F1D-6D49-422D-AAE9-91AE45B5D3E7}">
+									<Class name="EditorComponentBase" field="BaseClass1" version="1" type="{D5346BD4-7F20-444E-B370-327ACD03D4A0}">
+										<Class name="AZ::Component" field="BaseClass1" type="{EDFCB2CF-F75D-43BE-B26B-F35821B29247}">
+											<Class name="AZ::u64" field="Id" value="520687081941850577" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+										</Class>
+									</Class>
+									<Class name="bool" field="IsEditorOnly" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+								</Class>
+								<Class name="UiTransform2dComponent" field="element" version="4" type="{2751A5A5-3291-4A4D-9FC0-9CB0EB8D1DE6}">
+									<Class name="AZ::Component" field="BaseClass1" type="{EDFCB2CF-F75D-43BE-B26B-F35821B29247}">
+										<Class name="AZ::u64" field="Id" value="10725201932935747283" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+									</Class>
+									<Class name="Anchors" field="Anchors" type="{65D4346C-FB16-4CB0-9BDC-1185B122C4A9}">
+										<Class name="float" field="left" value="0.5000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+										<Class name="float" field="top" value="0.5000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+										<Class name="float" field="right" value="0.5000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+										<Class name="float" field="bottom" value="0.5000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+									</Class>
+									<Class name="Offsets" field="Offsets" type="{F681BA9D-245C-4630-B20E-05DD752FAD57}">
+										<Class name="float" field="left" value="-50.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+										<Class name="float" field="top" value="-50.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+										<Class name="float" field="right" value="50.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+										<Class name="float" field="bottom" value="50.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+									</Class>
+									<Class name="Vector2" field="Pivot" value="0.5000000 0.5000000" type="{3D80F623-C85C-4741-90D0-E4E66164E6BF}"/>
+									<Class name="float" field="Rotation" value="0.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+									<Class name="Vector2" field="Scale" value="1.0000000 1.0000000" type="{3D80F623-C85C-4741-90D0-E4E66164E6BF}"/>
+									<Class name="bool" field="IsFlooringOffsets" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+									<Class name="int" field="ScaleToDevice" value="0" type="{72039442-EB38-4D42-A1AD-CB68F7E0EEF6}"/>
+								</Class>
+								<Class name="UiElementComponent" field="element" version="3" type="{4A97D63E-CE7A-45B6-AAE4-102DB4334688}">
+									<Class name="AZ::Component" field="BaseClass1" type="{EDFCB2CF-F75D-43BE-B26B-F35821B29247}">
+										<Class name="AZ::u64" field="Id" value="5761352791099338677" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+									</Class>
+									<Class name="unsigned int" field="Id" value="1" type="{43DA906B-7DEF-4CA8-9790-854106D3F983}"/>
+									<Class name="bool" field="IsEnabled" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+									<Class name="bool" field="IsVisibleInEditor" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+									<Class name="bool" field="IsSelectableInEditor" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+									<Class name="bool" field="IsSelectedInEditor" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+									<Class name="bool" field="IsExpandedInEditor" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+									<Class name="AZStd::vector&lt;ChildEntityIdOrderEntry, allocator&gt;" field="ChildEntityIdOrder" type="{0DE523D9-AEAE-5FC4-9D40-967A2E2B8A62}">
+										<Class name="ChildEntityIdOrderEntry" field="element" version="1" type="{D6F3CC55-6C7C-4D64-818F-FA3378EC8DA2}">
+											<Class name="EntityId" field="ChildEntityId" version="1" type="{6383F1D3-BB27-4E6B-A49A-6409B2059EAA}">
+												<Class name="AZ::u64" field="id" value="22942880697009" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+											</Class>
+											<Class name="AZ::u64" field="SortIndex" value="0" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+										</Class>
+									</Class>
+								</Class>
+							</Class>
+							<Class name="bool" field="IsDependencyReady" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+							<Class name="bool" field="IsRuntimeActive" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+						</Class>
+						<Class name="AZ::Entity" field="element" version="2" type="{75651658-8663-478D-9090-2432DFCAFA44}">
+							<Class name="EntityId" field="Id" version="1" type="{6383F1D3-BB27-4E6B-A49A-6409B2059EAA}">
+								<Class name="AZ::u64" field="id" value="22942880697009" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+							</Class>
+							<Class name="AZStd::string" field="Name" value="Reticle" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+							<Class name="AZStd::vector&lt;AZ::Component*, allocator&gt;" field="Components" type="{13D58FF9-1088-5C69-9A1F-C2A144B57B78}">
+								<Class name="EditorOnlyEntityComponent" field="element" type="{22A16F1D-6D49-422D-AAE9-91AE45B5D3E7}">
+									<Class name="EditorComponentBase" field="BaseClass1" version="1" type="{D5346BD4-7F20-444E-B370-327ACD03D4A0}">
+										<Class name="AZ::Component" field="BaseClass1" type="{EDFCB2CF-F75D-43BE-B26B-F35821B29247}">
+											<Class name="AZ::u64" field="Id" value="982666225208131060" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+										</Class>
+									</Class>
+									<Class name="bool" field="IsEditorOnly" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+								</Class>
+								<Class name="UiTransform2dComponent" field="element" version="4" type="{2751A5A5-3291-4A4D-9FC0-9CB0EB8D1DE6}">
+									<Class name="AZ::Component" field="BaseClass1" type="{EDFCB2CF-F75D-43BE-B26B-F35821B29247}">
+										<Class name="AZ::u64" field="Id" value="14653617185649051772" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+									</Class>
+									<Class name="Anchors" field="Anchors" type="{65D4346C-FB16-4CB0-9BDC-1185B122C4A9}">
+										<Class name="float" field="left" value="0.5000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+										<Class name="float" field="top" value="0.5000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+										<Class name="float" field="right" value="0.5000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+										<Class name="float" field="bottom" value="0.5000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+									</Class>
+									<Class name="Offsets" field="Offsets" type="{F681BA9D-245C-4630-B20E-05DD752FAD57}">
+										<Class name="float" field="left" value="-21.9899998" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+										<Class name="float" field="top" value="-18.4050007" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+										<Class name="float" field="right" value="21.9899998" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+										<Class name="float" field="bottom" value="18.4050007" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+									</Class>
+									<Class name="Vector2" field="Pivot" value="0.5000000 0.5000000" type="{3D80F623-C85C-4741-90D0-E4E66164E6BF}"/>
+									<Class name="float" field="Rotation" value="0.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+									<Class name="Vector2" field="Scale" value="1.0000000 1.0000000" type="{3D80F623-C85C-4741-90D0-E4E66164E6BF}"/>
+									<Class name="bool" field="IsFlooringOffsets" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+									<Class name="int" field="ScaleToDevice" value="0" type="{72039442-EB38-4D42-A1AD-CB68F7E0EEF6}"/>
+								</Class>
+								<Class name="UiElementComponent" field="element" version="3" type="{4A97D63E-CE7A-45B6-AAE4-102DB4334688}">
+									<Class name="AZ::Component" field="BaseClass1" type="{EDFCB2CF-F75D-43BE-B26B-F35821B29247}">
+										<Class name="AZ::u64" field="Id" value="16909192243662849937" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+									</Class>
+									<Class name="unsigned int" field="Id" value="60" type="{43DA906B-7DEF-4CA8-9790-854106D3F983}"/>
+									<Class name="bool" field="IsEnabled" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+									<Class name="bool" field="IsVisibleInEditor" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+									<Class name="bool" field="IsSelectableInEditor" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+									<Class name="bool" field="IsSelectedInEditor" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+									<Class name="bool" field="IsExpandedInEditor" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+									<Class name="AZStd::vector&lt;ChildEntityIdOrderEntry, allocator&gt;" field="ChildEntityIdOrder" type="{0DE523D9-AEAE-5FC4-9D40-967A2E2B8A62}"/>
+								</Class>
+								<Class name="UiImageComponent" field="element" version="8" type="{BDBEFD23-DBB4-4726-A32D-4FEAC24E51F6}">
+									<Class name="AZ::Component" field="BaseClass1" type="{EDFCB2CF-F75D-43BE-B26B-F35821B29247}">
+										<Class name="AZ::u64" field="Id" value="8827696256245390040" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+									</Class>
+									<Class name="int" field="SpriteType" value="0" type="{72039442-EB38-4D42-A1AD-CB68F7E0EEF6}"/>
+									<Class name="SimpleAssetReference&lt;TextureAsset&gt;" field="SpritePath" version="1" type="{6E0B1C86-F66A-5D30-BCBB-0F9EA199E4AF}">
+										<Class name="SimpleAssetReferenceBase" field="BaseClass1" version="1" type="{E16CA6C5-5C78-4AD9-8E9B-F8C1FB4D1DB8}">
+											<Class name="AZStd::string" field="AssetPath" value="assets/ui/basichud/reticle.png" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+										</Class>
+									</Class>
+									<Class name="unsigned int" field="Index" value="0" type="{43DA906B-7DEF-4CA8-9790-854106D3F983}"/>
+									<Class name="Asset&lt;AttachmentImageAsset&gt;" field="AttachmentImageAsset" value="id={00000000-0000-0000-0000-000000000000}:0,type={82CEA86B-E891-4969-8F35-D8017E8902C8},hint={},loadBehavior=1" version="3" type="{61538C1C-2EDA-593B-AA53-701FF7D854E7}"/>
+									<Class name="bool" field="IsRenderTargetSRGB" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+									<Class name="Color" field="Color" value="1.0000000 1.0000000 1.0000000 1.0000000" type="{7894072A-9050-4F0F-901B-34B1A0D29417}"/>
+									<Class name="float" field="Alpha" value="1.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+									<Class name="int" field="ImageType" value="0" type="{72039442-EB38-4D42-A1AD-CB68F7E0EEF6}"/>
+									<Class name="bool" field="FillCenter" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+									<Class name="bool" field="StretchSliced" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+									<Class name="int" field="BlendMode" value="0" type="{72039442-EB38-4D42-A1AD-CB68F7E0EEF6}"/>
+									<Class name="int" field="FillType" value="0" type="{72039442-EB38-4D42-A1AD-CB68F7E0EEF6}"/>
+									<Class name="float" field="FillAmount" value="1.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+									<Class name="float" field="FillStartAngle" value="0.0000000" type="{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}"/>
+									<Class name="int" field="FillCornerOrigin" value="0" type="{72039442-EB38-4D42-A1AD-CB68F7E0EEF6}"/>
+									<Class name="int" field="FillEdgeOrigin" value="0" type="{72039442-EB38-4D42-A1AD-CB68F7E0EEF6}"/>
+									<Class name="bool" field="FillClockwise" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+								</Class>
+							</Class>
+							<Class name="bool" field="IsDependencyReady" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+							<Class name="bool" field="IsRuntimeActive" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+						</Class>
+					</Class>
+					<Class name="AZStd::list&lt;SliceReference, allocator&gt;" field="Prefabs" type="{DAD45EB6-5853-5645-B762-3A37F8775E12}"/>
+					<Class name="bool" field="IsDynamic" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+					<Class name="AZ::Entity" field="MetadataEntity" version="2" type="{75651658-8663-478D-9090-2432DFCAFA44}">
+						<Class name="EntityId" field="Id" version="1" type="{6383F1D3-BB27-4E6B-A49A-6409B2059EAA}">
+							<Class name="AZ::u64" field="id" value="11984886585768" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+						</Class>
+						<Class name="AZStd::string" field="Name" value="" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
+						<Class name="AZStd::vector&lt;AZ::Component*, allocator&gt;" field="Components" type="{13D58FF9-1088-5C69-9A1F-C2A144B57B78}">
+							<Class name="SliceMetadataInfoComponent" field="element" version="2" type="{25EE4D75-8A17-4449-81F4-E561005BAABD}">
+								<Class name="AZ::Component" field="BaseClass1" type="{EDFCB2CF-F75D-43BE-B26B-F35821B29247}">
+									<Class name="AZ::u64" field="Id" value="4657841474522004620" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+								</Class>
+								<Class name="AZStd::set&lt;EntityId, AZStd::less&lt;EntityId&gt;, allocator&gt;" field="AssociatedIds" type="{78E024C3-0143-53FC-B393-0675227839AF}"/>
+								<Class name="EntityId" field="ParentId" version="1" type="{6383F1D3-BB27-4E6B-A49A-6409B2059EAA}">
+									<Class name="AZ::u64" field="id" value="4294967295" type="{D6597933-47CD-4FC8-B911-63F3E2B0993A}"/>
+								</Class>
+								<Class name="AZStd::unordered_set&lt;EntityId, AZStd::hash&lt;EntityId&gt;, AZStd::equal_to&lt;EntityId&gt;, allocator&gt;" field="ChildrenIds" type="{6C8F8E52-AB4A-5C1F-8E56-9AC390290B94}"/>
+								<Class name="bool" field="PersistenceFlag" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+							</Class>
+						</Class>
+						<Class name="bool" field="IsDependencyReady" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+						<Class name="bool" field="IsRuntimeActive" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+					</Class>
+					<Class name="DataFlagsPerEntity" field="DataFlagsForNewEntities" version="1" type="{57FE7B9E-B2AF-4F6F-9F8D-87F671E91C99}">
+						<Class name="AZStd::unordered_map&lt;EntityId, AZStd::unordered_map&lt;AddressType, unsigned char, AZStd::hash&lt;AddressType&gt;, AZStd::equal_to&lt;AddressType&gt;, allocator&gt;, AZStd::hash&lt;EntityId&gt;, AZStd::equal_to&lt;EntityId&gt;, allocator&gt;" field="EntityToDataFlags" type="{CAB9E1F5-761E-54B8-916E-E7FB597E5EDE}"/>
+					</Class>
+				</Class>
+			</Class>
+			<Class name="bool" field="IsDependencyReady" value="false" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+			<Class name="bool" field="IsRuntimeActive" value="true" type="{A0CA880C-AFE4-43CB-926C-59AC48496112}"/>
+		</Class>
+	</Class>
+</ObjectStream>
+

+ 3 - 0
Templates/Multiplayer/Template/Assets/UI/BasicHUD/Reticle.png

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:e8782104163428a3195100d0d8b9898afdc50dc21e710302f2801230804e1f4a
+size 49996

+ 3 - 0
Templates/Multiplayer/Template/Assets/UI/BasicHUD/Reticle.sprite

@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:d697f32476fb8d320dad7ac0a58c0a2e594259d486e4644d2ddbd1f94e9f34b2
+size 861

+ 3 - 0
Templates/Multiplayer/Template/Gem/CMakeLists.txt

@@ -135,6 +135,7 @@ ly_add_target(
         ${NameLower}_shared_files.cmake
     INCLUDE_DIRECTORIES
         PRIVATE
+            ${CMAKE_CURRENT_BINARY_DIR}/Azcg/Generated/${gem_name}.Client.Static  # Used so Module.cpp can include AutoGen/AutoComponentTypes.h
             Source
             .
         PUBLIC
@@ -153,6 +154,7 @@ ly_add_target(
         ${NameLower}_shared_files.cmake
     INCLUDE_DIRECTORIES
         PRIVATE
+            ${CMAKE_CURRENT_BINARY_DIR}/Azcg/Generated/${gem_name}.Server.Static  # Used so Module.cpp can include AutoGen/AutoComponentTypes.h
             Source
             .
         PUBLIC
@@ -172,6 +174,7 @@ ly_add_target(
         ${pal_dir}/${NameLower}_shared_${PAL_PLATFORM_NAME_LOWERCASE}_files.cmake
     INCLUDE_DIRECTORIES
         PRIVATE
+            ${CMAKE_CURRENT_BINARY_DIR}/Azcg/Generated/${gem_name}.Unified.Static  # Used so Module.cpp can include AutoGen/AutoComponentTypes.h
             Source
             .
         PUBLIC

+ 7 - 0
Templates/Multiplayer/Template/Gem/Source/${Name}Module.cpp

@@ -5,6 +5,9 @@
 #include "${SanitizedCppName}SystemComponent.h"
 
 #include <${SanitizedCppName}/${SanitizedCppName}TypeIds.h>
+#include <Components/AttachPlayerWeaponComponent.h>
+#include <Source/AutoGen/AutoComponentTypes.h>
+
 
 namespace ${SanitizedCppName}
 {
@@ -21,7 +24,11 @@ namespace ${SanitizedCppName}
             // Push results of [MyComponent]::CreateDescriptor() into m_descriptors here.
             m_descriptors.insert(m_descriptors.end(), {
                 ${SanitizedCppName}SystemComponent::CreateDescriptor(),
+                AttachPlayerWeaponComponent::CreateDescriptor(),
             });
+
+            // Register multiplayer components
+            CreateComponentDescriptors(m_descriptors);
         }
 
         /**

+ 11 - 0
Templates/Multiplayer/Template/Gem/Source/${Name}SystemComponent.cpp

@@ -4,7 +4,10 @@
 #include "${SanitizedCppName}SystemComponent.h"
 
 #include <${SanitizedCppName}/${SanitizedCppName}TypeIds.h>
+
 #include <Source/AutoGen/AutoComponentTypes.h>
+#include <Source/Weapons/WeaponTypes.h>
+
 
 namespace ${SanitizedCppName}
 {
@@ -13,6 +16,14 @@ namespace ${SanitizedCppName}
 
     void ${SanitizedCppName}SystemComponent::Reflect(AZ::ReflectContext* context)
     {
+        ReflectWeaponEnums(context);
+        GatherParams::Reflect(context);
+        HitEffect::Reflect(context);
+        HitEntity::Reflect(context);
+        HitEvent::Reflect(context);
+        WeaponParams::Reflect(context);
+        GameEffect::Reflect(context);
+
         if (auto serializeContext = azrtti_cast<AZ::SerializeContext*>(context))
         {
             serializeContext->Class<${SanitizedCppName}SystemComponent, AZ::Component>()

+ 2 - 1
Templates/Multiplayer/Template/Gem/Source/Components/NetworkSimplePlayerCameraComponent.cpp

@@ -51,7 +51,8 @@ namespace ${SanitizedCppName}
 
         if (IsNetEntityRoleAutonomous())
         {
-            m_aiEnabled = FindComponent<NetworkAiComponent>()->GetEnabled();
+            const auto* networkAiComponent = FindComponent<NetworkAiComponent>();
+            m_aiEnabled = networkAiComponent && networkAiComponent->GetEnabled();
             if (!m_aiEnabled)
             {
                 AZ::EntityId activeCameraId;

+ 5 - 2
Templates/Multiplayer/Template/Gem/Source/Components/NetworkWeaponsComponent.cpp

@@ -340,8 +340,11 @@ namespace ${SanitizedCppName}
             {
                 if (const AZ::Entity* entity = handle.GetEntity())
                 {
-                    // Hit confirmed on a player
-                    WeaponNotificationBus::Broadcast(&WeaponNotificationBus::Events::OnConfirmedHitPlayer, GetEntityId(), entity->GetId());
+                    if (entity->FindComponent<NetworkPlayerMovementComponent>())
+                    {
+                        // Hit confirmed on a player
+                        WeaponNotificationBus::Broadcast(&WeaponNotificationBus::Events::OnConfirmedHitPlayer, GetEntityId(), entity->GetId());
+                    }
                 }
             }
 

+ 550 - 138
Templates/Multiplayer/Template/Levels/DefaultLevel/DefaultLevel.prefab

@@ -19,7 +19,12 @@
                 "$type": "EditorEntitySortComponent",
                 "Id": 14126657869720434043,
                 "Child Entity Order": [
-                    "Entity_[1176639161715]"
+                    "Entity_[1163754259827]",
+                    "Entity_[1176639161715]",
+                    "Entity_[816115844527]",
+                    "Entity_[820410811823]",
+                    "Entity_[829000746415]",
+                    "Instance_[377316545180]/ContainerEntity"
                 ]
             },
             "Component_[15230859088967841193]": {
@@ -49,8 +54,29 @@
             },
             "LocalViewBookmarkComponent": {
                 "$type": "LocalViewBookmarkComponent",
-                "Id": 15646370697722364603,
-                "LocalBookmarkFileName": "Default_16934136868968486.setreg"
+                "Id": 11900599154899054747,
+                "LocalBookmarkFileName": "Demo_1719871448790935.setreg"
+            },
+            "Multiplayer::SimplePlayerSpawnerComponent": {
+                "$type": "GenericComponentWrapper",
+                "Id": 18282915594716738658,
+                "m_template": {
+                    "$type": "Multiplayer::SimplePlayerSpawnerComponent",
+                    "PlayerSpawnable": {
+                        "Spawnable": {
+                            "assetId": {
+                                "guid": "{0FAE8819-0EA5-5E35-BA57-015B514F7160}",
+                                "subId": 738868766
+                            },
+                            "assetHint": "assets/prefabs/player.network.spawnable"
+                        }
+                    },
+                    "SpawnPoints": [
+                        "Entity_[816115844527]",
+                        "Entity_[820410811823]",
+                        "Entity_[829000746415]"
+                    ]
+                }
             }
         }
     },
@@ -220,7 +246,7 @@
         },
         "Entity_[1163754259827]": {
             "Id": "Entity_[1163754259827]",
-            "Name": "Camera",
+            "Name": "Camera, UI, and Input",
             "Components": {
                 "Component_[11895140916889160460]": {
                     "$type": "EditorEntityIconComponent",
@@ -246,7 +272,7 @@
                 "Component_[18086214374043522055]": {
                     "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
                     "Id": 18086214374043522055,
-                    "Parent Entity": "Entity_[1176639161715]",
+                    "Parent Entity": "Entity_[1146574390643]",
                     "Transform Data": {
                         "Translate": [
                             -2.3000001907348633,
@@ -272,13 +298,6 @@
                     "$type": "EditorPendingCompositionComponent",
                     "Id": 7169798125182238623
                 },
-                "Component_[7255796294953281766]": {
-                    "$type": "GenericComponentWrapper",
-                    "Id": 7255796294953281766,
-                    "m_template": {
-                        "$type": "FlyCameraInputComponent"
-                    }
-                },
                 "Component_[8866210352157164042]": {
                     "$type": "EditorInspectorComponent",
                     "Id": 8866210352157164042
@@ -286,134 +305,30 @@
                 "Component_[9129253381063760879]": {
                     "$type": "EditorOnlyEntityComponent",
                     "Id": 9129253381063760879
-                }
-            }
-        },
-        "Entity_[1168049227123]": {
-            "Id": "Entity_[1168049227123]",
-            "Name": "Grid",
-            "Components": {
-                "Component_[11443347433215807130]": {
-                    "$type": "EditorEntityIconComponent",
-                    "Id": 11443347433215807130
-                },
-                "Component_[14249419413039427459]": {
-                    "$type": "EditorInspectorComponent",
-                    "Id": 14249419413039427459
                 },
-                "Component_[15448581635946161318]": {
-                    "$type": "AZ::Render::EditorGridComponent",
-                    "Id": 15448581635946161318,
-                    "Controller": {
-                        "Configuration": {
-                            "primarySpacing": 4.0,
-                            "primaryColor": [
-                                0.501960813999176,
-                                0.501960813999176,
-                                0.501960813999176
-                            ],
-                            "secondarySpacing": 0.5,
-                            "secondaryColor": [
-                                0.250980406999588,
-                                0.250980406999588,
-                                0.250980406999588
-                            ]
+                "InputConfigurationComponent": {
+                    "$type": "GenericComponentWrapper",
+                    "Id": 7910518089686962564,
+                    "m_template": {
+                        "$type": "InputConfigurationComponent",
+                        "Input Event Bindings": {
+                            "assetId": {
+                                "guid": "{FAD02F56-DA18-5577-AF5C-D7576872BD50}"
+                            },
+                            "assetHint": "assets/inputbindings/player.inputbindings"
                         }
                     }
                 },
-                "Component_[1843303322527297409]": {
-                    "$type": "EditorDisabledCompositionComponent",
-                    "Id": 1843303322527297409
-                },
-                "Component_[380249072065273654]": {
-                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
-                    "Id": 380249072065273654,
-                    "Parent Entity": "Entity_[1176639161715]"
-                },
-                "Component_[7476660583684339787]": {
-                    "$type": "EditorPendingCompositionComponent",
-                    "Id": 7476660583684339787
-                },
-                "Component_[7557626501215118375]": {
-                    "$type": "EditorEntitySortComponent",
-                    "Id": 7557626501215118375
-                },
-                "Component_[7984048488947365511]": {
-                    "$type": "EditorVisibilityComponent",
-                    "Id": 7984048488947365511
-                },
-                "Component_[8118181039276487398]": {
-                    "$type": "EditorOnlyEntityComponent",
-                    "Id": 8118181039276487398
-                },
-                "Component_[9189909764215270515]": {
-                    "$type": "EditorLockComponent",
-                    "Id": 9189909764215270515
-                }
-            }
-        },
-        "Entity_[1172344194419]": {
-            "Id": "Entity_[1172344194419]",
-            "Name": "Shader Ball",
-            "Components": {
-                "Component_[10789351944715265527]": {
-                    "$type": "EditorOnlyEntityComponent",
-                    "Id": 10789351944715265527
-                },
-                "Component_[12037033284781049225]": {
-                    "$type": "EditorEntitySortComponent",
-                    "Id": 12037033284781049225
-                },
-                "Component_[13759153306105970079]": {
-                    "$type": "EditorPendingCompositionComponent",
-                    "Id": 13759153306105970079
-                },
-                "Component_[14135560884830586279]": {
-                    "$type": "EditorInspectorComponent",
-                    "Id": 14135560884830586279
-                },
-                "Component_[16247165675903986673]": {
-                    "$type": "EditorVisibilityComponent",
-                    "Id": 16247165675903986673
-                },
-                "Component_[18082433625958885247]": {
-                    "$type": "EditorDisabledCompositionComponent",
-                    "Id": 18082433625958885247
-                },
-                "Component_[6472623349872972660]": {
-                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
-                    "Id": 6472623349872972660,
-                    "Parent Entity": "Entity_[1176639161715]",
-                    "Transform Data": {
-                        "Rotate": [
-                            0.0,
-                            0.10000000149011612,
-                            180.0
-                        ]
-                    }
-                },
-                "Component_[6495255223970673916]": {
-                    "$type": "AZ::Render::EditorMeshComponent",
-                    "Id": 6495255223970673916,
-                    "Controller": {
-                        "Configuration": {
-                            "ModelAsset": {
-                                "assetId": {
-                                    "guid": "{FD340C30-755C-5911-92A3-19A3F7A77931}",
-                                    "subId": 281415304
-                                },
-                                "assetHint": "objects/shaderball/shaderball_default_1m.azmodel"
-                            }
-                        }
+                "UiCanvasAssetRefComponent": {
+                    "$type": "GenericComponentWrapper",
+                    "Id": 1145074728069152133,
+                    "m_template": {
+                        "$type": "UiCanvasAssetRefComponent",
+                        "CanvasAssetRef": {
+                            "AssetPath": "assets/ui/basichud/basichud.uicanvas"
+                        },
+                        "IsAutoLoad": true
                     }
-                },
-                "Component_[8550141614185782969]": {
-                    "$type": "EditorEntityIconComponent",
-                    "Id": 8550141614185782969
-                },
-                "Component_[9439770997198325425]": {
-                    "$type": "EditorLockComponent",
-                    "Id": 9439770997198325425
                 }
             }
         },
@@ -461,9 +376,6 @@
                     "Child Entity Order": [
                         "Entity_[1155164325235]",
                         "Entity_[1180934129011]",
-                        "Entity_[1172344194419]",
-                        "Entity_[1168049227123]",
-                        "Entity_[1163754259827]",
                         "Entity_[1159459292531]"
                     ]
                 },
@@ -552,6 +464,506 @@
                     "Id": 931091830724002070
                 }
             }
+        },
+        "Entity_[816115844527]": {
+            "Id": "Entity_[816115844527]",
+            "Name": "Spawn Point 1",
+            "Components": {
+                "EditorDisabledCompositionComponent": {
+                    "$type": "EditorDisabledCompositionComponent",
+                    "Id": 15768795079403894944
+                },
+                "EditorEntityIconComponent": {
+                    "$type": "EditorEntityIconComponent",
+                    "Id": 10186466690872068921
+                },
+                "EditorEntitySortComponent": {
+                    "$type": "EditorEntitySortComponent",
+                    "Id": 7758629294787954236
+                },
+                "EditorInspectorComponent": {
+                    "$type": "EditorInspectorComponent",
+                    "Id": 2474845680829238573
+                },
+                "EditorLockComponent": {
+                    "$type": "EditorLockComponent",
+                    "Id": 12347691053872655749
+                },
+                "EditorOnlyEntityComponent": {
+                    "$type": "EditorOnlyEntityComponent",
+                    "Id": 8779814239489391551
+                },
+                "EditorPendingCompositionComponent": {
+                    "$type": "EditorPendingCompositionComponent",
+                    "Id": 547186902430958098
+                },
+                "EditorVisibilityComponent": {
+                    "$type": "EditorVisibilityComponent",
+                    "Id": 15943980979671908948
+                },
+                "TransformComponent": {
+                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
+                    "Id": 9515082500885560574,
+                    "Parent Entity": "Entity_[1146574390643]"
+                }
+            }
+        },
+        "Entity_[820410811823]": {
+            "Id": "Entity_[820410811823]",
+            "Name": "Spawn Point 2",
+            "Components": {
+                "EditorDisabledCompositionComponent": {
+                    "$type": "EditorDisabledCompositionComponent",
+                    "Id": 15768795079403894944
+                },
+                "EditorEntityIconComponent": {
+                    "$type": "EditorEntityIconComponent",
+                    "Id": 10186466690872068921
+                },
+                "EditorEntitySortComponent": {
+                    "$type": "EditorEntitySortComponent",
+                    "Id": 7758629294787954236
+                },
+                "EditorInspectorComponent": {
+                    "$type": "EditorInspectorComponent",
+                    "Id": 2474845680829238573
+                },
+                "EditorLockComponent": {
+                    "$type": "EditorLockComponent",
+                    "Id": 12347691053872655749
+                },
+                "EditorOnlyEntityComponent": {
+                    "$type": "EditorOnlyEntityComponent",
+                    "Id": 8779814239489391551
+                },
+                "EditorPendingCompositionComponent": {
+                    "$type": "EditorPendingCompositionComponent",
+                    "Id": 547186902430958098
+                },
+                "EditorVisibilityComponent": {
+                    "$type": "EditorVisibilityComponent",
+                    "Id": 15943980979671908948
+                },
+                "TransformComponent": {
+                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
+                    "Id": 9515082500885560574,
+                    "Parent Entity": "Entity_[1146574390643]",
+                    "Transform Data": {
+                        "Translate": [
+                            1.0,
+                            0.0,
+                            0.0
+                        ]
+                    }
+                }
+            }
+        },
+        "Entity_[829000746415]": {
+            "Id": "Entity_[829000746415]",
+            "Name": "Spawn Point 3",
+            "Components": {
+                "EditorDisabledCompositionComponent": {
+                    "$type": "EditorDisabledCompositionComponent",
+                    "Id": 15768795079403894944
+                },
+                "EditorEntityIconComponent": {
+                    "$type": "EditorEntityIconComponent",
+                    "Id": 10186466690872068921
+                },
+                "EditorEntitySortComponent": {
+                    "$type": "EditorEntitySortComponent",
+                    "Id": 7758629294787954236
+                },
+                "EditorInspectorComponent": {
+                    "$type": "EditorInspectorComponent",
+                    "Id": 2474845680829238573
+                },
+                "EditorLockComponent": {
+                    "$type": "EditorLockComponent",
+                    "Id": 12347691053872655749
+                },
+                "EditorOnlyEntityComponent": {
+                    "$type": "EditorOnlyEntityComponent",
+                    "Id": 8779814239489391551
+                },
+                "EditorPendingCompositionComponent": {
+                    "$type": "EditorPendingCompositionComponent",
+                    "Id": 547186902430958098
+                },
+                "EditorVisibilityComponent": {
+                    "$type": "EditorVisibilityComponent",
+                    "Id": 15943980979671908948
+                },
+                "TransformComponent": {
+                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
+                    "Id": 9515082500885560574,
+                    "Parent Entity": "Entity_[1146574390643]",
+                    "Transform Data": {
+                        "Translate": [
+                            0.0,
+                            1.0,
+                            0.0
+                        ]
+                    }
+                }
+            }
+        }
+    },
+    "Instances": {
+        "Instance_[377316545180]": {
+            "Source": "Assets/Prefabs/4x4x4BoxGrid.prefab",
+            "Patches": [
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/0",
+                    "value": "Entity_[763842070883]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/1",
+                    "value": "Entity_[566273575267]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/2",
+                    "value": "Entity_[587748411747]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/3",
+                    "value": "Entity_[553388673379]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/4",
+                    "value": "Entity_[634993052003]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/5",
+                    "value": "Entity_[712302463331]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/6",
+                    "value": "Entity_[510439000419]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/7",
+                    "value": "Entity_[592043379043]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/8",
+                    "value": "Entity_[746662201699]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/9",
+                    "value": "Entity_[673647757667]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/10",
+                    "value": "Entity_[626403117411]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/11",
+                    "value": "Entity_[622108150115]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/12",
+                    "value": "Entity_[561978607971]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/13",
+                    "value": "Entity_[781021940067]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/14",
+                    "value": "Entity_[647877953891]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/15",
+                    "value": "Entity_[519028935011]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/16",
+                    "value": "Entity_[750957168995]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/17",
+                    "value": "Entity_[729482332515]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/18",
+                    "value": "Entity_[708007496035]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/19",
+                    "value": "Entity_[596338346339]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/20",
+                    "value": "Entity_[579158477155]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/21",
+                    "value": "Entity_[600633313635]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/22",
+                    "value": "Entity_[776726972771]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/23",
+                    "value": "Entity_[768137038179]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/24",
+                    "value": "Entity_[733777299811]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/25",
+                    "value": "Entity_[643582986595]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/26",
+                    "value": "Entity_[699417561443]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/27",
+                    "value": "Entity_[540503771491]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/28",
+                    "value": "Entity_[695122594147]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/29",
+                    "value": "Entity_[738072267107]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/30",
+                    "value": "Entity_[583453444451]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/31",
+                    "value": "Entity_[506144033123]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/32",
+                    "value": "Entity_[639288019299]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/33",
+                    "value": "Entity_[665057823075]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/34",
+                    "value": "Entity_[557683640675]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/35",
+                    "value": "Entity_[570568542563]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/36",
+                    "value": "Entity_[703712528739]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/37",
+                    "value": "Entity_[630698084707]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/38",
+                    "value": "Entity_[549093706083]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/39",
+                    "value": "Entity_[725187365219]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/40",
+                    "value": "Entity_[759547103587]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/41",
+                    "value": "Entity_[613518215523]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/42",
+                    "value": "Entity_[677942724963]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/43",
+                    "value": "Entity_[527618869603]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/44",
+                    "value": "Entity_[536208804195]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/45",
+                    "value": "Entity_[772432005475]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/46",
+                    "value": "Entity_[720892397923]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/47",
+                    "value": "Entity_[656467888483]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/48",
+                    "value": "Entity_[523323902307]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/49",
+                    "value": "Entity_[660762855779]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/50",
+                    "value": "Entity_[531913836899]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/51",
+                    "value": "Entity_[682237692259]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/52",
+                    "value": "Entity_[609223248227]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/53",
+                    "value": "Entity_[604928280931]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/54",
+                    "value": "Entity_[544798738787]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/55",
+                    "value": "Entity_[514733967715]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/56",
+                    "value": "Entity_[669352790371]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/57",
+                    "value": "Entity_[652172921187]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/58",
+                    "value": "Entity_[574863509859]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/59",
+                    "value": "Entity_[742367234403]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/60",
+                    "value": "Entity_[686532659555]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/61",
+                    "value": "Entity_[617813182819]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/62",
+                    "value": "Entity_[716597430627]"
+                },
+                {
+                    "op": "add",
+                    "path": "/ContainerEntity/Components/Component_[2180669853693886392]/Child Entity Order/63",
+                    "value": "Entity_[755252136291]"
+                },
+                {
+                    "op": "replace",
+                    "path": "/ContainerEntity/Components/Component_[4107956514252411312]/Parent Entity",
+                    "value": "../Entity_[1146574390643]"
+                },
+                {
+                    "op": "replace",
+                    "path": "/ContainerEntity/Components/Component_[4107956514252411312]/Transform Data/Translate/0",
+                    "value": 3.9316773414611816
+                },
+                {
+                    "op": "replace",
+                    "path": "/ContainerEntity/Components/Component_[4107956514252411312]/Transform Data/Translate/1",
+                    "value": 3.75308895111084
+                },
+                {
+                    "op": "replace",
+                    "path": "/Entities/Entity_[716597430627]/Components/Component_[14564562245168579615]/Configuration/Centre of mass offset/2",
+                    "value": 0.5
+                },
+                {
+                    "op": "replace",
+                    "path": "/Entities/Entity_[716597430627]/Components/Component_[14564562245168579615]/Configuration/Inertia tensor/0",
+                    "value": 166.66668701171875
+                },
+                {
+                    "op": "replace",
+                    "path": "/Entities/Entity_[716597430627]/Components/Component_[14564562245168579615]/Configuration/Inertia tensor/4",
+                    "value": 166.66668701171875
+                }
+            ]
         }
     }
 }

+ 0 - 651
Templates/Multiplayer/Template/Levels/Demo/Demo.prefab

@@ -1,651 +0,0 @@
-{
-    "ContainerEntity": {
-        "Id": "Entity_[1146574390643]",
-        "Name": "Level",
-        "Components": {
-            "Component_[10641544592923449938]": {
-                "$type": "EditorInspectorComponent",
-                "Id": 10641544592923449938
-            },
-            "Component_[12039882709170782873]": {
-                "$type": "EditorOnlyEntityComponent",
-                "Id": 12039882709170782873
-            },
-            "Component_[12265484671603697631]": {
-                "$type": "EditorPendingCompositionComponent",
-                "Id": 12265484671603697631
-            },
-            "Component_[14126657869720434043]": {
-                "$type": "EditorEntitySortComponent",
-                "Id": 14126657869720434043,
-                "Child Entity Order": [
-                    "Entity_[1176639161715]",
-                    "Entity_[816115844527]",
-                    "Entity_[820410811823]",
-                    "Entity_[829000746415]"
-                ]
-            },
-            "Component_[15230859088967841193]": {
-                "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
-                "Id": 15230859088967841193,
-                "Parent Entity": ""
-            },
-            "Component_[16239496886950819870]": {
-                "$type": "EditorDisabledCompositionComponent",
-                "Id": 16239496886950819870
-            },
-            "Component_[5688118765544765547]": {
-                "$type": "EditorEntityIconComponent",
-                "Id": 5688118765544765547
-            },
-            "Component_[7247035804068349658]": {
-                "$type": "EditorPrefabComponent",
-                "Id": 7247035804068349658
-            },
-            "Component_[9307224322037797205]": {
-                "$type": "EditorLockComponent",
-                "Id": 9307224322037797205
-            },
-            "Component_[9562516168917670048]": {
-                "$type": "EditorVisibilityComponent",
-                "Id": 9562516168917670048
-            },
-            "LocalViewBookmarkComponent": {
-                "$type": "LocalViewBookmarkComponent",
-                "Id": 11900599154899054747,
-                "LocalBookmarkFileName": "Demo_1719871448790935.setreg"
-            },
-            "Multiplayer::SimplePlayerSpawnerComponent": {
-                "$type": "GenericComponentWrapper",
-                "Id": 18282915594716738658,
-                "m_template": {
-                    "$type": "Multiplayer::SimplePlayerSpawnerComponent",
-                    "PlayerSpawnable": {
-                        "Spawnable": {
-                            "assetId": {
-                                "guid": "{0FAE8819-0EA5-5E35-BA57-015B514F7160}",
-                                "subId": 738868766
-                            },
-                            "assetHint": "assets/prefabs/player.network.spawnable"
-                        }
-                    },
-                    "SpawnPoints": [
-                        "Entity_[816115844527]",
-                        "Entity_[820410811823]",
-                        "Entity_[829000746415]"
-                    ]
-                }
-            }
-        }
-    },
-    "Entities": {
-        "Entity_[1155164325235]": {
-            "Id": "Entity_[1155164325235]",
-            "Name": "Sun",
-            "Components": {
-                "Component_[13620450453324765907]": {
-                    "$type": "EditorLockComponent",
-                    "Id": 13620450453324765907
-                },
-                "Component_[2134313378593666258]": {
-                    "$type": "EditorInspectorComponent",
-                    "Id": 2134313378593666258
-                },
-                "Component_[234010807770404186]": {
-                    "$type": "EditorVisibilityComponent",
-                    "Id": 234010807770404186
-                },
-                "Component_[2970359110423865725]": {
-                    "$type": "EditorEntityIconComponent",
-                    "Id": 2970359110423865725
-                },
-                "Component_[3722854130373041803]": {
-                    "$type": "EditorOnlyEntityComponent",
-                    "Id": 3722854130373041803
-                },
-                "Component_[5992533738676323195]": {
-                    "$type": "EditorDisabledCompositionComponent",
-                    "Id": 5992533738676323195
-                },
-                "Component_[7378860763541895402]": {
-                    "$type": "AZ::Render::EditorDirectionalLightComponent",
-                    "Id": 7378860763541895402,
-                    "Controller": {
-                        "Configuration": {
-                            "Intensity": 1.0,
-                            "CameraEntityId": "",
-                            "ShadowFilterMethod": 1
-                        }
-                    }
-                },
-                "Component_[7892834440890947578]": {
-                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
-                    "Id": 7892834440890947578,
-                    "Parent Entity": "Entity_[1176639161715]",
-                    "Transform Data": {
-                        "Translate": [
-                            0.0,
-                            0.0,
-                            13.487043380737305
-                        ],
-                        "Rotate": [
-                            -76.13099670410156,
-                            -0.847000002861023,
-                            -15.8100004196167
-                        ]
-                    }
-                },
-                "Component_[8599729549570828259]": {
-                    "$type": "EditorEntitySortComponent",
-                    "Id": 8599729549570828259
-                },
-                "Component_[952797371922080273]": {
-                    "$type": "EditorPendingCompositionComponent",
-                    "Id": 952797371922080273
-                }
-            }
-        },
-        "Entity_[1159459292531]": {
-            "Id": "Entity_[1159459292531]",
-            "Name": "Ground",
-            "Components": {
-                "Component_[12260880513256986252]": {
-                    "$type": "EditorEntityIconComponent",
-                    "Id": 12260880513256986252
-                },
-                "Component_[13711420870643673468]": {
-                    "$type": "EditorDisabledCompositionComponent",
-                    "Id": 13711420870643673468
-                },
-                "Component_[138002849734991713]": {
-                    "$type": "EditorOnlyEntityComponent",
-                    "Id": 138002849734991713
-                },
-                "Component_[16578565737331764849]": {
-                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
-                    "Id": 16578565737331764849,
-                    "Parent Entity": "Entity_[1176639161715]"
-                },
-                "Component_[16919232076966545697]": {
-                    "$type": "EditorInspectorComponent",
-                    "Id": 16919232076966545697
-                },
-                "Component_[4228479570410194639]": {
-                    "$type": "EditorStaticRigidBodyComponent",
-                    "Id": 4228479570410194639
-                },
-                "Component_[5182430712893438093]": {
-                    "$type": "EditorMaterialComponent",
-                    "Id": 5182430712893438093
-                },
-                "Component_[5245524694917323904]": {
-                    "$type": "EditorColliderComponent",
-                    "Id": 5245524694917323904,
-                    "ColliderConfiguration": {
-                        "Position": [
-                            0.0,
-                            0.0,
-                            -0.5
-                        ],
-                        "MaterialSlots": {
-                            "Slots": [
-                                {
-                                    "Name": "Entire object"
-                                }
-                            ]
-                        }
-                    },
-                    "ShapeConfiguration": {
-                        "ShapeType": 1,
-                        "Box": {
-                            "Configuration": [
-                                512.0,
-                                512.0,
-                                1.0
-                            ]
-                        }
-                    },
-                    "DebugDrawSettings": {
-                        "LocallyEnabled": false
-                    }
-                },
-                "Component_[5675108321710651991]": {
-                    "$type": "AZ::Render::EditorMeshComponent",
-                    "Id": 5675108321710651991,
-                    "Controller": {
-                        "Configuration": {
-                            "ModelAsset": {
-                                "assetId": {
-                                    "guid": "{0CD745C0-6AA8-569A-A68A-73A3270986C4}",
-                                    "subId": 277889906
-                                },
-                                "assetHint": "objects/groudplane/groundplane_512x512m.azmodel"
-                            }
-                        }
-                    }
-                },
-                "Component_[5681893399601237518]": {
-                    "$type": "EditorEntitySortComponent",
-                    "Id": 5681893399601237518
-                },
-                "Component_[592692962543397545]": {
-                    "$type": "EditorPendingCompositionComponent",
-                    "Id": 592692962543397545
-                },
-                "Component_[7090012899106946164]": {
-                    "$type": "EditorLockComponent",
-                    "Id": 7090012899106946164
-                },
-                "Component_[9410832619875640998]": {
-                    "$type": "EditorVisibilityComponent",
-                    "Id": 9410832619875640998
-                }
-            }
-        },
-        "Entity_[1163754259827]": {
-            "Id": "Entity_[1163754259827]",
-            "Name": "Camera",
-            "Components": {
-                "Component_[11895140916889160460]": {
-                    "$type": "EditorEntityIconComponent",
-                    "Id": 11895140916889160460
-                },
-                "Component_[16880285896855930892]": {
-                    "$type": "{CA11DA46-29FF-4083-B5F6-E02C3A8C3A3D} EditorCameraComponent",
-                    "Id": 16880285896855930892,
-                    "Controller": {
-                        "Configuration": {
-                            "Field of View": 55.0
-                        }
-                    }
-                },
-                "Component_[17187464423780271193]": {
-                    "$type": "EditorLockComponent",
-                    "Id": 17187464423780271193
-                },
-                "Component_[17495696818315413311]": {
-                    "$type": "EditorEntitySortComponent",
-                    "Id": 17495696818315413311
-                },
-                "Component_[18086214374043522055]": {
-                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
-                    "Id": 18086214374043522055,
-                    "Parent Entity": "Entity_[1176639161715]",
-                    "Transform Data": {
-                        "Translate": [
-                            -2.3000001907348633,
-                            -3.9368600845336914,
-                            1.0
-                        ],
-                        "Rotate": [
-                            -2.050307512283325,
-                            1.9552897214889526,
-                            -43.623355865478516
-                        ]
-                    }
-                },
-                "Component_[2654521436129313160]": {
-                    "$type": "EditorVisibilityComponent",
-                    "Id": 2654521436129313160
-                },
-                "Component_[5265045084611556958]": {
-                    "$type": "EditorDisabledCompositionComponent",
-                    "Id": 5265045084611556958
-                },
-                "Component_[7169798125182238623]": {
-                    "$type": "EditorPendingCompositionComponent",
-                    "Id": 7169798125182238623
-                },
-                "Component_[8866210352157164042]": {
-                    "$type": "EditorInspectorComponent",
-                    "Id": 8866210352157164042
-                },
-                "Component_[9129253381063760879]": {
-                    "$type": "EditorOnlyEntityComponent",
-                    "Id": 9129253381063760879
-                }
-            }
-        },
-        "Entity_[1168049227123]": {
-            "Id": "Entity_[1168049227123]",
-            "Name": "Grid",
-            "Components": {
-                "Component_[11443347433215807130]": {
-                    "$type": "EditorEntityIconComponent",
-                    "Id": 11443347433215807130
-                },
-                "Component_[14249419413039427459]": {
-                    "$type": "EditorInspectorComponent",
-                    "Id": 14249419413039427459
-                },
-                "Component_[15448581635946161318]": {
-                    "$type": "AZ::Render::EditorGridComponent",
-                    "Id": 15448581635946161318,
-                    "Controller": {
-                        "Configuration": {
-                            "primarySpacing": 4.0,
-                            "primaryColor": [
-                                0.501960813999176,
-                                0.501960813999176,
-                                0.501960813999176
-                            ],
-                            "secondarySpacing": 0.5,
-                            "secondaryColor": [
-                                0.250980406999588,
-                                0.250980406999588,
-                                0.250980406999588
-                            ]
-                        }
-                    }
-                },
-                "Component_[1843303322527297409]": {
-                    "$type": "EditorDisabledCompositionComponent",
-                    "Id": 1843303322527297409
-                },
-                "Component_[380249072065273654]": {
-                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
-                    "Id": 380249072065273654,
-                    "Parent Entity": "Entity_[1176639161715]"
-                },
-                "Component_[7476660583684339787]": {
-                    "$type": "EditorPendingCompositionComponent",
-                    "Id": 7476660583684339787
-                },
-                "Component_[7557626501215118375]": {
-                    "$type": "EditorEntitySortComponent",
-                    "Id": 7557626501215118375
-                },
-                "Component_[7984048488947365511]": {
-                    "$type": "EditorVisibilityComponent",
-                    "Id": 7984048488947365511
-                },
-                "Component_[8118181039276487398]": {
-                    "$type": "EditorOnlyEntityComponent",
-                    "Id": 8118181039276487398
-                },
-                "Component_[9189909764215270515]": {
-                    "$type": "EditorLockComponent",
-                    "Id": 9189909764215270515
-                }
-            }
-        },
-        "Entity_[1176639161715]": {
-            "Id": "Entity_[1176639161715]",
-            "Name": "Atom Default Environment",
-            "Components": {
-                "Component_[10757302973393310045]": {
-                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
-                    "Id": 10757302973393310045,
-                    "Parent Entity": "Entity_[1146574390643]"
-                },
-                "Component_[14505817420424255464]": {
-                    "$type": "EditorInspectorComponent",
-                    "Id": 14505817420424255464,
-                    "ComponentOrderEntryArray": [
-                        {
-                            "ComponentId": 10757302973393310045
-                        }
-                    ]
-                },
-                "Component_[14988041764659020032]": {
-                    "$type": "EditorLockComponent",
-                    "Id": 14988041764659020032
-                },
-                "Component_[15900837685796817138]": {
-                    "$type": "EditorVisibilityComponent",
-                    "Id": 15900837685796817138
-                },
-                "Component_[3298767348226484884]": {
-                    "$type": "EditorOnlyEntityComponent",
-                    "Id": 3298767348226484884
-                },
-                "Component_[4076975109609220594]": {
-                    "$type": "EditorPendingCompositionComponent",
-                    "Id": 4076975109609220594
-                },
-                "Component_[5679760548946028854]": {
-                    "$type": "EditorDisabledCompositionComponent",
-                    "Id": 5679760548946028854
-                },
-                "Component_[5855590796136709437]": {
-                    "$type": "EditorEntitySortComponent",
-                    "Id": 5855590796136709437,
-                    "Child Entity Order": [
-                        "Entity_[1155164325235]",
-                        "Entity_[1180934129011]",
-                        "Entity_[1168049227123]",
-                        "Entity_[1163754259827]",
-                        "Entity_[1159459292531]"
-                    ]
-                },
-                "Component_[9277695270015777859]": {
-                    "$type": "EditorEntityIconComponent",
-                    "Id": 9277695270015777859
-                }
-            }
-        },
-        "Entity_[1180934129011]": {
-            "Id": "Entity_[1180934129011]",
-            "Name": "Global Sky",
-            "Components": {
-                "Component_[11231930600558681245]": {
-                    "$type": "AZ::Render::EditorHDRiSkyboxComponent",
-                    "Id": 11231930600558681245,
-                    "Controller": {
-                        "Configuration": {
-                            "CubemapAsset": {
-                                "assetId": {
-                                    "guid": "{215E47FD-D181-5832-B1AB-91673ABF6399}",
-                                    "subId": 1000
-                                },
-                                "assetHint": "lightingpresets/highcontrast/goegap_4k_skyboxcm.exr.streamingimage"
-                            }
-                        }
-                    }
-                },
-                "Component_[1428633914413949476]": {
-                    "$type": "EditorLockComponent",
-                    "Id": 1428633914413949476
-                },
-                "Component_[14936200426671614999]": {
-                    "$type": "AZ::Render::EditorImageBasedLightComponent",
-                    "Id": 14936200426671614999,
-                    "Controller": {
-                        "Configuration": {
-                            "diffuseImageAsset": {
-                                "assetId": {
-                                    "guid": "{3FD09945-D0F2-55C8-B9AF-B2FD421FE3BE}",
-                                    "subId": 3000
-                                },
-                                "assetHint": "lightingpresets/highcontrast/goegap_4k_iblglobalcm_ibldiffuse.exr.streamingimage"
-                            },
-                            "specularImageAsset": {
-                                "assetId": {
-                                    "guid": "{3FD09945-D0F2-55C8-B9AF-B2FD421FE3BE}",
-                                    "subId": 2000
-                                },
-                                "assetHint": "lightingpresets/highcontrast/goegap_4k_iblglobalcm_iblspecular.exr.streamingimage"
-                            }
-                        }
-                    }
-                },
-                "Component_[14994774102579326069]": {
-                    "$type": "EditorDisabledCompositionComponent",
-                    "Id": 14994774102579326069
-                },
-                "Component_[15417479889044493340]": {
-                    "$type": "EditorPendingCompositionComponent",
-                    "Id": 15417479889044493340
-                },
-                "Component_[15826613364991382688]": {
-                    "$type": "EditorEntitySortComponent",
-                    "Id": 15826613364991382688
-                },
-                "Component_[1665003113283562343]": {
-                    "$type": "EditorOnlyEntityComponent",
-                    "Id": 1665003113283562343
-                },
-                "Component_[3704934735944502280]": {
-                    "$type": "EditorEntityIconComponent",
-                    "Id": 3704934735944502280
-                },
-                "Component_[5698542331457326479]": {
-                    "$type": "EditorVisibilityComponent",
-                    "Id": 5698542331457326479
-                },
-                "Component_[6644513399057217122]": {
-                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
-                    "Id": 6644513399057217122,
-                    "Parent Entity": "Entity_[1176639161715]"
-                },
-                "Component_[931091830724002070]": {
-                    "$type": "EditorInspectorComponent",
-                    "Id": 931091830724002070
-                }
-            }
-        },
-        "Entity_[816115844527]": {
-            "Id": "Entity_[816115844527]",
-            "Name": "Spawn Point 1",
-            "Components": {
-                "EditorDisabledCompositionComponent": {
-                    "$type": "EditorDisabledCompositionComponent",
-                    "Id": 15768795079403894944
-                },
-                "EditorEntityIconComponent": {
-                    "$type": "EditorEntityIconComponent",
-                    "Id": 10186466690872068921
-                },
-                "EditorEntitySortComponent": {
-                    "$type": "EditorEntitySortComponent",
-                    "Id": 7758629294787954236
-                },
-                "EditorInspectorComponent": {
-                    "$type": "EditorInspectorComponent",
-                    "Id": 2474845680829238573
-                },
-                "EditorLockComponent": {
-                    "$type": "EditorLockComponent",
-                    "Id": 12347691053872655749
-                },
-                "EditorOnlyEntityComponent": {
-                    "$type": "EditorOnlyEntityComponent",
-                    "Id": 8779814239489391551
-                },
-                "EditorPendingCompositionComponent": {
-                    "$type": "EditorPendingCompositionComponent",
-                    "Id": 547186902430958098
-                },
-                "EditorVisibilityComponent": {
-                    "$type": "EditorVisibilityComponent",
-                    "Id": 15943980979671908948
-                },
-                "TransformComponent": {
-                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
-                    "Id": 9515082500885560574,
-                    "Parent Entity": "Entity_[1146574390643]"
-                }
-            }
-        },
-        "Entity_[820410811823]": {
-            "Id": "Entity_[820410811823]",
-            "Name": "Spawn Point 2",
-            "Components": {
-                "EditorDisabledCompositionComponent": {
-                    "$type": "EditorDisabledCompositionComponent",
-                    "Id": 15768795079403894944
-                },
-                "EditorEntityIconComponent": {
-                    "$type": "EditorEntityIconComponent",
-                    "Id": 10186466690872068921
-                },
-                "EditorEntitySortComponent": {
-                    "$type": "EditorEntitySortComponent",
-                    "Id": 7758629294787954236
-                },
-                "EditorInspectorComponent": {
-                    "$type": "EditorInspectorComponent",
-                    "Id": 2474845680829238573
-                },
-                "EditorLockComponent": {
-                    "$type": "EditorLockComponent",
-                    "Id": 12347691053872655749
-                },
-                "EditorOnlyEntityComponent": {
-                    "$type": "EditorOnlyEntityComponent",
-                    "Id": 8779814239489391551
-                },
-                "EditorPendingCompositionComponent": {
-                    "$type": "EditorPendingCompositionComponent",
-                    "Id": 547186902430958098
-                },
-                "EditorVisibilityComponent": {
-                    "$type": "EditorVisibilityComponent",
-                    "Id": 15943980979671908948
-                },
-                "TransformComponent": {
-                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
-                    "Id": 9515082500885560574,
-                    "Parent Entity": "Entity_[1146574390643]",
-                    "Transform Data": {
-                        "Translate": [
-                            1.0,
-                            0.0,
-                            0.0
-                        ]
-                    }
-                }
-            }
-        },
-        "Entity_[829000746415]": {
-            "Id": "Entity_[829000746415]",
-            "Name": "Spawn Point 3",
-            "Components": {
-                "EditorDisabledCompositionComponent": {
-                    "$type": "EditorDisabledCompositionComponent",
-                    "Id": 15768795079403894944
-                },
-                "EditorEntityIconComponent": {
-                    "$type": "EditorEntityIconComponent",
-                    "Id": 10186466690872068921
-                },
-                "EditorEntitySortComponent": {
-                    "$type": "EditorEntitySortComponent",
-                    "Id": 7758629294787954236
-                },
-                "EditorInspectorComponent": {
-                    "$type": "EditorInspectorComponent",
-                    "Id": 2474845680829238573
-                },
-                "EditorLockComponent": {
-                    "$type": "EditorLockComponent",
-                    "Id": 12347691053872655749
-                },
-                "EditorOnlyEntityComponent": {
-                    "$type": "EditorOnlyEntityComponent",
-                    "Id": 8779814239489391551
-                },
-                "EditorPendingCompositionComponent": {
-                    "$type": "EditorPendingCompositionComponent",
-                    "Id": 547186902430958098
-                },
-                "EditorVisibilityComponent": {
-                    "$type": "EditorVisibilityComponent",
-                    "Id": 15943980979671908948
-                },
-                "TransformComponent": {
-                    "$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
-                    "Id": 9515082500885560574,
-                    "Parent Entity": "Entity_[1146574390643]",
-                    "Transform Data": {
-                        "Translate": [
-                            0.0,
-                            1.0,
-                            0.0
-                        ]
-                    }
-                }
-            }
-        }
-    }
-}

+ 41 - 4
Templates/Multiplayer/Template/Registry/physxsystemconfiguration.setreg

@@ -7,6 +7,8 @@
                         "Layers": {
                             "LayerNames": [
                                 "Default",
+                                "HitVolumes",
+                                "JumpPads",
                                 {},
                                 {},
                                 {},
@@ -67,9 +69,7 @@
                                 {},
                                 {},
                                 {},
-                                {},
-                                {},
-                                {}
+                                "TouchBend"
                             ]
                         },
                         "Groups": {
@@ -80,13 +80,50 @@
                                 },
                                 {
                                     "Id": {
-                                        "GroupId": "{659C0F41-2A32-4D87-95AA-92D2FB42B6A0}"
+                                        "GroupId": "{B89BE1B7-62B5-4FE5-B58D-C91D66F7D250}"
                                     },
                                     "Name": "None",
                                     "Group": {
                                         "Mask": 0
                                     },
                                     "ReadOnly": true
+                                },
+                                {
+                                    "Id": {
+                                        "GroupId": "{CB525A65-D000-4A38-8462-CEB3EA8D3303}"
+                                    },
+                                    "Name": "All_NoTouchBend",
+                                    "Group": {
+                                        "Mask": 9223372036854775807
+                                    },
+                                    "ReadOnly": true
+                                },
+                                {
+                                    "Id": {
+                                        "GroupId": "{FE20AF05-2602-45C6-BF4D-FA497B971061}"
+                                    },
+                                    "Name": "AllButHitVolumes",
+                                    "Group": {
+                                        "Mask": 18446744073709551613
+                                    }
+                                },
+                                {
+                                    "Id": {
+                                        "GroupId": "{678782A2-7719-4E6D-AF9E-9C90843B66B7}"
+                                    },
+                                    "Name": "Players",
+                                    "Group": {
+                                        "Mask": 9223372036854775802
+                                    }
+                                },
+                                {
+                                    "Id": {
+                                        "GroupId": "{759C364D-E383-4079-8AF6-3B9DC9A4AC4B}"
+                                    },
+                                    "Name": "JumpPads",
+                                    "Group": {
+                                        "Mask": 9223372036854775804
+                                    }
                                 }
                             ]
                         }

+ 101 - 62
Templates/Multiplayer/template.json

@@ -10,10 +10,6 @@
     ],
     "icon_path": "preview.png",
     "copyFiles": [
-        {
-            "file": ".DS_Store",
-            "isTemplated": false
-        },
         {
             "file": ".command_settings",
             "isTemplated": false
@@ -27,15 +23,35 @@
             "isTemplated": false
         },
         {
-            "file": "Assets/.DS_Store",
+            "file": "Assets/Characters/Attachments/Laser_Gun/gun.fbx",
+            "isTemplated": false
+        },
+        {
+            "file": "Assets/Characters/Attachments/Laser_Gun/gun_gun.material",
+            "isTemplated": false
+        },
+        {
+            "file": "Assets/Characters/Attachments/Laser_Gun/textures/gun_low_Default_BaseColor.png",
+            "isTemplated": false
+        },
+        {
+            "file": "Assets/Characters/Attachments/Laser_Gun/textures/gun_low_Default_Emissive.png",
             "isTemplated": false
         },
         {
-            "file": "Assets/Characters/.DS_Store",
+            "file": "Assets/Characters/Attachments/Laser_Gun/textures/gun_low_Default_Height.png",
             "isTemplated": false
         },
         {
-            "file": "Assets/Characters/Mixamo/.DS_Store",
+            "file": "Assets/Characters/Attachments/Laser_Gun/textures/gun_low_Default_Metallic.png",
+            "isTemplated": false
+        },
+        {
+            "file": "Assets/Characters/Attachments/Laser_Gun/textures/gun_low_Default_Normal.png",
+            "isTemplated": false
+        },
+        {
+            "file": "Assets/Characters/Attachments/Laser_Gun/textures/gun_low_Default_Roughness.png",
             "isTemplated": false
         },
         {
@@ -450,10 +466,6 @@
             "file": "Assets/Characters/Mixamo/LICENSE.txt",
             "isTemplated": true
         },
-        {
-            "file": "Assets/Characters/Mixamo/Ybot/.DS_Store",
-            "isTemplated": false
-        },
         {
             "file": "Assets/Characters/Mixamo/Ybot/YBot.animgraph",
             "isTemplated": false
@@ -622,18 +634,34 @@
             "file": "Assets/Characters/Mixamo/readme.md",
             "isTemplated": false
         },
+        {
+            "file": "Assets/InputBindings/player.inputbindings",
+            "isTemplated": false
+        },
         {
             "file": "Assets/Prefabs/4x4x4BoxGrid.prefab",
             "isTemplated": false
         },
         {
             "file": "Assets/Prefabs/Player.prefab",
-            "isTemplated": false
+            "isTemplated": true
         },
         {
             "file": "Assets/Prefabs/laser_pistol.prefab",
             "isTemplated": false
         },
+        {
+            "file": "Assets/UI/BasicHUD/BasicHUD.uicanvas",
+            "isTemplated": false
+        },
+        {
+            "file": "Assets/UI/BasicHUD/Reticle.png",
+            "isTemplated": false
+        },
+        {
+            "file": "Assets/UI/BasicHUD/Reticle.sprite",
+            "isTemplated": false
+        },
         {
             "file": "CMakeLists.txt",
             "isTemplated": true
@@ -670,10 +698,6 @@
             "file": "Gem/${NameLower}_shared_files.cmake",
             "isTemplated": true
         },
-        {
-            "file": "Gem/.DS_Store",
-            "isTemplated": false
-        },
         {
             "file": "Gem/CMakeLists.txt",
             "isTemplated": true
@@ -698,17 +722,13 @@
             "file": "Gem/Include/${Name}/WeaponNotificationBus.h",
             "isTemplated": true
         },
-        {
-            "file": "Gem/Include/.DS_Store",
-            "isTemplated": false
-        },
         {
             "file": "Gem/Platform/Android/${NameLower}_android_files.cmake",
-            "isTemplated": true
+            "isTemplated": false
         },
         {
             "file": "Gem/Platform/Android/${NameLower}_shared_android_files.cmake",
-            "isTemplated": true
+            "isTemplated": false
         },
         {
             "file": "Gem/Platform/Android/PAL_android.cmake",
@@ -716,11 +736,11 @@
         },
         {
             "file": "Gem/Platform/Linux/${NameLower}_linux_files.cmake",
-            "isTemplated": true
+            "isTemplated": false
         },
         {
             "file": "Gem/Platform/Linux/${NameLower}_shared_linux_files.cmake",
-            "isTemplated": true
+            "isTemplated": false
         },
         {
             "file": "Gem/Platform/Linux/PAL_linux.cmake",
@@ -728,11 +748,11 @@
         },
         {
             "file": "Gem/Platform/Mac/${NameLower}_mac_files.cmake",
-            "isTemplated": true
+            "isTemplated": false
         },
         {
             "file": "Gem/Platform/Mac/${NameLower}_shared_mac_files.cmake",
-            "isTemplated": true
+            "isTemplated": false
         },
         {
             "file": "Gem/Platform/Mac/PAL_mac.cmake",
@@ -740,11 +760,11 @@
         },
         {
             "file": "Gem/Platform/Windows/${NameLower}_shared_windows_files.cmake",
-            "isTemplated": true
+            "isTemplated": false
         },
         {
             "file": "Gem/Platform/Windows/${NameLower}_windows_files.cmake",
-            "isTemplated": true
+            "isTemplated": false
         },
         {
             "file": "Gem/Platform/Windows/PAL_windows.cmake",
@@ -752,11 +772,11 @@
         },
         {
             "file": "Gem/Platform/iOS/${NameLower}_ios_files.cmake",
-            "isTemplated": true
+            "isTemplated": false
         },
         {
             "file": "Gem/Platform/iOS/${NameLower}_shared_ios_files.cmake",
-            "isTemplated": true
+            "isTemplated": false
         },
         {
             "file": "Gem/Platform/iOS/PAL_ios.cmake",
@@ -782,14 +802,6 @@
             "file": "Gem/Source/${Name}Types.h",
             "isTemplated": true
         },
-        {
-            "file": "Gem/Source/.DS_Store",
-            "isTemplated": false
-        },
-        {
-            "file": "Gem/Source/AutoGen/.DS_Store",
-            "isTemplated": false
-        },
         {
             "file": "Gem/Source/AutoGen/GameplayEffectsComponent.AutoComponent.xml",
             "isTemplated": true
@@ -826,10 +838,6 @@
             "file": "Gem/Source/AutoGen/ScriptingPlayerMovementComponent.AutoComponent.xml",
             "isTemplated": true
         },
-        {
-            "file": "Gem/Source/Components/.DS_Store",
-            "isTemplated": false
-        },
         {
             "file": "Gem/Source/Components/AttachPlayerWeaponComponent.cpp",
             "isTemplated": true
@@ -986,13 +994,9 @@
             "file": "Levels/DefaultLevel/DefaultLevel.prefab",
             "isTemplated": false
         },
-        {
-            "file": "Levels/Demo/Demo.prefab",
-            "isTemplated": false
-        },
         {
             "file": "Platform/Android/android_project.cmake",
-            "isTemplated": true
+            "isTemplated": false
         },
         {
             "file": "Platform/Android/android_project.json",
@@ -1000,7 +1004,7 @@
         },
         {
             "file": "Platform/Linux/linux_project.cmake",
-            "isTemplated": true
+            "isTemplated": false
         },
         {
             "file": "Platform/Linux/linux_project.json",
@@ -1008,7 +1012,7 @@
         },
         {
             "file": "Platform/Mac/mac_project.cmake",
-            "isTemplated": true
+            "isTemplated": false
         },
         {
             "file": "Platform/Mac/mac_project.json",
@@ -1016,7 +1020,7 @@
         },
         {
             "file": "Platform/Windows/windows_project.cmake",
-            "isTemplated": true
+            "isTemplated": false
         },
         {
             "file": "Platform/Windows/windows_project.json",
@@ -1024,7 +1028,7 @@
         },
         {
             "file": "Platform/iOS/ios_project.cmake",
-            "isTemplated": true
+            "isTemplated": false
         },
         {
             "file": "Platform/iOS/ios_project.json",
@@ -1248,11 +1252,11 @@
         },
         {
             "file": "ShaderLib/scenesrg.srgi",
-            "isTemplated": true
+            "isTemplated": false
         },
         {
             "file": "ShaderLib/viewsrg.srgi",
-            "isTemplated": true
+            "isTemplated": false
         },
         {
             "file": "autoexec.cfg",
@@ -1285,6 +1289,14 @@
         {
             "file": "project.json",
             "isTemplated": true
+        },
+        {
+            "file": "user/Registry/Platform/Windows/build_path.setreg",
+            "isTemplated": true
+        },
+        {
+            "file": "user/cmake/engine/CMakePresets.json",
+            "isTemplated": false
         }
     ],
     "createDirectories": [
@@ -1300,6 +1312,15 @@
         {
             "dir": "Assets/Characters"
         },
+        {
+            "dir": "Assets/Characters/Attachments"
+        },
+        {
+            "dir": "Assets/Characters/Attachments/Laser_Gun"
+        },
+        {
+            "dir": "Assets/Characters/Attachments/Laser_Gun/textures"
+        },
         {
             "dir": "Assets/Characters/Mixamo"
         },
@@ -1318,9 +1339,18 @@
         {
             "dir": "Assets/Characters/Mixamo/Ybot/textures"
         },
+        {
+            "dir": "Assets/InputBindings"
+        },
         {
             "dir": "Assets/Prefabs"
         },
+        {
+            "dir": "Assets/UI"
+        },
+        {
+            "dir": "Assets/UI/BasicHUD"
+        },
         {
             "dir": "Config"
         },
@@ -1375,15 +1405,6 @@
         {
             "dir": "Levels/DefaultLevel"
         },
-        {
-            "dir": "Levels/Demo"
-        },
-        {
-            "dir": "Levels/Demo/_savebackup"
-        },
-        {
-            "dir": "Levels/Demo/_savebackup/2024-07-01 [15.04.04]"
-        },
         {
             "dir": "Platform"
         },
@@ -1461,6 +1482,24 @@
         },
         {
             "dir": "cmake"
+        },
+        {
+            "dir": "user"
+        },
+        {
+            "dir": "user/Registry"
+        },
+        {
+            "dir": "user/Registry/Platform"
+        },
+        {
+            "dir": "user/Registry/Platform/Windows"
+        },
+        {
+            "dir": "user/cmake"
+        },
+        {
+            "dir": "user/cmake/engine"
         }
     ]
 }

Nem az összes módosított fájl került megjelenítésre, mert túl sok fájl változott