Commit Graph

97 Commits

Author SHA1 Message Date
Chomp 80b50af732 Refactored RemoveBlacklistedLootFromBotTemplate to not use reflection 2025-06-25 13:39:18 +01:00
Chomp 38e4cc2570 Refactored AdjustBotTemplateWithKarmaSpecificSettings
Modularised code into smaller chunks
Improved loops for better readability
Removed reflection
2025-06-25 13:35:11 +01:00
chompDev 340db55f81 .NET Format Style Fixes 2025-06-24 15:29:18 +00:00
Cj 4fb19151be Merge pull request #424 from CJ-SPT/GetLowestHp-optimization
Optimize GetLowestHp()
2025-06-24 16:28:46 +01:00
chompDev 4909a80b32 .NET Format Style Fixes 2025-06-24 08:24:39 +00:00
Cj c6d5638057 Move RepeatableQuestRewardGenerator.cs and update some reward generation data 2025-06-24 02:59:37 -04:00
chompDev 2646f90273 .NET Format Style Fixes 2025-06-23 21:26:58 +00:00
Chomp 083e3b97e0 Fixed Weapon cache generation running 15+ times on first load due to threading issues
Expanded weapon and equipment cache to include mods - Fixes randomisation slots causing warnings during bot generation

Optimised `FilterModsByBlacklist` handling of blacklists
2025-06-23 22:26:20 +01:00
chompDev 321fdd9ace .NET Format Style Fixes 2025-06-23 13:56:14 +00:00
Cj 524fa65c29 Repeatable quest generation (Part 3) (#420)
* clean up EliminationQuestGenerator.cs

* add locales
2025-06-23 14:54:43 +01:00
chompDev 60324bc4e1 .NET Format Style Fixes 2025-06-23 10:39:01 +00:00
Chomp e0975c6958 Localised various error and warning messages 2025-06-23 11:38:26 +01:00
chompDev d4f9e38169 .NET Format Style Fixes 2025-06-23 09:04:32 +00:00
Cj b3dca61ac0 Break rest of repeatable quest generation code into components. Fix nullability of exploration generation and improve error handling, make new helper method, add pick random quest type method to controller (#419) 2025-06-23 10:03:56 +01:00
chompDev 6820d7b8be .NET Format Style Fixes 2025-06-22 19:51:53 +00:00
Cj 811791f7d3 Repeatable quest generation (Part 1) (#417)
* Refactor and breakout CompletionQuestGenerator.cs

* make `GenerateAvailableForFinish` protected
2025-06-22 20:51:18 +01:00
chompDev d7b61e857c .NET Format Style Fixes 2025-06-22 08:12:25 +00:00
Chomp 8477cc6485 Refactored AddForcedDynamicLoot 2025-06-22 09:11:50 +01:00
chompDev e64243a0c5 .NET Format Style Fixes 2025-06-22 08:05:18 +00:00
Cj d68228b5c9 Quest config nullability and documentation (Part 2) (#415)
* Make Interp1 generic

* Finish quest controller nullability fixes

* More model and nullability improvements and fixes

* Rename `specificLocationChance`

* rename `bodyPartChance`

* finish comments
2025-06-22 09:04:45 +01:00
chompDev 10880881b4 .NET Format Style Fixes 2025-06-22 07:43:05 +00:00
Chomp a266556b3c Rename method for better clarity as to its purpose 2025-06-22 08:42:30 +01:00
chompDev 81692bec65 .NET Format Style Fixes 2025-06-22 07:37:40 +00:00
Chomp 34d4de1d54 Fixed nullref in loot generation when Location has no item limits 2025-06-22 08:35:58 +01:00
chompDev c3463098be .NET Format Style Fixes 2025-06-21 14:16:39 +00:00
Chomp 1c207568a5 Moved loot generation logic from LocationLifecycleService into LocationLootGenerator 2025-06-21 15:16:01 +01:00
chompDev 203e30a637 .NET Format Style Fixes 2025-06-21 13:45:45 +00:00
Chomp 21bd868abe Added ability to track loot items and prevent more than a pre-defined amount from spawning
Replaced `location.json` `forcedLootSingleSpawnById` with `lootMaxSpawnLimits`

Added 5 item limit to `Labrys research notes` #290
2025-06-21 14:45:08 +01:00
Archangel f7782e1b1a Begin cleanup of quest model & nullability in Quests & Achievements 2025-06-20 14:24:58 +02: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 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