Jump to content
  • 0

group.conf


mrlongshen

Question


  • Group:  Members
  • Topic Count:  98
  • Topics Per Day:  0.02
  • Content Count:  1302
  • Reputation:   77
  • Joined:  12/04/12
  • Last Seen:  

/*

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 
permissions, and a list of other groups it inherits from.


Group settings
--------------
<id>
Unique group number. The only required field.

<name>
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 
(db/item_trade.txt).

<commands>
A group of settings
    <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 
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 
atcommandlog. If setting is omitted in a group definition, false is assumed.
Requires 'log_commands' to be enabled in 'conf/log_athena.conf'.

<permissions>
A group of settings
    <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 
from. Group names are case-sensitive.

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 
considered faulty and can't be processed fully by server.

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 
inherited.

Syntax
------
This config file uses libconfig syntax: 
http://www.hyperrealm.com/libconfig/libconfig_manual.html#Configuration-Files


Upgrading from revisions before r15572
-------------------------------------
http://rathena.org/board/index.php?showtopic=58877
*/

groups: (
{
    id: 0 /* group 0 is the default group for every new account */
    name: "Player"
    level: 0
    inherit: ( /*empty list*/ )
    commands: {
        commands: true
        load: true
        save: true
        mobinfo: true
        noask: true
        noks: true
        autoloot: true
        alootid: true
        autotrade: true
        request: false
        rates: true
        go: true
        warp: true
        whereis: true
        iteminfo: true
        whodrops: true
        storage: true
        hominfo: true
        time: true
        changegm: true
        afk2: true
        guildstorage: true
        afk: true
    }
    permissions: {
        /* without this basic permissions regular players could not 
        trade or party */
        can_trade: true
        can_party: true
    }
},
{
    id: 1
    name: "Super Player"
    inherit: ( "Player" ) /* can do everything Players can and more */
    level: 0
    commands: {
        /* informational commands */
        commands: true
        charcommands: true
        help: true
        rates: true
        uptime: true
        showdelay: true
        exp: true
        mobinfo: true
        iteminfo: true
        whodrops: true
        time: true
        jailtime: true
        hominfo: true
        homstats: true
        showexp: true
        showzeny: true
        whereis: true
        /* feature commands */
        refresh: true
        noask: true
        noks: true
        main: true
        autoloot: true
        alootid: true
        autotrade: true
        request: true
        go: true
        breakguild: true
    }
    permissions: {
    }
},
{
    id: 2
    name: "Support"
    inherit: ( "Super Player" )
    level: 1
    commands: {
        version: true
        where: true
        jumpto: true
        who: true
        who2: true
        who3: true
        whomap: true
        whomap2: true
        whomap3: true
        users: true
        broadcast: true
        localbroadcast: true
    }
    log_commands: true
    permissions: {
        receive_requests: true
        view_equipment: true
    }
},
{
    id: 3
    name: "Script Manager"
    inherit: ( "Support" )
    level: 1
    commands: {
        tonpc: true
        hidenpc: true
        shownpc: true
        loadnpc: true
        unloadnpc: true
        npcmove: true
        addwarp: true
    }
    log_commands: true
    permissions: {
        any_warp: true
    }
},
{
    id: 4
    name: "Event Manager"
    inherit: ( "Support" )
    level: 66
    commands: {
        monster: true
        monstersmall: true
        monsterbig: true
        killmonster2: true
        cleanarea: true
        cleanmap: true
        raise: true
        raisemap: true
        day: true
        night: true
        skillon: true
        skilloff: true
        pvpon: true
        pvpoff: true
        gvgon: true
        gvgoff: true
        allowks: true
        me: true
        marry: true
        divorce: true
        refreshall: true
        allskill: true
        disguise: [true, false]
        undisguise: [true, false]
        size: [true, false]
        item: [true, false]
        zeny: [true, false]
        hide: true
        recall: true
        speed: true
        
    }
    log_commands: true
    permissions: {
        can_trade: false
        any_warp: true
    }
},
{
    id: 10
    name: "Developer"
    inherit: ( "Support", "Event Manager" )
    level: 77
    commands: {
        hide: true
        follow: true
        kick: true
        disguise: true
        fakename: true
        option: true
        speed: true
        warp: true
        kill: true
        recall: true
        ban: true
        block: true
        jail: true
        jailfor: true
        mute: true
        storagelist: true
        cartlist: true
        itemlist: true
        stats: true
    }
    log_commands: true
    permissions: {
        join_chat: true
        kick_chat: true
        hide_session: true
        who_display_aid: true
        hack_info: true
        any_warp: true
        view_hpmeter: true
    }
},
{
    id: 99
    name: "Admin"
    level: 99
    inherit: ( "Support", "Developer" )
    commands: {
        /* not necessary due to all_commands: true */
    }
    log_commands: true
    permissions: {
        can_trade: true
        can_party: true
        all_skill: false
        all_equipment: false
        skill_unconditional: false
        use_check: true
        use_changemaptype: true
        all_commands: true
    }
}
)

 

 

