Duelers Mod 1.4
===============

- this version has been purged of all contributions by Marker (at his insistence)
- rebuilt hilts
- rebuilt sound mod
- rebuilt background image
- completely Marker Free


Duelers Mod 1.3.1
=================

- two levels of admin created. Full control for each (including thunder and screenshake)
  is provided.
- a clanpass for private chat has been added for FFA games. Use the "team" chat.
- a bug with admin silence has been fixed (if you turned off some admin fun features, the
  silence command would no longer work).
- name changes are now logged to the gamelog
- suicides can now be prevented by setting the m_nk cvariable to 1.
- greater care was needed to prevent certain "static" or "frozen" emotes (e.g.
  sleep, kneel, sit, etc.) locking up when other players grip you during the emote. Now,
  although the grip still causes your animation to change, you will not be permanently frozen.
  Pressing the emote key again will "release" the emote to a normal state.
- if you use duel "overtime" and reset the game timelimit during an overtime period, the
  "overtime" session is correctly reset and duels can now be started.
- allow duels in team mode games
- add setmap command for admins
- more IP address logging: when joining a map and when name is changed. This is to make
  it easier to identify players from game logs (by name) who are misbehaving and ban them.



Duelers Mod 1.3
=================

- extended voting capabilities to allow admins to define new voting options to
  change mod and/or server settings. UI for voting has been changed to support
  server/admin specified voting capablities.
- voting can be allowed or disallowed for individual vote types. m_rV is now a bit
  field. Default setting (m_rV=530) allows only map changes, kicking players and the new
  mod control voting.
- client customizable roll animation. UI setup available to select perferred roll
  animations. Alternately, animations can be controlled by client side cvars.
- key bind scanning can be enabled to prevent clients from using macros
  to execute special moves. (eg. kick, blue special, etc.)
- 10 new emotes added
- colour added to crosshair information in non-team based gametypes.
- cvars for eliminating grapple and jetpack from duels in FFA have been added.
  m_dngp and m_dnjp disable grapple and/or jetpack during duels (This cvar has
  no effect in a tournament game).
- you can't use bacta during duels (unless you are in a Tournament game).
- IP addresses are logged on connect. Look for (-> xxx.xxx.xxx.xxx:xxxx) in gamelog.
- all admin command usage is logged. Who used what on whom is logged. Trivial commands
  like 'who' and 'info' are not logged.
 thunder sounds when admin commands are used (LOL). Thunder and screen shaking are
  heard/seen only when close to the client affected by the admin command.
- server admin can "mask" individual (pairs of) admin commands to enable or disable their
  use by server admins
- partial client names (substrings) can be used in admin commands (if un-ambiguous)
- teleport to generic location (x,y,z) command added
- spectating no longer sets your score to zero (but may cost you a score point in
  some gametypes).
- new cvar m_aa (allActivity) to make g_timeouttospec and g_inactivity timers consider
  any client activity rather than just motion and attack.
- NOTE: client side cvariable for setting admin password is changed from admin_password
  to c_aP.
- restored EAX sound options and language locale options to setup menus (now same as basejk)
- g_fraglimit set to zero no longer disables fraglimit checking in a duel gametype.
- add showmotd_gun command and add the showmotd description to the "info" admin command
- default value for m_dcu is now 2 (was 1). Just tuning for typical tournament setting
  where best players play best players with as little waiting for combatants as reasonable.
- in tournaments, if players are too close when a duel is started each player is "punted"
  a small distance to prevent them getting stuck together when the duel begins. (E.g.
  when non-interference is enabled, players can actually be standing in each other!)
- in tournaments, kills that happen outside of game established duels (when m_dNF is 0)
  are not logged. This ensures that statistics created from the logs contain only
  "official" duel kills.
- new background screen with duelers website url listed.
- a bug/exploit to lag out a server by rapidly changing saber configurations has been 
  fixed. Changing from single to dual or double bladed sabers is constrained to approx.
  twice each second -- so you can still change pretty quickly when you need to.
- better checking of valid saber stances in cases where server configuration may have
  been changed on the fly has been implemented. This was required to support new voting
  capabilities, but may also clean up a few cases where stance and saber configurations
  did not match until the saber attack cycle button was pressed.
- administratively frozed players are no longer effected at all by force powers.
- fixed bug where enabling single click kicks would still allow you to kick with no force
  jump power allocated (or in a no-force game).
