Commit Graph

1389 Commits

Author SHA1 Message Date
Dev
ef03d546ce Improvements to PMC gear variety + comment changes 2023-07-26 16:41:54 +01:00
Dev
76dce7a548 Nullguard across multiple dialogueController methods to prevent missing profile/dialog from killing client 2023-07-26 12:47:42 +01:00
Dev
06d39b26a9 Improvements to chat responses
Exit response code when gift code entered

Reply to additional keywords

Randomisd responses + added multiple
2023-07-26 09:38:33 +01:00
Dev
69f08d9f87 Improve comments 2023-07-25 21:14:18 +01:00
Dev
6e33a9c37e Add functionality to fail quests on server after failing them in-raid, fixes failing colleagues part 3 by completing sadist 2023-07-25 20:37:45 +01:00
Dev
9e056cf8f3 Handle failing quests post-raid if they are now failed and were not pre-raid 2023-07-25 19:50:46 +01:00
Dev
0a1913ab49 Fix issue with completing Sadist not failing Colleagues Part 3
Added fail state to colleagues p3
Reworked loop inside `getQuestsFailedByCompletingQuest()`  to use .some() instead
Reworked `failQuests()` to check all fail conditions instead of just the first one
2023-07-25 19:20:17 +01:00
Dev
903dbdf432 Improve emulation of live tarkov data - Remove hideout data from bots that are not pmcs or pscavs prior to being sent to client 2023-07-25 17:44:23 +01:00
Dev
b16d849280 Only add player to users inside getProfilesForMail() if they dont exist 2023-07-25 15:59:39 +01:00
Dev
8178f40b5d Comment improvements 2023-07-25 14:04:21 +01:00
Dev
38b921a7e4 Move gift checks into GiftService.sendPraporStartingGift 2023-07-25 11:17:54 +01:00
Dev
41b4bdc432 Fix bug that casued prapor to send new player gifts regardless of how old profile was
Surround gift sending code with gift recieved check first
2023-07-25 10:36:23 +01:00
Dev
1a80d3fab8 Prevent exception in gift existence check doesnt find a profile 2023-07-25 10:35:12 +01:00
Dev
fd365df8ba FIx getGameConfig() failing on profile creation 2023-07-25 10:22:12 +01:00
Dev
4a491df965 Add stackObjectCount for camora slots on weapons 2023-07-24 21:44:00 +01:00
Dev
777ca0c8ef Fix issue with PMCs generating with one cartridge in magazine + no cartridge in weapon chamber 2023-07-24 21:24:55 +01:00
Dev
7e60ea9d79 Remove dupe items from seasonal gear 2023-07-24 18:47:26 +01:00
Dev
070b9c7ad6 Send total in game time on game start 2023-07-24 16:38:28 +01:00
Dev
848302e769 Convert post-raid player status into an enum and update usages 2023-07-24 16:30:03 +01:00
Dev
ad576a937a Comment improvements 2023-07-24 15:52:55 +01:00
Dev
5c6aafea51 Add enum for notification type 2023-07-24 15:19:31 +01:00
Dev
40149edeb2 axmc bot weapon generation improvements
Slight weapon variety improvement for PMCs

Only generate backpack loot if bot has backpack - reduces warnings during botgen
Move warning mesage to debug

Add sanitar medkit to pmc blacklist

Pass ur to warning message when endpoint body fails json validation

Pass sessionId into `locationController.generateAll()` to help modders when overriding function

Test - Added grizzly x5 to PMC secure containers to see if they heal more when damaged
2023-07-24 13:20:17 +01:00
Dev
f4047489eb Clean up sptFriend generation code - reduce duplication 2023-07-23 12:30:15 +01:00
Dev
c5332986eb Fixed issues with moving items to sorting table after opening sealed container
Also allow money from sold flea offers to enter sorting table

Remove unused addItem() from InventoryController

