09-anti-patterns · git:20260904.bac959a · 2026-09-04 · sha256 99df0795316c4c9b

09-anti-patterns git:20260904.bac959aA

Immutable. This exact content is served forever at /api/v1/blob/99df0795316c4c9b.

# 09 — 基岩反模式

## Decision Flow

```
→ 要查 API → search_bedrock_docs / get_bedrock_doc_*;禁止 query_api / Yarn
→ 要校验 pack → validate_addon_manifest + validate_bp_json;禁止 validate_project / validate_datapack_json
→ 要 Gradle / 映射 → 拒绝并改口:基岩无 ForgeGradle、无 convert_mapping
→ 用户要 Beta → 走 07 分层;禁止 experimentalGameplay 与虚构 experimental.json
```

## 禁止(已核实)

- RP 与 BP **identifier 对不上**,或 header/module **uuid 重复**
- 用 Java `query_api` / `mixin_analyze` / Yarn 查 Script API 或模型路径
- 一律写 `"experimentalGameplay": true`
- 发明 `worldgen/experimental.json` 当世界实验开关
- 把 `assets/<modid>/models`、DeferredRegister、`EntityType`、`BlockBehaviour`、`generate_datagen` 写进基岩包
- 未点名 Beta 就生成 Beta 事件或 `@minecraft/server-beta`
- 以为 pack JSON 能替玩家打开世界「Beta APIs」(须游戏 UI:`stable/experimental-features-toggle` 只给新/旧世界的 Game Settings → Experiments 开关)。`level.dat` → `experiments` compound 与键名 `gametest` = **社区权威已核实**(wiki.bedrock.dev/nbt/enabling-experiments,2026-09-02 取),**非 Learn 官方**,键名仅供手工改 `level.dat` 分诊;见 07 与 `knowledge/common/experiments.md`
- `diagnose_gradle` 修 Loom/Forge 来「修」Add-On