-
Notifications
You must be signed in to change notification settings - Fork 0
Step 5 ‐ Adding a Quest
A Quest Line has Multiple Quests.
A Quest Line should always start with a root.json
Example:
{
"icon": "minecraft:book",
"start": {
"description": {
"translate": "This is the start of the quest. Giving option to accept or decline the Quest Line."
},
"title": {
"translate": "Root QuestLine Starts"
}
}
}
Note: The root file only has a "start" and no "complete"
This will have an accept and decline button. Once a player clicks accept they can continue the questline. Accepting saves the quest line on the player data.
(Optional) added in 1.5.0+
As every questline has a Root a questline can also have an end.json
If the questline doesn't have an end file it will show nothing after the last quest has been completed.
So this is optional.
The end.json doesnt have a complete section or a task and reward.
Example:
{
"icon": "minecraft:bone",
"start": {
"description": {
"translate": "This is the end of the Wolfie quest. Thank you for helping Wolfie out."
},
"title": {
"translate": "Wolfie QuestLine Ends"
}
}
}
After the root.json come all the other quests of the questline.
These quest can have any name unlike the root.json file.
example quest json setup:
{
"parent": "quest_giver:root",
"icon": "minecraft:iron_sword",
"start": {
"description": {
"translate": "Give a sword to the Quest Giver."
},
"title": {
"translate": "Gift Example"
}
},
"tasks": [
{
"id": "quest_giver:gift",
"item": {
"item": "minecraft:iron_sword"
}
"entity": "your_mod:your_creature"
}
],
"complete": {
"description": {
"translate": "Thank you for giving the sword!"
},
"title": {
"translate": "Gift Example"
}
},
"rewards": [
{
"id": "quest_giver:item",
"item": {
"count": 1,
"item": "minecraft:experience_bottle"
}
}
]
}
(Mandatory)
"parent" is the link to the previous quest.
If the parent quest is done this quest will be it's follow up.
Note: There can be multiple quests with the same parent.
── data
└── quest_giver
└── quest_lines
└── your_quest_line_name
├── root.json
├── quest_01.json
├── quest_02.json
├── quest_03.json
The parent of quest_01.json would be: "parent": "parent": "quest_giver:root"
The parent of quest_02.json would be: "parent": "parent": "quest_giver:quest_01"
(Mandatory)
"icon" is the item that should be displayed if there are multiple selectable quests.
"icon": "minecraft:iron_sword" will display a iron sword.
(Mandatory)
A quest has a "start" and a "complete" section.
"start": {
"description": {
"translate": "Give a sword to the Quest Giver."
},
"title": {
"translate": "Gift Example"
}
}
"start" has a "descirption" and a "title".
"descriptionn" shows the quest text with "translate". This could describe what you want the player to do.
"title" the title will be shown above the quest window. This also has "translate" to show the text.
"translate" is a String. It can also have a link to a lang file. This can also be formatted.
(Mandatory)
"complete": {
"description": {
"translate": "Thank you for giving the sword!"
},
"title": {
"translate": "Gift Example"
}
}
"complete" also has a "descirption" and a "title".
"description" shows the quest text with "translate". This could describe what happens after the player completed their task.
"title" the title will be shown above the quest window. This also has "translate" to show the text.
"translate" is a String. It can also have a link to a lang file. This can also be formatted.
(Mandatory)
There are many task already added by the Quest Giver Mod:
"craft""gift""item_stack""kill""pet""tame""biome"structure""special_task"
The "id" is followed up by the indication of what task option.
"id": "quest_giver:gift"
(Optional) There are reward options already added by the Quest Giver Mod:
"item""command"
The "id" is followed up by the indication of what reward option.
"id": "quest_giver:item"