Commit Graph

2022 Commits

Author SHA1 Message Date
Dev
bd5e7b1e62 Improved getTotalStackCountSize 2024-07-17 20:17:12 +01:00
Dev
4b8b3b77a7 Remove unsued properties + improved how user data is stored/generated 2024-07-17 19:30:17 +01:00
Dev
5e3899c426 Improved fillMagazineWithRandomCartridge() logging
(cherry picked from commit f406918bb8)
2024-07-17 12:44:24 +01:00
Dev
f406918bb8 Improved fillMagazineWithRandomCartridge() logging 2024-07-17 11:48:57 +01:00
Dev
63420f7a7b Removed debug data
(cherry picked from commit 13abd077dd)
2024-07-16 21:31:48 +01:00
Dev
13abd077dd Removed debug data 2024-07-16 21:31:23 +01:00
Dev
373f194a25 Fixed items with a stack count > 1 not selling as expected
(cherry picked from commit fd34e7bc84)
2024-07-16 21:09:08 +01:00
Dev
fd34e7bc84 Fixed items with a stack count > 1 not selling as expected 2024-07-16 21:08:43 +01:00
Dev
59ffc9d886 Added comments to functions 2024-07-16 16:54:39 +01:00
Kaeno
fcdf537c3b Update JSONs 2024-07-16 15:49:49 +01:00
Dev
bf8a403372 Removed redundant check on unlocking hideout crafts
(cherry picked from commit 433ea6566a)
2024-07-16 11:59:01 +01:00
Dev
433ea6566a Removed redundant check on unlocking hideout crafts 2024-07-16 11:32:46 +01:00
Cj
00fffa7845 Add method for capping skill progress (!376)
Adds a check to the `ProfileFixerService` to cap skill progress at 5100. This prevents users from going over the cap with applications like profile editor, resulting in potential negative crafting times and other oddities.

Co-authored-by: Cj <161484149+CJ-SPT@users.noreply.github.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/376
Co-authored-by: Cj <cj@noreply.dev.sp-tarkov.com>
Co-committed-by: Cj <cj@noreply.dev.sp-tarkov.com>
2024-07-15 19:34:26 +00:00
DrakiaXYZ
c46cdaeb18 Don't allow production timers to be reduced below 5 seconds (!375)
This should avoid potential issues when mods drastically increase the crafting skill level, or otherwise modify the profile in ways that cause negative production times

Co-authored-by: DrakiaXYZ <565558+TheDgtl@users.noreply.github.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/375
Co-authored-by: DrakiaXYZ <drakiaxyz@noreply.dev.sp-tarkov.com>
Co-committed-by: DrakiaXYZ <drakiaxyz@noreply.dev.sp-tarkov.com>
2024-07-15 19:33:38 +00:00
chomp
50bafeb100 Fix flea selling issues (!374)
Co-authored-by: Dev <dev@dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/374
(cherry picked from commit 4fd113d00d)
2024-07-15 19:24:53 +01:00
chomp
4fd113d00d Fix flea selling issues (!374)
Co-authored-by: Dev <dev@dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/374
2024-07-15 18:24:23 +00:00
trippy
6f3a674fd8 Change methods to public (!373)
Change generateBotsFirstTime and returnSingleBotFromCache methods to public.

The generate method that call these methods is overridden in Fika.

