Ver Fonte

# ET6 发布!ET6相比ET5有巨大变化,可以说是凤姐变亦菲,6.0拥有如下惊人的特点
1. 客户端逻辑全热更新(基于ILRuntime),没有不能更的部分
2. 客户端服务端均可热重载,开发不用重启客户端服务端即可修改逻辑代码,开发极其方便
2. 机器人框架,方便压测服务端
3. 测试用例框架,方便编写服务端测试用例
4. AI框架,写AI比写UI还简单
5. 新的服务端架构,极其优美
6. 内外网kcp网络,性能强劲

tanghai há 4 anos atrás
pai
commit
d94918f5c8
1 ficheiros alterados com 26 adições e 11 exclusões
  1. 26 11
      README.md

+ 26 - 11
README.md

@@ -4,6 +4,16 @@
 
 
 # [ET论坛](https://et-framework.cn)  
 # [ET论坛](https://et-framework.cn)  
 
 
+
+# ET6 发布!ET6相比ET5有巨大变化,可以说是凤姐变亦菲,6.0拥有如下惊人的特点
+1. 客户端逻辑全热更新(基于ILRuntime),没有不能更的部分  
+2. 客户端服务端均可热重载,开发不用重启客户端服务端即可修改逻辑代码,开发极其方便  
+2. 机器人框架,方便压测服务端  
+3. 测试用例框架,方便编写服务端测试用例  
+4. AI框架,写AI比写UI还简单  
+5. 新的服务端架构,极其优美  
+6. 内外网kcp网络,性能强劲  
+
 # ET开发的商业mmo项目千古风流成功上线,64核128G内存的单服单物理机1.5W在线(实际线上策划为了生态限制为单服6000人同时在线,6000人的话cpu消耗约为30%)。为了堆栈行号正常,线上跑得是Debug版,如果使用Release版开启优化,性能还能翻一倍,达到单物理机3W在线!上线两个月来十分稳定。千古风流使用了ET框架从零开发,用时两年,这个开发速度可以说无人出其右。千古风流的成功上线证明了ET具备开发任何大型游戏的能力,开发速度,开发效率都令人叹为观止!千古风流使用到的客户端服务器技术:  
 # ET开发的商业mmo项目千古风流成功上线,64核128G内存的单服单物理机1.5W在线(实际线上策划为了生态限制为单服6000人同时在线,6000人的话cpu消耗约为30%)。为了堆栈行号正常,线上跑得是Debug版,如果使用Release版开启优化,性能还能翻一倍,达到单物理机3W在线!上线两个月来十分稳定。千古风流使用了ET框架从零开发,用时两年,这个开发速度可以说无人出其右。千古风流的成功上线证明了ET具备开发任何大型游戏的能力,开发速度,开发效率都令人叹为观止!千古风流使用到的客户端服务器技术:  
 1. 动态副本跟分线,按需分配,用完回收  
 1. 动态副本跟分线,按需分配,用完回收  
 2. 分线合线,分线人数较少会把多条线合并。合线功能基本上其它mmo游戏很少见到  
 2. 分线合线,分线人数较少会把多条线合并。合线功能基本上其它mmo游戏很少见到  
@@ -16,8 +26,6 @@
 9. 防攻击,千古风流开发了软路由功能,即使攻击也只能攻击到软路由,一旦被攻击,玩家客户端发现几秒钟无响应,即可动态切换到其它软路由,用户几乎无感知。整个过程客户端网络连接不断开,数据不丢失。  
 9. 防攻击,千古风流开发了软路由功能,即使攻击也只能攻击到软路由,一旦被攻击,玩家客户端发现几秒钟无响应,即可动态切换到其它软路由,用户几乎无感知。整个过程客户端网络连接不断开,数据不丢失。  
 10. 还有很多很多,这里就不啰嗦了  
 10. 还有很多很多,这里就不啰嗦了  
 
 
-# 注意!现在master(6.0版)还在开发中,不过基本架构已经完成, 客户端热更新已经有多个版本实现,参考最下面的友情链接  
-
 
 
 # ET的介绍:
 # ET的介绍:
 ET是一个开源的游戏客户端(基于unity3d)服务端双端框架,服务端是使用C# .net core开发的分布式游戏服务端,其特点是开发效率高,性能强,双端共享逻辑代码,客户端服务端热更机制完善,同时支持可靠udp tcp websocket协议,支持服务端3D recast寻路等等  
 ET是一个开源的游戏客户端(基于unity3d)服务端双端框架,服务端是使用C# .net core开发的分布式游戏服务端,其特点是开发效率高,性能强,双端共享逻辑代码,客户端服务端热更机制完善,同时支持可靠udp tcp websocket协议,支持服务端3D recast寻路等等  
@@ -51,19 +59,26 @@ erlang语言一大优势就是位置透明的消息机制,用户完全不用
 ### 6.提供服务器不停服动态更新逻辑功能  
 ### 6.提供服务器不停服动态更新逻辑功能  
 热更是游戏服务器不可缺少的功能,ET框架使用的组件设计,可以做成守望先锋的设计,组件只有成员,无方法,将所有方法做成扩展方法放到热更dll中,运行时重新加载dll即可热更所有逻辑。
 热更是游戏服务器不可缺少的功能,ET框架使用的组件设计,可以做成守望先锋的设计,组件只有成员,无方法,将所有方法做成扩展方法放到热更dll中,运行时重新加载dll即可热更所有逻辑。
 ### 7.客户端使用C#热更新,热更新一键切换  
 ### 7.客户端使用C#热更新,热更新一键切换  
