Commit Graph

93 Commits

Author SHA1 Message Date
Chomp 14e875f199 Improved error messages inside GetExpiredOfferItems 2025-06-29 15:48:35 +01:00
Jesse 5686f4a486 Remove I18nService, migrate to renamed ServerLocalisationService (#433)
* Remove I18nService, migrate to renamed ServerLocalisationService

* Revert VS fuckup

* Update using

* Remove unused parameter, update comment

* Fix develop branch not building
2025-06-28 19:08:42 +01:00
Chomp f9d1c81437 Added RagfairOfferExtensions 2025-06-28 16:45:58 +01:00
Chomp 7782806f91 Added DateTimeExtensions 2025-06-28 16:41:26 +01:00
chompDev d4d2ed0403 .NET Format Style Fixes 2025-06-28 15:15:48 +00:00
Jesse d0af6acbe6 Move MathUtil methods to extensions (#432)
* Begin moving MathUtil methods to Extensions

* Add missing extension
2025-06-28 16:15:11 +01:00
Chomp da5644cfa2 made properties readonly 2025-06-28 12:53:21 +01:00
Jesse 22c71bee5b Helper methods extensions (#431)
* Remove unused model

* Start moving methods to extensions, cleanup code
2025-06-28 12:14:50 +01:00
Chomp af5f8bfdbc Cleaned up watermark, set text to Magenta when in debug 2025-06-25 22:54:01 +01:00
chompDev e64243a0c5 .NET Format Style Fixes 2025-06-22 08:05:18 +00:00
Cj d68228b5c9 Quest config nullability and documentation (Part 2) (#415)
* Make Interp1 generic

* Finish quest controller nullability fixes

* More model and nullability improvements and fixes

* Rename `specificLocationChance`

* rename `bodyPartChance`

* finish comments
2025-06-22 09:04:45 +01:00
Chomp 9a82432c2c Updated Interp1 to accept readonly lists as params + added comments 2025-06-20 14:15:28 +01:00
refringe 6e01428b2b .NET Format Style Fixes 2025-06-18 17:09:20 +00:00
Chomp 060a2630c8 Made emthod protected + comment improvement 2025-06-17 09:51:35 +01:00
Chomp 6ac8304428 Cleaned up RagfairOfferHolder
More comments
Made `Add` methods return a bool indicating their outcome
2025-06-16 16:45:20 +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 0c3a128862 Throw exception if it happens 2025-06-15 19:14:08 +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
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
Chomp e596974d07 Cleaned up usings 2025-06-14 16:43:24 +01:00
Chomp 282c8284dd Minor improvement to ImporterUtil
Made fields readonly FrozenSets
2025-06-14 16:06:45 +01:00
Chomp 650b94540b Expanded ragfair.offerItemCount functionality. #388
Is now defined per item type with a fallback.

Currently only ammo boxes have custom values (0 to 3 vs the default 7 to 30)
2025-06-10 16:20:00 +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 57c9ff477e Localised various error messages 2025-06-09 09:35:47 +01:00
Jesse 3d288f3489 Fix up converters to target all assemblies in the AppDomain (#364)
* Fix up converters to target all assemblies in the AppDomain

* Make test more robust

* Make test more robust v2 electric boogaloo
2025-06-06 07:23:26 +01:00
Chomp 8023aff959 Improved how OnUpdate is handled 2025-06-05 14:21:28 +01:00
Chomp 82b8c7d2da Fixed ragfair offers not being processed Fixes #358 2025-06-05 13:41:40 +01:00
Jesse 787752b555 Async task OnUpdate (#355)
* Make OnUpdate a task instead a void, handle OnUpdate better by running it in it's own task

* Make helper transient, resolve mod loading issues
2025-06-04 20:53:39 +01:00
Jesse c822977931 Build hashfile only in release mode (#346)
* Update README to include Powershell requirement

* Build hashfile only in release, only check hashes in release mode

* Remove duplicate README
2025-06-03 08:38:06 +01:00
Jesse 354adf2c0a Add File validation (#344)
* Add file validation

* Revert "Added checks.dat build script (#343)"

This reverts commit 39228f88e705b58858d162256a5b5e10fe99148c.

* Update to use pwsh

* Wrap code in using
2025-06-02 20:21:49 +01:00
clodanSPT 2ba11fc789 Added rolling log files features based on file size (#342)
* Added rolling log files features based on file size

* made properties readonly

---------

Co-authored-by: Alex <clodanSPT@hotmail.com>
2025-06-02 17:40:40 +01:00
CWX 1b82d0641e change the invariantCulture on factory 2025-06-01 21:35:28 +01:00
hulkhan22 210bdb2d60 Fix for tests randomly failing when run altogether 2025-06-01 02:33:19 +02:00
hulkhan22 18bd0957fd Fix the damn tests 2025-05-31 01:40:47 +02:00
Chomp 0f3411d656 Merge pull request #321 from sp-tarkov/remove-appcontext
Remove appcontext
2025-05-30 19:23:59 +01:00
Archangel 6a9d323957 Add ServiceLocator so patches can access DI 2025-05-30 19:37:03 +02:00
clodanSPT f895267748 Added injection override feature for modders (#320)
Co-authored-by: Alex <alex@dm-me-for-questions.com>
2025-05-30 18:19:57 +01:00
Chomp 57c1935db6 Merge pull request #317 from sp-tarkov/cleanup-dbimporter
Cleanup DatabaseImporter & ImporterUtil
2025-05-30 14:59:11 +01:00
Archangel ba9c57d699 Cleanup DatabaseImporter & ImporterUtil 2025-05-30 15:54:25 +02:00
Chomp 6ee32bc257 Merge pull request #315 from sp-tarkov/async-deserialize
Small async changes
2025-05-30 14:53:45 +01:00
Chomp 0690ffc803 Merge pull request #316 from CJ-SPT/json-util-refactor
Json util refactor
2025-05-30 14:52:50 +01:00
Cj f30dda24e3 Json util refactor 2025-05-30 09:10:52 -04:00
Archangel 7497ed8f9f Cleanup importerutil, remove unecessary FileStream read 2025-05-30 14:46:34 +02:00
Archangel f5c1fe7384 Add async deserialization methods 2025-05-30 14:46:07 +02:00
clodanSPT ee51e1fcab Refactored pre spt mod loader to user IOnLoad, moved Watermark to IOnLoad as well (#313)
Co-authored-by: Alex <alex@dm-me-for-questions.com>
2025-05-30 11:03:08 +01:00
Archangel fa1368fb47 Move more initialization, mod loading and http requests over to async 2025-05-29 23:50:06 +02:00
Archangel 6f3244362c Make sure value is not null 2025-05-29 23:50:06 +02:00
Chris Adamson 1946199f61 theres a chance that 0 equals 0 2025-05-29 15:48:59 -05:00