Guide
Sådan laver du et quest-plugin til Minecraft
Opdateret 18. oktober 2026
Quests giver spillerne en grund til at spille: dræb 20 zombier, min 64 jern, giv en villager 10 brød. Et quest-plugin består af tre ting: mål, der lytter på events i spillet, fremskridt gemt for hver spiller, og belønninger. Når quests defineres i en konfigurationsfil, kan du tilføje nye uden at røre koden.
Ret quests og belønninger til dine egne.
Generér dette med CodexeTrin for trin
1.Vælg måltyperne
Start med nogle få: dræb en mob-type, ødelæg eller placér blokke, saml genstande, craft, nå et sted, tal med en NPC. Alle quests bygges ud fra disse.
2.Definér quests i en fil
Hver quest i
quests.yml: et id, et navn, en beskrivelse, dens mål med antal, belønninger og krav (en anden quest først, en permission, et level).3.Følg fremskridtet pr. spiller
Lyt på de events, der ligger bag hvert mål, og læg til spillerens fremskridt. Gem det i SQLite eller en fil, så det overlever logouts og genstarter.
4.Vis fremskridtet
En
/quests-menu med aktive og færdige quests plus en besked, titel eller boss bar, når fremskridtet ændrer sig.5.Giv belønninger
Genstande, erfaring, penge via Vault eller konsolkommandoer som
lp user %player% permission set ...til alt andet.6.Byg og gennemfør en quest i spillet
Lad Codexe kompilere det, join testserveren, tag imod en quest, og gennemfør den. Genstart derefter, og tjek, at fremskridt og belønninger blev gemt.
Mål og eventsene bag dem
| Mål | Hændelse | Detalje, du skal beslutte |
|---|---|---|
| Dræb mobs | EntityDeathEvent | Tæl kun drab foretaget af spilleren, eller også af dennes kæledyr og pile |
| Ødelæg blokke | BlockBreakEvent | Ignorér blokke, spilleren selv har placeret, ellers placerer og ødelægger spillerne den samme blok igen og igen |
| Saml genstande | Tjek af inventory eller pickup-event | Om genstandene tages, når questen afleveres |
| Craft genstande | CraftItemEvent | Crafting med shift-klik laver flere ad gangen |
| Nå et sted | PlayerMoveEvent | Tjek kun, når spilleren skifter blok, ikke ved hver bevægelse |
| Tal med en NPC | PlayerInteractEntityEvent | Hvilken entity der er questgiveren |
Questgivere
Den enkleste questgiver er en kommando eller en menu. Til en figur i verdenen virker en villager eller en armor stand med et eget navn og et PersistentDataContainer-tag uden andre plugins: pluginet genkender den, når en spiller højreklikker på den. Hvis din server allerede bruger et NPC-plugin som Citizens, så nævn det i anmodningen, så pluginet kobler sig på det.
Eksempel på beskrivelse
"Et Paper 1.21.4-quest-plugin kaldet Quests. Måltyper: dræb mobs, ødelæg blokke (ikke placeret af spillere), saml genstande og tal med en villager, der er tagget som questgiver. Quests defineres i quests.yml med navn, mål, påkrævet quest og belønninger (genstande, erfaring, Vault-penge, konsolkommandoer). /quests åbner en menu med tilgængelige, aktive og færdige quests. Fremskridt vises i action baren. Op til 3 aktive quests. Daglige quests nulstilles ved midnat servertid. Fremskridt gemt i SQLite."
Daglige og gentagelige quests
- Skriv, hvornår de nulstilles: på et fast tidspunkt hver dag eller 24 timer efter, at spilleren blev færdig.
- Skriv, om daglige quests er tilfældige for hver spiller eller de samme for alle.
- Gem tidspunktet for sidste gennemførelse, ikke et flag, så nulstillinger virker, mens serveren er slukket.
Spørgsmål
Kan quests bruge PlaceholderAPI?
Ja. Bed om placeholders som den aktive quest og dens fremskridt, så scoreboards og tablister kan vise dem. Nævn PlaceholderAPI i anmodningen, så det tilføjes som afhængighed.
Kan jeg skrive quests med Skript?
Små questsystemer kan være i et Skript med variabler. Mange måltyper, menuer og gemt fremskridt for hundredvis af spillere er nemmere at holde hurtigt og overskueligt i et plugin.
Hvordan tjekker jeg, at questene virker?
Spil dem på Codexes testserver, og tilføj tests med dine egne ord, for eksempel "en normal spiller kører /quests og ser en menu åbne". Tests tjekker beskeder, genstande og menuer, ikke mobs eller blokke i verdenen.
Lav dit quest-plugin
Denne prompt åbnes klar til at sende:
“Et Paper 1.21.4-quest-plugin: måltyperne dræb mobs, ødelæg blokke, der ikke er placeret af spillere, saml genstande og tal med en tagget villager; quests i quests.yml med mål, påkrævet quest og belønninger (genstande, XP, Vault-penge, konsolkommandoer); /quests-menu med tilgængelige, aktive og færdige quests; fremskridt i action baren; maks. 3 aktive quests; daglige quests nulstilles ved midnat; fremskridt gemt i SQLite.”
Generér dette med Codexe