diff --git a/Libraries/Core/Helpers/BotHelper.cs b/Libraries/Core/Helpers/BotHelper.cs index 3de56ee1..a563ad2b 100644 --- a/Libraries/Core/Helpers/BotHelper.cs +++ b/Libraries/Core/Helpers/BotHelper.cs @@ -51,7 +51,7 @@ public class BotHelper( public bool IsBotBoss(string botRole) { - return _botConfig.Bosses.Any(x => x.ToLower() == botRole.ToLower()); + return _botConfig.Bosses.Any(x => string.Equals(x, botRole, StringComparison.CurrentCultureIgnoreCase)); } public bool IsBotFollower(string botRole) @@ -59,6 +59,11 @@ public class BotHelper( return botRole?.ToLower().StartsWith("follower") ?? false; } + public bool IsBotZombie(string botRole) + { + return botRole?.ToLower().StartsWith("zombie") ?? false; + } + /// /// Add a bot to the FRIENDLY_BOT_TYPES list /// diff --git a/Libraries/Core/Helpers/DurabilityLimitsHelper.cs b/Libraries/Core/Helpers/DurabilityLimitsHelper.cs index a5b0996b..bd3f4f86 100644 --- a/Libraries/Core/Helpers/DurabilityLimitsHelper.cs +++ b/Libraries/Core/Helpers/DurabilityLimitsHelper.cs @@ -102,6 +102,11 @@ public class DurabilityLimitsHelper( return "follower"; } + if (_botHelper.IsBotZombie(botRole)) + { + return "zombie"; + } + var roleExistsInConfig = _botConfig.Durability.BotDurabilities.ContainsKey(botRole); if (!roleExistsInConfig) { diff --git a/Server/Assets/configs/bot.json b/Server/Assets/configs/bot.json index 603e9c67..f383a5f4 100644 --- a/Server/Assets/configs/bot.json +++ b/Server/Assets/configs/bot.json @@ -281,6 +281,20 @@ "minDelta": 0, "minLimitPercent": 15 }, + "weapon": { + "lowestMax": 90, + "highestMax": 100, + "maxDelta": 10, + "minDelta": 0, + "minLimitPercent": 15 + } + }, + "zombie": { + "armor": { + "maxDelta": 10, + "minDelta": 0, + "minLimitPercent": 15 + }, "weapon": { "lowestMax": 90, "highestMax": 100,