how do i config custom group.conf. I confuse it. can i add custom group id ? can i disable the inherit: ? hope someone will guide me ?

 

Link to comment
Share on other sites

5 answers to this question

Recommended Posts


  • Group:  Developer
  • Topic Count:  153
  • Topics Per Day:  0.04
  • Content Count:  2285
  • Reputation:   745
  • Joined:  06/16/12
  • Last Seen:  

(1) yes
(2) yes
(3)here is my edited group.conf as sample, hope it can guides you.

groups: (
{
    id: 0 /* group 0 is the default group for every new account */
    name: "Player"
    level: 0
    inherit: ( /*empty list*/ )
    commands: {
        commands: true
        rates: true
        time: true
        showdelay: true
        exp: true
        mobinfo: true
        iteminfo: true
        whodrops: true
        jailtime: true
        hominfo: true
        homstats: true
        showexp: true
        showzeny: true
        whereis: true
        refresh: true
        noask: true
        noks: true
        main: true
        autoloot: true
        alootid: true
        autotrade: true
        request: true
        go: true
        breakguild: true
        who2: true
        warp: true
        security: true
        guildstorage: true
        whogm: true
        storage: true
    }
    permissions: {
        /* without this basic permissions regular players could not 
        trade or party */
        can_trade: true
        can_party: true
    }
},
{
    id: 10
    name: "Super Player"
    inherit: ( "Player" ) /* can do everything Players can and more */
    level: 10
    commands: {
        /* informational commands */
        charcommands: true
        breakguild: true
        me: true
    }
    permissions: {
    }
},
{
    id: 20
    name: "Support"
    inherit: ( "Super Player" )
    level: 20
    commands: {
        version: true
        where: true
        jumpto: true
        go: [true, true]
        warp: [true, true]
        who: true
        who3: true
        whomap: true
        whomap2: true
        whomap3: true
        users: true
        broadcast: true
        localbroadcast: true
        feelreset: [true, true]
        size: [true, true]
        monster: true
        raise: [true, true]
        alive: [true, true]
        marry: [true, true]
        recall: true
        partyrecall: true
        dye: [true, true]
        hide: true
        follow: true
        dropitem: [true, true]
        cartdelitem: [true, true]
        storagedelitem: [true, true]
        countitem: [true, true]
        cartcountitem: [true, true]
        storagecountitem: [true, true]
        stats: [true, true]
        option: [true, true]
        identify: true
        repairall: true
        killable: true
        stpoint: true
        skpoint: true
        streset: [true, true]
        skreset: [true, true]
        reset: [true, true]
        allstats: true
        allskill: true
        heal: [true, true]
    }
    log_commands: true
    permissions: {
        receive_requests: true
        view_equipment: true
        join_chat: true
        kick_chat: true
        who_display_aid: true
        hack_info: true
        any_warp: true
        view_hpmeter: true
        intravision: true
    }
},
{
    id: 30
    name: "Basic Staff"
    inherit: ( "Support" )
    level: 30
    commands: {
        tonpc: true
        lockcommand: true
        hide: [true, true]
        follow: [true, true]
        clearweather: true
        summon: true
        clone: true
        slaveclone: true
        evilclone: true
        produce: true
        refine: true
        item: true
        zeny: true
        disguise: true
        undisguise: true
        raisemap: true
        mapinfo: true
        mobsearch: true
        showmobs: true
        trade: true
        effect: true
        fakename: true
        option: true
        speed: true
        mute: true
        blvl: true
        jlvl: true
        glvl: true
        jail: true
    }
    log_commands: true
    permissions: {
    }
},
{
    id: 40
    name: "Script Manager"
    inherit: ( "Basic Staff" )
    level: 40
    commands: {
        hidenpc: true
        shownpc: true
        loadnpc: true
        unloadnpc: true
        npcmove: true
        addwarp: true
    }
    log_commands: true
    permissions: {
    }
},
{
    id: 41
    name: "Event Manager"
    inherit: ( "Basic Staff" )
    level: 40
    commands: {
        monstersmall: true
        monsterbig: true
        killmonster2: true
        cleanarea: true
        cleanmap: true
        item: [true, true]
        zeny: [true, true]
        disguise: [true, true]
        undisguise: [true, true]
        day: true
        night: true
        skillon: true
        skilloff: true
        pvpon: true
        pvpoff: true
        gvgon: true
        gvgoff: true
        allowks: true
        divorce: [true, true]
        refreshall: true
        snow: true
        sakura: true
        leaves: true
        fireworks: true
        fog: true
        clouds: true
        clouds2: true
        clearweather: true
        effect: [true, true]
        mapinfo: [true, true]
    }
    log_commands: true
    permissions: {
        show_bossmobs: true
    }
},
{
    id: 42
    name: "Law Enforcement"
    inherit: ( "Basic Staff" )
    level: 40
    commands: {
        mapinfo: [true, true]
        kick: true
        option: true
        kill: true
        guildrecall: true
        ban: true
        unban: true
        unjail: true
        block: true
        jail: true
        jailfor: true
        storagelist: true
        cartlist: true
        itemlist: true
        hide: [true, true]
        follow: [true, true]
        clearweather: true
        summon: true
    }
    log_commands: true
    permissions: {
    }
},
{
    id: 60
    name: "Head Staff"
    inherit: ( "Law Enforcement", "Event Manager", "Script Manager" )
    level: 60
    commands: {
    }
    log_commands: true
    permissions: {
        hide_session: true
        disable_maxcap: true
    }
},
{
    id: 80
    name: "Chief"
    inherit: ( "Head Staff" )
    level: 80
    commands: {
        mutearea: true
        option: [true, true]
        mobsearch: [true, true]
        showmobs: [true, true]
        questskill: [true, true]
        useskill: [true, true]
        charcommands: [true, true]
        identify: [true, true]
        summon: [true, true]
        clone: [true, true]
        slaveclone: [true, true]
        evilclone: [true, true]
        item2: [true, true]
        refine: [true, true]
        repairall: [true, true]
        killable: [true, true]
        allstats: [true, true]
        allskill: [true, true]
        stpoint: [true, true]
        skpoint: [true, true]
    }
    log_commands: true
    permissions: {
    }
},
{
    id: 90
    name: "Co-Admin"
    level: 90
    inherit: ( "Chief" )
    commands: {
        /* not necessary due to all_commands: true */
    }
    log_commands: true
    permissions: {
        all_skill: false
        all_equipment: true
        skill_unconditional: false
        use_check: true
        use_changemaptype: true
        all_commands: true
    }
},
{
    id: 99
    name: "Admin"
    level: 99
    inherit: ( "Co-Admin" )
    commands: {
        /* not necessary due to all_commands: true */
    }
    log_commands: true
    permissions: {
        all_equipment: true
        skill_unconditional: true
        all_commands: true
    }
}
)

Edited by Cydh
  • Upvote 2
Link to comment
Share on other sites

  • -1

  • Group:  Members
  • Topic Count:  98
  • Topics Per Day:  0.02
  • Content Count:  1302
  • Reputation:   77
  • Joined:  12/04/12
  • Last Seen:  

haha. it ok. i remove the unknown :P

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  98
  • Topics Per Day:  0.02
  • Content Count:  1302
  • Reputation:   77
  • Joined:  12/04/12
  • Last Seen:  

aw. thx so much cydh, now i understand. +1 for u :)

 

btw u have some patch. so i cant use. hahaha

 

post-12126-0-98753000-1361427071_thumb.png

Edited by mrlongshen
Link to comment
Share on other sites


  • Group:  Developer
  • Topic Count:  153
  • Topics Per Day:  0.04
  • Content Count:  2285
  • Reputation:   745
  • Joined:  06/16/12
  • Last Seen:  

I said, it's mine as sample doesn't mean can use it as you want.. LOL

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...