Skwizzy added a new version:
QuoteNote: This release requires BigBrain 1.3.2 or above!
- Added several BSG brains to the looting layer so that Looting Bots can use them
Skwizzy added a new version:
QuoteNote: This release requires BigBrain 1.3.2 or above!
- Added several BSG brains to the looting layer so that Looting Bots can use them
Skwizzy added a new version:
QuoteNote: This release requires BigBrain 1.3.2 or above!
- Fixed a bug where bots would get busy hands due to an action failing
- Removed the patch to disable BSG's looting layer, Big Brain now handles this instead
Skwizzy added a new version:
Quote- Updated to SPT 3.11
- Adds a new patch to completely turn off BSG's looting layer
- Slightly increased looting bot range (From 75 to 80)
Skwizzy added a new version:
QuoteAgain thank you ArchangelWTF for the changes in this release!
Small changes to improve code health and performance
Changes
- Replace all LINQ queries with standard code, LINQ is rather inefficient in this older version of .NET and should be avoided
- Removed old build files
- Migrated some patches to transpilers which should be slightly faster
- Removed some more old logic that wasn't referenced anywhere
Skwizzy added a new version:
QuoteThank you very much ArchangelWTF for making the upgrade to 3.10!
Update references and removed some deprecated logic
Skwizzy added a new version:
QuoteThanks @hel0t for the update!
Update references to work with SPT 3.9.0.
VirusScan is showing one of the vendors reporting as malicious (Anity-AVL). This is a false positive, a rescan of version 1.3.4 which had the vendor as passing is now also reporting as malicious
Skwizzy added a new version:
QuoteChanges
- Fix ArgumentOutOfRangeException seen when loot scans do not find any lootable items
- Fix issue where one loot result was always omitted when processing results from a loot scan
Skwizzy added a new version:
QuoteNoDiscardLimit server mod has been renamed to LootingBots-ServerMod to make it clear that it is related to the LootingBots client mod. Make sure to delete the old Skwizzy-NoDiscardLimit folder in your user/mods!!
Mostly bugfixes and performance improvements. Should be less dips in frame rate when loot scans are executing, however a large scan radius may still cause some small hitching (mostly testing with 500m radius). This is a side effect of the unity Phsyics.OverlapSphereAlloc method used to detect nearby objects, a more robust approach is needed to further improve the scanning performance when using a large detection radius
New Performance Settings (F12)
- Maximum looting bots - Limits the amount of bots that are able to simultaneously run looting logic. A value of 0 represents no limit
- Limit looting by distance to player - Any bot farther than the specified distance in meters will not run any looting logic. A value of 0 represents no limit
New Loot Settings (F12)
- Bots always close containers - When enabled, bots will always try to close a container after they have finished looting. If the bot is interrupted while looting, the container may remain open. This is enabled by default
- Added dogtags to the list of items that are able to be picked up by bots. By default both PMCs and Scavs will pick up dogtags
- Added armor plates to the list of items that can be picked up by bots. By default PMCs and Scavs will NOT pick up armor plates
Server Mod Changes
- NoDiscardLimit server mod has been renamed to LootingBots-ServerMod to make it clear that it is related to the LootingBots client mod. Make sure to delete the old Skwizzy-NoDiscardLimit folder in your user/mods!!
- Changed default value of pmcSpawnWithLoot to true as it seems like many people prefer pmcs still spawn with their own loot. If using realism, this setting can either be achieved using the Realism Bot Loot changes + LB compatibility options or by setting pmcSpawnWithLoot to false
- Fixed an issue where pmc starting loot was not cleared properly when using pmcSpawnWithLoot: false. Should be compatible with other mods that affect bot loadout generation such as ALP and Realism as long as the NoDiscardLimit mod is loaded after these mods
Client Mod Changes
- Add additional .5 second delay after throw actions to fix issues where bots would sometimes not equip new items after throwing their old item during a swap action
- Fix issue where bots that were interrupted during a loot scan would sometimes continually scan for loot until aggro'd by another bot
- Change initial inventory sort to coroutine to improve performance when LootingBrain is first initialized
- Change loot finding to use Phsyics.OverlapSphereNonAlloc which has better performance with larger data sets
- Prevent bots from sprinting as they approach lootable objects to prevent instances of repeated powersliding
- Only call BotOwner.GoToPoint once when a bot is moving to loot to improve performance.
- Add a little more padding to the destination points when looting to reduce instances where bots are spinning/wiggling while looting because they are too close. Corpse looting still needs some work
Skwizzy added a new version:
QuoteSmall update with some bugfixes before a meatier logic update. Ty for all the love and support
New Features
- Bots will now close containers after looting is completed, similar to live behavior. If a bot is interrupted or killed during looting, the container may not be closed
- Bots can now merge stackable items. If a bot finds an item that can be stacked and they already have that item in their inventory, the items will be merged if the result of the merge does not exceed the maximum stack size. (example: bot has 40 pst bullets and finds 20 pst, the stacks will NOT be merged)
Changes
- Fix issue where player corpses were not being detected as loot
- Filter out items that are in locked slots when looting corpses and armors
- Added value of weapons to the bot's DebugPanel
- Fix issue where bots would not loot loose armor vests
- Fix issue where bots that spawn with 2 weapons would sometimes swap weapons incorrectly, incorrectly throwing their secondary weapons
- Prevent unremovable mods from appearing in loot results when stripping attachments from weapons
Skwizzy added a new version:
QuoteNew Features
Thanks to Solarint for the following new features:
- Added 3 new methods to the Mod Interop support. GetItemPrice, GetNetLootValue, CheckIfInventoryFull. More info can be found in the interop docs
- Added 3 new options to the Loot Finder settings. These settings will cause bots to ignore loot during loot scans if the
loot is not visible by the bot. All disabled by default
- Enable corpse line of sight check
- Enable container line of sight check
- Enable item line of sight check.
Changes
- Added a new patch to the BotOwner.Dispose method that will remove the BotOwner from the ActiveLootCache when a bot is killed while looting. Should be the root cause of the null reference exceptions seen in the ActiveLootCache
Skwizzy added a new version:
QuoteUpdate GClasses to support AKI 3.8.0
Skwizzy added a new version:
QuoteChanges
- Prevent caching and finding loot if the BotOwner.name is empty. Should prevent exceptions from being thrown by the ActiveLootCache
Skwizzy added a new version:
QuoteCompatible with AKI 3.7.1 - 3.7.6
Changes
- Prevent scavs from looting memory 🤖 . Fixed a memory leak due to excessive regex calls and log message concatenation
Skwizzy added a new version:
QuoteDisplay MoreFor Modders
Thanks to DanW!
Adds support for external commands without requiring LootingBots as a dependency for mods.
Currently the two external commands are:
- Force a loot scan: Forces a bot to scan for loot the next time it is able to do so
- Inhibit looting: Stops a bot from looting and prevents them from scanning for loot for a specified amount of seconds
For more details view the Full documentation
New Features
- New Setting Loot Finder (Timing): Enable examine time - Adds a delay before looting an item to simulate the time it takes for a bot to "uncover (examine)" an item when searching containers, items and corpses. The delay is calculated using the ExamineTime of an object and the AttentionExamineTime of the bot. Without any mods changing these values, it seems like the average examine time is 1 second. Looting should take a bit more time now depending on the amount of items in the container/corpse
- Added a checkbox for PlayerScav to all the Loot Finder settings. Now you can enable/disable looting for player scavs separately from normal scavs
Changes
- Lowered the time to simulate the UI opening and beginning the search process to 2500 ms
- Renamed Transaction Delay to Delay after taking item and clarified the behavior in the description
- Allow bots to try and loot "searchable" items even if they do not have room to pick them up. Was preventing loose items like backpacks and rigs from being considered as valid loot
- Prevent friendly bots from looting things the player is looting. Enemies can still try to loot the same object as the player #96
- Hide debugging F12 settings under the "advanced settings" checkbox at the top of the menu
- A bot will now end exit the loot finding logic if the first three items found are not within the acceptable looting range. This is to prevent bots from performing the expensive path distance calculation multiple times unnecessarily as its usually the case that if the first 3 items are not in range then none of the following items will be in range.
- Only show top level items in looting results when searching containers/equipment
- Fixed issue with debug spheres not working
Skwizzy added a new version:
QuoteChanges
- When scanning for loot, calculate the distance the bot has to walk in order to reach the loot. If this distance is larger than the loot detection radius, the loot will be considered too far to loot. This should prevent bots on maps like interchange from pathing from the second floor to the parking garage if some loot was detected in the garage with a small vertical distance
- Change old loot value threshold settings to Min loot value threshold
- Scav: Max loot value threshold and PMC: Max loot value threshold - When a value other than 0 is specified, bots will not loot items with a value that exceeds the maximum threshold. By default this is set to `0` for both scav and PMC
- Change Delay between looting setting to Loot scan interval. This now accurately controls the time between loot scans for a bot. When a bot completes a scan or leaves the looting logic, the bot will wait the specified amount of seconds before scanning again. Previously there were 2 timers and they were not playing nicely together
- Default Loot scan interval has been increased: 6 seconds -> 10 seconds
- Allow bots to pick up stacks of money
- Sort the initial results from a loot scan by distance, greatly reducing the amount of times needed to iterate through the results (Thanks Drakia)
- Move loot finding calculations into a coroutine to avoid blocking thread with heavy calculations
- Do not allow the looting layer to activate if the bot is healing
- Do not allow the looting layer to activate if the bot type is not enabled for any looting. Previously bots not enabled for looting would still scan but not loot
Just did some testing and this option seems to be working as intended. With this option set to true I am seeing pmcs spawning with loot in their bags. Perhaps you have another mod that is altering the loot on PMCs? I know that this used to be an option in SPT Realism
Skwizzy added a new version:
QuoteFinally updated GClasses and NoDiscardLimit implementation to work with AKI 3.7.1! Thank you everyone for your patience!
Changes
- Added LootingLayer to the following new bot brains: BossBoar, BoarSniper, FlBoar, Obdolbs and ArenaFighter
- Fix issue where bots were not picking up usable magazines after equipping a new weapon
- Fix issue where PMCs/scavs with boss brains were being treated as bosses and not allowed to swap gear
- Fix issue where helmets were not recognized as equippable
- Fix mistake in distance math where shortest distance was not being updated resulting in horribly incorrect loot finding.
Skwizzy added a new version:
QuoteFinally updated GClasses and NoDiscardLimit implementation to work with AKI 3.7.0!!
Changes
- Added LootingLayer to the following new bot brains: BossBoar, BoarSniper, FlBoar, Obdolbs and ArenaFighter
- Fix issue where bots were not picking up usable magazines after equipping a new weapon
- Fix issue where PMCs/scavs with boss brains were being treated as bosses and not allowed to swap gear
- Fix issue where helmets were not recognized as equippable
- Fix mistake in distance math where shortest distance was not being updated resulting in horribly incorrect loot finding.
Skwizzy added a new version:
QuoteNew Features
- NoDiscardLimit: Settings to remove loot from bot spawns - Thanks to Fontaine, the NoDiscardLimit mod now has options to prevent PMCs and Scavs from spawning with loot already in their inventories. Items such as meds/ammo/food/drinks will still be added to their inventory as part of bot loot generation
- Settings can be found in user/NoDiscardLimit/config/config.json
- pmcSpawnWithLoot: When set to true, PMCs will spawn with loot in their bags/pockets (default SPT behavior)
- scavSpawnWithLoot: When set to true, Scavs will spawn with loot in the bags/pockets (default SPT behavior)
- Default config: {"pmcSpawnWithLoot": false, "scavSpawnWithLoot": true }
- Loot Finder (Timer) settings: Delay after spawn - Setting to control the amount of seconds a bot will wait to start their first loot scan after spawning into raid.
- Loot Settings: Transaction Delay - New setting to control the amount of time a bot will wait after executing a looting transaction before performing another one. Used to simulate the amount of time a bot will take to loot things from a container/corpse. A looting transaction is when a bot decides to take/equip an item
Changes
- Loot Finder scans will only run if the bot has more than 2 available slots in their inventory
- Loot Finder scans will ignore loose items that will not fit in the bot's current inventory
- Increased base looting time for containers and corpses to 3 seconds
- BotDebug menu "Available space" now updated in real time as loot is transferred
- Fix issue where bots were treated as bosses preventing them from swapping any equipment
- Fix issue where gear looted from containers or the ground would not be equipped/swapped
- Bots will forget their target loot when interrupted during looting, triggering a new scan when returning to the looting layer. Previously bots would attempt to navigate to the same loot after the interruption.
- Fix issue where some items were still not insurable such as the Ronin mask
- Fix issue where destination was not being reset after LootingLogic had ended. Caused an issue with bots thinking they were close enough to a new lootable container when they were actually not.
- Show "Calculating path..." in BotDebug menu when distance to loot is being initialized