Co-authored-by: trippyone <137233897+trippyone@users.noreply.github.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/373
Co-authored-by: trippy <trippy@noreply.dev.sp-tarkov.com>
Co-committed-by: trippy <trippy@noreply.dev.sp-tarkov.com>
2024-07-15 15:29:33 +00:00
Dev
77da49bb9e Added common weapon crate
(cherry picked from commit 9e1c3304f0)
2024-07-15 11:31:28 +01:00
Dev
815e6e238c Expanded weapon crate fix to include common/rare creates
(cherry picked from commit 111b75d1ab)
2024-07-15 11:31:20 +01:00
Dev
9e1c3304f0 Added common weapon crate 2024-07-15 11:30:58 +01:00
Dev
111b75d1ab Expanded weapon crate fix to include common/rare creates 2024-07-15 11:30:03 +01:00
Dev
1762f1637d Added exit when flea offer type is not found
(cherry picked from commit c2ccadf110)
2024-07-14 19:49:41 +01:00
Dev
0629958b92 Added getOfferType() to ragfairController
(cherry picked from commit e67f000602)
2024-07-14 19:49:34 +01:00
Dev
c2ccadf110 Added exit when flea offer type is not found 2024-07-14 19:48:52 +01:00
Dev
e67f000602 Added getOfferType() to ragfairController 2024-07-14 19:21:11 +01:00
Dev
d4164d05c3 Added null protection around RagfairInfo on game start 2024-07-14 17:23:20 +01:00
Dev
35daf8710f Added null protected around RagfairInfo on profile login 2024-07-14 17:21:12 +01:00
Dev
073797a294 Fixed issue with itemFitsInto1By2Slot() classifying all items as unsuitable for a 1x2 slot
(cherry picked from commit d92ec20e9c)
2024-07-13 12:57:40 +01:00
Dev
d92ec20e9c Fixed issue with itemFitsInto1By2Slot() classifying all items as unsuitable for a 1x2 slot 2024-07-13 12:54:34 +01:00
Dev
2ea6b658fd Fixed getBTC() failing when Production area cannot be found
(cherry picked from commit 77b42bfb2f)
2024-07-13 10:59:03 +01:00
Dev
77b42bfb2f Fixed getBTC() failing when Production area cannot be found 2024-07-13 10:58:46 +01:00
Dev
b4a6ee682c Added workaround for Ref repeatables not having any description text - force him to use Prapor text instead
(cherry picked from commit 034c7142fc)
2024-07-13 09:33:27 +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
61313dce25 Remove deprecated registerCommandoCommand()
(cherry picked from commit c705127007)
2024-07-12 22:21:15 +01:00
Dev
bf507a766c Removed deprecated ICommandoCommand
(cherry picked from commit 28593d3e9b)
2024-07-12 22:21:01 +01:00
Dev
c705127007 Remove deprecated registerCommandoCommand() 2024-07-12 22:19:57 +01:00
Dev
28593d3e9b Removed deprecated ICommandoCommand 2024-07-12 22:19:04 +01:00
Dev
1298022600 Fixed endpoint casing 2024-07-12 21:16:33 +01:00
Dev
442d00c959 Fixed minor typo 2024-07-12 17:20:54 +01:00
CWX
4eeedc4257 Removed unused code and repurposed save endpoint for scav profile saving 2024-07-12 16:29:21 +01:00
Dev
a3b97ff3ef Added nullguards to giveProfileMoney()
(cherry picked from commit f7a617d621)
2024-07-12 09:49:11 +01:00
Dev
f7a617d621 Added nullguards to giveProfileMoney() 2024-07-12 09:48:30 +01:00
Dev
de4b3ac180 Protected randomiseArmorInsertsDurabilities() from missing mod errors
(cherry picked from commit 64f8e7b7e8)
2024-07-11 12:11:45 +01:00
Dev
64f8e7b7e8 Protected randomiseArmorInsertsDurabilities() from missing mod errors 2024-07-11 11:11:09 +01:00
Dev
e88521fe54 Added ability to blacklist profile from being created in launcher
(cherry picked from commit 5260b16a18)
2024-07-11 09:59:14 +01:00
Dev
5260b16a18 Added ability to blacklist profile from being created in launcher 2024-07-11 09:58:54 +01:00
Dev
0b9e61dcdc Added comments 2024-07-11 09:45:59 +01:00
Dev
f15a0e6f17 Add type to selectedMemberCategory 2024-07-11 09:35:27 +01:00
静穏靄
d31c5f6f09 Add missing property to IUserDialogDetails (!371)
The property is used for Unheard edition accounts to retain their icon on reloading the dialog.

Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/371
Co-authored-by: 静穏靄 <seionmoya@noreply.dev.sp-tarkov.com>
Co-committed-by: 静穏靄 <seionmoya@noreply.dev.sp-tarkov.com>
(cherry picked from commit d0f11fd073)
2024-07-11 09:30:10 +01:00
Dev
b0a65cac7f Fixed server build errors from previously merged PR
(cherry picked from commit e1ca9dedc9)
2024-07-11 09:29:16 +01:00
Dev
e1ca9dedc9 Fixed server build errors from previously merged PR 2024-07-11 09:28:37 +01:00
静穏靄
d0f11fd073 Add missing property to IUserDialogDetails (!371)
The property is used for Unheard edition accounts to retain their icon on reloading the dialog.

Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/371
Co-authored-by: 静穏靄 <seionmoya@noreply.dev.sp-tarkov.com>
Co-committed-by: 静穏靄 <seionmoya@noreply.dev.sp-tarkov.com>
2024-07-10 23:11:23 +00:00
Dev
6a12a3f04d Fixed incorrect starting hp value inside getLowestHpBody() 2024-07-10 16:46:53 +01:00
Dev
134a4a1ff7 Fixed unlocked weapon reward box from hideout craft returning an error when opened 2024-07-10 14:20:35 +01:00
Dev
44e6735f80 Fixed unlocked weapon reward box from hideout craft returning an error when opened 2024-07-10 14:19:48 +01:00
Dev
a53eea239c FIx
Fixed `openRandomLootContainer()` failing when no config values are found for desired random container
2024-07-10 13:48:00 +01:00
Dev
49e5e8413a FIx
Fixed `openRandomLootContainer()` failing when no config values are found for desired random container
2024-07-10 13:46:09 +01:00
Dev
007bdccd6c Improved pack + multi-item player flea offer handling
(cherry picked from commit e9d8c02ac2)
2024-07-10 11:40:12 +01:00
Dev
e9d8c02ac2 Improved pack + multi-item player flea offer handling 2024-07-10 11:39:11 +01:00
Dev
ec6c4b05d9 Updated ItemTpl overrides and regenerated enum 2024-07-09 15:11:18 +01:00
Kaeno
96a40eb301 Enable Quest saving when leaving raid as pmc. Modify maxbotpve caps instead of maxbot cap 2024-07-09 14:52:35 +01:00
Dev
121387aa69 Deleted unused endpoints + code 2024-07-09 14:51:57 +01:00
Dev
1c601cc33e Removed unused endpoint + related service 2024-07-09 14:22:01 +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
28b3afef8a Renamed function to improve readability insuranceDictionaryExists() 2024-07-09 10:19:08 +01:00
Dev
2050880c91 Cleanup of getOwnerInventoryItems() 2024-07-09 09:56:18 +01:00
Kaeno
bb50998e04 Skip moving item if item cannot be found. 2024-07-09 09:52:58 +01:00
Dev
e662020f9a Removed debug bot logging 2024-07-08 21:13:53 +01:00
Dev
2941ae10e0 Implemented mongoid-js for hashUtil.generate() 2024-07-08 21:11:58 +01:00
Dev
a0a9b4cf29 Updated itemTpl enum 2024-07-08 19:08:57 +01:00
Dev
02fbc4f044 Added reputation saving to post raid code 2024-07-08 16:06:59 +01:00
Dev
872212f651 Removed unused endpoint + config 2024-07-08 15:15:48 +01:00
Dev
007b1d4789 Fixed accepting a quest bringing in blacklisted event quests
(cherry picked from commit fe614ad73f)
2024-07-08 09:56:34 +01:00
Dev
fe614ad73f Fixed accepting a quest bringing in blacklisted event quests 2024-07-08 09:55:56 +01:00
Dev
3288c04a25 Improved post-raid handling of scav raids + btr item service 2024-07-07 21:51:24 +01:00
Dev
6cac4394c1 Depreciated functions 2024-07-07 21:17:10 +01:00
Dev
ac4c8ff0b3 Implemented insurance returns 2024-07-07 20:57:41 +01:00
Dev
bda69a5563 Added getMoneyTpls() 2024-07-07 19:43:32 +01:00
Dev
6378ee5ee7 Fixed dynamic loot code choosing blacklisted items - credit to Drakia for solution
(cherry picked from commit 7497f0d40f)
2024-07-07 18:57:15 +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
ef5d72f06b Implemented coop and car extract handling 2024-07-07 17:06:45 +01:00
Dev
aa90d8fa52 Merge branch 'master' of https://dev.sp-tarkov.com/SPT/Server into 310-dev 2024-07-07 16:36:49 +01:00
Kaeno
c3de305175 Prevent Enabling Block group invites from bricking profile from loading. (!370)
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/370
2024-07-07 15:34:31 +00:00
Dev
57100544c9 Merge branch 'master' of https://dev.sp-tarkov.com/SPT/Server into 310-dev
# Conflicts:
#	project/assets/database/globals.json
2024-07-07 14:13:35 +01:00
Dev
7377a68a9e Added missing type to iTemplateItem 2024-07-07 14:07:53 +01:00
Kaeno
fba0f4703a Setup route to allow switching of profile icon. (!369)
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/369
2024-07-07 13:07:36 +00:00
Dev
0991572eff Further improvements to bot caching 2024-07-06 16:58:48 +01:00
Dev
4d167568fb Added bot cache count when generating. Will only add more bots to cache when below desired amount 2024-07-06 16:42:47 +01:00
Dev
ca52f6d549 Created new LocationLifecycleServiceservice. Moved raid start/end code into it.
Created temp `LegacyLocationLifecycleService` class to hold old raid start/end code until we can safely delete it
2024-07-06 14:36:48 +01:00
Dev
1c3fb5f926 Move location generation code into matchcontroller 2024-07-06 14:04:51 +01:00
Dev
494fd66f51 Renamed LocationGenerator to LocationLootGenerator 2024-07-06 13:54:04 +01:00
Dev
d71bf2c2c0 Removed dead endpoints 2024-07-06 13:47:56 +01:00
Dev
1f76ce5d10 Refactored airdrop loot code 2024-07-06 13:39:56 +01:00
Dev
4cf1c10c51 Added IGetAirdropLootResponse 2024-07-06 12:59:47 +01:00
Dev
0ac8fbfe8e Regenerated pscav data on raid end
Moved pmc code into own function
2024-07-06 09:41:40 +01:00
Dev
61da90f33d Merge branch '310-dev' of https://dev.sp-tarkov.com/SPT/Server into 310-dev 2024-07-06 09:21:14 +01:00
Dev
cfb1cb3e39 Stubbed out handlePostRaidPlayerScav() 2024-07-06 09:21:00 +01:00
CWX
7d6721d47b update comment for airdrop enum, allow airdrop loot to work 2024-07-06 09:17:32 +01:00
Dev
ad1d481069 Remove unused interface 2024-07-05 22:39:24 +01:00
Dev
5e4fec3aa3 Stubbed out insurance code 2024-07-05 20:39:38 +01:00
Dev
8392bc97cf Moved call to clearStoredBots() to start raid function 2024-07-05 20:10:24 +01:00
CWX
264a8a06bd Merge branch '310-dev' of https://dev.sp-tarkov.com/SPT/Server into 310-dev 2024-07-05 19:21:25 +01:00
CWX
f7dce85e0b update endpoint for airdrop loot 2024-07-05 19:21:21 +01:00
Dev
31ba17a327 Added handling of BTR item delivery 2024-07-05 19:02:02 +01:00
Dev
ed152caa1e Merge branch 'master' of https://dev.sp-tarkov.com/SPT/Server into 310-dev 2024-07-05 17:48:58 +01:00
Kaeno
4b2f42a406 Add routes for Modules to get Bosses that are allowed to be converted (!368)
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/368
2024-07-05 16:46:51 +00:00
Dev
541264af73 Fixed bad description
(cherry picked from commit 2f6f09c51a)
2024-07-05 16:56:50 +01:00
Dev
daeae9687a Fixed getLocation() not getting location correctly
(cherry picked from commit d7798d3afa)
2024-07-05 16:55:47 +01:00
Dev
2f6f09c51a Fixed bad description 2024-07-05 16:39:40 +01:00
Dev
d7798d3afa Fixed getLocation() not getting location correctly 2024-07-05 16:37:17 +01:00
Dev
5b9d3fb075 left is now considered 'dead' on raid end 2024-07-05 16:03:16 +01:00
Dev
ce0123efd3 Implemented new wishlist system 2024-07-05 15:06:43 +01:00
CWX
b4a5556d14 Fix health saving 2024-07-05 14:39:21 +01:00
CWX
83a35cbc8c implement localweather for pve mode 2024-07-05 14:21:30 +01:00
Dev
79612a6c85 Handle when player dies in raid -
Send killer messages
Send killed messages
remove equipment\\
2024-07-05 14:16:50 +01:00
Dev
7e64a4be66 Further improvements to post-raid event handling 2024-07-05 13:32:46 +01:00
Dev
85e86b969d Expanded request object + method info 2024-07-05 10:48:13 +01:00
Dev
daf748e8fb Added first attempt at client/match/local/start implementation 2024-07-05 09:39:41 +01:00
Dev
5f280612c4 Update interface to correct naming scheme 2024-07-05 09:39:01 +01:00
Dev
5cd919a7d7 Add location services json 2024-07-05 09:38:27 +01:00
Dev
97c7c536dc Updated woods+factory json 2024-07-05 00:27:12 +01:00
CWX
1e804ce11e expirementing with using existing PVE logic 2024-07-04 23:57:15 +01:00
CWX
5ba0de5b80 add routes for start and end of local raid 2024-07-04 22:40:39 +01:00
CWX
136dc111f4 move dummy endpoint 2024-07-04 21:45:19 +01:00
CWX
7982f85e63 add dummy endpoint 2024-07-04 21:33:00 +01:00
Dev
b84795b56e Update JSONs + included new properties
Add endpoint stubs for:

