# ETJump 3.0.0

## Breaking
- reworked __g_blockCheatCvars__ to be a bitflag cvar

## Added
- new timerun system with checkpoint support, seasons and score rankings
  - __etj_drawCheckpoints__ & related cvars to control checkpoint drawing
  - __target_checkpoint__ and __trigger_checkpoint__ entities
  - __trigger_starttimer__ & __trigger_stoptimer__ entities
  - ___ext__ versions of all timerun trigger entities for mapscripting
  - improved records printing (__records/ranks/times/top__)
    - ability to query records from any map on the server
    - __records__ command can be used as admin command __!records__ (flag __a__)
    - all parameters support partial matching
  - __g_timeruns2Database__ cvar to set new timerun database name on server (default __timeruns.v2.db__)
    - old timerun database will automatically be migrated to the new database format
- edge-only snaphud (__etj_drawSnapHUD 2__) - draw only the end points of snap zones
  - __etj_snaoHUDEdgeThickness__ controls the drawing thickness (__1 - 128__)
- support __autoexec_default__ on client - executed if __autoexec_mapname__ isn't present
- __etj_noPanzerAutoswitch__ cvar to disable autoswitch after firing a panzerfaust
  - switch still occurs if completely out of ammo
- fireteam savelimit controls in fireteam admin menu via new __Rules__ page
- fireteam savelimit indicator in fireteam UI
- bbox drawing for following entities when __g_scriptDebug 1__ is enabled
  - __trigger_multiple_ext__ (green)
  - __trigger_starttimer_ext__ (blue)
  - __trigger_stoptimer_ext__ (blue)
  - __trigger_checkpoint_ext__ (magenta)
  - __func_fakebrush__ (red)
- bundled fixed mapscripts for __branx__, __branx2__ and __freestyle__ with the mod so they work out of box without a custom script

## Changed
- __records <run>__ now shows top 20 times by default, instead of top 50
- fireteam savelimit default changed to __-1__ (unlimited), __0__ disables saving
- fireteam UI no longer draws ranks and locations
- fireteam UI no longer draws class string for spectators
- limbo menu camera now tries to display view from spectator spawn point if no limbo cameras are present in the map
  - only works if the spectator spawn point is in current PVS

## Fixed
- actions executed on __load__ (e.g. autodemo recording) were executing on wrong clients
- __g_blockedMaps__ was blocking maps by partial name match
- spectator list was not hidden when scoreboard was visible
- picking up weapons was impossible after they were removed by __target_init__
- cvar unlockers were de-synced after map restart
- fireteam savelimit was not correctly communicated to all fireteam members
- __etj_fireteamAlpha__ was partially ignored for fireteam UI health display