]> git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Merge branch 'Juhu/onslaught_solidnot_fix' into 'master'
authorbones_was_here <bones_was_here@xonotic.au>
Wed, 31 May 2023 02:50:58 +0000 (02:50 +0000)
committerbones_was_here <bones_was_here@xonotic.au>
Wed, 31 May 2023 02:50:58 +0000 (02:50 +0000)
Area grid linking fixes for DP master

See merge request xonotic/xonotic-data.pk3dir!1183

.gitlab-ci.yml
bal-wep-mario.cfg
bal-wep-xonotic.cfg
commands.cfg
qcsrc/client/hud/panel/infomessages.qc
qcsrc/client/hud/panel/scoreboard.qc
qcsrc/common/mapobjects/func/ladder.qc
qcsrc/menu/xonotic/keybinder.qc
qcsrc/server/bot/default/havocbot/havocbot.qc
qcsrc/server/command/banning.qc
qcsrc/server/command/cmd.qc

index 8c827d99b6d17bd0a9e688344ad5debf6cdd8d53..fc4ce4ffff5d36693fedc43f255f7f70816102ca 100644 (file)
@@ -75,7 +75,7 @@ test_sv_game:
     - wget -nv -O data/maps/stormkeep.waypoints https://gitlab.com/xonotic/xonotic-maps.pk3dir/raw/master/maps/stormkeep.waypoints
     - wget -nv -O data/maps/stormkeep.waypoints.cache https://gitlab.com/xonotic/xonotic-maps.pk3dir/raw/master/maps/stormkeep.waypoints.cache
 
-    - EXPECT=b4bfc34b5a52ba950de9814c2c52c1c3
+    - EXPECT=f69ef2a13dbe594a0284660e60bdc903
     - HASH=$(${ENGINE} +exec serverbench.cfg
       | tee /dev/stderr
       | grep '^:'
index adb7cc654fa3565e82441a1ca9115936191ebfc1..5cb22ec3c50aa4fa74073a31a31d3b2c529a407d 100644 (file)
@@ -107,7 +107,7 @@ 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 20
 set g_balance_mortar_primary_lifetime_stick 0
 set g_balance_mortar_primary_radius 120
 set g_balance_mortar_primary_refire 0.8
@@ -126,7 +126,7 @@ 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 20
 set g_balance_mortar_secondary_lifetime_bounce 0.5
 set g_balance_mortar_secondary_lifetime_stick 0
 set g_balance_mortar_secondary_radius 120
@@ -316,7 +316,7 @@ 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_force 200
 set g_balance_vortex_primary_refire 1.5
 set g_balance_vortex_reload_ammo 0
 set g_balance_vortex_reload_time 2
index 319d77923035e150b23bf90fa1ca4321d5564e55..aab42015ca59c53da26e72ef4dce99531d90f597 100644 (file)
@@ -573,8 +573,8 @@ 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_headshot_multiplier 0
 set g_balance_rifle_secondary_force 50
+set g_balance_rifle_secondary_headshot_multiplier 0
 set g_balance_rifle_secondary_refire 0.9
 set g_balance_rifle_secondary_reload 0
 set g_balance_rifle_secondary_shots 4
index 5d4a7271ee0e9ff3902e1dbac5cb292fb4352c62..ea4a41396fcfad5a4619661232e016c036350490 100644 (file)
@@ -269,7 +269,7 @@ alias settemp_restore "qc_cmd_svcl settemp_restore"
 
 
 // ===================================
-//  banning - server/command/ipban.qc
+//  banning - server/ipban.qc
 // ===================================
 alias ban                  "qc_cmd_sv     ban                  ${* ?}" // Ban an IP address or a range of addresses (like 1.2.3)
 alias banlist              "qc_cmd_sv     banlist              ${* ?}" // List all existing bans
@@ -278,8 +278,11 @@ alias mute                 "qc_cmd_sv     mute                 ${* ?}" // Disall
 alias unban                "qc_cmd_sv     unban                ${* ?}" // Remove an existing ban
 alias unmute               "qc_cmd_sv     unmute               ${* ?}" // Unmute a client (Remove an existing muting ban)
 
-// other aliases for ban commands
-alias bans "banlist"
+// alternative aliases for ban commands
+alias bans      "qc_cmd_sv banlist ${* ?}"
+alias muteban   "qc_cmd_sv mute    ${* ?}"
+alias unmuteban "qc_cmd_sv unmute  ${* ?}"
+
 
 
 // Client
index e85a7f30c3e82a022a543d640ae0621f90bf1a0b..94bfa47511a9d7ece3909eb565b66e86a3758852 100644 (file)
@@ -200,7 +200,7 @@ void HUD_InfoMessages()
                                        s = strcat(blinkcolor, _("Teamnumbers are unbalanced!"));
                                        tm = GetTeam(myteam, false);
                                        if (tm && tm.team != NUM_SPECTATOR && tm.team_size == ts_max)
-                                               s = strcat(s, sprintf(_(" Press ^3%s%s to adjust"), getcommandkey(_("team selection"), "scoreboard_team_selection"), blinkcolor));
+                                               s = strcat(s, sprintf(_(" Press ^3%s%s to adjust"), getcommandkey(_("team selection"), "team_selection_show"), blinkcolor));
                                        InfoMessage(s);
                                }
                        }