Add optional param to inventoryHelper.addItem() to allow use of sorting table, default = off
2023-07-23 12:29:00 +01:00
Dev
e84781be5f Handle moving items into sorting table when stash has no space 2023-07-23 11:51:04 +01:00
Dev
253fd3a42a Fix prapor gift system failure on new profile creation 2023-07-23 11:36:41 +01:00
Dev
89ab3a99a8 sealedWeaponContainer - Get random weapon preset if default preset not found 2023-07-23 11:27:04 +01:00
Dev
e4b9be3bea Fix for ragfair failed offers killing profile 2023-07-23 10:47:38 +01:00
Dev
618a41fcd9 Add system to make prapor give giffts the first and second day after starting a fresh character
Add functionality to handle gift service to use locale ids instead of raw text
2023-07-22 23:23:42 +01:00
Dev
41ef304d97 Improve seasonal system to give gifts during event
Add additional equipment to PMCs when event is active
2023-07-22 20:07:58 +01:00
Dev
5071072092 Place fence seasonal item blocking behind config propery 2023-07-22 14:16:19 +01:00
Dev
a04113eaa1 Block seasonal items when not inside active season (christmas/halloween so far) 2023-07-22 14:11:47 +01:00
Dev
c3a4caa38a Convert sptDev profiles quest starter email function to use mail send service 2023-07-22 14:02:13 +01:00
Dev
ab912f519f Fix issue with trader ids not being propigated to the profile 2023-07-22 13:59:21 +01:00
Dev
00a2fbde22 typo 2023-07-22 13:37:40 +01:00
Dev
429d357e89 Correctly parse hours into second for quest code 2023-07-22 13:35:49 +01:00
Dev
a09c813358 Add extra check for messages from traders where dialog type is defined 2023-07-22 13:32:37 +01:00
Dev
25ea9afae4 Typo 2023-07-22 13:14:40 +01:00
Dev
f2caff3c70 Migrate ragfair returnItems() to use new mail send service
Some renames + comments
2023-07-22 13:13:01 +01:00
Dev
3526b2764a Migrate quest fail to new MailSendService 2023-07-22 13:02:42 +01:00
Dev
f3e1dd59fb Migrate quest controller to use new message service instead of dialogHelper 2023-07-22 12:56:15 +01:00
Dev
1617617cf2 Improve localisation to reduce confusion that server mods are loaded, not client and server mods
Small comment typo fix
2023-07-22 11:46:38 +01:00
Dev
de356f8f71 Fix bad ref 2023-07-21 19:37:51 +01:00
chomp
a7b4ebe316 Rework message sending to support gift system (!106)
Co-authored-by: Kaeno <e>
Co-authored-by: Dev <dev@dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/106
2023-07-21 17:08:32 +00:00
Dev
a9e6d5d0fe Stub out more of gift service + allow adjustment of sender for dialogs 2023-07-20 21:29:27 +01:00
Dev
4092ff7c9d Add stub of gift service 2023-07-20 21:07:47 +01:00
Dev
67706f09fc Fix missing import 2023-07-20 20:51:49 +01:00
chomp
e2a1b10989 Fixed bug to when talking with another user. Player messages shows like its being send from player instead of reciever. (!105)
Co-authored-by: Kaeno <e>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/105
2023-07-20 19:27:28 +00:00
Dev
c3232ac979 Refactor of InsuranceService
Add two methods to item helper, `getStaticItemPrice()` + `getFleaItemPrice()`

Changed how getItemPrice() works to return handbook price if its 1 rouble, not if its over 1
2023-07-20 16:04:26 +01:00
Dev
58063ce303 Fix incorrect comment 2023-07-20 14:02:53 +01:00
Dev
78d097498c Update JSONs and add new properties to server interfaces 2023-07-20 13:53:44 +01:00
Dev
6edf331aff Use corect type 2023-07-20 13:22:47 +01:00
Dev
a79a5f7aec Allow modders to set item min/max stack size limits for any item on fence 2023-07-20 12:00:24 +01:00
Dev
d1d3674332 Localise warning messages 2023-07-19 13:16:45 +01:00
Dev
129fe0dc97 Localise server errors 2023-07-19 11:00:34 +01:00
Dev
d001fe8fb5 Adjust the secure container ammo stack sizes for PMCs to reduce chance PMCs run out of ammo 2023-07-18 19:14:52 +01:00
Dev
3cba3bfd4a Additional types added to BaseClasses 2023-07-18 17:16:23 +01:00
Dev
3768742bc8 Improvements to varous types throughout the codebase
Added quest type as enum for IQuest
Added missing values to QuestReward enum
2023-07-18 16:53:15 +01:00
Dev
f28d6c2a6b Added comments to various config files 2023-07-18 15:45:57 +01:00
Dev
942c079284 Rename all globals.ts interfaces to improve naming consistency 2023-07-18 15:44:14 +01:00
Dev
5b3e3e33df extend MinMax for a number of interfaces 2023-07-18 15:18:01 +01:00
Dev
ca48f0e83c Add property to location config to allow adding bot min/max spawn limits for maps
Limit marksman on customs/woods/streets between 2 and 4, woods to 2 and 5
2023-07-17 14:40:54 +01:00
Dev
02d43d491c Save time spent in raid to profile 2023-07-17 09:36:10 +01:00
Dev
965e3efbc7 Handle additional events: ignore/set and ignore/remove
Pass full request object generateDialogueView instead of just id

