Skip to main content

EternalTD Commands

EternalTD registers the root command:

/eternaltd
/etd

The Nightbreak token command used during setup is separate:

/nightbreaklogin <token>

Setup and Content Management

CommandSenderCurrent purpose
/etdAnyPrints the current setup/content quick-start help. Although the command class sets eternaltd.*, the command manager's no-args path executes it without checking permissions, so it works for all senders.
/etd initializePlayerNot registered in the current build (hasPresetModes=false causes NightbreakPluginBootstrap to skip registering this command, and the first-time setup spec passes null for the initialize command so the setup warner does not reference it either). First-time setup is handled automatically or via /etd setup.
/etd setupPlayerOpens the EternalTD package browser
/etd downloadallAnyDownloads all accessible EternalTD Nightbreak packages
/etd updatecontentAnyDownloads updates for outdated EternalTD packages
/etd updateallAnyAlias for /etd updatecontent
/etd installAnyApplies the official EternalTD resource-pack setup
/etd reloadAnyReloads imported EternalTD content and refreshes FMM imports if present

Admin note:

  • The setup/content commands above are currently coded as admin-facing commands.
  • setup, downloadall, updatecontent/updateall, reload, cheat, setwave, selectfloor, selectfloorcoordinates, register, register start, and register end all require the eternaltd.* permission.
  • initialize is not registered in the current build (hasPresetModes=false), so its permission does not apply.
  • install, showselection, join, start/go, and quit/stop do not require eternaltd.*.
  • The base /etd command (no subcommand) has eternaltd.* set on its command class, but the command manager's no-args dispatch path executes it without checking permissions. In practice it works for all senders.

Gameplay Commands

CommandSenderCurrent purpose
/etd join <level>PlayerStarts a new level session from a loaded level file
/etd startPlayerStarts the active session's first wave
/etd goPlayerAlias for /etd start
/etd quitPlayerEnds your current level session
/etd stopPlayerAlias for /etd quit

Debug and Admin Gameplay Commands

CommandSenderCurrent purpose
/etd cheatPlayerToggles cheat mode for the active session
/etd setwave <wave>PlayerSkips the active session to a specific wave

These are not normal player setup commands. They are session/debug tools.

Map Authoring Commands

These commands are still present in the current codebase for floor selection and level registration work.

CommandSenderCurrent purpose
/etd selectfloorPlayerStarts or stops floor-corner selection with clicks
/etd selectfloorcoordinates <x1> <y1> <z1> <x2> <y2> <z2>PlayerSets the selection region directly from coordinates
/etd showselection <level>PlayerShows the current registered selection for a level
/etd register <level>PlayerRegisters the selected floor region to a level
/etd register <level> startPlayerAdds a start location to a level
/etd register <level> endPlayerAdds an end location to a level

Notes

  • EternalTD's plugin.yml only declares the root command. Subcommands are registered through the command manager at runtime.
  • Some usage strings inside the current command classes still reference older command text. The command names documented on this page reflect the actual registered subcommands.