Gameplans: Command System

Commands

There needs to be Commands for Servers, Cheating and such ofcourse. So I am gonna document the ones that came to mind.
(@) means that you can select things like “@(closest player to X Y Z of F)”, “@+” (for Crosshair) or just list multiple Entities to use. It will also take regular Player or Team Names directly if you dont put an @. There will be Selectors for Subcategories too, like @TeamName@RankName for a specific Rank of a Team
Player and Team Names cannot contain actual Spaces when used in commands and will autocomplete to an underscored Version. Teams cannot share the same Name as an existing Player and vice versa.
Names are not allowed to be purely consistent of Numbers and Punctuation, cannot officially contain Spaces (but can display with Spaces ingame), and cannot contain “@” at all, as well as not start with a dash/minus “-”.
Names cannot be any of the following case unsensitive Words: “all”, “any”, “for”, “from”, “and”, “with”, “add”, “set”, “array”, “list”, “rem”, “remove”, “sel”, “select”, “admin”, “operator”, “moderator”
Coordinates can be passed in in a multitude of ways, you can seperate them with Spaces, Commas, Semicolons and similar if needed.
Certain Commands, especially the ones without Parameters can be used in Keybinds too, so you could set your Game Mode with just a Keypress. (You can also make a Cycle Key for multiple Modes back and forth)
There will be ways to give Teams or Ranks/Ranknumbers in Teams access to specific Commands, and since you can be in multiple Teams, those can be used as custom Roles for Servers if needed.

/help Lists all Commands you have access to. Potential alias for this Command is /?

/help (command) Explains the Command passed to it.

/m (@) (…) Sends a direct Message just to the specified Player or to Members of the specified Team, it will quick autofill the target Name with Tab if you used this command before. Potential aliases for this Command are /msg /tell

/me (…) Sends a Message in 3rd person Style.

/yell (…) Yells a Message. How the Server reacts to this Command depends. It can make a Message bypass "Local Chat Range" if that is a thing that is configured to exist, it can also just make your Text be in a Bold Font, or just double/triple/whatever your "Local Chat Range".

/whisper (…) Whispers a Message. It will make a Message use a short "Local Chat Range" no matter what, biased towards the direction you are looking at, and also display it in a Thin Font.

/announce (…) Will send the Message to everyone, no matter the "Local Chat Range". Usually only accessible by Admins, Operators and Moderators.

/rules Lists all Rules on the Server. Typically triggered when you Login with less than 1 Hour of Total Playtime (for cases when you login and get connection errors). Please be aware that there will be a GUI Window for showing the Rules too.

/rules (set) (i) (…) Sets Rule Number (i) on the Server.

/rules (add) (i) (…) Adds a Rule on the Server and puts it at (i), moving all other Rules one down.

/rules (rem) (i) Removes Rule (i) on the Server.

/ban Puts the Player your Crosshair points at on the Ban List, but doesn’t kick them.

/ban (@) Puts a Player or Team on the Ban List, but doesn’t kick them.

/ban (@) (Time) Puts a Player or Team on the Ban List for the specified amount of Time but doesn’t kick them.

/unban Removes the Player your Crosshair points at from the Ban List.

/unban (@) Removes a Player or Team from the Ban List.

/kick Kicks the Player your Crosshair points at from the Server.

/kick (@) Kicks the specified Player or Team from the Server.

/kickban Bans and Kicks the Player your Crosshair points at from the Server. Potential aliases for this Command are /bankick /kban /bkick

/kickban (@) Bans and Kicks the specified Player or Team from the Server.

/kickban (@) (Time) Kicks the specified Player or Team from the Server and bans them for the specified amount of Time.

/admin (@) Marks the specified Player or Team as Admins of the Server. Typically only executable from the Servers Command Line or Config File if there isn’t any Admins yet,

/unadmin (@) Removes Admin Rights from the specified Player or Team.

