Commit Graph

1676 Commits

Author SHA1 Message Date
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
Dev
7cdac4e38b Added getTrader() and utilise inside various classes 2024-05-28 14:13:44 +01:00
Dev
fdb7a2b7d8 Updated various classes to use DatabaseService instead of DatabaseServer 2024-05-28 13:59:19 +01:00
Dev
9f1e0693f5 Make use of DatabaseService inside ProfileFixerService and CustomItemService 2024-05-28 12:27:46 +01:00
Dev
4c08d64ca5 Make use of DatabaseService inside GameControler and RagfaiServerHelper 2024-05-28 11:17:38 +01:00
Dev
e78087818f Add DatabaseService as safer alternate to DatabaseServer for accessing db 2024-05-28 11:13:27 +01:00
Dev
3d4447c978 Added ITemplates interface 2024-05-28 11:11:50 +01:00
Dev
d6f7374a9a Added IHideout interface 2024-05-28 10:41:07 +01:00
Dev
17882ddeab Add interface for database bots object 2024-05-28 10:33:29 +01:00
Dev
65f27a7d8c Fixed various Object is possibly undefined warnings 2024-05-28 10:25:23 +01:00
Dev
e0eaadbeef Added implementation of adjusting hideout area level via mails profileChangeEvents property 2024-05-27 21:30:40 +01:00
Alex
173a726f33 Removed all null references in favor of undefined (!354)
Co-authored-by: clodan <clodan@clodan.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/354
Co-authored-by: Alex <clodan@noreply.dev.sp-tarkov.com>
Co-committed-by: Alex <clodan@noreply.dev.sp-tarkov.com>
2024-05-27 20:06:07 +00:00
Dev
a37664f43a Localised various errors 2024-05-27 20:06:10 +01:00
Alex
aee391ec1d Null checks first pass (!353)
Co-authored-by: clodan <clodan@clodan.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/353
2024-05-27 16:05:16 +00:00
Dev
e5fd26b89c Add system to purchase all clothing from trader on profile creation - enabled for tourney profile
Fixed USEC profiles not having fence locked on tourney profile creation
2024-05-27 16:30:03 +01:00
Dev
edbb6cec19 Updated _proto inside ITemplateItem nullable
Added `ItemType` enum for `_type` property in  `ITemplateItem`
2024-05-27 13:59:25 +01:00
Dev
82c6add9ab Improved insurance calculation accuracy with help from Doctor
Removed `insuranceMultipler` from `insurance.json` config, no longer necessary
2024-05-27 13:42:28 +01:00
Dev
40bc26dfd0 Improved localization text for ragfair-unable_to_find_item_price_for_item_in_flea_handbook 2024-05-27 10:26:11 +01:00
Dev
673256e5fa Added disableLootOnBotTypes property to bot.json config to allow disabling loot on bots by their type 2024-05-26 16:32:39 +01:00
Dev
88242238f9 Peppered fillMagazineWithCartridge() with guards to assist players with finding cause of error 2024-05-26 12:17:47 +01:00
Dev
86c383c97b Added trader assort item blacklist system. Can be applied per profile
Enabled for Tournament profile

Added support to server to handle `AssortmentUnlockRule` mails
2024-05-25 21:21:23 +01:00
Dev
d3b8138bab Ignored various property naming lint issues 2024-05-25 15:57:11 +01:00
Dev
ece45f0788 Ignored various property naming lint issues 2024-05-25 15:53:49 +01:00
Dev
923a92169d Fixed multiple ragfair bans being added on profile creation 2024-05-25 15:46:01 +01:00
Dev
ef8307540b Fixed issue with redeemProfileReward() not correctly levelling up traders, causing player to only see level 1 trader items until a restart 2024-05-25 15:45:27 +01:00
Dev
ca737d2f62 Added ability to flag a profile as flea banned via config
Updated tournament profiles to use new system
Added `getTimeStampFromNowDays()` helper to `TimeUtil`
Improved accuracy of `Bans` property in profile
2024-05-25 15:09:52 +01:00
Dev
eba65cdd83 Added new Tournament profile. Flea blacklisted. Has special gift code. 2024-05-25 14:45:36 +01:00
Dev
aa03a002ed Fixed profileChangeEvent Skill failing when invalid skill passed in 2024-05-25 14:40:49 +01:00
Dev
e505f86137 Fixed sendGiftToPlayer() not correctly sending profile change events 2024-05-25 14:33:22 +01:00
Dev
18a5c49812 Add trader id to getItemPrices() 2024-05-25 10:40:32 +01:00
Dev
e2dd677b40 Fixed getLocalesGlobal() not correctly falling back to english when locale not found 2024-05-24 23:23:59 +01:00
Dev
612b1b7940 Localized more warnings 2024-05-24 16:42:42 +01:00
Dev
ed50a89e85 Added localisation to InsuranceController 2024-05-24 15:51:16 +01:00
Dev
36a43f38ab Updated locales 2024-05-24 15:33:54 +01:00
Dev
6623a86d0f Improved how PMC difficulty values are generated to improve PMC vs PMC settings
Moved difficulty-related into `BotDifficultyHelper`
Made `typeBeingEdited` property in `addBotToEnemyList()` optional
2024-05-24 10:58:55 +01:00
Dev
f68827bdc2 Added ability to insert custom text into the server watermark at the bottom via core.json config 2024-05-23 21:40:59 +01:00
Dev
198f864fe6 Added additional property 2024-05-23 18:10:24 +01:00
Kaeno
c0d3c5384f QuestitemInsurance (!350)
Add ability to tell if we planted the item at a quest location (fishing gear, SV98) and dont return it with insurance

Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/350
Co-authored-by: Kaeno <kaeno@noreply.dev.sp-tarkov.com>
Co-committed-by: Kaeno <kaeno@noreply.dev.sp-tarkov.com>
2024-05-22 19:57:37 +00:00
Dev
4081508bf3 Improved accuracy of flea offer creation
`user` object of each offer matches live
Added `getPmcNicknameOfMaxLength()` to `botHelper`
2024-05-22 13:26:35 +01:00
Dev
961210f73c Renamed function to clarify what it does 2024-05-22 12:51:04 +01:00
Dev
2b3ee4f15c Improved how AID is obtained when generating a flea offer 2024-05-22 12:50:19 +01:00
Dev
2edd1695f6 Improved locale text for modloader-outdated_sptversion_field 2024-05-22 11:23:38 +01:00
Dev
cd965bb733 Refactored 2 functions to accept a request object instead of 5+ parameters generateModsForWeapon() and chooseModToPutIntoSlot()
Store meta-data on weapon as its being generated e.g. if it has an optic/front sight/rear sight
use above meta-data to force a low/high profile gas block on weapon during generation
2024-05-21 23:22:16 +01:00
Kaeno
37f4a23acf Fix flea market error when clicking on user. Handled responses that wasn't been handled correctly (!348)
:)

Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/348
2024-05-21 21:24:57 +00:00
Dev
6656c733a3 Added migration path for 3.8.3 profiles into new 3.9.0 structure 2024-05-21 19:47:01 +01:00
Alex
d13e86ba46 Rebranding to SPT (!345)
Rebranded src code and scripts to SPT

Co-authored-by: clodan <clodan@clodan.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/345
Co-authored-by: Alex <clodan@noreply.dev.sp-tarkov.com>
Co-committed-by: Alex <clodan@noreply.dev.sp-tarkov.com>
2024-05-21 17:59:04 +00:00
Dev
a48e130f1b Localized various warning messages 2024-05-21 14:28:52 +01:00