Handle case when getting dialogue from profile that does not exist

Improve `getMessagePreview()`  nullguard properties that may be missing
2023-07-15 15:01:23 +01:00
Dev
295ed59739 Additional code comments 2023-07-15 14:49:25 +01:00
Dev
5e3d3f5bd7 Rework generateAll() to not have hardcoded skip of "base" map + moved code around + varaible rename
Made generate() private
2023-07-15 11:58:35 +01:00
Dev
7a1140c229 Extract coder into function from updateProfileBaseState + log nickname on game start 2023-07-15 11:03:54 +01:00
Dev
ee3766aad3 Add SPT friend :3 2023-07-15 11:02:48 +01:00
Dev
18054e4004 Extract code into seperate functions inside ProfileController + add logger to class 2023-07-15 11:01:29 +01:00
Dev
5d20b6b781 Further comment improvements 2023-07-15 11:00:35 +01:00
Dev
76804c0326 Replace magic string with enum 2023-07-15 10:58:35 +01:00
Dev
2b6980358c Moved keepalive code out of GameCallbacks and into its own function inside GameControler 2023-07-15 10:57:39 +01:00
Dev
c1e7c70c65 Remove unused getTemplateQuests method 2023-07-15 10:56:47 +01:00
Dev
d2c2a39075 Add comments + improve comment consistency 2023-07-15 10:56:00 +01:00
Dev
195d0e3b1d Add 'fixes' section to core.json, expose some flags for enabling spt fixes
Added flag to enable deletion of modded items from profile - default is off
Fixed issue where loop would stop checking for modded items after finding the first item
2023-07-15 10:53:08 +01:00
Dev
9288a59a77 Convert some privates to protected + some publics to protected 2023-07-15 10:45:33 +01:00
Dev
2df0d44de5 Add mock implementation for client/friend/request/cancel endpoint
Addec comments
2023-07-14 13:03:55 +01:00
Dev
162709a5b0 Improve comments in gamecallback/controller
Move public functions to top of class
Use parameter property instead of hard coded string inside healthTreatment()
2023-07-14 12:55:32 +01:00
Dev
455bde264c Improve offraidEat
use .find() instead of iterating over every item in player inventory
Return client error if consumable item not found + localised
2023-07-14 12:53:31 +01:00
Dev
0b68fb53e0 Add return type to comment 2023-07-13 17:32:50 +01:00
Dev
5ecf16f78c Return correct type instead of any[] 2023-07-13 14:20:31 +01:00
Dev
7a16c7e998 Improvements to skill points given after performing actions:
Item crafting:
HideoutManagement skillpoints give
Intellect skillpoints given

Examining item:
Intellect given

Repairing weapon/armor
Intellect given

Cleanup of hideouthelper + reordering of functions

Flagged rewardSkillPoints() as dupe of PlayerService.incrementSkillLevel()
Flagged incrementSkillLevel() as dupe of QuestHelper.rewardsSkillPoints()
Need to decide which one wins

Added nullguards to incrementSkillLevel() + added optional multiplication by global skillprogression rate
Made it update last access timestamp
2023-07-13 10:26:47 +01:00
Dev
fd56bf040e Convert hideout craft exp magic string into config value 2023-07-12 20:12:16 +01:00
Dev
218eb35ecb Implement hallowen trader icon system
Rework DatabaseImporter.loadImages() to take additional parameter
2023-07-12 19:50:33 +01:00
Dev
ea270a95a5 Move hard coded gameversion/account type values into bot config 2023-07-11 11:58:26 +01:00
Dev
7bb93cdcaf Add clarifying comment 2023-07-10 22:25:59 +01:00
Dev
503551c27e Refactor getClientQuests 2023-07-10 15:48:49 +01:00
Dev
4b83046793 Update package versions where possible
Fix multi-type issue on ragfair tax calss
2023-07-09 19:40:05 +01:00
Dev
d0dcfc523b Move event quest code into own function 2023-07-09 16:31:42 +01:00
Dev
dba6b5f629 Allow modifcaiton of the container airdrop will use (capacity etc) 2023-07-09 14:47:02 +01:00
Dev
ad6b94d8a9 Filter out event quests from data prior to sending them to player
Rework season service to use enum instead of magic strings for event names

