Friday, August 22, 2014

Thinking about updates to CS:GO I'd like to see

//Drax's CS:GO suggestions for updates

demo recording and playback system overhaul
auto record 64/128 tick full precision pov demos of every game played
auto record 64/128 tick full precision gotv demos of every game played
add cvar demo_autorecord (1 or 0)
update demo_gototick to support instant rewinds via negative relative ticks (ex: demo_gototick -500 1)
update demoui with a horizontally scrollable timeline with divisions between each round and markers for each event within each round
update demoui to include a full game scorecard which updates when hovering the mouse over the timeline
update demoui to include a per-round scorecard which updates when clicking the timeline

spectating zoomed angle precision fix (when spectating zoomed awp the aiming angle appears innacurate)
world model geometry hitbox accuracy fix (ex: edges of trucks, trains)
ducking / re-ducking fix (ducking and un-ducking too rapidly causing the view height to bug)
awp zoom while ducking / re-ducking fix
grenade hitting player sticking them in position fix
killed-by gui popup getting stuck on screen fix
scoreboard not displaying fix
radar not displaying fix
smoke grenade grey-out when outside of smoke fix
he grenade exploding behind smoke making geometry and playermodels visible through smoke fix
he grenade damage system fix (sometimes no damage, sometimes super damage)
hitbox precision from behind and while planting fix
changelevel before gotv delay cuts off the broadcast early fix

set mp_c4timer to 35 in matchmaking (competitive standard)
set mp_roundtime to 1.75 in matchmaking (competitive standard)

wallbanging / bullet penetration system overhaul
playermodel hitbox system overhaul (full precision instead of low-fidelity hitboxes)
stats system complete overhaul (Awards -> Stats)
bottom screen scorecard overhaul (fix to display accurate stats)
autodirector overhaul
matchmaking ELO / rank system overhaul
VAC system overhaul (implement heuristic probability analysis)
autoexec.cfg / config.cfg / launch options / game settings overhaul (store and retrieve game configurations on steam)
allow players to share their game configurations on their steam profile

display teammate kevlar/helmet icon in new column on scoreboard
at top of screen display round wins for each half and rounds until 16 (ex: 9-6, 4-1, 13/16)
separate all cvars into logical categories and color code cvar text in console
eliminate extraneous outputs in console
improve cvar description text in console (add descriptions for all cvars including default, min, max, and suggested values.)
fix cvar description text being truncated in console
improve alt-tab delay in fullscreen mode
implement easy-to-use dedicated server GUI
provide suggested / optimal configuration(s) for dedicated server
allow using Options screen while in Lobby
allow using Browse Community Servers while in Lobby
allow connecting to and playing in community servers while in a Lobby
allow auto-joining a community server while connected to another community server (play in one server while waiting for a slot to open on another)

add cvar to toggle resetting scores on scoreboard per half (display full scores at match completion)
add cvar to control how many milliseconds +jump must occur to perfectly bounce (improve consistency of strafejumping)
add cvar to control how long death notices stay on screen in top right
add cvar(s) to control whether players can re-buy in buyzone and what can be re-bought (re-buying he grenades etc.)
add cvar to control how many games are saved in the "Watch" tab (default to unlimited)

crosshair system overhaul (simplify and support more specific customization)
//these crosshair_spread cvars could be obfuscated from players and cl_crosshairstyle could set these cvars behind the scenes to achieve the desired effect
//personally I would rather allow all of these cvars to be customizable by players
add cvar cl_crosshair_spread (0 or 1 - controls whether the crosshair spreads open when firing)
add cvar cl_crosshair_spread_min (minimum spread value, when crosshair spread is fully cooled down)
add cvar cl_crosshair_spread_max (maximum spread value, when crosshair spread is fully spread out)
add cvar cl_crosshair_spread_rate (rate at which the crosshair spreads - 1.0 = match current weapon time to recoil max)
add cvar cl_crosshair_spread_coolrate (rate at which the crosshair shrinks back to minimum spread - 1.0 = match current weapon time to recoil min)
add cvar cl_crosshair_spread_punch (0 or 1 - controls whether the crosshair "punches" open for each bullet fired)
add cvar cl_crosshair_spread_punch_min (minimum punch value, when the crosshair spread punch is fully cooled down)
add cvar cl_crosshair_spread_punch_max (maximum punch value, when the crosshair spread punch is fully spread out)
add cvar cl_crosshair_spread_punch_rate (rate at which the crosshair spread punches open for each bullet fired - 1.0 = match current weapon firing rate)
add cvar cl_crosshair_spread_punch_coolrate (rate at which the crosshair spread punch shrinks back to spread_punch_min - 1.0 = match current weapon firing rate)
add cvar cl_crosshair_spread_pip (0 or 1 - controls whether the crosshair pips lengthen when firing)
add cvar cl_crosshair_spread_pip_min (minimum lengthening of the crosshair pips)
add cvar cl_crosshair_spread_pip_max (maximum length of the crosshair pips)
add cvar cl_crosshair_spread_pip_rate (rate at which the length of the crosshair pips increases - 1.0 = match current weapon time to recoil max)
add cvar cl_crosshair_spread_pip_coolrate (rate at which the length of the crosshair pips decreases - 1.0 = match current weapon time to recoil min)
add cvar cl_crosshair_spread_pip_punch (0 or 1 - controls whether the length of the crosshair pips "punches" in length for each bullet fired)
add cvar cl_crosshair_spread_pip_punch_min (minimum pip punch value, when the crosshair pip length is fully cooled down)
add cvar cl_crosshair_spread_pip_punch_max (maximum pip punch value, when the crosshair pip length is fully spread out)
add cvar cl_crosshair_spread_pip_punch_rate (rate at which the crosshair pips lengthen for each bullet fired - 1.0 = match current weapon firing rate)
add cvar cl_crosshair_spread_pip_punch_coolrate (rate at which the crosshair pips shrink back to spread_pip_punch_min - 1.0 = match current weapon firing rate)
add cvar cl_crosshair_movement_spread (0 or 1 - controls whether the crosshair spreads when the player moves)
add cvar cl_crosshair_movement_spread_min (minimum spread value, when movement velocity is 0)
add cvar cl_crosshair_movement_spread_max (maximum spread value, when movement velocity is at maximum)
add cvar cl_crosshair_movement_spread_rate (rate at which the crosshair spreads - 1.0 = match player velocity / acceleration)
add cvar cl_crosshair_movement_spread_coolrate (rate at which the crosshair shrinks back to minimum spread - 1.0 = match player velocity / acceleration)
add cvar cl_crosshair_outline_usealpha
add cvar cl_crosshair_outline_alpha
add cvar cl_crosshair_outline_color
add cvar cl_crosshair_outline_color_r
add cvar cl_crosshair_outline_color_g
add cvar cl_crosshair_outline_color_b
implement fully precise crosshair customization GUI in "game settings" screen
allow saving and restoring multiple crosshair configurations
allow players to share their crosshair configuration(s) on their steam profile