Content Packs

Extend MMO Skill Tree with a data-only Hytale asset pack - no Java required

Overview

Third parties can add or override MMO Skill Tree content - quests, achievements, XP tuning, mastery tracks, currencies, dialogues, and more - without writing any Java, by shipping a standard Hytale asset pack: a .zip (or folder) of JSON dropped into the server's mods directory. MMO Skill Tree declares its own custom asset types, so the Hytale engine natively discovers, loads, and merges your pack at server start.

Who this is for

  • Server owners who want to customize content beyond the admin dashboard, and keep those customizations in a portable pack they can move between servers.
  • Content creators shipping quest packs, class packs, or total conversions on CurseForge.
  • Translators contributing new languages (see Translation Packs).

What packs can add

Each links to its entry in the Content Type Reference:

What packs cannot add

  • Custom skills - load too early and are code-backed. Owner-config only (custom-skills.json), never pack-authorable.
  • Skill-tree nodes (including SCHOOL_RESIST) - owner config only (skill-tree.json overrides), even though the reward type and the damage schools it targets are otherwise pack-referenceable.
  • XP tokens - can be tweaked through config, but not created from pack data.

Abilities moved off this list in 1.6.0

Active abilities were code-backed before 1.6.0. As of 1.6.0 they are a fully pack-authorable structured asset type (Server/MMOSkillTree/Abilities/) - see Ability authoring.

Need a new skill? That stays a config/code feature for now - see Custom Skills.

Reference packs

Real, production packs you can learn from, each demonstrating a different slice of the system:

MMO Skill Mastery Pack

20 mastery tracks, 2 currencies, mastery-point milestone rewards, quests & achievements. The reference for the template DSL.

MMO Skill Bounty Pack

Rotating Bounty Board contracts plus the Token Shop catalog and its interactable blocks. Reference for bounty boards and shop entries.

MMO Skill Quest Pack

Zone quests with quest-giver NPC roles, branching Dialogues, and per-world rules. Reference for the dialogue engine and runtime NPC handoffs.

MMO Skill Taming Pack

A feature-gated integration pack: adds Taming XP maps, quests & achievements that stay hidden unless the companion mod is installed.

MMO Skill Capes Pack

A pure-cosmetic Hytale asset pack: ships the mastery cape items, a custom rarity, and per-locale names. No gameplay logic.

Sample Content Pack

A minimal working example: a manifest, a control file, and one quest. The smallest complete pack.

The Mastery, Bounty, Quest, Taming, and Capes packs ship as companion downloads alongside the mod on CurseForge.

In-repo examples for abilities and gear stats

Two smaller, in-repo example packs (not shipped standalone on CurseForge) demonstrate the 1.6.0 authoring surface end to end: an AbilityMod that improves an existing ability (Ability authoring) and a gear-stat pack that ships items granting MMO_* stats and a tool with a fortune-style tag stat (Gear stats). Treat them as authoring references, not installable content packs.

Quick start

A content pack is just a manifest plus JSON under Server/MMOSkillTree/:

MyMmoPack.zip
├── manifest.json
└── Server/
    └── MMOSkillTree/
        ├── Control/MyMmoPack.json        (optional - per-type add/replace mode)
        ├── Quests/dragon_hunt.json
        └── Achievements/first_blood.json

The manifest

Only Name is required and IncludesAssetPack must be true. No Main class is needed - this is a data-only pack.

{
  "Group": "YourStudio",
  "Name": "MyMmoPack",
  "Version": "1.0.0",
  "ServerVersion": "*",
  "IncludesAssetPack": true
}
FieldRequiredNotes
NameYesUnique pack name; also the key used in your Control file.
IncludesAssetPackYesMust be true so Hytale loads the bundled assets.
GroupNoYour studio / namespace.
VersionNoPack version string.
ServerVersionNo"*" = any server version.

Add your first quest

Per-entry types (quests, achievements, masteries, currencies, classes) use one file per entry. The asset key comes from the filename; Payload is the entry as a nested JSON object (no escaping):

// Server/MMOSkillTree/Quests/dragon_hunt.json
{
  "Name": "dragon_hunt",
  "Payload": {
    "id": "dragon_hunt",
    "displayName": "Dragon Hunt",
    "category": "main",
    "objectives": [
      { "id": "slay", "type": "KILL_ENTITY", "target": "*", "amount": 5 }
    ],
    "rewards": [
      { "type": "XP", "skill": "SWORDS", "amount": 500 }
    ]
  }
}

Install and verify

  1. Drop the zip (or folder) into your server's mods directory - the same place MMO Skill Tree itself lives.
  2. Start the server.
  3. Look for these log lines confirming the pack loaded:
[AssetPacks] Registered MMO content asset stores
[AssetPacks] Quest pack layer applied (1 entries, mode=add) - N quests effective

The in-game Export as Pack tool (/mmopacks export) generates a correctly-formatted pack from your current server content - the fastest way to get a working starting point.

The in-game Export as Pack tool/dialog, showing the generated manifest and content-type summary.
The in-game Export as Pack tool/dialog, showing the generated manifest and content-type summary.

Where to go next