Legacy Commands
Deep reference for the Legacy SIR command families, their files, permissions, player data, and the naming changes that matter during migration.
Legacy command reference
Legacy SIR stores command behavior under plugins/SIR/resources/commands/. Unlike Modern SIR, the old branch does not present everything as standalone providers in the repository. Instead, behavior is assembled from:
- the global registry in
commands.yml - top-level command files such as
sir.ymlorprint.yml - dedicated data folders for commands that persist player state or GUI layouts
The global registry
resources/commands/commands.yml is the legacy source of truth for the whole command layer.
What it controls
- whether each command family is enabled
- aliases
- base permission nodes
- child command dependencies
- generic messages such as no-permission or invalid-target feedback
Why it matters
On Legacy, you cannot audit permissions by reading only plugin.yml. Many of the day-to-day command nodes that staff actually use are declared or reinforced here.
Migration impact
This file is one of the biggest reasons permission audits break during upgrades. Legacy names like sir.chatcolor and sir.clearchat do not map one-to-one into Modern or SIR+.
/sir
/sir is the umbrella admin command in Legacy just like it is in newer branches, but its child actions and node names belong to the older model.
Files
sir.yml- shared registration details in
commands.yml
Main permissions
sir.adminsir.admin.aboutsir.admin.modulessir.admin.helpsir.admin.reloadsir.admin.update
What it offers
- plugin info and version output
- module status listing
- help output for administrators
- reload flow
- update or support-facing actions
Important differences from Modern
sir.admin.updateis a Legacy-era habit that does not stay as a stock node in the same way later- there is no
/sir commandsand/sir addonssplit like in Modern and SIR+ - staff are working with the old
resources/tree rather thanmodules/states.ymlandcommands/states.yml
/announcer
This is the command family that operates the old announcements system.
Files
announcer.yml- paired module files in
resources/modules/announcements/
Main permissions
sir.announcersir.announcer.helpsir.announcer.previewsir.announcer.startsir.announcer.stopsir.announcer.reboot
What it offers
- preview the next broadcast
- start the automated announcer
- stop the task without restarting the server
- reboot the rotation state
- view command help
Why it matters
Legacy staff often treat announcements as a command-first feature. In Modern and SIR+, the equivalent user-facing command is /announce, but the feature is more obviously module-owned.
/print
/print is one of the most flexible staff tools in the Legacy branch.
Files
print.yml
Aliases
rawmsgrm
Main permissions
sir.printsir.print.targetssir.print.chatsir.print.action-barsir.print.titlesir.print.webhook
What it offers
- send raw output to chat, action bar, or titles
- target specific players or groups
- use selectors such as player name,
@a,world:...,perm:..., orgroup:... - integrate with webhook-style targets when paired with root
webhooks.yml
Why operators relied on it
It is the old branch's Swiss-army knife for broadcasting or testing output formatting. If staff used it heavily, verify its modern equivalent before assuming all selectors still behave identically.
/chatview
This command family controls per-player channel visibility in the Legacy chat model.
Files
chat_view/data.ymlchat_view/lang.yml
Main permission
sir.chatview
What it offers
- lets players or staff adjust whether channel output is visible
- persists per-player view state in
data.yml - stores feedback text in
lang.yml
Migration notes
This no longer stays a standalone top-level family in newer branches. It becomes the module-owned /chat-view command inside channels.
/chatcolor
This is the Legacy color and style selection family.
Files
chat_color/data.ymlchat_color/lang.ymlchat_color/menu.yml
Main permission
sir.chatcolor
Typical aliases
colorcc
Derived permissions
Legacy commonly exposes color or style gates such as:
sir.chatcolor.blacksir.chatcolor.boldsir.chatcolor.italicsir.chatcolor.gradientsir.chatcolor.reset
What it offers
- persisted player chat-color state
- menu-driven selection through
menu.yml - language feedback on apply, reset, or invalid choice
- permission-based access to colors and styles
Migration notes
This becomes the color provider later:
- command surface becomes
/chat-color - base node becomes
sir.color - state moves into
users/chat-color.yml
If your permission plugin still references sir.chatcolor.*, plan the rename carefully.
/ignore
This command family manages personal ignore relationships.
Files
ignore/data.ymlignore/lang.yml
Main permission
sir.ignore
Alias
ig
What it offers
- add a player to the ignore list
- remove a player from the ignore list
- persist ignore state in
data.yml - surface feedback through
lang.yml
Why it matters in migration
The feature survives conceptually into Modern and SIR+, but the storage path is normalized and sits alongside other user files instead of inside the Legacy command folder.
/clearchat
This command family clears public chat for moderation.
Files
clear-chat.yml
Main permission
sir.clearchat
Alias
cc
What it offers
- wipe recent public chat noise
- show dedicated help or confirmation messages
- keep a small but operationally useful moderation surface
Migration notes
This is one of the most visible naming changes:
- Legacy command habit:
/clearchat - Modern and SIR+ command habit:
/clear-chat - Legacy base node:
sir.clearchat - Modern and SIR+ base node:
sir.clear-chat
/msg and /reply
This pair controls private player-to-player messaging.
Files
msg-reply.yml
Main permissions
sir.messagesir.reply
Aliases
/msg:m,message,tell/reply:r
What it offers
- sender and receiver formatting
- optional sounds
- console-side formatting rules
- vanish-aware blocking behavior
- reply continuity so players do not need to type the target again
Why this file is richer than it looks
msg-reply.yml is not just alias storage. It usually controls privacy behavior, feedback style, and the actual user experience of private messages.
Migration notes
Modern and SIR+ keep the same functional idea but model it as the message provider with separate /message and /reply definitions.
Mute suite
The Legacy mute tools are grouped together through the mute folder and shared data files.
Files
mute/data.ymlmute/lang.yml
Commands
/mute/tempmute/unmute/checkmute
Main permissions
sir.mute.permsir.mute.tempsir.unmutesir.checkmute
What it offers
- permanent mute workflow
- temporary mute workflow
- mute removal
- mute lookup
- persisted mute state in
data.yml
Migration notes
The command family survives, but permission names become cleaner:
sir.mute.permbecomessir.mutesir.mute.tempbecomessir.temp-mutesir.checkmutebecomessir.check-mute
These are easy to miss in LuckPerms or any permission sync system.
Legacy command audit checklist
Before leaving Legacy behind:
- export the effective permission nodes your ranks actually use
- compare them with Modern or SIR+ names
- document the renamed command labels for staff
- verify player data migration for ignore, mute, chat view, and chat color
- test
/print,/msg, and/announcerexplicitly because staff usually notice those first
Legacy Modules
Deep reference for every Legacy SIR module folder, including what each file controls and how each feature maps into newer branches.
Commands & Permissions
Audit the modern SIR admin command tree, shipped command nodes, and the permission differences from Legacy.
Last updated on