promotional bannermobile promotional banner
premium banner
Thaumcraft 4 addon for automatically assigning missing aspects in large modpacks, with NEI-based recipes, smart fallbacks and caching.

Description

Introduction

Thaumic All Aspect is an addon for Minecraft 1.7.10 / Thaumcraft 4 that automatically assigns reasonable aspects to items, blocks, fluids, and entities which would otherwise have none.
It is built with large modpacks such as GT New Horizons in mind, aiming to minimize “aspectless” content without breaking existing configurations or scripts, and to make life easier for pack authors.


Features

Recipe‑first 6‑round propagation

On startup, the mod gathers recipe information from vanilla crafting, furnace recipes, Thaumcraft recipes and NEI‑visible recipes, then runs up to 6 rounds of a “recipe‑first” propagation pipeline over these indexes.

If all inputs of a recipe already have aspects, their aspects are summed, scaled by a decay factor (90% by default with a minimum of 1), and assigned to the output; if any input still lacks aspects, that output is deferred and retried in later rounds.

This chained propagation properly handles relationships like A = B and A + B = C: even if only A starts with 3 points of aspects, the pipeline can still yield B → 3 and C → 6 in the end, instead of blindly falling back to generic stone‑like defaults.


Cache seed + incremental scan each startup

All scan results are written to config/ThaumicAllAspect/aspect-cache.cfg, which can be shipped with modpacks and also serves as the starting point for later scans.

When a cache exists, the mod loads it as an initial “aspect seed”, then still runs the full scan (recipe propagation, multi‑pass retries, fluid derivation, mod‑specific recipes, etc.) as usual.
The pipeline only fills in entries that still have no aspects; it never overwrites anything that already exists in the cache, nor aspects registered by other mods or scripts.

If you delete the cache, the next startup performs a clean rescan from scratch and regenerates a fresh aspect-cache.cfg.
Pack authors can pre‑compute a “golden cache” in dev, ship it with the modpack, and let players run lightweight incremental scans on top of it.


Smart fallbacks and configurable rules

When recipe‑based derivation truly runs out of options, the mod falls back to a multilingual keyword heuristic layer, recognizing patterns like “stone / brick / wood / sapling / slab / stair / fence” in various languages and assigning consistent aspect sets to related blocks.

You can extend or tweak these keyword rules in keyword-fallback.cfg, and use item-fallback.cfg with entries like modid:item@meta = ... to define aspects for specific items, blocks, or fluids.
Both kinds of fallbacks are only applied when all smarter derivation methods have failed, helping avoid crude “everything is stone”‑style shortcuts as much as possible.


Non‑intrusive behavior

The mod only touches targets that currently have no aspects at all.
If vanilla Thaumcraft, another mod, a script, or a manual config has already assigned aspects to something, Thaumic All Aspect simply skips it.

This makes it a good safety‑net layer in a modpack, rather than a heavy‑handed overhaul that rewrites the balance you have already tuned.


Environment & dependencies

Target environment:

  • Minecraft 1.7.10
  • Forge (around 10.13.4.1614 recommended)
  • Thaumcraft 4.2.3.5+
  • Baubles (matching your Thaumcraft version)
  • Java 8 runtime is strongly recommended

It is also strongly recommended to use it alongside the GTNH‑maintained NEI, since this mod acts as an NEI addon and relies on its recipe views to obtain the most complete recipe information for aspect derivation.


Config & file layout

All configuration files live under config/ThaumicAllAspect/:

  • aspect-cache.cfg: aspect cache; can be shipped with modpacks, later startups perform incremental completion on top of it.
  • keyword-fallback.cfg: custom keyword fallback rules that match item names and assign predefined aspects.
  • item-fallback.cfg: fine‑grained fallback definitions for individual items, blocks, or fluids.
  • verify.cfg: custom verification list to quickly check whether key items ended up with the expected aspects after the scan.

Usage notes for pack authors

A suggested workflow:

  1. Install the full pack plus this mod in a dev environment and let the first world startup finish the full scan.
  2. Treat the generated aspect-cache.cfg as your “golden cache” and manually spot‑check a few representative items (key machines, base materials, important fluids).
  3. Use keyword-fallback.cfg and item-fallback.cfg for small tweaks where necessary.
  4. Ship the adjusted config with your pack so players start from a good baseline, with each startup only doing incremental completion instead of a full heavy scan.

License

The mod is licensed under GNU LGPL v3:

  • You are free to use and distribute it in modpacks.
  • You may modify and redistribute it, as long as your modifications to this library remain under LGPL‑compatible terms and the corresponding source is available.
  • Your own modpack or other mods can use any license (including proprietary), as long as they do not directly absorb LGPL‑licensed code into closed‑source components.

简介

