ArchitectureCraft
[!INFO] Git Commit:
946ed0e| Updated: 2026-10-02
ArchitectureCraft 是 1.7.10 Forge 版的建筑构件模组:用一套构件(shape)系统把任意建材 (羊毛、木、石、玻璃……)加工成屋顶、窗户、拱门、栏杆、柱式、覆面等建筑部件, 让建筑外观不再受方块网格限制。本 wiki 收录的是 GTNH 分支版本。
⚠️ modid ≠ 资源域
| 概念 | 值 | 来源 |
|---|---|---|
| modid | ArchitectureCraft(混合大小写) |
ArchitectureCraft.java:41 MOD_ID |
| 资源域 / 矿典前缀 | architecturecraft(全小写) |
ASSET_KEY 与 REGISTRY_PREFIX 均为 MOD_ID.toLowerCase() |
gradle.properties 里的 modId = ArchitectureCraft 同样是驼峰。写 /give、矿典、
写数据驱动路径时都必须用小写的 architecturecraft。
注册总览(132 个 Java 文件,实际注册内容很少)
本 mod 132 个 Java 文件中绝大部分是渲染、模型、GUI 与兼容层,
真正的注册内容只有 11 条,全部集中在单一文件 ArchitectureContent.java:
| 注册表 | 条目数 |
|---|---|
| 方块 | 3(sawbench、shape、shapeSE) |
| 物品 | 6(sawblade、largePulley、chisel、hammer、cladding、glowbrush) |
| TileEntity | 2(TileSawbench 注册名 gcewing.sawbench、TileShape 注册名 gcewing.shape) |
| TileEntity 注册名域 | ⚠️ 用的是 gcewing.* 前缀,与 modid / 资源域都不同 |
没有多方块结构、没有实体、没有附魔、没有配置型注册。
构件目录
构件模型放在 assets/architecturecraft/models/shape/,共 111 个 .objson 文件:
| 类别 | 数量 |
|---|---|
| window | 23 |
| balustrade | 21 |
| roof | 9 |
| railing | 8 |
| arch | 8 |
| cylinder | 7 |
| cornice | 7 |
| sphere | 6 |
| doric / ionic / corinthian(柱式) | 4 + 1 + 1 |
| stairs | 2 |
| bevelled | 2 |
| 其余(slab、square、cladding、architrave、pillar、mullion 等) | 11 |
锯台 GUI 暴露 8 页共 115 个构件(TileSawbench.pages 静态数组实测),
115 个构件复用 111 个模型(_lh / _rh 等成对构件走镜像)。
配方(6 个,且有前置条件)
ArchitectureContent.registerRecipes() 的全部配方都包在
if (!Loader.isModLoaded("dreamcraft")) 里(ArchitectureContent.java:91)——
装了 DreamCraft 就一个配方都没有。其中 Cladding 与
两个构件方块任何情况下都没有配方。
依赖范围说明
- 本 mod 无硬依赖。
dependencies.gradle中只有两条compileOnly:- Angelica(
compileOnlyApi)— 已登记但尚未成文,前向引用 angelica - Postea(
compileOnly,{transitive = false})— 本 wiki 已收录,通过PosteaCompat做物品替换兼容
- Angelica(
ArchitectureCraftClient.java中的内容是可选客户端增强,非运行期硬依赖
方块列表
物品列表
- 锯片 - 锯台耗材,配方需无 DreamCraft
- 大皮带轮 - 锯台配件,注册名混合大小写
- 凿 - 修改构件轮廓
- 锤 - 大范围形状调整
- 覆面 - 无配方,且唯一不继承 ItemArchitecture 的物品
- 荧光刷 - 切换自发光变体,注册名
glowbrush无大写 B
源码缺陷
assets/architecturecraft/models/shape/下有 2 个垃圾文件:balustrade_fancy.smeg copy与balustrade_fancy_corner.smeg copy。 带空格的.smeg copy后缀是编辑器另存残留,应删除。ArchitectureContent.java:91把所有配方绑在!Loader.isModLoaded("dreamcraft")上, 装 DreamCraft 时 6 个配方全部消失,物品只能靠/give获取——这是硬编码分支而非数据驱动。- TileEntity 注册名用
gcewing.sawbench/gcewing.shape(作者包名gcewing), 与 modid、资源域architecturecraft三者都不一致。改包名或改 modid 都不会影响它们, 但存档 NBT 与代码内引用中会留下gcewing字样。 - 仓库根目录有
shapemenu_items_0.pdn/shapemenu_items_1.pdn两个设计源文件被提交进 git, 与assets/architecturecraft/textures/gui/shapemenu_items_*.png是同一张贴图的设计稿。