Преглед изворни кода

增加mapscenes statesync lockstep三个包

tanghai пре 1 година
родитељ
комит
778be8e86e
58 измењених фајлова са 1477 додато и 1 уклоњено
  1. 8 0
      Unity/Packages/com.et.lockstep/Proto.meta
  2. 67 0
      Unity/Packages/com.et.lockstep/Proto/LockStepInner_S_21001.proto
  3. 7 0
      Unity/Packages/com.et.lockstep/Proto/LockStepInner_S_21001.proto.meta
  4. 81 0
      Unity/Packages/com.et.lockstep/Proto/LockStepOuter_C_11001.proto
  5. 7 0
      Unity/Packages/com.et.lockstep/Proto/LockStepOuter_C_11001.proto.meta
  6. 5 0
      Unity/Packages/com.et.lockstep/Scenes.meta
  7. 0 0
      Unity/Packages/com.et.lockstep/Scenes/Init.unity
  8. 6 0
      Unity/Packages/com.et.lockstep/Scenes/Init.unity.meta
  9. 8 0
      Unity/Packages/com.et.lockstep/Scripts.meta
  10. 8 0
      Unity/Packages/com.et.lockstep/Scripts/LockStep.meta
  11. 22 0
      Unity/Packages/com.et.lockstep/package.json
  12. 7 0
      Unity/Packages/com.et.lockstep/package.json.meta
  13. 8 0
      Unity/Packages/com.et.mapscenes/Scenes.meta
  14. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map1.meta
  15. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map1.unity
  16. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map1.unity.meta
  17. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map1/LightingData.asset
  18. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map1/LightingData.asset.meta
  19. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map1/Lightmap-0_comp_dir.png
  20. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map1/Lightmap-0_comp_dir.png.meta
  21. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map1/Lightmap-0_comp_light.exr
  22. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map1/Lightmap-0_comp_light.exr.meta
  23. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map1/ReflectionProbe-0.exr
  24. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map1/ReflectionProbe-0.exr.meta
  25. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map1Settings.lighting
  26. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map1Settings.lighting.meta
  27. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map2.meta
  28. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map2.unity
  29. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map2.unity.meta
  30. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map2/LightingData.asset
  31. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map2/LightingData.asset.meta
  32. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map2/Lightmap-0_comp_dir.png
  33. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map2/Lightmap-0_comp_dir.png.meta
  34. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map2/Lightmap-0_comp_light.exr
  35. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map2/Lightmap-0_comp_light.exr.meta
  36. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map2/ReflectionProbe-0.exr
  37. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map2/ReflectionProbe-0.exr.meta
  38. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map2Settings.lighting
  39. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Map2Settings.lighting.meta
  40. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Mat.meta
  41. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Mat/Urp.mat
  42. 0 0
      Unity/Packages/com.et.mapscenes/Scenes/Mat/Urp.mat.meta
  43. 18 0
      Unity/Packages/com.et.mapscenes/package.json
  44. 7 0
      Unity/Packages/com.et.mapscenes/package.json.meta
  45. 8 0
      Unity/Packages/com.et.statesync/Proto.meta
  46. 0 0
      Unity/Packages/com.et.statesync/Proto/StateSyncInner_S_20001.proto
  47. 0 0
      Unity/Packages/com.et.statesync/Proto/StateSyncInner_S_20001.proto.meta
  48. 0 0
      Unity/Packages/com.et.statesync/Proto/StateSyncOuter_C_10001.proto
  49. 0 0
      Unity/Packages/com.et.statesync/Proto/StateSyncOuter_C_10001.proto.meta
  50. 0 0
      Unity/Packages/com.et.statesync/Scenes.meta
  51. 1136 0
      Unity/Packages/com.et.statesync/Scenes/Init.unity
  52. 0 0
      Unity/Packages/com.et.statesync/Scenes/Init.unity.meta
  53. 8 0
      Unity/Packages/com.et.statesync/Scripts.meta
  54. 8 0
      Unity/Packages/com.et.statesync/Scripts/StateSync.meta
  55. 22 0
      Unity/Packages/com.et.statesync/package.json
  56. 7 0
      Unity/Packages/com.et.statesync/package.json.meta
  57. 28 0
      Unity/Packages/packages-lock.json
  58. 1 1
      Unity/ProjectSettings/EditorBuildSettings.asset

+ 8 - 0
Unity/Packages/com.et.lockstep/Proto.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 2b5dffd41dead2d40913fcea0dac4a1c
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 67 - 0
Unity/Packages/com.et.lockstep/Proto/LockStepInner_S_21001.proto

@@ -0,0 +1,67 @@
+syntax = "proto3";
+package ET;
+
+/// 请求匹配
+// ResponseType Match2G_Match
+message G2Match_Match // IRequest
+{
+	int32 RpcId = 1;
+	
+	int64 Id = 2;
+}
+
+message Match2G_Match // IResponse
+{
+	int32 RpcId = 1;
+	int32 Error = 2;
+	string Message = 3;
+}
+
+// ResponseType Map2Match_GetRoom
+message Match2Map_GetRoom // IRequest
+{
+	int32 RpcId = 1;
+	repeated int64 PlayerIds = 2;
+}
+
+message Map2Match_GetRoom // IResponse
+{
+	int32 RpcId = 1;
+	int32 Error = 2;
+	string Message = 3;
+
+	/// 房间的ActorId
+	ActorId ActorId = 4;
+}
+
+// ResponseType Room2G_Reconnect
+message G2Room_Reconnect // IRequest
+{
+	int32 RpcId = 1;
+	int64 PlayerId = 2;
+}
+
+message Room2G_Reconnect // IResponse
+{
+	int32 RpcId = 1;
+	int32 Error = 2;
+	string Message = 3;
+
+	int64 StartTime = 4;
+	repeated LockStepUnitInfo UnitInfos = 5;
+	int32 Frame = 6;
+}
+
+// ResponseType Room2RoomManager_Init
+message RoomManager2Room_Init // IRequest
+{
+	int32 RpcId = 1;
+	repeated int64 PlayerIds = 2;
+}
+
+message Room2RoomManager_Init // IResponse
+{
+	int32 RpcId = 1;
+	int32 Error = 2;
+	string Message = 3;
+}