index 22087209578d1bf4d55c7fb1a0d161fe2829afd7..f8b302b98737ad5a6b65ebf7e7ec94eb59f1a4dc 100644 (file)
@@ -735,19 +735,19 @@ void Cmd_Scoreboard_Help()
 // e.g. -teams,rc,cts,lms/kills ?+rc/kills
 #define SCOREBOARD_DEFAULT_COLUMNS \
 "ping pl fps name |" \
-" -teams,rc,cts,inv,lms/kills +ft,tdm/kills ?+rc,inv/kills" \
-" -teams,lms/deaths +ft,tdm/deaths" \
+" -teams,rc,cts,inv,lms/kills +ft,tdm,tmayhem/kills ?+rc,inv/kills" \
+" -teams,lms/deaths +ft,tdm,tmayhem/deaths" \
 " +tdm/sum" \
-" -teams,lms,rc,cts,inv,ka/suicides +ft,tdm/suicides ?+rc,inv/suicides" \
-" -cts,dm,tdm,ka,ft/frags" /* tdm already has this in "score" */ \
-" +tdm,ft,dom,ons,as/teamkills"\
+" -teams,lms,rc,cts,inv,ka/suicides +ft,tdm,tmayhem/suicides ?+rc,inv/suicides" \
+" -cts,dm,tdm,ka,ft,mayhem,tmayhem/frags" /* tdm already has this in "score" */ \
+" +tdm,ft,dom,ons,as,tmayhem/teamkills"\
 " -rc,cts,nb/dmg -rc,cts,nb/dmgtaken" \
 " +ctf/pickups +ctf/fckills +ctf/returns +ctf/caps +ons/takes +ons/caps" \
 " +lms/lives +lms/rank" \
 " +kh/kckills +kh/losses +kh/caps" \
 " ?+rc/laps ?+rc/time +rc,cts/fastest" \
 " +as/objectives +nb/faults +nb/goals" \
-" +ka/pickups +ka/bckills +ka/bctime +ft/revivals" \
+" +ka,tka/pickups +ka,tka/bckills +ka,tka/bctime +ft/revivals" \
 " +dom/ticks +dom/takes" \
 " -lms,rc,cts,inv,nb/score"
 
