Dev
bda6d66e92
Log names of files being serialsied
2023-12-13 22:16:21 +00:00
Dev
73cfc16699
Prevent giving player 0 intellect skill points when crafting in hideout
2023-12-11 11:45:23 +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
8a78e074a4
From testing, inspecting an item sets value to false, not true
2023-12-07 20:37:56 +00:00
Dev
c015882eac
Improve handling of a mail profileChangeEvents
property
2023-12-07 20:16:04 +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
221cd98316
Allow fixProfileBreakingInventoryItemIssues()
to also fix clothing issues
...
Move `fixProfileBreakingInventoryItemIssues` into `ProfileFixerService`
2023-12-03 20:37:35 +00:00
Dev
48de3139ae
Fix bug where setting ragfairconfig.purchasesAreFoundInRaid to true would make trader purchases on flea Found in raid
2023-12-03 12:06:52 +00:00
Dev
1db690afb3
Merge branch 'master' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.8.0
...
# Conflicts:
# project/src/controllers/HideoutController.ts
2023-12-03 11:13:22 +00:00
Dev
12cb176a42
Potential fix for failed/repeatable quests keeping their subtask completed status
2023-12-02 00:10:25 +00:00
Dev
8ddad763be
Cleanup of handleScavCase()
2023-11-30 13:44:43 +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
67f7eb59c5
Improve handling of profileChanges
, dont overwrite existing data when adding new objects
2023-11-30 10:02:00 +00:00
Dev
288b7cf654
Further cleanup of acceptQuest
2023-11-30 09:36:28 +00:00
Dev
a941a22305
Attempt to resolve issue where failed quests that are restarted retain their previous completed statuses until client restart
...
New function to purge completed condtions + remove status timers beyond what a newly started quest would have + add updated quest status object to `questsStatus` property on profile changes response object
2023-11-29 23:36:31 +00:00
Dev
bfee07d5fe
Fix item tag regex replacing non-english characters
2023-11-29 22:30:23 +00:00
Dev
dde5c7e8af
Move raid adjustment code into own service
...
Rename various parts of sytem to better match what it does
2023-11-29 16:52:13 +00:00
Dev
5d0d9e2cd9
Fix issue where OriginalSurvivalTimeSeconds
would be set to the raid time in minutes, not the survival time in seconds
2023-11-29 14:22:48 +00:00
Dev
3945de8b1f
Fix incorrect NewSurviveTimeSeconds
value being sent to client
...
Thanks to DanW
2023-11-29 13:32:55 +00:00
Dev
9c2725e2fe
Add system that adjusts the loot multipliers for a scav raid based on the percentage of the raid time remaining
...
Controlled per location
Most maps are capped at 40/50% min
Added multiple config proeprties to configure how system works
Added ability to remove all AppContext values by key
During `getRaidTime()` loot % modifier values are stored in app context,
Then, during `generate()` those values are retreived and applied if found
After loot generation values are reset to their original value
2023-11-28 12:42:58 +00:00
Dev
f9cf3242c8
Add new core config entry fixProfileBreakingInventoryItemIssues
, defaults to off
...
Attempts to fix common issues that happen to profile inventory items:
Duplicate items with the same _id value
Item Tag names with non alphanumeric characters
StackObjectsCount null values
2023-11-28 11:06:08 +00:00
Dev
58e6cc8cd7
Remove message sending code from acceptRepeatableQuest()
dailies in live do not send messages upon accepting them
2023-11-27 16:35:44 +00:00
Dev
7a798d2b60
Reworked singleplayer/settings/getRaidTime
endpoint
...
Handles adjustments to train extract appearance times
Handles time needed to be alive in a raid to get a Success raid status
Added extra reduction percent weight: 30%
2023-11-27 15:02:35 +00:00
Dev
8d32cf2d03
Store player scav brain data in config and pass to client when requested
2023-11-26 21:33:47 +00:00
Dev
ac459335c0
Add new endpoint to calcualte a reduced raid time for scavs and send the maps base.EscapeTimeLimit
value to client for PMC raids
2023-11-26 21:11:03 +00:00
Dev
1350fdb78b
Find quest in player quest array using .find
instead of .filter
2023-11-25 13:28:52 +00:00
Dev
64722bac17
Add quit exit for gameStart when resetting profile
2023-11-25 13:26:11 +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
ddb9917c6b
Rework of post-raid scav/pmc profile handling:
...
Moved logic out of `updateProfileBaseStats()` and into separate functions for pmc/scav, left profile-agnostic code alone
new functions `updatePmcProfileDataPostRaid` and `updateScavProfileDataPostRaid`
scav - Only copy active quest progress from client profile to server scav profile
scav - dont attempt to update trader standings, none exist on scav profile
scav - dont transfer psot-raid limb damage to server profile
Update quest status values similarly to PMC quests post raid to ensure they're consistent with existing quest data in profile
Simplifies `migrateScavQuestProgressToPmcProfile`
made various warnings debug instead
2023-11-20 16:33:04 +00:00
Dev
525e5cd21b
Fix length comparison not working as its an object, not an array
2023-11-20 15:05:35 +00:00
Dev
ccc017c976
Fix issue with scav case rewards being collectable twice
2023-11-20 10:22:03 +00:00
Dev
2132ea7adb
Fix issue with hideout crafts being collectable twice
2023-11-20 10:14:21 +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
fa1e15897a
Only heal bodypart if player chose hp healing in post-raid therapist healing screen
2023-11-18 11:33:06 +00:00
Refringe
6cd86e67b0
Merge branch 'master' into 3.8.0
...
# Conflicts:
# project/.vscode/launch.json
# project/assets/database/locations/bigmap/base.json
# project/assets/database/locations/interchange/base.json
# project/assets/database/locations/rezervbase/base.json
# project/gulpfile.mjs
# project/package.json
# project/src/ErrorHandler.ts
# project/src/Program.ts
# project/src/callbacks/DataCallbacks.ts
# project/src/callbacks/DialogueCallbacks.ts
# project/src/callbacks/GameCallbacks.ts
# project/src/callbacks/HandbookCallbacks.ts
# project/src/callbacks/HealthCallbacks.ts
# project/src/callbacks/HttpCallbacks.ts
# project/src/callbacks/LauncherCallbacks.ts
# project/src/callbacks/LocationCallbacks.ts
# project/src/callbacks/MatchCallbacks.ts
# project/src/callbacks/ModCallbacks.ts
# project/src/callbacks/NotifierCallbacks.ts
# project/src/callbacks/PresetCallbacks.ts
# project/src/callbacks/ProfileCallbacks.ts
# project/src/callbacks/RagfairCallbacks.ts
# project/src/callbacks/TraderCallbacks.ts
# project/src/context/ApplicationContext.ts
# project/src/context/ContextVariableType.ts
# project/src/controllers/BotController.ts
# project/src/controllers/CustomizationController.ts
# project/src/controllers/DialogueController.ts
# project/src/controllers/GameController.ts
# project/src/controllers/HealthController.ts
# project/src/controllers/HideoutController.ts
# project/src/controllers/InraidController.ts
# project/src/controllers/InsuranceController.ts
# project/src/controllers/InventoryController.ts
# project/src/controllers/LauncherController.ts
# project/src/controllers/LocationController.ts
# project/src/controllers/MatchController.ts
# project/src/controllers/QuestController.ts
# project/src/controllers/RagfairController.ts
# project/src/controllers/RepeatableQuestController.ts
# project/src/controllers/TradeController.ts
# project/src/di/Container.ts
# project/src/di/Router.ts
# project/src/generators/BotEquipmentModGenerator.ts
# project/src/generators/BotLevelGenerator.ts
# project/src/generators/BotWeaponGenerator.ts
# project/src/generators/LocationGenerator.ts
# project/src/generators/LootGenerator.ts
# project/src/generators/RepeatableQuestGenerator.ts
# project/src/generators/WeatherGenerator.ts
# project/src/generators/weapongen/InventoryMagGen.ts
# project/src/generators/weapongen/implementations/BarrelInventoryMagGen.ts
# project/src/generators/weapongen/implementations/ExternalInventoryMagGen.ts
# project/src/helpers/AssortHelper.ts
# project/src/helpers/BotGeneratorHelper.ts
# project/src/helpers/InRaidHelper.ts
# project/src/helpers/ProfileHelper.ts
# project/src/helpers/RagfairHelper.ts
# project/src/helpers/RagfairOfferHelper.ts
# project/src/helpers/TraderHelper.ts
# project/src/loaders/ModLoadOrder.ts
# project/src/loaders/PostDBModLoader.ts
# project/src/loaders/PreAkiModLoader.ts
# project/src/models/eft/common/IGlobals.ts
# project/src/models/eft/common/ILocationBase.ts
# project/src/models/eft/common/tables/IBotBase.ts
# project/src/models/eft/common/tables/IProfileTemplate.ts
# project/src/models/eft/common/tables/ITemplateItem.ts
# project/src/models/eft/dialog/IAcceptFriendRequestData.ts
# project/src/models/eft/dialog/IDeleteFriendRequest.ts
# project/src/models/eft/game/IGameConfigResponse.ts
# project/src/models/eft/game/IGameKeepAliveResponse.ts
# project/src/models/eft/game/IGameStartResponse.ts
# project/src/models/eft/match/IJoinMatchResult.ts
# project/src/models/eft/notifier/INotifier.ts
# project/src/models/eft/profile/GetProfileStatusResponseData.ts
# project/src/models/eft/trade/IProcessBuyTradeRequestData.ts
# project/src/models/eft/trade/IProcessSellTradeRequestData.ts
# project/src/models/enums/WildSpawnTypeNumber.ts
# project/src/models/spt/bots/BotGenerationDetails.ts
# project/src/models/spt/config/IBotConfig.ts
# project/src/models/spt/config/IBotDurability.ts
# project/src/models/spt/config/IInRaidConfig.ts
# project/src/models/spt/config/ILocationConfig.ts
# project/src/models/spt/config/IQuestConfig.ts
# project/src/models/spt/config/ISeasonalEventConfig.ts
# project/src/models/spt/server/ILocations.ts
# project/src/models/spt/utils/IUuidGenerator.ts
# project/src/routers/dynamic/BotDynamicRouter.ts
# project/src/routers/dynamic/BundleDynamicRouter.ts
# project/src/routers/dynamic/CustomizationDynamicRouter.ts
# project/src/routers/dynamic/DataDynamicRouter.ts
# project/src/routers/dynamic/HttpDynamicRouter.ts
# project/src/routers/dynamic/InraidDynamicRouter.ts
# project/src/routers/dynamic/LocationDynamicRouter.ts
# project/src/routers/dynamic/NotifierDynamicRouter.ts
# project/src/routers/dynamic/TraderDynamicRouter.ts
# project/src/routers/save_load/InsuranceSaveLoadRouter.ts
# project/src/routers/save_load/ProfileSaveLoadRouter.ts
# project/src/routers/serializers/NotifySerializer.ts
# project/src/routers/static/BotStaticRouter.ts
# project/src/routers/static/BundleStaticRouter.ts
# project/src/routers/static/ClientLogStaticRouter.ts
# project/src/routers/static/CustomizationStaticRouter.ts
# project/src/routers/static/DataStaticRouter.ts
# project/src/routers/static/DialogStaticRouter.ts
# project/src/routers/static/GameStaticRouter.ts
# project/src/routers/static/HealthStaticRouter.ts
# project/src/routers/static/InraidStaticRouter.ts
# project/src/routers/static/InsuranceStaticRouter.ts
# project/src/routers/static/ItemEventStaticRouter.ts
# project/src/routers/static/LauncherStaticRouter.ts
# project/src/routers/static/LocationStaticRouter.ts
# project/src/routers/static/MatchStaticRouter.ts
# project/src/routers/static/NotifierStaticRouter.ts
# project/src/routers/static/PresetStaticRouter.ts
# project/src/routers/static/ProfileStaticRouter.ts
# project/src/routers/static/QuestStaticRouter.ts
# project/src/routers/static/RagfairStaticRouter.ts
# project/src/routers/static/TraderStaticRouter.ts
# project/src/routers/static/WeatherStaticRouter.ts
# project/src/services/BotEquipmentFilterService.ts
# project/src/services/BotGenerationCacheService.ts
# project/src/services/BotWeaponModLimitService.ts
# project/src/services/PaymentService.ts
# project/src/services/ProfileFixerService.ts
# project/src/services/RagfairOfferService.ts
# project/src/services/RagfairTaxService.ts
# project/src/services/RepairService.ts
# project/src/services/SeasonalEventService.ts
# project/src/utils/RagfairOfferHolder.ts
# project/src/utils/TimeUtil.ts
# project/src/utils/UUidGenerator.ts
# project/src/utils/VFS.ts
# project/src/utils/collections/queue/Queue.ts
# project/src/utils/logging/AbstractWinstonLogger.ts
# project/src/utils/logging/WinstonMainLogger.ts
# project/src/utils/logging/WinstonRequestLogger.ts
# project/tests/utils/TimeUtil.test.ts
Manually resolved by Refringe.
2023-11-16 23:35:11 -05:00
Refringe
4ac12ef70a
Formatting/Linting Changes ( !168 )
...
These are the formatting & linting configuration changes from the `3.8.0` branch and the changes that they make to the overall project.
The majority of these changes are from running two commands:
`npm run lint:fix`
`npm run style:fix`
This has already been run on the `3.8.0` branch and this PR should make `master` play nicer when it comes to merges going forward.
There are now four VSCode plugins recommended for server development. They've been added to the workspace file and a user should get a UI notification when the workspace is opened if they're not installed.
The four plugins are:
https://marketplace.visualstudio.com/items?itemName=EditorConfig.EditorConfig
https://marketplace.visualstudio.com/items?itemName=dprint.dprint
https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint
https://marketplace.visualstudio.com/items?itemName=biomejs.biome
Once installed they should just work within the workspace.
Also, be sure to `npm i` to get the new dprint application.
Co-authored-by: Refringe <brownelltyler@gmail.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/168
2023-11-16 21:42:06 +00:00
Refringe
00be492d5e
Resolves ESLint Naming Convention Issues
2023-11-16 10:09:01 -05:00
Dev
b70474133b
Fix multiple locations in code where an array for hideout areas is incorrectly accessed like a dictionary
2023-11-16 14:33:39 +00:00
Dev
fce724b380
Fix water collector craft not resetting after completion of craft
2023-11-16 12:55:57 +00:00
Dev
925d9b3f07
Add fence rep gain on taking COOP extract
...
Refactored fence rep handling code for Car extracts
2023-11-16 11:38:55 +00:00
Refringe
8066eb942e
Merge branch 'fix/linting-errors' into 3.8.0
...
# Conflicts:
# project/src/callbacks/DataCallbacks.ts
# project/src/callbacks/DialogueCallbacks.ts
# project/src/callbacks/GameCallbacks.ts
# project/src/callbacks/HandbookCallbacks.ts
# project/src/callbacks/HealthCallbacks.ts
# project/src/callbacks/HttpCallbacks.ts
# project/src/callbacks/InventoryCallbacks.ts
# project/src/callbacks/LauncherCallbacks.ts
# project/src/callbacks/ModCallbacks.ts
# project/src/callbacks/PresetCallbacks.ts
# project/src/callbacks/TraderCallbacks.ts
# project/src/context/ApplicationContext.ts
# project/src/context/ContextVariableType.ts
# project/src/controllers/BotController.ts
# project/src/controllers/CustomizationController.ts
# project/src/controllers/DialogueController.ts
# project/src/controllers/GameController.ts
# project/src/controllers/HideoutController.ts
# project/src/controllers/InraidController.ts
# project/src/controllers/InsuranceController.ts
# project/src/controllers/InventoryController.ts
# project/src/controllers/LauncherController.ts
# project/src/controllers/LocationController.ts
# project/src/controllers/QuestController.ts
# project/src/controllers/RagfairController.ts
# project/src/controllers/RepeatableQuestController.ts
# project/src/controllers/TradeController.ts
# project/src/di/Container.ts
# project/src/di/Router.ts
# project/src/generators/BotEquipmentModGenerator.ts
# project/src/generators/BotGenerator.ts
# project/src/generators/BotWeaponGenerator.ts
# project/src/generators/LocationGenerator.ts
# project/src/generators/LootGenerator.ts
# project/src/generators/RepeatableQuestGenerator.ts
# project/src/generators/WeatherGenerator.ts
# project/src/generators/weapongen/InventoryMagGen.ts
# project/src/generators/weapongen/implementations/BarrelInventoryMagGen.ts
# project/src/generators/weapongen/implementations/ExternalInventoryMagGen.ts
# project/src/helpers/AssortHelper.ts
# project/src/helpers/BotGeneratorHelper.ts
# project/src/helpers/HttpServerHelper.ts
# project/src/helpers/InRaidHelper.ts
# project/src/helpers/TradeHelper.ts
# project/src/helpers/TraderHelper.ts
# project/src/loaders/PostDBModLoader.ts
# project/src/loaders/PreAkiModLoader.ts
# project/src/models/eft/common/tables/IProfileTemplate.ts
# project/src/models/eft/common/tables/ITemplateItem.ts
# project/src/models/eft/dialog/IAcceptFriendRequestData.ts
# project/src/models/eft/dialog/IDeleteFriendRequest.ts
# project/src/models/eft/game/IGameConfigResponse.ts
# project/src/models/eft/game/IGameKeepAliveResponse.ts
# project/src/models/eft/game/IGameStartResponse.ts
# project/src/models/eft/match/IJoinMatchResult.ts
# project/src/models/eft/notifier/INotifier.ts
# project/src/models/eft/profile/GetProfileStatusResponseData.ts
# project/src/models/eft/trade/IProcessSellTradeRequestData.ts
# project/src/models/external/HttpFramework.ts
# project/src/models/external/tsyringe.ts
# project/src/models/spt/config/ILocationConfig.ts
# project/src/models/spt/server/ILocations.ts
# project/src/routers/dynamic/BundleDynamicRouter.ts
# project/src/routers/dynamic/DataDynamicRouter.ts
# project/src/routers/dynamic/HttpDynamicRouter.ts
# project/src/routers/dynamic/NotifierDynamicRouter.ts
# project/src/routers/save_load/HealthSaveLoadRouter.ts
# project/src/routers/save_load/InraidSaveLoadRouter.ts
# project/src/routers/save_load/InsuranceSaveLoadRouter.ts
# project/src/routers/save_load/ProfileSaveLoadRouter.ts
# project/src/routers/static/BundleStaticRouter.ts
# project/src/routers/static/ClientLogStaticRouter.ts
# project/src/routers/static/DataStaticRouter.ts
# project/src/routers/static/DialogStaticRouter.ts
# project/src/routers/static/GameStaticRouter.ts
# project/src/routers/static/HealthStaticRouter.ts
# project/src/routers/static/InraidStaticRouter.ts
# project/src/routers/static/LauncherStaticRouter.ts
# project/src/routers/static/LocationStaticRouter.ts
# project/src/routers/static/MatchStaticRouter.ts
# project/src/routers/static/ProfileStaticRouter.ts
# project/src/routers/static/QuestStaticRouter.ts
# project/src/routers/static/RagfairStaticRouter.ts
# project/src/routers/static/WeatherStaticRouter.ts
# project/src/services/BotGenerationCacheService.ts
# project/src/services/BotLootCacheService.ts
# project/src/services/LocalisationService.ts
# project/src/services/ProfileFixerService.ts
# project/src/services/RagfairOfferService.ts
# project/src/services/RagfairTaxService.ts
# project/src/services/RepairService.ts
# project/src/utils/App.ts
# project/src/utils/DatabaseImporter.ts
# project/src/utils/RagfairOfferHolder.ts
# project/src/utils/collections/queue/Queue.ts
# project/tests/__factories__/ProfileInsurance.factory.ts
# project/tests/controllers/InsuranceController.test.ts
Manually resolved by Refringe
2023-11-15 22:28:43 -05:00
Refringe
622949cd83
Auto-formatting Sweep
2023-11-15 21:12:40 -05:00
Dev
3b053b741b
Allow custom profiles to use localied descriptions
...
Fixed an inconsistently named locale key
Added logger to LauncherController
2023-11-15 11:16:56 +00:00
Dev
c9dc0d2192
Make each trader reward different types of items
...
Prevent trader from rewarding more than 1 weapon
Fixed trader failing to find default weapon to send as reward
2023-11-14 23:05:34 +00:00
Dev
1021a945cb
Fix insurance costing 0 roubles
2023-11-14 11:46:51 +00:00
Refringe
0793df60c2
Formatting Change - Space is now given around object properties.
2023-11-13 12:38:16 -05:00
Refringe
32b47bdc18
Formatting Change - When a statement can be moved into a single line and still be under the maximum line length, it is.
2023-11-13 12:31:52 -05:00
Refringe
7533d33358
Formatting Change - Operator positions are now at the start of the next line (for multi-line statements).
2023-11-13 12:29:16 -05:00
Dev
206f0d672d
Merge branch 'master' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.8.0
...
# Conflicts:
# project/assets/configs/core.json
2023-11-13 17:06:19 +00:00
Refringe
ce45862e75
Favours dot object notation whenever possible.
2023-11-13 11:51:02 -05:00