***********************************************************************************
* Nali Weapons 3 - ReadMe
*
*	Feralidragon (tutano2004@gmail.com)
*	02-Nov-2012
***********************************************************************************


0. Index
___________________________________________________________________________________

	1. About
	2. Instalation
	3. Credits
	4. Permissions
	5. Server setup
	6. ZeroPing
	7. Commands, bindings and codes
	8. Known issues
	9. Last notes





1. About
___________________________________________________________________________________

Nali Weapons 3 is the sequel of Nali Weapons II X, and after 2 years of development
it brings several remakes of the previous weapons, as well completely new weapons.

This ReadMe is just a basic reference on the info of the mod, as well credits and 
permissions.
For more advanced information about the pack such as information on each weapon, 
ini files, ZP security settings, development and other "hidden" features, please look 
into the "NW3 Advanced Docs" for all the information concerning this pack.
The "NW3 Advanced Docs" can be found in the following websites (in the downloads section):

	Moddb: http://www.moddb.com/mods/nali-weapons-3
	
	Blogspot: http://feralidragon.blogspot.pt/




2. Instalation
___________________________________________________________________________________

In case you got the .zip version, all you need to do is extract all the contents from
the System folder within this zip to the System folder of your Unreal Tournament
install, and done!
Yeah, it's that easy.

In case you got the .umod version, you probably already have it installed since you're
able to read this already.




3. Credits
___________________________________________________________________________________

I (Feralidragon) did the whole mod alone (yeah, that's why it took this long, not easy 
to make the job of a coder, 3D modeller and animator, sounds, visual effects, skins, 
etc, etc...... during my short free time), however some resources were borrowed from 
other Unreal Tournament games such as Unreal Tournament 2004 and Unreal Tournament 3 
(which can be done legally by the way).
These resources were basic mapping textures, a few sprites and many sounds, many which 
were heavily modified to make totally new sounds, sprites and textures.
As for the code, skins, models, effects and everything else (95% of the pack), 
it's 100% created from scratch with my bare hands and with whatever computer I could 
work with.

There are also just about 3 textures and about 10 sounds I borrowed and modified from 
the UT2k4 mod Ballistic Weapons, with due permission from the team at Runestorm (thanks guys!).

All the custom fonts are not originaly mine, they are free fonts from:
www.1001freefonts.com
www.dafont.com

And during the beta-phase a small trustworthy team of UT players, admins and developers were
assembled for the beta-testing, which also helped greatly to improve of the final product
with bug reports and suggestions. These people are (in no particular order):
- {WINGS}Boss
- GenMoKai
- papercoffee
- JackGriffin
- Metalfist
- MutedSlayerKing
- FraGnBraG
- Pileyrei
- Dr.Flay





4. Permissions
___________________________________________________________________________________

Well, you're free to use this mod in your maps, server, wherever you want, really!

As for the development of new mods, you cannot modify the original packages without
my explicit permission. If you intend to do so, please drop me an email or ask me in
one of the many communities I am around, and we can discuss about that (odds are that
most of what you want to make don't need direct modifications).

What you can do however is to rip anything from the pack to do your own mod, for example:
- let's say you need something to work just like the Graviton beam, you can rip anything from
its code (as the whole mod code is open, nothing is hidden);
- let's say you want one of the effects for your mod, you can also rip it;
the same with models, textures, etc...

Credit is not essential at all for this, but it would be nice anyway if you did so at least 
for code, models and effects.
And while doing so, if you have any doubt or curiosity on how something works or how it was made, 
don't be shy, you can ask me and I will likely reply to you.

You can also create new packages using the NW3 core features directly (by depending on NWCoreV3
package) and even subclass any element of any package (let's say you want to make a sniper out
of the Ionizer, you're free to do so as long as you don't change the actual package, and create
a new subclass in a new package instead).

And of course, you can NOT sell this mod (it's even illegal for me to do it, let alone you).
This mod should be provided free of charge at all times (if you bought this pack from
someone then I am sorry to inform that you were scammed...).

You can also redistribute this package by any *free* means, as long as you keep this package
intact (you know, the usual mambo jambo).




5. Server setup
___________________________________________________________________________________

Well, there are many ways to setup a NW3 server, since it highly depends on what kind
of server you want to open, such as: Deathmatch? Monsterhunt? Instagib?
And also the kind of balance you want to give to the weapons: weak? Balanced? Overpowered?

This pack is completely modular, so you are able to make a server with only the weapons
and other small things you want.
However for now let's assume you want to host the entire pack (for info on how to
make a server with just the things you want please consult the document referenced
in "1. About" above).


a) First, you need to add all the needed .u file names that come with the pack to your
server UnrealTournament.ini ServerPackages, as follows:

