Made the following changes to !156:
* Replaced `IsNullOrEmpty()` EFT checks with basic null checks
* Replaced `Any()` with new helper method to check if bots exist in collections
Reviewed-on: SPT/Modules#157
Co-authored-by: dwesterwick <dwesterwick@yahoo.com>
Co-committed-by: dwesterwick <dwesterwick@yahoo.com>
Revised `IsEnemyPatch` with the following changes:
* Added a check to see if the player is in the group's `Allies` collection (needed for mod support)
* Added a check to see if the player is in the group (possibly needed for future mod support)
* Fixed Zryachiy check (and added his followers) by allowing the EFT method to run for them
* Refactoring for clarity and to reorder the checks based on priority:
1) Null check(s)
2) Check if the player is in the group or in its `Allies` or `Enemies` collections
3) Allow the EFT method to run for certain bot roles
4) Finally, add the player to the group's `Enemies` collection if needed
**This is a big change, so please double-check my work!** I tested this in multiple raids, in several maps, with and without SAIN, and I didn't find any issues.
Reviewed-on: SPT/Modules#156
Co-authored-by: DanW <danw@noreply.dev.sp-tarkov.com>
Co-committed-by: DanW <danw@noreply.dev.sp-tarkov.com>
Currently, the system knows which bundles are incorrect and attempts to re-download the correct ones.. However, upon next re-launch those bundles will again be invalid probably due to it not actually writing to them forcing the system to keep re-downloading.
This fixes it by removing the invalid bundle, then re-downloading the proper one.
Reviewed-on: SPT/Modules#155
Co-authored-by: Archangel <jesse@archangel.wtf>
Co-committed-by: Archangel <jesse@archangel.wtf>
(cherry picked from commit 471c191bbb4daea7d8b56956eae67a29861781b4)
Currently, the system knows which bundles are incorrect and attempts to re-download the correct ones.. However, upon next re-launch those bundles will again be invalid probably due to it not actually writing to them forcing the system to keep re-downloading.
This fixes it by removing the invalid bundle, then re-downloading the proper one.
Reviewed-on: SPT/Modules#155
Co-authored-by: Archangel <jesse@archangel.wtf>
Co-committed-by: Archangel <jesse@archangel.wtf>
Added null check for `damageInfo.Weapon.Name` in `DogtagPatch::UpdateDogtagItemWithDeathDetails` because it can be null in rare cases. I see this happen when Zryachiy or his followers kill a bot, and I'm not sure why. This will prevent an exception from being thrown and the bot becoming "broken".
Reviewed-on: SPT/Modules#154
Co-authored-by: dwesterwick <dwesterwick@yahoo.com>
Co-committed-by: dwesterwick <dwesterwick@yahoo.com>
Was missing checks that now exist in the client, works as intended now from my testing. Please test and confirm as well.
**Note**: I strongly believe that this patch is now redundant and can be removed, I am still testing to see if this is the case.
Co-authored-by: Lacyway <20912169+Lacyway@users.noreply.github.com>
Reviewed-on: SPT/Modules#153
Co-authored-by: Lacyway <lacyway@noreply.dev.sp-tarkov.com>
Co-committed-by: Lacyway <lacyway@noreply.dev.sp-tarkov.com>
(cherry picked from commit de7e762211aa6a9fe26fc80eb449f85db6464117)
Was missing checks that now exist in the client, works as intended now from my testing. Please test and confirm as well.
**Note**: I strongly believe that this patch is now redundant and can be removed, I am still testing to see if this is the case.
Co-authored-by: Lacyway <20912169+Lacyway@users.noreply.github.com>
Reviewed-on: SPT/Modules#153
Co-authored-by: Lacyway <lacyway@noreply.dev.sp-tarkov.com>
Co-committed-by: Lacyway <lacyway@noreply.dev.sp-tarkov.com>
Some patches are `internal` that should be `public` so that mods can disable them when altering AI.
Co-authored-by: Lacyway <20912169+Lacyway@users.noreply.github.com>
Reviewed-on: SPT/Modules#152
Co-authored-by: Lacyway <lacyway@noreply.dev.sp-tarkov.com>
Co-committed-by: Lacyway <lacyway@noreply.dev.sp-tarkov.com>
Fixes a duplicate set of logging requests sent to the server for no reason.
Co-authored-by: Cj <161484149+CJ-SPT@users.noreply.github.com>
Reviewed-on: SPT/Modules#151
Co-authored-by: Cj <cj@noreply.dev.sp-tarkov.com>
Co-committed-by: Cj <cj@noreply.dev.sp-tarkov.com>