You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Recipe placement policy: most new recipes should live in CTNH-Core; Core may depend on other CTNH modules, but other modules must not depend on Core.
45
+
- Ponder placement policy: reusable scene builder/text helpers live in CTNH-Lib; Core/Energy keep only module adapters, plugins, scene/tag registrations, and module-specific helpers.
45
46
- No CTNH test suites are present; only `modules/GregTech-Modern/src/test/java` has tests.
46
47
47
48
## ANTI-PATTERNS (THIS PROJECT)
@@ -50,6 +51,7 @@ CTNH-Modules/
50
51
- Do not assume one package namespace: modules use `io.github.cpearl0`, `com.moguang`, `tech.luckyblock`, `tech.vixhentx`, `com.mo_guang`, and `com.ctnh`.
51
52
- Do not add new modules only in Gradle; README requires adding under `modules/` and including in `settings.gradle`.
52
53
- Do not introduce dependencies from feature modules back to CTNH-Core; dependency direction is Core -> modules, not modules -> Core.
54
+
- Do not move module-specific Ponder content into CTNH-Lib: scene/tag registrations stay in feature modules, and Energy's `AE2CablePonderHelper` stays in CTNH-Energy.
Copy file name to clipboardExpand all lines: modules/AGENTS.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -28,6 +28,7 @@ modules/
28
28
## REGISTRATION ENTRYPOINTS
29
29
- Cross-module rule: common recipes usually belong in `CTNH-Core`; feature modules expose registries/content that Core recipes can consume.
30
30
- Standard CTNH pattern: `<Prefix>Registrate` owns the module registrate, `<Prefix>Blocks` / `<Prefix>Items` hold block/item entries, `<Prefix>Machines` / `<Prefix>Multiblock*` hold GTCEu machine entries, `<Prefix>RecipeTypes` and recipe data classes drive generated recipes.
31
+
- Ponder pattern: shared `CTNHPonderSceneBuilder` lives in CTNH-Lib; modules provide thin adapters plus their own `PonderPlugin`, scene registration, tag registration, and concrete scene classes.
31
32
- Module-specific details live in each child `AGENTS.md`; use this file only to pick the right module.
32
33
33
34
## CONVENTIONS
@@ -40,5 +41,6 @@ modules/
40
41
## ANTI-PATTERNS
41
42
- Do not move code between modules without checking Gradle dependencies and mod runtime load order.
42
43
- Do not make feature modules depend on CTNH-Core; Core is allowed to depend on modules for aggregate recipes/content, not the reverse.
44
+
- Do not put feature Ponder scenes, tags, plugins, or AE2-specific helpers in CTNH-Lib; only shared builder/text framework belongs there.
43
45
- Do not edit `modules/libs` as source code; it is for local jar resolution.
44
46
- Do not duplicate parent build instructions in child docs; root Gradle scripts are the source of truth.
0 commit comments