Features
Salmon keeps Paper’s plugin foundation and adds a focused layer of optimization and operator tooling on top. Every section below is marked as a safe default or an option that can change your world — read the caveats before you flip a switch.
Per-chunk spawn caps
Limits newly spawned primed TNT and hostile, passive, water, and ambient entities on a per-chunk basis. Starter caps are 16 primed TNT, 32 hostile mobs, 64 passive creatures, 48 water creatures, and 16 ambient creatures per chunk.
Caps apply only to new spawns; they never remove entities already present in a chunk. Set an individual cap to 0 to disable it.
Persistent hostile-mob cleanup
An optional job that can permanently remove matching hostile entities, with controls for entity age, type, distance from players, and protection rules.
Disabled by default. Because removals are permanent, back up your world and review the matching rules carefully before enabling it.
Plugin execution metrics
Reports slow plugin event handlers and scheduled Bukkit tasks so you can see what’s costing tick time.
Metrics are read-only: Salmon does not kill, restart, or rewrite plugins, and it never guarantees that a given plugin is compatible or bug-free.
Redstone optimization
Uses Paper’s Alternate Current implementation by default, which improves redstone dust update throughput on large circuits.
Alternate Current can change update order and affect timing- or location-sensitive contraptions. Choose eigencraft, vanilla, or paper instead in config/salmon-opts.yml if that matters more than raw throughput.
MOTD Builder
Reads MOTD templates from salmon.yml and overrides the server.properties MOTD. Supports & color codes and {online} / {max} placeholders, with separate lines for maintenance mode.
SMP maintenance mode
Toggle with /smp maintenance on|off. Maintenance uses its own dedicated name/UUID allowlist, separate from Minecraft’s normal server whitelist.
Allowlist your staff before enabling maintenance, or they will be locked out along with everyone else.
/salmon commands
Status, script reload, and optional Modrinth plugin search/install, run as an operator or with the salmon.command permission.
Installed plugins require a server restart. Third-party plugins are code — review them before installing.
Salmon Scripts (.slms)
Trusted, English-like scripts placed in salmon-scripts/, run at startup in filename order or reloaded via /salmon scripts reload.
Script commands run with console authority and can modify worlds. Treat .slms files as executable, trusted configuration — only run scripts you wrote or reviewed.
SalmonAPI
A Salmon-specific API that lets plugins register functions callable from .slms scripts and offload asynchronous or background work.
Not present on an unmodified Paper server — plugins built against SalmonAPI expect Salmon specifically.
Modrinth plugin services
/salmon modrinth search and /salmon modrinth install search and install Paper/Spigot plugin projects from Modrinth.
Installed plugins require a restart. Review a project and its dependencies before installing it on a live server.
Chunky pregeneration setup
Salmon can download and prepare a compatible Chunky plugin through Modrinth so Paper discovers it normally.
Salmon does not perform chunk pregeneration itself — Chunky runs the job once installed.
None of this promises a specific outcome
Optimization behavior is configurable, and third-party plugin compatibility is never guaranteed. Salmon does not promise a specific TPS gain, universal stability, zero lag, or automatic recovery. Test destructive options and scripts on a copy of your server with world backups in place first. See the Salmon Scripts guide for the full scripting security notes.