# 3.5
2025.8.19:版本号(V3.5 BE1.21.00)包括Mod PC包,手机测试版启动器,和服务器引擎。
示例Demo:前往此处下载
## 一、更新时间表
1. 在2025年8月20日上线3.5第一个Beta版。
2. 在2025年9月03日上线3.5第二个Beta版。
3. 在2025年9月17日上线3.5稳定版。
4. 在2025年9月19日,全渠道将更新3.5版本玩家包体,玩家将陆续更新到3.5版本,请开发者合理安排更新节奏。
## 二、重要功能更新
1. 自定义容器适配迭代,详细请前往自定义容器查看
- 新增**hopper配置字段**,可将自定义容器变为漏斗,支持控制是否漏入漏出、设置漏入的面个数、设置漏入的槽位位置
- 对于**netease_container**,SpawnItemToContainer支持设置物品;对于**netease_ui_container**,[GetPlayerUIItem](../接口/方块/容器.md#getplayeruiitem)(服务端)和[SetPlayerUIItem](../接口/方块/容器.md#setplayeruiitem)(服务端)新增isNeteaseUI参数,为**true**时支持获取和设置物品
- 新增[PlayerTryAddCustomContainerItemServerEvent](../事件/物品.md#playertryaddcustomcontaineritemserverevent)(服务端)事件,将在**同一槽位物品数量改变**时触发
- 新增[PlayerTryRemoveCustomContainerItemServerEvent](../事件/物品.md#playertryremovecustomcontaineritemserverevent)(服务端)事件,将在**取出物品**时触发
- 新增漏斗漏入事件[ItemPushInCustomContainerServerEvent](../事件/物品.md#itempushincustomcontainerserverevent)(服务端)和漏斗漏出事件[ItemPullOutCustomContainerServerEvent](../事件/物品.md#itempulloutcustomcontainerserverevent)(服务端),支持cancel取消
- 调整[PlayerTryPutCustomContainerItemServerEvent](../事件/物品.md#playertryputcustomcontaineritemserverevent)(服务端), collectionName改为对应容器json中"custom_description"字段,新增collectionType(netease_container和netease_ui_container)代替原collectionName
1. 新增自定义绘制渲染接口,开发者可以使用其绘制**盒子、圆、球、线条、文本、箭头**形状,支持创建后设置颜色、缩放、位置等。同时该功能所有接口采用面向对象设计,方便开发者使用
1. hud_screen.json 字段更新。在3.5版本中,为了适配原版更新,影响物品栏和经验栏可见性的部分json字段名称发生了变更
- **变更包括:**
- "#exp_and_hotbar_visible" ——> "#hotbar_with_xp_bar"
- "#only_hotbar_visible" ——> "#hotbar_no_xp_bar"
- **影响范围:**
- 原生指令:/hud
- SDK接口:HideSlotBarGui、HideExpGui
- **适配方法:**
- 如果MOD里还存在老版的hud_screen.json使用旧的字段,可能会覆盖上述字段更新,导致上述相关的指令或API失效,引发物品栏的一些可见性控制bug,**请开发者检查并进行替换**
1. 支持获取/设置实体行为包properties,让开发者更方便控制生物行为
1. Matrix、Quaternion、Vector3将有底层C++进行计算,拥有更快速度,方便开发者实现自定义碰撞箱计算等
1. 新增权限变更事件[PlayerPermissionChangeServerEvent](../事件/玩家.md#playerpermissionchangeserverevent)(服务端)和[PlayerPermissionChangeClientEvent](../事件/玩家.md#playerpermissionchangeclientevent)(客户端),参数支持cancel,和获取权限变更的原因枚举[PermissionChangeCause](../枚举值/PermissionChangeCause.md)
## 三、API更新
- 新增
1. 新增[GetAllProperties](../接口/实体/molang.md#getallproperties)(服务端), 获取实体属性列表
1. 新增[SetPropertyValue](../接口/实体/molang.md#setpropertyvalue)(服务端), 设置实体属性的值
1. 新增[AddBoxShape](../接口/渲染.md#addboxshape)(客户端), 新建盒子形状
1. 新增[AddLineShape](../接口/渲染.md#addlineshape)(客户端), 新建线条形状
1. 新增[AddCircleShape](../接口/渲染.md#addcircleshape)(客户端), 新建圆形状
1. 新增[AddArrowShape](../接口/渲染.md#addarrowshape)(客户端), 新建箭头形状
1. 新增[AddTextShape](../接口/渲染.md#addtextshape)(客户端), 新建文本形状
1. 新增[AddSphereShape](../接口/渲染.md#addsphereshape)(客户端), 新建球形状
1. 新增[RemoveAll](../接口/渲染.md#removeall)(客户端), 删除当前所有Shape
1. 新增[GetPos](../接口/渲染.md#getpos)(客户端), 获取Shape的位置
1. 新增[GetBoxScale](../接口/渲染.md#getboxscale)(客户端), 获取BoxShape的大小
1. 新增[GetColor](../接口/渲染.md#getcolor)(客户端), 获取Shape的颜色
1. 新增[GetType](../接口/渲染.md#gettype)(客户端), 获取Shape的类型
1. 新增[GetPriority](../接口/渲染.md#getpriority)(客户端), 获取Shape的优先级
1. 新增[GetVisible](../接口/渲染.md#getvisible)(客户端), 获取Shape是否可见
1. 新增[GetEndPos](../接口/渲染.md#getendpos)(客户端), 获取LineShape或ArrowShape的结束位置
1. 新增[GetRadius](../接口/渲染.md#getradius)(客户端), 获取CircleShape或ArrowShape或SphereShape的半径
1. 新增[GetSegments](../接口/渲染.md#getsegments)(客户端), 获取CircleShape或ArrowShape头部的分段数
1. 新增[GetText](../接口/渲染.md#gettext)(客户端), 获取TextShape的文本
1. 新增[GetLength](../接口/渲染.md#getlength)(客户端), 获取ArrowShape的头部长度
1. 新增[SetPos](../接口/渲染.md#setpos)(客户端), 设置Shape的位置
1. 新增[SetBoxScale](../接口/渲染.md#setboxscale)(客户端), 设置BoxShape的大小
1. 新增[SetEndPos](../接口/渲染.md#setendpos)(客户端), 设置LineShape或ArrowShape的结束位置
1. 新增[SetRadius](../接口/渲染.md#setradius)(客户端), 设置CircleShape或ArrowShape或SphereShape的半径
1. 新增[SetSegments](../接口/渲染.md#setsegments)(客户端), 设置组成ArrowShape头部的网格数量
1. 新增[SetLength](../接口/渲染.md#setlength)(客户端), 设置组成ArrowShape头部的长度
1. 新增[SetText](../接口/渲染.md#settext)(客户端), 设置TextShape的文本内容
1. 新增[SetColor](../接口/渲染.md#setcolor)(客户端), 设置Shape的颜色
1. 新增[SetPriority](../接口/渲染.md#setpriority)(客户端), 设置Shape的渲染优先级, 同一像素点处优先渲染优先级高的Shape, 默认为0
1. 新增[SetVisible](../接口/渲染.md#setvisible)(客户端), 设置Shape是否可见
1. 新增[Remove](../接口/渲染.md#remove)(客户端), 删除Shape
1. 新增[SetDropItemTransform](../接口/方块/渲染.md#setdropitemtransform)(客户端), 设置通过AddDropItemToWorld添加的掉落物的位置、角度和缩放
1. 新增[PlayerTryAddCustomContainerItemServerEvent](../事件/物品.md#playertryaddcustomcontaineritemserverevent)(服务端), 玩家尝试将物品添加到自定义容器时触发该事件(当目标槽位已有同种物品时触发)
1. 新增[PlayerTryRemoveCustomContainerItemServerEvent](../事件/物品.md#playertryremovecustomcontaineritemserverevent)(服务端), 玩家尝试从自定义容器中移除物品时触发该事件
1. 新增[PlayerPermissionChangeServerEvent](../事件/玩家.md#playerpermissionchangeserverevent)(服务端), 玩家权限变更事件
1. 新增[ItemPushInCustomContainerServerEvent](../事件/物品.md#itempushincustomcontainerserverevent)(服务端), 漏斗漏入物品时触发该事件
1. 新增[ItemPullOutCustomContainerServerEvent](../事件/物品.md#itempulloutcustomcontainerserverevent)(服务端), 漏斗漏出物品时触发该事件
1. 新增[PlayerPermissionChangeClientEvent](../事件/玩家.md#playerpermissionchangeclientevent)(客户端), 玩家权限变更事件
1. 新增[PlayerTryPutCustomContainerItemClientEvent](../事件/物品.md#playertryputcustomcontaineritemclientevent)(客户端), 玩家尝试将物品放入自定义容器时触发该事件
1. 新增[PlayerTryAddCustomContainerItemClientEvent](../事件/物品.md#playertryaddcustomcontaineritemclientevent)(客户端), 玩家尝试将物品添加到自定义容器时触发该事件(当目标槽位已有同种物品时触发)
1. 新增[PlayerTryRemoveCustomContainerItemClientEvent](../事件/物品.md#playertryremovecustomcontaineritemclientevent)(客户端), 玩家尝试从自定义容器中移除物品时触发该事件
1. 新增[PermissionChangeCause](../枚举值/PermissionChangeCause.md), 玩家权限变更原因枚举
1. 新增[ShapeType](../枚举值/ShapeType.md), 调试图形枚举
- 调整
1. 调整[CreateUI](../接口/自定义UI/通用.md#createui)(客户端), 添加备注
1. 调整[GetPlayerUIItem](../接口/方块/容器.md#getplayeruiitem)(服务端), 新增isNeteaseUI参数,默认为false,true时获取netease_ui_container的物品
1. 调整[SetPlayerUIItem](../接口/方块/容器.md#setplayeruiitem)(服务端), 新增isNeteaseUI参数,默认为false,true时设置netease_ui_container的物品
1. 调整[SpawnItemToContainer](../接口/方块/容器.md#spawnitemtocontainer)(服务端), 支持自定义容器
1. 调整[PlayerTryPutCustomContainerItemServerEvent](../事件/物品.md#playertryputcustomcontaineritemserverevent)(服务端), collectionName改为对应容器json中"custom_description"字段,新增collectionType代替原collectionName
1. 调整[PlayerPermissionChangeServerEvent](../事件/玩家.md#playerpermissionchangeserverevent)(服务端), 新增发起者id
- 废弃(将在未来不可用)
1. 废弃HideReportGUI,举报按钮原生UI已经被整合进下拉按钮