Legends-Of-Heroes
English: please use your browser to translate to english
一个LOL风格的球球大作战游戏,基于ET7.2,使用状态同步
Main
ET7.2 Master ,同步到ET主干详情请看日志。注意:已经升级.Net7,请安装.
基于C#双端框架此游戏为ET7.2的一个实践项目demo,玩法主要是球球大作战类型的吃食物吃敌人/被敌人吃的生存玩法。此项目采用状态同步,所有碰撞检测、技能、AI等逻辑都放在服务端执行。当前仍在开发中,具体功能模块及进度看下面的Todo即可
环境:
-
- 安装Unity2022.3.0,安装VS2022/Rider2023,安装.Net7 SDK.
运行步骤:
-
- Unity打开编辑器菜单:ET/BuildTool,CodeMode选择Client,然后点击BuildModelAndHotfix.
-
- 打开ET.sln,编译整个项目,运行DotNet.App.(服务器、客户端拆分模式才需要单独运行,默认是Client-Server模式)
-
- Unity运行游戏即可看到登录页面,输入账号密码登录即可
TODO && Features
- 接入Unity运行时可视化Log调试组件Debugger
- 接入基于UGUI适配ET的UI框架EUI
- 接入YooAsset资源管理打包热更框架
- 摇杆控制角色移动,相机跟随,通过服务端广播位置同步
- 配置表支持多Key(也可自行接入强大的多平台配置方案 Luban,当前Demo用不到那么复杂excel就不进行接入了)。
- 房间大厅,匹配房友,每个房间最多20个玩家。
- 一个Demo关卡流程:有限的2d地图,随机生成食物,吃食物会变大,碰到敌人会产生伤害(大吞小,小死亡)。
- 一个比较基本的战斗技能框架设计,主动/被动技能释放(demo已经包含主动技能演示)。
- 时间线技能事件系统
- 子弹碰撞系统(碰撞检测使用Box2dSharp)
- 额外(有空的话):2d moba玩法。
补充说明
-
多key配置说明,表格配置多key如下,字段列头顶增加“key”标识即可,最多支持4个key,组合key最后会合并成一个long字段存储,4个key最大数值分别为:32位,16位,8位,8位。
示例,读取技能等级表中技能id=1001,level=2的数据:
SkillLevelConfig skillLevel = SkillLevelConfigCategory.Instance.GetByKeys(1001, 2);
特别鸣谢
感谢JetBrains公司提供的使用许可证!