Add config property to control showing/hiding non-seasonal event quests from player
2023-07-09 14:45:06 +01:00
Dev
cad5dcd679 Add missing quest assort unlocks to questassort.json
Add function to write to console what quest assort unlocks are missing
2023-07-09 11:33:43 +01:00
Dev
0c0f48b93a Improve comments 2023-07-09 10:00:00 +01:00
chomp
6754d84484 24605 (!103)
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/103
2023-07-07 20:24:42 +00:00
Dev
bf4e42b211 Add per bottype loot N values
Made bosses share same value as PMCs
2023-07-05 18:44:35 +01:00
Dev
d6fed1aa0f Cleanup of generateContainerLoot() to improve readability 2023-07-02 15:05:32 +01:00
Dev
d28d1a485d Add additional check to prevent trader item preset exploiting 2023-06-30 19:30:49 +01:00
Dev
343be66806 Add property to ragfair blacklist to toggle removal of damaged ammo packs 2023-06-30 14:00:08 +01:00
Dev
61a04c344d Resolved numerous issues with quest rewards showing a broken icon due to mismatching IDs
Added additional weight when picking a quest assort unlock (money or barter)
2023-06-27 17:23:21 +01:00
Dev
567dc6e289 Add clarifying comment 2023-06-27 11:22:03 +01:00
Dev
8534a35518 Add primorsky ave appt key to handbook with placeholder price of 1 rub 2023-06-26 08:23:08 +01:00
Dev
da6cbee387 Replaced getFleaPriceForItem() check for value = 1 with undefined check + move code above undefined = 1assignment 2023-06-26 08:10:36 +01:00
Dev
28ca90b02c Convert duplicate mods into comma separated string prior to being logged in checkForDuplicateMods() 2023-06-26 07:39:22 +01:00
Dev
7ad1fc3996 Add FiR config and wire up + cleanup of openRandomLootContainer() 2023-06-20 17:19:53 +01:00
Dev
26f29e1522 Add sealed crates to airdrops 2023-06-20 16:59:15 +01:00
Dev
0c31719013 Feature: Add code to handle sealed weapon containers when opened in menu
Add handbook price for sealed containers (default of 100rub)
2023-06-20 16:07:05 +01:00
Dev
488b9f5f1a prevent null ConflictingItems from causing isItemIncompatibleWithCurrentItems() to error 2023-06-18 15:39:20 +01:00
Dev
de1b33b963 improve getFleaPriceForItem() warning message 2023-06-17 11:47:50 +01:00
Dev
3918bf785e Make two properties optional 2023-06-16 10:18:54 +01:00
Dev
b478a1cdad Add nan check to ragfair rating incrementor code 2023-06-13 19:33:42 +01:00
Dev
709817d4fe make property optional 2023-06-06 16:35:10 +01:00
Dev
6e5f4fbce3 Refactor of rollForSale()
Adjusted function to allow for parts of an offer to succeed or fail instead of a binary sell/fail outcome
optimisation: Only calculate selltime if item will be sold
Added additional debug logging
2023-06-04 16:30:54 +01:00
Dev
e4fb8cb40d Refactor getTraderSuits() to make better use of .filter() instead of loops
Moved magic strings into object
Misc comments
2023-06-02 16:21:35 +01:00
Dev
48ba66f470 Improve separation of concerns by moving hideout property gathering code out of updateAreasWithResources() and into own function getHideoutProperties()
Refactored how we get bitcoin count
2023-06-02 13:54:03 +01:00
Dev
cfbe2739f9 Fix issue with insurance message being incorrect
Moved `sendLostInsuranceMessage()` to `insuranceService` + make it read correct id from locale file
2023-06-01 21:24:23 +01:00
Dev
9bf533a1b1 Add additional comments and formatting fixes 2023-06-01 10:46:16 +01:00
Dev
bb9d3739c4 Move logging 2023-05-30 13:58:02 +01:00
Dev
22279a7353 Log sessionid on game start 2023-05-30 13:55:46 +01:00
Dev
774357c1f3 Move fence logging 2023-05-30 13:36:15 +01:00
Dev
00e1679dd9 Log fence standing changes post-raid 2023-05-30 13:35:34 +01:00
Dev
295f144884 Update JSONs 2023-05-29 22:54:03 +01:00
Dev
375cfa2495 Improve comments inside RagfairOfferHelper 2023-05-29 16:32:06 +01:00
Dev
0cd28865eb Null guard when sold item locale key not found 2023-05-29 16:20:41 +01:00
Dev
88a854c5ca Refactor processOffersOnProfile() 2023-05-29 16:12:27 +01:00
Dev
98e2af2ad4 Update sold/returned template guid, fixes #40 2023-05-29 16:05:19 +01:00
Dev
b84d8a66c2 Ensure we hydrate the systemData object before calling addDialogueMessage() 2023-05-27 23:04:39 +01:00
Dev
a4efdf9b43 Revert "Store the location insured gear was lost on + time it was lost against insured items in profile"
This reverts commit 77508ace73.
2023-05-27 22:39:32 +01:00
Dev
72239e4434 Rename variables for clarity 2023-05-27 22:31:43 +01:00
Dev
77508ace73 Store the location insured gear was lost on + time it was lost against insured items in profile 2023-05-27 22:31:24 +01:00
Dev
1a3c107f0a Remove duplicate method that does same as storeLostGear() 2023-05-27 22:26:58 +01:00
Dev
c489db81b1 Protect loop from undefined error inside fixBrokenOfflineMapWaves() when map has missing waves array 2023-05-27 19:03:52 +01:00
Dev
e2b1d4d0c6 null guard against a map without a base json inside fixBrokenOfflineMapWaves() 2023-05-27 19:02:30 +01:00
Dev
e7ccddad2d 23399 JSON changes 2023-05-27 10:34:47 +01:00
Dev
17d517e4a9 Improve logging 2023-05-24 19:19:05 +01:00
Dev
26eb1287cc Refactor sellitem() to use .find() instead of for loop
Add additional checks when sold item is not found
Replaced whitespace repalcement code with `replace()`
2023-05-24 15:51:05 +01:00
Dev
dcc12f1fcd Fix issue with bot gen when bot config has empty equipment blacklist 2023-05-22 17:03:24 +01:00
Dev
eb445b2820 Refactor doesPlayerLevelFulfilCondition() to handle more than just > 2023-05-22 16:00:09 +01:00
Dev
87c1c80a78 Handle getting quest status when player profile lacks a Quests array 2023-05-22 15:50:10 +01:00
Dev
2f919c795c Fix issue with scav case rewards failing + made function reward level handling more robust 2023-05-22 12:25:19 +01:00
Dev
17afc9e460 Add endpoint stubs and improve request/response objects 2023-05-20 18:37:39 +01:00
Dev
08f2bdb27e Refactor ScavCaseRewardGenerator.getScavCaseRewardCountsAndPrices() 2023-05-19 17:40:06 +01:00
Dev
dcd1da28a6 Refactor InsuranceController.processReturn() 2023-05-19 17:39:26 +01:00
Dev
52f9dbefa9 Add new properties to location data 2023-05-19 17:38:38 +01:00
Dev
f3b28d532c Refactor convertBotDifficultyDropdownToBotDifficulty() ot use switch statement 2023-05-18 17:23:28 +01:00
Dev
4d27efd9d1 Additional fix when purchasing clothing 2023-05-15 19:18:42 +01:00
Dev
ce63d5418b Fix error on purchasing clothing from ragman 2023-05-15 18:37:09 +01:00
Dev
9f3954cbb2 23043 2023-05-15 17:22:54 +01:00
Dev
f08ac4d2ac Fixed bug that casued bot skills to lack an Id, this could be the cause of Cultists having footsteps 2023-05-08 11:14:32 +01:00
Dev
f340e55924 Skip adding items to mod pool if item has no _props property instead of just showing error 2023-05-01 15:27:33 +01:00
Dev
eb6905967f Refactor of hideouthelper 2023-04-26 22:29:08 +01:00
Dev
685859d57f Refactor addOrIncrementCategory() 2023-04-24 14:19:42 +01:00
Dev
8076ed9b29 Refactor storeLostGear() 2023-04-24 14:03:41 +01:00
Dev
463e33d1b7 Refactor getNumberOfItemsNeededToFillGap 2023-04-24 13:34:40 +01:00
Dev
b563dd3f78 Refactor addPaymentToOutput() 2023-04-24 13:23:50 +01:00
Dev
cbf06fcece Refactor removeSecureContainer() 2023-04-24 12:47:29 +01:00
Dev
08be8654e4 Refactor isNicknameTaken() 2023-04-24 12:47:19 +01:00
Dev
2c3e61b413 Refactor endOfflineRaid() 2023-04-24 11:57:19 +01:00
Dev
1f5359bde4 Fix typo 2023-04-23 23:47:16 +01:00
Dev
60a11b28f2 Refactor updateWaterFilters() 2023-04-23 21:23:44 +01:00
Dev
833f17ecdb Refactor updateProductionProgress() 2023-04-23 19:47:39 +01:00
Dev
b1605b20fe Centralise time elapsed code in hideouthelper into one function 2023-04-23 19:40:42 +01:00
Dev
f52c42e8b7 Fixed bug when enabling generator for long-running generator-off crafts gaining a burst of progress as if generator was on the whole time
Refactor updateProductionProgress() to get seconds between `sptUpdateLastRunTimestamp` and now instead of crafts `StartTimestamp` and now