+ 7 - 0
Unity/Packages/com.et.lockstep/Proto/LockStepInner_S_21001.proto.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 2adafb641a45a4d548b1cc826aca1d6f
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 81 - 0
Unity/Packages/com.et.lockstep/Proto/LockStepOuter_C_11001.proto

@@ -0,0 +1,81 @@
+syntax = "proto3";
+package ET;
+
+// ResponseType G2C_Match
+message C2G_Match // ISessionRequest
+{
+	int32 RpcId = 1;
+}
+
+message G2C_Match // ISessionResponse
+{
+	int32 RpcId = 1;
+	int32 Error = 2;
+	string Message = 3;
+}
+
+/// 匹配成功,通知客户端切换场景
+message Match2G_NotifyMatchSuccess // IMessage
+{
+	int32 RpcId = 1;
+	/// 房间的ActorId
+	ActorId ActorId = 2;
+}
+
+/// 客户端通知房间切换场景完成
+message C2Room_ChangeSceneFinish // IRoomMessage
+{
+	int64 PlayerId = 1;
+}
+
+message LockStepUnitInfo
+{
+	int64 PlayerId = 1;
+	TrueSync.TSVector Position = 2;
+	TrueSync.TSQuaternion Rotation = 3;
+}
+
+/// 房间通知客户端进入战斗
+message Room2C_Start // IMessage
+{
+	int64 StartTime = 1;
+	repeated LockStepUnitInfo UnitInfo = 2;
+}
+
+message FrameMessage // IMessage
+{
+	int32 Frame = 1;
+	int64 PlayerId = 2;
+	LSInput Input = 3;
+}
+
+message OneFrameInputs // IMessage
+{
+	int32 Frame = 1;
+	map<int64, LSInput> Inputs = 2;
+}
+
+message Room2C_AdjustUpdateTime // IMessage
+{
+	int32 DiffTime = 1;
+}
+
+message C2Room_CheckHash // IRoomMessage
+{
+	int64 PlayerId = 1;
+	int32 Frame = 2;
+	int64 Hash = 3;
+}
+
+message Room2C_CheckHashFail // IMessage
+{
+	int32 Frame = 1;
+	bytes LSWorldBytes = 2;
+}
+
+message G2C_Reconnect // IMessage
+{
+	int64 StartTime = 1;
+	repeated LockStepUnitInfo UnitInfos = 2;
+	int32 Frame = 3;
+}

+ 7 - 0
Unity/Packages/com.et.lockstep/Proto/LockStepOuter_C_11001.proto.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 32e6c63b0256f45a19583fba46f5cfab
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 5 - 0
Unity/Packages/com.et.lockstep/Scenes.meta

@@ -0,0 +1,5 @@
+fileFormatVersion: 2
+guid: 50c8989fd4d258a4a9a7df2b3a4546c5
+folderAsset: yes
+DefaultImporter:
+  userData: 

+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Init.unity → Unity/Packages/com.et.lockstep/Scenes/Init.unity


+ 6 - 0
Unity/Packages/com.et.lockstep/Scenes/Init.unity.meta

@@ -0,0 +1,6 @@
+fileFormatVersion: 2
+guid: 9c11947f4cc79114b8b8641ce24fb34f
+DefaultImporter:
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 8 - 0
Unity/Packages/com.et.lockstep/Scripts.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 29b2004851d393d4b8b2198a48a94e31
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 8 - 0
Unity/Packages/com.et.lockstep/Scripts/LockStep.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: cc49449411da13f4ca279e20ae0c40cf
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 22 - 0
Unity/Packages/com.et.lockstep/package.json

@@ -0,0 +1,22 @@
+{
+  "name": "com.et.lockstep",
+  "displayName": "ET.LockStep",
+  "version": "0.0.1",
+  "unity": "2022.3",
+  "description": "et lockstep",
+  "author": {
+    "name": "tanghai",
+    "url": "https://github.com/egametang/ET"
+  },
+  "repository": {
+    "type": "git",
+    "url": "https://github.com/egametang/ET"
+  },
+  "relatedPackages": {},
+  "dependencies": {
+    "com.et.core": "",
+    "com.et.yooassets": "",
+    "com.et.loader": "",
+    "com.et.mapscenes": ""
+  }
+}

