# 2.4 2022.11.08:版本号(v2.4 BE1.18.0) 包括Mod PC包,手机测试版启动器,和服务器引擎。 ### 温馨提示 1. 在10月27日,上线2.4第一个beta版。 2. 在11月8日,上线2.4的稳定版。 3. 在11月25日,全渠道将更新2.4版本玩家包体,玩家将陆续更新到2.4版本,请开发者合理安排更新节奏。 4. 下载[2.4 Demo](https://g79.gdl.netease.com/2.4DemoV4.zip)。 ## 重大功能介绍 ### 1. 实体&玩家运动器接口 对实体和玩家分别新增了三套不同类型的运动器接口,可用于控制实体玩家的运动轨迹: 1. 轨迹运动器:用于驱动实体、玩家从一点到另一点的直线运动。 ![轨迹运动器](../picture/trackmotion.gif) 2. 速度运动器:用于驱动实体、玩家根据初速度和加速度进行匀速/变速运动。 ![速度运动器](../picture/velocitymotion.gif) 3. 环绕运动器:用于驱动实体、玩家环绕指定坐标或指定实体运动。 ![环绕运动器](../picture/rotatemotion.gif) 详情请参考[实体运动器接口](../接口/实体/行为.md#addentitytrackmotion)和[玩家运动器接口](../接口/玩家/行为.md#addplayertrackmotion) ### 2. 自定义地形高度:增加替换节点 新增了1种高度控制节点:替换节点,开发者可将其配置在群系配置文件中,灵活控制和替换地形中的方块。 例如下图就是使用新版的替换节点实现的效果。 详情参考这篇文档。 ![自定义地形高度1](../picture/custom_height_66.png) ### 3. 原生UI控制接口补充 1. 新增了一系列接口,补充了对原生UI的动态开启/关闭支持,详见接口[原生UI](../接口/原生UI.md) 2. 新增了获取和弹出所有UI堆栈顶的接口,覆盖支持了自定义UI和原生UI两种类型,详见接口[GetTopUI](../接口/自定义UI/通用.md#gettopui) ### 4. UI支持渲染方块网格体 新增了[渲染方块网格体模型接口](../接口/自定义UI/UI控件.md#renderblockgeometrymodel),支持将方块网格体数据渲染至UI,可配合纸娃娃控件达成拖拽旋转效果。 ![渲染网格体](../picture/uimesh.gif) ## API改动 ### 新增 1. 新增[HidePauseGUI](../接口/原生UI.md#hidepausegui)(客户端), 隐藏暂停按钮原生UI 1. 新增[HideChatGUI](../接口/原生UI.md#hidechatgui)(客户端), 隐藏聊天按钮原生UI 1. 新增[HideReportGUI](../接口/原生UI.md#hidereportgui)(客户端), 隐藏举报按钮原生UI 1. 新增[HideFoldGUI](../接口/原生UI.md#hidefoldgui)(客户端), 隐藏下拉按钮原生UI 1. 新增[HideEmoteGUI](../接口/原生UI.md#hideemotegui)(客户端), 打开表情界面 1. 新增[HideVoiceGUI](../接口/原生UI.md#hidevoicegui)(客户端), 隐藏语音按钮原生UI 1. 新增[GetTopUI](../接口/自定义UI/通用.md#gettopui)(客户端), 获取UI堆栈栈顶的UI名称,可获得原生UI也可获得PushScreen生成的UI 1. 新增[PopTopUI](../接口/自定义UI/通用.md#poptopui)(客户端), 弹出UI堆栈栈顶的UI 1. 新增[OpenPauseGui](../接口/原生UI.md#openpausegui)(客户端), 打开原版暂停界面 1. 新增[OpenFoldGui](../接口/原生UI.md#openfoldgui)(客户端), 打开原版下拉界面 1. 新增[OpenVoiceGui](../接口/原生UI.md#openvoicegui)(客户端), 打开原版语音界面 1. 新增[OpenReportGui](../接口/原生UI.md#openreportgui)(客户端), 打开原版举报界面 1. 新增[OpenEmoteGui](../接口/原生UI.md#openemotegui)(客户端), 打开表情界面 1. 新增[AddEntityTrackMotion](../接口/实体/行为.md#addentitytrackmotion)(服务端), 给实体(不含玩家)添加轨迹运动器 1. 新增[AddEntityVelocityMotion](../接口/实体/行为.md#addentityvelocitymotion)(服务端), 给实体(不含玩家)添加速度运动器 1. 新增[AddEntityAroundPointMotion](../接口/实体/行为.md#addentityaroundpointmotion)(服务端), 给实体(不含玩家)添加对点环绕运动器 1. 新增[AddEntityAroundEntityMotion](../接口/实体/行为.md#addentityaroundentitymotion)(服务端), 给实体(不含玩家)添加对实体环绕运动器 1. 新增[GetEntityMotions](../接口/实体/行为.md#getentitymotions)(服务端), 获取实体(不含玩家)身上所有运动器 1. 新增[RemoveEntityMotion](../接口/实体/行为.md#removeentitymotion)(服务端), 移除实体(不含玩家)身上的运动器 1. 新增[StartEntityMotion](../接口/实体/行为.md#startentitymotion)(服务端), 启动实体(不含玩家)身上的某个运动器 1. 新增[StopEntityMotion](../接口/实体/行为.md#stopentitymotion)(服务端), 停止实体(不含玩家)身上的某个运动器 1. 新增[AddPlayerTrackMotion](../接口/玩家/行为.md#addplayertrackmotion)(服务端), 给玩家添加轨迹运动器 1. 新增[AddPlayerVelocityMotion](../接口/玩家/行为.md#addplayervelocitymotion)(服务端), 给玩家添加速度运动器 1. 新增[AddPlayerAroundPointMotion](../接口/玩家/行为.md#addplayeraroundpointmotion)(服务端), 给玩家添加对点环绕运动器 1. 新增[AddPlayerAroundEntityMotion](../接口/玩家/行为.md#addplayeraroundentitymotion)(服务端), 给玩家添加对实体环绕运动器 1. 新增[GetPlayerMotions](../接口/玩家/行为.md#getplayermotions)(服务端), 获取玩家身上所有运动器 1. 新增[RemovePlayerMotion](../接口/玩家/行为.md#removeplayermotion)(服务端), 移除玩家身上的运动器 1. 新增[StartPlayerMotion](../接口/玩家/行为.md#startplayermotion)(服务端), 启动玩家身上的某个运动器 1. 新增[StopPlayerMotion](../接口/玩家/行为.md#stopplayermotion)(服务端), 停止玩家身上的某个运动器 1. 新增[HideShopGate](../接口/商城.md#hideshopgate)(客户端), 隐藏网易商城入口 1. 新增[ShowShopGate](../接口/商城.md#showshopgate)(客户端), 显示网易商城入口 1. 新增[OpenShopWindow](../接口/商城.md#openshopwindow)(客户端), 打开网易商城窗口 1. 新增[OpenItemDetailWindow](../接口/商城.md#openitemdetailwindow)(客户端), 打开特定商品的详情界面 1. 新增[CloseShopWindow](../接口/商城.md#closeshopwindow)(客户端), 关闭网易商城窗口 1. 新增[RenderBlockGeometryModel](../接口/自定义UI/UI控件.md#renderblockgeometrymodel)(客户端), 渲染网格体模型 1. 新增[EntityMotionStartServerEvent](../事件/实体.md#entitymotionstartserverevent)(服务端), 实体运动器开始事件 1. 新增[EntityMotionStopServerEvent](../事件/实体.md#entitymotionstopserverevent)(服务端), 实体运动器停止事件 1. 新增[UrgeShipEvent](../事件/UI.md#urgeshipevent)(服务端), 玩家点击商城催促发货按钮时触发该事件 1. 新增[InputMode](../枚举值/InputMode.md), 控制器输入模式 1. 新增[UICategory](../枚举值/UICategory.md), 原生UI类型名 ### 调整 1. 调整[GetItemBasicInfo](../接口/物品.md#getitembasicinfo)(服务端), 新增燃料时间,食物饱食度,食物营养值,武器攻击力,防具防御力字段 1. 调整[GetItemBasicInfo](../接口/物品.md#getitembasicinfo)(客户端), 新增燃料时间,食物饱食度,食物营养值,武器攻击力,防具防御力字段 1. 调整[ServerSpawnMobEvent](../事件/世界.md#serverspawnmobevent)(服务端), 新增entityId返回参数 1. 调整[AddPlayerCreatedClientEvent](../事件/世界.md#addplayercreatedclientevent)(客户端), 调整事件触发时机,并对localPlayer也起效