Quest System
File: plugins/MythicDropRefactored/quests.yml
The quest system lets players track kill goals and earn rewards on completion. Players open /mquests to see a GUI with all available quests.
How Quests Work
1
Define a quest
Set target mob, required kills, and rewards in quests.yml
2
Player opens /mquests
They see a visual GUI with quest icons and their progress
3
Player kills the mob
Progress counter goes up automatically
4
Quest completes
Rewards run, completion message is sent, quest is marked done
5
Progress saved
Even after relogging or server restart, progress is kept
Basic Quest Structure
quests.yml
1quests:
2 my_first_quest: # Unique quest ID (no spaces, use _ instead)
3 mob-name: "SkeletonKing" # MythicMobs internal mob name (exact, case-sensitive)
4 message: "&aQuest complete! You slayed the Skeleton King!"
5
6 quest-item:
7 material: SKELETON_SKULL # Item shown in the GUI
8 ModelData: 0 # Custom model data (0 = default)
9 displayname: "&fSkeleton King Slayer"
10 lore:
11 - "&7Defeat the Skeleton King."
12 - "&7Required kills: &f5"
13
14 conditions:
15 kill: 5 # Number of kills required
16 slot: 10 # Position in the GUI grid (0-44)
17
18 reward:
19 drops:
20 default:
21 guaranteed-rewards: 1
22 reward1:
23 command: "give %player% diamond 5"
24 chance: 1.0
25 message: "&b+5 Diamonds!"Quest Fields
mob-name
The internal MythicMobs name of the mob to track. Must match exactly (case-sensitive).
message
The chat message sent to the player when they complete the quest. Supports & color codes.
quest-item — GUI Display
yaml
1quest-item:
2 material: SPIDER_EYE # Any Minecraft material name (uppercase)
3 ModelData: 0 # Custom model data for resource packs. Use 0 if unsure.
4 displayname: "&2Cave Spider Slayer"
5 lore:
6 - "&7Defeat cave spiders."
7 - "&7Required kills: &f10"conditions — Slot Grid
The slot controls where the quest appears in the GUI. Slots go from 0 (top-left) to 44 (bottom-right). The bottom row is reserved for filter buttons.
GUI Slot Layout (5 usable rows)
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
All Quests
In Progress
Completed
↑ Bottom row is reserved — do not use slots 45-53
guaranteed-rewards
The first N rewards always run, regardless of their chance value. Rewards after that position roll their individual chance.
yaml
1default:
2 guaranteed-rewards: 1 # reward1 always runs; reward2 rolls chance
3 reward1:
4 command: "give %player% diamond 5"
5 chance: 1.0 # This chance is ignored (it's guaranteed)
6 message: "+5 Diamonds"
7 reward2:
8 command: "give %player% emerald 3"
9 chance: 0.5 # 50% chance — only rolled since it's outside the guaranteed countFull Example with Multiple Quests
quests.yml
1quests:
2
3 cave_spider_slayer:
4 mob-name: "CaveSpider"
5 message: "&aQuest Complete! You defeated 10 cave spiders!"
6
7 quest-item:
8 material: SPIDER_EYE
9 ModelData: 0
10 displayname: "&cCave Spider Slayer"
11 lore:
12 - "&7Defeat cave spiders in the mines."
13 - "&7Required: &f10 kills"
14
15 conditions:
16 kill: 10
17 slot: 10
18
19 reward:
20 drops:
21 default:
22 guaranteed-rewards: 1
23 base_reward:
24 command: "give %player% string 8"
25 chance: 1.0
26 message: "&7+8 String"
27 bonus_reward:
28 command: "give %player% spider_eye 2"
29 chance: 0.4
30 message: "&cBonus! +2 Spider Eyes"
31 vip:
32 guaranteed-rewards: 2
33 base_reward:
34 command: "give %player% string 16"
35 chance: 1.0
36 message: "&7[VIP] +16 String"
37 bonus_reward:
38 command: "give %player% spider_eye 5"
39 chance: 1.0
40 message: "&c[VIP] +5 Spider Eyes"
41
42 skeleton_king_slayer:
43 mob-name: "SkeletonKing"
44 message: "&6Quest Complete! You are a true Skeleton King Slayer!"
45
46 quest-item:
47 material: SKELETON_SKULL
48 ModelData: 0
49 displayname: "&fSkeleton King Slayer"
50 lore:
51 - "&7Defeat the mighty Skeleton King."
52 - "&7Required: &f5 kills"
53
54 conditions:
55 kill: 5
56 slot: 11
57
58 reward:
59 drops:
60 default:
61 guaranteed-rewards: 1
62 money:
63 command: "eco give %player% 1000"
64 chance: 1.0
65 message: "&a+$1,000!"
66 diamond_reward:
67 command: "give %player% diamond 10"
68 chance: 0.5
69 message: "&b50% bonus: +10 Diamonds!"
70 vip:
71 guaranteed-rewards: 2
72 money:
73 command: "eco give %player% 2500"
74 chance: 1.0
75 message: "&a[VIP] +$2,500!"
76 diamond_reward:
77 command: "give %player% diamond 25"
78 chance: 1.0
79 message: "&b[VIP] +25 Diamonds!"⚠️ Warning
Run
/mythicdrop reload after editing quests.yml.Common Mistakes
| Problem | Solution |
|---|---|
| Quest not tracking kills | Check mob-name exactly matches the MythicMobs internal name |
| Quest item not showing | Check slot is between 0 and 44; no two quests share the same slot |
| Quest GUI is empty | Check for YAML syntax errors in the console after /mythicdrop reload |
| Progress lost after restart | Shouldn't happen — check if quest_data.yml is being written correctly |