Přejít na hlavní obsah
Sleva 50% všechny plány, omezený čas. Od $2.48/mo
14 min left
Hry a média

Pět praktických způsobů, jak využít ChatGPT při vývoji modpacků pro Minecraft

B Autor: Bill 14 min čtení
AI chat window returning a diagnosis next to a Minecraft crash log and KubeJS recipe script

Vložíte crash report do ChatGPT a ten sebejistě označí mod, který ve vašem packu vůbec není. Požádáte o recept KubeJS a dostanete event.recipes.minecraft.shaped(...), zastaralá syntaxe, která neodpovídá aktuálním příkladům receptů KubeJS. Požádáte o blok FTB Quests a dostanete čárky ve stylu JSON, což může rozbít víceřádkový formát FTB SNBT používaný v questovních souborech éry 1.21.1.

Nástroj není rozbitý. Rozbitý je prompt. Modely AI se často vracejí ke starším příkladům moddingu Minecraftu, což je u aktuálních souborů KubeJS a FTB Quests riskantní. Dejte modelu přesnou verzi hry, build loaderu, cílový formát souboru a funkční příklad z vlastního kódu, a výstup se posune od „sebejistě špatně“ k „většinou správně, zbytek ověřte“.

O to tu jde: tyto prompty fungují v asistentovi, který už platíte (ChatGPT, Claude, Copilot), bez registrace do nástroje na crashe a bez dalšího předplatného. A předpokládají, že výstup umíte přečíst. KubeJS generovaný AI je zkratka při psaní pro někoho, kdo KubeJS zná; pokud nepoznáte vymyšlené ID předmětu, KubeJS od AI vás kousne. Níže je pět promptů zaměřených na konkrétní úkol a zohledňujících verzi, každý s realistickým příkladem odpovědi a poznámkou, kde se to láme.

Stručně

Nejlepší prompty pro ChatGPT při vývoji modpacků pro Minecraft dodávají pokaždé tři věci: přesnou verzi Minecraftu, přesný mod loader a jeho verzi a funkční příklad z vlastní codebase. S tímto kontextem umí AI vytvořit užitečnější první návrhy pro třídění crashů, recepty KubeJS, SNBT pro FTB Quests, užší výběry modů a commit zprávy. Ale každé ID předmětu, volání API a hexadecimální ID questu si ověřte sami. AI zrychlí schopného moddera; pack za něj nenapíše.

Co tyto prompty neudělají

Než cokoli zkopírujete, ujasněte si očekávání:

  • Modpack za vás nepostaví. Každý prompt navrhne jeden artefakt (recept, blok questu, diagnózu), který vložíte do packu, jejž už navrhujete.
  • KubeJS ani SNBT vás nenaučí. Pokud vám syntaxe níže připadá neznámá, chybové vzorce vám proklouznou. Naučte se nejdřív formát, teprve pak zrychlujte pomocí AI.
  • Skutečný testovací server nenahradí. AI uvažuje nad stack trace; nedokáže vám říct, že pack se 150 načtenými mody skutečně nabootuje.
  • Správný výstup nezaručí. Ke všemu, co AI vrátí, přistupujte jako k prvnímu návrhu k revizi, ne jako k hotové odpovědi.

Proč AI potřebuje správný kontext, než cokoli napíše

Minecraft version, loader build, and known-good code example supplying context to an AI prompt

Právě v tom se liší prompt, který funguje, od obecného „udělej mi recept do Minecraftu": v kontextu. Vynechte verzi a loader a model může vygenerovat starou syntaxi KubeJS pro váš pack na 1.21.1 s NeoForge, vymyslet neexistující ID předmětů nebo naformátovat FTB SNBT jako běžný JSON. Skript pak neudělá nic, nebo spadne s chybou zahrabanou v logu, který si stejně musíte přečíst.

Proto každý prompt v tomto článku nese stejný trojdílný kontext, který vyplníte ze svého packu:

  1. Přesná verze Minecraftu: 1.20.1, 1.21.1, prostě ta, kterou opravdu používáte.
  2. Přesný mod loader a verze: Forge, NeoForge, Fabric nebo Quilt, plus číslo buildu.
  3. Funkční příklad z vlastní codebase, kdykoli nějaký můžete dodat. Jeden skutečný recept z vašeho server_scripts/, jeden platný blok questu, jedna dřívější commit zpráva. To je zdaleka největší páka na kvalitu: model napodobí styl a API, které mu podáte, mnohem spolehlivěji než ty, které si domýšlí.

