Giter VIP home page Giter VIP logo

etpro's Introduction

ETPro

和ET6的区别

  1. 使用YooAssets实现了资源热更新,包括多渠道安装包分包配置功能
  2. 使用了基于YooAssets的资源管理系统替换了原有系统,包括对动态图集、Unity内置SpriteAtlas图集功能的支持
  3. 使用组件模式的UI框架替换掉了原有部分,包括红点系统、多语言系统、引导系统等,易于集成第三方插件
  4. 使用HybridCLR替换了ILRuntime,对C#语法支持更完备,BUG更少
  5. 提供一个简单可扩展的对话框架
  6. 替换AOI框架,支持OBB、球形触发器和射线检测,并且双端使用AOI
  7. 提供一个简单可扩展的战斗框架,并且双端可单独使用
  8. 提供一个简单的Ghost系统,服务端无缝世界跨逻辑地图战斗

UI框架使用教程

  1. 基于ET6组件式UI框架的使用 https://www.bilibili.com/video/BV1Ra411q7Ct
  2. ScrollView无限滑动列表 https://www.bilibili.com/video/BV1YR4y1g7tN

演示视频

  1. 触发器演示视频 https://www.bilibili.com/video/BV1iY4y1t7Kj
  2. 服务端跨地图战斗 https://www.bilibili.com/video/BV1DB4y1B7qH

战斗框架设计思路

  1. 分为两块内容,基于时间线的Skill,附着在Unit上的BUFF
  2. 一个Skill包含多个组,释放时进入配置的默认组,在释放过程可以通过时间线上的触发器触发其他事件,如加BUFF、播动画、加音效、切换执行其他组等
  3. 技能时间线执行中两个触发点之间如有间隔时间则可能被打断,打断会进入配置的默认打断组
  4. buff通过优先级、分组等方式处理顶替等操作,一个buff可以有多个子状态,通过组合模式配置,如一个buff可以同时用来修改属性、添加控制状态等
  5. buff还可以用来监听事件,如造成伤害前、后分别会轮询一次攻击者和被攻击者所有buff分发造成伤害事件,在buff对应事件可以获取以及修改伤害信息,其他还有诸如添加、移除buff事件,移动事件等可自己扩展
  6. 由于是基于时间线的,技能编辑器用Timeline什么的很好做,配置也可采用其他方式如json,lua,scriptobject等,改下SkillStepComponent就好

注意事项

本仓库引用的HybridCLR是修改过支持reload dll的分支,具体修改内容参考 https://github.com/focus-creative-games/hybridclr/commit/db4e8c4fea9f8ccb9681b69ee8c50a919e16dece

etpro's People

Contributors

526077247 avatar bsyx avatar chen2bull avatar cy398088147 avatar difficulty-in-naming avatar dukechiang avatar egametang avatar flameskydexive avatar hongxiao avatar huskka avatar jiyangji avatar k-k-s-s avatar kteong1012 avatar lingithubname avatar longshilin avatar lrozon avatar m969 avatar me66ccff avatar mister91jiao avatar ollverkane avatar spadd avatar susices avatar u-xp avatar viagi avatar wqaetly avatar wryl avatar yinmany avatar yukuyoulei avatar zxt385189207 avatar zzjfengqing avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

etpro's Issues

mac上运行报错

在mac上,使用tool工具导出excel,有个路径错误 具体如下:
ExcelExporter 开始
System.IO.DirectoryNotFoundException: Could not find a part of the path '/Users/li/Documents/Personal/unity_project/FirstGame/Excel\Chapter'.

重新生成失败

下载最新的代码,按照说明,执行到第二步后出现如下错误:
image
没用过YooAsset HybridCLR等,我的U3D是2021.3.6.f1c1,难道一定要对应版本?

