Files
boybook 760c2dd9ad 2.6
2025-12-01 20:59:16 +08:00

246 lines
17 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 1.24
温馨提示预计在9月23日全渠道更新1.24版本玩家包体玩家将陆续更新到1.24版本,请开发者合理安排更新节奏。
**2021.09.16版本号v1.24 BE1.16.202**
<iframe src="https://cc.163.com/act/m/daily/iframeplayer/?id=61415ca248e27490891e9566" height="600" width="800" allow="fullscreen" />
- 重大功能介绍
1. 自定义流体
- 包含流体颜色、贴图、范围、流速设置
- 可自定义桶装载自定义流体
- 可设置液体传播火的效果以及进入液体获得的效果
详见<a href="../../../mcguide/20-玩法开发/15-自定义游戏内容/2-自定义方块/3-特殊方块/5-自定义流体.html" rel="noopenner"> 自定义流体 </a><a href="../../../mcguide/20-玩法开发/15-自定义游戏内容/1-自定义物品/7-自定义桶.html" rel="noopenner"> 自定义桶 </a>
2. 自定义附魔
- 支持自定义魔咒、魔咒等级
- 可在附魔书、附魔台、铁砧上获得自定义附魔
- 物品上可包含自定义附魔
详见<a href="../../../mcguide/20-玩法开发/15-自定义游戏内容/11-自定义附魔文档.html" rel="noopenner"> 自定义附魔 </a>
3. 自定义方块功能拓展:
* 支持方块重力表现,可自定义铁砧、沙砾等下落效果。
- 支持设置方块下落表现
- 支持设置下落速度以及伤害
- 可获取方块开始下落、结束下落、下落过程接触到实体的事件
详见<a href="../../../mcguide/20-玩法开发/15-自定义游戏内容/2-自定义方块/3-特殊方块/6-自定义重力方块.html" rel="noopenner"> 自定义重力方块 </a>
* 可获取实体下落到方块的事件,可自定义粘液块的弹跳效果。详见[OnAfterFallOnBlockServerEvent](../事件/方块.html#onafterfallonblockserverevent)[OnAfterFallOnBlockClientEvent](../事件/方块.html#onafterfallonblockclientevent)
* 可获取实体在方块上移动的事件,可自定义类似冰、灵魂沙等不同的摩擦效果。详见[OnStandOnBlockServerEvent](../事件/方块.html#onstandonblockserverevent)[OnStandOnBlockClientEvent](../事件/方块.html#onstandonblockclientevent)
4. 自定义方块实体渲染,可实现表现力更强的自定义方块。
- 方块实体支持添加动画支持使用由BlockBench制作的原版模型或者是游戏原版模型。
- 方块实体支持添加特效,可通过配置或者接口,为自定义方块实体附加粒子特效及序列帧特效。
详见<a href="../../../mcguide/20-玩法开发/15-自定义游戏内容/2-自定义方块/4.1-自定义方块实体外观.html" rel="noopenner"> 自定义方块实体外观 </a>
5. 自定义分页、分组
- 支持多个自定义分页,可让物品分类更灵活。
- 支持把物品放在原有分组或自定义分组中,自定义分组支持多个,可让物品分类更规整。
详见<a href="../../../mcguide/20-玩法开发/15-自定义游戏内容/12-自定义物品分组.html" rel="noopenner"> 自定义物品分组 </a><a href="../../../mcguide/20-玩法开发/15-自定义游戏内容/13-自定义物品分页.html" rel="noopenner"> 自定义物品分页 </a>
6. 后处理效果
- 渐晕效果。画面随中心距离逐渐变暗,实现类似瞄准镜等视觉效果。
详见[渐晕](../接口/后处理/渐晕.md)
*(展示视频中涉及的demo下载地址如下[自定义附魔](https://g79.gdl.netease.com/EnchantDemo.zip)、[其他内容](https://g79.gdl.netease.com/1.24demo.zip))*
- 新增
1. 新增<a href="../../../mcguide/16-美术/7-材质与着色器/1-材质介绍与着色器入门.html" rel="noopenner"> Shader使用简介 </a>教程
1. 新增[StartCoroutine](../接口/通用/工具.md#startcoroutine),开启服务端协程,实现函数分段式执行,可用于缓解复杂逻辑计算导致游戏卡顿问题<!--by handaoying-->
1. 新增[StopCoroutine](../接口/通用/工具.md#stopcoroutine),停止服务端协程<!--by handaoying-->
1. 新增[OpenChatGui](../接口/原生UI.md#openchatgui),打开原版聊天栏<!--by hdy-->
1. 新增[StartCoroutine](../接口/通用/工具.md#startcoroutine),开启客户端协程,实现函数分段式执行,可用于缓解复杂逻辑计算导致游戏卡顿问题<!--by handaoying-->
1. 新增[StopCoroutine](../接口/通用/工具.md#stopcoroutine),停止客户端协程<!--by handaoying-->
1. 新增[GetTypeFamily](../接口/实体/属性.md#gettypefamily),获取生物行为包字段 type_family<!--by hdy-->
1. 新增[AddModEnchantToInvItem](../接口/玩家/背包.md#addmodenchanttoinvitem),新增给物品栏中物品添加自定义附魔信息接口<!--by liaoyi-->
1. 新增[RemoveEnchantToInvItem](../接口/玩家/背包.md#removeenchanttoinvitem),新增给物品栏中物品移除附魔信息接口<!--by liaoyi-->
1. 新增[RemoveModEnchantToInvItem](../接口/玩家/背包.md#removemodenchanttoinvitem),新增给物品栏中物品移除自定义附魔信息接口<!--by liaoyi-->
1. 新增[GetInvItemModEnchantData](../接口/玩家/背包.md#getinvitemmodenchantdata),新增获取物品栏的物品自定义附魔信息<!--by liaoyi-->
1. 新增[GetEquItemModEnchant](../接口/实体/背包.md#getequitemmodenchant),新增支持获取生物装备槽位中盔甲的自定义附魔<!--by liaoyi-->
1. 新增[SetItemMaxDurability](../接口/物品.md#setitemmaxdurability),设置物品的最大耐久值<!--by likaiyu-->
1. 新增[GetItemMaxDurability](../接口/物品.md#getitemmaxdurability),获取指定槽位的物品最大耐久<!--by likaiyu-->
1. 新增[GetPlayerExhaustionRatioByType](../接口/玩家/行为.md#getplayerexhaustionratiobytype),获取玩家某行为饥饿度消耗倍率<!--by hdy-->
1. 新增[SetPlayerExhaustionRatioByType](../接口/玩家/行为.md#setplayerexhaustionratiobytype),设置玩家某行为饥饿度消耗倍率<!--by hdy-->
1. 新增[SetPlayerAttackSpeedAmplifier](../接口/玩家/行为.md#setplayerattackspeedamplifier),设置玩家攻击速度倍数<!--by gzhuabo-->
1. 新增[SetBlockEntityMolangValue](../接口/方块/方块实体.md#setblockentitymolangvalue)设置自定义方块实体的Molang变量用于控制自定义实体的动画转变。<!--by xujiarong-->
1. 新增[GetBlockEntityMolangValue](../接口/方块/方块实体.md#getblockentitymolangvalue)获取自定义方块实体的Molang变量的值。<!--by xujiarong-->
1. 新增[SetEnableBlockEntityAnimations](../接口/方块/方块实体.md#setenableblockentityanimations),是否开启自定义方块实体的动画效果。<!--by xujiarong-->
1. 新增[CreateParticleEffectForBlockEntity](../接口/方块/方块实体.md#createparticleeffectforblockentity),在自定义方块实体上创建粒子特效。<!--by xujiarong-->
1. 新增[GetParticleEffectIdInBlockEntity](../接口/方块/方块实体.md#getparticleeffectidinblockentity)获取在自定义方块实体中已创建的粒子特效的Id。<!--by xujiarong-->
1. 新增[RemoveParticleEffectInBlockEntity](../接口/方块/方块实体.md#removeparticleeffectinblockentity),移除在自定义方块实体上创建的粒子特效。<!--by xujiarong-->
1. 新增[CreateFrameEffectForBlockEntity](../接口/方块/方块实体.md#createframeeffectforblockentity),在自定义方块实体上创建序列帧特效。<!--by xujiarong-->
1. 新增[GetFrameEffectIdInBlockEntity](../接口/方块/方块实体.md#getframeeffectidinblockentity)获取在自定义方块实体中已创建的序列帧特效的Id。<!--by xujiarong-->
1. 新增[RemoveFrameEffectInBlockEntity](../接口/方块/方块实体.md#removeframeeffectinblockentity),移除在自定义方块实体上创建的序列帧特效。<!--by xujiarong-->
1. 新增[SetBlockEntityParticlePosOffset](../接口/方块/渲染.md#setblockentityparticleposoffset),设置自定义方块实体中粒子特效位置的偏移值<!--by xujiarong-->
1. 新增[SetBlockEntityFramePosOffset](../接口/方块/渲染.md#setblockentityframeposoffset),设置自定义方块实体中序列帧特效位置的偏移值<!--by xujiarong-->
1. 新增[SetBlockEntityModelPosOffset](../接口/方块/渲染.md#setblockentitymodelposoffset),设置自定义方块实体的实体模型位置偏移值<!--by xujiarong-->
1. 新增[SetBlockEntityModelScale](../接口/方块/渲染.md#setblockentitymodelscale),设置自定义方块实体的实体模型大小的缩放值。<!--by xujiarong-->
1. 新增[SetBlockEntityModelRotation](../接口/方块/渲染.md#setblockentitymodelrotation),设置自定义方块实体的实体模型在各个轴上的旋转值。<!--by xujiarong-->
1. 新增[GetPos](../接口/特效/序列帧.md#getpos),获取序列帧特效的世界坐标位置。<!--by xujiarong-->
1. 新增[GetRot](../接口/特效/序列帧.md#getrot),获取序列帧特效的旋转角度。<!--by xujiarong-->
1. 新增[GetScale](../接口/特效/序列帧.md#getscale),获取序列帧特效的缩放值。<!--by xujiarong-->
1. 新增[SetParticleSize](../接口/特效/粒子.md#setparticlesize),设置粒子特效中粒子大小的最小值及最大值。<!--by xujiarong-->
1. 新增[GetParticleMaxSize](../接口/特效/粒子.md#getparticlemaxsize),获取粒子特效中粒子大小的最大值。<!--by xujiarong-->
1. 新增[GetParticleMinSize](../接口/特效/粒子.md#getparticleminsize),获取粒子特效中粒子大小的最小值。<!--by xujiarong-->
1. 新增[SetParticleVolumeSize](../接口/特效/粒子.md#setparticlevolumesize),设置粒子发射器的体积大小缩放。<!--by xujiarong-->
1. 新增[GetParticleVolumeSize](../接口/特效/粒子.md#getparticlevolumesize),获取粒子发射器的体积大小缩放值。<!--by xujiarong-->
1. 新增[SetParticleMaxNum](../接口/特效/粒子.md#setparticlemaxnum),设置粒子发射器所包含的最大粒子数量。<!--by xujiarong-->
1. 新增[GetParticleMaxNum](../接口/特效/粒子.md#getparticlemaxnum),获取粒子发射器包含的最大粒子数量。<!--by xujiarong-->
1. 新增[SetParticleEmissionRate](../接口/特效/粒子.md#setparticleemissionrate),设置粒子发射器每帧发射粒子的频率。<!--by xujiarong-->
1. 新增[GetParticleEmissionRate](../接口/特效/粒子.md#getparticleemissionrate),获取粒子发射器每帧发射粒子的频率。<!--by xujiarong-->
1. 新增[GetPos](../接口/特效/粒子.md#getpos),获取粒子发射器的世界坐标位置。<!--by xujiarong-->
1. 新增[GetRot](../接口/特效/粒子.md#getrot),获取粒子发射器的旋转角度。<!--by xujiarong-->
1. 新增[SetRotUseZXY](../接口/特效/粒子.md#setrotusezxy)设置粒子发射器的旋转旋转顺序按照绕z,x,y轴旋转<!--by xujiarong-->
1. 新增[Swing](../接口/玩家/属性.md#swing),本地玩家播放原版攻击动作<!--by gzhuabo-->
1. 新增[SetEnableVignette](../接口/后处理/渐晕.md#setenablevignette),是否开启渐晕效果<!--by xujiarong-->
1. 新增[CheckVignetteEnabled](../接口/后处理/渐晕.md#checkvignetteenabled),检测是否开启渐晕效果<!--by xujiarong-->
1. 新增[SetVignetteRGB](../接口/后处理/渐晕.md#setvignettergb),设置渐晕效果的渐晕颜色<!--by xujiarong-->
1. 新增[SetVignetteCenter](../接口/后处理/渐晕.md#setvignettecenter),设置渐晕效果的渐晕中心位置<!--by xujiarong-->
1. 新增[SetVignetteRadius](../接口/后处理/渐晕.md#setvignetteradius),设置渐晕效果的渐晕半径<!--by xujiarong-->
1. 新增[SetVignetteSmoothness](../接口/后处理/渐晕.md#setvignettesmoothness),设置渐晕效果的渐晕模糊系数<!--by xujiarong-->
1. 新增[HeavyBlockStartFallingServerEvent](../事件/方块.md#heavyblockstartfallingserverevent),增加重力方块变为下落的方块实体后触发的事件<!--by likaiyu-->
1. 新增[FallingBlockReturnHeavyBlockServerEvent](../事件/方块.md#fallingblockreturnheavyblockserverevent),增加下落的方块实体变回普通重力方块时触发的事件<!--by likaiyu-->
1. 新增[FallingBlockBreakServerEvent](../事件/方块.md#fallingblockbreakserverevent),增加下落的方块实体被破坏时触发的事件<!--by likaiyu-->
1. 新增[FallingBlockCauseDamageBeforeServerEvent](../事件/方块.md#fallingblockcausedamagebeforeserverevent),增加下落的方块计算砸实体伤害的事件,可修改部分属性<!--by likaiyu-->
1. 新增[OnBeforeFallOnBlockServerEvent](../事件/方块.md#onbeforefallonblockserverevent),增加实体刚降落到方块上时服务端触发的事件,主要用于伤害计算<!--by likaiyu-->
1. 新增[OnAfterFallOnBlockServerEvent](../事件/方块.md#onafterfallonblockserverevent),增加实体刚降落到方块上时服务端触发的事件,主要用于力的计算<!--by likaiyu-->
1. 新增[OnStandOnBlockServerEvent](../事件/方块.md#onstandonblockserverevent),增加当实体站立到方块上时服务端持续触发的事件<!--by likaiyu-->
1. 新增[PlayerTrySleepServerEvent](../事件/玩家.md#playertrysleepserverevent),玩家尝试使用床睡觉。<!--by hdy-->
1. 新增[PlayerSleepServerEvent](../事件/玩家.md#playersleepserverevent),玩家使用床睡觉成功。<!--by hdy-->
1. 新增[PlayerStopSleepServerEvent](../事件/玩家.md#playerstopsleepserverevent),玩家停止睡觉<!--by hdy-->
1. 新增[OnItemPutInEnchantingModelServerEvent](../事件/物品.md#onitemputinenchantingmodelserverevent),玩家将可附魔物品放到附魔台上时的事件,可修改此时附魔台的选项<!--by liaoyi-->
1. 新增[GrindStoneRemovedEnchantClientEvent](../事件/物品.md#grindstoneremovedenchantclientevent),新增玩家点击砂轮合成得到的物品事件<!--by liaoyi-->
1. 新增[FallingBlockCauseDamageBeforeClientEvent](../事件/方块.md#fallingblockcausedamagebeforeclientevent),增加下落的方块计算砸实体伤害的事件,可修改部分属性<!--by likaiyu-->
1. 新增[OnAfterFallOnBlockClientEvent](../事件/方块.md#onafterfallonblockclientevent),增加实体刚降落到方块上时客户端触发的事件,主要用于力的计算<!--by likaiyu-->
1. 新增[OnStandOnBlockClientEvent](../事件/方块.md#onstandonblockclientevent),增加当实体站立到方块上时客户端持续触发的事件<!--by likaiyu-->
1. 新增[EnchantSlotType](../枚举值/EnchantSlotType.md),附魔槽位枚举值<!--by liaoyi-->
1. 新增[PlayerExhauseRatioType](../枚举值/PlayerExhauseRatioType.md),饥饿度消耗倍率类型<!--by hdy-->
- 调整
1. 调整[SetMobKnockback](../接口/实体/行为.md#setmobknockback)增加备注在damageEvent事件里面使用该接口时需把damageEvent事件回调的knock参数设置为False<!--by guanmingyu-->
1. 调整[SetMotion](../接口/实体/行为.md#setmotion)增加备注在damageEvent事件里面使用该接口时需把damageEvent事件回调的knock参数设置为False<!--by guanmingyu-->
1. 调整[SetMotion](../接口/实体/行为.md#setmotion),优化文档说明<!--by likaiyu-->
1. 调整[DepartCamera](../接口/玩家/摄像机.md#departcamera)坐船情况下分离相机后玩家的镜头水平转动时能够360度转动。<!--by xujiarong-->
1. 调整[SetEntityOpacity](../接口/模型.md#setentityopacity),更正接口功能作用范围为:只对骨骼模型生效<!--by xujiarong-->
1. 调整[EntityTickServerEvent](../事件/实体.md#entitytickserverevent)添加实体identifier参数<!--by hdy-->
1. 调整[ChunkLoadedServerEvent](../事件/世界.md#chunkloadedserverevent),该事件不再需要添加区块白名单<!--by czh-->
1. 调整[AnvilCreateResultItemAfterClientEvent](../事件/物品.md#anvilcreateresultitemafterclientevent),返回值新增合成前两个物品的物品信息字典<!--by liaoyi-->
1. 调整[ChunkLoadedClientEvent](../事件/世界.md#chunkloadedclientevent),该事件不再需要添加区块白名单<!--by czh-->
1. 调整[ChunkAcquireDiscardedClientEvent](../事件/世界.md#chunkacquirediscardedclientevent),该事件不再需要添加区块白名单<!--by czh-->
- 修复
1. 修复[GetBiomeName](../接口/世界/地图.md#getbiomename)修复了在mod有自定义下界的情况下获取原版下界未加载区块变成自定义下界群系的问题。<!--by likaiyu-->
1. 修复[SetEntityScale](../接口/模型.md#setentityscale),修复了某些情况大小会被重置的问题<!--by czh-->
1. 修复[ActorAcquiredItemClientEvent](../事件/物品.md#actoracquireditemclientevent),修复了与村民交易时会触发两次的问题<!--by czh-->
- 废弃(将在未来不可用)
1. 废弃AddChunkPosWhiteList区块加载与卸载事件不再需要白名单
1. 废弃AddChunkPosWhiteList区块加载与卸载事件不再需要白名单
1. 废弃SetRot该接口设置的旋转值按照x,y,z轴旋转与其他接口不兼容故逐步废弃。请使用SetRotUseZXY接口
1. 废弃SetUiItem推荐使用UI面向对象ItemRendererUIControl.SetUiItem接口