Commit Graph

435 Commits

Author SHA1 Message Date
Chomp 37bd3a433c Handle various locations where ExtendedData causes issues 2025-06-04 21:28:29 +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
Chomp a92994e50b Changed Error handling request to critical 2025-06-04 19:58:04 +01:00
Chomp 112afd3391 Fixed flea logic that prevented offers being listed for complex items (items /w children)
`GetItemsToListOnFleaFromInventory` would not keep the root item at index 0, client requires this

`FindAndReturnChildrenAsItems` now inserts root item at index 0
`CreateMultiOffer` now looks for root item by its id

Updated `CreateSingleOffer` to not choose first inventory item as root, search for it instead

Fixes #318
2025-06-04 17:30:26 +01:00
Chomp adf65f497c Fixed quests not failing other quests #345 2025-06-04 15:53:12 +01:00
Chomp 838e72ff3c Cleanup of weavers xsd 2025-06-04 14:51:47 +01:00
Chomp 30b8a318ae Added ExtensionData to DTOs 2025-06-04 14:49:37 +01:00
Jesse ff1dfa54ae Do a small pass on SPT's config's to reduce warnings and cleanup (#348)
* Do a small pass on SPT's config's to reduce warnings and cleanup

* Revert

* Revert EFT models

* Set list as null
2025-06-04 14:46:52 +01:00
Alex 6d87c79b0f Remove fody weaver project in favor of source generation 2025-06-03 20:34:08 +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
Chomp f9de4d77fc Fixed ExtensionData change breaking new profiles 2025-06-02 21:41:35 +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
Chomp ccb55bd025 Expanded GetGenerationWeights scope to reduce code verbosity
Improved `InitCacheForBotRole`

Removed unnecessary code from `AddItemsToPool`
2025-06-02 17:20:54 +01:00
Chomp a5d9a54c7f made use of FilterItemPool helper method to reduce code verbosity
Fixed inverted trygetvalue check
2025-06-02 16:59:53 +01:00
Chomp 74bdac7d9b Fixed bug in AddLootToCache that was causing combined pool to not be hydrated 2025-06-02 16:41:27 +01:00
Chomp 2cb720ab94 Added early return when result is 0 items
Added early return when 'type' of loot is unknown
2025-06-02 16:23:45 +01:00
Chomp 2ae91b4c38 Added safer dictionary access inside GetLootFromCache 2025-06-02 16:09:39 +01:00
Chomp 0577b119ca Reduced times combined Loot Pool is iterate over inside AddLootToCache() 2025-06-02 12:50:02 +01:00
Chomp dfc8afa741 Merge branch 'develop' of https://github.com/sp-tarkov/server-csharp into develop 2025-06-02 12:27:47 +01:00
Chomp 2165e407eb Added missing locks + improved comments
Made use of `nameof` instead of `toString`
2025-06-02 12:27:39 +01:00
clodanSPT cab8fa82a2 Json extension data fody (#340)
* Added a new Fody plugin to add to every model class the JsonExtensionData attribute

* retargeted fody plugin to netstandard for msbuild runtime

* Fixed runtime issue

* Fixed property check for new extension data properties

---------

Co-authored-by: Alex <clodanSPT@hotmail.com>
2025-06-02 12:15:44 +01:00
Chomp 54fe3cf7c5 Added todo for reward type we dont currently handle 2025-06-02 11:59:21 +01:00
Chomp 8ae5aaa0ee FIxed reward-type_not_handled error message not showing ID value 2025-06-02 11:55:05 +01:00
Chomp c7b6868092 Allow bot generation without raid config data 2025-06-02 11:42:48 +01:00
Chomp d5df140d58 Created GetGenerationWeights helper to reduce dupication 2025-06-02 11:39:30 +01:00
Chomp fd3b0c0ead Replaced direct key access with TryAdd 2025-06-02 11:28:58 +01:00
Chomp d7d0463c94 Replaced direct key access with TryAdd 2025-06-02 11:26:20 +01:00
Chomp 24cc70b225 Improved containerType secure container string compare
Split out kvp into variables
2025-06-02 11:12:50 +01:00
Chomp 9ec9c0beb7 Fixed concurrency issues with pmc loot generation 2025-06-02 10:24:32 +01:00
Chomp c42449b150 Added handling of SHOOTING_RANGE_MARK to AddHideoutCustomisationUnlock() Resolves #339 2025-06-02 09:43:03 +01:00
CWX 360a59a585 only return dialogues that have messages, and on new dialogues, return empty object as does live 2025-06-01 23:43:50 +01:00
CWX f9eb5cd136 change for lastOrDefault, return null 2025-06-01 23:43:11 +01:00
CWX 1b82d0641e change the invariantCulture on factory 2025-06-01 21:35:28 +01:00
CWX cc6f116e18 Value is now not an object, give it straight to it and no double to string to double shenanigans 2025-06-01 21:35:10 +01:00
hulkhan22 44332cf785 Fixes Usec armbands being lootable and skill rewards resetting to 0 2025-06-01 18:31:02 +02:00
GrooveypenguinX f4428deccf fixed missing import for customitemservice, added bundle loading sequence in the program.cs (#333)
* Added missing import for reflection /bonk

* Implemented bundles.json loading directly into program.cs

`IsBundleMod` is now read from all loaded mods metadata, and if set to true the bundles.json is read from the mod directory.

* re-assign the sorted valid mods to the loadedMods list

since ValidateMods returns the sortedLoadedMods, this is the list of mods we should be passing to our other spots

---------

Co-authored-by: Chomp <27521899+chompDev@users.noreply.github.com>
2025-06-01 15:34:14 +01:00
Chomp 2357fd4a4f Fixed build 2025-06-01 15:29:05 +01:00
Chomp 4ae4715df7 Merge pull request #327 from hulkhan22/test/fix-failing-tests
test: Fix for tests randomly failing when run altogether
2025-06-01 14:31:17 +01:00
GrooveypenguinX 3e9c557a89 Fixed overrideproperties not applying in customitemservice
Swapped out the old method with new logic that sets the properties using reflection, and can also handle fields.

(cherry picked from commit 026c8dec5fa5cffd09de438e43d74e18a480d907)
2025-06-01 14:26:52 +01:00
hulkhan22 ae8fc2504f Merge branch 'develop' into test/fix-failing-tests 2025-06-01 15:08:56 +02:00
clodanSPT a1c8980f8c Added virtuosity to Core project (#329)
Co-authored-by: Alex <clodanSPT@hotmail.com>
2025-06-01 12:08:20 +01:00
hulkhan22 210bdb2d60 Fix for tests randomly failing when run altogether 2025-06-01 02:33:19 +02:00
clodanSPT e084d1889c Removed reflections dependency from Core (#326)
Co-authored-by: Alex <clodanSPT@hotmail.com>
2025-06-01 00:18:59 +01:00
Jesse aafe24eafb Move Router, Callbacks and GetResponse over to ValueTask (#325)
* Move Router, Callbacks and GetResponse over to ValueTask

* Assign empty deserializedObject for now, keep todo

* Cleanup GetResponse

* Re-add logger for request
2025-05-31 20:30:41 +01:00
hulkhan22 18bd0957fd Fix the damn tests 2025-05-31 01:40:47 +02:00
Chomp a2d2a44a2f Improved logic flow inside AddItemsToInventory 2025-05-30 20:05:51 +01:00
Chomp 7ebafa402b Improved where logic inside RemoveFiRStatusFromItemsInContainer 2025-05-30 20:05:39 +01: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