/operator (@) Marks the specified Player or Team as Operators of the Server. Mostly same rights as Admins, except that they cant appoint new Operators or Admins, nor permanently shut down the Server.

/unoperator (@) Removes Operator Rights from the specified Player or Team.

/moderator (@) Marks the specified Player or Team as Moderators of the Server. They only got access to the kick and (un-)ban related commands, as well as the jail and pardon command, but not the mkjail command.

/unmoderator (@) Removes Moderator Rights from the specified Player or Team.

/shutdown Shuts down the Server in 30 seconds. Usually Admin Only. (yes by default Operators can reboot a Server but they cannot shut it down)

/shutdown (Time) Shuts down the Server after a specified amount of Time (Zero for instant). Usually Admin Only.

/reboot Reboots the Server in 30 seconds. Usually Admin/Operator Only.

/reboot (Time) Reboots the Server after a specified amount of Time (Zero for instant). Usually Admin/Operator Only.

/stop Freezes time on the Server (In case an Invasion or Nuke is about to go off or whatever, Players will not be kicked by this and they can still join/leave too). Usually Admin/Operator Only.

/stop (Time) Freezes time on the Server after a specified amount of Time. Usually Admin/Operator Only.

/unstop Unfreezes time on the Server. Usually Admin/Operator Only.

/unstop (Time) Unfreezes time on the Server after a specified amount of Time. Usually Admin/Operator Only.

/kill Kills whatever Entity your Crosshair Points at.

/kill (@) Kills the specified Entities.

/remove Removes whatever Entity your Crosshair Points at.

/remove (@) Removes the specified Entities.

/rename (@) (…) Renames whatever you selected according to the … Parameter. Names, Teams, Ranks, Regions, Planets, Dimensions, Entities, pretty much anything should work with this.

/makespawn (…) Designates your current location as a World Respawn Point and names it according to the … parameter if given.

/makespawn (x;y;z) (…) Designates the specified location of your current major Frame of Reference as a World Respawn Point and names it according to the … parameter if given.

/makespawn (frame of reference) (x;y;z) (…) Designates the specified location of the specified Frame of Reference as a World Respawn Point and names it according to the … parameter if given.

/setspawn (…) Designates your current location as the first World Spawn Point for new Players and names it according to the … parameter if given.

/setspawn (x;y;z) (…) Designates the specified location of your current major Frame of Reference as the first World Respawn Point for new Players and names it according to the … parameter if given.

/setspawn (frame of reference) (x;y;z) (…) Designates the specified location of the specified Frame of Reference as the first World Respawn Point for new Players and names it according to the … parameter if given.

/tp (x;y) Teleports yourself to the top Surface of the specified X Y Coordinates of your current major Frame of Reference. Potential alias for this Command is /teleport

/tp (x;y;z) Teleports yourself to the specified X Y Z Coordinates of your current major Frame of Reference.

/tp (@) (x;y) Teleports anything that is part of the Selector to the top Surface of the specified X Y Coordinates of your current major Frame of Reference.

/tp (@) (x;y;z) Teleports anything that is part of the Selector to the specified X Y Z Coordinates of your current major Frame of Reference.

/tp (frame of reference) (x;y) Teleports yourself to the top Surface of the specified X Y Coordinates of the specified Frame of Reference.

/tp (frame of reference) (x;y;z) Teleports yourself to the specified X Y Z Coordinates of the specified Frame of Reference.

/tp (@) (frame of reference) (x;y) Teleports anything that is part of the Selector to the top Surface of the specified X Y Coordinates of the specified Frame of Reference.

/tp (@) (frame of reference) (x;y;z) Teleports anything that is part of the Selector to the specified X Y Z Coordinates of the specified Frame of Reference.

/tp (@) (@) Teleports anything that is part of the Selector to the specified target Entity or in a sensible spot right next to it (to avoid collisions).

