[开发者心得] [单脚本][VersionDetector] —— 让你看见“被热更”的引擎 已适配027

  [复制链接]
2604 |4
叽里咕噜小胡桃 发表于 2023-2-21 19:21:17 | 显示全部楼层 |阅读模式
本帖最后由 叽里咕噜小胡桃 于 2023-11-1 17:39 编辑

你是否有过类似的疑惑:
    明明编辑器还没有更新,昨天扫码进还能玩,今天扫码进甚至都不能跳跃?
    明明两个手机的版本号一致,昨天还能一起测试游戏,今天就“阴阳两隔”了?
    知道某个手机热更了,但不知道要卸载重装哪个手机里的233?
“口!袋!方!舟!设!计!师!—— 你明白我的痛苦嘛?!”

  VersionDetector 由此而来,让你“看见”热更引擎,并提示你和玩家如何处理  

1. 233版本号 和 引擎版本号 编辑器版本号的区别
image.png
    通常我们在233的关于我们里看到的版本号,是233app的版本号。
    而影响游戏表现逻辑、影响玩家之间不能加入房间的引擎版本号通常不会显示出来,而是得通过API: SystemUtil | API 获取。
因此我们可以通过比对玩家上次登录的引擎版本,和这次登录的引擎版本来得知,玩家是否“被热更”了引擎,VersionDetector 便由此而来。
    还有一个编辑器版本号,是开发者使用编辑器的版本号,和手机上的引擎版本号不一样,可能出现游戏引擎版本号 v0.16.0.0.xxxx 而编辑器版本号可以有 v0.16.0.0.xyyyy、v0.16.0.1.xxqqq、v0.16.0.2.xxxqwd等等,在电脑上运行游戏时,通常显示的是编辑器的版本号。

    这一块比较绕,但只要记住,大部分情况下是手机上的引擎版本号变动引发的问题就好了。

2. 为什么会“被热更”?
    “被热更”是口袋方舟编辑器版本迭代的正常流程和做法,通常会在某个大版本更新(如0.20.0→0.21.0)之前,小范围(虽然感觉这个范围命中开发者的概率咋就这么高呢)内抽取一些玩家进行新版引擎更新测试,通常这个过程不会持续太久,大概两三天。
    如果测试不顺利,则可能回滚版本,修复后进行下一次新版本引擎更新测试;
    而如果一切顺利,引擎版本将在编辑器新版本发布前进行全量更新。而这个过程中产生的信息差和时间差,就会出现开头的那些蛋疼的场景了,特别是在API变动较大的版本之间,这种痛苦尤为强烈。

    所以,可以尝试用现有API,进行一定的版本比对,以便发现问题。

3. 下载部署VersionDetector,并配置
3.1 下载这个脚本,导入编辑器
VersionDetector.ts (7.12 KB, 下载次数: 135)
回复

使用道具 举报

逝水无痕 发表于 2023-2-22 14:08:20 | 显示全部楼层
牛!!!
回复

使用道具 举报

叽里咕噜小胡桃楼主 发表于 2023-2-22 14:33:36 | 显示全部楼层
回复

使用道具 举报

空伊伊 发表于 2023-2-28 13:20:30 | 显示全部楼层
太给力了
回复

使用道具 举报

叽里咕噜小胡桃楼主 发表于 2023-2-28 13:33:29 | 显示全部楼层
回复

使用道具 举报

热门版块
快速回复 返回顶部 返回列表