Ulysses
Ulysses Stuff => General Chat & Help and Support => Topic started by: tzahush on April 19, 2014, 03:51:56 AM
-
hey guys, i got about 5 ranks on my server.
user
moderator
admin
senioradmin
supervisor
superadmin
How do i make that moderator can target user, but cant target mod admin senioradmin supervisor and superadmin.
And then admin, can target mod + user, but cant targer senioradmin supervisor and superadmin..
And you got the point.
How do i put it in the syntax?
-
user = *
moderator = !%admin
admin = !%senioradmin
senioradmin = !%supervisor
supervisor = !%superadmin
superadmin = *
-
and will this actully work?
will it recognise this 'levels', like that mod is higher for example?
or do i actully need to make them in a list?
-
What I mean is If the server will recognise that Admin is higher then Moderator, And then Supervisor is higher then senioradmin, and such..
-
What I mean is If the server will recognise that Admin is higher then Moderator, And then Supervisor is higher then senioradmin, and such..
That you need to set up using the inheritance system.
-
so who should inherit from how, just to be sure.
-
OK i made this:
user = *
moderator = !%admin
moderator inherit from user
admin = !%senioradmin
admin inherit from moderator
senioradmin = !%supervisor
senioradmin inherit from admin
supervisor = !%superadmin
supervisor inherit from senioradmin
superadmin = *
super admin doesnt inherit.
Then this is whats going on:
A Moderator cant pick up admin, BUT he can pick up everything above him.
An Admin cant pick up senior, but he can pick up Moderator, Senior Admin, Supervisor and Super admin.
and so on..
Got any idea why?
-
Since moderator is inheriting from user and user can target EVERYONE (asterisk = everyone), then moderator inherits the "can_target". Change user's can_target to !%moderator in this case.
-
after making this change, the system works exactly as i told you it does.
-
bump
-
Can you attach your groups.txt (located in <Garry's Mod directory>/data/ulib/groups.txt) so I can take a look at it?
-
http://pastebin.com/b6FPHL30 (http://pastebin.com/b6FPHL30)
-
I've looked through it. Your inheritance tree is sort of messy, which is probably what causes issues. You need to make sure that the groups inherit from each other to make sure that the "ranks" are setup in the right way (I also just noticed that you said superadmin doesn't inherit). A lot of groups inherit from a group that inherits from user. For example superadmin. It should, in theory work, if this is done:
user - can_target: !%moderator
moderator - can_target: !%admin - inherits: user
admin - can_target: !%senioradmin - inherits: moderator
senioradmin - can_target: !%supervisor - inherits: admin
supervisor - can_target: !%superadmin - inherits: senioradmin
superadmin - can_target: * - inherits: supervisor
The last part is the most important one, since if superadmin inherits nothing, it inherits user by default (at least I think so), which in the end means that it's pretty much not anything higher than moderator (that is rank-wise, command-wise it's different).
I hope I explained it right, since this sort of confuses me too (to anyone: feel free to correct any mistakes).
You should read these for a better explanation:
"How exactly does can_target work?" by Stickly Man! - http://forums.ulyssesmod.net/index.php/topic,5346.0.html (http://forums.ulyssesmod.net/index.php/topic,5346.0.html)
"Immunity: How It Works Now" by atomicspark - http://forums.ulyssesmod.net/index.php/topic,4314.msg16844.html (http://forums.ulyssesmod.net/index.php/topic,4314.msg16844.html) (I recommend taking a look at the first reply in this thread too, by Megiddo)