__ULX__
Version 1.13

Created by:
Brett "Megiddo" Smith 

I. About
  ULX is an AMXX Mod-like mod manager for gmod. It offers a few good starter commands as well as offering a flexible administrative and user mod backbone for other developers.

II. INSTALLATION
  To install ULX, extract the included files to the lua folder, so the files should have a structure like this:
 ./gmod9/lua/init/ulx_init.lua
 ./gmod9/lua/ulx/ulx_base.lua
etc...

III. HOW TO USE
  Type 'ulx_help' in your console to see the commands available to you ( won't show commands you do not have access to ). To add yourself as an admin, follow the directions in /lua/ulx/configs/users.ini

The configuration of ULX is done through the files in the configs folder, they're all self-explanitory.

For your convenience, the help is relisted here:

Command help:
ulx_adduser <user> <access> - Adds a user with the specified access to the permanent access list
ulx_adminmenu - Shows the ULX admin menu ( say: adminmenu )
ulx_asay <message> - Sends message to all currently connected admins ( say: @ )
ulx_ban <user> [<minutes>] - bans the specified player for the specified minutes ( perm ban if nil ) ( say: !ban )
ulx_clientmenu - Shows the client admin menu ( say: clientmenu )
ulx_csay <message> - prints the message in the center of everyone's screen ( say: @@@ )
ulx_ent <classname> <flag> .. - spawn an ent, separate flag and value with : ( IE: ulx_ent prop_ragdoll model:models/alyx.mdl )
ulx_exec <file> - executes a file ( will run lua commands properly )
ulx_freeze <user> - freezes the specified player ( unable to move or aim ) ( say: freeze )
ulx_gimp <user> - gimps the specified player ( say: gimp )
ulx_god <user> - Gives the specified player God mod ( say: god )
ulx_help - Shows the list you currently see
ulx_hp <user> <number> - sets the player health to the specified value ( say: hp )
ulx_ignite <user> - ignites the specified user ( death by fire ) ( say: ignite )
ulx_kick <user> - Kicks the specified player ( say: !kick )
ulx_kickban <user> [<minutes>] - kicks & bans the player for the specified minutes ( perm ban if nil ) ( say: !kickban )
ulx_lua <command> - Feeds the server a lua command
ulx_map <map> - changes to the specified map ( say: !map )
ulx_menu - Shows the ULX main menu ( say: menu )
ulx_playsound <sound file> - Plays a sound ( relative to 'sound' dir )
ulx_psay <user> <message> - Sends message to specified user ( say: /p )
ulx_rcon <command> - Send the specified command to the server console ( say: !rcon )
ulx_removeflames - Removes all flames ( say: removeflames )
ulx_say <message> - prints the message in the chat portion of everyone's screen ( say: @@ )
ulx_setinfo <message> - Server will display this text when you join ( say: !setinfo )
ulx_slap <user> [<damage>] - slaps the specified user with optional damage ( say: slap )
ulx_slay <user> - slays the specified user ( say: slay )
ulx_sslay <user> [<respawn time> [<bool disolve]] - silently slays the specified user ( say: sslay )
ulx_team <user> <team> - forces the user to join the team ( unassigned, spectator, blue, yellow, green, red ) ( say: team )
ulx_unfreeze <user> - unfreezes the specified player ( say: unfreeze )
ulx_ungimp <user> - ungimps the specified player ( say: ungimp )
ulx_ungod <user> - Removes God mode from the specified player ( say: ungod )
ulx_vote <question> <option 1> <option 2> ... - Takes up a vote with the specified options ( say: !vote )
ulx_votekick <user> - Gives the users a vote to kick the specified player ( say: !votekick )
ulx_votekickban <user> - Gives the users a vote to kickban the specified player ( say: !votekickban )
ulx_votemap map [map2] .. - Gives the users a vote on the chosen maps ( Yes/No question if only one specified ) ( say: !votemap
ulx_weaponmenu - Shows the weapons menu ( say: weaponmenu )
ulx_who - If there are admins currently in the server, shows their access

Cvar help:
ulx_sv_antispamblocktime - This is how long players will be blocked ( in seconds ) after spamming
ulx_sv_antispamenabled - If set to 1, antispam will be enabled ( read on )
ulx_sv_antispamprops - If players spawn more than this number of props in the given time, they'll be blocked
ulx_sv_antispamtime - If players spawn more than the number of props in this time, they'll be blocked
ulx_sv_mingekick - If set to 1, players with the name mingebag will be kicked
ulx_sv_reservedslotmode - Reserved slot mode, read server.ini
ulx_sv_reservedslots - How many slots are reserved for admins
ulx_sv_showvotes - If set to 1, players will see who's voting for what option
ulx_sv_welcomemessage - This message will be shown to players joining your server.
-End of help

IV. DEVELOPERS
  Welcome to the world of ULX lua developers! I hope you enjoy ULX, as I designed this specifically for your use! Please let us know if there's anything I can help you with.

  VISIT OUR WIKI AT http://wiki.ulyssesmod.net/ FOR FUNCTION DOCUMENTATION

V. CHANGELOG
v1.13 06/19/06
[FIX] Minor security exploit (People with no access on the server could not take advantage of the exploit), thanks to aVoN for pointing it out to me!
[FIX] Vote kick ban now writes to a file properly.
[FIX] ulx_adduser now works properly.
[CHANGE] The users.ini reader is now a little more robust.
[CHANGE] It's now possible to clear a setinfo.

v1.12 04/13/06
[CHANGE] addUser() now automatically capitalizes the userid ( idiot check )
[CHANGE] Weapon menu now automatically defaults to off, change the first line of ulx_menus.lua if you want it on ( at your own risk! )

v1.11 02/20/06
[FIX] Small problem in reading the configuration file

v1.1 02/18/06
[FIX] Save/Load tables works with any extension now ( Don't need .lua )
[FIX] Force download is now much more stable, and is able to figure out if your .res has errors
[FIX] ULX Commands can have plusses or minusses in them now
[FIX] Listen server admin detection is _much_ more reliable now.
[ADD] Config system ( will handle lua commands, even on dedicated server ) - server.ini will execute every map change, and if ulx/configs/maps/<curmap_name>.ini exists, that will be executed as well
[ADD] ULX now handles modules itself
[CHANGE] User system is now read from a different file with a different format, please update your users in this file.
[CHANGE] Weapons menu is cached now, it will not refresh itself every time it's called
[CHANGE] getFilesFromDir now skips readme.txt, somehow it crashes if it's used in _file.Exists() on linux.

v1.0 12-20-2005
[FIX] Special characters can now be used in name-finding commands ( like +, -, ^, etc )
[FIX] Bans are now kept across server crashes and shutdowns
[FIX] Reserved slots should now work 100%! ( check ulx_config for information on how to use it )
[ADD] function ULX_CLIENTVAR
[ADD] ulx_adduser - allows you to add users to the ulx_users file if you have rcon access
[ADD] ulx_ent - allows you to create an entity ( see in-game help )
[ADD] Admins can now add an irc-like setinfo! ( displays their chosen text when they connect )
[ADD] Server welcome messages!
[ADD] Table save/load to file functions
[ADD] ULX now logs admin activity
[ADD] Force download ( see /ulx/data/forcedownload.txt ). Note that ULX is the first to offer this functionality without screwing up your .res files!
[ADD] ulx_playsound

v0.9 11-13-2005
[FIX] Adverts now really work, honestly.
[FIX] Prop protect now works correctly
[FIX] Convar permissions
[ADD] Variables for prop antispam, which now defaults to off
[ADD] Weapon and map menus
[ADD] Immunity now works properly
[ADD] Reserved slots, THIS IS EXPERIMENTAL. I don't have the players or the time to test it myself
[ADD] Auto-minge kicker, defaults to off

v0.81 11-12-2005
[FIX] Timers work again... sorry, still not entirely sure what caused that problem
[FIX] Adverts now work correctly
[FIX] Asay now works properly
[ADD] Talk and center messages now log to the console as well
[ADD] ulx_removeflames

v0.8 11-11-2005
[ADD] So many more commands it's best we don't list them
[ADD] Menus, including admin, client, and vote menus
[ADD] Voting
[ADD] Adverts
[ADD] Prop restriction, protection, and anti-spamming
[ADD] Various developers tools ( check lib )
[ADD] Immunity now works!
[FIX] Console say on dedicated servers

v0.5 11-02-2005
First release

VI. COPYRIGHT
The Ulysses development team claims full rights to ULX. Please DO NOT STEAL OUR WORK!
  
VII. CREDITS
Thanks to rman for the gimp code!
#luahelp on irc.gamesurge.net for all your amazing help!
Jesusaurus-rex for bugging the living daylights out of me, and never giving me a moments rest.