This is a work-in-progress! Many features are still in development. Please report bugs in the QuestingBots thread in Discord or in the Comments section here.
NOTE: Please disable the PMC-spawning system in this mod if you're using other mods that manage spawning! Otherwise, there will be too many PMC's on the map.
The PMC-spawning system in this quest will be automatically disabled if any of the following mods are detected:
This mod will have a performance impact, so unfortunately it may be difficult to use on slower computers. I'll work on optimizations in future releases.
Configuration Options in config.json:
- Bots will now toggle switches
- Added prerequisites for some quests that require a switch to be in a certain position. For example, if the Hermetic extract switch is on in Reserve, don't allow bots to try and turn it on again (until it turns back off).
- Automatically disable initial PMC spawns if MOAR is detected
- Added logging message when a map has been loaded
- Added logging message when quest data is being erased at the end of raids
- Changed server message about PMC spawns being automatically disabled to a warning
- Do not write a server message about PMC spawns being disabled if they're already disabled
- Write a server message when the mod is completely disabled
- Bug fix for dead bots still being assigned new quests
- Bug fix for chanceForSelecting property for quests not working correctly (thanks, BSG...)
- Bug fix for maxBots property for quests not actually being used
- Bug fix for errors caused by rare condition where the mod searches for switches and doors in the map multiple times
- Added intermediate point for the "D2 Switch" quest in Reserve to reduce bot pathing failures to it
- Reduced the chance for selecting the Customs "Power Switch" quest from 50% to 30%, and reduced the max distance to select it from 500m to 200m.
- Added quests for KIBA alarm panels on Interchange that become available when the power switch is turned on
- Changed the priority of the "Hidden Panel" quest in the Interchange Burger Spot bathroom from 19 to 20, changed the chance of selecting it from 15% to 20%, don't allow it to be selected until 180s after the raid starts, and only allow it to be selected when the power switch is turned on
- Changed the priority of the "Safe Room" quest in Interchange from 19 to 18, changed the chance of selecting it from 30% to 10%, and only allow it to be selected if the power switch is turned on and keycard has been swiped in the Burger Spot bathroom
- Added "Sewage Conduit Pump Switch" quest in Labs
- Reduced the chance of the "Medical Block Elevator Power Switch" quest in Labs being selected from 10% to 5%
- Reduced the chance of the "Cargo Block Elevator Power Switch" quest in Labs being selected from 15% to 5%
- Reduced the chance of the "Main Elevator Power Switch" quest in Labs being selected from 10% to 5%
- Only allow the "Parking Gate Controls" quest in Labs to be selected after 420s has elapsed in the raid and the gate isn't already open
- Changed the priority of the "Parking Gate Alarm Controls" quest in Labs from 19 to 18, the chance of it being selected from 5% to 10%, at least 420s has elapsed in the raid, and only allow it to be selected if the Parking Gate is open and the alarm hasn't already been turned off
- Only allow the "Hangar Gate Controls" quest in Labs to be selected after 420s has elapsed in the raid and the gate isn't already open
- Only allow the "Hermetic Door Switch" quest in Reserve to be selected after 300s has elapsed in the raid and the switch isn't already on
- Added D2-switch objective to the "D2 Area" quest in Reserve
- Reduced the chance of the "D2 Area" quest in Reserve being selected from 30% to 15%
- Added "Hermetic Alarm Patrol" quest in Reserve that can only be selected while the Hermetic extract switch is on
config.json files from the 0.3.0 and 0.3.1 releases are fully compatible.
- Improved PMC group spawning system thanks to DrakiaXYZ
- PMC's are no longer forced to be enemies with you
- Removed the mod version number from the folder name
- Removed obsolete code
config.json files from the 0.3.0 release are fully compatible.
Please make sure you delete previous versions of this mod from your \user\mods directory!
- Massive rewrite of the quest management system for bots. The quest-selection algorithm is about the same but will soon change too.
- Added an option in the F12 menu to prevent bots from sprinting while questing (sprinting is enabled by default)
- Bots will now crouch or go prone for a certain amount of time to simulate planting items for quests like Farming Part 1, Delivery from the Past, etc.
- The limit for how many bots can do the same quest was moved from individual objectives to the parent quest itself
- Make the wait time after a bot completes a quest unique for every quest instead of universal. Currently, this is still 10s for all quests.
- Added minRaidET property for quests. The only quest currently using this is "Hermetic Door Switch" (300 s).
- Added pmcsOnly property for quests. Now only PMC's can perform the Spawn-Rush and EFT quests.
- If initial_PMC_spawns.enabled=true, force the PMC-conversion chance to be 0%. If it's >0%, it causes issues with PMC group spawns. Also removed server_pmc_conversion_factor from config.json.
- If the PMC-conversion chance was set to 0% and it's not 0% when generating initial PMC's, write an error message in the server console.
- Added units to the AI-Limiter distance options in the F12 menu
- Added debug option to force initial PMC's to spawn (if initial_PMC_spawns.enabled=true) even when you select "None" for the amount of bots when entering a raid.
- Added option to completely disable questing in config.json. I don't know why you'd want to do this, but it's there.
- Revised debug messages to show more information about bots. This allows you to locate them more easily when using BotDebug.
- Revised logging
- Separate files are now generated for available quests and bot assignments
- Removed quests from quest log if they aren't in the current map
- Created new file showing all assignments for every questing bot along with their final status
- Revised file naming
- Remove commas from quest names, objective names, and bot names to prevent columns from being shifted in CSV files
- Find switches on the map before generating quests (will be used in a future release)
- Bug fix for constant "boss xxx has not been added to the follower dictionary" exceptions
- Bug fix for you counting as an initial PMC in Scav runs
- Bug fix for dead bots and boss followers counting toward max-bot limits for quests
- Bug fix for questing logic running after a bot is dead
- Bug fix for followers getting stuck when running to their boss and never trying to adjust their pathing
- Bug fix for bot friendliness not being updated if EFT hasn't identified any enemies for its group. This mostly just affects the color of the bot text in BotDebug.
- A LOT of refactoring (over 7000 lines of new/changed code)
config.json files from previous releases are not compatible.
Breaking Changes for Custom Quest Files:
- maxBots was moved from quest objectives to the parent quest. If you don't move it, the default value of 2 will be used.
- Added AI limiter accessible via the F12 menu thanks to Props. Please see the README or Overview tab for more information.
- Added PMC group spawns. Please see the README or Overview tab for more information.
- Initial PMC spawning is automatically disabled if SWAG + DONUTS is detected thanks to DrakiaXYZ
- Fixed broken PMC's that spawn south of the cinema on Streets and in the SW corner of Interchange thanks to DrakiaXYZ, WolfGrey, and Cosm1c Gam3r
- Increased required version of Waypoints from 1.3.1 to 1.3.2, which is required for the previously mentioned fix to work properly
- If boss questing is enabled, bosses with followers will use the same logic as PMC groups, so they will more effectively travel around the map as a group.
- Reduced chance of bots selecting "standard" Resort quests in Shoreline
- Implemented time-gating of questing logic to provide a small performance improvement. This can be disabled in the F12 menu if needed.
- Allow bots with Shturman-follower, Cultist-priest, and Bloodhound "brains" to quest (if applicable)
- Prevented PMC's from using Knight's "brain" because he gets stuck in combat for long periods of time
- Force all PMC's to be hostile to you (I may revisit this in the future)
- Bug fix (hopefully) for "0 of # initial PMC's were generated" error. This needs more investigation, but the root cause for this might actually be using other mods that are not compatible with the version of SPT-AKI being used.
- Bug fix for infinite loop (causing the game to freeze) when failing to find a valid spawn point for an initial PMC group
- Lots of refactoring
config.json files from previous releases are not compatible.
Huge thanks to nooky, Props, and DrakiaXYZ for help with developing and testing these changes. Also a huge thanks to everyone on Discord who tested the many alpha releases for this update. There are too many people to name, but you're all awesome.
- Updated for SPT-AKI 3.7.1
config.json files from the 0.2.7 release are fully compatible.
NOTE: Since SAIN hasn't been updated for SPT-AKI 3.7.1 yet, I'll ASSume it'll be compatible for now...
Compatible with SPT-AKI 3.7.0 only