From 36a81290c7d784f33c0b3e4c506efca50690f813 Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 9 Apr 2026 12:53:09 +0000 Subject: [PATCH] feat(skills): Add minecraft-mod-dev skill from skill.fish - Source: chouzz - Covers NeoForge and Fabric mod development - Inter-mod integration (JEI, AE2, Create) - Migration protocol for upgrading legacy mods - Added Firefrost context - Updated SKILLS-INDEX.md Chronicler #73 --- docs/skills/SKILLS-INDEX.md | 24 +++++++++ docs/skills/minecraft-mod-dev/SKILL.md | 74 ++++++++++++++++++++++++++ 2 files changed, 98 insertions(+) create mode 100644 docs/skills/minecraft-mod-dev/SKILL.md diff --git a/docs/skills/SKILLS-INDEX.md b/docs/skills/SKILLS-INDEX.md index 14455be..a062c5c 100644 --- a/docs/skills/SKILLS-INDEX.md +++ b/docs/skills/SKILLS-INDEX.md @@ -169,6 +169,28 @@ --- +### minecraft-mod-dev +**Location:** `docs/skills/minecraft-mod-dev/SKILL.md` +**Source:** skill.fish (chouzz) +**Triggers:** Minecraft mod, NeoForge, Fabric, mod development, JEI, AE2, Create, mod migration + +**Purpose:** Expert Minecraft mod development for NeoForge and Fabric loaders + +**What It Covers:** +- Dynamic documentation fetching for version-specific APIs +- Inter-mod integration (JEI/EMI, AE2, Create) +- Modern standards (DeferredRegister, Data Components, DataProvider) +- Migration protocol for upgrading legacy mods to 1.21+ +- Convention tags for cross-mod compatibility + +**Read This When:** +- Creating custom mods for Firefrost +- Integrating with popular mod APIs +- Migrating old mods to newer Minecraft versions +- Understanding how mods in our packs work + +--- + ### minecraft-bukkit-pro **Location:** `docs/skills/minecraft-bukkit-pro/SKILL.md` **Source:** skill.fish (sickn33/antigravity-awesome-skills) @@ -279,6 +301,8 @@ docs/skills/ │ └── SKILL.md ├── minecraft-bukkit-pro/ │ └── SKILL.md +├── minecraft-mod-dev/ +│ └── SKILL.md └── discord-automation/ (skill collection) ├── README.md ├── discord-create-channel.md diff --git a/docs/skills/minecraft-mod-dev/SKILL.md b/docs/skills/minecraft-mod-dev/SKILL.md new file mode 100644 index 0000000..c3ff967 --- /dev/null +++ b/docs/skills/minecraft-mod-dev/SKILL.md @@ -0,0 +1,74 @@ +--- +name: minecraft-mod-dev +description: | + Use when creating Minecraft mods, integrating with mod APIs (JEI/AE2/Create), + setting up modding environments, or migrating to newer versions. + Covers both NeoForge and Fabric loaders used in Firefrost modpacks. +source: skill.fish (chouzz) +--- + +# Minecraft Mod Development Skill + +You are an expert Minecraft Mod Developer. You prioritize modern standards, data-driven design, and inter-mod compatibility. + +## Core Protocols + +### 1. Dynamic Documentation Fetching +When the user mentions a specific version (e.g., 1.21.1) or Mod Loader (NeoForge, Fabric), you MUST: +- Use `webfetch` to check `https://docs.neoforged.net/` or `https://fabricmc.net/wiki/`. +- Use `context7` (if available) to fetch latest library headers: `use context7 for neoforge 1.21`. +- DO NOT rely on internal knowledge for Registry names or Packet handling logic as they change frequently. + +### 2. Inter-mod Integration (Ecosystem First) +Before implementing custom systems, check for integration opportunities: +- **JEI/EMI:** Always register custom `RecipeType` and provide a `IModPlugin` implementation. +- **AE2:** For storage/automation, implement `IGridNodeListener` and use AE2's Grid API. +- **Create:** Leverage `Create`'s `AllBlockEntityTypes` patterns or custom `mixing/pressing` recipe types. +- **Convention Tags:** Use `#c:ingots`, `#c:dusts` (for 1.21 NeoForge) to ensure cross-mod compatibility. + +### 3. Standards & Best Practices +- **Registration:** Use `DeferredRegister` for NeoForge or standard `Registry` for Fabric. +- **Logic Separation:** Keep `@OnlyIn(Dist.CLIENT)` logic strictly in Client-side classes (e.g., Renderers, Screens). +- **Data Generation:** Prefer writing `DataProvider` classes over manual JSON editing. +- **Data Components:** In 1.20.5+, use `DataComponentType` instead of raw NBT for item data. + +## Tooling +- Use `./gradlew runData` to generate resources. +- Use `./gradlew runGameTestServer` for integration testing. + +## Documentation References +See `references/mod-links.md` for links to official loaders and popular mod APIs. + +## Migration Protocol + +When the user requests "migration", "rewrite", or "refactor" of old mod code: + +1. **Read Migration Guide:** You MUST first read `references/migration-guide.md`. +2. **Extract Core Logic:** Prioritize extracting mathematical formulas and business logic from old code, not API calls. +3. **Modernize Patterns:** Apply paradigm shifts from the migration guide: + - Replace TileEntity with BlockEntity + BlockEntityTicker + - Replace NBT with Data Components (1.20.5+) + - Replace hardcoded JSON with DataProvider +4. **Post-Migration:** After rewriting, ALWAYS remind the user: + > "I have rewritten the logic according to 1.21+ specifications. Please run `./gradlew runData` to ensure legacy resource files are correctly converted." + +## Environment Check +Run `scripts/mod-env-check.sh` to auto-detect current project configuration. + +--- + +## Firefrost Context + +When developing mods for Firefrost servers: +- Our modpacks use both **NeoForge** and **Fabric** loaders +- Popular mods in our packs: Create, AE2, JEI, and various kitchen sink packs +- Test on Dev Panel (64.50.188.128) before production deployment +- Document any custom mods in the operations manual +- Consider integration with Arbiter for subscriber-only features + +--- + +**Source:** skill.fish — chouzz +**Added:** 2026-04-09 by Chronicler #73 + +**Fire + Frost + Foundation = Where Love Builds Legacy** 💙🔥❄️