Commit Graph

1416 Commits

Author SHA1 Message Date
sp-tarkov-bot aa3bda6578 Format Style Fixes 2025-10-26 08:50:45 +00:00
GrooveypenguinX 07aa4c8977 Implemented Modded Trader Customization Services (#660)
Co-authored-by: GrooveypenguinX <jakechase2110@gmail.comX>
Co-authored-by: Chomp <27521899+chompDev@users.noreply.github.com>
2025-10-26 08:49:39 +00:00
DrakiaXYZ d375879a3a Fix post-raid health (#661)
* Fix post-raid health
- Re-add death penalty for limbs
- Correctly set body part HP to 1 for cursed death only
- Use the server profile body part max HP for calculating penalties
- Never modify the body part max HP on the profile
- Remove ResetMaxLimbHp as it's unnecessary if we never update max HP elsewhere

* Formatting

* Remove unnecessary null coalescing

* Stupid formatting

---------

Co-authored-by: DrakiaXYZ <565558+TheDgtl@users.noreply.github.com>
2025-10-26 08:47:40 +00:00
DrakiaXYZ a524dc47dd Merge pull request #658 from DrakiaXYZ/fix-savecontention
Fix potential file access contention in SaveProfileAsync
2025-10-25 21:43:14 +00:00
Cj a608b33f38 Merge branch 'develop' into develop 2025-10-24 19:03:17 -04:00
Tyfon dae5da9399 Adjust when Dialogue.AttachmentsNew is changed 2025-10-24 15:48:00 -07:00
Chomp a46e26725f Hardened GetRandomizedResourceValue when GetPercentOfValuereturns values below 1 2025-10-24 21:59:04 +01:00
Chomp 7bf0ecc78e Remove eft version tag from watermark 2025-10-23 20:23:05 +01:00
sp-tarkov-bot 776f09c470 Format Style Fixes 2025-10-23 16:24:33 +00:00
Archangel 0038e19489 Add new migration 2025-10-23 18:23:19 +02:00
Chomp f702c4f85f Fixed AllExtracts json issue 2025-10-23 14:35:19 +01:00
Archangel f3b2af7ccc Remove dupe unused props 2025-10-23 08:06:32 +02:00
DrakiaXYZ 47089afdd1 Further attempt to resolve profile corruption issues (#650)
* Further attempt to resolve profile corruption issues
- FileUtil now uses File.Replace and does a sync flush
- Add restore capabilities to BackupService
- If loading a profile fails, attempt to restore from the most recent backup
- Trigger a backup creation on raid start, raid end, and game close
- Load profiles before starting the backupService to avoid backing up corrupt profiles

* - Switch async calls to .GetAwaiter().GetResult() for better exception handling

---------

Co-authored-by: DrakiaXYZ <565558+TheDgtl@users.noreply.github.com>
2025-10-23 07:49:24 +02:00
Chomp 88e5e9e748 Improved error handling inside HandleMusclePain() 2025-10-21 19:01:24 +01:00
Chomp 813e00479d Validate filename is mongoId before we load it as profile #648 2025-10-21 16:52:23 +01:00
DrakiaXYZ aa8911f5aa Add sanity checks to CustomItemService's AddToLocaleDbs method 2025-10-20 12:17:50 -07:00
Chomp 94d2a8d233 Lock existence check to prevent bots being generated without loot 2025-10-20 17:34:06 +01:00
Chomp 97a41369d9 Improved comment 2025-10-20 15:37:24 +01:00
Chomp fd4d1583fd Merge branch 'develop' into disable-gc-requests 2025-10-20 11:59:57 +00:00
Chomp 9fa0c51cee Improved how offers are gathered prior to iteration 2025-10-20 12:59:28 +01:00
Chomp 8aa29bf22b Merge branch 'disable-gc-requests' of https://github.com/sp-tarkov/server-csharp into disable-gc-requests 2025-10-20 11:20:39 +01:00
Chomp af9160c94d Use specific exception 2025-10-20 11:20:14 +01:00
clodanSPT 18e6d9174b Merge branch 'develop' into disable-gc-requests 2025-10-20 12:15:16 +02:00
Chomp 353b8f54bb Added functionality to reduce non-damaged limb hp to 20% on pmc death when player is 'cursed' #640 2025-10-20 11:06:29 +01:00
Alex 3972e14840 Added NoGCRegion feature 2025-10-20 11:05:58 +01:00
Chomp dc2579c86d Skip init Offers as its immediately int on the line below 2025-10-20 09:56:32 +01:00
Cj f3f91e37b7 remove unused record 2025-10-20 04:22:49 -04:00
Alex f935eb82b9 Added setter to ExtensionData properties 2025-10-20 09:09:04 +01:00
ozen-m ab62b070a8 Fix insurance removes stored item and fix drawn element not being removed (#639)
* Exclude items stored inside root item (e.g. armored rigs) when processing regular items

* Remove draw element when whitelist is null

* Simplify null check
2025-10-19 20:23:31 -07:00
Cj 37c900c8aa Always overwrite locales instead of reporting an error if the key exists 2025-10-19 16:40:45 -04:00
Chomp 832e9e4b7c Generate item prices before generating offers that use price data - Fixes offers being generated using stale prices, then corrected once they expire and get regenerated #641 2025-10-19 21:37:21 +01:00
Cj fd47c47c3e Remove potential for deadlock in ProfileDataService 2025-10-19 01:13:46 -04:00
Cj 80b49eb077 Write profile data json indented 2025-10-19 00:28:45 -04:00
Cj 4f73860e66 Fix ProfileDataService adding the string to the cache instead of the object 2025-10-19 00:09:27 -04:00
DrakiaXYZ a5fe584cee - Pass through main exception on json deserialization failure
- Fix below to above
2025-10-18 11:13:10 -07:00
DrakiaXYZ 5a6f560736 Harden config loading against exceptions
- Extra files in the `config` folder are now skipped
- Exceptions deserializing now output what file failed and the exception more clearly
2025-10-18 11:07:07 -07:00
Yuri 954eee5251 Fix daily quest always generating one quest type on replace. 2025-10-18 04:09:00 -05:00
Chomp 4ce5512d7d Added BotConfig.ReplaceScavWith to allow adjustment of scavs into other bot types 2025-10-17 10:53:25 +01:00
Chomp 2604db86e6 Fixed nullref error in FixProfileBreakingInventoryItemIssues due to BSG typo 2025-10-17 09:05:09 +01:00
DrakiaXYZ a98a5ce8a1 Discard duplicate item locale entry instead of throwing an exception 2025-10-16 18:19:08 -07:00
Chomp e9a6b5953d Flagged BotLocationModifier.AdditionalHostilitySettings as nullable 2025-10-16 21:09:34 +01:00
Chomp b23832267c Fixed sort by name not working due to it being really slow #625 2025-10-16 18:23:26 +01:00
Chomp 13f370f0dc Fixed nullref inside GetItemMinAvgMaxFleaPriceValues 2025-10-16 16:29:47 +01:00
Chomp 697e07456d Persist PMC stats on prestige 2025-10-16 15:55:49 +01:00
Archangel 0e548aa080 UnmappedMemberHandling on debug builds only 2025-10-16 12:34:03 +02:00
DrakiaXYZ 2d0713d94e Offset PMC spawns to start of raid when using a simulated raid start 2025-10-15 18:15:28 -07:00
Chomp b15892b256 Fixed nullref inside ChargePlayerTaxFee #620 2025-10-15 20:29:02 +01:00
Chomp 56026297cf Fixed logic error inside CheckAndLockOfferFromPlayerTieredFlea 2025-10-14 18:23:09 +01:00
Chomp 12a086bc70 Show unlock at level x instead of offer creators name in flea while item is tier locked 2025-10-14 12:22:32 +01:00
Chomp 562dee37d7 Fixed tiered flea issue. A level level profile can lock item for all other profiles until server restarts 2025-10-14 12:19:15 +01:00