
 ~ X-Battle a modification for Quake 4 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   Url:   http://www.xbattle.de/
   Mail:  info@xbattle.de
   Wiki:  http://wiki.xbattle.de/

   Feel free to visit us at #battlemod in QuakeNet :)

 ~ Development history ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
   v0.23 fix ~ April 26th, 2006
     chg: keel/tankjr/footsteps sounds removed. now using original q4base sounds.
          but dont be worry about it, we are working on better ones. see this
          sounds only as hotfix to give you the PR 1.2 release asap.
     
     one thing we forgot to add in the changelog yesterday:
     add: exception handler for windows and linux. q4 crashes will catched and
          logged to disk. please send us this logfiles if you got one. it helps
          us to locate bugs faster.

   v0.23 ~ April 25th, 2006

     fix: coach works correctly on listenservers now (evil thing!)
     fix: ref_allcaptain sets correct captain status
     fix: powerups not disappearing in hud when switching spectated player.
     fix: reset ready status on mapchange.
     fix: powerups are shown again if spectating a player.
     fix: vote-menu shows vote "yes" and "no" when using XBM votes.
     fix: autofollow no longer toggles between players with the same priority
          powerup.
     fix: fixed an issue with skipworldfx and simpleitems on listenserver spawn.
     fix: scoreboard / skins show wrong teams.
     fix: fixed a problem with client projectile collision detection.
     fix: spectators hud receives events like flagTaken, flagDrop or flagReturn
     fix: overtime modes now works correctly again.
     fix: map votes via menu work again in special combinations.
     fix: own railtrail color in non-teamgames.
     fix: pro-marine / pro-strogg teamskin now works as brightskins too.
     fix: scorebot freezebug after a mapchange.
     fix: removed ready status when switching to spectator or switching team.
     fix: cleared player scores after team switch.
     fix: fragged player in gametype ClanArena don't disappear in teamoverlay.
     fix: glow effects are now correctly handled with r_skipWorldFX.
     fix: spectators now see fragmessages of spectated player in their hud.
     add: spectators and coaches now see overlay info at crosshair.
     add: cl_nomip to allow changing graphics to picmip 1, regardless of current
          picmip settings.
     add: cl_q3Zoom to allow q3 zoom style. ( community request )
     add: global PU spawn sound like it was in q3 when g_PUbehavior is
          enabled.
     add: cl_ammoCheck to controls the behaviour of empty weapons.
     add: s_altEnemySounds to use tankjr sounds for an opponent model. ( community request )
     add: captain commands "captains", "invite", "pickplayer", "removeplayer"
          "kickplayer", "resign", "teamready", "readyteam", "accept"
          and "decline"; see client-commands.txt for details.
     add: match_lateJoin to enable/disable players to join a running match.
     add: team_allCaptain to control player captain assignment.
     add: team_noControls to disable captain commands on e.g. public servers.
     add: team_noTeamReady to disable "teamready" command.
     add: vote_allow_allcaptain to control "allcaptain" vote.
     add: new vote option "allcaptain".
     add: hardconfigs for NGL.
     add: new value '2' for hud_showTeamHealth to show plain text instead of
          graphical icons in aimtext at crosshair.
     chg: aimtext at crosshair shows up immediatelly without fading in.
     chg: default cl_enemyColor* / cl_teamColor* colors changed to red/blue.
     chg: not showing captain icons in scoreboard with team_allCaptain set.
     chg: new captain icons in scoreboard
     chg: coachInvite, coachKick, teamlock, teamunlock, time, timeout and timein
          commands are limited to captains in team games.
     chg: g_allowShaftInWater now is really like it was in QuakeWorld!
     chg: machine gun sound 5db increased. (ori q4: -3db / previous XBM: -13db / now: -8db
     chg: cl_teamRails command description.
     chg: gametype/hardconfig votes no longer reset vote_allow_gametype cvar.
     chg: g_firstPURandomSpawn renamed to g_PUbehavior and added to hardconfigs.
     chg: voteoption firstpurandomspawn|fpurs renamed to pubehavior|pub.
     chg: g_PUbehavior 1 now also sets the time until a dropped powerup is
          removed from the map changed to 30 seconds (q3style).
     chg: players/listPlayers missing colorcode added.

   v0.22 SDK 1.1 ~ April 2nd, 2006

     fix: gui votes now work properly again
     fix: hud-team is updated to team of spectated player if spectating
     fix: ping on scoreboard-tab of summary in CTF is shown at correct position
     fix: no longer showing incorrect item pickups for spectators.
     fix: crosshair now disappears if spectating free fly.
     fix: nickcolors no longer override the colorcode of deathmessages.
     fix: hitsounds are now playing correctly when using a listenserver.
     fix: missing powerup symbols in teamoverlay.
     fix: net score not resetted after localmaprestart.
     fix: changed auto record demo filename to fit arg completion of command
     	  playNetDemo
     fix: auto action screenshot is taken 500ms after gamestate change to
     	  GAMEREVIEW to assure summary board is drawn complete
     add: showing flag carrier name in hud right of the flag icons in gametype CTF
     add: now showing 'caps' in scoreboard and scoreboard-tab in summary
     add: real follow mode for spectators, selectable triggers are flags,
     	  powerups, items (RA, MH) and killer - controlled via the new CVars
     	  cl_followPU, cl_followItem and cl_followKiller.
     	  See client-commands.txt for a detailled explaination of follow mode!
     add: command 'follow' to switch to the player wearing a special powerup or 
     	  to the last player that took up a given item; 'follow <id>' switches
     	  to the player with the client id as listed with command listPlayers.
     add: cl_altSimpleItems to enable XBM simpleitems.
     add: m_accel option to cl_weaponConfig. (client-commands.txt!)
     add: s_ambient to control ambient sounds (ofcourse on the fly).
     add: cl_muzzleFlash to enable/disable the drawing of the muzzleflash.
     add: average ping on scoreboard-tab on summary.
     add: new vote option 'firstpurandomspawn' to make g_firstPUrandomSpawn
          voteable.
     add: cl_teamRails to control the behaviour of the railcolor.
     add: cl_enemyColorRail and cl_teamColorRail to allow user defined railcolors
          for your team and enemy.
     chg: cl_teamForceColors now supports the bit 4 for the teamrail color and
          default changed to 15.
     chg: auto record demos now contain countdown.
     chg: disabled votes 'selfdamage' and 'fallingdamage' in gametype CA
     chg: changing map according to the selected gametype to avoid.
          server halts on misconfiguration of map/gametype combination.
     chg: vote_allow_gametype is now a bitmask to control in details which
          gametype votes are allowed
               1 - Deathmatch (FFA)
               2 - Tourney
               4 - Team Deathmatch
               8 - Capture the Flag
              16 - *reserved*
              32 - Arena Capture the Flag
              64 - *reserved*
             128 - ClanArena
             256 - Duel
     chg: updated to SDK 1.1 final.
     chg: argcompletion for model names shows all models if freemodels set on
          server.
     chg: the railtrail is now always drawn in picmip 0.

   v0.21b SDK 1.1 public beta ~ March 26th, 2006

	 fix: item pickups are now shown in hud when spectating a player.
	 fix: votes called via console are now displayed in hud below vote info.
	 fix: fixed soundshader problems with q3 style pain sounds.
	 fix: renamed 'netto' to correct english 'net' on team scoreboard. :)
	 fix: play 'teams are tied', 'marine team leads' and 'strogg team leads'
	 	  announcer sounds in ClanArena.
	 fix: renamed cl_gimmikMod to cl_gimmickMod for correct spelling.
	 add: (client)callVote <option> now shows whether this vote is allowed
	 	  or not on the server.
	 add: g_allowShaftInWater to control behaviour of the shaft while using
	 	  it in water.
	 add: new death icons for new methods of death.
	 add: now showing which players are fragged in teamoverlay in gametype
	 	  ClanArena.
	 add: added players symbols for referee, coach & captain to scoreboard.
	 add: added some new referee commands:
	 	  unref - remove referee status
	 	  ref_readymarine|strogg - set all marine|strogg players ready
	 	  ref_unreadymarine|strogg - set all marine|strogg players unready
	 	  ref_promote_marinecoach - promotes a player to coach team marine
	 	  ref_promote_stroggcoach - promotes a player to coach team strogg
	 	  ref_demote_coach - removes coach status from a player
	 	  ref_allcaptain - gives captain status to all players
	 	  ref_promote_marinecaptain - promotes captain for team marine
	 	  ref_promote_stroggcaptain - promotes captain for team strogg
	 	  ref_demote - removes captain status from a player
	 	  ref_lock - locks all teams
	 	  ref_unlock - unlocks all teams
	 	  ref_lockmarine|strogg - locks team marine|strogg
	 	  ref_unlockmarine|strogg - unlocks team marine|strogg
	 add: server->client traffic reduced with changed serverinfo handling.
	 add: custom huds with cl_hud, currently available are 'quake4' and 'xbm'.
	 add: new system to allow / disallow votes based on prefix vote_allow_.
	 add: a big bunch of new vote values, see client-commands.txt for details.
	 add: 5 new/updated map location files. special thanx to LKFF (especially Sc00T).
	 chg: recorded autoaction demos now show the summary board at end of game.
	 chg: q3 style drowning damage.
	 chg: timein can be called during timeout without 5s floodprotection delay.
	 chg: in ClanArena players spawn with 150 armor, removed armor decay.
	 chg: hud_ammoBar extended with option for not drawing ammoBar.
	 chg: hardconfig 'server' for gametype Duel is now called duel.cfg.
	 chg: brightskins to have the look better.
	 chg: showing tab 'scoreboard' instead of tab 'summary' at end of game
	 	  for autoaction screenshots.
	 chg: single player code removed.
	 chg: partial rewrite of hud code to improve performance and allow custom
	      huds.
	 chg: tons of rewrites to assure code quality.
	 chg: si_scoreBotSupport default to 1, since the scorebot cant produce lag
	      anymore.
     rem: hud_barStyle cvar.

   v0.20 ~ February 28th, 2006

     fix: cl_weaponConfig(x) client game crash. now all 18 crosshairs are
          allowed.
     fix: demo / autorecord bug.
     fix: cl_weaponConfigX now allows all 18 crosshairs and no longer can
          crash the client.
     fix: missing grenade and dmg glow texture readded.
     fix: map location files now support all valid linebreaks formats and no
          longer cuts off the teamchat line.
     fix: hud wasnt drawn if g_skipViewEffects was enabled.
     fix: server log output now recognizes arenas in tourney games correctly.
     fix: hud no longer shows -1 for infinity ammo.
     fix: scorebot no longer shows wrong player ids.
     fix: spectators can no longer see teamchat from their old team.
     fix: chatline linebreaks now restores default messagemode color.
     fix: teamchats are no longer played with a publicchat sound.
     fix: auto-generated filesnames (demorecord) will now replace invalid chars
          with an _ (underline).
     add: timeout / timein / time command to pause/unpause a running match
     add: teammate hitsounds ( s_altHitsounds 1 only ).
     add: Q3 like damage feedback sounds depending on opponents health
          ( s_altHitsounds 1 only ).
     add: 'ClanArena' gametype and voteoption.
     add: 'InstaGib' gameplay.
     add: gametype 'Duel' as you know it from quake3.
     add: si_roundLimit to set roundlimit for round based games like CA
     add: match_timeoutLength to control the maximal length of a timeout
          before the game goes on.
     add: material water for map makers. like in q2dm1 or q3ctf2. mappers will
          soon find a tutorial on our homepage on how to add water in your
          own maps.
     add: different sound files for water effects.
     add: match_timeoutCount to control the maximum number of timeouts in 
          a game per team.
     add: match_overtime to control different types of overtime modes.
     add: match_overtimeLength to set the length in minutes for each overtime round.
     add: match_overtimeCount to set the maximum number of overtime rounds before
          the match can end in a tie or switch to sudden death.
     add: server cvar match_fallingDamage.
     add: server cvar match_selfDamage.
     add: g_instaGib cvar to enable/disable instagib gameplay.
     add: 'instagib' as callvote option to (dis)allow instagib gameplay.
     add: netto stats in Team DM scoreboard.
     add: colored pings depending on ping times as you know it from osp.
     add: cl_gimmikMod ( whos the first? ).
     add: coach functionality from osp. ( coach, coachInvite, coachDecline, coachKick etc. )
     add: g_onlyArmorTD added to change between full and armor only teamdamage.
     chg: various fixes to improve gameplay smoothness.
     chg: sg glow adjusted.
     chg: si_teamDamage restored to id default to avoid a conflict with the current
          1.0.6 linux patch.
     chg: all hud symbols and pickable items are now drawn in picmip 0 regardless
          of your image_downSize settings ( except ctf flags ).
     chg: new overtime + timeout control commands added to Kuh3Liga + ClanBase
          hardconfigs.
     chg: gameclock forced to be count up in overtime mode and clock color will 
          change to yellow to indicate overtime mode.
     chg: scoreboard background color changed to a transparent black.
     chg: all black colorcodes are replaced to white at the summary board.
          ( to allow readable auto-screenshots for leagues )
     chg: following player and waiting on more player string replaced to the top of the
          HUD.
     chg: addloc / delloc / listloc are no longer cheat protected commands.
     chg: weaponicon colored background border removed in statusbar and replaced with
          a real weapon icon.
     chg: statusbar font changed.

   v0.12 ~ January 22th, 2006

     fix: missing teamscore bug.
     fix: missing warmup weapons bug. this time for sure :)
     fix: nailgun bgcolor in weaponswitch
     fix: (raven/id bug) q4base will crash by trying to vote a map without flags
          in a ctf gametype.
     fix: small issue with g_maxRespawnTime fixed.
     add: cl_simpleItems to draw 3D models as 2D icons. (requested like hell)
     add: referee mode to force several match stuff. see client-commands for full
          details.
     add: forced configs to allow the forcing of standard settings for leagues.
          use callvote option setconfig <name> <gametype> to force a standard
          config. name can be : Quake4, XBattle, ClanBase, Kuh3Liga.
     add: enhanced log support.
          the following server commands were added to control the log support:
          g_statsLog           - enables statistics log output.
          g_statsLogEmptyGames - determines whether games with no player action
                                 will be logged or not.
          fs_statsPath         - path to statstics log file
     add: cl_statsUserName <string>, cl_statsPassword <string> to identify player
          in server statistics.
     add: chattokens for teamgames:
          #h - player health colored by value
          #H - player health
          #A - player armor
          #U - lists all powerups the player is currently wearing
          #w - player weapon as shortext. like RG for RailGun etc.
          #W - player weapon as icon.
          #D - damaged by. the last player which attacked you.
          #P - last item that was picked up.
          #I - nearest item name.
          #L - your location.
     add: r_skipWorldFX <bitmask> to remove some world effects.
           0 - Skip nothing
           1 - skips the drawing of the glow effects around items.
           2 - skips the drawing of the visual effects for item spawnpoints.
           4 - skips the drawing of the visual effects for jumppads.
           8 - skips the drawing of the visual effects for teleporter.
          16 - skips the drawing of the visual effects for fog, sparks
               and some more.

          To remove an effect just add his value.
          i.e : A value of 31 removes all visual effects!
          a value of 6 only removes the item spawnpoints and jumppad effects.
     add: user defined map-location support for the teamoverlay and teamchat.
          to add a location you can use the following commands :
          addloc <locationname> - to add a location. It will automaticly saved to
                                  the battle/locs folder. i.e.: mapname.cfg
          listloc               - displays all known locations for this map
          delloc <id>           - delete an entry out of the location-file.
     add: cl_editMapLocations to toggle the drawing of the area number in the
          teamoverlay on/off (useful for creating locationfiles)
     add: cl_weaponConfigs to allow the usage of separate settings for each
          weapon.
          The weapons-cfgs can be set with the cvars cl_weaponConfig0 up to
          cl_weaponConfig9.
          Arguments are : g_fov, sensitivity, ui_showGun, g_crosshairCustomFile,
          g_crosshairSize, g_crosshairColor in rgb hex color.
     add: si_autoAction <bitmask> to enforce several things from server-side
          bitmask:
          1 statsdump at the end of the match
          2 take endlevel screenshot
          4 records a demo
          So a value of 7 will do everything.
     add: cl_autoAction <bitmask> to enforce several things from client-side
          bitmask:
          1 statsdump at the end of the match
          2 take endlevel screenshot
          4 records a demo
          So a value of 7 will do everything.
     add: players / listplayers commands to list all players with id, team,
          flags (ref,coach,captain) and names.
     add: .pakFileList serverinfo cvar which contains all loaded pk4's files
          a client needs to connect to the server.
     add: match_respawnOnSD command to control respawn for sudden death.
     chg: matchtimer visible in warmup and sudden death ( always counts up )
     chg: teamoverlay now shows playerlocation / nearest item.
     chg: hud_drawTeamOverlay positioning: 1 upper right, 2 lower right and
          3 lower left.
     chg: r_displayRefresh works now in MP.
     chg: chat and teamchat appears in q3 style (requested).
     chg: g_gibs and g_blood renamed to cl_gibs and cl_blood.
     chg: recolored weaponmodel textures and glowtexture added.
     chg: scorebot serverinfo names got a . prefix.
          like .Score_Marine / .Score_Time etc.
          to allow smart serverbrowsers to display it sorted at the top of
          the list.
     chg: g_voteFlags now work for callvote.

   v0.11a ~ December 24th, 2005 (unsupported x-mas hotfix)

     fix: invisible items like armor, are now visible again.
     fix: rocketlauncher missing in warmup should be there again (we couldn't test it much, but until now it worked).
     fix: old health/armor values from previous teamgames are no longer drawn at crosshair in non team gametypes
     add: cl_weaponBobbing to toggle the serverside bobbing
     add: hud_weaponHighlight to control the hightlight style of the weaponswitch
     add: hud_ammoColor to control the colorizing of the ammo
     add: hud_weaponSwitch 3 to use osp/cpm like vertical weaponswitch
     add: cl_useScreenShotJPEG cmd to use .jpg instead of .tga's for screenies.
     chg: r_skipSpecular works now in MP
     chg: command prefix changed for most of the client commands from ui_ to cl_
          list of changed cvars:
          cl_enemyColorIntensity - cl_enemyColorArms - cl_enemyColorTorso
          cl_enemyColorLegs - cl_teamColorIntensity - cl_teamColorArms
          cl_teamColorTorso - cl_teamColorLegs - cl_rocketTrail - cl_grenadeTrail
          cl_nailTrail - cl_tinyRailTrail
     chg: slower fadeoff of crosshair aim info
     chg: ammo now right-justified for all weaponswitches
     chg: g_gun-position variables set to nocheat (changeable in multiplayer)
     chg: ambientlight now changeable without maprestart

   v0.10 ~ December 18th, 2005

     fix: pm_stairJumps <0|1> allows strafejumping on stairs
     chg: bobbing cvars can be changed in multiplayer
     chg: clientcallvote info in console
     chg: map weapons are now available during warmup.
     chg: crosshair size is adjustable stepless from 1-100
     chg: g_fov is allowed from 20-150
     chg: crosshair info distance raised
     chg: si_teamdamage <0|1|2>
     chg: hud_barStyle, hud_ammoBar, hud_ammoVisible, hud_weaponVisible and
          hud_weaponSwitch are now "true" cvars.
     add: readystatus in scoreboard
     add: si_freeModels <0|1> allow using of all models
     add: si_scoreBotSupport <0|1>
     add: si_scoreBotRefreshRate <1-60> scorebot-info refresh interval
     add: teamlock & teamunlock commands
     add: teamdamage is votable by gui ( multiplayer vote menu )
     add: pm_smoothBoxJumps <0-16> allow smoother jumping on boxes
     add: ui_weaponBobbing <0|1> toggles bobbing of weapon
     add: ui_rocketTrail <0|1> show/hide rockets smoke
     add: ui_grenadeTrail <0|1> show/hide grenades smoke
     add: ui_nailTrail <0|1> show/hide nailtrail
     add: ui_tinyRailTrail <0|1> dis-/enable the tiny railtrail
     add: ui_enemyColorArms  <RRGGBB> enemy models arms color
     add: ui_enemyColorLegs  <RRGGBB> enemy models legs color
     add: ui_enemyColorTorso <RRGGBB> enemy models torso color
     add: ui_teamColorArms  <RRGGBB> arms color
     add: ui_teamColorLegs  <RRGGBB> legs color
     add: ui_teamColorTorso <RRGGBB> torso color
     add: ui_teamColorIntensity  <0 - 1.0> specifies brightskins brightness
     add: ui_enemyColorIntensity <0 - 1.0> specifies brightskins brightness
     add: ui_teamForceColors <0-7> set which parts are forced to your teamcolors
     add: hud_showTeamHealth <0|1> display health/armor of teammates
     add: hud_drawTimer <0|1|2> toggles timer appearence
     add: hud_drawTeamOverlay <0|1> toggle teamoverlay
     add: hud_showJumps <0|1> display jump distance
     add: hud_showSpeed <0|1> display player speed
     add: hud_lagometerPosition <x y> to set the x/y position of the lagometer
     add: green armor support. +25 Armor. editorname: 'item_armor_jacket_mp'
     add: 'item_armor_jacket_mp' entity to editor under pickup->item menu
     add: g_blood <0|1> toggle the blood effects
     add: g_gibs <0|1> toggle the playergib effects
     add: g_fastWeaponSwitch <0|1> toggle sg/hb fast weaponswitch
     add: g_spawnType <0-3> set different player spawn behavior
     add: r_ambientLightOnly <0|1-2> to enable only ambientlights on the map.
     add: g_altMinRespawnLimit <0|1> toggles the use of alternative minimum spawn times for players.
     add: g_maxRespawnTime <2-60> changes the maximum spawn time for players
     add: s_altHitsounds <0-1> allows the usage of alternate hitsounds ( q3 sounds ).
     add: 'callvote' as alias for clientCallvote

     \clientcallvotes:
     chg: teamdamage <0|1|2>     - see si_teamdamage
     add: stairjumps <0|1>       - see pm_stairjumps
     add: smoothboxjumps <0-16>  - see pm_smoothboxjumps
     add: freemodels <0|1>       - see si_freemodels
     add: fastswitch <0|1>       - see g_fastWeaponSwitch
     add: spawntype <0-3>        - see g_spawnType
     add: altminspawnlimit <0|1> - see g_altMinRespawnLimit
     add: maxrespawntime <n>     - see g_maxrespawntime

   v0.05 ~ November 12th, 2005

     chg: grenade texture changed and recolored
     chg: switched to another brightskin technique using shaders
     fix: corpse model has a brightskin now
     add: turned the machinegun sound down about 10db
     add: little gloweffect for weapons
     add: armor shards got a green brightskin
     add: hud_weaponvisible <0|1|2> Toggles the visability of the weapon bar
     add: hud_weaponswitch <0|1|2> Positions the weapon bar
     add: hud_ammovisible <0|1|2> Toggles the visibility of your current ammo
     add: hud_ammobar <0|1|2> Positions the current ammunition value
     add: hud_barstyle <0|1> How the Health/Armor/Ammo Bars are displayed (Beta)

   v0.04 beta ~ October 30th, 2005

     add: loading screen shows XBM version and URL
     add: removed all three startup intros.
     add: advanced HUD ( THX to SoRDiD-DDT )

   v0.03 beta ~ October 27th, 2005

     add: new brightskins for both teams
     add: deadbody brightskin

   v0.02 alpha ~ October  25th, 2005

     fix: missing marines and strogg models colored
     add: grenadecolor recolored to yellow/red

   v0.01 alpha ~ October 5th, 2005

     add: marine team models are forced to a bright green color
     add: one strogg team model recolored to be white
     add: grenadecolor recolored to green

 ~ eof ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     