Store hideout craft progress as decimal for better accuracy when crafting without generator

Added code to EventOutputHolder to ensure we continue to return progress as an int
2023-04-23 19:24:00 +01:00
Dev
d411f5ce1d Refactor updateWaterFilters() 2023-04-23 14:02:46 +01:00
Dev
9fff59f464 FIx typo, no more pies 2023-04-23 13:44:15 +01:00
Dev
9f8bfae75d Refactor of buyClothing() 2023-04-23 12:17:18 +01:00
Dev
d284ca47d4 Refactor wearClothing() 2023-04-23 11:38:57 +01:00
Dev
31eb470a08 Make LocalisationService get keys directly from database server 2023-04-23 11:26:11 +01:00
Dev
c20a9d6e36 FIx getFleaPriceForItem() not logging when price was not found 2023-04-23 11:25:42 +01:00
Dev
9ddfeb629e Fix incorrect reference to Set data structure 2023-04-23 11:13:53 +01:00
Aria Adair
eb9af28c1b Make it possible to dynamically add bundles. (!87)
I'm experimenting around with this to allow for loading bundles from ZIP files to help with texture pack distribution, wanted to get it out in front of folks for review.

Co-authored-by: Ari <a@silversupre.me>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/87
Co-authored-by: Aria Adair <gaylatea@noreply.dev.sp-tarkov.com>
Co-committed-by: Aria Adair <gaylatea@noreply.dev.sp-tarkov.com>
2023-04-23 09:50:52 +00:00
chomp
7974e4531b Refactor functions (!90)
(cherry picked from commit f6fc6e41c0)

Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/90
2023-04-22 22:41:04 +00:00
Dev
2bc582d65c Refactor handbookhelper to use a set instead of record for handbook price values 2023-04-22 19:33:47 +01:00
Dev
95fbd07473 Refactor addSpawnedInSessionPropertyToitems() 2023-04-22 18:36:34 +01:00
Dev
8c3924baab Refactor calculateFenceStandingChangeFromKills() 2023-04-22 16:41:00 +01:00
Dev
c45c9185a6 Refactor inRaidHelper.removeSpawnedInSessionProeprtyFromitems() 2023-04-22 16:30:57 +01:00
Dev
fae6c57bfa Rename Itrader interface for clarity 2023-04-22 16:28:07 +01:00
Dev
d6bb12a3a2 Refactor InRaidHelper.deleteInventory() 2023-04-22 16:27:46 +01:00
Dev
a1e7f21a59 Update JSONs 2023-04-16 16:02:46 +01:00
Dev
4a44b004a6 Improved image import functionality to allow for image path overrides e.g. adjusting trader images
Pass routes into getImages() function
2023-04-15 14:07:56 +01:00
Dev
70da4a632e Make getItemSize() more resilient to bad data - return 1x1 size if item not found + show error to player
Fix incorrect return type for getItemSize()
2023-04-12 15:51:52 +01:00
Dev
43d9f6490c Fix: Improve orphaned item checking 2023-04-12 15:41:48 +01:00
Dev
96da3d1c6b nullguard generatePool() function inside BotEquipmentModPoolService 2023-04-11 16:52:07 +01:00
Dev
102584e24b Workaround for bad shotgun dispersion values 2023-04-08 22:17:04 +01:00
Dev
d39c7f30f8 Update nvgIsActiveChancePercent into 2 properties, one for day, one for night
Removed:
nvgIsActiveChancePercent
Added:
nvgIsActiveChanceDayPercent
nvgIsActiveChanceNightPercent
2023-04-08 13:30:39 +01:00
Dev
c60c67fce5 Split config of lasers/lights active status by raid day/night status, default to day if no raid found
Removed:
lightLaserIsActiveChancePercent
Added:
lightIsActiveDayChancePercent?: number;
lightIsActiveNightChancePercent?: number;
laserIsActiveChancePercent?: number;
2023-04-08 13:18:01 +01:00
Kaeno
ca931165b2 Fix: Fixed some ragfair issues (!86)
Fixed bug with removing offers from flee and item returning too quickly.
Fixed bug with error message that would show on removal of offers.
Expose property expireSeconds in ragfair.json.

