梦成版本的 EWIN 启动大厅,很多人第一次跑的时候,都会遇到一个看似莫名其妙的卡死场景:大厅正常,点击进入游戏房间,进度条走到一半就卡住,然后原地打转,进不去也不报错。 如下场景应该很多人都见过: 很多人以为是网络、端口或者数据库权限问题,结果折腾半天,最后发现是梦成版的一个「授权验证」卡住了。 原因分析 梦成 EWIN 做过授权绑定,核心逻辑是后台 游戏服务器 里在跑 AttemperEngineSink.cpp 这个模块时,会调用机器码验证、授权密钥比对。如果没对上,就不放行,前端大厅只能原地自转。 修正思路 只要是内部测试或者二开项目,很多人干脆把这段验证直接注释掉就好。 位置就在: 游戏服务器 -> AttemperEngineSink.cpp 一般是在 1134 行左右,具体行数看你自己版本的代码结构。 实际操作 如下示例: 从上图可以看到,这段逻辑: 先读机器码 读配置 拼接 KeyValue 做 MD5 加密 再做比对 所以只要把这一整块逻辑用 /* ... */ 或者 // 注释掉,编译后这部分验证就不会执行,前端大厅自然能顺利进房。 建议 这种改动,强烈建议: 改前先备份源码 用版本控制留好记录 只在测试或内部局域网下使用,别滥用授权跳过逻辑 毕竟梦成这套逻辑放在这儿是有它的目的,能合法用就别为了省事乱开。 最后 很多老大厅一跑卡进度条,别急着重装、别急着改端口,先看授权校验跑没跑通。 把逻辑注释掉只是最后手段,能通过正常授权验证当然是最好。 转载请注明出处,保留作者署名与出处链接,感谢支持开源精神与知识传播!
梦成版本的 EWIN 启动大厅,很多人第一次跑的时候,都会遇到一个看似莫名其妙的卡死场景:大厅正常,点击进入游戏房间,进度条走到一半就卡住,然后原地打转,进不去也不报错。 如下场景应该很多人都见过: 很多人以为是网络、端口或者数据库权限问题,结果折腾半天,最后发现是梦成版的一个「授权验证」卡住了。 原因分析 梦成 EWIN 做过授权绑定,核心逻辑是后台 游戏服务器 里在跑 AttemperEngineSink.cpp 这个模块时,会调用机器码验证、授权密钥比对。如果没对上,就不放行,前端大厅只能原地自转。 修正思路 只要是内部测试或者二开项目,很多人干脆把这段验证直接注释掉就好。 位置就在: 游戏服务器 -> AttemperEngineSink.cpp 一般是在 1134 行左右,具体行数看你自己版本的代码结构。 实际操作 如下示例: 从上图可以看到,这段逻辑: 先读机器码 读配置 拼接 KeyValue 做 MD5 加密 再做比对 所以只要把这一整块逻辑用 /* ... */ 或者 // 注释掉,编译后这部分验证就不会执行,前端大厅自然能顺利进房。 建议 这种改动,强烈建议: 改前先备份源码 用版本控制留好记录 只在测试或内部局域网下使用,别滥用授权跳过逻辑 毕竟梦成这套逻辑放在这儿是有它的目的,能合法用就别为了省事乱开。 最后 很多老大厅一跑卡进度条,别急着重装、别急着改端口,先看授权校验跑没跑通。 把逻辑注释掉只是最后手段,能通过正常授权验证当然是最好。 转载请注明出处,保留作者署名与出处链接,感谢支持开源精神与知识传播!