Commit Graph

1595 Commits

Author SHA1 Message Date
Archangel f7782e1b1a Begin cleanup of quest model & nullability in Quests & Achievements 2025-06-20 14:24:58 +02:00
Chomp 36cc5b5e9d Added missing data 2025-06-20 12:21:34 +01:00
Archangel 519615d313 Set ConditionTypes in Quest as required 2025-06-20 13:11:35 +02:00
Chomp 2deebe566e Added missing condition data 2025-06-20 12:10:00 +01:00
Chomp 20e4b1c2fc Removed dupe achievements 2025-06-20 09:54:03 +01:00
Chomp e462992fcc Removed PVP achievements from achievements.json
added to customAchievements.json instead
2025-06-20 09:46:30 +01:00
Chomp 8230a53cf1 Updated achievements json
Updated quest data:
To Great Heights - Part 4
To Great Heights - Part 5
Against the Conscience - Part 1
Surprise
Create a Distraction - Part 1
Create a Distraction - Part 2
To Great Heights - Part 2
2025-06-20 09:17:42 +01:00
chompDev ab22346870 .NET Format Style Fixes 2025-06-20 07:48:43 +00:00
Cj 445243aad5 Task: Quest config changes Part 1 (#407)
* Remove nullable and add properties, make side use an enum instead of a string.

* remove double semi-colon

* fix comment
2025-06-20 08:48:12 +01:00
chompDev 1a6f5f779d .NET Format Style Fixes 2025-06-19 13:36:57 +00:00
Lacyway 8ef16880f4 Fix stackoverflow (#406) 2025-06-19 14:36:21 +01:00
Chomp 26ce1d9562 Clone offer items prior to processing them as we delete them all in line below 2025-06-19 14:31:58 +01:00
chompDev 644a70b7b4 .NET Format Style Fixes 2025-06-19 11:10:44 +00:00
Chomp 8276e7bef8 Added rootItem to CreateOffersFromAssort and skip RemoveBannedPlatesFromPreset when creating replacement expired offer
Added  `isExpiredOffer` `CreateSingleOfferForItem`, Only remove armor plates on non-expired offers + added helper method `RemoveArmorPlates`
2025-06-19 12:10:08 +01:00
chompDev 421762c290 .NET Format Style Fixes 2025-06-18 19:04:21 +00:00
Chomp c320097deb Cache server/client locale choices on first selection 2025-06-18 20:03:44 +01:00
Chomp b2403e472c Report missing locales as Debug messages
Added check of first 2 characters of `languageCode` against locales as last-ditch effort
2025-06-18 19:56:29 +01:00
refringe 6e01428b2b .NET Format Style Fixes 2025-06-18 17:09:20 +00:00
Chomp 96e12d80e4 Refactored caching inside BotEquipmentModPoolService
Made use of primary constructor
Made `GetModsForWeaponSlot` access dictionary via`TryGet`
Made `GetCompatibleModsForWeaponSlot` access dictionary via`TryGet`
2025-06-18 15:36:50 +01:00
Chomp 26048524f1 Removed unused imports 2025-06-18 15:12:05 +01:00
Chomp be87e78ac0 Cleaned up caching used inside HandbookHelper
Removed INT cast when returning value from `FromRUB`
Renamed `HydrateLookup` and made protected
Made `LookupCollection` protected and moved inside `HandbookHelper
2025-06-18 15:02:21 +01:00
Chomp 4c8d8d9440 Removed unnecessary caching from RagfairAssortGenerator 2025-06-18 14:21:00 +01:00
Chomp 73328b4711 Fixed typo in locale key 2025-06-18 13:59:52 +01:00
Chomp af31906cb4 Made SellToTraderQuestConditionCache a property 2025-06-18 13:41:54 +01:00
Cj 89f4d10faa Refactor SellItemToTrader logic (#403)
* Refactor SellItemToTrader logic

* add comments and make QuestHelper a singleton

* add localization for error

* grammar
2025-06-18 13:14:35 +01:00
Chomp 9e991372b8 Reduced debug logging inside GenerateDynamicOffers 2025-06-17 16:10:23 +01:00
Chomp a7a09a60e3 Fixed starting Burning rubber showing Easy Start Part 1
Accepting a quest now checks if player has valid level before adding addition quests to players profile
2025-06-17 16:00:54 +01:00
Chomp a0faa91107 Updated sandbox_high #396 2025-06-17 14:46:30 +01:00
Cj ff4dc31835 Merge pull request #402 from CJ-SPT/TP-AD-FIX
Airdrop TP fix
2025-06-17 13:46:43 +01:00
Chomp 2e1d38f0f4 Added missing requiredItemTypeBlacklist properties 2025-06-17 13:24:57 +01:00
Chomp bc860991a2 Regenerated loot data, Sandbox_high to be added later 2025-06-17 09:52:40 +01:00
Chomp 060a2630c8 Made emthod protected + comment improvement 2025-06-17 09:51:35 +01:00
Chomp 51fc2c4a0b Created GetItemsToRetrievePool to handle logic instead of using GetRewardableItems, now returns tpls instead of entire objects #401
Decoupled `IsValidRewardItem` from repeatable config
Made `IsValidRewardItem` public
Added `RequiredItemTypeBlacklist` to Completion config, Blacklisted ammo
More nullguards
2025-06-17 09:50:32 +01:00
Chomp 125b81e3e5 Updated private methods inside BackupService to protected 2025-06-17 08:52:00 +01:00
Chomp 9a6d844635 Fixed backup folders not being 0-Padded 2025-06-16 22:47:32 +01:00
Chomp 0fed615b62 Fixed date format being incorrect 2025-06-16 22:41:53 +01:00
Chomp 5d4437b573 Expanded error logging inside ExtractDateFromFolderName 2025-06-16 21:54:46 +01:00
Chomp 8a0771515a Modernised ExtractDateFromFolderName 2025-06-16 21:29:14 +01:00
Chomp 470861111e Updated ExtractDateFromFolderName to make use of PATH class 2025-06-16 21:23:34 +01:00
Chomp 48871eba81 Fixed warning being caused by ragfair code trying to add offer to expired cache twice 2025-06-16 20:34:44 +01:00
Chomp 6ac8304428 Cleaned up RagfairOfferHolder
More comments
Made `Add` methods return a bool indicating their outcome
2025-06-16 16:45:20 +01:00
Chomp b69544ae2c Added lock to GetStaleOfferIds
Made `RagfairRequiredItemService` a singleton
Made `RagfairRequiredItemService ` store offerIds instead of offer objects, reducing memory footprint
Reworked `GetOffersThatRequireItem` to work with `RagfairRequiredItemService` changes
Moved `GenerateDynamicOffers` to run after garbage colelction, this means GC will work on memory prior to new offers being added but after stale offers are removed

Made `PaymentHelper` a singleton + Store currency tpls in a hashset instead of list

Comment improvements
2025-06-16 14:46:37 +01:00
Chomp e869f6ebef Refactored ragfair code for improved readability 2025-06-16 13:00:06 +01:00
Chomp 40ace1712d Fixed cancelled/expired player offer items not being returned #400
We were missing player offer processing when handling stale offers
2025-06-16 12:59:32 +01:00
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