Commit Graph

397 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
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
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
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 e9a6b5953d Flagged BotLocationModifier.AdditionalHostilitySettings as nullable 2025-10-16 21:09:34 +01:00
Archangel 4cf3279f97 Add handler for PointsEarnedDuringSession overflow 2025-10-13 16:27:21 +02:00
Chomp 4bc643adfb Merge pull request #613 from DrakiaXYZ/fix-hideoutexamine
Fix examining item in hideout upgrade panel exception
2025-10-12 07:53:27 +00:00
DrakiaXYZ b416d7109a Fix launcher not showing mods
Convert `Version` and `SptVersion` to strings when serializing JSON for AbstractModMetadata
2025-10-11 22:44:27 -07:00
DrakiaXYZ e00dcc719c Fix examining item in hideout upgrade panel exception 2025-10-11 21:19:32 -07:00
Chomp 7403990e69 Merge branch 'develop' of https://github.com/sp-tarkov/server-csharp into develop 2025-10-11 10:08:34 +01:00
Chomp e813357a60 Updated mongoid length check to log the string, not the name of the param 2025-10-11 10:08:21 +01:00
DrakiaXYZ 4b421b6f47 Fix incorrect workout classes 2025-10-10 23:15:25 -07:00
Chomp 4b03f39e60 Updated CountPVE property 2025-10-09 21:10:25 +01:00
Archangel 9baa1236d4 Make StaticLoot IEnumerable 2025-10-09 20:19:36 +02:00
Chomp a5d98c1f61 Added offerListingTaxMultiplier to ragfair config and wired up. Defaults to off 2025-10-08 11:40:23 +01:00
DrakiaXYZ c756479239 Fix mod SptVersion to be a range (#605)
* Fix mod SptVersion to be a range
- SptVersion and ModDependencies now use a Range instead of a set version
- Remove IsValid and IsValidRange checks from ModValidator, as invalid values will fail to parse into the strong types before this method is called
- Remove unused "AnySatisfies" and "IsValid*" methods from ISemVer
- Update TestMod to use Range types

* Formatting

---------

Co-authored-by: DrakiaXYZ <565558+TheDgtl@users.noreply.github.com>
2025-10-07 15:56:48 +00:00
Chomp a09e8bf3fa Added customFlags <string/bool> dict property to profile templates 2025-10-07 11:21:46 +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
Chomp ba4e8d9c14 Removed password from profiles
Added migration to remove password property from profiles
2025-10-02 09:56:51 +01:00
Cj 040b4cd618 Repeatable quest warning fixes 2025-10-01 05:12:20 -04:00
Cj 7a08fd4e16 Merge branch 'develop' into repeatable-quest-tuning 2025-10-01 03:16:37 -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 cc745f4c46 Corrected ProcessBuyTradeRequestData transactionId to be Mongoid, updated associated code
Also moved TransactionId in `InsuranceRequestData` to be MongoId, updated associated code
2025-09-30 22:38:42 +01: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
Cj 36b247d92e Move HideoutAreas to the Models.Enums.Hideout namespace 2025-09-29 18:14:59 -04:00
Chomp 79e023392b Implemented CoreBot type
Enabled 'rudans' patrol flag in Christmas event
2025-09-29 09:33:16 +01:00
Chomp ecc0ba8406 Cleanup of warnings 2025-09-26 13:38:47 +01:00
CWX c67153b517 change sig on version response 2025-09-23 15:12:19 +01:00
CWX ca28cb2926 Update Profile v2 endpoint to use miniprofile and allow v2 endpoint to get miniprofile from only loginrequest 2025-09-19 18:46:05 +01: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
Archangel 5fc7761b4c Send InvalidOrUnloadableProfile to launcher 2025-09-18 19:56:26 +02: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 fb175d4341 Merge branch 'develop' of https://github.com/sp-tarkov/server-csharp into develop 2025-09-18 14:03:39 +01: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
Archangel 1cc1d2e95d Remove unused record 2025-09-17 20:49:10 +02:00
Archangel 6a4efe9e53 Set correct type on global LocationInfection 2025-09-17 20:47:24 +02:00