+ 7 - 0
Unity/Packages/com.et.lockstep/package.json.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 73f1c1e8be500d845a49eb88d2bf37e7
+PackageManifestImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 8 - 0
Unity/Packages/com.et.mapscenes/Scenes.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: e528ff0fe84cd9a4587b007cc977279a
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map1.meta → Unity/Packages/com.et.mapscenes/Scenes/Map1.meta


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map1.unity → Unity/Packages/com.et.mapscenes/Scenes/Map1.unity


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map1.unity.meta → Unity/Packages/com.et.mapscenes/Scenes/Map1.unity.meta


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map1/LightingData.asset → Unity/Packages/com.et.mapscenes/Scenes/Map1/LightingData.asset


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map1/LightingData.asset.meta → Unity/Packages/com.et.mapscenes/Scenes/Map1/LightingData.asset.meta


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map1/Lightmap-0_comp_dir.png → Unity/Packages/com.et.mapscenes/Scenes/Map1/Lightmap-0_comp_dir.png


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map1/Lightmap-0_comp_dir.png.meta → Unity/Packages/com.et.mapscenes/Scenes/Map1/Lightmap-0_comp_dir.png.meta


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map1/Lightmap-0_comp_light.exr → Unity/Packages/com.et.mapscenes/Scenes/Map1/Lightmap-0_comp_light.exr


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map1/Lightmap-0_comp_light.exr.meta → Unity/Packages/com.et.mapscenes/Scenes/Map1/Lightmap-0_comp_light.exr.meta


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map1/ReflectionProbe-0.exr → Unity/Packages/com.et.mapscenes/Scenes/Map1/ReflectionProbe-0.exr


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map1/ReflectionProbe-0.exr.meta → Unity/Packages/com.et.mapscenes/Scenes/Map1/ReflectionProbe-0.exr.meta


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map1Settings.lighting → Unity/Packages/com.et.mapscenes/Scenes/Map1Settings.lighting


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map1Settings.lighting.meta → Unity/Packages/com.et.mapscenes/Scenes/Map1Settings.lighting.meta


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map2.meta → Unity/Packages/com.et.mapscenes/Scenes/Map2.meta


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map2.unity → Unity/Packages/com.et.mapscenes/Scenes/Map2.unity


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map2.unity.meta → Unity/Packages/com.et.mapscenes/Scenes/Map2.unity.meta


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map2/LightingData.asset → Unity/Packages/com.et.mapscenes/Scenes/Map2/LightingData.asset


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map2/LightingData.asset.meta → Unity/Packages/com.et.mapscenes/Scenes/Map2/LightingData.asset.meta


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map2/Lightmap-0_comp_dir.png → Unity/Packages/com.et.mapscenes/Scenes/Map2/Lightmap-0_comp_dir.png


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map2/Lightmap-0_comp_dir.png.meta → Unity/Packages/com.et.mapscenes/Scenes/Map2/Lightmap-0_comp_dir.png.meta


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map2/Lightmap-0_comp_light.exr → Unity/Packages/com.et.mapscenes/Scenes/Map2/Lightmap-0_comp_light.exr


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map2/Lightmap-0_comp_light.exr.meta → Unity/Packages/com.et.mapscenes/Scenes/Map2/Lightmap-0_comp_light.exr.meta


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map2/ReflectionProbe-0.exr → Unity/Packages/com.et.mapscenes/Scenes/Map2/ReflectionProbe-0.exr


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map2/ReflectionProbe-0.exr.meta → Unity/Packages/com.et.mapscenes/Scenes/Map2/ReflectionProbe-0.exr.meta


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map2Settings.lighting → Unity/Packages/com.et.mapscenes/Scenes/Map2Settings.lighting


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Map2Settings.lighting.meta → Unity/Packages/com.et.mapscenes/Scenes/Map2Settings.lighting.meta


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Mat.meta → Unity/Packages/com.et.mapscenes/Scenes/Mat.meta


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Mat/Urp.mat → Unity/Packages/com.et.mapscenes/Scenes/Mat/Urp.mat


+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Mat/Urp.mat.meta → Unity/Packages/com.et.mapscenes/Scenes/Mat/Urp.mat.meta


+ 18 - 0
Unity/Packages/com.et.mapscenes/package.json

@@ -0,0 +1,18 @@
+{
+  "name": "com.et.mapscenes",
+  "displayName": "ET.MapScenes",
+  "version": "0.0.1",
+  "unity": "2022.3",
+  "description": "et mapscenes",
+  "author": {
+    "name": "tanghai",
+    "url": "https://github.com/egametang/ET"
+  },
+  "repository": {
+    "type": "git",
+    "url": "https://github.com/egametang/ET"
+  },
+  "relatedPackages": {},
+  "dependencies": {
+  }
+}

+ 7 - 0
Unity/Packages/com.et.mapscenes/package.json.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: aa670ff0b11bf044fae9aae48ea7bc53
+PackageManifestImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 8 - 0
Unity/Packages/com.et.statesync/Proto.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 539fdab8d8e5576438b32d85f15b68e5
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 0 - 0
Unity/Packages/com.et.core/Proto/InnerMessage_S_20001.proto → Unity/Packages/com.et.statesync/Proto/StateSyncInner_S_20001.proto


+ 0 - 0
Unity/Packages/com.et.core/Proto/InnerMessage_S_20001.proto.meta → Unity/Packages/com.et.statesync/Proto/StateSyncInner_S_20001.proto.meta


+ 0 - 0
Unity/Packages/com.et.core/Proto/OuterMessage_C_10001.proto → Unity/Packages/com.et.statesync/Proto/StateSyncOuter_C_10001.proto


+ 0 - 0
Unity/Packages/com.et.core/Proto/OuterMessage_C_10001.proto.meta → Unity/Packages/com.et.statesync/Proto/StateSyncOuter_C_10001.proto.meta


+ 0 - 0
Unity/Packages/com.et.loader/Scenes.meta → Unity/Packages/com.et.statesync/Scenes.meta


+ 1136 - 0
Unity/Packages/com.et.statesync/Scenes/Init.unity

