Author Topic: UTeam - Set teams based on usergroup.  (Read 319757 times)

0 Members and 1 Guest are viewing this topic.

Offline Euphytose

  • Jr. Member
  • **
  • Posts: 64
  • Karma: 5
  • I love Lemonade!
Re: UTeam - Set teams based on usergroup.
« Reply #195 on: August 28, 2009, 05:00:02 AM »
Code: [Select]
"6"
      {
         "name"      "Membre"
         "group"      "membre"
         "armor"      "150"
         "hp"      "150"
         {
            "a"      "255"
            "B"      "222"
            "g"      "296"
            "r"      "176"

Décidément...  ::)

Regarde, t'as "g" "296", t'as pas un peu oublié que c'était limité à 255 ?  ;D

Rooh, faudrait vraiment penser à regarder le code de l'erreur, même moi qui possède 3 de moyenne en maths je peux comprendre. :D

Regarde :

Code: [Select]
}
      "7"
      {
         "name"      "Joueurs"
         "group"      "user"
         {
            "a"      "255"
            "B"      "205"
            "g"      "197"
            "r"      "122"
         }
      }

T'as oublié le "color".

En fait t'as oublié le color un peu partout, regarde bien, pour ton truc admin aussi etc... Normal que ça bug. :)
« Last Edit: August 28, 2009, 05:04:40 AM by Euphytose »

Offline Mouton

  • Newbie
  • *
  • Posts: 3
  • Karma: 0
Re: UTeam - Set teams based on usergroup.
« Reply #196 on: August 28, 2009, 05:35:39 AM »
Ah ouai merde merci :s

Offline EggNoggin

  • Jr. Member
  • **
  • Posts: 50
  • Karma: -6
Re: UTeam - Set teams based on usergroup.
« Reply #197 on: September 12, 2009, 07:15:59 PM »
More valid playermodels plox?  ;D

Offline JamminR

  • Ulysses Team Member
  • Hero Member
  • *****
  • Posts: 8096
  • Karma: 390
  • Sertafide Ulysses Jenius
    • Team Ulysses [ULib/ULX, other fine releases]
Re: UTeam - Set teams based on usergroup.
« Reply #198 on: September 12, 2009, 08:51:12 PM »
Eggnoggin, UTeam doesn't control what player models are valid; a Gmod lua function within it does.
See http://wiki.garrysmod.com/?title=Player_manager.TranslatePlayerModel for the list the original UTeam used.
I've no idea when that list was last updated at the Gmod wiki, but the wiki actually has 4 more than the readme file.

However, just to do a bit more digging for you or anyone else that wanted more models, you may want to look at Garry's actual code. The translation table is listed here;
http://luabin.foszor.com/code/lua/includes/modules/player_manager.lua#46

It has more than both the wiki and the UTeam readme file have.


"Though a program be but three lines long, someday it will have to be maintained." -- The Tao of Programming

Offline BradNowacki

  • Newbie
  • *
  • Posts: 5
  • Karma: 0
Re: UTeam - Set teams based on usergroup.
« Reply #199 on: September 21, 2009, 01:58:26 PM »
Mine isent working here is my files but i get a uteam lus error and no one has a team or rights its like lua 68 i think

My Uteam File

Code: [Select]
"Out"
{
"teams"
{
"1"
{
"name" "Owner"
"group" "owner"
"armor" "1000"
"hp" "1000"
"color"
{
"a" "255"
"B" "0"
"g" "0"
"r" "0"
}
"plytable"
{
"1" "SprintSpeed:1000"
"2" "WalkSpeed:500"
}
}
"2"
{
"name" "SuperAdmins"
"group" "superadmin"
"armor" "1000"
"hp" "1000"
"color"
{
"a" "255"
"B" "204"
"g" "0"
"r" "51"
}
"plytable"
{
"1" "SprintSpeed:1000"
"2" "WalkSpeed:500"
}
}
"3"
{
"name" "Admins"
"group" "admin"
"armor" "500"
"hp" "500"
"color"
{
"a" "255"
"B" "0"
"g" "204"
"r" "51"
}
}
"4"
{
"name" "UltraMember"
"group" "ultramember"
"armor" "200"
"hp" "200"
"color"
{
"a" "255"
"B" "0"
"g" "0"
"r" "102"
}
}
"5"
{
"name" "SuperMember"
"group" "supermember"
"color"
"armor" "100"
{
"a" "255"
"B" "0"
"g" "0"
"r" "255"
}
}
"6"
{
"name" "Member"
"group" "member"
"color"
{
"a" "225"
"B" "153"
"g" "0"
"r" "0"
}
}
"7"
{
"name" "Regular"
"group" "regular"
"color"
{
"a" "225"
"B" "153"
"g" "0"
"r" "102"
}
}
"8"
{
"name" "Player"
"group" "player"
"color"
{
"a" "225"
"B" "153"
"g" "0"
"r" "204"
}
}
"9"
{
"name" "Noob"
"group" "noob"
"color"
{
"a" "225"
"B" "255"
"g" "255"
"r" "51"
}
}
"10"
{
"name" "User"
"group" "user"
"color"
{
"a" "225"
"B" "255"
"g" "255"
"r" "255"
}
}
}
"gamemodes"
{
"1" "sandbox"
}
}