index 0d4e253f091ce3cb83788bb39cf95b78171dd45d..09a2eb88145b32a7bc1e9ac93dacc92fb29f900d 100644 (file)
@@ -64,7 +64,11 @@ void func_ladder_link(entity this)
 
 void func_ladder_init(entity this)
 {
+       string m = this.model;
        EXACTTRIGGER_INIT;
+       // restore the model string unset in WarpZoneLib_ExactTrigger_Init()
+       // see: https://gitlab.com/xonotic/xonotic-data.pk3dir/-/issues/2838
+       this.model = m;
        BITSET_ASSIGN(this.effects, EF_NODEPTHTEST);
        func_ladder_link(this);
        setthink(this, func_ladder_think);
index a53f4a8862a718e157abd6ae3089b836552c5f03..9188263324a0b6a1b27441adf4c636122bcc95e8 100644 (file)
@@ -114,7 +114,7 @@ void KeyBinds_BuildList()
 
        KEYBIND_HEADER(_("Teamplay"));
        KEYBIND_DEF("team_auto"                             , _("auto-join team"));
-       KEYBIND_DEF("scoreboard_team_selection"             , _("team selection"));
+       KEYBIND_DEF("team_selection_show"                   , _("team selection"));
        KEYBIND_DEF("spec"                                  , _("spectate"));
        KEYBIND_EMPTY_LINE();
 
index 3fd55f12a35639dd85e19246170f2cc5697e989a..1cedecec9007cde3553a1e6bae1435703701bfd2 100644 (file)
@@ -396,8 +396,8 @@ entity havocbot_select_an_item_of_group(entity this, int gr)
 
 // Check for water/slime/lava and dangerous edges
 // (only when the bot is on the ground or jumping intentionally)
-// returns true for danger
-bool havocbot_checkdanger(entity this, vector dst_ahead)
+// returns a number > 0 for danger
+int havocbot_checkdanger(entity this, vector dst_ahead)
 {
        vector dst_down = dst_ahead - '0 0 3000';
        traceline(this.origin + this.view_ofs, dst_ahead, true, NULL);
@@ -415,16 +415,16 @@ bool havocbot_checkdanger(entity this, vector dst_ahead)
                if (trace_endpos.z < this.origin.z + this.mins.z)
                {
                        if (trace_dphitq3surfaceflags & Q3SURFACEFLAG_SKY)
-                               return true;
+                               return 1;
                        else if (trace_endpos.z < min(this.origin.z + this.mins.z, this.goalcurrent.origin.z) - 100)
-                               return true;
+                               return 1;
                        else
                        {
                                s = pointcontents(trace_endpos + '0 0 1');
                                if (s != CONTENT_SOLID)
                                {
                                        if (s == CONTENT_LAVA || s == CONTENT_SLIME)
-                                               return true;
+                                               return 1;
                                        else if (tracebox_hits_trigger_hurt(dst_ahead, this.mins, this.maxs, trace_endpos))
                                        {
                                                // the traceline check isn't enough but is good as optimization,
@@ -432,7 +432,7 @@ bool havocbot_checkdanger(entity this, vector dst_ahead)
                                                tracebox(dst_ahead, this.mins, this.maxs, dst_down, true, this);
                                                if (tracebox_hits_trigger_hurt(dst_ahead, this.mins, this.maxs, trace_endpos))
                                                {
-                                                       return true;
+                                                       return 2;
                                                }
                                        }
                                }
@@ -1137,7 +1137,10 @@ void havocbot_movetogoal(entity this)
                        offset = (vdist(this.velocity, >, 32) ? this.velocity * 0.2 : flatdir * 32);
                        vector dst_ahead = this.origin + this.view_ofs + offset;
                        bool unreachable = false;
-                       if (havocbot_checkdanger(this, dst_ahead))
+                       int r = havocbot_checkdanger(this, dst_ahead);
+                       if (r == 1)
+                               danger_detected = true;
+                       else if (r == 2)
                        {
                                if (destorg.z > this.origin.z + jumpstepheightvec.z)
                                {
index 52c7e9c431d9ce75872fb8695d28a85636b8675d..933eb3c83d8e85fc59ebb825136aa0e641d968cf 100644 (file)
@@ -462,16 +462,16 @@ void BanCommand_(int request)
 
 // Do not hard code aliases for these, instead create them in commands.cfg... also: keep in alphabetical order, please ;)
 #define BAN_COMMANDS(request, arguments, command) \
-       BAN_COMMAND("ban", BanCommand_ban(request, arguments, command), "Ban an IP address or a range of addresses (like 1.2.3)") \
-       BAN_COMMAND("banlist", BanCommand_banlist(request), "List all existing bans") \
-       BAN_COMMAND("kickban", BanCommand_kickban(request, arguments, command), "Disconnect a client and ban it at the same time") \
-       BAN_COMMAND("mute", BanCommand_mute(request, arguments, command), "Disallow a client from talking by muting them") \
-       BAN_COMMAND("playban", BanCommand_playban(request, arguments, command), "Force to spectate a client permanently") \
-       BAN_COMMAND("unban", BanCommand_unban(request, arguments), "Remove an existing ban") \
-       BAN_COMMAND("unmute", BanCommand_unmute(request, arguments), "Unmute a client") \
-       BAN_COMMAND("unvoteban", BanCommand_unvoteban(request, arguments), "Remove an existing voting ban") \
-       BAN_COMMAND("unplayban", BanCommand_unplayban(request, arguments), "Remove an existing forced to spectate ban") \
-       BAN_COMMAND("voteban", BanCommand_voteban(request, arguments, command), "Disallow a client from voting") \
+       BAN_COMMAND("ban",          BanCommand_ban(request, arguments, command),        "Ban an IP address or a range of addresses (like 1.2.3)") \
+       BAN_COMMAND("banlist",      BanCommand_banlist(request),                        "List all existing bans") \
+       BAN_COMMAND("kickban",      BanCommand_kickban(request, arguments, command),    "Disconnect a client and ban it at the same time") \
+       BAN_COMMAND("mute",         BanCommand_mute(request, arguments, command),       "Disallow a client from talking by muting them") \
+       BAN_COMMAND("playban",      BanCommand_playban(request, arguments, command),    "Force to spectate a client permanently") \
+       BAN_COMMAND("unban",        BanCommand_unban(request, arguments),               "Remove an existing ban") \
+       BAN_COMMAND("unmute",       BanCommand_unmute(request, arguments),              "Unmute a client") \
+       BAN_COMMAND("unvoteban",    BanCommand_unvoteban(request, arguments),           "Remove an existing voting ban") \
+       BAN_COMMAND("unplayban",    BanCommand_unplayban(request, arguments),           "Remove an existing forced to spectate ban") \
+       BAN_COMMAND("voteban",      BanCommand_voteban(request, arguments, command),    "Disallow a client from voting") \
        /* nothing */
 
 void BanCommand_macro_help()
index 0eae7e0e67ad8a5537dfb81b3bdea554dcc84aff..f93880a682d45d6b50c7983c18778b9968ebc1f4 100644 (file)
@@ -123,7 +123,7 @@ void ClientCommand_clientversion(entity caller, int request, int argc)  // inter
                                        else if (teamplay && !autocvar_sv_spectate && !(Player_GetForcedTeamIndex(caller) > 0))
                                        {
                                                TRANSMUTE(Observer, caller);  // really?
-                                               stuffcmd(caller, "scoreboard_team_selection\n");
+                                               stuffcmd(caller, "team_selection_show\n");
                                        }
                                }