TShock User Group Management Guide
Thank you for reading this guide. We create all of our guides by hand with our users in mind. Each one of our guides are created via a request using our 24/7 Customer Support. We're thankful for all of our users patronage and want to do everything we can to cater to your needs. If you're interested in becoming a member of our services, check out our lowest price highest quality TShock Terraria Servers! If this guide was able to help you, please check out our other guides located on our TShock Terraria Knowledge Base. Thank you!
You should read these guides first:
Introduction
Now that you have verified yourself as a SuperAdmin, you can now start to set up your server into groups. Why would you want to do this you ask? Well, you exist as the ONLY SuperAdmin in your server. Say you want to hire or allow voulenteer moderators to run the server while you're gone. TShock does not have a default Admin or Moderator user permission group predefined, so you must make these groups yourself. You may also assign permissions to specific groups, allowing them to use specific commands, edit protected regions, or be given notifications based on user triggers. The sky is the limit when you mix groups with the nearly infinite amount of TShock Plugins available at your disposal. When you're done reading this guide, you will know everything there is to know about user management with groups.
Group Commands
To edit user groups, the basic command is /group. Then, there are subcommands to specify what you want to do with the group.
Adding and Deleting Groups
There are three groups that are predefined in TShock Terraria: "guest" "default" and "superadmin."
To add a group it's a simple as pressing enter to open up your console and typing /group add. Say I want to set up an Admin group with all permissions. To do so, I'd type this:
/group add Admin *
Then, I realize that if somehow, someone gets placed into this group by accident, they'd be too overpowered. This could lead to some real disappointment. I think to myself, "Better stay with a SuperAdmin login." So, I'd type:
/group del Admin
This would delete the Admin User group.
Adding and Removing Permissions from Groups
To add permissions, assume we have the Admin and Moderator groups made. Say that I'd want both of these groups to be able to kick, and ban users, while also being immune to kicks and bans themselves. I would do so by adding permissions to the groups by typing:
note: While you can string together multiple permissions by separating them with a comma, unless you have a mod that extends your character limit in your console, that will not work with these commands as they are too long to write.
/group addperm Admin tshock.admin.kick
/group addperm Admin tshock.admin.ban
/group addperm Admin tshock.admin.noban
/group addperm Admin tshock.admin.nokick
/group addperm Moderator tshock.admin.kick
/group addperm Moderator tshock.admin.ban
/group addperm Moderator tshock.admin.nokick
/group addperm Moderator tshock.admin.noban
Then you think to yourself, "What if one of my moderators abuses their power, I'd want to be able to temporarily ban them so that I can at least undo the changes they've made." Now you must remove their nokick and noban permissions.
/group delperm Moderator tshock.admin.nokick
/group delperm Moderator tshock.admin.noban
A list of ALL TShock Permissions is located here: TShock Permissions List
Parent and Child Permissions
Say you want to make it so all users have access to default commands, Moderators have access to all default and moderator commands, and all Admins have access to all commands. To do so would be very easy using the "parent" group subcommand. You would do this like so:
/group add Moderator <permissions>
/group add Admin *
/group parent Moderator Admin
/group parent default Moderator
Now, All Default users have Default permissions, all Moderators have Default and Moderator Permissions, and all Admins have Admin, Moderator, and Default permissions, and because we used the all wildcard (*) Admins will have access to ALL commands.
Say you want to have VIP classes with Kits, you want them to have Default permissions, then on top of that, their VIP Level permissions, as well as all VIP level permissions which are less than or equal to their VIP Rank. You can do so in the same way by doing this:
/group add VIP1 <permissions>
/group add VIP2 <permissions>
/group parent VIP1 VIP2
/group parent default VIP1
Say you want VIP classes to only have access to their kits. If the only difference between VIP classes is a prefix and a Kit, then instead, you could do:/group add VIP1 <permissions>
/group add VIP2 <permissions>
/group parent default VIP1
/group parent default VIP2
Currently, the only predefined parent and child groups are "guest" and "default." Guest is the parent of default, as all registered members of your server will have both guest permissions, as well as default permissions.
Prefixes and Suffixes
Say you have a plugin that is able to time your users' login time. You could create and add users to groups for that if you wanted to. Let's create some groups and assign seniority ranks by using Prefixes.
/group add >10_hours
/group add 10>x>30_hours
/group add 30>x>100_hours
/group add 100>x>500_hours
/group prefix >10_hours Newbie
/group prefix 10>x>30_hours Greenhorn
/group prefix 30>x>100_hours Artisan
/group prefix 100>x>500_hours Elder
Let's say you want to add titles for achievements. Say, for example, wealth. By whatever metric you choose, you determine the top ten richest users and you want to assign them the "Gold Hoarder" suffix. You'd do so by typing:
/group add top10richest
/group suffix top10richest "Gold Hoarder"