client/match/local/start
client/match/local/end
2024-07-04 21:01:37 +01:00
Dev
c3e9236759 Fixed repeatables breaking when using free refreshes
Refactored `changeRepeatableQuest()` to reduce looping and indentation
2024-07-03 21:41:31 +01:00
Tyfon
e58ddac0cc Fix InventoryHelper.canPlaceItemInContainer being backwards (!367)
For whatever reason, `InventoryHelper.canPlaceItemInContainer()` currently returns:
`true` if the item CANNOT be placed in the container
`undefined` if the item CAN be placed
`false` if the function thought it could but then failed when trying to (never happens?)

This didn't cause problems because the only two places that call it also treat the return value backwards - both of which are also fixed in this PR.

Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/367
Co-authored-by: Tyfon <tyfon7@outlook.com>
Co-committed-by: Tyfon <tyfon7@outlook.com>
2024-07-02 22:05:32 +00:00
Dev
c8f08ff2bc Fixed edge case where rigs with no soft inserts or plates is listed on flea, resulting on a sell chance of NaN 2024-07-01 16:37:14 +01:00
Dev
a63d2307df Fixed free refreshes still costing roubles/rep to replace
Refactor of `useFreeRefreshIfAvailable()` to improve readability
2024-07-01 10:42:16 +01:00
Dev
bd28cbca57 Feature, plates in armors listed by fence now have individual chances to be removed before listing based on plate protection level 2024-06-30 23:20:49 +01:00
Dev
843455602d FIxed plate removal code not actually removing plates 2024-06-30 23:02:17 +01:00
Dev
1ba6cbf2bd Cleaned up randomiseArmorModDurability() 2024-06-30 22:52:55 +01:00
Dev
8517e46ccb Refactored various functions to improve readability 2024-06-30 21:39:58 +01:00
Dev
15eb6eb69f Cleaned up various functions to improve readability
Removed unused function `splitStackIntoSmallerChildStacks()`
2024-06-30 20:38:23 +01:00
chomp
da955f0a4e Added ability to convert assault scavs to bosses (!366)
Co-authored-by: Kaeno <kaeno@noreply.dev.sp-tarkov.com>
Co-authored-by: Dev <dev@dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/366
2024-06-27 14:09:26 +00:00
Dev
836df0ce9d Updated findAndAddHideoutProductionIdToProfile() to also compare the quest id when finding the relevant craft - should fix craft unlock error with Network Provider - Part 2 2024-06-24 22:29:01 +01:00
Dev
2a750a9989 Fixed regression where sellchance because NaN due to a divide by 0 error 2024-06-22 20:40:13 +01:00
Dev
e65b75261f Added additional event names to NotificationEventType 2024-06-22 13:17:47 +01:00
Dev
2edd1e6824 Semi-reverted last commit as Drak already resolved this and i forgot 2024-06-20 22:43:01 +01:00
Dev
77ca7c74fe Expanded http server port already in use message logging + throw exception to prevent second server running 2024-06-20 22:27:27 +01:00
Dev
b7082ff9dc Removed redundant logic as we've reset the data in previous line 2024-06-20 16:17:07 +01:00
Dev
785d6a3589 Fixed free repeatables not refreshing their count after expiry 2024-06-20 16:12:34 +01:00
Dev
7891db84de Updated createRandomLoot() to make use of rewardItemBlacklist black list 2024-06-20 13:37:38 +01:00
Dev
bf276c54a0 Improved comment 2024-06-19 20:52:08 +01:00
Dev
01d3864105 Added additional skill type values 2024-06-19 18:55:17 +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 44434b3278)
2024-06-18 16:06:28 +01:00
Dev
d15150f138 Added nullguard to getMiniProfile() when profile has been edited and is now corrupt 2024-06-18 11:27:57 +01:00
Dev
5d0cfd7971 Fixed prapor starting gift being sent 5 times 2024-06-17 22:00:38 +01:00
Dev
32e8557723 Split generateRewardItem() into two functions 2024-06-17 17:46:28 +01:00
Dev
e176b0ae45 Refactored applyMoneyBoost() to improve readability + apply alteration to reward.value 2024-06-17 17:45:48 +01:00
Dev
1db9aa3243 Prevented gp coin repeatable reward falling below 1 2024-06-17 17:44:34 +01:00
Dev
996e567959 Added nullguard to getTimeElapsedSinceLastServerTick() 2024-06-17 16:43:12 +01:00
Dev
383ccf09d7 Added nullguard protection to serialize() for bundle loading 2024-06-17 15:35:49 +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
86380e845a Replaced hard-coded lavatory check for generic check of areas needsFuel property 2024-06-17 09:28:59 +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
Dev
e793b0bc63 Fixed nullref error on repeatable refresh click event
Fixed all profiles having access to free repeatable refreshes

