summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--conf/groups.conf425
1 files changed, 139 insertions, 286 deletions
diff --git a/conf/groups.conf b/conf/groups.conf
index 60271a5b..8ebf7341 100644
--- a/conf/groups.conf
+++ b/conf/groups.conf
@@ -4,7 +4,7 @@ Player groups configuration file
This file defines "player groups" and their privileges.
-Each group has its id and name, lists of available commands and other
+Each group has its id and name, lists of available commands and other
permissions, and a list of other groups it inherits from.
@@ -14,42 +14,42 @@ Group settings
Unique group number. The only required field.
<name>
-Any string. If empty, defaults to "Group <id>". It is used in several @who
+Any string. If empty, defaults to "Group <id>". It is used in several @who
commands.
<level>
-Equivalent of GM level, which was used in revisions before r15572. You can
-set it to any number, but usually it's between 0 (default) and 99. Members of
-groups with lower level can not perform some actions/commands (like @kick) on
-members of groups with higher level. It is what script command getgmlevel()
-returns. Group level can also be used to override trade restrictions
+Equivalent of GM level, which was used in revisions before r15572. You can
+set it to any number, but usually it's between 0 (default) and 99. Members of
+groups with lower level can not perform some actions/commands (like @kick) on
+members of groups with higher level. It is what script command getgmlevel()
+returns. Group level can also be used to override trade restrictions
(db/item_trade.txt).
<commands>
A group of settings
- <command name> : <bool>
+<command name> : <bool>
or
- <commandname> : [ <bool>, <bool> ]
-First boolean value is for atcommand, second one for charcommand. If set to
-true, group can use command. If only atcommand value is provided, false is
-assumed for charcommand. If a command name is not included, false is assumed for
+<commandname> : [ <bool>, <bool> ]
+First boolean value is for atcommand, second one for charcommand. If set to
+true, group can use command. If only atcommand value is provided, false is
+assumed for charcommand. If a command name is not included, false is assumed for
both atcommand and charcommand.
For a full list of available commands, see: doc/atcommands.txt.
Command names must not be aliases.
<log_commands>
-Boolean value. If true then all commands used by the group will be logged to
+Boolean value. If true then all commands used by the group will be logged to
atcommandlog. If setting is omitted in a group definition, false is assumed.
Requires 'log_commands' to be enabled in 'conf/logs.conf'.
<permissions>
A group of settings
- <permission> : <bool>
+<permission> : <bool>
If a permission is not included, false is assumed.
For a full list of available permissions, see: doc/permissions.txt
<inherit>
-A list of group names that given group will inherit commands and permissions
+A list of group names that given group will inherit commands and permissions
from. Group names are case-sensitive.
Inheritance results
@@ -57,121 +57,109 @@ Inheritance results
Both multiple inheritance (Group 2 -> Group 1 and Group 3 -> Group 1) and
recursive inheritance (Group 3 -> Group 2 -> Group 1) are allowed.
-Inheritance rules should not create cycles (eg Group 1 inherits from Group 2,
-and Group inherits from Group 1 at the same time). Configuration with cycles is
+Inheritance rules should not create cycles (eg Group 1 inherits from Group 2,
+and Group inherits from Group 1 at the same time). Configuration with cycles is
considered faulty and can't be processed fully by server.
-Command or permission is inherited ONLY if it's not already defined for the
+Command or permission is inherited ONLY if it's not already defined for the
group.
-If group inherits from multiple groups, and the same command or permission is
-defined for more than one of these groups, it's undefined which one will be
+If group inherits from multiple groups, and the same command or permission is
+defined for more than one of these groups, it's undefined which one will be
inherited.
Syntax
------
-This config file uses libconfig syntax:
+This config file uses libconfig syntax:
http://www.hyperrealm.com/libconfig/libconfig_manual.html#Configuration-Files
-
-0: Player
-1: Trusted Player
-
-20/21: Support (Trusted Player + Common)
-
-40/41: Developer (Support + DEV)
-
-50/51: Event Coordinator (Support + EVTC)
-
-60/61: Game Master (Support + GM)
-
-80/81: Community Coordinator (Support + DEV + EVTC + GM)
-
-99: Administrator (All Perms)
-
-NYI commands:
-hairstyle and haircolor (use @debug-look)
-snow, sakura, clouds, clouds2, fog, fireworks, leaves, clearweather
-changesex (faulty)
-misceffect (I don't understand)
-
*/
groups: (
{
id: 0 /* group 0 is the default group for every new account */
- name: "Player"
+ name: "Tester"
level: 0
inherit: ( /*empty list*/ )
commands: {
- help: true
- commands: true
duel: true
accept: true
reject: true
invite: true
leave: true
- noask: true // Autoreject duels
+ whogm: true
email: true
- request: true
- time: true
- jailtime: true
+ commands: true
+ help: true
rates: true
- breakguild: true
- changegm: true
- // Bugfix-level commands
- hominfo: true
- refresh: true
- // KillSteal commands (???)
- noks: true
- }
- permissions: {
- /* without this basic permissions regular players could not
- trade or party */
- can_trade: true
- can_party: true
- }
-},
-// ===== Trusted Players and Bots
-{
- id: 1
- name: "Trusted Player"
- inherit: ( "Player" ) /* can do everything Players can and more */
- level: 1
- commands: {
- // Information Commands
- whogm: true
uptime: true
- charcommands: true
- exp: true
+ showdelay: true
mobinfo: true
iteminfo: true
whodrops: true
+ time: true
+ jailtime: true
+ hominfo: true
homstats: true
- whereis: true
- tee: true
- log: true
- // Server Spam Limit commands
showexp: true
showzeny: true
- showdelay: true
- // Community Commands
+ whereis: true
+ refresh: true
+ noask: true
+ autoloot: true
+ alootid: true
+ autoloottype: true
+ request: true
+ breakguild: true
channel: true
- // Convenience Commands
- autotrade: true
+ tee: true
+ log: true
+ version: true
+ jumpto: true
+ tonpc: true
+ save: true
+ load: true
+ monsterignore: true
+ warp: true
+ jump: true
+ heal: true
+ alive: true
+ dropall: true
+ item: true
+ item2: true
+ produce: true
+ refine: true
+ zeny: true
+ storage: true
+ repairall: true
+ storeall: true
+ itemreset: true
+ clearstorage: true
+ killable: true
+ speed: true
+ slide: true
+ blvl: true
+ jlvl: true
+ agi: true
+ vit: true
+ int: true
+ str: true
+ dex: true
+ luk: true
+ allstats: true
+ streset: true
}
- log_commands: true
permissions: {
- show_client_version: true
+ /* without this basic permissions regular players could not
+ trade or party */
+ can_trade: true
+ can_party: true
}
},
-// ===== Support
{
- id: 20
- name: "Support"
- inherit: ( "Trusted Player" )
- level: 20
+ id: 1
+ name: "Super Tester"
+ inherit: ( "Tester" ) /* can do everything Testers can and more */
+ level: 2
commands: {
- // Information Commands
- version: true
where: [true, true]
who: true
who2: true
@@ -180,83 +168,63 @@ groups: (
whomap2: true
whomap3: true
users: true
+ mapinfo: true
+ gat: true
mobsearch: true
idsearch: true
showmobs: true
skillid: true
- // Movement Commands
- tonpc: true
- jumpto: true
- warp: true
- jump: true
- slide: true
- memo: true
- save: true
- load: true
- hugo: true
- linus: true
- // Community Commands
- broadcast: true
- localbroadcast: true
- hidenpc: true
- shownpc: true
- stats: [true, true]
- refresh: [true, true]
- // Moderation Commands
- kick: true
- mute: true
- unmute: true
- // Convenience Commands
- monsterignore: true
- autoloot: true
- alootid: true
- autoloottype: true
- storage: true
- mail: true
- effect: true
+ skilltree: true
+ hide: true
+ follow: true
+ heal: [true, true]
+ alive: [true, true]
+ monster: true
+ monstersmall: true
+ monsterbig: true
+ killmonster2: true
+ clone: [true, true]
+ slaveclone: [true, true]
+ evilclone: [true, true]
+ cleargstorage: true
+ killer: true
+ }
+ permissions: {
+ show_client_version: true
+ }
+},
+{
+ id: 20
+ name: "Support Tester"
+ level: 20
+ inherit: ( "Super Tester" )
+ commands: {
+ /* dupe */
}
log_commands: true
permissions: {
- send_gm: true
- receive_requests: true
- view_equipment: true
}
},
{
id: 21
- name: "Support (Hidden)"
- inherit: ( "Support" )
+ name: "Support Tester (Hidden)"
level: 20
+ inherit: ( "Super Tester" )
commands: {
+ /* dupe */
}
log_commands: true
permissions: {
send_gm: false
}
},
-// ===== Developer
{
id: 40
- name: "Developer"
- inherit: ( "Support" )
+ name: "Dev Tester"
level: 40
+ inherit: ( "Super Tester" )
commands: {
- npcmove: true
- day: true
- night: true
- gat: true
- skilltree: true
- heal: true
- alive: true
- loadnpc: true
- unloadnpc: true
- reloadnpc: true
- delitem: true
- refine: true
- speed: true
- itemreset: true
- reset: true
- mapinfo: true
+ /* dupe */
}
log_commands: true
permissions: {
@@ -264,46 +232,24 @@ groups: (
},
{
id: 41
- name: "Developer (Hidden)"
- inherit: ( "Developer" )
+ name: "Dev Tester (Hidden)"
level: 40
+ inherit: ( "Super Tester" )
commands: {
+ /* dupe */
}
log_commands: true
permissions: {
send_gm: false
}
},
-// ===== Event Coordinator
{
id: 50
- name: "Event Coordinator"
- inherit: ( "Support" )
+ name: "EVTC Tester"
level: 50
+ inherit: ( "Super Tester" )
commands: {
- fakename: true
- invisible: true
-
- // Community Commands
- heal: [true, true]
- alive: [true, true]
- monster: [true, true]
- monstersmall: [true, true]
- monsterbig: [true, true]
- summon: [true, true]
- killmonster2: [true, true]
- cleanarea: [true, true]
- cleanmap: true
- clone: [true, true]
- slaveclone: [true, true]
- evilclone: [true, true]
- disguise: [true, true]
- undisguise: [true, true]
- pvpon: true
- pvpoff: true
- gvgon: true
- gvgoff: true
- npctalk: true
+ /* dupe */
}
log_commands: true
permissions: {
@@ -311,171 +257,78 @@ groups: (
},
{
id: 51
- name: "Event Coordinator (Hidden)"
- inherit: ( "Event Coordinator" )
+ name: "EVTC Tester (Hidden)"
level: 50
+ inherit: ( "Super Tester" )
commands: {
+ /* dupe */
}
log_commands: true
permissions: {
send_gm: false
}
},
-// ===== Game Master
{
id: 60
- name: "Game Master"
- inherit: ( "Support" )
+ name: "GM Tester"
level: 60
+ inherit: ( "Super Tester" )
commands: {
- blvl: [true, true]
- jlvl: [true, true]
- str: [true, true]
- agi: [true, true]
- vit: [true, true]
- int: [true, true]
- dex: [true, true]
- luk: [true, true]
- allstats: true
- invisible: true
- speed: [true, true]
- guild: [true, true]
-
- // Moderation Commands
- jailfor: true
- jail: true
- unjail: true
- ban: true
- block: true
- unban: true
- delitem: [true, true]
- mutearea: true
- reset: [true, true]
- itemreset: [true, true]
- dropall: [true, true]
- storeall: [true, true]
- accinfo: true
- storagelist: [true, true]
- cartlist: [true, true]
- itemlist: [true, true]
-
- // Community Commands
- heal: [true, true]
- alive: [true, true]
- slide: [true, true]
- warp: [true, true]
- killer: true
- killable: true
- pvpon: true
- pvpoff: true
- gvgon: true
- gvgoff: true
- cvcon: true
- cvcoff: true
- killmonster: [true, true]
- killmonster2: [true, true]
- recall: true
- cleanmap: true
- nuke: [true, true]
- skillon: true
- skilloff: true
- raisemap: true
- npctalk: true
-
+ /* dupe */
}
log_commands: true
permissions: {
- who_display_aid: true
- view_hpmeter: true
- join_chat: true
- kick_chat: true
- hide_session: true
- hack_info: true
}
},
{
id: 61
- name: "Game Master (Hidden)"
- inherit: ( "Game Master" )
+ name: "GM Tester (Hidden)"
level: 60
+ inherit: ( "Super Tester" )
commands: {
+ /* dupe */
}
log_commands: true
permissions: {
send_gm: false
}
},
-// ===== Community Coordinator (GM/DEV)
{
id: 80
- name: "Community Coordinator"
- inherit: ( "Support", "Developer", "Event Coordinator", "Game Master" )
+ name: "Coom Tester"
level: 80
+ inherit: ( "Super Tester" )
commands: {
- addwarp: true
- refine: [true, true]
- repairall: [true, true]
- allowks: true
- item: [true, true]
- item2: [true, true]
- itembound: [true, true]
- itembound2: [true, true]
- zeny: [true, true]
-
- // Community Commands
- raise: true
- partyrecall: true
- guildrecall: true
- doom: true
- doommap: true
- refreshall: true // Use with caution
- effect: [true, true]
- marry: [true, true] // Use with caution
- divorce: true
-
- // Change status and options
- displaystatus: [true, true]
- option: [true, true]
- partyoption: [true, true]
-
- // Moderation Commands
- clearstorage: true
- cleargstorage: true
- recallall: true
- breakguild: [true, true]
- changeleader: [true, true]
-
+ /* dupe */
}
log_commands: true
permissions: {
- any_warp: true
}
},
{
id: 81
- name: "Community Coordinator (Hidden)"
- inherit: ( "Community Coordinator" )
+ name: "Coom Tester (Hidden)"
level: 80
+ inherit: ( "Super Tester" )
commands: {
+ /* dupe */
}
log_commands: true
permissions: {
send_gm: false
}
},
-// ===== Administrator
-// (There isn't a hidden admin yet)
{
id: 99
- name: "Administrator"
+ name: "Developer"
level: 99
- inherit: ( "Community Coordinator" )
+ inherit: ( "Super Tester" )
commands: {
/* not necessary due to all_commands: true */
}
log_commands: true
permissions: {
- can_trade_bound: false
+ can_trade_bound: true
can_party: true
all_skill: false
all_equipment: true