diff --git a/Common.Models/BotType.cs b/Common.Models/BotType.cs
index 62b18fd..dd2e8b7 100644
--- a/Common.Models/BotType.cs
+++ b/Common.Models/BotType.cs
@@ -38,9 +38,10 @@
bossboarsniper = 36,
followerboarclose1 = 37,
followerboarclose2 = 38,
- bosskolontay = 39,
- followerkolontayassault = 40,
- followerkolontaysecurity = 41
+ bosskolontay = 43,
+ followerkolontayassault = 44,
+ followerkolontaysecurity = 45,
+ shooterbtr = 46,
}
}
diff --git a/Generator/BotLootGenerator.cs b/Generator/BotLootGenerator.cs
index 38242c9..06483d0 100644
--- a/Generator/BotLootGenerator.cs
+++ b/Generator/BotLootGenerator.cs
@@ -121,7 +121,8 @@ namespace Generator
foreach (var item in bot.Inventory.items)
{
- if (item.parentId == null)
+ // Filter out root items and equipment mod items
+ if (item.parentId == null || item.location == null)
{
continue;
}
diff --git a/Generator/Generator.csproj b/Generator/Generator.csproj
index e4bee04..a7dd2e6 100644
--- a/Generator/Generator.csproj
+++ b/Generator/Generator.csproj
@@ -252,6 +252,9 @@
Always
+
+ Always
+
Always
diff --git a/Generator/Helpers/Gear/GearChanceHelpers.cs b/Generator/Helpers/Gear/GearChanceHelpers.cs
index fcdc334..6a97180 100644
--- a/Generator/Helpers/Gear/GearChanceHelpers.cs
+++ b/Generator/Helpers/Gear/GearChanceHelpers.cs
@@ -14,7 +14,7 @@ namespace Generator.Helpers.Gear
{
// TODO: Further split these counts by equipment slot? (ex. "FirstPrimaryWeapon", "Holster", etc.)
- var validSlots = new List { "FirstPrimaryWeapon", "SecondPrimaryWeapon", "Holster", "Headwear" };
+ var validSlots = new List { "FirstPrimaryWeapon", "SecondPrimaryWeapon", "Holster", "Headwear", "ArmorVest" };
var modCounts = new Dictionary();
var slotCounts = new Dictionary();
@@ -41,15 +41,15 @@ namespace Generator.Helpers.Gear
var template = ItemTemplateHelper.GetTemplateById(inventoryItem._tpl);
var parentTemplate = ItemTemplateHelper.GetTemplateById(baseBot.Inventory.items.Single(i => i._id == inventoryItem.parentId)._tpl);
- if ((inventoryItem.slotId?.StartsWith("mod_") ?? false) && !(parentTemplate?._props?.Slots?.FirstOrDefault(s => s._name == inventoryItem.slotId)?._required ?? false))
+ if (!(parentTemplate?._props?.Slots?.FirstOrDefault(slot => slot._name == inventoryItem.slotId)?._required ?? false))
{
- if (modCounts.ContainsKey(inventoryItem.slotId))
+ if (modCounts.ContainsKey(inventoryItem.slotId.ToLower()))
{
- modCounts[inventoryItem.slotId]++;
+ modCounts[inventoryItem.slotId.ToLower()]++;
}
else
{
- modCounts.Add(inventoryItem.slotId, 1);
+ modCounts.Add(inventoryItem.slotId.ToLower(), 1);
}
}
@@ -59,20 +59,30 @@ namespace Generator.Helpers.Gear
continue;
}
- foreach (var slot in template._props.Slots.Where(s => s._name.StartsWith("mod_")))
+ foreach (var slot in template._props.Slots)
{
+ if (slot._name == "Back_plate")
+ {
+ var x = 1;
+ }
+
if (slot._required)
{
continue;
}
- if (slotCounts.ContainsKey(slot._name))
+ if (slot._name.StartsWith("camora"))
{
- slotCounts[slot._name]++;
+ continue;
+ }
+
+ if (slotCounts.ContainsKey(slot._name.ToLower()))
+ {
+ slotCounts[slot._name.ToLower()]++;
}
else
{
- slotCounts.Add(slot._name, 1);
+ slotCounts.Add(slot._name.ToLower(), 1);
}
}
}
diff --git a/Generator/Helpers/Gear/GearHelpers.cs b/Generator/Helpers/Gear/GearHelpers.cs
index 61d5034..29fad71 100644
--- a/Generator/Helpers/Gear/GearHelpers.cs
+++ b/Generator/Helpers/Gear/GearHelpers.cs
@@ -13,7 +13,17 @@ namespace Generator.Helpers.Gear
var itemsWithModsInRawBot = new List- ();
modItemsInRawBot = rawParsedBot.Inventory.items
- .Where(x => x.slotId != null && (x.slotId.StartsWith("mod_") || x.slotId.StartsWith("patron_in_weapon"))).ToList();
+ .Where(x => x.slotId != null
+ && (x.slotId.StartsWith("mod_")
+ || x.slotId.ToLower().StartsWith("patron_in_weapon")
+ || x.slotId.ToLower().StartsWith("helmet_")
+ || x.slotId.ToLower().StartsWith("front_")
+ || x.slotId.ToLower().StartsWith("back_")
+ || x.slotId.ToLower().StartsWith("collar")
+ || x.slotId.ToLower().StartsWith("groin")
+ || x.slotId.ToLower().StartsWith("left")
+ || x.slotId.ToLower().StartsWith("right")
+ || x.slotId.ToLower().StartsWith("soft_"))).ToList();
// Get items with Mods by iterating over mod items and getting the parent item
itemsWithModsInRawBot.AddRange(modItemsInRawBot
diff --git a/Generator/Program.cs b/Generator/Program.cs
index 4a4b810..df69f92 100644
--- a/Generator/Program.cs
+++ b/Generator/Program.cs
@@ -48,7 +48,9 @@ internal static class Program
"sectantwarrior",
"gifter",
"arenafighterevent",
- "crazyassaultevent"
+ "crazyassaultevent",
+
+ "shooterbtr"
};
// Read raw bot dumps and turn into c# objects