-------------------------------------
NexgenExtensions by {LSN}Meindratheal
Compiled for Nexgen v1.12H
-------------------------------------
Clientside Revision 2
Serverside Revision 3
-------------------------------------

-----------
What Is It?
-----------
NexgenExtensions adds more commands to Nexgen, to make it easier to run a server.
It also attempts to fix bugs within the core controller.


-----------------------
Installing from scratch
-----------------------
1. Ensure your server is properly shut down.

2. Copy the following files to your server's System folder:
    NexgenClientsideExtensions112HMHA.u
    NexgenServersideExtensions.u

3. If your server uses file redirect, upload NexgenClientsideExtensions112GMHA.u.uz
   to the redirect file server.

4. Open your server's INI file, and add the following lines to [Engine.GameEngine]:

    ServerPackages=NexgenClientsideExtensions112HMHA
    ServerActors=NexgenServersideExtensions.NSEMain

   Make sure that the ServerActor is added AFTER the main Nexgen actor
   (Nexgen112G.NexgenActor).

5. Save the changes to the INI file and restart the server. No other configuration
   is necessary.

--------------------------------------
Upgrading from a previous installation
--------------------------------------
1. Ensure your server is properly shut down.

2. Copy the following files to your server's System folder:
    NexgenClientsideExtensions112HMHA.u
    NexgenServersideExtensions.u

3. If your server uses file redirect, upload NexgenClientsideExtensions112HMHA.u.uz
   to the redirect file server.

4. Open your server's INI file, and replace the following in [Engine.GameEngine]:

    ServerPackages=NexgenClientsideExtensions112
    or
    ServerPackages=NexgenClientsideExtensions112a

    changes to

    ServerPackages=NexgenClientsideExtensions112GMHA

    (depending on which version you were running)

5. Save the changes to the INI file and restart the server. No other configuration
   is necessary.

----------------
List of Commands
----------------
These are the currently supported commands.
They can either be said (with '!' in front, such as '!ali'), or mutated
(such as 'mutate nse ali')

forcestart                Forces the game to immediately start.
fs                        Requires R_MatchAdmin

forceend                  Forces the game to immediately end.
end                       Requires R_MatchAdmin
fs                        

adminlogin                Logs in as an administrator, without broadcasting.
ali                       Requires R_ServerAdmin

adminlogout               Logs out as an administrator, without broadcasting.
alo                       Requires R_ServerAdmin

reboot                    Triggers the reboot command, and crashes the server
reload                    after the Nexgen-configurable time (default: 10 secs)
crash                     Requires R_ServerAdmin
stop

restart                   Restarts the current map.
                          Requires R_MatchAdmin

pause                     Pauses the current game
                          Requires R_MatchAdmin

allow                     Allows a single user to enter the game without ID
allow1                    checking. Helpful if an admin is 'locked out'
allowone                  Requires R_ServerAdmin, or bAdmin
allownext

stdlogin                  Sets the login handler to the default, checking
standardlogin             normal Nexgen ID's. Useful if people are having
normallogin               issues with NexgenACE's HWID checks.
nohwid                    Requires R_ServerAdmin, or bAdmin

allowall                  Logs in players with a random client ID. Note: There
nocheck                   IS a chance that someone may log in with someone's
noauth                    actual ID, but the chance is so tiny it is irrelevant.
nologin                   Requires R_ServerAdmin, or bAdmin

checklogin                Resets the login handler to what it was to start with.
dologin                   Useful for when non-standard ID checking is no longer
doauth                    required.
check                     Requires R_ServerAdmin
reset

-----
Fixes
-----
Currently, this plugin fixes the following:
--The ServerInfo (F2) bug. Now, should also work with UTPure (I think).
--UTPure compatibility check. Since the SA for Pure destroys itself
   when it is done, it is never picked up by Nexgen. We search for the
   correct class and work accordingly.

---------------
Other Functions
---------------
This plugin currently does the following, in addition to the above:
--Nothing yet, watch this space!

If you have suggestions, step forth!

-------
Contact
-------
You can find me on the UnrealAdmin.org and UT99.org forums, under the name
'Meindratheal'. I am happy to try to add more to Nexgen, as I have had plenty
of experience using it (I have modified the core a number of times, as well as
some plugins to improve their functionality).

-------
Credits
-------
Daan 'Defrost' Scheerens: First and formemost, for creating such a brilliant
                          server controller, and for leaving the code intact.
                          I have learnt most of my coding from Nexgen, so I
                          thank you.
The UnrealWiki:           The Offline Wiki has been invaluable for me, however
                          old it may be. It has been the other key element in
                          my UScript learning. Thanks go out to all contributors!
The UnrealAdmins forum:   You are a great community, and you still do a great
                          service to the game by continuing to make it better.
                          I only coded this for my servers, which I only got
                          running thanks to your guidance :)

Other: You may do what you want with the serverside package, provided it stays
serverside (as many people may have different versions). However, please do not
re-compile the NexgenClientsideExtensions112b package, as it may cause version
mismatches. Source code is included so you can see how it works. If you do
recompile it, then a) make a post in the forum thread on UnrealAdmin saying what
you changed (it might be a major bug, it might just be preference) b) make
sure you give it a new, non-generic name, and c) keep me credited!


---------
Changelog
---------
Version 112, Clientside revision 2, Serverside revision 3:
--Added support for UTPure in the F2 fix
--Fixed the compatibility mode check in the controller.

Version 112, Clientside revision 1, Serverside revision 2:
--Added a fix for the F2 info not displaying bug.

Version 112, Serverside revision 1:
--Added commands for TeamSpeak.

Version 112:
--Initial release.