505 Commits

Author SHA1 Message Date
Tyfon
ed3e16a94f Add support for flea market dogtag barter requirements (!378)
Trader offers with dogtag barter requirements are currently missing the `level` and `side` properties necessary to qualify them. This data already exists in the assorts, just needed to be sent along with the offer.

I considered updating the `side` property of `Requirement` in `IAddOfferRequestData.ts`, but that field is never used, and the client appears to pass 0 for both (even though 0 is not a valid `side`).

Not sure if this should be going to `master` or `310-dev`?

Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/378
Co-authored-by: Tyfon <tyfon7@outlook.com>
Co-committed-by: Tyfon <tyfon7@outlook.com>
(cherry picked from commit ec76a8897fda32ab938bd758025bafdad1e956da)
2024-07-20 23:41:39 +01:00
Dev
727ba83273 Improved accuracy when creating flea offer - store single item price in `` property
Made `unlimited` property optional as its only used by traders
Slightly reduced pack offer chance + made them have more items
2024-07-19 13:45:34 +01:00
Dev
4b8b3b77a7 Remove unsued properties + improved how user data is stored/generated 2024-07-17 19:30:17 +01:00
Dev
073797a294 Fixed issue with itemFitsInto1By2Slot() classifying all items as unsuitable for a 1x2 slot
(cherry picked from commit d92ec20e9ca1ee1a98160b85682547f729d7c428)
2024-07-13 12:57:40 +01:00
Dev
034c7142fc Added workaround for Ref repeatables not having any description text - force him to use Prapor text instead 2024-07-13 09:33:04 +01:00
Dev
6a12a3f04d Fixed incorrect starting hp value inside getLowestHpBody() 2024-07-10 16:46:53 +01:00
Dev
dd56749ae1 Generate player scav with lowest Hp bodyparts 2024-07-09 12:35:37 +01:00
Kaeno
18af98e86d Remove trailing spaces and fix isPlayerScav check to generate correct health pool 2024-07-09 10:25:24 +01:00
Dev
bda69a5563 Added getMoneyTpls() 2024-07-07 19:43:32 +01:00
Dev
7497f0d40f Fixed dynamic loot code choosing blacklisted items - credit to Drakia for solution 2024-07-07 18:55:36 +01:00
Dev
494fd66f51 Renamed LocationGenerator to LocationLootGenerator 2024-07-06 13:54:04 +01:00
Dev
1f76ce5d10 Refactored airdrop loot code 2024-07-06 13:39:56 +01:00
CWX
7d6721d47b update comment for airdrop enum, allow airdrop loot to work 2024-07-06 09:17:32 +01:00
Dev
ce0123efd3 Implemented new wishlist system 2024-07-05 15:06:43 +01:00
Dev
8517e46ccb Refactored various functions to improve readability 2024-06-30 21:39:58 +01:00
Dev
7891db84de Updated createRandomLoot() to make use of rewardItemBlacklist black list 2024-06-20 13:37:38 +01:00
Dev
cf5411336f Adjusted how item quality % is calculated for player flea offers. Now excludes items without any quality modifier from calculation instead of assuming 100% (slightly lowers sell chance of things like armors)
Renamed `getItemQualityModifierForOfferItems()` to `getItemQualityModifierForItems()`
2024-06-19 14:27:58 +01:00
Dev
43a09c29c2 Improved import consistency + comment improvements
Moved `IGenerateEquipmentProperties` into own file
2024-06-19 11:11:28 +01:00
Dev
f7e42cae5d Improved comments inside BotEquipmentModGenerator class 2024-06-19 10:41:55 +01:00
Dev
416ef74902 Refactored mergeCamoraPool() 2024-06-19 10:40:59 +01:00
Dev
57f0b8b49e Ensure SelectedMemberCategory matches MemberCategory when generating EoD or UhD PMCs
(cherry picked from commit 44434b32783c96ab1b354215cdc26bab3bf0fcd9)
2024-06-18 16:06:28 +01:00
Dev
32e8557723 Split generateRewardItem() into two functions 2024-06-17 17:46:28 +01:00
Dev
1db9aa3243 Prevented gp coin repeatable reward falling below 1 2024-06-17 17:44:34 +01:00
Dev
d315414136 Further improvements to setRandomisedGameVersionAndCategory() to handle unheard profiles the same as live 2024-06-17 10:23:13 +01:00
Dev
357848ba9f Fixed some PMCs not having their game version flair when they kill you 2024-06-17 09:57:47 +01:00
Dev
e100c29296 Removed need for a separate chosenGameVersion property 2024-06-17 09:43:23 +01:00
Dev
4094b7ecff Fixed getAccountTypeAdjustedTraderPurchaseLimit() not applying to unheard profiles
Created `GameVersions` enum and replaced all magic strings with it
2024-06-16 21:22:28 +01:00
Dev
04dee496eb Updated niki to have the best account type 2024-06-16 21:14:24 +01:00
Dev
df69b229b3 Reworked bot generation to pass game version into generateEquipment()
`generateAndAddEquipmentToBot()` now handles pockets separately, flags UhD pockets as not to gen mods as for some reason it has slots 😕
Use this data to adjust the pocket tpl chosen for `unheard_edition`