-可以使用csharp.lua或者ILRuntime稍加改造即可做客户端热更。再也不用使用狗屎lua了,客户端可以实现所有逻辑热更新,包括协议,config,ui等等  
-### 8.客户端服务端用同一种语言,并且共享代码  
+可以使用csharp.lua或者ILRuntime稍加改造即可做客户端热更。再也不用使用狗屎lua了,客户端可以实现所有逻辑热更新,包括协议,config,ui等等。  
+### 8.客户端热重载  
+开发不用重启客户端即可修改客户端逻辑代码,开发极其方便  
+
+### 9.客户端服务端用同一种语言,并且共享代码  
 下载ET框架,打开服务端工程,可以看到服务端引用了客户端很多代码,通过引用客户端代码的方式实现了双端共享代码。例如客户端服务端之间的网络消息两边完全共用一个文件即可,添加一个消息只需要修改一遍。  
 下载ET框架,打开服务端工程,可以看到服务端引用了客户端很多代码,通过引用客户端代码的方式实现了双端共享代码。例如客户端服务端之间的网络消息两边完全共用一个文件即可,添加一个消息只需要修改一遍。  
-### 9.KCP ENET TCP Websocket协议无缝切换  
+### 10.KCP ENET TCP Websocket协议无缝切换  
 ET框架不但支持TCP,而且支持可靠的UDP协议(ENET跟KCP),ENet是英雄联盟所使用的网络库,其特点是快速,并且网络丢包的情况下性能也非常好,这个我们做过测试TCP在丢包5%的情况下,moba游戏就卡的不行了,但是使用ENet,丢包20%仍然不会感到卡。非常强大。框架还支持使用KCP协议,KCP也是可靠UDP协议,据说比ENET性能更好,使用kcp请注意,需要自己加心跳机制,否则20秒没收到包,服务端将断开连接。协议可以无缝切换。  
 ET框架不但支持TCP,而且支持可靠的UDP协议(ENET跟KCP),ENet是英雄联盟所使用的网络库,其特点是快速,并且网络丢包的情况下性能也非常好,这个我们做过测试TCP在丢包5%的情况下,moba游戏就卡的不行了,但是使用ENet,丢包20%仍然不会感到卡。非常强大。框架还支持使用KCP协议,KCP也是可靠UDP协议,据说比ENET性能更好,使用kcp请注意,需要自己加心跳机制,否则20秒没收到包,服务端将断开连接。协议可以无缝切换。  
-### 10. 3D Recast寻路功能  
+### 11. 3D Recast寻路功能  
 可以Unity导出场景数据,给服务端做recast寻路。做MMO非常方便,demo演示了服务端3d寻路功能  
 可以Unity导出场景数据,给服务端做recast寻路。做MMO非常方便,demo演示了服务端3d寻路功能  
-### 11. 服务端支持repl,也可以动态执行一段新代码  
+### 12. 服务端支持repl,也可以动态执行一段新代码  
 这样就可以打印出进程中任何数据,大大简化了服务端查找问题的难度,开启repl方法,直接在console中输入repl回车即可进入repl模式  
 这样就可以打印出进程中任何数据,大大简化了服务端查找问题的难度,开启repl方法,直接在console中输入repl回车即可进入repl模式  
-### 12.提供客户端机器人框架支持  
-几行代码即可创建机器人登录游戏。机器人压测轻而易举,机器人跟正常的玩家完全一样,上线前用机器人做好压测,大大降低上线崩溃几率    
-
-### 13.还有很多很多功能,我就不详细介绍了  
+### 13.提供客户端机器人框架支持  
+几行代码即可创建机器人登录游戏。机器人压测轻而易举,机器人跟正常的玩家完全一样,上线前用机器人做好压测,大大降低上线崩溃几率   
+### 14.AI框架  
+ET的AI框架让AI编写比UI还简单     
+### 15.测试用例框架  
+跟市面上的测试用例不同,ET的测试用例都是一个完整的游戏环境,针对协议级别,不需要搞各种接口去mock。写起来非常快速    
+
+### 16.还有很多很多功能,我就不详细介绍了  
 a.及其方便检查CPU占用和内存泄漏检查,vs自带分析工具,不用再为性能和内存泄漏检查而烦恼  
 a.及其方便检查CPU占用和内存泄漏检查,vs自带分析工具,不用再为性能和内存泄漏检查而烦恼  
 b.使用NLog库,打log及其方便,平常开发时,可以将所有服务器log打到一个文件中,再也不用一个个文件搜索log了  
 b.使用NLog库,打log及其方便,平常开发时,可以将所有服务器log打到一个文件中,再也不用一个个文件搜索log了  
 c.统一使用Mongodb的bson做序列化,消息和配置文件全部都是bson或者json,并且以后使用mongodb做数据库,再也不用做格式转换了。  
 c.统一使用Mongodb的bson做序列化,消息和配置文件全部都是bson或者json,并且以后使用mongodb做数据库,再也不用做格式转换了。