From: Mario Date: Tue, 11 Jun 2013 04:32:43 +0000 (+1000) Subject: Merge branch 'Mario/nades_mutator' into Mario/mutators X-Git-Tag: xonotic-v0.8.0~366^2~25 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=b0c28b8ffa783fef2f935f4d1fef38b27b55581b;p=xonotic%2Fxonotic-data.pk3dir.git Merge branch 'Mario/nades_mutator' into Mario/mutators --- b0c28b8ffa783fef2f935f4d1fef38b27b55581b diff --cc mutators.cfg index ba012ed74,000000000..054a32c0a mode 100644,000000..100644 --- a/mutators.cfg +++ b/mutators.cfg @@@ -1,130 -1,0 +1,147 @@@ +// ========================= +// Config for all mutators +// ========================= + + +// ========= +// dodging +// ========= +set g_dodging 0 "set to 1 to enable dodging in games" + +seta cl_dodging_timeout 0.2 "determines how long apart (in seconds) two taps on the same direction key are considered a dodge. use 0 to disable" + +set sv_dodging_wall_dodging 0 "set to 1 to allow dodging off walls. 0 to disable" +set sv_dodging_delay 0.5 "determines how long a player has to wait to be able to dodge again after dodging" +set sv_dodging_up_speed 200 "the jump velocity of the dodge" +set sv_dodging_horiz_speed 400 "the horizontal velocity of the dodge" +set sv_dodging_ramp_time 0.1 "a ramp so that the horizontal part of the dodge is added smoothly (seconds)" +set sv_dodging_height_threshold 10 "the maximum height above ground where to allow dodging" +set sv_dodging_wall_distance_threshold 10 "the maximum distance from a wall that still allows dodging" +set sv_dodging_sound 1 "if 1 dodging makes a sound. if 0 dodging is silent" + + +// =========== +// minstagib +// =========== +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" + + +// ========= +// vampire +// ========= +set g_vampire 0 "set to 1 to enable the vampire mode, where the damage done to your opponent gets added to your own health" + + +// ========= +// sandbox +// ========= +set g_sandbox 0 "allow players to spawn and edit objects around the map" +set g_sandbox_info 1 "print object information to the server. 1 prints info about spawned / removed objects, 2 also prints info about edited objects" +set g_sandbox_readonly 0 "when this mode is active, players cannot modify objects or use any sandbox commands" +set g_sandbox_storage_name default "name of the selected storage to use" +set g_sandbox_storage_autosave 5 "storage is automatically saved every specified number of seconds" +set g_sandbox_storage_autoload 1 "if a storage file exists for the given map, automatically load it at startup" +set g_sandbox_editor_flood 1 "players must wait this many seconds between spawning objects" +set g_sandbox_editor_maxobjects 1000 "maximum number of objects that may exist at a time" +set g_sandbox_editor_free 1 "0 = players can only copy or edit their own objects, 1 = players can copy but not edit other objects, 2 = players can copy and edit all object" +set g_sandbox_editor_distance_spawn 200 "distance at which objects spawn in front of the player" +set g_sandbox_editor_distance_edit 300 "distance at which players can edit or remove objects they are looking at" +set g_sandbox_object_scale_min 0.1 "minimum scale that objects can be set to" +set g_sandbox_object_scale_max 2 "maximum scale that objects can be set to" +set g_sandbox_object_material_velocity_min 100 "velocity objects must have while colliding for material effects to be applied" +set g_sandbox_object_material_velocity_factor 0.002 "velocity range which decides the intensity of material effects" +set cl_sandbox_clipboard "" + + +// ======================== +// invincible projectiles +// ======================== +set g_invincible_projectiles 0 "set to 1 to disable any damage to projectiles in all balance configs, regardless of g_projectiles_damage" + + +// =============== +// rocket flying +// =============== +set g_rocket_flying 0 "set to 1 to enable rocket flying in all balance configs" + + +// ===================== +// spawn near teammate +// ===================== +set g_spawn_near_teammate 0 "if set, players prefer spawns near a team mate" +set g_spawn_near_teammate_distance 640 "max distance to consider a spawn to be near a team mate" + + +// ======================== +// NIX (No Items Xonotic) +// ======================== +// at each time, everyone uses the same weapon, +// and in regular intervals, this weapon is cycled +set g_nix 0 "No Items Xonotic - instead of pickup items, everyone plays with the same weapon. After some time, a countdown will start, after which everyone will switch to another weapon, and so on" +set g_nix_with_laser 0 "always carry the laser as an additional weapon in NIX" +set g_nix_with_healtharmor 0 "when 1, health and armor still show up in NIX" +set g_nix_with_powerups 0 "when 1, powerups still show up in NIX" + + +// ================ +// physical items +// ================ +set g_physical_items 0 "1 uses ODE physics for dropped weapons, 2 for all items, requires physics_ode to be enabled" +set g_physical_items_damageforcescale 3 "how affected physical weapons are by damage" +set g_physical_items_reset 1 "return map items to their original lotation after being picked up" + + +// =============== +// touch explode +// =============== +set g_touchexplode 0 "touching other players causes an explosion" +set g_touchexplode_radius 50 +set g_touchexplode_damage 10 +set g_touchexplode_edgedamage 0 +set g_touchexplode_force 150 + + +// ================ +// super spectate +// ================ +set g_superspectate 0 "server side, allows extended spectator functions through the cmd interface. followpowerup, followstrength, followstshield or followfc [red|blue] will transfer spectation to the relevent player, if any" + + +// ================== +// melee only arena +// ================== +set g_melee_only 0 "enable melee only arena" + + +// ================ +// random gravity +// ================ +set g_random_gravity 0 "enable random gravity mutator" +set g_random_gravity_delay 3 "delay between gravity changes" +set g_random_gravity_negative_chance 0.5 "chance of gravity being a negative value" +set g_random_gravity_min -2000 "minimum gravity" +set g_random_gravity_max 2000 "maximum gravity" +set g_random_gravity_positive 1000 "positive gravity multiplier" +set g_random_gravity_negative 1000 "negative gravity multiplier" ++ ++ ++// ======= ++// nades ++// ======= ++set g_nades 0 "enable off-hand grenades" ++set g_nades_spawn 1 "give nades right away when player spawns rather than delaying entire refire" ++set g_nades_nade_lifetime 3.5 ++set g_nades_nade_minforce 400 ++set g_nades_nade_maxforce 2000 ++set g_nades_nade_health 25 ++set g_nades_nade_refire 6 ++set g_nades_nade_damage 225 ++set g_nades_nade_edgedamage 90 ++set g_nades_nade_radius 300 ++set g_nades_nade_force 650 ++set g_nades_nade_newton_style 0 diff --cc qcsrc/server/autocvars.qh index aa5b291e3,56a1f2ba7..20273497f --- a/qcsrc/server/autocvars.qh +++ b/qcsrc/server/autocvars.qh @@@ -1232,11 -1234,15 +1232,22 @@@ float autocvar_g_touchexplode_radius float autocvar_g_touchexplode_damage; float autocvar_g_touchexplode_edgedamage; float autocvar_g_touchexplode_force; +#define autocvar_g_bloodloss cvar("g_bloodloss") +float autocvar_g_random_gravity_negative_chance; +float autocvar_g_random_gravity_min; +float autocvar_g_random_gravity_max; +float autocvar_g_random_gravity_positive; +float autocvar_g_random_gravity_negative; +float autocvar_g_random_gravity_delay; - + float autocvar_g_nades; + float autocvar_g_nades_spawn; + float autocvar_g_nades_nade_lifetime; + float autocvar_g_nades_nade_minforce; + float autocvar_g_nades_nade_maxforce; + float autocvar_g_nades_nade_health; + float autocvar_g_nades_nade_refire; + float autocvar_g_nades_nade_damage; + float autocvar_g_nades_nade_edgedamage; + float autocvar_g_nades_nade_radius; + float autocvar_g_nades_nade_force; + float autocvar_g_nades_nade_newton_style; diff --cc qcsrc/server/miscfunctions.qc index 805f200bb,923bcec80..6e8b5d16a --- a/qcsrc/server/miscfunctions.qc +++ b/qcsrc/server/miscfunctions.qc @@@ -915,15 -919,7 +915,16 @@@ void readlevelcvars(void CHECK_MUTATOR_ADD("g_rocket_flying", mutator_rocketflying, !cvar("g_minstagib")); CHECK_MUTATOR_ADD("g_vampire", mutator_vampire, !cvar("g_minstagib")); CHECK_MUTATOR_ADD("g_superspectate", mutator_superspec, 1); + CHECK_MUTATOR_ADD("g_pinata", mutator_pinata, !cvar("g_minstagib")); + CHECK_MUTATOR_ADD("g_midair", mutator_midair, 1); + CHECK_MUTATOR_ADD("g_bloodloss", mutator_bloodloss, !cvar("g_minstagib")); + CHECK_MUTATOR_ADD("g_random_gravity", mutator_random_gravity, 1); + CHECK_MUTATOR_ADD("g_norecoil", mutator_norecoil, 1); + CHECK_MUTATOR_ADD("g_multijump", mutator_multijump, 1); + CHECK_MUTATOR_ADD("g_jump_grunt", mutator_jump_grunt, 1); + CHECK_MUTATOR_ADD("g_footsteps", mutator_footsteps, 1); + CHECK_MUTATOR_ADD("g_melee_only", mutator_melee_only, !cvar("g_minstagib")); + CHECK_MUTATOR_ADD("g_nades", mutator_nades, 1); CHECK_MUTATOR_ADD("g_sandbox", sandbox, 1); #undef CHECK_MUTATOR_ADD diff --cc qcsrc/server/mutators/mutators.qh index 48ada7784,4f2f87aa4..b3a3a4b34 --- a/qcsrc/server/mutators/mutators.qh +++ b/qcsrc/server/mutators/mutators.qh @@@ -21,14 -21,6 +21,15 @@@ MUTATOR_DECLARATION(mutator_vampire) MUTATOR_DECLARATION(mutator_superspec); MUTATOR_DECLARATION(mutator_minstagib); MUTATOR_DECLARATION(mutator_touchexplode); +MUTATOR_DECLARATION(mutator_pinata); +MUTATOR_DECLARATION(mutator_midair); +MUTATOR_DECLARATION(mutator_bloodloss); +MUTATOR_DECLARATION(mutator_random_gravity); +MUTATOR_DECLARATION(mutator_norecoil); +MUTATOR_DECLARATION(mutator_multijump); +MUTATOR_DECLARATION(mutator_jump_grunt); +MUTATOR_DECLARATION(mutator_footsteps); +MUTATOR_DECLARATION(mutator_melee_only); + MUTATOR_DECLARATION(mutator_nades); MUTATOR_DECLARATION(sandbox); diff --cc qcsrc/server/progs.src index 7be15ed7c,021b9b9b0..db5f4165d --- a/qcsrc/server/progs.src +++ b/qcsrc/server/progs.src @@@ -247,16 -247,8 +247,16 @@@ mutators/mutator_physical_items.q mutators/sandbox.qc mutators/mutator_superspec.qc mutators/mutator_minstagib.qc --mutators/mutator_touchexplode.qc +mutators/mutator_pinata.qc +mutators/mutator_midair.qc +mutators/mutator_bloodloss.qc +mutators/mutator_random_gravity.qc +mutators/mutator_norecoil.qc +mutators/mutator_multijump.qc +mutators/mutator_jump_grunt.qc +mutators/mutator_footsteps.qc +mutators/mutator_melee_only.qc + mutators/mutator_nades.qc ../warpzonelib/anglestransform.qc ../warpzonelib/mathlib.qc