Dev
34b9d318a3
Pull some code out of addLootFromPool()
into its own function
2024-01-19 11:57:25 +00:00
Dev
63ca393372
Add short circuit optimisation to isItemIncompatibleWithCurrentItems()
2024-01-19 09:56:18 +00:00
Dev
f3f008e0ec
Rename function to help with clarity
2024-01-19 09:52:56 +00:00
Dev
0d4fdf11e3
include handling armors without plates
2024-01-18 23:29:07 +00:00
Dev
310762d66d
Refactor airdrop loot generation to account for armor plate changes
2024-01-18 23:25:08 +00:00
Dev
ea0d8224e6
Add loop to try multiple armor pieces to find one that's compatible with bots current loadout
2024-01-18 22:36:14 +00:00
Dev
8f12bf479a
Generate armor vest for bots first, then rig
2024-01-18 21:39:35 +00:00
Dev
bb741f681d
Store and process secure container loot items for bots
...
Give gifter more items
2024-01-18 12:07:32 +00:00
Dev
04edb19f14
Allow dogtags to be added to custom bots
2024-01-17 22:17:12 +00:00
Dev
f38d098aae
Exclude scav coop exits when choosing pmc exit
2024-01-17 16:47:53 +00:00
Dev
727a85f5fc
Improve repeatable quest exit choice code
2024-01-17 16:39:55 +00:00
Dev
d9186e0e48
Improve workaround for spawnpoint values
2024-01-17 10:45:25 +00:00
Dev
03a451115c
Temp fix to ensure dynamic loot count generator doesnt generate a negative value
2024-01-16 21:55:25 +00:00
Dev
4d1066b51a
Make use of presetHelper instead of rolling own implementation
2024-01-16 10:28:08 +00:00
Spoony
e1a8f26507
Generate ammo box Ragfair offers with cartridges ( !198 )
...
#### TL;DR
Previously, Ragfair offers involving ammo boxes weren't generated with cartridges inside of them. This copies a lot of the logic from `InventoryHelper.hydrateAmmoBoxWithAmmo()` to add ammo to offers when they are generated. Made to fix #312 .
#### Testing
Purchased various ammo boxes from Flea:
![image](/attachments/340fb349-2589-4b1a-81fa-f8d63f6f1a36)
Purchased ammo boxes are listed as full:
![image](/attachments/f52057d3-efe0-40e7-b64e-8d257a818fa5)
Unloading them produces correct ammunition:
![image](/attachments/33c71f7b-d452-473e-9705-cbad1ecc3f7d)
Co-authored-by: Spoony <Spoony@example.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/198
Co-authored-by: Spoony <spoony@noreply.dev.sp-tarkov.com>
Co-committed-by: Spoony <spoony@noreply.dev.sp-tarkov.com>
2024-01-16 10:26:48 +00:00
Dev
34628561ce
Filter repeatable explore quest map exits per side
2024-01-15 23:13:57 +00:00
Dev
2f07d6083f
Fix armor plates/visors/helmet plate inserts not having thier durability altered on ragfair
2024-01-14 22:28:53 +00:00
Dev
5005a5160a
Improve buyItem()
handling of multiple and stackable item purchases
...
rename `reparentPresets` to `reparentItemAndChildren` and move to `itemHelper`
2024-01-14 21:12:56 +00:00
Dev
303be64880
Move code to its own variable
2024-01-14 14:38:10 +00:00
Dev
72fdada5d7
Add vistor shot damage to those listed on flea/fence - 25% chance a damaged helmet can have a visor with bullet hits
...
Improved `FenceService.addModsToArmorModSlots()` to not break when it cant find a default plate tpl
2024-01-13 20:47:59 +00:00
Dev
ae6bb7a43b
Small cleanup of preset handling code in addItem()
2024-01-13 15:00:31 +00:00
Dev
6cd82ce2a6
Add location property minFillLooseMagazinePercent
...
Make static/dynamic magazine loot have chance to not have cartridges
2024-01-13 12:30:15 +00:00
Dev
48f99ecfa6
Additional changes to randomiseWeaponDurabilityValues()
...
Move chance to make changes check outside of function
Aliased ragfair config property
Aliased chosen child multipler value
Added comment to function
2024-01-13 09:15:11 +00:00
r2go
a87129c541
#284 fixed flea armors not having random values ( !193 )
...
https://dev.sp-tarkov.com/SPT-AKI/Issues/issues/284
Probably needs some balancing since some armors are very random, some are not at all. It feels pretty realistic I think.
Any feedback is appriciated.
Co-authored-by: r2go-beep <hans@hummelusa.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/193
Co-authored-by: r2go <r2go@noreply.dev.sp-tarkov.com>
Co-committed-by: r2go <r2go@noreply.dev.sp-tarkov.com>
2024-01-13 09:03:51 +00:00
CWXDEV
22ad266b27
why the f*ck we using spaces and not tabs :reee:
2024-01-12 23:47:41 +00:00
CWXDEV
091e4fa41b
added check to make sure same item isnt used, still has an edge case, if maxRequestedAmount is too high, and we cant offer enough items, dupes will appear, but this will fix normal use
2024-01-12 23:44:58 +00:00
Dev
0440bdab70
Reworked flea armor listing code
...
Randomises plate durability
Randomises insert durability
2024-01-12 21:59:30 +00:00
Dev
98241d894f
Rework how plates are filtered from bot equipment
...
Add `filterPlatesByLevel` to bot config
2024-01-12 17:00:22 +00:00
Dev
cb18d251ba
Improve selection of items to add mods for:
...
quest rewards
bot loot gen
map loot gen
fence assort gen
Updated `removeRandomModsOfItem()` to also skip slots with a _required prop
2024-01-11 17:42:58 +00:00
Dev
dc1e172df0
Handle generating a fence armor item and a default plate is not found
...
Add extra plates to pool
Centralise plate-related checks into itemhelper
2024-01-10 14:47:09 +00:00
Dev
f59041121b
Fix plate filtering code not correctly handling when no plates of desired armor level are found
2024-01-09 23:46:57 +00:00
Dev
4078d7cc89
Fix plates not spawning on bots because of capitalisation
2024-01-09 20:16:49 +00:00
Dev
a9c36ec205
Fix issue with armors as quest rewards not being sent with soft inserts
...
Centralised a soft insert check into `ItemHelper`
Add extra base types to `generateGearPool()` in equipment bot pool service
2024-01-09 16:49:59 +00:00
Dev
f3964639bd
Rename mods
to weaponMods
and add new object equipmentMods
...
regenerate bot jsons to include this new data (includes correct inclusion of equipment slot "TacticalVest" which was previously missing)
Fix issue with PMM ammo causes generation issues
2024-01-09 15:31:56 +00:00
Dev
01e63118c6
Rename function
2024-01-09 10:58:06 +00:00
Dev
bac86262d4
Improve handling of equipment mod generation
2024-01-09 10:30:00 +00:00
Dev
15d53a2d38
Fix armor in bot backpacks having no soft inserts
...
centralise code that adds mods to equipment into one location
2024-01-08 23:27:18 +00:00
Dev
07b5ab432e
Check for empty pool when adding mods to equipment during loot generation
2024-01-08 09:40:18 +00:00
Dev
92e600e906
Improve logic for choosing an exit inside generateExplorationQuest()
2024-01-07 20:49:33 +00:00
Dev
628a3f71d8
Add comment
2024-01-07 20:20:25 +00:00
Dev
6231a56fea
Prevent duplicate items spawning in static containers
2024-01-07 20:17:07 +00:00
Dev
db13df89d9
Add plate filtering system based on bot level
2024-01-07 15:34:59 +00:00
Dev
c6135802be
Refactor equipment mod parameters
2024-01-07 14:46:25 +00:00
Dev
bd60cf51e2
Fix event system not working for events other than halloween and christmas
...
Allow events to overlap
Rename config property from `enableWinterEvent` to `forceWinterEvent`
2024-01-06 23:29:42 +00:00
Dev
9bc9d46e84
Improve function comments
2024-01-06 15:21:16 +00:00
Dev
52a5380c33
Add botRelativeLevelDeltaMin
to pmc.json to allow configuration of lowest level of pmc relative to player
2024-01-06 15:19:04 +00:00
Dev
9dbd3d1acf
Updated server handling of quests/repeatable quests to match 0.14 changes - this will break profiles
2024-01-05 19:52:21 +00:00
Dev
9eee25a175
Prevent server error when loot generator tries to find non-existent loot
2024-01-02 19:46:21 +00:00
Dev
6080c992b9
Fix snow event not spawning
2024-01-02 13:41:52 +00:00
Dev
224f921ea5
use different base class check
2024-01-01 11:33:19 +00:00
Dev
c39e331423
Replace conditionCounters
array with with TaskConditionCounters
dictionary
2023-12-30 21:59:51 +00:00
Dev
bea2a5d30a
Correctly add armor inserts into statically spawned helmets
2023-12-30 17:38:06 +00:00
Dev
81393fb629
Improve error logging in weapon gen
2023-12-30 10:45:12 +00:00
Dev
5a57895998
Fix server error when adding lootable armor to raid
2023-12-29 17:13:48 +00:00
CWXDEV
b1c3e5b310
Add builtInInserts to baseclasses and remove from flea offers
2023-12-29 15:33:43 +00:00
Dev
8e2ad5697e
Add armorColliders
type
2023-12-28 21:39:46 +00:00
Dev
e27f52c505
Added system to randomise the mods on equipment found as loose/static loot
...
controlled via config
2023-12-28 21:31:31 +00:00
Dev
17c4d6cec0
Rework on equipment generation to process mods on an item if the item supports them instead of if the bots mods array has mods
...
Add new bots to bot.json
2023-12-28 18:36:37 +00:00
Dev
7b13f69f18
Handle when no data exists for a map without killing server
2023-12-28 15:13:29 +00:00
Dev
f3fee2bc39
Update bot difficulties + fix various mod errors
2023-12-28 10:58:29 +00:00
Dev
31198120a1
Add missing param
2023-12-28 00:07:41 +00:00
Dev
06c60b9fd9
Log bot role on error
2023-12-28 00:06:45 +00:00
Dev
369a8a6cca
Begin work on updating equpiment code to handle required mods
2023-12-27 23:29:37 +00:00
Dev
c3bddbbad2
Add TaskConditionCounters to profile and favorite array
2023-12-27 19:52:35 +00:00
Dev
99eaeeb63b
Set winterEventEnabled
value on start
2023-12-27 18:55:58 +00:00
Dev
72e4d91185
fix server start error
2023-12-21 09:12:15 +00:00
Dev
b993226296
Merge branch 'master' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.8.0
...
# Conflicts:
# project/src/callbacks/DialogueCallbacks.ts
# project/src/callbacks/MatchCallbacks.ts
# project/src/callbacks/NotifierCallbacks.ts
# project/src/controllers/InventoryController.ts
# project/src/controllers/MatchController.ts
# project/src/routers/static/RagfairStaticRouter.ts
2023-12-21 09:07:23 +00:00
Dev
cf782a8fcb
Add endpoint client/ragfair/offer/findbyid
2023-12-19 23:52:39 +00:00
Dev
90324ed343
Merge branch 'master' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.8.0
...
# Conflicts:
# project/assets/configs/core.json
# project/package.json
# project/src/generators/RagfairOfferGenerator.ts
2023-12-19 17:31:19 +00:00
Dev
799690d2a6
Clone the preset data prior to pushing into reward away - prevents preset being later modified
2023-12-17 22:42:26 +00:00
Dev
9e95e1bbac
prevent random ammo stacks going above 60
2023-12-17 22:36:47 +00:00
Dev
66630a5fc6
Improve comments
2023-12-16 21:59:30 +00:00
Dev
cc916ff419
Refactor of ammo reward calculaton for daily quests
...
No longer give random value between config min and stack max size (mods that adjust max stack size were causing very broken behaviour)
Ammo stack size is now chosen based on rouble budget for reward, capped at a count of 100
Adjust config min stack size to be 5, this still achieves goal of preventing single stack ammos like grenades but allows inclusion of ammos like patron_12x70_buckshot
2023-12-16 21:49:16 +00:00
Dev
d2f6a16312
Fix issue spotted by Shibdib
where player flea offers aren't taking into account globals time listing value
2023-12-16 15:11:11 +00:00
Dev
268a9b8abd
Merge branch 'master' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.8.0
...
# Conflicts:
# project/src/callbacks/BundleCallbacks.ts
# project/src/controllers/RepeatableQuestController.ts
# project/src/helpers/InRaidHelper.ts
# project/src/loaders/PreAkiModLoader.ts
2023-12-15 14:16:15 +00:00
TheSparta
d1dc04cbec
Fixed missed method rename
...
- getAllSeasonalEventItems got renamed getInactiveSeasonalEventItems
2023-12-15 14:10:33 +00:00
Dev
b15c8e196e
Log total count of static items being spawned
2023-12-11 14:41:30 +00:00
Dev
77dba80fbd
Merge branch 'master' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.8.0
...
# Conflicts:
# project/assets/configs/core.json
# project/assets/database/locales/global/ch.json
# project/assets/database/locales/global/cz.json
# project/assets/database/locales/global/en.json
# project/assets/database/locales/global/es-mx.json
# project/assets/database/locales/global/es.json
# project/assets/database/locales/global/fr.json
# project/assets/database/locales/global/ge.json
# project/assets/database/locales/global/hu.json
# project/assets/database/locales/global/it.json
# project/assets/database/locales/global/jp.json
# project/assets/database/locales/global/kr.json
# project/assets/database/locales/global/pl.json
# project/assets/database/locales/global/po.json
# project/assets/database/locales/global/ru.json
# project/assets/database/locales/global/sk.json
# project/assets/database/locales/global/tu.json
# project/src/controllers/TradeController.ts
# project/src/generators/LocationGenerator.ts
2023-12-08 22:20:16 +00:00
Dev
18dc76ec2c
Improve handling of adding items to a bot container when the items type is incompatible with container
2023-12-08 16:27:34 +00:00
Dev
7c2d93e87b
Handle edge case when an item is missing a min/max stack size value
2023-12-07 20:07:46 +00:00
Dev
ef9ecfd51d
Change warning to debug message
2023-12-06 19:18:25 +00:00
Dev
7f995de5d1
Reworked how the flea market categories are calculated, instead of trying to be smart and add/remove in a cache as offers are created, calculate the categories when needed
...
Categories:
Are now much more accurate
take into account when player is below flea unlock level
Any with a (1) and no offers have been fixed
Take into account when offers are barters + barters are filtered out
Skip items with a type of `node` during flea assort generation
2023-12-05 20:41:43 +00:00
Dev
56366068e0
Remove redundant quest item check from fence assort generation as its already handled by itemHelper.isValidItem()
2023-12-05 15:00:23 +00:00
Dev
ef769cf0d7
Cleanup of var names and comments inside addForcedLoot()
...
Prevent duplicate loot locations with same Id being added to client response
2023-12-04 16:00:44 +00:00
Dev
2148eaafe5
Merge branch 'master' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.8.0
...
# Conflicts:
# project/src/context/ApplicationContext.ts
# project/src/context/ContextVariableType.ts
# project/src/controllers/QuestController.ts
# project/src/di/Container.ts
# project/src/generators/weapongen/implementations/ExternalInventoryMagGen.ts
2023-11-30 10:20:37 +00:00
Dev
a1d6596f8d
Fix multiple typos
2023-11-29 11:36:20 +00:00
Dev
c801dba0b7
Fix some weapons not having their chamber loaded with a cartridge during weapon generation
...
weapons:
weapon_izhmeh_mr43_sawed_off_12g
weapon_izhmash_mp18_multi
`addCartridgeToChamber` assumed the only id a chamber could have was `patron_in_weapon` this is wrong, it can also have `patron_in_weapon_000` and `patron_in_weapon_001`
it also assumed weapons only have one chamber
Some weapons can have multiple chambers
Some weapons can have 1 chamber but have the id `patron_in_weapon_000` not `patron_in_weapon`
2023-11-29 11:35:34 +00:00
Dev
cc488477fb
Logging improvements
2023-11-27 17:01:38 +00:00
Dev
130f120fda
Comment change
2023-11-26 22:35:26 +00:00
Dev
3c0e6a34f2
Improve addItemWithChildrenToEquipmentSlot()
, Make it return different result when:
...
There are no containers to add item to
Unknown reason
Improved handling of when container has no space for item
Improve `ExternalInventoryMagGen.process()`, Handle edge case when a weapon with a default internal magazine but weapon uses external magazine
Improve most locations that call `addItemWithChildrenToEquipmentSlot()` to log failure reason
2023-11-24 16:05:58 +00:00
Dev
27e16e09d7
log when addLooseWeaponsToInventorySlot()
fails to add weapon to bot inventory
2023-11-24 15:26:41 +00:00
Dev
aa6f765a64
Merge branch 'master' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.8.0
...
# Conflicts:
# project/assets/configs/core.json
2023-11-22 14:28:30 +00:00
Dev
f727b13215
prevent collection quests requesting more than 1 ammo per repeatable quest
2023-11-19 20:29:41 +00:00
Dev
396b56d08d
Expose uniqueItemCount
config value for use in choosing total items to return in Completion
quests
...
Weekly quests now require more items than dailies
2023-11-19 14:58:45 +00:00
Dev
1def90e9d6
Improve handling of how reward items have their stack count randomised
...
Separated out how weapons are chosen as rewards
Lowered chance of skill reward
Added additional reward types to most traders
2023-11-19 13:21:34 +00:00
Dev
8cb4833001
Fix reward creatio code giving 1 extra reward compared to what was specified
2023-11-19 10:54:06 +00:00
Dev
ee3096328e
Exit reward finding loop when reward pool is empty
2023-11-19 10:52:50 +00:00
Dev
aed65ce1cb
Rework getWeightedCompatibleAmmo()
to loop over cartridges until it finds one compatible instead of giving up after the first failure
2023-11-18 18:46:03 +00:00
Dev
0d205ed50c
Merge branch 'master' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.8.0
...
# Conflicts:
# project/src/controllers/HealthController.ts
2023-11-18 14:13:08 +00:00
Dev
b0afad72dd
Randomise min durabiltiy value for weapon/armor collection quests to be 60 or 80%
...
rename param for clarity
2023-11-18 12:33:00 +00:00