- punch emote can no longer be used to escape saber locks, etc.
- new level added to name change limits -- a new setting allows only name changes while
  spectating.
- more aggressive checking was added to "invisible saber" bug fix.
- created brand new (rather than edited) animations for new roll animations to avoid
  conflicts where these animations are used elsewhere in the code
- fixed up all emotes to use standard animation enumerations so new future animations
  can be added without messing up all emotes!
- fixed bug where player could continue to move and jet around if frozen while using jetpack
- reduced jetpack idle sounds by 5 dB -- they were annoyingly loud.
- fixed bugs where admin state for a client(slot) would not get reset upon client disconnect.
- fixed bug where grapple would not be free'd if client died or disconnected while it was
  activated.
- fixed bug where blocked saber is not "lit" up on return to owner even though it does cause
  damage if it hits you.
- tracked down and stomped hard on a bug which would "free" your saber if it hits a player
  while "blocked". This is, I hope, the long standing mysterious bug where your thrown saber
  would sometimes fail to ever return....


Duelers Mod 1.2.1
=================


- increased the number of models/skins that the UI can display (from 256 to 512)
- disallow changing saber configuration from single to dual or dualblade during 
  special attacks
- fixed bug in basejk code that allows data from spectators who have followed you
  to over-ride current data about you -- this could manifest itself in a number of
  nasty ways, but what we saw was dissapearing sabers after a throw once some
  spectator had followed you. The specator origin info was over-writing your saber
  return location! Interestingly this bug does not seem to occur in the basejk game
  but does occur in *every* mod that is based on the Raven source code. [I checked
  adminmod, jediplus, jedimod, and duelers].
- fixed the "invisible saber" bug/exploit in the base game code.
- added some "memory" to retain state of dual blades over respawns.
- fixed bug where administratively frozen players could kill themselves and restore
  force powers (but they were still frozen ;-)
- extended operation of "nerf spin" cvar to orange and purple specials (set m_ns to 2).
- reset client name cvar to original if attempt is made to change name illegally
- adjust client hilt cvar if attempt is made to use reverse hilt illegally
- extend restrictions on use of emotes during combat, eg. saber attacks and locks.
- fixed up much tck hilt code in the client -- reduced thrashing of hilt models
- fixed hilt texture bug in listen servers for the host client
- added code to prevent single click kicking off walls -- only clients. This eliminates
  the annoying kick/flip behaviour when you are trying to simply jump over some
  obstacles.
- allow sabers to be ignited before a duel starts in tournament games
- added access for admins to the 'showmotd" command to redisplay MOTD to players
- administratively frozen players will not take damage from other players.
- removed cvar m_ssd as it is essential redundant with g_scaleSaberDamage.
- becoming a spectator no longer resets your score to zero in the Tournament Gametype.
  This allows aggressive use of g_timeouttospec to switch AFK players to spectator
  without overly penalizing them.
- g_timeouttospec now functions. The default setting is 60 secs. A player inactive for
  60 seconds will be move to the spectators. This reduces the problems of AFK players
  particulary in Tournament games.
- fixed up some formatting issues with large numberic scores and ping stats on the
  scoreboard
- updated the language used to report duel stats.
- fixed bug with spectators showing up on scoreboard as if they were currently dueling.
- added silliness checks for m_shp.
- use colour to enhance duel health/shield stats.
- added further vote restriction settings for m_rv to restrict votes to map
  changes only.
- enhanced infochange throttle code to allow the first change made by a user to occur
  immediately but if a series of rapid changes are made, throttle is engaged and only
  once the rapid changes have ceased will an update be made to clients.
- fixed up hilt icons in main menu player setup so the fit better into the feeder.




Duelers Mod 1.2
===============


- all mod cvars have been renamed. The quake 3 engine imposes a buffer limit of 1024
  characters for serverinfo data, clientinfo data, and many other string based mechanisms
  used to send data between the clients and server. The serverinfo information from the base
  game cvariables uses about 75% of this space. In order to crowd as much function as
  possible into the remaining space, I have shortened all mod cvars as much as possible.
  Unfortunately this makes the cvar names rather cryptic. The good news is that
  more function can be packed in to the mod. The bad news is that you may have to update
  your server config files.