ServerPackages=NWCoreV3
ServerPackages=NWMHExtrasV3
ServerPackages=NWExtrasV3
ServerPackages=NWModifiersV3
ServerPackages=NWBoltRifleV3
ServerPackages=NWCybotLauncherV3
ServerPackages=NWFlameTrackerV3
ServerPackages=NWFreezerV3
ServerPackages=NWGravitonV3
ServerPackages=NWIonizerV3
ServerPackages=NWIRPRV3
ServerPackages=NWMegatonV3
ServerPackages=NWMultiMissileV3
ServerPackages=NWNuclearFXV3
ServerPackages=NWNuclearLauncherV3
ServerPackages=NWRTV3
ServerPackages=NWSuperBoltRifleV3
ServerPackages=NWTheExecutionerV3
ServerPackages=NWTheMinerV3
ServerPackages=NWUltimaProtosV3
ServerPackages=NWVulcanV3
ServerPackages=NWWREV3


b) Secondly, you need to choose what kind of server you want: do you want a DM, CTF or MH server?
Having chosen that, start up your own UT install (as if you were going to play).
In UT main menu, go to Mod > Nali Weapons 3 Profiles and select the proper profile for your server:
- each profile has a different balance setup, proper for each gametype. So for MH you may want either
"Monsterhunt Challenge" or "Monsterhunt Party" (the difference being that the latter is stronger).
For any other gametype you can choose any other (the profile names are self explanatory I believe).


c) Now, you leave UT, and you can retrieve all the NW3 .ini files and copy them to your server install:
NWConfig.ini
NWeaponsCfg.ini
NWExtrasCfg.ini
NWNuclearCfg.ini


d) From there, all there's left to do is to choose the mutators you want to load up from NW3:

NW3 - Nali Weapons 3 (NWCoreV3.NWMainReplacer)
	The main NW3 mutator, it will replace all weapons by NW3.

NW3 Extras - Nuclear Warning HUD (NWExtrasV3.NWNuclearWarningMut)
	A mutator that gives the players a warning about a nuke about to blow up.

NW3 Extras - Monster Hunt (NWMHExtrasV3.NWMHMut)
	Special mutator to be loaded for Monsterhunt servers, as it gives health regeneration,
	ammo regeneration and periodic random rewards to players over time.

NW3 Extras - Modifiers (NWModifiersV3.ModifMut)
	Spawns random weapon modifiers in the map (mostly used in Monsterhunt servers).

NW3 Extras - I.R.P.R. Arena (NWIRPRV3.IRPRArena)
	NW3 sniper arena.

NW3 Extras - Super Bolt Rifle Arena (NWSuperBoltRifleV3.SuperBoltRifleArena)
	NW3 instagib arena.


For example, if you want a Monsterhunt server, perhaps you may want to load these:
NWCoreV3.NWMainReplacer,NWMHExtrasV3.NWMHMut,NWModifiersV3.ModifMut

For CTF, perhaps these:
NWCoreV3.NWMainReplacer,NWExtrasV3.NWNuclearWarningMut

And so on...


e) Just start your server and done. :D


NOTE: In case you have a mapvote with different gametypes (like DM and MH for example), you can load a
different profile for each one, however I won't cover that up in this document.
For more info about this feature, consult the document mentioned at "1. About" above.

NOTE 2: PLEASE, use always some form of redirect service for your server! By setting up a redirect 
(even from your own server machine) you will reduce *greatly* the amount of data the players
will have to download from your server.
For example: the NWCoreV3.u file of this pack has 21Mb, but compressed (NWCoreV3.u.uz) in a redirect
server has only 6Mb!




6. ZeroPing
___________________________________________________________________________________

Yeah, that's right, this pack has ZeroPing for hitscan weapons, such as:
W.R.E., Bolt Rifle, Super Bolt Rifle, Vulcan and I.R.P.R.

However the actual code is much different from the ZeroPing you're actually used to, as
it's my own code and has nothing to do with the ZeroPing you find in the servers nowadays.
This one works with EVERYTHING, and the code is open for anyone to create their own
ZP weapons.
However, by being open the code is not insecure, each and every ZP shot is validated
in the server before being accepted, and there are a ton of things checked which not
even the current ZP covers as far as I am concerned (I tried to make it so it would
be actually easier to create an aimbot rather than cheat ZP itself).

Also, if any exploit is found in the current ZP, NW3 can load up ZP security plugins
to fix these exploits, therefore if someone finds a way to cheat it, all it takes is
to drop a few lines of code, compile a package with about 1kb and load it up in the server,
and voil, exploit gone, no need to re-release any of the weapons nor deactivate ZP.

Plus, the current standard ZP code can be easily obtained by very simple means (so there's 
no use in hiding or obfuscate code nowadays, the true hackers and exploiters already
know how to circumvent that small obstacle).