@@ -0,0 +1,1136 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!29 &1
+OcclusionCullingSettings:
+  m_ObjectHideFlags: 0
+  serializedVersion: 2
+  m_OcclusionBakeSettings:
+    smallestOccluder: 5
+    smallestHole: 0.25
+    backfaceThreshold: 100
+  m_SceneGUID: 00000000000000000000000000000000
+  m_OcclusionCullingData: {fileID: 0}
+--- !u!104 &2
+RenderSettings:
+  m_ObjectHideFlags: 0
+  serializedVersion: 9
+  m_Fog: 0
+  m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
+  m_FogMode: 3
+  m_FogDensity: 0.01
+  m_LinearFogStart: 0
+  m_LinearFogEnd: 300
+  m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
+  m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
+  m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
+  m_AmbientIntensity: 1
+  m_AmbientMode: 0
+  m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
+  m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
+  m_HaloStrength: 0.5
+  m_FlareStrength: 1
+  m_FlareFadeSpeed: 3
+  m_HaloTexture: {fileID: 0}
+  m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
+  m_DefaultReflectionMode: 0
+  m_DefaultReflectionResolution: 128
+  m_ReflectionBounces: 1
+  m_ReflectionIntensity: 1
+  m_CustomReflection: {fileID: 0}
+  m_Sun: {fileID: 0}
+  m_IndirectSpecularColor: {r: 0.12731716, g: 0.13414738, b: 0.121078566, a: 1}
+  m_UseRadianceAmbientProbe: 0
+--- !u!157 &3
+LightmapSettings:
+  m_ObjectHideFlags: 0
+  serializedVersion: 12
+  m_GIWorkflowMode: 0
+  m_GISettings:
+    serializedVersion: 2
+    m_BounceScale: 1
+    m_IndirectOutputScale: 1
+    m_AlbedoBoost: 1
+    m_EnvironmentLightingMode: 0
+    m_EnableBakedLightmaps: 1
+    m_EnableRealtimeLightmaps: 1
+  m_LightmapEditorSettings:
+    serializedVersion: 12
+    m_Resolution: 2
+    m_BakeResolution: 40
+    m_AtlasSize: 1024
+    m_AO: 0
+    m_AOMaxDistance: 1
+    m_CompAOExponent: 0
+    m_CompAOExponentDirect: 0
+    m_ExtractAmbientOcclusion: 0
+    m_Padding: 2
+    m_LightmapParameters: {fileID: 0}
+    m_LightmapsBakeMode: 1
+    m_TextureCompression: 1
+    m_FinalGather: 0
+    m_FinalGatherFiltering: 1
+    m_FinalGatherRayCount: 1024
+    m_ReflectionCompression: 2
+    m_MixedBakeMode: 1
+    m_BakeBackend: 0
+    m_PVRSampling: 1
+    m_PVRDirectSampleCount: 32
+    m_PVRSampleCount: 500
+    m_PVRBounces: 2
+    m_PVREnvironmentSampleCount: 500
+    m_PVREnvironmentReferencePointCount: 2048
+    m_PVRFilteringMode: 2
+    m_PVRDenoiserTypeDirect: 0
+    m_PVRDenoiserTypeIndirect: 0
+    m_PVRDenoiserTypeAO: 0
+    m_PVRFilterTypeDirect: 0
+    m_PVRFilterTypeIndirect: 0
+    m_PVRFilterTypeAO: 0
+    m_PVREnvironmentMIS: 0
+    m_PVRCulling: 1
+    m_PVRFilteringGaussRadiusDirect: 1
+    m_PVRFilteringGaussRadiusIndirect: 5
+    m_PVRFilteringGaussRadiusAO: 2
+    m_PVRFilteringAtrousPositionSigmaDirect: 0.5
+    m_PVRFilteringAtrousPositionSigmaIndirect: 2
+    m_PVRFilteringAtrousPositionSigmaAO: 1
+    m_ExportTrainingData: 0
+    m_TrainingDataDestination: TrainingData
+    m_LightProbeSampleCountMultiplier: 4
+  m_LightingDataAsset: {fileID: 0}
+  m_LightingSettings: {fileID: 1972482029}
+--- !u!196 &4
+NavMeshSettings:
+  serializedVersion: 2
+  m_ObjectHideFlags: 0
+  m_BuildSettings:
+    serializedVersion: 3
+    agentTypeID: 0
+    agentRadius: 0.5
+    agentHeight: 2
+    agentSlope: 45
+    agentClimb: 0.4
+    ledgeDropHeight: 0
+    maxJumpAcrossDistance: 0
+    minRegionArea: 2
+    manualCellSize: 0
+    cellSize: 0.16666667
+    manualTileSize: 0
+    tileSize: 256
+    buildHeightMesh: 0
+    maxJobWorkers: 0
+    preserveTilesOutsideBounds: 0
+    debug:
+      m_Flags: 0
+  m_NavMeshData: {fileID: 0}
+--- !u!1 &251107983
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 251107984}
+  - component: {fileID: 251107987}
+  - component: {fileID: 251107986}
+  - component: {fileID: 251107985}
+  m_Layer: 0
+  m_Name: Low
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &251107984
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 251107983}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 0, y: 0, z: 0}
+  m_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 1784017108}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 0, y: 0}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 0, y: 0}
+  m_Pivot: {x: 0, y: 0}
+--- !u!114 &251107985
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 251107983}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_IgnoreReversedGraphics: 1
+  m_BlockingObjects: 0
+  m_BlockingMask:
+    serializedVersion: 2
+    m_Bits: 4294967295
+--- !u!114 &251107986
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 251107983}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_UiScaleMode: 1
+  m_ReferencePixelsPerUnit: 100
+  m_ScaleFactor: 1
+  m_ReferenceResolution: {x: 1920, y: 1080}
+  m_ScreenMatchMode: 0
+  m_MatchWidthOrHeight: 0
+  m_PhysicalUnit: 3
+  m_FallbackScreenDPI: 96
+  m_DefaultSpriteDPI: 96
+  m_DynamicPixelsPerUnit: 1
+  m_PresetInfoIsWorld: 0
+--- !u!223 &251107987
+Canvas:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 251107983}
+  m_Enabled: 1
+  serializedVersion: 3
+  m_RenderMode: 1
+  m_Camera: {fileID: 1245951406}
+  m_PlaneDistance: 100
+  m_PixelPerfect: 0
+  m_ReceivesEvents: 1
+  m_OverrideSorting: 0
+  m_OverridePixelPerfect: 0
+  m_SortingBucketNormalizedSize: 0
+  m_VertexColorAlwaysGammaSpace: 0
+  m_AdditionalShaderChannelsFlag: 0
+  m_UpdateRectTransformForStandalone: 0
+  m_SortingLayerID: 0
+  m_SortingOrder: 0
+  m_TargetDisplay: 0
+--- !u!1 &429867060
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 429867063}
+  - component: {fileID: 429867062}
+  - component: {fileID: 429867061}
+  m_Layer: 0
+  m_Name: EventSystem
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!114 &429867061
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 429867060}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_SendPointerHoverToParent: 1
+  m_HorizontalAxis: Horizontal
+  m_VerticalAxis: Vertical
+  m_SubmitButton: Submit
+  m_CancelButton: Cancel
+  m_InputActionsPerSecond: 10
+  m_RepeatDelay: 0.5
+  m_ForceModuleActive: 0
+--- !u!114 &429867062
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 429867060}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_FirstSelected: {fileID: 0}
+  m_sendNavigationEvents: 1
+  m_DragThreshold: 5
+--- !u!4 &429867063
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 429867060}
+  serializedVersion: 2
+  m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 575235020}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &493985069
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 493985070}
+  - component: {fileID: 493985073}
+  - component: {fileID: 493985072}
+  - component: {fileID: 493985071}
+  m_Layer: 0
+  m_Name: Mid
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &493985070
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 493985069}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 0, y: 0, z: 0}
+  m_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 1784017108}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 0, y: 0}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 0, y: 0}
+  m_Pivot: {x: 0, y: 0}
+--- !u!114 &493985071
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 493985069}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_IgnoreReversedGraphics: 1
+  m_BlockingObjects: 0
+  m_BlockingMask:
+    serializedVersion: 2
+    m_Bits: 4294967295
+--- !u!114 &493985072
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 493985069}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_UiScaleMode: 1
+  m_ReferencePixelsPerUnit: 100
+  m_ScaleFactor: 1
+  m_ReferenceResolution: {x: 1920, y: 1080}
+  m_ScreenMatchMode: 0
+  m_MatchWidthOrHeight: 0
+  m_PhysicalUnit: 3
+  m_FallbackScreenDPI: 96
+  m_DefaultSpriteDPI: 96
+  m_DynamicPixelsPerUnit: 1
+  m_PresetInfoIsWorld: 0
+--- !u!223 &493985073
+Canvas:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 493985069}
+  m_Enabled: 1
+  serializedVersion: 3
+  m_RenderMode: 1
+  m_Camera: {fileID: 1245951406}
+  m_PlaneDistance: 100
+  m_PixelPerfect: 0
+  m_ReceivesEvents: 1
+  m_OverrideSorting: 0
+  m_OverridePixelPerfect: 0
+  m_SortingBucketNormalizedSize: 0
+  m_VertexColorAlwaysGammaSpace: 0
+  m_AdditionalShaderChannelsFlag: 0
+  m_UpdateRectTransformForStandalone: 0
+  m_SortingLayerID: 0
+  m_SortingOrder: 10
+  m_TargetDisplay: 0
+--- !u!1 &575235018
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 575235020}
+  - component: {fileID: 575235022}
+  - component: {fileID: 575235023}
+  m_Layer: 0
+  m_Name: Global
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &575235020
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 575235018}
+  serializedVersion: 2
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children:
+  - {fileID: 429867063}
+  - {fileID: 1984349697}
+  - {fileID: 1245951402}
+  - {fileID: 1784017108}
+  - {fileID: 630054496}
+  - {fileID: 590194895}
+  m_Father: {fileID: 0}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &575235022
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 575235018}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 502d8cafd6a5a0447ab1db9a24cdcb10, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  data:
+  - key: Unit
+    gameObject: {fileID: 1610378981859644, guid: cfaf4529ce2243c4c85126e9d008897b,
+      type: 3}
+--- !u!114 &575235023
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 575235018}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3b3cb9b07d7917f4cbf5bc2be18e8585, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+--- !u!1 &590194894
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 590194895}
+  m_Layer: 0
+  m_Name: Scenes
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &590194895
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 590194894}
+  serializedVersion: 2
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 575235020}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &630054495
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 630054496}
+  m_Layer: 0
+  m_Name: Unit
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &630054496
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 630054495}
+  serializedVersion: 2
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 575235020}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &872594939
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 872594940}
+  - component: {fileID: 872594943}
+  - component: {fileID: 872594942}
+  - component: {fileID: 872594941}
+  m_Layer: 0
+  m_Name: Hidden
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &872594940
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 872594939}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 0, y: 0, z: 0}
+  m_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 1784017108}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 0, y: 0}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 0, y: 0}
+  m_Pivot: {x: 0, y: 0}
+--- !u!114 &872594941
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 872594939}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_IgnoreReversedGraphics: 1
+  m_BlockingObjects: 0
+  m_BlockingMask:
+    serializedVersion: 2
+    m_Bits: 4294967295
+--- !u!114 &872594942
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 872594939}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_UiScaleMode: 1
+  m_ReferencePixelsPerUnit: 100
+  m_ScaleFactor: 1
+  m_ReferenceResolution: {x: 1920, y: 1080}
+  m_ScreenMatchMode: 0
+  m_MatchWidthOrHeight: 0
+  m_PhysicalUnit: 3
+  m_FallbackScreenDPI: 96
+  m_DefaultSpriteDPI: 96
+  m_DynamicPixelsPerUnit: 1
+  m_PresetInfoIsWorld: 0
+--- !u!223 &872594943
+Canvas:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 872594939}
+  m_Enabled: 1
+  serializedVersion: 3
+  m_RenderMode: 1
+  m_Camera: {fileID: 1245951406}
+  m_PlaneDistance: 100
+  m_PixelPerfect: 0
+  m_ReceivesEvents: 1
+  m_OverrideSorting: 0
+  m_OverridePixelPerfect: 0
+  m_SortingBucketNormalizedSize: 0
+  m_VertexColorAlwaysGammaSpace: 0
+  m_AdditionalShaderChannelsFlag: 0
+  m_UpdateRectTransformForStandalone: 0
+  m_SortingLayerID: 0
+  m_SortingOrder: 0
+  m_TargetDisplay: 0
+--- !u!1 &1245951401
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 1245951402}
+  - component: {fileID: 1245951406}
+  - component: {fileID: 1245951405}
+  - component: {fileID: 1245951403}
+  - component: {fileID: 1245951404}
+  m_Layer: 0
+  m_Name: UICamera
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &1245951402
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1245951401}
+  serializedVersion: 2
+  m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 575235020}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!81 &1245951403
+AudioListener:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1245951401}
+  m_Enabled: 0
+--- !u!114 &1245951404
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1245951401}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_RenderShadows: 1
+  m_RequiresDepthTextureOption: 2
+  m_RequiresOpaqueTextureOption: 2
+  m_CameraType: 1
+  m_Cameras: []
+  m_RendererIndex: -1
+  m_VolumeLayerMask:
+    serializedVersion: 2
+    m_Bits: 1
+  m_VolumeTrigger: {fileID: 0}
+  m_VolumeFrameworkUpdateModeOption: 2
+  m_RenderPostProcessing: 0
+  m_Antialiasing: 0
+  m_AntialiasingQuality: 2
+  m_StopNaN: 0
+  m_Dithering: 0
+  m_ClearDepth: 1
+  m_AllowXRRendering: 1
+  m_AllowHDROutput: 1
+  m_UseScreenCoordOverride: 0
+  m_ScreenSizeOverride: {x: 0, y: 0, z: 0, w: 0}
+  m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0}
+  m_RequiresDepthTexture: 0
+  m_RequiresColorTexture: 0
+  m_Version: 2
+  m_TaaSettings:
+    quality: 3
+    frameInfluence: 0.1
+    jitterScale: 1
+    mipBias: 0
+    varianceClampScale: 0.9
+    contrastAdaptiveSharpening: 0
+--- !u!124 &1245951405
+Behaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1245951401}
+  m_Enabled: 1
+--- !u!20 &1245951406
+Camera:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1245951401}
+  m_Enabled: 1
+  serializedVersion: 2
+  m_ClearFlags: 3
+  m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0.019607844}
+  m_projectionMatrixMode: 1
+  m_GateFitMode: 2
+  m_FOVAxisMode: 0
+  m_Iso: 200
+  m_ShutterSpeed: 0.005
+  m_Aperture: 16
+  m_FocusDistance: 10
+  m_FocalLength: 50
+  m_BladeCount: 5
+  m_Curvature: {x: 2, y: 11}
+  m_BarrelClipping: 0.25
+  m_Anamorphism: 0
+  m_SensorSize: {x: 36, y: 24}
+  m_LensShift: {x: 0, y: 0}
+  m_NormalizedViewPortRect:
+    serializedVersion: 2
+    x: 0
+    y: 0
+    width: 1
+    height: 1
+  near clip plane: 0.3
+  far clip plane: 1000
+  field of view: 60
+  orthographic: 0
+  orthographic size: 5
+  m_Depth: 0
+  m_CullingMask:
+    serializedVersion: 2
+    m_Bits: 32
+  m_RenderingPath: -1
+  m_TargetTexture: {fileID: 0}
+  m_TargetDisplay: 0
+  m_TargetEye: 3
+  m_HDR: 0
+  m_AllowMSAA: 0
+  m_AllowDynamicResolution: 0
+  m_ForceIntoRT: 0
+  m_OcclusionCulling: 1
+  m_StereoConvergence: 10
+  m_StereoSeparation: 0.022
+--- !u!1 &1439952248
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 1439952249}
+  - component: {fileID: 1439952252}
+  - component: {fileID: 1439952251}
+  - component: {fileID: 1439952250}
+  m_Layer: 0
+  m_Name: High
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &1439952249
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1439952248}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 0, y: 0, z: 0}
+  m_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 1784017108}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 0, y: 0}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 0, y: 0}
+  m_Pivot: {x: 0, y: 0}
+--- !u!114 &1439952250
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1439952248}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_IgnoreReversedGraphics: 1
+  m_BlockingObjects: 0
+  m_BlockingMask:
+    serializedVersion: 2
+    m_Bits: 4294967295
+--- !u!114 &1439952251
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1439952248}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_UiScaleMode: 1
+  m_ReferencePixelsPerUnit: 100
+  m_ScaleFactor: 1
+  m_ReferenceResolution: {x: 1920, y: 1080}
+  m_ScreenMatchMode: 0
+  m_MatchWidthOrHeight: 0
+  m_PhysicalUnit: 3
+  m_FallbackScreenDPI: 96
+  m_DefaultSpriteDPI: 96
+  m_DynamicPixelsPerUnit: 1
+  m_PresetInfoIsWorld: 0
+--- !u!223 &1439952252
+Canvas:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1439952248}
+  m_Enabled: 1
+  serializedVersion: 3
+  m_RenderMode: 1
+  m_Camera: {fileID: 1245951406}
+  m_PlaneDistance: 100
+  m_PixelPerfect: 0
+  m_ReceivesEvents: 1
+  m_OverrideSorting: 0
+  m_OverridePixelPerfect: 0
+  m_SortingBucketNormalizedSize: 0
+  m_VertexColorAlwaysGammaSpace: 0
+  m_AdditionalShaderChannelsFlag: 0
+  m_UpdateRectTransformForStandalone: 0
+  m_SortingLayerID: 0
+  m_SortingOrder: 20
+  m_TargetDisplay: 0
+--- !u!1 &1784017107
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 1784017108}
+  - component: {fileID: 1784017109}
+  m_Layer: 0
+  m_Name: UI
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &1784017108
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1784017107}
+  serializedVersion: 2
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children:
+  - {fileID: 872594940}
+  - {fileID: 251107984}
+  - {fileID: 493985070}
+  - {fileID: 1439952249}
+  m_Father: {fileID: 575235020}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &1784017109
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1784017107}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 502d8cafd6a5a0447ab1db9a24cdcb10, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  data:
+  - key: Hidden
+    gameObject: {fileID: 872594939}
+  - key: Low
+    gameObject: {fileID: 251107983}
+  - key: Mid
+    gameObject: {fileID: 493985069}
+  - key: High
+    gameObject: {fileID: 1439952248}
+--- !u!850595691 &1972482029
+LightingSettings:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: Settings.lighting
+  serializedVersion: 6
+  m_GIWorkflowMode: 0
+  m_EnableBakedLightmaps: 1
+  m_EnableRealtimeLightmaps: 1
+  m_RealtimeEnvironmentLighting: 1
+  m_BounceScale: 1
+  m_AlbedoBoost: 1
+  m_IndirectOutputScale: 1
+  m_UsingShadowmask: 0
+  m_BakeBackend: 1
+  m_LightmapMaxSize: 1024
+  m_BakeResolution: 40
+  m_Padding: 2
+  m_LightmapCompression: 2
+  m_AO: 0
+  m_AOMaxDistance: 1
+  m_CompAOExponent: 0
+  m_CompAOExponentDirect: 0
+  m_ExtractAO: 0
+  m_MixedBakeMode: 1
+  m_LightmapsBakeMode: 1
+  m_FilterMode: 1
+  m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0}
+  m_ExportTrainingData: 0
+  m_TrainingDataDestination: TrainingData
+  m_RealtimeResolution: 2
+  m_ForceWhiteAlbedo: 0
+  m_ForceUpdates: 0
+  m_FinalGather: 0
+  m_FinalGatherRayCount: 1024
+  m_FinalGatherFiltering: 1
+  m_PVRCulling: 1
+  m_PVRSampling: 1
+  m_PVRDirectSampleCount: 32
+  m_PVRSampleCount: 512
+  m_PVREnvironmentSampleCount: 512
+  m_PVREnvironmentReferencePointCount: 2048
+  m_LightProbeSampleCountMultiplier: 4
+  m_PVRBounces: 2
+  m_PVRMinBounces: 2
+  m_PVREnvironmentImportanceSampling: 0
+  m_PVRFilteringMode: 2
+  m_PVRDenoiserTypeDirect: 0
+  m_PVRDenoiserTypeIndirect: 0
+  m_PVRDenoiserTypeAO: 0
+  m_PVRFilterTypeDirect: 0
+  m_PVRFilterTypeIndirect: 0
+  m_PVRFilterTypeAO: 0
+  m_PVRFilteringGaussRadiusDirect: 1
+  m_PVRFilteringGaussRadiusIndirect: 5
+  m_PVRFilteringGaussRadiusAO: 2
+  m_PVRFilteringAtrousPositionSigmaDirect: 0.5
+  m_PVRFilteringAtrousPositionSigmaIndirect: 2
+  m_PVRFilteringAtrousPositionSigmaAO: 1
+  m_PVRTiledBaking: 0
+  m_NumRaysToShootPerTexel: -1
+  m_RespectSceneVisibilityWhenBakingGI: 0
+--- !u!1 &1984349696
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 1984349697}
+  - component: {fileID: 1984349700}
+  - component: {fileID: 1984349699}
+  - component: {fileID: 1984349698}
+  m_Layer: 0
+  m_Name: MainCamera
+  m_TagString: MainCamera
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &1984349697
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1984349696}
+  serializedVersion: 2
+  m_LocalRotation: {x: 0.5, y: 0, z: 0, w: 0.8660254}
+  m_LocalPosition: {x: 2.1579952, y: 35.460117, z: -32.150215}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 575235020}
+  m_LocalEulerAnglesHint: {x: 60, y: 0, z: 0}
+--- !u!114 &1984349698
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1984349696}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_RenderShadows: 1
+  m_RequiresDepthTextureOption: 2
+  m_RequiresOpaqueTextureOption: 2
+  m_CameraType: 0
+  m_Cameras:
+  - {fileID: 1245951406}
+  m_RendererIndex: -1
+  m_VolumeLayerMask:
+    serializedVersion: 2
+    m_Bits: 1
+  m_VolumeTrigger: {fileID: 0}
+  m_VolumeFrameworkUpdateModeOption: 2
+  m_RenderPostProcessing: 0
+  m_Antialiasing: 0
+  m_AntialiasingQuality: 2
+  m_StopNaN: 0
+  m_Dithering: 0
+  m_ClearDepth: 1
+  m_AllowXRRendering: 1
+  m_AllowHDROutput: 1
+  m_UseScreenCoordOverride: 0
+  m_ScreenSizeOverride: {x: 0, y: 0, z: 0, w: 0}
+  m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0}
+  m_RequiresDepthTexture: 0
+  m_RequiresColorTexture: 0
+  m_Version: 2
+  m_TaaSettings:
+    quality: 3
+    frameInfluence: 0.1
+    jitterScale: 1
+    mipBias: 0
+    varianceClampScale: 0.9
+    contrastAdaptiveSharpening: 0
+--- !u!81 &1984349699
+AudioListener:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1984349696}
+  m_Enabled: 1
+--- !u!20 &1984349700
+Camera:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1984349696}
+  m_Enabled: 1
+  serializedVersion: 2
+  m_ClearFlags: 1
+  m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0}
+  m_projectionMatrixMode: 1
+  m_GateFitMode: 2
+  m_FOVAxisMode: 0
+  m_Iso: 200
+  m_ShutterSpeed: 0.005
+  m_Aperture: 16
+  m_FocusDistance: 10
+  m_FocalLength: 50
+  m_BladeCount: 5
+  m_Curvature: {x: 2, y: 11}
+  m_BarrelClipping: 0.25
+  m_Anamorphism: 0
+  m_SensorSize: {x: 36, y: 24}
+  m_LensShift: {x: 0, y: 0}
+  m_NormalizedViewPortRect:
+    serializedVersion: 2
+    x: 0
+    y: 0
+    width: 1
+    height: 1
+  near clip plane: 0.3
+  far clip plane: 1000
+  field of view: 60
+  orthographic: 0
+  orthographic size: 5
+  m_Depth: 0
+  m_CullingMask:
+    serializedVersion: 2
+    m_Bits: 279
+  m_RenderingPath: -1
+  m_TargetTexture: {fileID: 0}
+  m_TargetDisplay: 0
+  m_TargetEye: 3
+  m_HDR: 1
+  m_AllowMSAA: 1
+  m_AllowDynamicResolution: 0
+  m_ForceIntoRT: 0
+  m_OcclusionCulling: 1
+  m_StereoConvergence: 10
+  m_StereoSeparation: 0.022
+--- !u!1660057539 &9223372036854775807
+SceneRoots:
+  m_ObjectHideFlags: 0
+  m_Roots:
+  - {fileID: 575235020}

