Commit Graph

141 Commits

Author SHA1 Message Date
Jesse 54f0d0779c Convert TemplateItem to MongoId (#436)
* Convert TemplateItem to MongoId

* Push new extensions

* Handle null mongoid's being passed to regex

* Handle null strings, fixes item events

* Updated loot generation to work with new property `composedKey`

Fixed typo in `SlotId`

* Fix missing method after merge

* Remove duplicately named MongoIDExtensions?

* Fixed location loot generation to handle impending loot json changes

* Updated location JSONs with new properties (excluding lighthouse loose loot)

* Fixed build issue with ItemTplGenerator

* use correct handing for new mongo ids

* Added helper method to improve readability

---------

Co-authored-by: Chomp <dev@dev.sp-tarkov.com>
2025-07-02 10:14:04 +01:00
chompDev 46989aa19e .NET Format Style Fixes 2025-07-01 09:18:15 +00:00
Lacyway 8e3894e9ad MongoID improvements (#437)
* MongoID improvements
- Added extension to check whether a MongoID is valid, 33% faster than old method
- Cut down generation speed by 2/3

* Fix method used

* Add test
2025-07-01 10:17:39 +01:00
Jesse 6ac747d18d Begin converting some id's to MongoId (#435)
* Begin converting some id's to MongoId

* Remove nullability on MongoId's

* Update trader MongoId's
2025-06-30 15:25:47 +01:00
Chomp 25c3eee4fa Added MongoId struct 2025-06-30 11:07:04 +01:00
Chomp 611b234142 Added ability to change weekly boss reset day via config 2025-06-30 09:50:11 +01:00
Chomp e6b791179b Added Boss of the week system
Similar to live where a boss is picked at random and will have a guaranteed spawn on a map. This is indicated with a skull on the map selection screen
Configurable via `config/bot.json/weeklyBoss`
2025-06-29 18:58:23 +01:00
Chomp 4d39a4c819 Remove unused profile property VitalityData 2025-06-29 15:55:55 +01:00
Chomp 2fc8b2a29f Updated DamageType 2025-06-29 13:57:19 +01:00
chompDev 707c5dd9ce .NET Format Style Fixes 2025-06-29 10:12:11 +00:00
Chomp 3df61005eb Updated ItemTpl mappings 2025-06-29 11:11:39 +01:00
Chomp cf61560266 Cleaned up comments
Set properties as readonly
2025-06-29 09:33:11 +01:00
Jesse 22c71bee5b Helper methods extensions (#431)
* Remove unused model

* Start moving methods to extensions, cleanup code
2025-06-28 12:14:50 +01:00
Chomp f256cbf529 Resolved various editor warnings inside TraderController 2025-06-26 13:11:22 +01:00
Chomp c91b6c4407 Improved accuracy of client/match/join and client/match/group/start_game 2025-06-26 11:14:24 +01:00
Chomp df0e3e5ce6 Updated ExtensionData to be nullable 2025-06-25 15:16:38 +01:00
Chomp 9b6722b06a Added ExcludeBosses property 2025-06-25 14:16:40 +01:00
Chomp e87edeffb8 Added new json data 2025-06-24 11:25:48 +01:00
Chomp 2368ccc60b Updated trader base jsons 2025-06-24 10:31:21 +01:00
Cj c6d5638057 Move RepeatableQuestRewardGenerator.cs and update some reward generation data 2025-06-24 02:59:37 -04:00
Chomp d11ffd38d7 Updated JSONs for 37711 + added new properties to globals.cs 2025-06-23 17:18:44 +01:00
Cj 524fa65c29 Repeatable quest generation (Part 3) (#420)
* clean up EliminationQuestGenerator.cs

* add locales
2025-06-23 14:54:43 +01: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 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
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
chompDev 37ed866dc8 .NET Format Style Fixes 2025-06-20 12:45:24 +00:00
Archangel f7782e1b1a Begin cleanup of quest model & nullability in Quests & Achievements 2025-06-20 14:24:58 +02:00
Archangel 519615d313 Set ConditionTypes in Quest as required 2025-06-20 13:11:35 +02: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
refringe 6e01428b2b .NET Format Style Fixes 2025-06-18 17:09:20 +00: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 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 95fd88c9ff Updated transit health system to only remove DestroyedPart effect and not heal limbs by default #300
Exposed values in config
Also apply code to PMC transits
2025-06-14 15:09:40 +01:00
Chomp b78d0dff09 Cleaned up usings 2025-06-11 14:20:40 +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 cfd2116fb6 Allow altering the parentId of values placed inside handbookPriceOverride 2025-06-08 21:34:29 +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 a56033ecae Merge pull request #372 from hulkhan22/feat/configurable-btr-delivery-time
feat: Configurable BTR delivery time
2025-06-07 23:09: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 2d67d8002b Send string representation of notification type enum to client to let profile changes work #368 2025-06-07 19:50:46 +01:00
hulkhan22 2fbac07b09 Update comment 2025-06-07 18:47:26 +02:00
hulkhan22 ef7fb0e4a5 Merge branch 'develop' into feat/configurable-btr-delivery-time 2025-06-07 17:53:57 +02:00
hulkhan22 bc61f120d7 Configurable BTR delivery time 2025-06-07 17:53:12 +02:00
Chomp fb31786ee2 Updated profile templates to be a dictionary, cleaned up all uses of it throughout code
Added `profileHelper.GetProfileTemplateForSide`
2025-06-07 12:17:28 +01:00
Chomp de36e24772 Add new record 2025-06-06 13:24:14 +01:00