Co-authored-by: Kaeno <>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/86
Co-authored-by: Kaeno <kaeno@noreply.dev.sp-tarkov.com>
Co-committed-by: Kaeno <kaeno@noreply.dev.sp-tarkov.com>
2023-04-06 16:23:52 +00:00
Dev
2cd7555bbe Fix: Only return prices for items that exist in items.json
(cherry picked from commit c0aece0a2c9a84f71d8b5dd940c3e37a9017b6ed)
2023-04-06 15:38:26 +01:00
chomp
5e9e0736cc update core and WildSpawnTypeNumber.ts to match version 22561 (!85)
Co-authored-by: Kaeno <>
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/85
2023-04-05 21:08:35 +00:00
Kaeno
33195f8efb Fix: Workaround fixing marksmans not spawning on maps in function. fixBrokenOfflineMapWaves (!84)
Fix: Workaround fixing marksmans not spawning on maps in function fixBrokenOfflineMapWaves
Co-authored-by: Kaeno <>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/84
2023-03-29 19:50:02 +00:00
Dev
9a419e80ef Fix: Skip item when slots property is empty during generation of items pool 2023-03-26 16:53:51 +01:00
Dev
27a0df2d92 Fix: Improve InventoryController.toggleItem() to handle items without a upd property
Rewrote loop to use .find()
Added comments + logging
2023-03-26 16:52:40 +01:00
Dev
43ad523dce Fix: null guard bonus check during upgradeComplete 2023-03-25 16:35:38 +00:00
Dev
32afbffcda Refactor: Move server locates into database folder so they can be accessed/edited by modders 2023-03-25 15:37:50 +00:00
Dev
82ff9dde12 Fix: use values from http.json instead of values in database/server.json
Cleanup and reordering of HttpServer.ts
2023-03-25 15:03:20 +00:00
Dev
e626c4d3de FIx: Trim whitespace around generated bot name 2023-03-24 14:57:51 +00:00
Dev
70e82cbe4e Fix: don't error when leaving raid early 2023-03-23 20:18:53 +00:00
Dev
a5272dc596 Feature: expose profile save wait delay in config 2023-03-23 15:03:54 +00:00
Dev
a207e5778e Feature: Save profile changes on game exit 2023-03-23 14:48:10 +00:00
Dev
990c33b9c6 Feature: expose 3 variables to PMC messages: playerLevel/playerName/playerSide 2023-03-22 17:12:19 +00:00
Dev
e2074ffc7a Fix: convert BotLootCache to interface 2023-03-22 14:49:24 +00:00
CZPZ
8c37bc7837 Lint: ts files (!82)
Co-authored-by: alimoncul <alimoncul@gmail.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/82
Co-authored-by: CZPZ <czpz@noreply.dev.sp-tarkov.com>
Co-committed-by: CZPZ <czpz@noreply.dev.sp-tarkov.com>
2023-03-22 14:31:05 +00:00
chomp
d595e26ee6 Feature: Allow PMCs that kill the player to message them a positive/negative message (!81)
Store bots spawned in raid inside cache (`MatchBotDetailsCacheService`)
Clear cache after raid

Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/81
2023-03-22 10:25:34 +00:00
Dev
3232314dbd Fix: hotfix for difference in types between botjson skills (dict) and output (array) 2023-03-21 15:58:08 +00:00
Dev
0d5a07533d Fix: use correct values for colleagues p3 2023-03-21 15:42:08 +00:00
Dev
5e739c2a90 Fix: check for empty object when looking at key length 2023-03-21 15:31:42 +00:00
Dev
16e1293d55 Fix: error on profile creation 2023-03-21 15:22:36 +00:00
Dev
1659211080 Refactor: rewrite itemFitsInto1By2Slot to improve readability 2023-03-21 15:17:14 +00:00
Dev
a6838e9312 Refactor: improve generateSkills() function 2023-03-21 15:06:27 +00:00
Dev
415b73d674 Feature: Update incrementSkillLevel() call to replace hard coded value with value from globals 2023-03-21 14:35:29 +00:00
Dev
249730ee65 Fix: return the found quest 2023-03-21 14:22:45 +00:00
Dev
1fc35881d8 Refactor: Update various functions with changes from code review 2023-03-21 14:19:49 +00:00
Dev
927273d71d Feature: Add ability to define different types of airdrop loot containers
+ Fixed a typo in `createRandomloot()` function name
+ Added more generically named`getWeightedValue()` function as future replacement for `getWeightedInventoryItem()`
+ Changed `LootRequest` into interface