/mode (camera|design|limited|jail|hardcore|adventure|survival|jail|reset|c|d|l|j|h|a|s|r) Does the same that the following Mode Commands do to yourself, but in parameterized form.

/mode (camera|design|limited|jail|hardcore|adventure|survival|jail|reset|c|d|l|j|h|a|s|r) (@) Does the same that the following Mode Commands do, but in parameterized form.

/c Sets yourself to Camera Mode. (Basically my Version of Minecrafts Spectator Mode)

/c (@…) Sets the selected Players to Camera Mode. Potential alias for this Command is /cameramode

/d Sets yourself to Design Mode. (Basically my Version of Minecrafts Creative Mode)

/d (@…) Sets the selected Players to Design Mode. Potential alias for this Command is /designmode

/l Sets yourself to Limited Mode. (Basically my Version of Minecrafts Adventure Mode)

/l (@…) Sets the selected Players to Limited Mode. Potential alias for this Command is /limitedmode

/j Sets yourself to Jail Mode. (Like Limited Mode, but dedicated to making sure the Players in question are marked as criminals, making their deaths permanent, and their Inventories easily accessible by others)

/j (@…) Sets the selected Players to Jail Mode. Potential alias for this Command is /jailmode

/h Sets yourself to Hardcore Mode. (Survival but only one Life, this doesn’t actually affect difficulty)

/h (@…) Sets the selected Players to Hardcore Mode. Potential alias for this Command is /hardcoremode

/a Sets yourself to Adventure Mode. (A combination of Limited Mode and Hardcore Mode)

/a (@…) Sets the selected Players to Adventure Mode. Potential alias for this Command is /adventuremode

/s Sets yourself to Survival Mode.

/s (@…) Sets the selected Players to Survival Mode. Potential alias for this Command is /survivalmode

/r Sets yourself to whichever Mode you had before if you are allowed to.

/r (@…) Resets the selected Players to whichever Mode they had before if you are allowed to set it for them. Potential alias for this Command is /resetmode

/maketeam (…) Creates a Team and names it according to the … parameter.

/join (@) Requests for yourself to join the specified Team (or instantly joins it if allowed, but at the lowest rank).

/join (@) (@…) The second Parameter will join the Team specified in the first Parameter. Will also accept a Space seperated List of Players.

/color (0xFFFFFF) Sets your Name Color. This will however NOT influence the Color of the Text you write like the stupid unreadable way Factorio does it.

/color (0xFFFFFF) (@) Sets the Name Color of the specified Targets or Team. A Players own choice overrides Team Color, but there will be Team Colored Indicators to the sides of their Name (or even multiple if they are part of more than one Team).

/uncolor Resets your Name Color, so that Default or Team Colors apply.

/uncolor (@) Resets the Name Color of the specified Targets or Team, so that Default or Team Colors apply. If a Team is specified it will remove the Teams Color itself.

/hide Hides your alignment to any Teams from others.

/hide (@…) Hides your alignment to the specified Teams from others.

/unhide Shows your alignment to all Teams again.

/unhide (@…) Shows your alignment to the specified Teams again.

/teamrules Lists all Rules of the Teams you are in. Please be aware that there will be a GUI Window for showing the Rules too.

/teamrules (@) Lists all Rules of the Team.

/teamrules (@) (set) (i) (…) Sets Rule Number (i) of the Team. Can only be set by Members with Rank 0.

/teamrules (@) (add) (i) (…) Adds a Rule of the Team and puts it at (i), moving all other Rules one down. Can only be set by Members with Rank 0.

/teamrules (@) (rem) (i) Removes Rule (i) of the Team. Can only be set by Members with Rank 0.

/makerank (@) (Number) (Unicode Char used as Icon) (…) Creates a Rank for the passed Team, gives it a Number (0 = Leader, Floating Point Numbers allowed for inbetweens, Higher Number = Lower Rank) and the Unicode Character used for its Icon, and names it according to the … parameter.