Fixed newly created profiles generating with 0 free refreshes regardless of game version
2024-06-16 10:58:35 +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
72b0ce324e Extracted processExpiredQuests() from getClientRepeatableQuests() 2024-06-15 13:29:22 +01:00
Dev
299586d36a Improved implementation of daily quest reward system
Fixed repeatables vanishing after first generation
2024-06-15 13:28:25 +01:00
Dev
bc3649d2a1 Fixed issue where server would enter infinite loop when selling item to trader and stash contained no money 2024-06-14 19:18:55 +01:00
Dev
12444b025e Fixed incorrect dogtag return 2024-06-14 15:41:02 +01:00
Dev
277925732f Added system to allow per-trader starting standing values 2024-06-14 15:40:27 +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
646745c5ef Added insurance reduction by game edition check 2024-06-13 19:21:00 +01:00
Dev
b34a8ee1f1 Updated JSONS 2024-06-13 19:19:51 +01:00
IsaacSin
58ee2c66d3 Fix GP coin ragfair offers being excluded by "Exclude bartering offers" filter. (!363)
BSG now considers GP coin to be a currency.
Commit 4788f6b407 (diff-d1c96eaf446b0afaf70c62191c7a688471fca50c) already added GP coin to the `Money` enum, but it needs to be added to `PaymentHelper.isMoneyTpl()` to prevent it from being filtered by the barter filter as with other money offers.
See attached screenshots for a demonstration of SPT vs live behavior.

Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/363
Co-authored-by: IsaacSin <Isaacgsds@gmail.com>
Co-committed-by: IsaacSin <Isaacgsds@gmail.com>
2024-06-13 13:28:37 +00:00
Dev
f8bd65ed90 Replaced various array.find() with array.some()
Rewrote `tagItem()` to use `.find()`
2024-06-13 13:41:29 +01:00
Dev
3327bc916a Renamed functions to better explain what they do 2024-06-13 11:05:10 +01:00
Dev
8c05345b85 Replaced various magic strings with enum values
Added `itemHelper.getItemFromPool()`
2024-06-13 10:53:07 +01:00
Tyfon
836910c1d5 Implement Ragfair sort by barter (!362)
Not that anyone was clamoring for this, but I noticed it was missing.

Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/362
Co-authored-by: Tyfon <tyfon7@outlook.com>
Co-committed-by: Tyfon <tyfon7@outlook.com>
2024-06-13 09:29:48 +00:00
Dev
3c0887172e Fixed MARK_OF_UNHEARD incorrectly adjusting insurance return time
Added `ItemHelper.hasItem()`
2024-06-13 09:47:03 +01:00
Dev
6c1935f93f Added nullguard when purchasing trader assort with 0 items 2024-06-12 23:07:38 +01:00
Dev
4e311da111 Refactored InraidHelper 2024-06-12 20:42:29 +01:00
Dev
1caff10d35 Refactoring InventoryHelper 2024-06-12 20:25:27 +01:00
Dev
aac2142706 Refactoring of small functions for better readability 2024-06-12 19:33:55 +01:00
Dev
9d79aa70eb Moved map marker logic out of InventoryController and into its own MapMarkerService 2024-06-12 19:32:27 +01:00
Dev
292dadc55e Prevented NRE being thrown when no weapon found inside getSealedContainerWeaponModRewards() 2024-06-12 12:41:09 +01:00
Dev
16f170f28e Minor adjustments to profileHelper, launcherController and profileController classes 2024-06-12 10:47:01 +01:00
Dev
624737a036 Regenerated bot JSONs 2024-06-11 19:58:30 +01:00
Dev
a34a31f5dc Small refactor of createMagazineTemplate() 2024-06-10 22:24:08 +01:00
Dev
53c76a098f Improved Recursive cloner implementation to preserve null state of data 2024-06-10 18:25:58 +01:00
Dev
ca642b94a7 Reworked gift sending/storage sytem to not store the max sends in profile and use the existing gift data
Fixed `sendPraporStartingGift()` not sending gifts
Expanded `GiftService` to include methods to get gift by id / all gifts / all gift ids
2024-06-09 09:13:38 +01:00
Dev
19bcfe2e87 Cleaned up traderBuyRestrictionReached() 2024-06-08 19:49:30 +01:00
Dev
89459b9e5b Small cleanup of setTraderOfferPurchaseLimits() 2024-06-08 19:38:48 +01:00
Dev
f263f8b0cb Added implementation of BSG feature Increased personal trader item limits by 20% for Edge of Darkness and The Unheard edition owners who upgraded from Edge of Darkness
This fixes EoD/UH/DEV profiles throwing errors when purchasing items near their trader BuyRestrictionMax limits
2024-06-08 19:38:16 +01:00
Dev
5d3ea2ef83 Adjusted addBuffToItem() to also include ARMOR_PLATE items 2024-06-08 17:58:12 +01:00
Dev
75a34f5ca2 Expanded gift system used by spt bot
Gifts can be given multiple times
stash expansions are limited to 5 max by default
dev balaclava can be given 5 times, majority of gifts are 1 use still