Added:
Weapon/armor
Barter
Medical/Food
Mixed
2023-03-18 17:29:26 +00:00
Dev
e8f53e1fcd Fix: update wildspawnpoint enum 2023-03-18 16:18:59 +00:00
Dev
8115b62e73 Fix: add nullguards to getResponse() 2023-03-18 09:19:20 +00:00
chomp
ed4dfc201d Feature: Add ability to whitelist items inside each bots generation object + filter per bot level inside bot.json equipment.randomisation section (!73)
(cherry picked from commit 253b4d0120db8245e6c2e863ab7d2fbdc5196128)

Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/73
2023-03-17 18:20:16 +00:00
chomp
611b63a4cd Feature: UseapplyRandomizeDurabilityLoss config property in repairItemByKit() (!72)
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/72
2023-03-17 09:12:47 +00:00
chomp
4434b95621 Feature: reworked calculation of flea price to use the price an item can be sold to a trader for instead of the price a trader sells an item at (!71)
Disable automatic adjustment of items that are below handbook price

Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/71
2023-03-15 19:06:03 +00:00
chomp
b44f62bb99 Feature: send launcher descriptions of profiles when calling connect() (!70)
Localise description text
Add `IConnectResponse` object for LauncherController.connect()
Move server name into core.json config

Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/70
2023-03-15 14:18:55 +00:00
chomp
12c269fb57 Feature: add adjustPriceWhenBelowHandbookPrice to ragfair.json + Add comments to ragfair config (!69)
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/69
2023-03-15 13:28:51 +00:00
chomp
f74031b4d5 Feature: Ensure chosen extract for repeatable quest always has a chance above 0 (!68)
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/68
2023-03-14 12:39:36 +00:00
chomp
8b23039e7a Feature: Chance chance to send message to per victim instead of per-raid (!65)
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/65
2023-03-13 15:23:34 +00:00
chomp
08b760cf4c Feature: expand PMC response system to include different message suffixes (!64)
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/64
2023-03-13 14:02:39 +00:00
chomp
c81633ac38 Fix: resolve issue with handing in item to quest that allows multiple types of items to be handed in (e.g. punisher p5 - 2 types of makarov can be handed in) (!63)
Moved some error logging in handoverQuest() to separate functions
Renamed `itemHandoverMode` to `isItemHandoverQuest`

