Commit Graph

1209 Commits

Author SHA1 Message Date
Dev
ba2666f801 Set production property to null when no updates are to be sent to the client 2023-11-17 11:13:14 +00:00
Dev
2f122df9f6 Update SPTUSEC and SPTBEAR values 2023-11-17 09:18:30 +00:00
Refringe
5d2af422cb
Fixes InsuranceController Tests 2023-11-16 23:55:32 -05: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
083a2a798e Removes Old Jest Tests (!169)
These should not be used. Branch `3.8.0` has newer Vitest tests configured.

Co-authored-by: Refringe <brownelltyler@gmail.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/169
2023-11-16 22:12:51 +00: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
Dev
ba443ca9a9 Fix bot generation error when crazyAssaultEvent spawns 2023-11-16 18:43:22 +00:00
Refringe
50f8a84f5c
Rewrites a number of filter().reduce() calls to use more straight-forward for...of loop. 2023-11-16 10:18:11 -05:00
Refringe
f6ba864ea8
Removes unnecessary constructor. 2023-11-16 10:16:20 -05:00
Refringe
a4d2013ff6
Converts forEach loop to for...of loop 2023-11-16 10:15:52 -05:00
Refringe
be841a3de3
Resolves Type Issue in ProfileFixerService
When attempting to access a property/type that *shouldn't* exist (on purpose) it has to be cast to the type manually, else annoying type error.
2023-11-16 10:11:31 -05:00
Refringe
00be492d5e
Resolves ESLint Naming Convention Issues 2023-11-16 10:09:01 -05:00
Refringe
0ac9e147cb
Resolved post-conflict syntax errors. Sorry! 2023-11-16 10:07:46 -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
15082afde2 Fix reorderHideoutAreasWithResouceInputs() off by one error because it was checking the index instead of finding the area type 2023-11-16 14:30:08 +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
Refringe
f283a2e6a3
Pre-merge Formatting Updates
These are the basic config changes that enable auto-formatting. This is being run directly within this branch to prevent a plethora of merge conflicts when `fix/linting-errors` is merged into this branch.
2023-11-15 20:33:45 -05:00
Dev
467c87b026 Fix trader repair not costing any money 2023-11-15 20:17:24 +00:00
Dev
54a81b87d6 First pass at improving accuracy of daily quest xp and rouble rewards 2023-11-15 19:46:39 +00:00
Dev
6dddeed6a8 Add 25% chance to double daily reward stack (item should be stackable and not weapon) 2023-11-15 19:43:35 +00:00
Dev
95ae543d7a Fix typo 2023-11-15 11:21:33 +00: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
fcb1e2c2f3 Adjust sanitar+sanitarFollower to have more live-accurate generation values 2023-11-15 09:25:03 +00:00
Dev
8cda48cac7 Get a more accurate price for weapon preset rewards 2023-11-14 23:12:50 +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
cd36e3993d When rewarding a weapon for a repeatable quest, choose a random default preset if the chosen weapon has no defaults 2023-11-14 21:43:37 +00:00
Dev
70637679a0 Update boss spawn locations for killa, Reshala and gluhar 2023-11-14 19:25:02 +00:00
Dev
dfe8e08db6 lint gift file 2023-11-14 18:46:57 +00:00
Dev
27b7386074 Add TarkovTalk promo codes 2023-11-14 18:46:22 +00:00
Dev
909d79f415 Remove unnecessary removeMapAccessKey() method, now handled in client 2023-11-14 17:34:44 +00:00
Dev
bb8677bc65 Rework payMoney() to handle taking money from post-raid therapist healing 2023-11-14 17:06:11 +00:00
Dev
844cb12cc1 If offer to remove is not found, don't reduce rep loss 2023-11-14 16:09:45 +00:00
Dev
f0358f5241 Added missing locale with key ragfair-unable_to_find_offer_to_remove 2023-11-14 15:33: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
2b826f8b1e
Conditional Code Adjustments Re:Biome
When multiple falsey conditions are being checked Biome recommends to check for all the truthy conditions negated. Logic remains untouched, while only using one negation. Apparently easier to comprehend.
2023-11-13 12:00:49 -05:00
Refringe
11b5c76512
Favours single line variable declarations. 2023-11-13 11:51:52 -05:00
Refringe
ce45862e75
Favours dot object notation whenever possible. 2023-11-13 11:51:02 -05:00
Refringe
e709b6c111
Reformatted imports with (only) Biome. 2023-11-13 11:43:37 -05:00
Refringe
33c3dd48e4
Disables dprint import/export sorting & adds a fix option for the linting errors. 2023-11-13 11:37:49 -05:00
Refringe
4479f68388
Formatting for utils. 2023-11-13 11:14:58 -05:00
Refringe
8576929404
Formatting for services. 2023-11-13 11:13:25 -05:00
Refringe
ca9ab9bcc8
Formatting for servers. 2023-11-13 11:12:51 -05:00
Refringe
b90fb8c8b9
Formatting for routers. 2023-11-13 11:12:17 -05:00