Thaumic All Aspect 是一个面向 Minecraft 1.7.10 / Thaumcraft 4 的附属模组,用来给那些本来没有研究要素的物品、方块、流体和生物自动补上合理的要素。
它特别考虑了像 GT New Horizons 这种体量的整合包,希望在不破坏原有配置和脚本的前提下,让“缺要素”的内容尽量少,同时方便整合包作者统一维护。


主要特性

配方优先的 6 轮推导

模组在启动时先收集配方信息:原版工作台、熔炉、Thaumcraft 自身配方,以及来自 NEI 的可见配方,然后在这些索引上跑最多 6 轮的“配方优先”推导。

如果一个配方的所有输入都已经有要素,就把输入要素相加并按衰减系数(默认 90%,但至少保留 1 点)缩放后赋给输出;如果有任意输入还没有要素,就把这个输出留下来,等后面的轮次再试。

这种传递式的推导可以正确处理类似 A = BA + B = C 的链条:即便一开始只有 A 有 3 点要素,最终也能得到 B → 3C → 6,而不是简单被“石头兜底”一刀切掉。


缓存种子 + 每次启动的增量扫描

所有扫描结果会写入 config/ThaumicAllAspect/aspect-cache.cfg,这份文件既可以被整合包作者打包分发,也可以作为之后扫描的起点。

当缓存存在时,模组会先把缓存整体读进来,当作“初始要素种子”,然后依然正常跑一遍完整扫描流程(配方推导、多轮重试、流体推导、模组自定义配方等)。
这一整套流程只会给当前仍然没有要素的内容补要素,不会覆盖缓存里已有的条目,也不会碰其它模组或脚本注册过的要素。

如果你删除缓存,下次启动就会从零开始重新扫描,重新生成一份全新的 aspect-cache.cfg


智能兜底与可配置规则

当配方推导确实“无路可走”时,模组会退回到一套多语言的关键词兜底逻辑,识别物品名中的“石头 / 石砖 / 木板 / 树苗 / 台阶 / 楼梯 / 栅栏”等模式,为同一类方块分配风格统一的要素组合。

你可以在 keyword-fallback.cfg 里添加或调整这些关键词规则,也可以在 item-fallback.cfg 里用 modid:item@meta = ... 的写法为具体某个物品、方块或流体直接指定要素。
这两类兜底规则都只在“前面所有更智能的推导方式都失败”的情况下才会触发,尽量避免一上来就用石头之类的粗暴方案糊过去。


非侵入式的工作方式

模组只会处理当前完全没有要素的对象:如果 Thaumcraft 原版、其他模组、脚本或手动配置已经给了某个东西要素,Thaumic All Aspect 会自动跳过它。
这种设计让它非常适合作为整合包底层的“兜底补全层”,而不是一个随意篡改你已经调好平衡的重写模组。


环境与依赖

目标环境:

  • Minecraft 1.7.10
  • Forge(推荐使用 10.13.4.1614 这一代版本)
  • Thaumcraft 4.2.3.5+
  • Baubles(与对应 TC 版本匹配)
  • 建议 Java 8 运行环境

另外,强烈建议搭配 GTNH 维护的 NEI 使用,本模组会作为 NEI 附属,从其配方展示中读取最完整的配方信息,用于配方推导。


配置与文件布局

所有配置文件都集中放在:config/ThaumicAllAspect/ 目录下,便于备份和版本控制:

  • aspect-cache.cfg:要素缓存;可随整合包分发,后续启动会在此基础上做增量补全。
  • keyword-fallback.cfg:自定义关键字兜底规则,用于匹配物品名并分配固定要素。
  • item-fallback.cfg:针对单个物品 / 方块 / 流体的精细兜底配置。
  • verify.cfg:自定义要素校验列表,帮助你在扫描完成后快速检查关键物品的最终要素是否符合预期。

使用建议(整合包作者)

如果你是整合包作者,可以考虑这样的流程:

  1. 在开发环境里安装好整包和本模组,首次启动世界,耐心等待完整扫描完成。
  2. 把生成的 aspect-cache.cfg 视为“官方缓存”,手动检查几件代表性物品(例如重要机器、基础材料、关键流体)的要素是否合理。
  3. 如有需要,通过 keyword-fallback.cfgitem-fallback.cfg 做少量微调。
  4. 把调整好的配置随整合包一起发布,玩家端启动时会在这份缓存的基础上补全后续新内容,而不会每次都从零开始烧机器。

许可

本模组以 GNU LGPL v3 协议发布:

  • 你可以在整合包中自由使用和分发本模组;
  • 你可以修改并发布修改版,但对本模组源码的修改部分需要在 LGPL v3 兼容的条件下开放源代码;
  • 在此基础上,你的整合包或依赖本模组的其他模组可以采用任意协议(包括闭源 / 商业),只要不把本模组的 LGPL 代码直接并入闭源部分。