My Group File

Code: [Select]
"owner"
{
"deny"
{
}
"allow"
{
"ulx hiddenecho"
"ulx rcon"
"ulx luarun"
"ulx cexec"
"ulx ent"
"ulx adduser"
"ulx adduserid"
"ulx removeuser"
"ulx userallow"
"ulx userdeny"
"ulx addgroup"
"ulx removegroup"
"ulx groupallow"
"ulx groupdeny"
"overcomeimmunity"
}
"inherit_from"
{
"admin"
}
}
"superadmin"
{
"deny"
{
}
"allow"
{
"ulx hiddenecho"
"ulx rcon"
"ulx luarun"
"ulx cexec"
"ulx ent"
"ulx adduser"
"ulx adduserid"
"ulx removeuser"
"ulx userallow"
"ulx userdeny"
"ulx addgroup"
"ulx removegroup"
"ulx groupallow"
"ulx groupdeny"
"overcomeimmunity"
}
"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 chattime"
"ulx welcomemessage"
"ulx slap"
"ulx whip"
"ulx slay"
"ulx sslay"
"ulx ignite"
"ulx unignite"
"ulx playsound"
"ulx freeze"
"ulx unfreeze"
"ulx god"
"ulx ungod"
"ulx noclip"
"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 adminmenu"
"ulx clientmenu"
"ulx mapsmenu"
"ulx showmotd"
"ulx banmenu"
"ulx exec"
"ulx rslotsmode"
"ulx rslots"
"ulx rslotsvisible"
"ulx reservedslots"
"ulx bring"
"ulx goto"
"ulx send"
"ulx teleport"
"ulx tooldeny"
"ulx toolallow"
"ulx tooldenyuser"
"ulx toolallowuser"
"ulx tooldenyoverride"
"ulx map"
"ulx kick"
"ulx ban"
"ulx banid"
"ulx unban"
"ulx spectate"
"ulx physgunplayer"
"ulx vote"
"ulx votemap2"
"ulx votekick"
"ulx voteban"
"ulx veto"
}
"inherit_from"
{
{
"operator"
}
}
"ultramember"
{
"deny"
{
}
"allow"
{
"ulx goto"
"ulx uncloak"
"ulx cloak"
"ulx ragdoll"
"ulx unragdoll"
"ulx"
"ulx help"
"ulx psay"
"ulx asay"
"ulx thetime"
"ulx menu"
"ulx_valueupdate"
"ulx_cvar"
"ulx_getgamemodes"
"ulx motd"
"ulx_getbans"
"ulx usermanagementhelp"
"ulx who"
"ulx votemap"
}
"inherit_from"
{
}
}
"supermember"
{
"deny"
{
}
"allow"
{
"ulx uncloak"
"ulx cloak"
"ulx ragdoll"
"ulx unragdoll"
"ulx"
"ulx help"
"ulx psay"
"ulx asay"
"ulx thetime"
"ulx menu"
"ulx_valueupdate"
"ulx_cvar"
"ulx_getgamemodes"
"ulx motd"
"ulx_getbans"
"ulx usermanagementhelp"
"ulx who"
"ulx votemap"
}
"inherit_from"
{
}
}
"member"
{
"deny"
{
}
"allow"
{
"ulx uncloak"
"ulx cloak"
"ulx ragdoll"
"ulx unragdoll"
"ulx"
"ulx help"
"ulx psay"
"ulx asay"
"ulx thetime"
"ulx menu"
"ulx_valueupdate"
"ulx_cvar"
"ulx_getgamemodes"
"ulx motd"
"ulx_getbans"
"ulx usermanagementhelp"
"ulx who"
"ulx votemap"
}
"inherit_from"
{
}
}
"regular"
{
"deny"
{
}
"allow"
{
"ulx ragdoll"
"ulx unragdoll"
"ulx"
"ulx help"
"ulx psay"
"ulx asay"
"ulx thetime"
"ulx menu"
"ulx_valueupdate"
"ulx_cvar"
"ulx_getgamemodes"
"ulx motd"
"ulx_getbans"
"ulx usermanagementhelp"
"ulx who"
"ulx votemap"
}
"inherit_from"
{
}
}
"player"
{
"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 who"
"ulx votemap"
}
"inherit_from"
{
}
}
"noob"
{
"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 who"
"ulx votemap"
}
"inherit_from"
{
}
}
"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 who"
"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"
{
}
}
"operator"
{
"deny"
{
}
"allow"
{
"ulx seeasay"
}
"inherit_from"
{
}
}