/rank (@) (rank) (@…) Sets the Rank in the passed Team to the specified Value for the selected Players. You can only set other Members from/to Ranks lower than your own, unless you are the Team Leader, Server Admin or Operator. This may also make the passed Players automatically join the Team if they were not in it before.

/promote (@) Gives the Player on your Crosshair a Rank that is one better than their previous Rank, as long as you are permitted by the /rank Command to do so for the passed Team. You cannot use this to accidentially make someone Team Leader if you happen to be Team Leader.

/promote (@) (@…) Gives the passed Players a Rank that is one better than their previous Rank, as long as you are permitted by the /rank Command to do so for the passed Team. You cannot use this to accidentially make someone Team Leader if you happen to be Team Leader.

/demote (@) Gives the Player on your Crosshair a Rank that is one worse than their previous Rank, as long as you are permitted by the /rank Command to do so for the passed Team.

/demote (@) (@…) Gives the passed Players a Rank that is one worse than their previous Rank, as long as you are permitted by the /rank Command to do so for the passed Team.

/rankrules Lists all Rules specific to your own Rank in all Teams you are in. Please be aware that there will be a GUI Window for showing the Rules too.

/rankrules (@) Lists all Rules specific to your own Rank.

/rankrules (@) (rank) Lists all Rules specific to that Rank.

/rankrules (@) (rank) (set) (i) (…) Sets Rule Number (i) of the Rank. Can only be set by Members with higher Ranks.

/rankrules (@) (rank) (add) (i) (…) Adds a Rule of the Rank and puts it at (i), moving all other Rules one down. Can only be set by Members with higher Ranks.

/rankrules (@) (rank) (rem) (i) Removes Rule (i) of the Rank. Can only be set by Members with higher Ranks.

/makejail (…) Designates your current location as a Jail and names it according to the … parameter.

/makejail (x;y;z) (…) Designates the specified location of your current major Frame of Reference as a Jail and names it according to the … parameter.

/makejail (frame of reference) (x;y;z) (…) Designates the specified location of the specified Frame of Reference as a Jail and names it according to the … parameter.

/jail Sends whatever Entity your Crosshair Points at to the closest empty Jail Cell and for Players sets their Game Mode to Jail Mode.

/jail (@) Sends the selected Entities to the closest empty Jail Cell and for Players sets their Game Mode to Jail Mode.

/jail (@) (jailname) Sends the selected Entities to the specified Jail and for Players sets their Game Mode to Jail Mode.

/pardon Releases whatever Entity your Crosshair Points at from Jail Mode. You might still need to open the Jail Door itself manually to let them out though. Unless I add a dedicated Jail Door that is smart with that.

/pardon (@) Releases the selected Entities from Jail Mode. You might still need to open the Jail Door itself manually to let them out though. Unless I add a dedicated Jail Door that is smart with that.

Servers need Commandline Stuff, so here I got a few Ideas I did not wanna forget for Commands. ^^

It is probably better formatted on the Game Plans (Ideas) Page, just look for the Commands Paragraph further down

2 Likes

Hello, maybe it’s still worth thinking about Word Edit commands for specific user groups ?

3 Likes

Oh yes those need to exist too, shouldn’t have forgotten those. XD

2 Likes

Instead of dedicated commands, MC-style, why not go Factorio(quake/unreal/etc…etc…etc…) style where you have a console/command directly into the runtime with full control thereof (if permissions allow)?

1 Like

So you mean the “execute code” command? That would be a fine addition, but dedicated commands are needed for easier permission management and easier usage, I cant just put that execute command as an “instead of”.

1 Like

I cant just put that execute command as an “instead of”.

I’ve no clue what you are trying to say here? o.O

I mean literally a console, like what you see in quake or so, like imagine hitting the ` key (super common in games for the console), then just type ban 1.2.3.4, which would run the ban command in the shell namespace with that argument.

1 Like