]> git.rm.cloudns.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Add some description about cvars, allow setting Battle Royale to play on DM maps...
authorLegendaryGuard <rootuser999@gmail.com>
Tue, 18 Jan 2022 01:02:38 +0000 (02:02 +0100)
committerLegendaryGuard <rootuser999@gmail.com>
Tue, 18 Jan 2022 01:02:38 +0000 (02:02 +0100)
.gitlab-ci.yml
gamemodes-server.cfg
qcsrc/common/gamemodes/gamemode/br/br.qh

index 0f195b66598fa6be66c1fca5caf419e0f906bca0..48a269313029caefc00db00edd016ddd65db8f20 100644 (file)
@@ -32,7 +32,7 @@ test_sv_game:
     - wget -O data/maps/stormkeep.waypoints https://gitlab.com/xonotic/xonotic-maps.pk3dir/raw/master/maps/stormkeep.waypoints\r
     - wget -O data/maps/stormkeep.waypoints.cache https://gitlab.com/xonotic/xonotic-maps.pk3dir/raw/master/maps/stormkeep.waypoints.cache\r
     - make\r
-    - EXPECT=02e0bed62067959602d12a6eb240e6f2\r
+    - EXPECT=2ed9b21b906b98ba3e9c358b1f41d547\r
     - HASH=$(${ENGINE} -noconfig -nohome +timestamps 1 +exec serverbench.cfg\r
       | tee /dev/stderr\r
       | sed -e 's,^\[[^]]*\] ,,'\r
index 259209f09a4a0fa6d9d0728dcb096dfc138e9eec..c03afe1c55ee831600a5c830097aeadc8cc6931a 100644 (file)
@@ -573,32 +573,33 @@ set g_duel_not_dm_maps 0 "when this is set, DM maps will NOT be listed in duel"
 //  battle royale
 // ======
 set g_br 0 "Battle Royale: survive on a shrinking battlefield"
-set g_br_minplayers 2
+set g_br_not_dm_maps 0 "when this is set, DM maps will NOT be listed in BR"
+set g_br_minplayers 2 "Minimum players to start the match"
 set g_br_squad_size 3
-set g_br_squad_colors 1
-set g_br_startweapons 0
+set g_br_squad_colors 1 "when enabled squad colors are assigned"
+set g_br_startweapons 0 "when disabled no player can hold weapons"
 set g_br_bleed 0.02
 set g_br_bleedlinear 1
 set g_br_bleeding_health 0.5
-set g_br_revive_speed 0.4
-set g_br_revive_clearspeed 1.6
-set g_br_revive_extra_size 100
-set g_br_revive_health 0.25
-set g_br_dropship_color "0.5 0 0.5"
-set g_br_dropship_scale 3
-set g_br_dropship_speed 200
-set g_br_drop_speed_max 2
-set g_br_drop_speed_horizontal_max 0.9
-set g_br_drop_speed_horizontal_min 0.5
-set g_br_drop_speed_vertical 1.5
+set g_br_revive_speed 0.4 "Speed for reviving an injured mate"
+set g_br_revive_clearspeed 1.6 "Speed at which reviving progress gets lost when out of range"
+set g_br_revive_extra_size 100 "Distance in qu that you can stand from an injured mate to keep reviving him"
+set g_br_revive_health 0.25 "Health percentage after revived an injured mate"
+set g_br_dropship_color "0.5 0 0.5" "Dropship color (minimum: 0 0 0) (maximum: 1 1 1)"
+set g_br_dropship_scale 3 "Dropship model scale"
+set g_br_dropship_speed 200 "Dropship speed when moving"
+set g_br_drop_speed_max 2 "Maximum drop speed when players falling"
+set g_br_drop_speed_horizontal_max 0.9 "Maximum horizontal drop speed when players falling"
+set g_br_drop_speed_horizontal_min 0.5 "Minimum horizontal drop speed when players falling"
+set g_br_drop_speed_vertical 1.5 "Vertical drop speed when players falling"
 set g_br_drop_acceleration 1200
 set g_br_drop_distance_force 500
-set g_br_ring_alpha 0.5
-set g_br_ring_color "1 0 0"
-set g_br_ring_radius -1
-set g_br_ring_duration 150
+set g_br_ring_alpha 0.5 "Ring transparency"
+set g_br_ring_color "1 0 0" "Ring color (minimum: 0 0 0) (maximum: 1 1 1)"
+set g_br_ring_radius -1 "Ring radius"
+set g_br_ring_duration 150 "Ring time standing"
 set g_br_ring_timing "0.6 0.8 0.9"
 set g_br_ring_strength "2.5 5 10 20 50"
-set g_br_ring_wait 30
-set g_br_ring_center_factor 0.25
-set g_br_ring_fadedistance 2000
+set g_br_ring_wait 30 "Wait time before ring decrease size"
+set g_br_ring_center_factor 0.25 "Ring center factor"
+set g_br_ring_fadedistance 2000 "Fade distance when ring is far"
index c6ad354bc5782ba6bef2983f3f7962d72aa3105f..71f56b8cc32866339d3b03fe8e1386056c7109fb 100644 (file)
@@ -1,7 +1,10 @@
 #pragma once
 
+#include <common/gamemodes/gamemode/deathmatch/deathmatch.qh>
 #include <common/mapinfo.qh>
 
+bool autocvar_g_br_not_dm_maps;
+
 #ifdef CSQC
 void HUD_Mod_BR(vector pos, vector mySize);
 void HUD_Mod_BR_Export(int fh);
@@ -26,6 +29,18 @@ CLASS(BattleRoyale, Gametype)
             return true;
         return false;
     }
+    METHOD(BattleRoyale, m_isForcedSupported, bool(Gametype this))
+       {
+               if(!autocvar_g_br_not_dm_maps)
+               {
+                       // if this is unset, all DM maps support BR too
+                       if(!(MapInfo_Map_supportedGametypes & this.m_flags) && (MapInfo_Map_supportedGametypes & MAPINFO_TYPE_DEATHMATCH.m_flags))
+                               return true; // TODO: references another gametype (alternatively, we could check which gamemodes are always enabled and append this if any are supported)
+               }
+
+               return false;
+       }
+
 #ifdef CSQC
     ATTRIB(BattleRoyale, m_modicons, void(vector pos, vector mySize), HUD_Mod_BR);
     ATTRIB(BattleRoyale, m_modicons_export, void(int fh), HUD_Mod_BR_Export);