Balanced Overhaul Of Bullet Spawns (BOOBS) 1.1.2 - SPT ~3.8

Please do not ask when mod authors will update their mods to v3.8.3. Bothering mod authors will lead to warnings and repeat offenses will lead to eventual bans.

All ammo types spawn as loose loot, balanced by caliber and tier!



WHAT IT DO:

Adds cardboard ammo boxes for all rounds in the game that were missing them (most of them) and then rebalances the loose loot for each map to give a good variety of all ammos, balanced by caliber and also by tier. (it will also spawn UGL rounds, grenades, and flares rarely)



Config stuff:


If you have Realism installed with his ballistics overhaul toggled on, I recommend setting "spt_realism_ammo_compat" to true in the config.json file to make the ammo weights adjust for Fontaine's ammo balancing.


I have already set up a decent set of weight multipliers, but if you want to mess with them yourself, you can do so in BOOBS/config/configs/weights.json (or the realism equivalents if that setting is set to true). Know that the weighting of each caliber will equalize, meaning if all caliber multipliers are set to 1 you will get an even mix of all calibers, and then the tier weights will kick in to determine which round in each caliber you see spawn more often. Huzzah for fancy math (thanks ChatGPT)


Add the parent id's of items to the config.json spawnpoint_item_type_blacklist array to stop BOOBS from overwriting spawn points that contain any items of those types.


To install:

-Put BOOBS folder in user/mods


Planned Features:
-Different weightings per map

-Different weightings for hotzones (like Kiba, etc)

-Custom assets/ retextures for the ammo boxes to make it easier to differentiate between ammos


HUGE thanks to those who tested this mod for me!

-FullerK_55

-Nosliw

-ComradeJagrad



