Author Topic: Groups.txt constantly poo-ing itself and reverting to something random.  (Read 2725 times)

0 Members and 1 Guest are viewing this topic.

Offline chris_be

  • Newbie
  • *
  • Posts: 4
  • Karma: 0
Hello all,

On my server; everything seemed to be going alright until I added a new admin.

My groups.txt looks like this:
Code: [Select]
"superadmin"
{
"deny"
{
}
"allow"
{
"ulx cexec"
"overcomeimmunity"
"ulx chattime"
"ulx welcomemessage"
"ulx rslotsmode"
"ulx rslots"
"ulx rslotsvisible"
"ulx showmotd"
}
"inherit_from"
{
"magicadmin"
}
}
"magicadmin"
{
"deny"
{
}
"allow"
{
"ulx hiddenecho"
"ulx rcon"
"ulx luarun"
"ulx ent"
"ulx adduser"
"ulx removeuser"
"ulx userallow"
"ulx userdeny"
"ulx addgroup"
"ulx removegroup"
"ulx groupallow"
"ulx groupdeny"
}
"inherit_from"
{
"advadmin"
}
}
"advadmin"
{
"deny"
{
}
"allow"
{
"ulx ent"
"ulx adminmenu"
}
"inherit_from"
{
"admin"
}
}
"admin"
{
"deny"
{
}
"allow"
{
"ulib_passtime"
"ulib_passtimeout"
"ulx spawnecho"
"ulx tsay"
"ulx csay"
"ulx gimp"
"ulx mute"
"ulx ungimp"
"ulx unmute"
"ulx gag"
"ulx ungag"
"ulx slap"
"ulx whip"
"ulx slay"
"ulx sslay"
"ulx ignite"
"ulx unignite"
"ulx playsound"
"ulx freeze"
"ulx unfreeze"
"ulx god"
"ulx ungod"
"ulx hp"
"ulx armor"
"ulx cloak"
"ulx uncloak"
"ulx blind"
"ulx unblind"
"ulx jail"
"ulx unjail"
"ulx ghost"
"ulx unghost"
"ulx ragdoll"
"ulx unragdoll"
"ulx maul"
"ulx strip"
"ulx clientmenu"
"ulx mapsmenu"
"ulx banmenu"
"ulx exec"
"ulx reservedslots"
"ulx bring"
"ulx send"
"ulx tooldeny"
"ulx toolallow"
"ulx tooldenyuser"
"ulx toolallowuser"
"ulx tooldenyoverride"
"ulx map"
"ulx kick"
"ulx ban"
"ulx banid"
"ulx unban"
"ulx spectate"
"ulx mingekick"
"ulx physgunplayer"
"ulx vote"
"ulx votemap2"
"ulx voteban"
"ulx veto"
"ulx seeasay"
"ulx who"
}
"inherit_from"
{
"userplus"
}
}
"userplus"
{
"deny"
{
"ulx noclip"
"ulx votekick"
"ulx goto"
"ulx teleport"
}
"allow"
{

}
"inherit_from"
{
` "user"
}
}
"user"
{
"deny"
{
}
"allow"
{
"ulx"
"ulx help"
"ulx psay"
"ulx asay"
"ulx thetime"
"ulx menu"
"ulx_valueupdate"
"ulx_cvar"
"ulx_getgamemodes"
"ulx motd"
"ulx_getbans"
"ulx usermanagementhelp"
"ulx votemap"
}
"inherit_from"
{
}
}
"none"
{
"deny"
{
}
"allow"
{
"ulx logecho"
"ulx logfile"
"ulx logevents"
"ulx logchat"
"ulx logspawns"
"ulx logspawnsecho"
"ulx logdir"
"ulx addgimpsay"
"ulx addadvert"
"ulx addcsayadvert"
"ulx addforceddownload"
"ulx debuginfo"
"ulx voteecho"
"ulx votemap2successratio"
"ulx votemap2minvotes"
"ulx votekicksuccessratio"
"ulx votekickminvotes"
"ulx votebansuccessratio"
"ulx votebanminvotes"
"ulx votemapenabled"
"ulx votemapmintime"
"ulx votemapwaittime"
"ulx votemapsuccessratio"
"ulx votemapminvotes"
"ulx votemapvetotime"
"ulx votemapmapmode"
"ulx votemapaddmap"
}
"inherit_from"
{
}
}
(From what I can see) everything seems to be alright in there, yet whenever I start the server and join; groups.txt automatically changes itself to this:
Code: [Select]
"superadmin"
{
}
"magicadmin"
{
"deny"
{
}
"allow"
{
"ulx hiddenecho"
"ulx rcon"
"ulx luarun"
"ulx ent"
"ulx adduser"
"ulx removeuser"
"ulx userallow"
"ulx userdeny"
"ulx addgroup"
"ulx removegroup"
"ulx groupallow"
"ulx groupdeny"
}
"inherit_from"
{
"advadmin"
}
}
"advadmin"
{
"deny"
{
}
"allow"
{
"ulx ent"
"ulx adminmenu"
}
"inherit_from"
{
"admin"
}
}
"admin"
{
"deny"
{
}
"allow"
{
"ulib_passtime"
"ulib_passtimeout"
"ulx spawnecho"
"ulx tsay"
"ulx csay"
"ulx gimp"
"ulx mute"
"ulx ungimp"
"ulx unmute"
"ulx gag"
"ulx ungag"
"ulx slap"
"ulx whip"
"ulx slay"
"ulx sslay"
"ulx ignite"
"ulx unignite"
"ulx playsound"
"ulx freeze"
"ulx unfreeze"
"ulx god"
"ulx ungod"
"ulx hp"
"ulx armor"
"ulx cloak"
"ulx uncloak"
"ulx blind"
"ulx unblind"
"ulx jail"
"ulx unjail"
"ulx ghost"
"ulx unghost"
"ulx ragdoll"
"ulx unragdoll"
"ulx maul"
"ulx strip"
"ulx clientmenu"
"ulx mapsmenu"
"ulx banmenu"
"ulx exec"
"ulx reservedslots"
"ulx bring"
"ulx send"
"ulx tooldeny"
"ulx toolallow"
"ulx tooldenyuser"
"ulx toolallowuser"
"ulx tooldenyoverride"
"ulx map"
"ulx kick"
"ulx ban"
"ulx banid"
"ulx unban"
"ulx spectate"
"ulx mingekick"
"ulx physgunplayer"
"ulx vote"
"ulx votemap2"
"ulx voteban"
"ulx veto"
"ulx seeasay"
"ulx who"
}
"inherit_from"
{
"userplus"
}
}
"user"
{
"deny"
{
}
"allow"
{
"ulx"
"ulx help"
"ulx psay"
"ulx asay"
"ulx thetime"
"ulx menu"
"ulx_valueupdate"
"ulx_cvar"
"ulx_getgamemodes"
"ulx motd"
"ulx_getbans"
"ulx usermanagementhelp"
"ulx votemap"
}
"inherit_from"
{
}
}
"userplus"
{
"deny"
{
"ulx noclip"
"ulx votekick"
"ulx goto"
"ulx teleport"
}
"allow"
{
}
"inherit_from"
{
"`" "user"
}
}
"none"
{
"deny"
{
}
"allow"
{
"ulx logecho"
"ulx logfile"
"ulx logevents"
"ulx logchat"
"ulx logspawns"
"ulx logspawnsecho"
"ulx logdir"
"ulx addgimpsay"
"ulx addadvert"
"ulx addcsayadvert"
"ulx addforceddownload"
"ulx debuginfo"
"ulx voteecho"
"ulx votemap2successratio"
"ulx votemap2minvotes"
"ulx votekicksuccessratio"
"ulx votekickminvotes"
"ulx votebansuccessratio"
"ulx votebanminvotes"
"ulx votemapenabled"
"ulx votemapmintime"
"ulx votemapwaittime"
"ulx votemapsuccessratio"
"ulx votemapminvotes"
"ulx votemapvetotime"
"ulx votemapmapmode"
"ulx votemapaddmap"
}
"inherit_from"
{
}
}

