Mods & modpacks
TrueTick supports the full spread of Minecraft server software, plus per-server mod/plugin management and one-shot modpack installs.
Cores & loaders
The type field on a server selects its software:
| Category | Cores | Adds via |
|---|---|---|
| Plugin servers | PAPER, PURPUR, SPIGOT, BUKKIT, FOLIA, VANILLA | Bukkit/Spigot plugins (plugins/) |
| Mod loaders | FABRIC, FORGE, NEOFORGE, QUILT | mods (mods/) |
Plugin servers take .jar plugins; mod loaders take mods. Modded cores require at least 4 GB RAM.
Change a server's core/version while it's stopped with updateVersion(id, { type, version }).
Adding mods & plugins
Attach a project from Modrinth or CurseForge (CurseForge requires an operator API key to be configured). The platform resolves and installs the right file, and keeps the install manifest tidy across restarts.
// Add Sodium from Modrinth (latest compatible version)
await client.mods.add("my-smp", { source: "modrinth", projectId: "sodium" });
// Pin a specific version
await client.mods.add("my-smp", {
source: "modrinth",
projectId: "sodium",
versionSpec: "0.5.11",
});
// List, then remove
const mods = await client.mods.list("my-smp");
await client.mods.remove("my-smp", { source: "modrinth", projectId: "sodium" });truetick mods add my-smp --source modrinth --project sodium --version 0.5.11
truetick mods list my-smp
truetick mods remove my-smp --source modrinth --project sodiumAdding/removing mods rewrites the desired mod set; the change is reconciled the next time the server starts (or restart to apply immediately). Your own manually-uploaded jars are preserved — only the managed manifest entries are reconciled.
Browsing for projects? The public catalog endpoints (/v1/catalog/projects,
/v1/catalog/modpacks) let you search Modrinth/CurseForge by query, server type, and Minecraft
version without a server. They're public lookups — see the API Reference.
Modpacks (autoinstall)
You can create a server directly from a modpack — the platform pre-installs the whole pack before the server is billable. Supply the modpack platform, reference, and version when creating:
curl -X POST https://api.truetick.gg/v1/servers \
-H "x-api-key: $TRUETICK_API_KEY" \
-H "content-type: application/json" \
-d "{
\"id\": \"atm10\", \"name\": \"atm10\",
\"hostname\": \"atm10.truetick.gg\", \"container\": \"mc_atm10\", \"addr\": \"\",
\"accountId\": \"$ACCOUNT_ID\",
\"ramMb\": 8192, \"type\": \"NEOFORGE\",
\"modpackPlatform\": \"modrinth\",
\"modpackRef\": \"all-the-mods-10\",
\"modpackVersion\": \"latest\"
}"During the pre-install the server is in the installing state. Install time isn't metered — you're
not charged for the download/setup, only for runtime once it's up. If a pack fails to install, the
server enters install_failed and exposes installError; you can fix inputs and retry the install
(…:retry-install) without recreating the server.
Large modpacks take longer to cold-start (modded servers get up to a 10-minute start window) and need
more RAM. Size the server accordingly — 8192+ MB is sensible for a big pack.