My User File

Code: [Select]
"BradNowacki"
{
"id" "STEAM_0:0:22061836"
"type" "steamid"
"pass" """
"pass_req" "0"
"groups"
{
"owner"
}
"allow"
{
}
"deny"
{
}
}

Whats wrong

Offline atomicspark

  • Full Member
  • ***
  • Posts: 196
  • Karma: 12
Re: UTeam - Set teams based on usergroup.
« Reply #200 on: September 21, 2009, 02:34:45 PM »
Where did you place the uteam.lua and uteam.txt files? What version of ULX/ULib are you running? The official release or SVN?

Offline BradNowacki

  • Newbie
  • *
  • Posts: 5
  • Karma: 0
Re: UTeam - Set teams based on usergroup.
« Reply #201 on: September 21, 2009, 02:45:04 PM »
its offical releace i need to re svn it so im going to try that right now thanks for reminding me and i have the Txt file placed in the right folder and my luz in hte right folder when i try it with my orignal uteam.txt file it works i dont have the right user rights still but i get a team as player

Offline BradNowacki

  • Newbie
  • *
  • Posts: 5
  • Karma: 0
Re: UTeam - Set teams based on usergroup.
« Reply #202 on: September 21, 2009, 03:00:03 PM »
ok new files

Uteam in my data folder

Code: [Select]
"Out"
{
"teams"
{
"1"
{
"name" "Owner"
"group" "owner"
"armor" "1000"
"hp" "1000"
"color"
{
"a" "255"
"B" "0"
"g" "0"
"r" "0"
}
"plytable"
{
"1" "SprintSpeed:1000"
"2" "WalkSpeed:500"
}
}
"2"
{
"name" "SuperAdmins"
"group" "superadmin"
"armor" "1000"
"hp" "1000"
"color"
{
"a" "255"
"B" "204"
"g" "0"
"r" "51"
}
"plytable"
{
"1" "SprintSpeed:1000"
"2" "WalkSpeed:500"
}
}
"3"
{
"name" "Admins"
"group" "admin"
"armor" "500"
"hp" "500"
"color"
{
"a" "255"
"B" "0"
"g" "204"
"r" "51"
}
}
"4"
{
"name" "UltraMember"
"group" "ultramember"
"armor" "200"
"hp" "200"
"color"
{
"a" "255"
"B" "0"
"g" "0"
"r" "102"
}
}
"5"
{
"name" "SuperMember"
"group" "supermember"
"color"
"armor" "100"
{
"a" "255"
"B" "0"
"g" "0"
"r" "255"
}
}
"6"
{
"name" "Member"
"group" "member"
"color"
{
"a" "225"
"B" "153"
"g" "0"
"r" "0"
}
}
"7"
{
"name" "Regular"
"group" "regular"
"color"
{
"a" "225"
"B" "153"
"g" "0"
"r" "102"
}
}
"8"
{
"name" "Player"
"group" "player"
"color"
{
"a" "225"
"B" "153"
"g" "0"
"r" "204"
}
}
"9"
{
"name" "Noob"
"group" "noob"
"color"
{
"a" "225"
"B" "255"
"g" "255"
"r" "51"
}
}
"10"
{
"name" "User"
"group" "user"
"color"
{
"a" "225"
"B" "255"
"g" "255"
"r" "255"
}
}
}
"gamemodes"
{
"1" "sandbox"
}
}

Ulib user file

Code: [Select]
"STEAM_0:0:22061836"
{
"group" "owner"
"allow"
{
}
"deny"
{
}
}

and my new grp file

Code: [Select]
"owner"
{
"allow"
{
"ulx hiddenecho"
"ulx rcon"
"ulx luarun"
"ulx cexec"
"ulx ent"
"ulx adduser"
"ulx adduserid"
"ulx removeuser"
"ulx userallow"
"ulx userdeny"
"ulx addgroup"
"ulx removegroup"
"ulx groupallow"
"ulx groupdeny"
"overcomeimmunity"
}
"inherit_from" "admin"
}
"superadmin"
{
"allow"
{
"ulx hiddenecho"
"ulx rcon"
"ulx luarun"
"ulx cexec"
"ulx ent"
"ulx adduser"
"ulx adduserid"
"ulx removeuser"
"ulx userallow"
"ulx userdeny"
"ulx addgroup"
"ulx removegroup"
"ulx groupallow"
"ulx groupdeny"
"overcomeimmunity"
}
"inherit_from" "admin"
}
"admin"
{
"allow"
{
"ulib_passtime"
"ulib_passtimeout"
"ulx spawnecho"
"ulx tsay"
"ulx csay"
"ulx gimp"
"ulx mute"
"ulx ungimp"
"ulx unmute"
"ulx gag"
"ulx ungag"
"ulx chattime"
"ulx welcomemessage"
"ulx slap"
"ulx whip"
"ulx slay"
"ulx sslay"
"ulx ignite"
"ulx unignite"
"ulx playsound"
"ulx freeze"
"ulx unfreeze"
"ulx god"
"ulx ungod"
"ulx noclip"
"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 adminmenu"
"ulx clientmenu"
"ulx mapsmenu"
"ulx showmotd"
"ulx banmenu"
"ulx exec"
"ulx rslotsmode"
"ulx rslots"
"ulx rslotsvisible"
"ulx reservedslots"
"ulx bring"
"ulx goto"
"ulx send"
"ulx teleport"
"ulx tooldeny"
"ulx toolallow"
"ulx tooldenyuser"
"ulx toolallowuser"
"ulx tooldenyoverride"
"ulx map"
"ulx kick"
"ulx ban"
"ulx banid"
"ulx unban"
"ulx spectate"
"ulx physgunplayer"
"ulx vote"
"ulx votemap2"
"ulx votekick"
"ulx voteban"
"ulx veto"
}
"inherit_from"
}
"ultramember"
{
"allow"
{
"ulx goto"
"ulx uncloak"
"ulx cloak"
"ulx ragdoll"
"ulx unragdoll"
"ulx"
"ulx help"
"ulx psay"
"ulx asay"
"ulx thetime"
"ulx menu"
"ulx_valueupdate"
"ulx_cvar"
"ulx_getgamemodes"
"ulx motd"
"ulx_getbans"
"ulx usermanagementhelp"
"ulx who"
"ulx votemap"
}
"inherit_from"
{
}
}
"supermember"
{
"allow"
{
"ulx uncloak"
"ulx cloak"
"ulx ragdoll"
"ulx unragdoll"
"ulx"
"ulx help"
"ulx psay"
"ulx asay"
"ulx thetime"
"ulx menu"
"ulx_valueupdate"
"ulx_cvar"
"ulx_getgamemodes"
"ulx motd"
"ulx_getbans"
"ulx usermanagementhelp"
"ulx who"
"ulx votemap"
}
"inherit_from"
}
"member"
{
"allow"
{
"ulx uncloak"
"ulx cloak"
"ulx ragdoll"
"ulx unragdoll"
"ulx"
"ulx help"
"ulx psay"
"ulx asay"
"ulx thetime"
"ulx menu"
"ulx_valueupdate"
"ulx_cvar"
"ulx_getgamemodes"
"ulx motd"
"ulx_getbans"
"ulx usermanagementhelp"
"ulx who"
"ulx votemap"
}
"inherit_from"
}
"regular"
{
"allow"
{
"ulx ragdoll"
"ulx unragdoll"
"ulx"
"ulx help"
"ulx psay"
"ulx asay"
"ulx thetime"
"ulx menu"
"ulx_valueupdate"
"ulx_cvar"
"ulx_getgamemodes"
"ulx motd"
"ulx_getbans"
"ulx usermanagementhelp"
"ulx who"
"ulx votemap"
}
"inherit_from"
}
"player"
{
"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 who"
"ulx votemap"
}
"inherit_from"
}
"noob"
{
"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 who"
"ulx votemap"
}
"inherit_from"
}
"user"
{
"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 who"
"ulx votemap"
}
"inherit_from"
}
"none"
{
"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"
}

*fix* I put spaces between each one in my group file

Offline atomicspark

  • Full Member
  • ***
  • Posts: 196
  • Karma: 12
Re: UTeam - Set teams based on usergroup.
« Reply #203 on: September 21, 2009, 03:02:18 PM »
Just a warning, the current SVN revision is in flux right now and being ported over to a new command system. Some things do not currently function yet and any third-party ULX modules will need to be updated.
« Last Edit: September 21, 2009, 03:07:26 PM by atomicspark »

Offline Megiddo

  • Ulysses Team Member
  • Hero Member
  • *****
  • Posts: 6214
  • Karma: 394
  • Project Lead
Re: UTeam - Set teams based on usergroup.
« Reply #204 on: September 21, 2009, 03:07:31 PM »
Just a warning, the current SVN version is in flux right now and being ported over to a new command system. Some things do not currently function yet and any third-party ULX modules will need to be updated.

This is not a ULX module, Sparky. :)
« Last Edit: September 21, 2009, 03:11:46 PM by Megiddo »
Experiencing God's grace one day at a time.

Offline BradNowacki

  • Newbie
  • *
  • Posts: 5
  • Karma: 0
Re: UTeam - Set teams based on usergroup.
« Reply #205 on: September 21, 2009, 03:08:26 PM »
well the svn lets my groups pop up so thats good i still get the uteam lua error UteamSetupteam 68 but the teams work i jsut cant use my commands

Offline atomicspark

  • Full Member
  • ***
  • Posts: 196
  • Karma: 12
Re: UTeam - Set teams based on usergroup.
« Reply #206 on: September 21, 2009, 06:46:54 PM »
This is not a ULX module, Sparky. :)

He said he was going to switch to the SVN release of ULX/ULib! It was simply a warning. :P

Offline JamminR

  • Ulysses Team Member
  • Hero Member
  • *****
  • Posts: 8096
  • Karma: 390
  • Sertafide Ulysses Jenius
    • Team Ulysses [ULib/ULX, other fine releases]
Re: UTeam - Set teams based on usergroup.
« Reply #207 on: September 21, 2009, 07:25:49 PM »
Team 5 - don't place armor in color
(Wait, deja' vu'! )
"Though a program be but three lines long, someday it will have to be maintained." -- The Tao of Programming

Offline piggy

  • Newbie
  • *
  • Posts: 21
  • Karma: -1
Re: UTeam - Set teams based on usergroup.
« Reply #208 on: September 27, 2009, 06:21:15 PM »
Hi,

I'm just setting this up and was wondering if there is a way to set a per group prop limit.

i.e

group 1 can spawn 50  props
group 2 can spawn 100 props
group 3 can spawn 150 props

And maybe make this possible for the other sbox values on the server ?

Offline jay209015

  • Ulysses Team Member
  • Hero Member
  • *****
  • Posts: 934
  • Karma: 62
    • Dev-Solutions
Re: UTeam - Set teams based on usergroup.
« Reply #209 on: September 27, 2009, 07:30:21 PM »
Quote
group 1 can spawn 50  props
group 2 can spawn 100 props
group 3 can spawn 150 props

URestrict and UnoLimited
An error only becomes a mistake when you refuse to correct it. --JFK

"And thus the downfall of the great ULX dynasty was wrought not by another dynasty, but the slow and steady deterioration of the leaders themselves, followed by the deprecation of the great knowledge they possessed." -Gmod, Chapter 28, verse 34 -- Stickly