NameLayer: Difference between revisions

link civ
(change source link location)
(link civ)
 
(43 intermediate revisions by 3 users not shown)
Line 1:
[[File:Namelayer Main GUI Example.png|thumb|250px|The overview screen in the in-game NameLayer interface, as shown by <code>[[NameLayer#Interface|/nl]]</code>. Each chestplate is a group, and the material is the player's rank in that group.]]
<onlyinclude><includeonly>{{Main|NameLayer}}
{{Mechanics series}}
</includeonly>
'''NameLayer''' is ana [https://github.com/CivMC/NameLayercommon openplugin sourceon [[Civ]] pluginservers which managesallows for the creation of shared '''NameLayer Groupsgroups''',. oftenAny calledplayer '''nlcan groups'''create ora simplygroup, '''groups'''.and Namelayerthere groupsis allowno sharinglimit [[reinforcements]]on andthe sendingnumber [[Chat|sharedof chatgroups messsages]].a Usersplayer incan be a Namelayermember groupof. canEach begroup assignedhas foura differenttiered roles:rank memberstructure, mod,with admin,players orhaving owner,varying eachlevel comingof withpermissions aninside increasea inparticular permissionsgroup.
</onlyinclude>
 
Groups interact closely with [[Citadel]], which allows reinforcing a block to a specific group. The group a block is reinforced to informs several other plugins. For instance, Citadel protections can be bypassed by players on their group, [[Snitch|snitches]] and [[Bastion|bastions]] will not affect players on their group, and [[Item Exchange|item exchanges]] can be locked to a specific group. Groups can also be used to send chat messages visible [[Chat|only to players on that group]].
 
First introduced in [[Civcraft]], NameLayer has been included in every [[mainline]] civ server since.
== Roles ==
 
== Mechanics ==
Each Namelayer group has four different roles that users can be assigned to: member, mod, admin, or owner. There is also the primary owner role, which can only be held by one member at a time.
 
=== Rank ===
Roles give certain permissions to members assigned to that role. Permissions assigned to each role can be customized by anybody with the <code>PERMS</code> permission (by default, only owners and primary owners).
Groups come with a set of ranks. A widely used set is ''primary owner > owner'' > ''admin'' > ''mod'' > ''member'', but this is not universal across civ servers. Players cannot create, rename, or move the ranks themselves, but they can assign players to different ranks.
 
Each group can have only one primary owner, though primary ownership can be transferred by the current primary owner. Other ranks have no limit on the number of players in them.
== GUI ==
 
=== Permissions ===
Namelayer can be used entirely via commands, but it also offers a GUI which can be easier to use. Use the <code>/nl</code> command to bring up the Namelayer GUI.
Each rank comes with a default set of permissions. The permissions each rank grants can be modified for a particular group.
 
{| class="wikitable"
[[File:Namelayer Main GUI Example.png|thumb|250px|The GUI opened by typing '/nl'.]]
|+Base Namelayer Permissions
 
!Permission
The first screen of the Namelayer GUI shows rows of chestplates. Each chestplate corresponds to a Namelayer group, and the type of chestplate shows your permission level. Leather is member, gold is mod, iron is admin, and diamond is owner or primary owner. The enchanted chestplate shows your default group, which is the group used by [[Citadel]] commands when a group is not specified.
!Description
 
Even though an account can be Owner of any number of NameLayer groups, an account can only be ''Primary Owner'' of up to 15 groups;
after that, group creations and Primary Owner transfers to that account are denied, until groups are either transferred to another account or deleted.
 
One can get around this limit by owning multiple accounts and adding the actively used accounts as Owner (instead of Primary Owner, which is one of the alt accounts).
 
== Unique Usernames ==
 
Although minecraft allows updating your account name, namelayer mechanics rely on a player's username being unique. Namelayer will use whatever username you first log in with. Changing your minecraft account username will not change it on your namelayer groups.
 
If a player logs in with a username which is already in use in a namelayer group on the server, that player's displayed name will have a "1" appended to it.
 
== Commands ==
 
{|class="wikitable"
|+ class="nowrap" | Namelayer Commands
!width="30%"| Namelayer command
!width="70%"| Function
|-
|<code>LIST_PERMS</code>
|/nlcg <group> [password]
|Allows seeing how the permissions are set up for the group
| Creates a group, optionally with password
|-
|<code>GROUPSTATS</code>
| /nlsp <group> <password>
|Gives access to various group statistics such as member counts by permission type, who owns the group etc
| Adds password to an existing group
|-
|<code>OPEN_GUI</code>
| /nljg <group> <password>
|Allows Joinsopening athe passwordGUI protectedfor this group
|-
|<code>JOIN_PASSWORD</code>
| /nlag <group>
|perm level given to members when they join with a password
| Accepts an invitation to a group
|-
|<code>MEMBERS</code>
| /nlbl <group> <player>
|Allows inviting new members and removing existing members
| Blacklists a player in a group
|-
|<code>MODS</code>
| /nldg <group>
|Allows inviting/promoting new members and removing existing mods
| Deletes a group
|-
|<code>ADMINS</code>
|/nlip <group> <player> (PlayerType- default MEMBERS)
|Allows inviting/promoting new members and removing existing admins
| Invites player to a group with optional rank
|-
|<code>OWNER</code>
| /nlleg <group>
|Allows inviting/promoting new members and removing existing owners
| Leaves a group
|-
|<code>BLACKLIST</code>
| /nllink <super group> <\sub group>
|Allows viewing this groups blacklist, adding players to the blacklist and removing players from the blacklist
| Links two groups to each other as nested groups. (unsupported)
|-
|<code>PASSWORD</code>
| /nlmg <The group left> <The group that will be gone>
|Allows viewing this groups password and changing or removing it");
| Merges two groups together. (Warning : Doing this is not recommended and may eventually cause groups to break)
|-
|<code>PERMS</code>
|/nlmp <group> <add/remove> <PlayerType> <PermissionType>
|ModifiesAllows themodifying permissions offor athis group.
|-
|<code>DELETE</code>
| /nlpp <group> <player> <playertype>
|Promotes/DemotesAllows adeleting Player in athis group
|-
|<code>LINKING</code>
| /nlrg <group>
|(on servers that support it) Allows linking this group to another group as a supergroup or a subgroup
| Rejects an invitation to a group.
|-
|<code>MERGE</code>
| /nlubl <group> <player>
|(on servers that support it) Allows merging this group into another or merging another group into this one
| Removes a player from the blacklist for a group
|}
Other [[plugins]] can add permissions to groups, which are not a part of the base NameLayer plugin. These permissions act the same as the base permissions in that they can be modified on a per-group basis. The permissions provided by the most common plugins are listed below. Note that there may be permissions in this table which are not present on a civ server, and vice versa, depending on which plugins a particular server includes.
{| class="wikitable"
|+Additional Namelayer Permissions
!Provided By
!Permission
!Description
|-
! rowspan="5" |[[Bastion]]
| /nlrm <group> <member>
|<code>BASTION_PEARL</code>
| Removes a member from a group.
|Can pearl into bastion fields
|-
|<code>BASTION_ALLOW_EXILED</code>
|/nlri <group> <player>
|Allows exiles inside bastion range
| Revokes an invite
|-
|<code>BASTION_PLACE</code>
|/nlsdg <group>
|Can Setsplace orin changesbastion defaultranges reinforced to group
|-
|<code>BASTION_LIST</code>
|/nltaai
|Can list bastions on group (/bsl)
|Toggles the auto-acceptance of invites
|-
|<code>BASTION_MANAGE_GROUPS</code>
| /nltg <group> <player>
|
| Transfers a group to another owner
|-
! rowspan="8" |[[Citadel]]
|/nlunlink </super group> </sub group>
|<code>DOORS</code>
|Unlinks two groups from each other. [Unsupported]
|Can open and close reinforced doors
|-
|<code>ACIDBLOCK</code>
| /nlun [CONFIRM]
|Can place acidblocks reinforced to group (/ctacid)
| Updates account name on the server to the one minecraft account currently has [Unsupported]
|-
|<code>CROPS</code>
| /nllg
|Can place and destroy crops
| Lists all groups player is in. Formatted "<group> : <permission level>"
|-
|<code>INSECURE_REINFORCMENT</code>
| /nlgdg
|Can use hoppers to take items out of reinforced containers /ctinsecure
| Gets default group
|-
|<code>REINFORCEMENT_INFO</code>
|/nlgls
|Can use /cti and see group block reinforced to
|Gets the amount of groups on server
|-
|<code>BYPASS_REINFORCEMENT</code>
|/nlgs <group>
|Can use /ctb and break reinforcement, returning reinforcement item
| Get stats about a group. (Total members and list of members)
|-
|<code>REINFORCE</code>
| /nlid
|Can /ctf, /ctb blocks
| Infodump including list of members for each role level in each group
|-
|<code>CHESTS</code>
| /nllci
|Can use chests
| Lists players current active invites.
|-
! rowspan="2" |[[Factory|FactoryMod]]
| /nllm <group> (PlayerType)
|<code>UPGRADE_FACTORY</code>
| List the players with selected role in a group
|Can upgrade factories
|-
|<code>USE_FACTORY</code>
| /nllp <group> <PlayerType>
|Can use factory reinforced to group
| Shows permissions for a PlayerType in a group.
|-
! rowspan="8" |[[Snitch]]
| /nlsbl <group>
|<code>CLEAR_SNITCHLOG</code>
|Shows all blacklisted players for a group
|Can clear snitchlog with /jaclear
|}
 
== Permissions ==
{|class="wikitable"
|+ class="nowrap" | Namelayer Permissions (ordered as they appear in the GUI)
!width="30%"| Permission Name
!width="70%"| Function
|-
|<code>SNITCH_NOTIFICATIONS</code>
| LIST_PERMS
|Can see chat messageswhen players trigger snitches
| Can list the permissions of any PlayerType
|-
|<code>SNITCH_IMMUNE</code>
| OPEN_GUI
|Will no longer cause snitch alerts when in range of snitches on group.
| Can open namelayer GUI for group
|-
|<code>READ_SNITCHLOG</code>
| BASTION_PEARL
| Can pearlcheck intosnitchlogs bastionwith fields/ja
|-
|<code>SNITCH_TOGGLE_LEVER</code>
| BASTION_ALLOW_EXILED
|Can do /jaToggleLevers 1 to allow snitchs triggering redstone
| Allows exiles inside bastion range
|-
|<code>LIST_SNITCHES</code>
| MERGE
|can /jalist to see all snitches on group
| Can merge group with another group they have MERGE permissions on [Note: Does Merge group work as intended?]
|-
|<code>LOOKUP_SNITCH</code>
| DOORS
| Can open/jalookup anda closesnitch reinforcedgiving doorscoords
|-
|<code>RENAME_SNITCH
| ADMINS
|Can rename snitches</code>
| Allow inviting admins and removing existing admins
|-
! rowspan="2" |[[Chat]]
|CLEAR_SNITCHLOG
|<code>READ_CHAT</code>
| Can clear snitchlog with /jaclear
|Can read chat messages sent in group
|-
|<code>WRITE_CHAT</code>
|SNITCH_NOTIFICATIONS
|Can type messages in group
| Can see chat messageswhen players trigger snitches
|-
![[Kira]]
|JOIN_PASSWORD
|<code>KIRA_MANAGE_CHANNEL</code>
| Perm level given to members when they join with a password
|Can setup Kira relays on discord to relay group messages and alerts
|}
 
== Special groups ==
 
=== Personal group ===
Each player is automatically given a ''personal group'' upon joining the server for the first time, whose name is the same as the player. A personal group is no different from a normal group, except that it is automatically created for players.
 
By default, a player's personal group is also their default group.
 
=== Default group ===
Each player has a ''default group'', which is the group used by commands when no group is specified. This is the player's personal group by default, but can be changed with the <code>/nlsdg</code> command, or from [[NameLayer#Interface|the interface]].
 
=== Global group ===
A ''global group'' is a group intended to provide a global chat, effectively bypassing the [[Chat|distance restriction of chat messages]]. This group is usually called <code>!</code> or <code>g</code>.
 
The concept of a global group was first introduced in [[Devoted]], where the global group was player-owned and managed, requiring players to join with a publicly shared password. On [[CivClassic]] and proceeding mainline server, global chat was cemented as a gameplay mechanic, with the group being owned by the server and players automatically added to it when they first join.
 
== Interface ==
[[File:Namelayer group management.png|thumb|The group screen in the <code>/nl</code> interface. Each chestplate is a member of the group, with rank shown by the chestplate's material. Various group management and display options are shown in the top and bottom rows respectively.]]
While groups can be managed entirely via commands, there is also an in-game interface which can be brought up with the <code>/nl</code> command.
 
In this interface, the material of a chestplate correspond to a player's rank in a group. Leather is member, gold is mod, iron is admin, and diamond is owner or primary owner. An enchanted chestplate denotes the player's [[NameLayer#Default group|default group]].
 
The first <code>/nl</code> screen is the overview screen, which shows all groups the player is a member of. Chestplate material denotes the player's rank in that group. Clicking on a chestplate will bring up the group screen.
 
The group screen shows all members of that group and their respective ranks.
 
== Command Reference ==
 
{|class="wikitable"
|+ class="nowrap" |
!Category
! width="30%" | Command
!width="70%"| Description
!Alias
|-
! rowspan="2" |Info
|LINKING
|<code>/help namelayer [page]</code>
|Linking to another group as supergroup or subgroup [Unsupported]
|Lists all NameLayer commands.
|{{n/a}}
|-
|<code>[[NameLayer#Interface|/nl]]</code>
|OWNER
|Brings up the in-game NameLayer interface.
| Can invite new owners and remove existing owners
|{{n/a}}
|-
! rowspan="9" |Personal
|DELETE
| <code>/nllg</code>
| Can delete group
|Lists all groups the player is in.
|<code>/listgroups</code><br><code>/groups</code>
|-
|<code>/nljg <group> <password></code>
|READ CHAT
|Joins a group. Only groups with a password can be joined with this command.
| Can read chat messages sent in group
|<code>/joingroup</code>
|-
|<code>/nlleg <group></code>
|MODS
|Leaves a group.
| Can invite new owners and remove existing owners
|<code>/leave</code><br><code>/leavegroup</code>
|-
|<code>/nlgdg</code>
|ACIDBLOCK
|Gets the player's [[#Default group|default group]].
| Can place acidblocks reinforced to group (/ctacid)
|{{n/a}}
|-
|<code>/nlsdg <group></code>
|CROPS
|Sets the player's [[#Default group|default group]].
| Can place and destroy crops
|{{n/a}}
|-
|<code>/nllci</code>
|UPGRADE_FACTORY
|Lists the player's pending invititations.
| Can upgrade factories
|<code>/invites</code><br><code>/listinvites</code>
|-
|<code>/nlag <group></code>
|MEMEMANA_WITHDRAW
|Accepts a pending invitation to a group.
| Can withdraw mana
|<code>/join</code><br><code>/accept</code><br><code>/acceptgroup</code><br><code>/acceptinvite</code>
|-
|<code>/nlrg <group></code>
|SNITCH_IMMUNE
|Rejects a pending invitation to a group.
| Will no longer cause snitch alerts when in range of snitches on group.
|<code>/reject</code><br><code>/rejectinvite</code>
|-
|<code>/nltaai</code>
|BASTION_PLACE
|Toggles the auto-acceptance of group invitations.
| Can place in bastion ranges reinforced to group
|<code>/autoaccept</code>
|-
! rowspan="14" |Management
|WRITE_CHAT
| <code>/nlcg <group> [password]</code>
| Can type messages in group
| Creates a group. If <code>[password]</code> is not supplied, only players with an invitiation can join.
|<code>/create</code><br><code>/creategroup</code>
|-
|<code>/nlip <group> <player> [rank]</code>
|READ_SNITCHLOG
|Invites a player to a group. <code>[rank]</code> defaults to member.
| Can check snitchlogs with /ja
|<code>/invite</code><br><code>/inviteplayer</code>
|-
|<code>/nlri <group> <player></code>
|MEMBERS
|Revokes an invitation of a player to a group.
| Can invite new members and remove existing members
|<code>/revoke</code><br><code>/revokeinvite</code>
|-
| <code>/nlrm <group> <member></code>
|PERMS
| CanRemoves adjusta allmember permissionsfrom ina group (Dangerous).
|<code>/remove</code><br><code>/removeplayer</code>
|-
|USE_FACTORY
| Can use factory reinforced to group
|-
|INSECURE_REINFORCMENT
| Can use hoppers to take items out of reinforced containers /ctinsecure
|-
|SNITCH_TOGGLE_LEVER
| Can do /jaToggleLevers 1 to allow snitchs triggering redstone
|-
|BASTION_LIST
| Can list bastions on group (/bsl)
|-
|REINFORCEMENT_INFO
| Can use /cti and see group block reinforced to
|-
|BYPASS_REINFORCEMENT
| Can use /ctb and break reinforcement, returning reinforcement item
|-
| <code>/nlbl <group> <player></code>
|REINFORCE
| Adds a player to the blacklist for a group.
| Can /ctf, /ctb blocks
|<code>/blacklist</code>
|-
| <code>/nlubl <group> <player></code>
|LIST SNITCHES
| canRemoves /jalista toplayer seefrom allthe snitchesblacklist onfor a group.
|<code>/unblacklist</code>
|-
| <code>/nlsbl <group></code>
|BLACKLIST
| CanLists blacklistblacklisted players andfor removea existing blacklisted playersgroup.
|<code>/showblacklist</code>
|-
| <code><nowiki>/nlmp <group> <add|remove> <rank> <permission></nowiki></code>
|PASSWORD
| Adds or removes a permission from a rank in a group.
| Allows viewing this groups password and changing or removing it
|<code>/modifyperms</code>
|-
|<code>/nllp <group> <rank></code>
|GROUPSTATS
|Lists Canpermissions checkof statsa onrank in a group.
|<code>/permissions</code>
|-
| <code>/nlpp <group> <player> <rank></code>
|BASTION_MANAGE_GROUPS
| Sets the rank of a player in a group.
|
|<code>/promote</code><br><code>/promoteplayer</code>
|-
| <code>/nllm <group> [rank]</code><br>
|LOOKUP_SNITCH
| Lists all members of a group. If <code>[rank]</code> is supplied, lists only members with that rank.
| Can /jalookup a snitch giving coords
|<code>/members</code><br><code>/listmembers</code>
|-
| <code>/nlsp <group> <password></code>
|RENAME_SNITCH
| Adds a password to an existing group.
| Can rename snitches
|<code>/setpassword</code>
|-
| <code>/nltg <group> <player></code>
|CHESTS
| Transfers primary ownership of a group to another player.
| Can use chests
|<code>/transfer</code><br><code>/transfergroup</code>
|-
| <code>/nldg <group></code>
|KIRA_MANAGE_CHANNEL
| Deletes a group.
| Can setup Kira relays on discord to relay group messages and alerts
|<code>/delete</code><br><code>/deletegroup</code>
|}
 
2,232

edits