Gameplay Changes:
- Added adjustments to EFT Scav spawns when using the Questing Bots spawning system (#44). See the README for a description of the system concept and details about each setting.
- When using the Questing Bots spawning system, register PMC's and player Scavs as actual players in EFT to reduce the chance that Scavs will spawn near them
- Regularly update the
BotZone
for bot groups to be whichever one is closest to its boss. This prevents them from running far away whenever they stop questing, and instead they should patrol the local area. - Reduced the desirability of EFT quests from 60 to 50
- Reduced the desirability of boss hunter quests from 40 to 30
- Reset all map-specific bot-cap adjustments in
bot_spawns.bot_cap_adjustments.map_specific_adjustments
to 0 - Prevented PMC's and PScavs from spawning inside the broken silo on Factory
- Allow bots using
PmcBear
andPmcUsec
brain types to quest - Changed
bots_per_group_distribution
andbot_difficulty_as_online
arrays for PMC's and player Scavs from using interpolation to using chances. In the new format, the chance that the value in the left column will be selected is defined in the right column. Chances values do not need to add up to 100; the algorithm simply uses relative weighting (for the numbers in the second column) between rows. - Revised the chances that various bot difficulties will be selected and bot groups will be of various sizes for PMC's and player Scavs. Most notably, PMC's are more likely to spawn as solos compared to previous releases.
- Reverted when PMC conversion chances are adjusted from the
/client/game/start
endpoint back to when the plugin loads. This will allow future versions of Realism (>1.5.0) to work with the Questing Bots spawning system without having to make any configuration changes. - Bug fix for crashing or freezing when loading into raids if a custom trader mod is used that has quests with prerequisites containing circular references to other quests. (#43)
- Bug fix for incessant exceptions when the
BotObjectiveManager
component is not disposed when a bot is disposed (due to an error). This is mostly seen on Fika servers. (#46) - Bug fix for bot group members attacking bots that are separated due to being stuck or healing for too long (#47)
- Bug fix for the new rewrite of DONUTS not being detected (if DONUTS is installed without SWAG)
- Bug fix for bosses not spawning when playing solo using a Fika dedicated server (#49)
Code Changes:
- Added server and client validation of arrays in config.json including a check to ensure an older version of the file isn't used
- Prevented the "advanced spawning system" from being disabled
- Removed the obsolete contents of the
bot_spawns.bot_cap_adjustments
section in config.json and related code. The contents from the previousbot_spawns.advanced_eft_bot_count_management
section (with theenabled
setting removed) were then moved to this section. - Revised the abstract bot generator class to prevent bot-generator instances from overriding Unity's
Awake
andUpdate
methods. Instead, these methods call new methods (Init
andRefresh
, respectively) that must be implemented in each bot-generator instance. This is a breaking change for any spawn mod that uses the Questing Bots spawning system as its framework! - Set the maximum generated bot count for bot generators in the
Awake
method instead of the constructor - Moved the
PendingSpawnPoints
list into the abstract bot generator class because it's needed for all instances of it - Changed the method patched when activating bots from
method_11
tomethod_10
- Added some additional error handling to PMC and player Scav spawning
- Added debug patches to expose errors discarded in EFT's
HandleFinishedTask
methods (currently disabled) - Changed more logging messages from
Info
toDebug
or disabled them - Reorganized patches into multiple namespaces
- Minor refactoring
- Removed obsolete code
config.json files from previous releases are not compatible.