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>
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 problems with `GUI.skin`
- More efficient code
No longer breaks other IMGUI elements from my testing as the `GUIStyle` is isolated. Please test with SAIN and other possible mods.
Co-authored-by: Lacyway <20912169+Lacyway@users.noreply.github.com>
Reviewed-on: SPT/Modules#148
Co-authored-by: Lacyway <lacyway@noreply.dev.sp-tarkov.com>
Co-committed-by: Lacyway <lacyway@noreply.dev.sp-tarkov.com>
In the end, Kaeno's fix by changing the main client collider's layer to `HighPolyCollider` is the only way I could fix it.
Also made changes to avoid unnecessary physics collisions between other BTR colliders; these physics collisions can cause FPS drops especially for lower end PCs so this should provide a slight performance gain for them.
I left in the commented-out collision debugger script I made to log collisions in case it's useful for future debugging purposes.
Reviewed-on: SPT/Modules#142
Co-authored-by: Nympfonic <arys.steam@gmail.com>
Co-committed-by: Nympfonic <arys.steam@gmail.com>
This gives users feedback that the game is currently loading bundles, which prevents confusion when a large amount of them are being loaded and the game is "seemingly" infinitely loading.
The implementation is very bare bones, feel free to modify it to your liking if you want it to use a more fancy user interface. I went for clarity (black background, white text). With the standard `OnGUI` skin it's very hard to discern the text.
Tested on 1440p and 1080p.
![image](/attachments/31a818d6-d101-4e5d-a2c5-541c8b48ba71)
Co-authored-by: Lacyway <20912169+Lacyway@users.noreply.github.com>
Reviewed-on: SPT/Modules#140
Co-authored-by: Lacyway <lacyway@noreply.dev.sp-tarkov.com>
Co-committed-by: Lacyway <lacyway@noreply.dev.sp-tarkov.com>
I've done testing to ensure the player can't phase through the BTR as well.
Have not tested anything else besides that.
Reviewed-on: SPT/Modules#139
Co-authored-by: Nympfonic <arys.steam@gmail.com>
Co-committed-by: Nympfonic <arys.steam@gmail.com>
No more having to update the method name
Co-authored-by: DrakiaXYZ <565558+TheDgtl@users.noreply.github.com>
Reviewed-on: SPT/Modules#138
Co-authored-by: DrakiaXYZ <drakiaxyz@noreply.dev.sp-tarkov.com>
Co-committed-by: DrakiaXYZ <drakiaxyz@noreply.dev.sp-tarkov.com>
this aims to seperate Client generated icons/quest images/trader images
looking to split prepatcher stuff into their own sections, as it looks and reads as one whole mess
Reviewed-on: SPT/Modules#133
Co-authored-by: CWX <cwx@noreply.dev.sp-tarkov.com>
Co-committed-by: CWX <cwx@noreply.dev.sp-tarkov.com>
Add a patch to track when we place items at quest locations for use in insurance.
Reviewed-on: SPT/Modules#131
Co-authored-by: Kaeno <kaeno@noreply.dev.sp-tarkov.com>
Co-committed-by: Kaeno <kaeno@noreply.dev.sp-tarkov.com>