Commit Graph

176 Commits

Author SHA1 Message Date
chompDev 203e30a637 .NET Format Style Fixes 2025-06-21 13:45:45 +00:00
Chomp 21bd868abe Added ability to track loot items and prevent more than a pre-defined amount from spawning
Replaced `location.json` `forcedLootSingleSpawnById` with `lootMaxSpawnLimits`

Added 5 item limit to `Labrys research notes` #290
2025-06-21 14:45:08 +01:00
Archangel f7782e1b1a Begin cleanup of quest model & nullability in Quests & Achievements 2025-06-20 14:24:58 +02:00
chompDev 421762c290 .NET Format Style Fixes 2025-06-18 19:04:21 +00:00
Chomp c320097deb Cache server/client locale choices on first selection 2025-06-18 20:03:44 +01:00
Chomp b2403e472c Report missing locales as Debug messages
Added check of first 2 characters of `languageCode` against locales as last-ditch effort
2025-06-18 19:56:29 +01:00
refringe 6e01428b2b .NET Format Style Fixes 2025-06-18 17:09:20 +00:00
Chomp 96e12d80e4 Refactored caching inside BotEquipmentModPoolService
Made use of primary constructor
Made `GetModsForWeaponSlot` access dictionary via`TryGet`
Made `GetCompatibleModsForWeaponSlot` access dictionary via`TryGet`
2025-06-18 15:36:50 +01:00
Chomp 26048524f1 Removed unused imports 2025-06-18 15:12:05 +01:00
Cj ff4dc31835 Merge pull request #402 from CJ-SPT/TP-AD-FIX
Airdrop TP fix
2025-06-17 13:46:43 +01:00
Chomp 060a2630c8 Made emthod protected + comment improvement 2025-06-17 09:51:35 +01:00
Chomp 125b81e3e5 Updated private methods inside BackupService to protected 2025-06-17 08:52:00 +01:00
Chomp 9a6d844635 Fixed backup folders not being 0-Padded 2025-06-16 22:47:32 +01:00
Chomp 0fed615b62 Fixed date format being incorrect 2025-06-16 22:41:53 +01:00
Chomp 5d4437b573 Expanded error logging inside ExtractDateFromFolderName 2025-06-16 21:54:46 +01:00
Chomp 8a0771515a Modernised ExtractDateFromFolderName 2025-06-16 21:29:14 +01:00
Chomp 470861111e Updated ExtractDateFromFolderName to make use of PATH class 2025-06-16 21:23:34 +01:00
Chomp 48871eba81 Fixed warning being caused by ragfair code trying to add offer to expired cache twice 2025-06-16 20:34:44 +01:00
Chomp b69544ae2c Added lock to GetStaleOfferIds
Made `RagfairRequiredItemService` a singleton
Made `RagfairRequiredItemService ` store offerIds instead of offer objects, reducing memory footprint
Reworked `GetOffersThatRequireItem` to work with `RagfairRequiredItemService` changes
Moved `GenerateDynamicOffers` to run after garbage colelction, this means GC will work on memory prior to new offers being added but after stale offers are removed

Made `PaymentHelper` a singleton + Store currency tpls in a hashset instead of list

Comment improvements
2025-06-16 14:46:37 +01:00
Chomp e869f6ebef Refactored ragfair code for improved readability 2025-06-16 13:00:06 +01:00
Chomp 40ace1712d Fixed cancelled/expired player offer items not being returned #400
We were missing player offer processing when handling stale offers
2025-06-16 12:59:32 +01:00
Archangel 3614a28b7a Remove unused service 2025-06-15 20:08:41 +02:00
Archangel 989f24e123 Remove duplicate service 2025-06-15 20:05:44 +02:00
Archangel 3419368f53 Add Transformer to Lazyload, get rid of event
This will break mods and their examples!

