tanghai 2 лет назад
Родитель
Сommit
f527c80ee3

+ 1 - 0
Unity/Assets/Scripts/Hotfix/Server/Demo/Scenes/Gate/C2G_LoginGateHandler.cs

@@ -62,6 +62,7 @@ namespace ET.Server
                 player.GetComponent<PlayerRoomComponent>().RoomInstanceId,
                 new G2Room_Reconnect() { PlayerId = player.Id }) as Room2G_Reconnect;
             session.Send(new G2C_Reconnect() { StartTime = room2GateReconnect.StartTime, UnitInfos = room2GateReconnect.UnitInfos, Frame = room2GateReconnect.Frame});
+            session.AddComponent<SessionPlayerComponent>().Player = player;
             player.GetComponent<PlayerSessionComponent>().Session = session;
         }
     }

+ 6 - 2
Unity/Assets/Scripts/Hotfix/Server/LockStep/Room/LSServerUpdaterSystem.cs

@@ -50,8 +50,12 @@ namespace ET.Server
                 return oneFrameInputs;
             }
 
-            OneFrameInputs preFrameInputs = frameBuffer.FrameInputs(frame - 1);
-            
+            OneFrameInputs preFrameInputs = null;
+            if (frameBuffer.CheckFrame(frame - 1))
+            {
+                preFrameInputs = frameBuffer.FrameInputs(frame - 1);    
+            }
+
             // 有人输入的消息没过来,给他使用上一帧的操作
             foreach (long playerId in room.PlayerIds)
             {

+ 0 - 1
Unity/Assets/Scripts/Hotfix/Share/LockStep/RoomSystem.cs

@@ -66,7 +66,6 @@ namespace ET
         public static void SaveLSWorld(this Room self)
         {
             int frame = self.LSWorld.Frame;
-            Log.Debug($"11111111111111111 Save world: {frame}");
             MemoryBuffer memoryBuffer = self.FrameBuffer.Snapshot(frame);
             memoryBuffer.Seek(0, SeekOrigin.Begin);
             memoryBuffer.SetLength(0);

+ 90 - 181
Unity/Assets/Scripts/Loader/Plugins/HybridCLR/Generated/AOTGenericReferences.cs

@@ -2,10 +2,7 @@ public class AOTGenericReferences : UnityEngine.MonoBehaviour
 {
 
 	// {{ AOT assemblies
-	// CommandLine.dll
 	// MemoryPack.dll
-	// MongoDB.Driver.Core.dll
-	// MongoDB.Driver.dll
 	// System.Core.dll
 	// System.Runtime.CompilerServices.Unsafe.dll
 	// System.dll
@@ -21,197 +18,136 @@ public class AOTGenericReferences : UnityEngine.MonoBehaviour
 	// }} 
 
 	// {{ AOT generic types
-	// ET.AEvent<object,ET.Server.EventType.UnitEnterSightRange>
-	// ET.AEvent<object,ET.EventType.AfterCreateClientScene>
-	// ET.AEvent<object,ET.EventType.AfterCreateCurrentScene>
+	// ET.AEvent<object,ET.EventType.LoginFinish>
 	// ET.AEvent<object,ET.EventType.SceneChangeStart>
+	// ET.AEvent<object,ET.EventType.AfterCreateCurrentScene>
+	// ET.AEvent<object,ET.EventType.AfterCreateClientScene>
+	// ET.AEvent<object,ET.EventType.EntryEvent3>
+	// ET.AEvent<object,ET.EventType.AfterUnitCreate>
 	// ET.AEvent<object,ET.Client.NetClientComponentOnRead>
 	// ET.AEvent<object,ET.EventType.SceneChangeFinish>
-	// ET.AEvent<object,ET.EventType.LoginFinish>
-	// ET.AEvent<object,ET.EventType.AppStartInitFinish>
 	// ET.AEvent<object,ET.EventType.NumbericChange>
-	// ET.AEvent<object,ET.EventType.EntryEvent2>
-	// ET.AEvent<object,ET.EventType.AfterUnitCreate>
+	// ET.AEvent<object,ET.EventType.AppStartInitFinish>
 	// ET.AEvent<object,ET.EventType.EntryEvent1>
+	// ET.AEvent<object,ET.EventType.LSSceneInitFinish>
 	// ET.AEvent<object,ET.EventType.ChangeRotation>
-	// ET.AEvent<object,ET.Server.NetServerComponentOnRead>
-	// ET.AEvent<object,ET.EventType.LSAfterUnitCreate>
 	// ET.AEvent<object,ET.EventType.LSSceneChangeStart>
-	// ET.AEvent<object,ET.EventType.LSSceneInitFinish>
-	// ET.AEvent<object,ET.Server.NetInnerComponentOnRead>
-	// ET.AEvent<object,ET.Server.EventType.UnitLeaveSightRange>
 	// ET.AEvent<object,ET.EventType.ChangePosition>
-	// ET.AEvent<object,ET.EventType.EntryEvent3>
-	// ET.AInvokeHandler<ET.ConfigComponent.GetOneConfigBytes,object>
 	// ET.AInvokeHandler<ET.ConfigComponent.GetAllConfigBytes,object>
-	// ET.AInvokeHandler<ET.Server.RobotInvokeArgs,object>
-	// ET.AInvokeHandler<ET.NavmeshComponent.RecastFileLoader,object>
+	// ET.AInvokeHandler<ET.ConfigComponent.GetOneConfigBytes,object>
 	// ET.AMHandler<object>
 	// ET.ATimer<object>
 	// ET.AwakeSystem<object>
-	// ET.AwakeSystem<object,object>
-	// ET.AwakeSystem<object,ET.Server.MailboxType>
 	// ET.AwakeSystem<object,int>
+	// ET.AwakeSystem<object,object>
 	// ET.AwakeSystem<object,System.Net.Sockets.AddressFamily>
-	// ET.AwakeSystem<object,object,int>
 	// ET.AwakeSystem<object,object,object>
-	// ET.AwakeSystem<object,long,object>
-	// ET.AwakeSystem<object,int,Unity.Mathematics.float3>
-	// ET.AwakeSystem<object,object,object,int>
+	// ET.AwakeSystem<object,object,int>
 	// ET.ConfigSingleton<object>
 	// ET.DestroySystem<object>
 	// ET.EntityRef<object>
+	// ET.ETAsyncTaskMethodBuilder<object>
+	// ET.ETAsyncTaskMethodBuilder<byte>
 	// ET.ETAsyncTaskMethodBuilder<int>
 	// ET.ETAsyncTaskMethodBuilder<System.ValueTuple<uint,object>>
-	// ET.ETAsyncTaskMethodBuilder<byte>
 	// ET.ETAsyncTaskMethodBuilder<uint>
-	// ET.ETAsyncTaskMethodBuilder<object>
-	// ET.ETAsyncTaskMethodBuilder<long>
-	// ET.ETTask<ET.WaitType.Wait_Room2C_Start>
+	// ET.ETTask<uint>
+	// ET.ETTask<byte>
 	// ET.ETTask<ET.Client.Wait_CreateMyUnit>
-	// ET.ETTask<ET.RobotCase_SecondCaseWait>
-	// ET.ETTask<object>
+	// ET.ETTask<ET.WaitType.Wait_Room2C_Start>
 	// ET.ETTask<System.ValueTuple<uint,object>>
-	// ET.ETTask<long>
-	// ET.ETTask<int>
 	// ET.ETTask<ET.Client.Wait_UnitStop>
+	// ET.ETTask<int>
+	// ET.ETTask<object>
 	// ET.ETTask<ET.Client.Wait_SceneChangeFinish>
-	// ET.ETTask<byte>
-	// ET.ETTask<uint>
-	// ET.IAwake<int>
-	// ET.IAwake<object>
 	// ET.IAwake<System.Net.Sockets.AddressFamily>
-	// ET.IAwake<ET.Server.MailboxType>
+	// ET.IAwake<object>
+	// ET.IAwake<int>
 	// ET.IAwake<object,int>
-	// ET.IAwake<long,object>
 	// ET.IAwake<object,object>
-	// ET.IAwake<int,Unity.Mathematics.float3>
-	// ET.IAwake<object,object,int>
 	// ET.LateUpdateSystem<object>
-	// ET.ListComponent<object>
-	// ET.ListComponent<long>
 	// ET.ListComponent<Unity.Mathematics.float3>
+	// ET.ListComponent<object>
 	// ET.LoadSystem<object>
 	// ET.LSUpdateSystem<object>
-	// ET.MultiMap<int,object>
 	// ET.RollbackSystem<object>
-	// ET.Server.AMActorHandler<object,object>
-	// ET.Server.AMActorLocationHandler<object,object>
-	// ET.Server.AMActorLocationRpcHandler<object,object,object>
-	// ET.Server.AMActorRpcHandler<object,object,object>
-	// ET.Server.AMRpcHandler<object,object>
 	// ET.Singleton<object>
 	// ET.UnOrderMultiMap<object,object>
 	// ET.UpdateSystem<object>
 	// MemoryPack.Formatters.ArrayFormatter<ET.LSInput>
-	// MemoryPack.Formatters.ArrayFormatter<object>
 	// MemoryPack.Formatters.ArrayFormatter<byte>
+	// MemoryPack.Formatters.ArrayFormatter<object>
 	// MemoryPack.Formatters.DictionaryFormatter<long,ET.LSInput>
 	// MemoryPack.Formatters.DictionaryFormatter<int,long>
-	// MemoryPack.Formatters.ListFormatter<long>
 	// MemoryPack.Formatters.ListFormatter<object>
+	// MemoryPack.Formatters.ListFormatter<long>
 	// MemoryPack.Formatters.ListFormatter<Unity.Mathematics.float3>
-	// MemoryPack.IMemoryPackable<object>
 	// MemoryPack.IMemoryPackable<ET.LSInput>
+	// MemoryPack.IMemoryPackable<object>
 	// MemoryPack.MemoryPackFormatter<object>
 	// MemoryPack.MemoryPackFormatter<ET.LSInput>
-	// MongoDB.Driver.IMongoCollection<object>
-	// System.Action<object>
 	// System.Action<long,int>
-	// System.Action<long,object>
 	// System.Action<long,long,object>
-	// System.Collections.Generic.Dictionary<int,long>
-	// System.Collections.Generic.Dictionary<uint,object>
-	// System.Collections.Generic.Dictionary<long,long>
+	// System.Collections.Generic.Dictionary<int,object>
 	// System.Collections.Generic.Dictionary<object,int>
 	// System.Collections.Generic.Dictionary<object,long>
-	// System.Collections.Generic.Dictionary<object,object>
-	// System.Collections.Generic.Dictionary<ushort,object>
-	// System.Collections.Generic.Dictionary<int,object>
-	// System.Collections.Generic.Dictionary<long,ET.EntityRef<object>>
-	// System.Collections.Generic.Dictionary<int,ET.RpcInfo>
-	// System.Collections.Generic.Dictionary<long,object>
 	// System.Collections.Generic.Dictionary<long,ET.LSInput>
+	// System.Collections.Generic.Dictionary<int,ET.RpcInfo>
+	// System.Collections.Generic.Dictionary<long,ET.EntityRef<object>>
+	// System.Collections.Generic.Dictionary<int,long>
+	// System.Collections.Generic.Dictionary<ushort,object>
+	// System.Collections.Generic.Dictionary<object,object>
+	// System.Collections.Generic.Dictionary.Enumerator<object,object>
 	// System.Collections.Generic.Dictionary.Enumerator<int,object>
-	// System.Collections.Generic.Dictionary.Enumerator<long,object>
 	// System.Collections.Generic.Dictionary.Enumerator<long,ET.LSInput>
-	// System.Collections.Generic.Dictionary.Enumerator<object,object>
-	// System.Collections.Generic.Dictionary.Enumerator<uint,object>
 	// System.Collections.Generic.Dictionary.Enumerator<int,long>
-	// System.Collections.Generic.Dictionary.ValueCollection<long,object>
 	// System.Collections.Generic.Dictionary.ValueCollection<int,object>
 	// System.Collections.Generic.Dictionary.ValueCollection<object,object>
 	// System.Collections.Generic.Dictionary.ValueCollection.Enumerator<int,object>
 	// System.Collections.Generic.Dictionary.ValueCollection.Enumerator<object,object>
-	// System.Collections.Generic.Dictionary.ValueCollection.Enumerator<long,object>
-	// System.Collections.Generic.HashSet<object>
 	// System.Collections.Generic.HashSet<ushort>
-	// System.Collections.Generic.HashSet<long>
-	// System.Collections.Generic.HashSet.Enumerator<long>
+	// System.Collections.Generic.HashSet<object>
 	// System.Collections.Generic.HashSet.Enumerator<object>
-	// System.Collections.Generic.KeyValuePair<int,ET.Server.ActorMessageSender>
+	// System.Collections.Generic.KeyValuePair<int,long>
 	// System.Collections.Generic.KeyValuePair<object,int>
 	// System.Collections.Generic.KeyValuePair<long,ET.LSInput>
-	// System.Collections.Generic.KeyValuePair<uint,object>
 	// System.Collections.Generic.KeyValuePair<int,object>
 	// System.Collections.Generic.KeyValuePair<long,object>
 	// System.Collections.Generic.KeyValuePair<object,object>
-	// System.Collections.Generic.KeyValuePair<int,long>
-	// System.Collections.Generic.List<int>
+	// System.Collections.Generic.List<Unity.Mathematics.float3>
 	// System.Collections.Generic.List<object>
 	// System.Collections.Generic.List<long>
-	// System.Collections.Generic.List<Unity.Mathematics.float3>
-	// System.Collections.Generic.List.Enumerator<int>
 	// System.Collections.Generic.List.Enumerator<Unity.Mathematics.float3>
-	// System.Collections.Generic.List.Enumerator<long>
 	// System.Collections.Generic.List.Enumerator<object>
+	// System.Collections.Generic.List.Enumerator<long>
 	// System.Collections.Generic.SortedDictionary<int,object>
-	// System.Collections.Generic.SortedDictionary<object,object>
-	// System.Collections.Generic.SortedDictionary<int,ET.Server.ActorMessageSender>
 	// System.Collections.Generic.SortedDictionary<long,object>
-	// System.Collections.Generic.SortedDictionary.Enumerator<long,object>
+	// System.Collections.Generic.SortedDictionary<object,object>
 	// System.Collections.Generic.SortedDictionary.Enumerator<object,object>
-	// System.Collections.Generic.SortedDictionary.Enumerator<int,ET.Server.ActorMessageSender>
-	// System.Collections.Generic.SortedDictionary.ValueCollection<object,object>
-	// System.Collections.Generic.SortedDictionary.ValueCollection<long,object>
+	// System.Collections.Generic.SortedDictionary.Enumerator<long,object>
 	// System.Collections.Generic.SortedDictionary.ValueCollection<int,object>
-	// System.Collections.Generic.SortedDictionary.ValueCollection.Enumerator<long,object>
 	// System.Collections.Generic.SortedDictionary.ValueCollection.Enumerator<int,object>
-	// System.Collections.Generic.SortedDictionary.ValueCollection.Enumerator<object,object>
 	// System.Func<object>
-	// System.Func<System.Collections.Generic.KeyValuePair<object,int>,int>
 	// System.Func<System.Collections.Generic.KeyValuePair<object,int>,object>
-	// System.Runtime.CompilerServices.TaskAwaiter<System.ValueTuple<uint,uint>>
+	// System.Func<System.Collections.Generic.KeyValuePair<object,int>,int>
 	// System.Runtime.CompilerServices.TaskAwaiter<object>
-	// System.Threading.Tasks.Task<object>
+	// System.Runtime.CompilerServices.TaskAwaiter<System.ValueTuple<uint,uint>>
 	// System.Threading.Tasks.Task<System.ValueTuple<uint,uint>>
+	// System.Threading.Tasks.Task<object>
 	// System.ValueTuple<uint,object>
 	// System.ValueTuple<uint,uint>
 	// }}
 
 	public void RefMethods()
 	{
-		// CommandLine.ParserResult<object> CommandLine.Parser.ParseArguments<object>(System.Collections.Generic.IEnumerable<string>)
-		// CommandLine.ParserResult<object> CommandLine.ParserResultExtensions.WithNotParsed<object>(CommandLine.ParserResult<object>,System.Action<System.Collections.Generic.IEnumerable<CommandLine.Error>>)
-		// CommandLine.ParserResult<object> CommandLine.ParserResultExtensions.WithParsed<object>(CommandLine.ParserResult<object>,System.Action<object>)
 		// object ET.Client.GameObjectHelper.Get<object>(UnityEngine.GameObject,string)
 		// object ET.Entity.AddChild<object,object,object>(object,object,bool)
-		// object ET.Entity.AddChild<object>(bool)
-		// object ET.Entity.AddChild<object,object,object,int>(object,object,int,bool)
-		// object ET.Entity.AddChild<object,int>(int,bool)
-		// object ET.Entity.AddChild<object,long,object>(long,object,bool)
-		// object ET.Entity.AddChild<object,object>(object,bool)
-		// object ET.Entity.AddChildWithId<object>(long,bool)
 		// object ET.Entity.AddChildWithId<object,object>(long,object,bool)
+		// object ET.Entity.AddChildWithId<object>(long,bool)
 		// object ET.Entity.AddChildWithId<object,int>(long,int,bool)
-		// object ET.Entity.AddComponent<object,object,object>(object,object,bool)
-		// object ET.Entity.AddComponent<object,object,int>(object,int,bool)
-		// object ET.Entity.AddComponent<object,int,Unity.Mathematics.float3>(int,Unity.Mathematics.float3,bool)
 		// object ET.Entity.AddComponent<object,System.Net.Sockets.AddressFamily>(System.Net.Sockets.AddressFamily,bool)
-		// object ET.Entity.AddComponent<object,int>(int,bool)
+		// object ET.Entity.AddComponent<object,object,int>(object,int,bool)
 		// object ET.Entity.AddComponent<object>(bool)
-		// object ET.Entity.AddComponent<object,object>(object,bool)
-		// object ET.Entity.AddComponent<object,ET.Server.MailboxType>(ET.Server.MailboxType,bool)
 		// object ET.Entity.AddComponentWithId<object>(long,bool)
 		// object ET.Entity.GetChild<object>(long)
 		// object ET.Entity.GetComponent<object>()
@@ -219,69 +155,57 @@ public class AOTGenericReferences : UnityEngine.MonoBehaviour
 		// System.Void ET.Entity.RemoveComponent<object>()
 		// ET.SceneType ET.EnumHelper.FromString<ET.SceneType>(string)
 		// System.Void ET.ETAsyncTaskMethodBuilder.AwaitUnsafeOnCompleted<System.Runtime.CompilerServices.TaskAwaiter<object>,object>(System.Runtime.CompilerServices.TaskAwaiter<object>&,object&)
-		// System.Void ET.ETAsyncTaskMethodBuilder.AwaitUnsafeOnCompleted<ET.ETTaskCompleted,object>(ET.ETTaskCompleted&,object&)
-		// System.Void ET.ETAsyncTaskMethodBuilder.AwaitUnsafeOnCompleted<object,object>(object&,object&)
 		// System.Void ET.ETAsyncTaskMethodBuilder.AwaitUnsafeOnCompleted<System.Runtime.CompilerServices.TaskAwaiter<System.ValueTuple<uint,uint>>,object>(System.Runtime.CompilerServices.TaskAwaiter<System.ValueTuple<uint,uint>>&,object&)
+		// System.Void ET.ETAsyncTaskMethodBuilder.AwaitUnsafeOnCompleted<object,object>(object&,object&)
+		// System.Void ET.ETAsyncTaskMethodBuilder.AwaitUnsafeOnCompleted<ET.ETTaskCompleted,object>(ET.ETTaskCompleted&,object&)
 		// System.Void ET.ETAsyncTaskMethodBuilder.Start<object>(object&)
 		// System.Void ET.ETAsyncTaskMethodBuilder<object>.AwaitUnsafeOnCompleted<object,object>(object&,object&)
+		// System.Void ET.ETAsyncTaskMethodBuilder<byte>.AwaitUnsafeOnCompleted<object,object>(object&,object&)
 		// System.Void ET.ETAsyncTaskMethodBuilder<int>.AwaitUnsafeOnCompleted<object,object>(object&,object&)
 		// System.Void ET.ETAsyncTaskMethodBuilder<object>.AwaitUnsafeOnCompleted<System.Runtime.CompilerServices.TaskAwaiter<object>,object>(System.Runtime.CompilerServices.TaskAwaiter<object>&,object&)
 		// System.Void ET.ETAsyncTaskMethodBuilder<uint>.AwaitUnsafeOnCompleted<object,object>(object&,object&)
 		// System.Void ET.ETAsyncTaskMethodBuilder<System.ValueTuple<uint,object>>.AwaitUnsafeOnCompleted<object,object>(object&,object&)
 		// System.Void ET.ETAsyncTaskMethodBuilder<object>.AwaitUnsafeOnCompleted<ET.ETTaskCompleted,object>(ET.ETTaskCompleted&,object&)
-		// System.Void ET.ETAsyncTaskMethodBuilder<long>.AwaitUnsafeOnCompleted<object,object>(object&,object&)
-		// System.Void ET.ETAsyncTaskMethodBuilder<byte>.AwaitUnsafeOnCompleted<object,object>(object&,object&)
-		// System.Void ET.ETAsyncTaskMethodBuilder<uint>.Start<object>(object&)
 		// System.Void ET.ETAsyncTaskMethodBuilder<System.ValueTuple<uint,object>>.Start<object>(object&)
 		// System.Void ET.ETAsyncTaskMethodBuilder<int>.Start<object>(object&)
-		// System.Void ET.ETAsyncTaskMethodBuilder<long>.Start<object>(object&)
+		// System.Void ET.ETAsyncTaskMethodBuilder<uint>.Start<object>(object&)
 		// System.Void ET.ETAsyncTaskMethodBuilder<byte>.Start<object>(object&)
 		// System.Void ET.ETAsyncTaskMethodBuilder<object>.Start<object>(object&)
 		// object ET.EventSystem.Invoke<ET.NavmeshComponent.RecastFileLoader,object>(ET.NavmeshComponent.RecastFileLoader)
-		// object ET.EventSystem.Invoke<ET.Server.RobotInvokeArgs,object>(int,ET.Server.RobotInvokeArgs)
+		// System.Void ET.EventSystem.Publish<object,ET.EventType.MoveStart>(object,ET.EventType.MoveStart)
+		// System.Void ET.EventSystem.Publish<object,ET.EventType.MoveStop>(object,ET.EventType.MoveStop)
+		// System.Void ET.EventSystem.Publish<object,ET.EventType.AfterUnitCreate>(object,ET.EventType.AfterUnitCreate)
+		// System.Void ET.EventSystem.Publish<object,ET.EventType.EnterMapFinish>(object,ET.EventType.EnterMapFinish)
 		// System.Void ET.EventSystem.Publish<object,ET.EventType.LSSceneInitFinish>(object,ET.EventType.LSSceneInitFinish)
-		// System.Void ET.EventSystem.Publish<object,ET.EventType.ChangePosition>(object,ET.EventType.ChangePosition)
-		// System.Void ET.EventSystem.Publish<object,ET.Server.EventType.UnitEnterSightRange>(object,ET.Server.EventType.UnitEnterSightRange)
-		// System.Void ET.EventSystem.Publish<object,ET.Server.EventType.UnitLeaveSightRange>(object,ET.Server.EventType.UnitLeaveSightRange)
-		// System.Void ET.EventSystem.Publish<object,ET.Server.NetInnerComponentOnRead>(object,ET.Server.NetInnerComponentOnRead)
-		// System.Void ET.EventSystem.Publish<object,ET.Server.NetServerComponentOnRead>(object,ET.Server.NetServerComponentOnRead)
 		// System.Void ET.EventSystem.Publish<object,ET.EventType.NumbericChange>(object,ET.EventType.NumbericChange)
-		// System.Void ET.EventSystem.Publish<object,ET.EventType.AfterUnitCreate>(object,ET.EventType.AfterUnitCreate)
 		// System.Void ET.EventSystem.Publish<object,ET.EventType.AfterCreateCurrentScene>(object,ET.EventType.AfterCreateCurrentScene)
-		// System.Void ET.EventSystem.Publish<object,ET.EventType.ChangeRotation>(object,ET.EventType.ChangeRotation)
+		// System.Void ET.EventSystem.Publish<object,ET.EventType.AfterCreateClientScene>(object,ET.EventType.AfterCreateClientScene)
 		// System.Void ET.EventSystem.Publish<object,ET.Client.NetClientComponentOnRead>(object,ET.Client.NetClientComponentOnRead)
-		// System.Void ET.EventSystem.Publish<object,ET.EventType.MoveStart>(object,ET.EventType.MoveStart)
-		// System.Void ET.EventSystem.Publish<object,ET.EventType.MoveStop>(object,ET.EventType.MoveStop)
-		// System.Void ET.EventSystem.Publish<object,ET.EventType.EnterMapFinish>(object,ET.EventType.EnterMapFinish)
-		// System.Void ET.EventSystem.Publish<object,ET.EventType.LSAfterUnitCreate>(object,ET.EventType.LSAfterUnitCreate)
-		// System.Void ET.EventSystem.Publish<object,ET.EventType.SceneChangeStart>(object,ET.EventType.SceneChangeStart)
 		// System.Void ET.EventSystem.Publish<object,ET.EventType.SceneChangeFinish>(object,ET.EventType.SceneChangeFinish)
-		// System.Void ET.EventSystem.Publish<object,ET.EventType.AfterCreateClientScene>(object,ET.EventType.AfterCreateClientScene)
+		// System.Void ET.EventSystem.Publish<object,ET.EventType.ChangeRotation>(object,ET.EventType.ChangeRotation)
+		// System.Void ET.EventSystem.Publish<object,ET.EventType.ChangePosition>(object,ET.EventType.ChangePosition)
+		// System.Void ET.EventSystem.Publish<object,ET.EventType.SceneChangeStart>(object,ET.EventType.SceneChangeStart)
+		// ET.ETTask ET.EventSystem.PublishAsync<object,ET.EventType.EntryEvent3>(object,ET.EventType.EntryEvent3)
 		// ET.ETTask ET.EventSystem.PublishAsync<object,ET.EventType.EntryEvent1>(object,ET.EventType.EntryEvent1)
-		// ET.ETTask ET.EventSystem.PublishAsync<object,ET.EventType.AppStartInitFinish>(object,ET.EventType.AppStartInitFinish)
+		// ET.ETTask ET.EventSystem.PublishAsync<object,ET.EventType.EntryEvent2>(object,ET.EventType.EntryEvent2)
 		// ET.ETTask ET.EventSystem.PublishAsync<object,ET.EventType.LoginFinish>(object,ET.EventType.LoginFinish)
+		// ET.ETTask ET.EventSystem.PublishAsync<object,ET.EventType.AppStartInitFinish>(object,ET.EventType.AppStartInitFinish)
 		// ET.ETTask ET.EventSystem.PublishAsync<object,ET.EventType.LSSceneChangeStart>(object,ET.EventType.LSSceneChangeStart)
-		// ET.ETTask ET.EventSystem.PublishAsync<object,ET.EventType.EntryEvent3>(object,ET.EventType.EntryEvent3)
-		// ET.ETTask ET.EventSystem.PublishAsync<object,ET.EventType.EntryEvent2>(object,ET.EventType.EntryEvent2)
 		// object ET.Game.AddSingleton<object>()
 		// object ET.JsonHelper.FromJson<object>(string)
 		// object ET.LSEntity.AddComponent<object>(bool)
-		// object ET.MongoHelper.Deserialize<object>(byte[])
 		// System.Void ET.MongoHelper.RegisterStruct<ET.LSInput>()
 		// object ET.NetServices.FetchMessage<object>()
 		// System.Void ET.ObjectHelper.Swap<object>(object&,object&)
-		// System.Void ET.ObjectWaitSystem.Notify<ET.Client.Wait_CreateMyUnit>(ET.ObjectWait,ET.Client.Wait_CreateMyUnit)
 		// System.Void ET.ObjectWaitSystem.Notify<ET.Client.Wait_UnitStop>(ET.ObjectWait,ET.Client.Wait_UnitStop)
-		// System.Void ET.ObjectWaitSystem.Notify<ET.RobotCase_SecondCaseWait>(ET.ObjectWait,ET.RobotCase_SecondCaseWait)
 		// System.Void ET.ObjectWaitSystem.Notify<ET.Client.Wait_SceneChangeFinish>(ET.ObjectWait,ET.Client.Wait_SceneChangeFinish)
+		// System.Void ET.ObjectWaitSystem.Notify<ET.Client.Wait_CreateMyUnit>(ET.ObjectWait,ET.Client.Wait_CreateMyUnit)
 		// System.Void ET.ObjectWaitSystem.Notify<ET.WaitType.Wait_Room2C_Start>(ET.ObjectWait,ET.WaitType.Wait_Room2C_Start)
-		// ET.ETTask<ET.RobotCase_SecondCaseWait> ET.ObjectWaitSystem.Wait<ET.RobotCase_SecondCaseWait>(ET.ObjectWait,ET.ETCancellationToken)
-		// ET.ETTask<ET.Client.Wait_CreateMyUnit> ET.ObjectWaitSystem.Wait<ET.Client.Wait_CreateMyUnit>(ET.ObjectWait,ET.ETCancellationToken)
 		// ET.ETTask<ET.Client.Wait_UnitStop> ET.ObjectWaitSystem.Wait<ET.Client.Wait_UnitStop>(ET.ObjectWait,ET.ETCancellationToken)
+		// ET.ETTask<ET.Client.Wait_CreateMyUnit> ET.ObjectWaitSystem.Wait<ET.Client.Wait_CreateMyUnit>(ET.ObjectWait,ET.ETCancellationToken)
 		// ET.ETTask<ET.WaitType.Wait_Room2C_Start> ET.ObjectWaitSystem.Wait<ET.WaitType.Wait_Room2C_Start>(ET.ObjectWait,ET.ETCancellationToken)
 		// ET.ETTask<ET.Client.Wait_SceneChangeFinish> ET.ObjectWaitSystem.Wait<ET.Client.Wait_SceneChangeFinish>(ET.ObjectWait,ET.ETCancellationToken)
 		// System.Void ET.RandomGenerator.BreakRank<object>(System.Collections.Generic.List<object>)
-		// object ET.RandomGenerator.RandomArray<object>(System.Collections.Generic.List<object>)
 		// string ET.StringHelper.ArrayToString<float>(float[])
 		// System.Collections.Generic.List<object> MemoryPack.Formatters.ListFormatter.DeserializePackable<object>(MemoryPack.MemoryPackReader&)
 		// System.Void MemoryPack.Formatters.ListFormatter.DeserializePackable<object>(MemoryPack.MemoryPackReader&,System.Collections.Generic.List<object>&)
@@ -290,88 +214,73 @@ public class AOTGenericReferences : UnityEngine.MonoBehaviour
 		// bool MemoryPack.MemoryPackFormatterProvider.IsRegistered<object>()
 		// System.Void MemoryPack.MemoryPackFormatterProvider.Register<object>(MemoryPack.MemoryPackFormatter<object>)
 		// System.Void MemoryPack.MemoryPackFormatterProvider.Register<ET.LSInput>(MemoryPack.MemoryPackFormatter<ET.LSInput>)
-		// System.Void MemoryPack.MemoryPackReader.ReadPackable<object>(object&)
 		// object MemoryPack.MemoryPackReader.ReadPackable<object>()
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,long,int,long>(byte&,long&,int&,long&)
+		// System.Void MemoryPack.MemoryPackReader.ReadPackable<object>(object&)
+		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,int,long,Unity.Mathematics.float3,Unity.Mathematics.quaternion>(byte&,int&,long&,Unity.Mathematics.float3&,Unity.Mathematics.quaternion&)
+		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<uint>(uint&)
 		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,uint>(byte&,uint&)
+		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<ET.LSInput>(ET.LSInput&)
+		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,long,int,long>(byte&,long&,int&,long&)
 		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,int,long,ET.LSInput>(byte&,int&,long&,ET.LSInput&)
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<int>(int&)
 		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<TrueSync.TSVector>(TrueSync.TSVector&)
+		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<Unity.Mathematics.quaternion,int>(Unity.Mathematics.quaternion&,int&)
 		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,long,TrueSync.TSVector,TrueSync.TSQuaternion>(byte&,long&,TrueSync.TSVector&,TrueSync.TSQuaternion&)
+		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,int,long>(byte&,int&,long&)
+		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,int,int>(byte&,int&,int&)
+		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,int>(byte&,int&)
+		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<int>(int&)
 		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<int,int>(int&,int&)
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<long,long>(long&,long&)
 		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<long>(long&)
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,long>(byte&,long&)
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,int,Unity.Mathematics.float3>(byte&,int&,Unity.Mathematics.float3&)
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,int,int,long,long,int>(byte&,int&,int&,long&,long&,int&)
 		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<TrueSync.TSQuaternion>(TrueSync.TSQuaternion&)
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<Unity.Mathematics.quaternion,int>(Unity.Mathematics.quaternion&,int&)
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,long,Unity.Mathematics.float3>(byte&,long&,Unity.Mathematics.float3&)
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<ET.LSInput>(ET.LSInput&)
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,int,long,Unity.Mathematics.float3,Unity.Mathematics.quaternion>(byte&,int&,long&,Unity.Mathematics.float3&,Unity.Mathematics.quaternion&)
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,int,int,long,long,long>(byte&,int&,int&,long&,long&,long&)
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,int,int,long,long>(byte&,int&,int&,long&,long&)
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<Unity.Mathematics.float3>(Unity.Mathematics.float3&)
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<uint>(uint&)
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,int,int,long>(byte&,int&,int&,long&)
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,int,int>(byte&,int&,int&)
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,int,long>(byte&,int&,long&)
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,int>(byte&,int&)
 		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<Unity.Mathematics.quaternion>(Unity.Mathematics.quaternion&)
+		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<long,long>(long&,long&)
+		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<Unity.Mathematics.float3>(Unity.Mathematics.float3&)
 		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,int,long,long>(byte&,int&,long&,long&)
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,long,int,int,Unity.Mathematics.float3,Unity.Mathematics.float3>(byte&,long&,int&,int&,Unity.Mathematics.float3&,Unity.Mathematics.float3&)
+		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,long,Unity.Mathematics.float3>(byte&,long&,Unity.Mathematics.float3&)
+		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,int,Unity.Mathematics.float3>(byte&,int&,Unity.Mathematics.float3&)
+		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,long>(byte&,long&)
 		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte>(byte&)
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<int,long>(int&,long&)
-		// System.Void MemoryPack.MemoryPackReader.ReadUnmanagedArray<byte>(byte[]&)
+		// System.Void MemoryPack.MemoryPackReader.ReadUnmanaged<byte,long,int,int,Unity.Mathematics.float3,Unity.Mathematics.float3>(byte&,long&,int&,int&,Unity.Mathematics.float3&,Unity.Mathematics.float3&)
 		// byte[] MemoryPack.MemoryPackReader.ReadUnmanagedArray<byte>()
+		// System.Void MemoryPack.MemoryPackReader.ReadUnmanagedArray<byte>(byte[]&)
 		// System.Void MemoryPack.MemoryPackReader.ReadValue<object>(object&)
 		// object MemoryPack.MemoryPackReader.ReadValue<object>()
 		// System.Void MemoryPack.MemoryPackWriter.WritePackable<object>(object&)
-		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanaged<long>(long&)
-		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanaged<int,long>(int&,long&)
+		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanaged<Unity.Mathematics.quaternion,int>(Unity.Mathematics.quaternion&,int&)
 		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanaged<long,long>(long&,long&)
-		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanaged<int>(int&)
 		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanaged<ET.LSInput>(ET.LSInput&)
-		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanaged<Unity.Mathematics.quaternion,int>(Unity.Mathematics.quaternion&,int&)
+		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanaged<int>(int&)
+		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanaged<long>(long&)
 		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedArray<byte>(byte[])
-		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,int,int,long>(byte,byte&,int&,int&,long&)
-		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,long,Unity.Mathematics.float3>(byte,byte&,long&,Unity.Mathematics.float3&)
 		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,long,TrueSync.TSVector,TrueSync.TSQuaternion>(byte,byte&,long&,TrueSync.TSVector&,TrueSync.TSQuaternion&)
-		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,int,long,Unity.Mathematics.float3,Unity.Mathematics.quaternion>(byte,byte&,int&,long&,Unity.Mathematics.float3&,Unity.Mathematics.quaternion&)
-		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,int,Unity.Mathematics.float3>(byte,byte&,int&,Unity.Mathematics.float3&)
-		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,int,int,long,long,int>(byte,byte&,int&,int&,long&,long&,int&)
-		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,int,int,long,long>(byte,byte&,int&,int&,long&,long&)
-		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,int,long>(byte,byte&,int&,long&)
+		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,long,Unity.Mathematics.float3>(byte,byte&,long&,Unity.Mathematics.float3&)
 		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,int,int>(byte,byte&,int&,int&)
 		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,long>(byte,byte&,long&)
-		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,long,int,int,Unity.Mathematics.float3,Unity.Mathematics.float3>(byte,byte&,long&,int&,int&,Unity.Mathematics.float3&,Unity.Mathematics.float3&)
-		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte>(byte,byte&)
+		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,int,long>(byte,byte&,int&,long&)
 		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,int>(byte,byte&,int&)
+		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<int,int>(byte,int&,int&)
+		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte>(byte,byte&)
+		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,int,long,ET.LSInput>(byte,byte&,int&,long&,ET.LSInput&)
 		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,int,long,long>(byte,byte&,int&,long&,long&)
-		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,uint>(byte,byte&,uint&)
 		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,long,int,long>(byte,byte&,long&,int&,long&)
-		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,int,long,ET.LSInput>(byte,byte&,int&,long&,ET.LSInput&)
-		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<int,int>(byte,int&,int&)
-		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,int,int,long,long,long>(byte,byte&,int&,int&,long&,long&,long&)
+		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,long,int,int,Unity.Mathematics.float3,Unity.Mathematics.float3>(byte,byte&,long&,int&,int&,Unity.Mathematics.float3&,Unity.Mathematics.float3&)
+		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,int,long,Unity.Mathematics.float3,Unity.Mathematics.quaternion>(byte,byte&,int&,long&,Unity.Mathematics.float3&,Unity.Mathematics.quaternion&)
+		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,uint>(byte,byte&,uint&)
+		// System.Void MemoryPack.MemoryPackWriter.WriteUnmanagedWithObjectHeader<byte,int,Unity.Mathematics.float3>(byte,byte&,int&,Unity.Mathematics.float3&)
 		// System.Void MemoryPack.MemoryPackWriter.WriteValue<object>(object&)
-		// System.Threading.Tasks.Task<object> MongoDB.Driver.IAsyncCursorExtensions.FirstOrDefaultAsync<object>(MongoDB.Driver.IAsyncCursor<object>,System.Threading.CancellationToken)
-		// System.Threading.Tasks.Task<MongoDB.Driver.IAsyncCursor<object>> MongoDB.Driver.IMongoCollectionExtensions.FindAsync<object>(MongoDB.Driver.IMongoCollection<object>,System.Linq.Expressions.Expression<System.Func<object,bool>>,MongoDB.Driver.FindOptions<object,object>,System.Threading.CancellationToken)
-		// System.Threading.Tasks.Task<MongoDB.Driver.ReplaceOneResult> MongoDB.Driver.IMongoCollectionExtensions.ReplaceOneAsync<object>(MongoDB.Driver.IMongoCollection<object>,System.Linq.Expressions.Expression<System.Func<object,bool>>,object,MongoDB.Driver.ReplaceOptions,System.Threading.CancellationToken)
-		// MongoDB.Driver.IMongoCollection<object> MongoDB.Driver.IMongoDatabase.GetCollection<object>(string,MongoDB.Driver.MongoCollectionSettings)
 		// object ReferenceCollector.Get<object>(string)
 		// object[] System.Array.Empty<object>()
-		// int System.HashCode.Combine<TrueSync.TSVector2,int>(TrueSync.TSVector2,int)
 		// int System.HashCode.Combine<object>(object)
+		// int System.HashCode.Combine<TrueSync.TSVector2,int>(TrueSync.TSVector2,int)
 		// System.Linq.IOrderedEnumerable<System.Collections.Generic.KeyValuePair<object,int>> System.Linq.Enumerable.OrderBy<System.Collections.Generic.KeyValuePair<object,int>,int>(System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<object,int>>,System.Func<System.Collections.Generic.KeyValuePair<object,int>,int>)
 		// System.Collections.Generic.IEnumerable<object> System.Linq.Enumerable.Select<System.Collections.Generic.KeyValuePair<object,int>,object>(System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<object,int>>,System.Func<System.Collections.Generic.KeyValuePair<object,int>,object>)
-		// ET.RpcInfo[] System.Linq.Enumerable.ToArray<ET.RpcInfo>(System.Collections.Generic.IEnumerable<ET.RpcInfo>)
 		// object[] System.Linq.Enumerable.ToArray<object>(System.Collections.Generic.IEnumerable<object>)
-		// System.Linq.Expressions.Expression<object> System.Linq.Expressions.Expression.Lambda<object>(System.Linq.Expressions.Expression,System.Linq.Expressions.ParameterExpression[])
+		// ET.RpcInfo[] System.Linq.Enumerable.ToArray<ET.RpcInfo>(System.Collections.Generic.IEnumerable<ET.RpcInfo>)
 		// object& System.Runtime.CompilerServices.Unsafe.AsRef<object>(object&)
 		// System.Threading.Tasks.Task<object> System.Threading.Tasks.TaskFactory.StartNew<object>(System.Func<object>,System.Threading.CancellationToken)
 		// object UnityEngine.GameObject.GetComponent<object>()
-		// object UnityEngine.Object.Instantiate<object>(object,UnityEngine.Transform,bool)
 		// object UnityEngine.Object.Instantiate<object>(object,UnityEngine.Transform)
+		// object UnityEngine.Object.Instantiate<object>(object,UnityEngine.Transform,bool)
 		// object UnityEngine.Resources.Load<object>(string)
 	}
 }

+ 0 - 62
Unity/Assets/Scripts/Loader/Plugins/HybridCLR/Generated/link.xml

@@ -1,12 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <linker>
-  <assembly fullname="CommandLine">
-    <type fullname="CommandLine.Error" preserve="all" />
-    <type fullname="CommandLine.OptionAttribute" preserve="all" />
-    <type fullname="CommandLine.Parser" preserve="all" />
-    <type fullname="CommandLine.ParserResult`1" preserve="all" />
-    <type fullname="CommandLine.ParserResultExtensions" preserve="all" />
-  </assembly>
   <assembly fullname="MemoryPack">
     <type fullname="MemoryPack.Formatters.ArrayFormatter`1" preserve="all" />
     <type fullname="MemoryPack.Formatters.DictionaryFormatter`2" preserve="all" />
@@ -30,29 +23,8 @@
     <type fullname="MongoDB.Bson.Serialization.Attributes.BsonIgnoreAttribute" preserve="all" />
     <type fullname="MongoDB.Bson.Serialization.Options.DictionaryRepresentation" preserve="all" />
   </assembly>
-  <assembly fullname="MongoDB.Driver">
-    <type fullname="MongoDB.Driver.DeleteResult" preserve="all" />
-    <type fullname="MongoDB.Driver.FilterDefinition`1" preserve="all" />
-    <type fullname="MongoDB.Driver.FindOptions`2" preserve="all" />
-    <type fullname="MongoDB.Driver.IMongoCollection`1" preserve="all" />
-    <type fullname="MongoDB.Driver.IMongoCollectionExtensions" preserve="all" />
-    <type fullname="MongoDB.Driver.IMongoDatabase" preserve="all" />
-    <type fullname="MongoDB.Driver.InsertManyOptions" preserve="all" />
-    <type fullname="MongoDB.Driver.JsonFilterDefinition`1" preserve="all" />
-    <type fullname="MongoDB.Driver.MongoClient" preserve="all" />
-    <type fullname="MongoDB.Driver.MongoClientBase" preserve="all" />
-    <type fullname="MongoDB.Driver.MongoCollectionSettings" preserve="all" />
-    <type fullname="MongoDB.Driver.MongoDatabaseSettings" preserve="all" />
-    <type fullname="MongoDB.Driver.ReplaceOneResult" preserve="all" />
-    <type fullname="MongoDB.Driver.ReplaceOptions" preserve="all" />
-  </assembly>
-  <assembly fullname="MongoDB.Driver.Core">
-    <type fullname="MongoDB.Driver.IAsyncCursor`1" preserve="all" />
-    <type fullname="MongoDB.Driver.IAsyncCursorExtensions" preserve="all" />
-  </assembly>
   <assembly fullname="mscorlib">
     <type fullname="System.Action" preserve="all" />
-    <type fullname="System.Action`1" preserve="all" />
     <type fullname="System.Action`2" preserve="all" />
     <type fullname="System.Action`3" preserve="all" />
     <type fullname="System.Activator" preserve="all" />
@@ -71,7 +43,6 @@
     <type fullname="System.Collections.Generic.KeyValuePair`2" preserve="all" />
     <type fullname="System.Collections.Generic.List`1" preserve="all" />
     <type fullname="System.Collections.Generic.List`1/Enumerator" preserve="all" />
-    <type fullname="System.Collections.IList" preserve="all" />
     <type fullname="System.Console" preserve="all" />
     <type fullname="System.Diagnostics.ConditionalAttribute" preserve="all" />
     <type fullname="System.Diagnostics.DebuggableAttribute" preserve="all" />
@@ -98,12 +69,8 @@
     <type fullname="System.Math" preserve="all" />
     <type fullname="System.NotImplementedException" preserve="all" />
     <type fullname="System.Object" preserve="all" />
-    <type fullname="System.ObjectDisposedException" preserve="all" />
     <type fullname="System.Reflection.DefaultMemberAttribute" preserve="all" />
-    <type fullname="System.Reflection.FieldInfo" preserve="all" />
     <type fullname="System.Reflection.MemberInfo" preserve="all" />
-    <type fullname="System.Reflection.MethodBase" preserve="all" />
-    <type fullname="System.Reflection.MethodInfo" preserve="all" />
     <type fullname="System.Runtime.CompilerServices.AsyncStateMachineAttribute" preserve="all" />
     <type fullname="System.Runtime.CompilerServices.CompilationRelaxationsAttribute" preserve="all" />
     <type fullname="System.Runtime.CompilerServices.CompilerGeneratedAttribute" preserve="all" />
@@ -112,13 +79,9 @@
     <type fullname="System.Runtime.CompilerServices.IsReadOnlyAttribute" preserve="all" />
     <type fullname="System.Runtime.CompilerServices.RuntimeCompatibilityAttribute" preserve="all" />
     <type fullname="System.Runtime.CompilerServices.RuntimeHelpers" preserve="all" />
-    <type fullname="System.Runtime.CompilerServices.TaskAwaiter" preserve="all" />
     <type fullname="System.Runtime.CompilerServices.TaskAwaiter`1" preserve="all" />
-    <type fullname="System.Runtime.InteropServices.OSPlatform" preserve="all" />
-    <type fullname="System.Runtime.InteropServices.RuntimeInformation" preserve="all" />
     <type fullname="System.Runtime.Versioning.TargetFrameworkAttribute" preserve="all" />
     <type fullname="System.RuntimeFieldHandle" preserve="all" />
-    <type fullname="System.RuntimeMethodHandle" preserve="all" />
     <type fullname="System.RuntimeTypeHandle" preserve="all" />
     <type fullname="System.Security.Permissions.SecurityAction" preserve="all" />
     <type fullname="System.Security.Permissions.SecurityPermissionAttribute" preserve="all" />
@@ -126,7 +89,6 @@
     <type fullname="System.Single" preserve="all" />
     <type fullname="System.String" preserve="all" />
     <type fullname="System.StringSplitOptions" preserve="all" />
-    <type fullname="System.Text.Encoding" preserve="all" />
     <type fullname="System.Text.StringBuilder" preserve="all" />
     <type fullname="System.Threading.CancellationToken" preserve="all" />
     <type fullname="System.Threading.CancellationTokenSource" preserve="all" />
@@ -144,15 +106,7 @@
     <type fullname="System.Collections.Generic.SortedDictionary`2/Enumerator" preserve="all" />
     <type fullname="System.Collections.Generic.SortedDictionary`2/ValueCollection" preserve="all" />
     <type fullname="System.Collections.Generic.SortedDictionary`2/ValueCollection/Enumerator" preserve="all" />
-    <type fullname="System.ComponentModel.ISupportInitialize" preserve="all" />
-    <type fullname="System.Diagnostics.Process" preserve="all" />
     <type fullname="System.Net.EndPoint" preserve="all" />
-    <type fullname="System.Net.HttpListener" preserve="all" />
-    <type fullname="System.Net.HttpListenerContext" preserve="all" />
-    <type fullname="System.Net.HttpListenerException" preserve="all" />
-    <type fullname="System.Net.HttpListenerPrefixCollection" preserve="all" />
-    <type fullname="System.Net.HttpListenerRequest" preserve="all" />
-    <type fullname="System.Net.HttpListenerResponse" preserve="all" />
     <type fullname="System.Net.IPAddress" preserve="all" />
     <type fullname="System.Net.IPEndPoint" preserve="all" />
     <type fullname="System.Net.Sockets.AddressFamily" preserve="all" />
@@ -160,18 +114,11 @@
     <type fullname="System.Net.Sockets.Socket" preserve="all" />
     <type fullname="System.Net.Sockets.SocketFlags" preserve="all" />
     <type fullname="System.Net.Sockets.SocketType" preserve="all" />
-    <type fullname="System.Uri" preserve="all" />
   </assembly>
   <assembly fullname="System.Core">
     <type fullname="System.Collections.Generic.HashSet`1" preserve="all" />
     <type fullname="System.Collections.Generic.HashSet`1/Enumerator" preserve="all" />
     <type fullname="System.Linq.Enumerable" preserve="all" />
-    <type fullname="System.Linq.Expressions.BinaryExpression" preserve="all" />
-    <type fullname="System.Linq.Expressions.ConstantExpression" preserve="all" />
-    <type fullname="System.Linq.Expressions.Expression" preserve="all" />
-    <type fullname="System.Linq.Expressions.Expression`1" preserve="all" />
-    <type fullname="System.Linq.Expressions.MemberExpression" preserve="all" />
-    <type fullname="System.Linq.Expressions.ParameterExpression" preserve="all" />
     <type fullname="System.Linq.IOrderedEnumerable`1" preserve="all" />
   </assembly>
   <assembly fullname="System.Net.Http">
@@ -185,13 +132,11 @@
   <assembly fullname="Unity.Core">
     <type fullname="ET.AEvent`2" preserve="all" />
     <type fullname="ET.AInvokeHandler`2" preserve="all" />
-    <type fullname="ET.AppType" preserve="all" />
     <type fullname="ET.AService" preserve="all" />
     <type fullname="ET.ATimer`1" preserve="all" />
     <type fullname="ET.AwakeSystem`1" preserve="all" />
     <type fullname="ET.AwakeSystem`2" preserve="all" />
     <type fullname="ET.AwakeSystem`3" preserve="all" />
-    <type fullname="ET.AwakeSystem`4" preserve="all" />
     <type fullname="ET.BaseAttribute" preserve="all" />
     <type fullname="ET.ByteHelper" preserve="all" />
     <type fullname="ET.ChildOfAttribute" preserve="all" />
@@ -205,8 +150,6 @@
     <type fullname="ET.CoroutineLockComponent" preserve="all" />
     <type fullname="ET.DestroySystem`1" preserve="all" />
     <type fullname="ET.DisposeObject" preserve="all" />
-    <type fullname="ET.EnableAccessEntiyChildAttribute" preserve="all" />
-    <type fullname="ET.EnableClassAttribute" preserve="all" />
     <type fullname="ET.EnableMethodAttribute" preserve="all" />
     <type fullname="ET.Entity" preserve="all" />
     <type fullname="ET.EntityRef`1" preserve="all" />
@@ -229,7 +172,6 @@
     <type fullname="ET.ILateUpdate" preserve="all" />
     <type fullname="ET.ILoad" preserve="all" />
     <type fullname="ET.IMerge" preserve="all" />
-    <type fullname="ET.InstanceIdStruct" preserve="all" />
     <type fullname="ET.InvokeAttribute" preserve="all" />
     <type fullname="ET.IScene" preserve="all" />
     <type fullname="ET.ISerializeToEntity" preserve="all" />
@@ -250,14 +192,11 @@
     <type fullname="ET.MessageAttribute" preserve="all" />
     <type fullname="ET.MessageObject" preserve="all" />
     <type fullname="ET.MongoHelper" preserve="all" />
-    <type fullname="ET.MultiMap`2" preserve="all" />
     <type fullname="ET.NetServices" preserve="all" />
     <type fullname="ET.NetworkHelper" preserve="all" />
-    <type fullname="ET.NetworkProtocol" preserve="all" />
     <type fullname="ET.Object" preserve="all" />
     <type fullname="ET.ObjectHelper" preserve="all" />
     <type fullname="ET.Options" preserve="all" />
-    <type fullname="ET.ProcessHelper" preserve="all" />
     <type fullname="ET.ProtoObject" preserve="all" />
     <type fullname="ET.RandomGenerator" preserve="all" />
     <type fullname="ET.Root" preserve="all" />
@@ -275,7 +214,6 @@
     <type fullname="ET.TimeHelper" preserve="all" />
     <type fullname="ET.TimeInfo" preserve="all" />
     <type fullname="ET.TimerComponent" preserve="all" />
-    <type fullname="ET.TService" preserve="all" />
     <type fullname="ET.TypeSystems" preserve="all" />
     <type fullname="ET.TypeSystems/OneTypeSystems" preserve="all" />
     <type fullname="ET.UniqueIdAttribute" preserve="all" />

+ 1 - 1
Unity/Assets/Scripts/Model/Share/LockStep/FrameBuffer.cs

@@ -60,7 +60,7 @@ namespace ET
         {
             if (!CheckFrame(frame))
             {
-                throw new Exception($"frame out: {frame}, maxframe: {frame}");
+                throw new Exception($"frame out: {frame}, maxframe: {this.MaxFrame}");
             }
         }