- New Tournament (Duel) logic
	- players are assigned ladder postion by score
	- players are automatically assigned duels based on adjacent position in
	  ladder
	- the range of acceptable duel matchups is set by mod_duelChallengeUp
	  (default is 1). If mod_duelChallenge is zero, any challenge will be valid.
	- duelers are isolated if mod_duelNoInterference is 1 (the default, and heck,
	  the whole point!).
	- players not currently dueling can play FFA with no impact on score or can
	  just watch other duels.
	- FFA play can be disabled by cvar
	- players can switch to SPECTATE and they will be removed from duel play until
	  they rejoin the game. However, their score will be set to zero.
	- killing yourself during a duel forfeits the match but your score is not set
	  to zero.
- extension of duel non-interference to full weapons play:
	- enabled full weapons during multi-duel play while using the new tournament
	  logic. You can also pick up weapons, ammo, seeker drones, stationary
	  sheilds and sentry guns while dueling. Try one on one in a full free for all
	  map with all weapons.
	- added extensive support for non-interference when all weapons are used. No weapon
	  will interfere with you or damage you during a duel.  Unfortunately,
	  it is nearly impossible to deal with all possible visual or sound effects that
	  can be created by weapons or items so you may see or hear things that are not
	  related to you or your opponent. Examples include: doors open and close for no
	  apparent reason (of course, someone used it, but you can't see them); items
	  disappear for no apparent reason (someone you can't see acquired it).
	- this extension required an enourmous amount of detail work and code changes
	  throughout to tag all entities with owner information and then check that owner
	  information when any action was indicated -- there may still be missed bits! Do
	  let me know if you find one!
- cvar m_rs to enable realistic scaling. This is somewhat experimental. The idea is that
  to balance small and large players, small players are faster but hit less hard where-as
  large players hit very hard but are slower. See full docs for more detail.
- cvar m_ssd to allow scaling of saber damage. Relative damage of all stances and special
  attacks remains the same.
- cvar m_shp to allow larger damage from all attacks once shield energy is fully depleted.
- cvar m_gps to set the speed of the grapple as it is extended
- cvar m_gpps to set the speed of the player being pulled by the grapple.
- added sound to the grapple
- name cheat limits:
	- if m_nCL is 1, you can only change your name when you have
          100 hp.
	- if m_nCL is 2, you cannot change your name after connecting.
	- these features are intended to defeat players who change their names when
	  losing a duel in order to prevent accurate long term statistics gathering
	  from log files.
- enhancements to scoreboard and crosshair information to show current duel opponents
  if any.
- new graphics effect to show frozen players.
- new ban code that allows the full number of IP address fitlers (1024) to be used
  for banning players. No server crashing!
- when you choose a hilt in the UI both right and left hilts are set to your choice
  rather than just the right hilt. You can still use the console commands "hilt" or
  "hilt2" if you want two different hilts.
- support for reverse hilts for the left hand has been added
- new duels cannot be started when in "overtime". Overtime is when the timelimit is
  extended to allow current duels to finish before the exiting a level.
- changed and cleaned up "dualsaber" and "dualblade" commands.
	- no requirement to turn saber off first
	- no peculiar "no such command" messages
- changed m_sS (scale sabers) to only effect saber length and *not* damage. Saber
  damage scales as the character and *not* the length of the saber.
- jump sounds (grunt) eliminated from blue stance special (lunge) move
- jump sounds (grunt) eliminated from rolls.
- saberhitwall sounds moved to the AUTO sound channel to reduce interference with
  saber swing sounds. Fixed saberhitwall sound debounce to play sound only on initial
  impact with the wall.
- single click kicks won't happen if the attack key is being pressed. This reduces
  the number of times that a kick will happen when close to an opponent instead of
  the intended{(?) special attack (eg. flip attack).
- change m_jp to support Merc vs. Jedi games (like the grapple)
- grapples think! after attaching and will stay put on another player if they move
  after you hook on to them....
- when client scaling is enabled setting "scale 0.0" in client will reset model to
  default size.
- corrected a stupid error on my part where the server admin password would be
  broadcast to all connected clients if it was changed.... sheesh!
- fixed a problem where second hilt would remain visible after a non-saber weapon
  was selected.
- doors and other "movers" will correctly play sounds if you activiate them during a duel
- finally tracked down and fixed (at least part of) that darn allocation bug with tck
  sabers. If you ever got "Alloc" errors on saber hilts with eventual client crash....
  you know what I mean. Turns out, the problem was that the original code did not handle
  the serverside models well. This meant that hilt models for sabers that were thrown got
  passed to the client with no checking for a valid model.
- fixed up some bugs in the interaction of the jetpack and "frozen" emotes (sit, kneel,
  sleep).
- fixed up bugs with emotes while using full weapons (mostly a failure to return to weapon
  ready stance).
- added a client side cvar ui_skinColour. The UI will now remember the last skin colour you
  used, so you won't have to constantly change it if you don't use the default.
- added code to throttle rapid changes in client information. Rapidly changing model info
  is a way to lag a server and potentially exploit reconnect bugs -- not to mention the
  annoyance caused to other clients! When client information is changing more than once per
  second, the server will simply wait until the information stops changing rapidly and then
  update other clients.

Duelers Mod 1.1
===============

- cleanup UI
	- make main menu consistent with in-game menu
	- add hilts options to main menu
	- move standard and tck saber colour settings to common menu
	- rename a few things
	- move some elements to prevent overlaps under certain conditions
- added hollow blade and black core options:
	- core can have a thin black center
	- blade can be hollow (so it does not overlay or mask core colours)
	- new shaders for black core and black saber trails
- UI for new saber options/colours with self checks for acceptable minimum luminosity
	- self checks and resets of illegal colours behave a little more sensibly
	- luminosity requirements increased, black core requires still more luminosity
- additional cvars for jetpack fuel rates (idle vs. thrusting)
- Admin functions added
	- admin password set on server, clients set their passwords via cvar
	- functions act via console commands or key bindings
	- list all available admin commands with the "info" command
	- list all current players with client number with the "who" command
	- standard admin commands are: freeze, thaw; silence, speak; bring, goto;
	  tzone, real; boot; rename
	- admin commands take either a client name or client number
	- admin guns available: freeze_gun, thaw_gun; silence_gun, speak_gun;
          boot_gun; rename_gun; tzone_gun, real_gun
	- guns work on current target (the gun commands should be bound to a key)
- duel stats
	- optional duel stats where the winner's health and sheilds at the end of the
	  duel are announced
	- all end of duel announcements are printed at the top of screen rather than in
	  center
- additional force mastery rank
	- jedi council, adds 50 more force points to spread around
	- this will be used in additional force power levels in a future release
- interference free dueling code which includes:
	- server side and client side traces so there are no pauses/jerky motion when
	  the client thinks you hit something and then is overriden by server
	- full support for saber entity masking, including thrown sabers, so they also
	  don't interact at all with other players
	- client side support so sound from other players is not heard
	- note: the isolation code is not perfect for non-saber weapons!
- optional elimination of the glow around players when dueling. The glow only tells you
	  about your distance from the other player (relative to the duel sever length)
	  and so it is not needed so much when duel non intereference is enabled!
- it is now normal for a player to spawn with saber holstered
- optimization and clean up of code (old and new) continues.
	- fixed bug in base code where force points were calculated incorrectly when
	  joining a saber only game. Typically, this would result in your having to
	  reassign your saber throw to level three every time you joined a game.
	- eliminated jedimod bug where potential freeze ups would occur when using
	  certain emotes while in another animation. E.g. hit /sit while rolling.
	- eliminated compile kludge of CLIENTCOMILE and CLIENTSIDE ifdefs from Jedimod.
	  Code now uses the standard game ifdefs of QAGAME and UI_EXPORTS.
	- updated batch files for building qvm files to properly define QAGAME, UI_EXPORTS
	- bug fix for second saber status updates after grapple or jetpack use.
	- re-wrote the saber hilt model allocation code. The base jedimod code was not very
	  careful about repeated trying to allocate a saber model that did not exist.
	- fixed bug in bot honourable acceptance where bots would meet bots and stand
	  in place waiting for a saber challenge
	- fixed a very nasty bug in the jedimod code for blockedThrow that would result
	  in corrupt entitity state information and an eventual server crash.
	- misc. optimization and cleanup of unused variables and potential memory leaks...


Duelers (FFAmod) 1.02
======================

- no new features.
- continuing clean up of code (including basejk and jedimod code)
- fixed pointer bug in new duel code that could crash server


Duelers (FFAmod) 1.00
======================

- first release, everything new.