If you'd like to support my work, you can buy me a coffee!

  • Version 1.1.2 - SPT ~3.8

    Updated package.json to ~3.8.


    No changes were made to the mod itself for 3.8.3. I have been playing with it without issue.

  • Version 1.1.2

    Fixed bug that caused error upon raid load when Realism compatibility setting enabled. Thank you <3 monarrez95 for pointing it out and finding the fix!


  • Version 1.1.1

    Math is hard and my brain hurts.


    1. Hopefully fixed errors that would happen occasionally upon loading a raid. These were caused by item spawn weights being set to 0, I made their minimum = 1.
    2. Fixed math error causing empty categories to still receive point allotments. Now if a category is empty, it's weight setting is set to 0, meaning the other categories will receive more points to compensate for the empty one. See the end of this changelog for a math example if you care (I have to write this garbage somewhere or I'll forget).
    3. Removed ammo box disable feature as it really isn't needed.


    Dumb math example:

    Total allotted points for all tiers = 100


    Tier 1 weight = 1

    Tier 2 weight = 1


    Tier 1 has 2 ammos in it.

    Tier 2 has 0 ammos in it.


    BEFORE:

    Tier 1 receives 50 points.

    Tier 2 receives 50 points.


    Both tier 1 ammos would receive 25 points.


    Tier 2 has no ammos to apply its 50 points to, so they are lost.


    Because Tier 2 doesn't have any ammos in it, the total of all the ammos in the tier is only 50 instead of the total 100 points we gave it.


    NOW:

    Tier 2's weight is adjusted dynamically to 0 because it was detected that it contained 0 ammos.


    Tier 1 receives 100 points.

    Tier 2 receives points.


    Both tier 1 ammos would receive 50 points.


    All ammos correctly add up to 100.

  • Version 1.1.0

    This update adds ammos added with Streets expansion, does a LOT of backend code cleanup, and adds a blacklisted item type feature.


    Any spawn points containing one or more items with parent ids present in the config.json spawnpoint_item_type_blacklist array will be skipped when loose loot is edited. This is to hopefully keep the mod from overwriting spawn points like Customs giving tree, various marked rooms, etc. that can spawn many item types and not JUST ammo.


    If you find any spots that were previously spawning high value loot but now only spawn ammo boxes, please let me know so I can try and blacklist those spawn points.

  • Version 1.0.1

    Should still work on 3.6.0. Scream at me if it doesn't.


    Fixed issue with SSA AP box giving Warmageddon/ being empty when found in raid

  • Version 1.0.0

    Moved proj to GitHub

  • THIS MOD MUST BE LOADED BEFORE LOTS OF LOOT IN ORDER TO WORK PROPERLY WITH IT


    If you are finding empty ammo boxes in raid:

    -If you use LOE or some other method to edit load order: open it and ensure BOOBS is loading before Lots Of Loot

    -If you don't: delete the order.json file and let it regenerate upon next server load

  • Hi Jehree, I created a PR ;)

  • Hi, does this conflict with Leaves Relooted?

    • Relooted does alot of similar things to Lots of Loot so I'd say so long as this mod is loaded first, it'll be compatible

  • Hey in the most updated download the package.JSON is outside of the mod folder


    Is it ok to just put it into the mod folder or does it need to be loose in the user/mods folder?

    • Oh gosh sorry about that lol, yes drop it in the mod folder. I also fixed the download.

    • :)

  • Thank YOU so much for updating this mod! A must-have for hardcore gameplay!


    Just a quick note, I think the latest version does not take into account 6.8x51 ammo...

    • No it likely doesn't, I didn't update the mod itself at all, I just confirmed it works. I may or may not add that caliber eventually but I'm not up to rebalancing all the weights right now.

    • @Jehree 


      I see. Could you consider adding the 6.8 caliber without balancing weights - as a temporary solution? I think we can adjust the weights ourselves :)

    • I'll look at it the next time I sit down to work on my mods, do you know of any other new calibers that are missing?

    • @Jehree 


      Thanks a million! I think now we are missing only 6.8x51mm (two types of ammo). But there might be a few extra, I have not played LIVE in ages!

    • @Jehree 


      Hey, I was looking through the config and I could not find any of the 5.45x39 120 ammo boxes. Did you remove them from spawning options?

  • hey is this going to get updated?

    Crying 1
  • Hello! i gad this error message in error log file repeaed while loading the raid, should i be worry?


    Code
    2024-01-13 13:43:10.384 +08:00|0.13.5.3.26535|Error|Default|Could not add item item_ammo_box_762x39_20_FMJ (id: 65a222eca0849ba4eb000437) to stackslot cartridges in item 7.62x39_FMJ_BOOBS_ammobox (id: 65a222ec68acd0ea5f00054c). Reason: System.Exception: Inventory configuration error
    at ItemFactory.FlatItemsToTree (GClass1101[] flatItems, System.Boolean silentMode, System.Collections.Generic.Dictionary`2[TKey,TValue] preexistingItems) [0x0023f] in <f7f3726f1deb4e1fabfff17fea715bfa>:0
  • i think this mod blocks the spawning of items under the giving tree on customs

  • Hey Jehree, I come with a solution to your problem.


    Many people are reporting the issue with the "spt_realism_ammo_compat" setting being set "true" cause this error:


    TypeError: Cannot read properties of undefined (reading '_tpl')

    TypeError: Cannot read properties of undefined (reading '_tpl')

    at LocationGenerator.createDynamicLootItem (C:\snapshot\project\src\generators\LocationGenerator.ts:647:38) blah blah blah...


    So anyway, I was digging around the files and comparing the vanilla files to the realism files and found the problem:


    in the weights_realism.json, under calibers - you incorrectly labeled 5.7x28 as "57x26".


    After editing it to 5.7x28 I didn't get the error afterwards, just a simple edit for a hotfix.

    Hopefully this reliefs some stress from all the comments reporting this very problem. :) Cheers!

    • You God damned legend haha. Thank you so much. I fixed a bunch of typos in the caliber names with the 3.7.1 update, must've missed that one.


      I'll push an update with your fix later tonight. Thanks again!

      Heart 1
    • I just have to reply again, life has been stressful and I really appreciate you figuring this out for me. Thanks, friend. :)

      Heart 2
    • No problem, happy to have helped! :thumbup:

      Happy 1 Heart 1
  • Top tier mod, fixed a conflict I had with universal ammo and KMC Core where it'd load raids forever and this fixed it without any conflicts on other mods, big thanks!

  • BOOBS

  • Still getting this error with the latest version 1.1.1. No errors until BOOBS is added to mod folder.


    Mod Order


    SPT_Realism

    BOOBS

    DoorBreacher

    Priscilu

    QuestingBots

    Waypoints


    TypeError: Cannot read properties of undefined (reading '_tpl')

    TypeError: Cannot read properties of undefined (reading '_tpl')

    at LocationGenerator.createDynamicLootItem (C:\snapshot\project\src\generators\LocationGenerator.ts:647:38)

    at LocationGenerator.generateDynamicLoot (C:\snapshot\project\src\generators\LocationGenerator.ts:557:43)

    at LocationController.generate (C:\snapshot\project\src\controllers\LocationController.ts:96:81)

    at LocationController.get (C:\snapshot\project\src\controllers\LocationController.ts:66:21)

    at LocationCallbacks.getLocation (C:\snapshot\project\src\callbacks\LocationCallbacks.ts:33:66)

    at RouteAction.action (C:\snapshot\project\src\routers\dynamic\LocationDynamicRouter.ts:20:55)

    at LocationDynamicRouter.handleDynamic (C:\snapshot\project\src\di\Router.ts:69:59)

    at HttpRouter.handleRoute (C:\snapshot\project\src\routers\HttpRouter.ts:68:63)

    at HttpRouter.getResponse (C:\snapshot\project\src\routers\HttpRouter.ts:47:18)

    at AkiHttpListener.getResponse (C:\snapshot\project\src\servers\http\AkiHttpListener.ts:145:38)

    TypeError: Cannot read properties of undefined (reading '_tpl')

    TypeError: Cannot read properties of undefined (reading '_tpl')

    at LocationGenerator.createDynamicLootItem (C:\snapshot\project\src\generators\LocationGenerator.ts:647:38)

    at LocationGenerator.generateDynamicLoot (C:\snapshot\project\src\generators\LocationGenerator.ts:557:43)

    at LocationController.generate (C:\snapshot\project\src\controllers\LocationController.ts:96:81)

    at LocationController.get (C:\snapshot\project\src\controllers\LocationController.ts:66:21)

    at LocationCallbacks.getLocation (C:\snapshot\project\src\callbacks\LocationCallbacks.ts:33:66)

    at RouteAction.action (C:\snapshot\project\src\routers\dynamic\LocationDynamicRouter.ts:20:55)

    at LocationDynamicRouter.handleDynamic (C:\snapshot\project\src\di\Router.ts:69:59)

    at HttpRouter.handleRoute (C:\snapshot\project\src\routers\HttpRouter.ts:68:63)

    at HttpRouter.getResponse (C:\snapshot\project\src\routers\HttpRouter.ts:47:18)

    at AkiHttpListener.getResponse (C:\snapshot\project\src\servers\http\AkiHttpListener.ts:145:38)

    • Reinstalling the mod fixed the error for me

    • When you re-installed did you set the realism config to true again?. I had this same issue and tried re-installing then I set the config to true again before re-loading the game and when I tried going into a raid it kept giving me the error?

    • @Chaos_Mortal, does this happen to you every time with realism compat enabled or only sometimes?

    • I too am having this issue with realism config enabled.

    • Every raid or only sometimes?

  • Would you ever consider making a version/compat/whatever of BOOBS for the Extra Ammo for Everyone mod?

    • I myself probably would not, but it wouldn't be too hard for someone to edit the json files to add support for those ammos. If they did I could throw them in as an option to be toggled on.

    • I am getting an error.

      TypeError: Cannot read properties of undefined (reading '_tpl')

      TypeError: Cannot read properties of undefined (reading '_tpl')

      at LocationGenerator.createDynamicLootItem (C:\snapshot\project\src\generators\LocationGenerator.ts:647:38)

      at LocationGenerator.generateDynamicLoot (C:\snapshot\project\src\generators\LocationGenerator.ts:557:43)

      at LocationController.generate (C:\snapshot\project\src\controllers\LocationController.ts:96:81)

      at LocationController.get (C:\snapshot\project\src\controllers\LocationController.ts:66:21)

      at LocationCallbacks.getLocation (C:\snapshot\project\src\callbacks\LocationCallbacks.ts:33:66)

      at RouteAction.action (C:\snapshot\project\src\routers\dynamic\LocationDynamicRouter.ts:20:55)

      at LocationDynamicRouter.handleDynamic (C:\snapshot\project\src\di\Router.ts:69:59)

      at HttpRouter.handleRoute (C:\snapshot\project\src\routers\HttpRouter.ts:68:63)

      at HttpRouter.getResponse (C:\snapshot\project\src\routers\HttpRouter.ts:47:18)

      at AkiHttpListener.getResponse (C:\snapshot\project\src\servers\http\AkiHttpListener.ts:145:38)

      TypeError: Cannot read properties of undefined (reading '_tpl')

      TypeError: Cannot read properties of undefined (reading '_tpl')

      at LocationGenerator.createDynamicLootItem (C:\snapshot\project\src\generators\LocationGenerator.ts:647:38)

      at LocationGenerator.generateDynamicLoot (C:\snapshot\project\src\generators\LocationGenerator.ts:557:43)

      at LocationController.generate (C:\snapshot\project\src\controllers\LocationController.ts:96:81)

      at LocationController.get (C:\snapshot\project\src\controllers\LocationController.ts:66:21)

      at LocationCallbacks.getLocation (C:\snapshot\project\src\callbacks\LocationCallbacks.ts:33:66)

      at RouteAction.action (C:\snapshot\project\src\routers\dynamic\LocationDynamicRouter.ts:20:55)

      at LocationDynamicRouter.handleDynamic (C:\snapshot\project\src\di\Router.ts:69:59)

      at HttpRouter.handleRoute (C:\snapshot\project\src\routers\HttpRouter.ts:68:63)

      at HttpRouter.getResponse (C:\snapshot\project\src\routers\HttpRouter.ts:47:18)

      at AkiHttpListener.getResponse (C:\snapshot\project\src\servers\http\AkiHttpListener.ts:145:38)

      I am getting this error when trying to start a match.

    • Did this happen upon loading into a raid?

    • Yes. I had just switched from the previous version of boobs. Was getting an error with the ammo boxes from old version and I used the system delete option to delete all the bugged ammo boxes. Error happened before and after the system deleted all the old ammo boxes that were in the previous version when loading into the raid.

    • I see, it should only be sometimes that this happens. I think I messed up an id somewhere. I'll dig into it later tonight.

  • i like boobs gud job

  • 3.7.1 works on 3.7.0 too right?

    • Untested but probably

  • i need more boobs in my life

  • Need this for 3.6.1!!! :love:

  • causes backend errors on 3.6.1 currently

  • when i launch the launcher it's saying


    Mod (BOOBS-1.0.1) is missing package.json


    but when i look in the modded file the package.json is there?? Any Ideas ?

    • You installed the mod wrong. There's a folder in your mods folder called 'BOOBS-1.0.1'. Delete that, the folder that goes in the mods folder is the 'BOOBS' folder inside the 'BOOBS-1.0.1' folder.

    • oh my days haha i didn't even notice that.. cheers bro

      Thumbs Up 1
  • for some reason this mod running before or at all with lots of loot makes the giving tree on customs never have any loot

  • just found a loose box of 60 SSA-AP 5.56 ammo and it was empty. 0/60

    • Are you using Lots Of Loot, and are you using the latest version that I pushed to fix the issue with SSA AP?

    • Not using lots of loot, but it looks like I was on version 1.0.0. will try 1.0.1. Thanks

  • without lots of loot loose ammo boxes still being empty, only when found in container then they're full.

    • nvm, after uninstalling lotsofloot and restarting the game, all boxes are full now. Thanks for the update! :thumbup::D

  • plz fix the bug that when combined with lotsofloot ,all boxes are empty

    • That is still occurring after updating to 1.0.1?

    • yup, i have to delete boob, but i really love the idea of picking high level ammo in battlefield instead of buying it in the flea market~wuwuwuwuw.

  • Is it normal to have the server flooded with ammo box not found in item base cache?

    • That's safe to ignore

    • Is their a way to disable them to not show on the server? cheers

    • Probably? If you can drop a screenshot of your BepInEx/plugins and user/mods folders I can possibly take a look in the future, it is just low priority to me atm compared to other projects.

  • Hey, someone finally addressed this! Kudos! Honestly 5.45 always haunted me regardless of my gun of choice at the time, purely because boxes of 5.45 are EVERYWHERE in Tarkov. I mean it's usually PS or PLS rounds but hell, bullets is bullets to me. It all goes in the quad stack. Long as it isn't US. I learned my lesson.

  • I'm getting issues downloading the mod from mediafire.
    Could you please also link the official repository for this mod? (having it as a back-up for releases would be really useful)

  • I'm also having the issue of finding empty boxes. Found a box of SSA AP rounds in Tarcone office and it was just 0/60. Can't unload it in or out of raid.

    • Are you using Lots of Loot by chance?

    • No, I am not. Is that a requirement for this mod to work?

    • No, it's not a requirement but another person was having an issue with it installed. I was thinking it might be the cause, but that doesn't seem to be the case unfortunately.

      Thumbs Up 1
    • Can you send a screenshot of both your user/mods folder as well as your BepInEx/plugins folder?

    • The only empty boxes that I've found have been SSA AP, as well.


      Edit: I just opened another box of SSA AP, and it spat out Warmageddon ammo, so maybe it's just the SSA AP boxes that are bugged?

  • why are some boxes empty?
    could it be looting bots took the bullets?

    • I've not personally experienced this, is it all boxes or only some of them?


      If only some, does it seem to be only certain rounds/ calibers?

    • all loose boxes on the floor are empty, but those found on bots are usually full.
      could it be conflict with lots of loot?

    • Can you send a screenshot of both your user/mods folder as well as your BepInEx/plugins folder?

    • TztgSiWjuE8T51

    • Thanks! If you make BOOBS load after Lots Of Loot, does that seem to fix it?

  • hey how would this work with for example RedCap's Progression mod

    • I don't see why not

  • I won't say no to BOOBS.