Hytale Dark Matter Mounts
Expand your adventures with immortal horses and flying dragons, persistent mount ownership, Ecotale-powered vendors, mount quests, stamina, progression, and configurable abilities.
Built for Hytale 0.6.8, with player menus, an in-game admin settings menu, and public Java APIs.
Current version: 1.0.1
What Is This?
Dark Matter Mounts adds a mount collection system to your Hytale server. Players can purchase mounts from NPC vendors, earn them through configured quests, or obtain them from configured NPC drops.
Summon a horse for journeys across land or take to the skies on a fire or frost dragon. Your mount collection is saved across sessions and server restarts, so dismissing a mount preserves your ownership.
Server owners can shape the system around their economy and gameplay. Customize prices, drop rates, stamina, progression, abilities, cooldowns, vendor offers, and quest rewards through configuration files, admin commands, or the in-game settings menu.
Key Features
-
Horses and Flying Dragons: Travel across land on horses or explore the skies with fire and frost dragons.
-
Immortal Mounts: Mounts are invulnerable and protected against damage. Riders remain subject to normal player damage rules.
-
Persistent Collections: Save mount ownership, selected skins, progression, stamina, and boost cooldowns across sessions.
-
Ecotale Integration: Purchase mounts and receive currency quest rewards through your server’s existing Ecotale economy.
-
NPC Mount Vendors: Place vendors in your world and configure their mount offers. Players must visit a live nearby vendor to purchase.
-
Mount Quests: Configure objectives and reward players with currency, mounts, or both. Repeatable quests require a fresh completion cycle.
-
Configurable Mount Drops: Add acquisition chances to matching NPC deaths credited to players. Drops are disabled by default until configured.
-
Stamina and Sprinting: Sprinting consumes stamina, while resting restores it. Configure resource costs and regeneration.
-
Terrain Effects: Customize mud slowdown and additional sprint stamina consumption when travelling uphill.
-
Mount Progression: Earn riding XP, improve mount attributes, unlock speed boosts, and gain a passive ability that removes mud slowdown.
-
Vanilla Appearance Options: Configure skins using existing vanilla model assets and optional boost particle effects.
-
Player Menus: View your collection, summon and ride mounts, purchase vendor offers, and accept or claim quests.
-
Admin Settings Menu: Read and edit configuration paths and JSON values directly in game.
-
Public Java APIs: Integrate mount ownership, vendors, quests, custom progress events, and settings with other plugins.
Horses are land-only. Entering water dismisses the horse while preserving ownership. There is no carry system.
Configuration and Controls
Customize the experience to suit your server:
-
Mount prices and vendor offers.
-
Drop probabilities and NPC filters.
-
Stamina capacity, sprint drain, regeneration, and optional flight drain.
-
Movement speeds, jump force, mud slowdown, and uphill stamina costs.
-
Boost strength, duration, cost, cooldown, and unlock level.
-
Progression thresholds and attribute improvements.
-
Quest objectives, rewards, mount filters, and repeatability.
-
Vanilla model choices, boost particles, and collection limits.
-
Command aliases, save intervals, and movement validation limits.
The plugin creates config.json and players.json in its data directory. Important ownership and transaction changes save immediately; travel progress and stamina save periodically.
Steering, sprinting, jumping, flight ascent/descent, and native dismount use your normal Hytale controls. Configurable controls within the mod change command aliases. Physical keyboard bindings remain in Hytale’s client settings.
Commands and Permissions
Player commands require no dedicated mod permission.
All admin commands and settings menu actions require:
darkmatter.mounts.admin
Assign this permission through your server’s permissions system. Operators with wildcard permission also have access.
Player Commands
| Command | Description |
|---|---|
/dmemount |
Open your mount collection menu. |
/dmemount catalog |
List mount definition IDs. |
/dmemount status |
View owned mount UUIDs, levels, stamina, and cooldowns. |
/dmemount summon <UUID> |
Summon an owned mount nearby. |
/dmemount ride |
Ride your nearby summoned mount. |
/dmemount dismiss |
Dismount and dismiss your mount. |
/dmemount boost |
Activate your mount’s speed boost. |
/dmemount fly |
Toggle flight while riding a dragon. |
/dmemount skin <UUID> <skin> |
Apply a configured skin to an owned mount. |
/dmemount shop <vendor> |
Open a nearby vendor’s shop. |
/dmemount buy <vendor> <mount> |
Purchase an available vendor offer. |
/dmemount quests |
View quests and accepted progress. |
/dmemount accept <quest> |
Accept a quest. |
/dmemount claim <quest> |
Claim a completed quest’s reward. |
These are the default command aliases. Administrators can customize them.
Admin Commands
Required permission: darkmatter.mounts.admin
| Command | Description |
|---|---|
/dmemount admin |
Open the in-game settings menu. |
/dmemount admin get <path> |
Read a configuration value. |
/dmemount admin set <path> <JSON> |
Validate, save, and apply a setting. |
/dmemount admin reload |
Reload the configuration file. |
/dmemount admin grant <mount> [player UUID] |
Grant a mount to yourself or another player. |
/dmemount admin vendor add <vendor> |
Place a vendor near you. |
/dmemount admin vendor list |
List saved vendor placements. |
/dmemount admin vendor remove <placement UUID> |
Remove a vendor placement. |
/dmemount admin transactions |
Inspect the currency transaction journal. |
/dmemount admin resolve <transaction ID> delivered |
Complete a transaction after verifying its payment or credit. |
/dmemount admin resolve <transaction ID> not_charged |
Close a transaction after verifying that its payment or credit did not occur. |
Configuration Examples
/dmemount admin set mounts.horse.price 500
/dmemount admin set mounts.fire_dragon.flightDrain 3
/dmemount admin set mounts.horse.boostCooldown 15
/dmemount admin set mounts.horse.xpPerLevel 500
/dmemount admin set quests.first_ride.rewardMount "horse"
/dmemount admin set controls.boost "dash"
The settings menu supports the same configuration paths. Load a value, edit its JSON, and save to apply it. Appearance and mount-anchor changes take effect on the next relevant spawn or ride.
Multiplayer and Currency Handling
Dark Matter Mounts uses Hytale’s native mounting and entity synchronization. Mount movement is checked on the server for movement limits, obstacle collisions, water restrictions, and permitted flight.
Currency operations are recorded in a transaction journal. If a payment result is uncertain, further purchases and claims for that account are blocked until an administrator verifies the Ecotale ledger and reconciles the transaction. Reconciliation can deliver the recorded reward without making another currency call.
Developer Integration
Public MountAPI, VendorAPI, and QuestAPI services allow other plugins to:
-
Grant mounts and request mount actions.
-
Register vendors and quests.
-
Open vendor menus.
-
Submit verified custom quest progress events.
-
Read and edit configuration.
API documentation, configuration examples, source code, and reproducible test scripts are included in the source package.
Installation and Requirements
-
Hytale: 0.6.8.
-
Java: 25.
-
Required economy plugin: Ecotale 1.1.2, the version used for validation.
-
Optional: EcotaleCoins.
Stop your server, place DarkMatterMounts-1.0.1.jar in its mods directory alongside Ecotale, and restart.
When upgrading, remove the previous mod JAR and keep your existing configuration and player data. The JAR includes the mod’s resources and references vanilla game models.
To create your first vendor, stand on clear dry ground and run:
/dmemount admin vendor add stable
Players can then visit the stable to purchase a mount and open /dmemount to summon and ride it.
Release Notes and Testing
Version 1.0.1 corrects the unsupported newline escapes responsible for the reported “Failed to load CustomUI documents” error.
Version 1.0.0 passed 50 core checks and 61 real-server checks. Version 1.0.1 passed focused UI escape and archive checks; the earlier core and server checks were not rerun for this resource-only patch.
Client UI rendering, camera placement, animations, network feel, and simultaneous real-player sessions still require in-game playtesting.