Tip od profíka: Řádek s verzí není volitelná ozdoba. KubeJS 6.x pro Minecraft 1.20.1 a KubeJS 7.2.x pro Minecraft 1.21.1 jsou různé cíle a přesný nainstalovaný build stále hraje roli. Prompt, který vynechá přesné verze hry, loaderu a KubeJS, žádá model, aby hádal.

Prompt: třídění crash logů

Minecraft crash log moving through suspect ranking and controlled mod testing

Tento prompt promění zeď stack trace v seřazený seznam podezřelých modů a jeden další krok, což je nejrychlejší způsob, jak zkrátit slepé půlení.

You are helping me diagnose a Minecraft crash. Here is the context:
- Minecraft version: 1.21.1
- Mod loader + version: NeoForge [paste your exact build]
- What triggered it: crash on world load, ~150 mods
- (If it looks like a missing-dependency error, I'll paste the mod list too)

Here is the full crash report (or the first 100 lines plus every Caused by: block):
[paste the crash-report text or the top of latest.log]

Tell me:
1. The most likely cause, in one sentence.
2. A ranked list of the 2-3 mods most likely involved and why.
3. The single next step you'd take to confirm which one it is.
Keep it short. Don't guess at mods that aren't in the trace.

Realistická odpověď vypadá takto:

Pravděpodobná příčina: konflikt mixinů při načítání světa. Dva mody možná injektují do stejné třídy. Podezřelí: (1) Rámec org.spongepowered.asm.mixin.transformer ukazuje na mixin, který se nedaří aplikovat; první podezřelý je mod, jemuž patří cílová třída. (2) O rámec výš se objevuje druhý mod zasahující do vykreslování entit. (3) Méně pravděpodobně konfigurační mod načtený těsně před selháním. Další krok: oba podezřelé vytáhněte, nabootujte a vracejte je po jednom. Dvojici to potvrdí rychleji než mazání poloviny seznamu.

Co upravit: Pokud se diagnóza vrátí vágní („nějaký mod koliduje"), nedali jste dost trace: vložte celý crash report místo prvních 100 řádků a přidejte seznam modů s verzemi. Jestli zůstane mlhavá, log skutečně žádného viníka nejmenuje a jste zpátky u půlení.

Kde se to láme: AI s naprostou jistotou označí viníka, i když skutečná příčina je v trace jinde. Berte její odpověď jako seřazenou hypotézu, ne jako rozsudek. Potvrdíte ji tím, že mody opravdu vytáhnete a nabootujete.

Tuhle část lidé přeskakují. AI přečte stack trace; nedokáže vám říct, že pack v reálných podmínkách nabootuje čistě, protože některé pády se objeví, až když se na serveru inicializuje víc modů najednou, ne při rychlém spuštění pro jednoho hráče. Přesně tady chcete jednorázový testovací server. Marketplace Cloudzy má také nasazení Minecraft Forge na jedno kliknutí na Ubuntu Server 24.04 LTS. Marketplace uvádí jako minimum 2 GB RAM, jenže to je spodní hranice platformy, ne cíl pro dimenzování velkého modpacku. Pro malý testovací pack jsou 4 GB RAM a 2 vCPU rozumný začátek; u 100+ modů začněte kolem 8 GB a 4 vCPU a pak upravujte podle počtu hráčů, generování světa a skutečného profilování. Nahoďte ho, potvrďte opravu pod zátěží a zase ho zrušte.

VPS pro hraní

Hostujte herní servery bez lagů s vysokorychlostním NVMe VPS hostingem.

VPS pro hraní

Prompt: generování receptů KubeJS

Tento prompt navrhne recept KubeJS přesně v tom API, které váš pack používá, pokud nejdřív vložíte funkční recept z vlastních skriptů, aby se mu model přizpůsobil.

Write a KubeJS recipe for me.
- Target: Minecraft 1.21.1 / NeoForge [paste exact build] / KubeJS [paste exact installed 7.2.x build]
  (For the older line, use: Minecraft 1.20.1 / your exact loader build / your exact installed KubeJS 6.x build)
- Goal: a shaped recipe that crafts 3x create:andesite_alloy from
  iron nuggets and andesite.

Here is one working recipe from my server_scripts/ so you match my API style:
[paste one real ServerEvents.recipes block from your pack]

Output only the recipe, inside a ServerEvents.recipes(event => {...}) block.
Use item IDs exactly as I'd find them in-game; flag any ID you're unsure exists.

S linií KubeJS 7.2.x pro Minecraft 1.21.1 a vloženým příkladem dostanete aktuální syntaxi event.shaped() , jak ji ukazuje dokumentace receptů KubeJS:

// KubeJS 7.2.x - Minecraft 1.21.1 / NeoForge
ServerEvents.recipes(event => {
  event.shaped(
    Item.of('create:andesite_alloy', 3),
    ['III', 'IAI', 'III'],
    { I: 'minecraft:iron_nugget', A: 'minecraft:andesite' }
  )
})

Co upravit: U Minecraftu 1.20.1 uveďte přesný build loaderu a přesně nainstalovaný build KubeJS 6.x, aby model trefil tuhle linii. Pro odstranění nebo nahrazení vanilla receptu si výslovně vyžádejte event.remove({ output: '...' }) or event.replaceInput(...) výslovně: pojmenujte metodu, ať si nic nevymýšlí.

Kde se to láme: Tady převládají dvě selhání: vymyšlená ID předmětů (create:andesite_alloy existuje; create:andesite_gear možná ne) a výstup pro špatnou verzi, když zapomenete cílový řádek. Ověřte každé ID předmětu proti nainstalovaným modům, pak skript hoďte do testovacího packu a přečtěte si kubejs/logs/server.log.

Tip od profíka: Vložit jeden ověřený příklad z vlastního server_scripts/ předtím, než si vyžádáte cokoli nového, má větší cenu než jakákoli formulace promptu. Model napodobí konkrétní příklad před sebou mnohem věrněji než abstraktní „správné" API, které si pamatuje jen napůl.

Prompt: psaní knih FTB Quests (SNBT na 1.21.1)

FTB Quests SNBT and JSON5 formats compared across Minecraft versions

Tento prompt navrhuje záznamy FTB Quests v rozšířeném formátu SNBT od FTB pro Minecraft 1.21.1. Je to nejtěžší úkol pro AI z celé sady, protože SNBT vypadá jako JSON a model s ním zoufale chce jako s JSONem zacházet. Pro Minecraft 26.1.2 a novější používá FTB Quests JSON5 místo toho, takže tam tento SNBT prompt nepoužívejte.

Write an FTB Quests task block in FTB SNBT for Minecraft 1.21.1 / NeoForge.

FTB SNBT is NOT JSON. Follow these rules exactly:
- Do not use commas between fields in multiline objects.
- Match the 16-character UPPERCASE hexadecimal ID format used by my existing quests
  (example: 7942A6A571A4C5EB).
- Put the required amount in the task-level count field as a long (count: 8L); keep the nested item stack count at 1.
- This is a task block only; do not add chapter-level fields such as filename or quests.

Goal: an "item" task requiring 8x minecraft:diamond.
Match this known-good block's structure exactly:
[paste a valid SNBT block from your existing chapter file]

Output only the SNBT block.

Výstup postavte na bloku, o kterém už víte, že je platný:

{
    id: "7942A6A571A4C5EB"
    type: "item"
    item: {
        count: 1
        id: "minecraft:diamond"
    }
    count: 8L
}

Co upravit: Pro celou kapitolu místo jednoho úkolu si vyžádejte obal kapitoly s filename a quests: [...] a pak vyžadujte pro každý quest samostatné 16znakové hexadecimální ID. Pokud ID recykluje nebo mění formát, vložte dvě nebo tři ověřená ID a řekněte mu, ať se jimi řídí.

Kde se to láme: Přidává JSON čárky do víceřádkového FTB SNBT, dává požadované množství dovnitř vnořeného stacku předmětů místo do pole count na úrovni úkolu, nebo generuje pokažená ID questů. Kterákoli z těch věcí může zabránit načtení kapitoly nebo způsobit špatné počítání úkolu. Ověřte každý blok proti struktuře, o níž víte, že funguje, a zkontrolujte log serveru, než se to dostane do config/ftbquests/.

Prompt: výběr modů podle tématu

Tento prompt používá AI jako zkratku k nápadům (tematický užší výběr modů, které si pak ověříte), nikdy jako zdroj pravdy o tom, co existuje.

Suggest mods for a modpack with this theme: [your theme, e.g. "steampunk
automation, tech-focused, no magic"].
- Minecraft version: 1.21.1
- Loader: NeoForge

For each suggestion, give me:
- The mod name and what it contributes to the theme.
- Whether you're confident it exists for 1.21.1 / NeoForge, or unsure.

Mark anything you're not certain about as UNVERIFIED. Do not assert
availability you're not sure of; I'll confirm each one on CurseForge/Modrinth.

Užitečná odpověď odděluje jisté tipy od dohadů:

Potvrzené příklady pro 1.21.1 / NeoForge (ověřte přesný soubor): Vytvořit, pro automatizaci a mechanismy; Immersive Engineering, pro multiblokové stroje a průmyslovou techniku. UNVERIFIED: [menší doplňky, které model neumí potvrdit]. Než cokoli přidáte, zkontrolujte stránku projektu.

Co upravit: Přitvrďte: žádejte jen mody s ověřenou stránkou na CurseForge nebo Modrinth a vyžádejte si ke každému jednořádkovou poznámku o kompatibilitě (závislosti, známé konflikty), ať je váš užší výběr rovnou i rešeršní checklist.

Kde se to láme: AI si názvy modů a dostupnost verzí vymýšlí zcela bez zábran. Vytvoří věrohodně znějící mod, který neexistuje, nebo bude tvrdit, že existuje build pro 1.21 u něčeho, co skončilo na 1.19. Každý návrh je stopa k ověření na CurseForge nebo Modrinthu, ne položka do vašeho modlistu.

Prompt: psaní changelogů a commit zpráv

Tohle je nejméně rizikový a nejspolehlivější úkol pro AI z celé sady: dejte jí diff, který jste vytvořili, a nechte ji ho shrnout. V tom je opravdu dobrá.

Here are the changes in this modpack update (from my packwiz .pw.toml
adds/removes/updates):
[paste your git diff or a list of added/removed/updated mods]

Write two things:
1. A Conventional Commit message (type(scope): summary + a short body).
2. A short player-facing changelog entry, with a friendlier tone and no file names.

Only summarize the changes I gave you. Don't invent changes I didn't list.

Nakrmte ji skutečným diffem a vrátí něco, co byste opravdu vypustili ven:

feat(mods): update Create stack and remove old storage entry

- Added Create: Steam 'n' Rails and Create Crafts & Additions
- Removed Simple Storage Network
- Updated JEI to the 1.21.1 build listed in the supplied diff

Hráči: tato aktualizace rozšiřuje technologický strom Create o vlaky a elektrické stroje, odstraňuje úložný mod uvedený v seznamu změn a obnovuje index receptů JEI.

Co upravit: Tón zadejte výslovně: úsečný pro commit log, vřelejší pro poznámku hráčům. U plného vydání dejte dohromady diff celé aktualizace a vyžádejte si seskupené sekce changelogu (Přidáno / Změněno / Odstraněno).

Kde se to láme: Skoro nic, pokud ji držíte u shrnování diffu, který jste dodali. Jediné reálné riziko je, že changelog nafoukne o změny, které jste neudělali, takže ji nenechte „hádat, co se ještě změnilo"; dejte jí skutečný diff a držte ji u něj.

Kdy výstupu nevěřit (chybové vzorce v kostce)

Pokud si zapamatujete jednu sekci, ať je to tahle. Napříč všemi úkoly výše selhává AI v malé, předvídatelné množině způsobů a ke každému existuje protitah, jehož díly už máte:

Režim selháníKde se to projevíČím to vyvážit
Vymyšlená ID předmětůRecepty KubeJS, questovní předmětyOvěřte každé ID proti skutečným modům; do promptu vložte reálná ID
Špatná verze API KubeJSRecepty KubeJSDo každého promptu dejte verzi hry, build loaderu a přesný build KubeJS
SNBT bráno jako JSON (čárky)FTB QuestsV promptu uveďte „žádné čárky mezi poli stejné úrovně"; ověřte proti ověřenému bloku
Neplatná ID questů (malá písmena / špatná délka)FTB QuestsVyžadujte 16 znaků hexadecimálně velkými písmeny; předložte platná ID jako vzor
Vymyšlená dostupnost modůVýběr modůKaždý návrh před přidáním ověřte na CurseForge/Modrinthu

Většinu pokryjí dvě techniky. Zaprvé, do každého promptu dejte přesnou verzi hry, build loaderu, cílový formát a funkční příklad. Zadruhé, jeďte nadvakrát: vygenerujte artefakt, pak ho vložte zpět a nechte model, ať ho zkontroluje proti konkrétním omezením, třeba oddělovačům FTB SNBT nebo formátu ID questů. Když ho donutíte podívat se dvakrát, odchytá užitečnou část vlastních chyb.

Nic z toho vás nezbaví čtení výstupu. Znamená to jen, že čtení zabere minuty místo hodin, které byste strávili psaním od nuly.

Závěr

ChatGPT je pro vývoj modpacků užitečný tehdy, když ho necháte pracovat proti skutečným omezením vašeho packu. Dejte mu přesnou verzi hry, build loaderu, cílový formát a ověřený příklad; pak ke každému receptu, bloku questu a diagnóze přistupujte jako k návrhu, který musí přežít logy a skutečnou testovací instanci. Tak si udržíte rychlostní výhodu, aniž byste modelu přiznali autoritu, kterou si nezasloužil.

Časté dotazy

Umí AI číst crash logy Minecraftu?

Ano. Vložte celý crash report, nebo alespoň prvních 100 řádků a každý blok Caused by: spolu s verzí Minecraftu a buildem loaderu. Schopný model přečte stack trace a seřadí pravděpodobné viníky. Použijte to ke zkrácení slepého půlení a pak hypotézu potvrďte na testovací instanci.

Jak použít ChatGPT na recepty KubeJS?

Vždy uveďte verzi Minecraftu, build loaderu a přesný nainstalovaný build KubeJS. KubeJS 6.x je linie pro Minecraft 1.20.1, zatímco KubeJS 7.2.x je linie pro Minecraft 1.21.1. Vložte funkční recept z server_scripts/ aby seděl na váš styl, pak ověřte každé ID předmětu a API porovnejte se svým logem KubeJS.

Jaké prompty fungují na psaní FTB Quests?

U Minecraftu 1.21.1 vypište pravidla víceřádkového SNBT od FTB: žádné čárky mezi poli, dodržet 16znakový hexadecimální formát ID používaný stávajícími questy, zachovat typové číselné přípony tam, kde je zdroj používá, a nemíchat pole úkolu s poli kapitoly, jako je filename. Přiložte ověřený blok a výsledek zvalidujte, než ho načtete. Na Minecraftu 26.1.2 a novějším ukládá FTB Quests tato data jako JSON5, použijte tedy verzi odpovídající příklad v JSON5.

Píše AI dobré mody nebo modpacky pro Minecraft?

Sama o sobě ne. AI zrychlí vývojáře, který si její výstup umí přečíst a ověřit, protože recepty, questy i diagnózy navrhne rychleji, než by je psal od nuly. Spolehlivě funkční mody nebo packy bez revize nevytvoří. Jako nástroj na první návrhy v rukou znalce oboru je to skutečné zrychlení; jako samostatný autor vypustí chyby, kterým šlo předejít.

Jakou verzi Minecraftu a jaký loader mám AI sdělit?

Obojí, pokaždé. Uveďte přesnou verzi Minecraftu, třeba 1.21.1, a přesný loader i build pro Forge, NeoForge, Fabric nebo Quilt. Bez toho může model zvolit zastaralou nebo s loaderem nekompatibilní syntaxi. Výsledek ověřte v testovacím packu, než ho přenesete do produkce.

Sdílet

Další z blogu

Pokračuj ve čtení.

Hotov k nasazení? Od 2,48 $/měs.

Nezávislý cloud od roku 2008. AMD EPYC, NVMe, 40 Gbps. Vrácení peněz do 14 dnů.