Commit Graph

96 Commits

Author SHA1 Message Date
DrakiaXYZ d2e2f04c93 Merge 4.0.3 changes to main (#674)
* Fix exception sometimes thrown on save
- Switch back from File.Rename to File.Move, as Rename is throwing exceptions on some users systems

* Change BTR skin to tarcola during Christmas event

* Added comment

* Remove unused using

* Add wipe Response model

* formatting and add Wipe Endpoint to V2

* Format Style Fixes

* Merge pull request #669 from sp-tarkov/Assembly-ref-validation

Validate core assembly reference when loading mods

* removed zombies from customs and interchange + increased infection across other maps that have zombie kill quests

* Don't apply hostility changes to maps without zombies during halloween

`ReplaceBotHostiltiy` has optional map whitelist param

* Updated hostility values for maps with infection:
bosses = hostile to player not to pmc bots
followers = hostile to player not to pmc bots
pmcs = hostile to player + always hostile to scavs
scavs = hostile to player and pmc bots
raiders = hostile to player and pmc bots

Adjusted infection rates to just maps with zombie kill quests

* Format Style Fixes

* Added missing values for event bosses

* Format Style Fixes

* Added missing values for `ravangezryachiyevent`
Fixed preset typo `bossTagillaAgro`

* Format Style Fixes

* Flagged `Night of The Cult` as halloween quest

* Fixed incorrect logic

* Enabled `Night of The Cult` bosses to spawn

* Format Style Fixes

* Addd a new ReleaseCheckService to notify users of updates (#670)

* Addd a new ReleaseCheckService to notify users of updates
- Pulls the latest release from GitHub API to compare the tag against the users current SPT version
- Runs at the very end of the startup process to avoid being pushed off screen by mod logging
- Only notifies of patch version increments, not major or minor increments
- Links the release notes so users can Ctrl+Click to open directly to the upgrade page
- Is run on its own thread, and discards all errors, so as to not impact users without an internet connection or ability to access GitHub

* Formatting

* Use record for the ReleaseInformation class

---------

Co-authored-by: DrakiaXYZ <565558+TheDgtl@users.noreply.github.com>

* ProfileDataService changes:

Added `ClearProfileData()`
Replaced filepath access with `Path.Combine`
Reduced various sources of duplication

* Adjusted `Goons` spawn chance to 20% across `Customs/Lighthouse/Woods/Shoreline`

* Account for compound items in DialogHelper.GetMessageItemContents

* Generate weapon/armor price based on the child item price total

* Added halloween event bosses to april event

* Flagged infected spawns as `ForceSpawn` and ``

* Add migration for invalid pockets

* Default assign IEnumerable

* Post raid effect fixes:
When exiting raid with severe muscle pain, prevent client instructing server to add mild muscle pain
When exiting a raid with effect that has a timer, decrease timer value by amount of time spent in raid

* Updated nuget packages

* Fixed player scav not having correct HP values on limbs #642

* Remove unused record

* Revert "Updated nuget packages"

This reverts commit f6d9d461a6.

* Added `IMP mine detector` to reward and flea blacklist

* Fixed weapon builds not overwriting existing #654

Cleaned up `SaveWeaponBuild` and `SaveEquipmentBuild`

---------

Co-authored-by: DrakiaXYZ <565558+TheDgtl@users.noreply.github.com>
Co-authored-by: Chomp <27521899+chompDev@users.noreply.github.com>
Co-authored-by: Chomp <dev@dev.sp-tarkov.com>
Co-authored-by: CWX <CWXDEV@outlook.com>
Co-authored-by: sp-tarkov-bot <singleplayertarkov@gmail.com>
Co-authored-by: Cj <161484149+CJ-SPT@users.noreply.github.com>
Co-authored-by: Tyfon <29051038+tyfon7@users.noreply.github.com>
Co-authored-by: Archangel <jesse@archangel.wtf>
2025-10-31 14:55:07 -07:00
DrakiaXYZ 4e73778920 Fix multiple backups running at once
- Backups now have a cooldown, default of 30 seconds
- Backups now have a lock, in the event of a TOC/TOU race condition, the lock will stop duplicate backups
2025-10-26 10:17:26 -07: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
Chomp 97a41369d9 Improved comment 2025-10-20 15:37:24 +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
Alex 3972e14840 Added NoGCRegion feature 2025-10-20 11:05:58 +01:00
Cj f3f91e37b7 remove unused record 2025-10-20 04:22:49 -04:00
Chomp 4ce5512d7d Added BotConfig.ReplaceScavWith to allow adjustment of scavs into other bot types 2025-10-17 10:53:25 +01:00
Chomp a5d98c1f61 Added offerListingTaxMultiplier to ragfair config and wired up. Defaults to off 2025-10-08 11:40:23 +01:00
Chomp 99891858cb Moved craft ids out of UnlockHideoutLootCrateCrafts into config 2025-10-04 13:32:48 +01:00
Chomp 0acb3cb9cc Moved shotgun tpls from FixShotgunDispersions to config 2025-10-04 13:22:06 +01:00
Chomp 6311f7a355 Renamed variable to improved clarity 2025-10-03 20:33:29 +01:00
Chomp 6e2286ca5b Added system to allow adjustment of static spawn weights via config
reduced `Power substation utility cabin key` on customs to 60% of original weight
2025-10-03 20:28:39 +01:00
Cj cf29c7bde3 Merge pull request #601 from sp-tarkov/repeatable-completion-quests
Repeatable completion quest level ranges
2025-10-02 19:02:05 +00:00
Cj 040b4cd618 Repeatable quest warning fixes 2025-10-01 05:12:20 -04:00
Cj c95446bb20 Implement level ranged Exploration objective generation 2025-10-01 02:58:20 -04:00
Cj e57f03bd28 - Add min extract requirement property
- Fix warnings
- Convert string to mongoId
2025-10-01 01:51:57 -04:00
Chomp 836112dc50 Weather refactor (#596)
* First pass at Weather generation refactor

* Moved generation logic around

* Added seasonal variability support

* Expanded weather generation to use DI system and allow easier modding

* Updated weather weight values

Converted records into classes

* Added fallback when generator isn't found

* Fixed colliding lambda

Added method comments

* Cleanup of weather code

* Adjusted `weatherPresetWeight` values

---------

Co-authored-by: Chomp <dev@dev.sp-tarkov.com>
2025-09-30 12:23:46 +00:00
Chomp 55b819e1ec Removed GetItemRarityMultiplier, the values in items.json are garbage and should not be used
Added system to add multiplier to items that are used to craft in the hideout
2025-09-18 23:35:27 +01:00
Cj 10566f2fc4 Remove old clothing service code, BSG changed how it works. Leaving it to modders. 2025-09-18 13:36:37 -04:00
Chomp e8897886d2 Added an item type price multiplier override to GetFleaBasePriceMultiplier
All keycards now use a `2.5` multiplier, not just the red keycard
2025-09-18 14:03:28 +01:00
Chomp 1ef9ebd88a Added system to generate item flea base prices based on handbook value 2025-09-16 22:24:35 +01:00
Chomp 4a3387bd50 Store tpls in config as MongoIds 2025-09-08 15:39:01 +01:00
Chomp e5d0af3890 Formatting and naming consistency changes 2025-09-02 14:27:10 +01:00
sp-tarkov-bot 48b00a2814 Format Style Fixes 2025-08-21 09:46:00 +00:00
clodanSPT d14e7cc155 Added ceciler patch to add jsonextensiondata (#565)
Co-authored-by: Alex <clodanSPT@hotmail.com>
Co-authored-by: Chomp <27521899+chompDev@users.noreply.github.com>
2025-08-21 09:45:07 +00:00
Chris Adamson 457e7cd36c Fix: Killing the client will no longer save your items (#557)
* alt-f4 is for timmys and rats, not chads like Chomp

* peer review fixes

---------

Co-authored-by: Chomp <27521899+chompDev@users.noreply.github.com>
2025-08-19 16:39:20 +00:00
Chomp 8b0445375b Revert 2025-08-17 20:06:38 +01:00
Chomp c1522c278e Validate profiles on server start, can be disabled via core.config 2025-08-17 19:56:59 +01:00
Archangel f96172ac60 Always init ExtensionData & fix BaseInteractionRequestData inheritance 2025-08-17 16:20:32 +02:00
Chomp d94490b52f Added functionality to force PMCs to wear specific armband - default enabled
usec = blue
bear = red
2025-08-16 14:37:06 +01:00
Cj 4d0eb4d4f3 Change to using builtin SemVer type for AbstractModMetadata and ProgramStatistics.Generated (#536)
* Change to using SemVer builtin type

* Remove SptVersion from config, remove redundant .ToString()

* Update test mod, fix watermark string conversion
2025-08-09 20:40:25 +00:00
Chomp 5cd5ed1f42 Refactored logic of ragfairServer.update()
typo fixes
2025-08-06 15:17:34 +01:00
Cj 529fe61f23 Controller house keeping (#532)
* Cleanup BotController.cs

* More controller cleanup

* More dialogue changes
2025-08-05 16:24:59 +01:00
Chomp e7fd757dce Improved how bots are generated to be less blocking
Updated `GenerateBotWaves` to return empty results when request data is empty

Cleaned up `GenerateBotWave` to not need a manual lock
Improved `botRelativeLevelDelta` value in pmc.config

Updated `MatchBotDetailsCacheService` to store PMCs primary weapon tpl
2025-08-04 13:25:19 +01:00
sp-tarkov-bot b14b74bf24 Format Style Fixes 2025-07-28 19:39:29 +00:00
R3ality 82efbfc7db Refactor Json key name to offerCurrencyChancePercent 2025-07-27 13:36:38 +03:00
R3ality 7733d2df96 Fix typo in locationMultipler 2025-07-27 13:15:37 +03:00
R3ality b5b24b2003 Fix typo in traderPriceMultipler 2025-07-27 13:04:50 +03:00
R3ality 765adcac5e Fix typo in priceThreshholdRub 2025-07-27 11:38:54 +03:00
R3ality 8c52c15d6e Fix typo in handbookPriceMultipier 2025-07-27 11:38:53 +03:00
R3ality 9eaa46e024 Fix typo in skillGainMultiplers 2025-07-27 11:38:35 +03:00
R3ality 08a279c4e4 Fix typo in cultistCircle.craftTimeThreshholds 2025-07-27 11:38:12 +03:00
R3ality 8e20a97d5d Fix typo in cultistCircle.rewardPriceMultiplerMinMax 2025-07-27 11:38:11 +03:00
Chomp 34bd002876 list to ienumerable changes
Removed unused methods

strong to mongoId changes
2025-07-25 12:28:40 +01:00
Chomp f562c634a7 Converted lists to hashsets where appropriate
Removed unnecessary uses of  ToList()
string to mongoId conversions
2025-07-24 13:26:34 +01:00
Chomp 6079e282f5 List to ienumerable conversions 2025-07-24 11:36:42 +01:00
Chomp a1e0dadd08 Part 2 of list to ienumerable 2025-07-23 15:55:28 +01:00