set g_start_weapon_crylink -1 "0 = never provide the weapon, 1 = always provide the weapon, -1 = game mode default"
set g_start_weapon_nex -1 "0 = never provide the weapon, 1 = always provide the weapon, -1 = game mode default"
set g_start_weapon_hagar -1 "0 = never provide the weapon, 1 = always provide the weapon, -1 = game mode default" // UNTIL IT CAN BE REMOVED FROM CODE
-set g_start_weapon_rocketlauncher -1 "0 = never provide the weapon, 1 = always provide the weapon, -1 = game mode default"
+set g_start_weapon_devastator -1 "0 = never provide the weapon, 1 = always provide the weapon, -1 = game mode default"
set g_start_weapon_minstanex -1 "0 = never provide the weapon, 1 = always provide the weapon, -1 = game mode default"
set g_start_weapon_porto -1 "0 = never provide the weapon, 1 = always provide the weapon, -1 = game mode default"
set g_start_weapon_hook -1 "0 = never provide the weapon, 1 = always provide the weapon, -1 = game mode default"
set g_balance_hagar_reload_ammo 0 //default: 25
set g_balance_hagar_reload_time 2
// }}}
-// {{{ rocketlauncher
-set g_balance_rocketlauncher_damage 80
-set g_balance_rocketlauncher_edgedamage 40
-set g_balance_rocketlauncher_force 450
-set g_balance_rocketlauncher_radius 110
-set g_balance_rocketlauncher_speed 1300
-set g_balance_rocketlauncher_speedaccel 1300
-set g_balance_rocketlauncher_speedstart 1000
-set g_balance_rocketlauncher_lifetime 10
-set g_balance_rocketlauncher_refire 1.1
-set g_balance_rocketlauncher_animtime 0.4
-set g_balance_rocketlauncher_ammo 4
-set g_balance_rocketlauncher_health 30 // 30 // 5 hitpoints above maximum laser value -- this way lasers can't blow it up, but grenadelauncher still can most the time.
-set g_balance_rocketlauncher_damageforcescale 1 // low damage force scale so that it can still be affected by other hits, but not so much that it does a 90 degree turn
-set g_balance_rocketlauncher_detonatedelay 0.02 // positive: timer till detonation is allowed, negative: "security device" that prevents ANY remote detonation if it could hurt its owner, zero: detonatable at any time
-set g_balance_rocketlauncher_guiderate 90 // max degrees per second
-set g_balance_rocketlauncher_guideratedelay 0.01 // immediate
-set g_balance_rocketlauncher_guidegoal 512 // goal distance for (non-laser) guiding (higher = less control, lower = erratic)
-set g_balance_rocketlauncher_guidedelay 0.2 // delay before guiding kicks in
-set g_balance_rocketlauncher_guidestop 0 // stop guiding when firing again
-set g_balance_rocketlauncher_remote_damage 70
-set g_balance_rocketlauncher_remote_edgedamage 35
-set g_balance_rocketlauncher_remote_radius 110
-set g_balance_rocketlauncher_remote_force 400
-set g_balance_rocketlauncher_switchdelay_drop 0.2
-set g_balance_rocketlauncher_switchdelay_raise 0.2
-set g_balance_rocketlauncher_reload_ammo 0 //default: 25
-set g_balance_rocketlauncher_reload_time 2
+// {{{ devastator
+set g_balance_devastator_damage 80
+set g_balance_devastator_edgedamage 40
+set g_balance_devastator_force 450
+set g_balance_devastator_radius 110
+set g_balance_devastator_speed 1300
+set g_balance_devastator_speedaccel 1300
+set g_balance_devastator_speedstart 1000
+set g_balance_devastator_lifetime 10
+set g_balance_devastator_refire 1.1
+set g_balance_devastator_animtime 0.4
+set g_balance_devastator_ammo 4
+set g_balance_devastator_health 30 // 30 // 5 hitpoints above maximum laser value -- this way lasers can't blow it up, but grenadelauncher still can most the time.
+set g_balance_devastator_damageforcescale 1 // low damage force scale so that it can still be affected by other hits, but not so much that it does a 90 degree turn
+set g_balance_devastator_detonatedelay 0.02 // positive: timer till detonation is allowed, negative: "security device" that prevents ANY remote detonation if it could hurt its owner, zero: detonatable at any time
+set g_balance_devastator_guiderate 90 // max degrees per second
+set g_balance_devastator_guideratedelay 0.01 // immediate
+set g_balance_devastator_guidegoal 512 // goal distance for (non-laser) guiding (higher = less control, lower = erratic)
+set g_balance_devastator_guidedelay 0.2 // delay before guiding kicks in
+set g_balance_devastator_guidestop 0 // stop guiding when firing again
+set g_balance_devastator_remote_damage 70
+set g_balance_devastator_remote_edgedamage 35
+set g_balance_devastator_remote_radius 110
+set g_balance_devastator_remote_force 400
+set g_balance_devastator_switchdelay_drop 0.2
+set g_balance_devastator_switchdelay_raise 0.2
+set g_balance_devastator_reload_ammo 0 //default: 25
+set g_balance_devastator_reload_time 2
// }}}
// {{{ porto
set g_balance_porto_primary_refire 1.5
float MAX_SHOT_DISTANCE = 32768;
// weapon requests // WEAPONTODO
-float WR_SETUP = 1; // (SVQC) setup weapon data
-float WR_THINK = 2; // (SVQC) logic to run every frame
-float WR_CHECKAMMO1 = 3; // (SVQC) checks ammo for weapon
-float WR_CHECKAMMO2 = 4; // (SVQC) checks ammo for weapon
-float WR_AIM = 5; // (SVQC) runs bot aiming code for this weapon
-float WR_INIT = 6; // (CSQC and SVQC) precaches models/sounds used by this weapon
-float WR_SUICIDEMESSAGE = 7; // (SVQC) notification number for suicide message (may inspect w_deathtype for details)
-float WR_KILLMESSAGE = 8; // (SVQC) notification number for kill message (may inspect w_deathtype for details)
-float WR_RELOAD = 9; // (SVQC) does not need to do anything
-float WR_RESETPLAYER = 10; // (SVQC) does not need to do anything
-float WR_IMPACTEFFECT = 11; // (CSQC) impact effect
-float WR_SWITCHABLE = 12; // (CSQC) impact effect
-float WR_PLAYERDEATH = 13; // (SVQC) does not need to do anything
-float WR_GONETHINK = 14; // (SVQC) logic to run every frame, also if no longer having the weapon as long as the switch away has not been performed
-float WR_CONFIG = 15;
+#define WR_SETUP 1 // (SERVER) setup weapon data
+#define WR_THINK 2 // (SERVER) logic to run every frame
+#define WR_CHECKAMMO1 3 // (SERVER) checks ammo for weapon
+#define WR_CHECKAMMO2 4 // (SERVER) checks ammo for weapon
+#define WR_AIM 5 // (SERVER) runs bot aiming code for this weapon
+#define WR_INIT 6 // (BOTH) precaches models/sounds used by this weapon
+#define WR_SUICIDEMESSAGE 7 // (SERVER) notification number for suicide message (may inspect w_deathtype for details)
+#define WR_KILLMESSAGE 8 // (SERVER) notification number for kill message (may inspect w_deathtype for details)
+#define WR_RELOAD 9 // (SERVER) does not need to do anything
+#define WR_RESETPLAYER 10 // (SERVER) does not need to do anything
+#define WR_IMPACTEFFECT 11 // (CLIENT) impact effect
+#define WR_SWITCHABLE 12 // (CLIENT) impact effect
+#define WR_PLAYERDEATH 13 // (SERVER) does not need to do anything
+#define WR_GONETHINK 14 // (SERVER) logic to run every frame, also if no longer having the weapon as long as the switch away has not been performed
+#define WR_CONFIG 15 // (ALL)
// WEAPONTODO
float IT_UNLIMITED_WEAPON_AMMO = 1;