--- /dev/null
+ // {{{ #1: Blaster
+ set g_balance_blaster_primary_animtime 0.3
+ set g_balance_blaster_primary_damage 35
+ set g_balance_blaster_primary_delay 0
+ set g_balance_blaster_primary_edgedamage 10
+ set g_balance_blaster_primary_force 400
+ set g_balance_blaster_primary_force_zscale 1
+ set g_balance_blaster_primary_lifetime 30
+ set g_balance_blaster_primary_radius 70
+ set g_balance_blaster_primary_refire 0.7
+ set g_balance_blaster_primary_shotangle 0
+ set g_balance_blaster_primary_speed 9000
+ set g_balance_blaster_primary_spread 0
+ set g_balance_blaster_secondary 0
+ set g_balance_blaster_secondary_animtime 0.3
+ set g_balance_blaster_secondary_damage 35
+ set g_balance_blaster_secondary_delay 0
+ set g_balance_blaster_secondary_edgedamage 10
+ set g_balance_blaster_secondary_force 400
+ set g_balance_blaster_secondary_force_zscale 1
+ set g_balance_blaster_secondary_lifetime 30
+ set g_balance_blaster_secondary_radius 70
+ set g_balance_blaster_secondary_refire 0.7
+ set g_balance_blaster_secondary_shotangle 0
+ set g_balance_blaster_secondary_speed 9000
+ set g_balance_blaster_secondary_spread 0
+ set g_balance_blaster_switchdelay_drop 0.15
+ set g_balance_blaster_switchdelay_raise 0.15
+ set g_balance_blaster_weaponreplace ""
+ set g_balance_blaster_weaponstart 1
+ set g_balance_blaster_weaponstartoverride -1
+ set g_balance_blaster_weaponthrowable 0
+ // }}}
+ // {{{ #2: Shotgun
+ set g_balance_shotgun_primary_ammo 1
+ set g_balance_shotgun_primary_animtime 0.2
+ set g_balance_shotgun_primary_bullets 6
+ set g_balance_shotgun_primary_damage 9
+ set g_balance_shotgun_primary_force 60
+ set g_balance_shotgun_primary_refire 0.5
+ set g_balance_shotgun_primary_solidpenetration 3.8
+ set g_balance_shotgun_primary_spread 0.07
+ set g_balance_shotgun_reload_ammo 0
+ set g_balance_shotgun_reload_time 2
+ set g_balance_shotgun_secondary 2
+ set g_balance_shotgun_secondary_animtime 1
+ set g_balance_shotgun_secondary_damage 80
+ set g_balance_shotgun_secondary_force 200
+ set g_balance_shotgun_secondary_melee_delay 0.25
+ set g_balance_shotgun_secondary_melee_multihit 1
+ set g_balance_shotgun_secondary_melee_no_doubleslap 1
+ set g_balance_shotgun_secondary_melee_nonplayerdamage 40
+ set g_balance_shotgun_secondary_melee_range 120
+ set g_balance_shotgun_secondary_melee_swing_side 120
+ set g_balance_shotgun_secondary_melee_swing_up 30
+ set g_balance_shotgun_secondary_melee_time 0.15
+ set g_balance_shotgun_secondary_melee_traces 10
+ set g_balance_shotgun_secondary_refire 1.25
+ set g_balance_shotgun_secondary_alt_animtime 0.2
+ set g_balance_shotgun_secondary_alt_refire 1.2
+ set g_balance_shotgun_switchdelay_drop 0.15
+ set g_balance_shotgun_switchdelay_raise 0.15
+ set g_balance_shotgun_weaponreplace ""
+ set g_balance_shotgun_weaponstart 1
+ set g_balance_shotgun_weaponstartoverride -1
+ set g_balance_shotgun_weaponthrowable 1
+ // }}}
+ // {{{ #3: Machine Gun
+ set g_balance_machinegun_burst 0
+ set g_balance_machinegun_burst_ammo 3
+ set g_balance_machinegun_burst_animtime 0.75
+ set g_balance_machinegun_burst_refire 0.05
+ set g_balance_machinegun_burst_refire2 0.75
+ set g_balance_machinegun_burst_speed 0
+ set g_balance_machinegun_first 1
+ set g_balance_machinegun_first_ammo 1
+ set g_balance_machinegun_first_damage 30
+ set g_balance_machinegun_first_force 50
+ set g_balance_machinegun_first_refire 0.2
+ set g_balance_machinegun_first_spread 0.015
+ set g_balance_machinegun_mode 0
+ set g_balance_machinegun_reload_ammo 0
+ set g_balance_machinegun_reload_time 2
+ set g_balance_machinegun_solidpenetration 13.1
+ set g_balance_machinegun_spread_add 0.02
+ set g_balance_machinegun_spread_max 0.6
+ set g_balance_machinegun_spread_min 0.02
+ set g_balance_machinegun_sustained_ammo 1
+ set g_balance_machinegun_sustained_damage 15
+ set g_balance_machinegun_sustained_force 27
+ set g_balance_machinegun_sustained_refire 0.1
+ set g_balance_machinegun_sustained_spread 0.05
+ set g_balance_machinegun_switchdelay_drop 0.15
+ set g_balance_machinegun_switchdelay_raise 0.15
+ set g_balance_machinegun_weaponreplace ""
+ set g_balance_machinegun_weaponstart 0
+ set g_balance_machinegun_weaponstartoverride -1
+ set g_balance_machinegun_weaponthrowable 1
+ // }}}
+ // {{{ #4: Mortar
+ set g_balance_mortar_bouncefactor 0.5
+ set g_balance_mortar_bouncestop 0.075
+ set g_balance_mortar_primary_ammo 2
+ set g_balance_mortar_primary_animtime 0.3
+ set g_balance_mortar_primary_damage 70
+ set g_balance_mortar_primary_damageforcescale 4
+ set g_balance_mortar_primary_edgedamage 25
+ set g_balance_mortar_primary_force 400
+ set g_balance_mortar_primary_health 25
+ set g_balance_mortar_primary_lifetime 30
+ set g_balance_mortar_primary_lifetime_stick 1
+ set g_balance_mortar_primary_radius 140
+ set g_balance_mortar_primary_refire 0.8
+ set g_balance_mortar_primary_remote_minbouncecnt 0
+ set g_balance_mortar_primary_speed 2000
+ set g_balance_mortar_primary_speed_up 200
+ set g_balance_mortar_primary_speed_z 0
+ set g_balance_mortar_primary_spread 0
+ set g_balance_mortar_primary_type 0
+ set g_balance_mortar_reload_ammo 0
+ set g_balance_mortar_reload_time 2
+ set g_balance_mortar_secondary_ammo 2
+ set g_balance_mortar_secondary_animtime 0.3
+ set g_balance_mortar_secondary_damage 70
+ set g_balance_mortar_secondary_damageforcescale 4
+ set g_balance_mortar_secondary_edgedamage 38
+ set g_balance_mortar_secondary_force 400
+ set g_balance_mortar_secondary_health 10
+ set g_balance_mortar_secondary_lifetime 2.5
+ set g_balance_mortar_secondary_lifetime_bounce 0
+ set g_balance_mortar_secondary_lifetime_stick 0
+ set g_balance_mortar_secondary_radius 140
+ set g_balance_mortar_secondary_refire 0.7
+ set g_balance_mortar_secondary_remote_detonateprimary 0
+ set g_balance_mortar_secondary_speed 1400
+ set g_balance_mortar_secondary_speed_up 200
+ set g_balance_mortar_secondary_speed_z 0
+ set g_balance_mortar_secondary_spread 0
+ set g_balance_mortar_secondary_type 1
+ set g_balance_mortar_switchdelay_drop 0.15
+ set g_balance_mortar_switchdelay_raise 0.15
+ set g_balance_mortar_weaponreplace ""
+ set g_balance_mortar_weaponstart 0
+ set g_balance_mortar_weaponstartoverride -1
+ set g_balance_mortar_weaponthrowable 1
+ // }}}
+ // {{{ #5: Mine Layer (MUTATOR WEAPON)
+ set g_balance_minelayer_ammo 4
+ set g_balance_minelayer_animtime 0.4
+ set g_balance_minelayer_damage 40
+ set g_balance_minelayer_damageforcescale 0
+ set g_balance_minelayer_detonatedelay -1
+ set g_balance_minelayer_edgedamage 20
+ set g_balance_minelayer_force 250
+ set g_balance_minelayer_health 15
+ set g_balance_minelayer_lifetime 10
+ set g_balance_minelayer_lifetime_countdown 0.5
+ set g_balance_minelayer_limit 3
+ set g_balance_minelayer_protection 0
+ set g_balance_minelayer_proximityradius 150
+ set g_balance_minelayer_radius 175
+ set g_balance_minelayer_refire 1.5
+ set g_balance_minelayer_reload_ammo 0
+ set g_balance_minelayer_reload_time 2
+ set g_balance_minelayer_remote_damage 45
+ set g_balance_minelayer_remote_edgedamage 40
+ set g_balance_minelayer_remote_force 300
+ set g_balance_minelayer_remote_radius 200
+ set g_balance_minelayer_speed 1000
+ set g_balance_minelayer_switchdelay_drop 0.15
+ set g_balance_minelayer_switchdelay_raise 0.15
+ set g_balance_minelayer_time 0.5
+ set g_balance_minelayer_weaponreplace ""
+ set g_balance_minelayer_weaponstart 0
+ set g_balance_minelayer_weaponstartoverride -1
+ set g_balance_minelayer_weaponthrowable 1
+ // }}}
+ // {{{ #6: Electro
+ set g_balance_electro_combo_comboradius 0
+ set g_balance_electro_combo_comboradius_thruwall 0
+ set g_balance_electro_combo_damage 80
+ set g_balance_electro_combo_edgedamage 0
+ set g_balance_electro_combo_force 200
+ set g_balance_electro_combo_radius 250
+ set g_balance_electro_combo_safeammocheck 0
+ set g_balance_electro_combo_speed 2000
+ set g_balance_electro_primary_ammo 2
+ set g_balance_electro_primary_animtime 0.3
+ set g_balance_electro_primary_comboradius 0
+ set g_balance_electro_primary_damage 65
+ set g_balance_electro_primary_edgedamage 0
+ set g_balance_electro_primary_force 200
+ set g_balance_electro_primary_lifetime 30
+ set g_balance_electro_primary_midaircombo_explode 0
+ set g_balance_electro_primary_midaircombo_interval 0
+ set g_balance_electro_primary_midaircombo_radius 0
+ set g_balance_electro_primary_radius 150
+ set g_balance_electro_primary_refire 0.6
+ set g_balance_electro_primary_speed 2000
+ set g_balance_electro_primary_spread 0
+ set g_balance_electro_reload_ammo 0
+ set g_balance_electro_reload_time 2
+ set g_balance_electro_secondary_ammo 2
+ set g_balance_electro_secondary_animtime 0.3
+ set g_balance_electro_secondary_bouncefactor 0.5
+ set g_balance_electro_secondary_bouncestop 0.075
+ set g_balance_electro_secondary_count 1
+ set g_balance_electro_secondary_damage 50
+ set g_balance_electro_secondary_damagedbycontents 0
+ set g_balance_electro_secondary_damageforcescale 4
+ set g_balance_electro_secondary_edgedamage 0
+ set g_balance_electro_secondary_force 200
+ set g_balance_electro_secondary_health 5
+ set g_balance_electro_secondary_lifetime 5
+ set g_balance_electro_secondary_radius 150
+ set g_balance_electro_secondary_refire 0.3
+ set g_balance_electro_secondary_refire2 0
+ set g_balance_electro_secondary_speed 900
+ set g_balance_electro_secondary_speed_up 200
+ set g_balance_electro_secondary_speed_z 0
+ set g_balance_electro_secondary_spread 0.04
+ set g_balance_electro_secondary_touchexplode 0
+ set g_balance_electro_switchdelay_drop 0.15
+ set g_balance_electro_switchdelay_raise 0.15
+ set g_balance_electro_weaponreplace ""
+ set g_balance_electro_weaponstart 0
+ set g_balance_electro_weaponstartoverride -1
+ set g_balance_electro_weaponthrowable 1
+ // }}}
+ // {{{ #7: Crylink
+ set g_balance_crylink_primary_ammo 2
+ set g_balance_crylink_primary_animtime 0.3
+ set g_balance_crylink_primary_bouncedamagefactor 0.5
+ set g_balance_crylink_primary_bounces 1
+ set g_balance_crylink_primary_damage 18
+ set g_balance_crylink_primary_edgedamage 0
+ set g_balance_crylink_primary_force -55
+ set g_balance_crylink_primary_joindelay 0
+ set g_balance_crylink_primary_joinexplode 0
+ set g_balance_crylink_primary_joinexplode_damage 0
+ set g_balance_crylink_primary_joinexplode_edgedamage 0
+ set g_balance_crylink_primary_joinexplode_force 0
+ set g_balance_crylink_primary_joinexplode_radius 0
+ set g_balance_crylink_primary_joinspread 0
+ set g_balance_crylink_primary_linkexplode 1
+ set g_balance_crylink_primary_middle_fadetime 5
+ set g_balance_crylink_primary_middle_lifetime 5
+ set g_balance_crylink_primary_other_fadetime 0.25
+ set g_balance_crylink_primary_other_lifetime 0.1
+ set g_balance_crylink_primary_radius 80
+ set g_balance_crylink_primary_refire 0.4
+ set g_balance_crylink_primary_shots 4
+ set g_balance_crylink_primary_speed 7000
+ set g_balance_crylink_primary_spread 0.03
+ set g_balance_crylink_reload_ammo 0
+ set g_balance_crylink_reload_time 2
+ set g_balance_crylink_secondary 1
+ set g_balance_crylink_secondary_ammo 2
+ set g_balance_crylink_secondary_animtime 0.2
+ set g_balance_crylink_secondary_bouncedamagefactor 0.5
+ set g_balance_crylink_secondary_bounces 0
+ set g_balance_crylink_secondary_damage 18
+ set g_balance_crylink_secondary_edgedamage 5
+ set g_balance_crylink_secondary_force -55
+ set g_balance_crylink_secondary_joindelay 0
+ set g_balance_crylink_secondary_joinexplode 0
+ set g_balance_crylink_secondary_joinexplode_damage 0
+ set g_balance_crylink_secondary_joinexplode_edgedamage 0
+ set g_balance_crylink_secondary_joinexplode_force 0
+ set g_balance_crylink_secondary_joinexplode_radius 0
+ set g_balance_crylink_secondary_joinspread 0
+ set g_balance_crylink_secondary_linkexplode 1
+ set g_balance_crylink_secondary_middle_fadetime 5
+ set g_balance_crylink_secondary_middle_lifetime 5
+ set g_balance_crylink_secondary_other_fadetime 2
+ set g_balance_crylink_secondary_other_lifetime 2
+ set g_balance_crylink_secondary_radius 100
+ set g_balance_crylink_secondary_refire 0.5
+ set g_balance_crylink_secondary_shots 7
+ set g_balance_crylink_secondary_speed 7000
+ set g_balance_crylink_secondary_spread 0.08
+ set g_balance_crylink_secondary_spreadtype 0
+ set g_balance_crylink_switchdelay_drop 0.15
+ set g_balance_crylink_switchdelay_raise 0.15
+ set g_balance_crylink_weaponreplace ""
+ set g_balance_crylink_weaponstart 0
+ set g_balance_crylink_weaponstartoverride -1
+ set g_balance_crylink_weaponthrowable 1
+ // }}}
+ // {{{ #8: Vortex
+ set g_balance_vortex_charge 0
+ set g_balance_vortex_charge_animlimit 0.5
+ set g_balance_vortex_charge_limit 1
+ set g_balance_vortex_charge_maxspeed 800
+ set g_balance_vortex_charge_mindmg 40
+ set g_balance_vortex_charge_minspeed 400
+ set g_balance_vortex_charge_rate 0.4
+ set g_balance_vortex_charge_rot_pause 0
+ set g_balance_vortex_charge_rot_rate 0
+ set g_balance_vortex_charge_shot_multiplier 0
+ set g_balance_vortex_charge_start 0.5
+ set g_balance_vortex_charge_velocity_rate 0
+ set g_balance_vortex_primary_ammo 5
+ set g_balance_vortex_primary_animtime 0.3
+ set g_balance_vortex_primary_damage 100
+ set g_balance_vortex_primary_damagefalloff_forcehalflife 0
+ set g_balance_vortex_primary_damagefalloff_halflife 0
+ set g_balance_vortex_primary_damagefalloff_maxdist 0
+ set g_balance_vortex_primary_damagefalloff_mindist 0
+ set g_balance_vortex_primary_force 600
+ set g_balance_vortex_primary_refire 1.5
+ set g_balance_vortex_reload_ammo 0
+ set g_balance_vortex_reload_time 2
+ set g_balance_vortex_secondary 0
+ set g_balance_vortex_secondary_ammo 2
+ set g_balance_vortex_secondary_animtime 0
+ set g_balance_vortex_secondary_chargepool 0
+ set g_balance_vortex_secondary_chargepool_pause_regen 1
+ set g_balance_vortex_secondary_chargepool_regen 0.15
+ set g_balance_vortex_secondary_damage 0
+ set g_balance_vortex_secondary_damagefalloff_forcehalflife 0
+ set g_balance_vortex_secondary_damagefalloff_halflife 0
+ set g_balance_vortex_secondary_damagefalloff_maxdist 0
+ set g_balance_vortex_secondary_damagefalloff_mindist 0
+ set g_balance_vortex_secondary_force 0
+ set g_balance_vortex_secondary_refire 0
+ set g_balance_vortex_switchdelay_drop 0.15
+ set g_balance_vortex_switchdelay_raise 0.15
+ set g_balance_vortex_weaponreplace ""
+ set g_balance_vortex_weaponstart 0
+ set g_balance_vortex_weaponstartoverride -1
+ set g_balance_vortex_weaponthrowable 1
+ // }}}
+ // {{{ #9: Hagar
+ set g_balance_hagar_primary_ammo 1
+ set g_balance_hagar_primary_damage 37
+ set g_balance_hagar_primary_damageforcescale 0
+ set g_balance_hagar_primary_edgedamage 15
+ set g_balance_hagar_primary_force 100
+ set g_balance_hagar_primary_health 0
+ set g_balance_hagar_primary_lifetime 30
+ set g_balance_hagar_primary_radius 65
+ set g_balance_hagar_primary_refire 0.15
+ set g_balance_hagar_primary_speed 3000
+ set g_balance_hagar_primary_spread 0.010
+ set g_balance_hagar_reload_ammo 0
+ set g_balance_hagar_reload_time 2
+ set g_balance_hagar_secondary 1
+ set g_balance_hagar_secondary_ammo 1
+ set g_balance_hagar_secondary_damage 37
+ set g_balance_hagar_secondary_damageforcescale 0
+ set g_balance_hagar_secondary_edgedamage 15
+ set g_balance_hagar_secondary_force 100
+ set g_balance_hagar_secondary_health 0
+ set g_balance_hagar_secondary_lifetime_min 30
+ set g_balance_hagar_secondary_lifetime_rand 0
+ set g_balance_hagar_secondary_load 0
+ set g_balance_hagar_secondary_load_abort 1
+ set g_balance_hagar_secondary_load_animtime 0.2
+ set g_balance_hagar_secondary_load_hold 4
+ set g_balance_hagar_secondary_load_linkexplode 0
+ set g_balance_hagar_secondary_load_max 4
+ set g_balance_hagar_secondary_load_releasedeath 0
+ set g_balance_hagar_secondary_load_speed 0.5
+ set g_balance_hagar_secondary_load_spread 0.075
+ set g_balance_hagar_secondary_load_spread_bias 0.5
+ set g_balance_hagar_secondary_radius 80
+ set g_balance_hagar_secondary_refire 0.15
+ set g_balance_hagar_secondary_speed 1400
+ set g_balance_hagar_secondary_spread 0.015
+ set g_balance_hagar_switchdelay_drop 0.15
+ set g_balance_hagar_switchdelay_raise 0.15
+ set g_balance_hagar_weaponreplace ""
+ set g_balance_hagar_weaponstart 0
+ set g_balance_hagar_weaponstartoverride -1
+ set g_balance_hagar_weaponthrowable 1
+ // }}}
+ // {{{ #10: Devastator
+ set g_balance_devastator_ammo 3
+ set g_balance_devastator_animtime 0.3
+ set g_balance_devastator_damage 105
+ set g_balance_devastator_damageforcescale 4
+ set g_balance_devastator_detonatedelay 0.2
+ set g_balance_devastator_edgedamage 40
+ set g_balance_devastator_force 600
+ set g_balance_devastator_guidedelay 0.15
+ set g_balance_devastator_guidegoal 512
+ set g_balance_devastator_guiderate 90
+ set g_balance_devastator_guideratedelay 0.01
+ set g_balance_devastator_guidestop 0
+ set g_balance_devastator_health 40
+ set g_balance_devastator_lifetime 30
+ set g_balance_devastator_radius 150
+ set g_balance_devastator_refire 1
+ set g_balance_devastator_reload_ammo 0
+ set g_balance_devastator_reload_time 2
+ set g_balance_devastator_remote_damage 105
+ set g_balance_devastator_remote_edgedamage 40
+ set g_balance_devastator_remote_force 600
+ set g_balance_devastator_remote_jump_damage 70
+ set g_balance_devastator_remote_jump_radius 0
+ set g_balance_devastator_remote_jump_velocity_z_add 400
+ set g_balance_devastator_remote_jump_velocity_z_max 1500
+ set g_balance_devastator_remote_jump_velocity_z_min 400
+ set g_balance_devastator_remote_radius 150
+ set g_balance_devastator_speed 850
+ set g_balance_devastator_speedaccel 0
+ set g_balance_devastator_speedstart 850
+ set g_balance_devastator_switchdelay_drop 0.15
+ set g_balance_devastator_switchdelay_raise 0.15
+ set g_balance_devastator_weaponreplace ""
+ set g_balance_devastator_weaponstart 0
+ set g_balance_devastator_weaponstartoverride -1
+ set g_balance_devastator_weaponthrowable 1
+ // }}}
+ // {{{ #11: Port-O-Launch
+ set g_balance_porto_primary_animtime 0.3
+ set g_balance_porto_primary_lifetime 30
+ set g_balance_porto_primary_refire 1.5
+ set g_balance_porto_primary_speed 2000
+ set g_balance_porto_secondary 1
+ set g_balance_porto_secondary_animtime 0.3
+ set g_balance_porto_secondary_lifetime 30
+ set g_balance_porto_secondary_refire 1.5
+ set g_balance_porto_secondary_speed 2000
+ set g_balance_porto_switchdelay_drop 0.15
+ set g_balance_porto_switchdelay_raise 0.15
+ set g_balance_porto_weaponreplace ""
+ set g_balance_porto_weaponstart 0
+ set g_balance_porto_weaponstartoverride -1
+ set g_balance_porto_weaponthrowable 1
+ // }}}
+ // {{{ #12: Vaporizer
+ set g_balance_vaporizer_primary_ammo 10
+ set g_balance_vaporizer_primary_animtime 0.3
+ set g_balance_vaporizer_primary_refire 1
+ set g_balance_vaporizer_reload_ammo 0
+ set g_balance_vaporizer_reload_time 0
+ set g_balance_vaporizer_secondary_ammo 0
+ set g_balance_vaporizer_secondary_animtime 0.2
+ set g_balance_vaporizer_secondary_damage 25
+ set g_balance_vaporizer_secondary_delay 0
+ set g_balance_vaporizer_secondary_edgedamage 12.5
+ set g_balance_vaporizer_secondary_force 400
+ set g_balance_vaporizer_secondary_lifetime 5
+ set g_balance_vaporizer_secondary_radius 70
+ set g_balance_vaporizer_secondary_refire 0.7
+ set g_balance_vaporizer_secondary_shotangle 0
+ set g_balance_vaporizer_secondary_speed 6000
+ set g_balance_vaporizer_secondary_spread 0
+ set g_balance_vaporizer_switchdelay_drop 0.15
+ set g_balance_vaporizer_switchdelay_raise 0.15
+ set g_balance_vaporizer_weaponreplace ""
+ set g_balance_vaporizer_weaponstart 0
+ set g_balance_vaporizer_weaponstartoverride -1
+ set g_balance_vaporizer_weaponthrowable 0
+ // }}}
+ // {{{ #13: Grappling Hook
+ set g_balance_hook_primary_ammo 5
+ set g_balance_hook_primary_animtime 0.3
+ set g_balance_hook_primary_hooked_ammo 5
+ set g_balance_hook_primary_hooked_time_free 2
+ set g_balance_hook_primary_hooked_time_max 0
+ set g_balance_hook_primary_refire 0.2
+ set g_balance_hook_secondary_animtime 0.3
+ set g_balance_hook_secondary_damage 25
+ set g_balance_hook_secondary_damageforcescale 0
+ set g_balance_hook_secondary_duration 1.5
+ set g_balance_hook_secondary_edgedamage 5
+ set g_balance_hook_secondary_force -2000
+ set g_balance_hook_secondary_gravity 5
+ set g_balance_hook_secondary_health 15
+ set g_balance_hook_secondary_lifetime 5
+ set g_balance_hook_secondary_power 3
+ set g_balance_hook_secondary_radius 500
+ set g_balance_hook_secondary_refire 3
+ set g_balance_hook_secondary_speed 0
+ set g_balance_hook_switchdelay_drop 0.15
+ set g_balance_hook_switchdelay_raise 0.15
+ set g_balance_hook_weaponreplace ""
+ set g_balance_hook_weaponstart 0
+ set g_balance_hook_weaponstartoverride -1
+ set g_balance_hook_weaponthrowable 1
+ // }}}
+ // {{{ #14: Heavy Laser Assault Cannon (MUTATOR WEAPON)
+ set g_balance_hlac_primary_ammo 1
+ set g_balance_hlac_primary_animtime 0.4
+ set g_balance_hlac_primary_damage 18
+ set g_balance_hlac_primary_edgedamage 9
+ set g_balance_hlac_primary_force 90
+ set g_balance_hlac_primary_lifetime 5
+ set g_balance_hlac_primary_radius 70
+ set g_balance_hlac_primary_refire 0.15
+ set g_balance_hlac_primary_speed 9000
+ set g_balance_hlac_primary_spread_add 0.0045
+ set g_balance_hlac_primary_spread_crouchmod 0.25
+ set g_balance_hlac_primary_spread_max 0.25
+ set g_balance_hlac_primary_spread_min 0.01
+ set g_balance_hlac_reload_ammo 0
+ set g_balance_hlac_reload_time 2
+ set g_balance_hlac_secondary 1
+ set g_balance_hlac_secondary_ammo 10
+ set g_balance_hlac_secondary_animtime 0.3
+ set g_balance_hlac_secondary_damage 15
+ set g_balance_hlac_secondary_edgedamage 7.5
+ set g_balance_hlac_secondary_force 90
+ set g_balance_hlac_secondary_lifetime 5
+ set g_balance_hlac_secondary_radius 70
+ set g_balance_hlac_secondary_refire 1
+ set g_balance_hlac_secondary_shots 6
+ set g_balance_hlac_secondary_speed 9000
+ set g_balance_hlac_secondary_spread 0.15
+ set g_balance_hlac_secondary_spread_crouchmod 0.5
+ set g_balance_hlac_switchdelay_drop 0.15
+ set g_balance_hlac_switchdelay_raise 0.15
+ set g_balance_hlac_weaponreplace ""
+ set g_balance_hlac_weaponstart 0
+ set g_balance_hlac_weaponstartoverride -1
+ set g_balance_hlac_weaponthrowable 1
+ // }}}
+ // {{{ #15: @!#%'n Tuba
+ set g_balance_tuba_animtime 0.05
+ set g_balance_tuba_attenuation 0.5
+ set g_balance_tuba_damage 5
+ set g_balance_tuba_edgedamage 0
+ set g_balance_tuba_fadetime 0.25
+ set g_balance_tuba_force 40
+ set g_balance_tuba_pitchstep 6
+ set g_balance_tuba_radius 200
+ set g_balance_tuba_refire 0.05
+ set g_balance_tuba_switchdelay_drop 0.15
+ set g_balance_tuba_switchdelay_raise 0.15
+ set g_balance_tuba_volume 1
+ set g_balance_tuba_weaponreplace ""
+ set g_balance_tuba_weaponstart 0
+ set g_balance_tuba_weaponstartoverride -1
+ set g_balance_tuba_weaponthrowable 1
+ // }}}
+ // {{{ #16: Rifle (MUTATOR WEAPON)
+ set g_balance_rifle_bursttime 0
+ set g_balance_rifle_primary_ammo 10
+ set g_balance_rifle_primary_animtime 0.4
+ set g_balance_rifle_primary_bullethail 0
+ set g_balance_rifle_primary_burstcost 0
+ set g_balance_rifle_primary_damage 80
+ set g_balance_rifle_primary_force 100
+ set g_balance_rifle_primary_refire 1.2
+ set g_balance_rifle_primary_shots 1
+ set g_balance_rifle_primary_solidpenetration 62.2
+ set g_balance_rifle_primary_spread 0
+ set g_balance_rifle_primary_tracer 1
+ set g_balance_rifle_reload_ammo 80
+ set g_balance_rifle_reload_time 2
+ set g_balance_rifle_secondary 1
+ set g_balance_rifle_secondary_ammo 10
+ set g_balance_rifle_secondary_animtime 0.3
+ set g_balance_rifle_secondary_bullethail 0
+ set g_balance_rifle_secondary_burstcost 0
+ set g_balance_rifle_secondary_damage 20
+ set g_balance_rifle_secondary_force 50
+ set g_balance_rifle_secondary_refire 0.9
+ set g_balance_rifle_secondary_reload 0
+ set g_balance_rifle_secondary_shots 4
+ set g_balance_rifle_secondary_solidpenetration 15.5
+ set g_balance_rifle_secondary_spread 0.04
+ set g_balance_rifle_secondary_tracer 0
+ set g_balance_rifle_switchdelay_drop 0.15
+ set g_balance_rifle_switchdelay_raise 0.15
+ set g_balance_rifle_weaponreplace ""
+ set g_balance_rifle_weaponstart 0
+ set g_balance_rifle_weaponstartoverride -1
+ set g_balance_rifle_weaponthrowable 1
+ // }}}
+ // {{{ #17: Fireball
+ set g_balance_fireball_primary_animtime 0.4
+ set g_balance_fireball_primary_bfgdamage 100
+ set g_balance_fireball_primary_bfgforce 0
+ set g_balance_fireball_primary_bfgradius 1000
+ set g_balance_fireball_primary_damage 200
+ set g_balance_fireball_primary_damageforcescale 0
+ set g_balance_fireball_primary_edgedamage 50
+ set g_balance_fireball_primary_force 600
+ set g_balance_fireball_primary_health 0
+ set g_balance_fireball_primary_laserburntime 0.5
+ set g_balance_fireball_primary_laserdamage 80
+ set g_balance_fireball_primary_laseredgedamage 20
+ set g_balance_fireball_primary_laserradius 256
+ set g_balance_fireball_primary_lifetime 15
+ set g_balance_fireball_primary_radius 200
+ set g_balance_fireball_primary_refire 2
+ set g_balance_fireball_primary_refire2 0
+ set g_balance_fireball_primary_speed 1200
+ set g_balance_fireball_primary_spread 0
+ set g_balance_fireball_secondary_animtime 0.3
+ set g_balance_fireball_secondary_damage 40
+ set g_balance_fireball_secondary_damageforcescale 4
+ set g_balance_fireball_secondary_damagetime 5
+ set g_balance_fireball_secondary_laserburntime 0.5
+ set g_balance_fireball_secondary_laserdamage 50
+ set g_balance_fireball_secondary_laseredgedamage 20
+ set g_balance_fireball_secondary_laserradius 110
+ set g_balance_fireball_secondary_lifetime 7
+ set g_balance_fireball_secondary_refire 1.5
+ set g_balance_fireball_secondary_speed 900
+ set g_balance_fireball_secondary_speed_up 100
+ set g_balance_fireball_secondary_speed_z 0
+ set g_balance_fireball_secondary_spread 0
+ set g_balance_fireball_switchdelay_drop 0.15
+ set g_balance_fireball_switchdelay_raise 0.15
+ set g_balance_fireball_weaponreplace ""
+ set g_balance_fireball_weaponstart 0
+ set g_balance_fireball_weaponstartoverride -1
+ set g_balance_fireball_weaponthrowable 0
+ // }}}
+ // {{{ #18: T.A.G. Seeker (MUTATOR WEAPON)
+ set g_balance_seeker_flac_ammo 1
+ set g_balance_seeker_flac_animtime 0.1
+ set g_balance_seeker_flac_damage 15
+ set g_balance_seeker_flac_edgedamage 10
+ set g_balance_seeker_flac_force 50
+ set g_balance_seeker_flac_lifetime 0.1
+ set g_balance_seeker_flac_lifetime_rand 0.05
+ set g_balance_seeker_flac_radius 100
+ set g_balance_seeker_flac_refire 0.1
+ set g_balance_seeker_flac_speed 3000
+ set g_balance_seeker_flac_speed_up 1000
+ set g_balance_seeker_flac_speed_z 0
+ set g_balance_seeker_flac_spread 0.4
+ set g_balance_seeker_missile_accel 1400
+ set g_balance_seeker_missile_ammo 2
+ set g_balance_seeker_missile_animtime 0.2
+ set g_balance_seeker_missile_count 3
+ set g_balance_seeker_missile_damage 30
+ set g_balance_seeker_missile_damageforcescale 4
+ set g_balance_seeker_missile_decel 1400
+ set g_balance_seeker_missile_delay 0.25
+ set g_balance_seeker_missile_edgedamage 10
+ set g_balance_seeker_missile_force 150
+ set g_balance_seeker_missile_health 5
+ set g_balance_seeker_missile_lifetime 15
+ set g_balance_seeker_missile_proxy 0
+ set g_balance_seeker_missile_proxy_delay 0.2
+ set g_balance_seeker_missile_proxy_maxrange 45
+ set g_balance_seeker_missile_radius 80
+ set g_balance_seeker_missile_refire 0.5
+ set g_balance_seeker_missile_smart 1
+ set g_balance_seeker_missile_smart_mindist 800
+ set g_balance_seeker_missile_smart_trace_max 2500
+ set g_balance_seeker_missile_smart_trace_min 1000
+ set g_balance_seeker_missile_speed 700
+ set g_balance_seeker_missile_speed_max 1300
+ set g_balance_seeker_missile_speed_up 300
+ set g_balance_seeker_missile_speed_z 0
+ set g_balance_seeker_missile_spread 0
+ set g_balance_seeker_missile_turnrate 0.65
+ set g_balance_seeker_reload_ammo 0
+ set g_balance_seeker_reload_time 2
+ set g_balance_seeker_switchdelay_drop 0.15
+ set g_balance_seeker_switchdelay_raise 0.15
+ set g_balance_seeker_tag_ammo 1
+ set g_balance_seeker_tag_animtime 0.2
+ set g_balance_seeker_tag_damageforcescale 4
+ set g_balance_seeker_tag_health 5
+ set g_balance_seeker_tag_lifetime 15
+ set g_balance_seeker_tag_refire 0.75
+ set g_balance_seeker_tag_speed 5000
+ set g_balance_seeker_tag_spread 0
+ set g_balance_seeker_tag_tracker_lifetime 10
+ set g_balance_seeker_type 0
+ set g_balance_seeker_weaponreplace ""
+ set g_balance_seeker_weaponstart 0
+ set g_balance_seeker_weaponstartoverride -1
+ set g_balance_seeker_weaponthrowable 1
+ // }}}
+ // {{{ #19: Shockwave (MUTATOR WEAPON)
+ set g_balance_shockwave_blast_animtime 0.3
+ set g_balance_shockwave_blast_damage 20
+ set g_balance_shockwave_blast_distance 1000
+ set g_balance_shockwave_blast_edgedamage 0
+ set g_balance_shockwave_blast_force 200
+ set g_balance_shockwave_blast_force_forwardbias 50
+ set g_balance_shockwave_blast_force_zscale 2
+ set g_balance_shockwave_blast_jump_damage 20
+ set g_balance_shockwave_blast_jump_edgedamage 0
+ set g_balance_shockwave_blast_jump_force 300
+ set g_balance_shockwave_blast_jump_force_velocitybias 0
+ set g_balance_shockwave_blast_jump_force_zscale 1.25
+ set g_balance_shockwave_blast_jump_multiplier_accuracy 0.5
+ set g_balance_shockwave_blast_jump_multiplier_distance 0.5
+ set g_balance_shockwave_blast_jump_multiplier_min 0
+ set g_balance_shockwave_blast_jump_radius 150
+ set g_balance_shockwave_blast_multiplier_accuracy 0.5
+ set g_balance_shockwave_blast_multiplier_distance 0.5
+ set g_balance_shockwave_blast_multiplier_min 0
+ set g_balance_shockwave_blast_refire 0.75
+ set g_balance_shockwave_blast_splash_damage 15
+ set g_balance_shockwave_blast_splash_edgedamage 0
+ set g_balance_shockwave_blast_splash_force 100
+ set g_balance_shockwave_blast_splash_force_forwardbias 50
+ set g_balance_shockwave_blast_splash_multiplier_accuracy 0.5
+ set g_balance_shockwave_blast_splash_multiplier_distance 0.5
+ set g_balance_shockwave_blast_splash_multiplier_min 0
+ set g_balance_shockwave_blast_splash_radius 70
+ set g_balance_shockwave_blast_spread_max 120
+ set g_balance_shockwave_blast_spread_min 25
+ set g_balance_shockwave_melee_animtime 1.3
+ set g_balance_shockwave_melee_damage 80
+ set g_balance_shockwave_melee_delay 0.25
+ set g_balance_shockwave_melee_force 200
+ set g_balance_shockwave_melee_multihit 1
+ set g_balance_shockwave_melee_no_doubleslap 1
+ set g_balance_shockwave_melee_nonplayerdamage 40
+ set g_balance_shockwave_melee_range 120
+ set g_balance_shockwave_melee_refire 1.25
+ set g_balance_shockwave_melee_swing_side 120
+ set g_balance_shockwave_melee_swing_up 30
+ set g_balance_shockwave_melee_time 0.15
+ set g_balance_shockwave_melee_traces 10
+ set g_balance_shockwave_switchdelay_drop 0.15
+ set g_balance_shockwave_switchdelay_raise 0.15
+ set g_balance_shockwave_weaponreplace ""
+ set g_balance_shockwave_weaponstart 1
+ set g_balance_shockwave_weaponstartoverride -1
+ set g_balance_shockwave_weaponthrowable 0
+ // }}}
+ // {{{ #20: Arc
+ set g_balance_arc_beam_ammo 4
+ set g_balance_arc_beam_animtime 0.2
+ set g_balance_arc_beam_botaimlifetime 0
+ set g_balance_arc_beam_botaimspeed 0
+ set g_balance_arc_beam_damage 115
+ set g_balance_arc_beam_degreespersegment 1
+ set g_balance_arc_beam_distancepersegment 0
+ set g_balance_arc_beam_falloff_halflifedist 0
+ set g_balance_arc_beam_falloff_maxdist 0
+ set g_balance_arc_beam_falloff_mindist 0
+ set g_balance_arc_beam_force 900
+ set g_balance_arc_beam_healing_amax 100
+ set g_balance_arc_beam_healing_aps 50
+ set g_balance_arc_beam_healing_hmax 150
+ set g_balance_arc_beam_healing_hps 50
+ set g_balance_arc_cooldown 2.5
+ set g_balance_arc_overheat_max 5
+ set g_balance_arc_overheat_min 3
+ set g_balance_arc_beam_heat 1
+ set g_balance_arc_burst_heat 3
+ set g_balance_arc_beam_maxangle 10
+ set g_balance_arc_beam_nonplayerdamage 80
+ set g_balance_arc_beam_range 1000
+ set g_balance_arc_beam_refire 0.5
+ set g_balance_arc_beam_returnspeed 8
+ set g_balance_arc_beam_tightness 0.5
+ set g_balance_arc_burst_ammo 15
+ set g_balance_arc_burst_damage 150
+ set g_balance_arc_burst_healing_aps 100
+ set g_balance_arc_burst_healing_hps 100
+ set g_balance_arc_switchdelay_drop 0.3
+ set g_balance_arc_switchdelay_raise 0.3
+ set g_balance_arc_weaponreplace ""
+ set g_balance_arc_weaponstart 0
+ set g_balance_arc_weaponstartoverride -1
+ set g_balance_arc_weaponthrowable 1
+ // }}}
++// {{{ #21: Heavy Machine Gun
++set g_balance_hmg_ammo 0
++set g_balance_hmg_damage 0
++set g_balance_hmg_force 0
++set g_balance_hmg_refire 0
++set g_balance_hmg_reload_ammo 120
++set g_balance_hmg_reload_time 1
++set g_balance_hmg_solidpenetration 32
++set g_balance_hmg_spread_add 0.01
++set g_balance_hmg_spread_max 0.05
++set g_balance_hmg_spread_min 0.02
++set g_balance_hmg_switchdelay_drop 0.2
++set g_balance_hmg_switchdelay_raise 0.2
++set g_balance_hmg_weaponreplace ""
++set g_balance_hmg_weaponstart 0
++set g_balance_hmg_weaponstartoverride 0
++set g_balance_hmg_weaponthrowable 0
++// }}}
++// {{{ #22: Rocket Propelled Chainsaw
++set g_balance_rpc_ammo 10
++set g_balance_rpc_animtime 1
++set g_balance_rpc_damage 150
++set g_balance_rpc_damage2 500
++set g_balance_rpc_damageforcescale 2
++set g_balance_rpc_edgedamage 50
++set g_balance_rpc_force 400
++set g_balance_rpc_health 25
++set g_balance_rpc_lifetime 30
++set g_balance_rpc_radius 300
++set g_balance_rpc_refire 1
++set g_balance_rpc_reload_ammo 10
++set g_balance_rpc_reload_time 1
++set g_balance_rpc_speed 1250
++set g_balance_rpc_speedaccel 5000
++set g_balance_rpc_switchdelay_drop 0.2
++set g_balance_rpc_switchdelay_raise 0.2
++set g_balance_rpc_weaponreplace ""
++set g_balance_rpc_weaponstart 0
++set g_balance_rpc_weaponstartoverride 0
++set g_balance_rpc_weaponthrowable 0
++// }}}
--- /dev/null
--- /dev/null
++// {{{ #1: Blaster
++set g_balance_blaster_primary_animtime 0.2
++set g_balance_blaster_primary_damage 25
++set g_balance_blaster_primary_delay 0
++set g_balance_blaster_primary_edgedamage 12.5
++set g_balance_blaster_primary_force 300
++set g_balance_blaster_primary_force_zscale 1.25
++set g_balance_blaster_primary_lifetime 5
++set g_balance_blaster_primary_radius 60
++set g_balance_blaster_primary_refire 0.7
++set g_balance_blaster_primary_shotangle 0
++set g_balance_blaster_primary_speed 6000
++set g_balance_blaster_primary_spread 0
++set g_balance_blaster_secondary 0
++set g_balance_blaster_secondary_animtime 0.2
++set g_balance_blaster_secondary_damage 25
++set g_balance_blaster_secondary_delay 0
++set g_balance_blaster_secondary_edgedamage 12.5
++set g_balance_blaster_secondary_force 300
++set g_balance_blaster_secondary_force_zscale 1.2
++set g_balance_blaster_secondary_lifetime 5
++set g_balance_blaster_secondary_radius 70
++set g_balance_blaster_secondary_refire 0.7
++set g_balance_blaster_secondary_shotangle 0
++set g_balance_blaster_secondary_speed 6000
++set g_balance_blaster_secondary_spread 0
++set g_balance_blaster_switchdelay_drop 0.2
++set g_balance_blaster_switchdelay_raise 0.2
++set g_balance_blaster_weaponreplace ""
++set g_balance_blaster_weaponstart 1
++set g_balance_blaster_weaponstartoverride -1
++set g_balance_blaster_weaponthrowable 0
++// }}}
++// {{{ #2: Shotgun
++set g_balance_shotgun_primary_ammo 6.25
++set g_balance_shotgun_primary_animtime 0.65
++set g_balance_shotgun_primary_bullets 10
++set g_balance_shotgun_primary_damage 17
++set g_balance_shotgun_primary_force 80
++set g_balance_shotgun_primary_refire 0.75
++set g_balance_shotgun_primary_solidpenetration 3.8
++set g_balance_shotgun_primary_spread 0.07
++set g_balance_shotgun_reload_ammo 50
++set g_balance_shotgun_reload_time 2
++set g_balance_shotgun_secondary 1
++set g_balance_shotgun_secondary_alt_animtime 0.2
++set g_balance_shotgun_secondary_alt_refire 1.2
++set g_balance_shotgun_secondary_animtime 1
++set g_balance_shotgun_secondary_damage 70
++set g_balance_shotgun_secondary_force 200
++set g_balance_shotgun_secondary_melee_delay 0.25
++set g_balance_shotgun_secondary_melee_multihit 1
++set g_balance_shotgun_secondary_melee_no_doubleslap 1
++set g_balance_shotgun_secondary_melee_nonplayerdamage 40
++set g_balance_shotgun_secondary_melee_range 120
++set g_balance_shotgun_secondary_melee_swing_side 120
++set g_balance_shotgun_secondary_melee_swing_up 30
++set g_balance_shotgun_secondary_melee_time 0.15
++set g_balance_shotgun_secondary_melee_traces 10
++set g_balance_shotgun_secondary_refire 1.25
++set g_balance_shotgun_switchdelay_drop 0.2
++set g_balance_shotgun_switchdelay_raise 0.2
++set g_balance_shotgun_weaponreplace ""
++set g_balance_shotgun_weaponstart 1
++set g_balance_shotgun_weaponstartoverride -1
++set g_balance_shotgun_weaponthrowable 1
++// }}}
++// {{{ #3: Machine Gun
++set g_balance_machinegun_burst 3
++set g_balance_machinegun_burst_ammo 3
++set g_balance_machinegun_burst_animtime 0.3
++set g_balance_machinegun_burst_refire 0.06
++set g_balance_machinegun_burst_refire2 0.45
++set g_balance_machinegun_burst_speed 0
++set g_balance_machinegun_first 1
++set g_balance_machinegun_first_ammo 1
++set g_balance_machinegun_first_damage 14
++set g_balance_machinegun_first_force 5
++set g_balance_machinegun_first_refire 0.125
++set g_balance_machinegun_first_spread 0.03
++set g_balance_machinegun_mode 1
++set g_balance_machinegun_reload_ammo 30
++set g_balance_machinegun_reload_time 1.5
++set g_balance_machinegun_solidpenetration 13.1
++set g_balance_machinegun_spread_add 0.012
++set g_balance_machinegun_spread_max 0.05
++set g_balance_machinegun_spread_min 0.02
++set g_balance_machinegun_sustained_ammo 1
++set g_balance_machinegun_sustained_damage 25
++set g_balance_machinegun_sustained_force 5
++set g_balance_machinegun_sustained_refire 0.1
++set g_balance_machinegun_sustained_spread 0.01
++set g_balance_machinegun_switchdelay_drop 0.2
++set g_balance_machinegun_switchdelay_raise 0.2
++set g_balance_machinegun_weaponreplace ""
++set g_balance_machinegun_weaponstart 0
++set g_balance_machinegun_weaponstartoverride -1
++set g_balance_machinegun_weaponthrowable 1
++// }}}
++// {{{ #4: Mortar
++set g_balance_mortar_bouncefactor 0.5
++set g_balance_mortar_bouncestop 0.075
++set g_balance_mortar_primary_ammo 2
++set g_balance_mortar_primary_animtime 0.3
++set g_balance_mortar_primary_damage 55
++set g_balance_mortar_primary_damageforcescale 0
++set g_balance_mortar_primary_edgedamage 25
++set g_balance_mortar_primary_force 250
++set g_balance_mortar_primary_health 15
++set g_balance_mortar_primary_lifetime 5
++set g_balance_mortar_primary_lifetime_stick 0
++set g_balance_mortar_primary_radius 120
++set g_balance_mortar_primary_refire 0.8
++set g_balance_mortar_primary_remote_minbouncecnt 0
++set g_balance_mortar_primary_speed 1900
++set g_balance_mortar_primary_speed_up 225
++set g_balance_mortar_primary_speed_z 0
++set g_balance_mortar_primary_spread 0
++set g_balance_mortar_primary_type 0
++set g_balance_mortar_reload_ammo 0
++set g_balance_mortar_reload_time 2
++set g_balance_mortar_secondary_ammo 2
++set g_balance_mortar_secondary_animtime 0.3
++set g_balance_mortar_secondary_damage 55
++set g_balance_mortar_secondary_damageforcescale 4
++set g_balance_mortar_secondary_edgedamage 30
++set g_balance_mortar_secondary_force 250
++set g_balance_mortar_secondary_health 30
++set g_balance_mortar_secondary_lifetime 5
++set g_balance_mortar_secondary_lifetime_bounce 0.5
++set g_balance_mortar_secondary_lifetime_stick 0
++set g_balance_mortar_secondary_radius 120
++set g_balance_mortar_secondary_refire 0.7
++set g_balance_mortar_secondary_remote_detonateprimary 0
++set g_balance_mortar_secondary_speed 1400
++set g_balance_mortar_secondary_speed_up 150
++set g_balance_mortar_secondary_speed_z 0
++set g_balance_mortar_secondary_spread 0
++set g_balance_mortar_secondary_type 1
++set g_balance_mortar_switchdelay_drop 0.2
++set g_balance_mortar_switchdelay_raise 0.2
++set g_balance_mortar_weaponreplace ""
++set g_balance_mortar_weaponstart 0
++set g_balance_mortar_weaponstartoverride -1
++set g_balance_mortar_weaponthrowable 1
++// }}}
++// {{{ #5: Mine Layer (MUTATOR WEAPON)
++set g_balance_minelayer_ammo 4
++set g_balance_minelayer_animtime 0.4
++set g_balance_minelayer_damage 40
++set g_balance_minelayer_damageforcescale 0
++set g_balance_minelayer_detonatedelay -1
++set g_balance_minelayer_edgedamage 20
++set g_balance_minelayer_force 250
++set g_balance_minelayer_health 15
++set g_balance_minelayer_lifetime 10
++set g_balance_minelayer_lifetime_countdown 0.5
++set g_balance_minelayer_limit 3
++set g_balance_minelayer_protection 0
++set g_balance_minelayer_proximityradius 150
++set g_balance_minelayer_radius 175
++set g_balance_minelayer_refire 1.5
++set g_balance_minelayer_reload_ammo 0
++set g_balance_minelayer_reload_time 2
++set g_balance_minelayer_remote_damage 45
++set g_balance_minelayer_remote_edgedamage 40
++set g_balance_minelayer_remote_force 300
++set g_balance_minelayer_remote_radius 200
++set g_balance_minelayer_speed 1000
++set g_balance_minelayer_switchdelay_drop 0.2
++set g_balance_minelayer_switchdelay_raise 0.2
++set g_balance_minelayer_time 0.5
++set g_balance_minelayer_weaponreplace ""
++set g_balance_minelayer_weaponstart 0
++set g_balance_minelayer_weaponstartoverride -1
++set g_balance_minelayer_weaponthrowable 1
++// }}}
++// {{{ #6: Electro
++set g_balance_electro_combo_comboradius 300
++set g_balance_electro_combo_comboradius_thruwall 200
++set g_balance_electro_combo_damage 50
++set g_balance_electro_combo_edgedamage 25
++set g_balance_electro_combo_force 120
++set g_balance_electro_combo_radius 150
++set g_balance_electro_combo_safeammocheck 1
++set g_balance_electro_combo_speed 2000
++set g_balance_electro_primary_ammo 4
++set g_balance_electro_primary_animtime 0.3
++set g_balance_electro_primary_comboradius 300
++set g_balance_electro_primary_damage 40
++set g_balance_electro_primary_edgedamage 20
++set g_balance_electro_primary_force 200
++set g_balance_electro_primary_lifetime 5
++set g_balance_electro_primary_midaircombo_explode 1
++set g_balance_electro_primary_midaircombo_interval 0.1
++set g_balance_electro_primary_midaircombo_radius 150
++set g_balance_electro_primary_radius 100
++set g_balance_electro_primary_refire 0.6
++set g_balance_electro_primary_speed 2500
++set g_balance_electro_primary_spread 0
++set g_balance_electro_reload_ammo 0
++set g_balance_electro_reload_time 2
++set g_balance_electro_secondary_ammo 2
++set g_balance_electro_secondary_animtime 0.2
++set g_balance_electro_secondary_bouncefactor 0.3
++set g_balance_electro_secondary_bouncestop 0.05
++set g_balance_electro_secondary_count 3
++set g_balance_electro_secondary_damage 30
++set g_balance_electro_secondary_damagedbycontents 1
++set g_balance_electro_secondary_damageforcescale 4
++set g_balance_electro_secondary_edgedamage 15
++set g_balance_electro_secondary_force 50
++set g_balance_electro_secondary_health 5
++set g_balance_electro_secondary_lifetime 4
++set g_balance_electro_secondary_radius 150
++set g_balance_electro_secondary_refire 0.2
++set g_balance_electro_secondary_refire2 1.6
++set g_balance_electro_secondary_speed 1000
++set g_balance_electro_secondary_speed_up 200
++set g_balance_electro_secondary_speed_z 0
++set g_balance_electro_secondary_spread 0.04
++set g_balance_electro_secondary_touchexplode 0
++set g_balance_electro_switchdelay_drop 0.2
++set g_balance_electro_switchdelay_raise 0.2
++set g_balance_electro_weaponreplace ""
++set g_balance_electro_weaponstart 0
++set g_balance_electro_weaponstartoverride -1
++set g_balance_electro_weaponthrowable 1
++// }}}
++// {{{ #7: Crylink
++set g_balance_crylink_primary_ammo 3
++set g_balance_crylink_primary_animtime 0.3
++set g_balance_crylink_primary_bouncedamagefactor 0.5
++set g_balance_crylink_primary_bounces 1
++set g_balance_crylink_primary_damage 12
++set g_balance_crylink_primary_edgedamage 6
++set g_balance_crylink_primary_force -50
++set g_balance_crylink_primary_joindelay 0.1
++set g_balance_crylink_primary_joinexplode 1
++set g_balance_crylink_primary_joinexplode_damage 0
++set g_balance_crylink_primary_joinexplode_edgedamage 0
++set g_balance_crylink_primary_joinexplode_force 0
++set g_balance_crylink_primary_joinexplode_radius 0
++set g_balance_crylink_primary_joinspread 0.2
++set g_balance_crylink_primary_linkexplode 1
++set g_balance_crylink_primary_middle_fadetime 5
++set g_balance_crylink_primary_middle_lifetime 5
++set g_balance_crylink_primary_other_fadetime 5
++set g_balance_crylink_primary_other_lifetime 5
++set g_balance_crylink_primary_radius 80
++set g_balance_crylink_primary_refire 0.7
++set g_balance_crylink_primary_shots 6
++set g_balance_crylink_primary_speed 2000
++set g_balance_crylink_primary_spread 0.08
++set g_balance_crylink_reload_ammo 0
++set g_balance_crylink_reload_time 2
++set g_balance_crylink_secondary 1
++set g_balance_crylink_secondary_ammo 2
++set g_balance_crylink_secondary_animtime 0.2
++set g_balance_crylink_secondary_bouncedamagefactor 0.5
++set g_balance_crylink_secondary_bounces 0
++set g_balance_crylink_secondary_damage 10
++set g_balance_crylink_secondary_edgedamage 5
++set g_balance_crylink_secondary_force -250
++set g_balance_crylink_secondary_joindelay 0
++set g_balance_crylink_secondary_joinexplode 0
++set g_balance_crylink_secondary_joinexplode_damage 0
++set g_balance_crylink_secondary_joinexplode_edgedamage 0
++set g_balance_crylink_secondary_joinexplode_force 0
++set g_balance_crylink_secondary_joinexplode_radius 0
++set g_balance_crylink_secondary_joinspread 0
++set g_balance_crylink_secondary_linkexplode 1
++set g_balance_crylink_secondary_middle_fadetime 5
++set g_balance_crylink_secondary_middle_lifetime 5
++set g_balance_crylink_secondary_other_fadetime 5
++set g_balance_crylink_secondary_other_lifetime 5
++set g_balance_crylink_secondary_radius 100
++set g_balance_crylink_secondary_refire 0.7
++set g_balance_crylink_secondary_shots 5
++set g_balance_crylink_secondary_speed 3000
++set g_balance_crylink_secondary_spread 0.01
++set g_balance_crylink_secondary_spreadtype 1
++set g_balance_crylink_switchdelay_drop 0.2
++set g_balance_crylink_switchdelay_raise 0.2
++set g_balance_crylink_weaponreplace ""
++set g_balance_crylink_weaponstart 0
++set g_balance_crylink_weaponstartoverride -1
++set g_balance_crylink_weaponthrowable 1
++// }}}
++// {{{ #8: Vortex
++set g_balance_vortex_charge 0
++set g_balance_vortex_charge_animlimit 0.5
++set g_balance_vortex_charge_limit 1
++set g_balance_vortex_charge_maxspeed 800
++set g_balance_vortex_charge_mindmg 40
++set g_balance_vortex_charge_minspeed 400
++set g_balance_vortex_charge_rate 0.6
++set g_balance_vortex_charge_rot_pause 0
++set g_balance_vortex_charge_rot_rate 0
++set g_balance_vortex_charge_shot_multiplier 0
++set g_balance_vortex_charge_start 0.5
++set g_balance_vortex_charge_velocity_rate 0
++set g_balance_vortex_primary_ammo 10
++set g_balance_vortex_primary_animtime 0.95
++set g_balance_vortex_primary_damage 100
++set g_balance_vortex_primary_damagefalloff_forcehalflife 0
++set g_balance_vortex_primary_damagefalloff_halflife 0
++set g_balance_vortex_primary_damagefalloff_maxdist 0
++set g_balance_vortex_primary_damagefalloff_mindist 0
++set g_balance_vortex_primary_force 500
++set g_balance_vortex_primary_refire 1
++set g_balance_vortex_reload_ammo 50
++set g_balance_vortex_reload_time 2
++set g_balance_vortex_secondary 1
++set g_balance_vortex_secondary_ammo 2
++set g_balance_vortex_secondary_animtime 0
++set g_balance_vortex_secondary_chargepool 0
++set g_balance_vortex_secondary_chargepool_pause_regen 1
++set g_balance_vortex_secondary_chargepool_regen 0.15
++set g_balance_vortex_secondary_damage 0
++set g_balance_vortex_secondary_damagefalloff_forcehalflife 0
++set g_balance_vortex_secondary_damagefalloff_halflife 0
++set g_balance_vortex_secondary_damagefalloff_maxdist 0
++set g_balance_vortex_secondary_damagefalloff_mindist 0
++set g_balance_vortex_secondary_force 0
++set g_balance_vortex_secondary_refire 0
++set g_balance_vortex_switchdelay_drop 0.25
++set g_balance_vortex_switchdelay_raise 0.25
++set g_balance_vortex_weaponreplace ""
++set g_balance_vortex_weaponstart 0
++set g_balance_vortex_weaponstartoverride -1
++set g_balance_vortex_weaponthrowable 1
++// }}}
++// {{{ #9: Hagar
++set g_balance_hagar_primary_ammo 1
++set g_balance_hagar_primary_damage 25
++set g_balance_hagar_primary_damageforcescale 0
++set g_balance_hagar_primary_edgedamage 12.5
++set g_balance_hagar_primary_force 100
++set g_balance_hagar_primary_health 15
++set g_balance_hagar_primary_lifetime 5
++set g_balance_hagar_primary_radius 65
++set g_balance_hagar_primary_refire 0.16667
++set g_balance_hagar_primary_speed 2200
++set g_balance_hagar_primary_spread 0.03
++set g_balance_hagar_reload_ammo 0
++set g_balance_hagar_reload_time 2
++set g_balance_hagar_secondary 1
++set g_balance_hagar_secondary_ammo 1
++set g_balance_hagar_secondary_damage 35
++set g_balance_hagar_secondary_damageforcescale 0
++set g_balance_hagar_secondary_edgedamage 17.5
++set g_balance_hagar_secondary_force 75
++set g_balance_hagar_secondary_health 15
++set g_balance_hagar_secondary_lifetime_min 10
++set g_balance_hagar_secondary_lifetime_rand 0
++set g_balance_hagar_secondary_load 1
++set g_balance_hagar_secondary_load_abort 1
++set g_balance_hagar_secondary_load_animtime 0.2
++set g_balance_hagar_secondary_load_hold 4
++set g_balance_hagar_secondary_load_linkexplode 0
++set g_balance_hagar_secondary_load_max 4
++set g_balance_hagar_secondary_load_releasedeath 0
++set g_balance_hagar_secondary_load_speed 0.5
++set g_balance_hagar_secondary_load_spread 0.075
++set g_balance_hagar_secondary_load_spread_bias 0.5
++set g_balance_hagar_secondary_radius 80
++set g_balance_hagar_secondary_refire 0.5
++set g_balance_hagar_secondary_speed 2000
++set g_balance_hagar_secondary_spread 0.05
++set g_balance_hagar_switchdelay_drop 0.2
++set g_balance_hagar_switchdelay_raise 0.2
++set g_balance_hagar_weaponreplace ""
++set g_balance_hagar_weaponstart 0
++set g_balance_hagar_weaponstartoverride -1
++set g_balance_hagar_weaponthrowable 1
++// }}}
++// {{{ #10: Devastator
++set g_balance_devastator_ammo 4
++set g_balance_devastator_animtime 0.4
++set g_balance_devastator_damage 80
++set g_balance_devastator_damageforcescale 1
++set g_balance_devastator_detonatedelay 0.02
++set g_balance_devastator_edgedamage 40
++set g_balance_devastator_force 400
++set g_balance_devastator_guidedelay 0.2
++set g_balance_devastator_guidegoal 512
++set g_balance_devastator_guiderate 90
++set g_balance_devastator_guideratedelay 0.01
++set g_balance_devastator_guidestop 0
++set g_balance_devastator_health 30
++set g_balance_devastator_lifetime 10
++set g_balance_devastator_radius 110
++set g_balance_devastator_refire 1.1
++set g_balance_devastator_reload_ammo 0
++set g_balance_devastator_reload_time 2
++set g_balance_devastator_remote_damage 70
++set g_balance_devastator_remote_edgedamage 35
++set g_balance_devastator_remote_force 300
++set g_balance_devastator_remote_jump_damage 70
++set g_balance_devastator_remote_jump_radius 0
++set g_balance_devastator_remote_jump_velocity_z_add 400
++set g_balance_devastator_remote_jump_velocity_z_max 1500
++set g_balance_devastator_remote_jump_velocity_z_min 400
++set g_balance_devastator_remote_radius 110
++set g_balance_devastator_speed 1300
++set g_balance_devastator_speedaccel 1300
++set g_balance_devastator_speedstart 1000
++set g_balance_devastator_switchdelay_drop 0.2
++set g_balance_devastator_switchdelay_raise 0.2
++set g_balance_devastator_weaponreplace ""
++set g_balance_devastator_weaponstart 0
++set g_balance_devastator_weaponstartoverride -1
++set g_balance_devastator_weaponthrowable 1
++// }}}
++// {{{ #11: Port-O-Launch
++set g_balance_porto_primary_animtime 0.3
++set g_balance_porto_primary_lifetime 5
++set g_balance_porto_primary_refire 1.5
++set g_balance_porto_primary_speed 1000
++set g_balance_porto_secondary 1
++set g_balance_porto_secondary_animtime 0.3
++set g_balance_porto_secondary_lifetime 5
++set g_balance_porto_secondary_refire 1.5
++set g_balance_porto_secondary_speed 1000
++set g_balance_porto_switchdelay_drop 0.2
++set g_balance_porto_switchdelay_raise 0.2
++set g_balance_porto_weaponreplace ""
++set g_balance_porto_weaponstart 0
++set g_balance_porto_weaponstartoverride -1
++set g_balance_porto_weaponthrowable 1
++// }}}
++// {{{ #12: Vaporizer
++set g_balance_vaporizer_primary_ammo 10
++set g_balance_vaporizer_primary_animtime 0.3
++set g_balance_vaporizer_primary_refire 1
++set g_balance_vaporizer_reload_ammo 0
++set g_balance_vaporizer_reload_time 0
++set g_balance_vaporizer_secondary_ammo 0
++set g_balance_vaporizer_secondary_animtime 0.2
++set g_balance_vaporizer_secondary_damage 25
++set g_balance_vaporizer_secondary_delay 0
++set g_balance_vaporizer_secondary_edgedamage 12.5
++set g_balance_vaporizer_secondary_force 400
++set g_balance_vaporizer_secondary_lifetime 5
++set g_balance_vaporizer_secondary_radius 70
++set g_balance_vaporizer_secondary_refire 0.7
++set g_balance_vaporizer_secondary_shotangle 0
++set g_balance_vaporizer_secondary_speed 6000
++set g_balance_vaporizer_secondary_spread 0
++set g_balance_vaporizer_switchdelay_drop 0.2
++set g_balance_vaporizer_switchdelay_raise 0.2
++set g_balance_vaporizer_weaponreplace ""
++set g_balance_vaporizer_weaponstart 0
++set g_balance_vaporizer_weaponstartoverride -1
++set g_balance_vaporizer_weaponthrowable 0
++// }}}
++// {{{ #13: Grappling Hook
++set g_balance_hook_primary_ammo 5
++set g_balance_hook_primary_animtime 0.3
++set g_balance_hook_primary_hooked_ammo 5
++set g_balance_hook_primary_hooked_time_free 2
++set g_balance_hook_primary_hooked_time_max 0
++set g_balance_hook_primary_refire 0.2
++set g_balance_hook_secondary_animtime 0.3
++set g_balance_hook_secondary_damage 25
++set g_balance_hook_secondary_damageforcescale 0
++set g_balance_hook_secondary_duration 1.5
++set g_balance_hook_secondary_edgedamage 5
++set g_balance_hook_secondary_force -2000
++set g_balance_hook_secondary_gravity 5
++set g_balance_hook_secondary_health 15
++set g_balance_hook_secondary_lifetime 5
++set g_balance_hook_secondary_power 3
++set g_balance_hook_secondary_radius 500
++set g_balance_hook_secondary_refire 3
++set g_balance_hook_secondary_speed 0
++set g_balance_hook_switchdelay_drop 0.2
++set g_balance_hook_switchdelay_raise 0.2
++set g_balance_hook_weaponreplace ""
++set g_balance_hook_weaponstart 0
++set g_balance_hook_weaponstartoverride -1
++set g_balance_hook_weaponthrowable 1
++// }}}
++// {{{ #14: Heavy Laser Assault Cannon (MUTATOR WEAPON)
++set g_balance_hlac_primary_ammo 1
++set g_balance_hlac_primary_animtime 0.4
++set g_balance_hlac_primary_damage 18
++set g_balance_hlac_primary_edgedamage 9
++set g_balance_hlac_primary_force 90
++set g_balance_hlac_primary_lifetime 5
++set g_balance_hlac_primary_radius 70
++set g_balance_hlac_primary_refire 0.15
++set g_balance_hlac_primary_speed 9000
++set g_balance_hlac_primary_spread_add 0.0045
++set g_balance_hlac_primary_spread_crouchmod 0.25
++set g_balance_hlac_primary_spread_max 0.25
++set g_balance_hlac_primary_spread_min 0.01
++set g_balance_hlac_reload_ammo 0
++set g_balance_hlac_reload_time 2
++set g_balance_hlac_secondary 1
++set g_balance_hlac_secondary_ammo 10
++set g_balance_hlac_secondary_animtime 0.3
++set g_balance_hlac_secondary_damage 15
++set g_balance_hlac_secondary_edgedamage 7.5
++set g_balance_hlac_secondary_force 90
++set g_balance_hlac_secondary_lifetime 5
++set g_balance_hlac_secondary_radius 70
++set g_balance_hlac_secondary_refire 1
++set g_balance_hlac_secondary_shots 6
++set g_balance_hlac_secondary_speed 9000
++set g_balance_hlac_secondary_spread 0.15
++set g_balance_hlac_secondary_spread_crouchmod 0.5
++set g_balance_hlac_switchdelay_drop 0.2
++set g_balance_hlac_switchdelay_raise 0.2
++set g_balance_hlac_weaponreplace ""
++set g_balance_hlac_weaponstart 0
++set g_balance_hlac_weaponstartoverride -1
++set g_balance_hlac_weaponthrowable 1
++// }}}
++// {{{ #15: @!#%'n Tuba
++set g_balance_tuba_animtime 0.05
++set g_balance_tuba_attenuation 0.5
++set g_balance_tuba_damage 5
++set g_balance_tuba_edgedamage 0
++set g_balance_tuba_fadetime 0.25
++set g_balance_tuba_force 40
++set g_balance_tuba_pitchstep 6
++set g_balance_tuba_radius 200
++set g_balance_tuba_refire 0.05
++set g_balance_tuba_switchdelay_drop 0.2
++set g_balance_tuba_switchdelay_raise 0.2
++set g_balance_tuba_volume 1
++set g_balance_tuba_weaponreplace ""
++set g_balance_tuba_weaponstart 0
++set g_balance_tuba_weaponstartoverride -1
++set g_balance_tuba_weaponthrowable 1
++// }}}
++// {{{ #16: Rifle (MUTATOR WEAPON)
++set g_balance_rifle_bursttime 0
++set g_balance_rifle_primary_ammo 10
++set g_balance_rifle_primary_animtime 0.4
++set g_balance_rifle_primary_bullethail 0
++set g_balance_rifle_primary_burstcost 0
++set g_balance_rifle_primary_damage 80
++set g_balance_rifle_primary_force 100
++set g_balance_rifle_primary_refire 1.2
++set g_balance_rifle_primary_shots 1
++set g_balance_rifle_primary_solidpenetration 62.2
++set g_balance_rifle_primary_spread 0
++set g_balance_rifle_primary_tracer 1
++set g_balance_rifle_reload_ammo 80
++set g_balance_rifle_reload_time 2
++set g_balance_rifle_secondary 1
++set g_balance_rifle_secondary_ammo 10
++set g_balance_rifle_secondary_animtime 0.3
++set g_balance_rifle_secondary_bullethail 0
++set g_balance_rifle_secondary_burstcost 0
++set g_balance_rifle_secondary_damage 20
++set g_balance_rifle_secondary_force 50
++set g_balance_rifle_secondary_refire 0.9
++set g_balance_rifle_secondary_reload 0
++set g_balance_rifle_secondary_shots 4
++set g_balance_rifle_secondary_solidpenetration 15.5
++set g_balance_rifle_secondary_spread 0.04
++set g_balance_rifle_secondary_tracer 0
++set g_balance_rifle_switchdelay_drop 0.2
++set g_balance_rifle_switchdelay_raise 0.2
++set g_balance_rifle_weaponreplace ""
++set g_balance_rifle_weaponstart 0
++set g_balance_rifle_weaponstartoverride -1
++set g_balance_rifle_weaponthrowable 1
++// }}}
++// {{{ #17: Fireball
++set g_balance_fireball_primary_animtime 0.4
++set g_balance_fireball_primary_bfgdamage 100
++set g_balance_fireball_primary_bfgforce 0
++set g_balance_fireball_primary_bfgradius 1000
++set g_balance_fireball_primary_damage 200
++set g_balance_fireball_primary_damageforcescale 0
++set g_balance_fireball_primary_edgedamage 50
++set g_balance_fireball_primary_force 600
++set g_balance_fireball_primary_health 0
++set g_balance_fireball_primary_laserburntime 0.5
++set g_balance_fireball_primary_laserdamage 80
++set g_balance_fireball_primary_laseredgedamage 20
++set g_balance_fireball_primary_laserradius 256
++set g_balance_fireball_primary_lifetime 15
++set g_balance_fireball_primary_radius 200
++set g_balance_fireball_primary_refire 2
++set g_balance_fireball_primary_refire2 0
++set g_balance_fireball_primary_speed 1200
++set g_balance_fireball_primary_spread 0
++set g_balance_fireball_secondary_animtime 0.3
++set g_balance_fireball_secondary_damage 40
++set g_balance_fireball_secondary_damageforcescale 4
++set g_balance_fireball_secondary_damagetime 5
++set g_balance_fireball_secondary_laserburntime 0.5
++set g_balance_fireball_secondary_laserdamage 50
++set g_balance_fireball_secondary_laseredgedamage 20
++set g_balance_fireball_secondary_laserradius 110
++set g_balance_fireball_secondary_lifetime 7
++set g_balance_fireball_secondary_refire 1.5
++set g_balance_fireball_secondary_speed 900
++set g_balance_fireball_secondary_speed_up 100
++set g_balance_fireball_secondary_speed_z 0
++set g_balance_fireball_secondary_spread 0
++set g_balance_fireball_switchdelay_drop 0.2
++set g_balance_fireball_switchdelay_raise 0.2
++set g_balance_fireball_weaponreplace ""
++set g_balance_fireball_weaponstart 0
++set g_balance_fireball_weaponstartoverride -1
++set g_balance_fireball_weaponthrowable 0
++// }}}
++// {{{ #18: T.A.G. Seeker (MUTATOR WEAPON)
++set g_balance_seeker_flac_ammo 1
++set g_balance_seeker_flac_animtime 0.1
++set g_balance_seeker_flac_damage 15
++set g_balance_seeker_flac_edgedamage 10
++set g_balance_seeker_flac_force 50
++set g_balance_seeker_flac_lifetime 0.1
++set g_balance_seeker_flac_lifetime_rand 0.05
++set g_balance_seeker_flac_radius 100
++set g_balance_seeker_flac_refire 0.1
++set g_balance_seeker_flac_speed 3000
++set g_balance_seeker_flac_speed_up 1000
++set g_balance_seeker_flac_speed_z 0
++set g_balance_seeker_flac_spread 0.4
++set g_balance_seeker_missile_accel 1400
++set g_balance_seeker_missile_ammo 2
++set g_balance_seeker_missile_animtime 0.2
++set g_balance_seeker_missile_count 3
++set g_balance_seeker_missile_damage 30
++set g_balance_seeker_missile_damageforcescale 4
++set g_balance_seeker_missile_decel 1400
++set g_balance_seeker_missile_delay 0.25
++set g_balance_seeker_missile_edgedamage 10
++set g_balance_seeker_missile_force 150
++set g_balance_seeker_missile_health 5
++set g_balance_seeker_missile_lifetime 15
++set g_balance_seeker_missile_proxy 0
++set g_balance_seeker_missile_proxy_delay 0.2
++set g_balance_seeker_missile_proxy_maxrange 45
++set g_balance_seeker_missile_radius 80
++set g_balance_seeker_missile_refire 0.5
++set g_balance_seeker_missile_smart 1
++set g_balance_seeker_missile_smart_mindist 800
++set g_balance_seeker_missile_smart_trace_max 2500
++set g_balance_seeker_missile_smart_trace_min 1000
++set g_balance_seeker_missile_speed 700
++set g_balance_seeker_missile_speed_max 1300
++set g_balance_seeker_missile_speed_up 300
++set g_balance_seeker_missile_speed_z 0
++set g_balance_seeker_missile_spread 0
++set g_balance_seeker_missile_turnrate 0.65
++set g_balance_seeker_reload_ammo 0
++set g_balance_seeker_reload_time 2
++set g_balance_seeker_switchdelay_drop 0.2
++set g_balance_seeker_switchdelay_raise 0.2
++set g_balance_seeker_tag_ammo 1
++set g_balance_seeker_tag_animtime 0.2
++set g_balance_seeker_tag_damageforcescale 4
++set g_balance_seeker_tag_health 5
++set g_balance_seeker_tag_lifetime 15
++set g_balance_seeker_tag_refire 0.75
++set g_balance_seeker_tag_speed 5000
++set g_balance_seeker_tag_spread 0
++set g_balance_seeker_tag_tracker_lifetime 10
++set g_balance_seeker_type 0
++set g_balance_seeker_weaponreplace ""
++set g_balance_seeker_weaponstart 0
++set g_balance_seeker_weaponstartoverride -1
++set g_balance_seeker_weaponthrowable 1
++// }}}
++// {{{ #19: Shockwave (MUTATOR WEAPON)
++set g_balance_shockwave_blast_animtime 0.3
++set g_balance_shockwave_blast_damage 20
++set g_balance_shockwave_blast_distance 1000
++set g_balance_shockwave_blast_edgedamage 0
++set g_balance_shockwave_blast_force 200
++set g_balance_shockwave_blast_force_forwardbias 50
++set g_balance_shockwave_blast_force_zscale 2
++set g_balance_shockwave_blast_jump_damage 20
++set g_balance_shockwave_blast_jump_edgedamage 0
++set g_balance_shockwave_blast_jump_force 300
++set g_balance_shockwave_blast_jump_force_velocitybias 0
++set g_balance_shockwave_blast_jump_force_zscale 1.25
++set g_balance_shockwave_blast_jump_multiplier_accuracy 0.5
++set g_balance_shockwave_blast_jump_multiplier_distance 0.5
++set g_balance_shockwave_blast_jump_multiplier_min 0
++set g_balance_shockwave_blast_jump_radius 150
++set g_balance_shockwave_blast_multiplier_accuracy 0.5
++set g_balance_shockwave_blast_multiplier_distance 0.5
++set g_balance_shockwave_blast_multiplier_min 0
++set g_balance_shockwave_blast_refire 0.75
++set g_balance_shockwave_blast_splash_damage 15
++set g_balance_shockwave_blast_splash_edgedamage 0
++set g_balance_shockwave_blast_splash_force 100
++set g_balance_shockwave_blast_splash_force_forwardbias 50
++set g_balance_shockwave_blast_splash_multiplier_accuracy 0.5
++set g_balance_shockwave_blast_splash_multiplier_distance 0.5
++set g_balance_shockwave_blast_splash_multiplier_min 0
++set g_balance_shockwave_blast_splash_radius 70
++set g_balance_shockwave_blast_spread_max 120
++set g_balance_shockwave_blast_spread_min 25
++set g_balance_shockwave_melee_animtime 1.3
++set g_balance_shockwave_melee_damage 80
++set g_balance_shockwave_melee_delay 0.25
++set g_balance_shockwave_melee_force 200
++set g_balance_shockwave_melee_multihit 1
++set g_balance_shockwave_melee_no_doubleslap 1
++set g_balance_shockwave_melee_nonplayerdamage 40
++set g_balance_shockwave_melee_range 120
++set g_balance_shockwave_melee_refire 1.25
++set g_balance_shockwave_melee_swing_side 120
++set g_balance_shockwave_melee_swing_up 30
++set g_balance_shockwave_melee_time 0.15
++set g_balance_shockwave_melee_traces 10
++set g_balance_shockwave_switchdelay_drop 0.2
++set g_balance_shockwave_switchdelay_raise 0.2
++set g_balance_shockwave_weaponreplace ""
++set g_balance_shockwave_weaponstart 0
++set g_balance_shockwave_weaponstartoverride -1
++set g_balance_shockwave_weaponthrowable 0
++// }}}
++// {{{ #20: Arc
++set g_balance_arc_beam_ammo 4
++set g_balance_arc_beam_animtime 0.2
++set g_balance_arc_beam_botaimlifetime 0
++set g_balance_arc_beam_botaimspeed 0
++set g_balance_arc_beam_damage 115
++set g_balance_arc_beam_degreespersegment 1
++set g_balance_arc_beam_distancepersegment 0
++set g_balance_arc_beam_falloff_halflifedist 0
++set g_balance_arc_beam_falloff_maxdist 0
++set g_balance_arc_beam_falloff_mindist 0
++set g_balance_arc_beam_force 900
++set g_balance_arc_beam_healing_amax 100
++set g_balance_arc_beam_healing_aps 50
++set g_balance_arc_beam_healing_hmax 150
++set g_balance_arc_beam_healing_hps 50
++set g_balance_arc_beam_heat 1
++set g_balance_arc_beam_maxangle 10
++set g_balance_arc_beam_nonplayerdamage 80
++set g_balance_arc_beam_range 1000
++set g_balance_arc_beam_refire 0.5
++set g_balance_arc_beam_returnspeed 8
++set g_balance_arc_beam_tightness 0.5
++set g_balance_arc_burst_ammo 15
++set g_balance_arc_burst_damage 250
++set g_balance_arc_burst_healing_aps 100
++set g_balance_arc_burst_healing_hps 100
++set g_balance_arc_burst_heat 4
++set g_balance_arc_cooldown 2.5
++set g_balance_arc_overheat_max 5
++set g_balance_arc_overheat_min 3
++set g_balance_arc_switchdelay_drop 0.3
++set g_balance_arc_switchdelay_raise 0.3
++set g_balance_arc_weaponreplace ""
++set g_balance_arc_weaponstart 0
++set g_balance_arc_weaponstartoverride -1
++set g_balance_arc_weaponthrowable 1
++// }}}
++// {{{ #21: Heavy Machine Gun
++set g_balance_hmg_ammo 0
++set g_balance_hmg_damage 0
++set g_balance_hmg_force 0
++set g_balance_hmg_refire 0
++set g_balance_hmg_reload_ammo 120
++set g_balance_hmg_reload_time 1
++set g_balance_hmg_solidpenetration 32
++set g_balance_hmg_spread_add 0.01
++set g_balance_hmg_spread_max 0.05
++set g_balance_hmg_spread_min 0.02
++set g_balance_hmg_switchdelay_drop 0.2
++set g_balance_hmg_switchdelay_raise 0.2
++set g_balance_hmg_weaponreplace ""
++set g_balance_hmg_weaponstart 0
++set g_balance_hmg_weaponstartoverride 0
++set g_balance_hmg_weaponthrowable 0
++// }}}
++// {{{ #22: Rocket Propelled Chainsaw
++set g_balance_rpc_ammo 10
++set g_balance_rpc_animtime 1
++set g_balance_rpc_damage 150
++set g_balance_rpc_damage2 500
++set g_balance_rpc_damageforcescale 2
++set g_balance_rpc_edgedamage 50
++set g_balance_rpc_force 400
++set g_balance_rpc_health 25
++set g_balance_rpc_lifetime 30
++set g_balance_rpc_radius 300
++set g_balance_rpc_refire 1
++set g_balance_rpc_reload_ammo 10
++set g_balance_rpc_reload_time 1
++set g_balance_rpc_speed 1250
++set g_balance_rpc_speedaccel 5000
++set g_balance_rpc_switchdelay_drop 0.2
++set g_balance_rpc_switchdelay_raise 0.2
++set g_balance_rpc_weaponreplace ""
++set g_balance_rpc_weaponstart 0
++set g_balance_rpc_weaponstartoverride 0
++set g_balance_rpc_weaponthrowable 0
++// }}}
--- /dev/null
+ // {{{ #1: Blaster
+ set g_balance_blaster_primary_animtime 0.2
+ set g_balance_blaster_primary_damage 25
+ set g_balance_blaster_primary_delay 0
+ set g_balance_blaster_primary_edgedamage 12.5
+ set g_balance_blaster_primary_force 300
+ set g_balance_blaster_primary_lifetime 5
+ set g_balance_blaster_primary_radius 70
+ set g_balance_blaster_primary_refire 0.7
+ set g_balance_blaster_primary_shotangle 0
+ set g_balance_blaster_primary_speed 6000
+ set g_balance_blaster_primary_spread 0
+ set g_balance_blaster_secondary 0
+ set g_balance_blaster_secondary_animtime 0.2
+ set g_balance_blaster_secondary_damage 25
+ set g_balance_blaster_secondary_delay 0
+ set g_balance_blaster_secondary_edgedamage 12.5
+ set g_balance_blaster_secondary_force 300
+ set g_balance_blaster_secondary_lifetime 5
+ set g_balance_blaster_secondary_radius 70
+ set g_balance_blaster_secondary_refire 0.7
+ set g_balance_blaster_secondary_shotangle 0
+ set g_balance_blaster_secondary_speed 6000
+ set g_balance_blaster_secondary_spread 0
+ set g_balance_blaster_switchdelay_drop 0.15
+ set g_balance_blaster_switchdelay_raise 0.15
+ set g_balance_blaster_weaponreplace ""
+ set g_balance_blaster_weaponstart 1
+ set g_balance_blaster_weaponstartoverride -1
+ set g_balance_blaster_weaponthrowable 0
+ // }}}
+ // {{{ #2: Shockwave
+ set g_balance_shockwave_blast_animtime 0.3
+ set g_balance_shockwave_blast_damage 20
+ set g_balance_shockwave_blast_distance 1000
+ set g_balance_shockwave_blast_edgedamage 0
+ set g_balance_shockwave_blast_force 200
+ set g_balance_shockwave_blast_force_forwardbias 50
+ set g_balance_shockwave_blast_force_zscale 2
+ set g_balance_shockwave_blast_jump_damage 20
+ set g_balance_shockwave_blast_jump_edgedamage 0
+ set g_balance_shockwave_blast_jump_force 300
+ set g_balance_shockwave_blast_jump_force_velocitybias 0
+ set g_balance_shockwave_blast_jump_force_zscale 1.25
+ set g_balance_shockwave_blast_jump_multiplier_accuracy 0.5
+ set g_balance_shockwave_blast_jump_multiplier_distance 0.5
+ set g_balance_shockwave_blast_jump_multiplier_min 0
+ set g_balance_shockwave_blast_jump_radius 150
+ set g_balance_shockwave_blast_multiplier_accuracy 0.5
+ set g_balance_shockwave_blast_multiplier_distance 0.5
+ set g_balance_shockwave_blast_multiplier_min 0
+ set g_balance_shockwave_blast_refire 0.75
+ set g_balance_shockwave_blast_splash_damage 15
+ set g_balance_shockwave_blast_splash_edgedamage 0
+ set g_balance_shockwave_blast_splash_force 100
+ set g_balance_shockwave_blast_splash_force_forwardbias 50
+ set g_balance_shockwave_blast_splash_multiplier_accuracy 0.5
+ set g_balance_shockwave_blast_splash_multiplier_distance 0.5
+ set g_balance_shockwave_blast_splash_multiplier_min 0
+ set g_balance_shockwave_blast_splash_radius 70
+ set g_balance_shockwave_blast_spread_max 120
+ set g_balance_shockwave_blast_spread_min 25
+ set g_balance_shockwave_melee_animtime 1.3
+ set g_balance_shockwave_melee_damage 80
+ set g_balance_shockwave_melee_delay 0.25
+ set g_balance_shockwave_melee_force 200
+ set g_balance_shockwave_melee_multihit 1
+ set g_balance_shockwave_melee_no_doubleslap 1
+ set g_balance_shockwave_melee_nonplayerdamage 40
+ set g_balance_shockwave_melee_range 120
+ set g_balance_shockwave_melee_refire 1.25
+ set g_balance_shockwave_melee_swing_side 120
+ set g_balance_shockwave_melee_swing_up 30
+ set g_balance_shockwave_melee_time 0.15
+ set g_balance_shockwave_melee_traces 10
+ set g_balance_shockwave_switchdelay_drop 0.2
+ set g_balance_shockwave_switchdelay_raise 0.2
+ set g_balance_shockwave_weaponreplace ""
+ set g_balance_shockwave_weaponstart 1
+ set g_balance_shockwave_weaponstartoverride -1
+ set g_balance_shockwave_weaponthrowable 0
+ // }}}
+ // {{{ #3: Machine Gun
+ set g_balance_machinegun_burst 3
+ set g_balance_machinegun_burst_ammo 3
+ set g_balance_machinegun_burst_animtime 0.3
+ set g_balance_machinegun_burst_refire 0.06
+ set g_balance_machinegun_burst_refire2 0.45
+ set g_balance_machinegun_burst_speed 0
+ set g_balance_machinegun_first 1
+ set g_balance_machinegun_first_ammo 1
+ set g_balance_machinegun_first_damage 14
+ set g_balance_machinegun_first_force 5
+ set g_balance_machinegun_first_refire 0.125
+ set g_balance_machinegun_first_spread 0.03
+ set g_balance_machinegun_mode 1
+ set g_balance_machinegun_reload_ammo 60
+ set g_balance_machinegun_reload_time 2
+ set g_balance_machinegun_solidpenetration 13.1
+ set g_balance_machinegun_spread_add 0.012
+ set g_balance_machinegun_spread_max 0.05
+ set g_balance_machinegun_spread_min 0.02
+ set g_balance_machinegun_sustained_ammo 1
+ set g_balance_machinegun_sustained_damage 10
+ set g_balance_machinegun_sustained_force 5
+ set g_balance_machinegun_sustained_refire 0.1
+ set g_balance_machinegun_sustained_spread 0.03
+ set g_balance_machinegun_switchdelay_drop 0.2
+ set g_balance_machinegun_switchdelay_raise 0.2
+ set g_balance_machinegun_weaponreplace "arc"
+ set g_balance_machinegun_weaponstart 0
+ set g_balance_machinegun_weaponstartoverride -1
+ set g_balance_machinegun_weaponthrowable 1
+ // }}}
+ // {{{ #4: Mortar
+ set g_balance_mortar_bouncefactor 0.5
+ set g_balance_mortar_bouncestop 0.075
+ set g_balance_mortar_primary_ammo 2
+ set g_balance_mortar_primary_animtime 0.3
+ set g_balance_mortar_primary_damage 50
+ set g_balance_mortar_primary_damageforcescale 0
+ set g_balance_mortar_primary_edgedamage 25
+ set g_balance_mortar_primary_force 250
+ set g_balance_mortar_primary_health 15
+ set g_balance_mortar_primary_lifetime 5
+ set g_balance_mortar_primary_lifetime_stick 0
+ set g_balance_mortar_primary_radius 120
+ set g_balance_mortar_primary_refire 0.8
+ set g_balance_mortar_primary_remote_minbouncecnt 0
+ set g_balance_mortar_primary_speed 1900
+ set g_balance_mortar_primary_speed_up 225
+ set g_balance_mortar_primary_speed_z 0
+ set g_balance_mortar_primary_spread 0
+ set g_balance_mortar_primary_type 0
+ set g_balance_mortar_reload_ammo 0
+ set g_balance_mortar_reload_time 2
+ set g_balance_mortar_secondary_ammo 2
+ set g_balance_mortar_secondary_animtime 0.3
+ set g_balance_mortar_secondary_damage 60
+ set g_balance_mortar_secondary_damageforcescale 4
+ set g_balance_mortar_secondary_edgedamage 30
+ set g_balance_mortar_secondary_force 250
+ set g_balance_mortar_secondary_health 30
+ set g_balance_mortar_secondary_lifetime 5
+ set g_balance_mortar_secondary_lifetime_bounce 0.5
+ set g_balance_mortar_secondary_lifetime_stick 0
+ set g_balance_mortar_secondary_radius 120
+ set g_balance_mortar_secondary_refire 0.7
+ set g_balance_mortar_secondary_remote_detonateprimary 0
+ set g_balance_mortar_secondary_speed 1400
+ set g_balance_mortar_secondary_speed_up 150
+ set g_balance_mortar_secondary_speed_z 0
+ set g_balance_mortar_secondary_spread 0
+ set g_balance_mortar_secondary_type 1
+ set g_balance_mortar_switchdelay_drop 0.2
+ set g_balance_mortar_switchdelay_raise 0.2
+ set g_balance_mortar_weaponreplace ""
+ set g_balance_mortar_weaponstart 0
+ set g_balance_mortar_weaponstartoverride -1
+ set g_balance_mortar_weaponthrowable 1
+ // }}}
+ // {{{ #5: Mine Layer (MUTATOR WEAPON)
+ set g_balance_minelayer_ammo 4
+ set g_balance_minelayer_animtime 0.4
+ set g_balance_minelayer_damage 40
+ set g_balance_minelayer_damageforcescale 0
+ set g_balance_minelayer_detonatedelay -1
+ set g_balance_minelayer_edgedamage 20
+ set g_balance_minelayer_force 250
+ set g_balance_minelayer_health 15
+ set g_balance_minelayer_lifetime 10
+ set g_balance_minelayer_lifetime_countdown 0.5
+ set g_balance_minelayer_limit 3
+ set g_balance_minelayer_protection 0
+ set g_balance_minelayer_proximityradius 150
+ set g_balance_minelayer_radius 175
+ set g_balance_minelayer_refire 1.5
+ set g_balance_minelayer_reload_ammo 0
+ set g_balance_minelayer_reload_time 2
+ set g_balance_minelayer_remote_damage 45
+ set g_balance_minelayer_remote_edgedamage 40
+ set g_balance_minelayer_remote_force 300
+ set g_balance_minelayer_remote_radius 200
+ set g_balance_minelayer_speed 1000
+ set g_balance_minelayer_switchdelay_drop 0.2
+ set g_balance_minelayer_switchdelay_raise 0.2
+ set g_balance_minelayer_time 0.5
+ set g_balance_minelayer_weaponreplace ""
+ set g_balance_minelayer_weaponstart 0
+ set g_balance_minelayer_weaponstartoverride -1
+ set g_balance_minelayer_weaponthrowable 1
+ // }}}
+ // {{{ #6: Electro
+ set g_balance_electro_combo_comboradius 300
+ set g_balance_electro_combo_comboradius_thruwall 200
+ set g_balance_electro_combo_damage 50
+ set g_balance_electro_combo_edgedamage 25
+ set g_balance_electro_combo_force 120
+ set g_balance_electro_combo_radius 150
+ set g_balance_electro_combo_safeammocheck 1
+ set g_balance_electro_combo_speed 2000
+ set g_balance_electro_primary_ammo 4
+ set g_balance_electro_primary_animtime 0.3
+ set g_balance_electro_primary_comboradius 300
+ set g_balance_electro_primary_damage 40
+ set g_balance_electro_primary_edgedamage 20
+ set g_balance_electro_primary_force 200
+ set g_balance_electro_primary_lifetime 5
+ set g_balance_electro_primary_midaircombo_explode 1
+ set g_balance_electro_primary_midaircombo_interval 0.1
+ set g_balance_electro_primary_midaircombo_radius 100
+ set g_balance_electro_primary_radius 100
+ set g_balance_electro_primary_refire 0.6
+ set g_balance_electro_primary_speed 2500
+ set g_balance_electro_primary_spread 0
+ set g_balance_electro_reload_ammo 0
+ set g_balance_electro_reload_time 2
+ set g_balance_electro_secondary_ammo 2
+ set g_balance_electro_secondary_animtime 0.2
+ set g_balance_electro_secondary_bouncefactor 0.3
+ set g_balance_electro_secondary_bouncestop 0.05
+ set g_balance_electro_secondary_count 3
+ set g_balance_electro_secondary_damage 40
+ set g_balance_electro_secondary_damagedbycontents 1
+ set g_balance_electro_secondary_damageforcescale 4
+ set g_balance_electro_secondary_edgedamage 20
+ set g_balance_electro_secondary_force 50
+ set g_balance_electro_secondary_health 5
+ set g_balance_electro_secondary_lifetime 4
+ set g_balance_electro_secondary_radius 150
+ set g_balance_electro_secondary_refire 0.2
+ set g_balance_electro_secondary_refire2 1.6
+ set g_balance_electro_secondary_speed 1000
+ set g_balance_electro_secondary_speed_up 200
+ set g_balance_electro_secondary_speed_z 0
+ set g_balance_electro_secondary_spread 0.04
+ set g_balance_electro_secondary_touchexplode 0
+ set g_balance_electro_switchdelay_drop 0.2
+ set g_balance_electro_switchdelay_raise 0.2
+ set g_balance_electro_weaponreplace ""
+ set g_balance_electro_weaponstart 0
+ set g_balance_electro_weaponstartoverride -1
+ set g_balance_electro_weaponthrowable 1
+ // }}}
+ // {{{ #7: Arc
+ set g_balance_arc_beam_ammo 0
+ set g_balance_arc_beam_animtime 0.2
+ set g_balance_arc_beam_botaimlifetime 0
+ set g_balance_arc_beam_botaimspeed 0
+ set g_balance_arc_beam_damage 150
+ set g_balance_arc_beam_degreespersegment 1
+ set g_balance_arc_beam_distancepersegment 0
+ set g_balance_arc_beam_falloff_halflifedist 0
+ set g_balance_arc_beam_falloff_maxdist 0
+ set g_balance_arc_beam_falloff_mindist 0
+ set g_balance_arc_beam_force 2000
+ set g_balance_arc_beam_healing_amax 200
+ set g_balance_arc_beam_healing_aps 50
+ set g_balance_arc_beam_healing_hmax 200
+ set g_balance_arc_beam_healing_hps 50
+ set g_balance_arc_beam_maxangle 10
+ set g_balance_arc_beam_nonplayerdamage 80
+ set g_balance_arc_beam_range 1000
+ set g_balance_arc_beam_refire 0.5
+ set g_balance_arc_beam_returnspeed 8
+ set g_balance_arc_beam_tightness 0.5
+ set g_balance_arc_burst_ammo 0
+ set g_balance_arc_burst_damage 500
+ set g_balance_arc_burst_healing_aps 100
+ set g_balance_arc_burst_healing_hps 100
+ set g_balance_arc_cooldown 2.5
+ set g_balance_arc_overheat_max 5
+ set g_balance_arc_overheat_min 3
+ set g_balance_arc_beam_heat 1
+ set g_balance_arc_burst_heat 5
+ set g_balance_arc_switchdelay_drop 0.3
+ set g_balance_arc_switchdelay_raise 0.3
+ set g_balance_arc_weaponreplace ""
+ set g_balance_arc_weaponstart 0
+ set g_balance_arc_weaponstartoverride -1
+ set g_balance_arc_weaponthrowable 1
+ // }}}
+ // {{{ #8: Crylink
+ set g_balance_crylink_primary_ammo 3
+ set g_balance_crylink_primary_animtime 0.3
+ set g_balance_crylink_primary_bouncedamagefactor 0.5
+ set g_balance_crylink_primary_bounces 1
+ set g_balance_crylink_primary_damage 12
+ set g_balance_crylink_primary_edgedamage 6
+ set g_balance_crylink_primary_force -50
+ set g_balance_crylink_primary_joindelay 0.1
+ set g_balance_crylink_primary_joinexplode 1
+ set g_balance_crylink_primary_joinexplode_damage 0
+ set g_balance_crylink_primary_joinexplode_edgedamage 0
+ set g_balance_crylink_primary_joinexplode_force 0
+ set g_balance_crylink_primary_joinexplode_radius 0
+ set g_balance_crylink_primary_joinspread 0.2
+ set g_balance_crylink_primary_linkexplode 1
+ set g_balance_crylink_primary_middle_fadetime 5
+ set g_balance_crylink_primary_middle_lifetime 5
+ set g_balance_crylink_primary_other_fadetime 5
+ set g_balance_crylink_primary_other_lifetime 5
+ set g_balance_crylink_primary_radius 80
+ set g_balance_crylink_primary_refire 0.7
+ set g_balance_crylink_primary_shots 6
+ set g_balance_crylink_primary_speed 2000
+ set g_balance_crylink_primary_spread 0.08
+ set g_balance_crylink_reload_ammo 0
+ set g_balance_crylink_reload_time 2
+ set g_balance_crylink_secondary 1
+ set g_balance_crylink_secondary_ammo 2
+ set g_balance_crylink_secondary_animtime 0.2
+ set g_balance_crylink_secondary_bouncedamagefactor 0.5
+ set g_balance_crylink_secondary_bounces 0
+ set g_balance_crylink_secondary_damage 10
+ set g_balance_crylink_secondary_edgedamage 5
+ set g_balance_crylink_secondary_force -250
+ set g_balance_crylink_secondary_joindelay 0
+ set g_balance_crylink_secondary_joinexplode 0
+ set g_balance_crylink_secondary_joinexplode_damage 0
+ set g_balance_crylink_secondary_joinexplode_edgedamage 0
+ set g_balance_crylink_secondary_joinexplode_force 0
+ set g_balance_crylink_secondary_joinexplode_radius 0
+ set g_balance_crylink_secondary_joinspread 0
+ set g_balance_crylink_secondary_linkexplode 1
+ set g_balance_crylink_secondary_middle_fadetime 5
+ set g_balance_crylink_secondary_middle_lifetime 5
+ set g_balance_crylink_secondary_other_fadetime 5
+ set g_balance_crylink_secondary_other_lifetime 5
+ set g_balance_crylink_secondary_radius 100
+ set g_balance_crylink_secondary_refire 0.7
+ set g_balance_crylink_secondary_shots 5
+ set g_balance_crylink_secondary_speed 3000
+ set g_balance_crylink_secondary_spread 0.01
+ set g_balance_crylink_secondary_spreadtype 1
+ set g_balance_crylink_switchdelay_drop 0.2
+ set g_balance_crylink_switchdelay_raise 0.2
+ set g_balance_crylink_weaponreplace ""
+ set g_balance_crylink_weaponstart 0
+ set g_balance_crylink_weaponstartoverride -1
+ set g_balance_crylink_weaponthrowable 1
+ // }}}
+ // {{{ #9: Vortex
+ set g_balance_vortex_charge 1
+ set g_balance_vortex_charge_animlimit 0.5
+ set g_balance_vortex_charge_limit 1
+ set g_balance_vortex_charge_maxspeed 800
+ set g_balance_vortex_charge_mindmg 40
+ set g_balance_vortex_charge_minspeed 400
+ set g_balance_vortex_charge_rate 0.4
+ set g_balance_vortex_charge_rot_pause 0
+ set g_balance_vortex_charge_rot_rate 0
+ set g_balance_vortex_charge_shot_multiplier 0
+ set g_balance_vortex_charge_start 0.5
+ set g_balance_vortex_charge_velocity_rate 0
+ set g_balance_vortex_primary_ammo 6
+ set g_balance_vortex_primary_animtime 0.6
+ set g_balance_vortex_primary_damage 80
+ set g_balance_vortex_primary_damagefalloff_forcehalflife 0
+ set g_balance_vortex_primary_damagefalloff_halflife 0
+ set g_balance_vortex_primary_damagefalloff_maxdist 0
+ set g_balance_vortex_primary_damagefalloff_mindist 0
+ set g_balance_vortex_primary_force 400
+ set g_balance_vortex_primary_refire 1.5
+ set g_balance_vortex_reload_ammo 0
+ set g_balance_vortex_reload_time 2
+ set g_balance_vortex_secondary 0
+ set g_balance_vortex_secondary_ammo 2
+ set g_balance_vortex_secondary_animtime 0
+ set g_balance_vortex_secondary_chargepool 0
+ set g_balance_vortex_secondary_chargepool_pause_regen 1
+ set g_balance_vortex_secondary_chargepool_regen 0.15
+ set g_balance_vortex_secondary_damage 0
+ set g_balance_vortex_secondary_damagefalloff_forcehalflife 0
+ set g_balance_vortex_secondary_damagefalloff_halflife 0
+ set g_balance_vortex_secondary_damagefalloff_maxdist 0
+ set g_balance_vortex_secondary_damagefalloff_mindist 0
+ set g_balance_vortex_secondary_force 0
+ set g_balance_vortex_secondary_refire 0
+ set g_balance_vortex_switchdelay_drop 0.3
+ set g_balance_vortex_switchdelay_raise 0.25
+ set g_balance_vortex_weaponreplace ""
+ set g_balance_vortex_weaponstart 0
+ set g_balance_vortex_weaponstartoverride -1
+ set g_balance_vortex_weaponthrowable 1
+ // }}}
+ // {{{ #10: Hagar
+ set g_balance_hagar_primary_ammo 1
+ set g_balance_hagar_primary_damage 25
+ set g_balance_hagar_primary_damageforcescale 0
+ set g_balance_hagar_primary_edgedamage 12.5
+ set g_balance_hagar_primary_force 100
+ set g_balance_hagar_primary_health 15
+ set g_balance_hagar_primary_lifetime 5
+ set g_balance_hagar_primary_radius 65
+ set g_balance_hagar_primary_refire 0.16667
+ set g_balance_hagar_primary_speed 2500
+ set g_balance_hagar_primary_spread 0.03
+ set g_balance_hagar_reload_ammo 0
+ set g_balance_hagar_reload_time 2
+ set g_balance_hagar_secondary 1
+ set g_balance_hagar_secondary_ammo 1
+ set g_balance_hagar_secondary_damage 40
+ set g_balance_hagar_secondary_damageforcescale 0
+ set g_balance_hagar_secondary_edgedamage 20
+ set g_balance_hagar_secondary_force 75
+ set g_balance_hagar_secondary_health 15
+ set g_balance_hagar_secondary_lifetime_min 10
+ set g_balance_hagar_secondary_lifetime_rand 0
+ set g_balance_hagar_secondary_load 1
+ set g_balance_hagar_secondary_load_abort 0
+ set g_balance_hagar_secondary_load_animtime 0.2
+ set g_balance_hagar_secondary_load_hold 4
+ set g_balance_hagar_secondary_load_linkexplode 0
+ set g_balance_hagar_secondary_load_max 4
+ set g_balance_hagar_secondary_load_releasedeath 0
+ set g_balance_hagar_secondary_load_speed 0.5
+ set g_balance_hagar_secondary_load_spread 0.075
+ set g_balance_hagar_secondary_load_spread_bias 0.5
+ set g_balance_hagar_secondary_radius 80
+ set g_balance_hagar_secondary_refire 0.5
+ set g_balance_hagar_secondary_speed 2500
+ set g_balance_hagar_secondary_spread 0.05
+ set g_balance_hagar_switchdelay_drop 0.2
+ set g_balance_hagar_switchdelay_raise 0.2
+ set g_balance_hagar_weaponreplace ""
+ set g_balance_hagar_weaponstart 0
+ set g_balance_hagar_weaponstartoverride -1
+ set g_balance_hagar_weaponthrowable 1
+ // }}}
+ // {{{ #11: Devastator
+ set g_balance_devastator_ammo 4
+ set g_balance_devastator_animtime 0.4
+ set g_balance_devastator_damage 70
+ set g_balance_devastator_damageforcescale 1
+ set g_balance_devastator_detonatedelay 0.02
+ set g_balance_devastator_edgedamage 35
+ set g_balance_devastator_force 450
+ set g_balance_devastator_guidedelay 0.2
+ set g_balance_devastator_guidegoal 512
+ set g_balance_devastator_guiderate 70
+ set g_balance_devastator_guideratedelay 0.01
+ set g_balance_devastator_guidestop 0
+ set g_balance_devastator_health 30
+ set g_balance_devastator_lifetime 10
+ set g_balance_devastator_radius 110
+ set g_balance_devastator_refire 1.2
+ set g_balance_devastator_reload_ammo 0
+ set g_balance_devastator_reload_time 2
+ set g_balance_devastator_remote_damage 70
+ set g_balance_devastator_remote_edgedamage 35
+ set g_balance_devastator_remote_force 400
+ set g_balance_devastator_remote_jump_damage 40
+ set g_balance_devastator_remote_jump_radius 200
+ set g_balance_devastator_remote_jump_velocity_z_add 500
+ set g_balance_devastator_remote_jump_velocity_z_max 1500
+ set g_balance_devastator_remote_jump_velocity_z_min 500
+ set g_balance_devastator_remote_radius 110
+ set g_balance_devastator_speed 1300
+ set g_balance_devastator_speedaccel 1300
+ set g_balance_devastator_speedstart 1000
+ set g_balance_devastator_switchdelay_drop 0.3
+ set g_balance_devastator_switchdelay_raise 0.2
+ set g_balance_devastator_weaponreplace ""
+ set g_balance_devastator_weaponstart 0
+ set g_balance_devastator_weaponstartoverride -1
+ set g_balance_devastator_weaponthrowable 1
+ // }}}
+ // {{{ #12: Port-O-Launch
+ set g_balance_porto_primary_animtime 0.3
+ set g_balance_porto_primary_lifetime 5
+ set g_balance_porto_primary_refire 1.5
+ set g_balance_porto_primary_speed 1000
+ set g_balance_porto_secondary 1
+ set g_balance_porto_secondary_animtime 0.3
+ set g_balance_porto_secondary_lifetime 5
+ set g_balance_porto_secondary_refire 1.5
+ set g_balance_porto_secondary_speed 1000
+ set g_balance_porto_switchdelay_drop 0.2
+ set g_balance_porto_switchdelay_raise 0.2
+ set g_balance_porto_weaponreplace ""
+ set g_balance_porto_weaponstart 0
+ set g_balance_porto_weaponstartoverride -1
+ set g_balance_porto_weaponthrowable 1
+ // }}}
+ // {{{ #13: Vaporizer
+ set g_balance_vaporizer_primary_ammo 10
+ set g_balance_vaporizer_primary_animtime 0.3
+ set g_balance_vaporizer_primary_refire 1
+ set g_balance_vaporizer_reload_ammo 0
+ set g_balance_vaporizer_reload_time 0
+ set g_balance_vaporizer_secondary_ammo 0
+ set g_balance_vaporizer_secondary_animtime 0.2
+ set g_balance_vaporizer_secondary_damage 25
+ set g_balance_vaporizer_secondary_delay 0
+ set g_balance_vaporizer_secondary_edgedamage 12.5
+ set g_balance_vaporizer_secondary_force 400
+ set g_balance_vaporizer_secondary_lifetime 5
+ set g_balance_vaporizer_secondary_radius 70
+ set g_balance_vaporizer_secondary_refire 0.7
+ set g_balance_vaporizer_secondary_shotangle 0
+ set g_balance_vaporizer_secondary_speed 6000
+ set g_balance_vaporizer_secondary_spread 0
+ set g_balance_vaporizer_switchdelay_drop 0.2
+ set g_balance_vaporizer_switchdelay_raise 0.2
+ set g_balance_vaporizer_weaponreplace ""
+ set g_balance_vaporizer_weaponstart 0
+ set g_balance_vaporizer_weaponstartoverride -1
+ set g_balance_vaporizer_weaponthrowable 0
+ // }}}
+ // {{{ #14: Grappling Hook
+ set g_balance_hook_primary_ammo 5
+ set g_balance_hook_primary_animtime 0.3
+ set g_balance_hook_primary_hooked_ammo 5
+ set g_balance_hook_primary_hooked_time_free 2
+ set g_balance_hook_primary_hooked_time_max 0
+ set g_balance_hook_primary_refire 0
+ set g_balance_hook_secondary_animtime 0.3
+ set g_balance_hook_secondary_damage 25
+ set g_balance_hook_secondary_damageforcescale 0
+ set g_balance_hook_secondary_duration 1.5
+ set g_balance_hook_secondary_edgedamage 5
+ set g_balance_hook_secondary_force -2000
+ set g_balance_hook_secondary_gravity 5
+ set g_balance_hook_secondary_health 15
+ set g_balance_hook_secondary_lifetime 5
+ set g_balance_hook_secondary_power 3
+ set g_balance_hook_secondary_radius 500
+ set g_balance_hook_secondary_refire 3
+ set g_balance_hook_secondary_speed 0
+ set g_balance_hook_switchdelay_drop 0.2
+ set g_balance_hook_switchdelay_raise 0.2
+ set g_balance_hook_weaponreplace ""
+ set g_balance_hook_weaponstart 0
+ set g_balance_hook_weaponstartoverride -1
+ set g_balance_hook_weaponthrowable 1
+ // }}}
+ // {{{ #15: Heavy Laser Assault Cannon (MUTATOR WEAPON)
+ set g_balance_hlac_primary_ammo 1
+ set g_balance_hlac_primary_animtime 0.4
+ set g_balance_hlac_primary_damage 18
+ set g_balance_hlac_primary_edgedamage 9
+ set g_balance_hlac_primary_force 90
+ set g_balance_hlac_primary_lifetime 5
+ set g_balance_hlac_primary_radius 70
+ set g_balance_hlac_primary_refire 0.15
+ set g_balance_hlac_primary_speed 9000
+ set g_balance_hlac_primary_spread_add 0.0045
+ set g_balance_hlac_primary_spread_crouchmod 0.25
+ set g_balance_hlac_primary_spread_max 0.25
+ set g_balance_hlac_primary_spread_min 0.01
+ set g_balance_hlac_reload_ammo 0
+ set g_balance_hlac_reload_time 2
+ set g_balance_hlac_secondary 1
+ set g_balance_hlac_secondary_ammo 10
+ set g_balance_hlac_secondary_animtime 0.3
+ set g_balance_hlac_secondary_damage 15
+ set g_balance_hlac_secondary_edgedamage 7.5
+ set g_balance_hlac_secondary_force 90
+ set g_balance_hlac_secondary_lifetime 5
+ set g_balance_hlac_secondary_radius 70
+ set g_balance_hlac_secondary_refire 1
+ set g_balance_hlac_secondary_shots 6
+ set g_balance_hlac_secondary_speed 9000
+ set g_balance_hlac_secondary_spread 0.15
+ set g_balance_hlac_secondary_spread_crouchmod 0.5
+ set g_balance_hlac_switchdelay_drop 0.2
+ set g_balance_hlac_switchdelay_raise 0.2
+ set g_balance_hlac_weaponreplace ""
+ set g_balance_hlac_weaponstart 0
+ set g_balance_hlac_weaponstartoverride -1
+ set g_balance_hlac_weaponthrowable 1
+ // }}}
+ // {{{ #16: @!#%'n Tuba
+ set g_balance_tuba_animtime 0.05
+ set g_balance_tuba_attenuation 0.5
+ set g_balance_tuba_damage 5
+ set g_balance_tuba_edgedamage 0
+ set g_balance_tuba_fadetime 0.25
+ set g_balance_tuba_force 40
+ set g_balance_tuba_pitchstep 6
+ set g_balance_tuba_radius 200
+ set g_balance_tuba_refire 0.05
+ set g_balance_tuba_switchdelay_drop 0.2
+ set g_balance_tuba_switchdelay_raise 0.2
+ set g_balance_tuba_volume 1
+ set g_balance_tuba_weaponreplace ""
+ set g_balance_tuba_weaponstart 0
+ set g_balance_tuba_weaponstartoverride -1
+ set g_balance_tuba_weaponthrowable 1
+ // }}}
+ // {{{ #17: Rifle (MUTATOR WEAPON)
+ set g_balance_rifle_bursttime 0
+ set g_balance_rifle_primary_ammo 10
+ set g_balance_rifle_primary_animtime 0.4
+ set g_balance_rifle_primary_bullethail 0
+ set g_balance_rifle_primary_burstcost 0
+ set g_balance_rifle_primary_damage 80
+ set g_balance_rifle_primary_force 100
+ set g_balance_rifle_primary_refire 1.2
+ set g_balance_rifle_primary_shots 1
+ set g_balance_rifle_primary_solidpenetration 62.2
+ set g_balance_rifle_primary_spread 0
+ set g_balance_rifle_primary_tracer 1
+ set g_balance_rifle_reload_ammo 80
+ set g_balance_rifle_reload_time 2
+ set g_balance_rifle_secondary 1
+ set g_balance_rifle_secondary_ammo 10
+ set g_balance_rifle_secondary_animtime 0.3
+ set g_balance_rifle_secondary_bullethail 0
+ set g_balance_rifle_secondary_burstcost 0
+ set g_balance_rifle_secondary_damage 20
+ set g_balance_rifle_secondary_force 50
+ set g_balance_rifle_secondary_refire 0.9
+ set g_balance_rifle_secondary_reload 0
+ set g_balance_rifle_secondary_shots 4
+ set g_balance_rifle_secondary_solidpenetration 15.5
+ set g_balance_rifle_secondary_spread 0.04
+ set g_balance_rifle_secondary_tracer 0
+ set g_balance_rifle_switchdelay_drop 0.2
+ set g_balance_rifle_switchdelay_raise 0.2
+ set g_balance_rifle_weaponreplace ""
+ set g_balance_rifle_weaponstart 0
+ set g_balance_rifle_weaponstartoverride -1
+ set g_balance_rifle_weaponthrowable 1
+ // }}}
+ // {{{ #18: Fireball
+ set g_balance_fireball_primary_animtime 0.2
+ set g_balance_fireball_primary_bfgdamage 100
+ set g_balance_fireball_primary_bfgforce 0
+ set g_balance_fireball_primary_bfgradius 1000
+ set g_balance_fireball_primary_damage 200
+ set g_balance_fireball_primary_damageforcescale 0
+ set g_balance_fireball_primary_edgedamage 50
+ set g_balance_fireball_primary_force 600
+ set g_balance_fireball_primary_health 0
+ set g_balance_fireball_primary_laserburntime 0.5
+ set g_balance_fireball_primary_laserdamage 80
+ set g_balance_fireball_primary_laseredgedamage 20
+ set g_balance_fireball_primary_laserradius 256
+ set g_balance_fireball_primary_lifetime 15
+ set g_balance_fireball_primary_radius 200
+ set g_balance_fireball_primary_refire 2
+ set g_balance_fireball_primary_refire2 0
+ set g_balance_fireball_primary_speed 1200
+ set g_balance_fireball_primary_spread 0
+ set g_balance_fireball_secondary_animtime 0.3
+ set g_balance_fireball_secondary_damage 40
+ set g_balance_fireball_secondary_damageforcescale 4
+ set g_balance_fireball_secondary_damagetime 5
+ set g_balance_fireball_secondary_laserburntime 0.5
+ set g_balance_fireball_secondary_laserdamage 50
+ set g_balance_fireball_secondary_laseredgedamage 20
+ set g_balance_fireball_secondary_laserradius 110
+ set g_balance_fireball_secondary_lifetime 7
+ set g_balance_fireball_secondary_refire 1.5
+ set g_balance_fireball_secondary_speed 900
+ set g_balance_fireball_secondary_speed_up 100
+ set g_balance_fireball_secondary_speed_z 0
+ set g_balance_fireball_secondary_spread 0
+ set g_balance_fireball_switchdelay_drop 0.2
+ set g_balance_fireball_switchdelay_raise 0.2
+ set g_balance_fireball_weaponreplace ""
+ set g_balance_fireball_weaponstart 0
+ set g_balance_fireball_weaponstartoverride -1
+ set g_balance_fireball_weaponthrowable 0
+ // }}}
+ // {{{ #19: T.A.G. Seeker (MUTATOR WEAPON)
+ set g_balance_seeker_flac_ammo 1
+ set g_balance_seeker_flac_animtime 0.1
+ set g_balance_seeker_flac_damage 15
+ set g_balance_seeker_flac_edgedamage 10
+ set g_balance_seeker_flac_force 50
+ set g_balance_seeker_flac_lifetime 0.1
+ set g_balance_seeker_flac_lifetime_rand 0.05
+ set g_balance_seeker_flac_radius 100
+ set g_balance_seeker_flac_refire 0.1
+ set g_balance_seeker_flac_speed 3000
+ set g_balance_seeker_flac_speed_up 1000
+ set g_balance_seeker_flac_speed_z 0
+ set g_balance_seeker_flac_spread 0.4
+ set g_balance_seeker_missile_accel 1400
+ set g_balance_seeker_missile_ammo 2
+ set g_balance_seeker_missile_animtime 0.2
+ set g_balance_seeker_missile_count 3
+ set g_balance_seeker_missile_damage 30
+ set g_balance_seeker_missile_damageforcescale 4
+ set g_balance_seeker_missile_decel 1400
+ set g_balance_seeker_missile_delay 0.25
+ set g_balance_seeker_missile_edgedamage 10
+ set g_balance_seeker_missile_force 150
+ set g_balance_seeker_missile_health 5
+ set g_balance_seeker_missile_lifetime 15
+ set g_balance_seeker_missile_proxy 0
+ set g_balance_seeker_missile_proxy_delay 0.2
+ set g_balance_seeker_missile_proxy_maxrange 45
+ set g_balance_seeker_missile_radius 80
+ set g_balance_seeker_missile_refire 0.5
+ set g_balance_seeker_missile_smart 1
+ set g_balance_seeker_missile_smart_mindist 800
+ set g_balance_seeker_missile_smart_trace_max 2500
+ set g_balance_seeker_missile_smart_trace_min 1000
+ set g_balance_seeker_missile_speed 700
+ set g_balance_seeker_missile_speed_max 1300
+ set g_balance_seeker_missile_speed_up 300
+ set g_balance_seeker_missile_speed_z 0
+ set g_balance_seeker_missile_spread 0
+ set g_balance_seeker_missile_turnrate 0.65
+ set g_balance_seeker_reload_ammo 0
+ set g_balance_seeker_reload_time 2
+ set g_balance_seeker_switchdelay_drop 0.2
+ set g_balance_seeker_switchdelay_raise 0.2
+ set g_balance_seeker_tag_ammo 1
+ set g_balance_seeker_tag_animtime 0.2
+ set g_balance_seeker_tag_damageforcescale 4
+ set g_balance_seeker_tag_health 5
+ set g_balance_seeker_tag_lifetime 15
+ set g_balance_seeker_tag_refire 0.75
+ set g_balance_seeker_tag_speed 5000
+ set g_balance_seeker_tag_spread 0
+ set g_balance_seeker_tag_tracker_lifetime 10
+ set g_balance_seeker_type 0
+ set g_balance_seeker_weaponreplace ""
+ set g_balance_seeker_weaponstart 0
+ set g_balance_seeker_weaponstartoverride -1
+ set g_balance_seeker_weaponthrowable 1
+ // }}}
+ // {{{ #20: Shotgun (MUTATOR WEAPON)
+ set g_balance_shotgun_primary_ammo 1
+ set g_balance_shotgun_primary_animtime 0.2
+ set g_balance_shotgun_primary_bullets 14
+ set g_balance_shotgun_primary_damage 4
+ set g_balance_shotgun_primary_force 15
+ set g_balance_shotgun_primary_refire 0.75
+ set g_balance_shotgun_primary_solidpenetration 3.8
+ set g_balance_shotgun_primary_spread 0.12
+ set g_balance_shotgun_reload_ammo 0
+ set g_balance_shotgun_reload_time 2
+ set g_balance_shotgun_secondary 1
+ set g_balance_shotgun_secondary_animtime 1
+ set g_balance_shotgun_secondary_damage 80
+ set g_balance_shotgun_secondary_force 200
+ set g_balance_shotgun_secondary_melee_delay 0.25
+ set g_balance_shotgun_secondary_melee_multihit 1
+ set g_balance_shotgun_secondary_melee_no_doubleslap 1
+ set g_balance_shotgun_secondary_melee_nonplayerdamage 40
+ set g_balance_shotgun_secondary_melee_range 120
+ set g_balance_shotgun_secondary_melee_swing_side 120
+ set g_balance_shotgun_secondary_melee_swing_up 30
+ set g_balance_shotgun_secondary_melee_time 0.15
+ set g_balance_shotgun_secondary_melee_traces 10
+ set g_balance_shotgun_secondary_refire 1.25
+ set g_balance_shotgun_secondary_alt_animtime 0.2
+ set g_balance_shotgun_secondary_alt_refire 1.2
+ set g_balance_shotgun_switchdelay_drop 0.2
+ set g_balance_shotgun_switchdelay_raise 0.2
+ set g_balance_shotgun_weaponreplace ""
+ set g_balance_shotgun_weaponstart 0
+ set g_balance_shotgun_weaponstartoverride -1
+ set g_balance_shotgun_weaponthrowable 1
+ // }}}
++// {{{ #21: Heavy Machine Gun
++set g_balance_hmg_ammo 0
++set g_balance_hmg_damage 0
++set g_balance_hmg_force 0
++set g_balance_hmg_refire 0
++set g_balance_hmg_reload_ammo 120
++set g_balance_hmg_reload_time 1
++set g_balance_hmg_solidpenetration 32
++set g_balance_hmg_spread_add 0.01
++set g_balance_hmg_spread_max 0.05
++set g_balance_hmg_spread_min 0.02
++set g_balance_hmg_switchdelay_drop 0.2
++set g_balance_hmg_switchdelay_raise 0.2
++set g_balance_hmg_weaponreplace ""
++set g_balance_hmg_weaponstart 0
++set g_balance_hmg_weaponstartoverride 0
++set g_balance_hmg_weaponthrowable 0
++// }}}
++// {{{ #22: Rocket Propelled Chainsaw
++set g_balance_rpc_ammo 10
++set g_balance_rpc_animtime 1
++set g_balance_rpc_damage 150
++set g_balance_rpc_damage2 500
++set g_balance_rpc_damageforcescale 2
++set g_balance_rpc_edgedamage 50
++set g_balance_rpc_force 400
++set g_balance_rpc_health 25
++set g_balance_rpc_lifetime 30
++set g_balance_rpc_radius 300
++set g_balance_rpc_refire 1
++set g_balance_rpc_reload_ammo 10
++set g_balance_rpc_reload_time 1
++set g_balance_rpc_speed 1250
++set g_balance_rpc_speedaccel 5000
++set g_balance_rpc_switchdelay_drop 0.2
++set g_balance_rpc_switchdelay_raise 0.2
++set g_balance_rpc_weaponreplace ""
++set g_balance_rpc_weaponstart 0
++set g_balance_rpc_weaponstartoverride 0
++set g_balance_rpc_weaponthrowable 0
++// }}}
--- /dev/null
+ // {{{ #1: Blaster
+ set g_balance_blaster_primary_animtime 0.3
+ set g_balance_blaster_primary_damage 25
+ set g_balance_blaster_primary_delay 0
+ set g_balance_blaster_primary_edgedamage 12.5
+ set g_balance_blaster_primary_force 250
+ set g_balance_blaster_primary_force_zscale 1.5
+ set g_balance_blaster_primary_lifetime 5
+ set g_balance_blaster_primary_radius 60
+ set g_balance_blaster_primary_refire 0.7
+ set g_balance_blaster_primary_shotangle 0
+ set g_balance_blaster_primary_speed 6000
+ set g_balance_blaster_primary_spread 0
+ set g_balance_blaster_secondary 0
+ set g_balance_blaster_secondary_animtime 0.3
+ set g_balance_blaster_secondary_damage 25
+ set g_balance_blaster_secondary_delay 0
+ set g_balance_blaster_secondary_edgedamage 12.5
+ set g_balance_blaster_secondary_force 300
+ set g_balance_blaster_secondary_force_zscale 1.2
+ set g_balance_blaster_secondary_lifetime 5
+ set g_balance_blaster_secondary_radius 70
+ set g_balance_blaster_secondary_refire 0.7
+ set g_balance_blaster_secondary_shotangle 0
+ set g_balance_blaster_secondary_speed 6000
+ set g_balance_blaster_secondary_spread 0
+ set g_balance_blaster_switchdelay_drop 0
+ set g_balance_blaster_switchdelay_raise 0
+ set g_balance_blaster_weaponreplace ""
+ set g_balance_blaster_weaponstart 0
+ set g_balance_blaster_weaponstartoverride -1
+ set g_balance_blaster_weaponthrowable 0
+ // }}}
+ // {{{ #2: Shotgun
+ set g_balance_shotgun_primary_ammo 1
+ set g_balance_shotgun_primary_animtime 0.2
+ set g_balance_shotgun_primary_bullets 14
+ set g_balance_shotgun_primary_damage 4
+ set g_balance_shotgun_primary_force 15
+ set g_balance_shotgun_primary_refire 0.75
+ set g_balance_shotgun_primary_solidpenetration 3.8
+ set g_balance_shotgun_primary_spread 0.12
+ set g_balance_shotgun_reload_ammo 0
+ set g_balance_shotgun_reload_time 2
+ set g_balance_shotgun_secondary 1
+ set g_balance_shotgun_secondary_animtime 1
+ set g_balance_shotgun_secondary_damage 80
+ set g_balance_shotgun_secondary_force 200
+ set g_balance_shotgun_secondary_melee_delay 0.25
+ set g_balance_shotgun_secondary_melee_multihit 1
+ set g_balance_shotgun_secondary_melee_no_doubleslap 1
+ set g_balance_shotgun_secondary_melee_nonplayerdamage 40
+ set g_balance_shotgun_secondary_melee_range 120
+ set g_balance_shotgun_secondary_melee_swing_side 120
+ set g_balance_shotgun_secondary_melee_swing_up 30
+ set g_balance_shotgun_secondary_melee_time 0.15
+ set g_balance_shotgun_secondary_melee_traces 10
+ set g_balance_shotgun_secondary_refire 1.25
+ set g_balance_shotgun_secondary_alt_animtime 0.2
+ set g_balance_shotgun_secondary_alt_refire 1.2
+ set g_balance_shotgun_switchdelay_drop 0
+ set g_balance_shotgun_switchdelay_raise 0
+ set g_balance_shotgun_weaponreplace ""
+ set g_balance_shotgun_weaponstart 0
+ set g_balance_shotgun_weaponstartoverride -1
+ set g_balance_shotgun_weaponthrowable 1
+ // }}}
+ // {{{ #3: Machine Gun
+ set g_balance_machinegun_burst 3
+ set g_balance_machinegun_burst_ammo 3
+ set g_balance_machinegun_burst_animtime 0.3
+ set g_balance_machinegun_burst_refire 0.06
+ set g_balance_machinegun_burst_refire2 0.45
+ set g_balance_machinegun_burst_speed 0
+ set g_balance_machinegun_first 1
+ set g_balance_machinegun_first_ammo 1
+ set g_balance_machinegun_first_damage 14
+ set g_balance_machinegun_first_force 5
+ set g_balance_machinegun_first_refire 0.4
+ set g_balance_machinegun_first_spread 0.03
+ set g_balance_machinegun_mode 1
+ set g_balance_machinegun_reload_ammo 0
+ set g_balance_machinegun_reload_time 2
+ set g_balance_machinegun_solidpenetration 13.1
+ set g_balance_machinegun_spread_add 0
+ set g_balance_machinegun_spread_max 0
+ set g_balance_machinegun_spread_min 0
+ set g_balance_machinegun_sustained_ammo 1
+ set g_balance_machinegun_sustained_damage 12
+ set g_balance_machinegun_sustained_force 5
+ set g_balance_machinegun_sustained_refire 0.1
+ set g_balance_machinegun_sustained_spread 0
+ set g_balance_machinegun_switchdelay_drop 0
+ set g_balance_machinegun_switchdelay_raise 0
+ set g_balance_machinegun_weaponreplace ""
+ set g_balance_machinegun_weaponstart 1
+ set g_balance_machinegun_weaponstartoverride -1
+ set g_balance_machinegun_weaponthrowable 1
+ // }}}
+ // {{{ #4: Mortar
+ set g_balance_mortar_bouncefactor 0.5
+ set g_balance_mortar_bouncestop 0.075
+ set g_balance_mortar_primary_ammo 2
+ set g_balance_mortar_primary_animtime 0.3
+ set g_balance_mortar_primary_damage 50
+ set g_balance_mortar_primary_damageforcescale 0
+ set g_balance_mortar_primary_edgedamage 25
+ set g_balance_mortar_primary_force 250
+ set g_balance_mortar_primary_health 0
+ set g_balance_mortar_primary_lifetime 5
+ set g_balance_mortar_primary_lifetime_stick 0
+ set g_balance_mortar_primary_radius 100
+ set g_balance_mortar_primary_refire 0.7
+ set g_balance_mortar_primary_remote_minbouncecnt 0
+ set g_balance_mortar_primary_speed 2000
+ set g_balance_mortar_primary_speed_up 200
+ set g_balance_mortar_primary_speed_z 0
+ set g_balance_mortar_primary_spread 0
+ set g_balance_mortar_primary_type 0
+ set g_balance_mortar_reload_ammo 0
+ set g_balance_mortar_reload_time 2
+ set g_balance_mortar_secondary_ammo 2
+ set g_balance_mortar_secondary_animtime 0.5
+ set g_balance_mortar_secondary_damage 55
+ set g_balance_mortar_secondary_damageforcescale 0
+ set g_balance_mortar_secondary_edgedamage 30
+ set g_balance_mortar_secondary_force 300
+ set g_balance_mortar_secondary_health 0
+ set g_balance_mortar_secondary_lifetime 8
+ set g_balance_mortar_secondary_lifetime_bounce 0.5
+ set g_balance_mortar_secondary_lifetime_stick 0
+ set g_balance_mortar_secondary_radius 200
+ set g_balance_mortar_secondary_refire 0.7
+ set g_balance_mortar_secondary_remote_detonateprimary 0
+ set g_balance_mortar_secondary_speed 800
+ set g_balance_mortar_secondary_speed_up 0
+ set g_balance_mortar_secondary_speed_z 200
+ set g_balance_mortar_secondary_spread 0
+ set g_balance_mortar_secondary_type 1
+ set g_balance_mortar_switchdelay_drop 0
+ set g_balance_mortar_switchdelay_raise 0
+ set g_balance_mortar_weaponreplace ""
+ set g_balance_mortar_weaponstart 0
+ set g_balance_mortar_weaponstartoverride -1
+ set g_balance_mortar_weaponthrowable 1
+ // }}}
+ // {{{ #5: Mine Layer (MUTATOR WEAPON)
+ set g_balance_minelayer_ammo 4
+ set g_balance_minelayer_animtime 0.4
+ set g_balance_minelayer_damage 40
+ set g_balance_minelayer_damageforcescale 0
+ set g_balance_minelayer_detonatedelay -1
+ set g_balance_minelayer_edgedamage 20
+ set g_balance_minelayer_force 250
+ set g_balance_minelayer_health 15
+ set g_balance_minelayer_lifetime 10
+ set g_balance_minelayer_lifetime_countdown 0.5
+ set g_balance_minelayer_limit 3
+ set g_balance_minelayer_protection 0
+ set g_balance_minelayer_proximityradius 150
+ set g_balance_minelayer_radius 175
+ set g_balance_minelayer_refire 1.5
+ set g_balance_minelayer_reload_ammo 0
+ set g_balance_minelayer_reload_time 2
+ set g_balance_minelayer_remote_damage 45
+ set g_balance_minelayer_remote_edgedamage 40
+ set g_balance_minelayer_remote_force 300
+ set g_balance_minelayer_remote_radius 200
+ set g_balance_minelayer_speed 1000
+ set g_balance_minelayer_switchdelay_drop 0
+ set g_balance_minelayer_switchdelay_raise 0
+ set g_balance_minelayer_time 0.5
+ set g_balance_minelayer_weaponreplace ""
+ set g_balance_minelayer_weaponstart 0
+ set g_balance_minelayer_weaponstartoverride -1
+ set g_balance_minelayer_weaponthrowable 1
+ // }}}
+ // {{{ #6: Electro
+ set g_balance_electro_combo_comboradius 275
+ set g_balance_electro_combo_comboradius_thruwall 200
+ set g_balance_electro_combo_damage 40
+ set g_balance_electro_combo_edgedamage 20
+ set g_balance_electro_combo_force 120
+ set g_balance_electro_combo_radius 175
+ set g_balance_electro_combo_safeammocheck 1
+ set g_balance_electro_combo_speed 2000
+ set g_balance_electro_primary_ammo 4
+ set g_balance_electro_primary_animtime 0.1
+ set g_balance_electro_primary_comboradius 150
+ set g_balance_electro_primary_damage 55
+ set g_balance_electro_primary_edgedamage 27.5
+ set g_balance_electro_primary_force 200
+ set g_balance_electro_primary_lifetime 5
+ set g_balance_electro_primary_midaircombo_explode 1
+ set g_balance_electro_primary_midaircombo_interval 0.1
+ set g_balance_electro_primary_midaircombo_radius 100
+ set g_balance_electro_primary_radius 100
+ set g_balance_electro_primary_refire 0.6
+ set g_balance_electro_primary_speed 2500
+ set g_balance_electro_primary_spread 0
+ set g_balance_electro_reload_ammo 0
+ set g_balance_electro_reload_time 2
+ set g_balance_electro_secondary_ammo 2
+ set g_balance_electro_secondary_animtime 0.2
+ set g_balance_electro_secondary_bouncefactor 0.4
+ set g_balance_electro_secondary_bouncestop 0.05
+ set g_balance_electro_secondary_count 3
+ set g_balance_electro_secondary_damage 40
+ set g_balance_electro_secondary_damagedbycontents 1
+ set g_balance_electro_secondary_damageforcescale 4
+ set g_balance_electro_secondary_edgedamage 20
+ set g_balance_electro_secondary_force 200
+ set g_balance_electro_secondary_health 5
+ set g_balance_electro_secondary_lifetime 3
+ set g_balance_electro_secondary_radius 150
+ set g_balance_electro_secondary_refire 0.2
+ set g_balance_electro_secondary_refire2 1.5
+ set g_balance_electro_secondary_speed 900
+ set g_balance_electro_secondary_speed_up 200
+ set g_balance_electro_secondary_speed_z 0
+ set g_balance_electro_secondary_spread 0.05
+ set g_balance_electro_secondary_touchexplode 0
+ set g_balance_electro_switchdelay_drop 0
+ set g_balance_electro_switchdelay_raise 0
+ set g_balance_electro_weaponreplace ""
+ set g_balance_electro_weaponstart 0
+ set g_balance_electro_weaponstartoverride -1
+ set g_balance_electro_weaponthrowable 1
+ // }}}
+ // {{{ #7: Crylink
+ set g_balance_crylink_primary_ammo 3
+ set g_balance_crylink_primary_animtime 0.3
+ set g_balance_crylink_primary_bouncedamagefactor 0.5
+ set g_balance_crylink_primary_bounces 1
+ set g_balance_crylink_primary_damage 12
+ set g_balance_crylink_primary_edgedamage 6
+ set g_balance_crylink_primary_force -60
+ set g_balance_crylink_primary_joindelay 0.1
+ set g_balance_crylink_primary_joinexplode 1
+ set g_balance_crylink_primary_joinexplode_damage 0
+ set g_balance_crylink_primary_joinexplode_edgedamage 0
+ set g_balance_crylink_primary_joinexplode_force 0
+ set g_balance_crylink_primary_joinexplode_radius 0
+ set g_balance_crylink_primary_joinspread 0.2
+ set g_balance_crylink_primary_linkexplode 1
+ set g_balance_crylink_primary_middle_fadetime 5
+ set g_balance_crylink_primary_middle_lifetime 5
+ set g_balance_crylink_primary_other_fadetime 5
+ set g_balance_crylink_primary_other_lifetime 5
+ set g_balance_crylink_primary_radius 80
+ set g_balance_crylink_primary_refire 0.7
+ set g_balance_crylink_primary_shots 6
+ set g_balance_crylink_primary_speed 2000
+ set g_balance_crylink_primary_spread 0.08
+ set g_balance_crylink_reload_ammo 0
+ set g_balance_crylink_reload_time 2
+ set g_balance_crylink_secondary 1
+ set g_balance_crylink_secondary_ammo 2
+ set g_balance_crylink_secondary_animtime 0.2
+ set g_balance_crylink_secondary_bouncedamagefactor 0.5
+ set g_balance_crylink_secondary_bounces 0
+ set g_balance_crylink_secondary_damage 10
+ set g_balance_crylink_secondary_edgedamage 5
+ set g_balance_crylink_secondary_force -150
+ set g_balance_crylink_secondary_joindelay 0
+ set g_balance_crylink_secondary_joinexplode 0
+ set g_balance_crylink_secondary_joinexplode_damage 0
+ set g_balance_crylink_secondary_joinexplode_edgedamage 0
+ set g_balance_crylink_secondary_joinexplode_force 0
+ set g_balance_crylink_secondary_joinexplode_radius 0
+ set g_balance_crylink_secondary_joinspread 0
+ set g_balance_crylink_secondary_linkexplode 1
+ set g_balance_crylink_secondary_middle_fadetime 5
+ set g_balance_crylink_secondary_middle_lifetime 5
+ set g_balance_crylink_secondary_other_fadetime 5
+ set g_balance_crylink_secondary_other_lifetime 5
+ set g_balance_crylink_secondary_radius 100
+ set g_balance_crylink_secondary_refire 0.7
+ set g_balance_crylink_secondary_shots 5
+ set g_balance_crylink_secondary_speed 3000
+ set g_balance_crylink_secondary_spread 0.01
+ set g_balance_crylink_secondary_spreadtype 1
+ set g_balance_crylink_switchdelay_drop 0
+ set g_balance_crylink_switchdelay_raise 0
+ set g_balance_crylink_weaponreplace ""
+ set g_balance_crylink_weaponstart 0
+ set g_balance_crylink_weaponstartoverride -1
+ set g_balance_crylink_weaponthrowable 1
+ // }}}
+ // {{{ #8: Vortex
+ set g_balance_vortex_charge 1
+ set g_balance_vortex_charge_animlimit 0.5
+ set g_balance_vortex_charge_limit 1
+ set g_balance_vortex_charge_maxspeed 800
+ set g_balance_vortex_charge_mindmg 40
+ set g_balance_vortex_charge_minspeed 400
+ set g_balance_vortex_charge_rate 0.4
+ set g_balance_vortex_charge_rot_pause 0
+ set g_balance_vortex_charge_rot_rate 0
+ set g_balance_vortex_charge_shot_multiplier 0
+ set g_balance_vortex_charge_start 0.5
+ set g_balance_vortex_charge_velocity_rate 0
+ set g_balance_vortex_primary_ammo 6
+ set g_balance_vortex_primary_animtime 0.4
+ set g_balance_vortex_primary_damage 90
+ set g_balance_vortex_primary_damagefalloff_forcehalflife 0
+ set g_balance_vortex_primary_damagefalloff_halflife 0
+ set g_balance_vortex_primary_damagefalloff_maxdist 0
+ set g_balance_vortex_primary_damagefalloff_mindist 0
+ set g_balance_vortex_primary_force 400
+ set g_balance_vortex_primary_refire 1.5
+ set g_balance_vortex_reload_ammo 0
+ set g_balance_vortex_reload_time 2
+ set g_balance_vortex_secondary 0
+ set g_balance_vortex_secondary_ammo 2
+ set g_balance_vortex_secondary_animtime 0
+ set g_balance_vortex_secondary_chargepool 0
+ set g_balance_vortex_secondary_chargepool_pause_regen 1
+ set g_balance_vortex_secondary_chargepool_regen 0.15
+ set g_balance_vortex_secondary_damage 0
+ set g_balance_vortex_secondary_damagefalloff_forcehalflife 0
+ set g_balance_vortex_secondary_damagefalloff_halflife 0
+ set g_balance_vortex_secondary_damagefalloff_maxdist 0
+ set g_balance_vortex_secondary_damagefalloff_mindist 0
+ set g_balance_vortex_secondary_force 0
+ set g_balance_vortex_secondary_refire 0
+ set g_balance_vortex_switchdelay_drop 0
+ set g_balance_vortex_switchdelay_raise 0
+ set g_balance_vortex_weaponreplace ""
+ set g_balance_vortex_weaponstart 0
+ set g_balance_vortex_weaponstartoverride -1
+ set g_balance_vortex_weaponthrowable 1
+ // }}}
+ // {{{ #9: Hagar
+ set g_balance_hagar_primary_ammo 1
+ set g_balance_hagar_primary_damage 25
+ set g_balance_hagar_primary_damageforcescale 0
+ set g_balance_hagar_primary_edgedamage 12.5
+ set g_balance_hagar_primary_force 92
+ set g_balance_hagar_primary_health 15
+ set g_balance_hagar_primary_lifetime 5
+ set g_balance_hagar_primary_radius 25
+ set g_balance_hagar_primary_refire 0.11
+ set g_balance_hagar_primary_speed 2000
+ set g_balance_hagar_primary_spread 0.03
+ set g_balance_hagar_reload_ammo 0
+ set g_balance_hagar_reload_time 2
+ set g_balance_hagar_secondary 0
+ set g_balance_hagar_secondary_ammo 1
+ set g_balance_hagar_secondary_damage 40
+ set g_balance_hagar_secondary_damageforcescale 0
+ set g_balance_hagar_secondary_edgedamage 20
+ set g_balance_hagar_secondary_force 75
+ set g_balance_hagar_secondary_health 15
+ set g_balance_hagar_secondary_lifetime_min 10
+ set g_balance_hagar_secondary_lifetime_rand 0
+ set g_balance_hagar_secondary_load 1
+ set g_balance_hagar_secondary_load_abort 1
+ set g_balance_hagar_secondary_load_animtime 0.2
+ set g_balance_hagar_secondary_load_hold 4
+ set g_balance_hagar_secondary_load_linkexplode 0
+ set g_balance_hagar_secondary_load_max 4
+ set g_balance_hagar_secondary_load_releasedeath 0
+ set g_balance_hagar_secondary_load_speed 0.5
+ set g_balance_hagar_secondary_load_spread 0.075
+ set g_balance_hagar_secondary_load_spread_bias 0.5
+ set g_balance_hagar_secondary_radius 80
+ set g_balance_hagar_secondary_refire 0.5
+ set g_balance_hagar_secondary_speed 2000
+ set g_balance_hagar_secondary_spread 0.05
+ set g_balance_hagar_switchdelay_drop 0
+ set g_balance_hagar_switchdelay_raise 0
+ set g_balance_hagar_weaponreplace ""
+ set g_balance_hagar_weaponstart 0
+ set g_balance_hagar_weaponstartoverride -1
+ set g_balance_hagar_weaponthrowable 1
+ // }}}
+ // {{{ #10: Devastator
+ set g_balance_devastator_ammo 4
+ set g_balance_devastator_animtime 0.7
+ set g_balance_devastator_damage 80
+ set g_balance_devastator_damageforcescale 0
+ set g_balance_devastator_detonatedelay 0.02
+ set g_balance_devastator_edgedamage 40
+ set g_balance_devastator_force 350
+ set g_balance_devastator_guidedelay 0.2
+ set g_balance_devastator_guidegoal 512
+ set g_balance_devastator_guiderate 0
+ set g_balance_devastator_guideratedelay 999
+ set g_balance_devastator_guidestop 1
+ set g_balance_devastator_health 0
+ set g_balance_devastator_lifetime 100
+ set g_balance_devastator_radius 110
+ set g_balance_devastator_refire 0.9
+ set g_balance_devastator_reload_ammo 0
+ set g_balance_devastator_reload_time 2
+ set g_balance_devastator_remote_damage 70
+ set g_balance_devastator_remote_edgedamage 35
+ set g_balance_devastator_remote_force 350
+ set g_balance_devastator_remote_jump_damage 70
+ set g_balance_devastator_remote_jump_radius 0
+ set g_balance_devastator_remote_jump_velocity_z_add 400
+ set g_balance_devastator_remote_jump_velocity_z_max 1500
+ set g_balance_devastator_remote_jump_velocity_z_min 400
+ set g_balance_devastator_remote_radius 110
+ set g_balance_devastator_speed 1000
+ set g_balance_devastator_speedaccel 0
+ set g_balance_devastator_speedstart 1000
+ set g_balance_devastator_switchdelay_drop 0
+ set g_balance_devastator_switchdelay_raise 0
+ set g_balance_devastator_weaponreplace ""
+ set g_balance_devastator_weaponstart 0
+ set g_balance_devastator_weaponstartoverride -1
+ set g_balance_devastator_weaponthrowable 1
+ // }}}
+ // {{{ #11: Port-O-Launch
+ set g_balance_porto_primary_animtime 0.3
+ set g_balance_porto_primary_lifetime 5
+ set g_balance_porto_primary_refire 1.5
+ set g_balance_porto_primary_speed 5000
+ set g_balance_porto_secondary 1
+ set g_balance_porto_secondary_animtime 0.3
+ set g_balance_porto_secondary_lifetime 5
+ set g_balance_porto_secondary_refire 1.5
+ set g_balance_porto_secondary_speed 1000
+ set g_balance_porto_switchdelay_drop 0
+ set g_balance_porto_switchdelay_raise 0
+ set g_balance_porto_weaponreplace ""
+ set g_balance_porto_weaponstart 0
+ set g_balance_porto_weaponstartoverride -1
+ set g_balance_porto_weaponthrowable 1
+ // }}}
+ // {{{ #12: Vaporizer
+ set g_balance_vaporizer_primary_ammo 10
+ set g_balance_vaporizer_primary_animtime 0.3
+ set g_balance_vaporizer_primary_refire 1
+ set g_balance_vaporizer_reload_ammo 0
+ set g_balance_vaporizer_reload_time 0
+ set g_balance_vaporizer_secondary_ammo 0
+ set g_balance_vaporizer_secondary_animtime 0.2
+ set g_balance_vaporizer_secondary_damage 25
+ set g_balance_vaporizer_secondary_delay 0
+ set g_balance_vaporizer_secondary_edgedamage 12.5
+ set g_balance_vaporizer_secondary_force 400
+ set g_balance_vaporizer_secondary_lifetime 5
+ set g_balance_vaporizer_secondary_radius 70
+ set g_balance_vaporizer_secondary_refire 0.7
+ set g_balance_vaporizer_secondary_shotangle 0
+ set g_balance_vaporizer_secondary_speed 6000
+ set g_balance_vaporizer_secondary_spread 0
+ set g_balance_vaporizer_switchdelay_drop 0
+ set g_balance_vaporizer_switchdelay_raise 0
+ set g_balance_vaporizer_weaponreplace ""
+ set g_balance_vaporizer_weaponstart 0
+ set g_balance_vaporizer_weaponstartoverride -1
+ set g_balance_vaporizer_weaponthrowable 0
+ // }}}
+ // {{{ #13: Grappling Hook
+ set g_balance_hook_primary_ammo 5
+ set g_balance_hook_primary_animtime 0.3
+ set g_balance_hook_primary_hooked_ammo 5
+ set g_balance_hook_primary_hooked_time_free 2
+ set g_balance_hook_primary_hooked_time_max 0
+ set g_balance_hook_primary_refire 0.2
+ set g_balance_hook_secondary_animtime 0.3
+ set g_balance_hook_secondary_damage 25
+ set g_balance_hook_secondary_damageforcescale 0
+ set g_balance_hook_secondary_duration 1.5
+ set g_balance_hook_secondary_edgedamage 5
+ set g_balance_hook_secondary_force -2000
+ set g_balance_hook_secondary_gravity 5
+ set g_balance_hook_secondary_health 15
+ set g_balance_hook_secondary_lifetime 5
+ set g_balance_hook_secondary_power 3
+ set g_balance_hook_secondary_radius 500
+ set g_balance_hook_secondary_refire 3
+ set g_balance_hook_secondary_speed 0
+ set g_balance_hook_switchdelay_drop 0
+ set g_balance_hook_switchdelay_raise 0
+ set g_balance_hook_weaponreplace ""
+ set g_balance_hook_weaponstart 0
+ set g_balance_hook_weaponstartoverride -1
+ set g_balance_hook_weaponthrowable 1
+ // }}}
+ // {{{ #14: Heavy Laser Assault Cannon (MUTATOR WEAPON)
+ set g_balance_hlac_primary_ammo 1
+ set g_balance_hlac_primary_animtime 0.4
+ set g_balance_hlac_primary_damage 18
+ set g_balance_hlac_primary_edgedamage 9
+ set g_balance_hlac_primary_force 90
+ set g_balance_hlac_primary_lifetime 5
+ set g_balance_hlac_primary_radius 70
+ set g_balance_hlac_primary_refire 0.15
+ set g_balance_hlac_primary_speed 9000
+ set g_balance_hlac_primary_spread_add 0.0045
+ set g_balance_hlac_primary_spread_crouchmod 0.25
+ set g_balance_hlac_primary_spread_max 0.25
+ set g_balance_hlac_primary_spread_min 0.01
+ set g_balance_hlac_reload_ammo 0
+ set g_balance_hlac_reload_time 2
+ set g_balance_hlac_secondary 1
+ set g_balance_hlac_secondary_ammo 10
+ set g_balance_hlac_secondary_animtime 0.3
+ set g_balance_hlac_secondary_damage 15
+ set g_balance_hlac_secondary_edgedamage 7.5
+ set g_balance_hlac_secondary_force 90
+ set g_balance_hlac_secondary_lifetime 5
+ set g_balance_hlac_secondary_radius 70
+ set g_balance_hlac_secondary_refire 1
+ set g_balance_hlac_secondary_shots 6
+ set g_balance_hlac_secondary_speed 9000
+ set g_balance_hlac_secondary_spread 0.15
+ set g_balance_hlac_secondary_spread_crouchmod 0.5
+ set g_balance_hlac_switchdelay_drop 0
+ set g_balance_hlac_switchdelay_raise 0
+ set g_balance_hlac_weaponreplace ""
+ set g_balance_hlac_weaponstart 0
+ set g_balance_hlac_weaponstartoverride -1
+ set g_balance_hlac_weaponthrowable 1
+ // }}}
+ // {{{ #15: @!#%'n Tuba
+ set g_balance_tuba_animtime 0.05
+ set g_balance_tuba_attenuation 0.5
+ set g_balance_tuba_damage 5
+ set g_balance_tuba_edgedamage 0
+ set g_balance_tuba_fadetime 0.25
+ set g_balance_tuba_force 40
+ set g_balance_tuba_pitchstep 6
+ set g_balance_tuba_radius 200
+ set g_balance_tuba_refire 0.05
+ set g_balance_tuba_switchdelay_drop 0
+ set g_balance_tuba_switchdelay_raise 0
+ set g_balance_tuba_volume 1
+ set g_balance_tuba_weaponreplace ""
+ set g_balance_tuba_weaponstart 0
+ set g_balance_tuba_weaponstartoverride -1
+ set g_balance_tuba_weaponthrowable 1
+ // }}}
+ // {{{ #16: Rifle (MUTATOR WEAPON)
+ set g_balance_rifle_bursttime 0
+ set g_balance_rifle_primary_ammo 10
+ set g_balance_rifle_primary_animtime 0.4
+ set g_balance_rifle_primary_bullethail 0
+ set g_balance_rifle_primary_burstcost 0
+ set g_balance_rifle_primary_damage 80
+ set g_balance_rifle_primary_force 100
+ set g_balance_rifle_primary_refire 1.2
+ set g_balance_rifle_primary_shots 1
+ set g_balance_rifle_primary_solidpenetration 62.2
+ set g_balance_rifle_primary_spread 0
+ set g_balance_rifle_primary_tracer 1
+ set g_balance_rifle_reload_ammo 80
+ set g_balance_rifle_reload_time 2
+ set g_balance_rifle_secondary 1
+ set g_balance_rifle_secondary_ammo 10
+ set g_balance_rifle_secondary_animtime 0.3
+ set g_balance_rifle_secondary_bullethail 0
+ set g_balance_rifle_secondary_burstcost 0
+ set g_balance_rifle_secondary_damage 20
+ set g_balance_rifle_secondary_force 50
+ set g_balance_rifle_secondary_refire 0.9
+ set g_balance_rifle_secondary_reload 0
+ set g_balance_rifle_secondary_shots 4
+ set g_balance_rifle_secondary_solidpenetration 15.5
+ set g_balance_rifle_secondary_spread 0.04
+ set g_balance_rifle_secondary_tracer 0
+ set g_balance_rifle_switchdelay_drop 0
+ set g_balance_rifle_switchdelay_raise 0
+ set g_balance_rifle_weaponreplace ""
+ set g_balance_rifle_weaponstart 0
+ set g_balance_rifle_weaponstartoverride -1
+ set g_balance_rifle_weaponthrowable 1
+ // }}}
+ // {{{ #17: Fireball
+ set g_balance_fireball_primary_animtime 0.4
+ set g_balance_fireball_primary_bfgdamage 100
+ set g_balance_fireball_primary_bfgforce 0
+ set g_balance_fireball_primary_bfgradius 1000
+ set g_balance_fireball_primary_damage 200
+ set g_balance_fireball_primary_damageforcescale 0
+ set g_balance_fireball_primary_edgedamage 50
+ set g_balance_fireball_primary_force 600
+ set g_balance_fireball_primary_health 0
+ set g_balance_fireball_primary_laserburntime 0.5
+ set g_balance_fireball_primary_laserdamage 80
+ set g_balance_fireball_primary_laseredgedamage 20
+ set g_balance_fireball_primary_laserradius 256
+ set g_balance_fireball_primary_lifetime 15
+ set g_balance_fireball_primary_radius 200
+ set g_balance_fireball_primary_refire 2
+ set g_balance_fireball_primary_refire2 0
+ set g_balance_fireball_primary_speed 1200
+ set g_balance_fireball_primary_spread 0
+ set g_balance_fireball_secondary_animtime 0.3
+ set g_balance_fireball_secondary_damage 40
+ set g_balance_fireball_secondary_damageforcescale 4
+ set g_balance_fireball_secondary_damagetime 5
+ set g_balance_fireball_secondary_laserburntime 0.5
+ set g_balance_fireball_secondary_laserdamage 50
+ set g_balance_fireball_secondary_laseredgedamage 20
+ set g_balance_fireball_secondary_laserradius 110
+ set g_balance_fireball_secondary_lifetime 7
+ set g_balance_fireball_secondary_refire 1.5
+ set g_balance_fireball_secondary_speed 900
+ set g_balance_fireball_secondary_speed_up 100
+ set g_balance_fireball_secondary_speed_z 0
+ set g_balance_fireball_secondary_spread 0
+ set g_balance_fireball_switchdelay_drop 0
+ set g_balance_fireball_switchdelay_raise 0
+ set g_balance_fireball_weaponreplace ""
+ set g_balance_fireball_weaponstart 0
+ set g_balance_fireball_weaponstartoverride -1
+ set g_balance_fireball_weaponthrowable 0
+ // }}}
+ // {{{ #18: T.A.G. Seeker (MUTATOR WEAPON)
+ set g_balance_seeker_flac_ammo 1
+ set g_balance_seeker_flac_animtime 0.1
+ set g_balance_seeker_flac_damage 15
+ set g_balance_seeker_flac_edgedamage 10
+ set g_balance_seeker_flac_force 50
+ set g_balance_seeker_flac_lifetime 0.1
+ set g_balance_seeker_flac_lifetime_rand 0.05
+ set g_balance_seeker_flac_radius 100
+ set g_balance_seeker_flac_refire 0.1
+ set g_balance_seeker_flac_speed 3000
+ set g_balance_seeker_flac_speed_up 1000
+ set g_balance_seeker_flac_speed_z 0
+ set g_balance_seeker_flac_spread 0.4
+ set g_balance_seeker_missile_accel 1400
+ set g_balance_seeker_missile_ammo 2
+ set g_balance_seeker_missile_animtime 0.2
+ set g_balance_seeker_missile_count 3
+ set g_balance_seeker_missile_damage 30
+ set g_balance_seeker_missile_damageforcescale 4
+ set g_balance_seeker_missile_decel 1400
+ set g_balance_seeker_missile_delay 0.25
+ set g_balance_seeker_missile_edgedamage 10
+ set g_balance_seeker_missile_force 150
+ set g_balance_seeker_missile_health 5
+ set g_balance_seeker_missile_lifetime 15
+ set g_balance_seeker_missile_proxy 0
+ set g_balance_seeker_missile_proxy_delay 0.2
+ set g_balance_seeker_missile_proxy_maxrange 45
+ set g_balance_seeker_missile_radius 80
+ set g_balance_seeker_missile_refire 0.5
+ set g_balance_seeker_missile_smart 1
+ set g_balance_seeker_missile_smart_mindist 800
+ set g_balance_seeker_missile_smart_trace_max 2500
+ set g_balance_seeker_missile_smart_trace_min 1000
+ set g_balance_seeker_missile_speed 700
+ set g_balance_seeker_missile_speed_max 1300
+ set g_balance_seeker_missile_speed_up 300
+ set g_balance_seeker_missile_speed_z 0
+ set g_balance_seeker_missile_spread 0
+ set g_balance_seeker_missile_turnrate 0.65
+ set g_balance_seeker_reload_ammo 0
+ set g_balance_seeker_reload_time 2
+ set g_balance_seeker_switchdelay_drop 0
+ set g_balance_seeker_switchdelay_raise 0
+ set g_balance_seeker_tag_ammo 1
+ set g_balance_seeker_tag_animtime 0.2
+ set g_balance_seeker_tag_damageforcescale 4
+ set g_balance_seeker_tag_health 5
+ set g_balance_seeker_tag_lifetime 15
+ set g_balance_seeker_tag_refire 0.75
+ set g_balance_seeker_tag_speed 5000
+ set g_balance_seeker_tag_spread 0
+ set g_balance_seeker_tag_tracker_lifetime 10
+ set g_balance_seeker_type 0
+ set g_balance_seeker_weaponreplace ""
+ set g_balance_seeker_weaponstart 0
+ set g_balance_seeker_weaponstartoverride -1
+ set g_balance_seeker_weaponthrowable 1
+ // }}}
+ // {{{ #19: Shockwave (MUTATOR WEAPON)
+ set g_balance_shockwave_blast_animtime 0.3
+ set g_balance_shockwave_blast_damage 20
+ set g_balance_shockwave_blast_distance 1000
+ set g_balance_shockwave_blast_edgedamage 0
+ set g_balance_shockwave_blast_force 200
+ set g_balance_shockwave_blast_force_forwardbias 50
+ set g_balance_shockwave_blast_force_zscale 2
+ set g_balance_shockwave_blast_jump_damage 20
+ set g_balance_shockwave_blast_jump_edgedamage 0
+ set g_balance_shockwave_blast_jump_force 300
+ set g_balance_shockwave_blast_jump_force_velocitybias 0
+ set g_balance_shockwave_blast_jump_force_zscale 1.25
+ set g_balance_shockwave_blast_jump_multiplier_accuracy 0.5
+ set g_balance_shockwave_blast_jump_multiplier_distance 0.5
+ set g_balance_shockwave_blast_jump_multiplier_min 0
+ set g_balance_shockwave_blast_jump_radius 150
+ set g_balance_shockwave_blast_multiplier_accuracy 0.5
+ set g_balance_shockwave_blast_multiplier_distance 0.5
+ set g_balance_shockwave_blast_multiplier_min 0
+ set g_balance_shockwave_blast_refire 0.75
+ set g_balance_shockwave_blast_splash_damage 15
+ set g_balance_shockwave_blast_splash_edgedamage 0
+ set g_balance_shockwave_blast_splash_force 100
+ set g_balance_shockwave_blast_splash_force_forwardbias 50
+ set g_balance_shockwave_blast_splash_multiplier_accuracy 0.5
+ set g_balance_shockwave_blast_splash_multiplier_distance 0.5
+ set g_balance_shockwave_blast_splash_multiplier_min 0
+ set g_balance_shockwave_blast_splash_radius 70
+ set g_balance_shockwave_blast_spread_max 120
+ set g_balance_shockwave_blast_spread_min 25
+ set g_balance_shockwave_melee_animtime 1.3
+ set g_balance_shockwave_melee_damage 80
+ set g_balance_shockwave_melee_delay 0.25
+ set g_balance_shockwave_melee_force 200
+ set g_balance_shockwave_melee_multihit 1
+ set g_balance_shockwave_melee_no_doubleslap 1
+ set g_balance_shockwave_melee_nonplayerdamage 40
+ set g_balance_shockwave_melee_range 120
+ set g_balance_shockwave_melee_refire 1.25
+ set g_balance_shockwave_melee_swing_side 120
+ set g_balance_shockwave_melee_swing_up 30
+ set g_balance_shockwave_melee_time 0.15
+ set g_balance_shockwave_melee_traces 10
+ set g_balance_shockwave_switchdelay_drop 0
+ set g_balance_shockwave_switchdelay_raise 0
+ set g_balance_shockwave_weaponreplace ""
+ set g_balance_shockwave_weaponstart 0
+ set g_balance_shockwave_weaponstartoverride -1
+ set g_balance_shockwave_weaponthrowable 0
+ // }}}
+ // {{{ #20: Arc
+ set g_balance_arc_beam_ammo 4
+ set g_balance_arc_beam_animtime 0.2
+ set g_balance_arc_beam_botaimlifetime 0
+ set g_balance_arc_beam_botaimspeed 0
+ set g_balance_arc_beam_damage 115
+ set g_balance_arc_beam_degreespersegment 1
+ set g_balance_arc_beam_distancepersegment 0
+ set g_balance_arc_beam_falloff_halflifedist 0
+ set g_balance_arc_beam_falloff_maxdist 0
+ set g_balance_arc_beam_falloff_mindist 0
+ set g_balance_arc_beam_force 900
+ set g_balance_arc_beam_healing_amax 100
+ set g_balance_arc_beam_healing_aps 50
+ set g_balance_arc_beam_healing_hmax 150
+ set g_balance_arc_beam_healing_hps 50
+ set g_balance_arc_cooldown 2.5
+ set g_balance_arc_overheat_max 5
+ set g_balance_arc_overheat_min 3
+ set g_balance_arc_beam_heat 1
+ set g_balance_arc_burst_heat 5
+ set g_balance_arc_beam_maxangle 10
+ set g_balance_arc_beam_nonplayerdamage 80
+ set g_balance_arc_beam_range 1000
+ set g_balance_arc_beam_refire 0.5
+ set g_balance_arc_beam_returnspeed 8
+ set g_balance_arc_beam_tightness 0.5
+ set g_balance_arc_burst_ammo 15
+ set g_balance_arc_burst_damage 250
+ set g_balance_arc_burst_healing_aps 100
+ set g_balance_arc_burst_healing_hps 100
+ set g_balance_arc_switchdelay_drop 0.3
+ set g_balance_arc_switchdelay_raise 0.3
+ set g_balance_arc_weaponreplace ""
+ set g_balance_arc_weaponstart 0
+ set g_balance_arc_weaponstartoverride -1
+ set g_balance_arc_weaponthrowable 1
+ // }}}
++// {{{ #21: Heavy Machine Gun
++set g_balance_hmg_ammo 0
++set g_balance_hmg_damage 0
++set g_balance_hmg_force 0
++set g_balance_hmg_refire 0
++set g_balance_hmg_reload_ammo 120
++set g_balance_hmg_reload_time 1
++set g_balance_hmg_solidpenetration 32
++set g_balance_hmg_spread_add 0.01
++set g_balance_hmg_spread_max 0.05
++set g_balance_hmg_spread_min 0.02
++set g_balance_hmg_switchdelay_drop 0.2
++set g_balance_hmg_switchdelay_raise 0.2
++set g_balance_hmg_weaponreplace ""
++set g_balance_hmg_weaponstart 0
++set g_balance_hmg_weaponstartoverride 0
++set g_balance_hmg_weaponthrowable 0
++// }}}
++// {{{ #22: Rocket Propelled Chainsaw
++set g_balance_rpc_ammo 10
++set g_balance_rpc_animtime 1
++set g_balance_rpc_damage 150
++set g_balance_rpc_damage2 500
++set g_balance_rpc_damageforcescale 2
++set g_balance_rpc_edgedamage 50
++set g_balance_rpc_force 400
++set g_balance_rpc_health 25
++set g_balance_rpc_lifetime 30
++set g_balance_rpc_radius 300
++set g_balance_rpc_refire 1
++set g_balance_rpc_reload_ammo 10
++set g_balance_rpc_reload_time 1
++set g_balance_rpc_speed 1250
++set g_balance_rpc_speedaccel 5000
++set g_balance_rpc_switchdelay_drop 0.2
++set g_balance_rpc_switchdelay_raise 0.2
++set g_balance_rpc_weaponreplace ""
++set g_balance_rpc_weaponstart 0
++set g_balance_rpc_weaponstartoverride 0
++set g_balance_rpc_weaponthrowable 0
++// }}}
--- /dev/null
+ // {{{ #1: Blaster
+ set g_balance_blaster_primary_animtime 0.2
+ set g_balance_blaster_primary_damage 25
+ set g_balance_blaster_primary_delay 0
+ set g_balance_blaster_primary_edgedamage 12.5
+ set g_balance_blaster_primary_force 300
+ set g_balance_blaster_primary_force_zscale 1.25
+ set g_balance_blaster_primary_lifetime 5
+ set g_balance_blaster_primary_radius 60
+ set g_balance_blaster_primary_refire 0.7
+ set g_balance_blaster_primary_shotangle 0
+ set g_balance_blaster_primary_speed 6000
+ set g_balance_blaster_primary_spread 0
+ set g_balance_blaster_secondary 0
+ set g_balance_blaster_secondary_animtime 0.2
+ set g_balance_blaster_secondary_damage 25
+ set g_balance_blaster_secondary_delay 0
+ set g_balance_blaster_secondary_edgedamage 12.5
+ set g_balance_blaster_secondary_force 300
+ set g_balance_blaster_secondary_force_zscale 1.2
+ set g_balance_blaster_secondary_lifetime 5
+ set g_balance_blaster_secondary_radius 70
+ set g_balance_blaster_secondary_refire 0.7
+ set g_balance_blaster_secondary_shotangle 0
+ set g_balance_blaster_secondary_speed 6000
+ set g_balance_blaster_secondary_spread 0
+ set g_balance_blaster_switchdelay_drop 0.2
+ set g_balance_blaster_switchdelay_raise 0.2
+ set g_balance_blaster_weaponreplace ""
+ set g_balance_blaster_weaponstart 1
+ set g_balance_blaster_weaponstartoverride -1
+ set g_balance_blaster_weaponthrowable 0
+ // }}}
+ // {{{ #2: Shotgun
+ set g_balance_shotgun_primary_ammo 1
+ set g_balance_shotgun_primary_animtime 0.2
+ set g_balance_shotgun_primary_bullets 14
+ set g_balance_shotgun_primary_damage 3.5
+ set g_balance_shotgun_primary_force 15
+ set g_balance_shotgun_primary_refire 0.75
+ set g_balance_shotgun_primary_solidpenetration 3.8
+ set g_balance_shotgun_primary_spread 0.11
+ set g_balance_shotgun_reload_ammo 0
+ set g_balance_shotgun_reload_time 2
+ set g_balance_shotgun_secondary 1
+ set g_balance_shotgun_secondary_animtime 1
+ set g_balance_shotgun_secondary_damage 70
+ set g_balance_shotgun_secondary_force 200
+ set g_balance_shotgun_secondary_melee_delay 0.25
+ set g_balance_shotgun_secondary_melee_multihit 1
+ set g_balance_shotgun_secondary_melee_no_doubleslap 1
+ set g_balance_shotgun_secondary_melee_nonplayerdamage 40
+ set g_balance_shotgun_secondary_melee_range 120
+ set g_balance_shotgun_secondary_melee_swing_side 120
+ set g_balance_shotgun_secondary_melee_swing_up 30
+ set g_balance_shotgun_secondary_melee_time 0.15
+ set g_balance_shotgun_secondary_melee_traces 10
+ set g_balance_shotgun_secondary_refire 1.25
+ set g_balance_shotgun_secondary_alt_animtime 0.2
+ set g_balance_shotgun_secondary_alt_refire 1.2
+ set g_balance_shotgun_switchdelay_drop 0.2
+ set g_balance_shotgun_switchdelay_raise 0.2
+ set g_balance_shotgun_weaponreplace ""
+ set g_balance_shotgun_weaponstart 1
+ set g_balance_shotgun_weaponstartoverride -1
+ set g_balance_shotgun_weaponthrowable 1
+ // }}}
+ // {{{ #3: Machine Gun
+ set g_balance_machinegun_burst 3
+ set g_balance_machinegun_burst_ammo 3
+ set g_balance_machinegun_burst_animtime 0.3
+ set g_balance_machinegun_burst_refire 0.06
+ set g_balance_machinegun_burst_refire2 0.45
+ set g_balance_machinegun_burst_speed 0
+ set g_balance_machinegun_first 1
+ set g_balance_machinegun_first_ammo 1
+ set g_balance_machinegun_first_damage 14
+ set g_balance_machinegun_first_force 5
+ set g_balance_machinegun_first_refire 0.125
+ set g_balance_machinegun_first_spread 0.03
+ set g_balance_machinegun_mode 1
+ set g_balance_machinegun_reload_ammo 60
+ set g_balance_machinegun_reload_time 2
+ set g_balance_machinegun_solidpenetration 13.1
+ set g_balance_machinegun_spread_add 0.012
+ set g_balance_machinegun_spread_max 0.05
+ set g_balance_machinegun_spread_min 0.02
+ set g_balance_machinegun_sustained_ammo 1
+ set g_balance_machinegun_sustained_damage 10
+ set g_balance_machinegun_sustained_force 5
+ set g_balance_machinegun_sustained_refire 0.1
+ set g_balance_machinegun_sustained_spread 0.03
+ set g_balance_machinegun_switchdelay_drop 0.2
+ set g_balance_machinegun_switchdelay_raise 0.2
+ set g_balance_machinegun_weaponreplace ""
+ set g_balance_machinegun_weaponstart 0
+ set g_balance_machinegun_weaponstartoverride -1
+ set g_balance_machinegun_weaponthrowable 1
+ // }}}
+ // {{{ #4: Mortar
+ set g_balance_mortar_bouncefactor 0.5
+ set g_balance_mortar_bouncestop 0.075
+ set g_balance_mortar_primary_ammo 2
+ set g_balance_mortar_primary_animtime 0.3
+ set g_balance_mortar_primary_damage 55
+ set g_balance_mortar_primary_damageforcescale 0
+ set g_balance_mortar_primary_edgedamage 25
+ set g_balance_mortar_primary_force 250
+ set g_balance_mortar_primary_health 15
+ set g_balance_mortar_primary_lifetime 5
+ set g_balance_mortar_primary_lifetime_stick 0
+ set g_balance_mortar_primary_radius 120
+ set g_balance_mortar_primary_refire 0.8
+ set g_balance_mortar_primary_remote_minbouncecnt 0
+ set g_balance_mortar_primary_speed 1900
+ set g_balance_mortar_primary_speed_up 225
+ set g_balance_mortar_primary_speed_z 0
+ set g_balance_mortar_primary_spread 0
+ set g_balance_mortar_primary_type 0
+ set g_balance_mortar_reload_ammo 0
+ set g_balance_mortar_reload_time 2
+ set g_balance_mortar_secondary_ammo 2
+ set g_balance_mortar_secondary_animtime 0.3
+ set g_balance_mortar_secondary_damage 55
+ set g_balance_mortar_secondary_damageforcescale 4
+ set g_balance_mortar_secondary_edgedamage 30
+ set g_balance_mortar_secondary_force 250
+ set g_balance_mortar_secondary_health 30
+ set g_balance_mortar_secondary_lifetime 5
+ set g_balance_mortar_secondary_lifetime_bounce 0.5
+ set g_balance_mortar_secondary_lifetime_stick 0
+ set g_balance_mortar_secondary_radius 120
+ set g_balance_mortar_secondary_refire 0.7
+ set g_balance_mortar_secondary_remote_detonateprimary 0
+ set g_balance_mortar_secondary_speed 1400
+ set g_balance_mortar_secondary_speed_up 150
+ set g_balance_mortar_secondary_speed_z 0
+ set g_balance_mortar_secondary_spread 0
+ set g_balance_mortar_secondary_type 1
+ set g_balance_mortar_switchdelay_drop 0.2
+ set g_balance_mortar_switchdelay_raise 0.2
+ set g_balance_mortar_weaponreplace ""
+ set g_balance_mortar_weaponstart 0
+ set g_balance_mortar_weaponstartoverride -1
+ set g_balance_mortar_weaponthrowable 1
+ // }}}
+ // {{{ #5: Mine Layer (MUTATOR WEAPON)
+ set g_balance_minelayer_ammo 4
+ set g_balance_minelayer_animtime 0.4
+ set g_balance_minelayer_damage 40
+ set g_balance_minelayer_damageforcescale 0
+ set g_balance_minelayer_detonatedelay -1
+ set g_balance_minelayer_edgedamage 20
+ set g_balance_minelayer_force 250
+ set g_balance_minelayer_health 15
+ set g_balance_minelayer_lifetime 10
+ set g_balance_minelayer_lifetime_countdown 0.5
+ set g_balance_minelayer_limit 3
+ set g_balance_minelayer_protection 0
+ set g_balance_minelayer_proximityradius 150
+ set g_balance_minelayer_radius 175
+ set g_balance_minelayer_refire 1.5
+ set g_balance_minelayer_reload_ammo 0
+ set g_balance_minelayer_reload_time 2
+ set g_balance_minelayer_remote_damage 45
+ set g_balance_minelayer_remote_edgedamage 40
+ set g_balance_minelayer_remote_force 300
+ set g_balance_minelayer_remote_radius 200
+ set g_balance_minelayer_speed 1000
+ set g_balance_minelayer_switchdelay_drop 0.2
+ set g_balance_minelayer_switchdelay_raise 0.2
+ set g_balance_minelayer_time 0.5
+ set g_balance_minelayer_weaponreplace ""
+ set g_balance_minelayer_weaponstart 0
+ set g_balance_minelayer_weaponstartoverride -1
+ set g_balance_minelayer_weaponthrowable 1
+ // }}}
+ // {{{ #6: Electro
+ set g_balance_electro_combo_comboradius 300
+ set g_balance_electro_combo_comboradius_thruwall 200
+ set g_balance_electro_combo_damage 50
+ set g_balance_electro_combo_edgedamage 25
+ set g_balance_electro_combo_force 120
+ set g_balance_electro_combo_radius 150
+ set g_balance_electro_combo_safeammocheck 1
+ set g_balance_electro_combo_speed 2000
+ set g_balance_electro_primary_ammo 4
+ set g_balance_electro_primary_animtime 0.3
+ set g_balance_electro_primary_comboradius 300
+ set g_balance_electro_primary_damage 40
+ set g_balance_electro_primary_edgedamage 20
+ set g_balance_electro_primary_force 200
+ set g_balance_electro_primary_lifetime 5
+ set g_balance_electro_primary_midaircombo_explode 1
+ set g_balance_electro_primary_midaircombo_interval 0.1
+ set g_balance_electro_primary_midaircombo_radius 150
+ set g_balance_electro_primary_radius 100
+ set g_balance_electro_primary_refire 0.6
+ set g_balance_electro_primary_speed 2500
+ set g_balance_electro_primary_spread 0
+ set g_balance_electro_reload_ammo 0
+ set g_balance_electro_reload_time 2
+ set g_balance_electro_secondary_ammo 2
+ set g_balance_electro_secondary_animtime 0.2
+ set g_balance_electro_secondary_bouncefactor 0.3
+ set g_balance_electro_secondary_bouncestop 0.05
+ set g_balance_electro_secondary_count 3
+ set g_balance_electro_secondary_damage 30
+ set g_balance_electro_secondary_damagedbycontents 1
+ set g_balance_electro_secondary_damageforcescale 4
+ set g_balance_electro_secondary_edgedamage 15
+ set g_balance_electro_secondary_force 50
+ set g_balance_electro_secondary_health 5
+ set g_balance_electro_secondary_lifetime 4
+ set g_balance_electro_secondary_radius 150
+ set g_balance_electro_secondary_refire 0.2
+ set g_balance_electro_secondary_refire2 1.6
+ set g_balance_electro_secondary_speed 1000
+ set g_balance_electro_secondary_speed_up 200
+ set g_balance_electro_secondary_speed_z 0
+ set g_balance_electro_secondary_spread 0.04
+ set g_balance_electro_secondary_touchexplode 0
+ set g_balance_electro_switchdelay_drop 0.2
+ set g_balance_electro_switchdelay_raise 0.2
+ set g_balance_electro_weaponreplace ""
+ set g_balance_electro_weaponstart 0
+ set g_balance_electro_weaponstartoverride -1
+ set g_balance_electro_weaponthrowable 1
+ // }}}
+ // {{{ #7: Crylink
+ set g_balance_crylink_primary_ammo 3
+ set g_balance_crylink_primary_animtime 0.3
+ set g_balance_crylink_primary_bouncedamagefactor 0.5
+ set g_balance_crylink_primary_bounces 1
+ set g_balance_crylink_primary_damage 12
+ set g_balance_crylink_primary_edgedamage 6
+ set g_balance_crylink_primary_force -50
+ set g_balance_crylink_primary_joindelay 0.1
+ set g_balance_crylink_primary_joinexplode 1
+ set g_balance_crylink_primary_joinexplode_damage 0
+ set g_balance_crylink_primary_joinexplode_edgedamage 0
+ set g_balance_crylink_primary_joinexplode_force 0
+ set g_balance_crylink_primary_joinexplode_radius 0
+ set g_balance_crylink_primary_joinspread 0.2
+ set g_balance_crylink_primary_linkexplode 1
+ set g_balance_crylink_primary_middle_fadetime 5
+ set g_balance_crylink_primary_middle_lifetime 5
+ set g_balance_crylink_primary_other_fadetime 5
+ set g_balance_crylink_primary_other_lifetime 5
+ set g_balance_crylink_primary_radius 80
+ set g_balance_crylink_primary_refire 0.7
+ set g_balance_crylink_primary_shots 6
+ set g_balance_crylink_primary_speed 2000
+ set g_balance_crylink_primary_spread 0.08
+ set g_balance_crylink_reload_ammo 0
+ set g_balance_crylink_reload_time 2
+ set g_balance_crylink_secondary 1
+ set g_balance_crylink_secondary_ammo 2
+ set g_balance_crylink_secondary_animtime 0.2
+ set g_balance_crylink_secondary_bouncedamagefactor 0.5
+ set g_balance_crylink_secondary_bounces 0
+ set g_balance_crylink_secondary_damage 10
+ set g_balance_crylink_secondary_edgedamage 5
+ set g_balance_crylink_secondary_force -250
+ set g_balance_crylink_secondary_joindelay 0
+ set g_balance_crylink_secondary_joinexplode 0
+ set g_balance_crylink_secondary_joinexplode_damage 0
+ set g_balance_crylink_secondary_joinexplode_edgedamage 0
+ set g_balance_crylink_secondary_joinexplode_force 0
+ set g_balance_crylink_secondary_joinexplode_radius 0
+ set g_balance_crylink_secondary_joinspread 0
+ set g_balance_crylink_secondary_linkexplode 1
+ set g_balance_crylink_secondary_middle_fadetime 5
+ set g_balance_crylink_secondary_middle_lifetime 5
+ set g_balance_crylink_secondary_other_fadetime 5
+ set g_balance_crylink_secondary_other_lifetime 5
+ set g_balance_crylink_secondary_radius 100
+ set g_balance_crylink_secondary_refire 0.7
+ set g_balance_crylink_secondary_shots 5
+ set g_balance_crylink_secondary_speed 3000
+ set g_balance_crylink_secondary_spread 0.01
+ set g_balance_crylink_secondary_spreadtype 1
+ set g_balance_crylink_switchdelay_drop 0.2
+ set g_balance_crylink_switchdelay_raise 0.2
+ set g_balance_crylink_weaponreplace ""
+ set g_balance_crylink_weaponstart 0
+ set g_balance_crylink_weaponstartoverride -1
+ set g_balance_crylink_weaponthrowable 1
+ // }}}
+ // {{{ #8: Vortex
+ set g_balance_vortex_charge 1
+ set g_balance_vortex_charge_animlimit 0.5
+ set g_balance_vortex_charge_limit 1
+ set g_balance_vortex_charge_maxspeed 800
+ set g_balance_vortex_charge_mindmg 40
+ set g_balance_vortex_charge_minspeed 400
+ set g_balance_vortex_charge_rate 0.6
+ set g_balance_vortex_charge_rot_pause 0
+ set g_balance_vortex_charge_rot_rate 0
+ set g_balance_vortex_charge_shot_multiplier 0
+ set g_balance_vortex_charge_start 0.5
+ set g_balance_vortex_charge_velocity_rate 0
+ set g_balance_vortex_primary_ammo 6
+ set g_balance_vortex_primary_animtime 0.4
+ set g_balance_vortex_primary_damage 80
+ set g_balance_vortex_primary_damagefalloff_forcehalflife 0
+ set g_balance_vortex_primary_damagefalloff_halflife 0
+ set g_balance_vortex_primary_damagefalloff_maxdist 0
+ set g_balance_vortex_primary_damagefalloff_mindist 0
+ set g_balance_vortex_primary_force 400
+ set g_balance_vortex_primary_refire 1.5
+ set g_balance_vortex_reload_ammo 0
+ set g_balance_vortex_reload_time 2
+ set g_balance_vortex_secondary 0
+ set g_balance_vortex_secondary_ammo 2
+ set g_balance_vortex_secondary_animtime 0
+ set g_balance_vortex_secondary_chargepool 0
+ set g_balance_vortex_secondary_chargepool_pause_regen 1
+ set g_balance_vortex_secondary_chargepool_regen 0.15
+ set g_balance_vortex_secondary_damage 0
+ set g_balance_vortex_secondary_damagefalloff_forcehalflife 0
+ set g_balance_vortex_secondary_damagefalloff_halflife 0
+ set g_balance_vortex_secondary_damagefalloff_maxdist 0
+ set g_balance_vortex_secondary_damagefalloff_mindist 0
+ set g_balance_vortex_secondary_force 0
+ set g_balance_vortex_secondary_refire 0
+ set g_balance_vortex_switchdelay_drop 0.25
+ set g_balance_vortex_switchdelay_raise 0.25
+ set g_balance_vortex_weaponreplace ""
+ set g_balance_vortex_weaponstart 0
+ set g_balance_vortex_weaponstartoverride -1
+ set g_balance_vortex_weaponthrowable 1
+ // }}}
+ // {{{ #9: Hagar
+ set g_balance_hagar_primary_ammo 1
+ set g_balance_hagar_primary_damage 25
+ set g_balance_hagar_primary_damageforcescale 0
+ set g_balance_hagar_primary_edgedamage 12.5
+ set g_balance_hagar_primary_force 100
+ set g_balance_hagar_primary_health 15
+ set g_balance_hagar_primary_lifetime 5
+ set g_balance_hagar_primary_radius 65
+ set g_balance_hagar_primary_refire 0.16667
+ set g_balance_hagar_primary_speed 2200
+ set g_balance_hagar_primary_spread 0.03
+ set g_balance_hagar_reload_ammo 0
+ set g_balance_hagar_reload_time 2
+ set g_balance_hagar_secondary 1
+ set g_balance_hagar_secondary_ammo 1
+ set g_balance_hagar_secondary_damage 35
+ set g_balance_hagar_secondary_damageforcescale 0
+ set g_balance_hagar_secondary_edgedamage 17.5
+ set g_balance_hagar_secondary_force 75
+ set g_balance_hagar_secondary_health 15
+ set g_balance_hagar_secondary_lifetime_min 10
+ set g_balance_hagar_secondary_lifetime_rand 0
+ set g_balance_hagar_secondary_load 1
+ set g_balance_hagar_secondary_load_abort 1
+ set g_balance_hagar_secondary_load_animtime 0.2
+ set g_balance_hagar_secondary_load_hold 4
+ set g_balance_hagar_secondary_load_linkexplode 0
+ set g_balance_hagar_secondary_load_max 4
+ set g_balance_hagar_secondary_load_releasedeath 0
+ set g_balance_hagar_secondary_load_speed 0.5
+ set g_balance_hagar_secondary_load_spread 0.075
+ set g_balance_hagar_secondary_load_spread_bias 0.5
+ set g_balance_hagar_secondary_radius 80
+ set g_balance_hagar_secondary_refire 0.5
+ set g_balance_hagar_secondary_speed 2000
+ set g_balance_hagar_secondary_spread 0.05
+ set g_balance_hagar_switchdelay_drop 0.2
+ set g_balance_hagar_switchdelay_raise 0.2
+ set g_balance_hagar_weaponreplace ""
+ set g_balance_hagar_weaponstart 0
+ set g_balance_hagar_weaponstartoverride -1
+ set g_balance_hagar_weaponthrowable 1
+ // }}}
+ // {{{ #10: Devastator
+ set g_balance_devastator_ammo 4
+ set g_balance_devastator_animtime 0.4
+ set g_balance_devastator_damage 80
+ set g_balance_devastator_damageforcescale 1
+ set g_balance_devastator_detonatedelay 0.02
+ set g_balance_devastator_edgedamage 40
+ set g_balance_devastator_force 400
+ set g_balance_devastator_guidedelay 0.2
+ set g_balance_devastator_guidegoal 512
+ set g_balance_devastator_guiderate 90
+ set g_balance_devastator_guideratedelay 0.01
+ set g_balance_devastator_guidestop 0
+ set g_balance_devastator_health 30
+ set g_balance_devastator_lifetime 10
+ set g_balance_devastator_radius 110
+ set g_balance_devastator_refire 1.1
+ set g_balance_devastator_reload_ammo 0
+ set g_balance_devastator_reload_time 2
+ set g_balance_devastator_remote_damage 70
+ set g_balance_devastator_remote_edgedamage 35
+ set g_balance_devastator_remote_force 300
+ set g_balance_devastator_remote_jump_damage 70
+ set g_balance_devastator_remote_jump_radius 0
+ set g_balance_devastator_remote_jump_velocity_z_add 400
+ set g_balance_devastator_remote_jump_velocity_z_max 1500
+ set g_balance_devastator_remote_jump_velocity_z_min 400
+ set g_balance_devastator_remote_radius 110
+ set g_balance_devastator_speed 1300
+ set g_balance_devastator_speedaccel 1300
+ set g_balance_devastator_speedstart 1000
+ set g_balance_devastator_switchdelay_drop 0.2
+ set g_balance_devastator_switchdelay_raise 0.2
+ set g_balance_devastator_weaponreplace ""
+ set g_balance_devastator_weaponstart 0
+ set g_balance_devastator_weaponstartoverride -1
+ set g_balance_devastator_weaponthrowable 1
+ // }}}
+ // {{{ #11: Port-O-Launch
+ set g_balance_porto_primary_animtime 0.3
+ set g_balance_porto_primary_lifetime 5
+ set g_balance_porto_primary_refire 1.5
+ set g_balance_porto_primary_speed 1000
+ set g_balance_porto_secondary 1
+ set g_balance_porto_secondary_animtime 0.3
+ set g_balance_porto_secondary_lifetime 5
+ set g_balance_porto_secondary_refire 1.5
+ set g_balance_porto_secondary_speed 1000
+ set g_balance_porto_switchdelay_drop 0.2
+ set g_balance_porto_switchdelay_raise 0.2
+ set g_balance_porto_weaponreplace ""
+ set g_balance_porto_weaponstart 0
+ set g_balance_porto_weaponstartoverride -1
+ set g_balance_porto_weaponthrowable 1
+ // }}}
+ // {{{ #12: Vaporizer
+ set g_balance_vaporizer_primary_ammo 10
+ set g_balance_vaporizer_primary_animtime 0.3
+ set g_balance_vaporizer_primary_refire 1
+ set g_balance_vaporizer_reload_ammo 0
+ set g_balance_vaporizer_reload_time 0
+ set g_balance_vaporizer_secondary_ammo 0
+ set g_balance_vaporizer_secondary_animtime 0.2
+ set g_balance_vaporizer_secondary_damage 25
+ set g_balance_vaporizer_secondary_delay 0
+ set g_balance_vaporizer_secondary_edgedamage 12.5
+ set g_balance_vaporizer_secondary_force 400
+ set g_balance_vaporizer_secondary_lifetime 5
+ set g_balance_vaporizer_secondary_radius 70
+ set g_balance_vaporizer_secondary_refire 0.7
+ set g_balance_vaporizer_secondary_shotangle 0
+ set g_balance_vaporizer_secondary_speed 6000
+ set g_balance_vaporizer_secondary_spread 0
+ set g_balance_vaporizer_switchdelay_drop 0.2
+ set g_balance_vaporizer_switchdelay_raise 0.2
+ set g_balance_vaporizer_weaponreplace ""
+ set g_balance_vaporizer_weaponstart 0
+ set g_balance_vaporizer_weaponstartoverride -1
+ set g_balance_vaporizer_weaponthrowable 0
+ // }}}
+ // {{{ #13: Grappling Hook
+ set g_balance_hook_primary_ammo 5
+ set g_balance_hook_primary_animtime 0.3
+ set g_balance_hook_primary_hooked_ammo 5
+ set g_balance_hook_primary_hooked_time_free 2
+ set g_balance_hook_primary_hooked_time_max 0
+ set g_balance_hook_primary_refire 0.2
+ set g_balance_hook_secondary_animtime 0.3
+ set g_balance_hook_secondary_damage 25
+ set g_balance_hook_secondary_damageforcescale 0
+ set g_balance_hook_secondary_duration 1.5
+ set g_balance_hook_secondary_edgedamage 5
+ set g_balance_hook_secondary_force -2000
+ set g_balance_hook_secondary_gravity 5
+ set g_balance_hook_secondary_health 15
+ set g_balance_hook_secondary_lifetime 5
+ set g_balance_hook_secondary_power 3
+ set g_balance_hook_secondary_radius 500
+ set g_balance_hook_secondary_refire 3
+ set g_balance_hook_secondary_speed 0
+ set g_balance_hook_switchdelay_drop 0.2
+ set g_balance_hook_switchdelay_raise 0.2
+ set g_balance_hook_weaponreplace ""
+ set g_balance_hook_weaponstart 0
+ set g_balance_hook_weaponstartoverride -1
+ set g_balance_hook_weaponthrowable 1
+ // }}}
+ // {{{ #14: Heavy Laser Assault Cannon (MUTATOR WEAPON)
+ set g_balance_hlac_primary_ammo 1
+ set g_balance_hlac_primary_animtime 0.4
+ set g_balance_hlac_primary_damage 18
+ set g_balance_hlac_primary_edgedamage 9
+ set g_balance_hlac_primary_force 90
+ set g_balance_hlac_primary_lifetime 5
+ set g_balance_hlac_primary_radius 70
+ set g_balance_hlac_primary_refire 0.15
+ set g_balance_hlac_primary_speed 9000
+ set g_balance_hlac_primary_spread_add 0.0045
+ set g_balance_hlac_primary_spread_crouchmod 0.25
+ set g_balance_hlac_primary_spread_max 0.25
+ set g_balance_hlac_primary_spread_min 0.01
+ set g_balance_hlac_reload_ammo 0
+ set g_balance_hlac_reload_time 2
+ set g_balance_hlac_secondary 1
+ set g_balance_hlac_secondary_ammo 10
+ set g_balance_hlac_secondary_animtime 0.3
+ set g_balance_hlac_secondary_damage 15
+ set g_balance_hlac_secondary_edgedamage 7.5
+ set g_balance_hlac_secondary_force 90
+ set g_balance_hlac_secondary_lifetime 5
+ set g_balance_hlac_secondary_radius 70
+ set g_balance_hlac_secondary_refire 1
+ set g_balance_hlac_secondary_shots 6
+ set g_balance_hlac_secondary_speed 9000
+ set g_balance_hlac_secondary_spread 0.15
+ set g_balance_hlac_secondary_spread_crouchmod 0.5
+ set g_balance_hlac_switchdelay_drop 0.2
+ set g_balance_hlac_switchdelay_raise 0.2
+ set g_balance_hlac_weaponreplace ""
+ set g_balance_hlac_weaponstart 0
+ set g_balance_hlac_weaponstartoverride -1
+ set g_balance_hlac_weaponthrowable 1
+ // }}}
+ // {{{ #15: @!#%'n Tuba
+ set g_balance_tuba_animtime 0.05
+ set g_balance_tuba_attenuation 0.5
+ set g_balance_tuba_damage 5
+ set g_balance_tuba_edgedamage 0
+ set g_balance_tuba_fadetime 0.25
+ set g_balance_tuba_force 40
+ set g_balance_tuba_pitchstep 6
+ set g_balance_tuba_radius 200
+ set g_balance_tuba_refire 0.05
+ set g_balance_tuba_switchdelay_drop 0.2
+ set g_balance_tuba_switchdelay_raise 0.2
+ set g_balance_tuba_volume 1
+ set g_balance_tuba_weaponreplace ""
+ set g_balance_tuba_weaponstart 0
+ set g_balance_tuba_weaponstartoverride -1
+ set g_balance_tuba_weaponthrowable 1
+ // }}}
+ // {{{ #16: Rifle (MUTATOR WEAPON)
+ set g_balance_rifle_bursttime 0
+ set g_balance_rifle_primary_ammo 10
+ set g_balance_rifle_primary_animtime 0.4
+ set g_balance_rifle_primary_bullethail 0
+ set g_balance_rifle_primary_burstcost 0
+ set g_balance_rifle_primary_damage 80
+ set g_balance_rifle_primary_force 100
+ set g_balance_rifle_primary_refire 1.2
+ set g_balance_rifle_primary_shots 1
+ set g_balance_rifle_primary_solidpenetration 62.2
+ set g_balance_rifle_primary_spread 0
+ set g_balance_rifle_primary_tracer 1
+ set g_balance_rifle_reload_ammo 80
+ set g_balance_rifle_reload_time 2
+ set g_balance_rifle_secondary 1
+ set g_balance_rifle_secondary_ammo 10
+ set g_balance_rifle_secondary_animtime 0.3
+ set g_balance_rifle_secondary_bullethail 0
+ set g_balance_rifle_secondary_burstcost 0
+ set g_balance_rifle_secondary_damage 20
+ set g_balance_rifle_secondary_force 50
+ set g_balance_rifle_secondary_refire 0.9
+ set g_balance_rifle_secondary_reload 0
+ set g_balance_rifle_secondary_shots 4
+ set g_balance_rifle_secondary_solidpenetration 15.5
+ set g_balance_rifle_secondary_spread 0.04
+ set g_balance_rifle_secondary_tracer 0
+ set g_balance_rifle_switchdelay_drop 0.2
+ set g_balance_rifle_switchdelay_raise 0.2
+ set g_balance_rifle_weaponreplace ""
+ set g_balance_rifle_weaponstart 0
+ set g_balance_rifle_weaponstartoverride -1
+ set g_balance_rifle_weaponthrowable 1
+ // }}}
+ // {{{ #17: Fireball
+ set g_balance_fireball_primary_animtime 0.4
+ set g_balance_fireball_primary_bfgdamage 100
+ set g_balance_fireball_primary_bfgforce 0
+ set g_balance_fireball_primary_bfgradius 1000
+ set g_balance_fireball_primary_damage 200
+ set g_balance_fireball_primary_damageforcescale 0
+ set g_balance_fireball_primary_edgedamage 50
+ set g_balance_fireball_primary_force 600
+ set g_balance_fireball_primary_health 0
+ set g_balance_fireball_primary_laserburntime 0.5
+ set g_balance_fireball_primary_laserdamage 80
+ set g_balance_fireball_primary_laseredgedamage 20
+ set g_balance_fireball_primary_laserradius 256
+ set g_balance_fireball_primary_lifetime 15
+ set g_balance_fireball_primary_radius 200
+ set g_balance_fireball_primary_refire 2
+ set g_balance_fireball_primary_refire2 0
+ set g_balance_fireball_primary_speed 1200
+ set g_balance_fireball_primary_spread 0
+ set g_balance_fireball_secondary_animtime 0.3
+ set g_balance_fireball_secondary_damage 40
+ set g_balance_fireball_secondary_damageforcescale 4
+ set g_balance_fireball_secondary_damagetime 5
+ set g_balance_fireball_secondary_laserburntime 0.5
+ set g_balance_fireball_secondary_laserdamage 50
+ set g_balance_fireball_secondary_laseredgedamage 20
+ set g_balance_fireball_secondary_laserradius 110
+ set g_balance_fireball_secondary_lifetime 7
+ set g_balance_fireball_secondary_refire 1.5
+ set g_balance_fireball_secondary_speed 900
+ set g_balance_fireball_secondary_speed_up 100
+ set g_balance_fireball_secondary_speed_z 0
+ set g_balance_fireball_secondary_spread 0
+ set g_balance_fireball_switchdelay_drop 0.2
+ set g_balance_fireball_switchdelay_raise 0.2
+ set g_balance_fireball_weaponreplace ""
+ set g_balance_fireball_weaponstart 0
+ set g_balance_fireball_weaponstartoverride -1
+ set g_balance_fireball_weaponthrowable 0
+ // }}}
+ // {{{ #18: T.A.G. Seeker (MUTATOR WEAPON)
+ set g_balance_seeker_flac_ammo 1
+ set g_balance_seeker_flac_animtime 0.1
+ set g_balance_seeker_flac_damage 15
+ set g_balance_seeker_flac_edgedamage 10
+ set g_balance_seeker_flac_force 50
+ set g_balance_seeker_flac_lifetime 0.1
+ set g_balance_seeker_flac_lifetime_rand 0.05
+ set g_balance_seeker_flac_radius 100
+ set g_balance_seeker_flac_refire 0.1
+ set g_balance_seeker_flac_speed 3000
+ set g_balance_seeker_flac_speed_up 1000
+ set g_balance_seeker_flac_speed_z 0
+ set g_balance_seeker_flac_spread 0.4
+ set g_balance_seeker_missile_accel 1400
+ set g_balance_seeker_missile_ammo 2
+ set g_balance_seeker_missile_animtime 0.2
+ set g_balance_seeker_missile_count 3
+ set g_balance_seeker_missile_damage 30
+ set g_balance_seeker_missile_damageforcescale 4
+ set g_balance_seeker_missile_decel 1400
+ set g_balance_seeker_missile_delay 0.25
+ set g_balance_seeker_missile_edgedamage 10
+ set g_balance_seeker_missile_force 150
+ set g_balance_seeker_missile_health 5
+ set g_balance_seeker_missile_lifetime 15
+ set g_balance_seeker_missile_proxy 0
+ set g_balance_seeker_missile_proxy_delay 0.2
+ set g_balance_seeker_missile_proxy_maxrange 45
+ set g_balance_seeker_missile_radius 80
+ set g_balance_seeker_missile_refire 0.5
+ set g_balance_seeker_missile_smart 1
+ set g_balance_seeker_missile_smart_mindist 800
+ set g_balance_seeker_missile_smart_trace_max 2500
+ set g_balance_seeker_missile_smart_trace_min 1000
+ set g_balance_seeker_missile_speed 700
+ set g_balance_seeker_missile_speed_max 1300
+ set g_balance_seeker_missile_speed_up 300
+ set g_balance_seeker_missile_speed_z 0
+ set g_balance_seeker_missile_spread 0
+ set g_balance_seeker_missile_turnrate 0.65
+ set g_balance_seeker_reload_ammo 0
+ set g_balance_seeker_reload_time 2
+ set g_balance_seeker_switchdelay_drop 0.2
+ set g_balance_seeker_switchdelay_raise 0.2
+ set g_balance_seeker_tag_ammo 1
+ set g_balance_seeker_tag_animtime 0.2
+ set g_balance_seeker_tag_damageforcescale 4
+ set g_balance_seeker_tag_health 5
+ set g_balance_seeker_tag_lifetime 15
+ set g_balance_seeker_tag_refire 0.75
+ set g_balance_seeker_tag_speed 5000
+ set g_balance_seeker_tag_spread 0
+ set g_balance_seeker_tag_tracker_lifetime 10
+ set g_balance_seeker_type 0
+ set g_balance_seeker_weaponreplace ""
+ set g_balance_seeker_weaponstart 0
+ set g_balance_seeker_weaponstartoverride -1
+ set g_balance_seeker_weaponthrowable 1
+ // }}}
+ // {{{ #19: Shockwave (MUTATOR WEAPON)
+ set g_balance_shockwave_blast_animtime 0.3
+ set g_balance_shockwave_blast_damage 20
+ set g_balance_shockwave_blast_distance 1000
+ set g_balance_shockwave_blast_edgedamage 0
+ set g_balance_shockwave_blast_force 200
+ set g_balance_shockwave_blast_force_forwardbias 50
+ set g_balance_shockwave_blast_force_zscale 2
+ set g_balance_shockwave_blast_jump_damage 20
+ set g_balance_shockwave_blast_jump_edgedamage 0
+ set g_balance_shockwave_blast_jump_force 300
+ set g_balance_shockwave_blast_jump_force_velocitybias 0
+ set g_balance_shockwave_blast_jump_force_zscale 1.25
+ set g_balance_shockwave_blast_jump_multiplier_accuracy 0.5
+ set g_balance_shockwave_blast_jump_multiplier_distance 0.5
+ set g_balance_shockwave_blast_jump_multiplier_min 0
+ set g_balance_shockwave_blast_jump_radius 150
+ set g_balance_shockwave_blast_multiplier_accuracy 0.5
+ set g_balance_shockwave_blast_multiplier_distance 0.5
+ set g_balance_shockwave_blast_multiplier_min 0
+ set g_balance_shockwave_blast_refire 0.75
+ set g_balance_shockwave_blast_splash_damage 15
+ set g_balance_shockwave_blast_splash_edgedamage 0
+ set g_balance_shockwave_blast_splash_force 100
+ set g_balance_shockwave_blast_splash_force_forwardbias 50
+ set g_balance_shockwave_blast_splash_multiplier_accuracy 0.5
+ set g_balance_shockwave_blast_splash_multiplier_distance 0.5
+ set g_balance_shockwave_blast_splash_multiplier_min 0
+ set g_balance_shockwave_blast_splash_radius 70
+ set g_balance_shockwave_blast_spread_max 120
+ set g_balance_shockwave_blast_spread_min 25
+ set g_balance_shockwave_melee_animtime 1.3
+ set g_balance_shockwave_melee_damage 80
+ set g_balance_shockwave_melee_delay 0.25
+ set g_balance_shockwave_melee_force 200
+ set g_balance_shockwave_melee_multihit 1
+ set g_balance_shockwave_melee_no_doubleslap 1
+ set g_balance_shockwave_melee_nonplayerdamage 40
+ set g_balance_shockwave_melee_range 120
+ set g_balance_shockwave_melee_refire 1.25
+ set g_balance_shockwave_melee_swing_side 120
+ set g_balance_shockwave_melee_swing_up 30
+ set g_balance_shockwave_melee_time 0.15
+ set g_balance_shockwave_melee_traces 10
+ set g_balance_shockwave_switchdelay_drop 0.2
+ set g_balance_shockwave_switchdelay_raise 0.2
+ set g_balance_shockwave_weaponreplace ""
+ set g_balance_shockwave_weaponstart 0
+ set g_balance_shockwave_weaponstartoverride -1
+ set g_balance_shockwave_weaponthrowable 0
+ // }}}
+ // {{{ #20: Arc
+ set g_balance_arc_beam_ammo 4
+ set g_balance_arc_beam_animtime 0.2
+ set g_balance_arc_beam_botaimlifetime 0
+ set g_balance_arc_beam_botaimspeed 0
+ set g_balance_arc_beam_damage 115
+ set g_balance_arc_beam_degreespersegment 1
+ set g_balance_arc_beam_distancepersegment 0
+ set g_balance_arc_beam_falloff_halflifedist 0
+ set g_balance_arc_beam_falloff_maxdist 0
+ set g_balance_arc_beam_falloff_mindist 0
+ set g_balance_arc_beam_force 900
+ set g_balance_arc_beam_healing_amax 100
+ set g_balance_arc_beam_healing_aps 50
+ set g_balance_arc_beam_healing_hmax 150
+ set g_balance_arc_beam_healing_hps 50
+ set g_balance_arc_cooldown 2.5
+ set g_balance_arc_overheat_max 5
+ set g_balance_arc_overheat_min 3
+ set g_balance_arc_beam_heat 1
+ set g_balance_arc_burst_heat 4
+ set g_balance_arc_beam_maxangle 10
+ set g_balance_arc_beam_nonplayerdamage 80
+ set g_balance_arc_beam_range 1000
+ set g_balance_arc_beam_refire 0.5
+ set g_balance_arc_beam_returnspeed 8
+ set g_balance_arc_beam_tightness 0.5
+ set g_balance_arc_burst_ammo 15
+ set g_balance_arc_burst_damage 250
+ set g_balance_arc_burst_healing_aps 100
+ set g_balance_arc_burst_healing_hps 100
+ set g_balance_arc_switchdelay_drop 0.3
+ set g_balance_arc_switchdelay_raise 0.3
+ set g_balance_arc_weaponreplace ""
+ set g_balance_arc_weaponstart 0
+ set g_balance_arc_weaponstartoverride -1
+ set g_balance_arc_weaponthrowable 1
+ // }}}
++// {{{ #21: Heavy Machine Gun
++set g_balance_hmg_ammo 0
++set g_balance_hmg_damage 0
++set g_balance_hmg_force 0
++set g_balance_hmg_refire 0
++set g_balance_hmg_reload_ammo 120
++set g_balance_hmg_reload_time 1
++set g_balance_hmg_solidpenetration 32
++set g_balance_hmg_spread_add 0.01
++set g_balance_hmg_spread_max 0.05
++set g_balance_hmg_spread_min 0.02
++set g_balance_hmg_switchdelay_drop 0.2
++set g_balance_hmg_switchdelay_raise 0.2
++set g_balance_hmg_weaponreplace ""
++set g_balance_hmg_weaponstart 0
++set g_balance_hmg_weaponstartoverride 0
++set g_balance_hmg_weaponthrowable 0
++// }}}
++// {{{ #22: Rocket Propelled Chainsaw
++set g_balance_rpc_ammo 10
++set g_balance_rpc_animtime 1
++set g_balance_rpc_damage 150
++set g_balance_rpc_damage2 500
++set g_balance_rpc_damageforcescale 2
++set g_balance_rpc_edgedamage 50
++set g_balance_rpc_force 400
++set g_balance_rpc_health 25
++set g_balance_rpc_lifetime 30
++set g_balance_rpc_radius 300
++set g_balance_rpc_refire 1
++set g_balance_rpc_reload_ammo 10
++set g_balance_rpc_reload_time 1
++set g_balance_rpc_speed 1250
++set g_balance_rpc_speedaccel 5000
++set g_balance_rpc_switchdelay_drop 0.2
++set g_balance_rpc_switchdelay_raise 0.2
++set g_balance_rpc_weaponreplace ""
++set g_balance_rpc_weaponstart 0
++set g_balance_rpc_weaponstartoverride 0
++set g_balance_rpc_weaponthrowable 0
++// }}}
--- /dev/null
+ // {{{ #1: Blaster
+ set g_balance_blaster_primary_animtime 0.2
+ set g_balance_blaster_primary_damage 25
+ set g_balance_blaster_primary_delay 0
+ set g_balance_blaster_primary_edgedamage 12.5
+ set g_balance_blaster_primary_force 300
+ set g_balance_blaster_primary_force_zscale 1.25
+ set g_balance_blaster_primary_lifetime 5
+ set g_balance_blaster_primary_radius 60
+ set g_balance_blaster_primary_refire 0.7
+ set g_balance_blaster_primary_shotangle 0
+ set g_balance_blaster_primary_speed 6000
+ set g_balance_blaster_primary_spread 0
+ set g_balance_blaster_secondary 0
+ set g_balance_blaster_secondary_animtime 0.2
+ set g_balance_blaster_secondary_damage 25
+ set g_balance_blaster_secondary_delay 0
+ set g_balance_blaster_secondary_edgedamage 12.5
+ set g_balance_blaster_secondary_force 300
+ set g_balance_blaster_secondary_force_zscale 1.2
+ set g_balance_blaster_secondary_lifetime 5
+ set g_balance_blaster_secondary_radius 70
+ set g_balance_blaster_secondary_refire 0.7
+ set g_balance_blaster_secondary_shotangle 0
+ set g_balance_blaster_secondary_speed 6000
+ set g_balance_blaster_secondary_spread 0
+ set g_balance_blaster_switchdelay_drop 0.2
+ set g_balance_blaster_switchdelay_raise 0.2
+ set g_balance_blaster_weaponreplace ""
+ set g_balance_blaster_weaponstart 1
+ set g_balance_blaster_weaponstartoverride -1
+ set g_balance_blaster_weaponthrowable 0
+ // }}}
+ // {{{ #2: Shotgun
+ set g_balance_shotgun_primary_ammo 1
+ set g_balance_shotgun_primary_animtime 0.2
+ set g_balance_shotgun_primary_bullets 14
+ set g_balance_shotgun_primary_damage 3.5
+ set g_balance_shotgun_primary_force 15
+ set g_balance_shotgun_primary_refire 0.75
+ set g_balance_shotgun_primary_solidpenetration 3.8
+ set g_balance_shotgun_primary_spread 0.11
+ set g_balance_shotgun_reload_ammo 0
+ set g_balance_shotgun_reload_time 2
+ set g_balance_shotgun_secondary 1
+ set g_balance_shotgun_secondary_animtime 1
+ set g_balance_shotgun_secondary_damage 70
+ set g_balance_shotgun_secondary_force 200
+ set g_balance_shotgun_secondary_melee_delay 0.25
+ set g_balance_shotgun_secondary_melee_multihit 1
+ set g_balance_shotgun_secondary_melee_no_doubleslap 1
+ set g_balance_shotgun_secondary_melee_nonplayerdamage 40
+ set g_balance_shotgun_secondary_melee_range 120
+ set g_balance_shotgun_secondary_melee_swing_side 120
+ set g_balance_shotgun_secondary_melee_swing_up 30
+ set g_balance_shotgun_secondary_melee_time 0.15
+ set g_balance_shotgun_secondary_melee_traces 10
+ set g_balance_shotgun_secondary_refire 1.25
+ set g_balance_shotgun_secondary_alt_animtime 0.2
+ set g_balance_shotgun_secondary_alt_refire 1.2
+ set g_balance_shotgun_switchdelay_drop 0.2
+ set g_balance_shotgun_switchdelay_raise 0.2
+ set g_balance_shotgun_weaponreplace ""
+ set g_balance_shotgun_weaponstart 1
+ set g_balance_shotgun_weaponstartoverride -1
+ set g_balance_shotgun_weaponthrowable 1
+ // }}}
+ // {{{ #3: Machine Gun
+ set g_balance_machinegun_burst 3
+ set g_balance_machinegun_burst_ammo 3
+ set g_balance_machinegun_burst_animtime 0.3
+ set g_balance_machinegun_burst_refire 0.06
+ set g_balance_machinegun_burst_refire2 0.45
+ set g_balance_machinegun_burst_speed 0
+ set g_balance_machinegun_first 1
+ set g_balance_machinegun_first_ammo 1
+ set g_balance_machinegun_first_damage 14
+ set g_balance_machinegun_first_force 5
+ set g_balance_machinegun_first_refire 0.125
+ set g_balance_machinegun_first_spread 0.03
+ set g_balance_machinegun_mode 1
+ set g_balance_machinegun_reload_ammo 60
+ set g_balance_machinegun_reload_time 2
+ set g_balance_machinegun_solidpenetration 13.1
+ set g_balance_machinegun_spread_add 0.012
+ set g_balance_machinegun_spread_max 0.05
+ set g_balance_machinegun_spread_min 0.02
+ set g_balance_machinegun_sustained_ammo 1
+ set g_balance_machinegun_sustained_damage 10
+ set g_balance_machinegun_sustained_force 5
+ set g_balance_machinegun_sustained_refire 0.1
+ set g_balance_machinegun_sustained_spread 0.03
+ set g_balance_machinegun_switchdelay_drop 0.2
+ set g_balance_machinegun_switchdelay_raise 0.2
+ set g_balance_machinegun_weaponreplace ""
+ set g_balance_machinegun_weaponstart 0
+ set g_balance_machinegun_weaponstartoverride -1
+ set g_balance_machinegun_weaponthrowable 1
+ // }}}
+ // {{{ #4: Mortar
+ set g_balance_mortar_bouncefactor 0.5
+ set g_balance_mortar_bouncestop 0.075
+ set g_balance_mortar_primary_ammo 2
+ set g_balance_mortar_primary_animtime 0.3
+ set g_balance_mortar_primary_damage 55
+ set g_balance_mortar_primary_damageforcescale 0
+ set g_balance_mortar_primary_edgedamage 25
+ set g_balance_mortar_primary_force 250
+ set g_balance_mortar_primary_health 15
+ set g_balance_mortar_primary_lifetime 5
+ set g_balance_mortar_primary_lifetime_stick 0
+ set g_balance_mortar_primary_radius 120
+ set g_balance_mortar_primary_refire 0.8
+ set g_balance_mortar_primary_remote_minbouncecnt 0
+ set g_balance_mortar_primary_speed 1900
+ set g_balance_mortar_primary_speed_up 225
+ set g_balance_mortar_primary_speed_z 0
+ set g_balance_mortar_primary_spread 0
+ set g_balance_mortar_primary_type 0
+ set g_balance_mortar_reload_ammo 0
+ set g_balance_mortar_reload_time 2
+ set g_balance_mortar_secondary_ammo 2
+ set g_balance_mortar_secondary_animtime 0.3
+ set g_balance_mortar_secondary_damage 55
+ set g_balance_mortar_secondary_damageforcescale 4
+ set g_balance_mortar_secondary_edgedamage 30
+ set g_balance_mortar_secondary_force 250
+ set g_balance_mortar_secondary_health 30
+ set g_balance_mortar_secondary_lifetime 5
+ set g_balance_mortar_secondary_lifetime_bounce 0.5
+ set g_balance_mortar_secondary_lifetime_stick 0
+ set g_balance_mortar_secondary_radius 120
+ set g_balance_mortar_secondary_refire 0.7
+ set g_balance_mortar_secondary_remote_detonateprimary 0
+ set g_balance_mortar_secondary_speed 1400
+ set g_balance_mortar_secondary_speed_up 150
+ set g_balance_mortar_secondary_speed_z 0
+ set g_balance_mortar_secondary_spread 0
+ set g_balance_mortar_secondary_type 1
+ set g_balance_mortar_switchdelay_drop 0.2
+ set g_balance_mortar_switchdelay_raise 0.2
+ set g_balance_mortar_weaponreplace ""
+ set g_balance_mortar_weaponstart 0
+ set g_balance_mortar_weaponstartoverride -1
+ set g_balance_mortar_weaponthrowable 1
+ // }}}
+ // {{{ #5: Mine Layer (MUTATOR WEAPON)
+ set g_balance_minelayer_ammo 4
+ set g_balance_minelayer_animtime 0.4
+ set g_balance_minelayer_damage 40
+ set g_balance_minelayer_damageforcescale 0
+ set g_balance_minelayer_detonatedelay -1
+ set g_balance_minelayer_edgedamage 20
+ set g_balance_minelayer_force 250
+ set g_balance_minelayer_health 15
+ set g_balance_minelayer_lifetime 10
+ set g_balance_minelayer_lifetime_countdown 0.5
+ set g_balance_minelayer_limit 3
+ set g_balance_minelayer_protection 0
+ set g_balance_minelayer_proximityradius 150
+ set g_balance_minelayer_radius 175
+ set g_balance_minelayer_refire 1.5
+ set g_balance_minelayer_reload_ammo 0
+ set g_balance_minelayer_reload_time 2
+ set g_balance_minelayer_remote_damage 45
+ set g_balance_minelayer_remote_edgedamage 40
+ set g_balance_minelayer_remote_force 300
+ set g_balance_minelayer_remote_radius 200
+ set g_balance_minelayer_speed 1000
+ set g_balance_minelayer_switchdelay_drop 0.2
+ set g_balance_minelayer_switchdelay_raise 0.2
+ set g_balance_minelayer_time 0.5
+ set g_balance_minelayer_weaponreplace ""
+ set g_balance_minelayer_weaponstart 0
+ set g_balance_minelayer_weaponstartoverride -1
+ set g_balance_minelayer_weaponthrowable 1
+ // }}}
+ // {{{ #6: Electro
+ set g_balance_electro_combo_comboradius 300
+ set g_balance_electro_combo_comboradius_thruwall 200
+ set g_balance_electro_combo_damage 50
+ set g_balance_electro_combo_edgedamage 25
+ set g_balance_electro_combo_force 120
+ set g_balance_electro_combo_radius 150
+ set g_balance_electro_combo_safeammocheck 1
+ set g_balance_electro_combo_speed 2000
+ set g_balance_electro_primary_ammo 4
+ set g_balance_electro_primary_animtime 0.3
+ set g_balance_electro_primary_comboradius 300
+ set g_balance_electro_primary_damage 40
+ set g_balance_electro_primary_edgedamage 20
+ set g_balance_electro_primary_force 200
+ set g_balance_electro_primary_lifetime 5
+ set g_balance_electro_primary_midaircombo_explode 1
+ set g_balance_electro_primary_midaircombo_interval 0.1
+ set g_balance_electro_primary_midaircombo_radius 150
+ set g_balance_electro_primary_radius 100
+ set g_balance_electro_primary_refire 0.6
+ set g_balance_electro_primary_speed 2500
+ set g_balance_electro_primary_spread 0
+ set g_balance_electro_reload_ammo 0
+ set g_balance_electro_reload_time 2
+ set g_balance_electro_secondary_ammo 2
+ set g_balance_electro_secondary_animtime 0.2
+ set g_balance_electro_secondary_bouncefactor 0.3
+ set g_balance_electro_secondary_bouncestop 0.05
+ set g_balance_electro_secondary_count 3
+ set g_balance_electro_secondary_damage 30
+ set g_balance_electro_secondary_damagedbycontents 1
+ set g_balance_electro_secondary_damageforcescale 4
+ set g_balance_electro_secondary_edgedamage 15
+ set g_balance_electro_secondary_force 50
+ set g_balance_electro_secondary_health 5
+ set g_balance_electro_secondary_lifetime 4
+ set g_balance_electro_secondary_radius 150
+ set g_balance_electro_secondary_refire 0.2
+ set g_balance_electro_secondary_refire2 1.6
+ set g_balance_electro_secondary_speed 1000
+ set g_balance_electro_secondary_speed_up 200
+ set g_balance_electro_secondary_speed_z 0
+ set g_balance_electro_secondary_spread 0.04
+ set g_balance_electro_secondary_touchexplode 0
+ set g_balance_electro_switchdelay_drop 0.2
+ set g_balance_electro_switchdelay_raise 0.2
+ set g_balance_electro_weaponreplace ""
+ set g_balance_electro_weaponstart 0
+ set g_balance_electro_weaponstartoverride -1
+ set g_balance_electro_weaponthrowable 1
+ // }}}
+ // {{{ #7: Crylink
+ set g_balance_crylink_primary_ammo 3
+ set g_balance_crylink_primary_animtime 0.3
+ set g_balance_crylink_primary_bouncedamagefactor 0.5
+ set g_balance_crylink_primary_bounces 1
+ set g_balance_crylink_primary_damage 12
+ set g_balance_crylink_primary_edgedamage 6
+ set g_balance_crylink_primary_force -50
+ set g_balance_crylink_primary_joindelay 0.1
+ set g_balance_crylink_primary_joinexplode 1
+ set g_balance_crylink_primary_joinexplode_damage 0
+ set g_balance_crylink_primary_joinexplode_edgedamage 0
+ set g_balance_crylink_primary_joinexplode_force 0
+ set g_balance_crylink_primary_joinexplode_radius 0
+ set g_balance_crylink_primary_joinspread 0.2
+ set g_balance_crylink_primary_linkexplode 1
+ set g_balance_crylink_primary_middle_fadetime 5
+ set g_balance_crylink_primary_middle_lifetime 5
+ set g_balance_crylink_primary_other_fadetime 5
+ set g_balance_crylink_primary_other_lifetime 5
+ set g_balance_crylink_primary_radius 80
+ set g_balance_crylink_primary_refire 0.7
+ set g_balance_crylink_primary_shots 6
+ set g_balance_crylink_primary_speed 2000
+ set g_balance_crylink_primary_spread 0.08
+ set g_balance_crylink_reload_ammo 0
+ set g_balance_crylink_reload_time 2
+ set g_balance_crylink_secondary 1
+ set g_balance_crylink_secondary_ammo 2
+ set g_balance_crylink_secondary_animtime 0.2
+ set g_balance_crylink_secondary_bouncedamagefactor 0.5
+ set g_balance_crylink_secondary_bounces 0
+ set g_balance_crylink_secondary_damage 10
+ set g_balance_crylink_secondary_edgedamage 5
+ set g_balance_crylink_secondary_force -250
+ set g_balance_crylink_secondary_joindelay 0
+ set g_balance_crylink_secondary_joinexplode 0
+ set g_balance_crylink_secondary_joinexplode_damage 0
+ set g_balance_crylink_secondary_joinexplode_edgedamage 0
+ set g_balance_crylink_secondary_joinexplode_force 0
+ set g_balance_crylink_secondary_joinexplode_radius 0
+ set g_balance_crylink_secondary_joinspread 0
+ set g_balance_crylink_secondary_linkexplode 1
+ set g_balance_crylink_secondary_middle_fadetime 5
+ set g_balance_crylink_secondary_middle_lifetime 5
+ set g_balance_crylink_secondary_other_fadetime 5
+ set g_balance_crylink_secondary_other_lifetime 5
+ set g_balance_crylink_secondary_radius 100
+ set g_balance_crylink_secondary_refire 0.7
+ set g_balance_crylink_secondary_shots 5
+ set g_balance_crylink_secondary_speed 3000
+ set g_balance_crylink_secondary_spread 0.01
+ set g_balance_crylink_secondary_spreadtype 1
+ set g_balance_crylink_switchdelay_drop 0.2
+ set g_balance_crylink_switchdelay_raise 0.2
+ set g_balance_crylink_weaponreplace ""
+ set g_balance_crylink_weaponstart 0
+ set g_balance_crylink_weaponstartoverride -1
+ set g_balance_crylink_weaponthrowable 1
+ // }}}
+ // {{{ #8: Vortex
+ set g_balance_vortex_charge 1
+ set g_balance_vortex_charge_animlimit 0.5
+ set g_balance_vortex_charge_limit 1
+ set g_balance_vortex_charge_maxspeed 800
+ set g_balance_vortex_charge_mindmg 40
+ set g_balance_vortex_charge_minspeed 400
+ set g_balance_vortex_charge_rate 0.6
+ set g_balance_vortex_charge_rot_pause 0
+ set g_balance_vortex_charge_rot_rate 0
+ set g_balance_vortex_charge_shot_multiplier 0
+ set g_balance_vortex_charge_start 0.5
+ set g_balance_vortex_charge_velocity_rate 0
+ set g_balance_vortex_primary_ammo 6
+ set g_balance_vortex_primary_animtime 0.4
+ set g_balance_vortex_primary_damage 80
+ set g_balance_vortex_primary_damagefalloff_forcehalflife 0
+ set g_balance_vortex_primary_damagefalloff_halflife 0
+ set g_balance_vortex_primary_damagefalloff_maxdist 0
+ set g_balance_vortex_primary_damagefalloff_mindist 0
+ set g_balance_vortex_primary_force 400
+ set g_balance_vortex_primary_refire 1.5
+ set g_balance_vortex_reload_ammo 0
+ set g_balance_vortex_reload_time 2
+ set g_balance_vortex_secondary 0
+ set g_balance_vortex_secondary_ammo 2
+ set g_balance_vortex_secondary_animtime 0
+ set g_balance_vortex_secondary_chargepool 0
+ set g_balance_vortex_secondary_chargepool_pause_regen 1
+ set g_balance_vortex_secondary_chargepool_regen 0.15
+ set g_balance_vortex_secondary_damage 0
+ set g_balance_vortex_secondary_damagefalloff_forcehalflife 0
+ set g_balance_vortex_secondary_damagefalloff_halflife 0
+ set g_balance_vortex_secondary_damagefalloff_maxdist 0
+ set g_balance_vortex_secondary_damagefalloff_mindist 0
+ set g_balance_vortex_secondary_force 0
+ set g_balance_vortex_secondary_refire 0
+ set g_balance_vortex_switchdelay_drop 0.25
+ set g_balance_vortex_switchdelay_raise 0.25
+ set g_balance_vortex_weaponreplace ""
+ set g_balance_vortex_weaponstart 0
+ set g_balance_vortex_weaponstartoverride -1
+ set g_balance_vortex_weaponthrowable 1
+ // }}}
+ // {{{ #9: Hagar
+ set g_balance_hagar_primary_ammo 1
+ set g_balance_hagar_primary_damage 25
+ set g_balance_hagar_primary_damageforcescale 0
+ set g_balance_hagar_primary_edgedamage 12.5
+ set g_balance_hagar_primary_force 100
+ set g_balance_hagar_primary_health 15
+ set g_balance_hagar_primary_lifetime 5
+ set g_balance_hagar_primary_radius 65
+ set g_balance_hagar_primary_refire 0.16667
+ set g_balance_hagar_primary_speed 2200
+ set g_balance_hagar_primary_spread 0.03
+ set g_balance_hagar_reload_ammo 0
+ set g_balance_hagar_reload_time 2
+ set g_balance_hagar_secondary 1
+ set g_balance_hagar_secondary_ammo 1
+ set g_balance_hagar_secondary_damage 35
+ set g_balance_hagar_secondary_damageforcescale 0
+ set g_balance_hagar_secondary_edgedamage 17.5
+ set g_balance_hagar_secondary_force 75
+ set g_balance_hagar_secondary_health 15
+ set g_balance_hagar_secondary_lifetime_min 10
+ set g_balance_hagar_secondary_lifetime_rand 0
+ set g_balance_hagar_secondary_load 1
+ set g_balance_hagar_secondary_load_abort 1
+ set g_balance_hagar_secondary_load_animtime 0.2
+ set g_balance_hagar_secondary_load_hold 4
+ set g_balance_hagar_secondary_load_linkexplode 0
+ set g_balance_hagar_secondary_load_max 4
+ set g_balance_hagar_secondary_load_releasedeath 0
+ set g_balance_hagar_secondary_load_speed 0.5
+ set g_balance_hagar_secondary_load_spread 0.075
+ set g_balance_hagar_secondary_load_spread_bias 0.5
+ set g_balance_hagar_secondary_radius 80
+ set g_balance_hagar_secondary_refire 0.5
+ set g_balance_hagar_secondary_speed 2000
+ set g_balance_hagar_secondary_spread 0.05
+ set g_balance_hagar_switchdelay_drop 0.2
+ set g_balance_hagar_switchdelay_raise 0.2
+ set g_balance_hagar_weaponreplace ""
+ set g_balance_hagar_weaponstart 0
+ set g_balance_hagar_weaponstartoverride -1
+ set g_balance_hagar_weaponthrowable 1
+ // }}}
+ // {{{ #10: Devastator
+ set g_balance_devastator_ammo 4
+ set g_balance_devastator_animtime 0.4
+ set g_balance_devastator_damage 80
+ set g_balance_devastator_damageforcescale 1
+ set g_balance_devastator_detonatedelay 0.02
+ set g_balance_devastator_edgedamage 40
+ set g_balance_devastator_force 400
+ set g_balance_devastator_guidedelay 0.2
+ set g_balance_devastator_guidegoal 512
+ set g_balance_devastator_guiderate 90
+ set g_balance_devastator_guideratedelay 0.01
+ set g_balance_devastator_guidestop 0
+ set g_balance_devastator_health 30
+ set g_balance_devastator_lifetime 10
+ set g_balance_devastator_radius 110
+ set g_balance_devastator_refire 1.1
+ set g_balance_devastator_reload_ammo 0
+ set g_balance_devastator_reload_time 2
+ set g_balance_devastator_remote_damage 70
+ set g_balance_devastator_remote_edgedamage 35
+ set g_balance_devastator_remote_force 300
+ set g_balance_devastator_remote_jump_damage 70
+ set g_balance_devastator_remote_jump_radius 0
+ set g_balance_devastator_remote_jump_velocity_z_add 400
+ set g_balance_devastator_remote_jump_velocity_z_max 1500
+ set g_balance_devastator_remote_jump_velocity_z_min 400
+ set g_balance_devastator_remote_radius 110
+ set g_balance_devastator_speed 1300
+ set g_balance_devastator_speedaccel 1300
+ set g_balance_devastator_speedstart 1000
+ set g_balance_devastator_switchdelay_drop 0.2
+ set g_balance_devastator_switchdelay_raise 0.2
+ set g_balance_devastator_weaponreplace ""
+ set g_balance_devastator_weaponstart 0
+ set g_balance_devastator_weaponstartoverride -1
+ set g_balance_devastator_weaponthrowable 1
+ // }}}
+ // {{{ #11: Port-O-Launch
+ set g_balance_porto_primary_animtime 0.3
+ set g_balance_porto_primary_lifetime 5
+ set g_balance_porto_primary_refire 1.5
+ set g_balance_porto_primary_speed 1000
+ set g_balance_porto_secondary 1
+ set g_balance_porto_secondary_animtime 0.3
+ set g_balance_porto_secondary_lifetime 5
+ set g_balance_porto_secondary_refire 1.5
+ set g_balance_porto_secondary_speed 1000
+ set g_balance_porto_switchdelay_drop 0.2
+ set g_balance_porto_switchdelay_raise 0.2
+ set g_balance_porto_weaponreplace ""
+ set g_balance_porto_weaponstart 0
+ set g_balance_porto_weaponstartoverride -1
+ set g_balance_porto_weaponthrowable 1
+ // }}}
+ // {{{ #12: Vaporizer
+ set g_balance_vaporizer_primary_ammo 10
+ set g_balance_vaporizer_primary_animtime 0.3
+ set g_balance_vaporizer_primary_refire 1
+ set g_balance_vaporizer_reload_ammo 0
+ set g_balance_vaporizer_reload_time 0
+ set g_balance_vaporizer_secondary_ammo 0
+ set g_balance_vaporizer_secondary_animtime 0.2
+ set g_balance_vaporizer_secondary_damage 25
+ set g_balance_vaporizer_secondary_delay 0
+ set g_balance_vaporizer_secondary_edgedamage 12.5
+ set g_balance_vaporizer_secondary_force 400
+ set g_balance_vaporizer_secondary_lifetime 5
+ set g_balance_vaporizer_secondary_radius 70
+ set g_balance_vaporizer_secondary_refire 0.7
+ set g_balance_vaporizer_secondary_shotangle 0
+ set g_balance_vaporizer_secondary_speed 6000
+ set g_balance_vaporizer_secondary_spread 0
+ set g_balance_vaporizer_switchdelay_drop 0.2
+ set g_balance_vaporizer_switchdelay_raise 0.2
+ set g_balance_vaporizer_weaponreplace ""
+ set g_balance_vaporizer_weaponstart 0
+ set g_balance_vaporizer_weaponstartoverride -1
+ set g_balance_vaporizer_weaponthrowable 0
+ // }}}
+ // {{{ #13: Grappling Hook
+ set g_balance_hook_primary_ammo 5
+ set g_balance_hook_primary_animtime 0.3
+ set g_balance_hook_primary_hooked_ammo 5
+ set g_balance_hook_primary_hooked_time_free 2
+ set g_balance_hook_primary_hooked_time_max 0
+ set g_balance_hook_primary_refire 0.2
+ set g_balance_hook_secondary_animtime 0.3
+ set g_balance_hook_secondary_damage 25
+ set g_balance_hook_secondary_damageforcescale 0
+ set g_balance_hook_secondary_duration 1.5
+ set g_balance_hook_secondary_edgedamage 5
+ set g_balance_hook_secondary_force -2000
+ set g_balance_hook_secondary_gravity 5
+ set g_balance_hook_secondary_health 15
+ set g_balance_hook_secondary_lifetime 5
+ set g_balance_hook_secondary_power 3
+ set g_balance_hook_secondary_radius 500
+ set g_balance_hook_secondary_refire 3
+ set g_balance_hook_secondary_speed 0
+ set g_balance_hook_switchdelay_drop 0.2
+ set g_balance_hook_switchdelay_raise 0.2
+ set g_balance_hook_weaponreplace ""
+ set g_balance_hook_weaponstart 0
+ set g_balance_hook_weaponstartoverride -1
+ set g_balance_hook_weaponthrowable 1
+ // }}}
+ // {{{ #14: Heavy Laser Assault Cannon (MUTATOR WEAPON)
+ set g_balance_hlac_primary_ammo 1
+ set g_balance_hlac_primary_animtime 0.4
+ set g_balance_hlac_primary_damage 18
+ set g_balance_hlac_primary_edgedamage 9
+ set g_balance_hlac_primary_force 90
+ set g_balance_hlac_primary_lifetime 5
+ set g_balance_hlac_primary_radius 70
+ set g_balance_hlac_primary_refire 0.15
+ set g_balance_hlac_primary_speed 9000
+ set g_balance_hlac_primary_spread_add 0.0045
+ set g_balance_hlac_primary_spread_crouchmod 0.25
+ set g_balance_hlac_primary_spread_max 0.25
+ set g_balance_hlac_primary_spread_min 0.01
+ set g_balance_hlac_reload_ammo 0
+ set g_balance_hlac_reload_time 2
+ set g_balance_hlac_secondary 1
+ set g_balance_hlac_secondary_ammo 10
+ set g_balance_hlac_secondary_animtime 0.3
+ set g_balance_hlac_secondary_damage 15
+ set g_balance_hlac_secondary_edgedamage 7.5
+ set g_balance_hlac_secondary_force 90
+ set g_balance_hlac_secondary_lifetime 5
+ set g_balance_hlac_secondary_radius 70
+ set g_balance_hlac_secondary_refire 1
+ set g_balance_hlac_secondary_shots 6
+ set g_balance_hlac_secondary_speed 9000
+ set g_balance_hlac_secondary_spread 0.15
+ set g_balance_hlac_secondary_spread_crouchmod 0.5
+ set g_balance_hlac_switchdelay_drop 0.2
+ set g_balance_hlac_switchdelay_raise 0.2
+ set g_balance_hlac_weaponreplace ""
+ set g_balance_hlac_weaponstart 0
+ set g_balance_hlac_weaponstartoverride -1
+ set g_balance_hlac_weaponthrowable 1
+ // }}}
+ // {{{ #15: @!#%'n Tuba
+ set g_balance_tuba_animtime 0.05
+ set g_balance_tuba_attenuation 0.5
+ set g_balance_tuba_damage 5
+ set g_balance_tuba_edgedamage 0
+ set g_balance_tuba_fadetime 0.25
+ set g_balance_tuba_force 40
+ set g_balance_tuba_pitchstep 6
+ set g_balance_tuba_radius 200
+ set g_balance_tuba_refire 0.05
+ set g_balance_tuba_switchdelay_drop 0.2
+ set g_balance_tuba_switchdelay_raise 0.2
+ set g_balance_tuba_volume 1
+ set g_balance_tuba_weaponreplace ""
+ set g_balance_tuba_weaponstart 0
+ set g_balance_tuba_weaponstartoverride -1
+ set g_balance_tuba_weaponthrowable 1
+ // }}}
+ // {{{ #16: Rifle (MUTATOR WEAPON)
+ set g_balance_rifle_bursttime 0
+ set g_balance_rifle_primary_ammo 10
+ set g_balance_rifle_primary_animtime 0.4
+ set g_balance_rifle_primary_bullethail 0
+ set g_balance_rifle_primary_burstcost 0
+ set g_balance_rifle_primary_damage 80
+ set g_balance_rifle_primary_force 100
+ set g_balance_rifle_primary_refire 1.2
+ set g_balance_rifle_primary_shots 1
+ set g_balance_rifle_primary_solidpenetration 62.2
+ set g_balance_rifle_primary_spread 0
+ set g_balance_rifle_primary_tracer 1
+ set g_balance_rifle_reload_ammo 80
+ set g_balance_rifle_reload_time 2
+ set g_balance_rifle_secondary 1
+ set g_balance_rifle_secondary_ammo 10
+ set g_balance_rifle_secondary_animtime 0.3
+ set g_balance_rifle_secondary_bullethail 0
+ set g_balance_rifle_secondary_burstcost 0
+ set g_balance_rifle_secondary_damage 20
+ set g_balance_rifle_secondary_force 50
+ set g_balance_rifle_secondary_refire 0.9
+ set g_balance_rifle_secondary_reload 0
+ set g_balance_rifle_secondary_shots 4
+ set g_balance_rifle_secondary_solidpenetration 15.5
+ set g_balance_rifle_secondary_spread 0.04
+ set g_balance_rifle_secondary_tracer 0
+ set g_balance_rifle_switchdelay_drop 0.2
+ set g_balance_rifle_switchdelay_raise 0.2
+ set g_balance_rifle_weaponreplace ""
+ set g_balance_rifle_weaponstart 0
+ set g_balance_rifle_weaponstartoverride -1
+ set g_balance_rifle_weaponthrowable 1
+ // }}}
+ // {{{ #17: Fireball
+ set g_balance_fireball_primary_animtime 0.4
+ set g_balance_fireball_primary_bfgdamage 100
+ set g_balance_fireball_primary_bfgforce 0
+ set g_balance_fireball_primary_bfgradius 1000
+ set g_balance_fireball_primary_damage 200
+ set g_balance_fireball_primary_damageforcescale 0
+ set g_balance_fireball_primary_edgedamage 50
+ set g_balance_fireball_primary_force 600
+ set g_balance_fireball_primary_health 0
+ set g_balance_fireball_primary_laserburntime 0.5
+ set g_balance_fireball_primary_laserdamage 80
+ set g_balance_fireball_primary_laseredgedamage 20
+ set g_balance_fireball_primary_laserradius 256
+ set g_balance_fireball_primary_lifetime 15
+ set g_balance_fireball_primary_radius 200
+ set g_balance_fireball_primary_refire 2
+ set g_balance_fireball_primary_refire2 0
+ set g_balance_fireball_primary_speed 1200
+ set g_balance_fireball_primary_spread 0
+ set g_balance_fireball_secondary_animtime 0.3
+ set g_balance_fireball_secondary_damage 40
+ set g_balance_fireball_secondary_damageforcescale 4
+ set g_balance_fireball_secondary_damagetime 5
+ set g_balance_fireball_secondary_laserburntime 0.5
+ set g_balance_fireball_secondary_laserdamage 50
+ set g_balance_fireball_secondary_laseredgedamage 20
+ set g_balance_fireball_secondary_laserradius 110
+ set g_balance_fireball_secondary_lifetime 7
+ set g_balance_fireball_secondary_refire 1.5
+ set g_balance_fireball_secondary_speed 900
+ set g_balance_fireball_secondary_speed_up 100
+ set g_balance_fireball_secondary_speed_z 0
+ set g_balance_fireball_secondary_spread 0
+ set g_balance_fireball_switchdelay_drop 0.2
+ set g_balance_fireball_switchdelay_raise 0.2
+ set g_balance_fireball_weaponreplace ""
+ set g_balance_fireball_weaponstart 0
+ set g_balance_fireball_weaponstartoverride -1
+ set g_balance_fireball_weaponthrowable 0
+ // }}}
+ // {{{ #18: T.A.G. Seeker (MUTATOR WEAPON)
+ set g_balance_seeker_flac_ammo 1
+ set g_balance_seeker_flac_animtime 0.1
+ set g_balance_seeker_flac_damage 15
+ set g_balance_seeker_flac_edgedamage 10
+ set g_balance_seeker_flac_force 50
+ set g_balance_seeker_flac_lifetime 0.1
+ set g_balance_seeker_flac_lifetime_rand 0.05
+ set g_balance_seeker_flac_radius 100
+ set g_balance_seeker_flac_refire 0.1
+ set g_balance_seeker_flac_speed 3000
+ set g_balance_seeker_flac_speed_up 1000
+ set g_balance_seeker_flac_speed_z 0
+ set g_balance_seeker_flac_spread 0.4
+ set g_balance_seeker_missile_accel 1400
+ set g_balance_seeker_missile_ammo 2
+ set g_balance_seeker_missile_animtime 0.2
+ set g_balance_seeker_missile_count 3
+ set g_balance_seeker_missile_damage 30
+ set g_balance_seeker_missile_damageforcescale 4
+ set g_balance_seeker_missile_decel 1400
+ set g_balance_seeker_missile_delay 0.25
+ set g_balance_seeker_missile_edgedamage 10
+ set g_balance_seeker_missile_force 150
+ set g_balance_seeker_missile_health 5
+ set g_balance_seeker_missile_lifetime 15
+ set g_balance_seeker_missile_proxy 0
+ set g_balance_seeker_missile_proxy_delay 0.2
+ set g_balance_seeker_missile_proxy_maxrange 45
+ set g_balance_seeker_missile_radius 80
+ set g_balance_seeker_missile_refire 0.5
+ set g_balance_seeker_missile_smart 1
+ set g_balance_seeker_missile_smart_mindist 800
+ set g_balance_seeker_missile_smart_trace_max 2500
+ set g_balance_seeker_missile_smart_trace_min 1000
+ set g_balance_seeker_missile_speed 700
+ set g_balance_seeker_missile_speed_max 1300
+ set g_balance_seeker_missile_speed_up 300
+ set g_balance_seeker_missile_speed_z 0
+ set g_balance_seeker_missile_spread 0
+ set g_balance_seeker_missile_turnrate 0.65
+ set g_balance_seeker_reload_ammo 0
+ set g_balance_seeker_reload_time 2
+ set g_balance_seeker_switchdelay_drop 0.2
+ set g_balance_seeker_switchdelay_raise 0.2
+ set g_balance_seeker_tag_ammo 1
+ set g_balance_seeker_tag_animtime 0.2
+ set g_balance_seeker_tag_damageforcescale 4
+ set g_balance_seeker_tag_health 5
+ set g_balance_seeker_tag_lifetime 15
+ set g_balance_seeker_tag_refire 0.75
+ set g_balance_seeker_tag_speed 5000
+ set g_balance_seeker_tag_spread 0
+ set g_balance_seeker_tag_tracker_lifetime 10
+ set g_balance_seeker_type 0
+ set g_balance_seeker_weaponreplace ""
+ set g_balance_seeker_weaponstart 0
+ set g_balance_seeker_weaponstartoverride -1
+ set g_balance_seeker_weaponthrowable 1
+ // }}}
+ // {{{ #19: Shockwave (MUTATOR WEAPON)
+ set g_balance_shockwave_blast_animtime 0.3
+ set g_balance_shockwave_blast_damage 20
+ set g_balance_shockwave_blast_distance 1000
+ set g_balance_shockwave_blast_edgedamage 0
+ set g_balance_shockwave_blast_force 200
+ set g_balance_shockwave_blast_force_forwardbias 50
+ set g_balance_shockwave_blast_force_zscale 2
+ set g_balance_shockwave_blast_jump_damage 20
+ set g_balance_shockwave_blast_jump_edgedamage 0
+ set g_balance_shockwave_blast_jump_force 300
+ set g_balance_shockwave_blast_jump_force_velocitybias 0
+ set g_balance_shockwave_blast_jump_force_zscale 1.25
+ set g_balance_shockwave_blast_jump_multiplier_accuracy 0.5
+ set g_balance_shockwave_blast_jump_multiplier_distance 0.5
+ set g_balance_shockwave_blast_jump_multiplier_min 0
+ set g_balance_shockwave_blast_jump_radius 150
+ set g_balance_shockwave_blast_multiplier_accuracy 0.5
+ set g_balance_shockwave_blast_multiplier_distance 0.5
+ set g_balance_shockwave_blast_multiplier_min 0
+ set g_balance_shockwave_blast_refire 0.75
+ set g_balance_shockwave_blast_splash_damage 15
+ set g_balance_shockwave_blast_splash_edgedamage 0
+ set g_balance_shockwave_blast_splash_force 100
+ set g_balance_shockwave_blast_splash_force_forwardbias 50
+ set g_balance_shockwave_blast_splash_multiplier_accuracy 0.5
+ set g_balance_shockwave_blast_splash_multiplier_distance 0.5
+ set g_balance_shockwave_blast_splash_multiplier_min 0
+ set g_balance_shockwave_blast_splash_radius 70
+ set g_balance_shockwave_blast_spread_max 120
+ set g_balance_shockwave_blast_spread_min 25
+ set g_balance_shockwave_melee_animtime 1.3
+ set g_balance_shockwave_melee_damage 80
+ set g_balance_shockwave_melee_delay 0.25
+ set g_balance_shockwave_melee_force 200
+ set g_balance_shockwave_melee_multihit 1
+ set g_balance_shockwave_melee_no_doubleslap 1
+ set g_balance_shockwave_melee_nonplayerdamage 40
+ set g_balance_shockwave_melee_range 120
+ set g_balance_shockwave_melee_refire 1.25
+ set g_balance_shockwave_melee_swing_side 120
+ set g_balance_shockwave_melee_swing_up 30
+ set g_balance_shockwave_melee_time 0.15
+ set g_balance_shockwave_melee_traces 10
+ set g_balance_shockwave_switchdelay_drop 0.2
+ set g_balance_shockwave_switchdelay_raise 0.2
+ set g_balance_shockwave_weaponreplace ""
+ set g_balance_shockwave_weaponstart 0
+ set g_balance_shockwave_weaponstartoverride -1
+ set g_balance_shockwave_weaponthrowable 0
+ // }}}
+ // {{{ #20: Arc
+ set g_balance_arc_beam_ammo 4
+ set g_balance_arc_beam_animtime 0.2
+ set g_balance_arc_beam_botaimlifetime 0
+ set g_balance_arc_beam_botaimspeed 0
+ set g_balance_arc_beam_damage 115
+ set g_balance_arc_beam_degreespersegment 1
+ set g_balance_arc_beam_distancepersegment 0
+ set g_balance_arc_beam_falloff_halflifedist 0
+ set g_balance_arc_beam_falloff_maxdist 0
+ set g_balance_arc_beam_falloff_mindist 0
+ set g_balance_arc_beam_force 900
+ set g_balance_arc_beam_healing_amax 100
+ set g_balance_arc_beam_healing_aps 50
+ set g_balance_arc_beam_healing_hmax 150
+ set g_balance_arc_beam_healing_hps 50
+ set g_balance_arc_cooldown 2.5
+ set g_balance_arc_overheat_max 5
+ set g_balance_arc_overheat_min 3
+ set g_balance_arc_beam_heat 1
+ set g_balance_arc_burst_heat 4
+ set g_balance_arc_beam_maxangle 10
+ set g_balance_arc_beam_nonplayerdamage 80
+ set g_balance_arc_beam_range 1000
+ set g_balance_arc_beam_refire 0.5
+ set g_balance_arc_beam_returnspeed 8
+ set g_balance_arc_beam_tightness 0.5
+ set g_balance_arc_burst_ammo 15
+ set g_balance_arc_burst_damage 250
+ set g_balance_arc_burst_healing_aps 100
+ set g_balance_arc_burst_healing_hps 100
+ set g_balance_arc_switchdelay_drop 0.3
+ set g_balance_arc_switchdelay_raise 0.3
+ set g_balance_arc_weaponreplace ""
+ set g_balance_arc_weaponstart 0
+ set g_balance_arc_weaponstartoverride -1
+ set g_balance_arc_weaponthrowable 1
+ // }}}
++// {{{ #21: Heavy Machine Gun
++set g_balance_hmg_ammo 0
++set g_balance_hmg_damage 0
++set g_balance_hmg_force 0
++set g_balance_hmg_refire 0
++set g_balance_hmg_reload_ammo 120
++set g_balance_hmg_reload_time 1
++set g_balance_hmg_solidpenetration 32
++set g_balance_hmg_spread_add 0.01
++set g_balance_hmg_spread_max 0.05
++set g_balance_hmg_spread_min 0.02
++set g_balance_hmg_switchdelay_drop 0.2
++set g_balance_hmg_switchdelay_raise 0.2
++set g_balance_hmg_weaponreplace ""
++set g_balance_hmg_weaponstart 0
++set g_balance_hmg_weaponstartoverride 0
++set g_balance_hmg_weaponthrowable 0
++// }}}
++// {{{ #22: Rocket Propelled Chainsaw
++set g_balance_rpc_ammo 10
++set g_balance_rpc_animtime 1
++set g_balance_rpc_damage 150
++set g_balance_rpc_damage2 500
++set g_balance_rpc_damageforcescale 2
++set g_balance_rpc_edgedamage 50
++set g_balance_rpc_force 400
++set g_balance_rpc_health 25
++set g_balance_rpc_lifetime 30
++set g_balance_rpc_radius 300
++set g_balance_rpc_refire 1
++set g_balance_rpc_reload_ammo 10
++set g_balance_rpc_reload_time 1
++set g_balance_rpc_speed 1250
++set g_balance_rpc_speedaccel 5000
++set g_balance_rpc_switchdelay_drop 0.2
++set g_balance_rpc_switchdelay_raise 0.2
++set g_balance_rpc_weaponreplace ""
++set g_balance_rpc_weaponstart 0
++set g_balance_rpc_weaponstartoverride 0
++set g_balance_rpc_weaponthrowable 0
++// }}}
--- /dev/null
--- /dev/null
++g_mod_balance Overkill
++
++// {{{ starting gear
++set g_balance_health_start 100
++set g_balance_armor_start 0
++set g_start_ammo_shells 15
++set g_start_ammo_nails 0
++set g_start_ammo_rockets 0
++set g_start_ammo_cells 0
++set g_start_ammo_plasma 0
++set g_start_ammo_fuel 0
++set g_warmup_start_health 100 "starting values when being in warmup-stage"
++set g_warmup_start_armor 100 "starting values when being in warmup-stage"
++set g_warmup_start_ammo_shells 30 "starting values when being in warmup-stage"
++set g_warmup_start_ammo_nails 160 "starting values when being in warmup-stage"
++set g_warmup_start_ammo_rockets 80 "starting values when being in warmup-stage"
++set g_warmup_start_ammo_cells 90 "starting values when being in warmup-stage"
++set g_warmup_start_ammo_plasma 90 "starting values when being in warmup-stage"
++set g_warmup_start_ammo_fuel 0 "starting values when being in warmup-stage"
++set g_lms_start_health 200
++set g_lms_start_armor 200
++set g_lms_start_ammo_shells 60
++set g_lms_start_ammo_nails 320
++set g_lms_start_ammo_rockets 160
++set g_lms_start_ammo_cells 180
++set g_lms_start_ammo_plasma 180
++set g_lms_start_ammo_fuel 0
++set g_balance_nix_roundtime 25
++set g_balance_nix_incrtime 1.6
++set g_balance_nix_ammo_shells 60
++set g_balance_nix_ammo_nails 320
++set g_balance_nix_ammo_rockets 160
++set g_balance_nix_ammo_cells 180
++set g_balance_nix_ammo_plasma 180
++set g_balance_nix_ammo_fuel 0
++set g_balance_nix_ammoincr_shells 2 // eh this will need figured out later I assume
++set g_balance_nix_ammoincr_nails 6
++set g_balance_nix_ammoincr_rockets 2
++set g_balance_nix_ammoincr_cells 2
++set g_balance_nix_ammoincr_plasma 2
++set g_balance_nix_ammoincr_fuel 2
++// }}}
++
++// {{{ pickup items
++set g_pickup_ammo_anyway 1
++set g_pickup_weapons_anyway 1
++set g_pickup_shells 15
++set g_pickup_shells_weapon 15
++set g_pickup_shells_max 60
++set g_pickup_nails 80
++set g_pickup_nails_weapon 80
++set g_pickup_nails_max 320
++set g_pickup_rockets 40
++set g_pickup_rockets_weapon 40
++set g_pickup_rockets_max 160
++set g_pickup_cells 30
++set g_pickup_cells_weapon 30
++set g_pickup_cells_max 180
++set g_pickup_plasma 30
++set g_pickup_plasma_weapon 30
++set g_pickup_plasma_max 180
++set g_pickup_fuel 50
++set g_pickup_fuel_weapon 50
++set g_pickup_fuel_jetpack 100
++set g_pickup_fuel_max 100
++set g_pickup_armorsmall 5
++set g_pickup_armorsmall_max 20
++set g_pickup_armorsmall_anyway 0
++set g_pickup_armormedium 25
++set g_pickup_armormedium_max 200
++set g_pickup_armormedium_anyway 1
++set g_pickup_armorbig 50
++set g_pickup_armorbig_max 200
++set g_pickup_armorbig_anyway 1
++set g_pickup_armorlarge 100
++set g_pickup_armorlarge_max 200
++set g_pickup_armorlarge_anyway 1
++set g_pickup_healthsmall 5
++set g_pickup_healthsmall_max 200
++set g_pickup_healthsmall_anyway 1
++set g_pickup_healthmedium 25
++set g_pickup_healthmedium_max 200
++set g_pickup_healthmedium_anyway 1
++set g_pickup_healthlarge 50
++set g_pickup_healthlarge_max 200
++set g_pickup_healthlarge_anyway 1
++set g_pickup_healthmega 100
++set g_pickup_healthmega_max 200
++set g_pickup_healthmega_anyway 0
++set g_pickup_respawntime_short 15
++set g_pickup_respawntime_medium 20
++set g_pickup_respawntime_long 30
++set g_pickup_respawntime_powerup 120
++set g_pickup_respawntime_weapon 10
++set g_pickup_respawntime_superweapon 120
++set g_pickup_respawntime_ammo 10
++set g_pickup_respawntimejitter_short 0
++set g_pickup_respawntimejitter_medium 0
++set g_pickup_respawntimejitter_long 0
++set g_pickup_respawntimejitter_powerup 0
++set g_pickup_respawntimejitter_weapon 0
++set g_pickup_respawntimejitter_superweapon 10
++set g_pickup_respawntimejitter_ammo 0
++// }}}
++
++// {{{ regen/rot
++set g_balance_health_regen 0
++set g_balance_health_regenlinear 100
++set g_balance_pause_health_regen 2
++set g_balance_pause_health_regen_spawn 0
++set g_balance_health_rot 0
++set g_balance_health_rotlinear 1
++set g_balance_pause_health_rot 1
++set g_balance_pause_health_rot_spawn 5
++set g_balance_health_regenstable 100
++set g_balance_health_rotstable 200
++set g_balance_health_limit 999
++set g_balance_armor_regen 0
++set g_balance_armor_regenlinear 0
++set g_balance_armor_rot 0
++set g_balance_armor_rotlinear 1
++set g_balance_pause_armor_rot 1
++set g_balance_pause_armor_rot_spawn 5
++set g_balance_armor_regenstable 100
++set g_balance_armor_rotstable 0
++set g_balance_armor_limit 999
++set g_balance_armor_blockpercent 0.7
++set g_balance_fuel_regen 0.1 "fuel regeneration (only applies if the player owns IT_FUEL_REGEN)"
++set g_balance_fuel_regenlinear 0
++set g_balance_pause_fuel_regen 2 // other than this, fuel uses the health regen counter
++set g_balance_fuel_rot 0.05
++set g_balance_fuel_rotlinear 0
++set g_balance_pause_fuel_rot 5
++set g_balance_pause_fuel_rot_spawn 10
++set g_balance_fuel_regenstable 50
++set g_balance_fuel_rotstable 100
++set g_balance_fuel_limit 999
++// }}}
++
++// {{{ misc
++set g_balance_selfdamagepercent 0.65
++set g_weaponspeedfactor 1 "weapon projectile speed multiplier"
++set g_weaponratefactor 1 "weapon fire rate multiplier"
++set g_weapondamagefactor 1 "weapon damage multiplier"
++set g_weaponforcefactor 1 "weapon force multiplier"
++set g_weaponspreadfactor 1 "weapon spread multiplier"
++set g_balance_firetransfer_time 0.9
++set g_balance_firetransfer_damage 0.8
++set g_throughfloor_damage 0.75
++set g_throughfloor_force 0.75
++set g_projectiles_damage -2
++// possible values:
++// -2: absolutely no damage to projectiles (no exceptions)
++// -1: no damage other than the exceptions (electro combo, hagar join explode, ML mines)
++// 0: only damage from contents (lava/slime) or exceptions
++// 1: only self damage or damage from contents or exceptions
++// 2: allow all damage to projectiles normally
++set g_projectiles_keep_owner 0
++set g_projectiles_newton_style 0
++// possible values:
++// 0: absolute velocity projectiles (like Quake)
++// 1: relative velocity projectiles, "Newtonian" (like Tribes 2)
++// 2: relative velocity projectiles, but aim is precorrected so projectiles hit the crosshair (note: strafe rockets then are SLOWER than ones shot while standing, happens in 1 too when aiming correctly which is hard)
++set g_projectiles_newton_style_2_minfactor 1
++set g_projectiles_newton_style_2_maxfactor 1.5
++set g_projectiles_spread_style 7
++// possible values:
++// 0: forward + solid sphere (like Quake) - varies velocity
++// 1: forward + flattened solid sphere
++// 2: forward + solid circle
++// 3: forward + normal distribution 3D - varies velocity
++// 4: forward + normal distribution on a plane
++// 5: forward + circle with 1-r falloff
++// 6: forward + circle with 1-r^2 falloff
++// 7: forward + circle with (1-r)(2-r) falloff
++set g_balance_falldamage_deadminspeed 250
++set g_balance_falldamage_minspeed 900
++set g_balance_falldamage_factor 0.20
++set g_balance_falldamage_maxdamage 40
++set g_balance_damagepush_speedfactor 2.5
++set g_balance_contents_damagerate 0.2 // ticrate interval for applying damage with playerdamage/projectiledamage
++set g_balance_contents_drowndelay 10 // time under water before a player begins drowning
++set g_balance_contents_playerdamage_drowning 20 // damage per second for while player is drowning
++set g_balance_contents_playerdamage_lava 50 // damage per second for while player is inside lava
++set g_balance_contents_playerdamage_slime 30 // damage per second for while player is inside slime
++set g_balance_contents_projectiledamage 10000 // instantly kill projectiles upon touching lava/slime
++set g_maxpushtime 8.0 "timeout for kill credit when your damage knocks someone into a death trap"
++// }}}
++
++// {{{ powerups
++set g_balance_powerup_invincible_takedamage 0.33 // only 1/3rd damage is taken
++set g_balance_powerup_invincible_time 30
++set g_balance_powerup_strength_damage 3
++set g_balance_powerup_strength_force 3
++set g_balance_powerup_strength_time 30
++set g_balance_powerup_strength_selfdamage 1.5
++set g_balance_powerup_strength_selfforce 1.5
++set g_balance_superweapons_time 30
++// }}}
++
++// {{{ jetpack/hook
++set g_jetpack_antigravity 0.8 "factor of gravity compensation of the jetpack"
++set g_jetpack_acceleration_side 1200 "acceleration of the jetpack in xy direction"
++set g_jetpack_acceleration_up 600 "acceleration of the jetpack in z direction (note: you have to factor in gravity here, if antigravity is not 1)"
++set g_jetpack_maxspeed_side 1200 "max speed of the jetpack in xy direction"
++set g_jetpack_maxspeed_up 600 "max speed of the jetpack in z direction"
++set g_jetpack_fuel 8 "fuel per second for jetpack"
++set g_jetpack_attenuation 2 "jetpack sound attenuation"
++
++set g_grappling_hook_tarzan 2 // 2: can also pull players
++set g_balance_grapplehook_speed_fly 1800
++set g_balance_grapplehook_speed_pull 2000
++set g_balance_grapplehook_force_rubber 2000
++set g_balance_grapplehook_force_rubber_overstretch 1000
++set g_balance_grapplehook_length_min 50
++set g_balance_grapplehook_stretch 50
++set g_balance_grapplehook_airfriction 0.2
++set g_balance_grapplehook_health 50
++set g_balance_grapplehook_damagedbycontents 1
++set g_balance_grapplehook_refire 0.2
++// }}}
++
++// {{{ port-o-launch
++set g_balance_portal_health 200 // these get recharged whenever the portal is used
++set g_balance_portal_lifetime 15 // these get recharged whenever the portal is used
++// }}}
++
++exec bal-wep-xonotic.cfg
// ===========
- // minstagib
+ // instagib
// ===========
- set g_minstagib 0 "enable minstagib"
- set g_minstagib_extralives 1 "how many extra lives you will get per powerup"
- set g_minstagib_ammo_start 10 "starting ammo"
- set g_minstagib_ammo_drop 5 "how much ammo you'll get for weapons or cells"
- set g_minstagib_invis_alpha 0.15
- set g_minstagib_speed_highspeed 1.5 "speed-multiplier that applies while you carry the invincibility powerup"
+ set g_instagib 0 "enable instagib"
+ set g_instagib_extralives 1 "how many extra lives you will get per powerup"
+ set g_instagib_ammo_start 10 "starting ammo"
+ set g_instagib_ammo_drop 5 "how much ammo you'll get for weapons or cells"
+ set g_instagib_invis_alpha 0.15
+ set g_instagib_speed_highspeed 1.5 "speed-multiplier that applies while you carry the invincibility powerup"
- set g_overkill_ammo_charge_rate_nex 0.5
- set g_overkill_ammo_charge_rate_uzi 0.5
+// ==========
+// overkill
+// ==========
+set g_overkill 0 "enable overkill"
++set g_overkill_superguns_builtin 0
+
+set g_overkill_100a_anyway 1
+set g_overkill_100h_anyway 1
+set g_overkill_powerups_replace 1
+set g_overkill_superguns_onemag 1
+set g_overkill_superguns_respawn_time 20
+
+set g_overkill_ammo_charge 1
+set g_overkill_ammo_charge_notice 1
+set g_overkill_ammo_charge_limit 1
+set g_overkill_ammo_charge_rate 0.5
- set g_overkill_ammo_decharge_uzi 0.025
++set g_overkill_ammo_charge_rate_vortex 0.5
++set g_overkill_ammo_charge_rate_machinegun 0.5
+set g_overkill_ammo_charge_rate_shotgun 0.5
+set g_overkill_ammo_charge_rate_hmg 0.25
+set g_overkill_ammo_charge_rate_rpc 1.5
+set g_overkill_ammo_decharge 0.1
- set g_overkill_ammo_decharge_nex 0.2
++set g_overkill_ammo_decharge_machinegun 0.025
+set g_overkill_ammo_decharge_shotgun 0.15
++set g_overkill_ammo_decharge_vortex 0.2
+set g_overkill_ammo_decharge_rpc 1
+set g_overkill_ammo_decharge_hmg 0.01
+
+
// =========
// vampire
// =========
weapon_clipload = getstati(STAT_WEAPON_CLIPLOAD);
weapon_clipsize = getstati(STAT_WEAPON_CLIPSIZE);
- float nex_charge, nex_chargepool;
- nex_charge = getstatf(STAT_NEX_CHARGE);
- nex_chargepool = getstatf(STAT_NEX_CHARGEPOOL);
-
+ float ok_ammo_charge, ok_ammo_chargepool;
+ ok_ammo_charge = getstatf(STAT_OK_AMMO_CHARGE);
+ ok_ammo_chargepool = getstatf(STAT_OK_AMMO_CHARGEPOOl);
+
- if(nex_charge_movingavg == 0) // this should only happen if we have just loaded up the game
- nex_charge_movingavg = nex_charge;
+ float vortex_charge, vortex_chargepool;
+ vortex_charge = getstatf(STAT_VORTEX_CHARGE);
+ vortex_chargepool = getstatf(STAT_VORTEX_CHARGEPOOL);
+
+ float arc_heat = getstatf(STAT_ARC_HEAT);
+
+ if(vortex_charge_movingavg == 0) // this should only happen if we have just loaded up the game
+ vortex_charge_movingavg = vortex_charge;
// handle the values
float autocvar_cl_deathglow;
float autocvar_developer_csqcentities;
float autocvar_g_jetpack_attenuation;
-
- // OK Crosshair
+var string autocvar_crosshair_hmg = "";
+var vector autocvar_crosshair_hmg_color = '0.2 1.0 0.2';
+var float autocvar_crosshair_hmg_alpha = 1;
+var float autocvar_crosshair_hmg_size = 1;
+var string autocvar_crosshair_rpc = "";
+var vector autocvar_crosshair_rpc_color = '0.2 1.0 0.2';
+var float autocvar_crosshair_rpc_alpha = 1;
+var float autocvar_crosshair_rpc_size = 1;
+ float autocvar_cl_nade_timer;
--- /dev/null
+ .vector iorigin1, iorigin2;
+ .float spawntime;
+ .vector trail_oldorigin;
+ .float trail_oldtime;
+ .float fade_time, fade_rate;
+
+ void SUB_Stop()
+ {
+ self.move_velocity = self.move_avelocity = '0 0 0';
+ self.move_movetype = MOVETYPE_NONE;
+ }
+
+ .float alphamod;
+ .float count; // set if clientside projectile
+ .float cnt; // sound index
+ .float gravity;
+ .float snd_looping;
+ .float silent;
+
+ void Projectile_ResetTrail(vector to)
+ {
+ self.trail_oldorigin = to;
+ self.trail_oldtime = time;
+ }
+
+ void Projectile_DrawTrail(vector to)
+ {
+ vector from;
+ float t0;
+
+ from = self.trail_oldorigin;
+ t0 = self.trail_oldtime;
+ self.trail_oldorigin = to;
+ self.trail_oldtime = time;
+
+ // force the effect even for stationary firemine
+ if(self.cnt == PROJECTILE_FIREMINE)
+ if(from == to)
+ from_z += 1;
+
+ if (self.traileffect)
+ {
+ particles_alphamin = particles_alphamax = particles_fade = sqrt(self.alpha);
+ boxparticles(self.traileffect, self, from, to, self.velocity, self.velocity, 1, PARTICLES_USEALPHA | PARTICLES_USEFADE | PARTICLES_DRAWASTRAIL);
+ }
+ }
+
+ .float proj_time;
+ void Projectile_Draw()
+ {
+ vector rot;
+ vector trailorigin;
+ float f;
+ float drawn;
+ float t;
+ float a;
+ float dt = time - self.proj_time;
+
+ self.proj_time = time;
+ if(dt <= 0) { return; }
+
+ f = self.move_flags;
+
+ if(self.count & 0x80)
+ {
+ //self.move_flags &= ~FL_ONGROUND;
+ if(self.move_movetype == MOVETYPE_NONE || self.move_movetype == MOVETYPE_FLY)
+ Movetype_Physics_NoMatchServer();
+ // the trivial movetypes do not have to match the
+ // server's ticrate as they are ticrate independent
+ // NOTE: this assumption is only true if MOVETYPE_FLY
+ // projectiles detonate on impact. If they continue
+ // moving, we might still be ticrate dependent.
+ else
+ Movetype_Physics_MatchServer(autocvar_cl_projectiles_sloppy);
+ if(!(self.move_flags & FL_ONGROUND))
+ if(self.velocity != '0 0 0')
+ self.move_angles = self.angles = vectoangles(self.velocity);
+ }
+ else
+ {
+ InterpolateOrigin_Do();
+ }
+
+ if(self.count & 0x80)
+ {
+ drawn = (time >= self.spawntime - 0.02);
+ t = max(time, self.spawntime);
+ }
+ else
+ {
+ drawn = (self.iflags & IFLAG_VALID);
+ t = time;
+ }
+
+ if(!(f & FL_ONGROUND))
+ {
+ rot = '0 0 0';
+ switch(self.cnt)
+ {
+ /*
+ case PROJECTILE_GRENADE:
+ rot = '-2000 0 0'; // forward
+ break;
+ */
+ case PROJECTILE_GRENADE_BOUNCING:
+ rot = '0 -1000 0'; // sideways
+ break;
+ case PROJECTILE_HOOKBOMB:
+ rot = '1000 0 0'; // forward
+ break;
+ default:
+ break;
+ }
+
+ if(Nade_IDFromProjectile(self.cnt) != 0)
+ rot = self.avelocity;
+
+ self.angles = AnglesTransform_ToAngles(AnglesTransform_Multiply(AnglesTransform_FromAngles(self.angles), rot * (t - self.spawntime)));
+ }
+
+ vector ang;
+ ang = self.angles;
+ ang_x = -ang_x;
+ makevectors(ang);
+
+ a = 1 - (time - self.fade_time) * self.fade_rate;
+ self.alpha = bound(0, self.alphamod * a, 1);
+ if(self.alpha <= 0)
+ drawn = 0;
+ self.renderflags = 0;
+
+ trailorigin = self.origin;
+ switch(self.cnt)
+ {
+ case PROJECTILE_GRENADE:
+ case PROJECTILE_GRENADE_BOUNCING:
+ trailorigin += v_right * 1 + v_forward * -10;
+ break;
+ default:
+ break;
+ }
+
+ if(Nade_IDFromProjectile(self.cnt) != 0)
+ trailorigin += v_up * 4;
+
+ if(drawn)
+ Projectile_DrawTrail(trailorigin);
+ else
+ Projectile_ResetTrail(trailorigin);
+
+ self.drawmask = 0;
+
+ if(!drawn)
+ return;
+
+ switch(self.cnt)
+ {
+ // Possibly add dlights here.
+ default:
+ break;
+ }
+
+ self.drawmask = MASK_NORMAL;
+ }
+
+ void loopsound(entity e, float ch, string samp, float vol, float attn)
+ {
+ if(self.silent)
+ return;
+
+ sound(e, ch, samp, vol, attn);
+ e.snd_looping = ch;
+ }
+
+ void Ent_RemoveProjectile()
+ {
+ if(self.count & 0x80)
+ {
+ tracebox(self.origin, self.mins, self.maxs, self.origin + self.velocity * 0.05, MOVE_NORMAL, self);
+ Projectile_DrawTrail(trace_endpos);
+ }
+ }
+
+ void Ent_Projectile()
+ {
+ float f;
+
+ // projectile properties:
+ // kind (interpolated, or clientside)
+ //
+ // modelindex
+ // origin
+ // scale
+ // if clientside:
+ // velocity
+ // gravity
+ // soundindex (hardcoded list)
+ // effects
+ //
+ // projectiles don't send angles, because they always follow the velocity
+
+ f = ReadByte();
+ self.count = (f & 0x80);
+ self.iflags = (self.iflags & IFLAG_INTERNALMASK) | IFLAG_AUTOANGLES | IFLAG_ANGLES | IFLAG_ORIGIN;
+ self.solid = SOLID_TRIGGER;
+ self.proj_time = time;
+ //self.effects = EF_NOMODELFLAGS;
+
+ // this should make collisions with bmodels more exact, but it leads to
+ // projectiles no longer being able to lie on a bmodel
+ self.move_nomonsters = MOVE_WORLDONLY;
+ if(f & 0x40)
+ self.move_flags |= FL_ONGROUND;
+ else
+ self.move_flags &= ~FL_ONGROUND;
+
+ if(!self.move_time)
+ {
+ // for some unknown reason, we don't need to care for
+ // sv_gameplayfix_delayprojectiles here.
+ self.move_time = time;
+ self.spawntime = time;
+ }
+ else
+ self.move_time = max(self.move_time, time);
+
+ if(!(self.count & 0x80))
+ InterpolateOrigin_Undo();
+
+ if(f & 1)
+ {
+ self.origin_x = ReadCoord();
+ self.origin_y = ReadCoord();
+ self.origin_z = ReadCoord();
+ setorigin(self, self.origin);
+ if(self.count & 0x80)
+ {
+ self.velocity_x = ReadCoord();
+ self.velocity_y = ReadCoord();
+ self.velocity_z = ReadCoord();
+ if(f & 0x10)
+ self.gravity = ReadCoord();
+ else
+ self.gravity = 0; // none
+ self.move_origin = self.origin;
+ self.move_velocity = self.velocity;
+ }
+
+ if(time == self.spawntime || (self.count & 0x80) || (f & 0x08))
+ {
+ self.trail_oldorigin = self.origin;
+ if(!(self.count & 0x80))
+ InterpolateOrigin_Reset();
+ }
+
+ if(f & 0x20)
+ {
+ self.fade_time = time + ReadByte() * ticrate;
+ self.fade_rate = 1 / (ReadByte() * ticrate);
+ }
+ else
+ {
+ self.fade_time = 0;
+ self.fade_rate = 0;
+ }
+
+ self.team = ReadByte() - 1;
+ }
+
+ if(f & 2)
+ {
+ self.cnt = ReadByte();
+
+ self.silent = (self.cnt & 0x80);
+ self.cnt = (self.cnt & 0x7F);
+
+ self.scale = 1;
+ self.traileffect = 0;
+ switch(self.cnt)
+ {
+ case PROJECTILE_ELECTRO: setmodel(self, "models/ebomb.mdl");self.traileffect = particleeffectnum("TR_NEXUIZPLASMA"); break;
+ case PROJECTILE_ROCKET: setmodel(self, "models/rocket.md3");self.traileffect = particleeffectnum("TR_ROCKET"); self.scale = 2; break;
+ case PROJECTILE_CRYLINK: setmodel(self, "models/plasmatrail.mdl");self.traileffect = particleeffectnum("TR_CRYLINKPLASMA"); break;
+ case PROJECTILE_CRYLINK_BOUNCING: setmodel(self, "models/plasmatrail.mdl");self.traileffect = particleeffectnum("TR_CRYLINKPLASMA"); break;
+ case PROJECTILE_ELECTRO_BEAM: setmodel(self, "models/elaser.mdl");self.traileffect = particleeffectnum("TR_NEXUIZPLASMA"); break;
+ case PROJECTILE_GRENADE: setmodel(self, "models/grenademodel.md3");self.traileffect = particleeffectnum("TR_GRENADE"); break;
+ case PROJECTILE_GRENADE_BOUNCING: setmodel(self, "models/grenademodel.md3");self.traileffect = particleeffectnum("TR_GRENADE"); break;
+ case PROJECTILE_MINE: setmodel(self, "models/mine.md3");self.traileffect = particleeffectnum("TR_GRENADE"); break;
+ case PROJECTILE_BLASTER: setmodel(self, "models/laser.mdl");self.traileffect = particleeffectnum(""); break;
+ case PROJECTILE_HLAC: setmodel(self, "models/hlac_bullet.md3");self.traileffect = particleeffectnum(""); break;
+ case PROJECTILE_PORTO_RED: setmodel(self, "models/grenademodel.md3");self.traileffect = particleeffectnum("TR_WIZSPIKE"); self.scale = 4; break;
+ case PROJECTILE_PORTO_BLUE: setmodel(self, "models/grenademodel.md3");self.traileffect = particleeffectnum("TR_WIZSPIKE"); self.scale = 4; break;
+ case PROJECTILE_HOOKBOMB: setmodel(self, "models/grenademodel.md3");self.traileffect = particleeffectnum("TR_KNIGHTSPIKE"); break;
+ case PROJECTILE_HAGAR: setmodel(self, "models/hagarmissile.mdl");self.traileffect = particleeffectnum("tr_hagar"); self.scale = 0.75; break;
+ case PROJECTILE_HAGAR_BOUNCING: setmodel(self, "models/hagarmissile.mdl");self.traileffect = particleeffectnum("tr_hagar"); self.scale = 0.75; break;
+ case PROJECTILE_NAPALM_FOUNTAIN: //self.model = ""; self.modelindex = 0; self.traileffect = particleeffectnum("torch_small"); break;
+ case PROJECTILE_FIREBALL: self.model = ""; self.modelindex = 0; self.traileffect = particleeffectnum("fireball"); break; // particle effect is good enough
+ case PROJECTILE_FIREMINE: self.model = ""; self.modelindex = 0; self.traileffect = particleeffectnum("firemine"); break; // particle effect is good enough
+ case PROJECTILE_TAG: setmodel(self, "models/laser.mdl"); self.traileffect = particleeffectnum("TR_ROCKET"); break;
+ case PROJECTILE_FLAC: setmodel(self, "models/hagarmissile.mdl"); self.scale = 0.4; self.traileffect = particleeffectnum("TR_SEEKER"); break;
+ case PROJECTILE_SEEKER: setmodel(self, "models/tagrocket.md3"); self.traileffect = particleeffectnum("TR_SEEKER"); break;
+
+ case PROJECTILE_MAGE_SPIKE: setmodel(self, "models/ebomb.mdl"); self.traileffect = particleeffectnum("TR_VORESPIKE"); break;
+ case PROJECTILE_SHAMBLER_LIGHTNING: setmodel(self, "models/ebomb.mdl"); self.traileffect = particleeffectnum("TR_NEXUIZPLASMA"); break;
+
+ case PROJECTILE_RAPTORBOMB: setmodel(self, "models/vehicles/clusterbomb.md3"); self.gravity = 1; self.avelocity = '0 0 180'; self.traileffect = particleeffectnum(""); break;
+ case PROJECTILE_RAPTORBOMBLET: setmodel(self, "models/vehicles/bomblet.md3"); self.gravity = 1; self.avelocity = '0 0 180'; self.traileffect = particleeffectnum(""); break;
+ case PROJECTILE_RAPTORCANNON: setmodel(self, "models/plasmatrail.mdl"); self.traileffect = particleeffectnum("TR_CRYLINKPLASMA"); break;
+
+ case PROJECTILE_SPIDERROCKET: setmodel(self, "models/vehicles/rocket02.md3"); self.traileffect = particleeffectnum("spiderbot_rocket_thrust"); break;
+ case PROJECTILE_WAKIROCKET: setmodel(self, "models/vehicles/rocket01.md3"); self.traileffect = particleeffectnum("wakizashi_rocket_thrust"); break;
+ case PROJECTILE_WAKICANNON: setmodel(self, "models/laser.mdl"); self.traileffect = particleeffectnum(""); break;
+
+ case PROJECTILE_BUMBLE_GUN: setmodel(self, "models/elaser.mdl");self.traileffect = particleeffectnum("TR_NEXUIZPLASMA"); break;
+ case PROJECTILE_BUMBLE_BEAM: setmodel(self, "models/elaser.mdl");self.traileffect = particleeffectnum("TR_NEXUIZPLASMA"); break;
+
++ case PROJECTILE_RPC: setmodel(self, "models/weapons/ok_rocket.md3");self.traileffect = particleeffectnum("TR_ROCKET"); break;
++
+ default:
+ if(Nade_IDFromProjectile(self.cnt) != 0) { setmodel(self, "models/weapons/v_ok_grenade.md3");self.traileffect = particleeffectnum(Nade_TrailEffect(self.cnt, self.team)); break; }
+ error("Received invalid CSQC projectile, can't work with this!");
+ break;
+ }
+
+ self.mins = '0 0 0';
+ self.maxs = '0 0 0';
+ self.colormod = '0 0 0';
+ self.move_touch = SUB_Stop;
+ self.move_movetype = MOVETYPE_TOSS;
+ self.alphamod = 1;
+
+ switch(self.cnt)
+ {
+ case PROJECTILE_ELECTRO:
+ // only new engines support sound moving with object
+ loopsound(self, CH_SHOTS_SINGLE, "weapons/electro_fly.wav", VOL_BASE, ATTEN_NORM);
+ self.mins = '0 0 -4';
+ self.maxs = '0 0 -4';
+ self.move_movetype = MOVETYPE_BOUNCE;
+ self.move_touch = func_null;
+ self.move_bounce_factor = g_balance_electro_secondary_bouncefactor;
+ self.move_bounce_stopspeed = g_balance_electro_secondary_bouncestop;
+ break;
++ case PROJECTILE_RPC:
+ case PROJECTILE_ROCKET:
+ loopsound(self, CH_SHOTS_SINGLE, "weapons/rocket_fly.wav", VOL_BASE, ATTEN_NORM);
+ self.mins = '-3 -3 -3';
+ self.maxs = '3 3 3';
+ break;
+ case PROJECTILE_GRENADE:
+ self.mins = '-3 -3 -3';
+ self.maxs = '3 3 3';
+ break;
+ case PROJECTILE_GRENADE_BOUNCING:
+ self.mins = '-3 -3 -3';
+ self.maxs = '3 3 3';
+ self.move_movetype = MOVETYPE_BOUNCE;
+ self.move_touch = func_null;
+ self.move_bounce_factor = g_balance_mortar_bouncefactor;
+ self.move_bounce_stopspeed = g_balance_mortar_bouncestop;
+ break;
+ case PROJECTILE_SHAMBLER_LIGHTNING:
+ self.mins = '-8 -8 -8';
+ self.maxs = '8 8 8';
+ self.scale = 2.5;
+ self.avelocity = randomvec() * 720;
+ break;
+ case PROJECTILE_MINE:
+ self.mins = '-4 -4 -4';
+ self.maxs = '4 4 4';
+ break;
+ case PROJECTILE_PORTO_RED:
+ self.colormod = '2 1 1';
+ self.alphamod = 0.5;
+ self.move_movetype = MOVETYPE_BOUNCE;
+ self.move_touch = func_null;
+ break;
+ case PROJECTILE_PORTO_BLUE:
+ self.colormod = '1 1 2';
+ self.alphamod = 0.5;
+ self.move_movetype = MOVETYPE_BOUNCE;
+ self.move_touch = func_null;
+ break;
+ case PROJECTILE_HAGAR_BOUNCING:
+ self.move_movetype = MOVETYPE_BOUNCE;
+ self.move_touch = func_null;
+ break;
+ case PROJECTILE_CRYLINK_BOUNCING:
+ self.move_movetype = MOVETYPE_BOUNCE;
+ self.move_touch = func_null;
+ break;
+ case PROJECTILE_NAPALM_FOUNTAIN:
+ case PROJECTILE_FIREBALL:
+ loopsound(self, CH_SHOTS_SINGLE, "weapons/fireball_fly2.wav", VOL_BASE, ATTEN_NORM);
+ self.mins = '-16 -16 -16';
+ self.maxs = '16 16 16';
+ break;
+ case PROJECTILE_FIREMINE:
+ loopsound(self, CH_SHOTS_SINGLE, "weapons/fireball_fly.wav", VOL_BASE, ATTEN_NORM);
+ self.move_movetype = MOVETYPE_BOUNCE;
+ self.move_touch = func_null;
+ self.mins = '-4 -4 -4';
+ self.maxs = '4 4 4';
+ break;
+ case PROJECTILE_TAG:
+ self.mins = '-2 -2 -2';
+ self.maxs = '2 2 2';
+ break;
+ case PROJECTILE_FLAC:
+ self.mins = '-2 -2 -2';
+ self.maxs = '2 2 2';
+ break;
+ case PROJECTILE_SEEKER:
+ loopsound(self, CH_SHOTS_SINGLE, "weapons/tag_rocket_fly.wav", VOL_BASE, ATTEN_NORM);
+ self.mins = '-4 -4 -4';
+ self.maxs = '4 4 4';
+ break;
+ case PROJECTILE_RAPTORBOMB:
+ self.mins = '-3 -3 -3';
+ self.maxs = '3 3 3';
+ break;
+ case PROJECTILE_RAPTORBOMBLET:
+ break;
+ case PROJECTILE_RAPTORCANNON:
+ break;
+ case PROJECTILE_SPIDERROCKET:
+ loopsound(self, CH_SHOTS_SINGLE, "weapons/tag_rocket_fly.wav", VOL_BASE, ATTEN_NORM);
+ break;
+ case PROJECTILE_WAKIROCKET:
+ loopsound(self, CH_SHOTS_SINGLE, "weapons/tag_rocket_fly.wav", VOL_BASE, ATTEN_NORM);
+ break;
+ /*
+ case PROJECTILE_WAKICANNON:
+ break;
+ case PROJECTILE_BUMBLE_GUN:
+ // only new engines support sound moving with object
+ loopsound(self, CH_SHOTS_SINGLE, "weapons/electro_fly.wav", VOL_BASE, ATTEN_NORM);
+ self.mins = '0 0 -4';
+ self.maxs = '0 0 -4';
+ self.move_movetype = MOVETYPE_BOUNCE;
+ self.move_touch = func_null;
+ self.move_bounce_factor = g_balance_electro_secondary_bouncefactor;
+ self.move_bounce_stopspeed = g_balance_electro_secondary_bouncestop;
+ break;
+ */
+ default:
+ break;
+ }
+
+ if(Nade_IDFromProjectile(self.cnt) != 0)
+ {
+ self.mins = '-16 -16 -16';
+ self.maxs = '16 16 16';
+ self.colormod = Nade_Color(Nade_IDFromProjectile(self.cnt));
+ self.dphitcontentsmask = DPCONTENTS_SOLID | DPCONTENTS_BODY | DPCONTENTS_PLAYERCLIP | DPCONTENTS_BOTCLIP;
+ self.move_movetype = MOVETYPE_BOUNCE;
+ self.move_touch = func_null;
+ self.scale = 1.5;
+ self.avelocity = randomvec() * 720;
+
+ if(Nade_IDFromProjectile(self.cnt) == NADE_TYPE_TRANSLOCATE)
+ self.solid = SOLID_TRIGGER;
+ }
+
+ setsize(self, self.mins, self.maxs);
+ }
+
+ if(self.gravity)
+ {
+ if(self.move_movetype == MOVETYPE_FLY)
+ self.move_movetype = MOVETYPE_TOSS;
+ if(self.move_movetype == MOVETYPE_BOUNCEMISSILE)
+ self.move_movetype = MOVETYPE_BOUNCE;
+ }
+ else
+ {
+ if(self.move_movetype == MOVETYPE_TOSS)
+ self.move_movetype = MOVETYPE_FLY;
+ if(self.move_movetype == MOVETYPE_BOUNCE)
+ self.move_movetype = MOVETYPE_BOUNCEMISSILE;
+ }
+
+ if(!(self.count & 0x80))
+ InterpolateOrigin_Note();
+
+ self.draw = Projectile_Draw;
+ self.entremove = Ent_RemoveProjectile;
+ }
+
+ void Projectile_Precache()
+ {
+ precache_model("models/ebomb.mdl");
+ precache_model("models/elaser.mdl");
+ precache_model("models/grenademodel.md3");
+ precache_model("models/mine.md3");
+ precache_model("models/hagarmissile.mdl");
+ precache_model("models/hlac_bullet.md3");
+ precache_model("models/laser.mdl");
+ precache_model("models/plasmatrail.mdl");
+ precache_model("models/rocket.md3");
+ precache_model("models/tagrocket.md3");
+ precache_model("models/tracer.mdl");
+ precache_model("models/sphere/sphere.md3");
+
+ precache_model("models/weapons/v_ok_grenade.md3");
++ precache_model("models/weapons/ok_rocket.md3");
+
+ precache_sound("weapons/electro_fly.wav");
+ precache_sound("weapons/rocket_fly.wav");
+ precache_sound("weapons/fireball_fly.wav");
+ precache_sound("weapons/fireball_fly2.wav");
+ precache_sound("weapons/tag_rocket_fly.wav");
+
+ }
const float PROJECTILE_MAGE_SPIKE = 32;
const float PROJECTILE_SHAMBLER_LIGHTNING = 33;
- const float PROJECTILE_NADE_RED = 50;
- const float PROJECTILE_NADE_RED_BURN = 51;
- const float PROJECTILE_NADE_BLUE = 52;
- const float PROJECTILE_NADE_BLUE_BURN = 53;
- const float PROJECTILE_NADE_YELLOW = 54;
- const float PROJECTILE_NADE_YELLOW_BURN = 55;
- const float PROJECTILE_NADE_PINK = 56;
- const float PROJECTILE_NADE_PINK_BURN = 57;
- const float PROJECTILE_NADE = 58;
- const float PROJECTILE_NADE_BURN = 59;
-
+const float PROJECTILE_RPC = 60;
+
const float SPECIES_HUMAN = 0;
const float SPECIES_ROBOT_SOLID = 1;
const float SPECIES_ALIEN = 2;
#define NOTIF_ABORT -1234 // allows Send_Notification to safely abort sending
#define EIGHT_VARS_TO_VARARGS_VARLIST \
-- VARITEM(1, 0, s1) \
-- VARITEM(2, 0, XPD(s1, s2)) \
-- VARITEM(3, 0, XPD(s1, s2, s3)) \
-- VARITEM(4, 0, XPD(s1, s2, s3, s4)) \
-- VARITEM(0, 1, f1) \
-- VARITEM(1, 1, XPD(s1, f1)) \
-- VARITEM(2, 1, XPD(s1, s2, f1)) \
-- VARITEM(3, 1, XPD(s1, s2, s3, f1)) \
-- VARITEM(4, 1, XPD(s1, s2, s3, s4, f1)) \
-- VARITEM(0, 2, XPD(f1, f2)) \
-- VARITEM(1, 2, XPD(s1, f1, f2)) \
-- VARITEM(2, 2, XPD(s1, s2, f1, f2)) \
-- VARITEM(3, 2, XPD(s1, s2, s3, f1, f2)) \
-- VARITEM(4, 2, XPD(s1, s2, s3, s4, f1, f2)) \
-- VARITEM(0, 3, XPD(f1, f2, f3)) \
-- VARITEM(1, 3, XPD(s1, f1, f2, f3)) \
-- VARITEM(2, 3, XPD(s1, s2, f1, f2, f3)) \
-- VARITEM(3, 3, XPD(s1, s2, s3, f1, f2, f3)) \
-- VARITEM(4, 3, XPD(s1, s2, s3, s4, f1, f2, f3)) \
-- VARITEM(0, 4, XPD(f1, f2, f3, f4)) \
-- VARITEM(1, 4, XPD(s1, f1, f2, f3, f4)) \
-- VARITEM(2, 4, XPD(s1, s2, f1, f2, f3, f4)) \
-- VARITEM(3, 4, XPD(s1, s2, s3, f1, f2, f3, f4)) \
-- VARITEM(4, 4, XPD(s1, s2, s3, s4, f1, f2, f3, f4))
++ VARITEM(1, 0, s1) \
++ VARITEM(2, 0, XPD(s1, s2)) \
++ VARITEM(3, 0, XPD(s1, s2, s3)) \
++ VARITEM(4, 0, XPD(s1, s2, s3, s4)) \
++ VARITEM(0, 1, f1) \
++ VARITEM(1, 1, XPD(s1, f1)) \
++ VARITEM(2, 1, XPD(s1, s2, f1)) \
++ VARITEM(3, 1, XPD(s1, s2, s3, f1)) \
++ VARITEM(4, 1, XPD(s1, s2, s3, s4, f1)) \
++ VARITEM(0, 2, XPD(f1, f2)) \
++ VARITEM(1, 2, XPD(s1, f1, f2)) \
++ VARITEM(2, 2, XPD(s1, s2, f1, f2)) \
++ VARITEM(3, 2, XPD(s1, s2, s3, f1, f2)) \
++ VARITEM(4, 2, XPD(s1, s2, s3, s4, f1, f2)) \
++ VARITEM(0, 3, XPD(f1, f2, f3)) \
++ VARITEM(1, 3, XPD(s1, f1, f2, f3)) \
++ VARITEM(2, 3, XPD(s1, s2, f1, f2, f3)) \
++ VARITEM(3, 3, XPD(s1, s2, s3, f1, f2, f3)) \
++ VARITEM(4, 3, XPD(s1, s2, s3, s4, f1, f2, f3)) \
++ VARITEM(0, 4, XPD(f1, f2, f3, f4)) \
++ VARITEM(1, 4, XPD(s1, f1, f2, f3, f4)) \
++ VARITEM(2, 4, XPD(s1, s2, f1, f2, f3, f4)) \
++ VARITEM(3, 4, XPD(s1, s2, s3, f1, f2, f3, f4)) \
++ VARITEM(4, 4, XPD(s1, s2, s3, s4, f1, f2, f3, f4))
void Destroy_All_Notifications(void);
void Create_Notification_Entity(
-- float var_default,
-- float var_cvar,
-- float typeid,
-- float nameid,
-- string namestring,
-- float strnum,
-- float flnum,
-- /* MSG_ANNCE */
-- float channel,
-- string snd,
-- float vol,
-- float position,
-- /* MSG_INFO & MSG_CENTER */
-- string args,
-- string hudargs,
-- string icon,
-- float cpid,
-- string durcnt,
-- string normal,
-- string gentle,
-- /* MSG_MULTI */
-- float anncename,
-- float infoname,
-- float centername,
-- /* MSG_CHOICE */
-- float challow_def,
-- float challow_var,
-- float chtype,
-- float optiona,
-- float optionb);
++ float var_default,
++ float var_cvar,
++ float typeid,
++ float nameid,
++ string namestring,
++ float strnum,
++ float flnum,
++ /* MSG_ANNCE */
++ float channel,
++ string snd,
++ float vol,
++ float position,
++ /* MSG_INFO & MSG_CENTER */
++ string args,
++ string hudargs,
++ string icon,
++ float cpid,
++ string durcnt,
++ string normal,
++ string gentle,
++ /* MSG_MULTI */
++ float anncename,
++ float infoname,
++ float centername,
++ /* MSG_CHOICE */
++ float challow_def,
++ float challow_var,
++ float chtype,
++ float optiona,
++ float optionb);
void Dump_Notifications(float fh, float alsoprint);
void Local_Notification(float net_type, float net_name, ...count);
void Local_Notification_WOVA(
-- float net_type, float net_name,
-- float stringcount, float floatcount,
-- string s1, string s2, string s3, string s4,
-- float f1, float f2, float f3, float f4);
++ float net_type, float net_name,
++ float stringcount, float floatcount,
++ string s1, string s2, string s3, string s4,
++ float f1, float f2, float f3, float f4);
#ifdef CSQC // CLIENT ONLY
void Read_Notification(float is_new);
#define NOTIF_ALL_EXCEPT 6
void Kill_Notification(
-- float broadcast, entity client,
-- float net_type, float net_name);
++ float broadcast, entity client,
++ float net_type, float net_name);
void Send_Notification(
-- float broadcast, entity client,
-- float net_type, float net_name,
-- ...count);
++ float broadcast, entity client,
++ float net_type, float net_name,
++ ...count);
void Send_Notification_WOVA(
-- float broadcast, entity client,
-- float net_type, float net_name,
-- float stringcount, float floatcount,
-- string s1, string s2, string s3, string s4,
-- float f1, float f2, float f3, float f4);
++ float broadcast, entity client,
++ float net_type, float net_name,
++ float stringcount, float floatcount,
++ string s1, string s2, string s3, string s4,
++ float f1, float f2, float f3, float f4);
void Send_Notification_WOCOVA(
-- float broadcast, entity client,
-- float net_type, float net_name,
-- string s1, string s2, string s3, string s4,
-- float f1, float f2, float f3, float f4);
++ float broadcast, entity client,
++ float net_type, float net_name,
++ string s1, string s2, string s3, string s4,
++ float f1, float f2, float f3, float f4);
#endif
*/
#define MULTITEAM_ANNCE2(default,prefix,channel,sound,volume,position) \
-- MSG_ANNCE_NOTIF(default, prefix##RED, channel, sprintf(sound, strtolower(STATIC_NAME_TEAM_1)), volume, position) \
-- MSG_ANNCE_NOTIF(default, prefix##BLUE, channel, sprintf(sound, strtolower(STATIC_NAME_TEAM_2)), volume, position)
++ MSG_ANNCE_NOTIF(default, prefix##RED, channel, sprintf(sound, strtolower(STATIC_NAME_TEAM_1)), volume, position) \
++ MSG_ANNCE_NOTIF(default, prefix##BLUE, channel, sprintf(sound, strtolower(STATIC_NAME_TEAM_2)), volume, position)
#define MULTITEAM_ANNCE3(default,prefix,channel,sound,volume,position) \
-- MSG_ANNCE_NOTIF(default, prefix##RED, channel, sprintf(sound, strtolower(STATIC_NAME_TEAM_1)), volume, position) \
-- MSG_ANNCE_NOTIF(default, prefix##BLUE, channel, sprintf(sound, strtolower(STATIC_NAME_TEAM_2)), volume, position) \
-- MSG_ANNCE_NOTIF(default, prefix##YELLOW, channel, sprintf(sound, strtolower(STATIC_NAME_TEAM_3)), volume, position)
++ MSG_ANNCE_NOTIF(default, prefix##RED, channel, sprintf(sound, strtolower(STATIC_NAME_TEAM_1)), volume, position) \
++ MSG_ANNCE_NOTIF(default, prefix##BLUE, channel, sprintf(sound, strtolower(STATIC_NAME_TEAM_2)), volume, position) \
++ MSG_ANNCE_NOTIF(default, prefix##YELLOW, channel, sprintf(sound, strtolower(STATIC_NAME_TEAM_3)), volume, position)
#define MULTITEAM_ANNCE4(default,prefix,channel,sound,volume,position) \
-- MSG_ANNCE_NOTIF(default, prefix##RED, channel, sprintf(sound, strtolower(STATIC_NAME_TEAM_1)), volume, position) \
-- MSG_ANNCE_NOTIF(default, prefix##BLUE, channel, sprintf(sound, strtolower(STATIC_NAME_TEAM_2)), volume, position) \
-- MSG_ANNCE_NOTIF(default, prefix##YELLOW, channel, sprintf(sound, strtolower(STATIC_NAME_TEAM_3)), volume, position) \
-- MSG_ANNCE_NOTIF(default, prefix##PINK, channel, sprintf(sound, strtolower(STATIC_NAME_TEAM_4)), volume, position)
++ MSG_ANNCE_NOTIF(default, prefix##RED, channel, sprintf(sound, strtolower(STATIC_NAME_TEAM_1)), volume, position) \
++ MSG_ANNCE_NOTIF(default, prefix##BLUE, channel, sprintf(sound, strtolower(STATIC_NAME_TEAM_2)), volume, position) \
++ MSG_ANNCE_NOTIF(default, prefix##YELLOW, channel, sprintf(sound, strtolower(STATIC_NAME_TEAM_3)), volume, position) \
++ MSG_ANNCE_NOTIF(default, prefix##PINK, channel, sprintf(sound, strtolower(STATIC_NAME_TEAM_4)), volume, position)
#define MULTITEAM_ANNCE(default,prefix,teams,channel,sound,volume,position) \
-- MULTITEAM_ANNCE##teams(default,prefix,channel,sound,volume,position)
++ MULTITEAM_ANNCE##teams(default,prefix,channel,sound,volume,position)
#define MSG_ANNCE_NOTIFICATIONS \
-- MSG_ANNCE_NOTIF(1, ANNCE_ACHIEVEMENT_AIRSHOT, CH_INFO, "airshot", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(1, ANNCE_ACHIEVEMENT_AMAZING, CH_INFO, "amazing", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(1, ANNCE_ACHIEVEMENT_AWESOME, CH_INFO, "awesome", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(1, ANNCE_ACHIEVEMENT_BOTLIKE, CH_INFO, "botlike", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_ACHIEVEMENT_ELECTROBITCH, CH_INFO, "electrobitch", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(1, ANNCE_ACHIEVEMENT_IMPRESSIVE, CH_INFO, "impressive", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(1, ANNCE_ACHIEVEMENT_YODA, CH_INFO, "yoda", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_BEGIN, CH_INFO, "begin", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(1, ANNCE_KILLSTREAK_03, CH_INFO, "03kills", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(1, ANNCE_KILLSTREAK_05, CH_INFO, "05kills", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(1, ANNCE_KILLSTREAK_10, CH_INFO, "10kills", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(1, ANNCE_KILLSTREAK_15, CH_INFO, "15kills", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(1, ANNCE_KILLSTREAK_20, CH_INFO, "20kills", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(1, ANNCE_KILLSTREAK_25, CH_INFO, "25kills", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(1, ANNCE_KILLSTREAK_30, CH_INFO, "30kills", VOL_BASEVOICE, ATTEN_NONE) \
- MSG_ANNCE_NOTIF(1, ANNCE_MINSTAGIB_LASTSECOND, CH_INFO, "lastsecond", VOL_BASEVOICE, ATTEN_NONE) \
- MSG_ANNCE_NOTIF(1, ANNCE_MINSTAGIB_NARROWLY, CH_INFO, "narrowly", VOL_BASEVOICE, ATTEN_NONE) \
- MSG_ANNCE_NOTIF(1, ANNCE_MINSTAGIB_TERMINATED, CH_INFO, "terminated", VOL_BASEVOICE, ATTEN_NONE) \
- MSG_ANNCE_NOTIF(1, ANNCE_INSTAGIB_LASTSECOND, CH_INFO, "lastsecond", VOL_BASEVOICE, ATTEN_NONE) \
- MSG_ANNCE_NOTIF(1, ANNCE_INSTAGIB_NARROWLY, CH_INFO, "narrowly", VOL_BASEVOICE, ATTEN_NONE) \
- MSG_ANNCE_NOTIF(1, ANNCE_INSTAGIB_TERMINATED, CH_INFO, "terminated", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_MULTIFRAG, CH_INFO, "multifrag", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_NUM_1, CH_INFO, "1", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_NUM_2, CH_INFO, "2", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_NUM_3, CH_INFO, "3", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_NUM_4, CH_INFO, "4", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_NUM_5, CH_INFO, "5", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_NUM_6, CH_INFO, "6", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_NUM_7, CH_INFO, "7", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_NUM_8, CH_INFO, "8", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_NUM_9, CH_INFO, "9", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_NUM_10, CH_INFO, "10", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_NUM_GAMESTART_1, CH_INFO, "1", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_NUM_GAMESTART_2, CH_INFO, "2", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_NUM_GAMESTART_3, CH_INFO, "3", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_NUM_GAMESTART_4, CH_INFO, "4", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_NUM_GAMESTART_5, CH_INFO, "5", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_GAMESTART_6, CH_INFO, "6", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_GAMESTART_7, CH_INFO, "7", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_GAMESTART_8, CH_INFO, "8", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_GAMESTART_9, CH_INFO, "9", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_GAMESTART_10, CH_INFO, "10", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_IDLE_1, CH_INFO, "1", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_IDLE_2, CH_INFO, "2", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_IDLE_3, CH_INFO, "3", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_IDLE_4, CH_INFO, "4", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_IDLE_5, CH_INFO, "5", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_IDLE_6, CH_INFO, "6", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_IDLE_7, CH_INFO, "7", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_IDLE_8, CH_INFO, "8", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_IDLE_9, CH_INFO, "9", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_IDLE_10, CH_INFO, "10", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_KILL_1, CH_INFO, "1", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_KILL_2, CH_INFO, "2", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_KILL_3, CH_INFO, "3", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_KILL_4, CH_INFO, "4", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_KILL_5, CH_INFO, "5", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_KILL_6, CH_INFO, "6", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_KILL_7, CH_INFO, "7", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_KILL_8, CH_INFO, "8", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_KILL_9, CH_INFO, "9", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_KILL_10, CH_INFO, "10", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_RESPAWN_1, CH_INFO, "1", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_RESPAWN_2, CH_INFO, "2", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_RESPAWN_3, CH_INFO, "3", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_RESPAWN_4, CH_INFO, "4", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_RESPAWN_5, CH_INFO, "5", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_RESPAWN_6, CH_INFO, "6", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_RESPAWN_7, CH_INFO, "7", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_RESPAWN_8, CH_INFO, "8", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_RESPAWN_9, CH_INFO, "9", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_RESPAWN_10, CH_INFO, "10", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_NUM_ROUNDSTART_1, CH_INFO, "1", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_NUM_ROUNDSTART_2, CH_INFO, "2", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_NUM_ROUNDSTART_3, CH_INFO, "3", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_ROUNDSTART_4, CH_INFO, "4", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_ROUNDSTART_5, CH_INFO, "5", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_ROUNDSTART_6, CH_INFO, "6", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_ROUNDSTART_7, CH_INFO, "7", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_ROUNDSTART_8, CH_INFO, "8", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_ROUNDSTART_9, CH_INFO, "9", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(0, ANNCE_NUM_ROUNDSTART_10, CH_INFO, "10", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_PREPARE, CH_INFO, "prepareforbattle", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(1, ANNCE_REMAINING_FRAG_1, CH_INFO, "1fragleft", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(1, ANNCE_REMAINING_FRAG_2, CH_INFO, "2fragsleft", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(1, ANNCE_REMAINING_FRAG_3, CH_INFO, "3fragsleft", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_REMAINING_MIN_1, CH_INFO, "1minuteremains", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_REMAINING_MIN_5, CH_INFO, "5minutesremain", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_TIMEOUT, CH_INFO, "timeoutcalled", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_VOTE_ACCEPT, CH_INFO, "voteaccept", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_VOTE_CALL, CH_INFO, "votecall", VOL_BASEVOICE, ATTEN_NONE) \
-- MSG_ANNCE_NOTIF(2, ANNCE_VOTE_FAIL, CH_INFO, "votefail", VOL_BASEVOICE, ATTEN_NONE)
++ MSG_ANNCE_NOTIF(1, ANNCE_ACHIEVEMENT_AIRSHOT, CH_INFO, "airshot", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(1, ANNCE_ACHIEVEMENT_AMAZING, CH_INFO, "amazing", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(1, ANNCE_ACHIEVEMENT_AWESOME, CH_INFO, "awesome", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(1, ANNCE_ACHIEVEMENT_BOTLIKE, CH_INFO, "botlike", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_ACHIEVEMENT_ELECTROBITCH, CH_INFO, "electrobitch", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(1, ANNCE_ACHIEVEMENT_IMPRESSIVE, CH_INFO, "impressive", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(1, ANNCE_ACHIEVEMENT_YODA, CH_INFO, "yoda", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_BEGIN, CH_INFO, "begin", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(1, ANNCE_KILLSTREAK_03, CH_INFO, "03kills", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(1, ANNCE_KILLSTREAK_05, CH_INFO, "05kills", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(1, ANNCE_KILLSTREAK_10, CH_INFO, "10kills", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(1, ANNCE_KILLSTREAK_15, CH_INFO, "15kills", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(1, ANNCE_KILLSTREAK_20, CH_INFO, "20kills", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(1, ANNCE_KILLSTREAK_25, CH_INFO, "25kills", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(1, ANNCE_KILLSTREAK_30, CH_INFO, "30kills", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(1, ANNCE_INSTAGIB_LASTSECOND, CH_INFO, "lastsecond", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(1, ANNCE_INSTAGIB_NARROWLY, CH_INFO, "narrowly", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(1, ANNCE_INSTAGIB_TERMINATED, CH_INFO, "terminated", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_MULTIFRAG, CH_INFO, "multifrag", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_NUM_1, CH_INFO, "1", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_NUM_2, CH_INFO, "2", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_NUM_3, CH_INFO, "3", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_NUM_4, CH_INFO, "4", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_NUM_5, CH_INFO, "5", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_NUM_6, CH_INFO, "6", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_NUM_7, CH_INFO, "7", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_NUM_8, CH_INFO, "8", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_NUM_9, CH_INFO, "9", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_NUM_10, CH_INFO, "10", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_NUM_GAMESTART_1, CH_INFO, "1", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_NUM_GAMESTART_2, CH_INFO, "2", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_NUM_GAMESTART_3, CH_INFO, "3", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_NUM_GAMESTART_4, CH_INFO, "4", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_NUM_GAMESTART_5, CH_INFO, "5", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_GAMESTART_6, CH_INFO, "6", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_GAMESTART_7, CH_INFO, "7", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_GAMESTART_8, CH_INFO, "8", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_GAMESTART_9, CH_INFO, "9", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_GAMESTART_10, CH_INFO, "10", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_IDLE_1, CH_INFO, "1", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_IDLE_2, CH_INFO, "2", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_IDLE_3, CH_INFO, "3", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_IDLE_4, CH_INFO, "4", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_IDLE_5, CH_INFO, "5", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_IDLE_6, CH_INFO, "6", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_IDLE_7, CH_INFO, "7", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_IDLE_8, CH_INFO, "8", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_IDLE_9, CH_INFO, "9", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_IDLE_10, CH_INFO, "10", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_KILL_1, CH_INFO, "1", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_KILL_2, CH_INFO, "2", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_KILL_3, CH_INFO, "3", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_KILL_4, CH_INFO, "4", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_KILL_5, CH_INFO, "5", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_KILL_6, CH_INFO, "6", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_KILL_7, CH_INFO, "7", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_KILL_8, CH_INFO, "8", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_KILL_9, CH_INFO, "9", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_KILL_10, CH_INFO, "10", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_RESPAWN_1, CH_INFO, "1", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_RESPAWN_2, CH_INFO, "2", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_RESPAWN_3, CH_INFO, "3", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_RESPAWN_4, CH_INFO, "4", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_RESPAWN_5, CH_INFO, "5", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_RESPAWN_6, CH_INFO, "6", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_RESPAWN_7, CH_INFO, "7", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_RESPAWN_8, CH_INFO, "8", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_RESPAWN_9, CH_INFO, "9", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_RESPAWN_10, CH_INFO, "10", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_NUM_ROUNDSTART_1, CH_INFO, "1", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_NUM_ROUNDSTART_2, CH_INFO, "2", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_NUM_ROUNDSTART_3, CH_INFO, "3", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_ROUNDSTART_4, CH_INFO, "4", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_ROUNDSTART_5, CH_INFO, "5", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_ROUNDSTART_6, CH_INFO, "6", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_ROUNDSTART_7, CH_INFO, "7", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_ROUNDSTART_8, CH_INFO, "8", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_ROUNDSTART_9, CH_INFO, "9", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(0, ANNCE_NUM_ROUNDSTART_10, CH_INFO, "10", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_PREPARE, CH_INFO, "prepareforbattle", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(1, ANNCE_REMAINING_FRAG_1, CH_INFO, "1fragleft", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(1, ANNCE_REMAINING_FRAG_2, CH_INFO, "2fragsleft", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(1, ANNCE_REMAINING_FRAG_3, CH_INFO, "3fragsleft", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_REMAINING_MIN_1, CH_INFO, "1minuteremains", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_REMAINING_MIN_5, CH_INFO, "5minutesremain", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_TIMEOUT, CH_INFO, "timeoutcalled", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_VOTE_ACCEPT, CH_INFO, "voteaccept", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_VOTE_CALL, CH_INFO, "votecall", VOL_BASEVOICE, ATTEN_NONE) \
++ MSG_ANNCE_NOTIF(2, ANNCE_VOTE_FAIL, CH_INFO, "votefail", VOL_BASEVOICE, ATTEN_NONE)
#define MULTITEAM_INFO2(default,prefix,strnum,flnum,args,hudargs,icon,normal,gentle) \
-- MSG_INFO_NOTIF(default, prefix##RED, strnum, flnum, args, hudargs, sprintf(icon, strtolower(STATIC_NAME_TEAM_1)), TCR(normal, COL_TEAM_1, strtoupper(NAME_TEAM_1)), TCR(gentle, COL_TEAM_1, strtoupper(NAME_TEAM_1))) \
-- MSG_INFO_NOTIF(default, prefix##BLUE, strnum, flnum, args, hudargs, sprintf(icon, strtolower(STATIC_NAME_TEAM_2)), TCR(normal, COL_TEAM_2, strtoupper(NAME_TEAM_2)), TCR(gentle, COL_TEAM_2, strtoupper(NAME_TEAM_2)))
++ MSG_INFO_NOTIF(default, prefix##RED, strnum, flnum, args, hudargs, sprintf(icon, strtolower(STATIC_NAME_TEAM_1)), TCR(normal, COL_TEAM_1, strtoupper(NAME_TEAM_1)), TCR(gentle, COL_TEAM_1, strtoupper(NAME_TEAM_1))) \
++ MSG_INFO_NOTIF(default, prefix##BLUE, strnum, flnum, args, hudargs, sprintf(icon, strtolower(STATIC_NAME_TEAM_2)), TCR(normal, COL_TEAM_2, strtoupper(NAME_TEAM_2)), TCR(gentle, COL_TEAM_2, strtoupper(NAME_TEAM_2)))
#define MULTITEAM_INFO3(default,prefix,strnum,flnum,args,hudargs,icon,normal,gentle) \
-- MSG_INFO_NOTIF(default, prefix##RED, strnum, flnum, args, hudargs, sprintf(icon, strtolower(STATIC_NAME_TEAM_1)), TCR(normal, COL_TEAM_1, strtoupper(NAME_TEAM_1)), TCR(gentle, COL_TEAM_1, strtoupper(NAME_TEAM_1))) \
-- MSG_INFO_NOTIF(default, prefix##BLUE, strnum, flnum, args, hudargs, sprintf(icon, strtolower(STATIC_NAME_TEAM_2)), TCR(normal, COL_TEAM_2, strtoupper(NAME_TEAM_2)), TCR(gentle, COL_TEAM_2, strtoupper(NAME_TEAM_2))) \
-- MSG_INFO_NOTIF(default, prefix##YELLOW, strnum, flnum, args, hudargs, sprintf(icon, strtolower(STATIC_NAME_TEAM_3)), TCR(normal, COL_TEAM_3, strtoupper(NAME_TEAM_3)), TCR(gentle, COL_TEAM_3, strtoupper(NAME_TEAM_3)))
++ MSG_INFO_NOTIF(default, prefix##RED, strnum, flnum, args, hudargs, sprintf(icon, strtolower(STATIC_NAME_TEAM_1)), TCR(normal, COL_TEAM_1, strtoupper(NAME_TEAM_1)), TCR(gentle, COL_TEAM_1, strtoupper(NAME_TEAM_1))) \
++ MSG_INFO_NOTIF(default, prefix##BLUE, strnum, flnum, args, hudargs, sprintf(icon, strtolower(STATIC_NAME_TEAM_2)), TCR(normal, COL_TEAM_2, strtoupper(NAME_TEAM_2)), TCR(gentle, COL_TEAM_2, strtoupper(NAME_TEAM_2))) \
++ MSG_INFO_NOTIF(default, prefix##YELLOW, strnum, flnum, args, hudargs, sprintf(icon, strtolower(STATIC_NAME_TEAM_3)), TCR(normal, COL_TEAM_3, strtoupper(NAME_TEAM_3)), TCR(gentle, COL_TEAM_3, strtoupper(NAME_TEAM_3)))
#define MULTITEAM_INFO4(default,prefix,strnum,flnum,args,hudargs,icon,normal,gentle) \
-- MSG_INFO_NOTIF(default, prefix##RED, strnum, flnum, args, hudargs, sprintf(icon, strtolower(STATIC_NAME_TEAM_1)), TCR(normal, COL_TEAM_1, strtoupper(NAME_TEAM_1)), TCR(gentle, COL_TEAM_1, strtoupper(NAME_TEAM_1))) \
-- MSG_INFO_NOTIF(default, prefix##BLUE, strnum, flnum, args, hudargs, sprintf(icon, strtolower(STATIC_NAME_TEAM_2)), TCR(normal, COL_TEAM_2, strtoupper(NAME_TEAM_2)), TCR(gentle, COL_TEAM_2, strtoupper(NAME_TEAM_2))) \
-- MSG_INFO_NOTIF(default, prefix##YELLOW, strnum, flnum, args, hudargs, sprintf(icon, strtolower(STATIC_NAME_TEAM_3)), TCR(normal, COL_TEAM_3, strtoupper(NAME_TEAM_3)), TCR(gentle, COL_TEAM_3, strtoupper(NAME_TEAM_3))) \
-- MSG_INFO_NOTIF(default, prefix##PINK, strnum, flnum, args, hudargs, sprintf(icon, strtolower(STATIC_NAME_TEAM_4)), TCR(normal, COL_TEAM_4, strtoupper(NAME_TEAM_4)), TCR(gentle, COL_TEAM_4, strtoupper(NAME_TEAM_4)))
++ MSG_INFO_NOTIF(default, prefix##RED, strnum, flnum, args, hudargs, sprintf(icon, strtolower(STATIC_NAME_TEAM_1)), TCR(normal, COL_TEAM_1, strtoupper(NAME_TEAM_1)), TCR(gentle, COL_TEAM_1, strtoupper(NAME_TEAM_1))) \
++ MSG_INFO_NOTIF(default, prefix##BLUE, strnum, flnum, args, hudargs, sprintf(icon, strtolower(STATIC_NAME_TEAM_2)), TCR(normal, COL_TEAM_2, strtoupper(NAME_TEAM_2)), TCR(gentle, COL_TEAM_2, strtoupper(NAME_TEAM_2))) \
++ MSG_INFO_NOTIF(default, prefix##YELLOW, strnum, flnum, args, hudargs, sprintf(icon, strtolower(STATIC_NAME_TEAM_3)), TCR(normal, COL_TEAM_3, strtoupper(NAME_TEAM_3)), TCR(gentle, COL_TEAM_3, strtoupper(NAME_TEAM_3))) \
++ MSG_INFO_NOTIF(default, prefix##PINK, strnum, flnum, args, hudargs, sprintf(icon, strtolower(STATIC_NAME_TEAM_4)), TCR(normal, COL_TEAM_4, strtoupper(NAME_TEAM_4)), TCR(gentle, COL_TEAM_4, strtoupper(NAME_TEAM_4)))
#define MULTITEAM_INFO(default,prefix,teams,strnum,flnum,args,hudargs,icon,normal,gentle) \
-- MULTITEAM_INFO##teams(default,prefix,strnum,flnum,args,hudargs,icon,normal,gentle)
++ MULTITEAM_INFO##teams(default,prefix,strnum,flnum,args,hudargs,icon,normal,gentle)
#define MSG_INFO_NOTIFICATIONS \
-- MSG_INFO_NOTIF(2, INFO_CHAT_NOSPECTATORS, 0, 0, "", "", "", _("^F4NOTE: ^BGSpectator chat is not sent to players during the match"), "") \
-- MULTITEAM_INFO(1, INFO_CTF_CAPTURE_, 2, 1, 0, "s1", "s1", "notify_%s_captured", _("^BG%s^BG captured the ^TC^TT^BG flag"), "") \
-- MULTITEAM_INFO(1, INFO_CTF_CAPTURE_BROKEN_, 2, 2, 2, "s1 f1p2dec s2 f2p2dec", "s1", "notify_%s_captured", _("^BG%s^BG captured the ^TC^TT^BG flag in ^F1%s^BG seconds, breaking ^BG%s^BG's previous record of ^F2%s^BG seconds"), "") \
-- MULTITEAM_INFO(1, INFO_CTF_CAPTURE_TIME_, 2, 1, 1, "s1 f1p2dec", "s1", "notify_%s_captured", _("^BG%s^BG captured the ^TC^TT^BG flag in ^F1%s^BG seconds"), "") \
-- MULTITEAM_INFO(1, INFO_CTF_CAPTURE_UNBROKEN_, 2, 2, 2, "s1 f1p2dec s2 f2p2dec", "s1", "notify_%s_captured", _("^BG%s^BG captured the ^TC^TT^BG flag in ^F2%s^BG seconds, failing to break ^BG%s^BG's previous record of ^F1%s^BG seconds"), "") \
-- MULTITEAM_INFO(1, INFO_CTF_FLAGRETURN_ABORTRUN_, 2, 0, 0, "", "", "", _("^BGThe ^TC^TT^BG flag was returned to base by its owner"), "") \
-- MULTITEAM_INFO(1, INFO_CTF_FLAGRETURN_DAMAGED_, 2, 0, 0, "", "", "", _("^BGThe ^TC^TT^BG flag was destroyed and returned to base"), "") \
-- MULTITEAM_INFO(1, INFO_CTF_FLAGRETURN_DROPPED_, 2, 0, 0, "", "", "", _("^BGThe ^TC^TT^BG flag was dropped in the base and returned itself"), "") \
-- MULTITEAM_INFO(1, INFO_CTF_FLAGRETURN_NEEDKILL_, 2, 0, 0, "", "", "", _("^BGThe ^TC^TT^BG flag fell somewhere it couldn't be reached and returned to base"), "") \
-- MULTITEAM_INFO(1, INFO_CTF_FLAGRETURN_SPEEDRUN_, 2, 0, 1, "f1p2dec", "", "", _("^BGThe ^TC^TT^BG flag became impatient after ^F1%.2f^BG seconds and returned itself"), "") \
-- MULTITEAM_INFO(1, INFO_CTF_FLAGRETURN_TIMEOUT_, 2, 0, 0, "", "", "", _("^BGThe ^TC^TT^BG flag has returned to the base"), "") \
-- MULTITEAM_INFO(1, INFO_CTF_LOST_, 2, 1, 0, "s1", "s1", "notify_%s_lost", _("^BG%s^BG lost the ^TC^TT^BG flag"), "") \
-- MULTITEAM_INFO(1, INFO_CTF_PICKUP_, 2, 1, 0, "s1", "s1", "notify_%s_taken", _("^BG%s^BG got the ^TC^TT^BG flag"), "") \
-- MULTITEAM_INFO(1, INFO_CTF_RETURN_, 2, 1, 0, "s1", "s1", "notify_%s_returned", _("^BG%s^BG returned the ^TC^TT^BG flag"), "") \
-- MULTITEAM_INFO(1, INFO_CTF_RETURN_MONSTER_, 2, 1, 0, "s1", "s1", "notify_%s_returned", _("^BG%s^BG returned the ^TC^TT^BG flag"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_CHEAT, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 was unfairly eliminated by ^BG%s^K1%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_DROWN, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_water", _("^BG%s%s^K1 was drowned by ^BG%s^K1%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_FALL, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_fall", _("^BG%s%s^K1 was grounded by ^BG%s^K1%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_FIRE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 was burnt up into a crisp by ^BG%s^K1%s%s"), _("^BG%s%s^K1 felt a little hot from ^BG%s^K1's fire^K1%s%s")) \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_LAVA, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_lava", _("^BG%s%s^K1 was cooked by ^BG%s^K1%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_MONSTER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 was pushed infront of a monster by ^BG%s^K1%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_NADE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 was blown up by ^BG%s^K1's Nade%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_NADE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_nade", _("^BG%s%s^K1 was blown up by ^BG%s^K1's Nade%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_NADE_NAPALM, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_nade_napalm", _("^BG%s%s^K1 was burned to death by ^BG%s^K1's Napalm Nade%s%s"), _("^BG%s%s^K1 got too close to a napalm explosion%s%s")) \
- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_NADE_ICE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_nade_ice", _("^BG%s%s^K1 was blown up by ^BG%s^K1's Ice Nade%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_NADE_ICE_FREEZE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_nade_ice", _("^BG%s%s^K1 was frozen to death by ^BG%s^K1's Ice Nade%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_NADE_HEAL, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_nade_heal", _("^BG%s%s^K1 has not been healed by ^BG%s^K1's Healing Nade%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_SHOOTING_STAR, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_shootingstar", _("^BG%s%s^K1 was shot into space by ^BG%s^K1%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_SLIME, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_slime", _("^BG%s%s^K1 was slimed by ^BG%s^K1%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_SWAMP, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_slime", _("^BG%s%s^K1 was preserved by ^BG%s^K1%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_TELEFRAG, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_telefrag", _("^BG%s%s^K1 was telefragged by ^BG%s^K1%s%s"), _("^BG%s%s^K1 tried to occupy ^BG%s^K1's teleport destination space%s%s")) \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_TOUCHEXPLODE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 died in an accident with ^BG%s^K1%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_BUMB_DEATH, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 got caught in the blast when ^BG%s^K1's Bumblebee exploded%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_BUMB_GUN, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 saw the pretty lights of ^BG%s^K1's Bumblebee gun%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_CRUSH, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 was crushed by ^BG%s^K1%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_RAPT_BOMB, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 was cluster bombed by ^BG%s^K1's Raptor%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_RAPT_CANNON, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 couldn't resist ^BG%s^K1's purple blobs%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_RAPT_DEATH, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 got caught in the blast when ^BG%s^K1's Raptor exploded%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_SPID_DEATH, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 got caught in the blast when ^BG%s^K1's Spiderbot exploded%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_SPID_MINIGUN, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 got shredded by ^BG%s^K1's Spiderbot%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_SPID_ROCKET, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 was blasted to bits by ^BG%s^K1's Spiderbot%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_WAKI_DEATH, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 got caught in the blast when ^BG%s^K1's Racer exploded%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_WAKI_GUN, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 was bolted down by ^BG%s^K1's Racer%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_WAKI_ROCKET, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 couldn't find shelter from ^BG%s^K1's Racer%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VENGEANCE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 was destroyed by the vengeful ^BG%s^K1%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VOID, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_void", _("^BG%s%s^K1 was thrown into a world of hurt by ^BG%s^K1%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_AUTOTEAMCHANGE, 2, 1, "s1 s2loc death_team", "", "", _("^BG%s^K1 was moved into the %s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_BETRAYAL, 2, 1, "s1 s2loc spree_lost", "s1", "notify_teamkill_red", _("^BG%s^K1 became enemies with the Lord of Teamplay%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_CAMP, 2, 1, "s1 s2loc spree_lost", "s1", "notify_camping", _("^BG%s^K1 thought they found a nice camping ground%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_CHEAT, 2, 1, "s1 s2loc spree_lost", "s1", "notify_selfkill", _("^BG%s^K1 unfairly eliminated themself%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_CUSTOM, 3, 1, "s1 s2 s3loc spree_lost", "s1", "notify_void", _("^BG%s^K1 %s^K1%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_DROWN, 2, 1, "s1 s2loc spree_lost", "s1", "notify_water", _("^BG%s^K1 couldn't catch their breath%s%s"), _("^BG%s^K1 was in the water for too long%s%s")) \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_FALL, 2, 1, "s1 s2loc spree_lost", "s1", "notify_fall", _("^BG%s^K1 hit the ground with a crunch%s%s"), _("^BG%s^K1 hit the ground with a bit too much force%s%s")) \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_FIRE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 became a bit too crispy%s%s"), _("^BG%s^K1 felt a little hot%s%s")) \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_GENERIC, 2, 1, "s1 s2loc spree_lost", "s1", "notify_selfkill", _("^BG%s^K1 died%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_LAVA, 2, 1, "s1 s2loc spree_lost", "s1", "notify_lava", _("^BG%s^K1 turned into hot slag%s%s"), _("^BG%s^K1 found a hot place%s%s")) \
- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_NADE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 mastered the art of self-nading%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_MAGE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was exploded by a Mage%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_SHAMBLER_CLAW, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1's innards became outwards by a Shambler%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_SHAMBLER_SMASH, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was smashed by a Shambler%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_SHAMBLER_ZAP, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was zapped to death by a Shambler%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_SPIDER, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was bitten by a Spider%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_WYVERN, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was fireballed by a Wyvern%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_ZOMBIE_JUMP, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 joins the Zombies%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_ZOMBIE_MELEE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was given kung fu lessons by a Zombie%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_NADE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_nade", _("^BG%s^K1 mastered the art of self-nading%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_NADE_NAPALM, 2, 1, "s1 s2loc spree_lost", "s1", "notify_nade_napalm", _("^BG%s^K1 was burned to death by their own Napalm Nade%s%s"), _("^BG%s^K1 decided to take a look at the results of their napalm explosion%s%s")) \
- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_NADE_ICE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_nade_ice", _("^BG%s^K1 mastered the art of self-nading%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_NADE_ICE_FREEZE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_nade_ice", _("^BG%s^K1 was frozen to death by their own Ice Nade%s%s"), _("^BG%s^K1 felt a little chilly%s%s")) \
- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_NADE_HEAL, 2, 1, "s1 s2loc spree_lost", "s1", "notify_nade_heal", _("^BG%s^K1's Healing Nade didn't quite heal them%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_NOAMMO, 2, 1, "s1 s2loc spree_lost", "s1", "notify_outofammo", _("^BG%s^K1 died%s%s. What's the point of living without ammo?"), _("^BG%s^K1 ran out of ammo%s%s")) \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_ROT, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 rotted away%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_SHOOTING_STAR, 2, 1, "s1 s2loc spree_lost", "s1", "notify_shootingstar", _("^BG%s^K1 became a shooting star%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_SLIME, 2, 1, "s1 s2loc spree_lost", "s1", "notify_slime", _("^BG%s^K1 was slimed%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_selfkill", _("^BG%s^K1 couldn't take it anymore%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_SWAMP, 2, 1, "s1 s2loc spree_lost", "s1", "notify_slime", _("^BG%s^K1 is now preserved for centuries to come%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TEAMCHANGE, 2, 1, "s1 s2loc death_team", "", "", _("^BG%s^K1 switched to the %s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TOUCHEXPLODE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 died in an accident%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 ran into a turret%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_EWHEEL, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was blasted away by an eWheel turret%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_FLAC, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 got caught up in the FLAC turret fire%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_HELLION, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was blasted away by a Hellion turret%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_HK, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 could not hide from the Hunter turret%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_MACHINEGUN, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was riddled full of holes by a Machinegun turret%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_MLRS, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 got turned into smoldering gibs by an MLRS turret%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_PHASER, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was phased out by a turret%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_PLASMA, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 got served some superheated plasma from a turret%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_TESLA, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was electrocuted by a Tesla turret%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_WALK_GUN, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 got served a lead enrichment by a Walker turret%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_WALK_MEELE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was impaled by a Walker turret%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_WALK_ROCKET, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was blasted away by a Walker turret%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_VH_BUMB_DEATH, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 got caught in the blast of a Bumblebee explosion%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_VH_CRUSH, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was crushed by a vehicle%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_VH_RAPT_BOMB, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was caught in a Raptor cluster bomb%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_VH_RAPT_DEATH, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 got caught in the blast of a Raptor explosion%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_VH_SPID_DEATH, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 got caught in the blast of a Spiderbot explosion%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_VH_SPID_ROCKET, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was blasted to bits by a Spiderbot rocket%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_VH_WAKI_DEATH, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 got caught in the blast of a Racer explosion%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_VH_WAKI_ROCKET, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 couldn't find shelter from a Racer rocket%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_DEATH_SELF_VOID, 2, 1, "s1 s2loc spree_lost", "s1", "notify_void", _("^BG%s^K1 was in the wrong place%s%s"), "") \
-- MULTITEAM_INFO(1, INFO_DEATH_TEAMKILL_, 4, 3, 1, "s1 s2 s3loc spree_end", "s2 s1", "notify_teamkill_%s", _("^BG%s^K1 was betrayed by ^BG%s^K1%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_CA_JOIN_LATE, 0, 0, "", "", "", _("^F1Round already started, you will join the game in the next round"), "") \
- MSG_INFO_NOTIF(1, INFO_CA_LEAVE, 0, 0, "", "", "", _("^F2You will spectate in the next round"), "") \
- MSG_INFO_NOTIF(1, INFO_DOMINATION_CAPTURE_TIME, 2, 2, "s1 s2 f1 f2", "", "", _("^BG%s^BG%s^BG (%s points every %s seconds)"), "") \
-- MSG_INFO_NOTIF(1, INFO_FREEZETAG_FREEZE, 2, 0, "s1 s2", "", "", _("^BG%s^K1 was frozen by ^BG%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_FREEZETAG_REVIVED, 2, 0, "s1 s2", "", "", _("^BG%s^K3 was revived by ^BG%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_FREEZETAG_REVIVED_FALL, 1, 0, "s1", "", "", _("^BG%s^K3 was revived by falling"), "") \
- MSG_INFO_NOTIF(1, INFO_FREEZETAG_REVIVED_NADE, 1, 0, "s1", "", "", _("^BG%s^K3 was revived by their Nade explosion"), "") \
-- MSG_INFO_NOTIF(1, INFO_FREEZETAG_AUTO_REVIVED, 1, 1, "s1 f1", "", "", _("^BG%s^K3 was automatically revived after %s second(s)"), "") \
-- MULTITEAM_INFO(1, INFO_ROUND_TEAM_WIN_, 4, 0, 0, "", "", "", _("^TC^TT^BG team wins the round"), "") \
-- MSG_INFO_NOTIF(1, INFO_ROUND_PLAYER_WIN, 1, 0, "s1", "", "", _("^BG%s^BG wins the round"), "") \
-- MSG_INFO_NOTIF(1, INFO_ROUND_TIED, 0, 0, "", "", "", _("^BGRound tied"), "") \
-- MSG_INFO_NOTIF(1, INFO_ROUND_OVER, 0, 0, "", "", "", _("^BGRound over, there's no winner"), "") \
-- MSG_INFO_NOTIF(1, INFO_FREEZETAG_SELF, 1, 0, "s1", "", "", _("^BG%s^K1 froze themself"), "") \
-- MSG_INFO_NOTIF(1, INFO_GODMODE_OFF, 0, 1, "f1", "", "", _("^BGGodmode saved you %s units of damage, cheater!"), "") \
- MSG_INFO_NOTIF(1, INFO_ITEM_BUFF, 1, 1, "s1 item_buffname", "", "", _("^BG%s^BG got the %s^BG Buff!"), "") \
- MSG_INFO_NOTIF(1, INFO_ITEM_BUFF_LOST, 1, 1, "s1 item_buffname", "", "", _("^BG%s^BG lost the %s^BG Buff!"), "") \
- MSG_INFO_NOTIF(1, INFO_ITEM_BUFF_DROP, 0, 1, "item_buffname", "", "", _("^BGYou dropped the %s^BG Buff!"), "") \
- MSG_INFO_NOTIF(1, INFO_ITEM_BUFF_GOT, 0, 1, "item_buffname", "", "", _("^BGYou got the %s^BG Buff!"), "") \
-- MSG_INFO_NOTIF(0, INFO_ITEM_WEAPON_DONTHAVE, 0, 1, "item_wepname", "", "", _("^BGYou do not have the ^F1%s"), "") \
-- MSG_INFO_NOTIF(0, INFO_ITEM_WEAPON_DROP, 1, 1, "item_wepname item_wepammo", "", "", _("^BGYou dropped the ^F1%s^BG%s"), "") \
-- MSG_INFO_NOTIF(0, INFO_ITEM_WEAPON_GOT, 0, 1, "item_wepname", "", "", _("^BGYou got the ^F1%s"), "") \
-- MSG_INFO_NOTIF(0, INFO_ITEM_WEAPON_NOAMMO, 0, 1, "item_wepname", "", "", _("^BGYou don't have enough ammo for the ^F1%s"), "") \
-- MSG_INFO_NOTIF(0, INFO_ITEM_WEAPON_PRIMORSEC, 0, 3, "item_wepname f2primsec f3primsec", "", "", _("^F1%s %s^BG is unable to fire, but its ^F1%s^BG can"), "") \
-- MSG_INFO_NOTIF(0, INFO_ITEM_WEAPON_UNAVAILABLE, 0, 1, "item_wepname", "", "", _("^F1%s^BG is ^F4not available^BG on this map"), "") \
-- MSG_INFO_NOTIF(2, INFO_JOIN_CONNECT, 1, 0, "s1", "", "", _("^BG%s^F3 connected%s"), "") \
-- MULTITEAM_INFO(2, INFO_JOIN_CONNECT_TEAM_, 4, 1, 0, "s1", "", "", _("^BG%s^F3 connected and joined the ^TC^TT team"), "") \
-- MSG_INFO_NOTIF(1, INFO_JOIN_PLAY, 1, 0, "s1", "", "", _("^BG%s^F3 is now playing"), "") \
-- MSG_INFO_NOTIF(1, INFO_KEEPAWAY_DROPPED, 1, 0, "s1", "s1", "notify_balldropped", _("^BG%s^BG has dropped the ball!"), "") \
-- MSG_INFO_NOTIF(1, INFO_KEEPAWAY_PICKUP, 1, 0, "s1", "s1", "notify_ballpickedup", _("^BG%s^BG has picked up the ball!"), "") \
-- MULTITEAM_INFO(1, INFO_KEYHUNT_CAPTURE_, 4, 1, 0, "s1", "", "", _("^BG%s^BG captured the keys for the ^TC^TT team"), "") \
-- MULTITEAM_INFO(1, INFO_KEYHUNT_DROP_, 4, 1, 0, "s1", "", "", _("^BG%s^BG dropped the ^TC^TT Key"), "") \
-- MULTITEAM_INFO(1, INFO_KEYHUNT_LOST_, 4, 1, 0, "s1", "", "", _("^BG%s^BG lost the ^TC^TT Key"), "") \
-- MULTITEAM_INFO(1, INFO_KEYHUNT_PICKUP_, 4, 1, 0, "s1", "", "", _("^BG%s^BG picked up the ^TC^TT Key"), "") \
-- MSG_INFO_NOTIF(1, INFO_LMS_FORFEIT, 1, 0, "s1", "", "", _("^BG%s^F3 forfeited"), "") \
-- MSG_INFO_NOTIF(1, INFO_LMS_NOLIVES, 1, 0, "s1", "", "", _("^BG%s^F3 has no more lives left"), "") \
-- MSG_INFO_NOTIF(1, INFO_MONSTERS_DISABLED, 0, 0, "", "", "", _("^BGMonsters are currently disabled"), "") \
-- MSG_INFO_NOTIF(1, INFO_POWERUP_INVISIBILITY, 1, 0, "s1", "s1", "strength", _("^BG%s^K1 picked up Invisibility"), "") \
-- MSG_INFO_NOTIF(1, INFO_POWERUP_SHIELD, 1, 0, "s1", "s1", "shield", _("^BG%s^K1 picked up Shield"), "") \
-- MSG_INFO_NOTIF(1, INFO_POWERUP_SPEED, 1, 0, "s1", "s1", "shield", _("^BG%s^K1 picked up Speed"), "") \
-- MSG_INFO_NOTIF(1, INFO_POWERUP_STRENGTH, 1, 0, "s1", "s1", "strength", _("^BG%s^K1 picked up Strength"), "") \
-- MSG_INFO_NOTIF(2, INFO_QUIT_DISCONNECT, 1, 0, "s1", "", "", _("^BG%s^F3 disconnected"), "") \
-- MSG_INFO_NOTIF(2, INFO_QUIT_KICK_IDLING, 1, 0, "s1", "", "", _("^BG%s^F3 was kicked for idling"), "") \
-- MSG_INFO_NOTIF(1, INFO_QUIT_KICK_SPECTATING, 0, 0, "", "", "", _("^F2You were kicked from the server because you are a spectator and spectators aren't allowed at the moment."), "") \
-- MSG_INFO_NOTIF(1, INFO_QUIT_SPECTATE, 1, 0, "s1", "", "", _("^BG%s^F3 is now spectating"), "") \
-- MSG_INFO_NOTIF(1, INFO_RACE_ABANDONED, 1, 0, "s1", "", "", _("^BG%s^BG has abandoned the race"), "") \
-- MSG_INFO_NOTIF(1, INFO_RACE_FAIL_RANKED, 1, 3, "s1 race_col f1ord race_col f3race_time race_diff", "s1 f3race_time", "race_newfail", _("^BG%s^BG couldn't break their %s%s^BG place record of %s%s %s"), "") \
-- MSG_INFO_NOTIF(1, INFO_RACE_FAIL_UNRANKED, 1, 3, "s1 race_col f1ord race_col f3race_time race_diff", "s1 f3race_time", "race_newfail", _("^BG%s^BG couldn't break the %s%s^BG place record of %s%s %s"), "") \
-- MSG_INFO_NOTIF(1, INFO_RACE_FINISHED, 1, 0, "s1", "", "", _("^BG%s^BG has finished the race"), "") \
-- MSG_INFO_NOTIF(1, INFO_RACE_NEW_BROKEN, 2, 3, "s1 s2 race_col f1ord race_col f2race_time race_diff", "s1 f2race_time", "race_newrankyellow", _("^BG%s^BG broke %s^BG's %s%s^BG place record with %s%s %s"), "") \
-- MSG_INFO_NOTIF(1, INFO_RACE_NEW_IMPROVED, 1, 3, "s1 race_col f1ord race_col f2race_time race_diff", "s1 f2race_time", "race_newtime", _("^BG%s^BG improved their %s%s^BG place record with %s%s %s"), "") \
-- MSG_INFO_NOTIF(1, INFO_RACE_NEW_MISSING_UID, 1, 1, "s1 f1race_time", "s1 f1race_time", "race_newfail", _("^BG%s^BG scored a new record with ^F2%s^BG, but unfortunately lacks a UID and will be lost."), "") \
-- MSG_INFO_NOTIF(1, INFO_RACE_NEW_SET, 1, 2, "s1 race_col f1ord race_col f2race_time", "s1 f2race_time", "race_newrecordserver", _("^BG%s^BG set the %s%s^BG place record with %s%s"), "") \
-- MULTITEAM_INFO(1, INFO_SCORES_, 4, 0, 0, "", "", "", _("^TC^TT ^BGteam scores!"), "") \
-- MSG_INFO_NOTIF(1, INFO_SPECTATE_WARNING, 0, 1, "f1secs", "", "", _("^F2You have to become a player within the next %s, otherwise you will be kicked, because spectating isn't allowed at this time!"), "") \
- MSG_INFO_NOTIF(1, INFO_SUPERWEAPON_PICKUP, 1, 0, "s1", "s1", "strength", _("^BG%s^K1 picked up a Superweapon"), "") \
- MSG_INFO_NOTIF(1, INFO_SUPERWEAPON_PICKUP, 1, 0, "s1", "s1", "superweapons", _("^BG%s^K1 picked up a Superweapon"), "") \
- MSG_INFO_NOTIF(1, INFO_TEAMCHANGE_LARGERTEAM, 0, 0, "", "", "", _("^BGYou cannot change to a larger team"), "") \
- MSG_INFO_NOTIF(1, INFO_TEAMCHANGE_NOTALLOWED, 0, 0, "", "", "", _("^BGYou are not allowed to change teams"), "") \
-- MSG_INFO_NOTIF(2, INFO_VERSION_BETA, 2, 0, "s1 s2", "", "", _("^F4NOTE: ^BGThe server is running ^F1Xonotic %s (beta)^BG, you have ^F2Xonotic %s"), "") \
-- MSG_INFO_NOTIF(2, INFO_VERSION_OLD, 2, 0, "s1 s2", "", "", _("^F4NOTE: ^BGThe server is running ^F1Xonotic %s^BG, you have ^F2Xonotic %s"), "") \
-- MSG_INFO_NOTIF(2, INFO_VERSION_OUTDATED, 2, 0, "s1 s2", "", "", _("^F4NOTE: ^F1Xonotic %s^BG is out, and you still have ^F2Xonotic %s^BG - get the update from ^F3http://www.xonotic.org/^BG!"), "") \
-- MSG_INFO_NOTIF(1, INFO_WATERMARK, 1, 0, "s1", "", "", _("^F3SVQC Build information: ^F4%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_ACCORDEON_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weapontuba", _("^BG%s%s^K1 died of ^BG%s^K1's great playing on the @!#%%'n Accordeon%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_ACCORDEON_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weapontuba", _("^BG%s^K1 hurt their own ears with the @!#%%'n Accordeon%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_ARC_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponhlac", _("^BG%s%s^K1 was electrocuted by ^BG%s^K1's Arc%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_BLASTER_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponlaser", _("^BG%s%s^K1 was shot to death by ^BG%s^K1's Blaster%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_BLASTER_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponlaser", _("^BG%s^K1 shot themself to hell with their Blaster%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_CRYLINK_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponcrylink", _("^BG%s%s^K1 felt the strong pull of ^BG%s^K1's Crylink%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_CRYLINK_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponcrylink", _("^BG%s^K1 felt the strong pull of their Crylink%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_DEVASTATOR_MURDER_DIRECT, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrocketlauncher", _("^BG%s%s^K1 ate ^BG%s^K1's rocket%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_DEVASTATOR_MURDER_SPLASH, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrocketlauncher", _("^BG%s%s^K1 got too close ^BG%s^K1's rocket%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_DEVASTATOR_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponrocketlauncher", _("^BG%s^K1 blew themself up with their Devastator%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_ELECTRO_MURDER_BOLT, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponelectro", _("^BG%s%s^K1 was blasted by ^BG%s^K1's Electro bolt%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_ELECTRO_MURDER_COMBO, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponelectro", _("^BG%s%s^K1 felt the electrifying air of ^BG%s^K1's Electro combo%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_ELECTRO_MURDER_ORBS, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponelectro", _("^BG%s%s^K1 got too close to ^BG%s^K1's Electro plasma%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_ELECTRO_SUICIDE_BOLT, 2, 1, "s1 s2loc spree_lost", "s1", "weaponelectro", _("^BG%s^K1 played with Electro plasma%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_ELECTRO_SUICIDE_ORBS, 2, 1, "s1 s2loc spree_lost", "s1", "weaponelectro", _("^BG%s^K1 could not remember where they put their Electro plasma%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_ELECTRO_MURDER_ORBS, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponelectro", _("^BG%s%s^K1 got too close to ^BG%s^K1's Electro orb%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_ELECTRO_SUICIDE_BOLT, 2, 1, "s1 s2loc spree_lost", "s1", "weaponelectro", _("^BG%s^K1 played with Electro bolts%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_ELECTRO_SUICIDE_ORBS, 2, 1, "s1 s2loc spree_lost", "s1", "weaponelectro", _("^BG%s^K1 could not remember where they put their Electro orb%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_FIREBALL_MURDER_BLAST, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponfireball", _("^BG%s%s^K1 got too close to ^BG%s^K1's fireball%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_FIREBALL_MURDER_FIREMINE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponfireball", _("^BG%s%s^K1 got burnt by ^BG%s^K1's firemine%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_FIREBALL_SUICIDE_BLAST, 2, 1, "s1 s2loc spree_lost", "s1", "weaponfireball", _("^BG%s^K1 should have used a smaller gun%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_FIREBALL_SUICIDE_FIREMINE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponfireball", _("^BG%s^K1 forgot about their firemine%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_HAGAR_MURDER_BURST, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponhagar", _("^BG%s%s^K1 was pummeled by a burst of ^BG%s^K1's Hagar rockets%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_HAGAR_MURDER_SPRAY, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponhagar", _("^BG%s%s^K1 was pummeled by ^BG%s^K1's Hagar rockets%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_HAGAR_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponhagar", _("^BG%s^K1 played with tiny Hagar rockets%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_HLAC_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponhlac", _("^BG%s%s^K1 was cut down with ^BG%s^K1's HLAC%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_HLAC_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponhlac", _("^BG%s^K1 got a little jumpy with their HLAC%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_HMG_MURDER_SNIPE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponhmg", _("^BG%s%s^K1 was sniped by ^BG%s^K1's Heavy Machine Gun%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_HMG_MURDER_SPRAY, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponhmg", _("^BG%s%s^K1 was torn to bits by ^BG%s^K1's Heavy Machine Gun%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_HOOK_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponhook", _("^BG%s%s^K1 was caught in ^BG%s^K1's Hook gravity bomb%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_KLEINBOTTLE_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weapontuba", _("^BG%s%s^K1 died of ^BG%s^K1's great playing on the @!#%%'n Klein Bottle%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_KLEINBOTTLE_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weapontuba", _("^BG%s^K1 hurt their own ears with the @!#%%'n Klein Bottle%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_LASER_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponlaser", _("^BG%s%s^K1 was shot to death by ^BG%s^K1's Laser%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_LASER_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponlaser", _("^BG%s^K1 shot themself to hell with their Laser%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_MACHINEGUN_MURDER_SNIPE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponuzi", _("^BG%s%s^K1 was sniped by ^BG%s^K1's Machine Gun%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_MACHINEGUN_MURDER_SPRAY, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponuzi", _("^BG%s%s^K1 was riddled full of holes by ^BG%s^K1's Machine Gun%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_MINELAYER_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponminelayer", _("^BG%s%s^K1 got too close to ^BG%s^K1's mine%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_MINELAYER_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponminelayer", _("^BG%s^K1 forgot about their mine%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_MINSTANEX_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponminstanex", _("^BG%s%s^K1 has been vaporized by ^BG%s^K1's Minstanex%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_MORTAR_MURDER_BOUNCE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weapongrenadelauncher", _("^BG%s%s^K1 got too close to ^BG%s^K1's Mortar grenade%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_MORTAR_MURDER_EXPLODE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weapongrenadelauncher", _("^BG%s%s^K1 ate ^BG%s^K1's Mortar grenade%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_MORTAR_SUICIDE_BOUNCE, 2, 1, "s1 s2loc spree_lost", "s1", "weapongrenadelauncher", _("^BG%s^K1 didn't see their own Mortar grenade%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_MORTAR_SUICIDE_EXPLODE, 2, 1, "s1 s2loc spree_lost", "s1", "weapongrenadelauncher", _("^BG%s^K1 blew themself up with their own Mortar%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_NEX_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponnex", _("^BG%s%s^K1 has been vaporized by ^BG%s^K1's Nex%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_RIFLE_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrifle", _("^BG%s%s^K1 was sniped with a Rifle by ^BG%s^K1%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_RIFLE_MURDER_HAIL, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrifle", _("^BG%s%s^K1 died in ^BG%s^K1's Rifle bullet hail%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_RIFLE_MURDER_HAIL_PIERCING, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrifle", _("^BG%s%s^K1 failed to hide from ^BG%s^K1's Rifle bullet hail%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_RIFLE_MURDER_PIERCING, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrifle", _("^BG%s%s^K1 failed to hide from ^BG%s^K1's Rifle%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_ROCKETLAUNCHER_MURDER_DIRECT, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrocketlauncher", _("^BG%s%s^K1 ate ^BG%s^K1's rocket%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_ROCKETLAUNCHER_MURDER_SPLASH, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrocketlauncher", _("^BG%s%s^K1 got too close ^BG%s^K1's rocket%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_ROCKETLAUNCHER_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponrocketlauncher", _("^BG%s^K1 blew themself up with their Rocketlauncher%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_RPC_MURDER_DIRECT, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrpc", _("^BG%s%s^K1 got sawn in half by ^BG%s^K1's Rocket Propelled Chainsaw%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_RPC_MURDER_SPLASH, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrpc", _("^BG%s%s^K1 almost dodged ^BG%s^K1's Rocket Propelled Chainsaw%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_RPC_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponrpc", _("^BG%s^K1 blew themself up with their Rocket Propelled Chainsaw%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_SEEKER_MURDER_SPRAY, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponseeker", _("^BG%s%s^K1 was pummeled by ^BG%s^K1's Seeker rockets%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_SEEKER_MURDER_TAG, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponseeker", _("^BG%s%s^K1 was tagged by ^BG%s^K1's Seeker%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_SEEKER_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponseeker", _("^BG%s^K1 played with tiny Seeker rockets%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_SHOCKWAVE_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponshotgun", _("^BG%s%s^K1 was gunned down by ^BG%s^K1's Shockwave%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_SHOCKWAVE_MURDER_SLAP, 3, 2, "spree_inf s2 s1 s3loc spree_end", "s2 s1", "notify_melee_shotgun", _("^BG%s%s^K1 slapped ^BG%s^K1 around a bit with a large Shockwave%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_SHOTGUN_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponshotgun", _("^BG%s%s^K1 was gunned down by ^BG%s^K1's Shotgun%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_SHOTGUN_MURDER_SLAP, 3, 2, "spree_inf s2 s1 s3loc spree_end", "s2 s1", "notify_melee_shotgun", _("^BG%s%s^K1 slapped ^BG%s^K1 around a bit with a large Shotgun%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_THINKING_WITH_PORTALS, 2, 1, "s1 s2loc spree_lost", "s1", "notify_selfkill", _("^BG%s^K1 is now thinking with portals%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_TUBA_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weapontuba", _("^BG%s%s^K1 died of ^BG%s^K1's great playing on the @!#%%'n Tuba%s%s"), "") \
-- MSG_INFO_NOTIF(1, INFO_WEAPON_TUBA_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weapontuba", _("^BG%s^K1 hurt their own ears with the @!#%%'n Tuba%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_UZI_MURDER_SNIPE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponuzi", _("^BG%s%s^K1 was sniped by ^BG%s^K1's Machine Gun%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_UZI_MURDER_SPRAY, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponuzi", _("^BG%s%s^K1 was riddled full of holes by ^BG%s^K1's Machine Gun%s%s"), "")
- MSG_INFO_NOTIF(1, INFO_WEAPON_VAPORIZER_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponminstanex", _("^BG%s%s^K1 has been sublimated by ^BG%s^K1's Vaporizer%s%s"), "") \
- MSG_INFO_NOTIF(1, INFO_WEAPON_VORTEX_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponnex", _("^BG%s%s^K1 has been vaporized by ^BG%s^K1's Vortex%s%s"), "")
++ MSG_INFO_NOTIF(2, INFO_CHAT_NOSPECTATORS, 0, 0, "", "", "", _("^F4NOTE: ^BGSpectator chat is not sent to players during the match"), "") \
++ MULTITEAM_INFO(1, INFO_CTF_CAPTURE_, 2, 1, 0, "s1", "s1", "notify_%s_captured", _("^BG%s^BG captured the ^TC^TT^BG flag"), "") \
++ MULTITEAM_INFO(1, INFO_CTF_CAPTURE_BROKEN_, 2, 2, 2, "s1 f1p2dec s2 f2p2dec", "s1", "notify_%s_captured", _("^BG%s^BG captured the ^TC^TT^BG flag in ^F1%s^BG seconds, breaking ^BG%s^BG's previous record of ^F2%s^BG seconds"), "") \
++ MULTITEAM_INFO(1, INFO_CTF_CAPTURE_TIME_, 2, 1, 1, "s1 f1p2dec", "s1", "notify_%s_captured", _("^BG%s^BG captured the ^TC^TT^BG flag in ^F1%s^BG seconds"), "") \
++ MULTITEAM_INFO(1, INFO_CTF_CAPTURE_UNBROKEN_, 2, 2, 2, "s1 f1p2dec s2 f2p2dec", "s1", "notify_%s_captured", _("^BG%s^BG captured the ^TC^TT^BG flag in ^F2%s^BG seconds, failing to break ^BG%s^BG's previous record of ^F1%s^BG seconds"), "") \
++ MULTITEAM_INFO(1, INFO_CTF_FLAGRETURN_ABORTRUN_, 2, 0, 0, "", "", "", _("^BGThe ^TC^TT^BG flag was returned to base by its owner"), "") \
++ MULTITEAM_INFO(1, INFO_CTF_FLAGRETURN_DAMAGED_, 2, 0, 0, "", "", "", _("^BGThe ^TC^TT^BG flag was destroyed and returned to base"), "") \
++ MULTITEAM_INFO(1, INFO_CTF_FLAGRETURN_DROPPED_, 2, 0, 0, "", "", "", _("^BGThe ^TC^TT^BG flag was dropped in the base and returned itself"), "") \
++ MULTITEAM_INFO(1, INFO_CTF_FLAGRETURN_NEEDKILL_, 2, 0, 0, "", "", "", _("^BGThe ^TC^TT^BG flag fell somewhere it couldn't be reached and returned to base"), "") \
++ MULTITEAM_INFO(1, INFO_CTF_FLAGRETURN_SPEEDRUN_, 2, 0, 1, "f1p2dec", "", "", _("^BGThe ^TC^TT^BG flag became impatient after ^F1%.2f^BG seconds and returned itself"), "") \
++ MULTITEAM_INFO(1, INFO_CTF_FLAGRETURN_TIMEOUT_, 2, 0, 0, "", "", "", _("^BGThe ^TC^TT^BG flag has returned to the base"), "") \
++ MULTITEAM_INFO(1, INFO_CTF_LOST_, 2, 1, 0, "s1", "s1", "notify_%s_lost", _("^BG%s^BG lost the ^TC^TT^BG flag"), "") \
++ MULTITEAM_INFO(1, INFO_CTF_PICKUP_, 2, 1, 0, "s1", "s1", "notify_%s_taken", _("^BG%s^BG got the ^TC^TT^BG flag"), "") \
++ MULTITEAM_INFO(1, INFO_CTF_RETURN_, 2, 1, 0, "s1", "s1", "notify_%s_returned", _("^BG%s^BG returned the ^TC^TT^BG flag"), "") \
++ MULTITEAM_INFO(1, INFO_CTF_RETURN_MONSTER_, 2, 1, 0, "s1", "s1", "notify_%s_returned", _("^BG%s^BG returned the ^TC^TT^BG flag"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_CHEAT, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 was unfairly eliminated by ^BG%s^K1%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_DROWN, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_water", _("^BG%s%s^K1 was drowned by ^BG%s^K1%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_FALL, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_fall", _("^BG%s%s^K1 was grounded by ^BG%s^K1%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_FIRE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 was burnt up into a crisp by ^BG%s^K1%s%s"), _("^BG%s%s^K1 felt a little hot from ^BG%s^K1's fire^K1%s%s")) \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_LAVA, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_lava", _("^BG%s%s^K1 was cooked by ^BG%s^K1%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_MONSTER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 was pushed infront of a monster by ^BG%s^K1%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_NADE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_nade", _("^BG%s%s^K1 was blown up by ^BG%s^K1's Nade%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_NADE_NAPALM, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_nade_napalm", _("^BG%s%s^K1 was burned to death by ^BG%s^K1's Napalm Nade%s%s"), _("^BG%s%s^K1 got too close to a napalm explosion%s%s")) \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_NADE_ICE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_nade_ice", _("^BG%s%s^K1 was blown up by ^BG%s^K1's Ice Nade%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_NADE_ICE_FREEZE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_nade_ice", _("^BG%s%s^K1 was frozen to death by ^BG%s^K1's Ice Nade%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_NADE_HEAL, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_nade_heal", _("^BG%s%s^K1 has not been healed by ^BG%s^K1's Healing Nade%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_SHOOTING_STAR, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_shootingstar", _("^BG%s%s^K1 was shot into space by ^BG%s^K1%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_SLIME, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_slime", _("^BG%s%s^K1 was slimed by ^BG%s^K1%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_SWAMP, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_slime", _("^BG%s%s^K1 was preserved by ^BG%s^K1%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_TELEFRAG, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_telefrag", _("^BG%s%s^K1 was telefragged by ^BG%s^K1%s%s"), _("^BG%s%s^K1 tried to occupy ^BG%s^K1's teleport destination space%s%s")) \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_TOUCHEXPLODE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 died in an accident with ^BG%s^K1%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_BUMB_DEATH, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 got caught in the blast when ^BG%s^K1's Bumblebee exploded%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_BUMB_GUN, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 saw the pretty lights of ^BG%s^K1's Bumblebee gun%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_CRUSH, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 was crushed by ^BG%s^K1%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_RAPT_BOMB, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 was cluster bombed by ^BG%s^K1's Raptor%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_RAPT_CANNON, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 couldn't resist ^BG%s^K1's purple blobs%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_RAPT_DEATH, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 got caught in the blast when ^BG%s^K1's Raptor exploded%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_SPID_DEATH, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 got caught in the blast when ^BG%s^K1's Spiderbot exploded%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_SPID_MINIGUN, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 got shredded by ^BG%s^K1's Spiderbot%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_SPID_ROCKET, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 was blasted to bits by ^BG%s^K1's Spiderbot%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_WAKI_DEATH, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 got caught in the blast when ^BG%s^K1's Racer exploded%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_WAKI_GUN, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 was bolted down by ^BG%s^K1's Racer%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VH_WAKI_ROCKET, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 couldn't find shelter from ^BG%s^K1's Racer%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VENGEANCE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_death", _("^BG%s%s^K1 was destroyed by the vengeful ^BG%s^K1%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_MURDER_VOID, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "notify_void", _("^BG%s%s^K1 was thrown into a world of hurt by ^BG%s^K1%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_AUTOTEAMCHANGE, 2, 1, "s1 s2loc death_team", "", "", _("^BG%s^K1 was moved into the %s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_BETRAYAL, 2, 1, "s1 s2loc spree_lost", "s1", "notify_teamkill_red", _("^BG%s^K1 became enemies with the Lord of Teamplay%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_CAMP, 2, 1, "s1 s2loc spree_lost", "s1", "notify_camping", _("^BG%s^K1 thought they found a nice camping ground%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_CHEAT, 2, 1, "s1 s2loc spree_lost", "s1", "notify_selfkill", _("^BG%s^K1 unfairly eliminated themself%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_CUSTOM, 3, 1, "s1 s2 s3loc spree_lost", "s1", "notify_void", _("^BG%s^K1 %s^K1%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_DROWN, 2, 1, "s1 s2loc spree_lost", "s1", "notify_water", _("^BG%s^K1 couldn't catch their breath%s%s"), _("^BG%s^K1 was in the water for too long%s%s")) \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_FALL, 2, 1, "s1 s2loc spree_lost", "s1", "notify_fall", _("^BG%s^K1 hit the ground with a crunch%s%s"), _("^BG%s^K1 hit the ground with a bit too much force%s%s")) \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_FIRE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 became a bit too crispy%s%s"), _("^BG%s^K1 felt a little hot%s%s")) \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_GENERIC, 2, 1, "s1 s2loc spree_lost", "s1", "notify_selfkill", _("^BG%s^K1 died%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_LAVA, 2, 1, "s1 s2loc spree_lost", "s1", "notify_lava", _("^BG%s^K1 turned into hot slag%s%s"), _("^BG%s^K1 found a hot place%s%s")) \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_MAGE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was exploded by a Mage%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_SHAMBLER_CLAW, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1's innards became outwards by a Shambler%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_SHAMBLER_SMASH, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was smashed by a Shambler%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_SHAMBLER_ZAP, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was zapped to death by a Shambler%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_SPIDER, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was bitten by a Spider%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_WYVERN, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was fireballed by a Wyvern%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_ZOMBIE_JUMP, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 joins the Zombies%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_MON_ZOMBIE_MELEE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was given kung fu lessons by a Zombie%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_NADE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_nade", _("^BG%s^K1 mastered the art of self-nading%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_NADE_NAPALM, 2, 1, "s1 s2loc spree_lost", "s1", "notify_nade_napalm", _("^BG%s^K1 was burned to death by their own Napalm Nade%s%s"), _("^BG%s^K1 decided to take a look at the results of their napalm explosion%s%s")) \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_NADE_ICE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_nade_ice", _("^BG%s^K1 mastered the art of self-nading%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_NADE_ICE_FREEZE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_nade_ice", _("^BG%s^K1 was frozen to death by their own Ice Nade%s%s"), _("^BG%s^K1 felt a little chilly%s%s")) \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_NADE_HEAL, 2, 1, "s1 s2loc spree_lost", "s1", "notify_nade_heal", _("^BG%s^K1's Healing Nade didn't quite heal them%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_NOAMMO, 2, 1, "s1 s2loc spree_lost", "s1", "notify_outofammo", _("^BG%s^K1 died%s%s. What's the point of living without ammo?"), _("^BG%s^K1 ran out of ammo%s%s")) \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_ROT, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 rotted away%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_SHOOTING_STAR, 2, 1, "s1 s2loc spree_lost", "s1", "notify_shootingstar", _("^BG%s^K1 became a shooting star%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_SLIME, 2, 1, "s1 s2loc spree_lost", "s1", "notify_slime", _("^BG%s^K1 was slimed%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_selfkill", _("^BG%s^K1 couldn't take it anymore%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_SWAMP, 2, 1, "s1 s2loc spree_lost", "s1", "notify_slime", _("^BG%s^K1 is now preserved for centuries to come%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TEAMCHANGE, 2, 1, "s1 s2loc death_team", "", "", _("^BG%s^K1 switched to the %s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TOUCHEXPLODE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 died in an accident%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 ran into a turret%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_EWHEEL, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was blasted away by an eWheel turret%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_FLAC, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 got caught up in the FLAC turret fire%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_HELLION, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was blasted away by a Hellion turret%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_HK, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 could not hide from the Hunter turret%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_MACHINEGUN, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was riddled full of holes by a Machinegun turret%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_MLRS, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 got turned into smoldering gibs by an MLRS turret%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_PHASER, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was phased out by a turret%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_PLASMA, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 got served some superheated plasma from a turret%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_TESLA, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was electrocuted by a Tesla turret%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_WALK_GUN, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 got served a lead enrichment by a Walker turret%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_WALK_MEELE, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was impaled by a Walker turret%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_TURRET_WALK_ROCKET, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was blasted away by a Walker turret%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_VH_BUMB_DEATH, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 got caught in the blast of a Bumblebee explosion%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_VH_CRUSH, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was crushed by a vehicle%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_VH_RAPT_BOMB, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was caught in a Raptor cluster bomb%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_VH_RAPT_DEATH, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 got caught in the blast of a Raptor explosion%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_VH_SPID_DEATH, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 got caught in the blast of a Spiderbot explosion%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_VH_SPID_ROCKET, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 was blasted to bits by a Spiderbot rocket%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_VH_WAKI_DEATH, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 got caught in the blast of a Racer explosion%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_VH_WAKI_ROCKET, 2, 1, "s1 s2loc spree_lost", "s1", "notify_death", _("^BG%s^K1 couldn't find shelter from a Racer rocket%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_DEATH_SELF_VOID, 2, 1, "s1 s2loc spree_lost", "s1", "notify_void", _("^BG%s^K1 was in the wrong place%s%s"), "") \
++ MULTITEAM_INFO(1, INFO_DEATH_TEAMKILL_, 4, 3, 1, "s1 s2 s3loc spree_end", "s2 s1", "notify_teamkill_%s", _("^BG%s^K1 was betrayed by ^BG%s^K1%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_CA_JOIN_LATE, 0, 0, "", "", "", _("^F1Round already started, you will join the game in the next round"), "") \
++ MSG_INFO_NOTIF(1, INFO_CA_LEAVE, 0, 0, "", "", "", _("^F2You will spectate in the next round"), "") \
++ MSG_INFO_NOTIF(1, INFO_DOMINATION_CAPTURE_TIME, 2, 2, "s1 s2 f1 f2", "", "", _("^BG%s^BG%s^BG (%s points every %s seconds)"), "") \
++ MSG_INFO_NOTIF(1, INFO_FREEZETAG_FREEZE, 2, 0, "s1 s2", "", "", _("^BG%s^K1 was frozen by ^BG%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_FREEZETAG_REVIVED, 2, 0, "s1 s2", "", "", _("^BG%s^K3 was revived by ^BG%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_FREEZETAG_REVIVED_FALL, 1, 0, "s1", "", "", _("^BG%s^K3 was revived by falling"), "") \
++ MSG_INFO_NOTIF(1, INFO_FREEZETAG_REVIVED_NADE, 1, 0, "s1", "", "", _("^BG%s^K3 was revived by their Nade explosion"), "") \
++ MSG_INFO_NOTIF(1, INFO_FREEZETAG_AUTO_REVIVED, 1, 1, "s1 f1", "", "", _("^BG%s^K3 was automatically revived after %s second(s)"), "") \
++ MULTITEAM_INFO(1, INFO_ROUND_TEAM_WIN_, 4, 0, 0, "", "", "", _("^TC^TT^BG team wins the round"), "") \
++ MSG_INFO_NOTIF(1, INFO_ROUND_PLAYER_WIN, 1, 0, "s1", "", "", _("^BG%s^BG wins the round"), "") \
++ MSG_INFO_NOTIF(1, INFO_ROUND_TIED, 0, 0, "", "", "", _("^BGRound tied"), "") \
++ MSG_INFO_NOTIF(1, INFO_ROUND_OVER, 0, 0, "", "", "", _("^BGRound over, there's no winner"), "") \
++ MSG_INFO_NOTIF(1, INFO_FREEZETAG_SELF, 1, 0, "s1", "", "", _("^BG%s^K1 froze themself"), "") \
++ MSG_INFO_NOTIF(1, INFO_GODMODE_OFF, 0, 1, "f1", "", "", _("^BGGodmode saved you %s units of damage, cheater!"), "") \
++ MSG_INFO_NOTIF(1, INFO_ITEM_BUFF, 1, 1, "s1 item_buffname", "", "", _("^BG%s^BG got the %s^BG Buff!"), "") \
++ MSG_INFO_NOTIF(1, INFO_ITEM_BUFF_LOST, 1, 1, "s1 item_buffname", "", "", _("^BG%s^BG lost the %s^BG Buff!"), "") \
++ MSG_INFO_NOTIF(1, INFO_ITEM_BUFF_DROP, 0, 1, "item_buffname", "", "", _("^BGYou dropped the %s^BG Buff!"), "") \
++ MSG_INFO_NOTIF(1, INFO_ITEM_BUFF_GOT, 0, 1, "item_buffname", "", "", _("^BGYou got the %s^BG Buff!"), "") \
++ MSG_INFO_NOTIF(0, INFO_ITEM_WEAPON_DONTHAVE, 0, 1, "item_wepname", "", "", _("^BGYou do not have the ^F1%s"), "") \
++ MSG_INFO_NOTIF(0, INFO_ITEM_WEAPON_DROP, 1, 1, "item_wepname item_wepammo", "", "", _("^BGYou dropped the ^F1%s^BG%s"), "") \
++ MSG_INFO_NOTIF(0, INFO_ITEM_WEAPON_GOT, 0, 1, "item_wepname", "", "", _("^BGYou got the ^F1%s"), "") \
++ MSG_INFO_NOTIF(0, INFO_ITEM_WEAPON_NOAMMO, 0, 1, "item_wepname", "", "", _("^BGYou don't have enough ammo for the ^F1%s"), "") \
++ MSG_INFO_NOTIF(0, INFO_ITEM_WEAPON_PRIMORSEC, 0, 3, "item_wepname f2primsec f3primsec", "", "", _("^F1%s %s^BG is unable to fire, but its ^F1%s^BG can"), "") \
++ MSG_INFO_NOTIF(0, INFO_ITEM_WEAPON_UNAVAILABLE, 0, 1, "item_wepname", "", "", _("^F1%s^BG is ^F4not available^BG on this map"), "") \
++ MSG_INFO_NOTIF(2, INFO_JOIN_CONNECT, 1, 0, "s1", "", "", _("^BG%s^F3 connected%s"), "") \
++ MULTITEAM_INFO(2, INFO_JOIN_CONNECT_TEAM_, 4, 1, 0, "s1", "", "", _("^BG%s^F3 connected and joined the ^TC^TT team"), "") \
++ MSG_INFO_NOTIF(1, INFO_JOIN_PLAY, 1, 0, "s1", "", "", _("^BG%s^F3 is now playing"), "") \
++ MSG_INFO_NOTIF(1, INFO_KEEPAWAY_DROPPED, 1, 0, "s1", "s1", "notify_balldropped", _("^BG%s^BG has dropped the ball!"), "") \
++ MSG_INFO_NOTIF(1, INFO_KEEPAWAY_PICKUP, 1, 0, "s1", "s1", "notify_ballpickedup", _("^BG%s^BG has picked up the ball!"), "") \
++ MULTITEAM_INFO(1, INFO_KEYHUNT_CAPTURE_, 4, 1, 0, "s1", "", "", _("^BG%s^BG captured the keys for the ^TC^TT team"), "") \
++ MULTITEAM_INFO(1, INFO_KEYHUNT_DROP_, 4, 1, 0, "s1", "", "", _("^BG%s^BG dropped the ^TC^TT Key"), "") \
++ MULTITEAM_INFO(1, INFO_KEYHUNT_LOST_, 4, 1, 0, "s1", "", "", _("^BG%s^BG lost the ^TC^TT Key"), "") \
++ MULTITEAM_INFO(1, INFO_KEYHUNT_PICKUP_, 4, 1, 0, "s1", "", "", _("^BG%s^BG picked up the ^TC^TT Key"), "") \
++ MSG_INFO_NOTIF(1, INFO_LMS_FORFEIT, 1, 0, "s1", "", "", _("^BG%s^F3 forfeited"), "") \
++ MSG_INFO_NOTIF(1, INFO_LMS_NOLIVES, 1, 0, "s1", "", "", _("^BG%s^F3 has no more lives left"), "") \
++ MSG_INFO_NOTIF(1, INFO_MONSTERS_DISABLED, 0, 0, "", "", "", _("^BGMonsters are currently disabled"), "") \
++ MSG_INFO_NOTIF(1, INFO_POWERUP_INVISIBILITY, 1, 0, "s1", "s1", "strength", _("^BG%s^K1 picked up Invisibility"), "") \
++ MSG_INFO_NOTIF(1, INFO_POWERUP_SHIELD, 1, 0, "s1", "s1", "shield", _("^BG%s^K1 picked up Shield"), "") \
++ MSG_INFO_NOTIF(1, INFO_POWERUP_SPEED, 1, 0, "s1", "s1", "shield", _("^BG%s^K1 picked up Speed"), "") \
++ MSG_INFO_NOTIF(1, INFO_POWERUP_STRENGTH, 1, 0, "s1", "s1", "strength", _("^BG%s^K1 picked up Strength"), "") \
++ MSG_INFO_NOTIF(2, INFO_QUIT_DISCONNECT, 1, 0, "s1", "", "", _("^BG%s^F3 disconnected"), "") \
++ MSG_INFO_NOTIF(2, INFO_QUIT_KICK_IDLING, 1, 0, "s1", "", "", _("^BG%s^F3 was kicked for idling"), "") \
++ MSG_INFO_NOTIF(1, INFO_QUIT_KICK_SPECTATING, 0, 0, "", "", "", _("^F2You were kicked from the server because you are a spectator and spectators aren't allowed at the moment."), "") \
++ MSG_INFO_NOTIF(1, INFO_QUIT_SPECTATE, 1, 0, "s1", "", "", _("^BG%s^F3 is now spectating"), "") \
++ MSG_INFO_NOTIF(1, INFO_RACE_ABANDONED, 1, 0, "s1", "", "", _("^BG%s^BG has abandoned the race"), "") \
++ MSG_INFO_NOTIF(1, INFO_RACE_FAIL_RANKED, 1, 3, "s1 race_col f1ord race_col f3race_time race_diff", "s1 f3race_time", "race_newfail", _("^BG%s^BG couldn't break their %s%s^BG place record of %s%s %s"), "") \
++ MSG_INFO_NOTIF(1, INFO_RACE_FAIL_UNRANKED, 1, 3, "s1 race_col f1ord race_col f3race_time race_diff", "s1 f3race_time", "race_newfail", _("^BG%s^BG couldn't break the %s%s^BG place record of %s%s %s"), "") \
++ MSG_INFO_NOTIF(1, INFO_RACE_FINISHED, 1, 0, "s1", "", "", _("^BG%s^BG has finished the race"), "") \
++ MSG_INFO_NOTIF(1, INFO_RACE_NEW_BROKEN, 2, 3, "s1 s2 race_col f1ord race_col f2race_time race_diff", "s1 f2race_time", "race_newrankyellow", _("^BG%s^BG broke %s^BG's %s%s^BG place record with %s%s %s"), "") \
++ MSG_INFO_NOTIF(1, INFO_RACE_NEW_IMPROVED, 1, 3, "s1 race_col f1ord race_col f2race_time race_diff", "s1 f2race_time", "race_newtime", _("^BG%s^BG improved their %s%s^BG place record with %s%s %s"), "") \
++ MSG_INFO_NOTIF(1, INFO_RACE_NEW_MISSING_UID, 1, 1, "s1 f1race_time", "s1 f1race_time", "race_newfail", _("^BG%s^BG scored a new record with ^F2%s^BG, but unfortunately lacks a UID and will be lost."), "") \
++ MSG_INFO_NOTIF(1, INFO_RACE_NEW_SET, 1, 2, "s1 race_col f1ord race_col f2race_time", "s1 f2race_time", "race_newrecordserver", _("^BG%s^BG set the %s%s^BG place record with %s%s"), "") \
++ MULTITEAM_INFO(1, INFO_SCORES_, 4, 0, 0, "", "", "", _("^TC^TT ^BGteam scores!"), "") \
++ MSG_INFO_NOTIF(1, INFO_SPECTATE_WARNING, 0, 1, "f1secs", "", "", _("^F2You have to become a player within the next %s, otherwise you will be kicked, because spectating isn't allowed at this time!"), "") \
++ MSG_INFO_NOTIF(1, INFO_SUPERWEAPON_PICKUP, 1, 0, "s1", "s1", "superweapons", _("^BG%s^K1 picked up a Superweapon"), "") \
++ MSG_INFO_NOTIF(1, INFO_TEAMCHANGE_LARGERTEAM, 0, 0, "", "", "", _("^BGYou cannot change to a larger team"), "") \
++ MSG_INFO_NOTIF(1, INFO_TEAMCHANGE_NOTALLOWED, 0, 0, "", "", "", _("^BGYou are not allowed to change teams"), "") \
++ MSG_INFO_NOTIF(2, INFO_VERSION_BETA, 2, 0, "s1 s2", "", "", _("^F4NOTE: ^BGThe server is running ^F1Xonotic %s (beta)^BG, you have ^F2Xonotic %s"), "") \
++ MSG_INFO_NOTIF(2, INFO_VERSION_OLD, 2, 0, "s1 s2", "", "", _("^F4NOTE: ^BGThe server is running ^F1Xonotic %s^BG, you have ^F2Xonotic %s"), "") \
++ MSG_INFO_NOTIF(2, INFO_VERSION_OUTDATED, 2, 0, "s1 s2", "", "", _("^F4NOTE: ^F1Xonotic %s^BG is out, and you still have ^F2Xonotic %s^BG - get the update from ^F3http://www.xonotic.org/^BG!"), "") \
++ MSG_INFO_NOTIF(1, INFO_WATERMARK, 1, 0, "s1", "", "", _("^F3SVQC Build information: ^F4%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_ACCORDEON_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weapontuba", _("^BG%s%s^K1 died of ^BG%s^K1's great playing on the @!#%%'n Accordeon%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_ACCORDEON_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weapontuba", _("^BG%s^K1 hurt their own ears with the @!#%%'n Accordeon%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_ARC_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponhlac", _("^BG%s%s^K1 was electrocuted by ^BG%s^K1's Arc%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_BLASTER_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponlaser", _("^BG%s%s^K1 was shot to death by ^BG%s^K1's Blaster%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_BLASTER_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponlaser", _("^BG%s^K1 shot themself to hell with their Blaster%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_CRYLINK_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponcrylink", _("^BG%s%s^K1 felt the strong pull of ^BG%s^K1's Crylink%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_CRYLINK_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponcrylink", _("^BG%s^K1 felt the strong pull of their Crylink%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_DEVASTATOR_MURDER_DIRECT, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrocketlauncher", _("^BG%s%s^K1 ate ^BG%s^K1's rocket%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_DEVASTATOR_MURDER_SPLASH, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrocketlauncher", _("^BG%s%s^K1 got too close ^BG%s^K1's rocket%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_DEVASTATOR_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponrocketlauncher", _("^BG%s^K1 blew themself up with their Devastator%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_ELECTRO_MURDER_BOLT, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponelectro", _("^BG%s%s^K1 was blasted by ^BG%s^K1's Electro bolt%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_ELECTRO_MURDER_COMBO, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponelectro", _("^BG%s%s^K1 felt the electrifying air of ^BG%s^K1's Electro combo%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_ELECTRO_MURDER_ORBS, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponelectro", _("^BG%s%s^K1 got too close to ^BG%s^K1's Electro orb%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_ELECTRO_SUICIDE_BOLT, 2, 1, "s1 s2loc spree_lost", "s1", "weaponelectro", _("^BG%s^K1 played with Electro bolts%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_ELECTRO_SUICIDE_ORBS, 2, 1, "s1 s2loc spree_lost", "s1", "weaponelectro", _("^BG%s^K1 could not remember where they put their Electro orb%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_FIREBALL_MURDER_BLAST, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponfireball", _("^BG%s%s^K1 got too close to ^BG%s^K1's fireball%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_FIREBALL_MURDER_FIREMINE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponfireball", _("^BG%s%s^K1 got burnt by ^BG%s^K1's firemine%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_FIREBALL_SUICIDE_BLAST, 2, 1, "s1 s2loc spree_lost", "s1", "weaponfireball", _("^BG%s^K1 should have used a smaller gun%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_FIREBALL_SUICIDE_FIREMINE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponfireball", _("^BG%s^K1 forgot about their firemine%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_HAGAR_MURDER_BURST, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponhagar", _("^BG%s%s^K1 was pummeled by a burst of ^BG%s^K1's Hagar rockets%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_HAGAR_MURDER_SPRAY, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponhagar", _("^BG%s%s^K1 was pummeled by ^BG%s^K1's Hagar rockets%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_HAGAR_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponhagar", _("^BG%s^K1 played with tiny Hagar rockets%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_HLAC_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponhlac", _("^BG%s%s^K1 was cut down with ^BG%s^K1's HLAC%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_HLAC_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponhlac", _("^BG%s^K1 got a little jumpy with their HLAC%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_HMG_MURDER_SNIPE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponhmg", _("^BG%s%s^K1 was sniped by ^BG%s^K1's Heavy Machine Gun%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_HMG_MURDER_SPRAY, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponhmg", _("^BG%s%s^K1 was torn to bits by ^BG%s^K1's Heavy Machine Gun%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_HOOK_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponhook", _("^BG%s%s^K1 was caught in ^BG%s^K1's Hook gravity bomb%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_KLEINBOTTLE_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weapontuba", _("^BG%s%s^K1 died of ^BG%s^K1's great playing on the @!#%%'n Klein Bottle%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_KLEINBOTTLE_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weapontuba", _("^BG%s^K1 hurt their own ears with the @!#%%'n Klein Bottle%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_MACHINEGUN_MURDER_SNIPE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponuzi", _("^BG%s%s^K1 was sniped by ^BG%s^K1's Machine Gun%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_MACHINEGUN_MURDER_SPRAY, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponuzi", _("^BG%s%s^K1 was riddled full of holes by ^BG%s^K1's Machine Gun%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_MINELAYER_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponminelayer", _("^BG%s%s^K1 got too close to ^BG%s^K1's mine%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_MINELAYER_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponminelayer", _("^BG%s^K1 forgot about their mine%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_MORTAR_MURDER_BOUNCE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weapongrenadelauncher", _("^BG%s%s^K1 got too close to ^BG%s^K1's Mortar grenade%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_MORTAR_MURDER_EXPLODE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weapongrenadelauncher", _("^BG%s%s^K1 ate ^BG%s^K1's Mortar grenade%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_MORTAR_SUICIDE_BOUNCE, 2, 1, "s1 s2loc spree_lost", "s1", "weapongrenadelauncher", _("^BG%s^K1 didn't see their own Mortar grenade%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_MORTAR_SUICIDE_EXPLODE, 2, 1, "s1 s2loc spree_lost", "s1", "weapongrenadelauncher", _("^BG%s^K1 blew themself up with their own Mortar%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_RIFLE_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrifle", _("^BG%s%s^K1 was sniped with a Rifle by ^BG%s^K1%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_RIFLE_MURDER_HAIL, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrifle", _("^BG%s%s^K1 died in ^BG%s^K1's Rifle bullet hail%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_RIFLE_MURDER_HAIL_PIERCING, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrifle", _("^BG%s%s^K1 failed to hide from ^BG%s^K1's Rifle bullet hail%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_RIFLE_MURDER_PIERCING, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrifle", _("^BG%s%s^K1 failed to hide from ^BG%s^K1's Rifle%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_RPC_MURDER_DIRECT, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrpc", _("^BG%s%s^K1 was sawn in half by ^BG%s^K1's Rocket Propelled Chainsaw%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_RPC_MURDER_SPLASH, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrpc", _("^BG%s%s^K1 almost dodged ^BG%s^K1's Rocket Propelled Chainsaw%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_RPC_SUICIDE_DIRECT, 2, 1, "s1 s2loc spree_lost", "s1", "weaponrpc", _("^BG%s^K1 was sawn in half by their own Rocket Propelled Chainsaw%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_RPC_SUICIDE_SPLASH, 2, 1, "s1 s2loc spree_lost", "s1", "weaponrpc", _("^BG%s^K1 blew themself up with their Rocket Propelled Chainsaw%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_SEEKER_MURDER_SPRAY, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponseeker", _("^BG%s%s^K1 was pummeled by ^BG%s^K1's Seeker rockets%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_SEEKER_MURDER_TAG, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponseeker", _("^BG%s%s^K1 was tagged by ^BG%s^K1's Seeker%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_SEEKER_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponseeker", _("^BG%s^K1 played with tiny Seeker rockets%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_SHOCKWAVE_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponshotgun", _("^BG%s%s^K1 was gunned down by ^BG%s^K1's Shockwave%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_SHOCKWAVE_MURDER_SLAP, 3, 2, "spree_inf s2 s1 s3loc spree_end", "s2 s1", "notify_melee_shotgun", _("^BG%s%s^K1 slapped ^BG%s^K1 around a bit with a large Shockwave%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_SHOTGUN_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponshotgun", _("^BG%s%s^K1 was gunned down by ^BG%s^K1's Shotgun%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_SHOTGUN_MURDER_SLAP, 3, 2, "spree_inf s2 s1 s3loc spree_end", "s2 s1", "notify_melee_shotgun", _("^BG%s%s^K1 slapped ^BG%s^K1 around a bit with a large Shotgun%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_THINKING_WITH_PORTALS, 2, 1, "s1 s2loc spree_lost", "s1", "notify_selfkill", _("^BG%s^K1 is now thinking with portals%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_TUBA_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weapontuba", _("^BG%s%s^K1 died of ^BG%s^K1's great playing on the @!#%%'n Tuba%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_TUBA_SUICIDE, 2, 1, "s1 s2loc spree_lost", "s1", "weapontuba", _("^BG%s^K1 hurt their own ears with the @!#%%'n Tuba%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_VAPORIZER_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponminstanex", _("^BG%s%s^K1 has been sublimated by ^BG%s^K1's Vaporizer%s%s"), "") \
++ MSG_INFO_NOTIF(1, INFO_WEAPON_VORTEX_MURDER, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponnex", _("^BG%s%s^K1 has been vaporized by ^BG%s^K1's Vortex%s%s"), "")
#define MULTITEAM_CENTER2(default,prefix,strnum,flnum,args,cpid,durcnt,normal,gentle) \
-- MSG_CENTER_NOTIF(default, prefix##RED, strnum, flnum, args, cpid, durcnt, TCR(normal, COL_TEAM_1, strtoupper(NAME_TEAM_1)), TCR(gentle, COL_TEAM_1, strtoupper(NAME_TEAM_1))) \
-- MSG_CENTER_NOTIF(default, prefix##BLUE, strnum, flnum, args, cpid, durcnt, TCR(normal, COL_TEAM_2, strtoupper(NAME_TEAM_2)), TCR(gentle, COL_TEAM_2, strtoupper(NAME_TEAM_2)))
++ MSG_CENTER_NOTIF(default, prefix##RED, strnum, flnum, args, cpid, durcnt, TCR(normal, COL_TEAM_1, strtoupper(NAME_TEAM_1)), TCR(gentle, COL_TEAM_1, strtoupper(NAME_TEAM_1))) \
++ MSG_CENTER_NOTIF(default, prefix##BLUE, strnum, flnum, args, cpid, durcnt, TCR(normal, COL_TEAM_2, strtoupper(NAME_TEAM_2)), TCR(gentle, COL_TEAM_2, strtoupper(NAME_TEAM_2)))
#define MULTITEAM_CENTER3(default,prefix,strnum,flnum,args,cpid,durcnt,normal,gentle) \
-- MSG_CENTER_NOTIF(default, prefix##RED, strnum, flnum, args, cpid, durcnt, TCR(normal, COL_TEAM_1, strtoupper(NAME_TEAM_1)), TCR(gentle, COL_TEAM_1, strtoupper(NAME_TEAM_1))) \
-- MSG_CENTER_NOTIF(default, prefix##BLUE, strnum, flnum, args, cpid, durcnt, TCR(normal, COL_TEAM_2, strtoupper(NAME_TEAM_2)), TCR(gentle, COL_TEAM_2, strtoupper(NAME_TEAM_2))) \
-- MSG_CENTER_NOTIF(default, prefix##YELLOW, strnum, flnum, args, cpid, durcnt, TCR(normal, COL_TEAM_3, strtoupper(NAME_TEAM_3)), TCR(gentle, COL_TEAM_3, strtoupper(NAME_TEAM_3)))
++ MSG_CENTER_NOTIF(default, prefix##RED, strnum, flnum, args, cpid, durcnt, TCR(normal, COL_TEAM_1, strtoupper(NAME_TEAM_1)), TCR(gentle, COL_TEAM_1, strtoupper(NAME_TEAM_1))) \
++ MSG_CENTER_NOTIF(default, prefix##BLUE, strnum, flnum, args, cpid, durcnt, TCR(normal, COL_TEAM_2, strtoupper(NAME_TEAM_2)), TCR(gentle, COL_TEAM_2, strtoupper(NAME_TEAM_2))) \
++ MSG_CENTER_NOTIF(default, prefix##YELLOW, strnum, flnum, args, cpid, durcnt, TCR(normal, COL_TEAM_3, strtoupper(NAME_TEAM_3)), TCR(gentle, COL_TEAM_3, strtoupper(NAME_TEAM_3)))
#define MULTITEAM_CENTER4(default,prefix,strnum,flnum,args,cpid,durcnt,normal,gentle) \
-- MSG_CENTER_NOTIF(default, prefix##RED, strnum, flnum, args, cpid, durcnt, TCR(normal, COL_TEAM_1, strtoupper(NAME_TEAM_1)), TCR(gentle, COL_TEAM_1, strtoupper(NAME_TEAM_1))) \
-- MSG_CENTER_NOTIF(default, prefix##BLUE, strnum, flnum, args, cpid, durcnt, TCR(normal, COL_TEAM_2, strtoupper(NAME_TEAM_2)), TCR(gentle, COL_TEAM_2, strtoupper(NAME_TEAM_2))) \
-- MSG_CENTER_NOTIF(default, prefix##YELLOW, strnum, flnum, args, cpid, durcnt, TCR(normal, COL_TEAM_3, strtoupper(NAME_TEAM_3)), TCR(gentle, COL_TEAM_3, strtoupper(NAME_TEAM_3))) \
-- MSG_CENTER_NOTIF(default, prefix##PINK, strnum, flnum, args, cpid, durcnt, TCR(normal, COL_TEAM_4, strtoupper(NAME_TEAM_4)), TCR(gentle, COL_TEAM_4, strtoupper(NAME_TEAM_4)))
++ MSG_CENTER_NOTIF(default, prefix##RED, strnum, flnum, args, cpid, durcnt, TCR(normal, COL_TEAM_1, strtoupper(NAME_TEAM_1)), TCR(gentle, COL_TEAM_1, strtoupper(NAME_TEAM_1))) \
++ MSG_CENTER_NOTIF(default, prefix##BLUE, strnum, flnum, args, cpid, durcnt, TCR(normal, COL_TEAM_2, strtoupper(NAME_TEAM_2)), TCR(gentle, COL_TEAM_2, strtoupper(NAME_TEAM_2))) \
++ MSG_CENTER_NOTIF(default, prefix##YELLOW, strnum, flnum, args, cpid, durcnt, TCR(normal, COL_TEAM_3, strtoupper(NAME_TEAM_3)), TCR(gentle, COL_TEAM_3, strtoupper(NAME_TEAM_3))) \
++ MSG_CENTER_NOTIF(default, prefix##PINK, strnum, flnum, args, cpid, durcnt, TCR(normal, COL_TEAM_4, strtoupper(NAME_TEAM_4)), TCR(gentle, COL_TEAM_4, strtoupper(NAME_TEAM_4)))
#define MULTITEAM_CENTER(default,prefix,teams,strnum,flnum,args,cpid,durcnt,normal,gentle) \
-- MULTITEAM_CENTER##teams(default,prefix,strnum,flnum,args,cpid,durcnt,normal,gentle)
++ MULTITEAM_CENTER##teams(default,prefix,strnum,flnum,args,cpid,durcnt,normal,gentle)
#define MSG_CENTER_NOTIFICATIONS \
- MSG_CENTER_NOTIF(1, CENTER_ALONE, 0, 0, "", NO_CPID, "0 0", _("^F4You are now alone!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_ASSAULT_ATTACKING, 0, 0, "", CPID_ASSAULT_ROLE, "0 0", _("^BGYou are attacking!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_ASSAULT_DEFENDING, 0, 0, "", CPID_ASSAULT_ROLE, "0 0", _("^BGYou are defending!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_COUNTDOWN_BEGIN, 0, 0, "", CPID_ROUND, "2 0", _("^F4Begin!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_COUNTDOWN_GAMESTART, 0, 1, "", CPID_ROUND, "1 f1", _("^F4Game starts in ^COUNT"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_COUNTDOWN_ROUNDSTART, 0, 1, "", CPID_ROUND, "1 f1", _("^F4Round starts in ^COUNT"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_COUNTDOWN_ROUNDSTOP, 0, 0, "", CPID_ROUND, "2 0", _("^F4Round cannot start"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_ROUND_TIED, 0, 0, "", CPID_ROUND, "0 0", _("^BGRound tied"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_ROUND_OVER, 0, 0, "", CPID_ROUND, "0 0", _("^BGRound over, there's no winner"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_CAMPCHECK, 0, 0, "", CPID_CAMPCHECK, "0 0", _("^F2Don't camp!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_CTF_CAPTURESHIELD_FREE, 0, 0, "", CPID_CTF_CAPSHIELD, "0 0", _("^BGYou are now free.\n^BGFeel free to ^F2try to capture^BG the flag again\n^BGif you think you will succeed."), "") \
-- MSG_CENTER_NOTIF(1, CENTER_CTF_CAPTURESHIELD_SHIELDED, 0, 0, "", CPID_CTF_CAPSHIELD, "0 0", _("^BGYou are now ^F1shielded^BG from the flag\n^BGfor ^F2too many unsuccessful attempts^BG to capture.\n^BGMake some defensive scores before trying again."), "") \
-- MULTITEAM_CENTER(1, CENTER_CTF_CAPTURE_, 2, 0, 0, "", CPID_CTF_LOWPRIO, "0 0", _("^BGYou captured the ^TC^TT^BG flag!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_CTF_FLAG_THROW_PUNISH, 0, 1, "f1secs", CPID_CTF_LOWPRIO, "0 0", _("^BGToo many flag throws! Throwing disabled for %s."), "") \
-- MULTITEAM_CENTER(1, CENTER_CTF_PASS_OTHER_, 2, 2, 0, "s1 s2", CPID_CTF_PASS, "0 0", _("^BG%s^BG passed the ^TC^TT^BG flag to %s"), "") \
-- MULTITEAM_CENTER(1, CENTER_CTF_PASS_RECEIVED_, 2, 1, 0, "s1", CPID_CTF_PASS, "0 0", _("^BGYou received the ^TC^TT^BG flag from %s"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_CTF_PASS_REQUESTED, 1, 0, "s1 pass_key", CPID_CTF_PASS, "0 0", _("^BG%s^BG requests you to pass the flag%s"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_CTF_PASS_REQUESTING, 1, 0, "s1", CPID_CTF_PASS, "0 0", _("^BGRequesting %s^BG to pass you the flag"), "") \
-- MULTITEAM_CENTER(1, CENTER_CTF_PASS_SENT_, 2, 1, 0, "s1", CPID_CTF_PASS, "0 0", _("^BGYou passed the ^TC^TT^BG flag to %s"), "") \
-- MULTITEAM_CENTER(1, CENTER_CTF_PICKUP_, 2, 0, 0, "", CPID_CTF_LOWPRIO, "0 0", _("^BGYou got the ^TC^TT^BG flag!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_CTF_PICKUP_ENEMY, 1, 0, "s1", CPID_CTF_LOWPRIO, "0 0", _("^BGThe %senemy^BG got your flag! Retrieve it!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_CTF_PICKUP_ENEMY_VERBOSE, 2, 0, "s1 s2 s1", CPID_CTF_LOWPRIO, "0 0", _("^BGThe %senemy (^BG%s%s)^BG got your flag! Retrieve it!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_CTF_PICKUP_TEAM, 1, 0, "s1", CPID_CTF_LOWPRIO, "0 0", _("^BGYour %steam mate^BG got the flag! Protect them!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_CTF_PICKUP_TEAM_VERBOSE, 2, 0, "s1 s2 s1", CPID_CTF_LOWPRIO, "0 0", _("^BGYour %steam mate (^BG%s%s)^BG got the flag! Protect them!"), "") \
-- MULTITEAM_CENTER(1, CENTER_CTF_RETURN_, 2, 0, 0, "", CPID_CTF_LOWPRIO, "0 0", _("^BGYou returned the ^TC^TT^BG flag!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_CTF_STALEMATE_CARRIER, 0, 0, "", CPID_STALEMATE, "0 0", _("^BGStalemate! Enemies can now see you on radar!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_CTF_STALEMATE_OTHER, 0, 0, "", CPID_STALEMATE, "0 0", _("^BGStalemate! Flag carriers can now be seen by enemies on radar!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_MURDER_FRAG, 1, 1, "spree_cen s1", NO_CPID, "0 0", _("^K3%sYou fragged ^BG%s"), _("^K3%sYou scored against ^BG%s")) \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_MURDER_FRAGGED, 1, 1, "spree_cen s1", NO_CPID, "0 0", _("^K1%sYou were fragged by ^BG%s"), _("^K1%sYou were scored against by ^BG%s")) \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_MURDER_FRAGGED_VERBOSE, 1, 4, "spree_cen s1 frag_stats", NO_CPID, "0 0", _("^K1%sYou were fragged by ^BG%s^BG%s"), _("^K1%sYou were scored against by ^BG%s^BG%s")) \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_MURDER_FRAG_VERBOSE, 1, 2, "spree_cen s1 frag_ping", NO_CPID, "0 0", _("^K3%sYou fragged ^BG%s^BG%s"), _("^K3%sYou scored against ^BG%s^BG%s")) \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_MURDER_TYPEFRAG, 1, 1, "spree_cen s1", NO_CPID, "0 0", _("^K1%sYou typefragged ^BG%s"), _("^K1%sYou scored against ^BG%s^K1 while they were typing")) \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_MURDER_TYPEFRAGGED, 1, 1, "spree_cen s1", NO_CPID, "0 0", _("^K1%sYou were typefragged by ^BG%s"), _("^K1%sYou were scored against by ^BG%s^K1 while typing!")) \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_MURDER_TYPEFRAGGED_VERBOSE, 1, 4, "spree_cen s1 frag_stats", NO_CPID, "0 0", _("^K1%sYou were typefragged by ^BG%s^BG%s"), _("^K1%sYou were scored against by ^BG%s^K1 while typing^BG%s")) \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_MURDER_TYPEFRAG_VERBOSE, 1, 2, "spree_cen s1 frag_ping", NO_CPID, "0 0", _("^K1%sYou typefragged ^BG%s^BG%s"), _("^K1%sYou scored against ^BG%s^K1 while they were typing^BG%s")) \
-- MSG_CENTER_NOTIF(1, CENTER_NADE_THROW, 0, 0, "", CPID_NADES, "0 0", _("^BGPress ^F2DROPWEAPON^BG again to toss the nade!"), "") \
- MSG_CENTER_NOTIF(1, CENTER_NADE_BONUS, 0, 0, "", CPID_NADES, "0 0", _("^F2You got a ^K1BONUS GRENADE^F2!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_AUTOTEAMCHANGE, 0, 1, "death_team", NO_CPID, "0 0", _("^BGYou have been moved into a different team\nYou are now on: %s"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_BETRAYAL, 0, 0, "", NO_CPID, "0 0", _("^K1Don't shoot your team mates!"), _("^K1Don't go against your team mates!")) \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_CAMP, 0, 0, "", NO_CPID, "0 0", _("^K1Die camper!"), _("^K1Reconsider your tactics, camper!")) \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_CHEAT, 0, 0, "", NO_CPID, "0 0", _("^K1You unfairly eliminated yourself!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_CUSTOM, 2, 0, "s2", NO_CPID, "0 0", _("^K1You were %s"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_DROWN, 0, 0, "", NO_CPID, "0 0", _("^K1You couldn't catch your breath!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_FALL, 0, 0, "", NO_CPID, "0 0", _("^K1You hit the ground with a crunch!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_FIRE, 0, 0, "", NO_CPID, "0 0", _("^K1You got a little bit too crispy!"), _("^K1You felt a little too hot!")) \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_GENERIC, 0, 0, "", NO_CPID, "0 0", _("^K1You killed your own dumb self!"), _("^K1You need to be more careful!")) \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_LAVA, 0, 0, "", NO_CPID, "0 0", _("^K1You couldn't stand the heat!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_MONSTER, 0, 0, "", NO_CPID, "0 0", _("^K1You were killed by a monster!"), _("^K1You need to watch out for monsters!")) \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_NADE, 0, 0, "", NO_CPID, "0 0", _("^K1You forgot to put the pin back in!"), _("^K1Tastes like chicken!")) \
- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_NADE_NAPALM, 0, 0, "", NO_CPID, "0 0", _("^K1Hanging around a napalm explosion is bad!"), "") \
- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_NADE_ICE_FREEZE, 0, 0, "", NO_CPID, "0 0", _("^K1You got a little bit too cold!"), _("^K1You felt a little chilly!")) \
- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_NADE_HEAL, 0, 0, "", NO_CPID, "0 0", _("^K1Your Healing Nade is a bit defective"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_NOAMMO, 0, 0, "", NO_CPID, "0 0", _("^K1You were killed for running out of ammo..."), _("^K1You are respawning for running out of ammo...")) \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_ROT, 0, 0, "", NO_CPID, "0 0", _("^K1You grew too old without taking your medicine"), _("^K1You need to preserve your health")) \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_SHOOTING_STAR, 0, 0, "", NO_CPID, "0 0", _("^K1You became a shooting star!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_SLIME, 0, 0, "", NO_CPID, "0 0", _("^K1You melted away in slime!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_SUICIDE, 0, 0, "", NO_CPID, "0 0", _("^K1You committed suicide!"), _("^K1You ended it all!")) \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_SWAMP, 0, 0, "", NO_CPID, "0 0", _("^K1You got stuck in a swamp!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_TEAMCHANGE, 0, 1, "death_team", NO_CPID, "0 0", _("^BGYou are now on: %s"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_TOUCHEXPLODE, 0, 0, "", NO_CPID, "0 0", _("^K1You died in an accident!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_TURRET, 0, 0, "", NO_CPID, "0 0", _("^K1You were fragged by a turret!"), _("^K1You had an unfortunate run in with a turret!")) \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_TURRET_EWHEEL, 0, 0, "", NO_CPID, "0 0", _("^K1You were fragged by an eWheel turret!"), _("^K1You had an unfortunate run in with an eWheel turret!")) \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_TURRET_WALK, 0, 0, "", NO_CPID, "0 0", _("^K1You were fragged by a Walker turret!"), _("^K1You had an unfortunate run in with a Walker turret!")) \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_VH_BUMB_DEATH, 0, 0, "", NO_CPID, "0 0", _("^K1You got caught in the blast of a Bumblebee explosion!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_VH_CRUSH, 0, 0, "", NO_CPID, "0 0", _("^K1You were crushed by a vehicle!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_VH_RAPT_BOMB, 0, 0, "", NO_CPID, "0 0", _("^K1You were caught in a Raptor cluster bomb!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_VH_RAPT_DEATH, 0, 0, "", NO_CPID, "0 0", _("^K1You got caught in the blast of a Raptor explosion!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_VH_SPID_DEATH, 0, 0, "", NO_CPID, "0 0", _("^K1You got caught in the blast of a Spiderbot explosion!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_VH_SPID_ROCKET, 0, 0, "", NO_CPID, "0 0", _("^K1You were blasted to bits by a Spiderbot rocket!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_VH_WAKI_DEATH, 0, 0, "", NO_CPID, "0 0", _("^K1You got caught in the blast of a Racer explosion!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_VH_WAKI_ROCKET, 0, 0, "", NO_CPID, "0 0", _("^K1You couldn't find shelter from a Racer rocket!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_VOID, 0, 0, "", NO_CPID, "0 0", _("^K1Watch your step!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_TEAMKILL_FRAG, 1, 0, "s1", NO_CPID, "0 0", _("^K1Moron! You fragged ^BG%s^K1, a team mate!"), _("^K1Moron! You went against ^BG%s^K1, a team mate!")) \
-- MSG_CENTER_NOTIF(1, CENTER_DEATH_TEAMKILL_FRAGGED, 1, 0, "s1", NO_CPID, "0 0", _("^K1You were fragged by ^BG%s^K1, a team mate"), _("^K1You were scored against by ^BG%s^K1, a team mate")) \
-- MSG_CENTER_NOTIF(1, CENTER_DISCONNECT_IDLING, 0, 1, "", CPID_IDLING, "1 f1", _("^K1Stop idling!\n^BGDisconnecting in ^COUNT..."), "") \
- MSG_CENTER_NOTIF(1, CENTER_DOOR_LOCKED_NEED, 0, 0, "", NO_CPID, "0 0", _("^BGYou need %s^BG!"), "") \
- MSG_CENTER_NOTIF(1, CENTER_DOOR_LOCKED_ALSONEED, 0, 0, "", NO_CPID, "0 0", _("^BGYou also need %s^BG!"), "") \
- MSG_CENTER_NOTIF(1, CENTER_DOOR_UNLOCKED, 0, 0, "", NO_CPID, "0 0", _("^BGDoor unlocked!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_EXTRALIVES, 0, 0, "", NO_CPID, "0 0", _("^F2You picked up some extra lives"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_FREEZETAG_FREEZE, 1, 0, "s1", NO_CPID, "0 0", _("^K3You froze ^BG%s"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_FREEZETAG_FROZEN, 1, 0, "s1", NO_CPID, "0 0", _("^K1You were frozen by ^BG%s"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_FREEZETAG_REVIVE, 1, 0, "s1", NO_CPID, "0 0", _("^K3You revived ^BG%s"), "") \
- MSG_CENTER_NOTIF(1, CENTER_FREEZETAG_REVIVE_FALL, 0, 0, "", NO_CPID, "0 0", _("^K3You revived yourself"), "") \
- MSG_CENTER_NOTIF(1, CENTER_FREEZETAG_REVIVE_SELF, 0, 0, "", NO_CPID, "0 0", _("^K3You revived yourself"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_FREEZETAG_REVIVED, 1, 0, "s1", NO_CPID, "0 0", _("^K3You were revived by ^BG%s"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_FREEZETAG_AUTO_REVIVED, 0, 1, "f1", NO_CPID, "0 0", _("^K3You were automatically revived after %s second(s)"), "") \
-- MULTITEAM_CENTER(1, CENTER_ROUND_TEAM_WIN_, 4, 0, 0, "", CPID_ROUND, "0 0", _("^TC^TT^BG team wins the round"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_ROUND_PLAYER_WIN, 1, 0, "s1", CPID_ROUND, "0 0", _("^BG%s^BG wins the round"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_FREEZETAG_SELF, 0, 0, "", NO_CPID, "0 0", _("^K1You froze yourself"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_FREEZETAG_SPAWN_LATE, 0, 0, "", NO_CPID, "0 0", _("^K1Round already started, you spawn as frozen"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_INVASION_SUPERMONSTER, 1, 0, "s1", NO_CPID, "0 0", _("^K1A %s has arrived!"), "") \
- MSG_CENTER_NOTIF(1, CENTER_ITEM_BUFF_DROP, 0, 1, "item_buffname", CPID_ITEM, "item_centime 0", _("^BGYou dropped the %s^BG Buff!"), "") \
- MSG_CENTER_NOTIF(1, CENTER_ITEM_BUFF_GOT, 0, 1, "item_buffname", CPID_ITEM, "item_centime 0", _("^BGYou got the %s^BG Buff!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_ITEM_WEAPON_DONTHAVE, 0, 1, "item_wepname", CPID_ITEM, "item_centime 0", _("^BGYou do not have the ^F1%s"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_ITEM_WEAPON_DROP, 1, 1, "item_wepname item_wepammo", CPID_ITEM, "item_centime 0", _("^BGYou dropped the ^F1%s^BG%s"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_ITEM_WEAPON_GOT, 0, 1, "item_wepname", CPID_ITEM, "item_centime 0", _("^BGYou got the ^F1%s"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_ITEM_WEAPON_NOAMMO, 0, 1, "item_wepname", CPID_ITEM, "item_centime 0", _("^BGYou don't have enough ammo for the ^F1%s"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_ITEM_WEAPON_PRIMORSEC, 0, 3, "item_wepname f2primsec f3primsec", CPID_ITEM, "item_centime 0", _("^F1%s %s^BG is unable to fire, but its ^F1%s^BG can"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_ITEM_WEAPON_UNAVAILABLE, 0, 1, "item_wepname", CPID_ITEM, "item_centime 0", _("^F1%s^BG is ^F4not available^BG on this map"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_JOIN_NOSPAWNS, 0, 0, "", CPID_PREVENT_JOIN, "0 0", _("^K1No spawnpoints available!\nHope your team can fix it..."), "") \
-- MSG_CENTER_NOTIF(1, CENTER_JOIN_PREVENT, 0, 0, "", CPID_PREVENT_JOIN, "0 0", _("^K1You may not join the game at this time.\nThe player limit reached maximum capacity."), "") \
-- MSG_CENTER_NOTIF(1, CENTER_KEEPAWAY_DROPPED, 1, 0, "s1", CPID_KEEPAWAY, "0 0", _("^BG%s^BG has dropped the ball!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_KEEPAWAY_PICKUP, 1, 0, "s1", CPID_KEEPAWAY, "0 0", _("^BG%s^BG has picked up the ball!"), "") \
- MSG_CENTER_NOTIF(1, CENTER_KEEPAWAY_PICKUP_SELF, 0, 0, "", CPID_KEEPAWAY, "0 0", _("^BGYou picked up the ball"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_KEEPAWAY_WARN, 0, 0, "", CPID_KEEPAWAY_WARN, "0 0", _("^BGKilling people while you don't have the ball gives no points!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_KEYHUNT_HELP, 0, 0, "", CPID_KEYHUNT, "0 0", _("^BGAll keys are in your team's hands!\nHelp the key carriers to meet!"), "") \
-- MULTITEAM_CENTER(1, CENTER_KEYHUNT_INTERFERE_, 4, 0, 0, "", CPID_KEYHUNT, "0 0", _("^BGAll keys are in ^TC^TT team^BG's hands!\nInterfere ^F4NOW^BG!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_KEYHUNT_MEET, 0, 0, "", CPID_KEYHUNT, "0 0", _("^BGAll keys are in your team's hands!\nMeet the other key carriers ^F4NOW^BG!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_KEYHUNT_ROUNDSTART, 0, 1, "", CPID_KEYHUNT_OTHER, "1 f1", _("^F4Round will start in ^COUNT"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_KEYHUNT_SCAN, 0, 1, "", CPID_KEYHUNT_OTHER, "f1 0", _("^BGScanning frequency range..."), "") \
-- MULTITEAM_CENTER(1, CENTER_KEYHUNT_START_, 4, 0, 0, "", CPID_KEYHUNT, "0 0", _("^BGYou are starting with the ^TC^TT Key"), "") \
- MSG_CENTER_NOTIF(1, CENTER_KEYHUNT_WAIT, 0, 4, "missing_teams", CPID_KEYHUNT_OTHER, "0 0", _("^BGWaiting for players to join...\nNeed active players for: %s"), "") \
- MSG_CENTER_NOTIF(1, CENTER_MISSING_TEAMS, 0, 4, "missing_teams", CPID_MISSING_TEAMS, "-1 0", _("^BGWaiting for players to join...\nNeed active players for: %s"), "") \
- MSG_CENTER_NOTIF(1, CENTER_KEYHUNT_WAIT, 0, 1, "missing_teams", CPID_KEYHUNT_OTHER, "0 0", _("^BGWaiting for players to join...\nNeed active players for: %s"), "") \
- MSG_CENTER_NOTIF(1, CENTER_MISSING_TEAMS, 0, 1, "missing_teams", CPID_MISSING_TEAMS, "-1 0", _("^BGWaiting for players to join...\nNeed active players for: %s"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_MISSING_PLAYERS, 0, 1, "f1", CPID_MISSING_PLAYERS, "-1 0", _("^BGWaiting for %s player(s) to join..."), "") \
-- MSG_CENTER_NOTIF(1, CENTER_MINSTA_FINDAMMO, 0, 0, "", CPID_MINSTA_FINDAMMO, "1 9", _("^F4^COUNT^BG left to find some ammo!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_MINSTA_FINDAMMO_FIRST, 0, 0, "", CPID_MINSTA_FINDAMMO, "1 10", _("^BGGet some ammo or you'll be dead in ^F4^COUNT^BG!"), _("^BGGet some ammo! ^F4^COUNT^BG left!")) \
-- MSG_CENTER_NOTIF(1, CENTER_MINSTA_LIVES_REMAINING, 0, 1, "f1", NO_CPID, "0 0", _("^F2Extra lives remaining: ^K1%s"), "") \
- MSG_CENTER_NOTIF(1, CENTER_MINSTA_SECONDARY, 0, 0, "", NO_CPID, "0 0", _("^BGSecondary fire inflicts no damage!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_MOTD, 1, 0, "s1", CPID_MOTD, "-1 0", _("^BG%s"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_NIX_COUNTDOWN, 0, 2, "item_wepname", CPID_NIX, "1 f2", _("^F2^COUNT^BG until weapon change...\nNext weapon: ^F1%s"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_NIX_NEWWEAPON, 0, 1, "item_wepname", CPID_NIX, "0 0", _("^F2Active weapon: ^F1%s"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_NADE, 0, 0, "", NO_CPID, "0 0", _("^BGPress ^F2DROPWEAPON^BG again to toss the grenade!"), "") \
- MSG_CENTER_NOTIF(1, CENTER_OVERKILL_CHARGE, 0, 0, "", CPID_OVERKILL, "0 0", _("^BGYour weapon's charge is too low, release the attack button & wait for it to charge"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_OVERTIME_FRAG, 0, 0, "", CPID_OVERTIME, "0 0", _("^F2Now playing ^F4OVERTIME^F2!\nKeep fragging until we have a winner!"), _("^F2Now playing ^F4OVERTIME^F2!\nKeep scoring until we have a winner!")) \
-- MSG_CENTER_NOTIF(1, CENTER_OVERTIME_TIME, 0, 1, "f1time", CPID_OVERTIME, "0 0", _("^F2Now playing ^F4OVERTIME^F2!\n^BGAdded ^F4%s^BG to the game!"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_POWERDOWN_INVISIBILITY, 0, 0, "", CPID_POWERUP, "0 0", _("^F2Invisibility has worn off"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_POWERDOWN_SHIELD, 0, 0, "", CPID_POWERUP, "0 0", _("^F2Shield has worn off"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_POWERDOWN_SPEED, 0, 0, "", CPID_POWERUP, "0 0", _("^F2Speed has worn off"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_POWERDOWN_STRENGTH, 0, 0, "", CPID_POWERUP, "0 0", _("^F2Strength has worn off"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_POWERUP_INVISIBILITY, 0, 0, "", CPID_POWERUP, "0 0", _("^F2You are invisible"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_POWERUP_SHIELD, 0, 0, "", CPID_POWERUP, "0 0", _("^F2Shield surrounds you"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_POWERUP_SPEED, 0, 0, "", CPID_POWERUP, "0 0", _("^F2You are on speed"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_POWERUP_STRENGTH, 0, 0, "", CPID_POWERUP, "0 0", _("^F2Strength infuses your weapons with devastating power"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_RACE_FINISHLAP, 0, 0, "", CPID_RACE_FINISHLAP, "0 0", _("^F2The race is over, finish your lap!"), "") \
- MSG_CENTER_NOTIF(1, CENTER_SECONDARY_NODAMAGE, 0, 0, "", NO_CPID, "0 0", _("^BGSecondary fire inflicts no damage!"), "") \
- MSG_CENTER_NOTIF(1, CENTER_SEQUENCE_COMPLETED, 0, 0, "", NO_CPID, "0 0", _("^BGSequence completed!"), "") \
- MSG_CENTER_NOTIF(1, CENTER_SEQUENCE_COUNTER, 0, 0, "", NO_CPID, "0 0", _("^BGThere are more to go..."), "") \
- MSG_CENTER_NOTIF(1, CENTER_SEQUENCE_COUNTER_FEWMORE, 0, 1, "f1", NO_CPID, "0 0", _("^BGOnly %s^BG more to go..."), "") \
-- MSG_CENTER_NOTIF(1, CENTER_SUPERWEAPON_BROKEN, 0, 0, "", CPID_POWERUP, "0 0", _("^F2Superweapons have broken down"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_SUPERWEAPON_LOST, 0, 0, "", CPID_POWERUP, "0 0", _("^F2Superweapons have been lost"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_SUPERWEAPON_PICKUP, 0, 0, "", CPID_POWERUP, "0 0", _("^F2You now have a superweapon"), "") \
-- MULTITEAM_CENTER(1, CENTER_TEAMCHANGE_, 4, 0, 1, "", CPID_TEAMCHANGE, "1 f1", _("^K1Changing to ^TC^TT^K1 in ^COUNT"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_TEAMCHANGE_AUTO, 0, 1, "", CPID_TEAMCHANGE, "1 f1", _("^K1Changing team in ^COUNT"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_TEAMCHANGE_SPECTATE, 0, 1, "", CPID_TEAMCHANGE, "1 f1", _("^K1Spectating in ^COUNT"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_TEAMCHANGE_SUICIDE, 0, 1, "", CPID_TEAMCHANGE, "1 f1", _("^K1Suicide in ^COUNT"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_TIMEOUT_BEGINNING, 0, 1, "", CPID_TIMEOUT, "1 f1", _("^F4Timeout begins in ^COUNT"), "") \
-- MSG_CENTER_NOTIF(1, CENTER_TIMEOUT_ENDING, 0, 1, "", CPID_TIMEOUT, "1 f1", _("^F4Timeout ends in ^COUNT"), "")
++ MSG_CENTER_NOTIF(1, CENTER_ALONE, 0, 0, "", NO_CPID, "0 0", _("^F4You are now alone!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_ASSAULT_ATTACKING, 0, 0, "", CPID_ASSAULT_ROLE, "0 0", _("^BGYou are attacking!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_ASSAULT_DEFENDING, 0, 0, "", CPID_ASSAULT_ROLE, "0 0", _("^BGYou are defending!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_COUNTDOWN_BEGIN, 0, 0, "", CPID_ROUND, "2 0", _("^F4Begin!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_COUNTDOWN_GAMESTART, 0, 1, "", CPID_ROUND, "1 f1", _("^F4Game starts in ^COUNT"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_COUNTDOWN_ROUNDSTART, 0, 1, "", CPID_ROUND, "1 f1", _("^F4Round starts in ^COUNT"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_COUNTDOWN_ROUNDSTOP, 0, 0, "", CPID_ROUND, "2 0", _("^F4Round cannot start"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_ROUND_TIED, 0, 0, "", CPID_ROUND, "0 0", _("^BGRound tied"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_ROUND_OVER, 0, 0, "", CPID_ROUND, "0 0", _("^BGRound over, there's no winner"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_CAMPCHECK, 0, 0, "", CPID_CAMPCHECK, "0 0", _("^F2Don't camp!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_CTF_CAPTURESHIELD_FREE, 0, 0, "", CPID_CTF_CAPSHIELD, "0 0", _("^BGYou are now free.\n^BGFeel free to ^F2try to capture^BG the flag again\n^BGif you think you will succeed."), "") \
++ MSG_CENTER_NOTIF(1, CENTER_CTF_CAPTURESHIELD_SHIELDED, 0, 0, "", CPID_CTF_CAPSHIELD, "0 0", _("^BGYou are now ^F1shielded^BG from the flag\n^BGfor ^F2too many unsuccessful attempts^BG to capture.\n^BGMake some defensive scores before trying again."), "") \
++ MULTITEAM_CENTER(1, CENTER_CTF_CAPTURE_, 2, 0, 0, "", CPID_CTF_LOWPRIO, "0 0", _("^BGYou captured the ^TC^TT^BG flag!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_CTF_FLAG_THROW_PUNISH, 0, 1, "f1secs", CPID_CTF_LOWPRIO, "0 0", _("^BGToo many flag throws! Throwing disabled for %s."), "") \
++ MULTITEAM_CENTER(1, CENTER_CTF_PASS_OTHER_, 2, 2, 0, "s1 s2", CPID_CTF_PASS, "0 0", _("^BG%s^BG passed the ^TC^TT^BG flag to %s"), "") \
++ MULTITEAM_CENTER(1, CENTER_CTF_PASS_RECEIVED_, 2, 1, 0, "s1", CPID_CTF_PASS, "0 0", _("^BGYou received the ^TC^TT^BG flag from %s"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_CTF_PASS_REQUESTED, 1, 0, "s1 pass_key", CPID_CTF_PASS, "0 0", _("^BG%s^BG requests you to pass the flag%s"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_CTF_PASS_REQUESTING, 1, 0, "s1", CPID_CTF_PASS, "0 0", _("^BGRequesting %s^BG to pass you the flag"), "") \
++ MULTITEAM_CENTER(1, CENTER_CTF_PASS_SENT_, 2, 1, 0, "s1", CPID_CTF_PASS, "0 0", _("^BGYou passed the ^TC^TT^BG flag to %s"), "") \
++ MULTITEAM_CENTER(1, CENTER_CTF_PICKUP_, 2, 0, 0, "", CPID_CTF_LOWPRIO, "0 0", _("^BGYou got the ^TC^TT^BG flag!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_CTF_PICKUP_ENEMY, 1, 0, "s1", CPID_CTF_LOWPRIO, "0 0", _("^BGThe %senemy^BG got your flag! Retrieve it!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_CTF_PICKUP_ENEMY_VERBOSE, 2, 0, "s1 s2 s1", CPID_CTF_LOWPRIO, "0 0", _("^BGThe %senemy (^BG%s%s)^BG got your flag! Retrieve it!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_CTF_PICKUP_TEAM, 1, 0, "s1", CPID_CTF_LOWPRIO, "0 0", _("^BGYour %steam mate^BG got the flag! Protect them!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_CTF_PICKUP_TEAM_VERBOSE, 2, 0, "s1 s2 s1", CPID_CTF_LOWPRIO, "0 0", _("^BGYour %steam mate (^BG%s%s)^BG got the flag! Protect them!"), "") \
++ MULTITEAM_CENTER(1, CENTER_CTF_RETURN_, 2, 0, 0, "", CPID_CTF_LOWPRIO, "0 0", _("^BGYou returned the ^TC^TT^BG flag!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_CTF_STALEMATE_CARRIER, 0, 0, "", CPID_STALEMATE, "0 0", _("^BGStalemate! Enemies can now see you on radar!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_CTF_STALEMATE_OTHER, 0, 0, "", CPID_STALEMATE, "0 0", _("^BGStalemate! Flag carriers can now be seen by enemies on radar!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_MURDER_FRAG, 1, 1, "spree_cen s1", NO_CPID, "0 0", _("^K3%sYou fragged ^BG%s"), _("^K3%sYou scored against ^BG%s")) \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_MURDER_FRAGGED, 1, 1, "spree_cen s1", NO_CPID, "0 0", _("^K1%sYou were fragged by ^BG%s"), _("^K1%sYou were scored against by ^BG%s")) \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_MURDER_FRAGGED_VERBOSE, 1, 4, "spree_cen s1 frag_stats", NO_CPID, "0 0", _("^K1%sYou were fragged by ^BG%s^BG%s"), _("^K1%sYou were scored against by ^BG%s^BG%s")) \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_MURDER_FRAG_VERBOSE, 1, 2, "spree_cen s1 frag_ping", NO_CPID, "0 0", _("^K3%sYou fragged ^BG%s^BG%s"), _("^K3%sYou scored against ^BG%s^BG%s")) \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_MURDER_TYPEFRAG, 1, 1, "spree_cen s1", NO_CPID, "0 0", _("^K1%sYou typefragged ^BG%s"), _("^K1%sYou scored against ^BG%s^K1 while they were typing")) \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_MURDER_TYPEFRAGGED, 1, 1, "spree_cen s1", NO_CPID, "0 0", _("^K1%sYou were typefragged by ^BG%s"), _("^K1%sYou were scored against by ^BG%s^K1 while typing!")) \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_MURDER_TYPEFRAGGED_VERBOSE, 1, 4, "spree_cen s1 frag_stats", NO_CPID, "0 0", _("^K1%sYou were typefragged by ^BG%s^BG%s"), _("^K1%sYou were scored against by ^BG%s^K1 while typing^BG%s")) \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_MURDER_TYPEFRAG_VERBOSE, 1, 2, "spree_cen s1 frag_ping", NO_CPID, "0 0", _("^K1%sYou typefragged ^BG%s^BG%s"), _("^K1%sYou scored against ^BG%s^K1 while they were typing^BG%s")) \
++ MSG_CENTER_NOTIF(1, CENTER_NADE_THROW, 0, 0, "", CPID_NADES, "0 0", _("^BGPress ^F2DROPWEAPON^BG again to toss the nade!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_NADE_BONUS, 0, 0, "", CPID_NADES, "0 0", _("^F2You got a ^K1BONUS GRENADE^F2!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_AUTOTEAMCHANGE, 0, 1, "death_team", NO_CPID, "0 0", _("^BGYou have been moved into a different team\nYou are now on: %s"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_BETRAYAL, 0, 0, "", NO_CPID, "0 0", _("^K1Don't shoot your team mates!"), _("^K1Don't go against your team mates!")) \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_CAMP, 0, 0, "", NO_CPID, "0 0", _("^K1Die camper!"), _("^K1Reconsider your tactics, camper!")) \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_CHEAT, 0, 0, "", NO_CPID, "0 0", _("^K1You unfairly eliminated yourself!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_CUSTOM, 2, 0, "s2", NO_CPID, "0 0", _("^K1You were %s"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_DROWN, 0, 0, "", NO_CPID, "0 0", _("^K1You couldn't catch your breath!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_FALL, 0, 0, "", NO_CPID, "0 0", _("^K1You hit the ground with a crunch!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_FIRE, 0, 0, "", NO_CPID, "0 0", _("^K1You got a little bit too crispy!"), _("^K1You felt a little too hot!")) \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_GENERIC, 0, 0, "", NO_CPID, "0 0", _("^K1You killed your own dumb self!"), _("^K1You need to be more careful!")) \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_LAVA, 0, 0, "", NO_CPID, "0 0", _("^K1You couldn't stand the heat!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_MONSTER, 0, 0, "", NO_CPID, "0 0", _("^K1You were killed by a monster!"), _("^K1You need to watch out for monsters!")) \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_NADE, 0, 0, "", NO_CPID, "0 0", _("^K1You forgot to put the pin back in!"), _("^K1Tastes like chicken!")) \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_NADE_NAPALM, 0, 0, "", NO_CPID, "0 0", _("^K1Hanging around a napalm explosion is bad!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_NADE_ICE_FREEZE, 0, 0, "", NO_CPID, "0 0", _("^K1You got a little bit too cold!"), _("^K1You felt a little chilly!")) \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_NADE_HEAL, 0, 0, "", NO_CPID, "0 0", _("^K1Your Healing Nade is a bit defective"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_NOAMMO, 0, 0, "", NO_CPID, "0 0", _("^K1You were killed for running out of ammo..."), _("^K1You are respawning for running out of ammo...")) \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_ROT, 0, 0, "", NO_CPID, "0 0", _("^K1You grew too old without taking your medicine"), _("^K1You need to preserve your health")) \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_SHOOTING_STAR, 0, 0, "", NO_CPID, "0 0", _("^K1You became a shooting star!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_SLIME, 0, 0, "", NO_CPID, "0 0", _("^K1You melted away in slime!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_SUICIDE, 0, 0, "", NO_CPID, "0 0", _("^K1You committed suicide!"), _("^K1You ended it all!")) \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_SWAMP, 0, 0, "", NO_CPID, "0 0", _("^K1You got stuck in a swamp!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_TEAMCHANGE, 0, 1, "death_team", NO_CPID, "0 0", _("^BGYou are now on: %s"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_TOUCHEXPLODE, 0, 0, "", NO_CPID, "0 0", _("^K1You died in an accident!"), "") \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_TURRET, 0, 0, "", NO_CPID, "0 0", _("^K1You were fragged by a turret!"), _("^K1You had an unfortunate run in with a turret!")) \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_TURRET_EWHEEL, 0, 0, "", NO_CPID, "0 0", _("^K1You were fragged by an eWheel turret!"), _("^K1You had an unfortunate run in with an eWheel turret!")) \
++ MSG_CENTER_NOTIF(1, CENTER_DEATH_SELF_TURRET_WALK, 0, 0, "", NO_CPID, "0 0", _("^K1You were fragged by a Walker turret!"), _("^K1You had an unfortunate run in with a Walker turret!")) \
++ &n