Commit Graph

68 Commits

Author SHA1 Message Date
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 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
refringe 6e01428b2b .NET Format Style Fixes 2025-06-18 17:09:20 +00:00
Chomp 4c8d8d9440 Removed unnecessary caching from RagfairAssortGenerator 2025-06-18 14:21:00 +01:00
Chomp 9e991372b8 Reduced debug logging inside GenerateDynamicOffers 2025-06-17 16:10:23 +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 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
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 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 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
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 8179e5c86b Localised strings
Improved nullguards
2025-06-09 14:45:47 +01:00
Chomp 57c9ff477e Localised various error messages 2025-06-09 09:35:47 +01:00
Chomp 1d5162c761 Various changes and fixes for things that have been bugging me
Removed/flagged unused props
Typo fixes
Use `FirstOrDefault` over direct index access
Log stacktrace on exception inside `CreateWeaponItems`
2025-06-08 10:40:40 +01:00
Chomp 89106d5448 Refactored how skills are parsed, fixes issues with bot generation and end of raid profile parsing 2025-06-08 09:39:14 +01:00
Chomp 3a2f68a232 Fixed issues relating to gift codes with profile modifications
Updated enums to match client formatting and ids
Added `SkillClass` enum

#368
2025-06-07 23:08:21 +01:00
Chomp f9de4d77fc Fixed ExtensionData change breaking new profiles 2025-06-02 21:41:35 +01:00
Chomp 2165e407eb Added missing locks + improved comments
Made use of `nameof` instead of `toString`
2025-06-02 12:27:39 +01:00
Chomp c7b6868092 Allow bot generation without raid config data 2025-06-02 11:42:48 +01:00
Archangel 4e3c755e90 Remove AppContext, store profile related data in ProfileActivityService 2025-05-30 19:36:23 +02:00
Chomp d2e80d7b5d Updated GetItemRewardPool to ignore items from the db without a parent id when gathering blacklist 2025-05-30 09:24:43 +01:00
Chomp 1d85328586 Made locks readonly 2025-05-28 11:21:06 +01:00
Chomp 45bc4191dd Made use of Lock as.net 9 has optimisations for this object type 2025-05-28 11:18:50 +01:00
Chomp 8a382f5d63 Replaced concurrent dictionary with manual locks inside PMCLootGenerator 2025-05-28 11:06:16 +01:00
Alex 1499627d3c DI completely reworked to keep status of singletons on multi type components 2025-05-06 10:52:22 +01:00
Chomp 74781cb1b2 Fixed error in SetCurrentDateTime 2025-05-04 17:08:57 +01:00
Chomp c5250000f0 Fixed build 2025-05-04 15:30:38 +01:00
Chomp 4ea63711a9 Fixed IsNightTime not handling factory night/day raids 2025-05-04 14:02:09 +01:00
Chomp 31ae5feb41 Bot generation performance (#231)
* chore: Bot generation performance improvements (#227)

* Bot generation performance improvements

* Revert debug logging logic

* Get rid of Info log which is bound to be printed inevitably at each bot wave generation

* Use assault const

* Removed comments

Removed lowercase side constants
Renamed equipment role to better explain its purpose

Fixed `Blocks` property being serialised to client

Updated `_slotsWithNoCompatIssues` to use existing enum type

Reduced log line to be debug

* Fixed `GetRandomTextThatMatchesPartialKey` incorrectly checking eft locales instead of spt locales

* Updated various methods to be protected

---------

Co-authored-by: hulkhan22 <clandestine984@gmail.com>
Co-authored-by: Chomp <dev@dev.sp-tarkov.com>
2025-05-04 12:51:45 +01:00
CWX 9bfd051725 dont calculate size twice 2025-05-03 13:06:46 +01:00
Chomp ab7cdd63ba Use same item size method as airdrop loot 2025-05-02 19:53:57 +01:00
Chomp 344ea6de35 Moved container methods around
Added code to validate items fit into airdrop crate

Updated `CreateForcedLoot` and `CreateRandomLoot` to return items with their children

Updated `SetFoundInRaid` to not add a upd to money/currency if it doesn't already have one
2025-05-02 19:48:28 +01:00
Chomp 1976218991 Updated locations where we parse a number stored as a string into a double to use CultureInfo.InvariantCulture, this resolves errors with languages that don't use commas instead of periods in numbers 2025-05-01 17:41:54 +01:00
hulkhan22 d1cb04264c Merge branch 'develop' into fix/arms-legs 2025-04-29 19:50:38 +02:00
Chris Adamson de38f1fe88 try just the enum 2025-04-29 10:57:12 -05:00
hulkhan22 9357c1d2b9 Fix cast & filtering 2025-04-29 00:33:40 +02:00
hulkhan22 072113004e Define bodypart constants for efficiency 2025-04-28 23:39:33 +02:00
hulkhan22 c1b8f8c6a0 Fix body parts sent to client 2025-04-28 23:27:51 +02:00
CWX 7c7297f63c Code cleanup and format 2025-04-22 14:49:05 +01:00
CWX 2b0a829515 reduce flea offer pack chance, cuz i hate em 2025-04-22 14:23:30 +01:00
CWX 5053b8486d add missing blacklist to pmc loot gen 2025-04-22 13:08:56 +01:00
CWX 7726df0ee1 simplify blacklist filtering 2025-04-22 13:08:39 +01:00
CWX d8bdfb9cb0 Fix botgen filtering issues 2025-04-21 23:36:10 +01:00
Chomp 6faa69964d Improved comments inside GetSizeByInventoryItemHash and string comparisons 2025-04-20 19:00:52 +01:00
Chomp b281254bff Cleaned up AddLootToContainer 2025-04-20 16:31:14 +01:00
Chomp d1bdb7b99d Added early exit to AddLootToContainer when 0 loot item count is picked 2025-04-20 15:12:06 +01:00
CWX 5886320bb6 change to seconds not ms 2025-04-20 14:33:14 +01:00