Commit Graph

534 Commits

Author SHA1 Message Date
Refringe e273807d3e Passes build configuration to Ceciler 2025-06-16 00:50:48 -04:00
Cj 6fab8ea02a update csproj 2025-06-16 00:00:45 -04: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 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
Chomp 039c1fe678 Minor cleanup of LocationLootGenerator 2025-06-15 11:20:07 +01: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
Chomp 4cc0d98a6a Removed PMC level check for repeatable Quest pool generation #395
they will always generate for both GZ variants
2025-06-15 09:14:53 +01:00
Chomp 5c83bf3925 Repeatable code cleanup 2025-06-15 09:03:39 +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 282c8284dd Minor improvement to ImporterUtil
Made fields readonly FrozenSets
2025-06-14 16:06:45 +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 8d0c9999bc Improved comments inside RemoveResourceFromArea 2025-06-14 11:44:14 +01:00
Chomp 6804258a1d Improved nullguard inside RemoveResourceFromArea + changed warnings to errors 2025-06-14 11:39:27 +01:00
Chomp 8754690748 Cleaned up logic inside AddContainerImprovementToProfile + Added nullguard 2025-06-14 11:31:51 +01:00
Chomp cc1196717c Fixed easy start profile templates lacking a Place of Fame stash #386
Fixed hideout stash item upgrades not being correctly sent to client
2025-06-13 13:22:45 +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
agavalda 610e971568 Use double for quantity instead of int (#393)
Co-authored-by: Chomp <27521899+chompDev@users.noreply.github.com>
2025-06-13 09:25:12 +01:00
Chomp 9c37b79c1d Improved GetDeltaQuests description 2025-06-12 23:05:28 +01:00
Chomp c2e0193450 Fixed inverted logic inside GetDeltaQuests 2025-06-12 23:03:29 +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 6175e37044 Add todo for RewardType.WebPromoCode 2025-06-11 21:38:18 +01:00
Chomp 327ad33bb6 Added comments
Made fields readonly
2025-06-11 15:05:12 +01:00
Chomp b78d0dff09 Cleaned up usings 2025-06-11 14:20:40 +01:00
Chomp 2f0bcdea25 Fixed PMC loot pool generator returning the first cached pool regardless of what pmc type was requested
Refactored PMCLootGenerator
Made use of Primary constructor
Created helper function to generate loot pool
Cache loot data against PMC type
2025-06-11 13:39:24 +01:00
Chomp d31ebb70f3 Merge branch 'develop' of https://github.com/sp-tarkov/server-csharp into develop 2025-06-11 12:30:43 +01:00
Chomp 63db5ed6ff Fixed PMC loot pool generation not utilising the pmc pool blacklists #390
Comment improvements
Renamed helped method for readability
2025-06-11 12:30:20 +01:00
Jesse 83f629b407 Fix up AchievementController (#389)
* Stop blacklisted achievement profiles from counting up to total profile count

* Properly calculate percentage of profiles having achievements
2025-06-10 20:36:13 +01:00
Chomp e8b938faab Cleaned up GetPresetItemsByTpl and GetPresetItems 2025-06-10 16:24:42 +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
Chomp 05354d8cbc Cleaned up CompleteQuest
Optimised `GetDeltaQuests`
Simplified `FindAndRemoveQuestFromArrayIfExists`

Various comment formatting fixes
2025-06-10 14:57:36 +01:00
Chomp 25db0ccef2 Cleaned up code inside SendLocalisedNpcMessageToPlayer 2025-06-10 10:34:34 +01:00
Chomp c8a6943eaf Fixed GetQuestsFromProfileFailedByCompletingQuest not processing multiple failure conditions #345 2025-06-10 10:32:29 +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 c8e1c48e98 Fixed profiles ignoring _ragfairConfig.RunIntervalSeconds value 2025-06-09 17:27:02 +01:00
Chomp f4d9649f0b Improved how SPT bot responds to 'help' command
Added GARBAGE to command list #366
2025-06-09 17:17:51 +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
Jesse 2ff286e5ed Handle closure of WebSockets better, improve formatting of code (#383)
* Handle closure of WebSockets better, improve formatting of code

* Update comment
2025-06-09 08:56:07 +01:00