Updated data structure to persist gifts received, this will break profiles
2024-06-08 17:54:05 +01:00
Dev
f475d4f6f3 Added ARMOR_PLATE type to getItemSkillType() check 2024-06-08 17:07:14 +01:00
Dev
e39654be6a Simplified generateInventoryId() 2024-06-08 16:16:36 +01:00
Dev
b645e6f51b Added Error throwing when calling getConfig() and a config cannot be found 2024-06-08 12:56:24 +01:00
Dev
2fea0d17de Fixed altering SelectedMemberCategory in settings page not saving 2024-06-08 09:15:59 +01:00
Dev
8745caf86d Refactored getHighestSellToTraderPrice() 2024-06-07 23:14:18 +01:00
Dev
3f125593a7 Refactor BotGenerator() 2024-06-07 22:41:30 +01:00
Dev
d9f8ba653a Refactoring of RepeatableQuestController 2024-06-07 21:33:09 +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
75b2661f72 Moved pity gift code into chooseMessage() to group similar functionality together 2024-06-06 12:24:12 +01:00
Scuvy
e0717daa99 Send pity gift codes to player when player dies to other PMC's (!359)
* This is to address [Issue 652](https://dev.sp-tarkov.com/SPT/Issues/issues/652).
* Added messages with gift codes inside project/assets/database/locales/server/en.json
* Update pmcchatresponse.json to include new pity message type.
* Update logic in project/src/services/PmcChatResponseService.ts to now account for pity messages that are sent.
The message's %giftcode% will now be replaced with a random gift code from assets\configs\gifts.json
* Example:
  - ![image](/attachments/ade2686a-8dcb-4c11-9457-88e003a47416)

Co-authored-by: Scuvy <Scuvy@gmail.com>
Co-authored-by: chomp <chomp@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/359
Co-authored-by: Scuvy <scuvy@noreply.dev.sp-tarkov.com>
Co-committed-by: Scuvy <scuvy@noreply.dev.sp-tarkov.com>
2024-06-06 11:14:38 +00:00
Dev
ccb351a2dd Expanded craft search code to also check for craft count 2024-06-06 11:34:03 +01:00
Dev
af76a068b4 Fixed incorrect logging values 2024-06-05 21:50:27 +01:00
Dev
2a9cbab762 Fixed issue with PMC post-raid messages not being sent
Caused by bot match cache regression resulting in bot data not being stored during generation
2024-06-05 21:50:07 +01:00
Dev
bcb40c8333 Fixed hideout crafts causing server failure 2024-06-04 19:23:37 +01: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
5b4b0c1471 Introduced Set to speed up calls to isItemBlacklisted() 2024-06-04 18:32:22 +01:00
TetrisGG
bef57f4f58 Fix Tournament Profile having access to Fence (!358)
Fixes SPT/Issues#677
Fence should be locked in Tournament Profile.
Setting Fences base.json `unlockedByDefault` to `false` makes the profile able to lock Fence

Code from Client:
Shows that unlockedByDefault overrides whatever is written in the Profile data on init.
![image](/attachments/7336f96c-31c0-4ea3-848d-65320cf41340)

Working Screen from Game:
![image](/attachments/b94f368e-91c4-4641-a31e-8b0d8c60d239)

Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/358
Co-authored-by: TetrisGG <dmiller2606@gmail.com>
Co-committed-by: TetrisGG <dmiller2606@gmail.com>
2024-06-04 17:20:10 +00:00
Dev
dde78b30eb Cloned blacklist data before returning it 2024-06-04 18:18:52 +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
e5398f5e4d Added implementation for Achievement quest rewards 2024-06-04 15:36:01 +01:00
Dev
aebe1ab606 Updated getItemPrices() to return each traders next refresh timestamp 2024-06-04 15:17:46 +01:00
Dev
ba8829681d Fixed flea-banned players being able to buy pmc items from flea 2024-06-03 22:35:09 +01:00
Dev
0aff3c5274 Fixed missing property in addMissingSptVersionTagToProfile() 2024-06-03 22:30:20 +01:00
Dev
7842167595 Stored free daily quest resets in profile per-daily-type
Wired up `getClientRepeatableQuests()` to retrieve this value + reduced indentation of function
Updated `changeRepeatableQuest()` to decrement free daily value from profile
2024-06-03 17:33:46 +01:00
Dev
671c57cefb Cleaned up getClientRepeatableQuests() 2024-06-03 16:51:26 +01:00
Dev
b010ff87c2 Pulled code out of acceptRepeatableQuest() into new function createAcceptedQuestClientResponse() 2024-06-03 16:20:16 +01:00
Dev
2f21178dc9 Updated JSON data 2024-06-03 15:59:38 +01:00
Dev
5c7f6bc782 Improved comments for deserializeWithCacheCheck() 2024-06-02 14:49:28 +01:00
Dev
a1955d4e7e Second part of EventOutputHolder change, updated output to be keyed by sessionID 2024-05-31 23:28:35 +01:00
Dev
97efad0a79 Updated clientActiveSessionStorage inside EventOutputHolder to store data by sessionId 2024-05-31 23:10:18 +01:00
Dev
f20ffe286b Reworked getBotCap() to use data from url instead of appContext 2024-05-31 22:01:48 +01:00
Dev
561e8da3db Improved client/items/prices handling 2024-05-31 16:16:10 +01:00
Dev
b7a9296fac Expanded getItemName() to return short name when full name is not found 2024-05-31 11:09:19 +01:00
Dev
5531f9d03e Added text to help with finding data 2024-05-30 13:16:28 +01:00
Dev
f341bfcb4b 14.8.6.30268
Added new properties to daily quests
Stubbed out quest achievement rewards
Added new Item properties used by unknown radio
Updated data JSONs
2024-05-30 13:05:28 +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
2169fd3210 Flagged RarityPvE as optional 2024-05-29 10:35:18 +01:00
Dev
7d515ad680 Replaced uses of DatabaseServer with DatabaseService 2024-05-28 22:24:52 +01:00
Dev
5bd49ded59 Updated SaveServer.load() to log the total time taken to load profiles on server started instead of per profile 2024-05-28 18:40:22 +01:00
Dev
c72834d778 Adjusted load time logging to show a max of 2DP 2024-05-28 18:33:17 +01:00
Dev
0dfbf61ddf Replaced usages of parameters with fixed values 2024-05-28 18:32:09 +01:00
Alex
e2eb56a60a Added more nullguards (!356)
Co-authored-by: clodan <clodan@clodan.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/356
Co-authored-by: Alex <clodan@noreply.dev.sp-tarkov.com>
Co-committed-by: Alex <clodan@noreply.dev.sp-tarkov.com>
2024-05-28 14:35:38 +00:00
Alex
8727f6150e primery-dependencies (!355)
Co-authored-by: clodan <clodan@clodan.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/355
Co-authored-by: Alex <clodan@noreply.dev.sp-tarkov.com>
Co-committed-by: Alex <clodan@noreply.dev.sp-tarkov.com>
2024-05-28 14:04:20 +00:00
Dev
f56da3c1a8 Updated various classes to make use of databaseService 2024-05-28 14:52:22 +01:00
Dev
584eade530 Added getLocation() to databaseService and made use of it across various classes 2024-05-28 14:28:26 +01:00
Dev
c710169e3d Fixed bad error throw 2024-05-28 14:23:01 +01:00