22 KiB
2.9
2023.10.24:版本号(V2.9 BE1.18.30) 包括Mod PC包,手机测试版启动器,和服务器引擎。
示例Demo:前往此处下载
一、更新时间表
- 在10月24日上线2.9第一个Beta版。
- 在11月07日上线2.9第二个Beta版。
- 在11月16日上线2.9稳定版。
- 在11月24日,全渠道将更新2.9版本玩家包体,玩家将陆续更新到2.9版本,请开发者合理安排更新节奏。
二、重要功能更新
材质与着色器
- 支持原版BB模型自定义shader的Uniform参数,实现动态材质表现,详见 SetEntityExtraUniforms和SetBlockEntityExtraUniforms系列接口。
-
新增支持动态替换骨骼模型的材质接口,详见SetModelMaterial和SetModelMultiPassMaterial系列接口。
-
新增获取骨骼模型shader的Uniform参数的接口,详见GetExtraUniformValue。
-
新增自定义后处理效果系列接口,包括获取开启状态,参数和管理多pass材质相关功能,详见InsertPassToPostprocess和CheckEnabledByName等接口。
-
根据反馈再次更新了材质使用相关的教学文档,补充了更详细的配置和接口说明,详情参考材质介绍与着色器入门教程。
-
示例Demo新增针对性更强的自定义玩家材质、自定义实体模型材质、自定义骨骼模型材质、自定义网易粒子特效材质,自定义后处理的简单Demo,详见示例DEMO,或直接前往内容库下载和使用。
NBT系列接口
新增了部分获取和设置实体、玩家的NBT属性的接口,详见实体属性、实体行为、玩家属性和玩家权限等模块的新增接口。
大型结构特征
- 支持下界和末地生成大型结构特征,详见这篇文档。
- 修复了概率丢失部分结构的问题。
- 修复了结构包含命令方块时,概率出现断言的问题。
- 新增大型结构生成事件,且支持取消生成,详见PlaceNeteaseLargeFeatureServerEvent。
成就系统
- 成就系统的按钮被拖动时抛出事件,详见AchievementButtonMovedClientEvent。
- 新增获取和设置成就系统按钮的接口,详见SetAchievementGatePosition和GetAchievementGatePosition。
- 替换了关闭按钮的UI资源。
- 修复成就系统概率重置的问题。
UI
-
小地图控件支持增加文本标记,详见AddEntityTextMarker接口。
-
网易纸娃娃支持渲染某一类生物,无需关联某个实例,详见RenderEntity。
-
网易纸娃娃支持定义灯光方向,详见RenderSkeletonModel接口。
- 修复了网易纸娃娃arm_model切换到第一人称时出现偏移的问题。
- GridComponentSizeChangedClientEvent新增抛出grid路径参数。
- GetPath(客户端), 返回当前控件的相对路径。
- SetBindWorldPosition,设置绑定到世界坐标的UI控件的位置。
物品分页
- 物品分页新增sort_by_identifier字段,支持该分页按照物品标识符分组,详见这篇文档。
游戏设置
- SetToggleOption新增多个可控制的游戏设置,包括十字键,平滑光照等等。
摄像机
- SetCameraAnchor(客户端)支持XZ轴。
- 新增GetCameraRotation替代原有GetCameraRot,支持获取三个方向角度。
骨骼模型
- ModelComp组件下部分接口支持传入ModelId参数,用于指定模型,如SetTexture(客户端)。
其他
- 修复了射线检测接口无法用于方块检测的问题,详见getEntitiesOrBlockFromRay。
- 方块配置的netease:block_chest组件新增了can_be_blocked字段,用于控制箱子的开启是否受到实心方块的阻挡,详见这篇文档。
三、API更新
- 新增
-
新增GetEntityDefinitions(服务端), 获取实体的命名空间ID及其当前和之前的定义组件群
-
新增GetEntityFallDistance(服务端), 获取实体的坠落高度,越大的值会给予实体更大的坠落伤害
-
新增GetEntityLinksTag(服务端), 获取实体相连接的实体,如获取entityId为马,会返回骑乘者的信息
-
新增IsLootDropped(服务端), 获取生物是否生成掉落物
-
新增SetLootDropped(服务端), 设置生物是否生成掉落物
-
新增GetMobColor(服务端), 获取生物的颜色,截止至网易2.9版本,只对羊和热带鱼有效
-
新增SetMobColor(服务端), 设置生物的颜色,截止至网易2.9版本,只对羊和热带鱼有效
-
新增GetMobStrength(服务端), 获取生物的强度,截止至网易2.9版本,只对羊驼有效,强度越大羊驼驮运的箱子时格子数量越多
-
新增SetMobStrength(服务端), 设置生物的强度,截止至网易2.9版本,只对羊驼有效,强度越大羊驼驮运的箱子时格子数量越多
-
新增GetMobStrengthMax(服务端), 获取生物强度的最大值,截止至网易2.9版本,只对羊驼有效,强度越大羊驼驮运的箱子时格子数量越多,SetMobStrength无法超过SetMobStrengthMax的值
-
新增SetMobStrengthMax(服务端), 设置生物强度的最大值,截止至网易2.9版本,只对羊驼有效,强度越大羊驼驮运的箱子时格子数量越多,SetMobStrength无法超过SetMobStrengthMax的值
-
新增IsSheared(服务端), 判断实体是否被剃毛,截止至网易2.9版本,只对羊有效
-
新增SetSheared(服务端), 设置实体是否被剃毛,截止至网易2.9版本,只对羊有效
-
新增IsIllagerCaptain(服务端), 判断实体是否为袭击队长,截止至网易2.9版本,只对掠夺者和卫道士有效
-
新增PromoteToIllagerCaptain(服务端), 晋升实体为袭击队长,截止至网易2.9版本,只对掠夺者和卫道士有效
-
新增IsSitting(服务端), 判断实体是否处于坐下状态
-
新增SetSitting(服务端), 设置生物是否坐下
-
新增IsBaby(服务端), 判断实体是否为幼年
-
新增SetAsAdult(服务端), 设置实体为成年体
-
新增IsTamed(服务端), 判断实体是否被驯服
-
新增IsAngry(服务端), 判断实体是否处于激怒状态
-
新增SetAngry(服务端), 设置实体是否处于激怒状态
-
新增IsOutOfControl(服务端), 判断实体是否处于失控状态,截止至网易2.9版本,只对船有效
-
新增SetOutOfControl(服务端), 设置实体是否处于失控状态,截止至网易2.9版本,只对船有效
-
新增GetVariant(服务端), 获取实体的变种属性值
-
新增SetVariant(服务端), 设置实体的变种属性值
-
新增GetMarkVariant(服务端), 获取实体的标记变种属性值
-
新增SetMarkVariant(服务端), 设置实体的标记变种属性值
-
新增HasSaddle(服务端), 判断实体是否装备了鞍
-
新增HasChest(服务端), 判断生物是否背负了箱子,截止至网易2.9版本,只对羊驼、驴、骡生效
-
新增SetChest(服务端), 设置生物是否背负了箱子,截止至网易2.9版本,只对羊驼、驴、骡生效
-
新增IsEating(服务端), 判断非玩家实体是否在进食
-
新增IsStunned(服务端), 判断是否处于眩晕状态,截止至网易2.9版本,仅对劫掠兽有效
-
新增IsRoaring(服务端), 判断是否处于咆哮状态,截止至网易2.9版本,仅对劫掠兽有效
-
新增IsPersistent(服务端), 判断是否为持久性生物
-
新增GetLeashHolder(服务端), 获取实体被使用拴绳牵引时牵引者的ID
-
新增SetLeashHolder(服务端), 为实体添加牵引者,与原版拴绳的作用相同
-
新增GetTradeLevel(服务端), 获取村民的交易等级
-
新增SetTradeLevel(服务端), 设置村民的交易等级
-
新增GetDeathTime(服务端), 获取生物死亡后持续的时间(刻,1秒20刻),用于控制死亡动画。0表示生物未死亡。
-
新增IsNaturallySpawned(服务端), 获取生物是否为自然生成的
-
新增IsPregnant(服务端), 获取生物是否怀孕,截止至网易2.9版本,只对海龟有效
-
新增GetEnchantmentSeed(服务端), 获取玩家的附魔种子,该种子会决定附魔台上准备附魔的装备的附魔项
-
新增SetEnchantmentSeed(服务端), 设置玩家的附魔种子,该种子会决定附魔台上准备附魔的装备的附魔项
-
新增SetBuildAbility(服务端), 设置玩家能否放置方块,该接口的设置会存档,且只影响生存模式
-
新增SetMineAbility(服务端), 设置玩家能否摧毁方块,该接口的设置会存档,且只影响生存模式
-
新增SetOperateDoorsAndSwitchesAbility(服务端), 设置玩家能否与门和开关交互,该接口的设置会存档,影响生存、创造、冒险模式
-
新增SetOpenContainersAbility(服务端), 设置玩家能否打开容器,该接口的设置会存档,影响生存、创造、冒险模式
-
新增SetAttackPlayersAbility(服务端), 设置玩家能否攻击其他玩家,该接口的设置会存档,影响生存、创造、冒险模式
-
新增SetAttackMobsAbility(服务端), 设置玩家能否攻击生物,该接口的设置会存档,影响生存、创造、冒险模式
-
新增SetAchievementGatePosition(客户端), 设置自定义成就系统的入口按钮位置
-
新增GetAchievementGatePosition(客户端), 获取自定义成就系统的入口按钮位置
-
新增SetEntityExtraUniforms(客户端), 新增设置用于实体shader的自定义变量接口
-
新增SetEntityUIExtraUniforms(客户端), 新增设置用于实体shader的UI自定义变量接口
-
新增GetEntityExtraUniforms(客户端), 新增获取在实体shader使用的自定义变量的值的接口
-
新增GetEntityUIExtraUniforms(客户端), 新增获取在实体shader使用的UI自定义变量的值的接口
-
新增SetBlockEntityExtraUniforms(客户端), 设置可在自定义方块实体的shader当中使用的自定义变量的值。
-
新增GetBlockEntityExtraUniforms(客户端), 获取在自定义方块实体的shader当中使用的自定义变量的值。
-
新增GetCameraRotation(客户端), 获取摄像机的朝向,支持获取翻滚角
-
新增GetExtraUniformValue(客户端), 获取在骨骼模型shader中使用的自定义变量Uniform的值
-
新增SetModelMaterial(客户端), 新增设置骨骼模型的所使用的自定义材质接口
-
新增SetModelMultiPassMaterial(客户端), 新增设置骨骼模型的所使用的多Pass材质接口
-
新增GetModelMaterial(客户端), 新增获取骨骼模型的正在使用的材质名称的接口
-
新增SetRotUseZXY(客户端), 设置粒子发射器旋转,旋转顺序按照绕z,x,y轴旋转
-
新增CheckEnabledByName(客户端), 查询是否开启了自定义后处理效果
-
新增GetParameter(客户端), 获取指定自定义后处理参数的值
-
新增InsertPassToPostprocess(客户端), 往自定义后处理的多pass中的指定位置插入自定义pass
-
新增PushBackPassToPostprocess(客户端), 往自定义后处理的多pass的最末尾插入自定义pass
-
新增RemovePassInPostprocess(客户端), 删除自定义后处理的多pass中指定位置的pass
-
新增PopBackPassInPostprocess(客户端), 删除自定义后处理的多pass的最末尾的pass
-
新增SetBindWorldPosition(客户端), 设置UI绑定的worldPosition
-
新增AddEntityTextMarker(客户端), 增加实体文本标记
-
新增RemoveEntityTextMarker(客户端), 删除实体文本标记
-
新增AddStaticTextMarker(客户端), 增加地图上静态文本的标记
-
新增RemoveStaticTextMarker(客户端), 删除静态文本标记
-
新增GetPath(客户端), 返回当前控件的相对路径,路径从画布节点开始算起
-
新增PlayerFeedEntityServerEvent(服务端), 玩家喂养生物时触发,例如玩家手持小麦喂养牛、玩家手持胡萝卜喂养幼年猪。
-
新增PlayerNamedEntityServerEvent(服务端), 玩家用命名牌重命名实体时触发,例如玩家手持命名牌对羊修改名字、玩家手持命名牌对盔甲架修改名字。
-
新增PlaceNeteaseLargeFeatureServerEvent(服务端), 触发时机:网易版大型结构即将生成时服务端抛出该事件
-
新增AchievementButtonMovedClientEvent(客户端), 使用自定义成就系统的时,拖动成就入口结束时触发
- 调整
-
调整getEntitiesOrBlockFromRay(服务端), 支持检测方块
-
调整GetRecipeResult(服务端), 返回值新增fullItemName字段,包含了物品的命名空间。原来的itemName字段弃用
-
调整GetOwnerId(服务端), 现在主人实体未在世界内加载也可以返回id
-
调整SetCameraAnchor(客户端), 支持x、z轴
-
调整PlayAnim(客户端), 增加modelId参数,用于选择指定模型
-
调整GetAnimLength(客户端), 增加modelId参数,用于选择指定模型
-
调整SetAnimSpeed(客户端), 增加modelId参数,用于选择指定模型
-
调整SetTexture(客户端), 增加modelId参数,用于选择指定模型
-
调整GetTexture(客户端), 增加modelId参数,用于选择指定模型
-
调整SetLegacyBindRot(客户端), 增加modelId参数,用于选择指定模型
-
调整GetBoneWorldPos(客户端), 增加modelId参数,用于选择指定模型
-
调整GetOwnerId(客户端), 现在主人实体未在世界内加载也可以返回id
-
调整RenderEntity(客户端), 支持使用实体identifier进行渲染
-
调整RenderSkeletonModel(客户端), 新增light_direction参数,可以控制骨骼模型在纸娃娃中的打光方向
-
调整DamageEvent(服务端), 增加ignite参数注意事项
-
调整OnFireHurtEvent(服务端), 新增cancelIgnite参数,支持取消点燃效果
-
调整GridComponentSizeChangedClientEvent(客户端), 增加path参数,grid网格所在的路径(从UI根节点算起)
-
调整OptionId, 新增十字键操作、隐藏HUD、摄像机摇晃等8个OptionId
- 废弃(将在未来不可用)
- 废弃GetCameraRot,请使用GetCameraRotation接口