+ 0 - 0
Unity/Packages/com.et.loader/Scenes/Init.unity.meta → Unity/Packages/com.et.statesync/Scenes/Init.unity.meta


+ 8 - 0
Unity/Packages/com.et.statesync/Scripts.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 5e0ddec974943f148af53bcb21d69201
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 8 - 0
Unity/Packages/com.et.statesync/Scripts/StateSync.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: e85dfef56fb0a5e4c87bd2e2cb354509
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 22 - 0
Unity/Packages/com.et.statesync/package.json

@@ -0,0 +1,22 @@
+{
+  "name": "com.et.statesync",
+  "displayName": "ET.StateSync",
+  "version": "0.0.1",
+  "unity": "2022.3",
+  "description": "et statesync",
+  "author": {
+    "name": "tanghai",
+    "url": "https://github.com/egametang/ET"
+  },
+  "repository": {
+    "type": "git",
+    "url": "https://github.com/egametang/ET"
+  },
+  "relatedPackages": {},
+  "dependencies": {
+    "com.et.core": "",
+    "com.et.yooassets": "",
+    "com.et.loader": "",
+    "com.et.mapscenes": ""
+  }
+}

+ 7 - 0
Unity/Packages/com.et.statesync/package.json.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 85c1f96418fc22f4082d6d8b8aff3261
+PackageManifestImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 28 - 0
Unity/Packages/packages-lock.json