In addition:
- Removes being able to add custom locales, modders should do .AddTransformer on the LazyLoaded value in the database!
- Fixes up PostDBLoad methods trying to use .Value which won't work as this data will be unloaded after 30 seconds
- Move all other SPT code to use .AddTransformer
2025-06-15 19:08:38 +02:00
Chomp 1da156ef4f Cleaned up PmcWaveGenerator
Improved null handling inside `DatabaseService`
2025-06-15 10:56:36 +01:00
Cj 07f57e16a8 Task: Rename Assets folder to SPT_Data (#394)
* Rename `Assets` to `SPT_Data`

* Added GZ 20+ variant to repeatable quest system #395

* Repeatable code cleanup

* Removed PMC level check for repeatable Quest pool generation #395
they will always generate for both GZ variants

* Rename `Assets` to `SPT_Data`

---------

Co-authored-by: Chomp <dev@dev.sp-tarkov.com>
2025-06-15 09:54:33 +01:00
CWX ecd5f61357 fix logging for locations string 2025-06-14 18:58:57 +01:00
Chomp 1f061cfe89 Refactor of airdrop code
Made forced loot aware of weapon and armors. Now adds their presets instead.
Made `GetLootThatFitsContainer` aware of items inside container and will fail when container is full
Fixed issue where split stacks were not added correctly to airdrops

Comment improvements
2025-06-14 18:56:19 +01:00
Chomp e596974d07 Cleaned up usings 2025-06-14 16:43:24 +01:00
Chomp 95fd88c9ff Updated transit health system to only remove DestroyedPart effect and not heal limbs by default #300
Exposed values in config
Also apply code to PMC transits
2025-06-14 15:09:40 +01:00
Chomp 4e89fbbfd8 Fixed typos and improved code readability 2025-06-14 12:42:19 +01:00
Chomp 90568b9841 Updated HandlePostRaidPlayerScav to persist scav HP+effects when transiting to new location
Repair 30% of damaged limbs
2025-06-14 12:41:59 +01:00
Chomp ad0fee1dbf Improved LocaleService
Better logging when desired locale not found
Made private methods protected
Made some methods static
Added edge-case handling of ZH locale
2025-06-13 09:41:06 +01:00
Chomp 7f79315ae6 Changed MergeCustomAchievements logging to debug 2025-06-12 18:00:50 +01:00
Chomp 8b323d396c Refactored PrioritiseStashSort
Take into account money in secure and prioritise
Better handle money stacks being both in containers
2025-06-12 16:45:45 +01:00
Chomp 72611519c2 Removed unnecessary property 2025-06-12 15:32:07 +01:00
Chomp c288df4282 Refactored GetSortedMoneyItemsInInventory
Return empty array if no money stacks found
Filter out 'Locked' money stacks from being returned
Prioritised stash money with the lowest stack size
Optimised `GetSortedMoneyItemsInInventory` with use of 'in stash' cache
2025-06-12 15:03:17 +01:00
Chomp 327ad33bb6 Added comments
Made fields readonly
2025-06-11 15:05:12 +01:00
Chomp 25db0ccef2 Cleaned up code inside SendLocalisedNpcMessageToPlayer 2025-06-10 10:34:34 +01:00
Jesse 2c52012740 Further async changes (#387)
* Further async changes
- SaveServer & Backup Server are now async
- Anything that ties in with SaveServer saving (Such as callbacks) are now async
- Various async util methods added
- Removed two wrapper methods and switched code over to use the actual method

* Update test
2025-06-09 20:09:12 +01:00
Chomp 8179e5c86b Localised strings
Improved nullguards
2025-06-09 14:45:47 +01:00
Chomp d9132e5325 made class props readonly
Removed unused injections

Removed unnecessary .ToLower()
2025-06-09 11:47:49 +01:00
Chomp d36ac06eb1 Halloween even improvements
All maps have at least 5% infection
Improved dictionary access
2025-06-09 11:47:12 +01:00
Chomp 57c9ff477e Localised various error messages 2025-06-09 09:35:47 +01:00
Chomp 445c7c2c1e Fixed seasonal event quests not appearing 2025-06-08 21:28:20 +01:00
Chomp 1d5162c761 Various changes and fixes for things that have been bugging me
Removed/flagged unused props
Typo fixes
Use `FirstOrDefault` over direct index access
Log stacktrace on exception inside `CreateWeaponItems`
2025-06-08 10:40:40 +01:00
Chomp 89106d5448 Refactored how skills are parsed, fixes issues with bot generation and end of raid profile parsing 2025-06-08 09:39:14 +01:00
Chomp a56033ecae Merge pull request #372 from hulkhan22/feat/configurable-btr-delivery-time
feat: Configurable BTR delivery time
2025-06-07 23:09:14 +01:00
Chomp 3a2f68a232 Fixed issues relating to gift codes with profile modifications
Updated enums to match client formatting and ids
Added `SkillClass` enum

#368
2025-06-07 23:08:21 +01:00
hulkhan22 ef7fb0e4a5 Merge branch 'develop' into feat/configurable-btr-delivery-time 2025-06-07 17:53:57 +02:00