Skip to content

Rewards

Every quest can grant one or more rewards when completed. Rewards are defined in the rewards array of a quest definition and are automatically granted to the player upon turn-in.

"rewards": [
{ "type": "quest_tokens", "amount": 10 },
{ "type": "item", "item_id": "Tool_Pickaxe_Copper", "amount": 1 }
]

Each reward requires a type field and type-specific parameters described below.

The primary quest currency. Players earn tokens from completing quests and can spend them in the Quest Token Shop.

{ "type": "quest_tokens", "amount": 25 }
FieldRequiredDescription
amountYesNumber of tokens to grant

Grants a specific item directly to the player’s inventory.

{ "type": "item", "item_id": "Tool_Pickaxe_Copper", "amount": 1 }
FieldRequiredDescription
item_idYesThe item ID (e.g. Weapon_Sword_Iron, Food_Bread)
amountYesNumber of items to give

:::note Full Inventory If the player’s inventory is full, the item reward is saved as a pending reward and can be claimed later from the quest book. :::

Grants a loot bag that the player can open for randomized rewards.

{ "type": "lootbag", "lootbag_id": "hunter_reward" }
FieldRequiredDescription
lootbag_idYesThe loot bag definition ID

Grants a named currency (gold, silver, custom currencies).

{ "type": "currency", "currency": "gold", "amount": 100 }
FieldRequiredDescription
currencyYesCurrency name (e.g. gold, silver)
amountYesAmount to grant

Grants general character experience points via the RPG leveling system.

{ "type": "rpg_xp", "amount": 500 }
FieldRequiredDescription
amountYesXP amount to grant

Grants skill-specific experience points via the MMO skill tree system.

{ "type": "mmo_xp", "skill": "mining", "amount": 150 }
FieldRequiredDescription
skillYesSkill name (e.g. mining, combat, woodcutting)
amountYesXP amount to grant

Grants experience points for the Endless leveling system.

{ "type": "endless_xp", "amount": 200 }
FieldRequiredDescription
amountYesXP amount to grant

Grants experience points for the main character leveling system.

{ "type": "leveling_xp", "amount": 300 }
FieldRequiredDescription
amountYesXP amount to grant

Unlocks a title that the player can display. Titles are managed through the Achievement system.

{ "type": "title", "title_id": "forest_protector" }
FieldRequiredDescription
title_idYesTitle identifier (e.g. mining_master, newcomer)

Unlocks an achievement for the player.

{ "type": "achievement", "achievement_id": "story_complete" }
FieldRequiredDescription
achievement_idYesAchievement identifier

Executes a server command as a reward. Supports placeholder substitution for the player name.

{ "type": "command", "command": "give {player} Food_Apple 10", "executor": "console" }
FieldRequiredDescription
commandYesThe command string. Use {player} as a placeholder for the player name
executorNoWho runs the command: "console" (default) or "player"

:::tip When to use command rewards Command rewards are a flexible catch-all for integration with other plugins. You can trigger any server command — grant permissions, teleport players, spawn entities, or interact with third-party mods. :::

TypeKey FieldsScales with TierFallback
quest_tokensamountYes
itemitem_id, amountYes (amount)Pending reward if inventory full
lootbaglootbag_idNo30 Quest Tokens
currencycurrency, amountYes
rpg_xpamountYesQuest Tokens (XP / 10)
mmo_xpskill, amountYesQuest Tokens (XP / 10)
endless_xpamountYesQuest Tokens (XP / 10)
leveling_xpamountYesQuest Tokens (XP / 10)
titletitle_idNo25 Quest Tokens
achievementachievement_idNo15 Quest Tokens
commandcommand, executorNo

The quest system gracefully handles situations where external plugins are not installed:

  • RPG XP / MMO XP — If the leveling plugin is not available, XP rewards are converted to Quest Tokens at a rate of XP / 10.
  • Endless XP — If the Endless leveling plugin is not available, XP rewards are converted to Quest Tokens at a rate of XP / 10.
  • Leveling XP — If the leveling plugin is not available, XP rewards are converted to Quest Tokens at a rate of XP / 10.
  • Title — If the Achievement plugin is not installed, title rewards are converted to 25 Quest Tokens.
  • Achievement — If the Achievement plugin is not installed, achievement rewards are converted to 15 Quest Tokens.
  • Lootbag — If the lootbag ID is not found, the reward is converted to 30 Quest Tokens.

This means you can safely configure any reward type without worrying about crashes from missing plugins.

Quests support a dynamic tier system that scales numeric rewards. When a quest has a tier assigned, amount-based rewards (Quest Tokens, Items, Currency, XP) are multiplied by the tier factor. For example, a Hard-tier quest with a 1.5x multiplier turns a "amount": 10 token reward into 15 tokens.

Non-numeric rewards (Titles, Achievements, Lootbags, Commands) are not affected by the multiplier.

Every quest can have any number of rewards. It is recommended to always include at least quest_tokens as a baseline reward:

Example: Mixed reward set
"rewards": [
{ "type": "quest_tokens", "amount": 10 },
{ "type": "item", "item_id": "Weapon_Sword_Iron", "amount": 1 },
{ "type": "lootbag", "lootbag_id": "hunter_reward" },
{ "type": "mmo_xp", "skill": "combat", "amount": 200 }
]

Story chapters can also define rewards that are granted when all quests in a chapter are completed. These use the same reward format:

Example: Chapter rewards in chapters.json
{
"id": "chapter_1_forest",
"rewards": [
{ "type": "currency", "currency": "quest_tokens", "amount": 100 },
{ "type": "title", "title_id": "forest_protector" },
{ "type": "lootbag", "lootbag_id": "chapter_1_reward" }
]
}
  1. Player completes all objectives — the quest moves to the “ready to turn in” state
  2. Player turns in the quest — either via NPC dialog or through the quest book UI
  3. All rewards are processed — items go to inventory, tokens are added, XP is granted
  4. If an item reward fails (full inventory) — it becomes a pending reward claimable later
  5. A completion message is shown to the player with a summary of all rewards received