Included some additional pmc responses

Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/63
2023-03-13 09:34:04 +00:00
chomp
00e367ffa5 Feature: Allow modders to define custom currencies (!62)
https://dev.sp-tarkov.com/SPT-AKI/Issues/issues/11
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/62
2023-03-11 17:38:20 +00:00
chomp
a79c04ad28 Feature: warn players who have botReload skill active (!58)
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/58
2023-03-10 11:26:59 +00:00
chomp
d192044b68 Fix: remove redundant reward code as quests are set to ready to start, not started (!56)
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/56
2023-03-09 11:53:19 +00:00
chomp
1cfd6d76bb Fix: Give dev-usec profiles starting rewards (!53)
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/53
2023-03-08 22:41:57 +00:00
chomp
1137912d51 Feature: Add system that allows PMCs to send text messages to player post-raic. Can be positive or negative (!40)
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/40
2023-03-08 13:26:32 +00:00
chomp
e4bc6c8d68 Feature: Improve numerous endpoints + add function for sending messages to player (!39)
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/39
2023-03-07 22:25:23 +00:00
chomp
17dcf6a45f Feature: Stub out /client/match/group/invite/cancel-all endpoint (!36)
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/36
2023-03-07 12:56:44 +00:00
chomp
7615394e62 Fix: don't overfill magazine inside fillMagazineWithCartridge() (!33)
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/33
2023-03-06 18:17:43 +00:00
chomp
e7a44330fa Fix: Additional change for wall upgrading (!31)
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/31
2023-03-06 12:23:14 +00:00
chomp
e3fa31bbef Fix: workaround for old profiles with a wall at level 2 (!29)
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/29
2023-03-06 12:02:21 +00:00
chomp
ef584d88d3 Fix: Move pp-9 ammo typo check into fillMagazineWithRandomCartridge() so it can be used by more than just static container weapon ammo code (!27)
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/27
2023-03-06 10:08:36 +00:00
chomp
bf061774d0 Fix: ensure static weapon generation chooses a compatible caliber + add edge case handling for pp-9 Klin ammo caliber typo (!26)
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/26
2023-03-06 09:57:04 +00:00
chomp
153776f7e9 Fix: workaround for broken wall (!24)
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/24
2023-03-06 09:13:07 +00:00
chomp
bb6751fca7 Fix: Make wall work again (!23)
Co-authored-by: Dev <dev@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/23
2023-03-05 21:34:24 +00:00
Dev
3d849b427b Squashed 22 commits in an attempt to fix Gitea object bloat 2023-03-05 22:02:56 +02:00
Dev
e1310d74ca Add Repo 2023-03-03 15:23:46 +00:00