按照教程继续,客户端进到输入账号阶段出现如下错误,没法调试,看样子是我这边DLL还没生成,路径给的还是作者的。
System.MissingMethodException: Method not found: UnityEngine.UI.InputField/SubmitEvent UnityEngine.UI.InputField.get_onEndEdit()
at ET.UILoginViewOnCreateSystem.OnCreate (ET.UILoginView self) [0x00132] in D:\GitPro\ETPro\Unity\Codes\HotfixView\Demo\UI\UILogin\UILoginViewSystem.cs:27
at ET.OnCreateSystem1[T].Run (System.Object o) [0x00001] in D:\GitPro\ETPro\Unity\Codes\Model\Module\UIManager\System\IOnCreateSystem.cs:65 at ET.UIWatcherComponentSystem.OnCreate (ET.UIWatcherComponent self, ET.Entity component) [0x00051] in D:\GitPro\ETPro\Unity\Codes\Hotfix\Module\UIManager\UIWatcherComponentSystem.cs:61 UnityEngine.Debug:LogError (object) ET.UnityLogger:Error (string) (at Assets/Mono/Core/Log/UnityLogger.cs:30) ET.Log:Error (System.Exception) (at Assets/Mono/Core/Log/Log.cs:95) ET.UIWatcherComponentSystem:OnCreate (ET.UIWatcherComponent,ET.Entity) (at D:/GitPro/ETPro/Unity/Codes/Hotfix/Module/UIManager/UIWatcherComponentSystem.cs:65) ET.InnerOpenWindow_GetGameObject/<Run>d__0:MoveNext () (at D:/GitPro/ETPro/Unity/Codes/HotfixView/Module/UIManager/Event/InnerOpenWindow_GetGameObject.cs:31) ET.ETTask1<UnityEngine.GameObject>:SetResult (UnityEngine.GameObject) (at Assets/ThirdParty/ETTask/ETTask.cs:295)
ET.ETAsyncTaskMethodBuilder1<UnityEngine.GameObject>:SetResult (UnityEngine.GameObject) (at Assets/ThirdParty/ETTask/AsyncETTaskMethodBuilder.cs:94) ET.GameObjectPoolComponentSystem/<GetGameObjectAsync>d__6:MoveNext () (at D:/GitPro/ETPro/Unity/Codes/HotfixView/Module/Resource/GameObjectPoolComponentSystem.cs:223) ET.ETTask:SetResult () (at Assets/ThirdParty/ETTask/ETTask.cs:145) ET.ETAsyncTaskMethodBuilder:SetResult () (at Assets/ThirdParty/ETTask/AsyncETTaskMethodBuilder.cs:35) ET.GameObjectPoolComponentSystem/<PreLoadGameObjectAsync>d__4:MoveNext () (at D:/GitPro/ETPro/Unity/Codes/HotfixView/Module/Resource/GameObjectPoolComponentSystem.cs:180) ET.ETTask1<UnityEngine.GameObject>:SetResult (UnityEngine.GameObject) (at Assets/ThirdParty/ETTask/ETTask.cs:295)
ET.ResourcesComponentSystem/<>c__DisplayClass2_0`1<UnityEngine.GameObject>:b__0 (YooAsset.AssetOperationHandle) (at D:/GitPro/ETPro/Unity/Codes/HotfixView/Module/Resource/ResourcesComponentSystem.cs:84)
YooAsset.AssetOperationHandle:InvokeCallback () (at Packages/[email protected]/Runtime/AssetSystem/Handles/AssetOperationHandle.cs:15)
YooAsset.ProviderBase:InvokeCompletion () (at Packages/[email protected]/Runtime/AssetSystem/Provider/ProviderBase.cs:215)
YooAsset.DatabaseAssetProvider:Update () (at Packages/[email protected]/Runtime/AssetSystem/Provider/DatabaseAssetProvider.cs:71)
YooAsset.AssetSystem:Update () (at Packages/[email protected]/Runtime/AssetSystem/AssetSystem.cs:59)
YooAsset.YooAssets:InternalUpdate () (at Packages/[email protected]/Runtime/YooAssets.cs:1036)
YooAsset.YooAssetDriver:Update () (at Packages/[email protected]/Runtime/YooAssetDriver.cs:9)

想研究下作者的AOI和战斗模块,求帮助!

运行报错

运行到map场景 报错 System.TypeLoadException:Invalid type ET.Unit for instance field ET.EventType AfterUnitCreate

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.