Add pocket loot weightings of 5 + 6 items for unheard_edition PMCs
2024-06-16 21:09:59 +01:00
Dev
928f9068a3 Adjusted PMC loot generation to allow for 1x2 sized items to be added to the pocket pool to account for UhD bots' large pockets 2024-06-16 18:52:42 +01:00
Dev
1546bbfc16 Replaced magic string with enum value 2024-06-16 18:44:22 +01:00
DrakiaXYZ
edfe995c52 Initial implementation of an ItemTpl and Weapon enum generator (!364)
ItemTplGenerator will create a full ItemTpl.ts and Weapons.ts file with all items and weapons respectively
Renamed WeaponTypes to Weapons to better indicate its new format
Updated all references to these enums to use the new names
New npm command `npm run gen:items` to run this tool

Co-authored-by: DrakiaXYZ <565558+TheDgtl@users.noreply.github.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/364
Co-authored-by: DrakiaXYZ <drakiaxyz@noreply.dev.sp-tarkov.com>
Co-committed-by: DrakiaXYZ <drakiaxyz@noreply.dev.sp-tarkov.com>
2024-06-16 08:33:01 +00:00
Dev
561ecdd790 Updated bot generator to add UHD pockets to UHD PMCs 2024-06-15 17:42:02 +01:00
Dev
12444b025e Fixed incorrect dogtag return 2024-06-14 15:41:02 +01:00
Dev
da04065d42 Added game version specific dogtags to PMC bots
removed dogtags from `baseClasses` and placed in `ItemTpl`
2024-06-14 14:38:30 +01:00
Dev
f8bd65ed90 Replaced various array.find() with array.some()
Rewrote `tagItem()` to use `.find()`
2024-06-13 13:41:29 +01:00
Dev
8c05345b85 Replaced various magic strings with enum values
Added `itemHelper.getItemFromPool()`
2024-06-13 10:53:07 +01:00
Dev
aac2142706 Refactoring of small functions for better readability 2024-06-12 19:33:55 +01:00
Dev
292dadc55e Prevented NRE being thrown when no weapon found inside getSealedContainerWeaponModRewards() 2024-06-12 12:41:09 +01:00
Dev
624737a036 Regenerated bot JSONs 2024-06-11 19:58:30 +01:00
Dev
e39654be6a Simplified generateInventoryId() 2024-06-08 16:16:36 +01:00
Dev
3f125593a7 Refactor BotGenerator() 2024-06-07 22:41:30 +01:00
Dev
bb4bfc6dcb Refactoring of generateReward() 2024-06-07 20:19:58 +01:00
chomp
4788f6b407 30473 (!361)
Co-authored-by: Dev <dev@dev.sp-tarkov.com>
Co-authored-by: Kaeno <kaeno@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/361
2024-06-07 18:25:27 +00:00
chomp
b3b1f76a77 Migrate PMCs (sptBear/sptUsec) To Bsg Types (pmcBEAR/pmcUSEC) (!360)
Co-authored-by: Dev <dev@dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/360
2024-06-06 16:59:44 +00:00
Dev
0574392f28 Added new lootable item blacklist and added checks to bot and map loot generator code
Remove event quest item from global blacklist and move to loot item blacklist
2024-06-04 18:57:36 +01:00
Dev
2a587d80d8 Added system to filter blacklisted items from static and dynamic loot positions
Moved seasonal item filter code to different position inside `generateDynamicLoot()`
2024-06-04 17:06:50 +01:00
Dev
56d135fe6d Fixed bot generation error 2024-05-30 10:09:04 +01:00
Dev
b8ee834165 Replaced uses of DatabaseServer with DatabaseService 2024-05-29 15:15:45 +01:00
Dev
7d515ad680 Replaced uses of DatabaseServer with DatabaseService 2024-05-28 22:24:52 +01:00