Nattiden 1 год назад
Родитель
Сommit
0f5d23f9cd
1 измененных файлов с 234 добавлено и 3 удалено
  1. 234 3
      Project/libraries/Versions/Snapshot/25w09a.md

+ 234 - 3
Project/libraries/Versions/Snapshot/25w09a.md

@@ -1,7 +1,238 @@
 ---
-version-image-link: null
-not_finished: true
+version-image-link: https://img.picgo.net/2025/02/27/image8a6b146736e32b76.png
 server-jar: https://piston-data.mojang.com/v1/objects/baab122c7652b302621f7befd5be40abef9b9b7c/server.jar
-translator: null
+translator: 最亮的信标
 cats: ['1.21','1.21.5']
 ---
+在本周的快照中,我们带来了盼望已久的同步特性——倒下的树木第一次亮相于 Java 版。除此之外,萤火虫灌木丛现在可以在红树林沼泽和罕见地在恶地中生成了。
+
+在技术性方面,命令中的 SNBT 语法获得了扩展与改进,包含了与 SNBT 文本组件阻止在运行中转义相关的漏洞修复。
+
+## 新特性
+* 同步基岩版,增加了倒下的树木
+
+### 倒下的树木
+* 倒下的树木是一个新的树的装饰性变种
+* 倒下的树木加入到了以下四种树木类型:
+    * 橡树
+    * 白桦树
+    * 丛林树
+    * 云杉树
+* 倒下的白桦树有高矮两种不同版本
+* 一些倒下的树上会装饰着蘑菇或藤蔓
+* 倒下的树可以在所有该树种生长的生物群系中找到,下列生物群系除外:
+    * 草甸
+    * 竹林
+    * 河流
+    * 雪林
+    * 繁花森林有倒下的白桦树但没有倒下的橡树
+
+## 更改
+### 枯叶
+* 枯叶现在能被其它方块替换
+
+### 萤火虫灌木丛
+* 萤火虫灌木丛现在可以在红树林沼泽以及恶地(非常罕见)的水边生成,就像其它有水的生物群系一样。
+
+## 技术性更改
+* 数据包版本现在为 69
+* 客户端有了新的命令行参数 `--renderDebugLabels`
+    * 向相关的 OpenGL 物体增加了调试标签,使得开发者能更简单地调试渲染
+
+## 数据包版本 69
+* 为 NBT、文本组件以及内联谓词(也称作 SNBT)扩展了在命令中的对象标记
+
+### 命令
+* `/data` 现在可以透明地创建和修改异构列表
+
+### 实体数据
+* `FallFlying` 字段不再在被移除时保留
+* 现在 `Health` 与 `Air` 字段若不指定,则默认为各自的最大值
+
+#### `AREA_EFFECT_CLOUD`
+* 现在 `Duration` 字段若不指定,则默认为 `-1`
+* 如果 `Duration` 字段为 `-1`,区域效果云将不再自己消失
+* 这意味着生成未指定时常的区域效果云将会不再立即消失
+
+#### `CREEPER`
+* 现在 `Fuse` 字段若不指定,则默认为 `-1`
+* 现在 `ExplosionRadius` 字段若不指定,则默认为 `3`
+
+#### `DOLPHIN`
+* 现在 `Moistness` 字段若不指定,则默认为 `2400`
+
+#### `ENDER_DRAGON`
+* 现在 `DragonDeathTime` 字段若不指定,则默认为 `0`
+
+#### `FALLING_BLOCK`
+* 现在 `HurtEntities` 字段若不指定,则默认为 `false` (或 `true` 如果 `BlockState` 为 `anvil`)
+* 现在 `FallHurtAmount` 字段若不指定,则默认为 `0`
+* 现在 `FallHurtMax` 字段若不指定,则默认为 `40`
+* 现在 `DropItem` 字段若不指定,则默认为 `true`
+* `TileEntityData` 字段移除时不再保留
+
+#### `FIREWORK_ROCKET`
+* 现在 `ShotAtAngle` 字段若不指定,则默认为 `false`
+
+#### `FOX`
+* 现在 `Trusted` 字段若不指定,则默认为空(并且使用 `/data` 修改时将不再与原状态合并)
+
+#### `GHAST`
+* 现在 `ExplosionPower` 字段若不指定,则默认为 `1`
+
+#### `GOAT`
+* 现在 `HasLeftHorn` 和 `HasRightHorn` 字段若不指定,则默认为 `true`
+
+#### `INTERACTION`
+* 现在 `width` 和 `height` 字段若不指定,则默认为 `true`
+
+#### `Item`
+* 现在 `Health` 字段若不指定,则默认为 `5`
+* 现在 `PickupDelay` 字段若不指定,则默认为 `0`
+* 现在 `Age` 字段若不指定,则默认为 `0`
+* `Owner` 和 `Thrower` 字段移除时不再保留
+
+#### `ITEM_FRAME` 与 `GLOW_ITEM_FRAME`
+* 现在 `ItemDropChance` 字段若不指定,则默认为 `1.0`
+
+#### `PRIMED_TNT`
+* 现在 `fuse` 字段若不指定,则默认为 `80`
+* 现在 `explosion_power` 字段若不指定,则默认为 `4`
+
+#### `SHULKER`
+* 现在 `Color` 字段若不指定,则默认为 `16`
+
+#### `SKELETON`
+* `StrayConversionTime` 字段移除时不再保留
+
+#### `SPECTRAL_ARROW`
+* 现在 `Duration` 字段若不指定,则默认为 `200`
+
+#### `SNOW_GOLEM`
+* 现在 `Pumpkin` 字段若不指定,则默认为 `true`
+
+#### `TNT_MINECART`
+* 现在 `fuse` 字段若不指定,则默认为 `80`
+* 现在 `explosion_power` 字段若不指定,则默认为 `4`
+* 现在 `explosion_speed_factor` 字段若不指定,则默认为 `1`
+
+#### `TRADER_LLAMA`
+* 现在 `DespawnDelay` 字段默认值为 `47999`
+
+#### `VILLAGER`
+* 现在 `FoodLevel` 和 `Xp` 字段若不指定,则默认为 `0`
+* `ConversionTime` 字段移除时不再保留
+
+#### `WANDERING_TRADER`
+* 现在 `DespawnDelay` 字段若不指定,则默认为 `0`
+
+#### `ZOMBIE`
+* `DrownedConversionTime` 字段移除时不再保留
+
+#### `ZOMBIE_VILLAGER`
+* 现在 `Xp` 字段若不指定,则默认为 `0`
+* `ConversionTime` 字段移除时不再保留
+
+#### `ARROW`, `SPECTRAL_ARROW`, `TRIDENT`
+* 现在 `damage` 字段若不指定,则默认为 `2`
+
+#### `DRAGON_FIREBALL`, `WIND_CHARGE`, `BREEZE_WIND_CHARGE`, `WITHER_SKULL`, `SMALL_FIREBALL` 和 `LARGE_FIREBALL`
+* 现在 `acceleration_power` 字段若不指定,则默认为 `0.1`
+
+#### `SMALL_FIREBALL` 和 `LARGE_FIREBALL`
+* 现在 `ExplosionPower` 字段若不指定,则默认为 `1`
+
+#### `BLOCK_DISPLAY`, `ITEM_DISPLAY` 和 `TEXT_DISPLAY`
+* 现在 `interpolation_duration`、`teleport_duration` 以及 `start_interpolation` 字段若不指定,则默认为 `0`
+* 现在 `view_range` 字段若不指定,则默认为 `1`
+* 现在 `shadow_radius` 字段若不指定,则默认为 `0`
+* 现在 `shadow_strength` 字段若不指定,则默认为 `1`
+* 现在 `width` 和 `height` 字段若不指定,则默认为 `0`
+
+### 方块实体数据
+#### `CAMPFIRE`
+* `CookingTimes` 和 `CookingTotalTimes` 字段移除时不再保留
+
+#### `CHISELED_BOOKSHELF`
+* 现在 `last_interacted_slot` 字段若不指定,则默认为 `-1`
+
+#### `HOPPER`
+* 现在 `TransferCooldown` 字段若不指定,则默认为 `-1`
+
+#### `JIGSAW`
+* 现在 `name`、`target` 和 `pool` 字段若不指定,则默认为 `minecraft:empty`
+* 现在 `final_state` 字段若不指定,则默认为 `minecraft:air`
+
+#### `SCULK_SHRIEKER`
+* 现在 `warning_level` 字段若不指定,则默认为 `0`
+
+#### `STRUCTURE_BLOCK`
+* 现在 `ignoreEntities` 和 `showboundingbox` 字段若不指定,则默认为 `true`
+* 现在 `posY` 字段若不指定,则默认为 `1`
+
+### NBT 更改
+* 在游戏中任何有 NBT 数据的接口(SNBT 表示、 `/data`)现在支持异构列表,即一个元素可以是不同类型的列表。
+    * 使用 `/data` 插入或替换一个异构列表中的元素不再报错
+    * 插入任何数组类型(如: `[I;1,2,3]`)仍限制类型
+    * 这意味着之前被用于展示异构列表的 'wrapper' 对象将不再可以在游戏中观察到
+* `/data` 不再能遍历有空键的路径(如:`/data get ... foo.''.bar`)
+* NBT 文件类型未受改变
+    * 异构列表会在储存前进行转换以越过 NBT 限制
+    * 转换例如:`['a', {'b':3}]` 将会储存为 `[{'':'a'},{'b':3}]`
+    * 现存的外部工具将仍能够像之前一样读取 NBT 文件,但是异构列表将会以转换过的形式显示
+* 游戏产生的数据没有变化:对象如文本组件已经产生这个形式的异构列表
+* 备注:这些 wrapper 对象可能在游戏中完全不会被观察到,它们仅与直接操作 NBT 文件或网络格式的开发者有关
+
+### SNBT 更改
+* 扩展了在命令中描述对象类数据的文本格式(像 NBT、文本组件、谓词等)
+
+#### 数字格式
+* 浮点数的整数或小数部分都可以省略
+    * 例如: `.1` 和 `1.` 现在都是有效的
+* 浮点数可以使用 E 标记
+    * 例如:`1.2e3`、`1.2E3`、`1.2E+3`、`12000e-1` 这些都是代表 `1200.0` 的有效的形式
+* 整型数现在可以使用 `0x` 前缀来代表十六进制,可以使用 `0b` 前缀来代表二进制
+    * 例如:`0xbad`(等于 `2989`) ,`0xCAFE`(等于 `51966`),`0b101` (等于 `5`)
+* 整型数现在不能以 `0` 开头
+    * 正常它代表八进制,但是我们限制了它以防意外使用
+* 数字序列中间可以包含 `_` 字符(但是不能在序列的开头或结尾)
+    * 例如:`0b10_01`、`0xAB_CD`、`1_2.3_4__5f`、`1_2e3_4`
+* `NaN`、`Inf` 和 十六进制浮点表示**不受**支持
+* 扩展了类型后缀
+    * 整型类型后缀(`b`、`B` - 字节;`s`、`S` - 短整型;`i`、`I` - 整型;`l`、`L` - 长整型;)可以增加 `s`(带符号)或 `u`(无符号)
+    * 新后缀在解析时仅影响有效范围 - 数值仍以带符号储存
+        * 例如:`240ub` 等于 `-16sb`,但 `240sb` 不解析
+    * 当后缀不带有 `u` 或 `s`,默认十进制使用带符号,二进制和十六进制使用不带符号
+    * 注意:因为 `b` 也是一个有效的十六进制数,字节范围内的十六进制数值必须注明是否带符号,如 `0x11ub` 和 `0x11sb`
+
+#### 字符串
+* 使用引号引起的字符串现在使用除 `'`、 `"` 以及`\`之外的转义字符序列
+    * Unicode 转义:
+        * `\x` - 双字节转义,如 `\x42`
+        * `\u` - 四字节转义,如 `\u2603`
+        * `\U` - 八字节转义,如 `\U00002603`
+        * `\N{<name>}` - 带名字的 Unicode 字符,例如 `\N{Snowman}`
+    * 内置转义序列
+        * `\b` - 退格,Unicode `\x08`
+        * `\s` - 空格,Unicode `\x20`
+        * `\t` - 水平 Tab,Unicode `\x20`
+        * `\n` - 换行,Unicode `\u0a`
+        * `\f` - 换页,Unicode `\u0c`
+        * `\r` - 回车,Unicode `\u0d`
+* 未使用引号引起的字符串不能以 `0-9`、`.`、`+`、`-` 开头以避免与数字的意外冲突
+
+#### 数字数组
+* 没有后缀的数组中的值(`[B;]`、`[I;]`、`[L;]`)现在假设拥有和数组类型匹配的类型
+    * 例如:`[B;1,2]` 与 `[B; 1b, 2b]` 相同
+* 数组现在可以接受比数组类型小的类型
+    * 例如:`[I;1b,2s,3]` 有效且与 `[I;1i,2i,3i]` 相同
+
+#### 列表
+* 列表现在接受尾随逗号
+    * 例如:`[1,2,]` 与 `[1,2]` 相同
+    * 仅能允许一个尾随逗号,并且其必须位于一个有效元素后—— `[,]` 和 `[1,,]` 都是无效的
+
+#### Compounds
+* Compounds(映射)现在接受尾随逗号
+    * 例如:`{a:b,}`
+    * 仅能允许一个尾随逗号,并且其必须位于一个有效键值对后—— `{,}` 和 `{a:b,,}` 都是无效的