BitAspire Wiki
SIRSIR

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.yml or print.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.admin
  • sir.admin.about
  • sir.admin.modules
  • sir.admin.help
  • sir.admin.reload
  • sir.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.update is a Legacy-era habit that does not stay as a stock node in the same way later
  • there is no /sir commands and /sir addons split like in Modern and SIR+
  • staff are working with the old resources/ tree rather than modules/states.yml and commands/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.announcer
  • sir.announcer.help
  • sir.announcer.preview
  • sir.announcer.start
  • sir.announcer.stop
  • sir.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

  • rawmsg
  • rm

Main permissions

  • sir.print
  • sir.print.targets
  • sir.print.chat
  • sir.print.action-bar
  • sir.print.title
  • sir.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:..., or group:...
  • 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.yml
  • chat_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.yml
  • chat_color/lang.yml
  • chat_color/menu.yml

Main permission

  • sir.chatcolor

Typical aliases

  • color
  • cc

Derived permissions

Legacy commonly exposes color or style gates such as:

  • sir.chatcolor.black
  • sir.chatcolor.bold
  • sir.chatcolor.italic
  • sir.chatcolor.gradient
  • sir.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.yml
  • ignore/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.message
  • sir.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.yml
  • mute/lang.yml

Commands

  • /mute
  • /tempmute
  • /unmute
  • /checkmute

Main permissions

  • sir.mute.perm
  • sir.mute.temp
  • sir.unmute
  • sir.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.perm becomes sir.mute
  • sir.mute.temp becomes sir.temp-mute
  • sir.checkmute becomes sir.check-mute

These are easy to miss in LuckPerms or any permission sync system.


Legacy command audit checklist

Before leaving Legacy behind:

  1. export the effective permission nodes your ranks actually use
  2. compare them with Modern or SIR+ names
  3. document the renamed command labels for staff
  4. verify player data migration for ignore, mute, chat view, and chat color
  5. test /print, /msg, and /announcer explicitly because staff usually notice those first

Last updated on

On this page