├── Client.Unity
├── DataAndTools
│ ├── .gitignore
│ ├── bin
│ │ ├── EPPlus.dll
│ │ ├── Tools.ExcelHelper.dll
│ │ ├── Tools.ExcelParser.dll
│ │ ├── Tools.ExcelParser.exe
│ │ ├── Engine.LockstepEngine.dll
│ │ ├── Server.SimpleServer.dll
│ │ ├── Tools.CopySourceFiles.dll
│ │ ├── Tools.MacroExpansion.dll
│ │ ├── Pure.Engine.LockstepEngine.dll
│ │ ├── Tools.UnsafeECSGenerator.dll
│ │ ├── Tools.UnsafeECS.ECDefine.Game.dll
│ │ ├── Server.SimpleServer.runtimeconfig.json
│ │ ├── Server.SimpleServer.runtimeconfig.dev.json
│ │ ├── Tools.UnsafeECS.ECDefine.Game.deps.json
│ │ └── Server.SimpleServer.deps.json
│ ├── Tools
│ │ ├── ExcelParser
│ │ ├── UnsafeECSCodeGen
│ │ ├── UpdateAndCodeGen
│ │ ├── ExcelParser.sh
│ │ ├── UpdateAndCodeGen.sh
│ │ ├── UpdateAndCodeGen_Win.sh
│ │ └── UnsafeECSCodeGen.sh
│ ├── Data
│ │ ├── Client
│ │ │ ├── Maps
│ │ │ │ ├── 1.bytes
│ │ │ │ └── 2.bytes
│ │ │ ├── GameConfig.bytes
│ │ │ ├── ExcelBytes
│ │ │ │ ├── Assets.bytes
│ │ │ │ └── ConfigBullet.bytes
│ │ │ ├── TileIDMap.txt
│ │ │ └── AssetPath.json
│ │ ├── Designer
│ │ │ └── Excels
│ │ │ │ ├── Assets.xlsx
│ │ │ │ └── EntityConfig
│ │ │ │ └── ConfigBullet.xls
│ │ └── Server
│ │ │ └── Config.json
│ ├── Src
│ │ ├── Tools.UnsafeECS.ECSOutput
│ │ │ ├── .gitignore
│ │ │ ├── Tools.UnsafeECS.ECSOutput.csproj
│ │ │ └── Src
│ │ │ │ └── Generated
│ │ │ │ └── Model
│ │ │ │ └── CodeGen_Service_Entity.cs
│ │ ├── Tools.UnsafeECS.ECDefine.Game
│ │ │ ├── Src
│ │ │ │ ├── Unsafe
│ │ │ │ │ ├── Enum.cs
│ │ │ │ │ ├── Event.cs
│ │ │ │ │ ├── Collision.cs
│ │ │ │ │ ├── Service.cs
│ │ │ │ │ ├── System.cs
│ │ │ │ │ ├── Entity.cs
│ │ │ │ │ ├── Component.cs
│ │ │ │ │ └── Status.cs
│ │ │ │ └── BuildIn
│ │ │ │ │ ├── BuildIn_Components.cs
│ │ │ │ │ └── BuildIn_Services.cs
│ │ │ └── Tools.UnsafeECS.ECDefine.Game.csproj
│ │ └── Server.SimpleServer
│ │ │ ├── Src
│ │ │ ├── Server
│ │ │ │ ├── HashCodeMatcher.cs
│ │ │ │ ├── Player.cs
│ │ │ │ └── MessagePacker.cs
│ │ │ └── ServerLauncher.cs
│ │ │ └── Server.SimpleServer.csproj
│ ├── Config
│ │ ├── UnsafeECSGenerator
│ │ │ ├── View
│ │ │ │ └── EncTemplateFile.tfbytes
│ │ │ ├── Model
│ │ │ │ └── EncTemplateFile.tfbytes
│ │ │ ├── MacroDefine.json
│ │ │ ├── ModelConfig.json
│ │ │ └── ViewConfig.json
│ │ ├── ExcelParser
│ │ │ ├── Config.json
│ │ │ ├── Output
│ │ │ │ ├── Csv
│ │ │ │ │ ├── ConfigBullet.csv
│ │ │ │ │ └── Assets.csv
│ │ │ │ └── CodeCS
│ │ │ │ │ ├── Table_Assets.cs
│ │ │ │ │ └── Table_ConfigBullet.cs
│ │ │ └── CSTemplate.txt
│ │ └── CopySourceFiles
│ │ │ ├── Unity2ECSDefine.json
│ │ │ ├── Unity2Csproj.json
│ │ │ └── Csproj2Unity.json
│ └── Game.sln
├── Assets
│ ├── LockstepECS
│ │ ├── Scripts
│ │ │ ├── ResScripts
│ │ │ │ ├── MonoProxy
│ │ │ │ │ ├── MonoProxyMoverView.cs
│ │ │ │ │ ├── MonoProxyHotfixScript.cs
│ │ │ │ │ ├── MonoProxyHotfixScript.cs.meta
│ │ │ │ │ ├── MonoProxyMainScript.cs.meta
│ │ │ │ │ ├── MonoProxyCollisionSystemDebuger.cs.meta
│ │ │ │ │ ├── MonoProxySpriteEffect.cs
│ │ │ │ │ ├── MonoProxyCollisionSystemDebuger.cs
│ │ │ │ │ ├── MonoProxyReferenceHolder.cs
│ │ │ │ │ ├── MonoProxyMainScript.cs
│ │ │ │ │ ├── MonoProxyMoverView.cs.meta
│ │ │ │ │ ├── MonoProxyReferenceHolder.cs.meta
│ │ │ │ │ └── MonoProxySpriteEffect.cs.meta
│ │ │ │ ├── MonoProxy.meta
│ │ │ │ ├── UnityGameViewConfig.cs
│ │ │ │ ├── UnityGameConfig.cs.meta
│ │ │ │ ├── UnityGameViewConfig.cs.meta
│ │ │ │ └── UnityGameConfig.cs
│ │ │ ├── CameraMono.cs.meta
│ │ │ ├── Editor
│ │ │ │ ├── EditorMainScript.cs.meta
│ │ │ │ ├── EditorMonoProxyReferenceHolder.cs.meta
│ │ │ │ ├── EditorMonoProxyReferenceHolder.cs
│ │ │ │ ├── EditorCollisionSystem.cs.meta
│ │ │ │ └── EditorMainScript.cs
│ │ │ ├── Editor.meta
│ │ │ ├── ResScripts.meta
│ │ │ └── CameraMono.cs
│ │ ├── __DllSourceFiles
│ │ │ ├── Game.Model
│ │ │ │ ├── Src
│ │ │ │ │ ├── Misc.meta
│ │ │ │ │ ├── Services
│ │ │ │ │ │ ├── State.meta
│ │ │ │ │ │ ├── GameInputService.cs.meta
│ │ │ │ │ │ ├── GameResourceService.cs.meta
│ │ │ │ │ │ ├── State
│ │ │ │ │ │ │ ├── GameConfigService.cs.meta
│ │ │ │ │ │ │ ├── GameStateService.cs.meta
│ │ │ │ │ │ │ ├── GameStateService.cs
│ │ │ │ │ │ │ └── GameConfigService.cs
│ │ │ │ │ │ ├── ExtensionGameUnityService.cs.meta
│ │ │ │ │ │ ├── ExtensionGameUnityService.cs
│ │ │ │ │ │ ├── GameResourceService.cs
│ │ │ │ │ │ └── GameInputService.cs
│ │ │ │ │ ├── Systems
│ │ │ │ │ │ ├── Init.meta
│ │ │ │ │ │ ├── Input.meta
│ │ │ │ │ │ ├── Logic.meta
│ │ │ │ │ │ ├── Init
│ │ │ │ │ │ │ ├── InitSystem.cs.meta
│ │ │ │ │ │ │ └── InitSystem.cs
│ │ │ │ │ │ ├── Context_TempField.cs.meta
│ │ │ │ │ │ ├── Input
│ │ │ │ │ │ │ ├── InputSystem.cs.meta
│ │ │ │ │ │ │ └── InputSystem.cs
│ │ │ │ │ │ ├── Logic
│ │ │ │ │ │ │ ├── PlayerMoveSystem.cs.meta
│ │ │ │ │ │ │ └── PlayerMoveSystem.cs
│ │ │ │ │ │ ├── GameLogicSystems.cs.meta
│ │ │ │ │ │ ├── Context_TempField.cs
│ │ │ │ │ │ └── GameLogicSystems.cs
│ │ │ │ │ ├── Misc
│ │ │ │ │ │ ├── ConfigData.cs.meta
│ │ │ │ │ │ ├── PlayerInput.cs.meta
│ │ │ │ │ │ ├── ConfigData.cs
│ │ │ │ │ │ └── PlayerInput.cs
│ │ │ │ │ ├── UnsafeECSFramework
│ │ │ │ │ │ ├── Core.meta
│ │ │ │ │ │ ├── Systems.meta
│ │ │ │ │ │ ├── EntityExt.cs.meta
│ │ │ │ │ │ ├── Interfaces.meta
│ │ │ │ │ │ ├── Services.meta
│ │ │ │ │ │ ├── Systems
│ │ │ │ │ │ │ ├── GameExecuteSystem.cs
│ │ │ │ │ │ │ ├── GameBaseSystem.cs.meta
│ │ │ │ │ │ │ ├── GameExecuteSystem.cs.meta
│ │ │ │ │ │ │ └── GameBaseSystem.cs
│ │ │ │ │ │ ├── Core
│ │ │ │ │ │ │ ├── Context.cs.meta
│ │ │ │ │ │ │ ├── UnsafeWorld.cs.meta
│ │ │ │ │ │ │ ├── WorldSystems.cs.meta
│ │ │ │ │ │ │ ├── WorldSystems.cs
│ │ │ │ │ │ │ ├── Context.cs
│ │ │ │ │ │ │ └── UnsafeWorld.cs
│ │ │ │ │ │ ├── Services
│ │ │ │ │ │ │ ├── MapService.cs.meta
│ │ │ │ │ │ │ ├── PureEntityService.cs.meta
│ │ │ │ │ │ │ ├── MapService.cs
│ │ │ │ │ │ │ ├── UnsafeEcsFactoryService.cs.meta
│ │ │ │ │ │ │ ├── PureEntityService.cs
│ │ │ │ │ │ │ └── UnsafeEcsFactoryService.cs
│ │ │ │ │ │ ├── Interfaces
│ │ │ │ │ │ │ ├── IEntityService.cs.meta
│ │ │ │ │ │ │ └── IEntityService.cs
│ │ │ │ │ │ └── EntityExt.cs
│ │ │ │ │ ├── Config
│ │ │ │ │ │ ├── GameConfig.cs
│ │ │ │ │ │ ├── AudioConfig.cs
│ │ │ │ │ │ ├── GameConfig.cs.meta
│ │ │ │ │ │ └── AudioConfig.cs.meta
│ │ │ │ │ ├── Interfaces
│ │ │ │ │ │ ├── IGameEffectService.cs
│ │ │ │ │ │ ├── IGameUnitService.cs
│ │ │ │ │ │ ├── IGameAudioService.cs
│ │ │ │ │ │ ├── Status
│ │ │ │ │ │ │ ├── IGameStateService.cs
│ │ │ │ │ │ │ ├── IGameConstStateService.cs
│ │ │ │ │ │ │ ├── IGameConfigService.cs
│ │ │ │ │ │ │ ├── IGameConfigService.cs.meta
│ │ │ │ │ │ │ ├── IGameStateService.cs.meta
│ │ │ │ │ │ │ └── IGameConstStateService.cs.meta
│ │ │ │ │ │ ├── IGameResourceService.cs
│ │ │ │ │ │ ├── Status.meta
│ │ │ │ │ │ ├── IGameUnitService.cs.meta
│ │ │ │ │ │ ├── IGameAudioService.cs.meta
│ │ │ │ │ │ ├── IGameEffectService.cs.meta
│ │ │ │ │ │ └── IGameResourceService.cs.meta
│ │ │ │ │ ├── Config.meta
│ │ │ │ │ ├── Interfaces.meta
│ │ │ │ │ ├── Services.meta
│ │ │ │ │ ├── Systems.meta
│ │ │ │ │ ├── __ExcelParser.meta
│ │ │ │ │ ├── __UnsafeECS.meta
│ │ │ │ │ ├── UnsafeECSFramework.meta
│ │ │ │ │ ├── __UnsafeECS
│ │ │ │ │ │ ├── Generated.meta
│ │ │ │ │ │ └── Generated
│ │ │ │ │ │ │ ├── CodeGen_Context.cs.meta
│ │ │ │ │ │ │ ├── CodeGen_Entity.cs.meta
│ │ │ │ │ │ │ ├── CodeGen_Enum.cs.meta
│ │ │ │ │ │ │ ├── CodeGen_Event.cs.meta
│ │ │ │ │ │ │ ├── CodeGen_Filter.cs.meta
│ │ │ │ │ │ │ ├── CodeGen_System.cs.meta
│ │ │ │ │ │ │ ├── CodeGen_Component.cs.meta
│ │ │ │ │ │ │ ├── CodeGen_EntityFuncs.cs.meta
│ │ │ │ │ │ │ ├── CodeGen_EntityView.cs.meta
│ │ │ │ │ │ │ ├── CodeGen_Iterator.cs.meta
│ │ │ │ │ │ │ ├── CodeGen_Schedule.cs.meta
│ │ │ │ │ │ │ ├── CodeGen__Default.cs.meta
│ │ │ │ │ │ │ ├── CodeGen__Entities.cs.meta
│ │ │ │ │ │ │ ├── CodeGen_Service_Entity.cs.meta
│ │ │ │ │ │ │ ├── CodeGen_Service_State.cs.meta
│ │ │ │ │ │ │ ├── CodeGen_Service_SystemExt.cs.meta
│ │ │ │ │ │ │ ├── CodeGen_Context_Interfaces.cs.meta
│ │ │ │ │ │ │ ├── CodeGen_UpdateViewStateSystem.cs.meta
│ │ │ │ │ │ │ └── CodeGen__Entities_Interfaces.cs.meta
│ │ │ │ │ └── __ExcelParser
│ │ │ │ │ │ ├── Table_ConfigBullet.cs.meta
│ │ │ │ │ │ └── Table_ConfigBullet.cs
│ │ │ │ ├── Src.meta
│ │ │ │ ├── Game.Model.asmdef.meta
│ │ │ │ └── Game.Model.asmdef
│ │ │ ├── Game.View
│ │ │ │ ├── Src
│ │ │ │ │ ├── EntityViews.meta
│ │ │ │ │ ├── TagProxy.meta
│ │ │ │ │ ├── GameViewConfig.cs.meta
│ │ │ │ │ ├── RenderInfo.cs.meta
│ │ │ │ │ ├── Framework
│ │ │ │ │ │ ├── BaseEntityView.cs.meta
│ │ │ │ │ │ ├── GameStateMono.cs.meta
│ │ │ │ │ │ ├── EntityPrefabInfo.cs.meta
│ │ │ │ │ │ ├── EntityPrefabInfo.cs
│ │ │ │ │ │ ├── PingMono.cs.meta
│ │ │ │ │ │ ├── InputMono.cs.meta
│ │ │ │ │ │ ├── UnityServiceContainer.cs.meta
│ │ │ │ │ │ ├── PingMono.cs
│ │ │ │ │ │ ├── InputMono.cs
│ │ │ │ │ │ ├── UnityServiceContainer.cs
│ │ │ │ │ │ ├── GameStateMono.cs
│ │ │ │ │ │ └── BaseEntityView.cs
│ │ │ │ │ ├── Services
│ │ │ │ │ │ ├── UnityGameService.cs
│ │ │ │ │ │ ├── UnityMapService.cs.meta
│ │ │ │ │ │ ├── UnityEntityService.cs.meta
│ │ │ │ │ │ ├── UnityGameEffectService.cs
│ │ │ │ │ │ ├── UnityGameService.cs.meta
│ │ │ │ │ │ ├── UnityMap2DService.cs.meta
│ │ │ │ │ │ ├── UnityGameAudioService.cs.meta
│ │ │ │ │ │ ├── UnityGameEffectService.cs.meta
│ │ │ │ │ │ ├── UnityEntityService.cs
│ │ │ │ │ │ ├── UnityMapService.cs
│ │ │ │ │ │ ├── UnityGameAudioService.cs
│ │ │ │ │ │ └── UnityMap2DService.cs
│ │ │ │ │ ├── UnityEntityPrefabSetting.cs.meta
│ │ │ │ │ ├── EntityViews
│ │ │ │ │ │ ├── EntityViewBoidObstacle.cs.meta
│ │ │ │ │ │ └── EntityViewBoidObstacle.cs
│ │ │ │ │ ├── TagProxy
│ │ │ │ │ │ ├── UnityPlayerCubeTagProxy.cs.meta
│ │ │ │ │ │ └── UnityPlayerCubeTagProxy.cs
│ │ │ │ │ ├── Framework.meta
│ │ │ │ │ ├── Services.meta
│ │ │ │ │ ├── __UnsafeECS.meta
│ │ │ │ │ ├── __UnsafeECS
│ │ │ │ │ │ ├── Generated.meta
│ │ │ │ │ │ └── Generated
│ │ │ │ │ │ │ ├── CodeGen_EntityView.cs.meta
│ │ │ │ │ │ │ └── CodeGen_BaseUnityEntityService.cs.meta
│ │ │ │ │ ├── MainScript.cs.meta
│ │ │ │ │ ├── RenderInfo.cs
│ │ │ │ │ ├── GameViewConfig.cs
│ │ │ │ │ ├── MainScript.cs
│ │ │ │ │ └── UnityEntityPrefabSetting.cs
│ │ │ │ ├── Src.meta
│ │ │ │ ├── Game.View.asmdef.meta
│ │ │ │ └── Game.View.asmdef
│ │ │ ├── Tools.UnsafeECS.ECDefine.Game
│ │ │ │ ├── Src
│ │ │ │ │ ├── Unsafe
│ │ │ │ │ │ ├── Enum.cs
│ │ │ │ │ │ ├── Event.cs
│ │ │ │ │ │ ├── Collision.cs
│ │ │ │ │ │ ├── Entity.cs.meta
│ │ │ │ │ │ ├── Enum.cs.meta
│ │ │ │ │ │ ├── Event.cs.meta
│ │ │ │ │ │ ├── Status.cs.meta
│ │ │ │ │ │ ├── System.cs.meta
│ │ │ │ │ │ ├── Collision.cs.meta
│ │ │ │ │ │ ├── Component.cs.meta
│ │ │ │ │ │ ├── Service.cs.meta
│ │ │ │ │ │ ├── Service.cs
│ │ │ │ │ │ ├── System.cs
│ │ │ │ │ │ ├── Entity.cs
│ │ │ │ │ │ ├── Component.cs
│ │ │ │ │ │ └── Status.cs
│ │ │ │ │ ├── Unsafe.meta
│ │ │ │ │ ├── BuildIn.meta
│ │ │ │ │ └── BuildIn
│ │ │ │ │ │ ├── BuildIn_Components.cs.meta
│ │ │ │ │ │ ├── BuildIn_Interfaces.cs.meta
│ │ │ │ │ │ ├── BuildIn_Services.cs.meta
│ │ │ │ │ │ ├── BuildIn_Components.cs
│ │ │ │ │ │ └── BuildIn_Services.cs
│ │ │ │ ├── Tools.UnsafeECS.ECDefine.Game.asmdef
│ │ │ │ ├── Src.meta
│ │ │ │ └── Tools.UnsafeECS.ECDefine.Game.asmdef.meta
│ │ │ ├── Game.Model.meta
│ │ │ ├── Game.View.meta
│ │ │ └── Tools.UnsafeECS.ECDefine.Game.meta
│ │ ├── Plugins
│ │ │ ├── ICSharpCode.SharpZipLib.dll
│ │ │ ├── LockstepEngine
│ │ │ │ ├── Common.View.dll
│ │ │ │ ├── Engine.View.dll
│ │ │ │ ├── Common.Model.dll
│ │ │ │ ├── Common.UnsafeECS.dll
│ │ │ │ ├── Editor
│ │ │ │ │ ├── Common.Editor.dll
│ │ │ │ │ ├── Engine.Editor.dll
│ │ │ │ │ ├── Common.Editor.dll.meta
│ │ │ │ │ └── Engine.Editor.dll.meta
│ │ │ │ ├── Engine.LockstepEngine.dll
│ │ │ │ ├── Editor.meta
│ │ │ │ ├── Common.Model.dll.meta
│ │ │ │ ├── Common.View.dll.meta
│ │ │ │ ├── Engine.View.dll.meta
│ │ │ │ ├── Common.UnsafeECS.dll.meta
│ │ │ │ └── Engine.LockstepEngine.dll.meta
│ │ │ ├── LockstepEngine.meta
│ │ │ └── ICSharpCode.SharpZipLib.dll.meta
│ │ ├── ReadMe.txt.meta
│ │ ├── Example
│ │ │ └── Demo_Cube.unity.meta
│ │ ├── Example.meta
│ │ ├── Plugins.meta
│ │ ├── Resources.meta
│ │ ├── Resources
│ │ │ ├── GlobalConfig.xml.meta
│ │ │ ├── Config.meta
│ │ │ ├── Config
│ │ │ │ ├── GameConfig.json.meta
│ │ │ │ ├── UnityGameConfig.asset.meta
│ │ │ │ ├── UnityGameViewConfig.asset.meta
│ │ │ │ ├── UnityGameViewConfig.asset
│ │ │ │ ├── GameConfig.json
│ │ │ │ └── UnityGameConfig.asset
│ │ │ ├── Prefabs.meta
│ │ │ ├── Prefabs
│ │ │ │ └── Player_Cube.prefab.meta
│ │ │ ├── UnityEntityPrefabSetting.prefab.meta
│ │ │ ├── GlobalConfig.xml
│ │ │ └── UnityEntityPrefabSetting.prefab
│ │ ├── __DllSourceFiles.meta
│ │ ├── Scripts.meta
│ │ └── ReadMe.txt
│ ├── Plugins.meta
│ ├── LockstepECS.meta
│ └── Plugins
│ │ ├── Editor.meta
│ │ └── Editor
│ │ └── JetBrains.meta
├── ProjectSettings
│ ├── ProjectVersion.txt
│ ├── ClusterInputManager.asset
│ ├── PresetManager.asset
│ ├── XRSettings.asset
│ ├── TimeManager.asset
│ ├── EditorBuildSettings.asset
│ ├── VFXManager.asset
│ ├── BurstAotSettings_StandaloneOSX.json
│ ├── AudioManager.asset
│ ├── TagManager.asset
│ ├── EditorSettings.asset
│ ├── UnityConnectSettings.asset
│ ├── DynamicsManager.asset
│ ├── NavMeshAreas.asset
│ ├── Physics2DSettings.asset
│ └── GraphicsSettings.asset
├── packages.config
├── .gitignore
└── Packages
│ └── manifest.json
└── README.md
/Client.Unity/DataAndTools/.gitignore:
--------------------------------------------------------------------------------
1 | !*.sln
2 | !*.csproj
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxyMoverView.cs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxyHotfixScript.cs:
--------------------------------------------------------------------------------
1 | public class MonoProxyHotfixScript : HotfixScript { }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/bin/EPPlus.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/DataAndTools/bin/EPPlus.dll
--------------------------------------------------------------------------------
/Client.Unity/ProjectSettings/ProjectVersion.txt:
--------------------------------------------------------------------------------
1 | m_EditorVersion: 2019.2.3f1
2 | m_EditorVersionWithRevision: 2019.2.3f1 (8e55c27a4621)
3 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/CameraMono.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 685ac13f0dc84aa4b82782408bf60afc
3 | timeCreated: 1572702738
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Tools/ExcelParser:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | dir="$(cd $(dirname ${BASH_SOURCE[0]}) && pwd)"
3 | cd $dir/
4 | ./ExcelParser.sh
5 |
6 |
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Tools/UnsafeECSCodeGen:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | dir="$(cd $(dirname ${BASH_SOURCE[0]}) && pwd)"
3 | cd $dir/
4 | ./UnsafeECSCodeGen.sh
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Tools/UpdateAndCodeGen:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | dir="$(cd $(dirname ${BASH_SOURCE[0]}) && pwd)"
3 | cd $dir/
4 | ./UpdateAndCodeGen.sh
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ea3cbc176e6d48f0a430ae897586b7f4
3 | timeCreated: 1571560452
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Data/Client/Maps/1.bytes:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/DataAndTools/Data/Client/Maps/1.bytes
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Data/Client/Maps/2.bytes:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/DataAndTools/Data/Client/Maps/2.bytes
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/bin/Tools.ExcelHelper.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/DataAndTools/bin/Tools.ExcelHelper.dll
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/bin/Tools.ExcelParser.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/DataAndTools/bin/Tools.ExcelParser.dll
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/bin/Tools.ExcelParser.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/DataAndTools/bin/Tools.ExcelParser.exe
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/Editor/EditorMainScript.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8cc8eb4d82544fe2a0acc5c49b71e472
3 | timeCreated: 1567495507
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Misc.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 36a2c81ba9d94e87bfb63d753996d739
3 | timeCreated: 1573608272
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Data/Client/GameConfig.bytes:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/DataAndTools/Data/Client/GameConfig.bytes
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/bin/Engine.LockstepEngine.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/DataAndTools/bin/Engine.LockstepEngine.dll
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/bin/Server.SimpleServer.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/DataAndTools/bin/Server.SimpleServer.dll
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/bin/Tools.CopySourceFiles.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/DataAndTools/bin/Tools.CopySourceFiles.dll
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/bin/Tools.MacroExpansion.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/DataAndTools/bin/Tools.MacroExpansion.dll
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/EntityViews.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 21d66febc2ff49a89f52599263876284
3 | timeCreated: 1573266841
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/TagProxy.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 22f3f707a21e45dab3a8df531841af34
3 | timeCreated: 1573280709
--------------------------------------------------------------------------------
/Client.Unity/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/Editor/EditorMonoProxyReferenceHolder.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 5cd70ef1394940c8b3cc0049fec829bc
3 | timeCreated: 1571561764
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/State.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6a54c3dad2bf4df3904673f62d7ffc24
3 | timeCreated: 1572946968
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Init.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f0ccdcf2347b4605a62b3d7226239474
3 | timeCreated: 1572927762
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Input.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9335206a54db4f5b92adfdbd0e1e1b0f
3 | timeCreated: 1572927708
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Logic.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9cfe62bada0f4dc18f01977978c5d542
3 | timeCreated: 1572927701
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/GameViewConfig.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0d0f70bca5134792a43fe39d2daf632c
3 | timeCreated: 1573192670
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/RenderInfo.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a12cbaa1831c46178785dec91081741f
3 | timeCreated: 1573192678
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Data/Designer/Excels/Assets.xlsx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/DataAndTools/Data/Designer/Excels/Assets.xlsx
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/bin/Pure.Engine.LockstepEngine.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/DataAndTools/bin/Pure.Engine.LockstepEngine.dll
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/bin/Tools.UnsafeECSGenerator.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/DataAndTools/bin/Tools.UnsafeECSGenerator.dll
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxyHotfixScript.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6ec0ec773cb9430883861fe7a89897c5
3 | timeCreated: 1571560348
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxyMainScript.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 20396a1f508a4aa08f8989d265b39377
3 | timeCreated: 1571560329
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Misc/ConfigData.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 67fdb4a1941d42edb29553441410897c
3 | timeCreated: 1572931270
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Data/Client/ExcelBytes/Assets.bytes:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/DataAndTools/Data/Client/ExcelBytes/Assets.bytes
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Init/InitSystem.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 90415483585a47529c0e2a1a9a211216
3 | timeCreated: 1572759358
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Core.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b655b8874c774e5cb02faf468659506f
3 | timeCreated: 1572348098
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Systems.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4db01495254e469d83706f1ccd4ee686
3 | timeCreated: 1572347646
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Framework/BaseEntityView.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8c8ec131618b47e5a554599afc823922
3 | timeCreated: 1573104172
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Framework/GameStateMono.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 639761d88e754f3bb8789af61e70bd67
3 | timeCreated: 1572751344
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Services/UnityGameService.cs:
--------------------------------------------------------------------------------
1 | namespace Lockstep.Game {
2 | public abstract class UnityGameService : GameService { }
3 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Services/UnityMapService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 31134e36adc84208b6cf521cbf02e20d
3 | timeCreated: 1573305094
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/UnityEntityPrefabSetting.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c43ed71b1fb3426ebca8a7c262bf8459
3 | timeCreated: 1573193229
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/bin/Tools.UnsafeECS.ECDefine.Game.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/DataAndTools/bin/Tools.UnsafeECS.ECDefine.Game.dll
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Plugins/ICSharpCode.SharpZipLib.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/Assets/LockstepECS/Plugins/ICSharpCode.SharpZipLib.dll
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxyCollisionSystemDebuger.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 665986f82c124dba9eef8d0a920e5174
3 | timeCreated: 1569135627
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Context_TempField.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: fe74b24d43f94f55bc16be375e7ccd5e
3 | timeCreated: 1572759386
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Input/InputSystem.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 407022b328a04fa0818dcd775d5fe5b3
3 | timeCreated: 1572854152
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/EntityExt.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3278a540f24d496c9655861731328744
3 | timeCreated: 1572344697
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Interfaces.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9efd4f4b9cc34e94ba2d4be9726fce5e
3 | timeCreated: 1572349050
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Services.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 718021978a7c4f30981bbc1ac141f24e
3 | timeCreated: 1572347709
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Systems/GameExecuteSystem.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.UnsafeECS;
2 | namespace Lockstep.UnsafeECS.Game {
3 |
4 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Framework/EntityPrefabInfo.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3a31032c8bce444bb8215d3d42113ad2
3 | timeCreated: 1573193565
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Services/UnityEntityService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 17686d009c4d407c9b835c7d3e033d31
3 | timeCreated: 1572347173
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Data/Client/ExcelBytes/ConfigBullet.bytes:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/DataAndTools/Data/Client/ExcelBytes/ConfigBullet.bytes
--------------------------------------------------------------------------------
/Client.Unity/ProjectSettings/ClusterInputManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!236 &1
4 | ClusterInputManager:
5 | m_ObjectHideFlags: 0
6 | m_Inputs: []
7 |
--------------------------------------------------------------------------------
/Client.Unity/ProjectSettings/PresetManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1386491679 &1
4 | PresetManager:
5 | m_ObjectHideFlags: 0
6 | m_DefaultList: []
7 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Common.View.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Common.View.dll
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Engine.View.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Engine.View.dll
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Logic/PlayerMoveSystem.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: db8d0ce5d78445159c0abf98c88bc44d
3 | timeCreated: 1573263154
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Core/Context.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d28ba2d9c18243c0a6adba8cd517b5ca
3 | timeCreated: 1572344751
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/EntityViews/EntityViewBoidObstacle.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 79fdc6f594cc4f7cb312b9ba09e70990
3 | timeCreated: 1573266871
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/TagProxy/UnityPlayerCubeTagProxy.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 912146af21af4c4c8295eff49d104616
3 | timeCreated: 1573280635
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Common.Model.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Common.Model.dll
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Services/MapService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 72e8d6a0de714c758471d99c8c54cbc6
3 | timeCreated: 1573305047
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Common.UnsafeECS.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Common.UnsafeECS.dll
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Systems/GameBaseSystem.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c8100f270f7e47128491fe7781e9d1c5
3 | timeCreated: 1572347662
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Src/Tools.UnsafeECS.ECSOutput/.gitignore:
--------------------------------------------------------------------------------
1 | Libs/
2 | Games/
3 | #暂时忽略这个项目
4 | BombMan/
5 | # Build and Object Folders
6 | bin/
7 | obj/
8 | # ide
9 | .idea/
10 | .vs/
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Interfaces/IEntityService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 58b0d16c424042babfeb01636c408fb8
3 | timeCreated: 1572344328
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Services/PureEntityService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 62e796caef324d9d8b9aed38d9f987d3
3 | timeCreated: 1572344337
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Systems/GameExecuteSystem.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b82a7fdf47594a14a413a5dc9ea28130
3 | timeCreated: 1572347654
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Data/Designer/Excels/EntityConfig/ConfigBullet.xls:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/DataAndTools/Data/Designer/Excels/EntityConfig/ConfigBullet.xls
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Src/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Enum.cs:
--------------------------------------------------------------------------------
1 | // Copyright 2019 谭杰鹏. All Rights Reserved //https://github.com/JiepengTan
2 |
3 | namespace Lockstep.UnsafeECSDefine {
4 |
5 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Editor/Common.Editor.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Editor/Common.Editor.dll
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Editor/Engine.Editor.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Editor/Engine.Editor.dll
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Engine.LockstepEngine.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Engine.LockstepEngine.dll
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Config/UnsafeECSGenerator/View/EncTemplateFile.tfbytes:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/DataAndTools/Config/UnsafeECSGenerator/View/EncTemplateFile.tfbytes
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Config/UnsafeECSGenerator/Model/EncTemplateFile.tfbytes:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JiepengTan/LockstepECS/HEAD/Client.Unity/DataAndTools/Config/UnsafeECSGenerator/Model/EncTemplateFile.tfbytes
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/ReadMe.txt.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c8fd16990486543009e0cbcd5d8b2f12
3 | TextScriptImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Config/GameConfig.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using NetMsg.Common;
3 |
4 | namespace Lockstep.Game {
5 | [Serializable]
6 | public partial class GameConfig { }
7 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/IGameEffectService.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.Math;
2 |
3 | namespace Lockstep.Game {
4 | public interface IGameEffectService : IService {
5 |
6 | }
7 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Enum.cs:
--------------------------------------------------------------------------------
1 | // Copyright 2019 谭杰鹏. All Rights Reserved //https://github.com/JiepengTan
2 |
3 | namespace Lockstep.UnsafeECSDefine {
4 |
5 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/Plugins.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f5c5b3387140e40068807c6efd9297ba
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Data/Client/TileIDMap.txt:
--------------------------------------------------------------------------------
1 | 1=Tiles/TileBrick
2 | 2=Tiles/TileCamp
3 | 3=Tiles/TileGrass
4 | 4=Tiles/TileIron
5 | 5=Tiles/TileWater
6 | 6=Tiles/TileBornPosEnemy
7 | 7=Tiles/TileBornPosHero
8 | 8=Tiles/TileWall
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 15619f7bc15e5490ebe45f6db34f4642
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Example/Demo_Cube.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: bc7caccdfb6d94b4facecc7a62765c9a
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/IGameUnitService.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Lockstep.Math;
3 |
4 | namespace Lockstep.Game {
5 | public interface IGameUnitService : IService {
6 | }
7 |
8 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/Plugins/Editor.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e0e811213c2444802b88296a61e157c0
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Example.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f565ec0fa0a0e4069b47ab787e20e5af
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Plugins.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b23f629fe9d924290896035bc87cf208
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Tools.UnsafeECS.ECDefine.Game.asmdef:
--------------------------------------------------------------------------------
1 | {
2 | "name": "Tools.UnsafeECS.ECDefine.Game",
3 | "references": [
4 | "Engine.LockstepEngine"
5 | ]
6 | }
7 |
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/bin/Server.SimpleServer.runtimeconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "runtimeOptions": {
3 | "tfm": "netcoreapp2.2",
4 | "framework": {
5 | "name": "Microsoft.NETCore.App",
6 | "version": "2.2.0"
7 | }
8 | }
9 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Resources.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 45240c615bd4f4d1faf891e4d3747c6b
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Resources/GlobalConfig.xml.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 827a7a2e547064eba9b016aea018dc5e
3 | TextScriptImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxySpriteEffect.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections;
3 | using Debug = Lockstep.Logging.Debug;
4 |
5 | public class MonoProxySpriteEffect : SpriteEffect {
6 |
7 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/Plugins/Editor/JetBrains.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c7218295628ec4d0ea3873220a68cceb
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/ProjectSettings/XRSettings.asset:
--------------------------------------------------------------------------------
1 | {
2 | "m_SettingKeys": [
3 | "VR Device Disabled",
4 | "VR Device User Alert"
5 | ],
6 | "m_SettingValues": [
7 | "False",
8 | "False"
9 | ]
10 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Resources/Config.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 93965c1c6844b452bbeaba38fe63dd71
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Resources/Config/GameConfig.json.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 19bbfb5fe5d294d049f33a129701b910
3 | TextScriptImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Resources/Prefabs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 12151946b916d4cb8a3ce13db8f93808
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Resources/Prefabs/Player_Cube.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a1d6b8716cd344cfb97d76f4f986fbe5
3 | PrefabImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/Editor.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c265c14d8483e46f99205be4041c8f99
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxyCollisionSystemDebuger.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.IO;
3 | using UnityEditor;
4 |
5 | [Serializable]
6 | public class MonoProxyCollisionSystemDebuger : CollisionSystemDebuger { }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 5f54dba491a984500ae89ca945fc7cd0
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Src/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Event.cs:
--------------------------------------------------------------------------------
1 | // Copyright 2019 谭杰鹏. All Rights Reserved //https://github.com/JiepengTan
2 |
3 | using Lockstep.UnsafeECSDefine;
4 |
5 | namespace Lockstep.UnsafeECSDefine {
6 |
7 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e1a40fa0a2817429f9f3c547312a3d5a
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Resources/UnityEntityPrefabSetting.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0e5eb294788a943bca181ef6fae5f543
3 | PrefabImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/ResScripts.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b3bdafd5f992b433a8c8ea0c0f71047b
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/IGameAudioService.cs:
--------------------------------------------------------------------------------
1 | namespace Lockstep.Game {
2 |
3 | public interface IGameAudioService :IService {
4 | void PlayMusicBG();
5 | void PlayMusicStart();
6 | }
7 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/Status/IGameStateService.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.Math;
2 | using Lockstep.Serialization;
3 |
4 | namespace Lockstep.Game {
5 | public partial interface IGameStateService : IService {}
6 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/Editor/EditorMonoProxyReferenceHolder.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.Game.UI;
2 | using UnityEditor;
3 |
4 | [CustomEditor(typeof(MonoProxyReferenceHolder))]
5 | public class EditorMonoProxyReferenceHolder : EditorReferenceHolder {
6 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 73dbc30ca2dd84e848668c9fe4dd43b9
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/IGameResourceService.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.Game;
2 |
3 | namespace Lockstep.Game {
4 | public interface IGameResourceService : IService {
5 | object LoadPrefab(int id);
6 | }
7 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 39da76c1e58164336a1819eabea5a712
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Editor.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 5414f93ea4eef4eca8b770ccbafefae6
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 952cab2d0364348fdb8ef1539b82887a
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: dd7812b243efd483c8318ab3a84e9cb3
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Event.cs:
--------------------------------------------------------------------------------
1 | // Copyright 2019 谭杰鹏. All Rights Reserved //https://github.com/JiepengTan
2 |
3 | using Lockstep.UnsafeECSDefine;
4 |
5 | namespace Lockstep.UnsafeECSDefine {
6 |
7 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Game.Model.asmdef.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 47cab237e53a445eeb896da74a1d751e
3 | AssemblyDefinitionImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Game.View.asmdef.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: fda2cb0e52b9d473f912e838e0938927
3 | AssemblyDefinitionImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Config.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 867eef219fb324db891e6a2c8a79f0cb
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c9a005a0436754e2395aa5ec19d5df0e
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4fb7a191ae1f24509ba8a7ac33e863a9
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 87ee0124887484db8b19b81861729e41
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Framework.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 97e46b58211f54802853cf6a9a90a97c
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Services.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3945318fe10fa44a49984ddd236ea5c3
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/__UnsafeECS.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: beaf123cd5611458e9badf54080b596b
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__ExcelParser.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e298cc47cc1d846558a2bf431328d7d2
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9e5fae14fc02b4afda8c2e94fcd28546
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Framework/EntityPrefabInfo.cs:
--------------------------------------------------------------------------------
1 | namespace Lockstep.Game {
2 | [System.Serializable]
3 | public struct EntityPrefabInfo {
4 | public Unity.Entities.Entity Prefab;
5 | public int AssetId;
6 | }
7 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8872d53265a864151886865b3a087336
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: fd9c214f640fae348958e74eaea6f543
3 | folderAsset: yes
4 | timeCreated: 1431009955
5 | licenseType: Store
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/Status.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 13415eb337f444b8aa419b7e1472e6d5
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 07ef950861037403a8fead4950003ba0
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/__UnsafeECS/Generated.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 49ed6447153654c0e846273c0bb2138f
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8fbe1a5992ea3440b89a01b53dd2ddd2
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Resources/Config/UnityGameConfig.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ce2bc0ff4e4604213968d2ad1cb16909
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Services/MapService.cs:
--------------------------------------------------------------------------------
1 | namespace Lockstep.Game {
2 | public interface IMapService : IService { }
3 |
4 | [System.Serializable]
5 | public partial class MapService : BaseService, IMapService { }
6 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 73079267cf0d446dba77077c84aea948
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Services/UnityGameEffectService.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.Math;
2 | using UnityEngine;
3 |
4 | namespace Lockstep.Game {
5 | public partial class UnityGameEffectService : UnityGameService, IGameEffectService {
6 |
7 |
8 | }
9 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ced19e5d544b847a8ba76327767f0287
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/ProjectSettings/TimeManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!5 &1
4 | TimeManager:
5 | m_ObjectHideFlags: 0
6 | Fixed Timestep: 0.02
7 | Maximum Allowed Timestep: 0.33333334
8 | m_TimeScale: 1
9 | Maximum Particle Timestep: 0.03
10 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Resources/Config/UnityGameViewConfig.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: bfaf5b81c7e7c46219c5fcd82b154ee4
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxyReferenceHolder.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.Game.UI;
2 | using UnityEngine.UI;
3 |
4 | namespace Lockstep.Game.UI {
5 |
6 |
7 | public class MonoProxyReferenceHolder : ReferenceHolder {
8 |
9 | }
10 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/BuildIn.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a65b9d504119c4eea9691213e2adc152
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Tools.UnsafeECS.ECDefine.Game.asmdef.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4cf4863c5693e4b379407bc7c737582e
3 | AssemblyDefinitionImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Src/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Collision.cs:
--------------------------------------------------------------------------------
1 | // Copyright 2019 谭杰鹏. All Rights Reserved //https://github.com/JiepengTan
2 |
3 | using Lockstep.UnsafeECSDefine;
4 | namespace Lockstep.UnsafeECSDefine {
5 |
6 | public class CollisionDefine : ICollisionEvent {
7 | }
8 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/ResScripts/UnityGameViewConfig.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 |
3 | namespace Lockstep.Game {
4 | [CreateAssetMenu(menuName = "UnityGameViewConfig")]
5 | [System.Serializable]
6 | public partial class UnityGameViewConfig : GameViewConfig {
7 | public int Pad;
8 | }
9 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/bin/Server.SimpleServer.runtimeconfig.dev.json:
--------------------------------------------------------------------------------
1 | {
2 | "runtimeOptions": {
3 | "additionalProbingPaths": [
4 | "/Users/jiepengtan/.dotnet/store/|arch|/|tfm|",
5 | "/Users/jiepengtan/.nuget/packages",
6 | "/usr/local/share/dotnet/sdk/NuGetFallbackFolder"
7 | ]
8 | }
9 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Collision.cs:
--------------------------------------------------------------------------------
1 | // Copyright 2019 谭杰鹏. All Rights Reserved //https://github.com/JiepengTan
2 |
3 | using Lockstep.UnsafeECSDefine;
4 | namespace Lockstep.UnsafeECSDefine {
5 |
6 | public class CollisionDefine : ICollisionEvent {
7 | }
8 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/Status/IGameConstStateService.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using Lockstep.Math;
3 | using Lockstep.Serialization;
4 | using NetMsg.Common;
5 |
6 | namespace Lockstep.Game {
7 | public partial interface IGameConstStateService : IService {
8 | }
9 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Config/AudioConfig.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using UnityEngine;
3 | using Debug = UnityEngine.Debug;
4 |
5 | namespace Lockstep.Game {
6 | public partial class AudioConfig {
7 | public ushort BgMusic;
8 | public ushort StartMusic;// = AudioIdStart;
9 | }
10 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/TagProxy/UnityPlayerCubeTagProxy.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.UnsafeECS.Game;
2 | using Unity.Entities;
3 | using UnityEngine;
4 |
5 | namespace Lockstep.Game.UnityView {
6 | [DisallowMultipleComponent]
7 | public class UnityPlayerCubeTagProxy : ComponentDataProxy { }
8 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Config/ExcelParser/Config.json:
--------------------------------------------------------------------------------
1 | {
2 | "InputDirs": [
3 | "../Data/Designer/Excels"
4 | ],
5 | "OutputDirCsv": "../Config/ExcelParser/Output/Csv",
6 | "OutputDirByte":"../Data/Client/ExcelBytes",
7 | "OutputDirCode":"../Config/ExcelParser/Output/CodeCS",
8 | "TemplatePath": "../Config/ExcelParser/CSTemplate.txt"
9 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxyMainScript.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.Game;
2 |
3 | public class MonoProxyMainScript : MainScript {
4 | protected override void Awake(){
5 | base.Awake();
6 | }
7 | }
8 |
9 | [System.Serializable]
10 | public partial class MonoProxyGameViewConfig : GameViewConfig {
11 |
12 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/ResScripts/UnityGameConfig.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 980ac168cef7441b18a297aac85d123e
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/Editor/EditorCollisionSystem.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c1ef1cfe6a07842a3b365b21d33d41aa
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/ResScripts/UnityGameViewConfig.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ce625fca54ee7448e83d49e11ee55e7a
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/Status/IGameConfigService.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using Lockstep.ECS;
3 | using Lockstep.Math;
4 | using Lockstep.Serialization;
5 | using NetMsg.Common;
6 |
7 | namespace Lockstep.Game {
8 | public partial interface IGameConfigService : IService {
9 |
10 | }
11 | }
--------------------------------------------------------------------------------
/Client.Unity/ProjectSettings/EditorBuildSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1045 &1
4 | EditorBuildSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | m_Scenes:
8 | - enabled: 1
9 | path: Assets/LockstepECS/Example/Demo_Cube.unity
10 | guid: bc7caccdfb6d94b4facecc7a62765c9a
11 | m_configObjects: {}
12 |
--------------------------------------------------------------------------------
/Client.Unity/ProjectSettings/VFXManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!937362698 &1
4 | VFXManager:
5 | m_ObjectHideFlags: 0
6 | m_IndirectShader: {fileID: 0}
7 | m_CopyBufferShader: {fileID: 0}
8 | m_SortShader: {fileID: 0}
9 | m_RenderPipeSettingsPath:
10 | m_FixedTimeStep: 0.016666668
11 | m_MaxDeltaTime: 0.05
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/MainScript.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: fe59a2ec1d6c845e39ce8c5fbb6c7100
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxyMoverView.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 33f43fa21b78f4789b27739cbfac261d
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Config/GameConfig.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2d2dc248816344d90aff3f9bb8b1f5aa
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Misc/PlayerInput.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 58aad08f6e1c342638904826700a3b05
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Framework/PingMono.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 5d5f9f68bfcc94d78abfcf2b4642261d
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxyReferenceHolder.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8379e6936f36244498b3e59f1b4d6ea3
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxySpriteEffect.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e5ef59c3577e14419a43960bee456a57
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Config/AudioConfig.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a0a6f890f335b4a13a02113003930f66
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Framework/InputMono.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4b3755752ac984ebf9817cabf729607a
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Config/CopySourceFiles/Unity2ECSDefine.json:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "__commment": "Copy file from pure csproj to unity dir",
4 | "srcDir": "../../../Client.Unity/Assets/LockstepECS/__DllSourceFiles/",
5 | "dstDir": "../Src/",
6 | "srcProjectDirs": [
7 | "Tools.UnsafeECS.ECdefine.Game"
8 | ],
9 | "sourceFileDir": "/Src"
10 | }
11 | ]
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/IGameUnitService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 84e70e4c155ab4a6dbea7bbe911f1dee
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/GameInputService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 616c9f6f07b2d4bf6ac283d51b12fb81
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/GameLogicSystems.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f5f17b4476e844461a59f082b7734bd1
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Services/UnityGameService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9052cacb3daa04a6ba635adabccb5e30
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Services/UnityMap2DService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 97a69ccafe017415faf89f0d389668e8
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/IGameAudioService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8ee2494672d7e479fb7d0865d290a8e2
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/IGameEffectService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2aa997325a9a942aea93acc5d2c51267
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/IGameResourceService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 90ab25e2aea9d48b1a88bc3b1cfbd22f
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/GameResourceService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0febdd1a761674d0786effa3a0e226e6
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/State/GameConfigService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b7c34acda392241b4aee7a55b89203bc
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/State/GameStateService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 17ca5aa79abb14d76a60c4db89a2c336
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__ExcelParser/Table_ConfigBullet.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2c1d225d77da74a47a4930f434fb013d
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Framework/UnityServiceContainer.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f4e7f25d6ec594cc89b6005dd6435ead
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Services/UnityGameAudioService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4821001c2965947f6b558ec79a056894
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Services/UnityGameEffectService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 69031f191a9c747e18008275f31282be
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Entity.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c6fcdca01843e450c9359e71927afee8
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Enum.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f2e95e0230ca44845a86a2110371701e
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Event.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 716d91bea886e4247bf938c088c1a0f1
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Status.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 91940ac76d1df4300a6059a3658a1194
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/System.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 343a2794cda62488b89b83c6ced8e899
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/Status/IGameConfigService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 594c45de2d9a54631868238ee8ec997e
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/Status/IGameStateService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 87b1b3bd429814f218de343c7d0a3936
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/ExtensionGameUnityService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 957eee382cec44eb897d2e079bd71a31
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Core/UnsafeWorld.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e27ee9cf6187d48e8b4a756e0de81ff7
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Core/WorldSystems.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b24d61ffc130c4ae89cdfb3d24e8251d
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Context.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 03b703a8fabe64c379259de61504ac98
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Entity.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: efced1d38fb2c4932bd871ecfb03539b
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Enum.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9dfcd2170bf6e423b8a7fadb70d68d9c
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Event.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e670d3760641e49d48fcc141c5ae16d0
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Filter.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 62af9078863df4f1990383bfb420c02d
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_System.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 16c58b893729945929e7ac7e9a912cca
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Collision.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 98ade301732a146c9a5a9583c29eae0d
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Component.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 93520b832913e4f58bd226533d622f79
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Service.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 01a70fb44c65242cd9f9bfb80c06be47
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/Status/IGameConstStateService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 107e6d1af89b148dfa0b2d8dc50ea62c
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Interfaces/IEntityService.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.UnsafeECS;
2 | namespace Lockstep.UnsafeECS.Game {
3 | public unsafe partial interface IEntityService : Lockstep.Game.IService {
4 | void OnEntityCreated(Context context, Entity* entity);
5 | void OnEntityDestroy(Context context, Entity* pEntity);
6 | }
7 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Component.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a4c427e061c8a46a89ab346d4c018854
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_EntityFuncs.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9ee75c816ffbe4a72ba6cc7ceba10d7d
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_EntityView.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ab27cb2821e3448c2a6f997932ed3060
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Iterator.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 64a4c0a47e26f4de0af2e2d90a36ebd7
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Schedule.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3b323cda406a64ebd880748e913a997e
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen__Default.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d63a7c94d35814e87ae08d8cd528fe85
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen__Entities.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 7f2e94bd2230943db81e975e5a3b0cfa
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/__UnsafeECS/Generated/CodeGen_EntityView.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ecb68d179068847e183d89e5cc8fa5b6
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Service_Entity.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 55be325ed73984ed782c1c70539e65c3
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Service_State.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 672ac8e21c7bf4652b2d0613a00ab224
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Service_SystemExt.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8696a9bda1ff749f8b3492993cb5e780
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/BuildIn/BuildIn_Components.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 89df8a28e5d5f4ab2a5527c897574a78
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/BuildIn/BuildIn_Interfaces.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6e428f627ab4a4dfeab290e204f0fc6e
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/BuildIn/BuildIn_Services.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4563ea9c14b314f088a03eb08dc15b21
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Services/UnsafeEcsFactoryService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 67e4f9cb8b1fa49d8ac7f749869780eb
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Context_Interfaces.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2ebfc39997e234e3f8a3ff3844567b7d
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_UpdateViewStateSystem.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2f17bb89728c04ce89a85e54fc2b73f3
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen__Entities_Interfaces.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0bfebf4c6089046f1a0c7d345c384b48
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/__UnsafeECS/Generated/CodeGen_BaseUnityEntityService.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 504c7739bdeb645c8a35ecfa54595452
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/RenderInfo.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 |
3 | namespace Lockstep.Game {
4 | [System.Serializable]
5 | public class RenderInfo {
6 | public Mesh mesh;
7 | public Material mat;
8 | }
9 | [System.Serializable]
10 | public struct UnityPrefabInfo {
11 | public GameObject Prefab;
12 | public int AssetId;
13 | }
14 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Services/PureEntityService.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.UnsafeECS;
2 |
3 | namespace Lockstep.UnsafeECS.Game {
4 | public unsafe partial class PureEntityService : IEntityService {
5 | public virtual void OnEntityCreated(Context context, Entity* entity){ }
6 | public virtual void OnEntityDestroy(Context context, Entity* pEntity){ }
7 | }
8 | }
--------------------------------------------------------------------------------
/Client.Unity/ProjectSettings/BurstAotSettings_StandaloneOSX.json:
--------------------------------------------------------------------------------
1 | {
2 | "MonoBehaviour": {
3 | "m_Enabled": true,
4 | "m_EditorHideFlags": 0,
5 | "m_Name": "",
6 | "m_EditorClassIdentifier": "Unity.Burst.Editor:Unity.Burst.Editor:BurstPlatformAotSettings",
7 | "DisableOptimisations": false,
8 | "DisableSafetyChecks": true,
9 | "DisableBurstCompilation": false
10 | }
11 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/GameViewConfig.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using UnityEngine;
3 |
4 | namespace Lockstep.Game {
5 | [System.Serializable]
6 | public partial class GameViewConfig : UnityEngine.ScriptableObject {
7 | public const string ResPath = "Config/UnityGameViewConfig";
8 | public List RenderInfos = new List();
9 | }
10 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Config/ExcelParser/Output/Csv/ConfigBullet.csv:
--------------------------------------------------------------------------------
1 | ServerDefine,,,,,,,,,
2 | ClientDefine,key,,,,,,,,
3 | Info,id,,,,,,,,
4 | Type,ushort,bool,bool,string,int,int,float,float,
5 | Name,asset,bullet_canDestoryIron,bullet_canDestoryGrass,unit_name,unit_health,unit_damage,move_moveSpd,move_maxMoveSpd,
6 | Value,2001,False,False,bullet0,1,1,12,12,
7 | ,2002,True,False,bullet1,1,2,12,12,
8 | ,2003,True,True,bullet2,2,2,12,12,
9 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Resources/GlobalConfig.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | ../DataAndTools/Data/Client/
5 | Data/
6 | Data/
7 | Data/
8 |
9 |
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Src/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Service.cs:
--------------------------------------------------------------------------------
1 | // Copyright 2019 谭杰鹏. All Rights Reserved //https://github.com/JiepengTan
2 |
3 | using System;
4 | using System.Collections.Generic;
5 | using Lockstep.UnsafeECSDefine;
6 |
7 | namespace Lockstep.UnsafeECSDefine {
8 | public partial class GameStateService : IGameService{}
9 | public partial class GameConfigService : IGameService{}
10 | public partial class GameEventService : IGameService{}
11 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Core/WorldSystems.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.Game;
2 | using Lockstep.UnsafeECS;
3 |
4 | namespace Lockstep.UnsafeECS.Game {
5 | public partial class WorldSystems : Systems {
6 | public WorldSystems(Context contexts, IServiceContainer services, Systems logicFeature){
7 | if (logicFeature != null) {
8 | Add(logicFeature);
9 | }
10 | }
11 | }
12 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Service.cs:
--------------------------------------------------------------------------------
1 | // Copyright 2019 谭杰鹏. All Rights Reserved //https://github.com/JiepengTan
2 |
3 | using System;
4 | using System.Collections.Generic;
5 | using Lockstep.UnsafeECSDefine;
6 |
7 | namespace Lockstep.UnsafeECSDefine {
8 | public partial class GameStateService : IGameService{}
9 | public partial class GameConfigService : IGameService{}
10 | public partial class GameEventService : IGameService{}
11 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Services/UnityEntityService.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.UnsafeECS.Game;
2 | using Unity.Transforms;
3 | using Entity = Lockstep.UnsafeECS.Entity;
4 |
5 | namespace Lockstep.Game {
6 | public unsafe partial class UnityEntityService : BaseUnityEntityService {
7 | public override void OnPlayerCubeCreated(Context context, PlayerCube* entity){}
8 | public override void OnPlayerCubeDestroy(Context context, PlayerCube* entity){}
9 | }
10 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Src/Server.SimpleServer/Src/Server/HashCodeMatcher.cs:
--------------------------------------------------------------------------------
1 | namespace Lockstep.FakeServer {
2 | public class HashCodeMatcher {
3 | public long hashCode;
4 | public bool[] sendResult;
5 | public int count;
6 |
7 | public HashCodeMatcher(int num){
8 | hashCode = 0;
9 | sendResult = new bool[num];
10 | count = 0;
11 | }
12 |
13 | public bool IsMatchered => count == sendResult.Length;
14 | }
15 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Src/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/System.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.UnsafeECSDefine;
2 |
3 | namespace Lockstep.UnsafeECSDefine {
4 |
5 | //Input
6 | public class InputSystem : IPureSystem {
7 | public PlayerData PlayerData;
8 | public MoveData MoveData;
9 | public Transform3D Transform;
10 | }
11 |
12 | public class PlayerMoveSystem : IPureSystem {
13 | public Transform3D Transform3D;
14 | public MoveData MoveData;
15 | }
16 |
17 | }
--------------------------------------------------------------------------------
/Client.Unity/ProjectSettings/AudioManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!11 &1
4 | AudioManager:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | m_Volume: 1
8 | Rolloff Scale: 1
9 | Doppler Factor: 1
10 | Default Speaker Mode: 2
11 | m_SampleRate: 0
12 | m_DSPBufferSize: 1024
13 | m_VirtualVoiceCount: 512
14 | m_RealVoiceCount: 32
15 | m_SpatializerPlugin:
16 | m_AmbisonicDecoderPlugin:
17 | m_DisableAudio: 0
18 | m_VirtualizeEffects: 1
19 | m_RequestedDSPBufferSize: 0
20 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/System.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.UnsafeECSDefine;
2 |
3 | namespace Lockstep.UnsafeECSDefine {
4 |
5 | //Input
6 | public class InputSystem : IPureSystem {
7 | public PlayerData PlayerData;
8 | public MoveData MoveData;
9 | public Transform3D Transform;
10 | }
11 |
12 | public class PlayerMoveSystem : IPureSystem {
13 | public Transform3D Transform3D;
14 | public MoveData MoveData;
15 | }
16 |
17 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Config/ExcelParser/CSTemplate.txt:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using Lockstep.Serialization;
4 | using Lockstep.Math;
5 |
6 | namespace Lockstep.Game{
7 | public partial class Table_#TableName : TableData
8 | {
9 | const string tableName = "#TableName";
10 | public override string Name() { return tableName; }
11 | #PropertyDeclare
12 |
13 | protected override void DoParseData(Deserializer reader){#PropertyAssign
14 | }
15 | }
16 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Config/CopySourceFiles/Unity2Csproj.json:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "__commment": "Copy file from pure csproj to unity dir",
4 | "srcDir": "../Src/Client.Unity/Assets/__DllSourceFiles/",
5 | "dstDir": "../Src/",
6 | "srcProjectDirs": [
7 | "Common.Editor",
8 | "Common.View",
9 | "Common.Model",
10 | "Engine.View",
11 | "Engine.Editor",
12 | "Engine.LockstepEngine",
13 | "Game.View",
14 | "Game.Model",
15 | "Tools.UnsafeECS.ECdefine.Game"
16 | ],
17 | "sourceFileDir": "/Src"
18 | }
19 | ]
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Game.View.asmdef:
--------------------------------------------------------------------------------
1 | {
2 | "name": "Game.View",
3 | "references": [
4 | "Engine.LockstepEngine",
5 | "Common.Model",
6 | "Common.UnsafeECS",
7 | "Engine.View",
8 | "Common.View",
9 | "Game.Model",
10 | "Unity.Entities",
11 | "Unity.Entities.Hybrid",
12 | "Unity.Mathematics",
13 | "Unity.Transforms",
14 | "Unity.Jobs",
15 | "Unity.Collections",
16 | "Unity.Burst"
17 | ],
18 | "allowUnsafeCode": true
19 | }
20 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Misc/ConfigData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using System.Runtime.InteropServices;
3 | using Lockstep.Math;
4 |
5 | namespace Lockstep.UnsafeECS.Game {
6 |
7 | [System.Serializable]
8 | [StructLayout(LayoutKind.Sequential)]
9 | public struct ConfigPlayerInfo {
10 | public LVector3 Position;
11 | public LVector3 Forward;
12 | public LFloat Scale;
13 | public LFloat Deg;
14 | public int AssetId;
15 | public MoveData MoveData;
16 | }
17 |
18 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Config/CopySourceFiles/Csproj2Unity.json:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "__commment": "Copy file from pure csproj to unity dir",
4 | "srcDir": "../Src/",
5 | "dstDir": "../Src/Client.Unity/Assets/__DllSourceFiles/",
6 | "srcProjectDirs": [
7 | "Common.Editor",
8 | "Common.View",
9 | "Common.Model",
10 | "Engine.View",
11 | "Engine.Editor",
12 | "Engine.LockstepEngine",
13 | "Game.View",
14 | "Game.View",
15 | "Game.Model",
16 | "Tools.UnsafeECS.ECdefine.Game"
17 | ],
18 | "sourceFileDir": "/Src"
19 | }
20 | ]
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Framework/PingMono.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using System.Linq;
3 | using Lockstep.Game;
4 | using Lockstep.Math;
5 | using UnityEngine;
6 |
7 | namespace Lockstep.Game {
8 | public class PingMono : UnityEngine.MonoBehaviour {
9 | [SerializeField] private int PingVal;
10 | private void OnGUI(){
11 | PingVal = SimulatorService.Instance.PingVal;
12 | GUI.Label(new Rect(0, 0, 100, 100), $"Ping: {PingVal}ms Dealy: {SimulatorService.Instance.DelayVal}ms ");
13 | }
14 | }
15 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Src/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Entity.cs:
--------------------------------------------------------------------------------
1 | // Copyright 2019 谭杰鹏. All Rights Reserved //https://github.com/JiepengTan
2 |
3 | using System.Collections.Generic;
4 | using Lockstep.UnsafeECSDefine;
5 |
6 | namespace Lockstep.UnsafeECSDefine {
7 |
8 |
9 | [EntityCount(2)]
10 | public partial class PlayerCube :IEntity,IBindViewEntity,IUpdateViewEntity{
11 | public Transform3D Transform;
12 | public Prefab Prefab;
13 | public MoveData Move;
14 | public PlayerData Player;
15 | public PlayerCubeTag Tag;
16 | }
17 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Entity.cs:
--------------------------------------------------------------------------------
1 | // Copyright 2019 谭杰鹏. All Rights Reserved //https://github.com/JiepengTan
2 |
3 | using System.Collections.Generic;
4 | using Lockstep.UnsafeECSDefine;
5 |
6 | namespace Lockstep.UnsafeECSDefine {
7 |
8 |
9 | [EntityCount(2)]
10 | public partial class PlayerCube :IEntity,IBindViewEntity,IUpdateViewEntity{
11 | public Transform3D Transform;
12 | public Prefab Prefab;
13 | public MoveData Move;
14 | public PlayerData Player;
15 | public PlayerCubeTag Tag;
16 | }
17 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Context_TempField.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using System.Runtime.InteropServices;
3 | using Lockstep.Game;
4 | using Lockstep.Logging;
5 | using Lockstep.Math;
6 | using NetMsg.Common;
7 | using Unity.Collections;
8 |
9 | namespace Lockstep.UnsafeECS.Game {
10 | public unsafe partial class TempFields {
11 | public void OnDestroy(){
12 | Clean();
13 | }
14 | public void FramePrepare(){}
15 |
16 | public void FrameClearUp(){
17 | Clean();
18 | }
19 | private void Clean(){}
20 | }
21 | }
--------------------------------------------------------------------------------
/Client.Unity/ProjectSettings/TagManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!78 &1
4 | TagManager:
5 | serializedVersion: 2
6 | tags: []
7 | layers:
8 | - Default
9 | - TransparentFX
10 | - Ignore Raycast
11 | -
12 | - Water
13 | - UI
14 | -
15 | -
16 | - Ground
17 | - Players
18 | - PostProcessing
19 | - Floor
20 | -
21 | -
22 | -
23 | -
24 | -
25 | -
26 | -
27 | -
28 | -
29 | -
30 | -
31 | -
32 | -
33 | -
34 | -
35 | -
36 | -
37 | -
38 | -
39 | -
40 | m_SortingLayers:
41 | - name: Default
42 | uniqueID: 0
43 | locked: 0
44 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Systems/GameBaseSystem.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.UnsafeECS;
2 |
3 | namespace Lockstep.UnsafeECS.Game {
4 | public abstract unsafe partial class GameBaseSystem : BaseSystem {
5 | protected TempFields _tempFields => _context.TempFields;
6 | }
7 |
8 | public abstract unsafe partial class GameJobSystem : BaseJobSystem {
9 | protected TempFields _tempFields => _context.TempFields;
10 | }
11 |
12 | public abstract partial class GameExecuteSystem :BaseExecuteSystem{
13 | protected TempFields _tempFields => _context.TempFields;
14 | }
15 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/bin/Tools.UnsafeECS.ECDefine.Game.deps.json:
--------------------------------------------------------------------------------
1 | {
2 | "runtimeTarget": {
3 | "name": ".NETCoreApp,Version=v2.2",
4 | "signature": "da39a3ee5e6b4b0d3255bfef95601890afd80709"
5 | },
6 | "compilationOptions": {},
7 | "targets": {
8 | ".NETCoreApp,Version=v2.2": {
9 | "Tools.UnsafeECS.ECDefine.Game/1.0.0": {
10 | "runtime": {
11 | "Tools.UnsafeECS.ECDefine.Game.dll": {}
12 | }
13 | }
14 | }
15 | },
16 | "libraries": {
17 | "Tools.UnsafeECS.ECDefine.Game/1.0.0": {
18 | "type": "project",
19 | "serviceable": false,
20 | "sha512": ""
21 | }
22 | }
23 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Services/UnityMapService.cs:
--------------------------------------------------------------------------------
1 | namespace Lockstep.Game {
2 | [System.Serializable]
3 | public partial class UnityMapService : MapService {
4 |
5 | public override void DoStart(){
6 | }
7 |
8 | public void OnEvent_SimulationAwake(object param){
9 | LoadLevel(1);
10 | }
11 |
12 | protected void LoadLevel(int level){
13 | EventHelper.Trigger(EEvent.LevelLoadProgress, 0.5f);
14 | EventHelper.Trigger(EEvent.LevelLoadProgress, 1f);
15 | EventHelper.Trigger(EEvent.LevelLoadDone, level);
16 | }
17 | }
18 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Game.Model.asmdef:
--------------------------------------------------------------------------------
1 | {
2 | "name": "Game.Model",
3 | "references": [
4 | "Engine.LockstepEngine",
5 | "Common.Model",
6 | "Common.UnsafeECS",
7 | "Unity.Entities",
8 | "Unity.Entities.Hybrid",
9 | "Unity.Mathematics",
10 | "Unity.Transforms",
11 | "Unity.Jobs",
12 | "Unity.Collections",
13 | "Unity.Burst"
14 | ],
15 | "allowUnsafeCode": true,
16 | "overrideReferences": false,
17 | "precompiledReferences": [],
18 | "autoReferenced": true,
19 | "defineConstraints": [],
20 | "versionDefines": []
21 | }
22 |
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Tools/ExcelParser.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | dir="$(cd $(dirname ${BASH_SOURCE[0]}) && pwd)"
3 | cd $dir/../
4 | cd ./bin
5 | pwd
6 | echo "1.ExcelParser"
7 | mono Tools.ExcelParser.exe ../Config/ExcelParser/Config.json
8 |
9 | echo "2.Copy Source File"
10 | rm -rf ../../Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__ExcelParser/*.cs
11 | mkdir -p ../../Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__ExcelParser/
12 | cp ../Config/ExcelParser/Output/CodeCS/*.cs ../../Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__ExcelParser/
13 | rm -rf ../../Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__ExcelParser/Table_Assets.cs
14 |
15 |
16 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Resources/Config/UnityGameViewConfig.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
6 | m_CorrespondingSourceObject: {fileID: 0}
7 | m_PrefabInstance: {fileID: 0}
8 | m_PrefabAsset: {fileID: 0}
9 | m_GameObject: {fileID: 0}
10 | m_Enabled: 1
11 | m_EditorHideFlags: 0
12 | m_Script: {fileID: 11500000, guid: ce625fca54ee7448e83d49e11ee55e7a, type: 3}
13 | m_Name: UnityGameViewConfig
14 | m_EditorClassIdentifier:
15 | RenderInfos: []
16 | skillEffectPrefab: {fileID: 5560203806037324126, guid: 06a930379e194436db1b5ce25e7704c2,
17 | type: 3}
18 | Pad: 0
19 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/EntityExt.cs:
--------------------------------------------------------------------------------
1 | namespace Lockstep.InternalUnsafeECS {
2 |
3 | }
4 |
5 | namespace Lockstep.UnsafeECS {
6 | public static class EntityExt {
7 | public static Game.EEntityType EnumType(this EntityRef _this){
8 | return (Game.EEntityType) _this._type;
9 | }
10 | public static Game.EEntityType EnumType(this Entity _this){
11 | return (Game.EEntityType) _this._ref._type;
12 | }
13 | }
14 |
15 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/ResScripts/UnityGameConfig.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using System.IO;
3 | using Lockstep.UnsafeECS.Game;
4 | using Lockstep.Util;
5 | using UnityEngine;
6 |
7 | namespace Lockstep.Game {
8 | [CreateAssetMenu(menuName = "GameConfig")]
9 | [System.Serializable]
10 | public partial class UnityGameConfig : UnityEngine.ScriptableObject {
11 | public GameConfig pureConfig = new GameConfig();
12 |
13 | public static void SaveToJson(GameConfig config){
14 | var json = JsonUtil.ToJson(config);
15 | File.WriteAllText(Application.dataPath + "/LockstepECS/Resources/Config/GameConfig.json", json);
16 | }
17 | }
18 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Data/Client/AssetPath.json:
--------------------------------------------------------------------------------
1 | {
2 | "10": "Prefabs/Tanks/Tank0",
3 | "11": "Prefabs/Tanks/Tank1",
4 | "12": "Prefabs/Tanks/Tank2",
5 | "13": "Prefabs/Tanks/Tank3",
6 | "14": "Prefabs/Tanks/Tank4",
7 | "20": "Prefabs/Items/ItemAddLife",
8 | "21": "Prefabs/Items/ItemBoom",
9 | "22": "Prefabs/Items/ItemUpgrade",
10 | "30": "Prefabs/Camp/Camp",
11 | "40": "Prefabs/Player/Player0",
12 | "41": "Prefabs/Player/Player1",
13 | "42": "Prefabs/Player/Player2",
14 | "43": "Prefabs/Player/Player3",
15 | "50": "Prefabs/Bullet/Bullet0",
16 | "51": "Prefabs/Bullet/Bullet1",
17 | "52": "Prefabs/Bullet/Bullet2",
18 | "60": "Prefabs/Effect/EffectBorn",
19 | "61": "Prefabs/Effect/EffectExplosion"
20 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Tools/UpdateAndCodeGen.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | dir="$(cd $(dirname ${BASH_SOURCE[0]}) && pwd)"
3 | cd $dir/../
4 | cd ./bin
5 | pwd
6 |
7 | echo "...Update Project File"
8 |
9 | rm -rf ../Src/Tools.UnsafeECS.ECdefine.Game/Src/
10 | mkdir -p ../Src/Tools.UnsafeECS.ECdefine.Game/Src/
11 | cp -rf ../../../Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECdefine.Game/Src/ ../Src/Tools.UnsafeECS.ECdefine.Game/Src/
12 | find ../Src/Tools.UnsafeECS.ECdefine.Game/Src/ -name "*.meta" |xargs rm -f
13 |
14 | dotnet msbuild /property:Configuration=Debug /p:WarningLevel=0 /verbosity:minimal ../Src/Tools.UnsafeECS.ECDefine.Game/Tools.UnsafeECS.ECDefine.Game.csproj
15 |
16 | echo "...Update Project File"
17 | ../Tools/UnsafeECSCodeGen
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Tools/UpdateAndCodeGen_Win.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | dir="$(cd $(dirname ${BASH_SOURCE[0]}) && pwd)"
3 | cd $dir/../
4 | cd ./bin
5 | pwd
6 |
7 | echo "...Update Project File"
8 |
9 | rm -rf ../Src/Tools.UnsafeECS.ECdefine.Game/Src/
10 | mkdir -p ../Src/Tools.UnsafeECS.ECdefine.Game/Src/
11 | cp -rf ../../../Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECdefine.Game/Src/ ../Src/Tools.UnsafeECS.ECdefine.Game/
12 | find ../Src/Tools.UnsafeECS.ECdefine.Game/Src/ -name "*.meta" |xargs rm -f
13 |
14 | dotnet msbuild //property:Configuration=Debug //p:WarningLevel=0 //verbosity:minimal ../Src/Tools.UnsafeECS.ECDefine.Game/Tools.UnsafeECS.ECDefine.Game.csproj
15 |
16 | echo "...Update Project File"
17 | ../Tools/UnsafeECSCodeGen
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Services/UnsafeEcsFactoryService.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.Game;
2 | using Lockstep.UnsafeECS.Game;
3 | using Lockstep.UnsafeECS;
4 |
5 | namespace Lockstep.UnsafeECS.Game {
6 | public class UnsafeEcsFactoryService : IECSFactoryService {
7 | private static Context _lastInstance;
8 | public object CreateSystems(object contexts, IServiceContainer services){
9 | return new GameLogicSystems(contexts as Context,services) ;
10 | }
11 |
12 | public object CreateContexts(){
13 | var ctx = _lastInstance == null ? Context.Instance : new Context();
14 | _lastInstance = ctx;
15 | return ctx;
16 | }
17 | }
18 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Services/UnityGameAudioService.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 |
3 | namespace Lockstep.Game {
4 |
5 |
6 | [System.Serializable]
7 | public class UnityGameAudioService : UnityGameService,IGameAudioService {
8 | private UnityAudioService _unityAudioSvc;
9 | private static string _audioConfigPath = "AudioConfig";
10 | private AudioConfig _config = new AudioConfig();
11 |
12 | void OnEvent_OnAllPlayerFinishedLoad(object param){
13 | PlayMusicStart();
14 | }
15 |
16 | public void PlayMusicBG(){ _audioService.PlayClip(_config.BgMusic); }
17 | public void PlayMusicStart(){ _audioService.PlayClip(_config.StartMusic); }
18 |
19 | }
20 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/ExtensionGameUnityService.cs:
--------------------------------------------------------------------------------
1 | namespace Lockstep.Game {
2 |
3 | public partial class GameService :BaseGameService{
4 | protected IGameStateService _gameStateService;
5 | protected IGameConfigService _gameConfigService;
6 | protected IGameResourceService _gameResourceService;
7 |
8 | protected override void OnInitReference(IServiceContainer serviceContainer, IManagerContainer mgrContainer){
9 |
10 | _gameStateService = serviceContainer.GetService();
11 | _gameConfigService = serviceContainer.GetService();
12 | _gameResourceService = serviceContainer.GetService();
13 | }
14 | }
15 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/GameResourceService.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Reflection;
4 | using Lockstep.Game;
5 | using UnityEngine;
6 |
7 | namespace Lockstep.Game {
8 | public class GameResourceService : GameService, IGameResourceService {
9 | public string pathPrefix = "Prefabs/";
10 |
11 | private Dictionary _id2Prefab = new Dictionary();
12 |
13 | public object LoadPrefab(int id){
14 | return _LoadPrefab(id);
15 | }
16 |
17 | GameObject _LoadPrefab(int id){
18 | if (_id2Prefab.TryGetValue(id, out var val)) {
19 | return val;
20 | }
21 |
22 | return null;
23 | }
24 | }
25 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/ReadMe.txt:
--------------------------------------------------------------------------------
1 | -------------------------------------------------------------
2 | QUICK START
3 | -------------------------------------------------------------
4 | 1. ClientMode :Open Scene LockstepECS/Example/Demo_Cube and Run it;
5 | 2. NetworkingMode :
6 | UnCompress the DataAndTools.zip In dir Application.dataPath/../
7 |
8 |
9 | -------------------------------------------------------------
10 | USER SUPPORT
11 | -------------------------------------------------------------
12 | If you have any problem with LockstepECS,
13 | you can send me a email
14 | 2314215231@qq.com
15 |
16 |
17 | -------------------------------------------------------------
18 | Thanks for using LockstepECS!
19 | https://github.com/JiepengTan/LockstepECS_Document
20 | -------------------------------------------------------------
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Plugins/ICSharpCode.SharpZipLib.dll.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 75fb6ca3238804c21b0cc0d5e50d0bf1
3 | PluginImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | iconMap: {}
7 | executionOrder: {}
8 | defineConstraints: []
9 | isPreloaded: 0
10 | isOverridable: 0
11 | isExplicitlyReferenced: 0
12 | validateReferences: 1
13 | platformData:
14 | - first:
15 | Any:
16 | second:
17 | enabled: 1
18 | settings: {}
19 | - first:
20 | Editor: Editor
21 | second:
22 | enabled: 0
23 | settings:
24 | DefaultValueInitialized: true
25 | - first:
26 | Windows Store Apps: WindowsStoreApps
27 | second:
28 | enabled: 0
29 | settings:
30 | CPU: AnyCPU
31 | userData:
32 | assetBundleName:
33 | assetBundleVariant:
34 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Common.Model.dll.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: aeb9e7e0917ba456caccc847ff1a4896
3 | PluginImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | iconMap: {}
7 | executionOrder: {}
8 | defineConstraints: []
9 | isPreloaded: 0
10 | isOverridable: 0
11 | isExplicitlyReferenced: 0
12 | validateReferences: 1
13 | platformData:
14 | - first:
15 | Any:
16 | second:
17 | enabled: 1
18 | settings: {}
19 | - first:
20 | Editor: Editor
21 | second:
22 | enabled: 0
23 | settings:
24 | DefaultValueInitialized: true
25 | - first:
26 | Windows Store Apps: WindowsStoreApps
27 | second:
28 | enabled: 0
29 | settings:
30 | CPU: AnyCPU
31 | userData:
32 | assetBundleName:
33 | assetBundleVariant:
34 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Common.View.dll.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4df84736490574df6ad566a178c2aaf9
3 | PluginImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | iconMap: {}
7 | executionOrder: {}
8 | defineConstraints: []
9 | isPreloaded: 0
10 | isOverridable: 0
11 | isExplicitlyReferenced: 0
12 | validateReferences: 1
13 | platformData:
14 | - first:
15 | Any:
16 | second:
17 | enabled: 1
18 | settings: {}
19 | - first:
20 | Editor: Editor
21 | second:
22 | enabled: 0
23 | settings:
24 | DefaultValueInitialized: true
25 | - first:
26 | Windows Store Apps: WindowsStoreApps
27 | second:
28 | enabled: 0
29 | settings:
30 | CPU: AnyCPU
31 | userData:
32 | assetBundleName:
33 | assetBundleVariant:
34 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Engine.View.dll.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a422430f97c6941eeadf60fb256db677
3 | PluginImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | iconMap: {}
7 | executionOrder: {}
8 | defineConstraints: []
9 | isPreloaded: 0
10 | isOverridable: 0
11 | isExplicitlyReferenced: 0
12 | validateReferences: 1
13 | platformData:
14 | - first:
15 | Any:
16 | second:
17 | enabled: 1
18 | settings: {}
19 | - first:
20 | Editor: Editor
21 | second:
22 | enabled: 0
23 | settings:
24 | DefaultValueInitialized: true
25 | - first:
26 | Windows Store Apps: WindowsStoreApps
27 | second:
28 | enabled: 0
29 | settings:
30 | CPU: AnyCPU
31 | userData:
32 | assetBundleName:
33 | assetBundleVariant:
34 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Common.UnsafeECS.dll.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ce78813a159d14cd980bd2a1487e17c1
3 | PluginImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | iconMap: {}
7 | executionOrder: {}
8 | defineConstraints: []
9 | isPreloaded: 0
10 | isOverridable: 0
11 | isExplicitlyReferenced: 0
12 | validateReferences: 1
13 | platformData:
14 | - first:
15 | Any:
16 | second:
17 | enabled: 1
18 | settings: {}
19 | - first:
20 | Editor: Editor
21 | second:
22 | enabled: 0
23 | settings:
24 | DefaultValueInitialized: true
25 | - first:
26 | Windows Store Apps: WindowsStoreApps
27 | second:
28 | enabled: 0
29 | settings:
30 | CPU: AnyCPU
31 | userData:
32 | assetBundleName:
33 | assetBundleVariant:
34 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Editor/Common.Editor.dll.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 937eb1d1ec9e64892aab8d030d621cd9
3 | PluginImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | iconMap: {}
7 | executionOrder: {}
8 | defineConstraints: []
9 | isPreloaded: 0
10 | isOverridable: 0
11 | isExplicitlyReferenced: 0
12 | validateReferences: 1
13 | platformData:
14 | - first:
15 | Any:
16 | second:
17 | enabled: 0
18 | settings: {}
19 | - first:
20 | Editor: Editor
21 | second:
22 | enabled: 1
23 | settings:
24 | DefaultValueInitialized: true
25 | - first:
26 | Windows Store Apps: WindowsStoreApps
27 | second:
28 | enabled: 0
29 | settings:
30 | CPU: AnyCPU
31 | userData:
32 | assetBundleName:
33 | assetBundleVariant:
34 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Editor/Engine.Editor.dll.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b6f6791a2443d4630a9ea067fab46324
3 | PluginImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | iconMap: {}
7 | executionOrder: {}
8 | defineConstraints: []
9 | isPreloaded: 0
10 | isOverridable: 0
11 | isExplicitlyReferenced: 0
12 | validateReferences: 1
13 | platformData:
14 | - first:
15 | Any:
16 | second:
17 | enabled: 0
18 | settings: {}
19 | - first:
20 | Editor: Editor
21 | second:
22 | enabled: 1
23 | settings:
24 | DefaultValueInitialized: true
25 | - first:
26 | Windows Store Apps: WindowsStoreApps
27 | second:
28 | enabled: 0
29 | settings:
30 | CPU: AnyCPU
31 | userData:
32 | assetBundleName:
33 | assetBundleVariant:
34 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Engine.LockstepEngine.dll.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: fed6b65838a874d149f6cdd669f3ff0e
3 | PluginImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | iconMap: {}
7 | executionOrder: {}
8 | defineConstraints: []
9 | isPreloaded: 0
10 | isOverridable: 0
11 | isExplicitlyReferenced: 0
12 | validateReferences: 1
13 | platformData:
14 | - first:
15 | Any:
16 | second:
17 | enabled: 1
18 | settings: {}
19 | - first:
20 | Editor: Editor
21 | second:
22 | enabled: 0
23 | settings:
24 | DefaultValueInitialized: true
25 | - first:
26 | Windows Store Apps: WindowsStoreApps
27 | second:
28 | enabled: 0
29 | settings:
30 | CPU: AnyCPU
31 | userData:
32 | assetBundleName:
33 | assetBundleVariant:
34 |
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Src/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Component.cs:
--------------------------------------------------------------------------------
1 | // Copyright 2019 谭杰鹏. All Rights Reserved //https://github.com/JiepengTan
2 |
3 | using Lockstep.UnsafeECSDefine;
4 | using Lockstep.Math;
5 |
6 | namespace Lockstep.UnsafeECSDefine {
7 |
8 | public partial class PlayerCubeTag : IGameComponent {
9 | public int Pad;
10 | }
11 |
12 | public partial class AssetData : IGameComponent {
13 | public int AssetId;
14 | }
15 |
16 | public partial class PlayerData : IGameComponent {
17 | public int Score;
18 | public int LocalId;
19 | }
20 | public partial class MoveData : IGameComponent {
21 | public float MoveSpd;
22 | public float AcceleratedSpd;
23 | public float CurSpd;
24 | public float AngularSpd;
25 | public float DeltaDeg;
26 | }
27 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Component.cs:
--------------------------------------------------------------------------------
1 | // Copyright 2019 谭杰鹏. All Rights Reserved //https://github.com/JiepengTan
2 |
3 | using Lockstep.UnsafeECSDefine;
4 | using Lockstep.Math;
5 |
6 | namespace Lockstep.UnsafeECSDefine {
7 |
8 | public partial class PlayerCubeTag : IGameComponent {
9 | public int Pad;
10 | }
11 |
12 | public partial class AssetData : IGameComponent {
13 | public int AssetId;
14 | }
15 |
16 | public partial class PlayerData : IGameComponent {
17 | public int Score;
18 | public int LocalId;
19 | }
20 | public partial class MoveData : IGameComponent {
21 | public float MoveSpd;
22 | public float AcceleratedSpd;
23 | public float CurSpd;
24 | public float AngularSpd;
25 | public float DeltaDeg;
26 | }
27 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/GameLogicSystems.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.Game;
2 | using Lockstep.UnsafeECS;
3 |
4 | namespace Lockstep.UnsafeECS.Game {
5 | public class GameLogicSystems : Systems {
6 | public GameLogicSystems(Context contexts, IServiceContainer services){
7 | //Init
8 | {
9 | Add(new InitSystem().Init(contexts, services));
10 | }
11 | //Input
12 | {
13 | Add(new InputSystem().Init(contexts, services));
14 | }
15 | //Update
16 | {
17 | //
18 | Add(new PlayerMoveSystem().Init(contexts, services));
19 | }
20 | //Clean
21 | {
22 | //Add(new DestroySystem().Init(contexts, services));
23 | }
24 | }
25 | }
26 | }
--------------------------------------------------------------------------------
/Client.Unity/ProjectSettings/EditorSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!159 &1
4 | EditorSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 8
7 | m_ExternalVersionControlSupport: Visible Meta Files
8 | m_SerializationMode: 2
9 | m_LineEndingsForNewScripts: 1
10 | m_DefaultBehaviorMode: 0
11 | m_PrefabRegularEnvironment: {fileID: 0}
12 | m_PrefabUIEnvironment: {fileID: 0}
13 | m_SpritePackerMode: 0
14 | m_SpritePackerPaddingPower: 1
15 | m_EtcTextureCompressorBehavior: 0
16 | m_EtcTextureFastCompressor: 2
17 | m_EtcTextureNormalCompressor: 2
18 | m_EtcTextureBestCompressor: 5
19 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmdef;rsp;asmref
20 | m_ProjectGenerationRootNamespace:
21 | m_CollabEditorSettings:
22 | inProgressEnabled: 1
23 | m_EnableTextureStreamingInEditMode: 1
24 | m_EnableTextureStreamingInPlayMode: 1
25 | m_AsyncShaderCompilation: 1
26 | m_ShowLightmapResolutionOverlay: 1
27 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/State/GameStateService.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.Game;
2 | using Lockstep.Math;
3 |
4 | namespace Lockstep.Game {
5 | public partial class GameStateService : BaseService {
6 | public override void DoStart(){
7 | base.DoStart();
8 | IsGameOver = false;
9 | }
10 |
11 | public void OnEvent_LevelLoadDone(object param){
12 | var level = (int) param;
13 | IsGameOver = false;
14 | _globalStateService.CurLevel = level;
15 | }
16 |
17 | public void OnEvent_SimulationStart(object param){
18 | IsPlaying = true;
19 | }
20 |
21 | private void GameFalied(){
22 | IsGameOver = true;
23 | ShowMessage("Game Over!!");
24 | }
25 |
26 | private void GameWin(){
27 | IsGameOver = true;
28 | }
29 |
30 | void ShowMessage(string msg){ }
31 | }
32 | }
--------------------------------------------------------------------------------
/Client.Unity/.gitignore:
--------------------------------------------------------------------------------
1 | [Ll]ibrary/
2 | [Tt]emp/
3 | [Oo]bj/
4 | [Ll]og/
5 | [Ll]ogs/
6 | [Bb]uild/
7 | [Bb]uilds/
8 | CoreEditor/
9 | __ECSOutput/
10 | Assets/AssetStoreTools*
11 | [Aa]ssets/StreamingAssets/
12 | [Aa]ssets/TempRes
13 | [Aa]ssets/LockstepECS/Plugins/Editor/JetBrains/
14 | [Aa]ssets/Plugins/Editor/JetBrains/
15 | [Aa]ssets/Plugins/Game/
16 | [Aa]ssets/Plugins/Entitas/
17 | [Aa]ssets/Plugins/LockstepEngine/
18 | Packages/SharpZipLib.1.2.0/
19 | .idea/
20 | #不要重复提交相同的Dlls
21 | # Visual Studio cache directory
22 | .vs/
23 | # Autogenerated VS/MD/Consulo solution and project files
24 | ExportedObj/
25 | .consulo/
26 | *.unityproj
27 | *.suo
28 | *.tmp
29 | *.sln
30 | *.csproj
31 | *.user
32 | *.userprefs
33 | *.pidb
34 | *.booproj
35 | *.svd
36 | *.pdb
37 | *.opendb
38 |
39 | # Unity3D generated meta files
40 | *.pidb.meta
41 | *.pdb.meta
42 |
43 | # Unity3D Generated File On Crash Reports
44 | sysinfo.txt
45 |
46 | # Builds
47 | *.apk
48 | *.unitypackage
49 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/State/GameConfigService.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.IO;
4 | using Lockstep.ECS;
5 | using Lockstep.Math;
6 | using Lockstep.Serialization;
7 | using Lockstep.Util;
8 | using NetMsg.Common;
9 | using UnityEngine;
10 | using Lockstep.Game;
11 |
12 | namespace Lockstep.Game {
13 | [System.Serializable]
14 | public partial class GameConfigService : BaseService {
15 | [NonSerialized] private GameConfig _curState;
16 | public LFloat DeltaTime => new LFloat(null,NetworkDefine.UPDATE_DELTATIME);
17 | public override void DoAwake(IServiceContainer services){
18 | var text = UnityEngine.Resources.Load("Config/GameConfig").text;
19 | _curState = JsonUtil.ToObject(text);
20 | _globalStateService.GameStartInfo = _curState.ClientModeInfo;
21 | }
22 | }
23 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Core/Context.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using Lockstep.Game;
3 | using Lockstep.Logging;
4 | using Lockstep.Math;
5 | using Lockstep.Serialization;
6 | using Lockstep.UnsafeECS;
7 | using NetMsg.Common;
8 |
9 | namespace Lockstep.UnsafeECS.Game {
10 | public unsafe partial class Context {
11 | public PlayerCube PlayerInfo =>
12 | _entities._PlayerCubeAry._EntityAry[GetService().LocalActorId];
13 |
14 | public PlayerCube GetPlayerInfo(int localActorId){
15 | return _entities._PlayerCubeAry._EntityAry[localActorId];
16 | }
17 |
18 | protected override void OnAwake(){ }
19 |
20 | protected override void OnDestroy(){
21 | Debug.LogError("Destoryed !");
22 | }
23 |
24 | protected override void OnProcessInputQueue(byte actorId, InputCmd cmd){
25 | TempFields.InputCmds[actorId] = cmd;
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/Client.Unity/ProjectSettings/UnityConnectSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!310 &1
4 | UnityConnectSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 1
7 | m_Enabled: 1
8 | m_TestMode: 0
9 | m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events
10 | m_EventUrl: https://cdp.cloud.unity3d.com/v1/events
11 | m_ConfigUrl: https://config.uca.cloud.unity3d.com
12 | m_TestInitMode: 0
13 | CrashReportingSettings:
14 | m_EventUrl: https://perf-events.cloud.unity3d.com
15 | m_Enabled: 0
16 | m_LogBufferSize: 10
17 | m_CaptureEditorExceptions: 1
18 | UnityPurchasingSettings:
19 | m_Enabled: 0
20 | m_TestMode: 0
21 | UnityAnalyticsSettings:
22 | m_Enabled: 0
23 | m_TestMode: 0
24 | m_InitializeOnStartup: 1
25 | UnityAdsSettings:
26 | m_Enabled: 0
27 | m_InitializeOnStartup: 1
28 | m_TestMode: 0
29 | m_IosGameId:
30 | m_AndroidGameId:
31 | m_GameIds: {}
32 | m_GameId:
33 | PerformanceReportingSettings:
34 | m_Enabled: 0
35 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/MainScript.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.IO;
3 | using System.Xml;
4 | using Lockstep.Game;
5 | using Lockstep.Game.UI;
6 | using Lockstep.Network;
7 | using Lockstep.UnsafeECS;
8 | using Lockstep.UnsafeECS.Game;
9 | using UnityEngine;
10 |
11 | public class MainScript : BaseMainScript {
12 | protected override ServiceContainer CreateServiceContainer(){
13 | return new UnityServiceContainer();
14 | }
15 |
16 | protected override object CreateWorld(IServiceContainer services, object contextsObj, object logicFeatureObj){
17 | return new UnsafeWorld(services, contextsObj, logicFeatureObj);
18 | }
19 |
20 | public string Ip = "127.0.0.1";
21 | public ushort port = 10083;
22 | protected override void Awake(){
23 | NetClient.serverIpPoint = NetworkUtil.ToIPEndPoint(Ip, port);
24 | base.Awake();
25 | gameObject.AddComponent();
26 | gameObject.AddComponent();
27 | Screen.SetResolution(1024, 768, false);
28 | }
29 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Src/Server.SimpleServer/Server.SimpleServer.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 | netcoreapp2.2
4 | true
5 | Exe
6 |
7 |
8 | false
9 |
10 |
11 | ../../bin/
12 |
13 |
14 | ../../bin/
15 |
16 |
17 |
18 |
19 |
20 |
21 | ..\..\bin\Pure.Engine.LockstepEngine.dll
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Tools/UnsafeECSCodeGen.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | dir="$(cd $(dirname ${BASH_SOURCE[0]}) && pwd)"
3 | cd $dir/../
4 | cd ./bin
5 | pwd
6 | echo "...Update Project File"
7 | mono Tools.UnsafeECSGenerator.dll ../Config/UnsafeECSGenerator/ModelConfig.json
8 | mono Tools.UnsafeECSGenerator.dll ../Config/UnsafeECSGenerator/ViewConfig.json
9 |
10 | pwd
11 |
12 | echo "...Update Project File"
13 | ../Tools/UpdateProjectFile
14 |
15 | # copy to unity
16 | rm -rf ../../Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/
17 | mkdir -p ../../Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/
18 | cp -rf ../Src/Tools.UnsafeECS.ECSOutput/Src/Generated/Model/* ../../Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/
19 |
20 |
21 | rm -rf ../../Assets/LockstepECS/__DllSourceFiles/Game.View/Src/__UnsafeECS/Generated/
22 | mkdir -p ../../Assets/LockstepECS/__DllSourceFiles/Game.View/Src/__UnsafeECS/Generated/
23 | cp -rf ../Src/Tools.UnsafeECS.ECSOutput/Src/Generated/View/* ../../Assets/LockstepECS/__DllSourceFiles/Game.View/Src/__UnsafeECS/Generated/
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/bin/Server.SimpleServer.deps.json:
--------------------------------------------------------------------------------
1 | {
2 | "runtimeTarget": {
3 | "name": ".NETCoreApp,Version=v2.2",
4 | "signature": "da39a3ee5e6b4b0d3255bfef95601890afd80709"
5 | },
6 | "compilationOptions": {},
7 | "targets": {
8 | ".NETCoreApp,Version=v2.2": {
9 | "Server.SimpleServer/1.0.0": {
10 | "dependencies": {
11 | "Pure.Engine.LockstepEngine": "1.0.0.0"
12 | },
13 | "runtime": {
14 | "Server.SimpleServer.dll": {}
15 | }
16 | },
17 | "Pure.Engine.LockstepEngine/1.0.0.0": {
18 | "runtime": {
19 | "Pure.Engine.LockstepEngine.dll": {
20 | "assemblyVersion": "1.0.0.0",
21 | "fileVersion": "1.0.0.0"
22 | }
23 | }
24 | }
25 | }
26 | },
27 | "libraries": {
28 | "Server.SimpleServer/1.0.0": {
29 | "type": "project",
30 | "serviceable": false,
31 | "sha512": ""
32 | },
33 | "Pure.Engine.LockstepEngine/1.0.0.0": {
34 | "type": "reference",
35 | "serviceable": false,
36 | "sha512": ""
37 | }
38 | }
39 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/Editor/EditorMainScript.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.Math;
2 | using Lockstep.Game;
3 | using UnityEditor;
4 | using UnityEngine;
5 |
6 | [CustomEditor(typeof(MonoProxyMainScript))]
7 | public class EditorMainScript : Editor {
8 | private MonoProxyMainScript owner;
9 | public int rollbackTickCount = 60;
10 |
11 | public override void OnInspectorGUI(){
12 | base.OnInspectorGUI();
13 | owner = target as MonoProxyMainScript;
14 | if (!owner.HasInit ) return;
15 | var world = ((owner.GetService()) as SimulatorService)?.World;
16 | EditorGUILayout.LabelField("CurTick " + world.Tick);
17 | rollbackTickCount = EditorGUILayout.IntField("RollbackTickCount", rollbackTickCount);
18 | if (GUILayout.Button("Rollback")) {
19 | ((owner.GetService()) as SimulatorService).__debugRockbackToTick =
20 | world.Tick - rollbackTickCount;
21 | }
22 |
23 | if (GUILayout.Button("Resume")) {
24 | owner.GetService().IsPause = false;
25 | }
26 | }
27 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Resources/Config/GameConfig.json:
--------------------------------------------------------------------------------
1 | {"RelPath":"","RecorderFilePath":"","DumpStrPath":"","MaxPlayerCount":2,"CollisionConfig":{"scrollPos":{"x":{"_val":0},"y":{"_val":0},"_x":0,"_y":0},"isShow":false,"collisionMatrix":[false,false,false,false,false,false,false,false,false],"pos":{"x":{"_val":0},"y":{"_val":0},"z":{"_val":0},"_x":0,"_y":0,"_z":0},"worldSize":{"_val":60000000},"minNodeSize":{"_val":1000000},"loosenessval":{"_val":1250000},"ColliderDataRelFilePath":"","percent":{"_val":100000},"count":100,"showTreeId":0},"ClientModeInfo":{"LocalId":0,"UserCount":1,"MapId":0,"RoomId":0,"Seed":0,"UserInfos":[{"Username":"TestClient","UserId":0,"Datas":[],"_Username":"TestClient","_UserId":0,"_Datas":[]}],"UdpEnd":{"Ip":"","Port":0},"TcpEnd":{"Ip":"","Port":0},"SimulationSpeed":0},"PlayerInfos":[{"Position":{"x":{"_val":0},"y":{"_val":0},"z":{"_val":0},"_x":0,"_y":0,"_z":0},"Forward":{"x":{"_val":0},"y":{"_val":0},"z":{"_val":1000000},"_x":0,"_y":0,"_z":1000000},"Scale":{"_val":1000000},"Deg":{"_val":0},"AssetId":1,"MoveData":{"MoveSpd":{"_val":3000000},"AcceleratedSpd":{"_val":5000000},"CurSpd":{"_val":3000000},"AngularSpd":{"_val":80000000},"DeltaDeg":{"_val":0}}}]}
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Src/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Status.cs:
--------------------------------------------------------------------------------
1 | // Copyright 2019 谭杰鹏. All Rights Reserved //https://github.com/JiepengTan
2 |
3 | using System;
4 | using System.Collections.Generic;
5 | using Lockstep.UnsafeECSDefine;
6 | using Lockstep.Serialization;
7 |
8 | namespace Lockstep.UnsafeECSDefine {
9 | public class CollisionConfig { }
10 | public class Msg_G2C_GameStartInfo { }
11 | public class ConfigPlayerInfo{}
12 | public partial class GameStateService : IServiceState,IGameStateService {
13 | // states
14 | public bool IsPlaying;
15 | public bool IsGameOver;
16 | public byte LocalEntityId;
17 |
18 | // volatile states
19 | public int CurScore;
20 | }
21 |
22 | public partial class GameConfigService : IServiceState,IGameConfigService {
23 | public string RelPath;
24 | public string RecorderFilePath;
25 | public string DumpStrPath;
26 |
27 | public int MaxPlayerCount;
28 |
29 | public CollisionConfig CollisionConfig;
30 | public Msg_G2C_GameStartInfo ClientModeInfo;
31 | public List PlayerInfos;
32 | }
33 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Input/InputSystem.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.Collision2D;
2 | using Lockstep.Game;
3 | using Lockstep.Math;
4 | using Lockstep.Serialization;
5 |
6 | namespace Lockstep.UnsafeECS.Game {
7 | public unsafe partial class InputSystem : GameExecuteSystem {
8 | public void Execute(
9 | ref PlayerData playerData,
10 | ref MoveData moveData,
11 | ref Transform3D transform3D
12 | ){
13 | if (_tempFields.InputCmds.TryGetValue(playerData.LocalId, out var cmd)) {
14 | var input = new Deserializer(cmd.content).Parse();
15 | moveData.DeltaDeg = (int)(short)input.Deg;
16 | }
17 | else {
18 | moveData.DeltaDeg = 0;
19 | }
20 | }
21 |
22 | private LFloat _deltaTime;
23 | protected override bool BeforeSchedule(){
24 | _deltaTime = _globalStateService.DeltaTime;
25 | return true;
26 | }
27 | protected override void AfterSchedule(bool isSucc){
28 | _tempFields.InputCmds.Clear();
29 | }
30 | }
31 |
32 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/Unsafe/Status.cs:
--------------------------------------------------------------------------------
1 | // Copyright 2019 谭杰鹏. All Rights Reserved //https://github.com/JiepengTan
2 |
3 | using System;
4 | using System.Collections.Generic;
5 | using Lockstep.UnsafeECSDefine;
6 | using Lockstep.Serialization;
7 |
8 | namespace Lockstep.UnsafeECSDefine {
9 | public class CollisionConfig { }
10 | public class Msg_G2C_GameStartInfo { }
11 | public class ConfigPlayerInfo{}
12 | public partial class GameStateService : IServiceState,IGameStateService {
13 | // states
14 | public bool IsPlaying;
15 | public bool IsGameOver;
16 | public byte LocalEntityId;
17 |
18 | // volatile states
19 | public int CurScore;
20 | }
21 |
22 | public partial class GameConfigService : IServiceState,IGameConfigService {
23 | public string RelPath;
24 | public string RecorderFilePath;
25 | public string DumpStrPath;
26 |
27 | public int MaxPlayerCount;
28 |
29 | public CollisionConfig CollisionConfig;
30 | public Msg_G2C_GameStartInfo ClientModeInfo;
31 | public List PlayerInfos;
32 | }
33 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Framework/InputMono.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.Collision2D;
2 | using Lockstep.Game;
3 | using Lockstep.Math;
4 | using UnityEngine;
5 | using Debug = Lockstep.Logging.Debug;
6 |
7 | namespace Lockstep.Game {
8 | public class InputMono : UnityEngine.MonoBehaviour {
9 | private static bool IsReplay => Launcher.Instance?.IsVideoMode ?? false;
10 | public ushort skillId;
11 | public ushort deg;
12 | public void Update(){
13 | if (World.Instance != null && !IsReplay) {
14 | var dir = 0;
15 | if (Input.GetKey(KeyCode.D) || Input.GetKey(KeyCode.RightArrow)) {
16 | dir = 1;
17 | }
18 | else if (Input.GetKey(KeyCode.A)|| Input.GetKey(KeyCode.LeftArrow)) {
19 | dir = -1;
20 | }
21 | skillId = (ushort)(Input.GetKey(KeyCode.Space) ? 1 :0);
22 |
23 | GameInputService.CurGameInput = new PlayerInput() {
24 | SkillId = skillId,
25 | Deg = (ushort)(short)dir
26 | };
27 | }
28 | }
29 | }
30 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Logic/PlayerMoveSystem.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.Math;
2 | using UnityEngine;
3 | using Debug = Lockstep.Logging.Debug;
4 |
5 | namespace Lockstep.UnsafeECS.Game {
6 | public unsafe partial class PlayerMoveSystem : GameExecuteSystem {
7 | private LFloat _deltaTime;
8 |
9 | protected override bool BeforeSchedule(){
10 | //assign jobData info
11 | _deltaTime = _globalStateService.DeltaTime;
12 | return true;
13 | }
14 |
15 | public void Execute(ref Transform3D transform3D,
16 | ref MoveData moveData){
17 | var deg = transform3D.Deg + (moveData.DeltaDeg * _deltaTime) * moveData.AngularSpd;
18 | LFloat s, c;
19 | var ccwDeg = (-deg + 90);
20 | LMath.SinCos(out s, out c, LMath.Deg2Rad * ccwDeg);
21 | var ford = new LVector3(c, 0, s);
22 | transform3D.Forward = ford;
23 | var scale = 1 + transform3D.Scale * new LFloat(null, 200);
24 | transform3D.Position += transform3D.Forward *
25 | (_deltaTime * ((moveData.MoveSpd) * scale));
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/EntityViews/EntityViewBoidObstacle.cs:
--------------------------------------------------------------------------------
1 | using System.Linq;
2 | using Lockstep.Serialization;
3 | using System.Runtime.InteropServices;
4 | using System.Runtime.CompilerServices;
5 | using System;
6 | using Lockstep.InternalUnsafeECS;
7 | using System.Collections;
8 | using Lockstep.Math;
9 | using System.Collections.Generic;
10 | using Lockstep.Game;
11 | using Lockstep.Logging;
12 | using Lockstep.Util;
13 | using UnityEngine;
14 |
15 | namespace Lockstep.UnsafeECS.Game {
16 | public unsafe partial class EntityViewPlayerCube : BaseEntityView {
17 | private GameObject skillGo;
18 | static Dictionary _playerId2View = new Dictionary();
19 |
20 | public static EntityViewPlayerCube GetView(int playerId){
21 | if (_playerId2View.TryGetValue(playerId, out var view))
22 | return view;
23 | return null;
24 | }
25 | public override void OnBindEntity(){
26 | _playerId2View[_cloneEntity.Player.LocalId] = this;
27 | }
28 | public override void OnUnbindEntity(){
29 | _playerId2View.Remove(_cloneEntity.Player.LocalId);
30 | }
31 | }
32 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Init/InitSystem.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using Lockstep.Math;
3 | using UnityEngine;
4 | using Debug = Lockstep.Logging.Debug;
5 |
6 | namespace Lockstep.UnsafeECS.Game {
7 | public unsafe class InitSystem : GameBaseSystem, IInitializeSystem {
8 | public void Initialize(IContext context){
9 | _context.HasInit = true;
10 | var config = _gameConfigService;
11 | int playerId = 0;
12 | var count = _globalStateService.ActorCount;
13 | for (int i = 0; i < count; i++) {
14 | var obstacleInfo = config.PlayerInfos[i % config.PlayerInfos.Count];
15 | var entity = _context.PostCmdCreatePlayerCube();
16 | entity->Transform.Position = obstacleInfo.Position;
17 | entity->Transform.Forward = obstacleInfo.Forward;
18 | entity->Transform.Scale = obstacleInfo.Scale;
19 | entity->Move = obstacleInfo.MoveData;
20 | entity->Prefab.AssetId = obstacleInfo.AssetId;
21 | entity->Player.LocalId = playerId++; //
22 | Debug.Log("Create ObstacleInfos " + entity->Player.LocalId);
23 | }
24 | }
25 | }
26 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Services/UnityMap2DService.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using Lockstep.Math;
3 | using UnityEngine;
4 |
5 | namespace Lockstep.Game {
6 | [System.Serializable]
7 | public partial class UnityMap2DService : BaseMap2DService {
8 | [SerializeField] public Grid grid { get; private set; }
9 | public List enemyBornPoints { get; private set; }
10 | public List playerBornPoss { get; private set; }
11 | public LVector2 campPos { get; private set; }
12 |
13 | public override void DoStart(){
14 | base.DoStart();
15 | if (grid == null) {
16 | grid = GameObject.FindObjectOfType();
17 | }
18 | }
19 |
20 | void OnEvent_SimulationAwake(object param){
21 | LoadLevel(1);
22 | }
23 |
24 | protected override void OnLoadLevel(int level, GridInfo gridInfo){
25 | UnityMap2DUtil.CheckLoadTileIDMap();
26 |
27 | EventHelper.Trigger(EEvent.LevelLoadProgress, 0.5f);
28 | UnityMap2DUtil.BindMapView(grid, gridInfo);
29 | EventHelper.Trigger(EEvent.LevelLoadProgress, 1f);
30 | EventHelper.Trigger(EEvent.LevelLoadDone, level);
31 | }
32 | }
33 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Config/UnsafeECSGenerator/MacroDefine.json:
--------------------------------------------------------------------------------
1 | {
2 | "#REF": "typeof IRef",
3 | "#ENUM": "typeof IEnum",
4 | "#COLLISION": "typeof ICollision",
5 | "#ASSET": "typeof IAsset",
6 | "#ENTITY": "typeof IEntity; use(#ALL_SIZE,#SIZE)",
7 | "#VIEW_ENTITY": "typeof IBindViewEntity" ,
8 | "#UPDATE_VIEW_ENTITY": "typeof IUpdateViewEntity" ,
9 | "#COMPONENT": "typeof IComponent",
10 | "#GAME_COMPONENT": "typeof IGameComponent",
11 | "#FIELDS": "typeof IFields",
12 | "#SIGNAL": "typeof ISignal",
13 | "#EVENT": "typeof IEvent",
14 | "#BITSET": "typeof IBitset; use(#SIZE_OF_BITSET)",
15 | "#BUILDIN_COMPS": "call GetBuildInComponents",
16 | "#GET_ALL_FIELDS_NAME": "call GetAllFieldsName",
17 | "#SYSTEM": "typeof ISystem",
18 | "#PURE_SYSTEM": "typeof IPureSystem",
19 | "#JOB_SYSTEM": "typeof IJobSystem",
20 | "#JOB_HASH_MAP_SYSTEM": "typeof IJobHashMapSystem" ,
21 | "#SERVICE_STATE": "typeof IServiceState",
22 | "#SERVICE_CONFIG": "typeof IGameConfigService",
23 | "#SERVICE_CONST_STATE": "typeof IGameConstStateService",
24 | "#SERVICE_GAME_STATE": "typeof IGameStateService",
25 | "#BUILD_IN_SERVICE": "typeof IBuildInService",
26 | "#NEED_SERVICE_PROPERTY": "typeof INeedServiceProperty",
27 | "#GAME_SERVICE": "typeof IGameService",
28 | "#CAN_RAISE_EVENT": "typeof ICanRaiseEvent"
29 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Framework/UnityServiceContainer.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.Game;
2 | using Lockstep.UnsafeECS.Game;
3 |
4 |
5 | public class UnityServiceContainer : BaseGameServicesContainer {
6 | public UnityServiceContainer() : base(){
7 |
8 | //basic service
9 | RegisterService(new RandomService());
10 | RegisterService(new IdService());
11 | RegisterService(new GlobalStateService());
12 | RegisterService(new SimulatorService());
13 | RegisterService(new NetworkService());
14 | //RegisterService(new ResService());
15 | RegisterService(new UnsafeEcsFactoryService());
16 | //Code Gen service
17 | RegisterService(new GameStateService());
18 | RegisterService(new GameConfigService());
19 |
20 | // game services
21 | RegisterService(new GameResourceService());
22 | RegisterService(new GameInputService());
23 |
24 | // unity service
25 | RegisterService(new UnityEntityService());
26 | RegisterService(new UnityEffectService());
27 | RegisterService(new UnityAudioService());
28 | RegisterService(new UnityGameEffectService());
29 | RegisterService(new UnityGameAudioService());
30 | RegisterService(new UnityMapService());
31 | }
32 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Src/Server.SimpleServer/Src/Server/Player.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.Network;
2 | using Lockstep.Util;
3 | using NetMsg.Common;
4 |
5 |
6 | namespace Lockstep.FakeServer {
7 | public class Player : BaseRecyclable {
8 | public long UserId;
9 | public string Account;
10 | public string LoginHash;
11 | public byte LocalId;
12 | public Session PeerTcp;
13 | public Session PeerUdp;
14 | public Game Game;
15 | public GameData GameData;
16 | public int GameId => Game?.GameId ?? -1;
17 |
18 | public void OnLeave(){
19 | PeerTcp = null;
20 | PeerUdp = null;
21 | }
22 |
23 | public void SendTcp(EMsgSC type, BaseMsg msg){
24 | PeerTcp?.Send(0x00, (ushort) type, msg.ToBytes());
25 | }
26 |
27 | public void SendTcp(EMsgSC type, byte[] data){
28 | PeerTcp?.Send(0x00, (ushort) type, data);
29 | }
30 |
31 | public void SendUdp(EMsgSC type, byte[] data){
32 | PeerUdp?.Send(0x00, (ushort) type, data);
33 | }
34 | public void SendUdp(EMsgSC type, BaseMsg msg){
35 | PeerUdp?.Send(0x00, (ushort) type, msg.ToBytes());
36 | }
37 |
38 | public override void OnRecycle(){
39 | PeerTcp = null;
40 | PeerUdp = null;
41 | }
42 | }
43 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Framework/GameStateMono.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.UnsafeECS.Game;
2 | using UnityEngine;
3 |
4 | namespace Lockstep.Game {
5 | [ExecuteInEditMode]
6 | public class GameStateMono : UnityEngine.MonoBehaviour {
7 | GUIStyle myStyle = new GUIStyle();
8 | GUIStyle otherStyle = new GUIStyle();
9 | private void Start(){
10 | myStyle.fontSize = 40;
11 | myStyle.normal.textColor = new Color(46f/256f, 163f/256f, 256f/256f, 256f/256f);
12 | otherStyle.fontSize = 30;
13 | otherStyle.normal.textColor = new Color(46f/256f, 12f/256f, 256f/256f, 256f/256f);
14 | }
15 |
16 | private void OnGUI(){
17 | if(!Application.isPlaying) return;
18 | int offset = 50;
19 | var context = Context.Instance;
20 | var svc = context.GetService();
21 | if(svc == null ) return;
22 |
23 | for (int i = 0; i < svc.ActorCount; i++) {
24 | GUI.Label(new Rect(0, offset, 100, 50), $"Score: {Context.Instance.GetPlayerInfo(i).Player.Score}",svc.LocalActorId == i ? myStyle:otherStyle );
25 | offset += 50;
26 | }
27 |
28 | GUI.Label(new Rect(0, offset, 100, 50), $"Count: {GameStateService.Instance.CurScore}");
29 | }
30 | }
31 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Scripts/CameraMono.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.UnsafeECS.Game;
2 | using Unity.Mathematics;
3 | using UnityEngine;
4 |
5 |
6 | namespace Lockstep.Game{
7 | public class CameraMono : MonoBehaviour {
8 | public Transform targetTrans;
9 | public Vector3 scaleOffset;
10 | public Vector3 offset;
11 | public float fogStartDist = 20;
12 | public float fogDistScale = 1.5f;
13 |
14 | public float lerpSpd = 1;
15 | public float xRote = 11;
16 | private void Update(){
17 | if (!Context.Instance.HasInit) {
18 | return;
19 | }
20 |
21 | if (targetTrans == null) {
22 | var id =GlobalStateService.Instance.LocalActorId;
23 | var view = EntityViewPlayerCube.GetView(id);
24 | targetTrans = view?.transform;
25 | }
26 | if(targetTrans == null) return;
27 | var offsetScale = targetTrans.localScale.x;
28 | var pos = targetTrans.TransformPoint(offset + offsetScale * scaleOffset);
29 | transform.position = pos;
30 | transform.rotation =transform.rotation;
31 | if (targetTrans != null) {
32 | if (transform.parent != targetTrans) {
33 | transform.SetParent(targetTrans,true);
34 | }
35 | }
36 | }
37 | }
38 | }
--------------------------------------------------------------------------------
/Client.Unity/ProjectSettings/DynamicsManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!55 &1
4 | PhysicsManager:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 13
7 | m_Gravity: {x: 0, y: -9.81, z: 0}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_BounceThreshold: 2
10 | m_SleepThreshold: 0.005
11 | m_DefaultContactOffset: 0.01
12 | m_DefaultSolverIterations: 6
13 | m_DefaultSolverVelocityIterations: 1
14 | m_QueriesHitBackfaces: 0
15 | m_QueriesHitTriggers: 1
16 | m_EnableAdaptiveForce: 0
17 | m_ClothInterCollisionDistance: 0.1
18 | m_ClothInterCollisionStiffness: 0.2
19 | m_ContactsGeneration: 1
20 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
21 | m_AutoSimulation: 1
22 | m_AutoSyncTransforms: 1
23 | m_ReuseCollisionCallbacks: 0
24 | m_ClothInterCollisionSettingsToggle: 0
25 | m_ClothGravity: {x: 0, y: -9.81, z: 0}
26 | m_ContactPairsMode: 0
27 | m_BroadphaseType: 0
28 | m_WorldBounds:
29 | m_Center: {x: 0, y: 0, z: 0}
30 | m_Extent: {x: 250, y: 250, z: 250}
31 | m_WorldSubdivisions: 8
32 | m_FrictionType: 0
33 | m_EnableEnhancedDeterminism: 0
34 | m_EnableUnifiedHeightmaps: 1
35 | m_DefaultMaxAngularSpeed: 7
36 |
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Src/Tools.UnsafeECS.ECSOutput/Tools.UnsafeECS.ECSOutput.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 | netcoreapp2.2
4 | true
5 | Tools.UnsafeECS.ECSOutput
6 | latest
7 |
8 |
9 |
10 | False
11 |
12 |
13 |
14 | false
15 |
16 |
17 | ../../bin/
18 |
19 |
20 | ../../bin/
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 | ..\..\bin\Tools.MacroExpansion.dll
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Src/Tools.UnsafeECS.ECDefine.Game/Tools.UnsafeECS.ECDefine.Game.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 | netcoreapp2.2
4 | true
5 | Tools.UnsafeECS.ECDefine.Game
6 | Tools.UnsafeECS.ECdefine.Game
7 | 40
8 | D:\Projects\Release_LockstepECS\Client.Unity\DataAndTools\Src\Tools.UnsafeECS.ECDefine.Game\Backup\
9 | 2.0
10 |
11 |
12 |
13 | False
14 |
15 |
16 |
17 | false
18 |
19 |
20 | ../../bin/
21 |
22 |
23 | ../../bin/
24 |
25 |
26 |
27 | ..\..\bin\Pure.Engine.LockstepEngine.dll
28 |
29 |
30 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Misc/PlayerInput.cs:
--------------------------------------------------------------------------------
1 |
2 | using Lockstep.Math;
3 | using Lockstep.Serialization;
4 |
5 | namespace Lockstep.Game {
6 | public partial class PlayerInput : BaseFormater,IBaseComponent {
7 | public static PlayerInput Empty = new PlayerInput();
8 | public ushort Deg;
9 | public ushort SkillId;
10 |
11 | public override bool Equals(object obj){
12 | if (ReferenceEquals(this,obj)) return true;
13 | var other = obj as PlayerInput;
14 | return Equals(other);
15 | }
16 |
17 | public override void Serialize(Serializer writer){
18 | writer.Write(Deg);
19 | writer.Write(SkillId);
20 | }
21 |
22 | public void Reset(){
23 | Deg = 0;
24 | SkillId = 0;
25 | }
26 |
27 | public override void Deserialize(Deserializer reader){
28 | Deg = reader.ReadUInt16();
29 | SkillId = reader.ReadUInt16();
30 | }
31 |
32 |
33 | public bool Equals(PlayerInput other){
34 | if (other == null) return false;
35 | if (Deg != other.Deg) return false;
36 | if (SkillId != other.SkillId) return false;
37 | return true;
38 | }
39 |
40 | public PlayerInput Clone(){
41 | var tThis = this;
42 | return new PlayerInput() {
43 | SkillId = tThis.SkillId,
44 | Deg = tThis.Deg,
45 | };
46 | }
47 | }
48 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Src/Tools.UnsafeECS.ECDefine.Game/Src/BuildIn/BuildIn_Components.cs:
--------------------------------------------------------------------------------
1 | // Copyright 2019 谭杰鹏. All Rights Reserved //https://github.com/JiepengTan
2 |
3 | namespace Lockstep.UnsafeECSDefine {
4 |
5 | /// BuildIn Service
6 | public interface IBuildInService{}
7 | /// 需要进行Service 属性展开的类型
8 | public interface INeedServiceProperty{}
9 | public interface ICanRaiseEvent{}
10 | public interface IBuildInComponent : IComponent { }
11 |
12 |
13 |
14 | public class CollisionShape { }
15 |
16 |
17 | public class Animator : IBuildInComponent {
18 | public int Pad;
19 | }
20 |
21 | public class CollisionAgent : IBuildInComponent {
22 | public CollisionShape Collider;
23 | public bool IsTrigger;
24 | public int Layer;
25 | public bool IsEnable;
26 | [NoExcel] public bool IsSleep;
27 | public float Mass;
28 | public float AngularSpeed;
29 | public Vector3 Speed;
30 | }
31 |
32 | public class NavMeshAgent : IBuildInComponent {
33 | public int Pad;
34 | }
35 |
36 | public class Prefab : IBuildInComponent {
37 | public int AssetId;
38 | }
39 |
40 | public class Transform2D : IBuildInComponent {
41 | public Vector2 Position;
42 | public float Deg;
43 | public float Scale;
44 |
45 | }
46 |
47 | public class Transform3D : IBuildInComponent {
48 | public Vector3 Position;
49 | public Vector3 Forward;
50 | public float Scale;
51 | }
52 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Src/Server.SimpleServer/Src/ServerLauncher.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Threading;
3 | using Lockstep.Logging;
4 | using Lockstep.Network;
5 | using Lockstep.Util;
6 |
7 | namespace Lockstep.FakeServer{
8 | public class ServerLauncher {
9 | private static Server server;
10 |
11 | public static void Main(){
12 | //let async functions call in this thread
13 | OneThreadSynchronizationContext contex = new OneThreadSynchronizationContext();
14 | SynchronizationContext.SetSynchronizationContext(contex);
15 | Debug.Log("Main start");
16 | Utils.StartServices();
17 | try {
18 | DoAwake();
19 | while (true) {
20 | try {
21 | Thread.Sleep(3);
22 | contex.Update();
23 | server.Update();
24 | }
25 | catch (ThreadAbortException e) {
26 | return;
27 | }
28 | catch (Exception e) {
29 | Log.Error(e.ToString());
30 | }
31 | }
32 | }
33 | catch (ThreadAbortException e) {
34 | return;
35 | }
36 | catch (Exception e) {
37 | Log.Error(e.ToString());
38 | }
39 | }
40 |
41 | static void DoAwake(){
42 | server = new Server();
43 | server.Start();
44 | }
45 | }
46 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/GameInputService.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using Lockstep.Game;
3 | using Lockstep.Logging;
4 | using Lockstep.Math;
5 | using Lockstep.Serialization;
6 | using Lockstep.Util;
7 | using NetMsg.Common;
8 |
9 | namespace Lockstep.Game {
10 | public class GameInputService : IInputService {
11 | public static PlayerInput CurGameInput = new PlayerInput();
12 |
13 | public void Execute(InputCmd cmd, object entity){
14 | var input = new Deserializer(cmd.content).Parse();
15 | var playerInput = entity as PlayerInput;
16 | playerInput.SkillId = input.SkillId;
17 | playerInput.Deg = input.Deg;
18 | //Debug.Log("InputUV " + input.inputUV);
19 | }
20 |
21 | public List GetInputCmds(){
22 | #if !UNITY_EDITOR
23 | CurGameInput.Deg = ((ushort)(short)1);
24 | #endif
25 | return new List() {
26 | new InputCmd() {
27 | content = CurGameInput.ToBytes()
28 | }
29 | };
30 | }
31 |
32 | public List GetDebugInputCmds(){
33 | return new List() {
34 | new InputCmd() {
35 | content = new PlayerInput() {
36 | Deg = (ushort)LRandom.Range(0,4),
37 | SkillId = (ushort)LRandom.Range(0,3)
38 | }.ToBytes()
39 | }
40 | };
41 | }
42 | }
43 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/BuildIn/BuildIn_Components.cs:
--------------------------------------------------------------------------------
1 | // Copyright 2019 谭杰鹏. All Rights Reserved //https://github.com/JiepengTan
2 |
3 | namespace Lockstep.UnsafeECSDefine {
4 |
5 | /// BuildIn Service
6 | public interface IBuildInService{}
7 | /// 需要进行Service 属性展开的类型
8 | public interface INeedServiceProperty{}
9 | public interface ICanRaiseEvent{}
10 | public interface IBuildInComponent : IComponent { }
11 |
12 |
13 |
14 | public class CollisionShape { }
15 |
16 |
17 | public class Animator : IBuildInComponent {
18 | public int Pad;
19 | }
20 |
21 | public class CollisionAgent : IBuildInComponent {
22 | public CollisionShape Collider;
23 | public bool IsTrigger;
24 | public int Layer;
25 | public bool IsEnable;
26 | [NoExcel] public bool IsSleep;
27 | public float Mass;
28 | public float AngularSpeed;
29 | public Vector3 Speed;
30 | }
31 |
32 | public class NavMeshAgent : IBuildInComponent {
33 | public int Pad;
34 | }
35 |
36 | public class Prefab : IBuildInComponent {
37 | public int AssetId;
38 | }
39 |
40 | public class Transform2D : IBuildInComponent {
41 | public Vector2 Position;
42 | public float Deg;
43 | public float Scale;
44 |
45 | }
46 |
47 | public class Transform3D : IBuildInComponent {
48 | public Vector3 Position;
49 | public Vector3 Forward;
50 | public float Scale;
51 | }
52 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Data/Server/Config.json:
--------------------------------------------------------------------------------
1 | /*
2 | public enum EServerType {
3 | Client=0,
4 | DaemonServer = 1,
5 | LoginServer = 2,
6 | LobbyServer = 3,
7 | GameServer = 4,
8 | DatabaseServer = 5,
9 | WorldServer = 6,
10 |
11 | EnumCount,
12 | }
13 | */
14 | {
15 | "isDebugMode": true,//all server run in the same process
16 | "YMIp": "127.0.0.1",
17 | "YMPort": 10103,
18 | "servers": [
19 | {
20 | "isMaster": true,
21 | "type": 1,
22 | "serverPort": 10101,
23 | "masterPort": 10102,
24 | "masterIp": "127.0.0.1",
25 | "tcpPort": 7150,
26 | "udpPort": 7151
27 | },
28 | {
29 | "isMaster": true,
30 | "type": 2,
31 | "serverPort": 10201,
32 | "masterPort": 10202,
33 | "masterIp": "127.0.0.1",
34 | "tcpPort": 7250,
35 | "udpPort": 7251
36 | },
37 | {
38 | "isMaster": true,
39 | "masterIp": "127.0.0.1",
40 | "type": 3,
41 | "serverPort": 10301,
42 | "masterPort": 10302,
43 | "tcpPort": 7350,
44 | "udpPort": 7351
45 | },
46 | {
47 | "isMaster": true,
48 | "masterIp": "127.0.0.1",
49 | "type": 4,
50 | "serverIpPort": 10401,
51 | "masterPort": 10402,
52 | "tcpPort": 7450,
53 | "udpPort": 7451
54 | },
55 | {
56 | "isMaster": true,
57 | "masterIp": "127.0.0.1",
58 | "type": 5,
59 | "serverPort": 10501,
60 | "masterPort": 10502,
61 | "tcpPort": 7550,
62 | "udpPort": 7551
63 | }
64 | ]
65 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/Framework/BaseEntityView.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.Game;
2 | using Lockstep.Math;
3 | using UnityEngine;
4 |
5 | namespace Lockstep.UnsafeECS.Game {
6 | public unsafe class BaseEntityView : MonoBehaviour {
7 | protected const float _LerpVal = 0.5f;
8 | public void Update(){ DoUpdate(Time.deltaTime); }
9 | public virtual void BindEntity(Entity* entityPtr){ }
10 | public virtual void OnBindEntity(){ }
11 |
12 | public virtual void OnUnbindEntity(){ }
13 | public virtual void UnbindEntity(){gameObject.DestroyExt();}
14 | public virtual void RebindEntity(Entity* newEntityPtr){ }
15 | public virtual void DoUpdate(float deltaTime){}
16 | protected virtual void OnBind(){ }
17 |
18 | public virtual void OnSkillFire(LFloat range){}
19 | public virtual void OnSkillDone(LFloat range){}
20 |
21 | protected void UpdatePosRot(ref Transform3D transform3D){
22 | var targetPos = transform3D.Position.ToVector3();
23 | var pos = Vector3.Lerp(transform.position, targetPos, _LerpVal);
24 | transform.position = pos;
25 | if (transform3D.Forward != LVector3.zero) {
26 | var targetRot = Quaternion.LookRotation(transform3D.Forward.ToVector3(), Vector3.up);
27 | var rot = Quaternion.Lerp(transform.rotation, targetRot, _LerpVal);
28 | transform.rotation = rot;
29 | }
30 | var scale = transform3D.Scale.ToFloat();
31 | transform.localScale = Vector3.one * scale;
32 | }
33 | }
34 | }
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # LockstepECS
2 | ## **简介**
3 | LockstepECS 一个基于c# 指针和结构体 的帧同步框架,使用于超大型场景的帧同步游戏
4 | 优点:
5 | - 运行速度快,使用指针,和结构体,基本无gc , PureMode 都比Entitas 快两倍,Burst Mode,快四倍以上
6 | - 内存紧凑,预测回滚是否帧状态拷贝快 7000 只鱼的状态拷贝只消耗0.3ms
7 | - API 和 UNITY ECS 非常相似,可以使用同一种编程范式来编写 logic 层 和 view 层
8 | - 无缝兼容UnityECS ,使用条件宏可以切换两种模式,
9 | - PureMode:纯代码形式,可以直接在服务器中运行逻辑,不依赖Unity
10 | - Burst Mode: 模式,直接生成适配Unity ECS Burst+job框架代码的代码,进一步提升运行速度
11 |
12 | - github 上的是免费版
13 |
14 |
15 | ## **Wiki**
16 | [**中文使用文档**][11]
17 |
18 | ## **Reference**
19 |
20 | - [帧同步基础库 https://github.com/JiepengTan/LockstepEngine][1]
21 | - [高性能帧同步ECS框架 https://github.com/JiepengTan/LockstepECS][8]
22 | - [代码生成DSL https://github.com/JiepengTan/ME][2]
23 | - [demo: 帧同步版联机版 模拟鲨鱼围捕 2000 条小鱼 https://github.com/JiepengTan/LcokstepECS_Demo_Boid][3]
24 | - [帧同步教程 https://github.com/JiepengTan/Lockstep-Tutorial][4]
25 |
26 |
27 | ## **视频链接**
28 | - [环境搭建(Win & Mac)][9]
29 | - [Boid Demo 运行 ][10]
30 |
31 | ## **TODO**
32 | - 预测回滚
33 | - 碰撞检测库
34 | - 寻路库
35 | - 序列化库向前兼容
36 |
37 |
38 |
39 | [1]: https://github.com/JiepengTan/LockstepEngine
40 | [2]: https://github.com/JiepengTan/ME
41 | [3]: https://github.com/JiepengTan/LcokstepECS_Demo_Boid
42 | [4]: https://github.com/JiepengTan/Lockstep-Tutorial
43 | [5]: https://github.com/JiepengTan/FishManShaderTutorial
44 | [6]: https://www.bilibili.com/video/av67829097
45 | [7]: https://www.bilibili.com/video/av68850334
46 | [8]: https://github.com/JiepengTan/LockstepECS
47 | [9]: https://www.bilibili.com/video/av76298196
48 | [10]: https://www.bilibili.com/video/av76311418
49 | [11]: https://github.com/JiepengTan/LockstepECS/wiki
50 |
51 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.View/Src/UnityEntityPrefabSetting.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using Lockstep.Game;
3 | using Unity.Entities;
4 | using UnityEngine;
5 |
6 | namespace SSSamples.Boids.Authoring {
7 | [RequiresEntityConversion]
8 | public class UnityEntityPrefabSetting : MonoBehaviour,IDeclareReferencedPrefabs, IConvertGameObjectToEntity {
9 | public List prefabInfos = new List();
10 | private List entityPrefabs = new List();
11 |
12 | // Lets you convert the editor data representation to the entity optimal runtime representation
13 | public void Convert(Entity entity, EntityManager dstManager, GameObjectConversionSystem conversionSystem)
14 | {
15 | foreach (var info in prefabInfos) {
16 | var entityPrefab = conversionSystem.GetPrimaryEntity(info.Prefab);
17 | entityPrefabs.Add(new EntityPrefabInfo() {
18 | Prefab = entityPrefab,
19 | AssetId = info.AssetId
20 | })
21 | ;
22 | }
23 |
24 | Lockstep.Game.UnityEntityService.RegisterUnityEntityPrefabs(entityPrefabs);
25 | }
26 |
27 | // Referenced prefabs have to be declared so that the conversion system knows about them ahead of time
28 | public void DeclareReferencedPrefabs(List referencedPrefabs)
29 | {
30 | foreach (var prefab in prefabInfos) {
31 | referencedPrefabs.Add(prefab.Prefab);
32 | }
33 | }
34 | }
35 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Config/ExcelParser/Output/CodeCS/Table_Assets.cs:
--------------------------------------------------------------------------------
1 |
2 | //------------------------------------------------------------------------------
3 | //
4 | // This code was generated by Tools.ExcelParser, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null.
5 | // https://github.com/JiepengTan/LockstepEngine
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 | using System;
11 | using System.Collections.Generic;
12 | using Lockstep.Serialization;
13 | using Lockstep.Math;
14 |
15 | namespace Lockstep.Game{
16 | public partial class Table_Assets : TableData
17 | {
18 | const string tableName = "Assets";
19 | public override string Name() { return tableName; }
20 |
21 | /// id
22 | public Int32 id;
23 | /// Directory()
24 | public String dir;
25 | /// Name
26 | public String name;
27 | /// Suffix
28 | public String suffix;
29 |
30 | protected override void DoParseData(Deserializer reader){
31 | id = reader.ReadInt32();
32 | dir = reader.ReadString();
33 | name = reader.ReadString();
34 | suffix = reader.ReadString();
35 | }
36 | }
37 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Src/Tools.UnsafeECS.ECDefine.Game/Src/BuildIn/BuildIn_Services.cs:
--------------------------------------------------------------------------------
1 | // Copyright 2019 谭杰鹏. All Rights Reserved //https://github.com/JiepengTan
2 | // Warning!!! you should not modify this file! These files are maintained by author
3 | using System;
4 | using System.Collections.Generic;
5 | using Lockstep.UnsafeECSDefine;
6 |
7 | namespace Lockstep.UnsafeECSDefine {
8 |
9 |
10 | // Game status
11 | public partial class GameStateService : IGameService{}
12 | public partial class GameConfigService : IGameService{}
13 | public partial class GameEventService : IGameService{}
14 |
15 | // BuildIn Services
16 | public partial class RandomService : IBuildInService{}
17 | public partial class TimeMachineService : IBuildInService{}
18 | public partial class GlobalStateService : IBuildInService{}
19 | public partial class ViewService : IBuildInService{}
20 | public partial class AudioService : IBuildInService{}
21 | public partial class InputService : IBuildInService{}
22 | public partial class Map2DService : IBuildInService{}
23 | public partial class ResService : IBuildInService{}
24 | public partial class EffectService : IBuildInService{}
25 | public partial class EventRegisterService : IBuildInService{}
26 | public partial class IdService : IBuildInService{}
27 | public partial class DebugService : IBuildInService{}
28 |
29 |
30 | //BuildIn Systems
31 | public partial class Context:INeedServiceProperty{}
32 | public partial class GameBaseSystem:INeedServiceProperty{}
33 | public partial class GameJobSystem:INeedServiceProperty{}
34 | public partial class GameExecuteSystem:INeedServiceProperty{}
35 |
36 | public partial class GameBaseSystem:ICanRaiseEvent{}
37 | public partial class GameExecuteSystem:ICanRaiseEvent{}
38 | }
--------------------------------------------------------------------------------
/Client.Unity/ProjectSettings/NavMeshAreas.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!126 &1
4 | NavMeshProjectSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | areas:
8 | - name: Walkable
9 | cost: 1
10 | - name: Not Walkable
11 | cost: 1
12 | - name: Jump
13 | cost: 2
14 | - name:
15 | cost: 1
16 | - name:
17 | cost: 1
18 | - name:
19 | cost: 1
20 | - name:
21 | cost: 1
22 | - name:
23 | cost: 1
24 | - name:
25 | cost: 1
26 | - name:
27 | cost: 1
28 | - name:
29 | cost: 1
30 | - name:
31 | cost: 1
32 | - name:
33 | cost: 1
34 | - name:
35 | cost: 1
36 | - name:
37 | cost: 1
38 | - name:
39 | cost: 1
40 | - name:
41 | cost: 1
42 | - name:
43 | cost: 1
44 | - name:
45 | cost: 1
46 | - name:
47 | cost: 1
48 | - name:
49 | cost: 1
50 | - name:
51 | cost: 1
52 | - name:
53 | cost: 1
54 | - name:
55 | cost: 1
56 | - name:
57 | cost: 1
58 | - name:
59 | cost: 1
60 | - name:
61 | cost: 1
62 | - name:
63 | cost: 1
64 | - name:
65 | cost: 1
66 | - name:
67 | cost: 1
68 | - name:
69 | cost: 1
70 | - name:
71 | cost: 1
72 | m_LastAgentTypeID: -887442657
73 | m_Settings:
74 | - serializedVersion: 2
75 | agentTypeID: 0
76 | agentRadius: 0.5
77 | agentHeight: 2
78 | agentSlope: 45
79 | agentClimb: 0.75
80 | ledgeDropHeight: 0
81 | maxJumpAcrossDistance: 0
82 | minRegionArea: 2
83 | manualCellSize: 0
84 | cellSize: 0.16666667
85 | manualTileSize: 0
86 | tileSize: 256
87 | accuratePlacement: 0
88 | debug:
89 | m_Flags: 0
90 | m_SettingNames:
91 | - Humanoid
92 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Tools.UnsafeECS.ECDefine.Game/Src/BuildIn/BuildIn_Services.cs:
--------------------------------------------------------------------------------
1 | // Copyright 2019 谭杰鹏. All Rights Reserved //https://github.com/JiepengTan
2 | // Warning!!! you should not modify this file! These files are maintained by author
3 | using System;
4 | using System.Collections.Generic;
5 | using Lockstep.UnsafeECSDefine;
6 |
7 | namespace Lockstep.UnsafeECSDefine {
8 |
9 |
10 | // Game status
11 | public partial class GameStateService : IGameService{}
12 | public partial class GameConfigService : IGameService{}
13 | public partial class GameEventService : IGameService{}
14 |
15 | // BuildIn Services
16 | public partial class RandomService : IBuildInService{}
17 | public partial class TimeMachineService : IBuildInService{}
18 | public partial class GlobalStateService : IBuildInService{}
19 | public partial class ViewService : IBuildInService{}
20 | public partial class AudioService : IBuildInService{}
21 | public partial class InputService : IBuildInService{}
22 | public partial class Map2DService : IBuildInService{}
23 | public partial class ResService : IBuildInService{}
24 | public partial class EffectService : IBuildInService{}
25 | public partial class EventRegisterService : IBuildInService{}
26 | public partial class IdService : IBuildInService{}
27 | public partial class DebugService : IBuildInService{}
28 |
29 |
30 | //BuildIn Systems
31 | public partial class Context:INeedServiceProperty{}
32 | public partial class GameBaseSystem:INeedServiceProperty{}
33 | public partial class GameJobSystem:INeedServiceProperty{}
34 | public partial class GameExecuteSystem:INeedServiceProperty{}
35 |
36 | public partial class GameBaseSystem:ICanRaiseEvent{}
37 | public partial class GameExecuteSystem:ICanRaiseEvent{}
38 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Config/ExcelParser/Output/Csv/Assets.csv:
--------------------------------------------------------------------------------
1 | ServerDefine,,,,,,,,
2 | ClientDefine,key,,,,,del,del,
3 | Info,id,Directory(),Name,Suffix,,,备注,
4 | Type,int,string,string,string,,,string,
5 | Name,id,dir,name,suffix,,,remark,
6 | Value,11,Config,GameConfig,json,,,,
7 | ,1001,Prefabs/Camp,1001_Camp,.prefab,,,,
8 | ,2001,Prefabs/Bullet,2001_Bullet,.prefab,,,,
9 | ,2002,Prefabs/Bullet,2002_Bullet,.prefab,,,,
10 | ,2003,Prefabs/Bullet,2003_Bullet,.prefab,,,,
11 | ,3001,Prefabs/Effect,3001_EffectBlast,.prefab,,,,
12 | ,3002,Prefabs/Effect,3002_EffectBorn,.prefab,,,,
13 | ,3003,Prefabs/Effect,3003_EffectExplosion,.prefab,,,,
14 | ,4001,Prefabs/Items,4001_ItemAddLife,.prefab,,,,
15 | ,4002,Prefabs/Items,4002_ItemBoom,.prefab,,,,
16 | ,4003,Prefabs/Items,4003_ItemUpgrade,.prefab,,,,
17 | ,5001,Prefabs/Player,5001_Player,.prefab,,,,
18 | ,5002,Prefabs/Player,5002_Player,.prefab,,,,
19 | ,5003,Prefabs/Player,5003_Player,.prefab,,,,
20 | ,5004,Prefabs/Player,5004_Player,.prefab,,,,
21 | ,6001,Prefabs/Tank,6001_Tank,.prefab,,,,
22 | ,6002,Prefabs/Tank,6002_Tank,.prefab,,,,
23 | ,6003,Prefabs/Tank,6003_Tank,.prefab,,,,
24 | ,6004,Prefabs/Tank,6004_Tank,.prefab,,,,
25 | ,6005,Prefabs/Tank,6005_Tank,.prefab,,,,
26 | ,7001,UI,UICreateRoom,.prefab,,,,
27 | ,7002,UI,UIDialogBox,.prefab,,,,
28 | ,7003,UI,UIDialogBoxs,.prefab,,,,
29 | ,7004,UI,UIEmailConfirmation,.prefab,,,,
30 | ,7005,UI,UIGUIConsole,.prefab,,,,
31 | ,7006,UI,UIGameStatus,.prefab,,,,
32 | ,7007,UI,UILoading,.prefab,,,,
33 | ,7008,UI,UILobby,.prefab,,,,
34 | ,7009,UI,UILogin,.prefab,,,,
35 | ,7010,UI,UINetStatus,.prefab,,,,
36 | ,7011,UI,UIPasswordReset,.prefab,,,,
37 | ,7012,UI,UIRegister,.prefab,,,,
38 | ,7013,UI,UIRoom,.prefab,,,,
39 | ,7014,UI,UIRoomList,.prefab,,,,
40 | ,7015,UI,UIRoot,.prefab,,,,
41 | ,8001,Music,add,.wav,,,,
42 | ,8002,Music,dead,.wav,,,,
43 | ,8003,Music,hitBrick,.wav,,,,
44 | ,8004,Music,hitIron,.wav,,,,
45 | ,8005,Music,start,.wav,,,,
46 |
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Game.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 15
4 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tools.UnsafeECS.ECDefine.Game", "Src\Tools.UnsafeECS.ECDefine.Game\Tools.UnsafeECS.ECDefine.Game.csproj", "{59526EF6-61AE-468C-AF19-70C511282A90}"
5 | EndProject
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tools.UnsafeECS.ECSOutput", "Src\Tools.UnsafeECS.ECSOutput\Tools.UnsafeECS.ECSOutput.csproj", "{8DD9548E-2B62-4BF4-8AC2-9DE2FF89E692}"
7 | EndProject
8 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Server.SimpleServer", "Src\Server.SimpleServer\Server.SimpleServer.csproj", "{9700A3C6-706E-421B-AF3F-CE4DD2B1AE9F}"
9 | EndProject
10 | Global
11 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
12 | Debug|Any CPU = Debug|Any CPU
13 | Release|Any CPU = Release|Any CPU
14 | EndGlobalSection
15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
16 | {59526EF6-61AE-468C-AF19-70C511282A90}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
17 | {59526EF6-61AE-468C-AF19-70C511282A90}.Debug|Any CPU.Build.0 = Debug|Any CPU
18 | {59526EF6-61AE-468C-AF19-70C511282A90}.Release|Any CPU.ActiveCfg = Release|Any CPU
19 | {59526EF6-61AE-468C-AF19-70C511282A90}.Release|Any CPU.Build.0 = Release|Any CPU
20 | {8DD9548E-2B62-4BF4-8AC2-9DE2FF89E692}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
21 | {8DD9548E-2B62-4BF4-8AC2-9DE2FF89E692}.Debug|Any CPU.Build.0 = Debug|Any CPU
22 | {8DD9548E-2B62-4BF4-8AC2-9DE2FF89E692}.Release|Any CPU.ActiveCfg = Release|Any CPU
23 | {8DD9548E-2B62-4BF4-8AC2-9DE2FF89E692}.Release|Any CPU.Build.0 = Release|Any CPU
24 | {9700A3C6-706E-421B-AF3F-CE4DD2B1AE9F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
25 | {9700A3C6-706E-421B-AF3F-CE4DD2B1AE9F}.Debug|Any CPU.Build.0 = Debug|Any CPU
26 | {9700A3C6-706E-421B-AF3F-CE4DD2B1AE9F}.Release|Any CPU.ActiveCfg = Release|Any CPU
27 | {9700A3C6-706E-421B-AF3F-CE4DD2B1AE9F}.Release|Any CPU.Build.0 = Release|Any CPU
28 | EndGlobalSection
29 | EndGlobal
30 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Resources/Config/UnityGameConfig.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
6 | m_CorrespondingSourceObject: {fileID: 0}
7 | m_PrefabInstance: {fileID: 0}
8 | m_PrefabAsset: {fileID: 0}
9 | m_GameObject: {fileID: 0}
10 | m_Enabled: 1
11 | m_EditorHideFlags: 0
12 | m_Script: {fileID: 11500000, guid: 980ac168cef7441b18a297aac85d123e, type: 3}
13 | m_Name: UnityGameConfig
14 | m_EditorClassIdentifier:
15 | pureConfig:
16 | RelPath:
17 | RecorderFilePath:
18 | DumpStrPath:
19 | MaxPlayerCount: 2
20 | CollisionConfig:
21 | scrollPos:
22 | _x: 0
23 | _y: 0
24 | isShow: 0
25 | collisionMatrix: 000000000000000000
26 | pos:
27 | _x: 0
28 | _y: 0
29 | _z: 0
30 | worldSize:
31 | _val: 60000000
32 | minNodeSize:
33 | _val: 1000000
34 | loosenessval:
35 | _val: 1250000
36 | ColliderDataRelFilePath:
37 | percent:
38 | _val: 100000
39 | count: 100
40 | showTreeId: 0
41 | ClientModeInfo:
42 | LocalId: 0
43 | UserCount: 1
44 | MapId: 0
45 | RoomId: 0
46 | Seed: 0
47 | UserInfos:
48 | - _Username: TestClient
49 | _UserId: 0
50 | _Datas: []
51 | UdpEnd:
52 | Ip:
53 | Port: 0
54 | TcpEnd:
55 | Ip:
56 | Port: 0
57 | SimulationSpeed: 0
58 | PlayerInfos:
59 | - Position:
60 | _x: 0
61 | _y: 0
62 | _z: 0
63 | Forward:
64 | _x: 0
65 | _y: 0
66 | _z: 1000000
67 | Scale:
68 | _val: 1000000
69 | Deg:
70 | _val: 0
71 | AssetId: 1
72 | MoveData:
73 | MoveSpd:
74 | _val: 3000000
75 | AcceleratedSpd:
76 | _val: 5000000
77 | CurSpd:
78 | _val: 3000000
79 | AngularSpd:
80 | _val: 80000000
81 | DeltaDeg:
82 | _val: 0
83 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/Resources/UnityEntityPrefabSetting.prefab:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1 &1155774472076782537
4 | GameObject:
5 | m_ObjectHideFlags: 0
6 | m_CorrespondingSourceObject: {fileID: 0}
7 | m_PrefabInstance: {fileID: 0}
8 | m_PrefabAsset: {fileID: 0}
9 | serializedVersion: 6
10 | m_Component:
11 | - component: {fileID: 1155774472076782538}
12 | - component: {fileID: 1155774472076782539}
13 | - component: {fileID: 1155774472076782536}
14 | m_Layer: 0
15 | m_Name: UnityEntityPrefabSetting
16 | m_TagString: Untagged
17 | m_Icon: {fileID: 0}
18 | m_NavMeshLayer: 0
19 | m_StaticEditorFlags: 0
20 | m_IsActive: 1
21 | --- !u!4 &1155774472076782538
22 | Transform:
23 | m_ObjectHideFlags: 0
24 | m_CorrespondingSourceObject: {fileID: 0}
25 | m_PrefabInstance: {fileID: 0}
26 | m_PrefabAsset: {fileID: 0}
27 | m_GameObject: {fileID: 1155774472076782537}
28 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
29 | m_LocalPosition: {x: 0, y: 0, z: 0}
30 | m_LocalScale: {x: 1, y: 1, z: 1}
31 | m_Children: []
32 | m_Father: {fileID: 0}
33 | m_RootOrder: 0
34 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
35 | --- !u!114 &1155774472076782539
36 | MonoBehaviour:
37 | m_ObjectHideFlags: 0
38 | m_CorrespondingSourceObject: {fileID: 0}
39 | m_PrefabInstance: {fileID: 0}
40 | m_PrefabAsset: {fileID: 0}
41 | m_GameObject: {fileID: 1155774472076782537}
42 | m_Enabled: 1
43 | m_EditorHideFlags: 0
44 | m_Script: {fileID: 11500000, guid: c43ed71b1fb3426ebca8a7c262bf8459, type: 3}
45 | m_Name:
46 | m_EditorClassIdentifier:
47 | prefabInfos:
48 | - Prefab: {fileID: 4114152384307457898, guid: a1d6b8716cd344cfb97d76f4f986fbe5,
49 | type: 3}
50 | AssetId: 1
51 | --- !u!114 &1155774472076782536
52 | MonoBehaviour:
53 | m_ObjectHideFlags: 0
54 | m_CorrespondingSourceObject: {fileID: 0}
55 | m_PrefabInstance: {fileID: 0}
56 | m_PrefabAsset: {fileID: 0}
57 | m_GameObject: {fileID: 1155774472076782537}
58 | m_Enabled: 1
59 | m_EditorHideFlags: 0
60 | m_Script: {fileID: 11500000, guid: ea7d7495833204790ba1d3a8755397f8, type: 3}
61 | m_Name:
62 | m_EditorClassIdentifier:
63 | ConversionMode: 0
64 |
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Config/UnsafeECSGenerator/ModelConfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "DllNameTag": "Tools.UnsafeECS.ECDefine.Game.dll",
3 | "IgnoreDll": "Tools.ECS.ECDefine.Game.dll",
4 | "ShellCmd": "",
5 | "ShellWorkingDir": "",
6 | "MacroDefinePath": "../Config/UnsafeECSGenerator/MacroDefine.json",
7 | "SrcFileDir": "../Config/UnsafeECSGenerator/Model/",
8 | "DesFileDir": "../Src/Tools.UnsafeECS.ECSOutput/Src/Generated/Model/",
9 | "FileExtension": "*.tfbytes",
10 | "TypeNameSpaceTag": "Lockstep.UnsafeECSDefine",
11 | "IsGenDebugInfo": false,
12 | "IsEncryptFile":true,
13 | "FileContent": [
14 | "\n//#define DONT_USE_GENERATE_CODE ",
15 | "\n ",
16 | "\nusing System.Linq; ",
17 | "\nusing Lockstep.Serialization; ",
18 | "\nusing System.Runtime.InteropServices; ",
19 | "\nusing System.Runtime.CompilerServices; ",
20 | "\nusing System; ",
21 | "\nusing Lockstep.InternalUnsafeECS; ",
22 | "\nusing System.Collections; ",
23 | "\nusing Lockstep.Math; ",
24 | "\nusing System.Collections.Generic; ",
25 | "\nusing Lockstep.Logging; ",
26 | "\nusing Lockstep.Util; ",
27 | "\n#TYPES_EXTENSIONS ",
28 | "\n "
29 | ]
30 | }
31 |
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Config/UnsafeECSGenerator/ViewConfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "DllNameTag": "Tools.UnsafeECS.ECDefine.Game.dll",
3 | "IgnoreDll": "Tools.ECS.ECDefine.Game.dll",
4 | "ShellCmd": "",
5 | "ShellWorkingDir": "",
6 | "MacroDefinePath": "../Config/UnsafeECSGenerator/MacroDefine.json",
7 | "SrcFileDir": "../Config/UnsafeECSGenerator/View/",
8 | "DesFileDir": "../Src/Tools.UnsafeECS.ECSOutput/Src/Generated/View/",
9 | "FileExtension": "*.tfbytes",
10 | "TypeNameSpaceTag": "Lockstep.UnsafeECSDefine",
11 | "IsGenDebugInfo": false,
12 | "IsEncryptFile":true,
13 | "FileContent": [
14 | "\n//#define DONT_USE_GENERATE_CODE ",
15 | "\n ",
16 | "\nusing System.Linq; ",
17 | "\nusing Lockstep.Serialization; ",
18 | "\nusing System.Runtime.InteropServices; ",
19 | "\nusing System.Runtime.CompilerServices; ",
20 | "\nusing System; ",
21 | "\nusing Lockstep.InternalUnsafeECS; ",
22 | "\nusing System.Collections; ",
23 | "\nusing Lockstep.Math; ",
24 | "\nusing System.Collections.Generic; ",
25 | "\nusing Lockstep.Logging; ",
26 | "\nusing Lockstep.Util; ",
27 | "\n#TYPES_EXTENSIONS ",
28 | "\n "
29 | ]
30 | }
31 |
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Config/ExcelParser/Output/CodeCS/Table_ConfigBullet.cs:
--------------------------------------------------------------------------------
1 |
2 | //------------------------------------------------------------------------------
3 | //
4 | // This code was generated by Tools.ExcelParser, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null.
5 | // https://github.com/JiepengTan/LockstepEngine
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 | using System;
11 | using System.Collections.Generic;
12 | using Lockstep.Serialization;
13 | using Lockstep.Math;
14 |
15 | namespace Lockstep.Game{
16 | public partial class Table_ConfigBullet : TableData
17 | {
18 | const string tableName = "ConfigBullet";
19 | public override string Name() { return tableName; }
20 |
21 | /// id
22 | public UInt16 asset;
23 | ///
24 | public Boolean bullet_canDestoryIron;
25 | ///
26 | public Boolean bullet_canDestoryGrass;
27 | ///
28 | public String unit_name;
29 | ///
30 | public Int32 unit_health;
31 | ///
32 | public Int32 unit_damage;
33 | ///
34 | public LFloat move_moveSpd;
35 | ///
36 | public LFloat move_maxMoveSpd;
37 |
38 | protected override void DoParseData(Deserializer reader){
39 | asset = reader.ReadUInt16();
40 | bullet_canDestoryIron = reader.ReadBoolean();
41 | bullet_canDestoryGrass = reader.ReadBoolean();
42 | unit_name = reader.ReadString();
43 | unit_health = reader.ReadInt32();
44 | unit_damage = reader.ReadInt32();
45 | move_moveSpd = reader.ReadLFloat();
46 | move_maxMoveSpd = reader.ReadLFloat();
47 | }
48 | }
49 | }
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__ExcelParser/Table_ConfigBullet.cs:
--------------------------------------------------------------------------------
1 |
2 | //------------------------------------------------------------------------------
3 | //
4 | // This code was generated by Tools.ExcelParser, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null.
5 | // https://github.com/JiepengTan/LockstepEngine
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 | using System;
11 | using System.Collections.Generic;
12 | using Lockstep.Serialization;
13 | using Lockstep.Math;
14 |
15 | namespace Lockstep.Game{
16 | public partial class Table_ConfigBullet : TableData
17 | {
18 | const string tableName = "ConfigBullet";
19 | public override string Name() { return tableName; }
20 |
21 | /// id
22 | public UInt16 asset;
23 | ///
24 | public Boolean bullet_canDestoryIron;
25 | ///
26 | public Boolean bullet_canDestoryGrass;
27 | ///
28 | public String unit_name;
29 | ///
30 | public Int32 unit_health;
31 | ///
32 | public Int32 unit_damage;
33 | ///
34 | public LFloat move_moveSpd;
35 | ///
36 | public LFloat move_maxMoveSpd;
37 |
38 | protected override void DoParseData(Deserializer reader){
39 | asset = reader.ReadUInt16();
40 | bullet_canDestoryIron = reader.ReadBoolean();
41 | bullet_canDestoryGrass = reader.ReadBoolean();
42 | unit_name = reader.ReadString();
43 | unit_health = reader.ReadInt32();
44 | unit_damage = reader.ReadInt32();
45 | move_moveSpd = reader.ReadLFloat();
46 | move_maxMoveSpd = reader.ReadLFloat();
47 | }
48 | }
49 | }
--------------------------------------------------------------------------------
/Client.Unity/ProjectSettings/Physics2DSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!19 &1
4 | Physics2DSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 4
7 | m_Gravity: {x: 0, y: -9.81}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_VelocityIterations: 8
10 | m_PositionIterations: 3
11 | m_VelocityThreshold: 1
12 | m_MaxLinearCorrection: 0.2
13 | m_MaxAngularCorrection: 8
14 | m_MaxTranslationSpeed: 100
15 | m_MaxRotationSpeed: 360
16 | m_BaumgarteScale: 0.2
17 | m_BaumgarteTimeOfImpactScale: 0.75
18 | m_TimeToSleep: 0.5
19 | m_LinearSleepTolerance: 0.01
20 | m_AngularSleepTolerance: 2
21 | m_DefaultContactOffset: 0.01
22 | m_JobOptions:
23 | serializedVersion: 2
24 | useMultithreading: 0
25 | useConsistencySorting: 0
26 | m_InterpolationPosesPerJob: 100
27 | m_NewContactsPerJob: 30
28 | m_CollideContactsPerJob: 100
29 | m_ClearFlagsPerJob: 200
30 | m_ClearBodyForcesPerJob: 200
31 | m_SyncDiscreteFixturesPerJob: 50
32 | m_SyncContinuousFixturesPerJob: 50
33 | m_FindNearestContactsPerJob: 100
34 | m_UpdateTriggerContactsPerJob: 100
35 | m_IslandSolverCostThreshold: 100
36 | m_IslandSolverBodyCostScale: 1
37 | m_IslandSolverContactCostScale: 10
38 | m_IslandSolverJointCostScale: 10
39 | m_IslandSolverBodiesPerJob: 50
40 | m_IslandSolverContactsPerJob: 50
41 | m_AutoSimulation: 1
42 | m_QueriesHitTriggers: 1
43 | m_QueriesStartInColliders: 1
44 | m_CallbacksOnDisable: 1
45 | m_ReuseCollisionCallbacks: 0
46 | m_AutoSyncTransforms: 1
47 | m_AlwaysShowColliders: 0
48 | m_ShowColliderSleep: 1
49 | m_ShowColliderContacts: 0
50 | m_ShowColliderAABB: 0
51 | m_ContactArrowScale: 0.2
52 | m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412}
53 | m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432}
54 | m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745}
55 | m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804}
56 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
57 |
--------------------------------------------------------------------------------
/Client.Unity/Packages/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "com.unity.2d.sprite": "1.0.0",
4 | "com.unity.2d.tilemap": "1.0.0",
5 | "com.unity.ads": "2.0.8",
6 | "com.unity.analytics": "3.3.2",
7 | "com.unity.burst": "1.1.2",
8 | "com.unity.cinemachine": "2.3.4",
9 | "com.unity.collab-proxy": "1.2.16",
10 | "com.unity.collections": "0.1.1-preview",
11 | "com.unity.entities": "0.1.1-preview",
12 | "com.unity.ext.nunit": "1.0.0",
13 | "com.unity.ide.rider": "1.1.0",
14 | "com.unity.ide.vscode": "1.1.2",
15 | "com.unity.jobs": "0.1.1-preview",
16 | "com.unity.multiplayer-hlapi": "1.0.4",
17 | "com.unity.package-manager-ui": "2.2.0",
18 | "com.unity.postprocessing": "2.1.6",
19 | "com.unity.purchasing": "2.0.6",
20 | "com.unity.rendering.hybrid": "0.1.1-preview",
21 | "com.unity.test-framework": "1.0.13",
22 | "com.unity.textmeshpro": "2.0.1",
23 | "com.unity.timeline": "1.1.0",
24 | "com.unity.ugui": "1.0.0",
25 | "com.unity.xr.legacyinputhelpers": "2.0.2",
26 | "com.unity.modules.ai": "1.0.0",
27 | "com.unity.modules.androidjni": "1.0.0",
28 | "com.unity.modules.animation": "1.0.0",
29 | "com.unity.modules.assetbundle": "1.0.0",
30 | "com.unity.modules.audio": "1.0.0",
31 | "com.unity.modules.cloth": "1.0.0",
32 | "com.unity.modules.director": "1.0.0",
33 | "com.unity.modules.imageconversion": "1.0.0",
34 | "com.unity.modules.imgui": "1.0.0",
35 | "com.unity.modules.jsonserialize": "1.0.0",
36 | "com.unity.modules.particlesystem": "1.0.0",
37 | "com.unity.modules.physics": "1.0.0",
38 | "com.unity.modules.physics2d": "1.0.0",
39 | "com.unity.modules.screencapture": "1.0.0",
40 | "com.unity.modules.terrain": "1.0.0",
41 | "com.unity.modules.terrainphysics": "1.0.0",
42 | "com.unity.modules.tilemap": "1.0.0",
43 | "com.unity.modules.ui": "1.0.0",
44 | "com.unity.modules.uielements": "1.0.0",
45 | "com.unity.modules.umbra": "1.0.0",
46 | "com.unity.modules.unityanalytics": "1.0.0",
47 | "com.unity.modules.unitywebrequest": "1.0.0",
48 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0",
49 | "com.unity.modules.unitywebrequestaudio": "1.0.0",
50 | "com.unity.modules.unitywebrequesttexture": "1.0.0",
51 | "com.unity.modules.unitywebrequestwww": "1.0.0",
52 | "com.unity.modules.vehicles": "1.0.0",
53 | "com.unity.modules.video": "1.0.0",
54 | "com.unity.modules.vr": "1.0.0",
55 | "com.unity.modules.wind": "1.0.0",
56 | "com.unity.modules.xr": "1.0.0"
57 | }
58 | }
59 |
--------------------------------------------------------------------------------
/Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Core/UnsafeWorld.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.Game;
2 | using Lockstep.Logging;
3 | using Lockstep.Math;
4 | using Lockstep.Util;
5 | using NetMsg.Common;
6 | using Lockstep.UnsafeECS;
7 |
8 | namespace Lockstep.UnsafeECS.Game {
9 | public partial class UnsafeWorld : World {
10 | private Context _context;
11 | private Systems _systems;
12 | public UnsafeWorld(IServiceContainer services, object contextsObj, object logicFeatureObj){
13 | var contexts = contextsObj as Context;
14 | var logicFeature = logicFeatureObj as Systems;
15 | _context = contexts;
16 | _context._entityService = services.GetService();
17 | _timeMachineService = services.GetService();
18 | _systems = new WorldSystems(_context, services, logicFeature);
19 | _context.DoAwake(_systems,services);
20 | Debug.Log("UnsafeWorld Constructer");
21 | //temp code
22 | }
23 |
24 | protected override void DoSimulateAwake(IServiceContainer serviceContainer, IManagerContainer mgrContainer){
25 | InitReference(serviceContainer, mgrContainer);
26 | DoAwake(serviceContainer);
27 | DoStart();
28 | }
29 |
30 | protected override void DoSimulateStart(){
31 | Debug.Log("DoSimulateStart");
32 | Profiler.BeginSample("UnsafeECS DoInitialize");
33 | _context.DoInitialize();
34 | Profiler.EndSample();
35 | }
36 |
37 | protected override void DoStep(bool isNeedGenSnap){
38 | Profiler.BeginSample("UnsafeECS Update");
39 | _context.DoUpdate();
40 | Profiler.EndSample();
41 | }
42 |
43 | protected override void DoBackup(int tick){
44 | Profiler.BeginSample("_context.Backup");
45 | _context.Backup(tick);
46 | Profiler.EndSample();
47 | //Profiler.BeginSample("_context.DoCleanUselessSnapshot");
48 | //DoCleanUselessSnapshot(tick -1);
49 | //Profiler.EndSample();
50 | }
51 | protected override void DoRollbackTo(int tick, int missFrameTick, bool isNeedClear = true){
52 | _context.RollbackTo(tick,missFrameTick,isNeedClear);
53 | }
54 | protected override void DoCleanUselessSnapshot(int checkedTick){
55 | _context.CleanUselessSnapshot(checkedTick);
56 | }
57 | protected override void DoProcessInputQueue(byte actorId, InputCmd cmd){
58 | _context.ProcessInputQueue(actorId,cmd);
59 | }
60 |
61 | }
62 | }
--------------------------------------------------------------------------------
/Client.Unity/ProjectSettings/GraphicsSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!30 &1
4 | GraphicsSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 12
7 | m_Deferred:
8 | m_Mode: 1
9 | m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0}
10 | m_DeferredReflections:
11 | m_Mode: 1
12 | m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0}
13 | m_ScreenSpaceShadows:
14 | m_Mode: 1
15 | m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0}
16 | m_LegacyDeferred:
17 | m_Mode: 1
18 | m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0}
19 | m_DepthNormals:
20 | m_Mode: 1
21 | m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0}
22 | m_MotionVectors:
23 | m_Mode: 1
24 | m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0}
25 | m_LightHalo:
26 | m_Mode: 1
27 | m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0}
28 | m_LensFlare:
29 | m_Mode: 1
30 | m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0}
31 | m_AlwaysIncludedShaders:
32 | - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0}
33 | - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0}
34 | - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0}
35 | - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0}
36 | - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0}
37 | - {fileID: 10782, guid: 0000000000000000f000000000000000, type: 0}
38 | - {fileID: 16000, guid: 0000000000000000f000000000000000, type: 0}
39 | - {fileID: 16001, guid: 0000000000000000f000000000000000, type: 0}
40 | - {fileID: 16002, guid: 0000000000000000f000000000000000, type: 0}
41 | - {fileID: 17000, guid: 0000000000000000f000000000000000, type: 0}
42 | m_PreloadedShaders: []
43 | m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000,
44 | type: 0}
45 | m_CustomRenderPipeline: {fileID: 0}
46 | m_TransparencySortMode: 0
47 | m_TransparencySortAxis: {x: 0, y: 0, z: 1}
48 | m_DefaultRenderingPath: 1
49 | m_DefaultMobileRenderingPath: 1
50 | m_TierSettings: []
51 | m_LightmapStripping: 0
52 | m_FogStripping: 0
53 | m_InstancingStripping: 0
54 | m_LightmapKeepPlain: 1
55 | m_LightmapKeepDirCombined: 1
56 | m_LightmapKeepDynamicPlain: 1
57 | m_LightmapKeepDynamicDirCombined: 1
58 | m_LightmapKeepShadowMask: 1
59 | m_LightmapKeepSubtractive: 1
60 | m_FogKeepLinear: 1
61 | m_FogKeepExp: 1
62 | m_FogKeepExp2: 1
63 | m_AlbedoSwatchInfos: []
64 | m_LightsUseLinearIntensity: 0
65 | m_LightsUseColorTemperature: 0
66 |
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Src/Server.SimpleServer/Src/Server/MessagePacker.cs:
--------------------------------------------------------------------------------
1 | using Lockstep.Network;
2 | using Lockstep.Serialization;
3 | using NetMsg.Common;
4 |
5 | namespace Lockstep.Game{
6 | public class MessagePacker : IMessagePacker {
7 | public static MessagePacker Instance { get; } = new MessagePacker();
8 |
9 | public object DeserializeFrom(ushort opcode, byte[] bytes, int index, int count){
10 | var type = (EMsgSC) opcode;
11 | switch (type) {
12 | //ping
13 | case EMsgSC.C2G_PlayerPing: return BaseFormater.FromBytes(bytes, index, count);
14 | case EMsgSC.G2C_PlayerPing: return BaseFormater.FromBytes(bytes, index, count);
15 | //login
16 | case EMsgSC.L2C_JoinRoomResult: return BaseFormater.FromBytes(bytes, index, count);
17 | case EMsgSC.C2L_JoinRoom: return BaseFormater.FromBytes(bytes, index, count);
18 | case EMsgSC.C2L_LeaveRoom: return BaseFormater.FromBytes(bytes, index, count);
19 | case EMsgSC.C2G_LoadingProgress: return BaseFormater.FromBytes(bytes, index, count);
20 |
21 | //room
22 | case EMsgSC.G2C_Hello: return BaseFormater.FromBytes(bytes, index, count);
23 | case EMsgSC.G2C_FrameData: return BaseFormater.FromBytes(bytes, index, count);
24 | case EMsgSC.G2C_RepMissFrame: return BaseFormater.FromBytes(bytes, index, count);
25 | case EMsgSC.G2C_GameEvent: return BaseFormater.FromBytes(bytes, index, count);
26 | case EMsgSC.G2C_GameStartInfo: return BaseFormater.FromBytes(bytes, index, count);
27 | case EMsgSC.G2C_LoadingProgress: return BaseFormater.FromBytes(bytes, index, count);
28 | case EMsgSC.G2C_AllFinishedLoaded: return BaseFormater.FromBytes(bytes, index, count);
29 |
30 | case EMsgSC.C2G_PlayerInput: return BaseFormater.FromBytes(bytes, index, count);
31 | case EMsgSC.C2G_ReqMissFrame: return BaseFormater.FromBytes(bytes, index, count);
32 | case EMsgSC.C2G_RepMissFrameAck: return BaseFormater.FromBytes(bytes, index, count);
33 | case EMsgSC.C2G_HashCode: return BaseFormater.FromBytes(bytes, index, count);
34 | }
35 |
36 | return null;
37 | }
38 |
39 | public byte[] SerializeToByteArray(IMessage msg){
40 | return ((BaseFormater) msg).ToBytes();
41 | }
42 | }
43 | }
--------------------------------------------------------------------------------
/Client.Unity/DataAndTools/Src/Tools.UnsafeECS.ECSOutput/Src/Generated/Model/CodeGen_Service_Entity.cs:
--------------------------------------------------------------------------------
1 |
2 | //------------------------------------------------------------------------------
3 | //
4 | // This code was generated by Tools.MacroExpansion, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
5 | // https://github.com/JiepengTan/LockstepEngine
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | //Power by ME //src: https://github.com/JiepengTan/ME
12 |
13 | //#define DONT_USE_GENERATE_CODE
14 |
15 | using System.Linq;
16 | using Lockstep.Serialization;
17 | using System.Runtime.InteropServices;
18 | using System.Runtime.CompilerServices;
19 | using System;
20 | using Lockstep.InternalUnsafeECS;
21 | using System.Collections;
22 | using Lockstep.Math;
23 | using System.Collections.Generic;
24 | using Lockstep.Logging;
25 | using Lockstep.Util;
26 | namespace Lockstep.UnsafeECS.Game {
27 | public unsafe partial interface IEntityService {
28 | void OnPlayerCubeCreated(Context context, PlayerCube* entity);
29 | void OnPlayerCubeDestroy(Context context, PlayerCube* entity);
30 | }
31 |
32 | public unsafe partial class PureEntityService :IEntityService {
33 | public void OnPlayerCubeCreated(Context context, PlayerCube* entity){}
34 | public void OnPlayerCubeDestroy(Context context, PlayerCube* entity){}
35 | }
36 | }
37 |
--------------------------------------------------------------------------------