本文章已于2021.9.7更新,更正ET 6.0的地址配置以及含义,新增Linux实操步骤
前言
对于Linux部署的实操部分,参见:https://www.lfzxb.top/recastnavigation-and-et-to-linux
正文
ET6.0版本配置
现在大多人用的都是云服务器,会将外网IP映射到内网IP(网卡IP),所以一般外网地址和内网地址都是内网IP。
实际上我试过将Socket绑定到云服务器的公网IP,会直接报错
但是服务端会将外网地址传递回客户端让客户端连接Gate,但是我们外网IP只能填服务器的内网IP,也就会导致客户端无法和服务端通信,所以我们要多做一列地址专门告诉客户端服务端的外网地址
总结一下
我们约定,服务器公网IP为192.168.0.1,内网IP为44.117.7.8

文章作者: 烟雨迷离半世殇
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 登峰造极者,殊途亦同归。!
相关推荐

2021-07-09
ET&&FGUI接入xasset流程
本文章已于2021.7.9更新,修复FGUI释放UI包时,ab释放所有权问题。感谢网友 小太阳 的提醒。 本文章已于2021.3.29更新,FGUI编辑器升级到2021.1.0,FGUI SDK升级到4.2.0,新增FGUI资源加载全异步支持,简化大量代码。感谢网友ˇ℉un . Shīne的提醒。 前言 技能系统暂时告一段落,现在要花点时间规范一下客户端这边的资源管理以及一些流程优化,这里选择轻量高效资源管理框架xasset:https://github.com/xasset/xasset 版本为:https://github.com/xasset/xasset/commit/3d4983cd24ff92a63156c8078caf34b20d2d4c02 代码量很少,一天就能看个差不多,但是质量很高,如果只追求使用的话,是可以开箱即用的。 另外我对xasset底层源码做了一些修改,主要是为了迎合我们ET传统艺能await/async样式代码,所以推荐大家直接使用我项目(下文的Moba项目)中的xasset源码 想要入门此资源管理框架的可以查看:https://www.lfzx...

2021-03-15
GameFramework篇:Network模块使用示例
Network模块 连接ET服务端 前言 过了那么久,我又回来了,因为我开始研习服务端了(欠的技术债总要还的),因为GF已经越来越熟练,并且使用过程中也十分稳定,所以我已经决定了,使用GF做客户端,至于服务端,因为对于中大型项目,服务端框架也必不可少,我选择了ET(另一个很强大的框架,是双端的链接:https://github.com/egametang/ET)。 项目工程下载 既然要学习,那就要一个案例,身为服务端小白,我是写不出什么案例的,E大的StarForce中的Network功能已经做了示例,但是木头大佬已经讲解过了,我就没必要再说一遍了,链接http://www.benmutou.com/archives/2630,那么用啥案例呢?这就要请出我们的毛毛大佬了,奉上GayHub https://github.com/Maomao110/StarForce 下载之后,需要下载submoudle,不然会报错,不会的同学可以参考这篇的下载方式 https://blog.csdn.net/qq_15020543/article/details/86774781 至于ET,我专门...

2021-03-15
GameFramework篇:自定义事件并订阅的流程
自定义事件并订阅 正如木头大佬所说 在GF里面创建和使用自定义事件还是比较容易的 这里举个例子 我们进行场景切换,要加载完下一场景所有资源才能切换吧,不然黑屏是什么鬼 这里我是切换场景后,开始生成多个实体,所有实体生成完毕,关闭过渡UI,显示游戏界面 创建 这个事件类里面的变量可以随意定义(至少要包括Clear()方法和Id变量) 其中Fill()函数是用来填充事件类里面的数据的(可有可无,视情况而定),将LoadNextResourcesSuccess设为true 定义好了事件,我们要怎么使用呢 先订阅 HideUI为回调函数的名称,参数必须为(委托的原因) 在最后一行执行Fire,意为抛出事件,所有订阅这个事件的回调函数都将被执行 最后,用完了,要放回去,取消订阅(在UI关闭的时候) 总结 在GF里自定义事件主要分为以下步骤 创建自定义事件 订阅自定义事件并指定回调函数 达成条件,抛出事件 取消订阅 其实我们不难发现,GF的内置事件执行流程也和这大致一样,不过更复杂点就是了,大家可以自行查看内置事件,循着源码过一遍,就理解了
2021-08-22
ET6.0学习笔记
前言 由于之前已经写过很多ET相关教程,本篇文章主要提及ET6.0的新概念和新特性,其实6.0很多知识点和之前版本一样适用,想看ET之前版本教程的,可以前往:ET篇:个人笔记汇总 本文写作时对应的commit版本:https://github.com/egametang/ET/commit/43abb90cd05445f2e9a0625ac12caaab59486672 基础概念 此部分内容参考:ET6.0的设计思路 推荐大家有问题先去ET论坛逛逛,里面有很多管理员整理好的日常讨论答案,技术教程,以及其他朋友提出的问题,可以学到很多知识。 ET 6.0创新概览 之前每个功能是一个进程,比如realm gate location map,现在改成每个功能是一个Scene,一个Scene可以放到一个进程中。这样一台物理机先启动固定的进程,然后各个scene放到进程中运行。非常类似docker。 所有的Scene放在一个进程就变成了AllServer模式 服务器内部全部使用actor发送消息,比如realm发给gate,其实是发个actor消息到gate scene dbserver...

2021-01-01
ET篇:账号异常解决方案汇总
前言 当然了,网络游戏中的异常太多了,断线重连,封号处理之类的,但是目前我还没有接触到那些模块,就没必要做超前的处理,等做到了也会整合到这篇博客里,本篇博客主要是讲解思路,可能代码上面有些描述不够清晰,大家可以去我的项目里翻一下完整代码 https://gitee.com/NKG_admin/MKGMobaBasedOnET 常见异常为 账号被人顶下来 客户端自身或者网络问题(死机,网络不良)无法连接服务器或者与服务器断开连接 客户端突发状况(断电,退出游戏),与服务器断开连接 在开始说明解决方案之前,我们先明确几个概念 如果客户端这边退出游戏,将会调用Session.Dispose(),并且服务端与之对应的Session也会执行Dispose 网络不良或者没有网络,将不会调用Session.Dispose(),要靠双端的心跳包情况来让服务端判断是否要断开连接(执行Session.Dispose()),然后双端各自执行断线后的逻辑 emmm,为什么这两个简单的概念把我绕了一天?(观众:是不是脑瘫就不用我们多说了⑧) 对应的三个解决方案 账号被人顶下来的解决方案 既然是被人...

2020-02-01
ET篇:运行斗地主Demo
环境准备: 下载斗地主Demo https://github.com/Viagi/LandlordsCore.git 准备2017.4.0版本的Unity https://unity3d.com/cn/get-unity/download/archive 下载并配置MongoDB以及Studio 3T MongoDB地址:****https://www.mongodb.com/download-center/community 选择Custom 我是在D盘新建了MongoDB文件夹来作为安装目录 这个可视化工具看个人喜好,我这里没有安装 找到电脑上的cmd.exe 复制一份到MongoDB安装目录的bin文件夹下面 打开刚刚复制的cmd.exe 执行以下命令(_dbpath后面的路径为你的MongoDB安装路径下的的data文件夹路径) 1mongod -dbpath D:\MongoDB\data 然后他可能会这样 打开浏览器,输入** http://localhost:27017/如果显示如下信息,表示连接成功** Studio 3T的下载 https://...
评论

