Custom achievements are created using simple .yml
files, and anyone familiar with Mythic syntax should be able to pick up on how it works pretty quickly!
File Locations
MythicAchievements will load achievements from 2 places:
- The
Achievements
folder in the MythicAchievements plugin directory - Any
Achievements
folder in a Mythic pack (located in the MythicMobs plugin directory)
Inside these folders you can have as many .yml
files as you want, including inside other folders, allowing you to organize it however you want. The plugin will read all the files to load everything.
Syntax
First, here's an overview of all the options:
KEY:
Display: 'the display name'
Description: 'the description'
Category: [CATEGORY_KEY]
Parent: [PARENT_ACHIEVEMENT_KEY]
Frame: [CHALLENGE/GOAL/TASK]
Icon:
Material: [MATERIAL]
Criteria:
SOME_KEY_NAME_YOU_CHOOSE:
Type: [CRITERIA_TYPE]
#
# other criteria-related options
#
Reward:
Message: 'A message displayed when they complete it!'
Drops:
- [ a Mythic drop table]
Skills:
- [ some skills ran when the achievement is completed ]1
Examples
In this example achievement, the player can earn it by killing 5 skeletons at night, but it's only available if they have completed the achievement SOME_OTHER_ACHIEVEMENT
!
Upon completing, they will receive 50 cobblestone as a reward.
SKELETON_HUNTER:
Display: 'Skeleton Hunter'
Description: 'Kill 5 Skeletons at Night'
Category: SPECIAL
Parent: SOME_OTHER_ACHIEVEMENT
Frame: CHALLENGE
Icon:
Material: SKELETON_SKULL
Criteria:
KILL:
Type: KILL_MOB_TYPE
EntityType: SKELETON
Amount: 5
Conditions:
- night
Reward:
Message: 'You did it! You killed 5 skeletons at night!'
Drops:
- 50 cobblestone
Skills: []