@@ -31,6 +31,34 @@
         "com.et.yooassets": ""
       }
     },
+    "com.et.lockstep": {
+      "version": "file:com.et.lockstep",
+      "depth": 0,
+      "source": "embedded",
+      "dependencies": {
+        "com.et.core": "",
+        "com.et.yooassets": "",
+        "com.et.loader": "",
+        "com.et.mapscenes": ""
+      }
+    },
+    "com.et.mapscenes": {
+      "version": "file:com.et.mapscenes",
+      "depth": 0,
+      "source": "embedded",
+      "dependencies": {}
+    },
+    "com.et.statesync": {
+      "version": "file:com.et.statesync",
+      "depth": 0,
+      "source": "embedded",
+      "dependencies": {
+        "com.et.core": "",
+        "com.et.yooassets": "",
+        "com.et.loader": "",
+        "com.et.mapscenes": ""
+      }
+    },
     "com.et.yooassets": {
       "version": "file:com.et.yooassets",
       "depth": 0,

+ 1 - 1
Unity/ProjectSettings/EditorBuildSettings.asset

@@ -6,7 +6,7 @@ EditorBuildSettings:
   serializedVersion: 2
   m_Scenes:
   - enabled: 1
-    path: Packages/com.et.loader/Scenes/Init.unity
+    path: Packages/com.et.statesync/Scenes/Init.unity
     guid: e0d691ac8c1d0454ba07089ea820e18a
   m_configObjects:
     com.unity.addressableassets: {fileID: 11400000, guid: f989b2ba24890344e858b377390e01f5,