For reference, this is my users.txt:
Code: [Select]
"Chris_be"
{
"deny"
{
}
"type" "steamid"
"groups"
{
"superadmin"
}
"id" "STEAM_0:0:14396832"
"pass" ""
"allow"
{
"immunity"
"ulx hasreadhelp"
}
}
"admin2"
{
"deny"
{
}
"type" "steamid"
"groups"
{
"magicadmin"
}
"id" "STEAM_0:0:12345678"
"pass" ""
"allow"
{
"immunity"
}
}
"admin3"
{
"deny"
{
}
"type" "steamid"
"groups"
{
"advadmin"
}
"id" "STEAM_0:1:12345678"
"pass" ""
"allow"
{
"immunity"
}
"admin4"
{
"deny"
{
}
"type" "steamid"
"groups"
{
"admin"
}
"id" "STEAM_0:0:24681357"
"pass" ""
"allow"
{
}
}
"admin5"
{
"deny"
{
}
"type" "steamid"
"groups"
{
"userplus"
}
"id" "STEAM_0:1:24681357"
"pass" ""
"allow"
{
}
}

I am editing these files in the following folder: srcds\orangebox\garrysmod\data\ULib

Cheers.
Chris_be

Offline JamminR

  • Ulysses Team Member
  • Hero Member
  • *****
  • Posts: 8096
  • Karma: 390
  • Sertafide Ulysses Jenius
    • Team Ulysses [ULib/ULX, other fine releases]
Re: Groups.txt constantly poo-ing itself and reverting to something random.
« Reply #1 on: September 12, 2008, 06:24:21 PM »
Just a quick 1 minute look (in other words, no idea if this isn't it)
Your "userplus" group "inherit from" has a syntax error, it has an apostrophe ' in front of "user"
"Though a program be but three lines long, someday it will have to be maintained." -- The Tao of Programming

Offline chris_be

  • Newbie
  • *
  • Posts: 4
  • Karma: 0
Re: Groups.txt constantly poo-ing itself and reverting to something random.
« Reply #2 on: September 13, 2008, 03:07:21 AM »
hmm, I just tried that; and it didn't work.

I reinstalled ULX and ULib but that didn't do anything either.
Chris_be

Offline JamminR

  • Ulysses Team Member
  • Hero Member
  • *****
  • Posts: 8096
  • Karma: 390
  • Sertafide Ulysses Jenius
    • Team Ulysses [ULib/ULX, other fine releases]
Re: Groups.txt constantly poo-ing itself and reverting to something random.
« Reply #3 on: September 13, 2008, 12:18:43 PM »
Make sure you don't have any of your admins you're trying to move to the new group(s) in your default gmod/settings/users.txt file.
I believe our ULib ACL reads that first, then imports from there. This could cause conflict if you edited that manually, then tried moving/changing the other people you're wanting to add.

BEFORE editing the groups.txt manually (and if you already have, move it/delete it from /data/ULib, restart and let ULib rebuild it)
Use server console or game rcon to create the groups.
ulx addgroup advadmin admin
ulx addgroup magicadmin advadmin
ulx addgroup userplus user
(Think that covers most of yours)

Then restart the server.
Go and see if the groups.txt file now at least has your new groups, minus the allows/denies of course, and the redirected inheritance of the default groups.
If that's proper, then start adding your redirected inheritance, allows and denies.

Megiddo/SPBogie, I've not dug deep enough into ACLs, our code doesn't force superadmin/admin/operator inheritance does it? He's redirecting superadmin and admin inheritance, which in theory should work, but I'm not sure our ACL accounts for someone wanting to do it.
"Though a program be but three lines long, someday it will have to be maintained." -- The Tao of Programming