ZP is enabled by default, but you can disable it for all weapons or only specific weapons
in your server if you wish to:
- Global toggle: open NWConfig.ini > [NWCoreV3.NaliWeapons] > enableZPServer
- Toggle ZP in a specific weapon: NWeaponsCfg.ini > [the weapon you want] > enableZPWeaponServer


Players can also deactivate it on their side, all they have to do is have one of these weapons
currently selected in-game, open the console and type exactly:
- "zp off": disables ZP for all weapons
- "zp on": enables ZP if ZP is also enabled in the server
- "zp weapon off": disables ZP for the current selected weapon alone




7. Commands, bindings and codes
___________________________________________________________________________________


a) Summon commands/codes: Most weapons can be spawned by using the "summon NW<weapon>V3.<weapon>" logic.
For example, if I want to loadup a BoltRifle, all I have to type is:
summon NWBoltRifleV3.BoltRifle

Here's a list of summons:
summon NWRTV3.RT 					Razored Translocator
summon NWTheExecutionerV3.TheExecutioner		The Executioner
summon NWWREV3.WRE					War Ready Enforcer
summon NWFlameTrackerV3.FlameTracker			Flame Tracker
summon NWBoltRifleV3.BoltRifle				Bolt Rifle
summon NWSuperBoltRifleV3.SuperBoltRifle		Super Bolt Rifle
summon NWGravitonV3.Graviton				Graviton
summon NWFreezerV3.Freezer				Freezer
summon NWVulcanV3.Vulcan				Vulcan
summon NWTheMinerV3.TheMiner				The Miner
summon NWMultiMissileV3.MultiMissile			MultiMissile Launcher
summon NWIRPRV3.IRPR					InfraRed Precision Rifle
summon NWCybotLauncherV3.CybotLauncher			Cybot Launcher
summon NWMegatonV3.Megaton				Megaton
summon NWMegatonV3.MegatonDecoder			Megaton Decoder
summon NWIonizerV3.Ionizer				Ionizer
summon NWUltimaProtosV3.UltimaProtos			UltimaProtos
summon NWNuclearLauncherV3.NuclearLauncher		Nuclear Launcher Level 0
summon NWNuclearLauncherV3.NuclearLauncherLevelA	Nuclear Launcher Level 1
summon NWNuclearLauncherV3.NuclearLauncherLevelB	Nuclear Launcher Level 2
summon NWNuclearLauncherV3.NuclearLauncherLevelC	Nuclear Launcher Level 3
summon NWNuclearLauncherV3.NuclearLauncherLevelD	Nuclear Launcher Level 4
summon NWNuclearLauncherV3.NuclearLauncherLevelE	Nuclear Launcher Level 5


b) Some keybindings:
Enter - Toggle the lock on weapon modifiers (Monsterhunt), so in case you get just the *right*
	modifier for you, you can lock it so you don't loose it in case you step onto another modifier.
	(it annoyed the hell out of me too when I played with NW2X in MH)

0-9 keys - Use to setup the timer and password in the Megaton and Megaton Decoder.




8. Known issues
___________________________________________________________________________________

Despite my full honest attempts to make this pack as stable and functional as possible,
there are a few issues which remained:

1 - The Graviton beam is particularly affected by ping. The lower the ping, the more accurate is your swing.
I even thought in adding ZP for the Graviton too, but it would be too troublesome. Perhaps one day...

2 - The nukes may make a few MH maps unfinishable, for killing too much and in the wrong
order. Actually this is the mapper's fault on how he setup triggers and such (as the same map 
unfinishable status can be achieved with other weapons from other mods), but in most maps there's 
no problem though.

3 - In case you build a HUGE empty map, you're one step away for a render crash already.
If you blow the hell out of it, then sooner or later your render will really crash.
Basically the fault aren't the nukes themselves, it's the engine render which gets buggy in
really huge maps, but 99% of the maps out there aren't like that so the likelihood of crashing
in any map is very very veeeery slim.
NOTE: In a server, the nukes NEVER crash the server itself, only a client (not all) may have a render
crash himself in his end alone, as this is just a limitation in rendering, thus client-side only.
So if you are a server admin, *don't worry*.
And again, I can't stress this enough: this does NOT happen in 99% of the maps (and generaly these 1%, 
are just MH or test maps built specifically to blow up nukes) so it's safe to use nukes.

4 - My english is not the best, so the descriptions in the menus and even in this document may be
rather hilarious or just plain confusing at times. Good communication is key!




9. Last notes
___________________________________________________________________________________

Thank you everyone for the great support and comprehension over these 2 long years, 
and I expect that this pack is within your expections and you can get actually have
fun playing with it.

Also, some statistics relative the composition of this pack:
* 59735 lines of code (excluding blank lines and comments)
* 1775 textures
* 1205 classes
* 426 3D models
* 370 sounds

In all, the whole source is composed by nothing less than 5376 files.



Enjoy :)




