From c43ccd8dc4811dae8eb9005d2e7249e82e8de3e7 Mon Sep 17 00:00:00 2001 From: Alejandro Date: Sat, 9 Jul 2022 19:27:30 +0100 Subject: [PATCH] 3.1.x mod examples update --- TypeScript/10ScopesAndTypes/package.json | 2 +- TypeScript/10ScopesAndTypes/src/mod.ts | 10 +-- .../types/callbacks/GameCallbacks.d.ts | 2 + .../types/callbacks/HealthCallbacks.d.ts | 7 ++ .../types/callbacks/InsuranceCallbacks.d.ts | 3 +- .../types/callbacks/MatchCallbacks.d.ts | 16 +++-- .../types/callbacks/ModCallbacks.d.ts | 6 +- .../types/callbacks/ProfileCallbacks.d.ts | 10 ++- .../types/callbacks/RagfairCallbacks.d.ts | 3 +- .../types/controllers/GameController.d.ts | 5 ++ .../controllers/InsuranceController.d.ts | 9 ++- .../controllers/InventoryController.d.ts | 18 +++++- .../types/controllers/MatchController.d.ts | 9 ++- .../types/controllers/RagfairController.d.ts | 2 + .../types/generators/BotWeaponGenerator.d.ts | 7 ++ .../generators/RagfairOfferGenerator.d.ts | 4 +- .../types/helpers/BotGeneratorHelper.d.ts | 12 ++++ .../types/loaders/PostAkiModLoader.d.ts} | 8 +-- ...rDbModLoader.d.ts => PostDBModLoader.d.ts} | 8 +-- .../types/loaders/PreAkiModLoader.d.ts} | 4 +- .../types/models/eft/common/IGlobals.d.ts | 5 +- .../models/eft/common/ILocationBase.d.ts | 9 ++- .../types/models/eft/common/IPmcData.d.ts | 22 ++++--- .../eft/common/tables/IProfileTemplate.d.ts | 23 +++++++ .../models/eft/common/tables/IQuest.d.ts | 2 + .../eft/common/tables/ITemplateItem.d.ts | 6 +- .../eft/game/IReportNicknameRequestData.d.ts | 3 + .../IGetInsuranceCostResponseData.d.ts | 1 + .../eft/match/IGetGroupStatusRequestData.d.ts | 8 +++ .../eft/match/IJoinMatchRequestData.d.ts | 12 ++++ .../models/eft/match/IJoinMatchResult.d.ts | 11 ++++ .../match/IStartOffineRaidRequestData.d.ts | 1 - .../profile/GetProfileStatusResponseData.d.ts | 11 ++++ .../models/eft/ragfair/IGetOffersResult.d.ts | 2 +- .../types/models/enums/QuestStatus.d.ts | 10 --- .../models/external/IAfterDBLoadMod.d.ts | 4 -- .../models/external/IPostAkiLoadMod.d.ts | 4 ++ .../types/models/external/IPostDBLoadMod.d.ts | 4 ++ .../types/models/external/IPreAkiLoadMod.d.ts | 4 ++ .../types/models/external/mod.d.ts | 5 -- .../types/models/spt/config/IBotConfig.d.ts | 3 + .../models/spt/config/IRagfairConfig.d.ts | 1 + .../models/spt/server/IDatabaseTables.d.ts | 6 +- .../types/servers/RagfairServer.d.ts | 3 +- .../services/RagfairCategoriesService.d.ts | 42 ++++++++++-- .../types/services/RagfairOfferService.d.ts | 10 ++- .../types/services/RagfairPriceService.d.ts | 14 ++++ .../types/utils/Watermark.d.ts | 7 +- TypeScript/11BundleLoadingSample/package.json | 2 +- TypeScript/11BundleLoadingSample/src/mod.ts | 11 +--- .../types/callbacks/GameCallbacks.d.ts | 2 + .../types/callbacks/HealthCallbacks.d.ts | 7 ++ .../types/callbacks/InsuranceCallbacks.d.ts | 3 +- .../types/callbacks/MatchCallbacks.d.ts | 16 +++-- .../types/callbacks/ModCallbacks.d.ts | 6 +- .../types/callbacks/ProfileCallbacks.d.ts | 10 ++- .../types/callbacks/RagfairCallbacks.d.ts | 3 +- .../types/controllers/GameController.d.ts | 5 ++ .../controllers/InsuranceController.d.ts | 9 ++- .../controllers/InventoryController.d.ts | 18 +++++- .../types/controllers/MatchController.d.ts | 9 ++- .../types/controllers/RagfairController.d.ts | 2 + .../types/generators/BotWeaponGenerator.d.ts | 7 ++ .../generators/RagfairOfferGenerator.d.ts | 4 +- .../types/helpers/BotGeneratorHelper.d.ts | 12 ++++ .../types/loaders/PostAkiModLoader.d.ts} | 8 +-- ...rDbModLoader.d.ts => PostDBModLoader.d.ts} | 8 +-- .../types/loaders/PreAkiModLoader.d.ts} | 4 +- .../types/models/eft/common/IGlobals.d.ts | 5 +- .../models/eft/common/ILocationBase.d.ts | 9 ++- .../types/models/eft/common/IPmcData.d.ts | 22 ++++--- .../eft/common/tables/IProfileTemplate.d.ts | 23 +++++++ .../models/eft/common/tables/IQuest.d.ts | 2 + .../eft/common/tables/ITemplateItem.d.ts | 6 +- .../eft/game/IReportNicknameRequestData.d.ts | 3 + .../IGetInsuranceCostResponseData.d.ts | 1 + .../eft/match/IGetGroupStatusRequestData.d.ts | 8 +++ .../eft/match/IJoinMatchRequestData.d.ts | 12 ++++ .../models/eft/match/IJoinMatchResult.d.ts | 11 ++++ .../match/IStartOffineRaidRequestData.d.ts | 1 - .../profile/GetProfileStatusResponseData.d.ts | 11 ++++ .../models/eft/ragfair/IGetOffersResult.d.ts | 2 +- .../types/models/enums/QuestStatus.d.ts | 10 --- .../models/external/IAfterDBLoadMod.d.ts | 4 -- .../models/external/IPostAkiLoadMod.d.ts | 4 ++ .../types/models/external/IPostDBLoadMod.d.ts | 4 ++ .../types/models/external/IPreAkiLoadMod.d.ts | 4 ++ .../types/models/external/mod.d.ts | 5 -- .../types/models/spt/config/IBotConfig.d.ts | 3 + .../models/spt/config/IRagfairConfig.d.ts | 1 + .../models/spt/server/IDatabaseTables.d.ts | 6 +- .../types/servers/RagfairServer.d.ts | 3 +- .../services/RagfairCategoriesService.d.ts | 42 ++++++++++-- .../types/services/RagfairOfferService.d.ts | 10 ++- .../types/services/RagfairPriceService.d.ts | 14 ++++ .../types/utils/Watermark.d.ts | 7 +- .../12ClassExtensionOverride/package.json | 2 +- .../src/MyCustomLauncherCallbacks.ts | 4 +- .../12ClassExtensionOverride/src/mod.ts | 15 ++--- .../types/callbacks/GameCallbacks.d.ts | 2 + .../types/callbacks/HealthCallbacks.d.ts | 7 ++ .../types/callbacks/InsuranceCallbacks.d.ts | 3 +- .../types/callbacks/MatchCallbacks.d.ts | 16 +++-- .../types/callbacks/ModCallbacks.d.ts | 6 +- .../types/callbacks/ProfileCallbacks.d.ts | 10 ++- .../types/callbacks/RagfairCallbacks.d.ts | 3 +- .../types/controllers/GameController.d.ts | 5 ++ .../controllers/InsuranceController.d.ts | 9 ++- .../controllers/InventoryController.d.ts | 18 +++++- .../types/controllers/MatchController.d.ts | 9 ++- .../types/controllers/RagfairController.d.ts | 2 + .../types/generators/BotWeaponGenerator.d.ts | 7 ++ .../generators/RagfairOfferGenerator.d.ts | 4 +- .../types/helpers/BotGeneratorHelper.d.ts | 12 ++++ ...edModLoader.d.ts => PostAkiModLoader.d.ts} | 8 +-- ...rDbModLoader.d.ts => PostDBModLoader.d.ts} | 8 +-- .../types/loaders/PreAkiModLoader.d.ts} | 4 +- .../types/models/eft/common/IGlobals.d.ts | 5 +- .../models/eft/common/ILocationBase.d.ts | 9 ++- .../types/models/eft/common/IPmcData.d.ts | 22 ++++--- .../eft/common/tables/IProfileTemplate.d.ts | 23 +++++++ .../models/eft/common/tables/IQuest.d.ts | 2 + .../eft/common/tables/ITemplateItem.d.ts | 6 +- .../eft/game/IReportNicknameRequestData.d.ts | 3 + .../IGetInsuranceCostResponseData.d.ts | 1 + .../eft/match/IGetGroupStatusRequestData.d.ts | 8 +++ .../eft/match/IJoinMatchRequestData.d.ts | 12 ++++ .../models/eft/match/IJoinMatchResult.d.ts | 11 ++++ .../match/IStartOffineRaidRequestData.d.ts | 1 - .../profile/GetProfileStatusResponseData.d.ts | 11 ++++ .../models/eft/ragfair/IGetOffersResult.d.ts | 2 +- .../types/models/enums/QuestStatus.d.ts | 10 --- .../models/external/IAfterDBLoadMod.d.ts | 4 -- .../models/external/IPostAkiLoadMod.d.ts | 4 ++ .../types/models/external/IPostDBLoadMod.d.ts | 4 ++ .../types/models/external/IPreAkiLoadMod.d.ts | 4 ++ .../types/models/external/mod.d.ts | 5 -- .../types/models/spt/config/IBotConfig.d.ts | 3 + .../models/spt/config/IRagfairConfig.d.ts | 1 + .../models/spt/server/IDatabaseTables.d.ts | 6 +- .../types/servers/RagfairServer.d.ts | 3 +- .../services/RagfairCategoriesService.d.ts | 42 ++++++++++-- .../types/services/RagfairOfferService.d.ts | 10 ++- .../types/services/RagfairPriceService.d.ts | 14 ++++ .../types/utils/Watermark.d.ts | 7 +- TypeScript/13AddTrader/package.json | 2 +- TypeScript/13AddTrader/src/mod.ts | 25 ++++---- .../types/callbacks/GameCallbacks.d.ts | 2 + .../types/callbacks/HealthCallbacks.d.ts | 7 ++ .../types/callbacks/InsuranceCallbacks.d.ts | 3 +- .../types/callbacks/MatchCallbacks.d.ts | 16 +++-- .../types/callbacks/ModCallbacks.d.ts | 6 +- .../types/callbacks/ProfileCallbacks.d.ts | 10 ++- .../types/callbacks/RagfairCallbacks.d.ts | 3 +- .../types/controllers/GameController.d.ts | 5 ++ .../controllers/InsuranceController.d.ts | 9 ++- .../controllers/InventoryController.d.ts | 18 +++++- .../types/controllers/MatchController.d.ts | 9 ++- .../types/controllers/RagfairController.d.ts | 2 + .../types/generators/BotWeaponGenerator.d.ts | 7 ++ .../generators/RagfairOfferGenerator.d.ts | 4 +- .../types/helpers/BotGeneratorHelper.d.ts | 12 ++++ ...edModLoader.d.ts => PostAkiModLoader.d.ts} | 8 +-- ...rDbModLoader.d.ts => PostDBModLoader.d.ts} | 8 +-- ...ialModLoader.d.ts => PreAkiModLoader.d.ts} | 4 +- .../types/models/eft/common/IGlobals.d.ts | 5 +- .../models/eft/common/ILocationBase.d.ts | 9 ++- .../types/models/eft/common/IPmcData.d.ts | 22 ++++--- .../eft/common/tables/IProfileTemplate.d.ts | 23 +++++++ .../models/eft/common/tables/IQuest.d.ts | 2 + .../eft/common/tables/ITemplateItem.d.ts | 6 +- .../eft/game/IReportNicknameRequestData.d.ts | 3 + .../IGetInsuranceCostResponseData.d.ts | 1 + .../eft/match/IGetGroupStatusRequestData.d.ts | 8 +++ .../eft/match/IJoinMatchRequestData.d.ts | 12 ++++ .../models/eft/match/IJoinMatchResult.d.ts | 11 ++++ .../match/IStartOffineRaidRequestData.d.ts | 1 - .../profile/GetProfileStatusResponseData.d.ts | 11 ++++ .../models/eft/ragfair/IGetOffersResult.d.ts | 2 +- .../types/models/enums/QuestStatus.d.ts | 10 --- .../models/external/IAfterDBLoadMod.d.ts | 4 -- .../models/external/IPostAkiLoadMod.d.ts | 4 ++ .../types/models/external/IPostDBLoadMod.d.ts | 4 ++ .../types/models/external/IPreAkiLoadMod.d.ts | 4 ++ .../types/models/external/mod.d.ts | 5 -- .../types/models/spt/config/IBotConfig.d.ts | 3 + .../models/spt/config/IRagfairConfig.d.ts | 1 + .../models/spt/server/IDatabaseTables.d.ts | 6 +- .../types/servers/RagfairServer.d.ts | 3 +- .../services/RagfairCategoriesService.d.ts | 42 ++++++++++-- .../types/services/RagfairOfferService.d.ts | 10 ++- .../types/services/RagfairPriceService.d.ts | 14 ++++ .../13AddTrader/types/utils/Watermark.d.ts | 7 +- TypeScript/14AfterDBLoadHook/package.json | 2 +- TypeScript/14AfterDBLoadHook/src/mod.js | 37 ----------- TypeScript/14AfterDBLoadHook/src/mod.ts | 22 +++---- .../types/callbacks/GameCallbacks.d.ts | 2 + .../types/callbacks/HealthCallbacks.d.ts | 7 ++ .../types/callbacks/InsuranceCallbacks.d.ts | 3 +- .../types/callbacks/MatchCallbacks.d.ts | 16 +++-- .../types/callbacks/ModCallbacks.d.ts | 6 +- .../types/callbacks/ProfileCallbacks.d.ts | 10 ++- .../types/callbacks/RagfairCallbacks.d.ts | 3 +- .../types/controllers/GameController.d.ts | 5 ++ .../controllers/InsuranceController.d.ts | 9 ++- .../controllers/InventoryController.d.ts | 18 +++++- .../types/controllers/MatchController.d.ts | 9 ++- .../types/controllers/RagfairController.d.ts | 2 + .../types/generators/BotWeaponGenerator.d.ts | 7 ++ .../generators/RagfairOfferGenerator.d.ts | 4 +- .../types/helpers/BotGeneratorHelper.d.ts | 12 ++++ .../types/loaders/AfterDbModLoader.d.ts | 11 ---- .../types/loaders/DelayedModLoader.d.ts | 21 ------ .../types/loaders/InitialModLoader.d.ts | 64 ------------------- .../types/loaders/PostAkiModLoader.d.ts | 21 ++++++ .../types/loaders/PostDBModLoader.d.ts | 11 ++++ .../types/loaders/PreAkiModLoader.d.ts | 64 +++++++++++++++++++ .../types/models/eft/common/IGlobals.d.ts | 5 +- .../models/eft/common/ILocationBase.d.ts | 9 ++- .../types/models/eft/common/IPmcData.d.ts | 22 ++++--- .../eft/common/tables/IProfileTemplate.d.ts | 23 +++++++ .../models/eft/common/tables/IQuest.d.ts | 2 + .../eft/common/tables/ITemplateItem.d.ts | 6 +- .../eft/game/IReportNicknameRequestData.d.ts | 3 + .../IGetInsuranceCostResponseData.d.ts | 1 + .../eft/match/IGetGroupStatusRequestData.d.ts | 8 +++ .../eft/match/IJoinMatchRequestData.d.ts | 12 ++++ .../models/eft/match/IJoinMatchResult.d.ts | 11 ++++ .../match/IStartOffineRaidRequestData.d.ts | 1 - .../profile/GetProfileStatusResponseData.d.ts | 11 ++++ .../models/eft/ragfair/IGetOffersResult.d.ts | 2 +- .../types/models/enums/QuestStatus.d.ts | 10 --- .../models/external/IAfterDBLoadMod.d.ts | 4 -- .../models/external/IPostAkiLoadMod.d.ts | 4 ++ .../types/models/external/IPostDBLoadMod.d.ts | 4 ++ .../types/models/external/IPreAkiLoadMod.d.ts | 4 ++ .../types/models/external/mod.d.ts | 5 -- .../types/models/spt/config/IBotConfig.d.ts | 3 + .../models/spt/config/IRagfairConfig.d.ts | 1 + .../models/spt/server/IDatabaseTables.d.ts | 6 +- .../types/servers/RagfairServer.d.ts | 3 +- .../services/RagfairCategoriesService.d.ts | 42 ++++++++++-- .../types/services/RagfairOfferService.d.ts | 10 ++- .../types/services/RagfairPriceService.d.ts | 14 ++++ .../types/utils/Watermark.d.ts | 7 +- TypeScript/1LogToConsole/package.json | 2 +- TypeScript/1LogToConsole/src/mod.ts | 17 ++--- .../types/callbacks/GameCallbacks.d.ts | 2 + .../types/callbacks/HealthCallbacks.d.ts | 7 ++ .../types/callbacks/InsuranceCallbacks.d.ts | 3 +- .../types/callbacks/MatchCallbacks.d.ts | 16 +++-- .../types/callbacks/ModCallbacks.d.ts | 6 +- .../types/callbacks/ProfileCallbacks.d.ts | 10 ++- .../types/callbacks/RagfairCallbacks.d.ts | 3 +- .../types/controllers/GameController.d.ts | 5 ++ .../controllers/InsuranceController.d.ts | 9 ++- .../controllers/InventoryController.d.ts | 18 +++++- .../types/controllers/MatchController.d.ts | 9 ++- .../types/controllers/RagfairController.d.ts | 2 + .../types/generators/BotWeaponGenerator.d.ts | 7 ++ .../generators/RagfairOfferGenerator.d.ts | 4 +- .../types/helpers/BotGeneratorHelper.d.ts | 12 ++++ .../types/loaders/AfterDbModLoader.d.ts | 11 ---- .../types/loaders/DelayedModLoader.d.ts | 21 ------ .../types/loaders/InitialModLoader.d.ts | 64 ------------------- .../types/loaders/PostAkiModLoader.d.ts | 21 ++++++ .../types/loaders/PostDBModLoader.d.ts | 11 ++++ .../types/loaders/PreAkiModLoader.d.ts | 64 +++++++++++++++++++ .../types/models/eft/common/IGlobals.d.ts | 5 +- .../models/eft/common/ILocationBase.d.ts | 9 ++- .../types/models/eft/common/IPmcData.d.ts | 22 ++++--- .../eft/common/tables/IProfileTemplate.d.ts | 23 +++++++ .../models/eft/common/tables/IQuest.d.ts | 2 + .../eft/common/tables/ITemplateItem.d.ts | 6 +- .../eft/game/IReportNicknameRequestData.d.ts | 3 + .../IGetInsuranceCostResponseData.d.ts | 1 + .../eft/match/IGetGroupStatusRequestData.d.ts | 8 +++ .../eft/match/IJoinMatchRequestData.d.ts | 12 ++++ .../models/eft/match/IJoinMatchResult.d.ts | 11 ++++ .../match/IStartOffineRaidRequestData.d.ts | 1 - .../profile/GetProfileStatusResponseData.d.ts | 11 ++++ .../models/eft/ragfair/IGetOffersResult.d.ts | 2 +- .../types/models/enums/QuestStatus.d.ts | 10 --- .../models/external/IAfterDBLoadMod.d.ts | 4 -- .../models/external/IPostAkiLoadMod.d.ts | 4 ++ .../types/models/external/IPostDBLoadMod.d.ts | 4 ++ .../types/models/external/IPreAkiLoadMod.d.ts | 4 ++ .../types/models/external/mod.d.ts | 5 -- .../types/models/spt/config/IBotConfig.d.ts | 3 + .../models/spt/config/IRagfairConfig.d.ts | 1 + .../models/spt/server/IDatabaseTables.d.ts | 6 +- .../types/servers/RagfairServer.d.ts | 3 +- .../services/RagfairCategoriesService.d.ts | 42 ++++++++++-- .../types/services/RagfairOfferService.d.ts | 10 ++- .../types/services/RagfairPriceService.d.ts | 14 ++++ .../1LogToConsole/types/utils/Watermark.d.ts | 7 +- TypeScript/2EditDatabase/package.json | 2 +- TypeScript/2EditDatabase/src/mod.ts | 15 +---- .../types/callbacks/GameCallbacks.d.ts | 2 + .../types/callbacks/HealthCallbacks.d.ts | 7 ++ .../types/callbacks/InsuranceCallbacks.d.ts | 3 +- .../types/callbacks/MatchCallbacks.d.ts | 16 +++-- .../types/callbacks/ModCallbacks.d.ts | 6 +- .../types/callbacks/ProfileCallbacks.d.ts | 10 ++- .../types/callbacks/RagfairCallbacks.d.ts | 3 +- .../types/controllers/GameController.d.ts | 5 ++ .../controllers/InsuranceController.d.ts | 9 ++- .../controllers/InventoryController.d.ts | 18 +++++- .../types/controllers/MatchController.d.ts | 9 ++- .../types/controllers/RagfairController.d.ts | 2 + .../types/generators/BotWeaponGenerator.d.ts | 7 ++ .../generators/RagfairOfferGenerator.d.ts | 4 +- .../types/helpers/BotGeneratorHelper.d.ts | 12 ++++ .../types/loaders/AfterDbModLoader.d.ts | 11 ---- .../types/loaders/DelayedModLoader.d.ts | 21 ------ .../types/loaders/InitialModLoader.d.ts | 64 ------------------- .../types/loaders/PostAkiModLoader.d.ts | 21 ++++++ .../types/loaders/PostDBModLoader.d.ts | 11 ++++ .../types/loaders/PreAkiModLoader.d.ts | 64 +++++++++++++++++++ .../types/models/eft/common/IGlobals.d.ts | 5 +- .../models/eft/common/ILocationBase.d.ts | 9 ++- .../types/models/eft/common/IPmcData.d.ts | 22 ++++--- .../eft/common/tables/IProfileTemplate.d.ts | 23 +++++++ .../models/eft/common/tables/IQuest.d.ts | 2 + .../eft/common/tables/ITemplateItem.d.ts | 6 +- .../eft/game/IReportNicknameRequestData.d.ts | 3 + .../IGetInsuranceCostResponseData.d.ts | 1 + .../eft/match/IGetGroupStatusRequestData.d.ts | 8 +++ .../eft/match/IJoinMatchRequestData.d.ts | 12 ++++ .../models/eft/match/IJoinMatchResult.d.ts | 11 ++++ .../match/IStartOffineRaidRequestData.d.ts | 1 - .../profile/GetProfileStatusResponseData.d.ts | 11 ++++ .../models/eft/ragfair/IGetOffersResult.d.ts | 2 +- .../types/models/enums/QuestStatus.d.ts | 10 --- .../models/external/IAfterDBLoadMod.d.ts | 4 -- .../models/external/IPostAkiLoadMod.d.ts | 4 ++ .../types/models/external/IPostDBLoadMod.d.ts | 4 ++ .../types/models/external/IPreAkiLoadMod.d.ts | 4 ++ .../types/models/external/mod.d.ts | 5 -- .../types/models/spt/config/IBotConfig.d.ts | 3 + .../models/spt/config/IRagfairConfig.d.ts | 1 + .../models/spt/server/IDatabaseTables.d.ts | 6 +- .../types/servers/RagfairServer.d.ts | 3 +- .../services/RagfairCategoriesService.d.ts | 42 ++++++++++-- .../types/services/RagfairOfferService.d.ts | 10 ++- .../types/services/RagfairPriceService.d.ts | 14 ++++ .../2EditDatabase/types/utils/Watermark.d.ts | 7 +- .../types/loaders/AfterDbModLoader.d.ts | 11 ---- .../types/loaders/DelayedModLoader.d.ts | 21 ------ .../types/loaders/InitialModLoader.d.ts | 64 ------------------- .../types/models/enums/QuestStatus.d.ts | 10 --- .../models/external/IAfterDBLoadMod.d.ts | 4 -- .../types/models/external/mod.d.ts | 5 -- .../services/RagfairCategoriesService.d.ts | 10 --- .../.eslintignore | 0 .../.eslintrc.json | 0 .../README.md | 0 .../mod.code-workspace | 0 .../package.json | 2 +- .../src/mod.ts | 11 +--- .../tsconfig.json | 0 .../types/Program.d.ts | 0 .../types/TYPES.d.ts | 0 .../types/callbacks/BotCallbacks.d.ts | 0 .../types/callbacks/BundleCallbacks.d.ts | 0 .../callbacks/CustomizationCallbacks.d.ts | 0 .../types/callbacks/DataCallbacks.d.ts | 0 .../types/callbacks/DialogueCallbacks.d.ts | 0 .../types/callbacks/GameCallbacks.d.ts | 2 + .../types/callbacks/HandbookCallbacks.d.ts | 0 .../types/callbacks/HealthCallbacks.d.ts | 7 ++ .../types/callbacks/HideoutCallbacks.d.ts | 0 .../types/callbacks/HttpCallbacks.d.ts | 0 .../types/callbacks/InraidCallbacks.d.ts | 0 .../types/callbacks/InsuranceCallbacks.d.ts | 3 +- .../types/callbacks/InventoryCallbacks.d.ts | 0 .../types/callbacks/ItemEventCallbacks.d.ts | 0 .../types/callbacks/LauncherCallbacks.d.ts | 0 .../types/callbacks/LocationCallbacks.d.ts | 0 .../types/callbacks/MatchCallbacks.d.ts | 16 +++-- .../types/callbacks/ModCallbacks.d.ts | 6 +- .../types/callbacks/NoteCallbacks.d.ts | 0 .../types/callbacks/NotifierCallbacks.d.ts | 0 .../types/callbacks/PresetBuildCallbacks.d.ts | 0 .../types/callbacks/PresetCallbacks.d.ts | 0 .../types/callbacks/ProfileCallbacks.d.ts | 10 ++- .../types/callbacks/QuestCallbacks.d.ts | 0 .../types/callbacks/RagfairCallbacks.d.ts | 3 +- .../types/callbacks/RepairCallbacks.d.ts | 0 .../types/callbacks/SaveCallbacks.d.ts | 0 .../types/callbacks/TradeCallbacks.d.ts | 0 .../types/callbacks/TraderCallbacks.d.ts | 0 .../types/callbacks/WeatherCallbacks.d.ts | 0 .../types/callbacks/WishlistCallbacks.d.ts | 0 .../types/controllers/BotController.d.ts | 0 .../controllers/CustomizationController.d.ts | 0 .../types/controllers/DialogueController.d.ts | 0 .../types/controllers/GameController.d.ts | 5 ++ .../types/controllers/HandbookController.d.ts | 0 .../types/controllers/HealthController.d.ts | 0 .../types/controllers/HideoutController.d.ts | 0 .../types/controllers/InraidController.d.ts | 0 .../controllers/InsuranceController.d.ts | 9 ++- .../controllers/InventoryController.d.ts | 18 +++++- .../types/controllers/LauncherController.d.ts | 0 .../types/controllers/LocationController.d.ts | 0 .../types/controllers/MatchController.d.ts | 9 ++- .../types/controllers/NoteController.d.ts | 0 .../types/controllers/NotifierController.d.ts | 0 .../controllers/PresetBuildController.d.ts | 0 .../types/controllers/PresetController.d.ts | 0 .../types/controllers/ProfileController.d.ts | 0 .../types/controllers/QuestController.d.ts | 0 .../types/controllers/RagfairController.d.ts | 2 + .../types/controllers/RepairController.d.ts | 0 .../RepeatableQuestController.d.ts | 0 .../types/controllers/TradeController.d.ts | 0 .../types/controllers/TraderController.d.ts | 0 .../types/controllers/WeatherController.d.ts | 0 .../types/controllers/WishlistController.d.ts | 0 .../types/di/Container.d.ts | 0 .../types/di/OnLoad.d.ts | 0 .../types/di/OnLoadOnUpdate.d.ts | 0 .../types/di/OnUpdate.d.ts | 0 .../types/di/Router.d.ts | 0 .../types/di/Serializer.d.ts | 0 .../types/generators/BotGenerator.d.ts | 0 .../generators/BotInventoryGenerator.d.ts | 0 .../types/generators/BotLootGenerator.d.ts | 0 .../types/generators/BotWeaponGenerator.d.ts | 7 ++ .../types/generators/LocationGenerator.d.ts | 0 .../types/generators/PMCLootGenerator.d.ts | 0 .../generators/RagfairAssortGenerator.d.ts | 0 .../generators/RagfairOfferGenerator.d.ts | 4 +- .../types/generators/WeatherGenerator.d.ts | 0 .../types/helpers/AssortHelper.d.ts | 0 .../types/helpers/BotGeneratorHelper.d.ts | 12 ++++ .../types/helpers/BotHelper.d.ts | 0 .../types/helpers/ContainerHelper.d.ts | 0 .../types/helpers/DialogueHelper.d.ts | 0 .../types/helpers/DurabilityLimitsHelper.d.ts | 0 .../types/helpers/ExtendedProfileHelper.d.ts | 0 .../types/helpers/GameEventHelper.d.ts | 0 .../types/helpers/GameHelper.d.ts | 0 .../types/helpers/HandbookHelper.d.ts | 0 .../types/helpers/HealthHelper.d.ts | 0 .../types/helpers/HideoutHelper.d.ts | 0 .../types/helpers/HttpServerHelper.d.ts | 0 .../types/helpers/InRaidHelper.d.ts | 0 .../types/helpers/InventoryHelper.d.ts | 0 .../types/helpers/ItemHelper.d.ts | 0 .../types/helpers/NotificationSendHelper.d.ts | 0 .../types/helpers/NotifierHelper.d.ts | 0 .../types/helpers/PaymentHelper.d.ts | 0 .../types/helpers/PresetHelper.d.ts | 0 .../types/helpers/ProbabilityHelper.d.ts | 0 .../types/helpers/ProfileHelper.d.ts | 0 .../types/helpers/QuestConditionHelper.d.ts | 0 .../types/helpers/QuestHelper.d.ts | 0 .../types/helpers/RagfairHelper.d.ts | 0 .../types/helpers/RagfairOfferHelper.d.ts | 0 .../types/helpers/RagfairSellHelper.d.ts | 0 .../types/helpers/RagfairServerHelper.d.ts | 0 .../types/helpers/RagfairSortHelper.d.ts | 0 .../types/helpers/RagfairTaxHelper.d.ts | 0 .../types/helpers/RepairHelper.d.ts | 0 .../types/helpers/SecureContainerHelper.d.ts | 0 .../types/helpers/TradeHelper.d.ts | 0 .../types/helpers/TraderAssortHelper.d.ts | 0 .../types/helpers/TraderHelper.d.ts | 0 .../types/helpers/UtilityHelper.d.ts | 0 .../types/helpers/WeightedRandomHelper.d.ts | 0 .../types/ide/BleedingEdgeEntry.d.ts | 0 .../types/ide/Compiler.d.ts | 0 .../types/ide/DebugEntry.d.ts | 0 .../types/ide/ReleaseEntry.d.ts | 0 .../types/ide/TestEntry.d.ts | 0 .../types/loaders/BundleLoader.d.ts | 0 .../types/loaders/PostAkiModLoader.d.ts | 21 ++++++ .../types/loaders/PostDBModLoader.d.ts | 11 ++++ .../types/loaders/PreAkiModLoader.d.ts | 64 +++++++++++++++++++ .../eft/bot/IGenerateBotsRequestData.d.ts | 0 .../models/eft/common/IEmptyRequestData.d.ts | 0 .../types/models/eft/common/IGlobals.d.ts | 5 +- .../types/models/eft/common/ILocation.d.ts | 0 .../models/eft/common/ILocationBase.d.ts | 9 ++- .../ILocationsSourceDestinationBase.d.ts | 0 .../types/models/eft/common/ILooseLoot.d.ts | 0 .../models/eft/common/IMetricsTableData.d.ts | 0 .../types/models/eft/common/IPmcData.d.ts | 22 ++++--- .../request/IBaseInteractionRequestData.d.ts | 0 .../models/eft/common/tables/IBotBase.d.ts | 0 .../models/eft/common/tables/IBotCore.d.ts | 0 .../models/eft/common/tables/IBotType.d.ts | 0 .../eft/common/tables/ICustomizationItem.d.ts | 0 .../eft/common/tables/IHandbookBase.d.ts | 0 .../types/models/eft/common/tables/IItem.d.ts | 0 .../eft/common/tables/ILocationsBase.d.ts | 0 .../models/eft/common/tables/ILootBase.d.ts | 0 .../models/eft/common/tables/IMatch.d.ts | 0 .../eft/common/tables/IProfileTemplate.d.ts | 23 +++++++ .../models/eft/common/tables/IQuest.d.ts | 2 + .../eft/common/tables/IRepeatableQuests.d.ts | 0 .../eft/common/tables/ITemplateItem.d.ts | 6 +- .../models/eft/common/tables/ITrader.d.ts | 0 .../IBuyClothingRequestData.d.ts | 0 .../IWearClothingRequestData.d.ts | 0 .../models/eft/dialog/IFriendRequestData.d.ts | 0 .../dialog/IGetAllAttachmentsRequestData.d.ts | 0 .../dialog/IGetAllAttachmentsResponse.d.ts | 0 .../dialog/IGetChatServerListRequestData.d.ts | 0 .../dialog/IGetFriendListDataResponse.d.ts | 0 .../dialog/IGetMailDialogInfoRequestData.d.ts | 0 .../dialog/IGetMailDialogListRequestData.d.ts | 0 .../dialog/IGetMailDialogViewRequestData.d.ts | 0 .../IGetMailDialogViewResponseData.d.ts | 0 .../eft/dialog/IPinDialogRequestData.d.ts | 0 .../eft/dialog/IRemoveDialogRequestData.d.ts | 0 .../eft/dialog/ISendMessageRequest.d.ts | 0 .../eft/dialog/ISetDialogReadRequestData.d.ts | 0 .../models/eft/game/IGameConfigResponse.d.ts | 0 .../eft/game/IGameEmptyCrcRequestData.d.ts | 0 .../eft/game/IReportNicknameRequestData.d.ts | 3 + .../eft/game/IVersionValidateRequestData.d.ts | 0 .../health/IHealthTreatmentRequestData.d.ts | 0 .../eft/health/IOffraidEatRequestData.d.ts | 0 .../eft/health/IOffraidHealRequestData.d.ts | 0 .../eft/health/ISyncHealthRequestData.d.ts | 0 .../HideoutUpgradeCompleteRequestData.d.ts | 0 .../models/eft/hideout/IHideoutArea.d.ts | 0 ...utContinousProductionStartRequestData.d.ts | 0 .../eft/hideout/IHideoutProduction.d.ts | 0 .../hideout/IHideoutPutItemInRequestData.d.ts | 0 .../models/eft/hideout/IHideoutScavCase.d.ts | 0 .../IHideoutScavCaseStartRequestData.d.ts | 0 .../eft/hideout/IHideoutSettingsBase.d.ts | 0 ...deoutSingleProductionStartRequestData.d.ts | 0 .../IHideoutTakeItemOutRequestData.d.ts | 0 .../IHideoutTakeProductionRequestData.d.ts | 0 .../IHideoutToggleAreaRequestData.d.ts | 0 .../IHideoutUpgradeCompleteRequestData.d.ts | 0 .../hideout/IHideoutUpgradeRequestData.d.ts | 0 .../httpResponse/IGetBodyResponseData.d.ts | 0 .../eft/httpResponse/INullResponseData.d.ts | 0 .../inRaid/IRegisterPlayerRequestData.d.ts | 0 .../eft/inRaid/ISaveProgressRequestData.d.ts | 0 .../IGetInsuranceCostRequestData.d.ts | 0 .../IGetInsuranceCostResponseData.d.ts | 1 + .../eft/insurance/IInsureRequestData.d.ts | 0 .../eft/inventory/IAddItemRequestData.d.ts | 0 .../inventory/IInventoryAddRequestData.d.ts | 0 .../IInventoryBaseActionRequestData.d.ts | 0 .../inventory/IInventoryBindRequestData.d.ts | 0 .../IInventoryCreateMarkerRequestData.d.ts | 0 .../IInventoryDeleteMarkerRequestData.d.ts | 0 .../IInventoryEditMarkerRequestData.d.ts | 0 .../IInventoryExamineRequestData.d.ts | 0 .../inventory/IInventoryFoldRequestData.d.ts | 0 .../inventory/IInventoryMergeRequestData.d.ts | 0 .../inventory/IInventoryMoveRequestData.d.ts | 0 ...IInventoryReadEncyclopediaRequestData.d.ts | 0 .../IInventoryRemoveRequestData.d.ts | 0 .../inventory/IInventorySortRequestData.d.ts | 0 .../inventory/IInventorySplitRequestData.d.ts | 0 .../inventory/IInventorySwapRequestData.d.ts | 0 .../inventory/IInventoryTagRequestData.d.ts | 0 .../IInventoryToggleRequestData.d.ts | 0 .../IInventoryTransferRequestData.d.ts | 0 .../IEmptyItemEventRouterResponse.d.ts | 0 .../eft/itemEvent/IItemEventRouterBase.d.ts | 0 .../itemEvent/IItemEventRouterRequest.d.ts | 0 .../itemEvent/IItemEventRouterResponse.d.ts | 0 .../eft/launcher/IChangeRequestData.d.ts | 0 .../launcher/IGetMiniProfileRequestData.d.ts | 0 .../eft/launcher/ILoginRequestData.d.ts | 0 .../models/eft/launcher/IMiniProfile.d.ts | 0 .../models/eft/launcher/IRegisterData.d.ts | 0 .../eft/launcher/IRemoveProfileData.d.ts | 0 .../eft/location/IGetLocationRequestData.d.ts | 0 .../eft/match/IEndOfflineRaidRequestData.d.ts | 0 .../eft/match/IGetGroupStatusRequestData.d.ts | 8 +++ .../eft/match/IGetProfileRequestData.d.ts | 0 .../eft/match/IJoinMatchRequestData.d.ts | 12 ++++ .../models/eft/match/IJoinMatchResult.d.ts | 11 ++++ .../match/IStartOffineRaidRequestData.d.ts | 1 - .../models/eft/notes/INoteActionData.d.ts | 0 .../types/models/eft/notifier/INotifier.d.ts | 0 .../notifier/ISelectProfileRequestData.d.ts | 0 ...IPlayerIncrementSkillLevelRequestData.d.ts | 0 .../IPresetBuildActionRequestData.d.ts | 0 .../profile/GetProfileStatusResponseData.d.ts | 11 ++++ .../types/models/eft/profile/IAkiProfile.d.ts | 0 .../IProfileChangeNicknameRequestData.d.ts | 0 .../IProfileChangeVoiceRequestData.d.ts | 0 .../profile/IProfileCreateRequestData.d.ts | 0 .../eft/profile/ISearchFriendRequestData.d.ts | 0 .../eft/profile/ISearchFriendResponse.d.ts | 0 .../profile/IValidateNicknameRequestData.d.ts | 0 .../eft/quests/IAcceptQuestRequestData.d.ts | 0 .../eft/quests/ICompleteQuestRequestData.d.ts | 0 .../eft/quests/IHandoverQuestRequestData.d.ts | 0 .../eft/quests/IListQuestsRequestData.d.ts | 0 .../quests/IRepeatableQuestChangeRequest.d.ts | 0 .../eft/ragfair/IAddOfferRequestData.d.ts | 0 .../eft/ragfair/IExtendOfferRequestData.d.ts | 0 .../eft/ragfair/IGetItemPriceResult.d.ts | 0 .../ragfair/IGetMarketPriceRequestData.d.ts | 0 .../models/eft/ragfair/IGetOffersResult.d.ts | 2 +- .../models/eft/ragfair/IRagfairOffer.d.ts | 0 .../eft/ragfair/IRemoveOfferRequestData.d.ts | 0 .../eft/ragfair/ISearchRequestData.d.ts | 0 .../repair/IBaseRepairActionDataRequest.d.ts | 0 .../eft/repair/IRepairActionDataRequest.d.ts | 0 .../ITraderRepairActionDataRequest.d.ts | 0 .../trade/IProcessBaseTradeRequestData.d.ts | 0 .../trade/IProcessBuyTradeRequestData.d.ts | 0 .../IProcessRagfairTradeRequestData.d.ts | 0 .../trade/IProcessSellTradeRequestData.d.ts | 0 .../models/eft/weather/IWeatherData.d.ts | 0 .../eft/wishlist/IWishlistActionData.d.ts | 0 .../types/models/enums/BaseClasses.d.ts | 0 .../types/models/enums/ConfigTypes.d.ts | 0 .../types/models/enums/ELocationName.d.ts | 0 .../types/models/enums/EquipmentSlots.d.ts | 0 .../types/models/enums/HideoutAreas.d.ts | 0 .../types/models/enums/MemberCategory.d.ts | 0 .../types/models/enums/MessageType.d.ts | 0 .../types/models/enums/Money.d.ts | 0 .../types/models/enums/Traders.d.ts | 0 .../models/external/IPostAkiLoadMod.d.ts | 4 ++ .../types/models/external/IPostDBLoadMod.d.ts | 4 ++ .../types/models/external/IPreAkiLoadMod.d.ts | 4 ++ .../types/models/external/tsyringe.d.ts | 0 .../types/models/spt/bindings/Route.d.ts | 0 .../models/spt/callbacks/IBotCallbacks.d.ts | 0 .../spt/callbacks/IBundleCallbacks.d.ts | 0 .../callbacks/ICustomizationCallbacks.d.ts | 0 .../models/spt/callbacks/IDataCallbacks.d.ts | 0 .../spt/callbacks/IDialogueCallbacks.d.ts | 0 .../models/spt/callbacks/IGameCallbacks.d.ts | 0 .../spt/callbacks/IHandbookCallbacks.d.ts | 0 .../spt/callbacks/IHealthCallbacks.d.ts | 0 .../spt/callbacks/IHideoutCallbacks.d.ts | 0 .../models/spt/callbacks/IHttpCallbacks.d.ts | 0 .../spt/callbacks/IInraidCallbacks.d.ts | 0 .../spt/callbacks/IInsuranceCallbacks.d.ts | 0 .../spt/callbacks/IInventoryCallbacks.d.ts | 0 .../spt/callbacks/IItemEventCallbacks.d.ts | 0 .../spt/callbacks/ILauncherCallbacks.d.ts | 0 .../spt/callbacks/ILocationCallbacks.d.ts | 0 .../models/spt/callbacks/IMatchCallbacks.d.ts | 0 .../models/spt/callbacks/IModCallbacks.d.ts | 0 .../models/spt/callbacks/INoteCallbacks.d.ts | 0 .../spt/callbacks/INotifierCallbacks.d.ts | 0 .../spt/callbacks/IPresetBuildCallbacks.d.ts | 0 .../spt/callbacks/IPresetCallbacks.d.ts | 0 .../spt/callbacks/IProfileCallbacks.d.ts | 0 .../models/spt/callbacks/IQuestCallbacks.d.ts | 0 .../spt/callbacks/IRagfairCallbacks.d.ts | 0 .../spt/callbacks/IRepairCallbacks.d.ts | 0 .../models/spt/callbacks/ISaveCallbacks.d.ts | 0 .../models/spt/callbacks/ITradeCallbacks.d.ts | 0 .../spt/callbacks/ITraderCallbacks.d.ts | 0 .../spt/callbacks/IWeatherCallbacks.d.ts | 0 .../spt/callbacks/IWishlistCallbacks.d.ts | 0 .../models/spt/config/IAirdropConfig.d.ts | 0 .../types/models/spt/config/IBaseConfig.d.ts | 0 .../types/models/spt/config/IBotConfig.d.ts | 3 + .../types/models/spt/config/ICoreConfig.d.ts | 0 .../models/spt/config/IHealthConfig.d.ts | 0 .../models/spt/config/IHideoutConfig.d.ts | 0 .../types/models/spt/config/IHttpConfig.d.ts | 0 .../models/spt/config/IInRaidConfig.d.ts | 0 .../models/spt/config/IInsuranceConfig.d.ts | 0 .../models/spt/config/IInventoryConfig.d.ts | 0 .../models/spt/config/ILocaleConfig.d.ts | 0 .../models/spt/config/ILocationConfig.d.ts | 0 .../types/models/spt/config/IMatchConfig.d.ts | 0 .../types/models/spt/config/IQuestConfig.d.ts | 0 .../models/spt/config/IRagfairConfig.d.ts | 1 + .../models/spt/config/IRepairConfig.d.ts | 0 .../models/spt/config/ITraderConfig.d.ts | 0 .../models/spt/config/IWeatherConfig.d.ts | 0 .../spt/controllers/IBotController.d.ts | 0 .../models/spt/generators/IBotGenerator.d.ts | 0 .../spt/generators/ILocationGenerator.d.ts | 0 .../spt/generators/IPMCLootGenerator.d.ts | 0 .../generators/IRagfairAssortGenerator.d.ts | 0 .../generators/IRagfairOfferGenerator.d.ts | 0 .../spt/logging/LogBackgroundColor.d.ts | 0 .../models/spt/logging/LogTextColor.d.ts | 0 .../types/models/spt/logging/SptLogger.d.ts | 0 .../types/models/spt/mod/IMod.d.ts | 0 .../types/models/spt/mod/IModLoader.d.ts | 0 .../models/spt/mod/IPackageJsonData.d.ts | 0 .../spt/ragfair/IRagfairServerPrices.d.ts | 0 .../models/spt/server/IDatabaseTables.d.ts | 6 +- .../types/models/spt/server/IHttpServer.d.ts | 0 .../types/models/spt/server/ILocaleBase.d.ts | 0 .../types/models/spt/server/ILocations.d.ts | 0 .../types/models/spt/server/IServerBase.d.ts | 0 .../models/spt/server/ISettingsBase.d.ts | 0 .../models/spt/services/CustomPreset.d.ts | 0 .../spt/services/CustomTraderAssortData.d.ts | 0 .../types/models/spt/utils/IAsyncQueue.d.ts | 0 .../types/models/spt/utils/ICommand.d.ts | 0 .../types/models/spt/utils/ILogger.d.ts | 0 .../models/spt/utils/IUuidGenerator.d.ts | 0 .../types/routers/HttpRouter.d.ts | 0 .../types/routers/ImageRouter.d.ts | 0 .../types/routers/ItemEventRouter.d.ts | 0 .../routers/dynamic/BotDynamicRouter.d.ts | 0 .../routers/dynamic/BundleDynamicRouter.d.ts | 0 .../dynamic/CustomizationDynamicRouter.d.ts | 0 .../routers/dynamic/DataDynamicRouter.d.ts | 0 .../routers/dynamic/HttpDynamicRouter.d.ts | 0 .../routers/dynamic/InraidDynamicRouter.d.ts | 0 .../dynamic/LocationDynamicRouter.d.ts | 0 .../dynamic/NotifierDynamicRouter.d.ts | 0 .../routers/dynamic/TraderDynamicRouter.d.ts | 0 .../CustomizationItemEventRouter.d.ts | 0 .../item_events/HealthItemEventRouter.d.ts | 0 .../item_events/HideoutItemEventRouter.d.ts | 0 .../item_events/InsuranceItemEventRouter.d.ts | 0 .../item_events/InventoryItemEventRouter.d.ts | 0 .../item_events/NoteItemEventRouter.d.ts | 0 .../PresetBuildItemEventRouter.d.ts | 0 .../item_events/QuestItemEventRouter.d.ts | 0 .../item_events/RagfairItemEventRouter.d.ts | 0 .../item_events/RepairItemEventRouter.d.ts | 0 .../item_events/TradeItemEventRouter.d.ts | 0 .../item_events/WishlistItemEventRouter.d.ts | 0 .../save_load/HealthSaveLoadRouter.d.ts | 0 .../save_load/InraidSaveLoadRouter.d.ts | 0 .../save_load/InsuranceSaveLoadRouter.d.ts | 0 .../save_load/ProfileSaveLoadRouter.d.ts | 0 .../routers/serializers/BundleSerializer.d.ts | 0 .../routers/serializers/ImageSerializer.d.ts | 0 .../routers/serializers/NotifySerializer.d.ts | 0 .../types/routers/static/BotStaticRouter.d.ts | 0 .../routers/static/BundleStaticRouter.d.ts | 0 .../static/CustomizationStaticRouter.d.ts | 0 .../routers/static/DataStaticRouter.d.ts | 0 .../routers/static/DialogStaticRouter.d.ts | 0 .../routers/static/GameStaticRouter.d.ts | 0 .../routers/static/HealthStaticRouter.d.ts | 0 .../routers/static/InraidStaticRouter.d.ts | 0 .../routers/static/InsuranceStaticRouter.d.ts | 0 .../routers/static/ItemEventStaticRouter.d.ts | 0 .../routers/static/LauncherStaticRouter.d.ts | 0 .../routers/static/LocationStaticRouter.d.ts | 0 .../routers/static/MatchStaticRouter.d.ts | 0 .../routers/static/NotifierStaticRouter.d.ts | 0 .../routers/static/PresetStaticRouter.d.ts | 0 .../routers/static/ProfileStaticRouter.d.ts | 0 .../routers/static/QuestStaticRouter.d.ts | 0 .../routers/static/RagfairStaticRouter.d.ts | 0 .../routers/static/TraderStaticRouter.d.ts | 0 .../routers/static/WeatherStaticRouter.d.ts | 0 .../types/servers/ConfigServer.d.ts | 0 .../types/servers/DatabaseServer.d.ts | 0 .../types/servers/HttpServer.d.ts | 0 .../types/servers/RagfairServer.d.ts | 3 +- .../types/servers/SaveServer.d.ts | 0 .../services/CustomHandbookItemService.d.ts | 0 .../types/services/CustomItemService.d.ts | 0 .../types/services/CustomPresetService.d.ts} | 0 .../services/CustomTraderAssortService.d.ts | 0 .../types/services/FenceService.d.ts | 0 .../types/services/HashCacheService.d.ts | 0 .../types/services/InsuranceService.d.ts | 0 .../types/services/LocaleService.d.ts | 0 .../types/services/MatchLocationService.d.ts | 0 .../types/services/ModCompilerService.d.ts | 0 .../types/services/NotificationService.d.ts | 0 .../types/services/PaymentService.d.ts | 0 .../types/services/PlayerService.d.ts | 0 .../services/RagfairCategoriesService.d.ts | 40 ++++++++++++ .../services/RagfairLinkedItemService.d.ts | 0 .../types/services/RagfairOfferService.d.ts | 10 ++- .../types/services/RagfairPriceService.d.ts | 14 ++++ .../services/RagfairRequiredItemsService.d.ts | 0 .../types/services/TraderAssortService.d.ts | 0 .../mod/dynamicRouter/DynamicRouterMod.d.ts | 0 .../DynamicRouterModService.d.ts | 0 .../mod/image/ImageRouteService.d.ts} | 0 .../types/services/mod/onLoad/OnLoadMod.d.ts | 0 .../services/mod/onLoad/OnLoadModService.d.ts | 0 .../services/mod/onUpdate/OnUpdateMod.d.ts | 0 .../mod/onUpdate/OnUpdateModService.d.ts | 0 .../mod/staticRouter/StaticRouterMod.d.ts | 0 .../staticRouter/StaticRouterModService.d.ts | 0 .../types/utils/App.d.ts | 0 .../types/utils/AyncQueue.d.ts | 0 .../types/utils/DatabaseImporter.d.ts | 0 .../types/utils/HashUtil.d.ts | 0 .../types/utils/HttpResponseUtil.d.ts | 0 .../types/utils/JsonUtil.d.ts | 0 .../types/utils/Logger.d.ts | 0 .../types/utils/MathUtil.d.ts | 0 .../types/utils/ObjectId.d.ts | 0 .../types/utils/RandomUtil.d.ts | 0 .../types/utils/TimeUtil.d.ts | 0 .../types/utils/UUidGenerator.d.ts | 0 .../types/utils/VFS.d.ts | 0 .../types/utils/Watermark.d.ts | 7 +- .../types/utils/decorators/Singleton.d.ts | 0 .../types/utils/decorators/constructor.d.ts | 0 TypeScript/4UseACustomConfigFile/package.json | 2 +- TypeScript/4UseACustomConfigFile/src/mod.ts | 13 ++-- .../types/callbacks/GameCallbacks.d.ts | 2 + .../types/callbacks/HealthCallbacks.d.ts | 7 ++ .../types/callbacks/InsuranceCallbacks.d.ts | 3 +- .../types/callbacks/MatchCallbacks.d.ts | 16 +++-- .../types/callbacks/ModCallbacks.d.ts | 6 +- .../types/callbacks/ProfileCallbacks.d.ts | 10 ++- .../types/callbacks/RagfairCallbacks.d.ts | 3 +- .../types/controllers/GameController.d.ts | 5 ++ .../controllers/InsuranceController.d.ts | 9 ++- .../controllers/InventoryController.d.ts | 18 +++++- .../types/controllers/MatchController.d.ts | 9 ++- .../types/controllers/RagfairController.d.ts | 2 + .../types/generators/BotWeaponGenerator.d.ts | 7 ++ .../generators/RagfairOfferGenerator.d.ts | 4 +- .../types/helpers/BotGeneratorHelper.d.ts | 12 ++++ .../types/loaders/AfterDbModLoader.d.ts | 11 ---- .../types/loaders/DelayedModLoader.d.ts | 21 ------ .../types/loaders/InitialModLoader.d.ts | 64 ------------------- .../types/loaders/PostAkiModLoader.d.ts | 21 ++++++ .../types/loaders/PostDBModLoader.d.ts | 11 ++++ .../types/loaders/PreAkiModLoader.d.ts | 64 +++++++++++++++++++ .../types/models/eft/common/IGlobals.d.ts | 5 +- .../models/eft/common/ILocationBase.d.ts | 9 ++- .../types/models/eft/common/IPmcData.d.ts | 22 ++++--- .../eft/common/tables/IProfileTemplate.d.ts | 23 +++++++ .../models/eft/common/tables/IQuest.d.ts | 2 + .../eft/common/tables/ITemplateItem.d.ts | 6 +- .../eft/game/IReportNicknameRequestData.d.ts | 3 + .../IGetInsuranceCostResponseData.d.ts | 1 + .../eft/match/IGetGroupStatusRequestData.d.ts | 8 +++ .../eft/match/IJoinMatchRequestData.d.ts | 12 ++++ .../models/eft/match/IJoinMatchResult.d.ts | 11 ++++ .../match/IStartOffineRaidRequestData.d.ts | 1 - .../profile/GetProfileStatusResponseData.d.ts | 11 ++++ .../models/eft/ragfair/IGetOffersResult.d.ts | 2 +- .../types/models/enums/QuestStatus.d.ts | 10 --- .../models/external/IAfterDBLoadMod.d.ts | 4 -- .../models/external/IPostAkiLoadMod.d.ts | 4 ++ .../types/models/external/IPostDBLoadMod.d.ts | 4 ++ .../types/models/external/IPreAkiLoadMod.d.ts | 4 ++ .../types/models/external/mod.d.ts | 5 -- .../types/models/spt/config/IBotConfig.d.ts | 3 + .../models/spt/config/IRagfairConfig.d.ts | 1 + .../models/spt/server/IDatabaseTables.d.ts | 6 +- .../types/servers/RagfairServer.d.ts | 3 +- .../services/RagfairCategoriesService.d.ts | 42 ++++++++++-- .../types/services/RagfairOfferService.d.ts | 10 ++- .../types/services/RagfairPriceService.d.ts | 14 ++++ .../types/utils/Watermark.d.ts | 7 +- TypeScript/5ReplaceMethod/package.json | 2 +- TypeScript/5ReplaceMethod/src/mod.ts | 14 ++-- .../types/callbacks/GameCallbacks.d.ts | 2 + .../types/callbacks/HealthCallbacks.d.ts | 7 ++ .../types/callbacks/InsuranceCallbacks.d.ts | 3 +- .../types/callbacks/MatchCallbacks.d.ts | 16 +++-- .../types/callbacks/ModCallbacks.d.ts | 6 +- .../types/callbacks/ProfileCallbacks.d.ts | 10 ++- .../types/callbacks/RagfairCallbacks.d.ts | 3 +- .../types/controllers/GameController.d.ts | 5 ++ .../controllers/InsuranceController.d.ts | 9 ++- .../controllers/InventoryController.d.ts | 18 +++++- .../types/controllers/MatchController.d.ts | 9 ++- .../types/controllers/RagfairController.d.ts | 2 + .../types/generators/BotWeaponGenerator.d.ts | 7 ++ .../generators/RagfairOfferGenerator.d.ts | 4 +- .../types/helpers/BotGeneratorHelper.d.ts | 12 ++++ .../types/loaders/AfterDbModLoader.d.ts | 11 ---- .../types/loaders/DelayedModLoader.d.ts | 21 ------ .../types/loaders/InitialModLoader.d.ts | 64 ------------------- .../types/loaders/PostAkiModLoader.d.ts | 21 ++++++ .../types/loaders/PostDBModLoader.d.ts | 11 ++++ .../types/loaders/PreAkiModLoader.d.ts | 64 +++++++++++++++++++ .../types/models/eft/common/IGlobals.d.ts | 5 +- .../models/eft/common/ILocationBase.d.ts | 9 ++- .../types/models/eft/common/IPmcData.d.ts | 22 ++++--- .../eft/common/tables/IProfileTemplate.d.ts | 23 +++++++ .../models/eft/common/tables/IQuest.d.ts | 2 + .../eft/common/tables/ITemplateItem.d.ts | 6 +- .../eft/game/IReportNicknameRequestData.d.ts | 3 + .../IGetInsuranceCostResponseData.d.ts | 1 + .../eft/match/IGetGroupStatusRequestData.d.ts | 8 +++ .../eft/match/IJoinMatchRequestData.d.ts | 12 ++++ .../models/eft/match/IJoinMatchResult.d.ts | 11 ++++ .../match/IStartOffineRaidRequestData.d.ts | 1 - .../profile/GetProfileStatusResponseData.d.ts | 11 ++++ .../models/eft/ragfair/IGetOffersResult.d.ts | 2 +- .../types/models/enums/QuestStatus.d.ts | 10 --- .../models/external/IAfterDBLoadMod.d.ts | 4 -- .../models/external/IPostAkiLoadMod.d.ts | 4 ++ .../types/models/external/IPostDBLoadMod.d.ts | 4 ++ .../types/models/external/IPreAkiLoadMod.d.ts | 4 ++ .../types/models/external/mod.d.ts | 5 -- .../types/models/spt/config/IBotConfig.d.ts | 3 + .../models/spt/config/IRagfairConfig.d.ts | 1 + .../models/spt/server/IDatabaseTables.d.ts | 6 +- .../types/servers/RagfairServer.d.ts | 3 +- .../services/RagfairCategoriesService.d.ts | 42 ++++++++++-- .../types/services/RagfairOfferService.d.ts | 10 ++- .../types/services/RagfairPriceService.d.ts | 14 ++++ .../5ReplaceMethod/types/utils/Watermark.d.ts | 7 +- .../6ReferenceAnotherClass/package.json | 2 +- TypeScript/6ReferenceAnotherClass/src/mod.ts | 10 +-- .../types/callbacks/GameCallbacks.d.ts | 2 + .../types/callbacks/HealthCallbacks.d.ts | 7 ++ .../types/callbacks/InsuranceCallbacks.d.ts | 3 +- .../types/callbacks/MatchCallbacks.d.ts | 16 +++-- .../types/callbacks/ModCallbacks.d.ts | 6 +- .../types/callbacks/ProfileCallbacks.d.ts | 10 ++- .../types/callbacks/RagfairCallbacks.d.ts | 3 +- .../types/controllers/GameController.d.ts | 5 ++ .../controllers/InsuranceController.d.ts | 9 ++- .../controllers/InventoryController.d.ts | 18 +++++- .../types/controllers/MatchController.d.ts | 9 ++- .../types/controllers/RagfairController.d.ts | 2 + .../types/generators/BotWeaponGenerator.d.ts | 7 ++ .../generators/RagfairOfferGenerator.d.ts | 4 +- .../types/helpers/BotGeneratorHelper.d.ts | 12 ++++ .../types/loaders/AfterDbModLoader.d.ts | 11 ---- .../types/loaders/DelayedModLoader.d.ts | 21 ------ .../types/loaders/InitialModLoader.d.ts | 64 ------------------- .../types/loaders/PostAkiModLoader.d.ts | 21 ++++++ .../types/loaders/PostDBModLoader.d.ts | 11 ++++ .../types/loaders/PreAkiModLoader.d.ts | 64 +++++++++++++++++++ .../types/models/eft/common/IGlobals.d.ts | 5 +- .../models/eft/common/ILocationBase.d.ts | 9 ++- .../types/models/eft/common/IPmcData.d.ts | 22 ++++--- .../eft/common/tables/IProfileTemplate.d.ts | 23 +++++++ .../models/eft/common/tables/IQuest.d.ts | 2 + .../eft/common/tables/ITemplateItem.d.ts | 6 +- .../eft/game/IReportNicknameRequestData.d.ts | 3 + .../IGetInsuranceCostResponseData.d.ts | 1 + .../eft/match/IGetGroupStatusRequestData.d.ts | 8 +++ .../eft/match/IJoinMatchRequestData.d.ts | 12 ++++ .../models/eft/match/IJoinMatchResult.d.ts | 11 ++++ .../match/IStartOffineRaidRequestData.d.ts | 1 - .../profile/GetProfileStatusResponseData.d.ts | 11 ++++ .../models/eft/ragfair/IGetOffersResult.d.ts | 2 +- .../types/models/enums/QuestStatus.d.ts | 10 --- .../models/external/IAfterDBLoadMod.d.ts | 4 -- .../models/external/IPostAkiLoadMod.d.ts | 4 ++ .../types/models/external/IPostDBLoadMod.d.ts | 4 ++ .../types/models/external/IPreAkiLoadMod.d.ts | 4 ++ .../types/models/external/mod.d.ts | 5 -- .../types/models/spt/config/IBotConfig.d.ts | 3 + .../models/spt/config/IRagfairConfig.d.ts | 1 + .../models/spt/server/IDatabaseTables.d.ts | 6 +- .../types/servers/RagfairServer.d.ts | 3 +- .../services/RagfairCategoriesService.d.ts | 42 ++++++++++-- .../types/services/RagfairOfferService.d.ts | 10 ++- .../types/services/RagfairPriceService.d.ts | 14 ++++ .../types/utils/Watermark.d.ts | 7 +- TypeScript/7OnLoadHook/package.json | 2 +- TypeScript/7OnLoadHook/src/mod.ts | 14 ++-- .../types/callbacks/GameCallbacks.d.ts | 2 + .../types/callbacks/HealthCallbacks.d.ts | 7 ++ .../types/callbacks/InsuranceCallbacks.d.ts | 3 +- .../types/callbacks/MatchCallbacks.d.ts | 16 +++-- .../types/callbacks/ModCallbacks.d.ts | 6 +- .../types/callbacks/ProfileCallbacks.d.ts | 10 ++- .../types/callbacks/RagfairCallbacks.d.ts | 3 +- .../types/controllers/GameController.d.ts | 5 ++ .../controllers/InsuranceController.d.ts | 9 ++- .../controllers/InventoryController.d.ts | 18 +++++- .../types/controllers/MatchController.d.ts | 9 ++- .../types/controllers/RagfairController.d.ts | 2 + .../types/generators/BotWeaponGenerator.d.ts | 7 ++ .../generators/RagfairOfferGenerator.d.ts | 4 +- .../types/helpers/BotGeneratorHelper.d.ts | 12 ++++ .../types/loaders/AfterDbModLoader.d.ts | 11 ---- .../types/loaders/DelayedModLoader.d.ts | 21 ------ .../types/loaders/InitialModLoader.d.ts | 64 ------------------- .../types/loaders/PostAkiModLoader.d.ts | 21 ++++++ .../types/loaders/PostDBModLoader.d.ts | 11 ++++ .../types/loaders/PreAkiModLoader.d.ts | 64 +++++++++++++++++++ .../types/models/eft/common/IGlobals.d.ts | 5 +- .../models/eft/common/ILocationBase.d.ts | 9 ++- .../types/models/eft/common/IPmcData.d.ts | 22 ++++--- .../eft/common/tables/IProfileTemplate.d.ts | 23 +++++++ .../models/eft/common/tables/IQuest.d.ts | 2 + .../eft/common/tables/ITemplateItem.d.ts | 6 +- .../eft/game/IReportNicknameRequestData.d.ts | 3 + .../IGetInsuranceCostResponseData.d.ts | 1 + .../eft/match/IGetGroupStatusRequestData.d.ts | 8 +++ .../eft/match/IJoinMatchRequestData.d.ts | 12 ++++ .../models/eft/match/IJoinMatchResult.d.ts | 11 ++++ .../match/IStartOffineRaidRequestData.d.ts | 1 - .../profile/GetProfileStatusResponseData.d.ts | 11 ++++ .../models/eft/ragfair/IGetOffersResult.d.ts | 2 +- .../types/models/enums/QuestStatus.d.ts | 10 --- .../models/external/IAfterDBLoadMod.d.ts | 4 -- .../models/external/IPostAkiLoadMod.d.ts | 4 ++ .../types/models/external/IPostDBLoadMod.d.ts | 4 ++ .../types/models/external/IPreAkiLoadMod.d.ts | 4 ++ .../types/models/external/mod.d.ts | 5 -- .../types/models/spt/config/IBotConfig.d.ts | 3 + .../models/spt/config/IRagfairConfig.d.ts | 1 + .../models/spt/server/IDatabaseTables.d.ts | 6 +- .../types/servers/RagfairServer.d.ts | 3 +- .../services/RagfairCategoriesService.d.ts | 42 ++++++++++-- .../types/services/RagfairOfferService.d.ts | 10 ++- .../types/services/RagfairPriceService.d.ts | 14 ++++ .../7OnLoadHook/types/utils/Watermark.d.ts | 7 +- TypeScript/8OnUpdateHook/package.json | 2 +- TypeScript/8OnUpdateHook/src/mod.ts | 15 ++--- .../types/callbacks/GameCallbacks.d.ts | 2 + .../types/callbacks/HealthCallbacks.d.ts | 7 ++ .../types/callbacks/InsuranceCallbacks.d.ts | 3 +- .../types/callbacks/MatchCallbacks.d.ts | 16 +++-- .../types/callbacks/ModCallbacks.d.ts | 6 +- .../types/callbacks/ProfileCallbacks.d.ts | 10 ++- .../types/callbacks/RagfairCallbacks.d.ts | 3 +- .../types/controllers/GameController.d.ts | 5 ++ .../controllers/InsuranceController.d.ts | 9 ++- .../controllers/InventoryController.d.ts | 18 +++++- .../types/controllers/MatchController.d.ts | 9 ++- .../types/controllers/RagfairController.d.ts | 2 + .../types/generators/BotWeaponGenerator.d.ts | 7 ++ .../generators/RagfairOfferGenerator.d.ts | 4 +- .../types/helpers/BotGeneratorHelper.d.ts | 12 ++++ .../types/loaders/AfterDbModLoader.d.ts | 11 ---- .../types/loaders/DelayedModLoader.d.ts | 21 ------ .../types/loaders/InitialModLoader.d.ts | 64 ------------------- .../types/loaders/PostAkiModLoader.d.ts | 21 ++++++ .../types/loaders/PostDBModLoader.d.ts | 11 ++++ .../types/loaders/PreAkiModLoader.d.ts | 64 +++++++++++++++++++ .../types/models/eft/common/IGlobals.d.ts | 5 +- .../models/eft/common/ILocationBase.d.ts | 9 ++- .../types/models/eft/common/IPmcData.d.ts | 22 ++++--- .../eft/common/tables/IProfileTemplate.d.ts | 23 +++++++ .../models/eft/common/tables/IQuest.d.ts | 2 + .../eft/common/tables/ITemplateItem.d.ts | 6 +- .../eft/game/IReportNicknameRequestData.d.ts | 3 + .../IGetInsuranceCostResponseData.d.ts | 1 + .../eft/match/IGetGroupStatusRequestData.d.ts | 8 +++ .../eft/match/IJoinMatchRequestData.d.ts | 12 ++++ .../models/eft/match/IJoinMatchResult.d.ts | 11 ++++ .../match/IStartOffineRaidRequestData.d.ts | 1 - .../profile/GetProfileStatusResponseData.d.ts | 11 ++++ .../models/eft/ragfair/IGetOffersResult.d.ts | 2 +- .../types/models/enums/QuestStatus.d.ts | 10 --- .../models/external/IAfterDBLoadMod.d.ts | 4 -- .../models/external/IPostAkiLoadMod.d.ts | 4 ++ .../types/models/external/IPostDBLoadMod.d.ts | 4 ++ .../types/models/external/IPreAkiLoadMod.d.ts | 4 ++ .../types/models/external/mod.d.ts | 5 -- .../types/models/spt/config/IBotConfig.d.ts | 3 + .../models/spt/config/IRagfairConfig.d.ts | 1 + .../models/spt/server/IDatabaseTables.d.ts | 6 +- .../types/servers/RagfairServer.d.ts | 3 +- .../services/RagfairCategoriesService.d.ts | 42 ++++++++++-- .../types/services/RagfairOfferService.d.ts | 10 ++- .../types/services/RagfairPriceService.d.ts | 14 ++++ .../8OnUpdateHook/types/utils/Watermark.d.ts | 7 +- TypeScript/9RouterHooks/package.json | 2 +- TypeScript/9RouterHooks/src/mod.ts | 13 +--- .../types/callbacks/GameCallbacks.d.ts | 2 + .../types/callbacks/HealthCallbacks.d.ts | 7 ++ .../types/callbacks/InsuranceCallbacks.d.ts | 3 +- .../types/callbacks/MatchCallbacks.d.ts | 16 +++-- .../types/callbacks/ModCallbacks.d.ts | 6 +- .../types/callbacks/ProfileCallbacks.d.ts | 10 ++- .../types/callbacks/RagfairCallbacks.d.ts | 3 +- .../types/controllers/GameController.d.ts | 5 ++ .../controllers/InsuranceController.d.ts | 9 ++- .../controllers/InventoryController.d.ts | 18 +++++- .../types/controllers/MatchController.d.ts | 9 ++- .../types/controllers/RagfairController.d.ts | 2 + .../types/generators/BotWeaponGenerator.d.ts | 7 ++ .../generators/RagfairOfferGenerator.d.ts | 4 +- .../types/helpers/BotGeneratorHelper.d.ts | 12 ++++ .../types/loaders/AfterDbModLoader.d.ts | 11 ---- .../types/loaders/DelayedModLoader.d.ts | 21 ------ .../types/loaders/InitialModLoader.d.ts | 64 ------------------- .../types/loaders/PostAkiModLoader.d.ts | 21 ++++++ .../types/loaders/PostDBModLoader.d.ts | 11 ++++ .../types/loaders/PreAkiModLoader.d.ts | 64 +++++++++++++++++++ .../types/models/eft/common/IGlobals.d.ts | 5 +- .../models/eft/common/ILocationBase.d.ts | 9 ++- .../types/models/eft/common/IPmcData.d.ts | 22 ++++--- .../eft/common/tables/IProfileTemplate.d.ts | 23 +++++++ .../models/eft/common/tables/IQuest.d.ts | 2 + .../eft/common/tables/ITemplateItem.d.ts | 6 +- .../eft/game/IReportNicknameRequestData.d.ts | 3 + .../IGetInsuranceCostResponseData.d.ts | 1 + .../eft/match/IGetGroupStatusRequestData.d.ts | 8 +++ .../eft/match/IJoinMatchRequestData.d.ts | 12 ++++ .../models/eft/match/IJoinMatchResult.d.ts | 11 ++++ .../match/IStartOffineRaidRequestData.d.ts | 1 - .../profile/GetProfileStatusResponseData.d.ts | 11 ++++ .../models/eft/ragfair/IGetOffersResult.d.ts | 2 +- .../types/models/enums/QuestStatus.d.ts | 10 --- .../models/external/IAfterDBLoadMod.d.ts | 4 -- .../models/external/IPostAkiLoadMod.d.ts | 4 ++ .../types/models/external/IPostDBLoadMod.d.ts | 4 ++ .../types/models/external/IPreAkiLoadMod.d.ts | 4 ++ .../types/models/external/mod.d.ts | 5 -- .../types/models/spt/config/IBotConfig.d.ts | 3 + .../models/spt/config/IRagfairConfig.d.ts | 1 + .../models/spt/server/IDatabaseTables.d.ts | 6 +- .../types/servers/RagfairServer.d.ts | 3 +- .../services/RagfairCategoriesService.d.ts | 42 ++++++++++-- .../types/services/RagfairOfferService.d.ts | 10 ++- .../types/services/RagfairPriceService.d.ts | 14 ++++ .../9RouterHooks/types/utils/Watermark.d.ts | 7 +- 1114 files changed, 5063 insertions(+), 2063 deletions(-) rename TypeScript/{11BundleLoadingSample/types/loaders/DelayedModLoader.d.ts => 10ScopesAndTypes/types/loaders/PostAkiModLoader.d.ts} (80%) rename TypeScript/10ScopesAndTypes/types/loaders/{AfterDbModLoader.d.ts => PostDBModLoader.d.ts} (52%) rename TypeScript/{11BundleLoadingSample/types/loaders/InitialModLoader.d.ts => 10ScopesAndTypes/types/loaders/PreAkiModLoader.d.ts} (96%) create mode 100644 TypeScript/10ScopesAndTypes/types/models/eft/common/tables/IProfileTemplate.d.ts create mode 100644 TypeScript/10ScopesAndTypes/types/models/eft/game/IReportNicknameRequestData.d.ts create mode 100644 TypeScript/10ScopesAndTypes/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts create mode 100644 TypeScript/10ScopesAndTypes/types/models/eft/match/IGetGroupStatusRequestData.d.ts create mode 100644 TypeScript/10ScopesAndTypes/types/models/eft/match/IJoinMatchRequestData.d.ts create mode 100644 TypeScript/10ScopesAndTypes/types/models/eft/match/IJoinMatchResult.d.ts create mode 100644 TypeScript/10ScopesAndTypes/types/models/eft/profile/GetProfileStatusResponseData.d.ts delete mode 100644 TypeScript/10ScopesAndTypes/types/models/enums/QuestStatus.d.ts delete mode 100644 TypeScript/10ScopesAndTypes/types/models/external/IAfterDBLoadMod.d.ts create mode 100644 TypeScript/10ScopesAndTypes/types/models/external/IPostAkiLoadMod.d.ts create mode 100644 TypeScript/10ScopesAndTypes/types/models/external/IPostDBLoadMod.d.ts create mode 100644 TypeScript/10ScopesAndTypes/types/models/external/IPreAkiLoadMod.d.ts delete mode 100644 TypeScript/10ScopesAndTypes/types/models/external/mod.d.ts rename TypeScript/{10ScopesAndTypes/types/loaders/DelayedModLoader.d.ts => 11BundleLoadingSample/types/loaders/PostAkiModLoader.d.ts} (80%) rename TypeScript/11BundleLoadingSample/types/loaders/{AfterDbModLoader.d.ts => PostDBModLoader.d.ts} (52%) rename TypeScript/{12ClassExtensionOverride/types/loaders/InitialModLoader.d.ts => 11BundleLoadingSample/types/loaders/PreAkiModLoader.d.ts} (96%) create mode 100644 TypeScript/11BundleLoadingSample/types/models/eft/common/tables/IProfileTemplate.d.ts create mode 100644 TypeScript/11BundleLoadingSample/types/models/eft/game/IReportNicknameRequestData.d.ts create mode 100644 TypeScript/11BundleLoadingSample/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts create mode 100644 TypeScript/11BundleLoadingSample/types/models/eft/match/IGetGroupStatusRequestData.d.ts create mode 100644 TypeScript/11BundleLoadingSample/types/models/eft/match/IJoinMatchRequestData.d.ts create mode 100644 TypeScript/11BundleLoadingSample/types/models/eft/match/IJoinMatchResult.d.ts create mode 100644 TypeScript/11BundleLoadingSample/types/models/eft/profile/GetProfileStatusResponseData.d.ts delete mode 100644 TypeScript/11BundleLoadingSample/types/models/enums/QuestStatus.d.ts delete mode 100644 TypeScript/11BundleLoadingSample/types/models/external/IAfterDBLoadMod.d.ts create mode 100644 TypeScript/11BundleLoadingSample/types/models/external/IPostAkiLoadMod.d.ts create mode 100644 TypeScript/11BundleLoadingSample/types/models/external/IPostDBLoadMod.d.ts create mode 100644 TypeScript/11BundleLoadingSample/types/models/external/IPreAkiLoadMod.d.ts delete mode 100644 TypeScript/11BundleLoadingSample/types/models/external/mod.d.ts rename TypeScript/12ClassExtensionOverride/types/loaders/{DelayedModLoader.d.ts => PostAkiModLoader.d.ts} (80%) rename TypeScript/12ClassExtensionOverride/types/loaders/{AfterDbModLoader.d.ts => PostDBModLoader.d.ts} (52%) rename TypeScript/{10ScopesAndTypes/types/loaders/InitialModLoader.d.ts => 12ClassExtensionOverride/types/loaders/PreAkiModLoader.d.ts} (96%) create mode 100644 TypeScript/12ClassExtensionOverride/types/models/eft/common/tables/IProfileTemplate.d.ts create mode 100644 TypeScript/12ClassExtensionOverride/types/models/eft/game/IReportNicknameRequestData.d.ts create mode 100644 TypeScript/12ClassExtensionOverride/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts create mode 100644 TypeScript/12ClassExtensionOverride/types/models/eft/match/IGetGroupStatusRequestData.d.ts create mode 100644 TypeScript/12ClassExtensionOverride/types/models/eft/match/IJoinMatchRequestData.d.ts create mode 100644 TypeScript/12ClassExtensionOverride/types/models/eft/match/IJoinMatchResult.d.ts create mode 100644 TypeScript/12ClassExtensionOverride/types/models/eft/profile/GetProfileStatusResponseData.d.ts delete mode 100644 TypeScript/12ClassExtensionOverride/types/models/enums/QuestStatus.d.ts delete mode 100644 TypeScript/12ClassExtensionOverride/types/models/external/IAfterDBLoadMod.d.ts create mode 100644 TypeScript/12ClassExtensionOverride/types/models/external/IPostAkiLoadMod.d.ts create mode 100644 TypeScript/12ClassExtensionOverride/types/models/external/IPostDBLoadMod.d.ts create mode 100644 TypeScript/12ClassExtensionOverride/types/models/external/IPreAkiLoadMod.d.ts delete mode 100644 TypeScript/12ClassExtensionOverride/types/models/external/mod.d.ts rename TypeScript/13AddTrader/types/loaders/{DelayedModLoader.d.ts => PostAkiModLoader.d.ts} (80%) rename TypeScript/13AddTrader/types/loaders/{AfterDbModLoader.d.ts => PostDBModLoader.d.ts} (52%) rename TypeScript/13AddTrader/types/loaders/{InitialModLoader.d.ts => PreAkiModLoader.d.ts} (96%) create mode 100644 TypeScript/13AddTrader/types/models/eft/common/tables/IProfileTemplate.d.ts create mode 100644 TypeScript/13AddTrader/types/models/eft/game/IReportNicknameRequestData.d.ts create mode 100644 TypeScript/13AddTrader/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts create mode 100644 TypeScript/13AddTrader/types/models/eft/match/IGetGroupStatusRequestData.d.ts create mode 100644 TypeScript/13AddTrader/types/models/eft/match/IJoinMatchRequestData.d.ts create mode 100644 TypeScript/13AddTrader/types/models/eft/match/IJoinMatchResult.d.ts create mode 100644 TypeScript/13AddTrader/types/models/eft/profile/GetProfileStatusResponseData.d.ts delete mode 100644 TypeScript/13AddTrader/types/models/enums/QuestStatus.d.ts delete mode 100644 TypeScript/13AddTrader/types/models/external/IAfterDBLoadMod.d.ts create mode 100644 TypeScript/13AddTrader/types/models/external/IPostAkiLoadMod.d.ts create mode 100644 TypeScript/13AddTrader/types/models/external/IPostDBLoadMod.d.ts create mode 100644 TypeScript/13AddTrader/types/models/external/IPreAkiLoadMod.d.ts delete mode 100644 TypeScript/13AddTrader/types/models/external/mod.d.ts delete mode 100644 TypeScript/14AfterDBLoadHook/src/mod.js delete mode 100644 TypeScript/14AfterDBLoadHook/types/loaders/AfterDbModLoader.d.ts delete mode 100644 TypeScript/14AfterDBLoadHook/types/loaders/DelayedModLoader.d.ts delete mode 100644 TypeScript/14AfterDBLoadHook/types/loaders/InitialModLoader.d.ts create mode 100644 TypeScript/14AfterDBLoadHook/types/loaders/PostAkiModLoader.d.ts create mode 100644 TypeScript/14AfterDBLoadHook/types/loaders/PostDBModLoader.d.ts create mode 100644 TypeScript/14AfterDBLoadHook/types/loaders/PreAkiModLoader.d.ts create mode 100644 TypeScript/14AfterDBLoadHook/types/models/eft/common/tables/IProfileTemplate.d.ts create mode 100644 TypeScript/14AfterDBLoadHook/types/models/eft/game/IReportNicknameRequestData.d.ts create mode 100644 TypeScript/14AfterDBLoadHook/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts create mode 100644 TypeScript/14AfterDBLoadHook/types/models/eft/match/IGetGroupStatusRequestData.d.ts create mode 100644 TypeScript/14AfterDBLoadHook/types/models/eft/match/IJoinMatchRequestData.d.ts create mode 100644 TypeScript/14AfterDBLoadHook/types/models/eft/match/IJoinMatchResult.d.ts create mode 100644 TypeScript/14AfterDBLoadHook/types/models/eft/profile/GetProfileStatusResponseData.d.ts delete mode 100644 TypeScript/14AfterDBLoadHook/types/models/enums/QuestStatus.d.ts delete mode 100644 TypeScript/14AfterDBLoadHook/types/models/external/IAfterDBLoadMod.d.ts create mode 100644 TypeScript/14AfterDBLoadHook/types/models/external/IPostAkiLoadMod.d.ts create mode 100644 TypeScript/14AfterDBLoadHook/types/models/external/IPostDBLoadMod.d.ts create mode 100644 TypeScript/14AfterDBLoadHook/types/models/external/IPreAkiLoadMod.d.ts delete mode 100644 TypeScript/14AfterDBLoadHook/types/models/external/mod.d.ts delete mode 100644 TypeScript/1LogToConsole/types/loaders/AfterDbModLoader.d.ts delete mode 100644 TypeScript/1LogToConsole/types/loaders/DelayedModLoader.d.ts delete mode 100644 TypeScript/1LogToConsole/types/loaders/InitialModLoader.d.ts create mode 100644 TypeScript/1LogToConsole/types/loaders/PostAkiModLoader.d.ts create mode 100644 TypeScript/1LogToConsole/types/loaders/PostDBModLoader.d.ts create mode 100644 TypeScript/1LogToConsole/types/loaders/PreAkiModLoader.d.ts create mode 100644 TypeScript/1LogToConsole/types/models/eft/common/tables/IProfileTemplate.d.ts create mode 100644 TypeScript/1LogToConsole/types/models/eft/game/IReportNicknameRequestData.d.ts create mode 100644 TypeScript/1LogToConsole/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts create mode 100644 TypeScript/1LogToConsole/types/models/eft/match/IGetGroupStatusRequestData.d.ts create mode 100644 TypeScript/1LogToConsole/types/models/eft/match/IJoinMatchRequestData.d.ts create mode 100644 TypeScript/1LogToConsole/types/models/eft/match/IJoinMatchResult.d.ts create mode 100644 TypeScript/1LogToConsole/types/models/eft/profile/GetProfileStatusResponseData.d.ts delete mode 100644 TypeScript/1LogToConsole/types/models/enums/QuestStatus.d.ts delete mode 100644 TypeScript/1LogToConsole/types/models/external/IAfterDBLoadMod.d.ts create mode 100644 TypeScript/1LogToConsole/types/models/external/IPostAkiLoadMod.d.ts create mode 100644 TypeScript/1LogToConsole/types/models/external/IPostDBLoadMod.d.ts create mode 100644 TypeScript/1LogToConsole/types/models/external/IPreAkiLoadMod.d.ts delete mode 100644 TypeScript/1LogToConsole/types/models/external/mod.d.ts delete mode 100644 TypeScript/2EditDatabase/types/loaders/AfterDbModLoader.d.ts delete mode 100644 TypeScript/2EditDatabase/types/loaders/DelayedModLoader.d.ts delete mode 100644 TypeScript/2EditDatabase/types/loaders/InitialModLoader.d.ts create mode 100644 TypeScript/2EditDatabase/types/loaders/PostAkiModLoader.d.ts create mode 100644 TypeScript/2EditDatabase/types/loaders/PostDBModLoader.d.ts create mode 100644 TypeScript/2EditDatabase/types/loaders/PreAkiModLoader.d.ts create mode 100644 TypeScript/2EditDatabase/types/models/eft/common/tables/IProfileTemplate.d.ts create mode 100644 TypeScript/2EditDatabase/types/models/eft/game/IReportNicknameRequestData.d.ts create mode 100644 TypeScript/2EditDatabase/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts create mode 100644 TypeScript/2EditDatabase/types/models/eft/match/IGetGroupStatusRequestData.d.ts create mode 100644 TypeScript/2EditDatabase/types/models/eft/match/IJoinMatchRequestData.d.ts create mode 100644 TypeScript/2EditDatabase/types/models/eft/match/IJoinMatchResult.d.ts create mode 100644 TypeScript/2EditDatabase/types/models/eft/profile/GetProfileStatusResponseData.d.ts delete mode 100644 TypeScript/2EditDatabase/types/models/enums/QuestStatus.d.ts delete mode 100644 TypeScript/2EditDatabase/types/models/external/IAfterDBLoadMod.d.ts create mode 100644 TypeScript/2EditDatabase/types/models/external/IPostAkiLoadMod.d.ts create mode 100644 TypeScript/2EditDatabase/types/models/external/IPostDBLoadMod.d.ts create mode 100644 TypeScript/2EditDatabase/types/models/external/IPreAkiLoadMod.d.ts delete mode 100644 TypeScript/2EditDatabase/types/models/external/mod.d.ts delete mode 100644 TypeScript/3.0GetSptConfigFile/types/loaders/AfterDbModLoader.d.ts delete mode 100644 TypeScript/3.0GetSptConfigFile/types/loaders/DelayedModLoader.d.ts delete mode 100644 TypeScript/3.0GetSptConfigFile/types/loaders/InitialModLoader.d.ts delete mode 100644 TypeScript/3.0GetSptConfigFile/types/models/enums/QuestStatus.d.ts delete mode 100644 TypeScript/3.0GetSptConfigFile/types/models/external/IAfterDBLoadMod.d.ts delete mode 100644 TypeScript/3.0GetSptConfigFile/types/models/external/mod.d.ts delete mode 100644 TypeScript/3.0GetSptConfigFile/types/services/RagfairCategoriesService.d.ts rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/.eslintignore (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/.eslintrc.json (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/README.md (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/mod.code-workspace (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/package.json (97%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/src/mod.ts (81%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/tsconfig.json (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/Program.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/TYPES.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/BotCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/BundleCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/CustomizationCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/DataCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/DialogueCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/GameCallbacks.d.ts (90%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/HandbookCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/HealthCallbacks.d.ts (85%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/HideoutCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/HttpCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/InraidCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/InsuranceCallbacks.d.ts (89%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/InventoryCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/ItemEventCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/LauncherCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/LocationCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/MatchCallbacks.d.ts (68%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/ModCallbacks.d.ts (81%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/NoteCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/NotifierCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/PresetBuildCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/PresetCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/ProfileCallbacks.d.ts (87%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/QuestCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/RagfairCallbacks.d.ts (95%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/RepairCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/SaveCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/TradeCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/TraderCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/WeatherCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/callbacks/WishlistCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/BotController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/CustomizationController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/DialogueController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/GameController.d.ts (91%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/HandbookController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/HealthController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/HideoutController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/InraidController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/InsuranceController.d.ts (88%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/InventoryController.d.ts (88%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/LauncherController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/LocationController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/MatchController.d.ts (78%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/NoteController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/NotifierController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/PresetBuildController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/PresetController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/ProfileController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/QuestController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/RagfairController.d.ts (97%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/RepairController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/RepeatableQuestController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/TradeController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/TraderController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/WeatherController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/controllers/WishlistController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/di/Container.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/di/OnLoad.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/di/OnLoadOnUpdate.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/di/OnUpdate.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/di/Router.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/di/Serializer.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/generators/BotGenerator.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/generators/BotInventoryGenerator.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/generators/BotLootGenerator.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/generators/BotWeaponGenerator.d.ts (93%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/generators/LocationGenerator.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/generators/PMCLootGenerator.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/generators/RagfairAssortGenerator.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/generators/RagfairOfferGenerator.d.ts (91%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/generators/WeatherGenerator.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/AssortHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/BotGeneratorHelper.d.ts (91%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/BotHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/ContainerHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/DialogueHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/DurabilityLimitsHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/ExtendedProfileHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/GameEventHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/GameHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/HandbookHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/HealthHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/HideoutHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/HttpServerHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/InRaidHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/InventoryHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/ItemHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/NotificationSendHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/NotifierHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/PaymentHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/PresetHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/ProbabilityHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/ProfileHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/QuestConditionHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/QuestHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/RagfairHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/RagfairOfferHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/RagfairSellHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/RagfairServerHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/RagfairSortHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/RagfairTaxHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/RepairHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/SecureContainerHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/TradeHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/TraderAssortHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/TraderHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/UtilityHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/helpers/WeightedRandomHelper.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/ide/BleedingEdgeEntry.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/ide/Compiler.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/ide/DebugEntry.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/ide/ReleaseEntry.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/ide/TestEntry.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/loaders/BundleLoader.d.ts (100%) create mode 100644 TypeScript/3GetSptConfigFile/types/loaders/PostAkiModLoader.d.ts create mode 100644 TypeScript/3GetSptConfigFile/types/loaders/PostDBModLoader.d.ts create mode 100644 TypeScript/3GetSptConfigFile/types/loaders/PreAkiModLoader.d.ts rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/bot/IGenerateBotsRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/IEmptyRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/IGlobals.d.ts (99%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/ILocation.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/ILocationBase.d.ts (94%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/ILocationsSourceDestinationBase.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/ILooseLoot.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/IMetricsTableData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/IPmcData.d.ts (97%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/request/IBaseInteractionRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/tables/IBotBase.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/tables/IBotCore.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/tables/IBotType.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/tables/ICustomizationItem.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/tables/IHandbookBase.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/tables/IItem.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/tables/ILocationsBase.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/tables/ILootBase.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/tables/IMatch.d.ts (100%) create mode 100644 TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IProfileTemplate.d.ts rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/tables/IQuest.d.ts (98%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/tables/IRepeatableQuests.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/tables/ITemplateItem.d.ts (98%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/common/tables/ITrader.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/customization/IBuyClothingRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/customization/IWearClothingRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/dialog/IFriendRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/dialog/IGetAllAttachmentsRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/dialog/IGetAllAttachmentsResponse.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/dialog/IGetChatServerListRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/dialog/IGetFriendListDataResponse.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/dialog/IGetMailDialogInfoRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/dialog/IGetMailDialogListRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/dialog/IGetMailDialogViewRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/dialog/IGetMailDialogViewResponseData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/dialog/IPinDialogRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/dialog/IRemoveDialogRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/dialog/ISendMessageRequest.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/dialog/ISetDialogReadRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/game/IGameConfigResponse.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/game/IGameEmptyCrcRequestData.d.ts (100%) create mode 100644 TypeScript/3GetSptConfigFile/types/models/eft/game/IReportNicknameRequestData.d.ts rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/game/IVersionValidateRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/health/IHealthTreatmentRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/health/IOffraidEatRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/health/IOffraidHealRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/health/ISyncHealthRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/hideout/HideoutUpgradeCompleteRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/hideout/IHideoutArea.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/hideout/IHideoutContinousProductionStartRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/hideout/IHideoutProduction.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/hideout/IHideoutPutItemInRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/hideout/IHideoutScavCase.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/hideout/IHideoutScavCaseStartRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/hideout/IHideoutSettingsBase.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/hideout/IHideoutSingleProductionStartRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/hideout/IHideoutTakeItemOutRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/hideout/IHideoutTakeProductionRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/hideout/IHideoutToggleAreaRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/hideout/IHideoutUpgradeCompleteRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/hideout/IHideoutUpgradeRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/httpResponse/IGetBodyResponseData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/httpResponse/INullResponseData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inRaid/IRegisterPlayerRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inRaid/ISaveProgressRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/insurance/IGetInsuranceCostRequestData.d.ts (100%) create mode 100644 TypeScript/3GetSptConfigFile/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/insurance/IInsureRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inventory/IAddItemRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inventory/IInventoryAddRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inventory/IInventoryBaseActionRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inventory/IInventoryBindRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inventory/IInventoryCreateMarkerRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inventory/IInventoryDeleteMarkerRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inventory/IInventoryEditMarkerRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inventory/IInventoryExamineRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inventory/IInventoryFoldRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inventory/IInventoryMergeRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inventory/IInventoryMoveRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inventory/IInventoryReadEncyclopediaRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inventory/IInventoryRemoveRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inventory/IInventorySortRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inventory/IInventorySplitRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inventory/IInventorySwapRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inventory/IInventoryTagRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inventory/IInventoryToggleRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/inventory/IInventoryTransferRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/itemEvent/IEmptyItemEventRouterResponse.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/itemEvent/IItemEventRouterBase.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/itemEvent/IItemEventRouterRequest.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/itemEvent/IItemEventRouterResponse.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/launcher/IChangeRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/launcher/IGetMiniProfileRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/launcher/ILoginRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/launcher/IMiniProfile.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/launcher/IRegisterData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/launcher/IRemoveProfileData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/location/IGetLocationRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/match/IEndOfflineRaidRequestData.d.ts (100%) create mode 100644 TypeScript/3GetSptConfigFile/types/models/eft/match/IGetGroupStatusRequestData.d.ts rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/match/IGetProfileRequestData.d.ts (100%) create mode 100644 TypeScript/3GetSptConfigFile/types/models/eft/match/IJoinMatchRequestData.d.ts create mode 100644 TypeScript/3GetSptConfigFile/types/models/eft/match/IJoinMatchResult.d.ts rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/match/IStartOffineRaidRequestData.d.ts (96%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/notes/INoteActionData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/notifier/INotifier.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/notifier/ISelectProfileRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/player/IPlayerIncrementSkillLevelRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/presetBuild/IPresetBuildActionRequestData.d.ts (100%) create mode 100644 TypeScript/3GetSptConfigFile/types/models/eft/profile/GetProfileStatusResponseData.d.ts rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/profile/IAkiProfile.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/profile/IProfileChangeNicknameRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/profile/IProfileChangeVoiceRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/profile/IProfileCreateRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/profile/ISearchFriendRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/profile/ISearchFriendResponse.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/profile/IValidateNicknameRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/quests/IAcceptQuestRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/quests/ICompleteQuestRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/quests/IHandoverQuestRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/quests/IListQuestsRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/quests/IRepeatableQuestChangeRequest.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/ragfair/IAddOfferRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/ragfair/IExtendOfferRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/ragfair/IGetItemPriceResult.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/ragfair/IGetMarketPriceRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/ragfair/IGetOffersResult.d.ts (80%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/ragfair/IRagfairOffer.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/ragfair/IRemoveOfferRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/ragfair/ISearchRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/repair/IBaseRepairActionDataRequest.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/repair/IRepairActionDataRequest.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/repair/ITraderRepairActionDataRequest.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/trade/IProcessBaseTradeRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/trade/IProcessBuyTradeRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/trade/IProcessRagfairTradeRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/trade/IProcessSellTradeRequestData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/weather/IWeatherData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/eft/wishlist/IWishlistActionData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/enums/BaseClasses.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/enums/ConfigTypes.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/enums/ELocationName.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/enums/EquipmentSlots.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/enums/HideoutAreas.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/enums/MemberCategory.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/enums/MessageType.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/enums/Money.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/enums/Traders.d.ts (100%) create mode 100644 TypeScript/3GetSptConfigFile/types/models/external/IPostAkiLoadMod.d.ts create mode 100644 TypeScript/3GetSptConfigFile/types/models/external/IPostDBLoadMod.d.ts create mode 100644 TypeScript/3GetSptConfigFile/types/models/external/IPreAkiLoadMod.d.ts rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/external/tsyringe.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/bindings/Route.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IBotCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IBundleCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/ICustomizationCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IDataCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IDialogueCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IGameCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IHandbookCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IHealthCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IHideoutCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IHttpCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IInraidCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IInsuranceCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IInventoryCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IItemEventCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/ILauncherCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/ILocationCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IMatchCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IModCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/INoteCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/INotifierCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IPresetBuildCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IPresetCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IProfileCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IQuestCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IRagfairCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IRepairCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/ISaveCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/ITradeCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/ITraderCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IWeatherCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/callbacks/IWishlistCallbacks.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/config/IAirdropConfig.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/config/IBaseConfig.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/config/IBotConfig.d.ts (97%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/config/ICoreConfig.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/config/IHealthConfig.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/config/IHideoutConfig.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/config/IHttpConfig.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/config/IInRaidConfig.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/config/IInsuranceConfig.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/config/IInventoryConfig.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/config/ILocaleConfig.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/config/ILocationConfig.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/config/IMatchConfig.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/config/IQuestConfig.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/config/IRagfairConfig.d.ts (98%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/config/IRepairConfig.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/config/ITraderConfig.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/config/IWeatherConfig.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/controllers/IBotController.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/generators/IBotGenerator.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/generators/ILocationGenerator.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/generators/IPMCLootGenerator.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/generators/IRagfairAssortGenerator.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/generators/IRagfairOfferGenerator.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/logging/LogBackgroundColor.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/logging/LogTextColor.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/logging/SptLogger.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/mod/IMod.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/mod/IModLoader.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/mod/IPackageJsonData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/ragfair/IRagfairServerPrices.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/server/IDatabaseTables.d.ts (81%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/server/IHttpServer.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/server/ILocaleBase.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/server/ILocations.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/server/IServerBase.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/server/ISettingsBase.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/services/CustomPreset.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/services/CustomTraderAssortData.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/utils/IAsyncQueue.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/utils/ICommand.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/utils/ILogger.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/models/spt/utils/IUuidGenerator.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/HttpRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/ImageRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/ItemEventRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/dynamic/BotDynamicRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/dynamic/BundleDynamicRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/dynamic/CustomizationDynamicRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/dynamic/DataDynamicRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/dynamic/HttpDynamicRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/dynamic/InraidDynamicRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/dynamic/LocationDynamicRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/dynamic/NotifierDynamicRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/dynamic/TraderDynamicRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/item_events/CustomizationItemEventRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/item_events/HealthItemEventRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/item_events/HideoutItemEventRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/item_events/InsuranceItemEventRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/item_events/InventoryItemEventRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/item_events/NoteItemEventRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/item_events/PresetBuildItemEventRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/item_events/QuestItemEventRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/item_events/RagfairItemEventRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/item_events/RepairItemEventRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/item_events/TradeItemEventRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/item_events/WishlistItemEventRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/save_load/HealthSaveLoadRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/save_load/InraidSaveLoadRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/save_load/InsuranceSaveLoadRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/save_load/ProfileSaveLoadRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/serializers/BundleSerializer.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/serializers/ImageSerializer.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/serializers/NotifySerializer.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/static/BotStaticRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/static/BundleStaticRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/static/CustomizationStaticRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/static/DataStaticRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/static/DialogStaticRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/static/GameStaticRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/static/HealthStaticRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/static/InraidStaticRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/static/InsuranceStaticRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/static/ItemEventStaticRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/static/LauncherStaticRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/static/LocationStaticRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/static/MatchStaticRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/static/NotifierStaticRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/static/PresetStaticRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/static/ProfileStaticRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/static/QuestStaticRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/static/RagfairStaticRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/static/TraderStaticRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/routers/static/WeatherStaticRouter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/servers/ConfigServer.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/servers/DatabaseServer.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/servers/HttpServer.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/servers/RagfairServer.d.ts (92%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/servers/SaveServer.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/CustomHandbookItemService.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/CustomItemService.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile/types/services/customPresetService.d.ts => 3GetSptConfigFile/types/services/CustomPresetService.d.ts} (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/CustomTraderAssortService.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/FenceService.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/HashCacheService.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/InsuranceService.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/LocaleService.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/MatchLocationService.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/ModCompilerService.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/NotificationService.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/PaymentService.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/PlayerService.d.ts (100%) create mode 100644 TypeScript/3GetSptConfigFile/types/services/RagfairCategoriesService.d.ts rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/RagfairLinkedItemService.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/RagfairOfferService.d.ts (86%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/RagfairPriceService.d.ts (74%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/RagfairRequiredItemsService.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/TraderAssortService.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/mod/dynamicRouter/DynamicRouterMod.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/mod/dynamicRouter/DynamicRouterModService.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile/types/services/mod/image/imageRouteService.d.ts => 3GetSptConfigFile/types/services/mod/image/ImageRouteService.d.ts} (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/mod/onLoad/OnLoadMod.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/mod/onLoad/OnLoadModService.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/mod/onUpdate/OnUpdateMod.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/mod/onUpdate/OnUpdateModService.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/mod/staticRouter/StaticRouterMod.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/services/mod/staticRouter/StaticRouterModService.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/utils/App.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/utils/AyncQueue.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/utils/DatabaseImporter.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/utils/HashUtil.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/utils/HttpResponseUtil.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/utils/JsonUtil.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/utils/Logger.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/utils/MathUtil.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/utils/ObjectId.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/utils/RandomUtil.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/utils/TimeUtil.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/utils/UUidGenerator.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/utils/VFS.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/utils/Watermark.d.ts (83%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/utils/decorators/Singleton.d.ts (100%) rename TypeScript/{3.0GetSptConfigFile => 3GetSptConfigFile}/types/utils/decorators/constructor.d.ts (100%) delete mode 100644 TypeScript/4UseACustomConfigFile/types/loaders/AfterDbModLoader.d.ts delete mode 100644 TypeScript/4UseACustomConfigFile/types/loaders/DelayedModLoader.d.ts delete mode 100644 TypeScript/4UseACustomConfigFile/types/loaders/InitialModLoader.d.ts create mode 100644 TypeScript/4UseACustomConfigFile/types/loaders/PostAkiModLoader.d.ts create mode 100644 TypeScript/4UseACustomConfigFile/types/loaders/PostDBModLoader.d.ts create mode 100644 TypeScript/4UseACustomConfigFile/types/loaders/PreAkiModLoader.d.ts create mode 100644 TypeScript/4UseACustomConfigFile/types/models/eft/common/tables/IProfileTemplate.d.ts create mode 100644 TypeScript/4UseACustomConfigFile/types/models/eft/game/IReportNicknameRequestData.d.ts create mode 100644 TypeScript/4UseACustomConfigFile/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts create mode 100644 TypeScript/4UseACustomConfigFile/types/models/eft/match/IGetGroupStatusRequestData.d.ts create mode 100644 TypeScript/4UseACustomConfigFile/types/models/eft/match/IJoinMatchRequestData.d.ts create mode 100644 TypeScript/4UseACustomConfigFile/types/models/eft/match/IJoinMatchResult.d.ts create mode 100644 TypeScript/4UseACustomConfigFile/types/models/eft/profile/GetProfileStatusResponseData.d.ts delete mode 100644 TypeScript/4UseACustomConfigFile/types/models/enums/QuestStatus.d.ts delete mode 100644 TypeScript/4UseACustomConfigFile/types/models/external/IAfterDBLoadMod.d.ts create mode 100644 TypeScript/4UseACustomConfigFile/types/models/external/IPostAkiLoadMod.d.ts create mode 100644 TypeScript/4UseACustomConfigFile/types/models/external/IPostDBLoadMod.d.ts create mode 100644 TypeScript/4UseACustomConfigFile/types/models/external/IPreAkiLoadMod.d.ts delete mode 100644 TypeScript/4UseACustomConfigFile/types/models/external/mod.d.ts delete mode 100644 TypeScript/5ReplaceMethod/types/loaders/AfterDbModLoader.d.ts delete mode 100644 TypeScript/5ReplaceMethod/types/loaders/DelayedModLoader.d.ts delete mode 100644 TypeScript/5ReplaceMethod/types/loaders/InitialModLoader.d.ts create mode 100644 TypeScript/5ReplaceMethod/types/loaders/PostAkiModLoader.d.ts create mode 100644 TypeScript/5ReplaceMethod/types/loaders/PostDBModLoader.d.ts create mode 100644 TypeScript/5ReplaceMethod/types/loaders/PreAkiModLoader.d.ts create mode 100644 TypeScript/5ReplaceMethod/types/models/eft/common/tables/IProfileTemplate.d.ts create mode 100644 TypeScript/5ReplaceMethod/types/models/eft/game/IReportNicknameRequestData.d.ts create mode 100644 TypeScript/5ReplaceMethod/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts create mode 100644 TypeScript/5ReplaceMethod/types/models/eft/match/IGetGroupStatusRequestData.d.ts create mode 100644 TypeScript/5ReplaceMethod/types/models/eft/match/IJoinMatchRequestData.d.ts create mode 100644 TypeScript/5ReplaceMethod/types/models/eft/match/IJoinMatchResult.d.ts create mode 100644 TypeScript/5ReplaceMethod/types/models/eft/profile/GetProfileStatusResponseData.d.ts delete mode 100644 TypeScript/5ReplaceMethod/types/models/enums/QuestStatus.d.ts delete mode 100644 TypeScript/5ReplaceMethod/types/models/external/IAfterDBLoadMod.d.ts create mode 100644 TypeScript/5ReplaceMethod/types/models/external/IPostAkiLoadMod.d.ts create mode 100644 TypeScript/5ReplaceMethod/types/models/external/IPostDBLoadMod.d.ts create mode 100644 TypeScript/5ReplaceMethod/types/models/external/IPreAkiLoadMod.d.ts delete mode 100644 TypeScript/5ReplaceMethod/types/models/external/mod.d.ts delete mode 100644 TypeScript/6ReferenceAnotherClass/types/loaders/AfterDbModLoader.d.ts delete mode 100644 TypeScript/6ReferenceAnotherClass/types/loaders/DelayedModLoader.d.ts delete mode 100644 TypeScript/6ReferenceAnotherClass/types/loaders/InitialModLoader.d.ts create mode 100644 TypeScript/6ReferenceAnotherClass/types/loaders/PostAkiModLoader.d.ts create mode 100644 TypeScript/6ReferenceAnotherClass/types/loaders/PostDBModLoader.d.ts create mode 100644 TypeScript/6ReferenceAnotherClass/types/loaders/PreAkiModLoader.d.ts create mode 100644 TypeScript/6ReferenceAnotherClass/types/models/eft/common/tables/IProfileTemplate.d.ts create mode 100644 TypeScript/6ReferenceAnotherClass/types/models/eft/game/IReportNicknameRequestData.d.ts create mode 100644 TypeScript/6ReferenceAnotherClass/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts create mode 100644 TypeScript/6ReferenceAnotherClass/types/models/eft/match/IGetGroupStatusRequestData.d.ts create mode 100644 TypeScript/6ReferenceAnotherClass/types/models/eft/match/IJoinMatchRequestData.d.ts create mode 100644 TypeScript/6ReferenceAnotherClass/types/models/eft/match/IJoinMatchResult.d.ts create mode 100644 TypeScript/6ReferenceAnotherClass/types/models/eft/profile/GetProfileStatusResponseData.d.ts delete mode 100644 TypeScript/6ReferenceAnotherClass/types/models/enums/QuestStatus.d.ts delete mode 100644 TypeScript/6ReferenceAnotherClass/types/models/external/IAfterDBLoadMod.d.ts create mode 100644 TypeScript/6ReferenceAnotherClass/types/models/external/IPostAkiLoadMod.d.ts create mode 100644 TypeScript/6ReferenceAnotherClass/types/models/external/IPostDBLoadMod.d.ts create mode 100644 TypeScript/6ReferenceAnotherClass/types/models/external/IPreAkiLoadMod.d.ts delete mode 100644 TypeScript/6ReferenceAnotherClass/types/models/external/mod.d.ts delete mode 100644 TypeScript/7OnLoadHook/types/loaders/AfterDbModLoader.d.ts delete mode 100644 TypeScript/7OnLoadHook/types/loaders/DelayedModLoader.d.ts delete mode 100644 TypeScript/7OnLoadHook/types/loaders/InitialModLoader.d.ts create mode 100644 TypeScript/7OnLoadHook/types/loaders/PostAkiModLoader.d.ts create mode 100644 TypeScript/7OnLoadHook/types/loaders/PostDBModLoader.d.ts create mode 100644 TypeScript/7OnLoadHook/types/loaders/PreAkiModLoader.d.ts create mode 100644 TypeScript/7OnLoadHook/types/models/eft/common/tables/IProfileTemplate.d.ts create mode 100644 TypeScript/7OnLoadHook/types/models/eft/game/IReportNicknameRequestData.d.ts create mode 100644 TypeScript/7OnLoadHook/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts create mode 100644 TypeScript/7OnLoadHook/types/models/eft/match/IGetGroupStatusRequestData.d.ts create mode 100644 TypeScript/7OnLoadHook/types/models/eft/match/IJoinMatchRequestData.d.ts create mode 100644 TypeScript/7OnLoadHook/types/models/eft/match/IJoinMatchResult.d.ts create mode 100644 TypeScript/7OnLoadHook/types/models/eft/profile/GetProfileStatusResponseData.d.ts delete mode 100644 TypeScript/7OnLoadHook/types/models/enums/QuestStatus.d.ts delete mode 100644 TypeScript/7OnLoadHook/types/models/external/IAfterDBLoadMod.d.ts create mode 100644 TypeScript/7OnLoadHook/types/models/external/IPostAkiLoadMod.d.ts create mode 100644 TypeScript/7OnLoadHook/types/models/external/IPostDBLoadMod.d.ts create mode 100644 TypeScript/7OnLoadHook/types/models/external/IPreAkiLoadMod.d.ts delete mode 100644 TypeScript/7OnLoadHook/types/models/external/mod.d.ts delete mode 100644 TypeScript/8OnUpdateHook/types/loaders/AfterDbModLoader.d.ts delete mode 100644 TypeScript/8OnUpdateHook/types/loaders/DelayedModLoader.d.ts delete mode 100644 TypeScript/8OnUpdateHook/types/loaders/InitialModLoader.d.ts create mode 100644 TypeScript/8OnUpdateHook/types/loaders/PostAkiModLoader.d.ts create mode 100644 TypeScript/8OnUpdateHook/types/loaders/PostDBModLoader.d.ts create mode 100644 TypeScript/8OnUpdateHook/types/loaders/PreAkiModLoader.d.ts create mode 100644 TypeScript/8OnUpdateHook/types/models/eft/common/tables/IProfileTemplate.d.ts create mode 100644 TypeScript/8OnUpdateHook/types/models/eft/game/IReportNicknameRequestData.d.ts create mode 100644 TypeScript/8OnUpdateHook/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts create mode 100644 TypeScript/8OnUpdateHook/types/models/eft/match/IGetGroupStatusRequestData.d.ts create mode 100644 TypeScript/8OnUpdateHook/types/models/eft/match/IJoinMatchRequestData.d.ts create mode 100644 TypeScript/8OnUpdateHook/types/models/eft/match/IJoinMatchResult.d.ts create mode 100644 TypeScript/8OnUpdateHook/types/models/eft/profile/GetProfileStatusResponseData.d.ts delete mode 100644 TypeScript/8OnUpdateHook/types/models/enums/QuestStatus.d.ts delete mode 100644 TypeScript/8OnUpdateHook/types/models/external/IAfterDBLoadMod.d.ts create mode 100644 TypeScript/8OnUpdateHook/types/models/external/IPostAkiLoadMod.d.ts create mode 100644 TypeScript/8OnUpdateHook/types/models/external/IPostDBLoadMod.d.ts create mode 100644 TypeScript/8OnUpdateHook/types/models/external/IPreAkiLoadMod.d.ts delete mode 100644 TypeScript/8OnUpdateHook/types/models/external/mod.d.ts delete mode 100644 TypeScript/9RouterHooks/types/loaders/AfterDbModLoader.d.ts delete mode 100644 TypeScript/9RouterHooks/types/loaders/DelayedModLoader.d.ts delete mode 100644 TypeScript/9RouterHooks/types/loaders/InitialModLoader.d.ts create mode 100644 TypeScript/9RouterHooks/types/loaders/PostAkiModLoader.d.ts create mode 100644 TypeScript/9RouterHooks/types/loaders/PostDBModLoader.d.ts create mode 100644 TypeScript/9RouterHooks/types/loaders/PreAkiModLoader.d.ts create mode 100644 TypeScript/9RouterHooks/types/models/eft/common/tables/IProfileTemplate.d.ts create mode 100644 TypeScript/9RouterHooks/types/models/eft/game/IReportNicknameRequestData.d.ts create mode 100644 TypeScript/9RouterHooks/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts create mode 100644 TypeScript/9RouterHooks/types/models/eft/match/IGetGroupStatusRequestData.d.ts create mode 100644 TypeScript/9RouterHooks/types/models/eft/match/IJoinMatchRequestData.d.ts create mode 100644 TypeScript/9RouterHooks/types/models/eft/match/IJoinMatchResult.d.ts create mode 100644 TypeScript/9RouterHooks/types/models/eft/profile/GetProfileStatusResponseData.d.ts delete mode 100644 TypeScript/9RouterHooks/types/models/enums/QuestStatus.d.ts delete mode 100644 TypeScript/9RouterHooks/types/models/external/IAfterDBLoadMod.d.ts create mode 100644 TypeScript/9RouterHooks/types/models/external/IPostAkiLoadMod.d.ts create mode 100644 TypeScript/9RouterHooks/types/models/external/IPostDBLoadMod.d.ts create mode 100644 TypeScript/9RouterHooks/types/models/external/IPreAkiLoadMod.d.ts delete mode 100644 TypeScript/9RouterHooks/types/models/external/mod.d.ts diff --git a/TypeScript/10ScopesAndTypes/package.json b/TypeScript/10ScopesAndTypes/package.json index 44c6e49..e1e6c90 100644 --- a/TypeScript/10ScopesAndTypes/package.json +++ b/TypeScript/10ScopesAndTypes/package.json @@ -4,7 +4,7 @@ "main": "src/mod.js", "license": "MIT", "author": "Chomp", - "akiVersion": "3.0.1", + "akiVersion": "3.1.0", "scripts": { "setup:environment": "npm i", "build:unzipped": "copyfiles -e \"./node_modules/**/*.*\" -e \"./dist/**/*.*\" -e \"./package-lock.json\" -e \"./tsconfig.json\" -e \"./README.txt\" -e \"./mod.code-workspace\" \"./**/*.*\" ./dist", diff --git a/TypeScript/10ScopesAndTypes/src/mod.ts b/TypeScript/10ScopesAndTypes/src/mod.ts index cd22327..1b2663e 100644 --- a/TypeScript/10ScopesAndTypes/src/mod.ts +++ b/TypeScript/10ScopesAndTypes/src/mod.ts @@ -1,14 +1,14 @@ import { DependencyContainer, Lifecycle } from "tsyringe"; -import { IMod } from "@spt-aki/models/external/mod"; +import { IPreAkiLoadMod } from "@spt-aki/models/external/IPreAkiLoadMod"; +import { IPostAkiLoadMod } from "@spt-aki/models/external/IPostAkiLoadMod"; import { MyMod } from "./MyMod"; import { Processing } from "./Processing"; -class Mod implements IMod +class Mod implements IPreAkiLoadMod, IPostAkiLoadMod { // Perform these actions before server fully loads - public load(container: DependencyContainer): void - { + public preAkiLoad(container: DependencyContainer): void { // This class is registered as a singleton. This means ONE and only ONE bean // of this class will ever exist. container.register("MyMod", MyMod, {lifecycle: Lifecycle.Singleton}); @@ -18,7 +18,7 @@ class Mod implements IMod container.register("Processing", Processing); } - public delayedLoad(container: DependencyContainer): void + public postAkiLoad(container: DependencyContainer): void { // We will run this in a quick 5 loop to show how singletons and transients work for (let i = 0; i < 5; i++) diff --git a/TypeScript/10ScopesAndTypes/types/callbacks/GameCallbacks.d.ts b/TypeScript/10ScopesAndTypes/types/callbacks/GameCallbacks.d.ts index d5cad76..06da1b5 100644 --- a/TypeScript/10ScopesAndTypes/types/callbacks/GameCallbacks.d.ts +++ b/TypeScript/10ScopesAndTypes/types/callbacks/GameCallbacks.d.ts @@ -2,6 +2,7 @@ import { GameController } from "../controllers/GameController"; import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse"; import { IGameEmptyCrcRequestData } from "../models/eft/game/IGameEmptyCrcRequestData"; +import { IReportNicknameRequestData } from "../models/eft/game/IReportNicknameRequestData"; import { IVersionValidateRequestData } from "../models/eft/game/IVersionValidateRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; @@ -20,5 +21,6 @@ declare class GameCallbacks { validateGameVersion(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; gameKeepalive(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; getVersion(url: string, info: IEmptyRequestData, sessionID: string): string; + reportNickname(url: string, info: IReportNicknameRequestData, sessionID: string): INullResponseData; } export { GameCallbacks }; diff --git a/TypeScript/10ScopesAndTypes/types/callbacks/HealthCallbacks.d.ts b/TypeScript/10ScopesAndTypes/types/callbacks/HealthCallbacks.d.ts index 8f7b89d..8672be7 100644 --- a/TypeScript/10ScopesAndTypes/types/callbacks/HealthCallbacks.d.ts +++ b/TypeScript/10ScopesAndTypes/types/callbacks/HealthCallbacks.d.ts @@ -13,6 +13,13 @@ export declare class HealthCallbacks { protected profileHelper: ProfileHelper; protected healthController: HealthController; constructor(httpResponse: HttpResponseUtil, profileHelper: ProfileHelper, healthController: HealthController); + /** + * Custom aki server request found in modules/HealthSynchronizer.cs + * @param url + * @param info HealthListener.Instance.CurrentHealth class + * @param sessionID session id + * @returns empty response, no data sent back to client + */ syncHealth(url: string, info: ISyncHealthRequestData, sessionID: string): IGetBodyResponseData; offraidEat(pmcData: IPmcData, body: IOffraidEatRequestData, sessionID: string): IItemEventRouterResponse; offraidHeal(pmcData: IPmcData, body: IOffraidHealRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/10ScopesAndTypes/types/callbacks/InsuranceCallbacks.d.ts b/TypeScript/10ScopesAndTypes/types/callbacks/InsuranceCallbacks.d.ts index 520d0eb..6819960 100644 --- a/TypeScript/10ScopesAndTypes/types/callbacks/InsuranceCallbacks.d.ts +++ b/TypeScript/10ScopesAndTypes/types/callbacks/InsuranceCallbacks.d.ts @@ -3,6 +3,7 @@ import { OnLoadOnUpdate } from "../di/OnLoadOnUpdate"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -17,7 +18,7 @@ export declare class InsuranceCallbacks extends OnLoadOnUpdate { protected insuranceConfig: IInsuranceConfig; constructor(insuranceController: InsuranceController, insuranceService: InsuranceService, httpResponse: HttpResponseUtil, configServer: ConfigServer); onLoad(): void; - getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; + getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; onUpdate(secondsSinceLastRun: number): boolean; getRoute(): string; diff --git a/TypeScript/10ScopesAndTypes/types/callbacks/MatchCallbacks.d.ts b/TypeScript/10ScopesAndTypes/types/callbacks/MatchCallbacks.d.ts index 083c1f5..158d8df 100644 --- a/TypeScript/10ScopesAndTypes/types/callbacks/MatchCallbacks.d.ts +++ b/TypeScript/10ScopesAndTypes/types/callbacks/MatchCallbacks.d.ts @@ -1,9 +1,13 @@ import { MatchController } from "../controllers/MatchController"; +import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { DatabaseServer } from "../servers/DatabaseServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; @@ -16,18 +20,18 @@ export declare class MatchCallbacks { constructor(httpResponse: HttpResponseUtil, jsonUtil: JsonUtil, matchController: MatchController, databaseServer: DatabaseServer); updatePing(url: string, info: any, sessionID: string): INullResponseData; exitMatch(url: string, info: any, sessionID: string): INullResponseData; - exitToMenu(url: string, info: any, sessionID: string): INullResponseData; - startGroupSearch(url: string, info: any, sessionID: string): INullResponseData; - stopGroupSearch(url: string, info: any, sessionID: string): INullResponseData; + exitToMenu(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + startGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + stopGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; sendGroupInvite(url: string, info: any, sessionID: string): INullResponseData; acceptGroupInvite(url: string, info: any, sessionID: string): INullResponseData; cancelGroupInvite(url: string, info: any, sessionID: string): INullResponseData; putMetrics(url: string, info: any, sessionID: string): INullResponseData; getProfile(url: string, info: IGetProfileRequestData, sessionID: string): IGetBodyResponseData; - serverAvailable(url: string, info: any, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; - joinMatch(url: string, info: any, sessionID: string): IGetBodyResponseData; + serverAvailable(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; + joinMatch(url: string, info: IJoinMatchRequestData, sessionID: string): IGetBodyResponseData; getMetrics(url: string, info: any, sessionID: string): IGetBodyResponseData; - getGroupStatus(url: string, info: any, sessionID: string): IGetBodyResponseData; + getGroupStatus(url: string, info: IGetGroupStatusRequestData, sessionID: string): IGetBodyResponseData; createGroup(url: string, info: any, sessionID: string): IGetBodyResponseData; deleteGroup(url: string, info: any, sessionID: string): INullResponseData; startOfflineRaid(url: string, info: IStartOfflineRaidRequestData, sessionID: string): INullResponseData; diff --git a/TypeScript/10ScopesAndTypes/types/callbacks/ModCallbacks.d.ts b/TypeScript/10ScopesAndTypes/types/callbacks/ModCallbacks.d.ts index 866abf7..58342dc 100644 --- a/TypeScript/10ScopesAndTypes/types/callbacks/ModCallbacks.d.ts +++ b/TypeScript/10ScopesAndTypes/types/callbacks/ModCallbacks.d.ts @@ -1,5 +1,5 @@ import { OnLoad } from "../di/OnLoad"; -import { DelayedModLoader } from "../loaders/DelayedModLoader"; +import { PostAkiModLoader } from "../loaders/PostAkiModLoader"; import { IHttpConfig } from "../models/spt/config/IHttpConfig"; import { IHttpServer } from "../models/spt/server/IHttpServer"; import { ILogger } from "../models/spt/utils/ILogger"; @@ -9,10 +9,10 @@ declare class ModCallbacks extends OnLoad { protected logger: ILogger; protected httpResponse: HttpResponseUtil; protected httpServer: IHttpServer; - protected modLoader: DelayedModLoader; + protected postAkiModLoader: PostAkiModLoader; protected configServer: ConfigServer; protected httpConfig: IHttpConfig; - constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, modLoader: DelayedModLoader, configServer: ConfigServer); + constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, postAkiModLoader: PostAkiModLoader, configServer: ConfigServer); onLoad(): void; getRoute(): string; sendBundle(sessionID: string, req: any, resp: any, body: any): void; diff --git a/TypeScript/10ScopesAndTypes/types/callbacks/ProfileCallbacks.d.ts b/TypeScript/10ScopesAndTypes/types/callbacks/ProfileCallbacks.d.ts index 116e7c5..6a86fc0 100644 --- a/TypeScript/10ScopesAndTypes/types/callbacks/ProfileCallbacks.d.ts +++ b/TypeScript/10ScopesAndTypes/types/callbacks/ProfileCallbacks.d.ts @@ -3,6 +3,7 @@ import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IGetMiniProfileRequestData } from "../models/eft/launcher/IGetMiniProfileRequestData"; +import { GetProfileStatusResponseData } from "../models/eft/profile/GetProfileStatusResponseData"; import { IProfileChangeNicknameRequestData } from "../models/eft/profile/IProfileChangeNicknameRequestData"; import { IProfileChangeVoiceRequestData } from "../models/eft/profile/IProfileChangeVoiceRequestData"; import { IProfileCreateRequestData } from "../models/eft/profile/IProfileCreateRequestData"; @@ -23,7 +24,14 @@ export declare class ProfileCallbacks { changeNickname(url: string, info: IProfileChangeNicknameRequestData, sessionID: string): IGetBodyResponseData; validateNickname(url: string, info: IValidateNicknameRequestData, sessionID: string): IGetBodyResponseData; getReservedNickname(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; - getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; + /** + * Called when creating a character, when you choose a character face/voice + * @param url + * @param info response (empty) + * @param sessionID + * @returns + */ + getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; searchFriend(url: string, info: ISearchFriendRequestData, sessionID: string): IGetBodyResponseData; getMiniProfile(url: string, info: IGetMiniProfileRequestData, sessionID: string): string; getAllMiniProfiles(url: string, info: any, sessionID: string): string; diff --git a/TypeScript/10ScopesAndTypes/types/callbacks/RagfairCallbacks.d.ts b/TypeScript/10ScopesAndTypes/types/callbacks/RagfairCallbacks.d.ts index d5bab8b..da782e1 100644 --- a/TypeScript/10ScopesAndTypes/types/callbacks/RagfairCallbacks.d.ts +++ b/TypeScript/10ScopesAndTypes/types/callbacks/RagfairCallbacks.d.ts @@ -9,6 +9,7 @@ import { IAddOfferRequestData } from "../models/eft/ragfair/IAddOfferRequestData import { IExtendOfferRequestData } from "../models/eft/ragfair/IExtendOfferRequestData"; import { IGetItemPriceResult } from "../models/eft/ragfair/IGetItemPriceResult"; import { IGetMarketPriceRequestData } from "../models/eft/ragfair/IGetMarketPriceRequestData"; +import { IGetOffersResult } from "../models/eft/ragfair/IGetOffersResult"; import { IRemoveOfferRequestData } from "../models/eft/ragfair/IRemoveOfferRequestData"; import { ISearchRequestData } from "../models/eft/ragfair/ISearchRequestData"; import { IRagfairConfig } from "../models/spt/config/IRagfairConfig"; @@ -28,7 +29,7 @@ export declare class RagfairCallbacks extends OnLoadOnUpdate { constructor(httpResponse: HttpResponseUtil, logger: ILogger, jsonUtil: JsonUtil, ragfairServer: RagfairServer, ragfairController: RagfairController, configServer: ConfigServer); onLoad(): void; getRoute(): string; - search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; + search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; getMarketPrice(url: string, info: IGetMarketPriceRequestData, sessionID: string): IGetBodyResponseData; getItemPrices(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; addOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/10ScopesAndTypes/types/controllers/GameController.d.ts b/TypeScript/10ScopesAndTypes/types/controllers/GameController.d.ts index 5f516de..f4c3d2c 100644 --- a/TypeScript/10ScopesAndTypes/types/controllers/GameController.d.ts +++ b/TypeScript/10ScopesAndTypes/types/controllers/GameController.d.ts @@ -28,6 +28,11 @@ export declare class GameController { protected addMissingRepeatableQuestsProperty(pmcProfile: IPmcData): void; protected addMissingWeaponRepairSkill(pmcProfile: IPmcData): void; protected addMissingAkiVersionTagToProfile(fullProfile: IAkiProfile): void; + /** + * In 18876 bsg changed the pockets tplid to be one that has 3 additional special slots + * @param pmcProfile + */ + protected updateProfilePocketsToNewId(pmcProfile: IPmcData): void; protected addMissingArmorRepairSkill(pmcProfile: IPmcData): void; protected fixNullTraderSalesSums(pmcProfile: IPmcData): void; protected removeDanglingBackendCounters(pmcProfile: IPmcData): void; diff --git a/TypeScript/10ScopesAndTypes/types/controllers/InsuranceController.d.ts b/TypeScript/10ScopesAndTypes/types/controllers/InsuranceController.d.ts index db2c567..af45442 100644 --- a/TypeScript/10ScopesAndTypes/types/controllers/InsuranceController.d.ts +++ b/TypeScript/10ScopesAndTypes/types/controllers/InsuranceController.d.ts @@ -3,6 +3,7 @@ import { ItemHelper } from "../helpers/ItemHelper"; import { ProfileHelper } from "../helpers/ProfileHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -33,6 +34,12 @@ export declare class InsuranceController { insuranceService: InsuranceService, configServer: ConfigServer); processReturn(): void; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; - cost(info: IGetInsuranceCostRequestData, sessionID: string): any; + /** + * Calculate insurance cost + * @param info request object + * @param sessionID session id + * @returns response object to send to client + */ + cost(info: IGetInsuranceCostRequestData, sessionID: string): IGetInsuranceCostResponseData; doAbsolutelyNothing(): void; } diff --git a/TypeScript/10ScopesAndTypes/types/controllers/InventoryController.d.ts b/TypeScript/10ScopesAndTypes/types/controllers/InventoryController.d.ts index b732aa9..f24ab62 100644 --- a/TypeScript/10ScopesAndTypes/types/controllers/InventoryController.d.ts +++ b/TypeScript/10ScopesAndTypes/types/controllers/InventoryController.d.ts @@ -24,6 +24,8 @@ import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRout import { ILogger } from "../models/spt/utils/ILogger"; import { ItemEventRouter } from "../routers/ItemEventRouter"; import { DatabaseServer } from "../servers/DatabaseServer"; +import { FenceService } from "../services/FenceService"; +import { RagfairOfferService } from "../services/RagfairOfferService"; import { HashUtil } from "../utils/HashUtil"; import { JsonUtil } from "../utils/JsonUtil"; export declare class InventoryController { @@ -31,12 +33,14 @@ export declare class InventoryController { protected hashUtil: HashUtil; protected jsonUtil: JsonUtil; protected databaseServer: DatabaseServer; + protected fenceService: FenceService; protected presetHelper: PresetHelper; protected inventoryHelper: InventoryHelper; + protected ragfairOfferService: RagfairOfferService; protected profileHelper: ProfileHelper; protected paymentHelper: PaymentHelper; protected itemEventRouter: ItemEventRouter; - constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); + constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, fenceService: FenceService, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, ragfairOfferService: RagfairOfferService, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); /** * Move Item * change location of item with parentId and slotId @@ -93,9 +97,19 @@ export declare class InventoryController { tagItem(pmcData: IPmcData, body: IInventoryTagRequestData, sessionID: string): IItemEventRouterResponse; bindItem(pmcData: IPmcData, body: IInventoryBindRequestData, sessionID: string): IItemEventRouterResponse; /** - * Handles examining of the item * + * Handles examining an item + * @param pmcData player profile + * @param body request object + * @param sessionID session id + * @returns response */ examineItem(pmcData: IPmcData, body: IInventoryExamineRequestData, sessionID: string): IItemEventRouterResponse; + /** + * Get the tplid of an item from the examine request object + * @param body response request + * @returns tplid + */ + protected getItemTpl(body: IInventoryExamineRequestData): string; readEncyclopedia(pmcData: IPmcData, body: IInventoryReadEncyclopediaRequestData, sessionID: string): IItemEventRouterResponse; /** * Handles sorting of Inventory. diff --git a/TypeScript/10ScopesAndTypes/types/controllers/MatchController.d.ts b/TypeScript/10ScopesAndTypes/types/controllers/MatchController.d.ts index c322d96..7ef3fcc 100644 --- a/TypeScript/10ScopesAndTypes/types/controllers/MatchController.d.ts +++ b/TypeScript/10ScopesAndTypes/types/controllers/MatchController.d.ts @@ -2,7 +2,10 @@ import { ProfileHelper } from "../helpers/ProfileHelper"; import { TraderHelper } from "../helpers/TraderHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { IInRaidConfig } from "../models/spt/config/IInRaidConfig"; import { IMatchConfig } from "../models/spt/config/IMatchConfig"; @@ -20,11 +23,11 @@ export declare class MatchController { constructor(saveServer: SaveServer, profileHelper: ProfileHelper, matchLocationService: MatchLocationService, traderHelper: TraderHelper, configServer: ConfigServer); getEnabled(): boolean; getProfile(info: IGetProfileRequestData): IPmcData[]; - protected getMatch(location: any): any; createGroup(sessionID: string, info: any): any; deleteGroup(info: any): void; - joinMatch(info: any, sessionID: string): any[]; - getGroupStatus(info: any): any; + joinMatch(info: IJoinMatchRequestData, sessionID: string): IJoinMatchResult[]; + protected getMatch(location: string): any; + getGroupStatus(info: IGetGroupStatusRequestData): any; startOfflineRaid(info: IStartOfflineRaidRequestData, sessionID: string): void; endOfflineRaid(info: IEndOfflineRaidRequestData, sessionID: string): void; } diff --git a/TypeScript/10ScopesAndTypes/types/controllers/RagfairController.d.ts b/TypeScript/10ScopesAndTypes/types/controllers/RagfairController.d.ts index c758593..c4ffc15 100644 --- a/TypeScript/10ScopesAndTypes/types/controllers/RagfairController.d.ts +++ b/TypeScript/10ScopesAndTypes/types/controllers/RagfairController.d.ts @@ -60,6 +60,8 @@ export declare class RagfairController { protected ragfairConfig: IRagfairConfig; constructor(logger: ILogger, timeUtil: TimeUtil, httpResponse: HttpResponseUtil, itemEventRouter: ItemEventRouter, ragfairServer: RagfairServer, ragfairPriceService: RagfairPriceService, databaseServer: DatabaseServer, itemHelper: ItemHelper, saveServer: SaveServer, ragfairSellHelper: RagfairSellHelper, ragfairTaxHelper: RagfairTaxHelper, ragfairSortHelper: RagfairSortHelper, ragfairOfferHelper: RagfairOfferHelper, profileHelper: ProfileHelper, paymentService: PaymentService, handbookHelper: HandbookHelper, paymentHelper: PaymentHelper, inventoryHelper: InventoryHelper, ragfairHelper: RagfairHelper, ragfairOfferService: RagfairOfferService, ragfairRequiredItemsService: RagfairRequiredItemsService, ragfairOfferGenerator: RagfairOfferGenerator, configServer: ConfigServer); getOffers(sessionID: string, info: ISearchRequestData): IGetOffersResult; + protected isLinkedSearch(info: ISearchRequestData): boolean; + protected isRequiredSearch(info: ISearchRequestData): boolean; update(): void; getItemPrice(info: IGetMarketPriceRequestData): IGetItemPriceResult; addPlayerOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/10ScopesAndTypes/types/generators/BotWeaponGenerator.d.ts b/TypeScript/10ScopesAndTypes/types/generators/BotWeaponGenerator.d.ts index a43b18c..dd3ad69 100644 --- a/TypeScript/10ScopesAndTypes/types/generators/BotWeaponGenerator.d.ts +++ b/TypeScript/10ScopesAndTypes/types/generators/BotWeaponGenerator.d.ts @@ -41,6 +41,13 @@ export declare class BotWeaponGenerator { * @returns */ protected generateExtraMagazines(weaponMods: Item[], weaponTemplate: ITemplateItem, magCounts: MinMax, ammoTpl: string, inventory: PmcInventory): void; + /** + * Get a randomised number of bullets for a specific magazine + * @param magCounts min and max count of magazines + * @param magTemplate magazine to generate bullet count for + * @returns bullet count number + */ + protected getRandomisedBulletCount(magCounts: MinMax, magTemplate: ITemplateItem): number; /** * Get a randomised count of magazines * @param magCounts min and max value returned value can be between diff --git a/TypeScript/10ScopesAndTypes/types/generators/RagfairOfferGenerator.d.ts b/TypeScript/10ScopesAndTypes/types/generators/RagfairOfferGenerator.d.ts index de53ea9..6645c8d 100644 --- a/TypeScript/10ScopesAndTypes/types/generators/RagfairOfferGenerator.d.ts +++ b/TypeScript/10ScopesAndTypes/types/generators/RagfairOfferGenerator.d.ts @@ -18,6 +18,7 @@ import { JsonUtil } from "../utils/JsonUtil"; import { RandomUtil } from "../utils/RandomUtil"; import { TimeUtil } from "../utils/TimeUtil"; import { RagfairAssortGenerator } from "./RagfairAssortGenerator"; +import { RagfairCategoriesService } from "../services/RagfairCategoriesService"; export declare class RagfairOfferGenerator { protected logger: ILogger; protected jsonUtil: JsonUtil; @@ -31,11 +32,12 @@ export declare class RagfairOfferGenerator { protected ragfairAssortGenerator: RagfairAssortGenerator; protected ragfairOfferService: RagfairOfferService; protected ragfairPriceService: RagfairPriceService; + protected ragfairCategoriesService: RagfairCategoriesService; protected fenceService: FenceService; protected itemHelper: ItemHelper; protected configServer: ConfigServer; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); + constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, ragfairCategoriesService: RagfairCategoriesService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); createOffer(userID: string, time: number, items: Item[], barterScheme: IBarterScheme[], loyalLevel: number, price: number, sellInOnePiece?: boolean): IRagfairOffer; protected getTraderId(userID: string): string; protected getRating(userID: string): number; diff --git a/TypeScript/10ScopesAndTypes/types/helpers/BotGeneratorHelper.d.ts b/TypeScript/10ScopesAndTypes/types/helpers/BotGeneratorHelper.d.ts index e4b0c11..243e7a8 100644 --- a/TypeScript/10ScopesAndTypes/types/helpers/BotGeneratorHelper.d.ts +++ b/TypeScript/10ScopesAndTypes/types/helpers/BotGeneratorHelper.d.ts @@ -29,6 +29,12 @@ export declare class BotGeneratorHelper { protected botConfig: IBotConfig; constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, probabilityHelper: ProbabilityHelper, databaseServer: DatabaseServer, durabilityLimitsHelper: DurabilityLimitsHelper, itemHelper: ItemHelper, inventoryHelper: InventoryHelper, containerHelper: ContainerHelper, configServer: ConfigServer); generateModsForItem(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem, modSpawnChances: ModsChances, isPmc?: boolean): Item[]; + /** + * Is this magazine cylinder related (revolvers and grenade launchers) + * @param magazineParentName the name of the magazines parent + * @returns true if it is cylinder related + */ + magazineIsCylinderRelated(magazineParentName: string): boolean; /** * Get a list of non black-listed cartridges from the PMC bot config * @param modSlot mod item slot @@ -69,6 +75,12 @@ export declare class BotGeneratorHelper { * @param {object} parentTemplate The CylinderMagazine's template */ protected fillCamora(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem): void; + /** + * Take a record of camoras and merge the compatable shells into one array + * @param camorasWithShells camoras we want to merge into one array + * @returns string array of shells fro luitple camora sources + */ + protected mergeCamoraPoolsTogether(camorasWithShells: Record): string[]; generateExtraPropertiesForItem(itemTemplate: ITemplateItem, botRole?: any): { upd?: Upd; }; diff --git a/TypeScript/11BundleLoadingSample/types/loaders/DelayedModLoader.d.ts b/TypeScript/10ScopesAndTypes/types/loaders/PostAkiModLoader.d.ts similarity index 80% rename from TypeScript/11BundleLoadingSample/types/loaders/DelayedModLoader.d.ts rename to TypeScript/10ScopesAndTypes/types/loaders/PostAkiModLoader.d.ts index 2a05604..edc6e5d 100644 --- a/TypeScript/11BundleLoadingSample/types/loaders/DelayedModLoader.d.ts +++ b/TypeScript/10ScopesAndTypes/types/loaders/PostAkiModLoader.d.ts @@ -4,14 +4,14 @@ import { IModLoader } from "../models/spt/mod/IModLoader"; import { ModCompilerService } from "../services/ModCompilerService"; import { VFS } from "../utils/VFS"; import { BundleLoader } from "./BundleLoader"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class DelayedModLoader implements IModLoader { +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostAkiModLoader implements IModLoader { protected bundleLoader: BundleLoader; protected handbookController: HandbookController; protected vfs: VFS; protected modCompilerService: ModCompilerService; - protected initialModLoader: InitialModLoader; - constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, initialModLoader: InitialModLoader); + protected preAkiModLoader: PreAkiModLoader; + constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, preAkiModLoader: PreAkiModLoader); getBundles(local: boolean): string; getBundle(key: string, local: boolean): void; getModPath(mod: string): string; diff --git a/TypeScript/10ScopesAndTypes/types/loaders/AfterDbModLoader.d.ts b/TypeScript/10ScopesAndTypes/types/loaders/PostDBModLoader.d.ts similarity index 52% rename from TypeScript/10ScopesAndTypes/types/loaders/AfterDbModLoader.d.ts rename to TypeScript/10ScopesAndTypes/types/loaders/PostDBModLoader.d.ts index a9fc286..5101b7b 100644 --- a/TypeScript/10ScopesAndTypes/types/loaders/AfterDbModLoader.d.ts +++ b/TypeScript/10ScopesAndTypes/types/loaders/PostDBModLoader.d.ts @@ -1,9 +1,9 @@ import { DependencyContainer } from "tsyringe"; import { OnLoad } from "../di/OnLoad"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class AfterDbModLoader implements OnLoad { - protected initialModLoader: InitialModLoader; - constructor(initialModLoader: InitialModLoader); +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostDBModLoader implements OnLoad { + protected preAkiModLoader: PreAkiModLoader; + constructor(preAkiModLoader: PreAkiModLoader); onLoad(): void; getRoute(): string; getModPath(mod: string): string; diff --git a/TypeScript/11BundleLoadingSample/types/loaders/InitialModLoader.d.ts b/TypeScript/10ScopesAndTypes/types/loaders/PreAkiModLoader.d.ts similarity index 96% rename from TypeScript/11BundleLoadingSample/types/loaders/InitialModLoader.d.ts rename to TypeScript/10ScopesAndTypes/types/loaders/PreAkiModLoader.d.ts index 9a99dcc..6ded3c6 100644 --- a/TypeScript/11BundleLoadingSample/types/loaders/InitialModLoader.d.ts +++ b/TypeScript/10ScopesAndTypes/types/loaders/PreAkiModLoader.d.ts @@ -9,7 +9,7 @@ import { ModCompilerService } from "../services/ModCompilerService"; import { JsonUtil } from "../utils/JsonUtil"; import { VFS } from "../utils/VFS"; import { BundleLoader } from "./BundleLoader"; -export declare class InitialModLoader implements IModLoader { +export declare class PreAkiModLoader implements IModLoader { protected logger: ILogger; protected vfs: VFS; protected jsonUtil: JsonUtil; @@ -50,7 +50,7 @@ export declare class InitialModLoader implements IModLoader { * @param modToValidate package.json details * @returns boolean */ - protected isModSpt300Compatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; + protected isModSpt3XXCompatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; protected executeMods(container: DependencyContainer): void; sortModsLoadOrder(): string[]; diff --git a/TypeScript/10ScopesAndTypes/types/models/eft/common/IGlobals.d.ts b/TypeScript/10ScopesAndTypes/types/models/eft/common/IGlobals.d.ts index 456895c..9d28dbc 100644 --- a/TypeScript/10ScopesAndTypes/types/models/eft/common/IGlobals.d.ts +++ b/TypeScript/10ScopesAndTypes/types/models/eft/common/IGlobals.d.ts @@ -1128,8 +1128,11 @@ export interface Inertia { SprintAccelerationLimits: xyz; SideTime: xyz; DiagonalTime: xyz; + MaxTimeWithoutInput: xyz; MinDirectionBlendTime: number; - MoveTime: number; + MoveTimeRange: xyz; + ProneDirectionAccelerationRange: xyz; + ProneSpeedAccelerationRange: xyz; MinMovementAccelerationRangeRight: xyz; MaxMovementAccelerationRangeRight: xyz; } diff --git a/TypeScript/10ScopesAndTypes/types/models/eft/common/ILocationBase.d.ts b/TypeScript/10ScopesAndTypes/types/models/eft/common/ILocationBase.d.ts index ad48d32..b1dd448 100644 --- a/TypeScript/10ScopesAndTypes/types/models/eft/common/ILocationBase.d.ts +++ b/TypeScript/10ScopesAndTypes/types/models/eft/common/ILocationBase.d.ts @@ -26,6 +26,7 @@ export interface ILocationBase { DisabledForScav: boolean; DisabledScavExits: string; Enabled: boolean; + EnableCoop: boolean; GlobalLootChanceModifier: number; IconX: number; IconY: number; @@ -41,6 +42,7 @@ export interface ILocationBase { MinDistToFreePoint: number; MinMaxBots: MinMaxBot[]; MinPlayers: number; + MaxCoopGroup: number; Name: string; NewSpawn: boolean; OcculsionCullingEnabled: boolean; @@ -48,6 +50,8 @@ export interface ILocationBase { OpenZones: string; Preview: Preview; RequiredPlayerLevel: number; + PmcMaxPlayersInGroup: number; + ScavMaxPlayersInGroup: number; Rules: string; SafeLocation: boolean; Scene: Scene; @@ -55,7 +59,8 @@ export interface ILocationBase { UnixDateTime: number; _Id: string; doors: any[]; - escape_time_limit: number; + EscapeTimeLimit: number; + EscapeTimeLimitCoop: number; exit_access_time: number; exit_count: number; exit_time: number; @@ -63,6 +68,7 @@ export interface ILocationBase { filter_ex: string[]; limits: ILimit[]; matching_min_seconds: number; + GenerateLocalLootCache: boolean; maxItemCountInLocation: MaxItemCountInLocation[]; sav_summon_seconds: number; tmp_location_field_remove_me: number; @@ -106,6 +112,7 @@ export interface BossLocationSpawn { BossName: string; BossPlayer: boolean; BossZone: string; + RandomTimeSpawn: boolean; Time: number; TriggerId: string; TriggerName: string; diff --git a/TypeScript/10ScopesAndTypes/types/models/eft/common/IPmcData.d.ts b/TypeScript/10ScopesAndTypes/types/models/eft/common/IPmcData.d.ts index adc2aa5..56bf07f 100644 --- a/TypeScript/10ScopesAndTypes/types/models/eft/common/IPmcData.d.ts +++ b/TypeScript/10ScopesAndTypes/types/models/eft/common/IPmcData.d.ts @@ -6,7 +6,7 @@ import { MemberCategory } from "../../enums/MemberCategory"; export interface IPmcData { _id: string; aid: string; - savage: string; + savage?: string; Info: Info; Customization: Customization; Health: Health; @@ -28,13 +28,6 @@ export interface IPmcData { CarExtractCounts: CarExtractCounts; SurvivorClass: SurvivorClass; } -export declare enum SurvivorClass { - Unknown = 0, - Neutralizer = 1, - Marauder = 2, - Paramedic = 3, - Survivor = 4 -} export interface Info { EntryPoint: string; Nickname: string; @@ -56,6 +49,9 @@ export interface Info { Bans: IBan[]; BannedState: boolean; BannedUntil: number; + NeedWipeOptions: any[]; + lastCompletedWipe: LastCompleted; + lastCompletedEvent?: LastCompleted; } export interface Settings { Role: string; @@ -339,3 +335,13 @@ export interface RagfairInfo { } export interface CarExtractCounts { } +export declare enum SurvivorClass { + Unknown = 0, + Neutralizer = 1, + Marauder = 2, + Paramedic = 3, + Survivor = 4 +} +export interface LastCompleted { + $oid: string; +} diff --git a/TypeScript/10ScopesAndTypes/types/models/eft/common/tables/IProfileTemplate.d.ts b/TypeScript/10ScopesAndTypes/types/models/eft/common/tables/IProfileTemplate.d.ts new file mode 100644 index 0000000..c445e92 --- /dev/null +++ b/TypeScript/10ScopesAndTypes/types/models/eft/common/tables/IProfileTemplate.d.ts @@ -0,0 +1,23 @@ +import { Dialogue, WeaponBuild } from "../../profile/IAkiProfile"; +import { IPmcData } from "../IPmcData"; +export interface IProfileTemplates { + Standard: IProfileSides; + "Left Behind": IProfileSides; + "Prepare To Escape": IProfileSides; + "Edge Of Darkness": IProfileSides; +} +export interface IProfileSides { + usec: TemplateSide; + bear: TemplateSide; +} +export interface TemplateSide { + character: IPmcData; + suits: string[]; + dialogues: Record; + weaponbuilds: WeaponBuild[]; + trader: ProfileTraderTemplate; +} +export interface ProfileTraderTemplate { + initialStanding: number; + initialSalesSum: number; +} diff --git a/TypeScript/10ScopesAndTypes/types/models/eft/common/tables/IQuest.d.ts b/TypeScript/10ScopesAndTypes/types/models/eft/common/tables/IQuest.d.ts index e1fc888..942339b 100644 --- a/TypeScript/10ScopesAndTypes/types/models/eft/common/tables/IQuest.d.ts +++ b/TypeScript/10ScopesAndTypes/types/models/eft/common/tables/IQuest.d.ts @@ -23,6 +23,7 @@ export interface IQuest { status: string; KeyQuest: boolean; changeQuestMessageText: string; + side: string; } export interface Conditions { Started: AvailableForConditions[]; @@ -56,6 +57,7 @@ export interface AvailableForProps { plantTime?: number; zoneId?: string; type?: boolean; + countInRaid?: boolean; } export interface AvailableForCounter { id: string; diff --git a/TypeScript/10ScopesAndTypes/types/models/eft/common/tables/ITemplateItem.d.ts b/TypeScript/10ScopesAndTypes/types/models/eft/common/tables/ITemplateItem.d.ts index 934ea7d..23a1a14 100644 --- a/TypeScript/10ScopesAndTypes/types/models/eft/common/tables/ITemplateItem.d.ts +++ b/TypeScript/10ScopesAndTypes/types/models/eft/common/tables/ITemplateItem.d.ts @@ -50,6 +50,7 @@ export interface Props { UnlootableFromSide?: string[]; AnimationVariantsNumber?: number; DiscardingBlock?: boolean; + DropSoundType?: string; RagFairCommissionModifier?: number; IsAlwaysAvailableForInsurance?: boolean; DiscardLimit?: number; @@ -89,7 +90,7 @@ export interface Props { SightModesCount?: number; OpticCalibrationDistances?: number[]; ScopesCount?: number; - AimSensitivity: any; + AimSensitivity?: number | number[][]; Zooms?: number[][]; CalibrationDistances?: number[][]; Intensity?: number; @@ -200,6 +201,9 @@ export interface Props { MinRepairDegradation?: number; MaxRepairDegradation?: number; IronSightRange?: number; + IsFlareGun?: boolean; + IsGrenadeLauncher?: boolean; + IsOneoff?: boolean; MustBoltBeOpennedForExternalReload?: boolean; MustBoltBeOpennedForInternalReload?: boolean; BoltAction?: boolean; diff --git a/TypeScript/10ScopesAndTypes/types/models/eft/game/IReportNicknameRequestData.d.ts b/TypeScript/10ScopesAndTypes/types/models/eft/game/IReportNicknameRequestData.d.ts new file mode 100644 index 0000000..087c58b --- /dev/null +++ b/TypeScript/10ScopesAndTypes/types/models/eft/game/IReportNicknameRequestData.d.ts @@ -0,0 +1,3 @@ +export interface IReportNicknameRequestData { + uid: string; +} diff --git a/TypeScript/10ScopesAndTypes/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts b/TypeScript/10ScopesAndTypes/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts new file mode 100644 index 0000000..bf209c6 --- /dev/null +++ b/TypeScript/10ScopesAndTypes/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts @@ -0,0 +1 @@ +export declare type IGetInsuranceCostResponseData = Record>; diff --git a/TypeScript/10ScopesAndTypes/types/models/eft/match/IGetGroupStatusRequestData.d.ts b/TypeScript/10ScopesAndTypes/types/models/eft/match/IGetGroupStatusRequestData.d.ts new file mode 100644 index 0000000..cbdb77f --- /dev/null +++ b/TypeScript/10ScopesAndTypes/types/models/eft/match/IGetGroupStatusRequestData.d.ts @@ -0,0 +1,8 @@ +export interface IGetGroupStatusRequestData { + location: string; + savage: boolean; + dt: string; + keyId: string; + raidMode: string; + startInGroup: boolean; +} diff --git a/TypeScript/10ScopesAndTypes/types/models/eft/match/IJoinMatchRequestData.d.ts b/TypeScript/10ScopesAndTypes/types/models/eft/match/IJoinMatchRequestData.d.ts new file mode 100644 index 0000000..cd34f7b --- /dev/null +++ b/TypeScript/10ScopesAndTypes/types/models/eft/match/IJoinMatchRequestData.d.ts @@ -0,0 +1,12 @@ +export interface IJoinMatchRequestData { + location: string; + savage: boolean; + dt: string; + servers: Server[]; + keyId: string; +} +export interface Server { + ping: number; + ip: string; + port: string; +} diff --git a/TypeScript/10ScopesAndTypes/types/models/eft/match/IJoinMatchResult.d.ts b/TypeScript/10ScopesAndTypes/types/models/eft/match/IJoinMatchResult.d.ts new file mode 100644 index 0000000..df695f4 --- /dev/null +++ b/TypeScript/10ScopesAndTypes/types/models/eft/match/IJoinMatchResult.d.ts @@ -0,0 +1,11 @@ +export interface IJoinMatchResult { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; + version: string; + location: string; + gamemode: string; + shortid: string; +} diff --git a/TypeScript/10ScopesAndTypes/types/models/eft/match/IStartOffineRaidRequestData.d.ts b/TypeScript/10ScopesAndTypes/types/models/eft/match/IStartOffineRaidRequestData.d.ts index 84bccc8..7cc457c 100644 --- a/TypeScript/10ScopesAndTypes/types/models/eft/match/IStartOffineRaidRequestData.d.ts +++ b/TypeScript/10ScopesAndTypes/types/models/eft/match/IStartOffineRaidRequestData.d.ts @@ -1,6 +1,5 @@ export interface IStartOfflineRaidRequestData { locationName: string; - entryPoint: string; startTime: number; dateTime: string; gameSettings: GameSettings; diff --git a/TypeScript/10ScopesAndTypes/types/models/eft/profile/GetProfileStatusResponseData.d.ts b/TypeScript/10ScopesAndTypes/types/models/eft/profile/GetProfileStatusResponseData.d.ts new file mode 100644 index 0000000..eee9b4f --- /dev/null +++ b/TypeScript/10ScopesAndTypes/types/models/eft/profile/GetProfileStatusResponseData.d.ts @@ -0,0 +1,11 @@ +export interface GetProfileStatusResponseData { + maxPveCountExceeded: false; + profiles: ProfileData[]; +} +export interface ProfileData { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; +} diff --git a/TypeScript/10ScopesAndTypes/types/models/eft/ragfair/IGetOffersResult.d.ts b/TypeScript/10ScopesAndTypes/types/models/eft/ragfair/IGetOffersResult.d.ts index 1c11422..fbc631d 100644 --- a/TypeScript/10ScopesAndTypes/types/models/eft/ragfair/IGetOffersResult.d.ts +++ b/TypeScript/10ScopesAndTypes/types/models/eft/ragfair/IGetOffersResult.d.ts @@ -1,6 +1,6 @@ import { IRagfairOffer } from "./IRagfairOffer"; export interface IGetOffersResult { - categories: Record; + categories?: Record; offers: IRagfairOffer[]; offersCount: number; selectedCategory: string; diff --git a/TypeScript/10ScopesAndTypes/types/models/enums/QuestStatus.d.ts b/TypeScript/10ScopesAndTypes/types/models/enums/QuestStatus.d.ts deleted file mode 100644 index 6335c73..0000000 --- a/TypeScript/10ScopesAndTypes/types/models/enums/QuestStatus.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -export declare enum QuestStatus { - Locked = 0, - AvailableForStart = 1, - Started = 2, - AvailableForFinish = 3, - Success = 4, - Fail = 5, - FailRestartable = 6, - MarkedAsFailed = 7 -} diff --git a/TypeScript/10ScopesAndTypes/types/models/external/IAfterDBLoadMod.d.ts b/TypeScript/10ScopesAndTypes/types/models/external/IAfterDBLoadMod.d.ts deleted file mode 100644 index 7f08b9e..0000000 --- a/TypeScript/10ScopesAndTypes/types/models/external/IAfterDBLoadMod.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IAfterDBLoadMod { - loadAfterDbInit(container: DependencyContainer): void; -} diff --git a/TypeScript/10ScopesAndTypes/types/models/external/IPostAkiLoadMod.d.ts b/TypeScript/10ScopesAndTypes/types/models/external/IPostAkiLoadMod.d.ts new file mode 100644 index 0000000..f6950e8 --- /dev/null +++ b/TypeScript/10ScopesAndTypes/types/models/external/IPostAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostAkiLoadMod { + postAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/10ScopesAndTypes/types/models/external/IPostDBLoadMod.d.ts b/TypeScript/10ScopesAndTypes/types/models/external/IPostDBLoadMod.d.ts new file mode 100644 index 0000000..ca7c682 --- /dev/null +++ b/TypeScript/10ScopesAndTypes/types/models/external/IPostDBLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostDBLoadMod { + postDBLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/10ScopesAndTypes/types/models/external/IPreAkiLoadMod.d.ts b/TypeScript/10ScopesAndTypes/types/models/external/IPreAkiLoadMod.d.ts new file mode 100644 index 0000000..ae7579e --- /dev/null +++ b/TypeScript/10ScopesAndTypes/types/models/external/IPreAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPreAkiLoadMod { + preAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/10ScopesAndTypes/types/models/external/mod.d.ts b/TypeScript/10ScopesAndTypes/types/models/external/mod.d.ts deleted file mode 100644 index 47939e9..0000000 --- a/TypeScript/10ScopesAndTypes/types/models/external/mod.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IMod { - load(container: DependencyContainer): void; - delayedLoad(container: DependencyContainer): void; -} diff --git a/TypeScript/10ScopesAndTypes/types/models/spt/config/IBotConfig.d.ts b/TypeScript/10ScopesAndTypes/types/models/spt/config/IBotConfig.d.ts index 5fb9d93..f8cf39b 100644 --- a/TypeScript/10ScopesAndTypes/types/models/spt/config/IBotConfig.d.ts +++ b/TypeScript/10ScopesAndTypes/types/models/spt/config/IBotConfig.d.ts @@ -18,6 +18,7 @@ export interface PresetBatch { bossKojaniy: number; bossSanitar: number; bossTagilla: number; + bossKnight: number; bossTest: number; cursedAssault: number; followerBully: number; @@ -28,6 +29,8 @@ export interface PresetBatch { followerKojaniy: number; followerSanitar: number; followerTagilla: number; + followerBirdEye: number; + followerBigPipe: number; followerTest: number; marksman: number; pmcBot: number; diff --git a/TypeScript/10ScopesAndTypes/types/models/spt/config/IRagfairConfig.d.ts b/TypeScript/10ScopesAndTypes/types/models/spt/config/IRagfairConfig.d.ts index 2d151ca..8518252 100644 --- a/TypeScript/10ScopesAndTypes/types/models/spt/config/IRagfairConfig.d.ts +++ b/TypeScript/10ScopesAndTypes/types/models/spt/config/IRagfairConfig.d.ts @@ -30,6 +30,7 @@ export interface Dynamic { expiredOfferThreshold: number; offerItemCount: MinMax; price: MinMax; + presetPrice: MinMax; endTimeSeconds: MinMax; condition: Condition; stackablePercent: MinMax; diff --git a/TypeScript/10ScopesAndTypes/types/models/spt/server/IDatabaseTables.d.ts b/TypeScript/10ScopesAndTypes/types/models/spt/server/IDatabaseTables.d.ts index e0d3fdd..9978459 100644 --- a/TypeScript/10ScopesAndTypes/types/models/spt/server/IDatabaseTables.d.ts +++ b/TypeScript/10ScopesAndTypes/types/models/spt/server/IDatabaseTables.d.ts @@ -6,6 +6,7 @@ import { ICustomizationItem } from "../../eft/common/tables/ICustomizationItem"; import { IHandbookBase } from "../../eft/common/tables/IHandbookBase"; import { ILootBase } from "../../eft/common/tables/ILootBase"; import { IMatch } from "../../eft/common/tables/IMatch"; +import { IProfileTemplates } from "../../eft/common/tables/IProfileTemplate"; import { IQuest } from "../../eft/common/tables/IQuest"; import { IRepeatableQuestDatabase } from "../../eft/common/tables/IRepeatableQuests"; import { ITemplateItem } from "../../eft/common/tables/ITemplateItem"; @@ -39,10 +40,13 @@ export interface IDatabaseTables { items: Record; quests: IQuest[]; repeatableQuests: IRepeatableQuestDatabase; + /** DEPRECATED - Items file found in the client, massivly out of date compared to templates.items, try not to use this, remove ASAP*/ clientItems: Record; handbook: IHandbookBase; customization: Record; - profiles: any; + /** The profile templates listed in the launcher on profile creation, split by account type (e.g. Standard) then side (e.g. bear/usec) */ + profiles: IProfileTemplates; + /** Flea prices of items - gathered from online flea market dump */ prices: Record; }; traders?: Record; diff --git a/TypeScript/10ScopesAndTypes/types/servers/RagfairServer.d.ts b/TypeScript/10ScopesAndTypes/types/servers/RagfairServer.d.ts index 60c92b5..bc86cdb 100644 --- a/TypeScript/10ScopesAndTypes/types/servers/RagfairServer.d.ts +++ b/TypeScript/10ScopesAndTypes/types/servers/RagfairServer.d.ts @@ -17,7 +17,8 @@ export declare class RagfairServer { constructor(logger: ILogger, ragfairOfferGenerator: RagfairOfferGenerator, ragfairOfferService: RagfairOfferService, ragfairCategoriesService: RagfairCategoriesService, ragfairRequiredItemsService: RagfairRequiredItemsService, configServer: ConfigServer); load(): void; update(): void; - getCategories(): Record; + getAllCategories(): Record; + getBespokeCategories(offers: IRagfairOffer[]): Record; /** * Disable/Hide an offer from flea * @param offerId diff --git a/TypeScript/10ScopesAndTypes/types/services/RagfairCategoriesService.d.ts b/TypeScript/10ScopesAndTypes/types/services/RagfairCategoriesService.d.ts index 09956cc..83910e5 100644 --- a/TypeScript/10ScopesAndTypes/types/services/RagfairCategoriesService.d.ts +++ b/TypeScript/10ScopesAndTypes/types/services/RagfairCategoriesService.d.ts @@ -1,10 +1,40 @@ import { IRagfairOffer } from "../models/eft/ragfair/IRagfairOffer"; +import { ILogger } from "../models/spt/utils/ILogger"; export declare class RagfairCategoriesService { - updateCategories(offers: IRagfairOffer[]): void; + protected logger: ILogger; protected categories: Record; - getCategories(): Record; - getCategoryByItemId(itemId: string): number; - resetCategories(): void; - setCategoryValue(itemId: string, newValue: number): void; - incrementCategory(itemId: string): void; + constructor(logger: ILogger); + /** + * Get all flea categories and their count of offers + * @returns item categories and count + */ + getAllCategories(): Record; + /** + * With the supplied items, get custom categories + * @returns a custom list of categories + */ + getBespokeCategories(offers: IRagfairOffer[]): Record; + /** + * Take an array of ragfair offers and create a dictionary of items with thier corrisponding offer count + * @param offers ragfair offers + * @returns categories and count + */ + protected processOffersIntoCategories(offers: IRagfairOffer[]): Record; + /** + * Increment or decrement a category array + * @param offer offer to process + * @param categories categories to update + * @param increment should item be incremented or decremented + */ + protected addOrIncrementCategory(offer: IRagfairOffer, categories: Record, increment?: boolean): void; + /** + * Increase category count by 1 + * @param offer + */ + incrementCategory(offer: IRagfairOffer): void; + /** + * Reduce category count by 1 + * @param offer + */ + decrementCategory(offer: IRagfairOffer): void; } diff --git a/TypeScript/10ScopesAndTypes/types/services/RagfairOfferService.d.ts b/TypeScript/10ScopesAndTypes/types/services/RagfairOfferService.d.ts index 7afbf8c..7398a8f 100644 --- a/TypeScript/10ScopesAndTypes/types/services/RagfairOfferService.d.ts +++ b/TypeScript/10ScopesAndTypes/types/services/RagfairOfferService.d.ts @@ -11,12 +11,14 @@ import { DatabaseServer } from "../servers/DatabaseServer"; import { SaveServer } from "../servers/SaveServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; import { TimeUtil } from "../utils/TimeUtil"; +import { RagfairCategoriesService } from "./RagfairCategoriesService"; export declare class RagfairOfferService { protected logger: ILogger; protected timeUtil: TimeUtil; protected databaseServer: DatabaseServer; protected saveServer: SaveServer; protected ragfairServerHelper: RagfairServerHelper; + protected ragfairCategoriesService: RagfairCategoriesService; protected profileHelper: ProfileHelper; protected itemEventRouter: ItemEventRouter; protected httpResponse: HttpResponseUtil; @@ -26,12 +28,16 @@ export declare class RagfairOfferService { protected expiredOffers: Item[]; protected offers: IRagfairOffer[]; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, ragfairCategoriesService: RagfairCategoriesService, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + /** + * Get all offers + * @returns IRagfairOffer array + */ getOffers(): IRagfairOffer[]; getOfferByOfferId(offerId: string): IRagfairOffer; getOffersOfType(templateId: string): IRagfairOffer[]; addOffer(offer: IRagfairOffer): void; - addOfferToExpired(offer: Item): void; + addOfferToExpired(staleOffer: IRagfairOffer): void; setTraderUpdateStatus(traderId: string, shouldUpdate: boolean): void; shouldTraderBeUpdated(traderID: string): boolean; getExpiredOfferCount(): number; diff --git a/TypeScript/10ScopesAndTypes/types/services/RagfairPriceService.d.ts b/TypeScript/10ScopesAndTypes/types/services/RagfairPriceService.d.ts index 5256b99..e3168a6 100644 --- a/TypeScript/10ScopesAndTypes/types/services/RagfairPriceService.d.ts +++ b/TypeScript/10ScopesAndTypes/types/services/RagfairPriceService.d.ts @@ -28,5 +28,19 @@ export declare class RagfairPriceService { getFleaPriceForItem(tplId: string): number; getBarterPrice(barterScheme: IBarterScheme[]): number; getDynamicOfferPrice(items: Item[], desiredCurrency: string): number; + /** + * Multiply the price by a randomised curve where n = 2, shift = 2 + * @param existingPrice price to alter + * @param isPreset is the item we're multiplying a preset + * @returns multiplied price + */ + protected randomisePrice(existingPrice: number, isPreset: boolean): number; + /** + * Calculate the cost of a weapon preset by adding together the price of its mods + base price of default weapon preset + * @param item base weapon + * @param items weapon plus mods + * @param existingPrice price of existing base weapon + * @returns + */ getWeaponPresetPrice(item: Item, items: Item[], existingPrice: number): number; } diff --git a/TypeScript/10ScopesAndTypes/types/utils/Watermark.d.ts b/TypeScript/10ScopesAndTypes/types/utils/Watermark.d.ts index 111bdd0..c6dc120 100644 --- a/TypeScript/10ScopesAndTypes/types/utils/Watermark.d.ts +++ b/TypeScript/10ScopesAndTypes/types/utils/Watermark.d.ts @@ -28,7 +28,12 @@ export declare class Watermark { protected text: string[]; protected versionLabel: string; initialize(): void; - getVersionTag(): string; + /** + * Get a version string (x.x.x) or (x.x.x-BLEEDINGEDGE) OR (X.X.X (18xxx)) + * @param withEftVersion Include the eft version this spt version was made for + * @returns string + */ + getVersionTag(withEftVersion?: boolean): string; getVersionLabel(): string; /** Set window title */ setTitle(): void; diff --git a/TypeScript/11BundleLoadingSample/package.json b/TypeScript/11BundleLoadingSample/package.json index 44dc282..1c6b246 100644 --- a/TypeScript/11BundleLoadingSample/package.json +++ b/TypeScript/11BundleLoadingSample/package.json @@ -4,7 +4,7 @@ "author": "Chomp", "license": "MIT", "main": "src/mod.js", - "akiVersion": "3.0.1", + "akiVersion": "3.1.0", "isBundleMod": true, "scripts": { "setup:environment": "npm i", diff --git a/TypeScript/11BundleLoadingSample/src/mod.ts b/TypeScript/11BundleLoadingSample/src/mod.ts index 37decd2..25c5fa9 100644 --- a/TypeScript/11BundleLoadingSample/src/mod.ts +++ b/TypeScript/11BundleLoadingSample/src/mod.ts @@ -1,15 +1,10 @@ import { DependencyContainer } from "tsyringe"; -import { IMod } from "@spt-aki/models/external/mod"; +import { IPostAkiLoadMod } from "@spt-aki/models/external/IPostAkiLoadMod"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; -class Mod implements IMod +class Mod implements IPostAkiLoadMod { - public load(container: DependencyContainer): void - { - return; - } - - public delayedLoad(container: DependencyContainer): void + public postAkiLoad(container: DependencyContainer): void { // get the logger from the server container const logger = container.resolve("WinstonLogger"); diff --git a/TypeScript/11BundleLoadingSample/types/callbacks/GameCallbacks.d.ts b/TypeScript/11BundleLoadingSample/types/callbacks/GameCallbacks.d.ts index d5cad76..06da1b5 100644 --- a/TypeScript/11BundleLoadingSample/types/callbacks/GameCallbacks.d.ts +++ b/TypeScript/11BundleLoadingSample/types/callbacks/GameCallbacks.d.ts @@ -2,6 +2,7 @@ import { GameController } from "../controllers/GameController"; import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse"; import { IGameEmptyCrcRequestData } from "../models/eft/game/IGameEmptyCrcRequestData"; +import { IReportNicknameRequestData } from "../models/eft/game/IReportNicknameRequestData"; import { IVersionValidateRequestData } from "../models/eft/game/IVersionValidateRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; @@ -20,5 +21,6 @@ declare class GameCallbacks { validateGameVersion(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; gameKeepalive(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; getVersion(url: string, info: IEmptyRequestData, sessionID: string): string; + reportNickname(url: string, info: IReportNicknameRequestData, sessionID: string): INullResponseData; } export { GameCallbacks }; diff --git a/TypeScript/11BundleLoadingSample/types/callbacks/HealthCallbacks.d.ts b/TypeScript/11BundleLoadingSample/types/callbacks/HealthCallbacks.d.ts index 8f7b89d..8672be7 100644 --- a/TypeScript/11BundleLoadingSample/types/callbacks/HealthCallbacks.d.ts +++ b/TypeScript/11BundleLoadingSample/types/callbacks/HealthCallbacks.d.ts @@ -13,6 +13,13 @@ export declare class HealthCallbacks { protected profileHelper: ProfileHelper; protected healthController: HealthController; constructor(httpResponse: HttpResponseUtil, profileHelper: ProfileHelper, healthController: HealthController); + /** + * Custom aki server request found in modules/HealthSynchronizer.cs + * @param url + * @param info HealthListener.Instance.CurrentHealth class + * @param sessionID session id + * @returns empty response, no data sent back to client + */ syncHealth(url: string, info: ISyncHealthRequestData, sessionID: string): IGetBodyResponseData; offraidEat(pmcData: IPmcData, body: IOffraidEatRequestData, sessionID: string): IItemEventRouterResponse; offraidHeal(pmcData: IPmcData, body: IOffraidHealRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/11BundleLoadingSample/types/callbacks/InsuranceCallbacks.d.ts b/TypeScript/11BundleLoadingSample/types/callbacks/InsuranceCallbacks.d.ts index 520d0eb..6819960 100644 --- a/TypeScript/11BundleLoadingSample/types/callbacks/InsuranceCallbacks.d.ts +++ b/TypeScript/11BundleLoadingSample/types/callbacks/InsuranceCallbacks.d.ts @@ -3,6 +3,7 @@ import { OnLoadOnUpdate } from "../di/OnLoadOnUpdate"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -17,7 +18,7 @@ export declare class InsuranceCallbacks extends OnLoadOnUpdate { protected insuranceConfig: IInsuranceConfig; constructor(insuranceController: InsuranceController, insuranceService: InsuranceService, httpResponse: HttpResponseUtil, configServer: ConfigServer); onLoad(): void; - getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; + getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; onUpdate(secondsSinceLastRun: number): boolean; getRoute(): string; diff --git a/TypeScript/11BundleLoadingSample/types/callbacks/MatchCallbacks.d.ts b/TypeScript/11BundleLoadingSample/types/callbacks/MatchCallbacks.d.ts index 083c1f5..158d8df 100644 --- a/TypeScript/11BundleLoadingSample/types/callbacks/MatchCallbacks.d.ts +++ b/TypeScript/11BundleLoadingSample/types/callbacks/MatchCallbacks.d.ts @@ -1,9 +1,13 @@ import { MatchController } from "../controllers/MatchController"; +import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { DatabaseServer } from "../servers/DatabaseServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; @@ -16,18 +20,18 @@ export declare class MatchCallbacks { constructor(httpResponse: HttpResponseUtil, jsonUtil: JsonUtil, matchController: MatchController, databaseServer: DatabaseServer); updatePing(url: string, info: any, sessionID: string): INullResponseData; exitMatch(url: string, info: any, sessionID: string): INullResponseData; - exitToMenu(url: string, info: any, sessionID: string): INullResponseData; - startGroupSearch(url: string, info: any, sessionID: string): INullResponseData; - stopGroupSearch(url: string, info: any, sessionID: string): INullResponseData; + exitToMenu(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + startGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + stopGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; sendGroupInvite(url: string, info: any, sessionID: string): INullResponseData; acceptGroupInvite(url: string, info: any, sessionID: string): INullResponseData; cancelGroupInvite(url: string, info: any, sessionID: string): INullResponseData; putMetrics(url: string, info: any, sessionID: string): INullResponseData; getProfile(url: string, info: IGetProfileRequestData, sessionID: string): IGetBodyResponseData; - serverAvailable(url: string, info: any, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; - joinMatch(url: string, info: any, sessionID: string): IGetBodyResponseData; + serverAvailable(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; + joinMatch(url: string, info: IJoinMatchRequestData, sessionID: string): IGetBodyResponseData; getMetrics(url: string, info: any, sessionID: string): IGetBodyResponseData; - getGroupStatus(url: string, info: any, sessionID: string): IGetBodyResponseData; + getGroupStatus(url: string, info: IGetGroupStatusRequestData, sessionID: string): IGetBodyResponseData; createGroup(url: string, info: any, sessionID: string): IGetBodyResponseData; deleteGroup(url: string, info: any, sessionID: string): INullResponseData; startOfflineRaid(url: string, info: IStartOfflineRaidRequestData, sessionID: string): INullResponseData; diff --git a/TypeScript/11BundleLoadingSample/types/callbacks/ModCallbacks.d.ts b/TypeScript/11BundleLoadingSample/types/callbacks/ModCallbacks.d.ts index 866abf7..58342dc 100644 --- a/TypeScript/11BundleLoadingSample/types/callbacks/ModCallbacks.d.ts +++ b/TypeScript/11BundleLoadingSample/types/callbacks/ModCallbacks.d.ts @@ -1,5 +1,5 @@ import { OnLoad } from "../di/OnLoad"; -import { DelayedModLoader } from "../loaders/DelayedModLoader"; +import { PostAkiModLoader } from "../loaders/PostAkiModLoader"; import { IHttpConfig } from "../models/spt/config/IHttpConfig"; import { IHttpServer } from "../models/spt/server/IHttpServer"; import { ILogger } from "../models/spt/utils/ILogger"; @@ -9,10 +9,10 @@ declare class ModCallbacks extends OnLoad { protected logger: ILogger; protected httpResponse: HttpResponseUtil; protected httpServer: IHttpServer; - protected modLoader: DelayedModLoader; + protected postAkiModLoader: PostAkiModLoader; protected configServer: ConfigServer; protected httpConfig: IHttpConfig; - constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, modLoader: DelayedModLoader, configServer: ConfigServer); + constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, postAkiModLoader: PostAkiModLoader, configServer: ConfigServer); onLoad(): void; getRoute(): string; sendBundle(sessionID: string, req: any, resp: any, body: any): void; diff --git a/TypeScript/11BundleLoadingSample/types/callbacks/ProfileCallbacks.d.ts b/TypeScript/11BundleLoadingSample/types/callbacks/ProfileCallbacks.d.ts index 116e7c5..6a86fc0 100644 --- a/TypeScript/11BundleLoadingSample/types/callbacks/ProfileCallbacks.d.ts +++ b/TypeScript/11BundleLoadingSample/types/callbacks/ProfileCallbacks.d.ts @@ -3,6 +3,7 @@ import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IGetMiniProfileRequestData } from "../models/eft/launcher/IGetMiniProfileRequestData"; +import { GetProfileStatusResponseData } from "../models/eft/profile/GetProfileStatusResponseData"; import { IProfileChangeNicknameRequestData } from "../models/eft/profile/IProfileChangeNicknameRequestData"; import { IProfileChangeVoiceRequestData } from "../models/eft/profile/IProfileChangeVoiceRequestData"; import { IProfileCreateRequestData } from "../models/eft/profile/IProfileCreateRequestData"; @@ -23,7 +24,14 @@ export declare class ProfileCallbacks { changeNickname(url: string, info: IProfileChangeNicknameRequestData, sessionID: string): IGetBodyResponseData; validateNickname(url: string, info: IValidateNicknameRequestData, sessionID: string): IGetBodyResponseData; getReservedNickname(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; - getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; + /** + * Called when creating a character, when you choose a character face/voice + * @param url + * @param info response (empty) + * @param sessionID + * @returns + */ + getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; searchFriend(url: string, info: ISearchFriendRequestData, sessionID: string): IGetBodyResponseData; getMiniProfile(url: string, info: IGetMiniProfileRequestData, sessionID: string): string; getAllMiniProfiles(url: string, info: any, sessionID: string): string; diff --git a/TypeScript/11BundleLoadingSample/types/callbacks/RagfairCallbacks.d.ts b/TypeScript/11BundleLoadingSample/types/callbacks/RagfairCallbacks.d.ts index d5bab8b..da782e1 100644 --- a/TypeScript/11BundleLoadingSample/types/callbacks/RagfairCallbacks.d.ts +++ b/TypeScript/11BundleLoadingSample/types/callbacks/RagfairCallbacks.d.ts @@ -9,6 +9,7 @@ import { IAddOfferRequestData } from "../models/eft/ragfair/IAddOfferRequestData import { IExtendOfferRequestData } from "../models/eft/ragfair/IExtendOfferRequestData"; import { IGetItemPriceResult } from "../models/eft/ragfair/IGetItemPriceResult"; import { IGetMarketPriceRequestData } from "../models/eft/ragfair/IGetMarketPriceRequestData"; +import { IGetOffersResult } from "../models/eft/ragfair/IGetOffersResult"; import { IRemoveOfferRequestData } from "../models/eft/ragfair/IRemoveOfferRequestData"; import { ISearchRequestData } from "../models/eft/ragfair/ISearchRequestData"; import { IRagfairConfig } from "../models/spt/config/IRagfairConfig"; @@ -28,7 +29,7 @@ export declare class RagfairCallbacks extends OnLoadOnUpdate { constructor(httpResponse: HttpResponseUtil, logger: ILogger, jsonUtil: JsonUtil, ragfairServer: RagfairServer, ragfairController: RagfairController, configServer: ConfigServer); onLoad(): void; getRoute(): string; - search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; + search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; getMarketPrice(url: string, info: IGetMarketPriceRequestData, sessionID: string): IGetBodyResponseData; getItemPrices(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; addOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/11BundleLoadingSample/types/controllers/GameController.d.ts b/TypeScript/11BundleLoadingSample/types/controllers/GameController.d.ts index 5f516de..f4c3d2c 100644 --- a/TypeScript/11BundleLoadingSample/types/controllers/GameController.d.ts +++ b/TypeScript/11BundleLoadingSample/types/controllers/GameController.d.ts @@ -28,6 +28,11 @@ export declare class GameController { protected addMissingRepeatableQuestsProperty(pmcProfile: IPmcData): void; protected addMissingWeaponRepairSkill(pmcProfile: IPmcData): void; protected addMissingAkiVersionTagToProfile(fullProfile: IAkiProfile): void; + /** + * In 18876 bsg changed the pockets tplid to be one that has 3 additional special slots + * @param pmcProfile + */ + protected updateProfilePocketsToNewId(pmcProfile: IPmcData): void; protected addMissingArmorRepairSkill(pmcProfile: IPmcData): void; protected fixNullTraderSalesSums(pmcProfile: IPmcData): void; protected removeDanglingBackendCounters(pmcProfile: IPmcData): void; diff --git a/TypeScript/11BundleLoadingSample/types/controllers/InsuranceController.d.ts b/TypeScript/11BundleLoadingSample/types/controllers/InsuranceController.d.ts index db2c567..af45442 100644 --- a/TypeScript/11BundleLoadingSample/types/controllers/InsuranceController.d.ts +++ b/TypeScript/11BundleLoadingSample/types/controllers/InsuranceController.d.ts @@ -3,6 +3,7 @@ import { ItemHelper } from "../helpers/ItemHelper"; import { ProfileHelper } from "../helpers/ProfileHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -33,6 +34,12 @@ export declare class InsuranceController { insuranceService: InsuranceService, configServer: ConfigServer); processReturn(): void; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; - cost(info: IGetInsuranceCostRequestData, sessionID: string): any; + /** + * Calculate insurance cost + * @param info request object + * @param sessionID session id + * @returns response object to send to client + */ + cost(info: IGetInsuranceCostRequestData, sessionID: string): IGetInsuranceCostResponseData; doAbsolutelyNothing(): void; } diff --git a/TypeScript/11BundleLoadingSample/types/controllers/InventoryController.d.ts b/TypeScript/11BundleLoadingSample/types/controllers/InventoryController.d.ts index b732aa9..f24ab62 100644 --- a/TypeScript/11BundleLoadingSample/types/controllers/InventoryController.d.ts +++ b/TypeScript/11BundleLoadingSample/types/controllers/InventoryController.d.ts @@ -24,6 +24,8 @@ import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRout import { ILogger } from "../models/spt/utils/ILogger"; import { ItemEventRouter } from "../routers/ItemEventRouter"; import { DatabaseServer } from "../servers/DatabaseServer"; +import { FenceService } from "../services/FenceService"; +import { RagfairOfferService } from "../services/RagfairOfferService"; import { HashUtil } from "../utils/HashUtil"; import { JsonUtil } from "../utils/JsonUtil"; export declare class InventoryController { @@ -31,12 +33,14 @@ export declare class InventoryController { protected hashUtil: HashUtil; protected jsonUtil: JsonUtil; protected databaseServer: DatabaseServer; + protected fenceService: FenceService; protected presetHelper: PresetHelper; protected inventoryHelper: InventoryHelper; + protected ragfairOfferService: RagfairOfferService; protected profileHelper: ProfileHelper; protected paymentHelper: PaymentHelper; protected itemEventRouter: ItemEventRouter; - constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); + constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, fenceService: FenceService, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, ragfairOfferService: RagfairOfferService, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); /** * Move Item * change location of item with parentId and slotId @@ -93,9 +97,19 @@ export declare class InventoryController { tagItem(pmcData: IPmcData, body: IInventoryTagRequestData, sessionID: string): IItemEventRouterResponse; bindItem(pmcData: IPmcData, body: IInventoryBindRequestData, sessionID: string): IItemEventRouterResponse; /** - * Handles examining of the item * + * Handles examining an item + * @param pmcData player profile + * @param body request object + * @param sessionID session id + * @returns response */ examineItem(pmcData: IPmcData, body: IInventoryExamineRequestData, sessionID: string): IItemEventRouterResponse; + /** + * Get the tplid of an item from the examine request object + * @param body response request + * @returns tplid + */ + protected getItemTpl(body: IInventoryExamineRequestData): string; readEncyclopedia(pmcData: IPmcData, body: IInventoryReadEncyclopediaRequestData, sessionID: string): IItemEventRouterResponse; /** * Handles sorting of Inventory. diff --git a/TypeScript/11BundleLoadingSample/types/controllers/MatchController.d.ts b/TypeScript/11BundleLoadingSample/types/controllers/MatchController.d.ts index c322d96..7ef3fcc 100644 --- a/TypeScript/11BundleLoadingSample/types/controllers/MatchController.d.ts +++ b/TypeScript/11BundleLoadingSample/types/controllers/MatchController.d.ts @@ -2,7 +2,10 @@ import { ProfileHelper } from "../helpers/ProfileHelper"; import { TraderHelper } from "../helpers/TraderHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { IInRaidConfig } from "../models/spt/config/IInRaidConfig"; import { IMatchConfig } from "../models/spt/config/IMatchConfig"; @@ -20,11 +23,11 @@ export declare class MatchController { constructor(saveServer: SaveServer, profileHelper: ProfileHelper, matchLocationService: MatchLocationService, traderHelper: TraderHelper, configServer: ConfigServer); getEnabled(): boolean; getProfile(info: IGetProfileRequestData): IPmcData[]; - protected getMatch(location: any): any; createGroup(sessionID: string, info: any): any; deleteGroup(info: any): void; - joinMatch(info: any, sessionID: string): any[]; - getGroupStatus(info: any): any; + joinMatch(info: IJoinMatchRequestData, sessionID: string): IJoinMatchResult[]; + protected getMatch(location: string): any; + getGroupStatus(info: IGetGroupStatusRequestData): any; startOfflineRaid(info: IStartOfflineRaidRequestData, sessionID: string): void; endOfflineRaid(info: IEndOfflineRaidRequestData, sessionID: string): void; } diff --git a/TypeScript/11BundleLoadingSample/types/controllers/RagfairController.d.ts b/TypeScript/11BundleLoadingSample/types/controllers/RagfairController.d.ts index c758593..c4ffc15 100644 --- a/TypeScript/11BundleLoadingSample/types/controllers/RagfairController.d.ts +++ b/TypeScript/11BundleLoadingSample/types/controllers/RagfairController.d.ts @@ -60,6 +60,8 @@ export declare class RagfairController { protected ragfairConfig: IRagfairConfig; constructor(logger: ILogger, timeUtil: TimeUtil, httpResponse: HttpResponseUtil, itemEventRouter: ItemEventRouter, ragfairServer: RagfairServer, ragfairPriceService: RagfairPriceService, databaseServer: DatabaseServer, itemHelper: ItemHelper, saveServer: SaveServer, ragfairSellHelper: RagfairSellHelper, ragfairTaxHelper: RagfairTaxHelper, ragfairSortHelper: RagfairSortHelper, ragfairOfferHelper: RagfairOfferHelper, profileHelper: ProfileHelper, paymentService: PaymentService, handbookHelper: HandbookHelper, paymentHelper: PaymentHelper, inventoryHelper: InventoryHelper, ragfairHelper: RagfairHelper, ragfairOfferService: RagfairOfferService, ragfairRequiredItemsService: RagfairRequiredItemsService, ragfairOfferGenerator: RagfairOfferGenerator, configServer: ConfigServer); getOffers(sessionID: string, info: ISearchRequestData): IGetOffersResult; + protected isLinkedSearch(info: ISearchRequestData): boolean; + protected isRequiredSearch(info: ISearchRequestData): boolean; update(): void; getItemPrice(info: IGetMarketPriceRequestData): IGetItemPriceResult; addPlayerOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/11BundleLoadingSample/types/generators/BotWeaponGenerator.d.ts b/TypeScript/11BundleLoadingSample/types/generators/BotWeaponGenerator.d.ts index a43b18c..dd3ad69 100644 --- a/TypeScript/11BundleLoadingSample/types/generators/BotWeaponGenerator.d.ts +++ b/TypeScript/11BundleLoadingSample/types/generators/BotWeaponGenerator.d.ts @@ -41,6 +41,13 @@ export declare class BotWeaponGenerator { * @returns */ protected generateExtraMagazines(weaponMods: Item[], weaponTemplate: ITemplateItem, magCounts: MinMax, ammoTpl: string, inventory: PmcInventory): void; + /** + * Get a randomised number of bullets for a specific magazine + * @param magCounts min and max count of magazines + * @param magTemplate magazine to generate bullet count for + * @returns bullet count number + */ + protected getRandomisedBulletCount(magCounts: MinMax, magTemplate: ITemplateItem): number; /** * Get a randomised count of magazines * @param magCounts min and max value returned value can be between diff --git a/TypeScript/11BundleLoadingSample/types/generators/RagfairOfferGenerator.d.ts b/TypeScript/11BundleLoadingSample/types/generators/RagfairOfferGenerator.d.ts index de53ea9..6645c8d 100644 --- a/TypeScript/11BundleLoadingSample/types/generators/RagfairOfferGenerator.d.ts +++ b/TypeScript/11BundleLoadingSample/types/generators/RagfairOfferGenerator.d.ts @@ -18,6 +18,7 @@ import { JsonUtil } from "../utils/JsonUtil"; import { RandomUtil } from "../utils/RandomUtil"; import { TimeUtil } from "../utils/TimeUtil"; import { RagfairAssortGenerator } from "./RagfairAssortGenerator"; +import { RagfairCategoriesService } from "../services/RagfairCategoriesService"; export declare class RagfairOfferGenerator { protected logger: ILogger; protected jsonUtil: JsonUtil; @@ -31,11 +32,12 @@ export declare class RagfairOfferGenerator { protected ragfairAssortGenerator: RagfairAssortGenerator; protected ragfairOfferService: RagfairOfferService; protected ragfairPriceService: RagfairPriceService; + protected ragfairCategoriesService: RagfairCategoriesService; protected fenceService: FenceService; protected itemHelper: ItemHelper; protected configServer: ConfigServer; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); + constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, ragfairCategoriesService: RagfairCategoriesService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); createOffer(userID: string, time: number, items: Item[], barterScheme: IBarterScheme[], loyalLevel: number, price: number, sellInOnePiece?: boolean): IRagfairOffer; protected getTraderId(userID: string): string; protected getRating(userID: string): number; diff --git a/TypeScript/11BundleLoadingSample/types/helpers/BotGeneratorHelper.d.ts b/TypeScript/11BundleLoadingSample/types/helpers/BotGeneratorHelper.d.ts index e4b0c11..243e7a8 100644 --- a/TypeScript/11BundleLoadingSample/types/helpers/BotGeneratorHelper.d.ts +++ b/TypeScript/11BundleLoadingSample/types/helpers/BotGeneratorHelper.d.ts @@ -29,6 +29,12 @@ export declare class BotGeneratorHelper { protected botConfig: IBotConfig; constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, probabilityHelper: ProbabilityHelper, databaseServer: DatabaseServer, durabilityLimitsHelper: DurabilityLimitsHelper, itemHelper: ItemHelper, inventoryHelper: InventoryHelper, containerHelper: ContainerHelper, configServer: ConfigServer); generateModsForItem(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem, modSpawnChances: ModsChances, isPmc?: boolean): Item[]; + /** + * Is this magazine cylinder related (revolvers and grenade launchers) + * @param magazineParentName the name of the magazines parent + * @returns true if it is cylinder related + */ + magazineIsCylinderRelated(magazineParentName: string): boolean; /** * Get a list of non black-listed cartridges from the PMC bot config * @param modSlot mod item slot @@ -69,6 +75,12 @@ export declare class BotGeneratorHelper { * @param {object} parentTemplate The CylinderMagazine's template */ protected fillCamora(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem): void; + /** + * Take a record of camoras and merge the compatable shells into one array + * @param camorasWithShells camoras we want to merge into one array + * @returns string array of shells fro luitple camora sources + */ + protected mergeCamoraPoolsTogether(camorasWithShells: Record): string[]; generateExtraPropertiesForItem(itemTemplate: ITemplateItem, botRole?: any): { upd?: Upd; }; diff --git a/TypeScript/10ScopesAndTypes/types/loaders/DelayedModLoader.d.ts b/TypeScript/11BundleLoadingSample/types/loaders/PostAkiModLoader.d.ts similarity index 80% rename from TypeScript/10ScopesAndTypes/types/loaders/DelayedModLoader.d.ts rename to TypeScript/11BundleLoadingSample/types/loaders/PostAkiModLoader.d.ts index 2a05604..edc6e5d 100644 --- a/TypeScript/10ScopesAndTypes/types/loaders/DelayedModLoader.d.ts +++ b/TypeScript/11BundleLoadingSample/types/loaders/PostAkiModLoader.d.ts @@ -4,14 +4,14 @@ import { IModLoader } from "../models/spt/mod/IModLoader"; import { ModCompilerService } from "../services/ModCompilerService"; import { VFS } from "../utils/VFS"; import { BundleLoader } from "./BundleLoader"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class DelayedModLoader implements IModLoader { +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostAkiModLoader implements IModLoader { protected bundleLoader: BundleLoader; protected handbookController: HandbookController; protected vfs: VFS; protected modCompilerService: ModCompilerService; - protected initialModLoader: InitialModLoader; - constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, initialModLoader: InitialModLoader); + protected preAkiModLoader: PreAkiModLoader; + constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, preAkiModLoader: PreAkiModLoader); getBundles(local: boolean): string; getBundle(key: string, local: boolean): void; getModPath(mod: string): string; diff --git a/TypeScript/11BundleLoadingSample/types/loaders/AfterDbModLoader.d.ts b/TypeScript/11BundleLoadingSample/types/loaders/PostDBModLoader.d.ts similarity index 52% rename from TypeScript/11BundleLoadingSample/types/loaders/AfterDbModLoader.d.ts rename to TypeScript/11BundleLoadingSample/types/loaders/PostDBModLoader.d.ts index a9fc286..5101b7b 100644 --- a/TypeScript/11BundleLoadingSample/types/loaders/AfterDbModLoader.d.ts +++ b/TypeScript/11BundleLoadingSample/types/loaders/PostDBModLoader.d.ts @@ -1,9 +1,9 @@ import { DependencyContainer } from "tsyringe"; import { OnLoad } from "../di/OnLoad"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class AfterDbModLoader implements OnLoad { - protected initialModLoader: InitialModLoader; - constructor(initialModLoader: InitialModLoader); +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostDBModLoader implements OnLoad { + protected preAkiModLoader: PreAkiModLoader; + constructor(preAkiModLoader: PreAkiModLoader); onLoad(): void; getRoute(): string; getModPath(mod: string): string; diff --git a/TypeScript/12ClassExtensionOverride/types/loaders/InitialModLoader.d.ts b/TypeScript/11BundleLoadingSample/types/loaders/PreAkiModLoader.d.ts similarity index 96% rename from TypeScript/12ClassExtensionOverride/types/loaders/InitialModLoader.d.ts rename to TypeScript/11BundleLoadingSample/types/loaders/PreAkiModLoader.d.ts index 9a99dcc..6ded3c6 100644 --- a/TypeScript/12ClassExtensionOverride/types/loaders/InitialModLoader.d.ts +++ b/TypeScript/11BundleLoadingSample/types/loaders/PreAkiModLoader.d.ts @@ -9,7 +9,7 @@ import { ModCompilerService } from "../services/ModCompilerService"; import { JsonUtil } from "../utils/JsonUtil"; import { VFS } from "../utils/VFS"; import { BundleLoader } from "./BundleLoader"; -export declare class InitialModLoader implements IModLoader { +export declare class PreAkiModLoader implements IModLoader { protected logger: ILogger; protected vfs: VFS; protected jsonUtil: JsonUtil; @@ -50,7 +50,7 @@ export declare class InitialModLoader implements IModLoader { * @param modToValidate package.json details * @returns boolean */ - protected isModSpt300Compatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; + protected isModSpt3XXCompatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; protected executeMods(container: DependencyContainer): void; sortModsLoadOrder(): string[]; diff --git a/TypeScript/11BundleLoadingSample/types/models/eft/common/IGlobals.d.ts b/TypeScript/11BundleLoadingSample/types/models/eft/common/IGlobals.d.ts index 456895c..9d28dbc 100644 --- a/TypeScript/11BundleLoadingSample/types/models/eft/common/IGlobals.d.ts +++ b/TypeScript/11BundleLoadingSample/types/models/eft/common/IGlobals.d.ts @@ -1128,8 +1128,11 @@ export interface Inertia { SprintAccelerationLimits: xyz; SideTime: xyz; DiagonalTime: xyz; + MaxTimeWithoutInput: xyz; MinDirectionBlendTime: number; - MoveTime: number; + MoveTimeRange: xyz; + ProneDirectionAccelerationRange: xyz; + ProneSpeedAccelerationRange: xyz; MinMovementAccelerationRangeRight: xyz; MaxMovementAccelerationRangeRight: xyz; } diff --git a/TypeScript/11BundleLoadingSample/types/models/eft/common/ILocationBase.d.ts b/TypeScript/11BundleLoadingSample/types/models/eft/common/ILocationBase.d.ts index ad48d32..b1dd448 100644 --- a/TypeScript/11BundleLoadingSample/types/models/eft/common/ILocationBase.d.ts +++ b/TypeScript/11BundleLoadingSample/types/models/eft/common/ILocationBase.d.ts @@ -26,6 +26,7 @@ export interface ILocationBase { DisabledForScav: boolean; DisabledScavExits: string; Enabled: boolean; + EnableCoop: boolean; GlobalLootChanceModifier: number; IconX: number; IconY: number; @@ -41,6 +42,7 @@ export interface ILocationBase { MinDistToFreePoint: number; MinMaxBots: MinMaxBot[]; MinPlayers: number; + MaxCoopGroup: number; Name: string; NewSpawn: boolean; OcculsionCullingEnabled: boolean; @@ -48,6 +50,8 @@ export interface ILocationBase { OpenZones: string; Preview: Preview; RequiredPlayerLevel: number; + PmcMaxPlayersInGroup: number; + ScavMaxPlayersInGroup: number; Rules: string; SafeLocation: boolean; Scene: Scene; @@ -55,7 +59,8 @@ export interface ILocationBase { UnixDateTime: number; _Id: string; doors: any[]; - escape_time_limit: number; + EscapeTimeLimit: number; + EscapeTimeLimitCoop: number; exit_access_time: number; exit_count: number; exit_time: number; @@ -63,6 +68,7 @@ export interface ILocationBase { filter_ex: string[]; limits: ILimit[]; matching_min_seconds: number; + GenerateLocalLootCache: boolean; maxItemCountInLocation: MaxItemCountInLocation[]; sav_summon_seconds: number; tmp_location_field_remove_me: number; @@ -106,6 +112,7 @@ export interface BossLocationSpawn { BossName: string; BossPlayer: boolean; BossZone: string; + RandomTimeSpawn: boolean; Time: number; TriggerId: string; TriggerName: string; diff --git a/TypeScript/11BundleLoadingSample/types/models/eft/common/IPmcData.d.ts b/TypeScript/11BundleLoadingSample/types/models/eft/common/IPmcData.d.ts index adc2aa5..56bf07f 100644 --- a/TypeScript/11BundleLoadingSample/types/models/eft/common/IPmcData.d.ts +++ b/TypeScript/11BundleLoadingSample/types/models/eft/common/IPmcData.d.ts @@ -6,7 +6,7 @@ import { MemberCategory } from "../../enums/MemberCategory"; export interface IPmcData { _id: string; aid: string; - savage: string; + savage?: string; Info: Info; Customization: Customization; Health: Health; @@ -28,13 +28,6 @@ export interface IPmcData { CarExtractCounts: CarExtractCounts; SurvivorClass: SurvivorClass; } -export declare enum SurvivorClass { - Unknown = 0, - Neutralizer = 1, - Marauder = 2, - Paramedic = 3, - Survivor = 4 -} export interface Info { EntryPoint: string; Nickname: string; @@ -56,6 +49,9 @@ export interface Info { Bans: IBan[]; BannedState: boolean; BannedUntil: number; + NeedWipeOptions: any[]; + lastCompletedWipe: LastCompleted; + lastCompletedEvent?: LastCompleted; } export interface Settings { Role: string; @@ -339,3 +335,13 @@ export interface RagfairInfo { } export interface CarExtractCounts { } +export declare enum SurvivorClass { + Unknown = 0, + Neutralizer = 1, + Marauder = 2, + Paramedic = 3, + Survivor = 4 +} +export interface LastCompleted { + $oid: string; +} diff --git a/TypeScript/11BundleLoadingSample/types/models/eft/common/tables/IProfileTemplate.d.ts b/TypeScript/11BundleLoadingSample/types/models/eft/common/tables/IProfileTemplate.d.ts new file mode 100644 index 0000000..c445e92 --- /dev/null +++ b/TypeScript/11BundleLoadingSample/types/models/eft/common/tables/IProfileTemplate.d.ts @@ -0,0 +1,23 @@ +import { Dialogue, WeaponBuild } from "../../profile/IAkiProfile"; +import { IPmcData } from "../IPmcData"; +export interface IProfileTemplates { + Standard: IProfileSides; + "Left Behind": IProfileSides; + "Prepare To Escape": IProfileSides; + "Edge Of Darkness": IProfileSides; +} +export interface IProfileSides { + usec: TemplateSide; + bear: TemplateSide; +} +export interface TemplateSide { + character: IPmcData; + suits: string[]; + dialogues: Record; + weaponbuilds: WeaponBuild[]; + trader: ProfileTraderTemplate; +} +export interface ProfileTraderTemplate { + initialStanding: number; + initialSalesSum: number; +} diff --git a/TypeScript/11BundleLoadingSample/types/models/eft/common/tables/IQuest.d.ts b/TypeScript/11BundleLoadingSample/types/models/eft/common/tables/IQuest.d.ts index e1fc888..942339b 100644 --- a/TypeScript/11BundleLoadingSample/types/models/eft/common/tables/IQuest.d.ts +++ b/TypeScript/11BundleLoadingSample/types/models/eft/common/tables/IQuest.d.ts @@ -23,6 +23,7 @@ export interface IQuest { status: string; KeyQuest: boolean; changeQuestMessageText: string; + side: string; } export interface Conditions { Started: AvailableForConditions[]; @@ -56,6 +57,7 @@ export interface AvailableForProps { plantTime?: number; zoneId?: string; type?: boolean; + countInRaid?: boolean; } export interface AvailableForCounter { id: string; diff --git a/TypeScript/11BundleLoadingSample/types/models/eft/common/tables/ITemplateItem.d.ts b/TypeScript/11BundleLoadingSample/types/models/eft/common/tables/ITemplateItem.d.ts index 934ea7d..23a1a14 100644 --- a/TypeScript/11BundleLoadingSample/types/models/eft/common/tables/ITemplateItem.d.ts +++ b/TypeScript/11BundleLoadingSample/types/models/eft/common/tables/ITemplateItem.d.ts @@ -50,6 +50,7 @@ export interface Props { UnlootableFromSide?: string[]; AnimationVariantsNumber?: number; DiscardingBlock?: boolean; + DropSoundType?: string; RagFairCommissionModifier?: number; IsAlwaysAvailableForInsurance?: boolean; DiscardLimit?: number; @@ -89,7 +90,7 @@ export interface Props { SightModesCount?: number; OpticCalibrationDistances?: number[]; ScopesCount?: number; - AimSensitivity: any; + AimSensitivity?: number | number[][]; Zooms?: number[][]; CalibrationDistances?: number[][]; Intensity?: number; @@ -200,6 +201,9 @@ export interface Props { MinRepairDegradation?: number; MaxRepairDegradation?: number; IronSightRange?: number; + IsFlareGun?: boolean; + IsGrenadeLauncher?: boolean; + IsOneoff?: boolean; MustBoltBeOpennedForExternalReload?: boolean; MustBoltBeOpennedForInternalReload?: boolean; BoltAction?: boolean; diff --git a/TypeScript/11BundleLoadingSample/types/models/eft/game/IReportNicknameRequestData.d.ts b/TypeScript/11BundleLoadingSample/types/models/eft/game/IReportNicknameRequestData.d.ts new file mode 100644 index 0000000..087c58b --- /dev/null +++ b/TypeScript/11BundleLoadingSample/types/models/eft/game/IReportNicknameRequestData.d.ts @@ -0,0 +1,3 @@ +export interface IReportNicknameRequestData { + uid: string; +} diff --git a/TypeScript/11BundleLoadingSample/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts b/TypeScript/11BundleLoadingSample/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts new file mode 100644 index 0000000..bf209c6 --- /dev/null +++ b/TypeScript/11BundleLoadingSample/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts @@ -0,0 +1 @@ +export declare type IGetInsuranceCostResponseData = Record>; diff --git a/TypeScript/11BundleLoadingSample/types/models/eft/match/IGetGroupStatusRequestData.d.ts b/TypeScript/11BundleLoadingSample/types/models/eft/match/IGetGroupStatusRequestData.d.ts new file mode 100644 index 0000000..cbdb77f --- /dev/null +++ b/TypeScript/11BundleLoadingSample/types/models/eft/match/IGetGroupStatusRequestData.d.ts @@ -0,0 +1,8 @@ +export interface IGetGroupStatusRequestData { + location: string; + savage: boolean; + dt: string; + keyId: string; + raidMode: string; + startInGroup: boolean; +} diff --git a/TypeScript/11BundleLoadingSample/types/models/eft/match/IJoinMatchRequestData.d.ts b/TypeScript/11BundleLoadingSample/types/models/eft/match/IJoinMatchRequestData.d.ts new file mode 100644 index 0000000..cd34f7b --- /dev/null +++ b/TypeScript/11BundleLoadingSample/types/models/eft/match/IJoinMatchRequestData.d.ts @@ -0,0 +1,12 @@ +export interface IJoinMatchRequestData { + location: string; + savage: boolean; + dt: string; + servers: Server[]; + keyId: string; +} +export interface Server { + ping: number; + ip: string; + port: string; +} diff --git a/TypeScript/11BundleLoadingSample/types/models/eft/match/IJoinMatchResult.d.ts b/TypeScript/11BundleLoadingSample/types/models/eft/match/IJoinMatchResult.d.ts new file mode 100644 index 0000000..df695f4 --- /dev/null +++ b/TypeScript/11BundleLoadingSample/types/models/eft/match/IJoinMatchResult.d.ts @@ -0,0 +1,11 @@ +export interface IJoinMatchResult { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; + version: string; + location: string; + gamemode: string; + shortid: string; +} diff --git a/TypeScript/11BundleLoadingSample/types/models/eft/match/IStartOffineRaidRequestData.d.ts b/TypeScript/11BundleLoadingSample/types/models/eft/match/IStartOffineRaidRequestData.d.ts index 84bccc8..7cc457c 100644 --- a/TypeScript/11BundleLoadingSample/types/models/eft/match/IStartOffineRaidRequestData.d.ts +++ b/TypeScript/11BundleLoadingSample/types/models/eft/match/IStartOffineRaidRequestData.d.ts @@ -1,6 +1,5 @@ export interface IStartOfflineRaidRequestData { locationName: string; - entryPoint: string; startTime: number; dateTime: string; gameSettings: GameSettings; diff --git a/TypeScript/11BundleLoadingSample/types/models/eft/profile/GetProfileStatusResponseData.d.ts b/TypeScript/11BundleLoadingSample/types/models/eft/profile/GetProfileStatusResponseData.d.ts new file mode 100644 index 0000000..eee9b4f --- /dev/null +++ b/TypeScript/11BundleLoadingSample/types/models/eft/profile/GetProfileStatusResponseData.d.ts @@ -0,0 +1,11 @@ +export interface GetProfileStatusResponseData { + maxPveCountExceeded: false; + profiles: ProfileData[]; +} +export interface ProfileData { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; +} diff --git a/TypeScript/11BundleLoadingSample/types/models/eft/ragfair/IGetOffersResult.d.ts b/TypeScript/11BundleLoadingSample/types/models/eft/ragfair/IGetOffersResult.d.ts index 1c11422..fbc631d 100644 --- a/TypeScript/11BundleLoadingSample/types/models/eft/ragfair/IGetOffersResult.d.ts +++ b/TypeScript/11BundleLoadingSample/types/models/eft/ragfair/IGetOffersResult.d.ts @@ -1,6 +1,6 @@ import { IRagfairOffer } from "./IRagfairOffer"; export interface IGetOffersResult { - categories: Record; + categories?: Record; offers: IRagfairOffer[]; offersCount: number; selectedCategory: string; diff --git a/TypeScript/11BundleLoadingSample/types/models/enums/QuestStatus.d.ts b/TypeScript/11BundleLoadingSample/types/models/enums/QuestStatus.d.ts deleted file mode 100644 index 6335c73..0000000 --- a/TypeScript/11BundleLoadingSample/types/models/enums/QuestStatus.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -export declare enum QuestStatus { - Locked = 0, - AvailableForStart = 1, - Started = 2, - AvailableForFinish = 3, - Success = 4, - Fail = 5, - FailRestartable = 6, - MarkedAsFailed = 7 -} diff --git a/TypeScript/11BundleLoadingSample/types/models/external/IAfterDBLoadMod.d.ts b/TypeScript/11BundleLoadingSample/types/models/external/IAfterDBLoadMod.d.ts deleted file mode 100644 index 7f08b9e..0000000 --- a/TypeScript/11BundleLoadingSample/types/models/external/IAfterDBLoadMod.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IAfterDBLoadMod { - loadAfterDbInit(container: DependencyContainer): void; -} diff --git a/TypeScript/11BundleLoadingSample/types/models/external/IPostAkiLoadMod.d.ts b/TypeScript/11BundleLoadingSample/types/models/external/IPostAkiLoadMod.d.ts new file mode 100644 index 0000000..f6950e8 --- /dev/null +++ b/TypeScript/11BundleLoadingSample/types/models/external/IPostAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostAkiLoadMod { + postAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/11BundleLoadingSample/types/models/external/IPostDBLoadMod.d.ts b/TypeScript/11BundleLoadingSample/types/models/external/IPostDBLoadMod.d.ts new file mode 100644 index 0000000..ca7c682 --- /dev/null +++ b/TypeScript/11BundleLoadingSample/types/models/external/IPostDBLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostDBLoadMod { + postDBLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/11BundleLoadingSample/types/models/external/IPreAkiLoadMod.d.ts b/TypeScript/11BundleLoadingSample/types/models/external/IPreAkiLoadMod.d.ts new file mode 100644 index 0000000..ae7579e --- /dev/null +++ b/TypeScript/11BundleLoadingSample/types/models/external/IPreAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPreAkiLoadMod { + preAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/11BundleLoadingSample/types/models/external/mod.d.ts b/TypeScript/11BundleLoadingSample/types/models/external/mod.d.ts deleted file mode 100644 index 47939e9..0000000 --- a/TypeScript/11BundleLoadingSample/types/models/external/mod.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IMod { - load(container: DependencyContainer): void; - delayedLoad(container: DependencyContainer): void; -} diff --git a/TypeScript/11BundleLoadingSample/types/models/spt/config/IBotConfig.d.ts b/TypeScript/11BundleLoadingSample/types/models/spt/config/IBotConfig.d.ts index 5fb9d93..f8cf39b 100644 --- a/TypeScript/11BundleLoadingSample/types/models/spt/config/IBotConfig.d.ts +++ b/TypeScript/11BundleLoadingSample/types/models/spt/config/IBotConfig.d.ts @@ -18,6 +18,7 @@ export interface PresetBatch { bossKojaniy: number; bossSanitar: number; bossTagilla: number; + bossKnight: number; bossTest: number; cursedAssault: number; followerBully: number; @@ -28,6 +29,8 @@ export interface PresetBatch { followerKojaniy: number; followerSanitar: number; followerTagilla: number; + followerBirdEye: number; + followerBigPipe: number; followerTest: number; marksman: number; pmcBot: number; diff --git a/TypeScript/11BundleLoadingSample/types/models/spt/config/IRagfairConfig.d.ts b/TypeScript/11BundleLoadingSample/types/models/spt/config/IRagfairConfig.d.ts index 2d151ca..8518252 100644 --- a/TypeScript/11BundleLoadingSample/types/models/spt/config/IRagfairConfig.d.ts +++ b/TypeScript/11BundleLoadingSample/types/models/spt/config/IRagfairConfig.d.ts @@ -30,6 +30,7 @@ export interface Dynamic { expiredOfferThreshold: number; offerItemCount: MinMax; price: MinMax; + presetPrice: MinMax; endTimeSeconds: MinMax; condition: Condition; stackablePercent: MinMax; diff --git a/TypeScript/11BundleLoadingSample/types/models/spt/server/IDatabaseTables.d.ts b/TypeScript/11BundleLoadingSample/types/models/spt/server/IDatabaseTables.d.ts index e0d3fdd..9978459 100644 --- a/TypeScript/11BundleLoadingSample/types/models/spt/server/IDatabaseTables.d.ts +++ b/TypeScript/11BundleLoadingSample/types/models/spt/server/IDatabaseTables.d.ts @@ -6,6 +6,7 @@ import { ICustomizationItem } from "../../eft/common/tables/ICustomizationItem"; import { IHandbookBase } from "../../eft/common/tables/IHandbookBase"; import { ILootBase } from "../../eft/common/tables/ILootBase"; import { IMatch } from "../../eft/common/tables/IMatch"; +import { IProfileTemplates } from "../../eft/common/tables/IProfileTemplate"; import { IQuest } from "../../eft/common/tables/IQuest"; import { IRepeatableQuestDatabase } from "../../eft/common/tables/IRepeatableQuests"; import { ITemplateItem } from "../../eft/common/tables/ITemplateItem"; @@ -39,10 +40,13 @@ export interface IDatabaseTables { items: Record; quests: IQuest[]; repeatableQuests: IRepeatableQuestDatabase; + /** DEPRECATED - Items file found in the client, massivly out of date compared to templates.items, try not to use this, remove ASAP*/ clientItems: Record; handbook: IHandbookBase; customization: Record; - profiles: any; + /** The profile templates listed in the launcher on profile creation, split by account type (e.g. Standard) then side (e.g. bear/usec) */ + profiles: IProfileTemplates; + /** Flea prices of items - gathered from online flea market dump */ prices: Record; }; traders?: Record; diff --git a/TypeScript/11BundleLoadingSample/types/servers/RagfairServer.d.ts b/TypeScript/11BundleLoadingSample/types/servers/RagfairServer.d.ts index 60c92b5..bc86cdb 100644 --- a/TypeScript/11BundleLoadingSample/types/servers/RagfairServer.d.ts +++ b/TypeScript/11BundleLoadingSample/types/servers/RagfairServer.d.ts @@ -17,7 +17,8 @@ export declare class RagfairServer { constructor(logger: ILogger, ragfairOfferGenerator: RagfairOfferGenerator, ragfairOfferService: RagfairOfferService, ragfairCategoriesService: RagfairCategoriesService, ragfairRequiredItemsService: RagfairRequiredItemsService, configServer: ConfigServer); load(): void; update(): void; - getCategories(): Record; + getAllCategories(): Record; + getBespokeCategories(offers: IRagfairOffer[]): Record; /** * Disable/Hide an offer from flea * @param offerId diff --git a/TypeScript/11BundleLoadingSample/types/services/RagfairCategoriesService.d.ts b/TypeScript/11BundleLoadingSample/types/services/RagfairCategoriesService.d.ts index 09956cc..83910e5 100644 --- a/TypeScript/11BundleLoadingSample/types/services/RagfairCategoriesService.d.ts +++ b/TypeScript/11BundleLoadingSample/types/services/RagfairCategoriesService.d.ts @@ -1,10 +1,40 @@ import { IRagfairOffer } from "../models/eft/ragfair/IRagfairOffer"; +import { ILogger } from "../models/spt/utils/ILogger"; export declare class RagfairCategoriesService { - updateCategories(offers: IRagfairOffer[]): void; + protected logger: ILogger; protected categories: Record; - getCategories(): Record; - getCategoryByItemId(itemId: string): number; - resetCategories(): void; - setCategoryValue(itemId: string, newValue: number): void; - incrementCategory(itemId: string): void; + constructor(logger: ILogger); + /** + * Get all flea categories and their count of offers + * @returns item categories and count + */ + getAllCategories(): Record; + /** + * With the supplied items, get custom categories + * @returns a custom list of categories + */ + getBespokeCategories(offers: IRagfairOffer[]): Record; + /** + * Take an array of ragfair offers and create a dictionary of items with thier corrisponding offer count + * @param offers ragfair offers + * @returns categories and count + */ + protected processOffersIntoCategories(offers: IRagfairOffer[]): Record; + /** + * Increment or decrement a category array + * @param offer offer to process + * @param categories categories to update + * @param increment should item be incremented or decremented + */ + protected addOrIncrementCategory(offer: IRagfairOffer, categories: Record, increment?: boolean): void; + /** + * Increase category count by 1 + * @param offer + */ + incrementCategory(offer: IRagfairOffer): void; + /** + * Reduce category count by 1 + * @param offer + */ + decrementCategory(offer: IRagfairOffer): void; } diff --git a/TypeScript/11BundleLoadingSample/types/services/RagfairOfferService.d.ts b/TypeScript/11BundleLoadingSample/types/services/RagfairOfferService.d.ts index 7afbf8c..7398a8f 100644 --- a/TypeScript/11BundleLoadingSample/types/services/RagfairOfferService.d.ts +++ b/TypeScript/11BundleLoadingSample/types/services/RagfairOfferService.d.ts @@ -11,12 +11,14 @@ import { DatabaseServer } from "../servers/DatabaseServer"; import { SaveServer } from "../servers/SaveServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; import { TimeUtil } from "../utils/TimeUtil"; +import { RagfairCategoriesService } from "./RagfairCategoriesService"; export declare class RagfairOfferService { protected logger: ILogger; protected timeUtil: TimeUtil; protected databaseServer: DatabaseServer; protected saveServer: SaveServer; protected ragfairServerHelper: RagfairServerHelper; + protected ragfairCategoriesService: RagfairCategoriesService; protected profileHelper: ProfileHelper; protected itemEventRouter: ItemEventRouter; protected httpResponse: HttpResponseUtil; @@ -26,12 +28,16 @@ export declare class RagfairOfferService { protected expiredOffers: Item[]; protected offers: IRagfairOffer[]; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, ragfairCategoriesService: RagfairCategoriesService, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + /** + * Get all offers + * @returns IRagfairOffer array + */ getOffers(): IRagfairOffer[]; getOfferByOfferId(offerId: string): IRagfairOffer; getOffersOfType(templateId: string): IRagfairOffer[]; addOffer(offer: IRagfairOffer): void; - addOfferToExpired(offer: Item): void; + addOfferToExpired(staleOffer: IRagfairOffer): void; setTraderUpdateStatus(traderId: string, shouldUpdate: boolean): void; shouldTraderBeUpdated(traderID: string): boolean; getExpiredOfferCount(): number; diff --git a/TypeScript/11BundleLoadingSample/types/services/RagfairPriceService.d.ts b/TypeScript/11BundleLoadingSample/types/services/RagfairPriceService.d.ts index 5256b99..e3168a6 100644 --- a/TypeScript/11BundleLoadingSample/types/services/RagfairPriceService.d.ts +++ b/TypeScript/11BundleLoadingSample/types/services/RagfairPriceService.d.ts @@ -28,5 +28,19 @@ export declare class RagfairPriceService { getFleaPriceForItem(tplId: string): number; getBarterPrice(barterScheme: IBarterScheme[]): number; getDynamicOfferPrice(items: Item[], desiredCurrency: string): number; + /** + * Multiply the price by a randomised curve where n = 2, shift = 2 + * @param existingPrice price to alter + * @param isPreset is the item we're multiplying a preset + * @returns multiplied price + */ + protected randomisePrice(existingPrice: number, isPreset: boolean): number; + /** + * Calculate the cost of a weapon preset by adding together the price of its mods + base price of default weapon preset + * @param item base weapon + * @param items weapon plus mods + * @param existingPrice price of existing base weapon + * @returns + */ getWeaponPresetPrice(item: Item, items: Item[], existingPrice: number): number; } diff --git a/TypeScript/11BundleLoadingSample/types/utils/Watermark.d.ts b/TypeScript/11BundleLoadingSample/types/utils/Watermark.d.ts index 111bdd0..c6dc120 100644 --- a/TypeScript/11BundleLoadingSample/types/utils/Watermark.d.ts +++ b/TypeScript/11BundleLoadingSample/types/utils/Watermark.d.ts @@ -28,7 +28,12 @@ export declare class Watermark { protected text: string[]; protected versionLabel: string; initialize(): void; - getVersionTag(): string; + /** + * Get a version string (x.x.x) or (x.x.x-BLEEDINGEDGE) OR (X.X.X (18xxx)) + * @param withEftVersion Include the eft version this spt version was made for + * @returns string + */ + getVersionTag(withEftVersion?: boolean): string; getVersionLabel(): string; /** Set window title */ setTitle(): void; diff --git a/TypeScript/12ClassExtensionOverride/package.json b/TypeScript/12ClassExtensionOverride/package.json index 6e8e05f..fda052f 100644 --- a/TypeScript/12ClassExtensionOverride/package.json +++ b/TypeScript/12ClassExtensionOverride/package.json @@ -4,7 +4,7 @@ "main": "src/mod.js", "license": "MIT", "author": "Chomp", - "akiVersion": "3.0.1", + "akiVersion": "3.1.0", "scripts": { "setup:environment": "npm i", "build:unzipped": "copyfiles -e \"./node_modules/**/*.*\" -e \"./dist/**/*.*\" -e \"./package-lock.json\" -e \"./tsconfig.json\" -e \"./README.txt\" -e \"./mod.code-workspace\" \"./**/*.*\" ./dist", diff --git a/TypeScript/12ClassExtensionOverride/src/MyCustomLauncherCallbacks.ts b/TypeScript/12ClassExtensionOverride/src/MyCustomLauncherCallbacks.ts index 0f5b8b8..355242b 100644 --- a/TypeScript/12ClassExtensionOverride/src/MyCustomLauncherCallbacks.ts +++ b/TypeScript/12ClassExtensionOverride/src/MyCustomLauncherCallbacks.ts @@ -1,5 +1,5 @@ -import {LauncherCallbacks} from "@spt-aki/callbacks/LauncherCallbacks"; -import {LauncherController} from "@spt-aki/controllers/LauncherController"; +import { LauncherCallbacks } from "@spt-aki/callbacks/LauncherCallbacks"; +import { LauncherController } from "@spt-aki/controllers/LauncherController"; import { IEmptyRequestData } from "@spt-aki/models/eft/common/IEmptyRequestData"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { SaveServer } from "@spt-aki/servers/SaveServer"; diff --git a/TypeScript/12ClassExtensionOverride/src/mod.ts b/TypeScript/12ClassExtensionOverride/src/mod.ts index eecf8f5..01f78d4 100644 --- a/TypeScript/12ClassExtensionOverride/src/mod.ts +++ b/TypeScript/12ClassExtensionOverride/src/mod.ts @@ -1,18 +1,17 @@ import { DependencyContainer } from "tsyringe"; -import {IMod} from "@spt-aki/models/external/mod" +import { IPreAkiLoadMod } from "@spt-aki/models/external/IPreAkiLoadMod" import { MyCustomLauncherCallbacks } from "./MyCustomLauncherCallbacks"; -class Mod implements IMod +class Mod implements IPreAkiLoadMod { // This example will show you how to override and register your own components and use them // The container will by default register all AKI dependencies, but you can inject into it // you own custom implementations the server will then use. // In this example we will take the LauncherCallbacks class and override the ping() method // for our own custom method that will return "Lets dance" instead of "pong!" - + // Perform these actions before server fully loads - public load(container: DependencyContainer): void - { + public preAkiLoad(container: DependencyContainer): void { // Here we register our override for the component and we NEED to use the same // token the server is using to register it. // You can find this tokens here: @@ -28,12 +27,6 @@ class Mod implements IMod // Now that its registered, the server will automatically find this dependency and use it where ever its needed } - - // Nothing to do here - public delayedLoad(container: DependencyContainer): void - { - return; - } } module.exports = { mod: new Mod() } \ No newline at end of file diff --git a/TypeScript/12ClassExtensionOverride/types/callbacks/GameCallbacks.d.ts b/TypeScript/12ClassExtensionOverride/types/callbacks/GameCallbacks.d.ts index d5cad76..06da1b5 100644 --- a/TypeScript/12ClassExtensionOverride/types/callbacks/GameCallbacks.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/callbacks/GameCallbacks.d.ts @@ -2,6 +2,7 @@ import { GameController } from "../controllers/GameController"; import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse"; import { IGameEmptyCrcRequestData } from "../models/eft/game/IGameEmptyCrcRequestData"; +import { IReportNicknameRequestData } from "../models/eft/game/IReportNicknameRequestData"; import { IVersionValidateRequestData } from "../models/eft/game/IVersionValidateRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; @@ -20,5 +21,6 @@ declare class GameCallbacks { validateGameVersion(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; gameKeepalive(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; getVersion(url: string, info: IEmptyRequestData, sessionID: string): string; + reportNickname(url: string, info: IReportNicknameRequestData, sessionID: string): INullResponseData; } export { GameCallbacks }; diff --git a/TypeScript/12ClassExtensionOverride/types/callbacks/HealthCallbacks.d.ts b/TypeScript/12ClassExtensionOverride/types/callbacks/HealthCallbacks.d.ts index 8f7b89d..8672be7 100644 --- a/TypeScript/12ClassExtensionOverride/types/callbacks/HealthCallbacks.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/callbacks/HealthCallbacks.d.ts @@ -13,6 +13,13 @@ export declare class HealthCallbacks { protected profileHelper: ProfileHelper; protected healthController: HealthController; constructor(httpResponse: HttpResponseUtil, profileHelper: ProfileHelper, healthController: HealthController); + /** + * Custom aki server request found in modules/HealthSynchronizer.cs + * @param url + * @param info HealthListener.Instance.CurrentHealth class + * @param sessionID session id + * @returns empty response, no data sent back to client + */ syncHealth(url: string, info: ISyncHealthRequestData, sessionID: string): IGetBodyResponseData; offraidEat(pmcData: IPmcData, body: IOffraidEatRequestData, sessionID: string): IItemEventRouterResponse; offraidHeal(pmcData: IPmcData, body: IOffraidHealRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/12ClassExtensionOverride/types/callbacks/InsuranceCallbacks.d.ts b/TypeScript/12ClassExtensionOverride/types/callbacks/InsuranceCallbacks.d.ts index 520d0eb..6819960 100644 --- a/TypeScript/12ClassExtensionOverride/types/callbacks/InsuranceCallbacks.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/callbacks/InsuranceCallbacks.d.ts @@ -3,6 +3,7 @@ import { OnLoadOnUpdate } from "../di/OnLoadOnUpdate"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -17,7 +18,7 @@ export declare class InsuranceCallbacks extends OnLoadOnUpdate { protected insuranceConfig: IInsuranceConfig; constructor(insuranceController: InsuranceController, insuranceService: InsuranceService, httpResponse: HttpResponseUtil, configServer: ConfigServer); onLoad(): void; - getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; + getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; onUpdate(secondsSinceLastRun: number): boolean; getRoute(): string; diff --git a/TypeScript/12ClassExtensionOverride/types/callbacks/MatchCallbacks.d.ts b/TypeScript/12ClassExtensionOverride/types/callbacks/MatchCallbacks.d.ts index 083c1f5..158d8df 100644 --- a/TypeScript/12ClassExtensionOverride/types/callbacks/MatchCallbacks.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/callbacks/MatchCallbacks.d.ts @@ -1,9 +1,13 @@ import { MatchController } from "../controllers/MatchController"; +import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { DatabaseServer } from "../servers/DatabaseServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; @@ -16,18 +20,18 @@ export declare class MatchCallbacks { constructor(httpResponse: HttpResponseUtil, jsonUtil: JsonUtil, matchController: MatchController, databaseServer: DatabaseServer); updatePing(url: string, info: any, sessionID: string): INullResponseData; exitMatch(url: string, info: any, sessionID: string): INullResponseData; - exitToMenu(url: string, info: any, sessionID: string): INullResponseData; - startGroupSearch(url: string, info: any, sessionID: string): INullResponseData; - stopGroupSearch(url: string, info: any, sessionID: string): INullResponseData; + exitToMenu(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + startGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + stopGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; sendGroupInvite(url: string, info: any, sessionID: string): INullResponseData; acceptGroupInvite(url: string, info: any, sessionID: string): INullResponseData; cancelGroupInvite(url: string, info: any, sessionID: string): INullResponseData; putMetrics(url: string, info: any, sessionID: string): INullResponseData; getProfile(url: string, info: IGetProfileRequestData, sessionID: string): IGetBodyResponseData; - serverAvailable(url: string, info: any, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; - joinMatch(url: string, info: any, sessionID: string): IGetBodyResponseData; + serverAvailable(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; + joinMatch(url: string, info: IJoinMatchRequestData, sessionID: string): IGetBodyResponseData; getMetrics(url: string, info: any, sessionID: string): IGetBodyResponseData; - getGroupStatus(url: string, info: any, sessionID: string): IGetBodyResponseData; + getGroupStatus(url: string, info: IGetGroupStatusRequestData, sessionID: string): IGetBodyResponseData; createGroup(url: string, info: any, sessionID: string): IGetBodyResponseData; deleteGroup(url: string, info: any, sessionID: string): INullResponseData; startOfflineRaid(url: string, info: IStartOfflineRaidRequestData, sessionID: string): INullResponseData; diff --git a/TypeScript/12ClassExtensionOverride/types/callbacks/ModCallbacks.d.ts b/TypeScript/12ClassExtensionOverride/types/callbacks/ModCallbacks.d.ts index 866abf7..58342dc 100644 --- a/TypeScript/12ClassExtensionOverride/types/callbacks/ModCallbacks.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/callbacks/ModCallbacks.d.ts @@ -1,5 +1,5 @@ import { OnLoad } from "../di/OnLoad"; -import { DelayedModLoader } from "../loaders/DelayedModLoader"; +import { PostAkiModLoader } from "../loaders/PostAkiModLoader"; import { IHttpConfig } from "../models/spt/config/IHttpConfig"; import { IHttpServer } from "../models/spt/server/IHttpServer"; import { ILogger } from "../models/spt/utils/ILogger"; @@ -9,10 +9,10 @@ declare class ModCallbacks extends OnLoad { protected logger: ILogger; protected httpResponse: HttpResponseUtil; protected httpServer: IHttpServer; - protected modLoader: DelayedModLoader; + protected postAkiModLoader: PostAkiModLoader; protected configServer: ConfigServer; protected httpConfig: IHttpConfig; - constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, modLoader: DelayedModLoader, configServer: ConfigServer); + constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, postAkiModLoader: PostAkiModLoader, configServer: ConfigServer); onLoad(): void; getRoute(): string; sendBundle(sessionID: string, req: any, resp: any, body: any): void; diff --git a/TypeScript/12ClassExtensionOverride/types/callbacks/ProfileCallbacks.d.ts b/TypeScript/12ClassExtensionOverride/types/callbacks/ProfileCallbacks.d.ts index 116e7c5..6a86fc0 100644 --- a/TypeScript/12ClassExtensionOverride/types/callbacks/ProfileCallbacks.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/callbacks/ProfileCallbacks.d.ts @@ -3,6 +3,7 @@ import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IGetMiniProfileRequestData } from "../models/eft/launcher/IGetMiniProfileRequestData"; +import { GetProfileStatusResponseData } from "../models/eft/profile/GetProfileStatusResponseData"; import { IProfileChangeNicknameRequestData } from "../models/eft/profile/IProfileChangeNicknameRequestData"; import { IProfileChangeVoiceRequestData } from "../models/eft/profile/IProfileChangeVoiceRequestData"; import { IProfileCreateRequestData } from "../models/eft/profile/IProfileCreateRequestData"; @@ -23,7 +24,14 @@ export declare class ProfileCallbacks { changeNickname(url: string, info: IProfileChangeNicknameRequestData, sessionID: string): IGetBodyResponseData; validateNickname(url: string, info: IValidateNicknameRequestData, sessionID: string): IGetBodyResponseData; getReservedNickname(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; - getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; + /** + * Called when creating a character, when you choose a character face/voice + * @param url + * @param info response (empty) + * @param sessionID + * @returns + */ + getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; searchFriend(url: string, info: ISearchFriendRequestData, sessionID: string): IGetBodyResponseData; getMiniProfile(url: string, info: IGetMiniProfileRequestData, sessionID: string): string; getAllMiniProfiles(url: string, info: any, sessionID: string): string; diff --git a/TypeScript/12ClassExtensionOverride/types/callbacks/RagfairCallbacks.d.ts b/TypeScript/12ClassExtensionOverride/types/callbacks/RagfairCallbacks.d.ts index d5bab8b..da782e1 100644 --- a/TypeScript/12ClassExtensionOverride/types/callbacks/RagfairCallbacks.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/callbacks/RagfairCallbacks.d.ts @@ -9,6 +9,7 @@ import { IAddOfferRequestData } from "../models/eft/ragfair/IAddOfferRequestData import { IExtendOfferRequestData } from "../models/eft/ragfair/IExtendOfferRequestData"; import { IGetItemPriceResult } from "../models/eft/ragfair/IGetItemPriceResult"; import { IGetMarketPriceRequestData } from "../models/eft/ragfair/IGetMarketPriceRequestData"; +import { IGetOffersResult } from "../models/eft/ragfair/IGetOffersResult"; import { IRemoveOfferRequestData } from "../models/eft/ragfair/IRemoveOfferRequestData"; import { ISearchRequestData } from "../models/eft/ragfair/ISearchRequestData"; import { IRagfairConfig } from "../models/spt/config/IRagfairConfig"; @@ -28,7 +29,7 @@ export declare class RagfairCallbacks extends OnLoadOnUpdate { constructor(httpResponse: HttpResponseUtil, logger: ILogger, jsonUtil: JsonUtil, ragfairServer: RagfairServer, ragfairController: RagfairController, configServer: ConfigServer); onLoad(): void; getRoute(): string; - search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; + search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; getMarketPrice(url: string, info: IGetMarketPriceRequestData, sessionID: string): IGetBodyResponseData; getItemPrices(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; addOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/12ClassExtensionOverride/types/controllers/GameController.d.ts b/TypeScript/12ClassExtensionOverride/types/controllers/GameController.d.ts index 5f516de..f4c3d2c 100644 --- a/TypeScript/12ClassExtensionOverride/types/controllers/GameController.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/controllers/GameController.d.ts @@ -28,6 +28,11 @@ export declare class GameController { protected addMissingRepeatableQuestsProperty(pmcProfile: IPmcData): void; protected addMissingWeaponRepairSkill(pmcProfile: IPmcData): void; protected addMissingAkiVersionTagToProfile(fullProfile: IAkiProfile): void; + /** + * In 18876 bsg changed the pockets tplid to be one that has 3 additional special slots + * @param pmcProfile + */ + protected updateProfilePocketsToNewId(pmcProfile: IPmcData): void; protected addMissingArmorRepairSkill(pmcProfile: IPmcData): void; protected fixNullTraderSalesSums(pmcProfile: IPmcData): void; protected removeDanglingBackendCounters(pmcProfile: IPmcData): void; diff --git a/TypeScript/12ClassExtensionOverride/types/controllers/InsuranceController.d.ts b/TypeScript/12ClassExtensionOverride/types/controllers/InsuranceController.d.ts index db2c567..af45442 100644 --- a/TypeScript/12ClassExtensionOverride/types/controllers/InsuranceController.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/controllers/InsuranceController.d.ts @@ -3,6 +3,7 @@ import { ItemHelper } from "../helpers/ItemHelper"; import { ProfileHelper } from "../helpers/ProfileHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -33,6 +34,12 @@ export declare class InsuranceController { insuranceService: InsuranceService, configServer: ConfigServer); processReturn(): void; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; - cost(info: IGetInsuranceCostRequestData, sessionID: string): any; + /** + * Calculate insurance cost + * @param info request object + * @param sessionID session id + * @returns response object to send to client + */ + cost(info: IGetInsuranceCostRequestData, sessionID: string): IGetInsuranceCostResponseData; doAbsolutelyNothing(): void; } diff --git a/TypeScript/12ClassExtensionOverride/types/controllers/InventoryController.d.ts b/TypeScript/12ClassExtensionOverride/types/controllers/InventoryController.d.ts index b732aa9..f24ab62 100644 --- a/TypeScript/12ClassExtensionOverride/types/controllers/InventoryController.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/controllers/InventoryController.d.ts @@ -24,6 +24,8 @@ import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRout import { ILogger } from "../models/spt/utils/ILogger"; import { ItemEventRouter } from "../routers/ItemEventRouter"; import { DatabaseServer } from "../servers/DatabaseServer"; +import { FenceService } from "../services/FenceService"; +import { RagfairOfferService } from "../services/RagfairOfferService"; import { HashUtil } from "../utils/HashUtil"; import { JsonUtil } from "../utils/JsonUtil"; export declare class InventoryController { @@ -31,12 +33,14 @@ export declare class InventoryController { protected hashUtil: HashUtil; protected jsonUtil: JsonUtil; protected databaseServer: DatabaseServer; + protected fenceService: FenceService; protected presetHelper: PresetHelper; protected inventoryHelper: InventoryHelper; + protected ragfairOfferService: RagfairOfferService; protected profileHelper: ProfileHelper; protected paymentHelper: PaymentHelper; protected itemEventRouter: ItemEventRouter; - constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); + constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, fenceService: FenceService, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, ragfairOfferService: RagfairOfferService, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); /** * Move Item * change location of item with parentId and slotId @@ -93,9 +97,19 @@ export declare class InventoryController { tagItem(pmcData: IPmcData, body: IInventoryTagRequestData, sessionID: string): IItemEventRouterResponse; bindItem(pmcData: IPmcData, body: IInventoryBindRequestData, sessionID: string): IItemEventRouterResponse; /** - * Handles examining of the item * + * Handles examining an item + * @param pmcData player profile + * @param body request object + * @param sessionID session id + * @returns response */ examineItem(pmcData: IPmcData, body: IInventoryExamineRequestData, sessionID: string): IItemEventRouterResponse; + /** + * Get the tplid of an item from the examine request object + * @param body response request + * @returns tplid + */ + protected getItemTpl(body: IInventoryExamineRequestData): string; readEncyclopedia(pmcData: IPmcData, body: IInventoryReadEncyclopediaRequestData, sessionID: string): IItemEventRouterResponse; /** * Handles sorting of Inventory. diff --git a/TypeScript/12ClassExtensionOverride/types/controllers/MatchController.d.ts b/TypeScript/12ClassExtensionOverride/types/controllers/MatchController.d.ts index c322d96..7ef3fcc 100644 --- a/TypeScript/12ClassExtensionOverride/types/controllers/MatchController.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/controllers/MatchController.d.ts @@ -2,7 +2,10 @@ import { ProfileHelper } from "../helpers/ProfileHelper"; import { TraderHelper } from "../helpers/TraderHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { IInRaidConfig } from "../models/spt/config/IInRaidConfig"; import { IMatchConfig } from "../models/spt/config/IMatchConfig"; @@ -20,11 +23,11 @@ export declare class MatchController { constructor(saveServer: SaveServer, profileHelper: ProfileHelper, matchLocationService: MatchLocationService, traderHelper: TraderHelper, configServer: ConfigServer); getEnabled(): boolean; getProfile(info: IGetProfileRequestData): IPmcData[]; - protected getMatch(location: any): any; createGroup(sessionID: string, info: any): any; deleteGroup(info: any): void; - joinMatch(info: any, sessionID: string): any[]; - getGroupStatus(info: any): any; + joinMatch(info: IJoinMatchRequestData, sessionID: string): IJoinMatchResult[]; + protected getMatch(location: string): any; + getGroupStatus(info: IGetGroupStatusRequestData): any; startOfflineRaid(info: IStartOfflineRaidRequestData, sessionID: string): void; endOfflineRaid(info: IEndOfflineRaidRequestData, sessionID: string): void; } diff --git a/TypeScript/12ClassExtensionOverride/types/controllers/RagfairController.d.ts b/TypeScript/12ClassExtensionOverride/types/controllers/RagfairController.d.ts index c758593..c4ffc15 100644 --- a/TypeScript/12ClassExtensionOverride/types/controllers/RagfairController.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/controllers/RagfairController.d.ts @@ -60,6 +60,8 @@ export declare class RagfairController { protected ragfairConfig: IRagfairConfig; constructor(logger: ILogger, timeUtil: TimeUtil, httpResponse: HttpResponseUtil, itemEventRouter: ItemEventRouter, ragfairServer: RagfairServer, ragfairPriceService: RagfairPriceService, databaseServer: DatabaseServer, itemHelper: ItemHelper, saveServer: SaveServer, ragfairSellHelper: RagfairSellHelper, ragfairTaxHelper: RagfairTaxHelper, ragfairSortHelper: RagfairSortHelper, ragfairOfferHelper: RagfairOfferHelper, profileHelper: ProfileHelper, paymentService: PaymentService, handbookHelper: HandbookHelper, paymentHelper: PaymentHelper, inventoryHelper: InventoryHelper, ragfairHelper: RagfairHelper, ragfairOfferService: RagfairOfferService, ragfairRequiredItemsService: RagfairRequiredItemsService, ragfairOfferGenerator: RagfairOfferGenerator, configServer: ConfigServer); getOffers(sessionID: string, info: ISearchRequestData): IGetOffersResult; + protected isLinkedSearch(info: ISearchRequestData): boolean; + protected isRequiredSearch(info: ISearchRequestData): boolean; update(): void; getItemPrice(info: IGetMarketPriceRequestData): IGetItemPriceResult; addPlayerOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/12ClassExtensionOverride/types/generators/BotWeaponGenerator.d.ts b/TypeScript/12ClassExtensionOverride/types/generators/BotWeaponGenerator.d.ts index a43b18c..dd3ad69 100644 --- a/TypeScript/12ClassExtensionOverride/types/generators/BotWeaponGenerator.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/generators/BotWeaponGenerator.d.ts @@ -41,6 +41,13 @@ export declare class BotWeaponGenerator { * @returns */ protected generateExtraMagazines(weaponMods: Item[], weaponTemplate: ITemplateItem, magCounts: MinMax, ammoTpl: string, inventory: PmcInventory): void; + /** + * Get a randomised number of bullets for a specific magazine + * @param magCounts min and max count of magazines + * @param magTemplate magazine to generate bullet count for + * @returns bullet count number + */ + protected getRandomisedBulletCount(magCounts: MinMax, magTemplate: ITemplateItem): number; /** * Get a randomised count of magazines * @param magCounts min and max value returned value can be between diff --git a/TypeScript/12ClassExtensionOverride/types/generators/RagfairOfferGenerator.d.ts b/TypeScript/12ClassExtensionOverride/types/generators/RagfairOfferGenerator.d.ts index de53ea9..6645c8d 100644 --- a/TypeScript/12ClassExtensionOverride/types/generators/RagfairOfferGenerator.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/generators/RagfairOfferGenerator.d.ts @@ -18,6 +18,7 @@ import { JsonUtil } from "../utils/JsonUtil"; import { RandomUtil } from "../utils/RandomUtil"; import { TimeUtil } from "../utils/TimeUtil"; import { RagfairAssortGenerator } from "./RagfairAssortGenerator"; +import { RagfairCategoriesService } from "../services/RagfairCategoriesService"; export declare class RagfairOfferGenerator { protected logger: ILogger; protected jsonUtil: JsonUtil; @@ -31,11 +32,12 @@ export declare class RagfairOfferGenerator { protected ragfairAssortGenerator: RagfairAssortGenerator; protected ragfairOfferService: RagfairOfferService; protected ragfairPriceService: RagfairPriceService; + protected ragfairCategoriesService: RagfairCategoriesService; protected fenceService: FenceService; protected itemHelper: ItemHelper; protected configServer: ConfigServer; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); + constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, ragfairCategoriesService: RagfairCategoriesService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); createOffer(userID: string, time: number, items: Item[], barterScheme: IBarterScheme[], loyalLevel: number, price: number, sellInOnePiece?: boolean): IRagfairOffer; protected getTraderId(userID: string): string; protected getRating(userID: string): number; diff --git a/TypeScript/12ClassExtensionOverride/types/helpers/BotGeneratorHelper.d.ts b/TypeScript/12ClassExtensionOverride/types/helpers/BotGeneratorHelper.d.ts index e4b0c11..243e7a8 100644 --- a/TypeScript/12ClassExtensionOverride/types/helpers/BotGeneratorHelper.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/helpers/BotGeneratorHelper.d.ts @@ -29,6 +29,12 @@ export declare class BotGeneratorHelper { protected botConfig: IBotConfig; constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, probabilityHelper: ProbabilityHelper, databaseServer: DatabaseServer, durabilityLimitsHelper: DurabilityLimitsHelper, itemHelper: ItemHelper, inventoryHelper: InventoryHelper, containerHelper: ContainerHelper, configServer: ConfigServer); generateModsForItem(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem, modSpawnChances: ModsChances, isPmc?: boolean): Item[]; + /** + * Is this magazine cylinder related (revolvers and grenade launchers) + * @param magazineParentName the name of the magazines parent + * @returns true if it is cylinder related + */ + magazineIsCylinderRelated(magazineParentName: string): boolean; /** * Get a list of non black-listed cartridges from the PMC bot config * @param modSlot mod item slot @@ -69,6 +75,12 @@ export declare class BotGeneratorHelper { * @param {object} parentTemplate The CylinderMagazine's template */ protected fillCamora(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem): void; + /** + * Take a record of camoras and merge the compatable shells into one array + * @param camorasWithShells camoras we want to merge into one array + * @returns string array of shells fro luitple camora sources + */ + protected mergeCamoraPoolsTogether(camorasWithShells: Record): string[]; generateExtraPropertiesForItem(itemTemplate: ITemplateItem, botRole?: any): { upd?: Upd; }; diff --git a/TypeScript/12ClassExtensionOverride/types/loaders/DelayedModLoader.d.ts b/TypeScript/12ClassExtensionOverride/types/loaders/PostAkiModLoader.d.ts similarity index 80% rename from TypeScript/12ClassExtensionOverride/types/loaders/DelayedModLoader.d.ts rename to TypeScript/12ClassExtensionOverride/types/loaders/PostAkiModLoader.d.ts index 2a05604..edc6e5d 100644 --- a/TypeScript/12ClassExtensionOverride/types/loaders/DelayedModLoader.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/loaders/PostAkiModLoader.d.ts @@ -4,14 +4,14 @@ import { IModLoader } from "../models/spt/mod/IModLoader"; import { ModCompilerService } from "../services/ModCompilerService"; import { VFS } from "../utils/VFS"; import { BundleLoader } from "./BundleLoader"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class DelayedModLoader implements IModLoader { +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostAkiModLoader implements IModLoader { protected bundleLoader: BundleLoader; protected handbookController: HandbookController; protected vfs: VFS; protected modCompilerService: ModCompilerService; - protected initialModLoader: InitialModLoader; - constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, initialModLoader: InitialModLoader); + protected preAkiModLoader: PreAkiModLoader; + constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, preAkiModLoader: PreAkiModLoader); getBundles(local: boolean): string; getBundle(key: string, local: boolean): void; getModPath(mod: string): string; diff --git a/TypeScript/12ClassExtensionOverride/types/loaders/AfterDbModLoader.d.ts b/TypeScript/12ClassExtensionOverride/types/loaders/PostDBModLoader.d.ts similarity index 52% rename from TypeScript/12ClassExtensionOverride/types/loaders/AfterDbModLoader.d.ts rename to TypeScript/12ClassExtensionOverride/types/loaders/PostDBModLoader.d.ts index a9fc286..5101b7b 100644 --- a/TypeScript/12ClassExtensionOverride/types/loaders/AfterDbModLoader.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/loaders/PostDBModLoader.d.ts @@ -1,9 +1,9 @@ import { DependencyContainer } from "tsyringe"; import { OnLoad } from "../di/OnLoad"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class AfterDbModLoader implements OnLoad { - protected initialModLoader: InitialModLoader; - constructor(initialModLoader: InitialModLoader); +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostDBModLoader implements OnLoad { + protected preAkiModLoader: PreAkiModLoader; + constructor(preAkiModLoader: PreAkiModLoader); onLoad(): void; getRoute(): string; getModPath(mod: string): string; diff --git a/TypeScript/10ScopesAndTypes/types/loaders/InitialModLoader.d.ts b/TypeScript/12ClassExtensionOverride/types/loaders/PreAkiModLoader.d.ts similarity index 96% rename from TypeScript/10ScopesAndTypes/types/loaders/InitialModLoader.d.ts rename to TypeScript/12ClassExtensionOverride/types/loaders/PreAkiModLoader.d.ts index 9a99dcc..6ded3c6 100644 --- a/TypeScript/10ScopesAndTypes/types/loaders/InitialModLoader.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/loaders/PreAkiModLoader.d.ts @@ -9,7 +9,7 @@ import { ModCompilerService } from "../services/ModCompilerService"; import { JsonUtil } from "../utils/JsonUtil"; import { VFS } from "../utils/VFS"; import { BundleLoader } from "./BundleLoader"; -export declare class InitialModLoader implements IModLoader { +export declare class PreAkiModLoader implements IModLoader { protected logger: ILogger; protected vfs: VFS; protected jsonUtil: JsonUtil; @@ -50,7 +50,7 @@ export declare class InitialModLoader implements IModLoader { * @param modToValidate package.json details * @returns boolean */ - protected isModSpt300Compatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; + protected isModSpt3XXCompatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; protected executeMods(container: DependencyContainer): void; sortModsLoadOrder(): string[]; diff --git a/TypeScript/12ClassExtensionOverride/types/models/eft/common/IGlobals.d.ts b/TypeScript/12ClassExtensionOverride/types/models/eft/common/IGlobals.d.ts index 456895c..9d28dbc 100644 --- a/TypeScript/12ClassExtensionOverride/types/models/eft/common/IGlobals.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/models/eft/common/IGlobals.d.ts @@ -1128,8 +1128,11 @@ export interface Inertia { SprintAccelerationLimits: xyz; SideTime: xyz; DiagonalTime: xyz; + MaxTimeWithoutInput: xyz; MinDirectionBlendTime: number; - MoveTime: number; + MoveTimeRange: xyz; + ProneDirectionAccelerationRange: xyz; + ProneSpeedAccelerationRange: xyz; MinMovementAccelerationRangeRight: xyz; MaxMovementAccelerationRangeRight: xyz; } diff --git a/TypeScript/12ClassExtensionOverride/types/models/eft/common/ILocationBase.d.ts b/TypeScript/12ClassExtensionOverride/types/models/eft/common/ILocationBase.d.ts index ad48d32..b1dd448 100644 --- a/TypeScript/12ClassExtensionOverride/types/models/eft/common/ILocationBase.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/models/eft/common/ILocationBase.d.ts @@ -26,6 +26,7 @@ export interface ILocationBase { DisabledForScav: boolean; DisabledScavExits: string; Enabled: boolean; + EnableCoop: boolean; GlobalLootChanceModifier: number; IconX: number; IconY: number; @@ -41,6 +42,7 @@ export interface ILocationBase { MinDistToFreePoint: number; MinMaxBots: MinMaxBot[]; MinPlayers: number; + MaxCoopGroup: number; Name: string; NewSpawn: boolean; OcculsionCullingEnabled: boolean; @@ -48,6 +50,8 @@ export interface ILocationBase { OpenZones: string; Preview: Preview; RequiredPlayerLevel: number; + PmcMaxPlayersInGroup: number; + ScavMaxPlayersInGroup: number; Rules: string; SafeLocation: boolean; Scene: Scene; @@ -55,7 +59,8 @@ export interface ILocationBase { UnixDateTime: number; _Id: string; doors: any[]; - escape_time_limit: number; + EscapeTimeLimit: number; + EscapeTimeLimitCoop: number; exit_access_time: number; exit_count: number; exit_time: number; @@ -63,6 +68,7 @@ export interface ILocationBase { filter_ex: string[]; limits: ILimit[]; matching_min_seconds: number; + GenerateLocalLootCache: boolean; maxItemCountInLocation: MaxItemCountInLocation[]; sav_summon_seconds: number; tmp_location_field_remove_me: number; @@ -106,6 +112,7 @@ export interface BossLocationSpawn { BossName: string; BossPlayer: boolean; BossZone: string; + RandomTimeSpawn: boolean; Time: number; TriggerId: string; TriggerName: string; diff --git a/TypeScript/12ClassExtensionOverride/types/models/eft/common/IPmcData.d.ts b/TypeScript/12ClassExtensionOverride/types/models/eft/common/IPmcData.d.ts index adc2aa5..56bf07f 100644 --- a/TypeScript/12ClassExtensionOverride/types/models/eft/common/IPmcData.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/models/eft/common/IPmcData.d.ts @@ -6,7 +6,7 @@ import { MemberCategory } from "../../enums/MemberCategory"; export interface IPmcData { _id: string; aid: string; - savage: string; + savage?: string; Info: Info; Customization: Customization; Health: Health; @@ -28,13 +28,6 @@ export interface IPmcData { CarExtractCounts: CarExtractCounts; SurvivorClass: SurvivorClass; } -export declare enum SurvivorClass { - Unknown = 0, - Neutralizer = 1, - Marauder = 2, - Paramedic = 3, - Survivor = 4 -} export interface Info { EntryPoint: string; Nickname: string; @@ -56,6 +49,9 @@ export interface Info { Bans: IBan[]; BannedState: boolean; BannedUntil: number; + NeedWipeOptions: any[]; + lastCompletedWipe: LastCompleted; + lastCompletedEvent?: LastCompleted; } export interface Settings { Role: string; @@ -339,3 +335,13 @@ export interface RagfairInfo { } export interface CarExtractCounts { } +export declare enum SurvivorClass { + Unknown = 0, + Neutralizer = 1, + Marauder = 2, + Paramedic = 3, + Survivor = 4 +} +export interface LastCompleted { + $oid: string; +} diff --git a/TypeScript/12ClassExtensionOverride/types/models/eft/common/tables/IProfileTemplate.d.ts b/TypeScript/12ClassExtensionOverride/types/models/eft/common/tables/IProfileTemplate.d.ts new file mode 100644 index 0000000..c445e92 --- /dev/null +++ b/TypeScript/12ClassExtensionOverride/types/models/eft/common/tables/IProfileTemplate.d.ts @@ -0,0 +1,23 @@ +import { Dialogue, WeaponBuild } from "../../profile/IAkiProfile"; +import { IPmcData } from "../IPmcData"; +export interface IProfileTemplates { + Standard: IProfileSides; + "Left Behind": IProfileSides; + "Prepare To Escape": IProfileSides; + "Edge Of Darkness": IProfileSides; +} +export interface IProfileSides { + usec: TemplateSide; + bear: TemplateSide; +} +export interface TemplateSide { + character: IPmcData; + suits: string[]; + dialogues: Record; + weaponbuilds: WeaponBuild[]; + trader: ProfileTraderTemplate; +} +export interface ProfileTraderTemplate { + initialStanding: number; + initialSalesSum: number; +} diff --git a/TypeScript/12ClassExtensionOverride/types/models/eft/common/tables/IQuest.d.ts b/TypeScript/12ClassExtensionOverride/types/models/eft/common/tables/IQuest.d.ts index e1fc888..942339b 100644 --- a/TypeScript/12ClassExtensionOverride/types/models/eft/common/tables/IQuest.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/models/eft/common/tables/IQuest.d.ts @@ -23,6 +23,7 @@ export interface IQuest { status: string; KeyQuest: boolean; changeQuestMessageText: string; + side: string; } export interface Conditions { Started: AvailableForConditions[]; @@ -56,6 +57,7 @@ export interface AvailableForProps { plantTime?: number; zoneId?: string; type?: boolean; + countInRaid?: boolean; } export interface AvailableForCounter { id: string; diff --git a/TypeScript/12ClassExtensionOverride/types/models/eft/common/tables/ITemplateItem.d.ts b/TypeScript/12ClassExtensionOverride/types/models/eft/common/tables/ITemplateItem.d.ts index 934ea7d..23a1a14 100644 --- a/TypeScript/12ClassExtensionOverride/types/models/eft/common/tables/ITemplateItem.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/models/eft/common/tables/ITemplateItem.d.ts @@ -50,6 +50,7 @@ export interface Props { UnlootableFromSide?: string[]; AnimationVariantsNumber?: number; DiscardingBlock?: boolean; + DropSoundType?: string; RagFairCommissionModifier?: number; IsAlwaysAvailableForInsurance?: boolean; DiscardLimit?: number; @@ -89,7 +90,7 @@ export interface Props { SightModesCount?: number; OpticCalibrationDistances?: number[]; ScopesCount?: number; - AimSensitivity: any; + AimSensitivity?: number | number[][]; Zooms?: number[][]; CalibrationDistances?: number[][]; Intensity?: number; @@ -200,6 +201,9 @@ export interface Props { MinRepairDegradation?: number; MaxRepairDegradation?: number; IronSightRange?: number; + IsFlareGun?: boolean; + IsGrenadeLauncher?: boolean; + IsOneoff?: boolean; MustBoltBeOpennedForExternalReload?: boolean; MustBoltBeOpennedForInternalReload?: boolean; BoltAction?: boolean; diff --git a/TypeScript/12ClassExtensionOverride/types/models/eft/game/IReportNicknameRequestData.d.ts b/TypeScript/12ClassExtensionOverride/types/models/eft/game/IReportNicknameRequestData.d.ts new file mode 100644 index 0000000..087c58b --- /dev/null +++ b/TypeScript/12ClassExtensionOverride/types/models/eft/game/IReportNicknameRequestData.d.ts @@ -0,0 +1,3 @@ +export interface IReportNicknameRequestData { + uid: string; +} diff --git a/TypeScript/12ClassExtensionOverride/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts b/TypeScript/12ClassExtensionOverride/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts new file mode 100644 index 0000000..bf209c6 --- /dev/null +++ b/TypeScript/12ClassExtensionOverride/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts @@ -0,0 +1 @@ +export declare type IGetInsuranceCostResponseData = Record>; diff --git a/TypeScript/12ClassExtensionOverride/types/models/eft/match/IGetGroupStatusRequestData.d.ts b/TypeScript/12ClassExtensionOverride/types/models/eft/match/IGetGroupStatusRequestData.d.ts new file mode 100644 index 0000000..cbdb77f --- /dev/null +++ b/TypeScript/12ClassExtensionOverride/types/models/eft/match/IGetGroupStatusRequestData.d.ts @@ -0,0 +1,8 @@ +export interface IGetGroupStatusRequestData { + location: string; + savage: boolean; + dt: string; + keyId: string; + raidMode: string; + startInGroup: boolean; +} diff --git a/TypeScript/12ClassExtensionOverride/types/models/eft/match/IJoinMatchRequestData.d.ts b/TypeScript/12ClassExtensionOverride/types/models/eft/match/IJoinMatchRequestData.d.ts new file mode 100644 index 0000000..cd34f7b --- /dev/null +++ b/TypeScript/12ClassExtensionOverride/types/models/eft/match/IJoinMatchRequestData.d.ts @@ -0,0 +1,12 @@ +export interface IJoinMatchRequestData { + location: string; + savage: boolean; + dt: string; + servers: Server[]; + keyId: string; +} +export interface Server { + ping: number; + ip: string; + port: string; +} diff --git a/TypeScript/12ClassExtensionOverride/types/models/eft/match/IJoinMatchResult.d.ts b/TypeScript/12ClassExtensionOverride/types/models/eft/match/IJoinMatchResult.d.ts new file mode 100644 index 0000000..df695f4 --- /dev/null +++ b/TypeScript/12ClassExtensionOverride/types/models/eft/match/IJoinMatchResult.d.ts @@ -0,0 +1,11 @@ +export interface IJoinMatchResult { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; + version: string; + location: string; + gamemode: string; + shortid: string; +} diff --git a/TypeScript/12ClassExtensionOverride/types/models/eft/match/IStartOffineRaidRequestData.d.ts b/TypeScript/12ClassExtensionOverride/types/models/eft/match/IStartOffineRaidRequestData.d.ts index 84bccc8..7cc457c 100644 --- a/TypeScript/12ClassExtensionOverride/types/models/eft/match/IStartOffineRaidRequestData.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/models/eft/match/IStartOffineRaidRequestData.d.ts @@ -1,6 +1,5 @@ export interface IStartOfflineRaidRequestData { locationName: string; - entryPoint: string; startTime: number; dateTime: string; gameSettings: GameSettings; diff --git a/TypeScript/12ClassExtensionOverride/types/models/eft/profile/GetProfileStatusResponseData.d.ts b/TypeScript/12ClassExtensionOverride/types/models/eft/profile/GetProfileStatusResponseData.d.ts new file mode 100644 index 0000000..eee9b4f --- /dev/null +++ b/TypeScript/12ClassExtensionOverride/types/models/eft/profile/GetProfileStatusResponseData.d.ts @@ -0,0 +1,11 @@ +export interface GetProfileStatusResponseData { + maxPveCountExceeded: false; + profiles: ProfileData[]; +} +export interface ProfileData { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; +} diff --git a/TypeScript/12ClassExtensionOverride/types/models/eft/ragfair/IGetOffersResult.d.ts b/TypeScript/12ClassExtensionOverride/types/models/eft/ragfair/IGetOffersResult.d.ts index 1c11422..fbc631d 100644 --- a/TypeScript/12ClassExtensionOverride/types/models/eft/ragfair/IGetOffersResult.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/models/eft/ragfair/IGetOffersResult.d.ts @@ -1,6 +1,6 @@ import { IRagfairOffer } from "./IRagfairOffer"; export interface IGetOffersResult { - categories: Record; + categories?: Record; offers: IRagfairOffer[]; offersCount: number; selectedCategory: string; diff --git a/TypeScript/12ClassExtensionOverride/types/models/enums/QuestStatus.d.ts b/TypeScript/12ClassExtensionOverride/types/models/enums/QuestStatus.d.ts deleted file mode 100644 index 6335c73..0000000 --- a/TypeScript/12ClassExtensionOverride/types/models/enums/QuestStatus.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -export declare enum QuestStatus { - Locked = 0, - AvailableForStart = 1, - Started = 2, - AvailableForFinish = 3, - Success = 4, - Fail = 5, - FailRestartable = 6, - MarkedAsFailed = 7 -} diff --git a/TypeScript/12ClassExtensionOverride/types/models/external/IAfterDBLoadMod.d.ts b/TypeScript/12ClassExtensionOverride/types/models/external/IAfterDBLoadMod.d.ts deleted file mode 100644 index 7f08b9e..0000000 --- a/TypeScript/12ClassExtensionOverride/types/models/external/IAfterDBLoadMod.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IAfterDBLoadMod { - loadAfterDbInit(container: DependencyContainer): void; -} diff --git a/TypeScript/12ClassExtensionOverride/types/models/external/IPostAkiLoadMod.d.ts b/TypeScript/12ClassExtensionOverride/types/models/external/IPostAkiLoadMod.d.ts new file mode 100644 index 0000000..f6950e8 --- /dev/null +++ b/TypeScript/12ClassExtensionOverride/types/models/external/IPostAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostAkiLoadMod { + postAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/12ClassExtensionOverride/types/models/external/IPostDBLoadMod.d.ts b/TypeScript/12ClassExtensionOverride/types/models/external/IPostDBLoadMod.d.ts new file mode 100644 index 0000000..ca7c682 --- /dev/null +++ b/TypeScript/12ClassExtensionOverride/types/models/external/IPostDBLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostDBLoadMod { + postDBLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/12ClassExtensionOverride/types/models/external/IPreAkiLoadMod.d.ts b/TypeScript/12ClassExtensionOverride/types/models/external/IPreAkiLoadMod.d.ts new file mode 100644 index 0000000..ae7579e --- /dev/null +++ b/TypeScript/12ClassExtensionOverride/types/models/external/IPreAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPreAkiLoadMod { + preAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/12ClassExtensionOverride/types/models/external/mod.d.ts b/TypeScript/12ClassExtensionOverride/types/models/external/mod.d.ts deleted file mode 100644 index 47939e9..0000000 --- a/TypeScript/12ClassExtensionOverride/types/models/external/mod.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IMod { - load(container: DependencyContainer): void; - delayedLoad(container: DependencyContainer): void; -} diff --git a/TypeScript/12ClassExtensionOverride/types/models/spt/config/IBotConfig.d.ts b/TypeScript/12ClassExtensionOverride/types/models/spt/config/IBotConfig.d.ts index 5fb9d93..f8cf39b 100644 --- a/TypeScript/12ClassExtensionOverride/types/models/spt/config/IBotConfig.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/models/spt/config/IBotConfig.d.ts @@ -18,6 +18,7 @@ export interface PresetBatch { bossKojaniy: number; bossSanitar: number; bossTagilla: number; + bossKnight: number; bossTest: number; cursedAssault: number; followerBully: number; @@ -28,6 +29,8 @@ export interface PresetBatch { followerKojaniy: number; followerSanitar: number; followerTagilla: number; + followerBirdEye: number; + followerBigPipe: number; followerTest: number; marksman: number; pmcBot: number; diff --git a/TypeScript/12ClassExtensionOverride/types/models/spt/config/IRagfairConfig.d.ts b/TypeScript/12ClassExtensionOverride/types/models/spt/config/IRagfairConfig.d.ts index 2d151ca..8518252 100644 --- a/TypeScript/12ClassExtensionOverride/types/models/spt/config/IRagfairConfig.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/models/spt/config/IRagfairConfig.d.ts @@ -30,6 +30,7 @@ export interface Dynamic { expiredOfferThreshold: number; offerItemCount: MinMax; price: MinMax; + presetPrice: MinMax; endTimeSeconds: MinMax; condition: Condition; stackablePercent: MinMax; diff --git a/TypeScript/12ClassExtensionOverride/types/models/spt/server/IDatabaseTables.d.ts b/TypeScript/12ClassExtensionOverride/types/models/spt/server/IDatabaseTables.d.ts index e0d3fdd..9978459 100644 --- a/TypeScript/12ClassExtensionOverride/types/models/spt/server/IDatabaseTables.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/models/spt/server/IDatabaseTables.d.ts @@ -6,6 +6,7 @@ import { ICustomizationItem } from "../../eft/common/tables/ICustomizationItem"; import { IHandbookBase } from "../../eft/common/tables/IHandbookBase"; import { ILootBase } from "../../eft/common/tables/ILootBase"; import { IMatch } from "../../eft/common/tables/IMatch"; +import { IProfileTemplates } from "../../eft/common/tables/IProfileTemplate"; import { IQuest } from "../../eft/common/tables/IQuest"; import { IRepeatableQuestDatabase } from "../../eft/common/tables/IRepeatableQuests"; import { ITemplateItem } from "../../eft/common/tables/ITemplateItem"; @@ -39,10 +40,13 @@ export interface IDatabaseTables { items: Record; quests: IQuest[]; repeatableQuests: IRepeatableQuestDatabase; + /** DEPRECATED - Items file found in the client, massivly out of date compared to templates.items, try not to use this, remove ASAP*/ clientItems: Record; handbook: IHandbookBase; customization: Record; - profiles: any; + /** The profile templates listed in the launcher on profile creation, split by account type (e.g. Standard) then side (e.g. bear/usec) */ + profiles: IProfileTemplates; + /** Flea prices of items - gathered from online flea market dump */ prices: Record; }; traders?: Record; diff --git a/TypeScript/12ClassExtensionOverride/types/servers/RagfairServer.d.ts b/TypeScript/12ClassExtensionOverride/types/servers/RagfairServer.d.ts index 60c92b5..bc86cdb 100644 --- a/TypeScript/12ClassExtensionOverride/types/servers/RagfairServer.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/servers/RagfairServer.d.ts @@ -17,7 +17,8 @@ export declare class RagfairServer { constructor(logger: ILogger, ragfairOfferGenerator: RagfairOfferGenerator, ragfairOfferService: RagfairOfferService, ragfairCategoriesService: RagfairCategoriesService, ragfairRequiredItemsService: RagfairRequiredItemsService, configServer: ConfigServer); load(): void; update(): void; - getCategories(): Record; + getAllCategories(): Record; + getBespokeCategories(offers: IRagfairOffer[]): Record; /** * Disable/Hide an offer from flea * @param offerId diff --git a/TypeScript/12ClassExtensionOverride/types/services/RagfairCategoriesService.d.ts b/TypeScript/12ClassExtensionOverride/types/services/RagfairCategoriesService.d.ts index 09956cc..83910e5 100644 --- a/TypeScript/12ClassExtensionOverride/types/services/RagfairCategoriesService.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/services/RagfairCategoriesService.d.ts @@ -1,10 +1,40 @@ import { IRagfairOffer } from "../models/eft/ragfair/IRagfairOffer"; +import { ILogger } from "../models/spt/utils/ILogger"; export declare class RagfairCategoriesService { - updateCategories(offers: IRagfairOffer[]): void; + protected logger: ILogger; protected categories: Record; - getCategories(): Record; - getCategoryByItemId(itemId: string): number; - resetCategories(): void; - setCategoryValue(itemId: string, newValue: number): void; - incrementCategory(itemId: string): void; + constructor(logger: ILogger); + /** + * Get all flea categories and their count of offers + * @returns item categories and count + */ + getAllCategories(): Record; + /** + * With the supplied items, get custom categories + * @returns a custom list of categories + */ + getBespokeCategories(offers: IRagfairOffer[]): Record; + /** + * Take an array of ragfair offers and create a dictionary of items with thier corrisponding offer count + * @param offers ragfair offers + * @returns categories and count + */ + protected processOffersIntoCategories(offers: IRagfairOffer[]): Record; + /** + * Increment or decrement a category array + * @param offer offer to process + * @param categories categories to update + * @param increment should item be incremented or decremented + */ + protected addOrIncrementCategory(offer: IRagfairOffer, categories: Record, increment?: boolean): void; + /** + * Increase category count by 1 + * @param offer + */ + incrementCategory(offer: IRagfairOffer): void; + /** + * Reduce category count by 1 + * @param offer + */ + decrementCategory(offer: IRagfairOffer): void; } diff --git a/TypeScript/12ClassExtensionOverride/types/services/RagfairOfferService.d.ts b/TypeScript/12ClassExtensionOverride/types/services/RagfairOfferService.d.ts index 7afbf8c..7398a8f 100644 --- a/TypeScript/12ClassExtensionOverride/types/services/RagfairOfferService.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/services/RagfairOfferService.d.ts @@ -11,12 +11,14 @@ import { DatabaseServer } from "../servers/DatabaseServer"; import { SaveServer } from "../servers/SaveServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; import { TimeUtil } from "../utils/TimeUtil"; +import { RagfairCategoriesService } from "./RagfairCategoriesService"; export declare class RagfairOfferService { protected logger: ILogger; protected timeUtil: TimeUtil; protected databaseServer: DatabaseServer; protected saveServer: SaveServer; protected ragfairServerHelper: RagfairServerHelper; + protected ragfairCategoriesService: RagfairCategoriesService; protected profileHelper: ProfileHelper; protected itemEventRouter: ItemEventRouter; protected httpResponse: HttpResponseUtil; @@ -26,12 +28,16 @@ export declare class RagfairOfferService { protected expiredOffers: Item[]; protected offers: IRagfairOffer[]; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, ragfairCategoriesService: RagfairCategoriesService, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + /** + * Get all offers + * @returns IRagfairOffer array + */ getOffers(): IRagfairOffer[]; getOfferByOfferId(offerId: string): IRagfairOffer; getOffersOfType(templateId: string): IRagfairOffer[]; addOffer(offer: IRagfairOffer): void; - addOfferToExpired(offer: Item): void; + addOfferToExpired(staleOffer: IRagfairOffer): void; setTraderUpdateStatus(traderId: string, shouldUpdate: boolean): void; shouldTraderBeUpdated(traderID: string): boolean; getExpiredOfferCount(): number; diff --git a/TypeScript/12ClassExtensionOverride/types/services/RagfairPriceService.d.ts b/TypeScript/12ClassExtensionOverride/types/services/RagfairPriceService.d.ts index 5256b99..e3168a6 100644 --- a/TypeScript/12ClassExtensionOverride/types/services/RagfairPriceService.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/services/RagfairPriceService.d.ts @@ -28,5 +28,19 @@ export declare class RagfairPriceService { getFleaPriceForItem(tplId: string): number; getBarterPrice(barterScheme: IBarterScheme[]): number; getDynamicOfferPrice(items: Item[], desiredCurrency: string): number; + /** + * Multiply the price by a randomised curve where n = 2, shift = 2 + * @param existingPrice price to alter + * @param isPreset is the item we're multiplying a preset + * @returns multiplied price + */ + protected randomisePrice(existingPrice: number, isPreset: boolean): number; + /** + * Calculate the cost of a weapon preset by adding together the price of its mods + base price of default weapon preset + * @param item base weapon + * @param items weapon plus mods + * @param existingPrice price of existing base weapon + * @returns + */ getWeaponPresetPrice(item: Item, items: Item[], existingPrice: number): number; } diff --git a/TypeScript/12ClassExtensionOverride/types/utils/Watermark.d.ts b/TypeScript/12ClassExtensionOverride/types/utils/Watermark.d.ts index 111bdd0..c6dc120 100644 --- a/TypeScript/12ClassExtensionOverride/types/utils/Watermark.d.ts +++ b/TypeScript/12ClassExtensionOverride/types/utils/Watermark.d.ts @@ -28,7 +28,12 @@ export declare class Watermark { protected text: string[]; protected versionLabel: string; initialize(): void; - getVersionTag(): string; + /** + * Get a version string (x.x.x) or (x.x.x-BLEEDINGEDGE) OR (X.X.X (18xxx)) + * @param withEftVersion Include the eft version this spt version was made for + * @returns string + */ + getVersionTag(withEftVersion?: boolean): string; getVersionLabel(): string; /** Set window title */ setTitle(): void; diff --git a/TypeScript/13AddTrader/package.json b/TypeScript/13AddTrader/package.json index 1a53ed7..acb7e4e 100644 --- a/TypeScript/13AddTrader/package.json +++ b/TypeScript/13AddTrader/package.json @@ -4,7 +4,7 @@ "main": "src/mod.js", "license": "MIT", "author": "Shirito", - "akiVersion": "3.0.1", + "akiVersion": "3.1.0", "scripts": { "setup:environment": "npm i", "build:unzipped": "copyfiles -e \"./node_modules/**/*.*\" -e \"./dist/**/*.*\" -e \"./package-lock.json\" -e \"./tsconfig.json\" -e \"./README.txt\" -e \"./mod.code-workspace\" ./**/*.* ./dist", diff --git a/TypeScript/13AddTrader/src/mod.ts b/TypeScript/13AddTrader/src/mod.ts index 508fc93..23388ea 100644 --- a/TypeScript/13AddTrader/src/mod.ts +++ b/TypeScript/13AddTrader/src/mod.ts @@ -1,9 +1,10 @@ import { DependencyContainer } from "tsyringe"; // SPT types -import { IMod } from "@spt-aki/models/external/mod"; +import { IPreAkiLoadMod } from "@spt-aki/models/external/IPreAkiLoadMod"; +import { IPostAkiLoadMod } from "@spt-aki/models/external/IPostAkiLoadMod"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; -import { InitialModLoader } from "@spt-aki/loaders/InitialModLoader"; +import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { DatabaseServer } from "@spt-aki/servers/DatabaseServer"; import { ImageRouter } from "@spt-aki/routers/ImageRouter"; import { ConfigServer } from "@spt-aki/servers/ConfigServer"; @@ -17,27 +18,25 @@ import { ILocaleGlobalBase } from "@spt-aki/models/spt/server/ILocaleBase"; // The new trader config import * as baseJson from "../db/base.json"; -class SampleTrader implements IMod { +class SampleTrader implements IPreAkiLoadMod, IPostAkiLoadMod { mod: string logger: ILogger constructor() { this.mod = "13AddTrader"; } - - // Perform these actions before server fully loads - public load(container: DependencyContainer): void { + public preAkiLoad(container: DependencyContainer): void { this.logger = container.resolve("WinstonLogger"); this.logger.debug(`[${this.mod}] Loading... `); - + this.registerProfileImage(container); - + this.setupTraderUpdateTime(container); - + this.logger.debug(`[${this.mod}] Loaded`); } - - public delayedLoad(container: DependencyContainer): void { + + public postAkiLoad(container: DependencyContainer): void { this.logger.debug(`[${this.mod}] Delayed Loading... `); const databaseServer = container.resolve("DatabaseServer"); @@ -69,8 +68,8 @@ class SampleTrader implements IMod { private registerProfileImage(container: DependencyContainer): void { // Reference the mod "res" folder - const initialModLoader = container.resolve("InitialModLoader"); - const imageFilepath = `./${initialModLoader.getModPath(this.mod)}res`; + const preAkiModLoader = container.resolve("PreAkiModLoader"); + const imageFilepath = `./${preAkiModLoader.getModPath(this.mod)}res`; // Register route pointing to the profile picture const imageRouter = container.resolve("ImageRouter"); diff --git a/TypeScript/13AddTrader/types/callbacks/GameCallbacks.d.ts b/TypeScript/13AddTrader/types/callbacks/GameCallbacks.d.ts index d5cad76..06da1b5 100644 --- a/TypeScript/13AddTrader/types/callbacks/GameCallbacks.d.ts +++ b/TypeScript/13AddTrader/types/callbacks/GameCallbacks.d.ts @@ -2,6 +2,7 @@ import { GameController } from "../controllers/GameController"; import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse"; import { IGameEmptyCrcRequestData } from "../models/eft/game/IGameEmptyCrcRequestData"; +import { IReportNicknameRequestData } from "../models/eft/game/IReportNicknameRequestData"; import { IVersionValidateRequestData } from "../models/eft/game/IVersionValidateRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; @@ -20,5 +21,6 @@ declare class GameCallbacks { validateGameVersion(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; gameKeepalive(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; getVersion(url: string, info: IEmptyRequestData, sessionID: string): string; + reportNickname(url: string, info: IReportNicknameRequestData, sessionID: string): INullResponseData; } export { GameCallbacks }; diff --git a/TypeScript/13AddTrader/types/callbacks/HealthCallbacks.d.ts b/TypeScript/13AddTrader/types/callbacks/HealthCallbacks.d.ts index 8f7b89d..8672be7 100644 --- a/TypeScript/13AddTrader/types/callbacks/HealthCallbacks.d.ts +++ b/TypeScript/13AddTrader/types/callbacks/HealthCallbacks.d.ts @@ -13,6 +13,13 @@ export declare class HealthCallbacks { protected profileHelper: ProfileHelper; protected healthController: HealthController; constructor(httpResponse: HttpResponseUtil, profileHelper: ProfileHelper, healthController: HealthController); + /** + * Custom aki server request found in modules/HealthSynchronizer.cs + * @param url + * @param info HealthListener.Instance.CurrentHealth class + * @param sessionID session id + * @returns empty response, no data sent back to client + */ syncHealth(url: string, info: ISyncHealthRequestData, sessionID: string): IGetBodyResponseData; offraidEat(pmcData: IPmcData, body: IOffraidEatRequestData, sessionID: string): IItemEventRouterResponse; offraidHeal(pmcData: IPmcData, body: IOffraidHealRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/13AddTrader/types/callbacks/InsuranceCallbacks.d.ts b/TypeScript/13AddTrader/types/callbacks/InsuranceCallbacks.d.ts index 520d0eb..6819960 100644 --- a/TypeScript/13AddTrader/types/callbacks/InsuranceCallbacks.d.ts +++ b/TypeScript/13AddTrader/types/callbacks/InsuranceCallbacks.d.ts @@ -3,6 +3,7 @@ import { OnLoadOnUpdate } from "../di/OnLoadOnUpdate"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -17,7 +18,7 @@ export declare class InsuranceCallbacks extends OnLoadOnUpdate { protected insuranceConfig: IInsuranceConfig; constructor(insuranceController: InsuranceController, insuranceService: InsuranceService, httpResponse: HttpResponseUtil, configServer: ConfigServer); onLoad(): void; - getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; + getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; onUpdate(secondsSinceLastRun: number): boolean; getRoute(): string; diff --git a/TypeScript/13AddTrader/types/callbacks/MatchCallbacks.d.ts b/TypeScript/13AddTrader/types/callbacks/MatchCallbacks.d.ts index 083c1f5..158d8df 100644 --- a/TypeScript/13AddTrader/types/callbacks/MatchCallbacks.d.ts +++ b/TypeScript/13AddTrader/types/callbacks/MatchCallbacks.d.ts @@ -1,9 +1,13 @@ import { MatchController } from "../controllers/MatchController"; +import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { DatabaseServer } from "../servers/DatabaseServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; @@ -16,18 +20,18 @@ export declare class MatchCallbacks { constructor(httpResponse: HttpResponseUtil, jsonUtil: JsonUtil, matchController: MatchController, databaseServer: DatabaseServer); updatePing(url: string, info: any, sessionID: string): INullResponseData; exitMatch(url: string, info: any, sessionID: string): INullResponseData; - exitToMenu(url: string, info: any, sessionID: string): INullResponseData; - startGroupSearch(url: string, info: any, sessionID: string): INullResponseData; - stopGroupSearch(url: string, info: any, sessionID: string): INullResponseData; + exitToMenu(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + startGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + stopGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; sendGroupInvite(url: string, info: any, sessionID: string): INullResponseData; acceptGroupInvite(url: string, info: any, sessionID: string): INullResponseData; cancelGroupInvite(url: string, info: any, sessionID: string): INullResponseData; putMetrics(url: string, info: any, sessionID: string): INullResponseData; getProfile(url: string, info: IGetProfileRequestData, sessionID: string): IGetBodyResponseData; - serverAvailable(url: string, info: any, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; - joinMatch(url: string, info: any, sessionID: string): IGetBodyResponseData; + serverAvailable(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; + joinMatch(url: string, info: IJoinMatchRequestData, sessionID: string): IGetBodyResponseData; getMetrics(url: string, info: any, sessionID: string): IGetBodyResponseData; - getGroupStatus(url: string, info: any, sessionID: string): IGetBodyResponseData; + getGroupStatus(url: string, info: IGetGroupStatusRequestData, sessionID: string): IGetBodyResponseData; createGroup(url: string, info: any, sessionID: string): IGetBodyResponseData; deleteGroup(url: string, info: any, sessionID: string): INullResponseData; startOfflineRaid(url: string, info: IStartOfflineRaidRequestData, sessionID: string): INullResponseData; diff --git a/TypeScript/13AddTrader/types/callbacks/ModCallbacks.d.ts b/TypeScript/13AddTrader/types/callbacks/ModCallbacks.d.ts index 866abf7..58342dc 100644 --- a/TypeScript/13AddTrader/types/callbacks/ModCallbacks.d.ts +++ b/TypeScript/13AddTrader/types/callbacks/ModCallbacks.d.ts @@ -1,5 +1,5 @@ import { OnLoad } from "../di/OnLoad"; -import { DelayedModLoader } from "../loaders/DelayedModLoader"; +import { PostAkiModLoader } from "../loaders/PostAkiModLoader"; import { IHttpConfig } from "../models/spt/config/IHttpConfig"; import { IHttpServer } from "../models/spt/server/IHttpServer"; import { ILogger } from "../models/spt/utils/ILogger"; @@ -9,10 +9,10 @@ declare class ModCallbacks extends OnLoad { protected logger: ILogger; protected httpResponse: HttpResponseUtil; protected httpServer: IHttpServer; - protected modLoader: DelayedModLoader; + protected postAkiModLoader: PostAkiModLoader; protected configServer: ConfigServer; protected httpConfig: IHttpConfig; - constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, modLoader: DelayedModLoader, configServer: ConfigServer); + constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, postAkiModLoader: PostAkiModLoader, configServer: ConfigServer); onLoad(): void; getRoute(): string; sendBundle(sessionID: string, req: any, resp: any, body: any): void; diff --git a/TypeScript/13AddTrader/types/callbacks/ProfileCallbacks.d.ts b/TypeScript/13AddTrader/types/callbacks/ProfileCallbacks.d.ts index 116e7c5..6a86fc0 100644 --- a/TypeScript/13AddTrader/types/callbacks/ProfileCallbacks.d.ts +++ b/TypeScript/13AddTrader/types/callbacks/ProfileCallbacks.d.ts @@ -3,6 +3,7 @@ import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IGetMiniProfileRequestData } from "../models/eft/launcher/IGetMiniProfileRequestData"; +import { GetProfileStatusResponseData } from "../models/eft/profile/GetProfileStatusResponseData"; import { IProfileChangeNicknameRequestData } from "../models/eft/profile/IProfileChangeNicknameRequestData"; import { IProfileChangeVoiceRequestData } from "../models/eft/profile/IProfileChangeVoiceRequestData"; import { IProfileCreateRequestData } from "../models/eft/profile/IProfileCreateRequestData"; @@ -23,7 +24,14 @@ export declare class ProfileCallbacks { changeNickname(url: string, info: IProfileChangeNicknameRequestData, sessionID: string): IGetBodyResponseData; validateNickname(url: string, info: IValidateNicknameRequestData, sessionID: string): IGetBodyResponseData; getReservedNickname(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; - getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; + /** + * Called when creating a character, when you choose a character face/voice + * @param url + * @param info response (empty) + * @param sessionID + * @returns + */ + getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; searchFriend(url: string, info: ISearchFriendRequestData, sessionID: string): IGetBodyResponseData; getMiniProfile(url: string, info: IGetMiniProfileRequestData, sessionID: string): string; getAllMiniProfiles(url: string, info: any, sessionID: string): string; diff --git a/TypeScript/13AddTrader/types/callbacks/RagfairCallbacks.d.ts b/TypeScript/13AddTrader/types/callbacks/RagfairCallbacks.d.ts index d5bab8b..da782e1 100644 --- a/TypeScript/13AddTrader/types/callbacks/RagfairCallbacks.d.ts +++ b/TypeScript/13AddTrader/types/callbacks/RagfairCallbacks.d.ts @@ -9,6 +9,7 @@ import { IAddOfferRequestData } from "../models/eft/ragfair/IAddOfferRequestData import { IExtendOfferRequestData } from "../models/eft/ragfair/IExtendOfferRequestData"; import { IGetItemPriceResult } from "../models/eft/ragfair/IGetItemPriceResult"; import { IGetMarketPriceRequestData } from "../models/eft/ragfair/IGetMarketPriceRequestData"; +import { IGetOffersResult } from "../models/eft/ragfair/IGetOffersResult"; import { IRemoveOfferRequestData } from "../models/eft/ragfair/IRemoveOfferRequestData"; import { ISearchRequestData } from "../models/eft/ragfair/ISearchRequestData"; import { IRagfairConfig } from "../models/spt/config/IRagfairConfig"; @@ -28,7 +29,7 @@ export declare class RagfairCallbacks extends OnLoadOnUpdate { constructor(httpResponse: HttpResponseUtil, logger: ILogger, jsonUtil: JsonUtil, ragfairServer: RagfairServer, ragfairController: RagfairController, configServer: ConfigServer); onLoad(): void; getRoute(): string; - search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; + search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; getMarketPrice(url: string, info: IGetMarketPriceRequestData, sessionID: string): IGetBodyResponseData; getItemPrices(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; addOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/13AddTrader/types/controllers/GameController.d.ts b/TypeScript/13AddTrader/types/controllers/GameController.d.ts index 5f516de..f4c3d2c 100644 --- a/TypeScript/13AddTrader/types/controllers/GameController.d.ts +++ b/TypeScript/13AddTrader/types/controllers/GameController.d.ts @@ -28,6 +28,11 @@ export declare class GameController { protected addMissingRepeatableQuestsProperty(pmcProfile: IPmcData): void; protected addMissingWeaponRepairSkill(pmcProfile: IPmcData): void; protected addMissingAkiVersionTagToProfile(fullProfile: IAkiProfile): void; + /** + * In 18876 bsg changed the pockets tplid to be one that has 3 additional special slots + * @param pmcProfile + */ + protected updateProfilePocketsToNewId(pmcProfile: IPmcData): void; protected addMissingArmorRepairSkill(pmcProfile: IPmcData): void; protected fixNullTraderSalesSums(pmcProfile: IPmcData): void; protected removeDanglingBackendCounters(pmcProfile: IPmcData): void; diff --git a/TypeScript/13AddTrader/types/controllers/InsuranceController.d.ts b/TypeScript/13AddTrader/types/controllers/InsuranceController.d.ts index db2c567..af45442 100644 --- a/TypeScript/13AddTrader/types/controllers/InsuranceController.d.ts +++ b/TypeScript/13AddTrader/types/controllers/InsuranceController.d.ts @@ -3,6 +3,7 @@ import { ItemHelper } from "../helpers/ItemHelper"; import { ProfileHelper } from "../helpers/ProfileHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -33,6 +34,12 @@ export declare class InsuranceController { insuranceService: InsuranceService, configServer: ConfigServer); processReturn(): void; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; - cost(info: IGetInsuranceCostRequestData, sessionID: string): any; + /** + * Calculate insurance cost + * @param info request object + * @param sessionID session id + * @returns response object to send to client + */ + cost(info: IGetInsuranceCostRequestData, sessionID: string): IGetInsuranceCostResponseData; doAbsolutelyNothing(): void; } diff --git a/TypeScript/13AddTrader/types/controllers/InventoryController.d.ts b/TypeScript/13AddTrader/types/controllers/InventoryController.d.ts index b732aa9..f24ab62 100644 --- a/TypeScript/13AddTrader/types/controllers/InventoryController.d.ts +++ b/TypeScript/13AddTrader/types/controllers/InventoryController.d.ts @@ -24,6 +24,8 @@ import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRout import { ILogger } from "../models/spt/utils/ILogger"; import { ItemEventRouter } from "../routers/ItemEventRouter"; import { DatabaseServer } from "../servers/DatabaseServer"; +import { FenceService } from "../services/FenceService"; +import { RagfairOfferService } from "../services/RagfairOfferService"; import { HashUtil } from "../utils/HashUtil"; import { JsonUtil } from "../utils/JsonUtil"; export declare class InventoryController { @@ -31,12 +33,14 @@ export declare class InventoryController { protected hashUtil: HashUtil; protected jsonUtil: JsonUtil; protected databaseServer: DatabaseServer; + protected fenceService: FenceService; protected presetHelper: PresetHelper; protected inventoryHelper: InventoryHelper; + protected ragfairOfferService: RagfairOfferService; protected profileHelper: ProfileHelper; protected paymentHelper: PaymentHelper; protected itemEventRouter: ItemEventRouter; - constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); + constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, fenceService: FenceService, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, ragfairOfferService: RagfairOfferService, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); /** * Move Item * change location of item with parentId and slotId @@ -93,9 +97,19 @@ export declare class InventoryController { tagItem(pmcData: IPmcData, body: IInventoryTagRequestData, sessionID: string): IItemEventRouterResponse; bindItem(pmcData: IPmcData, body: IInventoryBindRequestData, sessionID: string): IItemEventRouterResponse; /** - * Handles examining of the item * + * Handles examining an item + * @param pmcData player profile + * @param body request object + * @param sessionID session id + * @returns response */ examineItem(pmcData: IPmcData, body: IInventoryExamineRequestData, sessionID: string): IItemEventRouterResponse; + /** + * Get the tplid of an item from the examine request object + * @param body response request + * @returns tplid + */ + protected getItemTpl(body: IInventoryExamineRequestData): string; readEncyclopedia(pmcData: IPmcData, body: IInventoryReadEncyclopediaRequestData, sessionID: string): IItemEventRouterResponse; /** * Handles sorting of Inventory. diff --git a/TypeScript/13AddTrader/types/controllers/MatchController.d.ts b/TypeScript/13AddTrader/types/controllers/MatchController.d.ts index c322d96..7ef3fcc 100644 --- a/TypeScript/13AddTrader/types/controllers/MatchController.d.ts +++ b/TypeScript/13AddTrader/types/controllers/MatchController.d.ts @@ -2,7 +2,10 @@ import { ProfileHelper } from "../helpers/ProfileHelper"; import { TraderHelper } from "../helpers/TraderHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { IInRaidConfig } from "../models/spt/config/IInRaidConfig"; import { IMatchConfig } from "../models/spt/config/IMatchConfig"; @@ -20,11 +23,11 @@ export declare class MatchController { constructor(saveServer: SaveServer, profileHelper: ProfileHelper, matchLocationService: MatchLocationService, traderHelper: TraderHelper, configServer: ConfigServer); getEnabled(): boolean; getProfile(info: IGetProfileRequestData): IPmcData[]; - protected getMatch(location: any): any; createGroup(sessionID: string, info: any): any; deleteGroup(info: any): void; - joinMatch(info: any, sessionID: string): any[]; - getGroupStatus(info: any): any; + joinMatch(info: IJoinMatchRequestData, sessionID: string): IJoinMatchResult[]; + protected getMatch(location: string): any; + getGroupStatus(info: IGetGroupStatusRequestData): any; startOfflineRaid(info: IStartOfflineRaidRequestData, sessionID: string): void; endOfflineRaid(info: IEndOfflineRaidRequestData, sessionID: string): void; } diff --git a/TypeScript/13AddTrader/types/controllers/RagfairController.d.ts b/TypeScript/13AddTrader/types/controllers/RagfairController.d.ts index c758593..c4ffc15 100644 --- a/TypeScript/13AddTrader/types/controllers/RagfairController.d.ts +++ b/TypeScript/13AddTrader/types/controllers/RagfairController.d.ts @@ -60,6 +60,8 @@ export declare class RagfairController { protected ragfairConfig: IRagfairConfig; constructor(logger: ILogger, timeUtil: TimeUtil, httpResponse: HttpResponseUtil, itemEventRouter: ItemEventRouter, ragfairServer: RagfairServer, ragfairPriceService: RagfairPriceService, databaseServer: DatabaseServer, itemHelper: ItemHelper, saveServer: SaveServer, ragfairSellHelper: RagfairSellHelper, ragfairTaxHelper: RagfairTaxHelper, ragfairSortHelper: RagfairSortHelper, ragfairOfferHelper: RagfairOfferHelper, profileHelper: ProfileHelper, paymentService: PaymentService, handbookHelper: HandbookHelper, paymentHelper: PaymentHelper, inventoryHelper: InventoryHelper, ragfairHelper: RagfairHelper, ragfairOfferService: RagfairOfferService, ragfairRequiredItemsService: RagfairRequiredItemsService, ragfairOfferGenerator: RagfairOfferGenerator, configServer: ConfigServer); getOffers(sessionID: string, info: ISearchRequestData): IGetOffersResult; + protected isLinkedSearch(info: ISearchRequestData): boolean; + protected isRequiredSearch(info: ISearchRequestData): boolean; update(): void; getItemPrice(info: IGetMarketPriceRequestData): IGetItemPriceResult; addPlayerOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/13AddTrader/types/generators/BotWeaponGenerator.d.ts b/TypeScript/13AddTrader/types/generators/BotWeaponGenerator.d.ts index a43b18c..dd3ad69 100644 --- a/TypeScript/13AddTrader/types/generators/BotWeaponGenerator.d.ts +++ b/TypeScript/13AddTrader/types/generators/BotWeaponGenerator.d.ts @@ -41,6 +41,13 @@ export declare class BotWeaponGenerator { * @returns */ protected generateExtraMagazines(weaponMods: Item[], weaponTemplate: ITemplateItem, magCounts: MinMax, ammoTpl: string, inventory: PmcInventory): void; + /** + * Get a randomised number of bullets for a specific magazine + * @param magCounts min and max count of magazines + * @param magTemplate magazine to generate bullet count for + * @returns bullet count number + */ + protected getRandomisedBulletCount(magCounts: MinMax, magTemplate: ITemplateItem): number; /** * Get a randomised count of magazines * @param magCounts min and max value returned value can be between diff --git a/TypeScript/13AddTrader/types/generators/RagfairOfferGenerator.d.ts b/TypeScript/13AddTrader/types/generators/RagfairOfferGenerator.d.ts index de53ea9..6645c8d 100644 --- a/TypeScript/13AddTrader/types/generators/RagfairOfferGenerator.d.ts +++ b/TypeScript/13AddTrader/types/generators/RagfairOfferGenerator.d.ts @@ -18,6 +18,7 @@ import { JsonUtil } from "../utils/JsonUtil"; import { RandomUtil } from "../utils/RandomUtil"; import { TimeUtil } from "../utils/TimeUtil"; import { RagfairAssortGenerator } from "./RagfairAssortGenerator"; +import { RagfairCategoriesService } from "../services/RagfairCategoriesService"; export declare class RagfairOfferGenerator { protected logger: ILogger; protected jsonUtil: JsonUtil; @@ -31,11 +32,12 @@ export declare class RagfairOfferGenerator { protected ragfairAssortGenerator: RagfairAssortGenerator; protected ragfairOfferService: RagfairOfferService; protected ragfairPriceService: RagfairPriceService; + protected ragfairCategoriesService: RagfairCategoriesService; protected fenceService: FenceService; protected itemHelper: ItemHelper; protected configServer: ConfigServer; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); + constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, ragfairCategoriesService: RagfairCategoriesService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); createOffer(userID: string, time: number, items: Item[], barterScheme: IBarterScheme[], loyalLevel: number, price: number, sellInOnePiece?: boolean): IRagfairOffer; protected getTraderId(userID: string): string; protected getRating(userID: string): number; diff --git a/TypeScript/13AddTrader/types/helpers/BotGeneratorHelper.d.ts b/TypeScript/13AddTrader/types/helpers/BotGeneratorHelper.d.ts index e4b0c11..243e7a8 100644 --- a/TypeScript/13AddTrader/types/helpers/BotGeneratorHelper.d.ts +++ b/TypeScript/13AddTrader/types/helpers/BotGeneratorHelper.d.ts @@ -29,6 +29,12 @@ export declare class BotGeneratorHelper { protected botConfig: IBotConfig; constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, probabilityHelper: ProbabilityHelper, databaseServer: DatabaseServer, durabilityLimitsHelper: DurabilityLimitsHelper, itemHelper: ItemHelper, inventoryHelper: InventoryHelper, containerHelper: ContainerHelper, configServer: ConfigServer); generateModsForItem(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem, modSpawnChances: ModsChances, isPmc?: boolean): Item[]; + /** + * Is this magazine cylinder related (revolvers and grenade launchers) + * @param magazineParentName the name of the magazines parent + * @returns true if it is cylinder related + */ + magazineIsCylinderRelated(magazineParentName: string): boolean; /** * Get a list of non black-listed cartridges from the PMC bot config * @param modSlot mod item slot @@ -69,6 +75,12 @@ export declare class BotGeneratorHelper { * @param {object} parentTemplate The CylinderMagazine's template */ protected fillCamora(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem): void; + /** + * Take a record of camoras and merge the compatable shells into one array + * @param camorasWithShells camoras we want to merge into one array + * @returns string array of shells fro luitple camora sources + */ + protected mergeCamoraPoolsTogether(camorasWithShells: Record): string[]; generateExtraPropertiesForItem(itemTemplate: ITemplateItem, botRole?: any): { upd?: Upd; }; diff --git a/TypeScript/13AddTrader/types/loaders/DelayedModLoader.d.ts b/TypeScript/13AddTrader/types/loaders/PostAkiModLoader.d.ts similarity index 80% rename from TypeScript/13AddTrader/types/loaders/DelayedModLoader.d.ts rename to TypeScript/13AddTrader/types/loaders/PostAkiModLoader.d.ts index 2a05604..edc6e5d 100644 --- a/TypeScript/13AddTrader/types/loaders/DelayedModLoader.d.ts +++ b/TypeScript/13AddTrader/types/loaders/PostAkiModLoader.d.ts @@ -4,14 +4,14 @@ import { IModLoader } from "../models/spt/mod/IModLoader"; import { ModCompilerService } from "../services/ModCompilerService"; import { VFS } from "../utils/VFS"; import { BundleLoader } from "./BundleLoader"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class DelayedModLoader implements IModLoader { +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostAkiModLoader implements IModLoader { protected bundleLoader: BundleLoader; protected handbookController: HandbookController; protected vfs: VFS; protected modCompilerService: ModCompilerService; - protected initialModLoader: InitialModLoader; - constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, initialModLoader: InitialModLoader); + protected preAkiModLoader: PreAkiModLoader; + constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, preAkiModLoader: PreAkiModLoader); getBundles(local: boolean): string; getBundle(key: string, local: boolean): void; getModPath(mod: string): string; diff --git a/TypeScript/13AddTrader/types/loaders/AfterDbModLoader.d.ts b/TypeScript/13AddTrader/types/loaders/PostDBModLoader.d.ts similarity index 52% rename from TypeScript/13AddTrader/types/loaders/AfterDbModLoader.d.ts rename to TypeScript/13AddTrader/types/loaders/PostDBModLoader.d.ts index a9fc286..5101b7b 100644 --- a/TypeScript/13AddTrader/types/loaders/AfterDbModLoader.d.ts +++ b/TypeScript/13AddTrader/types/loaders/PostDBModLoader.d.ts @@ -1,9 +1,9 @@ import { DependencyContainer } from "tsyringe"; import { OnLoad } from "../di/OnLoad"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class AfterDbModLoader implements OnLoad { - protected initialModLoader: InitialModLoader; - constructor(initialModLoader: InitialModLoader); +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostDBModLoader implements OnLoad { + protected preAkiModLoader: PreAkiModLoader; + constructor(preAkiModLoader: PreAkiModLoader); onLoad(): void; getRoute(): string; getModPath(mod: string): string; diff --git a/TypeScript/13AddTrader/types/loaders/InitialModLoader.d.ts b/TypeScript/13AddTrader/types/loaders/PreAkiModLoader.d.ts similarity index 96% rename from TypeScript/13AddTrader/types/loaders/InitialModLoader.d.ts rename to TypeScript/13AddTrader/types/loaders/PreAkiModLoader.d.ts index 9a99dcc..6ded3c6 100644 --- a/TypeScript/13AddTrader/types/loaders/InitialModLoader.d.ts +++ b/TypeScript/13AddTrader/types/loaders/PreAkiModLoader.d.ts @@ -9,7 +9,7 @@ import { ModCompilerService } from "../services/ModCompilerService"; import { JsonUtil } from "../utils/JsonUtil"; import { VFS } from "../utils/VFS"; import { BundleLoader } from "./BundleLoader"; -export declare class InitialModLoader implements IModLoader { +export declare class PreAkiModLoader implements IModLoader { protected logger: ILogger; protected vfs: VFS; protected jsonUtil: JsonUtil; @@ -50,7 +50,7 @@ export declare class InitialModLoader implements IModLoader { * @param modToValidate package.json details * @returns boolean */ - protected isModSpt300Compatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; + protected isModSpt3XXCompatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; protected executeMods(container: DependencyContainer): void; sortModsLoadOrder(): string[]; diff --git a/TypeScript/13AddTrader/types/models/eft/common/IGlobals.d.ts b/TypeScript/13AddTrader/types/models/eft/common/IGlobals.d.ts index 456895c..9d28dbc 100644 --- a/TypeScript/13AddTrader/types/models/eft/common/IGlobals.d.ts +++ b/TypeScript/13AddTrader/types/models/eft/common/IGlobals.d.ts @@ -1128,8 +1128,11 @@ export interface Inertia { SprintAccelerationLimits: xyz; SideTime: xyz; DiagonalTime: xyz; + MaxTimeWithoutInput: xyz; MinDirectionBlendTime: number; - MoveTime: number; + MoveTimeRange: xyz; + ProneDirectionAccelerationRange: xyz; + ProneSpeedAccelerationRange: xyz; MinMovementAccelerationRangeRight: xyz; MaxMovementAccelerationRangeRight: xyz; } diff --git a/TypeScript/13AddTrader/types/models/eft/common/ILocationBase.d.ts b/TypeScript/13AddTrader/types/models/eft/common/ILocationBase.d.ts index ad48d32..b1dd448 100644 --- a/TypeScript/13AddTrader/types/models/eft/common/ILocationBase.d.ts +++ b/TypeScript/13AddTrader/types/models/eft/common/ILocationBase.d.ts @@ -26,6 +26,7 @@ export interface ILocationBase { DisabledForScav: boolean; DisabledScavExits: string; Enabled: boolean; + EnableCoop: boolean; GlobalLootChanceModifier: number; IconX: number; IconY: number; @@ -41,6 +42,7 @@ export interface ILocationBase { MinDistToFreePoint: number; MinMaxBots: MinMaxBot[]; MinPlayers: number; + MaxCoopGroup: number; Name: string; NewSpawn: boolean; OcculsionCullingEnabled: boolean; @@ -48,6 +50,8 @@ export interface ILocationBase { OpenZones: string; Preview: Preview; RequiredPlayerLevel: number; + PmcMaxPlayersInGroup: number; + ScavMaxPlayersInGroup: number; Rules: string; SafeLocation: boolean; Scene: Scene; @@ -55,7 +59,8 @@ export interface ILocationBase { UnixDateTime: number; _Id: string; doors: any[]; - escape_time_limit: number; + EscapeTimeLimit: number; + EscapeTimeLimitCoop: number; exit_access_time: number; exit_count: number; exit_time: number; @@ -63,6 +68,7 @@ export interface ILocationBase { filter_ex: string[]; limits: ILimit[]; matching_min_seconds: number; + GenerateLocalLootCache: boolean; maxItemCountInLocation: MaxItemCountInLocation[]; sav_summon_seconds: number; tmp_location_field_remove_me: number; @@ -106,6 +112,7 @@ export interface BossLocationSpawn { BossName: string; BossPlayer: boolean; BossZone: string; + RandomTimeSpawn: boolean; Time: number; TriggerId: string; TriggerName: string; diff --git a/TypeScript/13AddTrader/types/models/eft/common/IPmcData.d.ts b/TypeScript/13AddTrader/types/models/eft/common/IPmcData.d.ts index adc2aa5..56bf07f 100644 --- a/TypeScript/13AddTrader/types/models/eft/common/IPmcData.d.ts +++ b/TypeScript/13AddTrader/types/models/eft/common/IPmcData.d.ts @@ -6,7 +6,7 @@ import { MemberCategory } from "../../enums/MemberCategory"; export interface IPmcData { _id: string; aid: string; - savage: string; + savage?: string; Info: Info; Customization: Customization; Health: Health; @@ -28,13 +28,6 @@ export interface IPmcData { CarExtractCounts: CarExtractCounts; SurvivorClass: SurvivorClass; } -export declare enum SurvivorClass { - Unknown = 0, - Neutralizer = 1, - Marauder = 2, - Paramedic = 3, - Survivor = 4 -} export interface Info { EntryPoint: string; Nickname: string; @@ -56,6 +49,9 @@ export interface Info { Bans: IBan[]; BannedState: boolean; BannedUntil: number; + NeedWipeOptions: any[]; + lastCompletedWipe: LastCompleted; + lastCompletedEvent?: LastCompleted; } export interface Settings { Role: string; @@ -339,3 +335,13 @@ export interface RagfairInfo { } export interface CarExtractCounts { } +export declare enum SurvivorClass { + Unknown = 0, + Neutralizer = 1, + Marauder = 2, + Paramedic = 3, + Survivor = 4 +} +export interface LastCompleted { + $oid: string; +} diff --git a/TypeScript/13AddTrader/types/models/eft/common/tables/IProfileTemplate.d.ts b/TypeScript/13AddTrader/types/models/eft/common/tables/IProfileTemplate.d.ts new file mode 100644 index 0000000..c445e92 --- /dev/null +++ b/TypeScript/13AddTrader/types/models/eft/common/tables/IProfileTemplate.d.ts @@ -0,0 +1,23 @@ +import { Dialogue, WeaponBuild } from "../../profile/IAkiProfile"; +import { IPmcData } from "../IPmcData"; +export interface IProfileTemplates { + Standard: IProfileSides; + "Left Behind": IProfileSides; + "Prepare To Escape": IProfileSides; + "Edge Of Darkness": IProfileSides; +} +export interface IProfileSides { + usec: TemplateSide; + bear: TemplateSide; +} +export interface TemplateSide { + character: IPmcData; + suits: string[]; + dialogues: Record; + weaponbuilds: WeaponBuild[]; + trader: ProfileTraderTemplate; +} +export interface ProfileTraderTemplate { + initialStanding: number; + initialSalesSum: number; +} diff --git a/TypeScript/13AddTrader/types/models/eft/common/tables/IQuest.d.ts b/TypeScript/13AddTrader/types/models/eft/common/tables/IQuest.d.ts index e1fc888..942339b 100644 --- a/TypeScript/13AddTrader/types/models/eft/common/tables/IQuest.d.ts +++ b/TypeScript/13AddTrader/types/models/eft/common/tables/IQuest.d.ts @@ -23,6 +23,7 @@ export interface IQuest { status: string; KeyQuest: boolean; changeQuestMessageText: string; + side: string; } export interface Conditions { Started: AvailableForConditions[]; @@ -56,6 +57,7 @@ export interface AvailableForProps { plantTime?: number; zoneId?: string; type?: boolean; + countInRaid?: boolean; } export interface AvailableForCounter { id: string; diff --git a/TypeScript/13AddTrader/types/models/eft/common/tables/ITemplateItem.d.ts b/TypeScript/13AddTrader/types/models/eft/common/tables/ITemplateItem.d.ts index 934ea7d..23a1a14 100644 --- a/TypeScript/13AddTrader/types/models/eft/common/tables/ITemplateItem.d.ts +++ b/TypeScript/13AddTrader/types/models/eft/common/tables/ITemplateItem.d.ts @@ -50,6 +50,7 @@ export interface Props { UnlootableFromSide?: string[]; AnimationVariantsNumber?: number; DiscardingBlock?: boolean; + DropSoundType?: string; RagFairCommissionModifier?: number; IsAlwaysAvailableForInsurance?: boolean; DiscardLimit?: number; @@ -89,7 +90,7 @@ export interface Props { SightModesCount?: number; OpticCalibrationDistances?: number[]; ScopesCount?: number; - AimSensitivity: any; + AimSensitivity?: number | number[][]; Zooms?: number[][]; CalibrationDistances?: number[][]; Intensity?: number; @@ -200,6 +201,9 @@ export interface Props { MinRepairDegradation?: number; MaxRepairDegradation?: number; IronSightRange?: number; + IsFlareGun?: boolean; + IsGrenadeLauncher?: boolean; + IsOneoff?: boolean; MustBoltBeOpennedForExternalReload?: boolean; MustBoltBeOpennedForInternalReload?: boolean; BoltAction?: boolean; diff --git a/TypeScript/13AddTrader/types/models/eft/game/IReportNicknameRequestData.d.ts b/TypeScript/13AddTrader/types/models/eft/game/IReportNicknameRequestData.d.ts new file mode 100644 index 0000000..087c58b --- /dev/null +++ b/TypeScript/13AddTrader/types/models/eft/game/IReportNicknameRequestData.d.ts @@ -0,0 +1,3 @@ +export interface IReportNicknameRequestData { + uid: string; +} diff --git a/TypeScript/13AddTrader/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts b/TypeScript/13AddTrader/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts new file mode 100644 index 0000000..bf209c6 --- /dev/null +++ b/TypeScript/13AddTrader/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts @@ -0,0 +1 @@ +export declare type IGetInsuranceCostResponseData = Record>; diff --git a/TypeScript/13AddTrader/types/models/eft/match/IGetGroupStatusRequestData.d.ts b/TypeScript/13AddTrader/types/models/eft/match/IGetGroupStatusRequestData.d.ts new file mode 100644 index 0000000..cbdb77f --- /dev/null +++ b/TypeScript/13AddTrader/types/models/eft/match/IGetGroupStatusRequestData.d.ts @@ -0,0 +1,8 @@ +export interface IGetGroupStatusRequestData { + location: string; + savage: boolean; + dt: string; + keyId: string; + raidMode: string; + startInGroup: boolean; +} diff --git a/TypeScript/13AddTrader/types/models/eft/match/IJoinMatchRequestData.d.ts b/TypeScript/13AddTrader/types/models/eft/match/IJoinMatchRequestData.d.ts new file mode 100644 index 0000000..cd34f7b --- /dev/null +++ b/TypeScript/13AddTrader/types/models/eft/match/IJoinMatchRequestData.d.ts @@ -0,0 +1,12 @@ +export interface IJoinMatchRequestData { + location: string; + savage: boolean; + dt: string; + servers: Server[]; + keyId: string; +} +export interface Server { + ping: number; + ip: string; + port: string; +} diff --git a/TypeScript/13AddTrader/types/models/eft/match/IJoinMatchResult.d.ts b/TypeScript/13AddTrader/types/models/eft/match/IJoinMatchResult.d.ts new file mode 100644 index 0000000..df695f4 --- /dev/null +++ b/TypeScript/13AddTrader/types/models/eft/match/IJoinMatchResult.d.ts @@ -0,0 +1,11 @@ +export interface IJoinMatchResult { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; + version: string; + location: string; + gamemode: string; + shortid: string; +} diff --git a/TypeScript/13AddTrader/types/models/eft/match/IStartOffineRaidRequestData.d.ts b/TypeScript/13AddTrader/types/models/eft/match/IStartOffineRaidRequestData.d.ts index 84bccc8..7cc457c 100644 --- a/TypeScript/13AddTrader/types/models/eft/match/IStartOffineRaidRequestData.d.ts +++ b/TypeScript/13AddTrader/types/models/eft/match/IStartOffineRaidRequestData.d.ts @@ -1,6 +1,5 @@ export interface IStartOfflineRaidRequestData { locationName: string; - entryPoint: string; startTime: number; dateTime: string; gameSettings: GameSettings; diff --git a/TypeScript/13AddTrader/types/models/eft/profile/GetProfileStatusResponseData.d.ts b/TypeScript/13AddTrader/types/models/eft/profile/GetProfileStatusResponseData.d.ts new file mode 100644 index 0000000..eee9b4f --- /dev/null +++ b/TypeScript/13AddTrader/types/models/eft/profile/GetProfileStatusResponseData.d.ts @@ -0,0 +1,11 @@ +export interface GetProfileStatusResponseData { + maxPveCountExceeded: false; + profiles: ProfileData[]; +} +export interface ProfileData { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; +} diff --git a/TypeScript/13AddTrader/types/models/eft/ragfair/IGetOffersResult.d.ts b/TypeScript/13AddTrader/types/models/eft/ragfair/IGetOffersResult.d.ts index 1c11422..fbc631d 100644 --- a/TypeScript/13AddTrader/types/models/eft/ragfair/IGetOffersResult.d.ts +++ b/TypeScript/13AddTrader/types/models/eft/ragfair/IGetOffersResult.d.ts @@ -1,6 +1,6 @@ import { IRagfairOffer } from "./IRagfairOffer"; export interface IGetOffersResult { - categories: Record; + categories?: Record; offers: IRagfairOffer[]; offersCount: number; selectedCategory: string; diff --git a/TypeScript/13AddTrader/types/models/enums/QuestStatus.d.ts b/TypeScript/13AddTrader/types/models/enums/QuestStatus.d.ts deleted file mode 100644 index 6335c73..0000000 --- a/TypeScript/13AddTrader/types/models/enums/QuestStatus.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -export declare enum QuestStatus { - Locked = 0, - AvailableForStart = 1, - Started = 2, - AvailableForFinish = 3, - Success = 4, - Fail = 5, - FailRestartable = 6, - MarkedAsFailed = 7 -} diff --git a/TypeScript/13AddTrader/types/models/external/IAfterDBLoadMod.d.ts b/TypeScript/13AddTrader/types/models/external/IAfterDBLoadMod.d.ts deleted file mode 100644 index 7f08b9e..0000000 --- a/TypeScript/13AddTrader/types/models/external/IAfterDBLoadMod.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IAfterDBLoadMod { - loadAfterDbInit(container: DependencyContainer): void; -} diff --git a/TypeScript/13AddTrader/types/models/external/IPostAkiLoadMod.d.ts b/TypeScript/13AddTrader/types/models/external/IPostAkiLoadMod.d.ts new file mode 100644 index 0000000..f6950e8 --- /dev/null +++ b/TypeScript/13AddTrader/types/models/external/IPostAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostAkiLoadMod { + postAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/13AddTrader/types/models/external/IPostDBLoadMod.d.ts b/TypeScript/13AddTrader/types/models/external/IPostDBLoadMod.d.ts new file mode 100644 index 0000000..ca7c682 --- /dev/null +++ b/TypeScript/13AddTrader/types/models/external/IPostDBLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostDBLoadMod { + postDBLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/13AddTrader/types/models/external/IPreAkiLoadMod.d.ts b/TypeScript/13AddTrader/types/models/external/IPreAkiLoadMod.d.ts new file mode 100644 index 0000000..ae7579e --- /dev/null +++ b/TypeScript/13AddTrader/types/models/external/IPreAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPreAkiLoadMod { + preAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/13AddTrader/types/models/external/mod.d.ts b/TypeScript/13AddTrader/types/models/external/mod.d.ts deleted file mode 100644 index 47939e9..0000000 --- a/TypeScript/13AddTrader/types/models/external/mod.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IMod { - load(container: DependencyContainer): void; - delayedLoad(container: DependencyContainer): void; -} diff --git a/TypeScript/13AddTrader/types/models/spt/config/IBotConfig.d.ts b/TypeScript/13AddTrader/types/models/spt/config/IBotConfig.d.ts index 5fb9d93..f8cf39b 100644 --- a/TypeScript/13AddTrader/types/models/spt/config/IBotConfig.d.ts +++ b/TypeScript/13AddTrader/types/models/spt/config/IBotConfig.d.ts @@ -18,6 +18,7 @@ export interface PresetBatch { bossKojaniy: number; bossSanitar: number; bossTagilla: number; + bossKnight: number; bossTest: number; cursedAssault: number; followerBully: number; @@ -28,6 +29,8 @@ export interface PresetBatch { followerKojaniy: number; followerSanitar: number; followerTagilla: number; + followerBirdEye: number; + followerBigPipe: number; followerTest: number; marksman: number; pmcBot: number; diff --git a/TypeScript/13AddTrader/types/models/spt/config/IRagfairConfig.d.ts b/TypeScript/13AddTrader/types/models/spt/config/IRagfairConfig.d.ts index 2d151ca..8518252 100644 --- a/TypeScript/13AddTrader/types/models/spt/config/IRagfairConfig.d.ts +++ b/TypeScript/13AddTrader/types/models/spt/config/IRagfairConfig.d.ts @@ -30,6 +30,7 @@ export interface Dynamic { expiredOfferThreshold: number; offerItemCount: MinMax; price: MinMax; + presetPrice: MinMax; endTimeSeconds: MinMax; condition: Condition; stackablePercent: MinMax; diff --git a/TypeScript/13AddTrader/types/models/spt/server/IDatabaseTables.d.ts b/TypeScript/13AddTrader/types/models/spt/server/IDatabaseTables.d.ts index e0d3fdd..9978459 100644 --- a/TypeScript/13AddTrader/types/models/spt/server/IDatabaseTables.d.ts +++ b/TypeScript/13AddTrader/types/models/spt/server/IDatabaseTables.d.ts @@ -6,6 +6,7 @@ import { ICustomizationItem } from "../../eft/common/tables/ICustomizationItem"; import { IHandbookBase } from "../../eft/common/tables/IHandbookBase"; import { ILootBase } from "../../eft/common/tables/ILootBase"; import { IMatch } from "../../eft/common/tables/IMatch"; +import { IProfileTemplates } from "../../eft/common/tables/IProfileTemplate"; import { IQuest } from "../../eft/common/tables/IQuest"; import { IRepeatableQuestDatabase } from "../../eft/common/tables/IRepeatableQuests"; import { ITemplateItem } from "../../eft/common/tables/ITemplateItem"; @@ -39,10 +40,13 @@ export interface IDatabaseTables { items: Record; quests: IQuest[]; repeatableQuests: IRepeatableQuestDatabase; + /** DEPRECATED - Items file found in the client, massivly out of date compared to templates.items, try not to use this, remove ASAP*/ clientItems: Record; handbook: IHandbookBase; customization: Record; - profiles: any; + /** The profile templates listed in the launcher on profile creation, split by account type (e.g. Standard) then side (e.g. bear/usec) */ + profiles: IProfileTemplates; + /** Flea prices of items - gathered from online flea market dump */ prices: Record; }; traders?: Record; diff --git a/TypeScript/13AddTrader/types/servers/RagfairServer.d.ts b/TypeScript/13AddTrader/types/servers/RagfairServer.d.ts index 60c92b5..bc86cdb 100644 --- a/TypeScript/13AddTrader/types/servers/RagfairServer.d.ts +++ b/TypeScript/13AddTrader/types/servers/RagfairServer.d.ts @@ -17,7 +17,8 @@ export declare class RagfairServer { constructor(logger: ILogger, ragfairOfferGenerator: RagfairOfferGenerator, ragfairOfferService: RagfairOfferService, ragfairCategoriesService: RagfairCategoriesService, ragfairRequiredItemsService: RagfairRequiredItemsService, configServer: ConfigServer); load(): void; update(): void; - getCategories(): Record; + getAllCategories(): Record; + getBespokeCategories(offers: IRagfairOffer[]): Record; /** * Disable/Hide an offer from flea * @param offerId diff --git a/TypeScript/13AddTrader/types/services/RagfairCategoriesService.d.ts b/TypeScript/13AddTrader/types/services/RagfairCategoriesService.d.ts index 09956cc..83910e5 100644 --- a/TypeScript/13AddTrader/types/services/RagfairCategoriesService.d.ts +++ b/TypeScript/13AddTrader/types/services/RagfairCategoriesService.d.ts @@ -1,10 +1,40 @@ import { IRagfairOffer } from "../models/eft/ragfair/IRagfairOffer"; +import { ILogger } from "../models/spt/utils/ILogger"; export declare class RagfairCategoriesService { - updateCategories(offers: IRagfairOffer[]): void; + protected logger: ILogger; protected categories: Record; - getCategories(): Record; - getCategoryByItemId(itemId: string): number; - resetCategories(): void; - setCategoryValue(itemId: string, newValue: number): void; - incrementCategory(itemId: string): void; + constructor(logger: ILogger); + /** + * Get all flea categories and their count of offers + * @returns item categories and count + */ + getAllCategories(): Record; + /** + * With the supplied items, get custom categories + * @returns a custom list of categories + */ + getBespokeCategories(offers: IRagfairOffer[]): Record; + /** + * Take an array of ragfair offers and create a dictionary of items with thier corrisponding offer count + * @param offers ragfair offers + * @returns categories and count + */ + protected processOffersIntoCategories(offers: IRagfairOffer[]): Record; + /** + * Increment or decrement a category array + * @param offer offer to process + * @param categories categories to update + * @param increment should item be incremented or decremented + */ + protected addOrIncrementCategory(offer: IRagfairOffer, categories: Record, increment?: boolean): void; + /** + * Increase category count by 1 + * @param offer + */ + incrementCategory(offer: IRagfairOffer): void; + /** + * Reduce category count by 1 + * @param offer + */ + decrementCategory(offer: IRagfairOffer): void; } diff --git a/TypeScript/13AddTrader/types/services/RagfairOfferService.d.ts b/TypeScript/13AddTrader/types/services/RagfairOfferService.d.ts index 7afbf8c..7398a8f 100644 --- a/TypeScript/13AddTrader/types/services/RagfairOfferService.d.ts +++ b/TypeScript/13AddTrader/types/services/RagfairOfferService.d.ts @@ -11,12 +11,14 @@ import { DatabaseServer } from "../servers/DatabaseServer"; import { SaveServer } from "../servers/SaveServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; import { TimeUtil } from "../utils/TimeUtil"; +import { RagfairCategoriesService } from "./RagfairCategoriesService"; export declare class RagfairOfferService { protected logger: ILogger; protected timeUtil: TimeUtil; protected databaseServer: DatabaseServer; protected saveServer: SaveServer; protected ragfairServerHelper: RagfairServerHelper; + protected ragfairCategoriesService: RagfairCategoriesService; protected profileHelper: ProfileHelper; protected itemEventRouter: ItemEventRouter; protected httpResponse: HttpResponseUtil; @@ -26,12 +28,16 @@ export declare class RagfairOfferService { protected expiredOffers: Item[]; protected offers: IRagfairOffer[]; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, ragfairCategoriesService: RagfairCategoriesService, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + /** + * Get all offers + * @returns IRagfairOffer array + */ getOffers(): IRagfairOffer[]; getOfferByOfferId(offerId: string): IRagfairOffer; getOffersOfType(templateId: string): IRagfairOffer[]; addOffer(offer: IRagfairOffer): void; - addOfferToExpired(offer: Item): void; + addOfferToExpired(staleOffer: IRagfairOffer): void; setTraderUpdateStatus(traderId: string, shouldUpdate: boolean): void; shouldTraderBeUpdated(traderID: string): boolean; getExpiredOfferCount(): number; diff --git a/TypeScript/13AddTrader/types/services/RagfairPriceService.d.ts b/TypeScript/13AddTrader/types/services/RagfairPriceService.d.ts index 5256b99..e3168a6 100644 --- a/TypeScript/13AddTrader/types/services/RagfairPriceService.d.ts +++ b/TypeScript/13AddTrader/types/services/RagfairPriceService.d.ts @@ -28,5 +28,19 @@ export declare class RagfairPriceService { getFleaPriceForItem(tplId: string): number; getBarterPrice(barterScheme: IBarterScheme[]): number; getDynamicOfferPrice(items: Item[], desiredCurrency: string): number; + /** + * Multiply the price by a randomised curve where n = 2, shift = 2 + * @param existingPrice price to alter + * @param isPreset is the item we're multiplying a preset + * @returns multiplied price + */ + protected randomisePrice(existingPrice: number, isPreset: boolean): number; + /** + * Calculate the cost of a weapon preset by adding together the price of its mods + base price of default weapon preset + * @param item base weapon + * @param items weapon plus mods + * @param existingPrice price of existing base weapon + * @returns + */ getWeaponPresetPrice(item: Item, items: Item[], existingPrice: number): number; } diff --git a/TypeScript/13AddTrader/types/utils/Watermark.d.ts b/TypeScript/13AddTrader/types/utils/Watermark.d.ts index 111bdd0..c6dc120 100644 --- a/TypeScript/13AddTrader/types/utils/Watermark.d.ts +++ b/TypeScript/13AddTrader/types/utils/Watermark.d.ts @@ -28,7 +28,12 @@ export declare class Watermark { protected text: string[]; protected versionLabel: string; initialize(): void; - getVersionTag(): string; + /** + * Get a version string (x.x.x) or (x.x.x-BLEEDINGEDGE) OR (X.X.X (18xxx)) + * @param withEftVersion Include the eft version this spt version was made for + * @returns string + */ + getVersionTag(withEftVersion?: boolean): string; getVersionLabel(): string; /** Set window title */ setTitle(): void; diff --git a/TypeScript/14AfterDBLoadHook/package.json b/TypeScript/14AfterDBLoadHook/package.json index b5223bf..918a0c7 100644 --- a/TypeScript/14AfterDBLoadHook/package.json +++ b/TypeScript/14AfterDBLoadHook/package.json @@ -4,7 +4,7 @@ "main": "src/mod.js", "license": "MIT", "author": "Chomp", - "akiVersion": "3.0.0", + "akiVersion": "3.1.0", "scripts": { "setup:environment": "npm i", "build:unzipped": "copyfiles -e \"./node_modules/**/*.*\" -e \"./dist/**/*.*\" -e \"./package-lock.json\" -e \"./tsconfig.json\" -e \"./README.txt\" -e \"./mod.code-workspace\" \"./**/*.*\" ./dist", diff --git a/TypeScript/14AfterDBLoadHook/src/mod.js b/TypeScript/14AfterDBLoadHook/src/mod.js deleted file mode 100644 index e378aa8..0000000 --- a/TypeScript/14AfterDBLoadHook/src/mod.js +++ /dev/null @@ -1,37 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -const LogTextColor_1 = require("../../../../obj/models/spt/logging/LogTextColor"); -const LogBackgroundColor_1 = require("../../../../obj/models/spt/logging/LogBackgroundColor"); -class Mod { - load(container) { - // Database will be empty in here - const databaseServer = container.resolve("DatabaseServer"); - const logger = container.resolve("WinstonLogger"); - logger.logWithColor(`Database item table state: ${databaseServer.getTables().templates} (<<< should be null)`, LogTextColor_1.LogTextColor.red, LogBackgroundColor_1.LogBackgroundColor.yellow); - } - loadAfterDbInit(container) { - // Database will be loaded, this is the fresh state of the DB so NOTHING from the AKI - // logic has modified anything yet. This is the DB loaded straight from the JSON files - const databaseServer = container.resolve("DatabaseServer"); - const logger = container.resolve("WinstonLogger"); - logger.logWithColor(`Database item size: ${Object.entries(databaseServer.getTables().templates.items).length}`, LogTextColor_1.LogTextColor.red, LogBackgroundColor_1.LogBackgroundColor.yellow); - // lets do a quick modification and see how this reflect later on, on the delayedLoad() - // find the nvgs item by its Id - const nvgs = databaseServer.getTables().templates.items["5c0558060db834001b735271"]; - // Lets log the state before the modification: - logger.logWithColor(`NVGs default CanSellOnRagfair: ${nvgs._props.CanSellOnRagfair}`, LogTextColor_1.LogTextColor.red, LogBackgroundColor_1.LogBackgroundColor.yellow); - // update one of its properties to be true - nvgs._props.CanSellOnRagfair = true; - } - delayedLoad(container) { - // The modification we made above would have been processed by now by AKI, so any values we changed had - // already been passed through the initial lifecycles (OnLoad) of AKI. - const databaseServer = container.resolve("DatabaseServer"); - const logger = container.resolve("WinstonLogger"); - // find the nvgs item again by its Id - const nvgs = databaseServer.getTables().templates.items["5c0558060db834001b735271"]; - // Lets log the state, this value should be true: - logger.logWithColor(`NVGs modified CanSellOnRagfair: ${nvgs._props.CanSellOnRagfair}`, LogTextColor_1.LogTextColor.red, LogBackgroundColor_1.LogBackgroundColor.yellow); - } -} -module.exports = { mod: new Mod() }; diff --git a/TypeScript/14AfterDBLoadHook/src/mod.ts b/TypeScript/14AfterDBLoadHook/src/mod.ts index 03375db..b0fe320 100644 --- a/TypeScript/14AfterDBLoadHook/src/mod.ts +++ b/TypeScript/14AfterDBLoadHook/src/mod.ts @@ -1,31 +1,30 @@ import { DependencyContainer } from "tsyringe"; -import { IAfterDBLoadMod } from "@spt-aki/models/external/IAfterDBLoadMod"; -import { IMod } from "@spt-aki/models/external/mod"; +import { IPreAkiLoadMod } from "@spt-aki/models/external/IPreAkiLoadMod"; +import { IPostAkiLoadMod } from "@spt-aki/models/external/IPostAkiLoadMod"; +import { IPostDBLoadMod } from "@spt-aki/models/external/IPostDBLoadMod"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { DatabaseServer } from "@spt-aki/servers/DatabaseServer"; import { LogTextColor } from "@spt-aki/models/spt/logging/LogTextColor"; import { LogBackgroundColor } from "@spt-aki/models/spt/logging/LogBackgroundColor"; -class Mod implements IMod, IAfterDBLoadMod -{ - public load(container: DependencyContainer): void - { +class Mod implements IPreAkiLoadMod, IPostAkiLoadMod, IPostDBLoadMod +{ + public preAkiLoad(container: DependencyContainer): void { // Database will be empty in here const databaseServer = container.resolve("DatabaseServer"); const logger = container.resolve("WinstonLogger"); logger.logWithColor(`Database item table state: ${databaseServer.getTables().templates} (<<< should be undefined)`, LogTextColor.red, LogBackgroundColor.yellow); } - - public loadAfterDbInit(container: DependencyContainer): void - { + + public postDBLoad(container: DependencyContainer): void { // Database will be loaded, this is the fresh state of the DB so NOTHING from the AKI // logic has modified anything yet. This is the DB loaded straight from the JSON files const databaseServer = container.resolve("DatabaseServer"); const logger = container.resolve("WinstonLogger"); logger.logWithColor(`Database item size: ${Object.entries(databaseServer.getTables().templates.items).length}`, LogTextColor.red, LogBackgroundColor.yellow); - // lets do a quick modification and see how this reflect later on, on the delayedLoad() + // lets do a quick modification and see how this reflect later on, on the postAkiLoad() // find the nvgs item by its Id const nvgs = databaseServer.getTables().templates.items["5c0558060db834001b735271"]; @@ -35,8 +34,7 @@ class Mod implements IMod, IAfterDBLoadMod nvgs._props.CanSellOnRagfair = true; } - public delayedLoad(container: DependencyContainer): void - { + public postAkiLoad(container: DependencyContainer): void { // The modification we made above would have been processed by now by AKI, so any values we changed had // already been passed through the initial lifecycles (OnLoad) of AKI. const databaseServer = container.resolve("DatabaseServer"); diff --git a/TypeScript/14AfterDBLoadHook/types/callbacks/GameCallbacks.d.ts b/TypeScript/14AfterDBLoadHook/types/callbacks/GameCallbacks.d.ts index d5cad76..06da1b5 100644 --- a/TypeScript/14AfterDBLoadHook/types/callbacks/GameCallbacks.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/callbacks/GameCallbacks.d.ts @@ -2,6 +2,7 @@ import { GameController } from "../controllers/GameController"; import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse"; import { IGameEmptyCrcRequestData } from "../models/eft/game/IGameEmptyCrcRequestData"; +import { IReportNicknameRequestData } from "../models/eft/game/IReportNicknameRequestData"; import { IVersionValidateRequestData } from "../models/eft/game/IVersionValidateRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; @@ -20,5 +21,6 @@ declare class GameCallbacks { validateGameVersion(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; gameKeepalive(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; getVersion(url: string, info: IEmptyRequestData, sessionID: string): string; + reportNickname(url: string, info: IReportNicknameRequestData, sessionID: string): INullResponseData; } export { GameCallbacks }; diff --git a/TypeScript/14AfterDBLoadHook/types/callbacks/HealthCallbacks.d.ts b/TypeScript/14AfterDBLoadHook/types/callbacks/HealthCallbacks.d.ts index 8f7b89d..8672be7 100644 --- a/TypeScript/14AfterDBLoadHook/types/callbacks/HealthCallbacks.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/callbacks/HealthCallbacks.d.ts @@ -13,6 +13,13 @@ export declare class HealthCallbacks { protected profileHelper: ProfileHelper; protected healthController: HealthController; constructor(httpResponse: HttpResponseUtil, profileHelper: ProfileHelper, healthController: HealthController); + /** + * Custom aki server request found in modules/HealthSynchronizer.cs + * @param url + * @param info HealthListener.Instance.CurrentHealth class + * @param sessionID session id + * @returns empty response, no data sent back to client + */ syncHealth(url: string, info: ISyncHealthRequestData, sessionID: string): IGetBodyResponseData; offraidEat(pmcData: IPmcData, body: IOffraidEatRequestData, sessionID: string): IItemEventRouterResponse; offraidHeal(pmcData: IPmcData, body: IOffraidHealRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/14AfterDBLoadHook/types/callbacks/InsuranceCallbacks.d.ts b/TypeScript/14AfterDBLoadHook/types/callbacks/InsuranceCallbacks.d.ts index 520d0eb..6819960 100644 --- a/TypeScript/14AfterDBLoadHook/types/callbacks/InsuranceCallbacks.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/callbacks/InsuranceCallbacks.d.ts @@ -3,6 +3,7 @@ import { OnLoadOnUpdate } from "../di/OnLoadOnUpdate"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -17,7 +18,7 @@ export declare class InsuranceCallbacks extends OnLoadOnUpdate { protected insuranceConfig: IInsuranceConfig; constructor(insuranceController: InsuranceController, insuranceService: InsuranceService, httpResponse: HttpResponseUtil, configServer: ConfigServer); onLoad(): void; - getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; + getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; onUpdate(secondsSinceLastRun: number): boolean; getRoute(): string; diff --git a/TypeScript/14AfterDBLoadHook/types/callbacks/MatchCallbacks.d.ts b/TypeScript/14AfterDBLoadHook/types/callbacks/MatchCallbacks.d.ts index 083c1f5..158d8df 100644 --- a/TypeScript/14AfterDBLoadHook/types/callbacks/MatchCallbacks.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/callbacks/MatchCallbacks.d.ts @@ -1,9 +1,13 @@ import { MatchController } from "../controllers/MatchController"; +import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { DatabaseServer } from "../servers/DatabaseServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; @@ -16,18 +20,18 @@ export declare class MatchCallbacks { constructor(httpResponse: HttpResponseUtil, jsonUtil: JsonUtil, matchController: MatchController, databaseServer: DatabaseServer); updatePing(url: string, info: any, sessionID: string): INullResponseData; exitMatch(url: string, info: any, sessionID: string): INullResponseData; - exitToMenu(url: string, info: any, sessionID: string): INullResponseData; - startGroupSearch(url: string, info: any, sessionID: string): INullResponseData; - stopGroupSearch(url: string, info: any, sessionID: string): INullResponseData; + exitToMenu(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + startGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + stopGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; sendGroupInvite(url: string, info: any, sessionID: string): INullResponseData; acceptGroupInvite(url: string, info: any, sessionID: string): INullResponseData; cancelGroupInvite(url: string, info: any, sessionID: string): INullResponseData; putMetrics(url: string, info: any, sessionID: string): INullResponseData; getProfile(url: string, info: IGetProfileRequestData, sessionID: string): IGetBodyResponseData; - serverAvailable(url: string, info: any, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; - joinMatch(url: string, info: any, sessionID: string): IGetBodyResponseData; + serverAvailable(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; + joinMatch(url: string, info: IJoinMatchRequestData, sessionID: string): IGetBodyResponseData; getMetrics(url: string, info: any, sessionID: string): IGetBodyResponseData; - getGroupStatus(url: string, info: any, sessionID: string): IGetBodyResponseData; + getGroupStatus(url: string, info: IGetGroupStatusRequestData, sessionID: string): IGetBodyResponseData; createGroup(url: string, info: any, sessionID: string): IGetBodyResponseData; deleteGroup(url: string, info: any, sessionID: string): INullResponseData; startOfflineRaid(url: string, info: IStartOfflineRaidRequestData, sessionID: string): INullResponseData; diff --git a/TypeScript/14AfterDBLoadHook/types/callbacks/ModCallbacks.d.ts b/TypeScript/14AfterDBLoadHook/types/callbacks/ModCallbacks.d.ts index 866abf7..58342dc 100644 --- a/TypeScript/14AfterDBLoadHook/types/callbacks/ModCallbacks.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/callbacks/ModCallbacks.d.ts @@ -1,5 +1,5 @@ import { OnLoad } from "../di/OnLoad"; -import { DelayedModLoader } from "../loaders/DelayedModLoader"; +import { PostAkiModLoader } from "../loaders/PostAkiModLoader"; import { IHttpConfig } from "../models/spt/config/IHttpConfig"; import { IHttpServer } from "../models/spt/server/IHttpServer"; import { ILogger } from "../models/spt/utils/ILogger"; @@ -9,10 +9,10 @@ declare class ModCallbacks extends OnLoad { protected logger: ILogger; protected httpResponse: HttpResponseUtil; protected httpServer: IHttpServer; - protected modLoader: DelayedModLoader; + protected postAkiModLoader: PostAkiModLoader; protected configServer: ConfigServer; protected httpConfig: IHttpConfig; - constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, modLoader: DelayedModLoader, configServer: ConfigServer); + constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, postAkiModLoader: PostAkiModLoader, configServer: ConfigServer); onLoad(): void; getRoute(): string; sendBundle(sessionID: string, req: any, resp: any, body: any): void; diff --git a/TypeScript/14AfterDBLoadHook/types/callbacks/ProfileCallbacks.d.ts b/TypeScript/14AfterDBLoadHook/types/callbacks/ProfileCallbacks.d.ts index 116e7c5..6a86fc0 100644 --- a/TypeScript/14AfterDBLoadHook/types/callbacks/ProfileCallbacks.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/callbacks/ProfileCallbacks.d.ts @@ -3,6 +3,7 @@ import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IGetMiniProfileRequestData } from "../models/eft/launcher/IGetMiniProfileRequestData"; +import { GetProfileStatusResponseData } from "../models/eft/profile/GetProfileStatusResponseData"; import { IProfileChangeNicknameRequestData } from "../models/eft/profile/IProfileChangeNicknameRequestData"; import { IProfileChangeVoiceRequestData } from "../models/eft/profile/IProfileChangeVoiceRequestData"; import { IProfileCreateRequestData } from "../models/eft/profile/IProfileCreateRequestData"; @@ -23,7 +24,14 @@ export declare class ProfileCallbacks { changeNickname(url: string, info: IProfileChangeNicknameRequestData, sessionID: string): IGetBodyResponseData; validateNickname(url: string, info: IValidateNicknameRequestData, sessionID: string): IGetBodyResponseData; getReservedNickname(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; - getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; + /** + * Called when creating a character, when you choose a character face/voice + * @param url + * @param info response (empty) + * @param sessionID + * @returns + */ + getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; searchFriend(url: string, info: ISearchFriendRequestData, sessionID: string): IGetBodyResponseData; getMiniProfile(url: string, info: IGetMiniProfileRequestData, sessionID: string): string; getAllMiniProfiles(url: string, info: any, sessionID: string): string; diff --git a/TypeScript/14AfterDBLoadHook/types/callbacks/RagfairCallbacks.d.ts b/TypeScript/14AfterDBLoadHook/types/callbacks/RagfairCallbacks.d.ts index d5bab8b..da782e1 100644 --- a/TypeScript/14AfterDBLoadHook/types/callbacks/RagfairCallbacks.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/callbacks/RagfairCallbacks.d.ts @@ -9,6 +9,7 @@ import { IAddOfferRequestData } from "../models/eft/ragfair/IAddOfferRequestData import { IExtendOfferRequestData } from "../models/eft/ragfair/IExtendOfferRequestData"; import { IGetItemPriceResult } from "../models/eft/ragfair/IGetItemPriceResult"; import { IGetMarketPriceRequestData } from "../models/eft/ragfair/IGetMarketPriceRequestData"; +import { IGetOffersResult } from "../models/eft/ragfair/IGetOffersResult"; import { IRemoveOfferRequestData } from "../models/eft/ragfair/IRemoveOfferRequestData"; import { ISearchRequestData } from "../models/eft/ragfair/ISearchRequestData"; import { IRagfairConfig } from "../models/spt/config/IRagfairConfig"; @@ -28,7 +29,7 @@ export declare class RagfairCallbacks extends OnLoadOnUpdate { constructor(httpResponse: HttpResponseUtil, logger: ILogger, jsonUtil: JsonUtil, ragfairServer: RagfairServer, ragfairController: RagfairController, configServer: ConfigServer); onLoad(): void; getRoute(): string; - search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; + search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; getMarketPrice(url: string, info: IGetMarketPriceRequestData, sessionID: string): IGetBodyResponseData; getItemPrices(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; addOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/14AfterDBLoadHook/types/controllers/GameController.d.ts b/TypeScript/14AfterDBLoadHook/types/controllers/GameController.d.ts index 5f516de..f4c3d2c 100644 --- a/TypeScript/14AfterDBLoadHook/types/controllers/GameController.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/controllers/GameController.d.ts @@ -28,6 +28,11 @@ export declare class GameController { protected addMissingRepeatableQuestsProperty(pmcProfile: IPmcData): void; protected addMissingWeaponRepairSkill(pmcProfile: IPmcData): void; protected addMissingAkiVersionTagToProfile(fullProfile: IAkiProfile): void; + /** + * In 18876 bsg changed the pockets tplid to be one that has 3 additional special slots + * @param pmcProfile + */ + protected updateProfilePocketsToNewId(pmcProfile: IPmcData): void; protected addMissingArmorRepairSkill(pmcProfile: IPmcData): void; protected fixNullTraderSalesSums(pmcProfile: IPmcData): void; protected removeDanglingBackendCounters(pmcProfile: IPmcData): void; diff --git a/TypeScript/14AfterDBLoadHook/types/controllers/InsuranceController.d.ts b/TypeScript/14AfterDBLoadHook/types/controllers/InsuranceController.d.ts index db2c567..af45442 100644 --- a/TypeScript/14AfterDBLoadHook/types/controllers/InsuranceController.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/controllers/InsuranceController.d.ts @@ -3,6 +3,7 @@ import { ItemHelper } from "../helpers/ItemHelper"; import { ProfileHelper } from "../helpers/ProfileHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -33,6 +34,12 @@ export declare class InsuranceController { insuranceService: InsuranceService, configServer: ConfigServer); processReturn(): void; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; - cost(info: IGetInsuranceCostRequestData, sessionID: string): any; + /** + * Calculate insurance cost + * @param info request object + * @param sessionID session id + * @returns response object to send to client + */ + cost(info: IGetInsuranceCostRequestData, sessionID: string): IGetInsuranceCostResponseData; doAbsolutelyNothing(): void; } diff --git a/TypeScript/14AfterDBLoadHook/types/controllers/InventoryController.d.ts b/TypeScript/14AfterDBLoadHook/types/controllers/InventoryController.d.ts index b732aa9..f24ab62 100644 --- a/TypeScript/14AfterDBLoadHook/types/controllers/InventoryController.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/controllers/InventoryController.d.ts @@ -24,6 +24,8 @@ import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRout import { ILogger } from "../models/spt/utils/ILogger"; import { ItemEventRouter } from "../routers/ItemEventRouter"; import { DatabaseServer } from "../servers/DatabaseServer"; +import { FenceService } from "../services/FenceService"; +import { RagfairOfferService } from "../services/RagfairOfferService"; import { HashUtil } from "../utils/HashUtil"; import { JsonUtil } from "../utils/JsonUtil"; export declare class InventoryController { @@ -31,12 +33,14 @@ export declare class InventoryController { protected hashUtil: HashUtil; protected jsonUtil: JsonUtil; protected databaseServer: DatabaseServer; + protected fenceService: FenceService; protected presetHelper: PresetHelper; protected inventoryHelper: InventoryHelper; + protected ragfairOfferService: RagfairOfferService; protected profileHelper: ProfileHelper; protected paymentHelper: PaymentHelper; protected itemEventRouter: ItemEventRouter; - constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); + constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, fenceService: FenceService, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, ragfairOfferService: RagfairOfferService, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); /** * Move Item * change location of item with parentId and slotId @@ -93,9 +97,19 @@ export declare class InventoryController { tagItem(pmcData: IPmcData, body: IInventoryTagRequestData, sessionID: string): IItemEventRouterResponse; bindItem(pmcData: IPmcData, body: IInventoryBindRequestData, sessionID: string): IItemEventRouterResponse; /** - * Handles examining of the item * + * Handles examining an item + * @param pmcData player profile + * @param body request object + * @param sessionID session id + * @returns response */ examineItem(pmcData: IPmcData, body: IInventoryExamineRequestData, sessionID: string): IItemEventRouterResponse; + /** + * Get the tplid of an item from the examine request object + * @param body response request + * @returns tplid + */ + protected getItemTpl(body: IInventoryExamineRequestData): string; readEncyclopedia(pmcData: IPmcData, body: IInventoryReadEncyclopediaRequestData, sessionID: string): IItemEventRouterResponse; /** * Handles sorting of Inventory. diff --git a/TypeScript/14AfterDBLoadHook/types/controllers/MatchController.d.ts b/TypeScript/14AfterDBLoadHook/types/controllers/MatchController.d.ts index c322d96..7ef3fcc 100644 --- a/TypeScript/14AfterDBLoadHook/types/controllers/MatchController.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/controllers/MatchController.d.ts @@ -2,7 +2,10 @@ import { ProfileHelper } from "../helpers/ProfileHelper"; import { TraderHelper } from "../helpers/TraderHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { IInRaidConfig } from "../models/spt/config/IInRaidConfig"; import { IMatchConfig } from "../models/spt/config/IMatchConfig"; @@ -20,11 +23,11 @@ export declare class MatchController { constructor(saveServer: SaveServer, profileHelper: ProfileHelper, matchLocationService: MatchLocationService, traderHelper: TraderHelper, configServer: ConfigServer); getEnabled(): boolean; getProfile(info: IGetProfileRequestData): IPmcData[]; - protected getMatch(location: any): any; createGroup(sessionID: string, info: any): any; deleteGroup(info: any): void; - joinMatch(info: any, sessionID: string): any[]; - getGroupStatus(info: any): any; + joinMatch(info: IJoinMatchRequestData, sessionID: string): IJoinMatchResult[]; + protected getMatch(location: string): any; + getGroupStatus(info: IGetGroupStatusRequestData): any; startOfflineRaid(info: IStartOfflineRaidRequestData, sessionID: string): void; endOfflineRaid(info: IEndOfflineRaidRequestData, sessionID: string): void; } diff --git a/TypeScript/14AfterDBLoadHook/types/controllers/RagfairController.d.ts b/TypeScript/14AfterDBLoadHook/types/controllers/RagfairController.d.ts index c758593..c4ffc15 100644 --- a/TypeScript/14AfterDBLoadHook/types/controllers/RagfairController.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/controllers/RagfairController.d.ts @@ -60,6 +60,8 @@ export declare class RagfairController { protected ragfairConfig: IRagfairConfig; constructor(logger: ILogger, timeUtil: TimeUtil, httpResponse: HttpResponseUtil, itemEventRouter: ItemEventRouter, ragfairServer: RagfairServer, ragfairPriceService: RagfairPriceService, databaseServer: DatabaseServer, itemHelper: ItemHelper, saveServer: SaveServer, ragfairSellHelper: RagfairSellHelper, ragfairTaxHelper: RagfairTaxHelper, ragfairSortHelper: RagfairSortHelper, ragfairOfferHelper: RagfairOfferHelper, profileHelper: ProfileHelper, paymentService: PaymentService, handbookHelper: HandbookHelper, paymentHelper: PaymentHelper, inventoryHelper: InventoryHelper, ragfairHelper: RagfairHelper, ragfairOfferService: RagfairOfferService, ragfairRequiredItemsService: RagfairRequiredItemsService, ragfairOfferGenerator: RagfairOfferGenerator, configServer: ConfigServer); getOffers(sessionID: string, info: ISearchRequestData): IGetOffersResult; + protected isLinkedSearch(info: ISearchRequestData): boolean; + protected isRequiredSearch(info: ISearchRequestData): boolean; update(): void; getItemPrice(info: IGetMarketPriceRequestData): IGetItemPriceResult; addPlayerOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/14AfterDBLoadHook/types/generators/BotWeaponGenerator.d.ts b/TypeScript/14AfterDBLoadHook/types/generators/BotWeaponGenerator.d.ts index a43b18c..dd3ad69 100644 --- a/TypeScript/14AfterDBLoadHook/types/generators/BotWeaponGenerator.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/generators/BotWeaponGenerator.d.ts @@ -41,6 +41,13 @@ export declare class BotWeaponGenerator { * @returns */ protected generateExtraMagazines(weaponMods: Item[], weaponTemplate: ITemplateItem, magCounts: MinMax, ammoTpl: string, inventory: PmcInventory): void; + /** + * Get a randomised number of bullets for a specific magazine + * @param magCounts min and max count of magazines + * @param magTemplate magazine to generate bullet count for + * @returns bullet count number + */ + protected getRandomisedBulletCount(magCounts: MinMax, magTemplate: ITemplateItem): number; /** * Get a randomised count of magazines * @param magCounts min and max value returned value can be between diff --git a/TypeScript/14AfterDBLoadHook/types/generators/RagfairOfferGenerator.d.ts b/TypeScript/14AfterDBLoadHook/types/generators/RagfairOfferGenerator.d.ts index de53ea9..6645c8d 100644 --- a/TypeScript/14AfterDBLoadHook/types/generators/RagfairOfferGenerator.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/generators/RagfairOfferGenerator.d.ts @@ -18,6 +18,7 @@ import { JsonUtil } from "../utils/JsonUtil"; import { RandomUtil } from "../utils/RandomUtil"; import { TimeUtil } from "../utils/TimeUtil"; import { RagfairAssortGenerator } from "./RagfairAssortGenerator"; +import { RagfairCategoriesService } from "../services/RagfairCategoriesService"; export declare class RagfairOfferGenerator { protected logger: ILogger; protected jsonUtil: JsonUtil; @@ -31,11 +32,12 @@ export declare class RagfairOfferGenerator { protected ragfairAssortGenerator: RagfairAssortGenerator; protected ragfairOfferService: RagfairOfferService; protected ragfairPriceService: RagfairPriceService; + protected ragfairCategoriesService: RagfairCategoriesService; protected fenceService: FenceService; protected itemHelper: ItemHelper; protected configServer: ConfigServer; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); + constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, ragfairCategoriesService: RagfairCategoriesService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); createOffer(userID: string, time: number, items: Item[], barterScheme: IBarterScheme[], loyalLevel: number, price: number, sellInOnePiece?: boolean): IRagfairOffer; protected getTraderId(userID: string): string; protected getRating(userID: string): number; diff --git a/TypeScript/14AfterDBLoadHook/types/helpers/BotGeneratorHelper.d.ts b/TypeScript/14AfterDBLoadHook/types/helpers/BotGeneratorHelper.d.ts index e4b0c11..243e7a8 100644 --- a/TypeScript/14AfterDBLoadHook/types/helpers/BotGeneratorHelper.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/helpers/BotGeneratorHelper.d.ts @@ -29,6 +29,12 @@ export declare class BotGeneratorHelper { protected botConfig: IBotConfig; constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, probabilityHelper: ProbabilityHelper, databaseServer: DatabaseServer, durabilityLimitsHelper: DurabilityLimitsHelper, itemHelper: ItemHelper, inventoryHelper: InventoryHelper, containerHelper: ContainerHelper, configServer: ConfigServer); generateModsForItem(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem, modSpawnChances: ModsChances, isPmc?: boolean): Item[]; + /** + * Is this magazine cylinder related (revolvers and grenade launchers) + * @param magazineParentName the name of the magazines parent + * @returns true if it is cylinder related + */ + magazineIsCylinderRelated(magazineParentName: string): boolean; /** * Get a list of non black-listed cartridges from the PMC bot config * @param modSlot mod item slot @@ -69,6 +75,12 @@ export declare class BotGeneratorHelper { * @param {object} parentTemplate The CylinderMagazine's template */ protected fillCamora(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem): void; + /** + * Take a record of camoras and merge the compatable shells into one array + * @param camorasWithShells camoras we want to merge into one array + * @returns string array of shells fro luitple camora sources + */ + protected mergeCamoraPoolsTogether(camorasWithShells: Record): string[]; generateExtraPropertiesForItem(itemTemplate: ITemplateItem, botRole?: any): { upd?: Upd; }; diff --git a/TypeScript/14AfterDBLoadHook/types/loaders/AfterDbModLoader.d.ts b/TypeScript/14AfterDBLoadHook/types/loaders/AfterDbModLoader.d.ts deleted file mode 100644 index a9fc286..0000000 --- a/TypeScript/14AfterDBLoadHook/types/loaders/AfterDbModLoader.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { OnLoad } from "../di/OnLoad"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class AfterDbModLoader implements OnLoad { - protected initialModLoader: InitialModLoader; - constructor(initialModLoader: InitialModLoader); - onLoad(): void; - getRoute(): string; - getModPath(mod: string): string; - protected executeMods(container: DependencyContainer): void; -} diff --git a/TypeScript/14AfterDBLoadHook/types/loaders/DelayedModLoader.d.ts b/TypeScript/14AfterDBLoadHook/types/loaders/DelayedModLoader.d.ts deleted file mode 100644 index 2a05604..0000000 --- a/TypeScript/14AfterDBLoadHook/types/loaders/DelayedModLoader.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { HandbookController } from "../controllers/HandbookController"; -import { IModLoader } from "../models/spt/mod/IModLoader"; -import { ModCompilerService } from "../services/ModCompilerService"; -import { VFS } from "../utils/VFS"; -import { BundleLoader } from "./BundleLoader"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class DelayedModLoader implements IModLoader { - protected bundleLoader: BundleLoader; - protected handbookController: HandbookController; - protected vfs: VFS; - protected modCompilerService: ModCompilerService; - protected initialModLoader: InitialModLoader; - constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, initialModLoader: InitialModLoader); - getBundles(local: boolean): string; - getBundle(key: string, local: boolean): void; - getModPath(mod: string): string; - load(): void; - protected executeMods(container: DependencyContainer): void; - protected addBundles(): void; -} diff --git a/TypeScript/14AfterDBLoadHook/types/loaders/InitialModLoader.d.ts b/TypeScript/14AfterDBLoadHook/types/loaders/InitialModLoader.d.ts deleted file mode 100644 index 9a99dcc..0000000 --- a/TypeScript/14AfterDBLoadHook/types/loaders/InitialModLoader.d.ts +++ /dev/null @@ -1,64 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { ICoreConfig } from "../models/spt/config/ICoreConfig"; -import { ModLoader } from "../models/spt/mod/IMod"; -import { IModLoader } from "../models/spt/mod/IModLoader"; -import { IPackageJsonData } from "../models/spt/mod/IPackageJsonData"; -import { ILogger } from "../models/spt/utils/ILogger"; -import { ConfigServer } from "../servers/ConfigServer"; -import { ModCompilerService } from "../services/ModCompilerService"; -import { JsonUtil } from "../utils/JsonUtil"; -import { VFS } from "../utils/VFS"; -import { BundleLoader } from "./BundleLoader"; -export declare class InitialModLoader implements IModLoader { - protected logger: ILogger; - protected vfs: VFS; - protected jsonUtil: JsonUtil; - protected modCompilerService: ModCompilerService; - protected bundleLoader: BundleLoader; - protected configServer: ConfigServer; - protected static container: DependencyContainer; - protected readonly basepath = "user/mods/"; - protected imported: Record; - protected akiConfig: ICoreConfig; - constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, configServer: ConfigServer); - load(container: DependencyContainer): Promise; - getBundles(local: boolean): string; - getBundle(key: string, local: boolean): void; - /** - * Returns a list of mods with preserved load order - * @returns Array of mod names in load order - */ - getImportedModsNames(): string[]; - getModPath(mod: string): string; - protected importClass(name: string, filepath: string, container: DependencyContainer): void; - protected importMods(): Promise; - /** - * - * @param mods Get an array of broken/invalid mods by name - * @returns Mod names array - */ - protected getBrokenMods(mods: string[]): string[]; - /** - * Get packageJson data for mods - * @param mods mods to get packageJson for - * @returns dictionary - */ - protected getModsPackageData(mods: string[]): Record; - /** - * Does mod have "delayedLoad(" string in its entry class - * @param modFolderName folder name - * @param modToValidate package.json details - * @returns boolean - */ - protected isModSpt300Compatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; - protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; - protected executeMods(container: DependencyContainer): void; - sortModsLoadOrder(): string[]; - protected addMod(mod: string): Promise; - protected areModDependenciesFulfilled(pkg: IPackageJsonData, loadedMods: Record): boolean; - protected isModCompatible(mod: IPackageJsonData, loadedMods: Record): boolean; - protected validMod(mod: string): boolean; - protected getLoadOrderRecursive(mod: string, result: Record, visited: Record): void; - protected getLoadOrder(mods: Record): Record; - getContainer(): DependencyContainer; -} diff --git a/TypeScript/14AfterDBLoadHook/types/loaders/PostAkiModLoader.d.ts b/TypeScript/14AfterDBLoadHook/types/loaders/PostAkiModLoader.d.ts new file mode 100644 index 0000000..edc6e5d --- /dev/null +++ b/TypeScript/14AfterDBLoadHook/types/loaders/PostAkiModLoader.d.ts @@ -0,0 +1,21 @@ +import { DependencyContainer } from "tsyringe"; +import { HandbookController } from "../controllers/HandbookController"; +import { IModLoader } from "../models/spt/mod/IModLoader"; +import { ModCompilerService } from "../services/ModCompilerService"; +import { VFS } from "../utils/VFS"; +import { BundleLoader } from "./BundleLoader"; +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostAkiModLoader implements IModLoader { + protected bundleLoader: BundleLoader; + protected handbookController: HandbookController; + protected vfs: VFS; + protected modCompilerService: ModCompilerService; + protected preAkiModLoader: PreAkiModLoader; + constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, preAkiModLoader: PreAkiModLoader); + getBundles(local: boolean): string; + getBundle(key: string, local: boolean): void; + getModPath(mod: string): string; + load(): void; + protected executeMods(container: DependencyContainer): void; + protected addBundles(): void; +} diff --git a/TypeScript/14AfterDBLoadHook/types/loaders/PostDBModLoader.d.ts b/TypeScript/14AfterDBLoadHook/types/loaders/PostDBModLoader.d.ts new file mode 100644 index 0000000..5101b7b --- /dev/null +++ b/TypeScript/14AfterDBLoadHook/types/loaders/PostDBModLoader.d.ts @@ -0,0 +1,11 @@ +import { DependencyContainer } from "tsyringe"; +import { OnLoad } from "../di/OnLoad"; +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostDBModLoader implements OnLoad { + protected preAkiModLoader: PreAkiModLoader; + constructor(preAkiModLoader: PreAkiModLoader); + onLoad(): void; + getRoute(): string; + getModPath(mod: string): string; + protected executeMods(container: DependencyContainer): void; +} diff --git a/TypeScript/14AfterDBLoadHook/types/loaders/PreAkiModLoader.d.ts b/TypeScript/14AfterDBLoadHook/types/loaders/PreAkiModLoader.d.ts new file mode 100644 index 0000000..6ded3c6 --- /dev/null +++ b/TypeScript/14AfterDBLoadHook/types/loaders/PreAkiModLoader.d.ts @@ -0,0 +1,64 @@ +import { DependencyContainer } from "tsyringe"; +import { ICoreConfig } from "../models/spt/config/ICoreConfig"; +import { ModLoader } from "../models/spt/mod/IMod"; +import { IModLoader } from "../models/spt/mod/IModLoader"; +import { IPackageJsonData } from "../models/spt/mod/IPackageJsonData"; +import { ILogger } from "../models/spt/utils/ILogger"; +import { ConfigServer } from "../servers/ConfigServer"; +import { ModCompilerService } from "../services/ModCompilerService"; +import { JsonUtil } from "../utils/JsonUtil"; +import { VFS } from "../utils/VFS"; +import { BundleLoader } from "./BundleLoader"; +export declare class PreAkiModLoader implements IModLoader { + protected logger: ILogger; + protected vfs: VFS; + protected jsonUtil: JsonUtil; + protected modCompilerService: ModCompilerService; + protected bundleLoader: BundleLoader; + protected configServer: ConfigServer; + protected static container: DependencyContainer; + protected readonly basepath = "user/mods/"; + protected imported: Record; + protected akiConfig: ICoreConfig; + constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, configServer: ConfigServer); + load(container: DependencyContainer): Promise; + getBundles(local: boolean): string; + getBundle(key: string, local: boolean): void; + /** + * Returns a list of mods with preserved load order + * @returns Array of mod names in load order + */ + getImportedModsNames(): string[]; + getModPath(mod: string): string; + protected importClass(name: string, filepath: string, container: DependencyContainer): void; + protected importMods(): Promise; + /** + * + * @param mods Get an array of broken/invalid mods by name + * @returns Mod names array + */ + protected getBrokenMods(mods: string[]): string[]; + /** + * Get packageJson data for mods + * @param mods mods to get packageJson for + * @returns dictionary + */ + protected getModsPackageData(mods: string[]): Record; + /** + * Does mod have "delayedLoad(" string in its entry class + * @param modFolderName folder name + * @param modToValidate package.json details + * @returns boolean + */ + protected isModSpt3XXCompatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; + protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; + protected executeMods(container: DependencyContainer): void; + sortModsLoadOrder(): string[]; + protected addMod(mod: string): Promise; + protected areModDependenciesFulfilled(pkg: IPackageJsonData, loadedMods: Record): boolean; + protected isModCompatible(mod: IPackageJsonData, loadedMods: Record): boolean; + protected validMod(mod: string): boolean; + protected getLoadOrderRecursive(mod: string, result: Record, visited: Record): void; + protected getLoadOrder(mods: Record): Record; + getContainer(): DependencyContainer; +} diff --git a/TypeScript/14AfterDBLoadHook/types/models/eft/common/IGlobals.d.ts b/TypeScript/14AfterDBLoadHook/types/models/eft/common/IGlobals.d.ts index 456895c..9d28dbc 100644 --- a/TypeScript/14AfterDBLoadHook/types/models/eft/common/IGlobals.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/models/eft/common/IGlobals.d.ts @@ -1128,8 +1128,11 @@ export interface Inertia { SprintAccelerationLimits: xyz; SideTime: xyz; DiagonalTime: xyz; + MaxTimeWithoutInput: xyz; MinDirectionBlendTime: number; - MoveTime: number; + MoveTimeRange: xyz; + ProneDirectionAccelerationRange: xyz; + ProneSpeedAccelerationRange: xyz; MinMovementAccelerationRangeRight: xyz; MaxMovementAccelerationRangeRight: xyz; } diff --git a/TypeScript/14AfterDBLoadHook/types/models/eft/common/ILocationBase.d.ts b/TypeScript/14AfterDBLoadHook/types/models/eft/common/ILocationBase.d.ts index ad48d32..b1dd448 100644 --- a/TypeScript/14AfterDBLoadHook/types/models/eft/common/ILocationBase.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/models/eft/common/ILocationBase.d.ts @@ -26,6 +26,7 @@ export interface ILocationBase { DisabledForScav: boolean; DisabledScavExits: string; Enabled: boolean; + EnableCoop: boolean; GlobalLootChanceModifier: number; IconX: number; IconY: number; @@ -41,6 +42,7 @@ export interface ILocationBase { MinDistToFreePoint: number; MinMaxBots: MinMaxBot[]; MinPlayers: number; + MaxCoopGroup: number; Name: string; NewSpawn: boolean; OcculsionCullingEnabled: boolean; @@ -48,6 +50,8 @@ export interface ILocationBase { OpenZones: string; Preview: Preview; RequiredPlayerLevel: number; + PmcMaxPlayersInGroup: number; + ScavMaxPlayersInGroup: number; Rules: string; SafeLocation: boolean; Scene: Scene; @@ -55,7 +59,8 @@ export interface ILocationBase { UnixDateTime: number; _Id: string; doors: any[]; - escape_time_limit: number; + EscapeTimeLimit: number; + EscapeTimeLimitCoop: number; exit_access_time: number; exit_count: number; exit_time: number; @@ -63,6 +68,7 @@ export interface ILocationBase { filter_ex: string[]; limits: ILimit[]; matching_min_seconds: number; + GenerateLocalLootCache: boolean; maxItemCountInLocation: MaxItemCountInLocation[]; sav_summon_seconds: number; tmp_location_field_remove_me: number; @@ -106,6 +112,7 @@ export interface BossLocationSpawn { BossName: string; BossPlayer: boolean; BossZone: string; + RandomTimeSpawn: boolean; Time: number; TriggerId: string; TriggerName: string; diff --git a/TypeScript/14AfterDBLoadHook/types/models/eft/common/IPmcData.d.ts b/TypeScript/14AfterDBLoadHook/types/models/eft/common/IPmcData.d.ts index adc2aa5..56bf07f 100644 --- a/TypeScript/14AfterDBLoadHook/types/models/eft/common/IPmcData.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/models/eft/common/IPmcData.d.ts @@ -6,7 +6,7 @@ import { MemberCategory } from "../../enums/MemberCategory"; export interface IPmcData { _id: string; aid: string; - savage: string; + savage?: string; Info: Info; Customization: Customization; Health: Health; @@ -28,13 +28,6 @@ export interface IPmcData { CarExtractCounts: CarExtractCounts; SurvivorClass: SurvivorClass; } -export declare enum SurvivorClass { - Unknown = 0, - Neutralizer = 1, - Marauder = 2, - Paramedic = 3, - Survivor = 4 -} export interface Info { EntryPoint: string; Nickname: string; @@ -56,6 +49,9 @@ export interface Info { Bans: IBan[]; BannedState: boolean; BannedUntil: number; + NeedWipeOptions: any[]; + lastCompletedWipe: LastCompleted; + lastCompletedEvent?: LastCompleted; } export interface Settings { Role: string; @@ -339,3 +335,13 @@ export interface RagfairInfo { } export interface CarExtractCounts { } +export declare enum SurvivorClass { + Unknown = 0, + Neutralizer = 1, + Marauder = 2, + Paramedic = 3, + Survivor = 4 +} +export interface LastCompleted { + $oid: string; +} diff --git a/TypeScript/14AfterDBLoadHook/types/models/eft/common/tables/IProfileTemplate.d.ts b/TypeScript/14AfterDBLoadHook/types/models/eft/common/tables/IProfileTemplate.d.ts new file mode 100644 index 0000000..c445e92 --- /dev/null +++ b/TypeScript/14AfterDBLoadHook/types/models/eft/common/tables/IProfileTemplate.d.ts @@ -0,0 +1,23 @@ +import { Dialogue, WeaponBuild } from "../../profile/IAkiProfile"; +import { IPmcData } from "../IPmcData"; +export interface IProfileTemplates { + Standard: IProfileSides; + "Left Behind": IProfileSides; + "Prepare To Escape": IProfileSides; + "Edge Of Darkness": IProfileSides; +} +export interface IProfileSides { + usec: TemplateSide; + bear: TemplateSide; +} +export interface TemplateSide { + character: IPmcData; + suits: string[]; + dialogues: Record; + weaponbuilds: WeaponBuild[]; + trader: ProfileTraderTemplate; +} +export interface ProfileTraderTemplate { + initialStanding: number; + initialSalesSum: number; +} diff --git a/TypeScript/14AfterDBLoadHook/types/models/eft/common/tables/IQuest.d.ts b/TypeScript/14AfterDBLoadHook/types/models/eft/common/tables/IQuest.d.ts index e1fc888..942339b 100644 --- a/TypeScript/14AfterDBLoadHook/types/models/eft/common/tables/IQuest.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/models/eft/common/tables/IQuest.d.ts @@ -23,6 +23,7 @@ export interface IQuest { status: string; KeyQuest: boolean; changeQuestMessageText: string; + side: string; } export interface Conditions { Started: AvailableForConditions[]; @@ -56,6 +57,7 @@ export interface AvailableForProps { plantTime?: number; zoneId?: string; type?: boolean; + countInRaid?: boolean; } export interface AvailableForCounter { id: string; diff --git a/TypeScript/14AfterDBLoadHook/types/models/eft/common/tables/ITemplateItem.d.ts b/TypeScript/14AfterDBLoadHook/types/models/eft/common/tables/ITemplateItem.d.ts index 934ea7d..23a1a14 100644 --- a/TypeScript/14AfterDBLoadHook/types/models/eft/common/tables/ITemplateItem.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/models/eft/common/tables/ITemplateItem.d.ts @@ -50,6 +50,7 @@ export interface Props { UnlootableFromSide?: string[]; AnimationVariantsNumber?: number; DiscardingBlock?: boolean; + DropSoundType?: string; RagFairCommissionModifier?: number; IsAlwaysAvailableForInsurance?: boolean; DiscardLimit?: number; @@ -89,7 +90,7 @@ export interface Props { SightModesCount?: number; OpticCalibrationDistances?: number[]; ScopesCount?: number; - AimSensitivity: any; + AimSensitivity?: number | number[][]; Zooms?: number[][]; CalibrationDistances?: number[][]; Intensity?: number; @@ -200,6 +201,9 @@ export interface Props { MinRepairDegradation?: number; MaxRepairDegradation?: number; IronSightRange?: number; + IsFlareGun?: boolean; + IsGrenadeLauncher?: boolean; + IsOneoff?: boolean; MustBoltBeOpennedForExternalReload?: boolean; MustBoltBeOpennedForInternalReload?: boolean; BoltAction?: boolean; diff --git a/TypeScript/14AfterDBLoadHook/types/models/eft/game/IReportNicknameRequestData.d.ts b/TypeScript/14AfterDBLoadHook/types/models/eft/game/IReportNicknameRequestData.d.ts new file mode 100644 index 0000000..087c58b --- /dev/null +++ b/TypeScript/14AfterDBLoadHook/types/models/eft/game/IReportNicknameRequestData.d.ts @@ -0,0 +1,3 @@ +export interface IReportNicknameRequestData { + uid: string; +} diff --git a/TypeScript/14AfterDBLoadHook/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts b/TypeScript/14AfterDBLoadHook/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts new file mode 100644 index 0000000..bf209c6 --- /dev/null +++ b/TypeScript/14AfterDBLoadHook/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts @@ -0,0 +1 @@ +export declare type IGetInsuranceCostResponseData = Record>; diff --git a/TypeScript/14AfterDBLoadHook/types/models/eft/match/IGetGroupStatusRequestData.d.ts b/TypeScript/14AfterDBLoadHook/types/models/eft/match/IGetGroupStatusRequestData.d.ts new file mode 100644 index 0000000..cbdb77f --- /dev/null +++ b/TypeScript/14AfterDBLoadHook/types/models/eft/match/IGetGroupStatusRequestData.d.ts @@ -0,0 +1,8 @@ +export interface IGetGroupStatusRequestData { + location: string; + savage: boolean; + dt: string; + keyId: string; + raidMode: string; + startInGroup: boolean; +} diff --git a/TypeScript/14AfterDBLoadHook/types/models/eft/match/IJoinMatchRequestData.d.ts b/TypeScript/14AfterDBLoadHook/types/models/eft/match/IJoinMatchRequestData.d.ts new file mode 100644 index 0000000..cd34f7b --- /dev/null +++ b/TypeScript/14AfterDBLoadHook/types/models/eft/match/IJoinMatchRequestData.d.ts @@ -0,0 +1,12 @@ +export interface IJoinMatchRequestData { + location: string; + savage: boolean; + dt: string; + servers: Server[]; + keyId: string; +} +export interface Server { + ping: number; + ip: string; + port: string; +} diff --git a/TypeScript/14AfterDBLoadHook/types/models/eft/match/IJoinMatchResult.d.ts b/TypeScript/14AfterDBLoadHook/types/models/eft/match/IJoinMatchResult.d.ts new file mode 100644 index 0000000..df695f4 --- /dev/null +++ b/TypeScript/14AfterDBLoadHook/types/models/eft/match/IJoinMatchResult.d.ts @@ -0,0 +1,11 @@ +export interface IJoinMatchResult { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; + version: string; + location: string; + gamemode: string; + shortid: string; +} diff --git a/TypeScript/14AfterDBLoadHook/types/models/eft/match/IStartOffineRaidRequestData.d.ts b/TypeScript/14AfterDBLoadHook/types/models/eft/match/IStartOffineRaidRequestData.d.ts index 84bccc8..7cc457c 100644 --- a/TypeScript/14AfterDBLoadHook/types/models/eft/match/IStartOffineRaidRequestData.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/models/eft/match/IStartOffineRaidRequestData.d.ts @@ -1,6 +1,5 @@ export interface IStartOfflineRaidRequestData { locationName: string; - entryPoint: string; startTime: number; dateTime: string; gameSettings: GameSettings; diff --git a/TypeScript/14AfterDBLoadHook/types/models/eft/profile/GetProfileStatusResponseData.d.ts b/TypeScript/14AfterDBLoadHook/types/models/eft/profile/GetProfileStatusResponseData.d.ts new file mode 100644 index 0000000..eee9b4f --- /dev/null +++ b/TypeScript/14AfterDBLoadHook/types/models/eft/profile/GetProfileStatusResponseData.d.ts @@ -0,0 +1,11 @@ +export interface GetProfileStatusResponseData { + maxPveCountExceeded: false; + profiles: ProfileData[]; +} +export interface ProfileData { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; +} diff --git a/TypeScript/14AfterDBLoadHook/types/models/eft/ragfair/IGetOffersResult.d.ts b/TypeScript/14AfterDBLoadHook/types/models/eft/ragfair/IGetOffersResult.d.ts index 1c11422..fbc631d 100644 --- a/TypeScript/14AfterDBLoadHook/types/models/eft/ragfair/IGetOffersResult.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/models/eft/ragfair/IGetOffersResult.d.ts @@ -1,6 +1,6 @@ import { IRagfairOffer } from "./IRagfairOffer"; export interface IGetOffersResult { - categories: Record; + categories?: Record; offers: IRagfairOffer[]; offersCount: number; selectedCategory: string; diff --git a/TypeScript/14AfterDBLoadHook/types/models/enums/QuestStatus.d.ts b/TypeScript/14AfterDBLoadHook/types/models/enums/QuestStatus.d.ts deleted file mode 100644 index 6335c73..0000000 --- a/TypeScript/14AfterDBLoadHook/types/models/enums/QuestStatus.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -export declare enum QuestStatus { - Locked = 0, - AvailableForStart = 1, - Started = 2, - AvailableForFinish = 3, - Success = 4, - Fail = 5, - FailRestartable = 6, - MarkedAsFailed = 7 -} diff --git a/TypeScript/14AfterDBLoadHook/types/models/external/IAfterDBLoadMod.d.ts b/TypeScript/14AfterDBLoadHook/types/models/external/IAfterDBLoadMod.d.ts deleted file mode 100644 index 7f08b9e..0000000 --- a/TypeScript/14AfterDBLoadHook/types/models/external/IAfterDBLoadMod.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IAfterDBLoadMod { - loadAfterDbInit(container: DependencyContainer): void; -} diff --git a/TypeScript/14AfterDBLoadHook/types/models/external/IPostAkiLoadMod.d.ts b/TypeScript/14AfterDBLoadHook/types/models/external/IPostAkiLoadMod.d.ts new file mode 100644 index 0000000..f6950e8 --- /dev/null +++ b/TypeScript/14AfterDBLoadHook/types/models/external/IPostAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostAkiLoadMod { + postAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/14AfterDBLoadHook/types/models/external/IPostDBLoadMod.d.ts b/TypeScript/14AfterDBLoadHook/types/models/external/IPostDBLoadMod.d.ts new file mode 100644 index 0000000..ca7c682 --- /dev/null +++ b/TypeScript/14AfterDBLoadHook/types/models/external/IPostDBLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostDBLoadMod { + postDBLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/14AfterDBLoadHook/types/models/external/IPreAkiLoadMod.d.ts b/TypeScript/14AfterDBLoadHook/types/models/external/IPreAkiLoadMod.d.ts new file mode 100644 index 0000000..ae7579e --- /dev/null +++ b/TypeScript/14AfterDBLoadHook/types/models/external/IPreAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPreAkiLoadMod { + preAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/14AfterDBLoadHook/types/models/external/mod.d.ts b/TypeScript/14AfterDBLoadHook/types/models/external/mod.d.ts deleted file mode 100644 index 47939e9..0000000 --- a/TypeScript/14AfterDBLoadHook/types/models/external/mod.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IMod { - load(container: DependencyContainer): void; - delayedLoad(container: DependencyContainer): void; -} diff --git a/TypeScript/14AfterDBLoadHook/types/models/spt/config/IBotConfig.d.ts b/TypeScript/14AfterDBLoadHook/types/models/spt/config/IBotConfig.d.ts index 5fb9d93..f8cf39b 100644 --- a/TypeScript/14AfterDBLoadHook/types/models/spt/config/IBotConfig.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/models/spt/config/IBotConfig.d.ts @@ -18,6 +18,7 @@ export interface PresetBatch { bossKojaniy: number; bossSanitar: number; bossTagilla: number; + bossKnight: number; bossTest: number; cursedAssault: number; followerBully: number; @@ -28,6 +29,8 @@ export interface PresetBatch { followerKojaniy: number; followerSanitar: number; followerTagilla: number; + followerBirdEye: number; + followerBigPipe: number; followerTest: number; marksman: number; pmcBot: number; diff --git a/TypeScript/14AfterDBLoadHook/types/models/spt/config/IRagfairConfig.d.ts b/TypeScript/14AfterDBLoadHook/types/models/spt/config/IRagfairConfig.d.ts index 2d151ca..8518252 100644 --- a/TypeScript/14AfterDBLoadHook/types/models/spt/config/IRagfairConfig.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/models/spt/config/IRagfairConfig.d.ts @@ -30,6 +30,7 @@ export interface Dynamic { expiredOfferThreshold: number; offerItemCount: MinMax; price: MinMax; + presetPrice: MinMax; endTimeSeconds: MinMax; condition: Condition; stackablePercent: MinMax; diff --git a/TypeScript/14AfterDBLoadHook/types/models/spt/server/IDatabaseTables.d.ts b/TypeScript/14AfterDBLoadHook/types/models/spt/server/IDatabaseTables.d.ts index e0d3fdd..9978459 100644 --- a/TypeScript/14AfterDBLoadHook/types/models/spt/server/IDatabaseTables.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/models/spt/server/IDatabaseTables.d.ts @@ -6,6 +6,7 @@ import { ICustomizationItem } from "../../eft/common/tables/ICustomizationItem"; import { IHandbookBase } from "../../eft/common/tables/IHandbookBase"; import { ILootBase } from "../../eft/common/tables/ILootBase"; import { IMatch } from "../../eft/common/tables/IMatch"; +import { IProfileTemplates } from "../../eft/common/tables/IProfileTemplate"; import { IQuest } from "../../eft/common/tables/IQuest"; import { IRepeatableQuestDatabase } from "../../eft/common/tables/IRepeatableQuests"; import { ITemplateItem } from "../../eft/common/tables/ITemplateItem"; @@ -39,10 +40,13 @@ export interface IDatabaseTables { items: Record; quests: IQuest[]; repeatableQuests: IRepeatableQuestDatabase; + /** DEPRECATED - Items file found in the client, massivly out of date compared to templates.items, try not to use this, remove ASAP*/ clientItems: Record; handbook: IHandbookBase; customization: Record; - profiles: any; + /** The profile templates listed in the launcher on profile creation, split by account type (e.g. Standard) then side (e.g. bear/usec) */ + profiles: IProfileTemplates; + /** Flea prices of items - gathered from online flea market dump */ prices: Record; }; traders?: Record; diff --git a/TypeScript/14AfterDBLoadHook/types/servers/RagfairServer.d.ts b/TypeScript/14AfterDBLoadHook/types/servers/RagfairServer.d.ts index 60c92b5..bc86cdb 100644 --- a/TypeScript/14AfterDBLoadHook/types/servers/RagfairServer.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/servers/RagfairServer.d.ts @@ -17,7 +17,8 @@ export declare class RagfairServer { constructor(logger: ILogger, ragfairOfferGenerator: RagfairOfferGenerator, ragfairOfferService: RagfairOfferService, ragfairCategoriesService: RagfairCategoriesService, ragfairRequiredItemsService: RagfairRequiredItemsService, configServer: ConfigServer); load(): void; update(): void; - getCategories(): Record; + getAllCategories(): Record; + getBespokeCategories(offers: IRagfairOffer[]): Record; /** * Disable/Hide an offer from flea * @param offerId diff --git a/TypeScript/14AfterDBLoadHook/types/services/RagfairCategoriesService.d.ts b/TypeScript/14AfterDBLoadHook/types/services/RagfairCategoriesService.d.ts index 09956cc..83910e5 100644 --- a/TypeScript/14AfterDBLoadHook/types/services/RagfairCategoriesService.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/services/RagfairCategoriesService.d.ts @@ -1,10 +1,40 @@ import { IRagfairOffer } from "../models/eft/ragfair/IRagfairOffer"; +import { ILogger } from "../models/spt/utils/ILogger"; export declare class RagfairCategoriesService { - updateCategories(offers: IRagfairOffer[]): void; + protected logger: ILogger; protected categories: Record; - getCategories(): Record; - getCategoryByItemId(itemId: string): number; - resetCategories(): void; - setCategoryValue(itemId: string, newValue: number): void; - incrementCategory(itemId: string): void; + constructor(logger: ILogger); + /** + * Get all flea categories and their count of offers + * @returns item categories and count + */ + getAllCategories(): Record; + /** + * With the supplied items, get custom categories + * @returns a custom list of categories + */ + getBespokeCategories(offers: IRagfairOffer[]): Record; + /** + * Take an array of ragfair offers and create a dictionary of items with thier corrisponding offer count + * @param offers ragfair offers + * @returns categories and count + */ + protected processOffersIntoCategories(offers: IRagfairOffer[]): Record; + /** + * Increment or decrement a category array + * @param offer offer to process + * @param categories categories to update + * @param increment should item be incremented or decremented + */ + protected addOrIncrementCategory(offer: IRagfairOffer, categories: Record, increment?: boolean): void; + /** + * Increase category count by 1 + * @param offer + */ + incrementCategory(offer: IRagfairOffer): void; + /** + * Reduce category count by 1 + * @param offer + */ + decrementCategory(offer: IRagfairOffer): void; } diff --git a/TypeScript/14AfterDBLoadHook/types/services/RagfairOfferService.d.ts b/TypeScript/14AfterDBLoadHook/types/services/RagfairOfferService.d.ts index 7afbf8c..7398a8f 100644 --- a/TypeScript/14AfterDBLoadHook/types/services/RagfairOfferService.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/services/RagfairOfferService.d.ts @@ -11,12 +11,14 @@ import { DatabaseServer } from "../servers/DatabaseServer"; import { SaveServer } from "../servers/SaveServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; import { TimeUtil } from "../utils/TimeUtil"; +import { RagfairCategoriesService } from "./RagfairCategoriesService"; export declare class RagfairOfferService { protected logger: ILogger; protected timeUtil: TimeUtil; protected databaseServer: DatabaseServer; protected saveServer: SaveServer; protected ragfairServerHelper: RagfairServerHelper; + protected ragfairCategoriesService: RagfairCategoriesService; protected profileHelper: ProfileHelper; protected itemEventRouter: ItemEventRouter; protected httpResponse: HttpResponseUtil; @@ -26,12 +28,16 @@ export declare class RagfairOfferService { protected expiredOffers: Item[]; protected offers: IRagfairOffer[]; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, ragfairCategoriesService: RagfairCategoriesService, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + /** + * Get all offers + * @returns IRagfairOffer array + */ getOffers(): IRagfairOffer[]; getOfferByOfferId(offerId: string): IRagfairOffer; getOffersOfType(templateId: string): IRagfairOffer[]; addOffer(offer: IRagfairOffer): void; - addOfferToExpired(offer: Item): void; + addOfferToExpired(staleOffer: IRagfairOffer): void; setTraderUpdateStatus(traderId: string, shouldUpdate: boolean): void; shouldTraderBeUpdated(traderID: string): boolean; getExpiredOfferCount(): number; diff --git a/TypeScript/14AfterDBLoadHook/types/services/RagfairPriceService.d.ts b/TypeScript/14AfterDBLoadHook/types/services/RagfairPriceService.d.ts index 5256b99..e3168a6 100644 --- a/TypeScript/14AfterDBLoadHook/types/services/RagfairPriceService.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/services/RagfairPriceService.d.ts @@ -28,5 +28,19 @@ export declare class RagfairPriceService { getFleaPriceForItem(tplId: string): number; getBarterPrice(barterScheme: IBarterScheme[]): number; getDynamicOfferPrice(items: Item[], desiredCurrency: string): number; + /** + * Multiply the price by a randomised curve where n = 2, shift = 2 + * @param existingPrice price to alter + * @param isPreset is the item we're multiplying a preset + * @returns multiplied price + */ + protected randomisePrice(existingPrice: number, isPreset: boolean): number; + /** + * Calculate the cost of a weapon preset by adding together the price of its mods + base price of default weapon preset + * @param item base weapon + * @param items weapon plus mods + * @param existingPrice price of existing base weapon + * @returns + */ getWeaponPresetPrice(item: Item, items: Item[], existingPrice: number): number; } diff --git a/TypeScript/14AfterDBLoadHook/types/utils/Watermark.d.ts b/TypeScript/14AfterDBLoadHook/types/utils/Watermark.d.ts index 111bdd0..c6dc120 100644 --- a/TypeScript/14AfterDBLoadHook/types/utils/Watermark.d.ts +++ b/TypeScript/14AfterDBLoadHook/types/utils/Watermark.d.ts @@ -28,7 +28,12 @@ export declare class Watermark { protected text: string[]; protected versionLabel: string; initialize(): void; - getVersionTag(): string; + /** + * Get a version string (x.x.x) or (x.x.x-BLEEDINGEDGE) OR (X.X.X (18xxx)) + * @param withEftVersion Include the eft version this spt version was made for + * @returns string + */ + getVersionTag(withEftVersion?: boolean): string; getVersionLabel(): string; /** Set window title */ setTitle(): void; diff --git a/TypeScript/1LogToConsole/package.json b/TypeScript/1LogToConsole/package.json index 6e5343e..8b98e40 100644 --- a/TypeScript/1LogToConsole/package.json +++ b/TypeScript/1LogToConsole/package.json @@ -4,7 +4,7 @@ "main": "src/mod.js", "license": "MIT", "author": "Chomp", - "akiVersion": "3.0.1", + "akiVersion": "3.1.0", "scripts": { "setup:environment": "npm i", "build:unzipped": "copyfiles -e \"./node_modules/**/*.*\" -e \"./dist/**/*.*\" -e \"./package-lock.json\" -e \"./tsconfig.json\" -e \"./README.txt\" -e \"./mod.code-workspace\" \"./**/*.*\" ./dist", diff --git a/TypeScript/1LogToConsole/src/mod.ts b/TypeScript/1LogToConsole/src/mod.ts index aa90492..fbca946 100644 --- a/TypeScript/1LogToConsole/src/mod.ts +++ b/TypeScript/1LogToConsole/src/mod.ts @@ -1,25 +1,18 @@ import { DependencyContainer } from "tsyringe"; -import { IMod } from "@spt-aki/models/external/mod"; +import { IPreAkiLoadMod } from "@spt-aki/models/external/IPreAkiLoadMod"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; -class Mod implements IMod +class Mod implements IPreAkiLoadMod { - // Code added here will load BEFORE the server has started loading - public load(container: DependencyContainer): void - { + // Code added here will load BEFORE the server has started loading + preAkiLoad(container: DependencyContainer): void { // get the logger from the server container const logger = container.resolve("WinstonLogger"); - + logger.info("I am logging info!"); logger.warning("I am logging a warning!"); logger.error("I am logging an error!"); - //logger.logWithColor("I am logging with color!", red, yellow); } - - // Code added here will be run AFTER the server has started - // not used in this example - public delayedLoad(container: DependencyContainer): void - { return } } module.exports = { mod: new Mod() } \ No newline at end of file diff --git a/TypeScript/1LogToConsole/types/callbacks/GameCallbacks.d.ts b/TypeScript/1LogToConsole/types/callbacks/GameCallbacks.d.ts index d5cad76..06da1b5 100644 --- a/TypeScript/1LogToConsole/types/callbacks/GameCallbacks.d.ts +++ b/TypeScript/1LogToConsole/types/callbacks/GameCallbacks.d.ts @@ -2,6 +2,7 @@ import { GameController } from "../controllers/GameController"; import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse"; import { IGameEmptyCrcRequestData } from "../models/eft/game/IGameEmptyCrcRequestData"; +import { IReportNicknameRequestData } from "../models/eft/game/IReportNicknameRequestData"; import { IVersionValidateRequestData } from "../models/eft/game/IVersionValidateRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; @@ -20,5 +21,6 @@ declare class GameCallbacks { validateGameVersion(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; gameKeepalive(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; getVersion(url: string, info: IEmptyRequestData, sessionID: string): string; + reportNickname(url: string, info: IReportNicknameRequestData, sessionID: string): INullResponseData; } export { GameCallbacks }; diff --git a/TypeScript/1LogToConsole/types/callbacks/HealthCallbacks.d.ts b/TypeScript/1LogToConsole/types/callbacks/HealthCallbacks.d.ts index 8f7b89d..8672be7 100644 --- a/TypeScript/1LogToConsole/types/callbacks/HealthCallbacks.d.ts +++ b/TypeScript/1LogToConsole/types/callbacks/HealthCallbacks.d.ts @@ -13,6 +13,13 @@ export declare class HealthCallbacks { protected profileHelper: ProfileHelper; protected healthController: HealthController; constructor(httpResponse: HttpResponseUtil, profileHelper: ProfileHelper, healthController: HealthController); + /** + * Custom aki server request found in modules/HealthSynchronizer.cs + * @param url + * @param info HealthListener.Instance.CurrentHealth class + * @param sessionID session id + * @returns empty response, no data sent back to client + */ syncHealth(url: string, info: ISyncHealthRequestData, sessionID: string): IGetBodyResponseData; offraidEat(pmcData: IPmcData, body: IOffraidEatRequestData, sessionID: string): IItemEventRouterResponse; offraidHeal(pmcData: IPmcData, body: IOffraidHealRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/1LogToConsole/types/callbacks/InsuranceCallbacks.d.ts b/TypeScript/1LogToConsole/types/callbacks/InsuranceCallbacks.d.ts index 520d0eb..6819960 100644 --- a/TypeScript/1LogToConsole/types/callbacks/InsuranceCallbacks.d.ts +++ b/TypeScript/1LogToConsole/types/callbacks/InsuranceCallbacks.d.ts @@ -3,6 +3,7 @@ import { OnLoadOnUpdate } from "../di/OnLoadOnUpdate"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -17,7 +18,7 @@ export declare class InsuranceCallbacks extends OnLoadOnUpdate { protected insuranceConfig: IInsuranceConfig; constructor(insuranceController: InsuranceController, insuranceService: InsuranceService, httpResponse: HttpResponseUtil, configServer: ConfigServer); onLoad(): void; - getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; + getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; onUpdate(secondsSinceLastRun: number): boolean; getRoute(): string; diff --git a/TypeScript/1LogToConsole/types/callbacks/MatchCallbacks.d.ts b/TypeScript/1LogToConsole/types/callbacks/MatchCallbacks.d.ts index 083c1f5..158d8df 100644 --- a/TypeScript/1LogToConsole/types/callbacks/MatchCallbacks.d.ts +++ b/TypeScript/1LogToConsole/types/callbacks/MatchCallbacks.d.ts @@ -1,9 +1,13 @@ import { MatchController } from "../controllers/MatchController"; +import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { DatabaseServer } from "../servers/DatabaseServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; @@ -16,18 +20,18 @@ export declare class MatchCallbacks { constructor(httpResponse: HttpResponseUtil, jsonUtil: JsonUtil, matchController: MatchController, databaseServer: DatabaseServer); updatePing(url: string, info: any, sessionID: string): INullResponseData; exitMatch(url: string, info: any, sessionID: string): INullResponseData; - exitToMenu(url: string, info: any, sessionID: string): INullResponseData; - startGroupSearch(url: string, info: any, sessionID: string): INullResponseData; - stopGroupSearch(url: string, info: any, sessionID: string): INullResponseData; + exitToMenu(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + startGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + stopGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; sendGroupInvite(url: string, info: any, sessionID: string): INullResponseData; acceptGroupInvite(url: string, info: any, sessionID: string): INullResponseData; cancelGroupInvite(url: string, info: any, sessionID: string): INullResponseData; putMetrics(url: string, info: any, sessionID: string): INullResponseData; getProfile(url: string, info: IGetProfileRequestData, sessionID: string): IGetBodyResponseData; - serverAvailable(url: string, info: any, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; - joinMatch(url: string, info: any, sessionID: string): IGetBodyResponseData; + serverAvailable(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; + joinMatch(url: string, info: IJoinMatchRequestData, sessionID: string): IGetBodyResponseData; getMetrics(url: string, info: any, sessionID: string): IGetBodyResponseData; - getGroupStatus(url: string, info: any, sessionID: string): IGetBodyResponseData; + getGroupStatus(url: string, info: IGetGroupStatusRequestData, sessionID: string): IGetBodyResponseData; createGroup(url: string, info: any, sessionID: string): IGetBodyResponseData; deleteGroup(url: string, info: any, sessionID: string): INullResponseData; startOfflineRaid(url: string, info: IStartOfflineRaidRequestData, sessionID: string): INullResponseData; diff --git a/TypeScript/1LogToConsole/types/callbacks/ModCallbacks.d.ts b/TypeScript/1LogToConsole/types/callbacks/ModCallbacks.d.ts index 866abf7..58342dc 100644 --- a/TypeScript/1LogToConsole/types/callbacks/ModCallbacks.d.ts +++ b/TypeScript/1LogToConsole/types/callbacks/ModCallbacks.d.ts @@ -1,5 +1,5 @@ import { OnLoad } from "../di/OnLoad"; -import { DelayedModLoader } from "../loaders/DelayedModLoader"; +import { PostAkiModLoader } from "../loaders/PostAkiModLoader"; import { IHttpConfig } from "../models/spt/config/IHttpConfig"; import { IHttpServer } from "../models/spt/server/IHttpServer"; import { ILogger } from "../models/spt/utils/ILogger"; @@ -9,10 +9,10 @@ declare class ModCallbacks extends OnLoad { protected logger: ILogger; protected httpResponse: HttpResponseUtil; protected httpServer: IHttpServer; - protected modLoader: DelayedModLoader; + protected postAkiModLoader: PostAkiModLoader; protected configServer: ConfigServer; protected httpConfig: IHttpConfig; - constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, modLoader: DelayedModLoader, configServer: ConfigServer); + constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, postAkiModLoader: PostAkiModLoader, configServer: ConfigServer); onLoad(): void; getRoute(): string; sendBundle(sessionID: string, req: any, resp: any, body: any): void; diff --git a/TypeScript/1LogToConsole/types/callbacks/ProfileCallbacks.d.ts b/TypeScript/1LogToConsole/types/callbacks/ProfileCallbacks.d.ts index 116e7c5..6a86fc0 100644 --- a/TypeScript/1LogToConsole/types/callbacks/ProfileCallbacks.d.ts +++ b/TypeScript/1LogToConsole/types/callbacks/ProfileCallbacks.d.ts @@ -3,6 +3,7 @@ import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IGetMiniProfileRequestData } from "../models/eft/launcher/IGetMiniProfileRequestData"; +import { GetProfileStatusResponseData } from "../models/eft/profile/GetProfileStatusResponseData"; import { IProfileChangeNicknameRequestData } from "../models/eft/profile/IProfileChangeNicknameRequestData"; import { IProfileChangeVoiceRequestData } from "../models/eft/profile/IProfileChangeVoiceRequestData"; import { IProfileCreateRequestData } from "../models/eft/profile/IProfileCreateRequestData"; @@ -23,7 +24,14 @@ export declare class ProfileCallbacks { changeNickname(url: string, info: IProfileChangeNicknameRequestData, sessionID: string): IGetBodyResponseData; validateNickname(url: string, info: IValidateNicknameRequestData, sessionID: string): IGetBodyResponseData; getReservedNickname(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; - getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; + /** + * Called when creating a character, when you choose a character face/voice + * @param url + * @param info response (empty) + * @param sessionID + * @returns + */ + getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; searchFriend(url: string, info: ISearchFriendRequestData, sessionID: string): IGetBodyResponseData; getMiniProfile(url: string, info: IGetMiniProfileRequestData, sessionID: string): string; getAllMiniProfiles(url: string, info: any, sessionID: string): string; diff --git a/TypeScript/1LogToConsole/types/callbacks/RagfairCallbacks.d.ts b/TypeScript/1LogToConsole/types/callbacks/RagfairCallbacks.d.ts index d5bab8b..da782e1 100644 --- a/TypeScript/1LogToConsole/types/callbacks/RagfairCallbacks.d.ts +++ b/TypeScript/1LogToConsole/types/callbacks/RagfairCallbacks.d.ts @@ -9,6 +9,7 @@ import { IAddOfferRequestData } from "../models/eft/ragfair/IAddOfferRequestData import { IExtendOfferRequestData } from "../models/eft/ragfair/IExtendOfferRequestData"; import { IGetItemPriceResult } from "../models/eft/ragfair/IGetItemPriceResult"; import { IGetMarketPriceRequestData } from "../models/eft/ragfair/IGetMarketPriceRequestData"; +import { IGetOffersResult } from "../models/eft/ragfair/IGetOffersResult"; import { IRemoveOfferRequestData } from "../models/eft/ragfair/IRemoveOfferRequestData"; import { ISearchRequestData } from "../models/eft/ragfair/ISearchRequestData"; import { IRagfairConfig } from "../models/spt/config/IRagfairConfig"; @@ -28,7 +29,7 @@ export declare class RagfairCallbacks extends OnLoadOnUpdate { constructor(httpResponse: HttpResponseUtil, logger: ILogger, jsonUtil: JsonUtil, ragfairServer: RagfairServer, ragfairController: RagfairController, configServer: ConfigServer); onLoad(): void; getRoute(): string; - search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; + search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; getMarketPrice(url: string, info: IGetMarketPriceRequestData, sessionID: string): IGetBodyResponseData; getItemPrices(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; addOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/1LogToConsole/types/controllers/GameController.d.ts b/TypeScript/1LogToConsole/types/controllers/GameController.d.ts index 5f516de..f4c3d2c 100644 --- a/TypeScript/1LogToConsole/types/controllers/GameController.d.ts +++ b/TypeScript/1LogToConsole/types/controllers/GameController.d.ts @@ -28,6 +28,11 @@ export declare class GameController { protected addMissingRepeatableQuestsProperty(pmcProfile: IPmcData): void; protected addMissingWeaponRepairSkill(pmcProfile: IPmcData): void; protected addMissingAkiVersionTagToProfile(fullProfile: IAkiProfile): void; + /** + * In 18876 bsg changed the pockets tplid to be one that has 3 additional special slots + * @param pmcProfile + */ + protected updateProfilePocketsToNewId(pmcProfile: IPmcData): void; protected addMissingArmorRepairSkill(pmcProfile: IPmcData): void; protected fixNullTraderSalesSums(pmcProfile: IPmcData): void; protected removeDanglingBackendCounters(pmcProfile: IPmcData): void; diff --git a/TypeScript/1LogToConsole/types/controllers/InsuranceController.d.ts b/TypeScript/1LogToConsole/types/controllers/InsuranceController.d.ts index db2c567..af45442 100644 --- a/TypeScript/1LogToConsole/types/controllers/InsuranceController.d.ts +++ b/TypeScript/1LogToConsole/types/controllers/InsuranceController.d.ts @@ -3,6 +3,7 @@ import { ItemHelper } from "../helpers/ItemHelper"; import { ProfileHelper } from "../helpers/ProfileHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -33,6 +34,12 @@ export declare class InsuranceController { insuranceService: InsuranceService, configServer: ConfigServer); processReturn(): void; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; - cost(info: IGetInsuranceCostRequestData, sessionID: string): any; + /** + * Calculate insurance cost + * @param info request object + * @param sessionID session id + * @returns response object to send to client + */ + cost(info: IGetInsuranceCostRequestData, sessionID: string): IGetInsuranceCostResponseData; doAbsolutelyNothing(): void; } diff --git a/TypeScript/1LogToConsole/types/controllers/InventoryController.d.ts b/TypeScript/1LogToConsole/types/controllers/InventoryController.d.ts index b732aa9..f24ab62 100644 --- a/TypeScript/1LogToConsole/types/controllers/InventoryController.d.ts +++ b/TypeScript/1LogToConsole/types/controllers/InventoryController.d.ts @@ -24,6 +24,8 @@ import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRout import { ILogger } from "../models/spt/utils/ILogger"; import { ItemEventRouter } from "../routers/ItemEventRouter"; import { DatabaseServer } from "../servers/DatabaseServer"; +import { FenceService } from "../services/FenceService"; +import { RagfairOfferService } from "../services/RagfairOfferService"; import { HashUtil } from "../utils/HashUtil"; import { JsonUtil } from "../utils/JsonUtil"; export declare class InventoryController { @@ -31,12 +33,14 @@ export declare class InventoryController { protected hashUtil: HashUtil; protected jsonUtil: JsonUtil; protected databaseServer: DatabaseServer; + protected fenceService: FenceService; protected presetHelper: PresetHelper; protected inventoryHelper: InventoryHelper; + protected ragfairOfferService: RagfairOfferService; protected profileHelper: ProfileHelper; protected paymentHelper: PaymentHelper; protected itemEventRouter: ItemEventRouter; - constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); + constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, fenceService: FenceService, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, ragfairOfferService: RagfairOfferService, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); /** * Move Item * change location of item with parentId and slotId @@ -93,9 +97,19 @@ export declare class InventoryController { tagItem(pmcData: IPmcData, body: IInventoryTagRequestData, sessionID: string): IItemEventRouterResponse; bindItem(pmcData: IPmcData, body: IInventoryBindRequestData, sessionID: string): IItemEventRouterResponse; /** - * Handles examining of the item * + * Handles examining an item + * @param pmcData player profile + * @param body request object + * @param sessionID session id + * @returns response */ examineItem(pmcData: IPmcData, body: IInventoryExamineRequestData, sessionID: string): IItemEventRouterResponse; + /** + * Get the tplid of an item from the examine request object + * @param body response request + * @returns tplid + */ + protected getItemTpl(body: IInventoryExamineRequestData): string; readEncyclopedia(pmcData: IPmcData, body: IInventoryReadEncyclopediaRequestData, sessionID: string): IItemEventRouterResponse; /** * Handles sorting of Inventory. diff --git a/TypeScript/1LogToConsole/types/controllers/MatchController.d.ts b/TypeScript/1LogToConsole/types/controllers/MatchController.d.ts index c322d96..7ef3fcc 100644 --- a/TypeScript/1LogToConsole/types/controllers/MatchController.d.ts +++ b/TypeScript/1LogToConsole/types/controllers/MatchController.d.ts @@ -2,7 +2,10 @@ import { ProfileHelper } from "../helpers/ProfileHelper"; import { TraderHelper } from "../helpers/TraderHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { IInRaidConfig } from "../models/spt/config/IInRaidConfig"; import { IMatchConfig } from "../models/spt/config/IMatchConfig"; @@ -20,11 +23,11 @@ export declare class MatchController { constructor(saveServer: SaveServer, profileHelper: ProfileHelper, matchLocationService: MatchLocationService, traderHelper: TraderHelper, configServer: ConfigServer); getEnabled(): boolean; getProfile(info: IGetProfileRequestData): IPmcData[]; - protected getMatch(location: any): any; createGroup(sessionID: string, info: any): any; deleteGroup(info: any): void; - joinMatch(info: any, sessionID: string): any[]; - getGroupStatus(info: any): any; + joinMatch(info: IJoinMatchRequestData, sessionID: string): IJoinMatchResult[]; + protected getMatch(location: string): any; + getGroupStatus(info: IGetGroupStatusRequestData): any; startOfflineRaid(info: IStartOfflineRaidRequestData, sessionID: string): void; endOfflineRaid(info: IEndOfflineRaidRequestData, sessionID: string): void; } diff --git a/TypeScript/1LogToConsole/types/controllers/RagfairController.d.ts b/TypeScript/1LogToConsole/types/controllers/RagfairController.d.ts index c758593..c4ffc15 100644 --- a/TypeScript/1LogToConsole/types/controllers/RagfairController.d.ts +++ b/TypeScript/1LogToConsole/types/controllers/RagfairController.d.ts @@ -60,6 +60,8 @@ export declare class RagfairController { protected ragfairConfig: IRagfairConfig; constructor(logger: ILogger, timeUtil: TimeUtil, httpResponse: HttpResponseUtil, itemEventRouter: ItemEventRouter, ragfairServer: RagfairServer, ragfairPriceService: RagfairPriceService, databaseServer: DatabaseServer, itemHelper: ItemHelper, saveServer: SaveServer, ragfairSellHelper: RagfairSellHelper, ragfairTaxHelper: RagfairTaxHelper, ragfairSortHelper: RagfairSortHelper, ragfairOfferHelper: RagfairOfferHelper, profileHelper: ProfileHelper, paymentService: PaymentService, handbookHelper: HandbookHelper, paymentHelper: PaymentHelper, inventoryHelper: InventoryHelper, ragfairHelper: RagfairHelper, ragfairOfferService: RagfairOfferService, ragfairRequiredItemsService: RagfairRequiredItemsService, ragfairOfferGenerator: RagfairOfferGenerator, configServer: ConfigServer); getOffers(sessionID: string, info: ISearchRequestData): IGetOffersResult; + protected isLinkedSearch(info: ISearchRequestData): boolean; + protected isRequiredSearch(info: ISearchRequestData): boolean; update(): void; getItemPrice(info: IGetMarketPriceRequestData): IGetItemPriceResult; addPlayerOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/1LogToConsole/types/generators/BotWeaponGenerator.d.ts b/TypeScript/1LogToConsole/types/generators/BotWeaponGenerator.d.ts index a43b18c..dd3ad69 100644 --- a/TypeScript/1LogToConsole/types/generators/BotWeaponGenerator.d.ts +++ b/TypeScript/1LogToConsole/types/generators/BotWeaponGenerator.d.ts @@ -41,6 +41,13 @@ export declare class BotWeaponGenerator { * @returns */ protected generateExtraMagazines(weaponMods: Item[], weaponTemplate: ITemplateItem, magCounts: MinMax, ammoTpl: string, inventory: PmcInventory): void; + /** + * Get a randomised number of bullets for a specific magazine + * @param magCounts min and max count of magazines + * @param magTemplate magazine to generate bullet count for + * @returns bullet count number + */ + protected getRandomisedBulletCount(magCounts: MinMax, magTemplate: ITemplateItem): number; /** * Get a randomised count of magazines * @param magCounts min and max value returned value can be between diff --git a/TypeScript/1LogToConsole/types/generators/RagfairOfferGenerator.d.ts b/TypeScript/1LogToConsole/types/generators/RagfairOfferGenerator.d.ts index de53ea9..6645c8d 100644 --- a/TypeScript/1LogToConsole/types/generators/RagfairOfferGenerator.d.ts +++ b/TypeScript/1LogToConsole/types/generators/RagfairOfferGenerator.d.ts @@ -18,6 +18,7 @@ import { JsonUtil } from "../utils/JsonUtil"; import { RandomUtil } from "../utils/RandomUtil"; import { TimeUtil } from "../utils/TimeUtil"; import { RagfairAssortGenerator } from "./RagfairAssortGenerator"; +import { RagfairCategoriesService } from "../services/RagfairCategoriesService"; export declare class RagfairOfferGenerator { protected logger: ILogger; protected jsonUtil: JsonUtil; @@ -31,11 +32,12 @@ export declare class RagfairOfferGenerator { protected ragfairAssortGenerator: RagfairAssortGenerator; protected ragfairOfferService: RagfairOfferService; protected ragfairPriceService: RagfairPriceService; + protected ragfairCategoriesService: RagfairCategoriesService; protected fenceService: FenceService; protected itemHelper: ItemHelper; protected configServer: ConfigServer; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); + constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, ragfairCategoriesService: RagfairCategoriesService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); createOffer(userID: string, time: number, items: Item[], barterScheme: IBarterScheme[], loyalLevel: number, price: number, sellInOnePiece?: boolean): IRagfairOffer; protected getTraderId(userID: string): string; protected getRating(userID: string): number; diff --git a/TypeScript/1LogToConsole/types/helpers/BotGeneratorHelper.d.ts b/TypeScript/1LogToConsole/types/helpers/BotGeneratorHelper.d.ts index e4b0c11..243e7a8 100644 --- a/TypeScript/1LogToConsole/types/helpers/BotGeneratorHelper.d.ts +++ b/TypeScript/1LogToConsole/types/helpers/BotGeneratorHelper.d.ts @@ -29,6 +29,12 @@ export declare class BotGeneratorHelper { protected botConfig: IBotConfig; constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, probabilityHelper: ProbabilityHelper, databaseServer: DatabaseServer, durabilityLimitsHelper: DurabilityLimitsHelper, itemHelper: ItemHelper, inventoryHelper: InventoryHelper, containerHelper: ContainerHelper, configServer: ConfigServer); generateModsForItem(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem, modSpawnChances: ModsChances, isPmc?: boolean): Item[]; + /** + * Is this magazine cylinder related (revolvers and grenade launchers) + * @param magazineParentName the name of the magazines parent + * @returns true if it is cylinder related + */ + magazineIsCylinderRelated(magazineParentName: string): boolean; /** * Get a list of non black-listed cartridges from the PMC bot config * @param modSlot mod item slot @@ -69,6 +75,12 @@ export declare class BotGeneratorHelper { * @param {object} parentTemplate The CylinderMagazine's template */ protected fillCamora(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem): void; + /** + * Take a record of camoras and merge the compatable shells into one array + * @param camorasWithShells camoras we want to merge into one array + * @returns string array of shells fro luitple camora sources + */ + protected mergeCamoraPoolsTogether(camorasWithShells: Record): string[]; generateExtraPropertiesForItem(itemTemplate: ITemplateItem, botRole?: any): { upd?: Upd; }; diff --git a/TypeScript/1LogToConsole/types/loaders/AfterDbModLoader.d.ts b/TypeScript/1LogToConsole/types/loaders/AfterDbModLoader.d.ts deleted file mode 100644 index a9fc286..0000000 --- a/TypeScript/1LogToConsole/types/loaders/AfterDbModLoader.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { OnLoad } from "../di/OnLoad"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class AfterDbModLoader implements OnLoad { - protected initialModLoader: InitialModLoader; - constructor(initialModLoader: InitialModLoader); - onLoad(): void; - getRoute(): string; - getModPath(mod: string): string; - protected executeMods(container: DependencyContainer): void; -} diff --git a/TypeScript/1LogToConsole/types/loaders/DelayedModLoader.d.ts b/TypeScript/1LogToConsole/types/loaders/DelayedModLoader.d.ts deleted file mode 100644 index 2a05604..0000000 --- a/TypeScript/1LogToConsole/types/loaders/DelayedModLoader.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { HandbookController } from "../controllers/HandbookController"; -import { IModLoader } from "../models/spt/mod/IModLoader"; -import { ModCompilerService } from "../services/ModCompilerService"; -import { VFS } from "../utils/VFS"; -import { BundleLoader } from "./BundleLoader"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class DelayedModLoader implements IModLoader { - protected bundleLoader: BundleLoader; - protected handbookController: HandbookController; - protected vfs: VFS; - protected modCompilerService: ModCompilerService; - protected initialModLoader: InitialModLoader; - constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, initialModLoader: InitialModLoader); - getBundles(local: boolean): string; - getBundle(key: string, local: boolean): void; - getModPath(mod: string): string; - load(): void; - protected executeMods(container: DependencyContainer): void; - protected addBundles(): void; -} diff --git a/TypeScript/1LogToConsole/types/loaders/InitialModLoader.d.ts b/TypeScript/1LogToConsole/types/loaders/InitialModLoader.d.ts deleted file mode 100644 index 9a99dcc..0000000 --- a/TypeScript/1LogToConsole/types/loaders/InitialModLoader.d.ts +++ /dev/null @@ -1,64 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { ICoreConfig } from "../models/spt/config/ICoreConfig"; -import { ModLoader } from "../models/spt/mod/IMod"; -import { IModLoader } from "../models/spt/mod/IModLoader"; -import { IPackageJsonData } from "../models/spt/mod/IPackageJsonData"; -import { ILogger } from "../models/spt/utils/ILogger"; -import { ConfigServer } from "../servers/ConfigServer"; -import { ModCompilerService } from "../services/ModCompilerService"; -import { JsonUtil } from "../utils/JsonUtil"; -import { VFS } from "../utils/VFS"; -import { BundleLoader } from "./BundleLoader"; -export declare class InitialModLoader implements IModLoader { - protected logger: ILogger; - protected vfs: VFS; - protected jsonUtil: JsonUtil; - protected modCompilerService: ModCompilerService; - protected bundleLoader: BundleLoader; - protected configServer: ConfigServer; - protected static container: DependencyContainer; - protected readonly basepath = "user/mods/"; - protected imported: Record; - protected akiConfig: ICoreConfig; - constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, configServer: ConfigServer); - load(container: DependencyContainer): Promise; - getBundles(local: boolean): string; - getBundle(key: string, local: boolean): void; - /** - * Returns a list of mods with preserved load order - * @returns Array of mod names in load order - */ - getImportedModsNames(): string[]; - getModPath(mod: string): string; - protected importClass(name: string, filepath: string, container: DependencyContainer): void; - protected importMods(): Promise; - /** - * - * @param mods Get an array of broken/invalid mods by name - * @returns Mod names array - */ - protected getBrokenMods(mods: string[]): string[]; - /** - * Get packageJson data for mods - * @param mods mods to get packageJson for - * @returns dictionary - */ - protected getModsPackageData(mods: string[]): Record; - /** - * Does mod have "delayedLoad(" string in its entry class - * @param modFolderName folder name - * @param modToValidate package.json details - * @returns boolean - */ - protected isModSpt300Compatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; - protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; - protected executeMods(container: DependencyContainer): void; - sortModsLoadOrder(): string[]; - protected addMod(mod: string): Promise; - protected areModDependenciesFulfilled(pkg: IPackageJsonData, loadedMods: Record): boolean; - protected isModCompatible(mod: IPackageJsonData, loadedMods: Record): boolean; - protected validMod(mod: string): boolean; - protected getLoadOrderRecursive(mod: string, result: Record, visited: Record): void; - protected getLoadOrder(mods: Record): Record; - getContainer(): DependencyContainer; -} diff --git a/TypeScript/1LogToConsole/types/loaders/PostAkiModLoader.d.ts b/TypeScript/1LogToConsole/types/loaders/PostAkiModLoader.d.ts new file mode 100644 index 0000000..edc6e5d --- /dev/null +++ b/TypeScript/1LogToConsole/types/loaders/PostAkiModLoader.d.ts @@ -0,0 +1,21 @@ +import { DependencyContainer } from "tsyringe"; +import { HandbookController } from "../controllers/HandbookController"; +import { IModLoader } from "../models/spt/mod/IModLoader"; +import { ModCompilerService } from "../services/ModCompilerService"; +import { VFS } from "../utils/VFS"; +import { BundleLoader } from "./BundleLoader"; +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostAkiModLoader implements IModLoader { + protected bundleLoader: BundleLoader; + protected handbookController: HandbookController; + protected vfs: VFS; + protected modCompilerService: ModCompilerService; + protected preAkiModLoader: PreAkiModLoader; + constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, preAkiModLoader: PreAkiModLoader); + getBundles(local: boolean): string; + getBundle(key: string, local: boolean): void; + getModPath(mod: string): string; + load(): void; + protected executeMods(container: DependencyContainer): void; + protected addBundles(): void; +} diff --git a/TypeScript/1LogToConsole/types/loaders/PostDBModLoader.d.ts b/TypeScript/1LogToConsole/types/loaders/PostDBModLoader.d.ts new file mode 100644 index 0000000..5101b7b --- /dev/null +++ b/TypeScript/1LogToConsole/types/loaders/PostDBModLoader.d.ts @@ -0,0 +1,11 @@ +import { DependencyContainer } from "tsyringe"; +import { OnLoad } from "../di/OnLoad"; +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostDBModLoader implements OnLoad { + protected preAkiModLoader: PreAkiModLoader; + constructor(preAkiModLoader: PreAkiModLoader); + onLoad(): void; + getRoute(): string; + getModPath(mod: string): string; + protected executeMods(container: DependencyContainer): void; +} diff --git a/TypeScript/1LogToConsole/types/loaders/PreAkiModLoader.d.ts b/TypeScript/1LogToConsole/types/loaders/PreAkiModLoader.d.ts new file mode 100644 index 0000000..6ded3c6 --- /dev/null +++ b/TypeScript/1LogToConsole/types/loaders/PreAkiModLoader.d.ts @@ -0,0 +1,64 @@ +import { DependencyContainer } from "tsyringe"; +import { ICoreConfig } from "../models/spt/config/ICoreConfig"; +import { ModLoader } from "../models/spt/mod/IMod"; +import { IModLoader } from "../models/spt/mod/IModLoader"; +import { IPackageJsonData } from "../models/spt/mod/IPackageJsonData"; +import { ILogger } from "../models/spt/utils/ILogger"; +import { ConfigServer } from "../servers/ConfigServer"; +import { ModCompilerService } from "../services/ModCompilerService"; +import { JsonUtil } from "../utils/JsonUtil"; +import { VFS } from "../utils/VFS"; +import { BundleLoader } from "./BundleLoader"; +export declare class PreAkiModLoader implements IModLoader { + protected logger: ILogger; + protected vfs: VFS; + protected jsonUtil: JsonUtil; + protected modCompilerService: ModCompilerService; + protected bundleLoader: BundleLoader; + protected configServer: ConfigServer; + protected static container: DependencyContainer; + protected readonly basepath = "user/mods/"; + protected imported: Record; + protected akiConfig: ICoreConfig; + constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, configServer: ConfigServer); + load(container: DependencyContainer): Promise; + getBundles(local: boolean): string; + getBundle(key: string, local: boolean): void; + /** + * Returns a list of mods with preserved load order + * @returns Array of mod names in load order + */ + getImportedModsNames(): string[]; + getModPath(mod: string): string; + protected importClass(name: string, filepath: string, container: DependencyContainer): void; + protected importMods(): Promise; + /** + * + * @param mods Get an array of broken/invalid mods by name + * @returns Mod names array + */ + protected getBrokenMods(mods: string[]): string[]; + /** + * Get packageJson data for mods + * @param mods mods to get packageJson for + * @returns dictionary + */ + protected getModsPackageData(mods: string[]): Record; + /** + * Does mod have "delayedLoad(" string in its entry class + * @param modFolderName folder name + * @param modToValidate package.json details + * @returns boolean + */ + protected isModSpt3XXCompatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; + protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; + protected executeMods(container: DependencyContainer): void; + sortModsLoadOrder(): string[]; + protected addMod(mod: string): Promise; + protected areModDependenciesFulfilled(pkg: IPackageJsonData, loadedMods: Record): boolean; + protected isModCompatible(mod: IPackageJsonData, loadedMods: Record): boolean; + protected validMod(mod: string): boolean; + protected getLoadOrderRecursive(mod: string, result: Record, visited: Record): void; + protected getLoadOrder(mods: Record): Record; + getContainer(): DependencyContainer; +} diff --git a/TypeScript/1LogToConsole/types/models/eft/common/IGlobals.d.ts b/TypeScript/1LogToConsole/types/models/eft/common/IGlobals.d.ts index 456895c..9d28dbc 100644 --- a/TypeScript/1LogToConsole/types/models/eft/common/IGlobals.d.ts +++ b/TypeScript/1LogToConsole/types/models/eft/common/IGlobals.d.ts @@ -1128,8 +1128,11 @@ export interface Inertia { SprintAccelerationLimits: xyz; SideTime: xyz; DiagonalTime: xyz; + MaxTimeWithoutInput: xyz; MinDirectionBlendTime: number; - MoveTime: number; + MoveTimeRange: xyz; + ProneDirectionAccelerationRange: xyz; + ProneSpeedAccelerationRange: xyz; MinMovementAccelerationRangeRight: xyz; MaxMovementAccelerationRangeRight: xyz; } diff --git a/TypeScript/1LogToConsole/types/models/eft/common/ILocationBase.d.ts b/TypeScript/1LogToConsole/types/models/eft/common/ILocationBase.d.ts index ad48d32..b1dd448 100644 --- a/TypeScript/1LogToConsole/types/models/eft/common/ILocationBase.d.ts +++ b/TypeScript/1LogToConsole/types/models/eft/common/ILocationBase.d.ts @@ -26,6 +26,7 @@ export interface ILocationBase { DisabledForScav: boolean; DisabledScavExits: string; Enabled: boolean; + EnableCoop: boolean; GlobalLootChanceModifier: number; IconX: number; IconY: number; @@ -41,6 +42,7 @@ export interface ILocationBase { MinDistToFreePoint: number; MinMaxBots: MinMaxBot[]; MinPlayers: number; + MaxCoopGroup: number; Name: string; NewSpawn: boolean; OcculsionCullingEnabled: boolean; @@ -48,6 +50,8 @@ export interface ILocationBase { OpenZones: string; Preview: Preview; RequiredPlayerLevel: number; + PmcMaxPlayersInGroup: number; + ScavMaxPlayersInGroup: number; Rules: string; SafeLocation: boolean; Scene: Scene; @@ -55,7 +59,8 @@ export interface ILocationBase { UnixDateTime: number; _Id: string; doors: any[]; - escape_time_limit: number; + EscapeTimeLimit: number; + EscapeTimeLimitCoop: number; exit_access_time: number; exit_count: number; exit_time: number; @@ -63,6 +68,7 @@ export interface ILocationBase { filter_ex: string[]; limits: ILimit[]; matching_min_seconds: number; + GenerateLocalLootCache: boolean; maxItemCountInLocation: MaxItemCountInLocation[]; sav_summon_seconds: number; tmp_location_field_remove_me: number; @@ -106,6 +112,7 @@ export interface BossLocationSpawn { BossName: string; BossPlayer: boolean; BossZone: string; + RandomTimeSpawn: boolean; Time: number; TriggerId: string; TriggerName: string; diff --git a/TypeScript/1LogToConsole/types/models/eft/common/IPmcData.d.ts b/TypeScript/1LogToConsole/types/models/eft/common/IPmcData.d.ts index adc2aa5..56bf07f 100644 --- a/TypeScript/1LogToConsole/types/models/eft/common/IPmcData.d.ts +++ b/TypeScript/1LogToConsole/types/models/eft/common/IPmcData.d.ts @@ -6,7 +6,7 @@ import { MemberCategory } from "../../enums/MemberCategory"; export interface IPmcData { _id: string; aid: string; - savage: string; + savage?: string; Info: Info; Customization: Customization; Health: Health; @@ -28,13 +28,6 @@ export interface IPmcData { CarExtractCounts: CarExtractCounts; SurvivorClass: SurvivorClass; } -export declare enum SurvivorClass { - Unknown = 0, - Neutralizer = 1, - Marauder = 2, - Paramedic = 3, - Survivor = 4 -} export interface Info { EntryPoint: string; Nickname: string; @@ -56,6 +49,9 @@ export interface Info { Bans: IBan[]; BannedState: boolean; BannedUntil: number; + NeedWipeOptions: any[]; + lastCompletedWipe: LastCompleted; + lastCompletedEvent?: LastCompleted; } export interface Settings { Role: string; @@ -339,3 +335,13 @@ export interface RagfairInfo { } export interface CarExtractCounts { } +export declare enum SurvivorClass { + Unknown = 0, + Neutralizer = 1, + Marauder = 2, + Paramedic = 3, + Survivor = 4 +} +export interface LastCompleted { + $oid: string; +} diff --git a/TypeScript/1LogToConsole/types/models/eft/common/tables/IProfileTemplate.d.ts b/TypeScript/1LogToConsole/types/models/eft/common/tables/IProfileTemplate.d.ts new file mode 100644 index 0000000..c445e92 --- /dev/null +++ b/TypeScript/1LogToConsole/types/models/eft/common/tables/IProfileTemplate.d.ts @@ -0,0 +1,23 @@ +import { Dialogue, WeaponBuild } from "../../profile/IAkiProfile"; +import { IPmcData } from "../IPmcData"; +export interface IProfileTemplates { + Standard: IProfileSides; + "Left Behind": IProfileSides; + "Prepare To Escape": IProfileSides; + "Edge Of Darkness": IProfileSides; +} +export interface IProfileSides { + usec: TemplateSide; + bear: TemplateSide; +} +export interface TemplateSide { + character: IPmcData; + suits: string[]; + dialogues: Record; + weaponbuilds: WeaponBuild[]; + trader: ProfileTraderTemplate; +} +export interface ProfileTraderTemplate { + initialStanding: number; + initialSalesSum: number; +} diff --git a/TypeScript/1LogToConsole/types/models/eft/common/tables/IQuest.d.ts b/TypeScript/1LogToConsole/types/models/eft/common/tables/IQuest.d.ts index e1fc888..942339b 100644 --- a/TypeScript/1LogToConsole/types/models/eft/common/tables/IQuest.d.ts +++ b/TypeScript/1LogToConsole/types/models/eft/common/tables/IQuest.d.ts @@ -23,6 +23,7 @@ export interface IQuest { status: string; KeyQuest: boolean; changeQuestMessageText: string; + side: string; } export interface Conditions { Started: AvailableForConditions[]; @@ -56,6 +57,7 @@ export interface AvailableForProps { plantTime?: number; zoneId?: string; type?: boolean; + countInRaid?: boolean; } export interface AvailableForCounter { id: string; diff --git a/TypeScript/1LogToConsole/types/models/eft/common/tables/ITemplateItem.d.ts b/TypeScript/1LogToConsole/types/models/eft/common/tables/ITemplateItem.d.ts index 934ea7d..23a1a14 100644 --- a/TypeScript/1LogToConsole/types/models/eft/common/tables/ITemplateItem.d.ts +++ b/TypeScript/1LogToConsole/types/models/eft/common/tables/ITemplateItem.d.ts @@ -50,6 +50,7 @@ export interface Props { UnlootableFromSide?: string[]; AnimationVariantsNumber?: number; DiscardingBlock?: boolean; + DropSoundType?: string; RagFairCommissionModifier?: number; IsAlwaysAvailableForInsurance?: boolean; DiscardLimit?: number; @@ -89,7 +90,7 @@ export interface Props { SightModesCount?: number; OpticCalibrationDistances?: number[]; ScopesCount?: number; - AimSensitivity: any; + AimSensitivity?: number | number[][]; Zooms?: number[][]; CalibrationDistances?: number[][]; Intensity?: number; @@ -200,6 +201,9 @@ export interface Props { MinRepairDegradation?: number; MaxRepairDegradation?: number; IronSightRange?: number; + IsFlareGun?: boolean; + IsGrenadeLauncher?: boolean; + IsOneoff?: boolean; MustBoltBeOpennedForExternalReload?: boolean; MustBoltBeOpennedForInternalReload?: boolean; BoltAction?: boolean; diff --git a/TypeScript/1LogToConsole/types/models/eft/game/IReportNicknameRequestData.d.ts b/TypeScript/1LogToConsole/types/models/eft/game/IReportNicknameRequestData.d.ts new file mode 100644 index 0000000..087c58b --- /dev/null +++ b/TypeScript/1LogToConsole/types/models/eft/game/IReportNicknameRequestData.d.ts @@ -0,0 +1,3 @@ +export interface IReportNicknameRequestData { + uid: string; +} diff --git a/TypeScript/1LogToConsole/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts b/TypeScript/1LogToConsole/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts new file mode 100644 index 0000000..bf209c6 --- /dev/null +++ b/TypeScript/1LogToConsole/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts @@ -0,0 +1 @@ +export declare type IGetInsuranceCostResponseData = Record>; diff --git a/TypeScript/1LogToConsole/types/models/eft/match/IGetGroupStatusRequestData.d.ts b/TypeScript/1LogToConsole/types/models/eft/match/IGetGroupStatusRequestData.d.ts new file mode 100644 index 0000000..cbdb77f --- /dev/null +++ b/TypeScript/1LogToConsole/types/models/eft/match/IGetGroupStatusRequestData.d.ts @@ -0,0 +1,8 @@ +export interface IGetGroupStatusRequestData { + location: string; + savage: boolean; + dt: string; + keyId: string; + raidMode: string; + startInGroup: boolean; +} diff --git a/TypeScript/1LogToConsole/types/models/eft/match/IJoinMatchRequestData.d.ts b/TypeScript/1LogToConsole/types/models/eft/match/IJoinMatchRequestData.d.ts new file mode 100644 index 0000000..cd34f7b --- /dev/null +++ b/TypeScript/1LogToConsole/types/models/eft/match/IJoinMatchRequestData.d.ts @@ -0,0 +1,12 @@ +export interface IJoinMatchRequestData { + location: string; + savage: boolean; + dt: string; + servers: Server[]; + keyId: string; +} +export interface Server { + ping: number; + ip: string; + port: string; +} diff --git a/TypeScript/1LogToConsole/types/models/eft/match/IJoinMatchResult.d.ts b/TypeScript/1LogToConsole/types/models/eft/match/IJoinMatchResult.d.ts new file mode 100644 index 0000000..df695f4 --- /dev/null +++ b/TypeScript/1LogToConsole/types/models/eft/match/IJoinMatchResult.d.ts @@ -0,0 +1,11 @@ +export interface IJoinMatchResult { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; + version: string; + location: string; + gamemode: string; + shortid: string; +} diff --git a/TypeScript/1LogToConsole/types/models/eft/match/IStartOffineRaidRequestData.d.ts b/TypeScript/1LogToConsole/types/models/eft/match/IStartOffineRaidRequestData.d.ts index 84bccc8..7cc457c 100644 --- a/TypeScript/1LogToConsole/types/models/eft/match/IStartOffineRaidRequestData.d.ts +++ b/TypeScript/1LogToConsole/types/models/eft/match/IStartOffineRaidRequestData.d.ts @@ -1,6 +1,5 @@ export interface IStartOfflineRaidRequestData { locationName: string; - entryPoint: string; startTime: number; dateTime: string; gameSettings: GameSettings; diff --git a/TypeScript/1LogToConsole/types/models/eft/profile/GetProfileStatusResponseData.d.ts b/TypeScript/1LogToConsole/types/models/eft/profile/GetProfileStatusResponseData.d.ts new file mode 100644 index 0000000..eee9b4f --- /dev/null +++ b/TypeScript/1LogToConsole/types/models/eft/profile/GetProfileStatusResponseData.d.ts @@ -0,0 +1,11 @@ +export interface GetProfileStatusResponseData { + maxPveCountExceeded: false; + profiles: ProfileData[]; +} +export interface ProfileData { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; +} diff --git a/TypeScript/1LogToConsole/types/models/eft/ragfair/IGetOffersResult.d.ts b/TypeScript/1LogToConsole/types/models/eft/ragfair/IGetOffersResult.d.ts index 1c11422..fbc631d 100644 --- a/TypeScript/1LogToConsole/types/models/eft/ragfair/IGetOffersResult.d.ts +++ b/TypeScript/1LogToConsole/types/models/eft/ragfair/IGetOffersResult.d.ts @@ -1,6 +1,6 @@ import { IRagfairOffer } from "./IRagfairOffer"; export interface IGetOffersResult { - categories: Record; + categories?: Record; offers: IRagfairOffer[]; offersCount: number; selectedCategory: string; diff --git a/TypeScript/1LogToConsole/types/models/enums/QuestStatus.d.ts b/TypeScript/1LogToConsole/types/models/enums/QuestStatus.d.ts deleted file mode 100644 index 6335c73..0000000 --- a/TypeScript/1LogToConsole/types/models/enums/QuestStatus.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -export declare enum QuestStatus { - Locked = 0, - AvailableForStart = 1, - Started = 2, - AvailableForFinish = 3, - Success = 4, - Fail = 5, - FailRestartable = 6, - MarkedAsFailed = 7 -} diff --git a/TypeScript/1LogToConsole/types/models/external/IAfterDBLoadMod.d.ts b/TypeScript/1LogToConsole/types/models/external/IAfterDBLoadMod.d.ts deleted file mode 100644 index 7f08b9e..0000000 --- a/TypeScript/1LogToConsole/types/models/external/IAfterDBLoadMod.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IAfterDBLoadMod { - loadAfterDbInit(container: DependencyContainer): void; -} diff --git a/TypeScript/1LogToConsole/types/models/external/IPostAkiLoadMod.d.ts b/TypeScript/1LogToConsole/types/models/external/IPostAkiLoadMod.d.ts new file mode 100644 index 0000000..f6950e8 --- /dev/null +++ b/TypeScript/1LogToConsole/types/models/external/IPostAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostAkiLoadMod { + postAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/1LogToConsole/types/models/external/IPostDBLoadMod.d.ts b/TypeScript/1LogToConsole/types/models/external/IPostDBLoadMod.d.ts new file mode 100644 index 0000000..ca7c682 --- /dev/null +++ b/TypeScript/1LogToConsole/types/models/external/IPostDBLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostDBLoadMod { + postDBLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/1LogToConsole/types/models/external/IPreAkiLoadMod.d.ts b/TypeScript/1LogToConsole/types/models/external/IPreAkiLoadMod.d.ts new file mode 100644 index 0000000..ae7579e --- /dev/null +++ b/TypeScript/1LogToConsole/types/models/external/IPreAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPreAkiLoadMod { + preAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/1LogToConsole/types/models/external/mod.d.ts b/TypeScript/1LogToConsole/types/models/external/mod.d.ts deleted file mode 100644 index 47939e9..0000000 --- a/TypeScript/1LogToConsole/types/models/external/mod.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IMod { - load(container: DependencyContainer): void; - delayedLoad(container: DependencyContainer): void; -} diff --git a/TypeScript/1LogToConsole/types/models/spt/config/IBotConfig.d.ts b/TypeScript/1LogToConsole/types/models/spt/config/IBotConfig.d.ts index 5fb9d93..f8cf39b 100644 --- a/TypeScript/1LogToConsole/types/models/spt/config/IBotConfig.d.ts +++ b/TypeScript/1LogToConsole/types/models/spt/config/IBotConfig.d.ts @@ -18,6 +18,7 @@ export interface PresetBatch { bossKojaniy: number; bossSanitar: number; bossTagilla: number; + bossKnight: number; bossTest: number; cursedAssault: number; followerBully: number; @@ -28,6 +29,8 @@ export interface PresetBatch { followerKojaniy: number; followerSanitar: number; followerTagilla: number; + followerBirdEye: number; + followerBigPipe: number; followerTest: number; marksman: number; pmcBot: number; diff --git a/TypeScript/1LogToConsole/types/models/spt/config/IRagfairConfig.d.ts b/TypeScript/1LogToConsole/types/models/spt/config/IRagfairConfig.d.ts index 2d151ca..8518252 100644 --- a/TypeScript/1LogToConsole/types/models/spt/config/IRagfairConfig.d.ts +++ b/TypeScript/1LogToConsole/types/models/spt/config/IRagfairConfig.d.ts @@ -30,6 +30,7 @@ export interface Dynamic { expiredOfferThreshold: number; offerItemCount: MinMax; price: MinMax; + presetPrice: MinMax; endTimeSeconds: MinMax; condition: Condition; stackablePercent: MinMax; diff --git a/TypeScript/1LogToConsole/types/models/spt/server/IDatabaseTables.d.ts b/TypeScript/1LogToConsole/types/models/spt/server/IDatabaseTables.d.ts index e0d3fdd..9978459 100644 --- a/TypeScript/1LogToConsole/types/models/spt/server/IDatabaseTables.d.ts +++ b/TypeScript/1LogToConsole/types/models/spt/server/IDatabaseTables.d.ts @@ -6,6 +6,7 @@ import { ICustomizationItem } from "../../eft/common/tables/ICustomizationItem"; import { IHandbookBase } from "../../eft/common/tables/IHandbookBase"; import { ILootBase } from "../../eft/common/tables/ILootBase"; import { IMatch } from "../../eft/common/tables/IMatch"; +import { IProfileTemplates } from "../../eft/common/tables/IProfileTemplate"; import { IQuest } from "../../eft/common/tables/IQuest"; import { IRepeatableQuestDatabase } from "../../eft/common/tables/IRepeatableQuests"; import { ITemplateItem } from "../../eft/common/tables/ITemplateItem"; @@ -39,10 +40,13 @@ export interface IDatabaseTables { items: Record; quests: IQuest[]; repeatableQuests: IRepeatableQuestDatabase; + /** DEPRECATED - Items file found in the client, massivly out of date compared to templates.items, try not to use this, remove ASAP*/ clientItems: Record; handbook: IHandbookBase; customization: Record; - profiles: any; + /** The profile templates listed in the launcher on profile creation, split by account type (e.g. Standard) then side (e.g. bear/usec) */ + profiles: IProfileTemplates; + /** Flea prices of items - gathered from online flea market dump */ prices: Record; }; traders?: Record; diff --git a/TypeScript/1LogToConsole/types/servers/RagfairServer.d.ts b/TypeScript/1LogToConsole/types/servers/RagfairServer.d.ts index 60c92b5..bc86cdb 100644 --- a/TypeScript/1LogToConsole/types/servers/RagfairServer.d.ts +++ b/TypeScript/1LogToConsole/types/servers/RagfairServer.d.ts @@ -17,7 +17,8 @@ export declare class RagfairServer { constructor(logger: ILogger, ragfairOfferGenerator: RagfairOfferGenerator, ragfairOfferService: RagfairOfferService, ragfairCategoriesService: RagfairCategoriesService, ragfairRequiredItemsService: RagfairRequiredItemsService, configServer: ConfigServer); load(): void; update(): void; - getCategories(): Record; + getAllCategories(): Record; + getBespokeCategories(offers: IRagfairOffer[]): Record; /** * Disable/Hide an offer from flea * @param offerId diff --git a/TypeScript/1LogToConsole/types/services/RagfairCategoriesService.d.ts b/TypeScript/1LogToConsole/types/services/RagfairCategoriesService.d.ts index 09956cc..83910e5 100644 --- a/TypeScript/1LogToConsole/types/services/RagfairCategoriesService.d.ts +++ b/TypeScript/1LogToConsole/types/services/RagfairCategoriesService.d.ts @@ -1,10 +1,40 @@ import { IRagfairOffer } from "../models/eft/ragfair/IRagfairOffer"; +import { ILogger } from "../models/spt/utils/ILogger"; export declare class RagfairCategoriesService { - updateCategories(offers: IRagfairOffer[]): void; + protected logger: ILogger; protected categories: Record; - getCategories(): Record; - getCategoryByItemId(itemId: string): number; - resetCategories(): void; - setCategoryValue(itemId: string, newValue: number): void; - incrementCategory(itemId: string): void; + constructor(logger: ILogger); + /** + * Get all flea categories and their count of offers + * @returns item categories and count + */ + getAllCategories(): Record; + /** + * With the supplied items, get custom categories + * @returns a custom list of categories + */ + getBespokeCategories(offers: IRagfairOffer[]): Record; + /** + * Take an array of ragfair offers and create a dictionary of items with thier corrisponding offer count + * @param offers ragfair offers + * @returns categories and count + */ + protected processOffersIntoCategories(offers: IRagfairOffer[]): Record; + /** + * Increment or decrement a category array + * @param offer offer to process + * @param categories categories to update + * @param increment should item be incremented or decremented + */ + protected addOrIncrementCategory(offer: IRagfairOffer, categories: Record, increment?: boolean): void; + /** + * Increase category count by 1 + * @param offer + */ + incrementCategory(offer: IRagfairOffer): void; + /** + * Reduce category count by 1 + * @param offer + */ + decrementCategory(offer: IRagfairOffer): void; } diff --git a/TypeScript/1LogToConsole/types/services/RagfairOfferService.d.ts b/TypeScript/1LogToConsole/types/services/RagfairOfferService.d.ts index 7afbf8c..7398a8f 100644 --- a/TypeScript/1LogToConsole/types/services/RagfairOfferService.d.ts +++ b/TypeScript/1LogToConsole/types/services/RagfairOfferService.d.ts @@ -11,12 +11,14 @@ import { DatabaseServer } from "../servers/DatabaseServer"; import { SaveServer } from "../servers/SaveServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; import { TimeUtil } from "../utils/TimeUtil"; +import { RagfairCategoriesService } from "./RagfairCategoriesService"; export declare class RagfairOfferService { protected logger: ILogger; protected timeUtil: TimeUtil; protected databaseServer: DatabaseServer; protected saveServer: SaveServer; protected ragfairServerHelper: RagfairServerHelper; + protected ragfairCategoriesService: RagfairCategoriesService; protected profileHelper: ProfileHelper; protected itemEventRouter: ItemEventRouter; protected httpResponse: HttpResponseUtil; @@ -26,12 +28,16 @@ export declare class RagfairOfferService { protected expiredOffers: Item[]; protected offers: IRagfairOffer[]; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, ragfairCategoriesService: RagfairCategoriesService, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + /** + * Get all offers + * @returns IRagfairOffer array + */ getOffers(): IRagfairOffer[]; getOfferByOfferId(offerId: string): IRagfairOffer; getOffersOfType(templateId: string): IRagfairOffer[]; addOffer(offer: IRagfairOffer): void; - addOfferToExpired(offer: Item): void; + addOfferToExpired(staleOffer: IRagfairOffer): void; setTraderUpdateStatus(traderId: string, shouldUpdate: boolean): void; shouldTraderBeUpdated(traderID: string): boolean; getExpiredOfferCount(): number; diff --git a/TypeScript/1LogToConsole/types/services/RagfairPriceService.d.ts b/TypeScript/1LogToConsole/types/services/RagfairPriceService.d.ts index 5256b99..e3168a6 100644 --- a/TypeScript/1LogToConsole/types/services/RagfairPriceService.d.ts +++ b/TypeScript/1LogToConsole/types/services/RagfairPriceService.d.ts @@ -28,5 +28,19 @@ export declare class RagfairPriceService { getFleaPriceForItem(tplId: string): number; getBarterPrice(barterScheme: IBarterScheme[]): number; getDynamicOfferPrice(items: Item[], desiredCurrency: string): number; + /** + * Multiply the price by a randomised curve where n = 2, shift = 2 + * @param existingPrice price to alter + * @param isPreset is the item we're multiplying a preset + * @returns multiplied price + */ + protected randomisePrice(existingPrice: number, isPreset: boolean): number; + /** + * Calculate the cost of a weapon preset by adding together the price of its mods + base price of default weapon preset + * @param item base weapon + * @param items weapon plus mods + * @param existingPrice price of existing base weapon + * @returns + */ getWeaponPresetPrice(item: Item, items: Item[], existingPrice: number): number; } diff --git a/TypeScript/1LogToConsole/types/utils/Watermark.d.ts b/TypeScript/1LogToConsole/types/utils/Watermark.d.ts index 111bdd0..c6dc120 100644 --- a/TypeScript/1LogToConsole/types/utils/Watermark.d.ts +++ b/TypeScript/1LogToConsole/types/utils/Watermark.d.ts @@ -28,7 +28,12 @@ export declare class Watermark { protected text: string[]; protected versionLabel: string; initialize(): void; - getVersionTag(): string; + /** + * Get a version string (x.x.x) or (x.x.x-BLEEDINGEDGE) OR (X.X.X (18xxx)) + * @param withEftVersion Include the eft version this spt version was made for + * @returns string + */ + getVersionTag(withEftVersion?: boolean): string; getVersionLabel(): string; /** Set window title */ setTitle(): void; diff --git a/TypeScript/2EditDatabase/package.json b/TypeScript/2EditDatabase/package.json index d5f6dd0..1444dd8 100644 --- a/TypeScript/2EditDatabase/package.json +++ b/TypeScript/2EditDatabase/package.json @@ -4,7 +4,7 @@ "main": "src/mod.js", "license": "MIT", "author": "Chomp", - "akiVersion": "3.0.1", + "akiVersion": "3.1.0", "scripts": { "setup:environment": "npm i", "build:unzipped": "copyfiles -e \"./node_modules/**/*.*\" -e \"./dist/**/*.*\" -e \"./package-lock.json\" -e \"./tsconfig.json\" -e \"./README.txt\" -e \"./mod.code-workspace\" \"./**/*.*\" ./dist", diff --git a/TypeScript/2EditDatabase/src/mod.ts b/TypeScript/2EditDatabase/src/mod.ts index 40fdaa7..8289415 100644 --- a/TypeScript/2EditDatabase/src/mod.ts +++ b/TypeScript/2EditDatabase/src/mod.ts @@ -1,12 +1,11 @@ import { DependencyContainer } from "tsyringe"; -import { IMod } from "@spt-aki/models/external/mod"; -import { IAfterDBLoadMod } from "@spt-aki/models/external/IAfterDBLoadMod"; +import { IPostDBLoadMod } from "@spt-aki/models/external/IPostDBLoadMod"; import { DatabaseServer } from "@spt-aki/servers/DatabaseServer"; -class Mod implements IMod, IAfterDBLoadMod +class Mod implements IPostDBLoadMod { - public loadAfterDbInit(container: DependencyContainer): void + public postDBLoad(container: DependencyContainer): void { // get database from server const databaseServer = container.resolve("DatabaseServer"); @@ -25,14 +24,6 @@ class Mod implements IMod, IAfterDBLoadMod // get globals settings and set flea market min level to be 1 tables.globals.config.RagFair.minUserLevel = 1; } - - // not used for this example - public load(container: DependencyContainer): void - { return } - - // not used for this example - public delayedLoad(container: DependencyContainer): void - { return } } module.exports = { mod: new Mod() } \ No newline at end of file diff --git a/TypeScript/2EditDatabase/types/callbacks/GameCallbacks.d.ts b/TypeScript/2EditDatabase/types/callbacks/GameCallbacks.d.ts index d5cad76..06da1b5 100644 --- a/TypeScript/2EditDatabase/types/callbacks/GameCallbacks.d.ts +++ b/TypeScript/2EditDatabase/types/callbacks/GameCallbacks.d.ts @@ -2,6 +2,7 @@ import { GameController } from "../controllers/GameController"; import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse"; import { IGameEmptyCrcRequestData } from "../models/eft/game/IGameEmptyCrcRequestData"; +import { IReportNicknameRequestData } from "../models/eft/game/IReportNicknameRequestData"; import { IVersionValidateRequestData } from "../models/eft/game/IVersionValidateRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; @@ -20,5 +21,6 @@ declare class GameCallbacks { validateGameVersion(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; gameKeepalive(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; getVersion(url: string, info: IEmptyRequestData, sessionID: string): string; + reportNickname(url: string, info: IReportNicknameRequestData, sessionID: string): INullResponseData; } export { GameCallbacks }; diff --git a/TypeScript/2EditDatabase/types/callbacks/HealthCallbacks.d.ts b/TypeScript/2EditDatabase/types/callbacks/HealthCallbacks.d.ts index 8f7b89d..8672be7 100644 --- a/TypeScript/2EditDatabase/types/callbacks/HealthCallbacks.d.ts +++ b/TypeScript/2EditDatabase/types/callbacks/HealthCallbacks.d.ts @@ -13,6 +13,13 @@ export declare class HealthCallbacks { protected profileHelper: ProfileHelper; protected healthController: HealthController; constructor(httpResponse: HttpResponseUtil, profileHelper: ProfileHelper, healthController: HealthController); + /** + * Custom aki server request found in modules/HealthSynchronizer.cs + * @param url + * @param info HealthListener.Instance.CurrentHealth class + * @param sessionID session id + * @returns empty response, no data sent back to client + */ syncHealth(url: string, info: ISyncHealthRequestData, sessionID: string): IGetBodyResponseData; offraidEat(pmcData: IPmcData, body: IOffraidEatRequestData, sessionID: string): IItemEventRouterResponse; offraidHeal(pmcData: IPmcData, body: IOffraidHealRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/2EditDatabase/types/callbacks/InsuranceCallbacks.d.ts b/TypeScript/2EditDatabase/types/callbacks/InsuranceCallbacks.d.ts index 520d0eb..6819960 100644 --- a/TypeScript/2EditDatabase/types/callbacks/InsuranceCallbacks.d.ts +++ b/TypeScript/2EditDatabase/types/callbacks/InsuranceCallbacks.d.ts @@ -3,6 +3,7 @@ import { OnLoadOnUpdate } from "../di/OnLoadOnUpdate"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -17,7 +18,7 @@ export declare class InsuranceCallbacks extends OnLoadOnUpdate { protected insuranceConfig: IInsuranceConfig; constructor(insuranceController: InsuranceController, insuranceService: InsuranceService, httpResponse: HttpResponseUtil, configServer: ConfigServer); onLoad(): void; - getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; + getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; onUpdate(secondsSinceLastRun: number): boolean; getRoute(): string; diff --git a/TypeScript/2EditDatabase/types/callbacks/MatchCallbacks.d.ts b/TypeScript/2EditDatabase/types/callbacks/MatchCallbacks.d.ts index 083c1f5..158d8df 100644 --- a/TypeScript/2EditDatabase/types/callbacks/MatchCallbacks.d.ts +++ b/TypeScript/2EditDatabase/types/callbacks/MatchCallbacks.d.ts @@ -1,9 +1,13 @@ import { MatchController } from "../controllers/MatchController"; +import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { DatabaseServer } from "../servers/DatabaseServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; @@ -16,18 +20,18 @@ export declare class MatchCallbacks { constructor(httpResponse: HttpResponseUtil, jsonUtil: JsonUtil, matchController: MatchController, databaseServer: DatabaseServer); updatePing(url: string, info: any, sessionID: string): INullResponseData; exitMatch(url: string, info: any, sessionID: string): INullResponseData; - exitToMenu(url: string, info: any, sessionID: string): INullResponseData; - startGroupSearch(url: string, info: any, sessionID: string): INullResponseData; - stopGroupSearch(url: string, info: any, sessionID: string): INullResponseData; + exitToMenu(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + startGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + stopGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; sendGroupInvite(url: string, info: any, sessionID: string): INullResponseData; acceptGroupInvite(url: string, info: any, sessionID: string): INullResponseData; cancelGroupInvite(url: string, info: any, sessionID: string): INullResponseData; putMetrics(url: string, info: any, sessionID: string): INullResponseData; getProfile(url: string, info: IGetProfileRequestData, sessionID: string): IGetBodyResponseData; - serverAvailable(url: string, info: any, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; - joinMatch(url: string, info: any, sessionID: string): IGetBodyResponseData; + serverAvailable(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; + joinMatch(url: string, info: IJoinMatchRequestData, sessionID: string): IGetBodyResponseData; getMetrics(url: string, info: any, sessionID: string): IGetBodyResponseData; - getGroupStatus(url: string, info: any, sessionID: string): IGetBodyResponseData; + getGroupStatus(url: string, info: IGetGroupStatusRequestData, sessionID: string): IGetBodyResponseData; createGroup(url: string, info: any, sessionID: string): IGetBodyResponseData; deleteGroup(url: string, info: any, sessionID: string): INullResponseData; startOfflineRaid(url: string, info: IStartOfflineRaidRequestData, sessionID: string): INullResponseData; diff --git a/TypeScript/2EditDatabase/types/callbacks/ModCallbacks.d.ts b/TypeScript/2EditDatabase/types/callbacks/ModCallbacks.d.ts index 866abf7..58342dc 100644 --- a/TypeScript/2EditDatabase/types/callbacks/ModCallbacks.d.ts +++ b/TypeScript/2EditDatabase/types/callbacks/ModCallbacks.d.ts @@ -1,5 +1,5 @@ import { OnLoad } from "../di/OnLoad"; -import { DelayedModLoader } from "../loaders/DelayedModLoader"; +import { PostAkiModLoader } from "../loaders/PostAkiModLoader"; import { IHttpConfig } from "../models/spt/config/IHttpConfig"; import { IHttpServer } from "../models/spt/server/IHttpServer"; import { ILogger } from "../models/spt/utils/ILogger"; @@ -9,10 +9,10 @@ declare class ModCallbacks extends OnLoad { protected logger: ILogger; protected httpResponse: HttpResponseUtil; protected httpServer: IHttpServer; - protected modLoader: DelayedModLoader; + protected postAkiModLoader: PostAkiModLoader; protected configServer: ConfigServer; protected httpConfig: IHttpConfig; - constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, modLoader: DelayedModLoader, configServer: ConfigServer); + constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, postAkiModLoader: PostAkiModLoader, configServer: ConfigServer); onLoad(): void; getRoute(): string; sendBundle(sessionID: string, req: any, resp: any, body: any): void; diff --git a/TypeScript/2EditDatabase/types/callbacks/ProfileCallbacks.d.ts b/TypeScript/2EditDatabase/types/callbacks/ProfileCallbacks.d.ts index 116e7c5..6a86fc0 100644 --- a/TypeScript/2EditDatabase/types/callbacks/ProfileCallbacks.d.ts +++ b/TypeScript/2EditDatabase/types/callbacks/ProfileCallbacks.d.ts @@ -3,6 +3,7 @@ import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IGetMiniProfileRequestData } from "../models/eft/launcher/IGetMiniProfileRequestData"; +import { GetProfileStatusResponseData } from "../models/eft/profile/GetProfileStatusResponseData"; import { IProfileChangeNicknameRequestData } from "../models/eft/profile/IProfileChangeNicknameRequestData"; import { IProfileChangeVoiceRequestData } from "../models/eft/profile/IProfileChangeVoiceRequestData"; import { IProfileCreateRequestData } from "../models/eft/profile/IProfileCreateRequestData"; @@ -23,7 +24,14 @@ export declare class ProfileCallbacks { changeNickname(url: string, info: IProfileChangeNicknameRequestData, sessionID: string): IGetBodyResponseData; validateNickname(url: string, info: IValidateNicknameRequestData, sessionID: string): IGetBodyResponseData; getReservedNickname(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; - getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; + /** + * Called when creating a character, when you choose a character face/voice + * @param url + * @param info response (empty) + * @param sessionID + * @returns + */ + getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; searchFriend(url: string, info: ISearchFriendRequestData, sessionID: string): IGetBodyResponseData; getMiniProfile(url: string, info: IGetMiniProfileRequestData, sessionID: string): string; getAllMiniProfiles(url: string, info: any, sessionID: string): string; diff --git a/TypeScript/2EditDatabase/types/callbacks/RagfairCallbacks.d.ts b/TypeScript/2EditDatabase/types/callbacks/RagfairCallbacks.d.ts index d5bab8b..da782e1 100644 --- a/TypeScript/2EditDatabase/types/callbacks/RagfairCallbacks.d.ts +++ b/TypeScript/2EditDatabase/types/callbacks/RagfairCallbacks.d.ts @@ -9,6 +9,7 @@ import { IAddOfferRequestData } from "../models/eft/ragfair/IAddOfferRequestData import { IExtendOfferRequestData } from "../models/eft/ragfair/IExtendOfferRequestData"; import { IGetItemPriceResult } from "../models/eft/ragfair/IGetItemPriceResult"; import { IGetMarketPriceRequestData } from "../models/eft/ragfair/IGetMarketPriceRequestData"; +import { IGetOffersResult } from "../models/eft/ragfair/IGetOffersResult"; import { IRemoveOfferRequestData } from "../models/eft/ragfair/IRemoveOfferRequestData"; import { ISearchRequestData } from "../models/eft/ragfair/ISearchRequestData"; import { IRagfairConfig } from "../models/spt/config/IRagfairConfig"; @@ -28,7 +29,7 @@ export declare class RagfairCallbacks extends OnLoadOnUpdate { constructor(httpResponse: HttpResponseUtil, logger: ILogger, jsonUtil: JsonUtil, ragfairServer: RagfairServer, ragfairController: RagfairController, configServer: ConfigServer); onLoad(): void; getRoute(): string; - search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; + search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; getMarketPrice(url: string, info: IGetMarketPriceRequestData, sessionID: string): IGetBodyResponseData; getItemPrices(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; addOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/2EditDatabase/types/controllers/GameController.d.ts b/TypeScript/2EditDatabase/types/controllers/GameController.d.ts index 5f516de..f4c3d2c 100644 --- a/TypeScript/2EditDatabase/types/controllers/GameController.d.ts +++ b/TypeScript/2EditDatabase/types/controllers/GameController.d.ts @@ -28,6 +28,11 @@ export declare class GameController { protected addMissingRepeatableQuestsProperty(pmcProfile: IPmcData): void; protected addMissingWeaponRepairSkill(pmcProfile: IPmcData): void; protected addMissingAkiVersionTagToProfile(fullProfile: IAkiProfile): void; + /** + * In 18876 bsg changed the pockets tplid to be one that has 3 additional special slots + * @param pmcProfile + */ + protected updateProfilePocketsToNewId(pmcProfile: IPmcData): void; protected addMissingArmorRepairSkill(pmcProfile: IPmcData): void; protected fixNullTraderSalesSums(pmcProfile: IPmcData): void; protected removeDanglingBackendCounters(pmcProfile: IPmcData): void; diff --git a/TypeScript/2EditDatabase/types/controllers/InsuranceController.d.ts b/TypeScript/2EditDatabase/types/controllers/InsuranceController.d.ts index db2c567..af45442 100644 --- a/TypeScript/2EditDatabase/types/controllers/InsuranceController.d.ts +++ b/TypeScript/2EditDatabase/types/controllers/InsuranceController.d.ts @@ -3,6 +3,7 @@ import { ItemHelper } from "../helpers/ItemHelper"; import { ProfileHelper } from "../helpers/ProfileHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -33,6 +34,12 @@ export declare class InsuranceController { insuranceService: InsuranceService, configServer: ConfigServer); processReturn(): void; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; - cost(info: IGetInsuranceCostRequestData, sessionID: string): any; + /** + * Calculate insurance cost + * @param info request object + * @param sessionID session id + * @returns response object to send to client + */ + cost(info: IGetInsuranceCostRequestData, sessionID: string): IGetInsuranceCostResponseData; doAbsolutelyNothing(): void; } diff --git a/TypeScript/2EditDatabase/types/controllers/InventoryController.d.ts b/TypeScript/2EditDatabase/types/controllers/InventoryController.d.ts index b732aa9..f24ab62 100644 --- a/TypeScript/2EditDatabase/types/controllers/InventoryController.d.ts +++ b/TypeScript/2EditDatabase/types/controllers/InventoryController.d.ts @@ -24,6 +24,8 @@ import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRout import { ILogger } from "../models/spt/utils/ILogger"; import { ItemEventRouter } from "../routers/ItemEventRouter"; import { DatabaseServer } from "../servers/DatabaseServer"; +import { FenceService } from "../services/FenceService"; +import { RagfairOfferService } from "../services/RagfairOfferService"; import { HashUtil } from "../utils/HashUtil"; import { JsonUtil } from "../utils/JsonUtil"; export declare class InventoryController { @@ -31,12 +33,14 @@ export declare class InventoryController { protected hashUtil: HashUtil; protected jsonUtil: JsonUtil; protected databaseServer: DatabaseServer; + protected fenceService: FenceService; protected presetHelper: PresetHelper; protected inventoryHelper: InventoryHelper; + protected ragfairOfferService: RagfairOfferService; protected profileHelper: ProfileHelper; protected paymentHelper: PaymentHelper; protected itemEventRouter: ItemEventRouter; - constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); + constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, fenceService: FenceService, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, ragfairOfferService: RagfairOfferService, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); /** * Move Item * change location of item with parentId and slotId @@ -93,9 +97,19 @@ export declare class InventoryController { tagItem(pmcData: IPmcData, body: IInventoryTagRequestData, sessionID: string): IItemEventRouterResponse; bindItem(pmcData: IPmcData, body: IInventoryBindRequestData, sessionID: string): IItemEventRouterResponse; /** - * Handles examining of the item * + * Handles examining an item + * @param pmcData player profile + * @param body request object + * @param sessionID session id + * @returns response */ examineItem(pmcData: IPmcData, body: IInventoryExamineRequestData, sessionID: string): IItemEventRouterResponse; + /** + * Get the tplid of an item from the examine request object + * @param body response request + * @returns tplid + */ + protected getItemTpl(body: IInventoryExamineRequestData): string; readEncyclopedia(pmcData: IPmcData, body: IInventoryReadEncyclopediaRequestData, sessionID: string): IItemEventRouterResponse; /** * Handles sorting of Inventory. diff --git a/TypeScript/2EditDatabase/types/controllers/MatchController.d.ts b/TypeScript/2EditDatabase/types/controllers/MatchController.d.ts index c322d96..7ef3fcc 100644 --- a/TypeScript/2EditDatabase/types/controllers/MatchController.d.ts +++ b/TypeScript/2EditDatabase/types/controllers/MatchController.d.ts @@ -2,7 +2,10 @@ import { ProfileHelper } from "../helpers/ProfileHelper"; import { TraderHelper } from "../helpers/TraderHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { IInRaidConfig } from "../models/spt/config/IInRaidConfig"; import { IMatchConfig } from "../models/spt/config/IMatchConfig"; @@ -20,11 +23,11 @@ export declare class MatchController { constructor(saveServer: SaveServer, profileHelper: ProfileHelper, matchLocationService: MatchLocationService, traderHelper: TraderHelper, configServer: ConfigServer); getEnabled(): boolean; getProfile(info: IGetProfileRequestData): IPmcData[]; - protected getMatch(location: any): any; createGroup(sessionID: string, info: any): any; deleteGroup(info: any): void; - joinMatch(info: any, sessionID: string): any[]; - getGroupStatus(info: any): any; + joinMatch(info: IJoinMatchRequestData, sessionID: string): IJoinMatchResult[]; + protected getMatch(location: string): any; + getGroupStatus(info: IGetGroupStatusRequestData): any; startOfflineRaid(info: IStartOfflineRaidRequestData, sessionID: string): void; endOfflineRaid(info: IEndOfflineRaidRequestData, sessionID: string): void; } diff --git a/TypeScript/2EditDatabase/types/controllers/RagfairController.d.ts b/TypeScript/2EditDatabase/types/controllers/RagfairController.d.ts index c758593..c4ffc15 100644 --- a/TypeScript/2EditDatabase/types/controllers/RagfairController.d.ts +++ b/TypeScript/2EditDatabase/types/controllers/RagfairController.d.ts @@ -60,6 +60,8 @@ export declare class RagfairController { protected ragfairConfig: IRagfairConfig; constructor(logger: ILogger, timeUtil: TimeUtil, httpResponse: HttpResponseUtil, itemEventRouter: ItemEventRouter, ragfairServer: RagfairServer, ragfairPriceService: RagfairPriceService, databaseServer: DatabaseServer, itemHelper: ItemHelper, saveServer: SaveServer, ragfairSellHelper: RagfairSellHelper, ragfairTaxHelper: RagfairTaxHelper, ragfairSortHelper: RagfairSortHelper, ragfairOfferHelper: RagfairOfferHelper, profileHelper: ProfileHelper, paymentService: PaymentService, handbookHelper: HandbookHelper, paymentHelper: PaymentHelper, inventoryHelper: InventoryHelper, ragfairHelper: RagfairHelper, ragfairOfferService: RagfairOfferService, ragfairRequiredItemsService: RagfairRequiredItemsService, ragfairOfferGenerator: RagfairOfferGenerator, configServer: ConfigServer); getOffers(sessionID: string, info: ISearchRequestData): IGetOffersResult; + protected isLinkedSearch(info: ISearchRequestData): boolean; + protected isRequiredSearch(info: ISearchRequestData): boolean; update(): void; getItemPrice(info: IGetMarketPriceRequestData): IGetItemPriceResult; addPlayerOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/2EditDatabase/types/generators/BotWeaponGenerator.d.ts b/TypeScript/2EditDatabase/types/generators/BotWeaponGenerator.d.ts index a43b18c..dd3ad69 100644 --- a/TypeScript/2EditDatabase/types/generators/BotWeaponGenerator.d.ts +++ b/TypeScript/2EditDatabase/types/generators/BotWeaponGenerator.d.ts @@ -41,6 +41,13 @@ export declare class BotWeaponGenerator { * @returns */ protected generateExtraMagazines(weaponMods: Item[], weaponTemplate: ITemplateItem, magCounts: MinMax, ammoTpl: string, inventory: PmcInventory): void; + /** + * Get a randomised number of bullets for a specific magazine + * @param magCounts min and max count of magazines + * @param magTemplate magazine to generate bullet count for + * @returns bullet count number + */ + protected getRandomisedBulletCount(magCounts: MinMax, magTemplate: ITemplateItem): number; /** * Get a randomised count of magazines * @param magCounts min and max value returned value can be between diff --git a/TypeScript/2EditDatabase/types/generators/RagfairOfferGenerator.d.ts b/TypeScript/2EditDatabase/types/generators/RagfairOfferGenerator.d.ts index de53ea9..6645c8d 100644 --- a/TypeScript/2EditDatabase/types/generators/RagfairOfferGenerator.d.ts +++ b/TypeScript/2EditDatabase/types/generators/RagfairOfferGenerator.d.ts @@ -18,6 +18,7 @@ import { JsonUtil } from "../utils/JsonUtil"; import { RandomUtil } from "../utils/RandomUtil"; import { TimeUtil } from "../utils/TimeUtil"; import { RagfairAssortGenerator } from "./RagfairAssortGenerator"; +import { RagfairCategoriesService } from "../services/RagfairCategoriesService"; export declare class RagfairOfferGenerator { protected logger: ILogger; protected jsonUtil: JsonUtil; @@ -31,11 +32,12 @@ export declare class RagfairOfferGenerator { protected ragfairAssortGenerator: RagfairAssortGenerator; protected ragfairOfferService: RagfairOfferService; protected ragfairPriceService: RagfairPriceService; + protected ragfairCategoriesService: RagfairCategoriesService; protected fenceService: FenceService; protected itemHelper: ItemHelper; protected configServer: ConfigServer; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); + constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, ragfairCategoriesService: RagfairCategoriesService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); createOffer(userID: string, time: number, items: Item[], barterScheme: IBarterScheme[], loyalLevel: number, price: number, sellInOnePiece?: boolean): IRagfairOffer; protected getTraderId(userID: string): string; protected getRating(userID: string): number; diff --git a/TypeScript/2EditDatabase/types/helpers/BotGeneratorHelper.d.ts b/TypeScript/2EditDatabase/types/helpers/BotGeneratorHelper.d.ts index e4b0c11..243e7a8 100644 --- a/TypeScript/2EditDatabase/types/helpers/BotGeneratorHelper.d.ts +++ b/TypeScript/2EditDatabase/types/helpers/BotGeneratorHelper.d.ts @@ -29,6 +29,12 @@ export declare class BotGeneratorHelper { protected botConfig: IBotConfig; constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, probabilityHelper: ProbabilityHelper, databaseServer: DatabaseServer, durabilityLimitsHelper: DurabilityLimitsHelper, itemHelper: ItemHelper, inventoryHelper: InventoryHelper, containerHelper: ContainerHelper, configServer: ConfigServer); generateModsForItem(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem, modSpawnChances: ModsChances, isPmc?: boolean): Item[]; + /** + * Is this magazine cylinder related (revolvers and grenade launchers) + * @param magazineParentName the name of the magazines parent + * @returns true if it is cylinder related + */ + magazineIsCylinderRelated(magazineParentName: string): boolean; /** * Get a list of non black-listed cartridges from the PMC bot config * @param modSlot mod item slot @@ -69,6 +75,12 @@ export declare class BotGeneratorHelper { * @param {object} parentTemplate The CylinderMagazine's template */ protected fillCamora(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem): void; + /** + * Take a record of camoras and merge the compatable shells into one array + * @param camorasWithShells camoras we want to merge into one array + * @returns string array of shells fro luitple camora sources + */ + protected mergeCamoraPoolsTogether(camorasWithShells: Record): string[]; generateExtraPropertiesForItem(itemTemplate: ITemplateItem, botRole?: any): { upd?: Upd; }; diff --git a/TypeScript/2EditDatabase/types/loaders/AfterDbModLoader.d.ts b/TypeScript/2EditDatabase/types/loaders/AfterDbModLoader.d.ts deleted file mode 100644 index a9fc286..0000000 --- a/TypeScript/2EditDatabase/types/loaders/AfterDbModLoader.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { OnLoad } from "../di/OnLoad"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class AfterDbModLoader implements OnLoad { - protected initialModLoader: InitialModLoader; - constructor(initialModLoader: InitialModLoader); - onLoad(): void; - getRoute(): string; - getModPath(mod: string): string; - protected executeMods(container: DependencyContainer): void; -} diff --git a/TypeScript/2EditDatabase/types/loaders/DelayedModLoader.d.ts b/TypeScript/2EditDatabase/types/loaders/DelayedModLoader.d.ts deleted file mode 100644 index 2a05604..0000000 --- a/TypeScript/2EditDatabase/types/loaders/DelayedModLoader.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { HandbookController } from "../controllers/HandbookController"; -import { IModLoader } from "../models/spt/mod/IModLoader"; -import { ModCompilerService } from "../services/ModCompilerService"; -import { VFS } from "../utils/VFS"; -import { BundleLoader } from "./BundleLoader"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class DelayedModLoader implements IModLoader { - protected bundleLoader: BundleLoader; - protected handbookController: HandbookController; - protected vfs: VFS; - protected modCompilerService: ModCompilerService; - protected initialModLoader: InitialModLoader; - constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, initialModLoader: InitialModLoader); - getBundles(local: boolean): string; - getBundle(key: string, local: boolean): void; - getModPath(mod: string): string; - load(): void; - protected executeMods(container: DependencyContainer): void; - protected addBundles(): void; -} diff --git a/TypeScript/2EditDatabase/types/loaders/InitialModLoader.d.ts b/TypeScript/2EditDatabase/types/loaders/InitialModLoader.d.ts deleted file mode 100644 index 9a99dcc..0000000 --- a/TypeScript/2EditDatabase/types/loaders/InitialModLoader.d.ts +++ /dev/null @@ -1,64 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { ICoreConfig } from "../models/spt/config/ICoreConfig"; -import { ModLoader } from "../models/spt/mod/IMod"; -import { IModLoader } from "../models/spt/mod/IModLoader"; -import { IPackageJsonData } from "../models/spt/mod/IPackageJsonData"; -import { ILogger } from "../models/spt/utils/ILogger"; -import { ConfigServer } from "../servers/ConfigServer"; -import { ModCompilerService } from "../services/ModCompilerService"; -import { JsonUtil } from "../utils/JsonUtil"; -import { VFS } from "../utils/VFS"; -import { BundleLoader } from "./BundleLoader"; -export declare class InitialModLoader implements IModLoader { - protected logger: ILogger; - protected vfs: VFS; - protected jsonUtil: JsonUtil; - protected modCompilerService: ModCompilerService; - protected bundleLoader: BundleLoader; - protected configServer: ConfigServer; - protected static container: DependencyContainer; - protected readonly basepath = "user/mods/"; - protected imported: Record; - protected akiConfig: ICoreConfig; - constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, configServer: ConfigServer); - load(container: DependencyContainer): Promise; - getBundles(local: boolean): string; - getBundle(key: string, local: boolean): void; - /** - * Returns a list of mods with preserved load order - * @returns Array of mod names in load order - */ - getImportedModsNames(): string[]; - getModPath(mod: string): string; - protected importClass(name: string, filepath: string, container: DependencyContainer): void; - protected importMods(): Promise; - /** - * - * @param mods Get an array of broken/invalid mods by name - * @returns Mod names array - */ - protected getBrokenMods(mods: string[]): string[]; - /** - * Get packageJson data for mods - * @param mods mods to get packageJson for - * @returns dictionary - */ - protected getModsPackageData(mods: string[]): Record; - /** - * Does mod have "delayedLoad(" string in its entry class - * @param modFolderName folder name - * @param modToValidate package.json details - * @returns boolean - */ - protected isModSpt300Compatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; - protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; - protected executeMods(container: DependencyContainer): void; - sortModsLoadOrder(): string[]; - protected addMod(mod: string): Promise; - protected areModDependenciesFulfilled(pkg: IPackageJsonData, loadedMods: Record): boolean; - protected isModCompatible(mod: IPackageJsonData, loadedMods: Record): boolean; - protected validMod(mod: string): boolean; - protected getLoadOrderRecursive(mod: string, result: Record, visited: Record): void; - protected getLoadOrder(mods: Record): Record; - getContainer(): DependencyContainer; -} diff --git a/TypeScript/2EditDatabase/types/loaders/PostAkiModLoader.d.ts b/TypeScript/2EditDatabase/types/loaders/PostAkiModLoader.d.ts new file mode 100644 index 0000000..edc6e5d --- /dev/null +++ b/TypeScript/2EditDatabase/types/loaders/PostAkiModLoader.d.ts @@ -0,0 +1,21 @@ +import { DependencyContainer } from "tsyringe"; +import { HandbookController } from "../controllers/HandbookController"; +import { IModLoader } from "../models/spt/mod/IModLoader"; +import { ModCompilerService } from "../services/ModCompilerService"; +import { VFS } from "../utils/VFS"; +import { BundleLoader } from "./BundleLoader"; +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostAkiModLoader implements IModLoader { + protected bundleLoader: BundleLoader; + protected handbookController: HandbookController; + protected vfs: VFS; + protected modCompilerService: ModCompilerService; + protected preAkiModLoader: PreAkiModLoader; + constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, preAkiModLoader: PreAkiModLoader); + getBundles(local: boolean): string; + getBundle(key: string, local: boolean): void; + getModPath(mod: string): string; + load(): void; + protected executeMods(container: DependencyContainer): void; + protected addBundles(): void; +} diff --git a/TypeScript/2EditDatabase/types/loaders/PostDBModLoader.d.ts b/TypeScript/2EditDatabase/types/loaders/PostDBModLoader.d.ts new file mode 100644 index 0000000..5101b7b --- /dev/null +++ b/TypeScript/2EditDatabase/types/loaders/PostDBModLoader.d.ts @@ -0,0 +1,11 @@ +import { DependencyContainer } from "tsyringe"; +import { OnLoad } from "../di/OnLoad"; +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostDBModLoader implements OnLoad { + protected preAkiModLoader: PreAkiModLoader; + constructor(preAkiModLoader: PreAkiModLoader); + onLoad(): void; + getRoute(): string; + getModPath(mod: string): string; + protected executeMods(container: DependencyContainer): void; +} diff --git a/TypeScript/2EditDatabase/types/loaders/PreAkiModLoader.d.ts b/TypeScript/2EditDatabase/types/loaders/PreAkiModLoader.d.ts new file mode 100644 index 0000000..6ded3c6 --- /dev/null +++ b/TypeScript/2EditDatabase/types/loaders/PreAkiModLoader.d.ts @@ -0,0 +1,64 @@ +import { DependencyContainer } from "tsyringe"; +import { ICoreConfig } from "../models/spt/config/ICoreConfig"; +import { ModLoader } from "../models/spt/mod/IMod"; +import { IModLoader } from "../models/spt/mod/IModLoader"; +import { IPackageJsonData } from "../models/spt/mod/IPackageJsonData"; +import { ILogger } from "../models/spt/utils/ILogger"; +import { ConfigServer } from "../servers/ConfigServer"; +import { ModCompilerService } from "../services/ModCompilerService"; +import { JsonUtil } from "../utils/JsonUtil"; +import { VFS } from "../utils/VFS"; +import { BundleLoader } from "./BundleLoader"; +export declare class PreAkiModLoader implements IModLoader { + protected logger: ILogger; + protected vfs: VFS; + protected jsonUtil: JsonUtil; + protected modCompilerService: ModCompilerService; + protected bundleLoader: BundleLoader; + protected configServer: ConfigServer; + protected static container: DependencyContainer; + protected readonly basepath = "user/mods/"; + protected imported: Record; + protected akiConfig: ICoreConfig; + constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, configServer: ConfigServer); + load(container: DependencyContainer): Promise; + getBundles(local: boolean): string; + getBundle(key: string, local: boolean): void; + /** + * Returns a list of mods with preserved load order + * @returns Array of mod names in load order + */ + getImportedModsNames(): string[]; + getModPath(mod: string): string; + protected importClass(name: string, filepath: string, container: DependencyContainer): void; + protected importMods(): Promise; + /** + * + * @param mods Get an array of broken/invalid mods by name + * @returns Mod names array + */ + protected getBrokenMods(mods: string[]): string[]; + /** + * Get packageJson data for mods + * @param mods mods to get packageJson for + * @returns dictionary + */ + protected getModsPackageData(mods: string[]): Record; + /** + * Does mod have "delayedLoad(" string in its entry class + * @param modFolderName folder name + * @param modToValidate package.json details + * @returns boolean + */ + protected isModSpt3XXCompatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; + protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; + protected executeMods(container: DependencyContainer): void; + sortModsLoadOrder(): string[]; + protected addMod(mod: string): Promise; + protected areModDependenciesFulfilled(pkg: IPackageJsonData, loadedMods: Record): boolean; + protected isModCompatible(mod: IPackageJsonData, loadedMods: Record): boolean; + protected validMod(mod: string): boolean; + protected getLoadOrderRecursive(mod: string, result: Record, visited: Record): void; + protected getLoadOrder(mods: Record): Record; + getContainer(): DependencyContainer; +} diff --git a/TypeScript/2EditDatabase/types/models/eft/common/IGlobals.d.ts b/TypeScript/2EditDatabase/types/models/eft/common/IGlobals.d.ts index 456895c..9d28dbc 100644 --- a/TypeScript/2EditDatabase/types/models/eft/common/IGlobals.d.ts +++ b/TypeScript/2EditDatabase/types/models/eft/common/IGlobals.d.ts @@ -1128,8 +1128,11 @@ export interface Inertia { SprintAccelerationLimits: xyz; SideTime: xyz; DiagonalTime: xyz; + MaxTimeWithoutInput: xyz; MinDirectionBlendTime: number; - MoveTime: number; + MoveTimeRange: xyz; + ProneDirectionAccelerationRange: xyz; + ProneSpeedAccelerationRange: xyz; MinMovementAccelerationRangeRight: xyz; MaxMovementAccelerationRangeRight: xyz; } diff --git a/TypeScript/2EditDatabase/types/models/eft/common/ILocationBase.d.ts b/TypeScript/2EditDatabase/types/models/eft/common/ILocationBase.d.ts index ad48d32..b1dd448 100644 --- a/TypeScript/2EditDatabase/types/models/eft/common/ILocationBase.d.ts +++ b/TypeScript/2EditDatabase/types/models/eft/common/ILocationBase.d.ts @@ -26,6 +26,7 @@ export interface ILocationBase { DisabledForScav: boolean; DisabledScavExits: string; Enabled: boolean; + EnableCoop: boolean; GlobalLootChanceModifier: number; IconX: number; IconY: number; @@ -41,6 +42,7 @@ export interface ILocationBase { MinDistToFreePoint: number; MinMaxBots: MinMaxBot[]; MinPlayers: number; + MaxCoopGroup: number; Name: string; NewSpawn: boolean; OcculsionCullingEnabled: boolean; @@ -48,6 +50,8 @@ export interface ILocationBase { OpenZones: string; Preview: Preview; RequiredPlayerLevel: number; + PmcMaxPlayersInGroup: number; + ScavMaxPlayersInGroup: number; Rules: string; SafeLocation: boolean; Scene: Scene; @@ -55,7 +59,8 @@ export interface ILocationBase { UnixDateTime: number; _Id: string; doors: any[]; - escape_time_limit: number; + EscapeTimeLimit: number; + EscapeTimeLimitCoop: number; exit_access_time: number; exit_count: number; exit_time: number; @@ -63,6 +68,7 @@ export interface ILocationBase { filter_ex: string[]; limits: ILimit[]; matching_min_seconds: number; + GenerateLocalLootCache: boolean; maxItemCountInLocation: MaxItemCountInLocation[]; sav_summon_seconds: number; tmp_location_field_remove_me: number; @@ -106,6 +112,7 @@ export interface BossLocationSpawn { BossName: string; BossPlayer: boolean; BossZone: string; + RandomTimeSpawn: boolean; Time: number; TriggerId: string; TriggerName: string; diff --git a/TypeScript/2EditDatabase/types/models/eft/common/IPmcData.d.ts b/TypeScript/2EditDatabase/types/models/eft/common/IPmcData.d.ts index adc2aa5..56bf07f 100644 --- a/TypeScript/2EditDatabase/types/models/eft/common/IPmcData.d.ts +++ b/TypeScript/2EditDatabase/types/models/eft/common/IPmcData.d.ts @@ -6,7 +6,7 @@ import { MemberCategory } from "../../enums/MemberCategory"; export interface IPmcData { _id: string; aid: string; - savage: string; + savage?: string; Info: Info; Customization: Customization; Health: Health; @@ -28,13 +28,6 @@ export interface IPmcData { CarExtractCounts: CarExtractCounts; SurvivorClass: SurvivorClass; } -export declare enum SurvivorClass { - Unknown = 0, - Neutralizer = 1, - Marauder = 2, - Paramedic = 3, - Survivor = 4 -} export interface Info { EntryPoint: string; Nickname: string; @@ -56,6 +49,9 @@ export interface Info { Bans: IBan[]; BannedState: boolean; BannedUntil: number; + NeedWipeOptions: any[]; + lastCompletedWipe: LastCompleted; + lastCompletedEvent?: LastCompleted; } export interface Settings { Role: string; @@ -339,3 +335,13 @@ export interface RagfairInfo { } export interface CarExtractCounts { } +export declare enum SurvivorClass { + Unknown = 0, + Neutralizer = 1, + Marauder = 2, + Paramedic = 3, + Survivor = 4 +} +export interface LastCompleted { + $oid: string; +} diff --git a/TypeScript/2EditDatabase/types/models/eft/common/tables/IProfileTemplate.d.ts b/TypeScript/2EditDatabase/types/models/eft/common/tables/IProfileTemplate.d.ts new file mode 100644 index 0000000..c445e92 --- /dev/null +++ b/TypeScript/2EditDatabase/types/models/eft/common/tables/IProfileTemplate.d.ts @@ -0,0 +1,23 @@ +import { Dialogue, WeaponBuild } from "../../profile/IAkiProfile"; +import { IPmcData } from "../IPmcData"; +export interface IProfileTemplates { + Standard: IProfileSides; + "Left Behind": IProfileSides; + "Prepare To Escape": IProfileSides; + "Edge Of Darkness": IProfileSides; +} +export interface IProfileSides { + usec: TemplateSide; + bear: TemplateSide; +} +export interface TemplateSide { + character: IPmcData; + suits: string[]; + dialogues: Record; + weaponbuilds: WeaponBuild[]; + trader: ProfileTraderTemplate; +} +export interface ProfileTraderTemplate { + initialStanding: number; + initialSalesSum: number; +} diff --git a/TypeScript/2EditDatabase/types/models/eft/common/tables/IQuest.d.ts b/TypeScript/2EditDatabase/types/models/eft/common/tables/IQuest.d.ts index e1fc888..942339b 100644 --- a/TypeScript/2EditDatabase/types/models/eft/common/tables/IQuest.d.ts +++ b/TypeScript/2EditDatabase/types/models/eft/common/tables/IQuest.d.ts @@ -23,6 +23,7 @@ export interface IQuest { status: string; KeyQuest: boolean; changeQuestMessageText: string; + side: string; } export interface Conditions { Started: AvailableForConditions[]; @@ -56,6 +57,7 @@ export interface AvailableForProps { plantTime?: number; zoneId?: string; type?: boolean; + countInRaid?: boolean; } export interface AvailableForCounter { id: string; diff --git a/TypeScript/2EditDatabase/types/models/eft/common/tables/ITemplateItem.d.ts b/TypeScript/2EditDatabase/types/models/eft/common/tables/ITemplateItem.d.ts index 934ea7d..23a1a14 100644 --- a/TypeScript/2EditDatabase/types/models/eft/common/tables/ITemplateItem.d.ts +++ b/TypeScript/2EditDatabase/types/models/eft/common/tables/ITemplateItem.d.ts @@ -50,6 +50,7 @@ export interface Props { UnlootableFromSide?: string[]; AnimationVariantsNumber?: number; DiscardingBlock?: boolean; + DropSoundType?: string; RagFairCommissionModifier?: number; IsAlwaysAvailableForInsurance?: boolean; DiscardLimit?: number; @@ -89,7 +90,7 @@ export interface Props { SightModesCount?: number; OpticCalibrationDistances?: number[]; ScopesCount?: number; - AimSensitivity: any; + AimSensitivity?: number | number[][]; Zooms?: number[][]; CalibrationDistances?: number[][]; Intensity?: number; @@ -200,6 +201,9 @@ export interface Props { MinRepairDegradation?: number; MaxRepairDegradation?: number; IronSightRange?: number; + IsFlareGun?: boolean; + IsGrenadeLauncher?: boolean; + IsOneoff?: boolean; MustBoltBeOpennedForExternalReload?: boolean; MustBoltBeOpennedForInternalReload?: boolean; BoltAction?: boolean; diff --git a/TypeScript/2EditDatabase/types/models/eft/game/IReportNicknameRequestData.d.ts b/TypeScript/2EditDatabase/types/models/eft/game/IReportNicknameRequestData.d.ts new file mode 100644 index 0000000..087c58b --- /dev/null +++ b/TypeScript/2EditDatabase/types/models/eft/game/IReportNicknameRequestData.d.ts @@ -0,0 +1,3 @@ +export interface IReportNicknameRequestData { + uid: string; +} diff --git a/TypeScript/2EditDatabase/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts b/TypeScript/2EditDatabase/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts new file mode 100644 index 0000000..bf209c6 --- /dev/null +++ b/TypeScript/2EditDatabase/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts @@ -0,0 +1 @@ +export declare type IGetInsuranceCostResponseData = Record>; diff --git a/TypeScript/2EditDatabase/types/models/eft/match/IGetGroupStatusRequestData.d.ts b/TypeScript/2EditDatabase/types/models/eft/match/IGetGroupStatusRequestData.d.ts new file mode 100644 index 0000000..cbdb77f --- /dev/null +++ b/TypeScript/2EditDatabase/types/models/eft/match/IGetGroupStatusRequestData.d.ts @@ -0,0 +1,8 @@ +export interface IGetGroupStatusRequestData { + location: string; + savage: boolean; + dt: string; + keyId: string; + raidMode: string; + startInGroup: boolean; +} diff --git a/TypeScript/2EditDatabase/types/models/eft/match/IJoinMatchRequestData.d.ts b/TypeScript/2EditDatabase/types/models/eft/match/IJoinMatchRequestData.d.ts new file mode 100644 index 0000000..cd34f7b --- /dev/null +++ b/TypeScript/2EditDatabase/types/models/eft/match/IJoinMatchRequestData.d.ts @@ -0,0 +1,12 @@ +export interface IJoinMatchRequestData { + location: string; + savage: boolean; + dt: string; + servers: Server[]; + keyId: string; +} +export interface Server { + ping: number; + ip: string; + port: string; +} diff --git a/TypeScript/2EditDatabase/types/models/eft/match/IJoinMatchResult.d.ts b/TypeScript/2EditDatabase/types/models/eft/match/IJoinMatchResult.d.ts new file mode 100644 index 0000000..df695f4 --- /dev/null +++ b/TypeScript/2EditDatabase/types/models/eft/match/IJoinMatchResult.d.ts @@ -0,0 +1,11 @@ +export interface IJoinMatchResult { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; + version: string; + location: string; + gamemode: string; + shortid: string; +} diff --git a/TypeScript/2EditDatabase/types/models/eft/match/IStartOffineRaidRequestData.d.ts b/TypeScript/2EditDatabase/types/models/eft/match/IStartOffineRaidRequestData.d.ts index 84bccc8..7cc457c 100644 --- a/TypeScript/2EditDatabase/types/models/eft/match/IStartOffineRaidRequestData.d.ts +++ b/TypeScript/2EditDatabase/types/models/eft/match/IStartOffineRaidRequestData.d.ts @@ -1,6 +1,5 @@ export interface IStartOfflineRaidRequestData { locationName: string; - entryPoint: string; startTime: number; dateTime: string; gameSettings: GameSettings; diff --git a/TypeScript/2EditDatabase/types/models/eft/profile/GetProfileStatusResponseData.d.ts b/TypeScript/2EditDatabase/types/models/eft/profile/GetProfileStatusResponseData.d.ts new file mode 100644 index 0000000..eee9b4f --- /dev/null +++ b/TypeScript/2EditDatabase/types/models/eft/profile/GetProfileStatusResponseData.d.ts @@ -0,0 +1,11 @@ +export interface GetProfileStatusResponseData { + maxPveCountExceeded: false; + profiles: ProfileData[]; +} +export interface ProfileData { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; +} diff --git a/TypeScript/2EditDatabase/types/models/eft/ragfair/IGetOffersResult.d.ts b/TypeScript/2EditDatabase/types/models/eft/ragfair/IGetOffersResult.d.ts index 1c11422..fbc631d 100644 --- a/TypeScript/2EditDatabase/types/models/eft/ragfair/IGetOffersResult.d.ts +++ b/TypeScript/2EditDatabase/types/models/eft/ragfair/IGetOffersResult.d.ts @@ -1,6 +1,6 @@ import { IRagfairOffer } from "./IRagfairOffer"; export interface IGetOffersResult { - categories: Record; + categories?: Record; offers: IRagfairOffer[]; offersCount: number; selectedCategory: string; diff --git a/TypeScript/2EditDatabase/types/models/enums/QuestStatus.d.ts b/TypeScript/2EditDatabase/types/models/enums/QuestStatus.d.ts deleted file mode 100644 index 6335c73..0000000 --- a/TypeScript/2EditDatabase/types/models/enums/QuestStatus.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -export declare enum QuestStatus { - Locked = 0, - AvailableForStart = 1, - Started = 2, - AvailableForFinish = 3, - Success = 4, - Fail = 5, - FailRestartable = 6, - MarkedAsFailed = 7 -} diff --git a/TypeScript/2EditDatabase/types/models/external/IAfterDBLoadMod.d.ts b/TypeScript/2EditDatabase/types/models/external/IAfterDBLoadMod.d.ts deleted file mode 100644 index 7f08b9e..0000000 --- a/TypeScript/2EditDatabase/types/models/external/IAfterDBLoadMod.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IAfterDBLoadMod { - loadAfterDbInit(container: DependencyContainer): void; -} diff --git a/TypeScript/2EditDatabase/types/models/external/IPostAkiLoadMod.d.ts b/TypeScript/2EditDatabase/types/models/external/IPostAkiLoadMod.d.ts new file mode 100644 index 0000000..f6950e8 --- /dev/null +++ b/TypeScript/2EditDatabase/types/models/external/IPostAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostAkiLoadMod { + postAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/2EditDatabase/types/models/external/IPostDBLoadMod.d.ts b/TypeScript/2EditDatabase/types/models/external/IPostDBLoadMod.d.ts new file mode 100644 index 0000000..ca7c682 --- /dev/null +++ b/TypeScript/2EditDatabase/types/models/external/IPostDBLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostDBLoadMod { + postDBLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/2EditDatabase/types/models/external/IPreAkiLoadMod.d.ts b/TypeScript/2EditDatabase/types/models/external/IPreAkiLoadMod.d.ts new file mode 100644 index 0000000..ae7579e --- /dev/null +++ b/TypeScript/2EditDatabase/types/models/external/IPreAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPreAkiLoadMod { + preAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/2EditDatabase/types/models/external/mod.d.ts b/TypeScript/2EditDatabase/types/models/external/mod.d.ts deleted file mode 100644 index 47939e9..0000000 --- a/TypeScript/2EditDatabase/types/models/external/mod.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IMod { - load(container: DependencyContainer): void; - delayedLoad(container: DependencyContainer): void; -} diff --git a/TypeScript/2EditDatabase/types/models/spt/config/IBotConfig.d.ts b/TypeScript/2EditDatabase/types/models/spt/config/IBotConfig.d.ts index 5fb9d93..f8cf39b 100644 --- a/TypeScript/2EditDatabase/types/models/spt/config/IBotConfig.d.ts +++ b/TypeScript/2EditDatabase/types/models/spt/config/IBotConfig.d.ts @@ -18,6 +18,7 @@ export interface PresetBatch { bossKojaniy: number; bossSanitar: number; bossTagilla: number; + bossKnight: number; bossTest: number; cursedAssault: number; followerBully: number; @@ -28,6 +29,8 @@ export interface PresetBatch { followerKojaniy: number; followerSanitar: number; followerTagilla: number; + followerBirdEye: number; + followerBigPipe: number; followerTest: number; marksman: number; pmcBot: number; diff --git a/TypeScript/2EditDatabase/types/models/spt/config/IRagfairConfig.d.ts b/TypeScript/2EditDatabase/types/models/spt/config/IRagfairConfig.d.ts index 2d151ca..8518252 100644 --- a/TypeScript/2EditDatabase/types/models/spt/config/IRagfairConfig.d.ts +++ b/TypeScript/2EditDatabase/types/models/spt/config/IRagfairConfig.d.ts @@ -30,6 +30,7 @@ export interface Dynamic { expiredOfferThreshold: number; offerItemCount: MinMax; price: MinMax; + presetPrice: MinMax; endTimeSeconds: MinMax; condition: Condition; stackablePercent: MinMax; diff --git a/TypeScript/2EditDatabase/types/models/spt/server/IDatabaseTables.d.ts b/TypeScript/2EditDatabase/types/models/spt/server/IDatabaseTables.d.ts index e0d3fdd..9978459 100644 --- a/TypeScript/2EditDatabase/types/models/spt/server/IDatabaseTables.d.ts +++ b/TypeScript/2EditDatabase/types/models/spt/server/IDatabaseTables.d.ts @@ -6,6 +6,7 @@ import { ICustomizationItem } from "../../eft/common/tables/ICustomizationItem"; import { IHandbookBase } from "../../eft/common/tables/IHandbookBase"; import { ILootBase } from "../../eft/common/tables/ILootBase"; import { IMatch } from "../../eft/common/tables/IMatch"; +import { IProfileTemplates } from "../../eft/common/tables/IProfileTemplate"; import { IQuest } from "../../eft/common/tables/IQuest"; import { IRepeatableQuestDatabase } from "../../eft/common/tables/IRepeatableQuests"; import { ITemplateItem } from "../../eft/common/tables/ITemplateItem"; @@ -39,10 +40,13 @@ export interface IDatabaseTables { items: Record; quests: IQuest[]; repeatableQuests: IRepeatableQuestDatabase; + /** DEPRECATED - Items file found in the client, massivly out of date compared to templates.items, try not to use this, remove ASAP*/ clientItems: Record; handbook: IHandbookBase; customization: Record; - profiles: any; + /** The profile templates listed in the launcher on profile creation, split by account type (e.g. Standard) then side (e.g. bear/usec) */ + profiles: IProfileTemplates; + /** Flea prices of items - gathered from online flea market dump */ prices: Record; }; traders?: Record; diff --git a/TypeScript/2EditDatabase/types/servers/RagfairServer.d.ts b/TypeScript/2EditDatabase/types/servers/RagfairServer.d.ts index 60c92b5..bc86cdb 100644 --- a/TypeScript/2EditDatabase/types/servers/RagfairServer.d.ts +++ b/TypeScript/2EditDatabase/types/servers/RagfairServer.d.ts @@ -17,7 +17,8 @@ export declare class RagfairServer { constructor(logger: ILogger, ragfairOfferGenerator: RagfairOfferGenerator, ragfairOfferService: RagfairOfferService, ragfairCategoriesService: RagfairCategoriesService, ragfairRequiredItemsService: RagfairRequiredItemsService, configServer: ConfigServer); load(): void; update(): void; - getCategories(): Record; + getAllCategories(): Record; + getBespokeCategories(offers: IRagfairOffer[]): Record; /** * Disable/Hide an offer from flea * @param offerId diff --git a/TypeScript/2EditDatabase/types/services/RagfairCategoriesService.d.ts b/TypeScript/2EditDatabase/types/services/RagfairCategoriesService.d.ts index 09956cc..83910e5 100644 --- a/TypeScript/2EditDatabase/types/services/RagfairCategoriesService.d.ts +++ b/TypeScript/2EditDatabase/types/services/RagfairCategoriesService.d.ts @@ -1,10 +1,40 @@ import { IRagfairOffer } from "../models/eft/ragfair/IRagfairOffer"; +import { ILogger } from "../models/spt/utils/ILogger"; export declare class RagfairCategoriesService { - updateCategories(offers: IRagfairOffer[]): void; + protected logger: ILogger; protected categories: Record; - getCategories(): Record; - getCategoryByItemId(itemId: string): number; - resetCategories(): void; - setCategoryValue(itemId: string, newValue: number): void; - incrementCategory(itemId: string): void; + constructor(logger: ILogger); + /** + * Get all flea categories and their count of offers + * @returns item categories and count + */ + getAllCategories(): Record; + /** + * With the supplied items, get custom categories + * @returns a custom list of categories + */ + getBespokeCategories(offers: IRagfairOffer[]): Record; + /** + * Take an array of ragfair offers and create a dictionary of items with thier corrisponding offer count + * @param offers ragfair offers + * @returns categories and count + */ + protected processOffersIntoCategories(offers: IRagfairOffer[]): Record; + /** + * Increment or decrement a category array + * @param offer offer to process + * @param categories categories to update + * @param increment should item be incremented or decremented + */ + protected addOrIncrementCategory(offer: IRagfairOffer, categories: Record, increment?: boolean): void; + /** + * Increase category count by 1 + * @param offer + */ + incrementCategory(offer: IRagfairOffer): void; + /** + * Reduce category count by 1 + * @param offer + */ + decrementCategory(offer: IRagfairOffer): void; } diff --git a/TypeScript/2EditDatabase/types/services/RagfairOfferService.d.ts b/TypeScript/2EditDatabase/types/services/RagfairOfferService.d.ts index 7afbf8c..7398a8f 100644 --- a/TypeScript/2EditDatabase/types/services/RagfairOfferService.d.ts +++ b/TypeScript/2EditDatabase/types/services/RagfairOfferService.d.ts @@ -11,12 +11,14 @@ import { DatabaseServer } from "../servers/DatabaseServer"; import { SaveServer } from "../servers/SaveServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; import { TimeUtil } from "../utils/TimeUtil"; +import { RagfairCategoriesService } from "./RagfairCategoriesService"; export declare class RagfairOfferService { protected logger: ILogger; protected timeUtil: TimeUtil; protected databaseServer: DatabaseServer; protected saveServer: SaveServer; protected ragfairServerHelper: RagfairServerHelper; + protected ragfairCategoriesService: RagfairCategoriesService; protected profileHelper: ProfileHelper; protected itemEventRouter: ItemEventRouter; protected httpResponse: HttpResponseUtil; @@ -26,12 +28,16 @@ export declare class RagfairOfferService { protected expiredOffers: Item[]; protected offers: IRagfairOffer[]; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, ragfairCategoriesService: RagfairCategoriesService, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + /** + * Get all offers + * @returns IRagfairOffer array + */ getOffers(): IRagfairOffer[]; getOfferByOfferId(offerId: string): IRagfairOffer; getOffersOfType(templateId: string): IRagfairOffer[]; addOffer(offer: IRagfairOffer): void; - addOfferToExpired(offer: Item): void; + addOfferToExpired(staleOffer: IRagfairOffer): void; setTraderUpdateStatus(traderId: string, shouldUpdate: boolean): void; shouldTraderBeUpdated(traderID: string): boolean; getExpiredOfferCount(): number; diff --git a/TypeScript/2EditDatabase/types/services/RagfairPriceService.d.ts b/TypeScript/2EditDatabase/types/services/RagfairPriceService.d.ts index 5256b99..e3168a6 100644 --- a/TypeScript/2EditDatabase/types/services/RagfairPriceService.d.ts +++ b/TypeScript/2EditDatabase/types/services/RagfairPriceService.d.ts @@ -28,5 +28,19 @@ export declare class RagfairPriceService { getFleaPriceForItem(tplId: string): number; getBarterPrice(barterScheme: IBarterScheme[]): number; getDynamicOfferPrice(items: Item[], desiredCurrency: string): number; + /** + * Multiply the price by a randomised curve where n = 2, shift = 2 + * @param existingPrice price to alter + * @param isPreset is the item we're multiplying a preset + * @returns multiplied price + */ + protected randomisePrice(existingPrice: number, isPreset: boolean): number; + /** + * Calculate the cost of a weapon preset by adding together the price of its mods + base price of default weapon preset + * @param item base weapon + * @param items weapon plus mods + * @param existingPrice price of existing base weapon + * @returns + */ getWeaponPresetPrice(item: Item, items: Item[], existingPrice: number): number; } diff --git a/TypeScript/2EditDatabase/types/utils/Watermark.d.ts b/TypeScript/2EditDatabase/types/utils/Watermark.d.ts index 111bdd0..c6dc120 100644 --- a/TypeScript/2EditDatabase/types/utils/Watermark.d.ts +++ b/TypeScript/2EditDatabase/types/utils/Watermark.d.ts @@ -28,7 +28,12 @@ export declare class Watermark { protected text: string[]; protected versionLabel: string; initialize(): void; - getVersionTag(): string; + /** + * Get a version string (x.x.x) or (x.x.x-BLEEDINGEDGE) OR (X.X.X (18xxx)) + * @param withEftVersion Include the eft version this spt version was made for + * @returns string + */ + getVersionTag(withEftVersion?: boolean): string; getVersionLabel(): string; /** Set window title */ setTitle(): void; diff --git a/TypeScript/3.0GetSptConfigFile/types/loaders/AfterDbModLoader.d.ts b/TypeScript/3.0GetSptConfigFile/types/loaders/AfterDbModLoader.d.ts deleted file mode 100644 index a9fc286..0000000 --- a/TypeScript/3.0GetSptConfigFile/types/loaders/AfterDbModLoader.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { OnLoad } from "../di/OnLoad"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class AfterDbModLoader implements OnLoad { - protected initialModLoader: InitialModLoader; - constructor(initialModLoader: InitialModLoader); - onLoad(): void; - getRoute(): string; - getModPath(mod: string): string; - protected executeMods(container: DependencyContainer): void; -} diff --git a/TypeScript/3.0GetSptConfigFile/types/loaders/DelayedModLoader.d.ts b/TypeScript/3.0GetSptConfigFile/types/loaders/DelayedModLoader.d.ts deleted file mode 100644 index 2a05604..0000000 --- a/TypeScript/3.0GetSptConfigFile/types/loaders/DelayedModLoader.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { HandbookController } from "../controllers/HandbookController"; -import { IModLoader } from "../models/spt/mod/IModLoader"; -import { ModCompilerService } from "../services/ModCompilerService"; -import { VFS } from "../utils/VFS"; -import { BundleLoader } from "./BundleLoader"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class DelayedModLoader implements IModLoader { - protected bundleLoader: BundleLoader; - protected handbookController: HandbookController; - protected vfs: VFS; - protected modCompilerService: ModCompilerService; - protected initialModLoader: InitialModLoader; - constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, initialModLoader: InitialModLoader); - getBundles(local: boolean): string; - getBundle(key: string, local: boolean): void; - getModPath(mod: string): string; - load(): void; - protected executeMods(container: DependencyContainer): void; - protected addBundles(): void; -} diff --git a/TypeScript/3.0GetSptConfigFile/types/loaders/InitialModLoader.d.ts b/TypeScript/3.0GetSptConfigFile/types/loaders/InitialModLoader.d.ts deleted file mode 100644 index 9a99dcc..0000000 --- a/TypeScript/3.0GetSptConfigFile/types/loaders/InitialModLoader.d.ts +++ /dev/null @@ -1,64 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { ICoreConfig } from "../models/spt/config/ICoreConfig"; -import { ModLoader } from "../models/spt/mod/IMod"; -import { IModLoader } from "../models/spt/mod/IModLoader"; -import { IPackageJsonData } from "../models/spt/mod/IPackageJsonData"; -import { ILogger } from "../models/spt/utils/ILogger"; -import { ConfigServer } from "../servers/ConfigServer"; -import { ModCompilerService } from "../services/ModCompilerService"; -import { JsonUtil } from "../utils/JsonUtil"; -import { VFS } from "../utils/VFS"; -import { BundleLoader } from "./BundleLoader"; -export declare class InitialModLoader implements IModLoader { - protected logger: ILogger; - protected vfs: VFS; - protected jsonUtil: JsonUtil; - protected modCompilerService: ModCompilerService; - protected bundleLoader: BundleLoader; - protected configServer: ConfigServer; - protected static container: DependencyContainer; - protected readonly basepath = "user/mods/"; - protected imported: Record; - protected akiConfig: ICoreConfig; - constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, configServer: ConfigServer); - load(container: DependencyContainer): Promise; - getBundles(local: boolean): string; - getBundle(key: string, local: boolean): void; - /** - * Returns a list of mods with preserved load order - * @returns Array of mod names in load order - */ - getImportedModsNames(): string[]; - getModPath(mod: string): string; - protected importClass(name: string, filepath: string, container: DependencyContainer): void; - protected importMods(): Promise; - /** - * - * @param mods Get an array of broken/invalid mods by name - * @returns Mod names array - */ - protected getBrokenMods(mods: string[]): string[]; - /** - * Get packageJson data for mods - * @param mods mods to get packageJson for - * @returns dictionary - */ - protected getModsPackageData(mods: string[]): Record; - /** - * Does mod have "delayedLoad(" string in its entry class - * @param modFolderName folder name - * @param modToValidate package.json details - * @returns boolean - */ - protected isModSpt300Compatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; - protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; - protected executeMods(container: DependencyContainer): void; - sortModsLoadOrder(): string[]; - protected addMod(mod: string): Promise; - protected areModDependenciesFulfilled(pkg: IPackageJsonData, loadedMods: Record): boolean; - protected isModCompatible(mod: IPackageJsonData, loadedMods: Record): boolean; - protected validMod(mod: string): boolean; - protected getLoadOrderRecursive(mod: string, result: Record, visited: Record): void; - protected getLoadOrder(mods: Record): Record; - getContainer(): DependencyContainer; -} diff --git a/TypeScript/3.0GetSptConfigFile/types/models/enums/QuestStatus.d.ts b/TypeScript/3.0GetSptConfigFile/types/models/enums/QuestStatus.d.ts deleted file mode 100644 index 6335c73..0000000 --- a/TypeScript/3.0GetSptConfigFile/types/models/enums/QuestStatus.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -export declare enum QuestStatus { - Locked = 0, - AvailableForStart = 1, - Started = 2, - AvailableForFinish = 3, - Success = 4, - Fail = 5, - FailRestartable = 6, - MarkedAsFailed = 7 -} diff --git a/TypeScript/3.0GetSptConfigFile/types/models/external/IAfterDBLoadMod.d.ts b/TypeScript/3.0GetSptConfigFile/types/models/external/IAfterDBLoadMod.d.ts deleted file mode 100644 index 7f08b9e..0000000 --- a/TypeScript/3.0GetSptConfigFile/types/models/external/IAfterDBLoadMod.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IAfterDBLoadMod { - loadAfterDbInit(container: DependencyContainer): void; -} diff --git a/TypeScript/3.0GetSptConfigFile/types/models/external/mod.d.ts b/TypeScript/3.0GetSptConfigFile/types/models/external/mod.d.ts deleted file mode 100644 index 47939e9..0000000 --- a/TypeScript/3.0GetSptConfigFile/types/models/external/mod.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IMod { - load(container: DependencyContainer): void; - delayedLoad(container: DependencyContainer): void; -} diff --git a/TypeScript/3.0GetSptConfigFile/types/services/RagfairCategoriesService.d.ts b/TypeScript/3.0GetSptConfigFile/types/services/RagfairCategoriesService.d.ts deleted file mode 100644 index 09956cc..0000000 --- a/TypeScript/3.0GetSptConfigFile/types/services/RagfairCategoriesService.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { IRagfairOffer } from "../models/eft/ragfair/IRagfairOffer"; -export declare class RagfairCategoriesService { - updateCategories(offers: IRagfairOffer[]): void; - protected categories: Record; - getCategories(): Record; - getCategoryByItemId(itemId: string): number; - resetCategories(): void; - setCategoryValue(itemId: string, newValue: number): void; - incrementCategory(itemId: string): void; -} diff --git a/TypeScript/3.0GetSptConfigFile/.eslintignore b/TypeScript/3GetSptConfigFile/.eslintignore similarity index 100% rename from TypeScript/3.0GetSptConfigFile/.eslintignore rename to TypeScript/3GetSptConfigFile/.eslintignore diff --git a/TypeScript/3.0GetSptConfigFile/.eslintrc.json b/TypeScript/3GetSptConfigFile/.eslintrc.json similarity index 100% rename from TypeScript/3.0GetSptConfigFile/.eslintrc.json rename to TypeScript/3GetSptConfigFile/.eslintrc.json diff --git a/TypeScript/3.0GetSptConfigFile/README.md b/TypeScript/3GetSptConfigFile/README.md similarity index 100% rename from TypeScript/3.0GetSptConfigFile/README.md rename to TypeScript/3GetSptConfigFile/README.md diff --git a/TypeScript/3.0GetSptConfigFile/mod.code-workspace b/TypeScript/3GetSptConfigFile/mod.code-workspace similarity index 100% rename from TypeScript/3.0GetSptConfigFile/mod.code-workspace rename to TypeScript/3GetSptConfigFile/mod.code-workspace diff --git a/TypeScript/3.0GetSptConfigFile/package.json b/TypeScript/3GetSptConfigFile/package.json similarity index 97% rename from TypeScript/3.0GetSptConfigFile/package.json rename to TypeScript/3GetSptConfigFile/package.json index 44d539f..fabd9f6 100644 --- a/TypeScript/3.0GetSptConfigFile/package.json +++ b/TypeScript/3GetSptConfigFile/package.json @@ -4,7 +4,7 @@ "main": "src/mod.js", "license": "MIT", "author": "Chomp", - "akiVersion": "3.0.1", + "akiVersion": "3.1.0", "scripts": { "setup:environment": "npm i", "build:unzipped": "copyfiles -e \"./node_modules/**/*.*\" -e \"./dist/**/*.*\" -e \"./package-lock.json\" -e \"./tsconfig.json\" -e \"./README.txt\" -e \"./mod.code-workspace\" \"./**/*.*\" ./dist", diff --git a/TypeScript/3.0GetSptConfigFile/src/mod.ts b/TypeScript/3GetSptConfigFile/src/mod.ts similarity index 81% rename from TypeScript/3.0GetSptConfigFile/src/mod.ts rename to TypeScript/3GetSptConfigFile/src/mod.ts index 72115eb..a0ceabe 100644 --- a/TypeScript/3.0GetSptConfigFile/src/mod.ts +++ b/TypeScript/3GetSptConfigFile/src/mod.ts @@ -1,19 +1,14 @@ import { DependencyContainer } from "tsyringe"; -import { IMod } from "@spt-aki/models/external/mod"; +import { IPostAkiLoadMod } from "@spt-aki/models/external/IPostAkiLoadMod"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ConfigServer } from "@spt-aki/servers/ConfigServer"; import { ConfigTypes } from "@spt-aki/models/enums/ConfigTypes"; import { IBotConfig } from "@spt-aki/models/spt/config/IBotConfig"; -class Mod implements IMod +class Mod implements IPostAkiLoadMod { - // not used for this example - public load(container: DependencyContainer): void - { return } - - public delayedLoad(container: DependencyContainer): void - { + public postAkiLoad(container: DependencyContainer): void { // get logger const logger = container.resolve("WinstonLogger"); diff --git a/TypeScript/3.0GetSptConfigFile/tsconfig.json b/TypeScript/3GetSptConfigFile/tsconfig.json similarity index 100% rename from TypeScript/3.0GetSptConfigFile/tsconfig.json rename to TypeScript/3GetSptConfigFile/tsconfig.json diff --git a/TypeScript/3.0GetSptConfigFile/types/Program.d.ts b/TypeScript/3GetSptConfigFile/types/Program.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/Program.d.ts rename to TypeScript/3GetSptConfigFile/types/Program.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/TYPES.d.ts b/TypeScript/3GetSptConfigFile/types/TYPES.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/TYPES.d.ts rename to TypeScript/3GetSptConfigFile/types/TYPES.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/BotCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/BotCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/BotCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/BotCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/BundleCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/BundleCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/BundleCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/BundleCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/CustomizationCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/CustomizationCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/CustomizationCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/CustomizationCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/DataCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/DataCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/DataCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/DataCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/DialogueCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/DialogueCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/DialogueCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/DialogueCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/GameCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/GameCallbacks.d.ts similarity index 90% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/GameCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/GameCallbacks.d.ts index d5cad76..06da1b5 100644 --- a/TypeScript/3.0GetSptConfigFile/types/callbacks/GameCallbacks.d.ts +++ b/TypeScript/3GetSptConfigFile/types/callbacks/GameCallbacks.d.ts @@ -2,6 +2,7 @@ import { GameController } from "../controllers/GameController"; import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse"; import { IGameEmptyCrcRequestData } from "../models/eft/game/IGameEmptyCrcRequestData"; +import { IReportNicknameRequestData } from "../models/eft/game/IReportNicknameRequestData"; import { IVersionValidateRequestData } from "../models/eft/game/IVersionValidateRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; @@ -20,5 +21,6 @@ declare class GameCallbacks { validateGameVersion(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; gameKeepalive(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; getVersion(url: string, info: IEmptyRequestData, sessionID: string): string; + reportNickname(url: string, info: IReportNicknameRequestData, sessionID: string): INullResponseData; } export { GameCallbacks }; diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/HandbookCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/HandbookCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/HandbookCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/HandbookCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/HealthCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/HealthCallbacks.d.ts similarity index 85% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/HealthCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/HealthCallbacks.d.ts index 8f7b89d..8672be7 100644 --- a/TypeScript/3.0GetSptConfigFile/types/callbacks/HealthCallbacks.d.ts +++ b/TypeScript/3GetSptConfigFile/types/callbacks/HealthCallbacks.d.ts @@ -13,6 +13,13 @@ export declare class HealthCallbacks { protected profileHelper: ProfileHelper; protected healthController: HealthController; constructor(httpResponse: HttpResponseUtil, profileHelper: ProfileHelper, healthController: HealthController); + /** + * Custom aki server request found in modules/HealthSynchronizer.cs + * @param url + * @param info HealthListener.Instance.CurrentHealth class + * @param sessionID session id + * @returns empty response, no data sent back to client + */ syncHealth(url: string, info: ISyncHealthRequestData, sessionID: string): IGetBodyResponseData; offraidEat(pmcData: IPmcData, body: IOffraidEatRequestData, sessionID: string): IItemEventRouterResponse; offraidHeal(pmcData: IPmcData, body: IOffraidHealRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/HideoutCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/HideoutCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/HideoutCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/HideoutCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/HttpCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/HttpCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/HttpCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/HttpCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/InraidCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/InraidCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/InraidCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/InraidCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/InsuranceCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/InsuranceCallbacks.d.ts similarity index 89% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/InsuranceCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/InsuranceCallbacks.d.ts index 520d0eb..6819960 100644 --- a/TypeScript/3.0GetSptConfigFile/types/callbacks/InsuranceCallbacks.d.ts +++ b/TypeScript/3GetSptConfigFile/types/callbacks/InsuranceCallbacks.d.ts @@ -3,6 +3,7 @@ import { OnLoadOnUpdate } from "../di/OnLoadOnUpdate"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -17,7 +18,7 @@ export declare class InsuranceCallbacks extends OnLoadOnUpdate { protected insuranceConfig: IInsuranceConfig; constructor(insuranceController: InsuranceController, insuranceService: InsuranceService, httpResponse: HttpResponseUtil, configServer: ConfigServer); onLoad(): void; - getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; + getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; onUpdate(secondsSinceLastRun: number): boolean; getRoute(): string; diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/InventoryCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/InventoryCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/InventoryCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/InventoryCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/ItemEventCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/ItemEventCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/ItemEventCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/ItemEventCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/LauncherCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/LauncherCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/LauncherCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/LauncherCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/LocationCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/LocationCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/LocationCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/LocationCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/MatchCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/MatchCallbacks.d.ts similarity index 68% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/MatchCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/MatchCallbacks.d.ts index 083c1f5..158d8df 100644 --- a/TypeScript/3.0GetSptConfigFile/types/callbacks/MatchCallbacks.d.ts +++ b/TypeScript/3GetSptConfigFile/types/callbacks/MatchCallbacks.d.ts @@ -1,9 +1,13 @@ import { MatchController } from "../controllers/MatchController"; +import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { DatabaseServer } from "../servers/DatabaseServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; @@ -16,18 +20,18 @@ export declare class MatchCallbacks { constructor(httpResponse: HttpResponseUtil, jsonUtil: JsonUtil, matchController: MatchController, databaseServer: DatabaseServer); updatePing(url: string, info: any, sessionID: string): INullResponseData; exitMatch(url: string, info: any, sessionID: string): INullResponseData; - exitToMenu(url: string, info: any, sessionID: string): INullResponseData; - startGroupSearch(url: string, info: any, sessionID: string): INullResponseData; - stopGroupSearch(url: string, info: any, sessionID: string): INullResponseData; + exitToMenu(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + startGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + stopGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; sendGroupInvite(url: string, info: any, sessionID: string): INullResponseData; acceptGroupInvite(url: string, info: any, sessionID: string): INullResponseData; cancelGroupInvite(url: string, info: any, sessionID: string): INullResponseData; putMetrics(url: string, info: any, sessionID: string): INullResponseData; getProfile(url: string, info: IGetProfileRequestData, sessionID: string): IGetBodyResponseData; - serverAvailable(url: string, info: any, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; - joinMatch(url: string, info: any, sessionID: string): IGetBodyResponseData; + serverAvailable(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; + joinMatch(url: string, info: IJoinMatchRequestData, sessionID: string): IGetBodyResponseData; getMetrics(url: string, info: any, sessionID: string): IGetBodyResponseData; - getGroupStatus(url: string, info: any, sessionID: string): IGetBodyResponseData; + getGroupStatus(url: string, info: IGetGroupStatusRequestData, sessionID: string): IGetBodyResponseData; createGroup(url: string, info: any, sessionID: string): IGetBodyResponseData; deleteGroup(url: string, info: any, sessionID: string): INullResponseData; startOfflineRaid(url: string, info: IStartOfflineRaidRequestData, sessionID: string): INullResponseData; diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/ModCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/ModCallbacks.d.ts similarity index 81% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/ModCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/ModCallbacks.d.ts index 866abf7..58342dc 100644 --- a/TypeScript/3.0GetSptConfigFile/types/callbacks/ModCallbacks.d.ts +++ b/TypeScript/3GetSptConfigFile/types/callbacks/ModCallbacks.d.ts @@ -1,5 +1,5 @@ import { OnLoad } from "../di/OnLoad"; -import { DelayedModLoader } from "../loaders/DelayedModLoader"; +import { PostAkiModLoader } from "../loaders/PostAkiModLoader"; import { IHttpConfig } from "../models/spt/config/IHttpConfig"; import { IHttpServer } from "../models/spt/server/IHttpServer"; import { ILogger } from "../models/spt/utils/ILogger"; @@ -9,10 +9,10 @@ declare class ModCallbacks extends OnLoad { protected logger: ILogger; protected httpResponse: HttpResponseUtil; protected httpServer: IHttpServer; - protected modLoader: DelayedModLoader; + protected postAkiModLoader: PostAkiModLoader; protected configServer: ConfigServer; protected httpConfig: IHttpConfig; - constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, modLoader: DelayedModLoader, configServer: ConfigServer); + constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, postAkiModLoader: PostAkiModLoader, configServer: ConfigServer); onLoad(): void; getRoute(): string; sendBundle(sessionID: string, req: any, resp: any, body: any): void; diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/NoteCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/NoteCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/NoteCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/NoteCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/NotifierCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/NotifierCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/NotifierCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/NotifierCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/PresetBuildCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/PresetBuildCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/PresetBuildCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/PresetBuildCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/PresetCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/PresetCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/PresetCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/PresetCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/ProfileCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/ProfileCallbacks.d.ts similarity index 87% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/ProfileCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/ProfileCallbacks.d.ts index 116e7c5..6a86fc0 100644 --- a/TypeScript/3.0GetSptConfigFile/types/callbacks/ProfileCallbacks.d.ts +++ b/TypeScript/3GetSptConfigFile/types/callbacks/ProfileCallbacks.d.ts @@ -3,6 +3,7 @@ import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IGetMiniProfileRequestData } from "../models/eft/launcher/IGetMiniProfileRequestData"; +import { GetProfileStatusResponseData } from "../models/eft/profile/GetProfileStatusResponseData"; import { IProfileChangeNicknameRequestData } from "../models/eft/profile/IProfileChangeNicknameRequestData"; import { IProfileChangeVoiceRequestData } from "../models/eft/profile/IProfileChangeVoiceRequestData"; import { IProfileCreateRequestData } from "../models/eft/profile/IProfileCreateRequestData"; @@ -23,7 +24,14 @@ export declare class ProfileCallbacks { changeNickname(url: string, info: IProfileChangeNicknameRequestData, sessionID: string): IGetBodyResponseData; validateNickname(url: string, info: IValidateNicknameRequestData, sessionID: string): IGetBodyResponseData; getReservedNickname(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; - getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; + /** + * Called when creating a character, when you choose a character face/voice + * @param url + * @param info response (empty) + * @param sessionID + * @returns + */ + getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; searchFriend(url: string, info: ISearchFriendRequestData, sessionID: string): IGetBodyResponseData; getMiniProfile(url: string, info: IGetMiniProfileRequestData, sessionID: string): string; getAllMiniProfiles(url: string, info: any, sessionID: string): string; diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/QuestCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/QuestCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/QuestCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/QuestCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/RagfairCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/RagfairCallbacks.d.ts similarity index 95% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/RagfairCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/RagfairCallbacks.d.ts index d5bab8b..da782e1 100644 --- a/TypeScript/3.0GetSptConfigFile/types/callbacks/RagfairCallbacks.d.ts +++ b/TypeScript/3GetSptConfigFile/types/callbacks/RagfairCallbacks.d.ts @@ -9,6 +9,7 @@ import { IAddOfferRequestData } from "../models/eft/ragfair/IAddOfferRequestData import { IExtendOfferRequestData } from "../models/eft/ragfair/IExtendOfferRequestData"; import { IGetItemPriceResult } from "../models/eft/ragfair/IGetItemPriceResult"; import { IGetMarketPriceRequestData } from "../models/eft/ragfair/IGetMarketPriceRequestData"; +import { IGetOffersResult } from "../models/eft/ragfair/IGetOffersResult"; import { IRemoveOfferRequestData } from "../models/eft/ragfair/IRemoveOfferRequestData"; import { ISearchRequestData } from "../models/eft/ragfair/ISearchRequestData"; import { IRagfairConfig } from "../models/spt/config/IRagfairConfig"; @@ -28,7 +29,7 @@ export declare class RagfairCallbacks extends OnLoadOnUpdate { constructor(httpResponse: HttpResponseUtil, logger: ILogger, jsonUtil: JsonUtil, ragfairServer: RagfairServer, ragfairController: RagfairController, configServer: ConfigServer); onLoad(): void; getRoute(): string; - search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; + search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; getMarketPrice(url: string, info: IGetMarketPriceRequestData, sessionID: string): IGetBodyResponseData; getItemPrices(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; addOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/RepairCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/RepairCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/RepairCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/RepairCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/SaveCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/SaveCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/SaveCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/SaveCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/TradeCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/TradeCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/TradeCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/TradeCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/TraderCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/TraderCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/TraderCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/TraderCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/WeatherCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/WeatherCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/WeatherCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/WeatherCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/callbacks/WishlistCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/callbacks/WishlistCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/callbacks/WishlistCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/callbacks/WishlistCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/BotController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/BotController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/BotController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/BotController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/CustomizationController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/CustomizationController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/CustomizationController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/CustomizationController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/DialogueController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/DialogueController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/DialogueController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/DialogueController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/GameController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/GameController.d.ts similarity index 91% rename from TypeScript/3.0GetSptConfigFile/types/controllers/GameController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/GameController.d.ts index 5f516de..f4c3d2c 100644 --- a/TypeScript/3.0GetSptConfigFile/types/controllers/GameController.d.ts +++ b/TypeScript/3GetSptConfigFile/types/controllers/GameController.d.ts @@ -28,6 +28,11 @@ export declare class GameController { protected addMissingRepeatableQuestsProperty(pmcProfile: IPmcData): void; protected addMissingWeaponRepairSkill(pmcProfile: IPmcData): void; protected addMissingAkiVersionTagToProfile(fullProfile: IAkiProfile): void; + /** + * In 18876 bsg changed the pockets tplid to be one that has 3 additional special slots + * @param pmcProfile + */ + protected updateProfilePocketsToNewId(pmcProfile: IPmcData): void; protected addMissingArmorRepairSkill(pmcProfile: IPmcData): void; protected fixNullTraderSalesSums(pmcProfile: IPmcData): void; protected removeDanglingBackendCounters(pmcProfile: IPmcData): void; diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/HandbookController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/HandbookController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/HandbookController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/HandbookController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/HealthController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/HealthController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/HealthController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/HealthController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/HideoutController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/HideoutController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/HideoutController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/HideoutController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/InraidController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/InraidController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/InraidController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/InraidController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/InsuranceController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/InsuranceController.d.ts similarity index 88% rename from TypeScript/3.0GetSptConfigFile/types/controllers/InsuranceController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/InsuranceController.d.ts index db2c567..af45442 100644 --- a/TypeScript/3.0GetSptConfigFile/types/controllers/InsuranceController.d.ts +++ b/TypeScript/3GetSptConfigFile/types/controllers/InsuranceController.d.ts @@ -3,6 +3,7 @@ import { ItemHelper } from "../helpers/ItemHelper"; import { ProfileHelper } from "../helpers/ProfileHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -33,6 +34,12 @@ export declare class InsuranceController { insuranceService: InsuranceService, configServer: ConfigServer); processReturn(): void; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; - cost(info: IGetInsuranceCostRequestData, sessionID: string): any; + /** + * Calculate insurance cost + * @param info request object + * @param sessionID session id + * @returns response object to send to client + */ + cost(info: IGetInsuranceCostRequestData, sessionID: string): IGetInsuranceCostResponseData; doAbsolutelyNothing(): void; } diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/InventoryController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/InventoryController.d.ts similarity index 88% rename from TypeScript/3.0GetSptConfigFile/types/controllers/InventoryController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/InventoryController.d.ts index b732aa9..f24ab62 100644 --- a/TypeScript/3.0GetSptConfigFile/types/controllers/InventoryController.d.ts +++ b/TypeScript/3GetSptConfigFile/types/controllers/InventoryController.d.ts @@ -24,6 +24,8 @@ import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRout import { ILogger } from "../models/spt/utils/ILogger"; import { ItemEventRouter } from "../routers/ItemEventRouter"; import { DatabaseServer } from "../servers/DatabaseServer"; +import { FenceService } from "../services/FenceService"; +import { RagfairOfferService } from "../services/RagfairOfferService"; import { HashUtil } from "../utils/HashUtil"; import { JsonUtil } from "../utils/JsonUtil"; export declare class InventoryController { @@ -31,12 +33,14 @@ export declare class InventoryController { protected hashUtil: HashUtil; protected jsonUtil: JsonUtil; protected databaseServer: DatabaseServer; + protected fenceService: FenceService; protected presetHelper: PresetHelper; protected inventoryHelper: InventoryHelper; + protected ragfairOfferService: RagfairOfferService; protected profileHelper: ProfileHelper; protected paymentHelper: PaymentHelper; protected itemEventRouter: ItemEventRouter; - constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); + constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, fenceService: FenceService, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, ragfairOfferService: RagfairOfferService, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); /** * Move Item * change location of item with parentId and slotId @@ -93,9 +97,19 @@ export declare class InventoryController { tagItem(pmcData: IPmcData, body: IInventoryTagRequestData, sessionID: string): IItemEventRouterResponse; bindItem(pmcData: IPmcData, body: IInventoryBindRequestData, sessionID: string): IItemEventRouterResponse; /** - * Handles examining of the item * + * Handles examining an item + * @param pmcData player profile + * @param body request object + * @param sessionID session id + * @returns response */ examineItem(pmcData: IPmcData, body: IInventoryExamineRequestData, sessionID: string): IItemEventRouterResponse; + /** + * Get the tplid of an item from the examine request object + * @param body response request + * @returns tplid + */ + protected getItemTpl(body: IInventoryExamineRequestData): string; readEncyclopedia(pmcData: IPmcData, body: IInventoryReadEncyclopediaRequestData, sessionID: string): IItemEventRouterResponse; /** * Handles sorting of Inventory. diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/LauncherController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/LauncherController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/LauncherController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/LauncherController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/LocationController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/LocationController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/LocationController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/LocationController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/MatchController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/MatchController.d.ts similarity index 78% rename from TypeScript/3.0GetSptConfigFile/types/controllers/MatchController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/MatchController.d.ts index c322d96..7ef3fcc 100644 --- a/TypeScript/3.0GetSptConfigFile/types/controllers/MatchController.d.ts +++ b/TypeScript/3GetSptConfigFile/types/controllers/MatchController.d.ts @@ -2,7 +2,10 @@ import { ProfileHelper } from "../helpers/ProfileHelper"; import { TraderHelper } from "../helpers/TraderHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { IInRaidConfig } from "../models/spt/config/IInRaidConfig"; import { IMatchConfig } from "../models/spt/config/IMatchConfig"; @@ -20,11 +23,11 @@ export declare class MatchController { constructor(saveServer: SaveServer, profileHelper: ProfileHelper, matchLocationService: MatchLocationService, traderHelper: TraderHelper, configServer: ConfigServer); getEnabled(): boolean; getProfile(info: IGetProfileRequestData): IPmcData[]; - protected getMatch(location: any): any; createGroup(sessionID: string, info: any): any; deleteGroup(info: any): void; - joinMatch(info: any, sessionID: string): any[]; - getGroupStatus(info: any): any; + joinMatch(info: IJoinMatchRequestData, sessionID: string): IJoinMatchResult[]; + protected getMatch(location: string): any; + getGroupStatus(info: IGetGroupStatusRequestData): any; startOfflineRaid(info: IStartOfflineRaidRequestData, sessionID: string): void; endOfflineRaid(info: IEndOfflineRaidRequestData, sessionID: string): void; } diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/NoteController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/NoteController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/NoteController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/NoteController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/NotifierController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/NotifierController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/NotifierController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/NotifierController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/PresetBuildController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/PresetBuildController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/PresetBuildController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/PresetBuildController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/PresetController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/PresetController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/PresetController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/PresetController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/ProfileController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/ProfileController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/ProfileController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/ProfileController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/QuestController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/QuestController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/QuestController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/QuestController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/RagfairController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/RagfairController.d.ts similarity index 97% rename from TypeScript/3.0GetSptConfigFile/types/controllers/RagfairController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/RagfairController.d.ts index c758593..c4ffc15 100644 --- a/TypeScript/3.0GetSptConfigFile/types/controllers/RagfairController.d.ts +++ b/TypeScript/3GetSptConfigFile/types/controllers/RagfairController.d.ts @@ -60,6 +60,8 @@ export declare class RagfairController { protected ragfairConfig: IRagfairConfig; constructor(logger: ILogger, timeUtil: TimeUtil, httpResponse: HttpResponseUtil, itemEventRouter: ItemEventRouter, ragfairServer: RagfairServer, ragfairPriceService: RagfairPriceService, databaseServer: DatabaseServer, itemHelper: ItemHelper, saveServer: SaveServer, ragfairSellHelper: RagfairSellHelper, ragfairTaxHelper: RagfairTaxHelper, ragfairSortHelper: RagfairSortHelper, ragfairOfferHelper: RagfairOfferHelper, profileHelper: ProfileHelper, paymentService: PaymentService, handbookHelper: HandbookHelper, paymentHelper: PaymentHelper, inventoryHelper: InventoryHelper, ragfairHelper: RagfairHelper, ragfairOfferService: RagfairOfferService, ragfairRequiredItemsService: RagfairRequiredItemsService, ragfairOfferGenerator: RagfairOfferGenerator, configServer: ConfigServer); getOffers(sessionID: string, info: ISearchRequestData): IGetOffersResult; + protected isLinkedSearch(info: ISearchRequestData): boolean; + protected isRequiredSearch(info: ISearchRequestData): boolean; update(): void; getItemPrice(info: IGetMarketPriceRequestData): IGetItemPriceResult; addPlayerOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/RepairController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/RepairController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/RepairController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/RepairController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/RepeatableQuestController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/RepeatableQuestController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/RepeatableQuestController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/RepeatableQuestController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/TradeController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/TradeController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/TradeController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/TradeController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/TraderController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/TraderController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/TraderController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/TraderController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/WeatherController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/WeatherController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/WeatherController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/WeatherController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/controllers/WishlistController.d.ts b/TypeScript/3GetSptConfigFile/types/controllers/WishlistController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/controllers/WishlistController.d.ts rename to TypeScript/3GetSptConfigFile/types/controllers/WishlistController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/di/Container.d.ts b/TypeScript/3GetSptConfigFile/types/di/Container.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/di/Container.d.ts rename to TypeScript/3GetSptConfigFile/types/di/Container.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/di/OnLoad.d.ts b/TypeScript/3GetSptConfigFile/types/di/OnLoad.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/di/OnLoad.d.ts rename to TypeScript/3GetSptConfigFile/types/di/OnLoad.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/di/OnLoadOnUpdate.d.ts b/TypeScript/3GetSptConfigFile/types/di/OnLoadOnUpdate.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/di/OnLoadOnUpdate.d.ts rename to TypeScript/3GetSptConfigFile/types/di/OnLoadOnUpdate.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/di/OnUpdate.d.ts b/TypeScript/3GetSptConfigFile/types/di/OnUpdate.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/di/OnUpdate.d.ts rename to TypeScript/3GetSptConfigFile/types/di/OnUpdate.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/di/Router.d.ts b/TypeScript/3GetSptConfigFile/types/di/Router.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/di/Router.d.ts rename to TypeScript/3GetSptConfigFile/types/di/Router.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/di/Serializer.d.ts b/TypeScript/3GetSptConfigFile/types/di/Serializer.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/di/Serializer.d.ts rename to TypeScript/3GetSptConfigFile/types/di/Serializer.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/generators/BotGenerator.d.ts b/TypeScript/3GetSptConfigFile/types/generators/BotGenerator.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/generators/BotGenerator.d.ts rename to TypeScript/3GetSptConfigFile/types/generators/BotGenerator.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/generators/BotInventoryGenerator.d.ts b/TypeScript/3GetSptConfigFile/types/generators/BotInventoryGenerator.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/generators/BotInventoryGenerator.d.ts rename to TypeScript/3GetSptConfigFile/types/generators/BotInventoryGenerator.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/generators/BotLootGenerator.d.ts b/TypeScript/3GetSptConfigFile/types/generators/BotLootGenerator.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/generators/BotLootGenerator.d.ts rename to TypeScript/3GetSptConfigFile/types/generators/BotLootGenerator.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/generators/BotWeaponGenerator.d.ts b/TypeScript/3GetSptConfigFile/types/generators/BotWeaponGenerator.d.ts similarity index 93% rename from TypeScript/3.0GetSptConfigFile/types/generators/BotWeaponGenerator.d.ts rename to TypeScript/3GetSptConfigFile/types/generators/BotWeaponGenerator.d.ts index a43b18c..dd3ad69 100644 --- a/TypeScript/3.0GetSptConfigFile/types/generators/BotWeaponGenerator.d.ts +++ b/TypeScript/3GetSptConfigFile/types/generators/BotWeaponGenerator.d.ts @@ -41,6 +41,13 @@ export declare class BotWeaponGenerator { * @returns */ protected generateExtraMagazines(weaponMods: Item[], weaponTemplate: ITemplateItem, magCounts: MinMax, ammoTpl: string, inventory: PmcInventory): void; + /** + * Get a randomised number of bullets for a specific magazine + * @param magCounts min and max count of magazines + * @param magTemplate magazine to generate bullet count for + * @returns bullet count number + */ + protected getRandomisedBulletCount(magCounts: MinMax, magTemplate: ITemplateItem): number; /** * Get a randomised count of magazines * @param magCounts min and max value returned value can be between diff --git a/TypeScript/3.0GetSptConfigFile/types/generators/LocationGenerator.d.ts b/TypeScript/3GetSptConfigFile/types/generators/LocationGenerator.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/generators/LocationGenerator.d.ts rename to TypeScript/3GetSptConfigFile/types/generators/LocationGenerator.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/generators/PMCLootGenerator.d.ts b/TypeScript/3GetSptConfigFile/types/generators/PMCLootGenerator.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/generators/PMCLootGenerator.d.ts rename to TypeScript/3GetSptConfigFile/types/generators/PMCLootGenerator.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/generators/RagfairAssortGenerator.d.ts b/TypeScript/3GetSptConfigFile/types/generators/RagfairAssortGenerator.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/generators/RagfairAssortGenerator.d.ts rename to TypeScript/3GetSptConfigFile/types/generators/RagfairAssortGenerator.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/generators/RagfairOfferGenerator.d.ts b/TypeScript/3GetSptConfigFile/types/generators/RagfairOfferGenerator.d.ts similarity index 91% rename from TypeScript/3.0GetSptConfigFile/types/generators/RagfairOfferGenerator.d.ts rename to TypeScript/3GetSptConfigFile/types/generators/RagfairOfferGenerator.d.ts index de53ea9..6645c8d 100644 --- a/TypeScript/3.0GetSptConfigFile/types/generators/RagfairOfferGenerator.d.ts +++ b/TypeScript/3GetSptConfigFile/types/generators/RagfairOfferGenerator.d.ts @@ -18,6 +18,7 @@ import { JsonUtil } from "../utils/JsonUtil"; import { RandomUtil } from "../utils/RandomUtil"; import { TimeUtil } from "../utils/TimeUtil"; import { RagfairAssortGenerator } from "./RagfairAssortGenerator"; +import { RagfairCategoriesService } from "../services/RagfairCategoriesService"; export declare class RagfairOfferGenerator { protected logger: ILogger; protected jsonUtil: JsonUtil; @@ -31,11 +32,12 @@ export declare class RagfairOfferGenerator { protected ragfairAssortGenerator: RagfairAssortGenerator; protected ragfairOfferService: RagfairOfferService; protected ragfairPriceService: RagfairPriceService; + protected ragfairCategoriesService: RagfairCategoriesService; protected fenceService: FenceService; protected itemHelper: ItemHelper; protected configServer: ConfigServer; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); + constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, ragfairCategoriesService: RagfairCategoriesService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); createOffer(userID: string, time: number, items: Item[], barterScheme: IBarterScheme[], loyalLevel: number, price: number, sellInOnePiece?: boolean): IRagfairOffer; protected getTraderId(userID: string): string; protected getRating(userID: string): number; diff --git a/TypeScript/3.0GetSptConfigFile/types/generators/WeatherGenerator.d.ts b/TypeScript/3GetSptConfigFile/types/generators/WeatherGenerator.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/generators/WeatherGenerator.d.ts rename to TypeScript/3GetSptConfigFile/types/generators/WeatherGenerator.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/AssortHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/AssortHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/AssortHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/AssortHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/BotGeneratorHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/BotGeneratorHelper.d.ts similarity index 91% rename from TypeScript/3.0GetSptConfigFile/types/helpers/BotGeneratorHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/BotGeneratorHelper.d.ts index e4b0c11..243e7a8 100644 --- a/TypeScript/3.0GetSptConfigFile/types/helpers/BotGeneratorHelper.d.ts +++ b/TypeScript/3GetSptConfigFile/types/helpers/BotGeneratorHelper.d.ts @@ -29,6 +29,12 @@ export declare class BotGeneratorHelper { protected botConfig: IBotConfig; constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, probabilityHelper: ProbabilityHelper, databaseServer: DatabaseServer, durabilityLimitsHelper: DurabilityLimitsHelper, itemHelper: ItemHelper, inventoryHelper: InventoryHelper, containerHelper: ContainerHelper, configServer: ConfigServer); generateModsForItem(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem, modSpawnChances: ModsChances, isPmc?: boolean): Item[]; + /** + * Is this magazine cylinder related (revolvers and grenade launchers) + * @param magazineParentName the name of the magazines parent + * @returns true if it is cylinder related + */ + magazineIsCylinderRelated(magazineParentName: string): boolean; /** * Get a list of non black-listed cartridges from the PMC bot config * @param modSlot mod item slot @@ -69,6 +75,12 @@ export declare class BotGeneratorHelper { * @param {object} parentTemplate The CylinderMagazine's template */ protected fillCamora(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem): void; + /** + * Take a record of camoras and merge the compatable shells into one array + * @param camorasWithShells camoras we want to merge into one array + * @returns string array of shells fro luitple camora sources + */ + protected mergeCamoraPoolsTogether(camorasWithShells: Record): string[]; generateExtraPropertiesForItem(itemTemplate: ITemplateItem, botRole?: any): { upd?: Upd; }; diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/BotHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/BotHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/BotHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/BotHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/ContainerHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/ContainerHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/ContainerHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/ContainerHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/DialogueHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/DialogueHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/DialogueHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/DialogueHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/DurabilityLimitsHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/DurabilityLimitsHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/DurabilityLimitsHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/DurabilityLimitsHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/ExtendedProfileHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/ExtendedProfileHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/ExtendedProfileHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/ExtendedProfileHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/GameEventHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/GameEventHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/GameEventHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/GameEventHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/GameHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/GameHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/GameHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/GameHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/HandbookHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/HandbookHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/HandbookHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/HandbookHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/HealthHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/HealthHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/HealthHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/HealthHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/HideoutHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/HideoutHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/HideoutHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/HideoutHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/HttpServerHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/HttpServerHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/HttpServerHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/HttpServerHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/InRaidHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/InRaidHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/InRaidHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/InRaidHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/InventoryHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/InventoryHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/InventoryHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/InventoryHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/ItemHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/ItemHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/ItemHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/ItemHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/NotificationSendHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/NotificationSendHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/NotificationSendHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/NotificationSendHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/NotifierHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/NotifierHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/NotifierHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/NotifierHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/PaymentHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/PaymentHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/PaymentHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/PaymentHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/PresetHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/PresetHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/PresetHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/PresetHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/ProbabilityHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/ProbabilityHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/ProbabilityHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/ProbabilityHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/ProfileHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/ProfileHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/ProfileHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/ProfileHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/QuestConditionHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/QuestConditionHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/QuestConditionHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/QuestConditionHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/QuestHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/QuestHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/QuestHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/QuestHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/RagfairHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/RagfairHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/RagfairHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/RagfairHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/RagfairOfferHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/RagfairOfferHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/RagfairOfferHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/RagfairOfferHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/RagfairSellHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/RagfairSellHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/RagfairSellHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/RagfairSellHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/RagfairServerHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/RagfairServerHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/RagfairServerHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/RagfairServerHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/RagfairSortHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/RagfairSortHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/RagfairSortHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/RagfairSortHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/RagfairTaxHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/RagfairTaxHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/RagfairTaxHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/RagfairTaxHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/RepairHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/RepairHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/RepairHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/RepairHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/SecureContainerHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/SecureContainerHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/SecureContainerHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/SecureContainerHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/TradeHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/TradeHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/TradeHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/TradeHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/TraderAssortHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/TraderAssortHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/TraderAssortHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/TraderAssortHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/TraderHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/TraderHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/TraderHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/TraderHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/UtilityHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/UtilityHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/UtilityHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/UtilityHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/helpers/WeightedRandomHelper.d.ts b/TypeScript/3GetSptConfigFile/types/helpers/WeightedRandomHelper.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/helpers/WeightedRandomHelper.d.ts rename to TypeScript/3GetSptConfigFile/types/helpers/WeightedRandomHelper.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/ide/BleedingEdgeEntry.d.ts b/TypeScript/3GetSptConfigFile/types/ide/BleedingEdgeEntry.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/ide/BleedingEdgeEntry.d.ts rename to TypeScript/3GetSptConfigFile/types/ide/BleedingEdgeEntry.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/ide/Compiler.d.ts b/TypeScript/3GetSptConfigFile/types/ide/Compiler.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/ide/Compiler.d.ts rename to TypeScript/3GetSptConfigFile/types/ide/Compiler.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/ide/DebugEntry.d.ts b/TypeScript/3GetSptConfigFile/types/ide/DebugEntry.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/ide/DebugEntry.d.ts rename to TypeScript/3GetSptConfigFile/types/ide/DebugEntry.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/ide/ReleaseEntry.d.ts b/TypeScript/3GetSptConfigFile/types/ide/ReleaseEntry.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/ide/ReleaseEntry.d.ts rename to TypeScript/3GetSptConfigFile/types/ide/ReleaseEntry.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/ide/TestEntry.d.ts b/TypeScript/3GetSptConfigFile/types/ide/TestEntry.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/ide/TestEntry.d.ts rename to TypeScript/3GetSptConfigFile/types/ide/TestEntry.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/loaders/BundleLoader.d.ts b/TypeScript/3GetSptConfigFile/types/loaders/BundleLoader.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/loaders/BundleLoader.d.ts rename to TypeScript/3GetSptConfigFile/types/loaders/BundleLoader.d.ts diff --git a/TypeScript/3GetSptConfigFile/types/loaders/PostAkiModLoader.d.ts b/TypeScript/3GetSptConfigFile/types/loaders/PostAkiModLoader.d.ts new file mode 100644 index 0000000..edc6e5d --- /dev/null +++ b/TypeScript/3GetSptConfigFile/types/loaders/PostAkiModLoader.d.ts @@ -0,0 +1,21 @@ +import { DependencyContainer } from "tsyringe"; +import { HandbookController } from "../controllers/HandbookController"; +import { IModLoader } from "../models/spt/mod/IModLoader"; +import { ModCompilerService } from "../services/ModCompilerService"; +import { VFS } from "../utils/VFS"; +import { BundleLoader } from "./BundleLoader"; +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostAkiModLoader implements IModLoader { + protected bundleLoader: BundleLoader; + protected handbookController: HandbookController; + protected vfs: VFS; + protected modCompilerService: ModCompilerService; + protected preAkiModLoader: PreAkiModLoader; + constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, preAkiModLoader: PreAkiModLoader); + getBundles(local: boolean): string; + getBundle(key: string, local: boolean): void; + getModPath(mod: string): string; + load(): void; + protected executeMods(container: DependencyContainer): void; + protected addBundles(): void; +} diff --git a/TypeScript/3GetSptConfigFile/types/loaders/PostDBModLoader.d.ts b/TypeScript/3GetSptConfigFile/types/loaders/PostDBModLoader.d.ts new file mode 100644 index 0000000..5101b7b --- /dev/null +++ b/TypeScript/3GetSptConfigFile/types/loaders/PostDBModLoader.d.ts @@ -0,0 +1,11 @@ +import { DependencyContainer } from "tsyringe"; +import { OnLoad } from "../di/OnLoad"; +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostDBModLoader implements OnLoad { + protected preAkiModLoader: PreAkiModLoader; + constructor(preAkiModLoader: PreAkiModLoader); + onLoad(): void; + getRoute(): string; + getModPath(mod: string): string; + protected executeMods(container: DependencyContainer): void; +} diff --git a/TypeScript/3GetSptConfigFile/types/loaders/PreAkiModLoader.d.ts b/TypeScript/3GetSptConfigFile/types/loaders/PreAkiModLoader.d.ts new file mode 100644 index 0000000..6ded3c6 --- /dev/null +++ b/TypeScript/3GetSptConfigFile/types/loaders/PreAkiModLoader.d.ts @@ -0,0 +1,64 @@ +import { DependencyContainer } from "tsyringe"; +import { ICoreConfig } from "../models/spt/config/ICoreConfig"; +import { ModLoader } from "../models/spt/mod/IMod"; +import { IModLoader } from "../models/spt/mod/IModLoader"; +import { IPackageJsonData } from "../models/spt/mod/IPackageJsonData"; +import { ILogger } from "../models/spt/utils/ILogger"; +import { ConfigServer } from "../servers/ConfigServer"; +import { ModCompilerService } from "../services/ModCompilerService"; +import { JsonUtil } from "../utils/JsonUtil"; +import { VFS } from "../utils/VFS"; +import { BundleLoader } from "./BundleLoader"; +export declare class PreAkiModLoader implements IModLoader { + protected logger: ILogger; + protected vfs: VFS; + protected jsonUtil: JsonUtil; + protected modCompilerService: ModCompilerService; + protected bundleLoader: BundleLoader; + protected configServer: ConfigServer; + protected static container: DependencyContainer; + protected readonly basepath = "user/mods/"; + protected imported: Record; + protected akiConfig: ICoreConfig; + constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, configServer: ConfigServer); + load(container: DependencyContainer): Promise; + getBundles(local: boolean): string; + getBundle(key: string, local: boolean): void; + /** + * Returns a list of mods with preserved load order + * @returns Array of mod names in load order + */ + getImportedModsNames(): string[]; + getModPath(mod: string): string; + protected importClass(name: string, filepath: string, container: DependencyContainer): void; + protected importMods(): Promise; + /** + * + * @param mods Get an array of broken/invalid mods by name + * @returns Mod names array + */ + protected getBrokenMods(mods: string[]): string[]; + /** + * Get packageJson data for mods + * @param mods mods to get packageJson for + * @returns dictionary + */ + protected getModsPackageData(mods: string[]): Record; + /** + * Does mod have "delayedLoad(" string in its entry class + * @param modFolderName folder name + * @param modToValidate package.json details + * @returns boolean + */ + protected isModSpt3XXCompatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; + protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; + protected executeMods(container: DependencyContainer): void; + sortModsLoadOrder(): string[]; + protected addMod(mod: string): Promise; + protected areModDependenciesFulfilled(pkg: IPackageJsonData, loadedMods: Record): boolean; + protected isModCompatible(mod: IPackageJsonData, loadedMods: Record): boolean; + protected validMod(mod: string): boolean; + protected getLoadOrderRecursive(mod: string, result: Record, visited: Record): void; + protected getLoadOrder(mods: Record): Record; + getContainer(): DependencyContainer; +} diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/bot/IGenerateBotsRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/bot/IGenerateBotsRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/bot/IGenerateBotsRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/bot/IGenerateBotsRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/IEmptyRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/IEmptyRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/IEmptyRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/IEmptyRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/IGlobals.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/IGlobals.d.ts similarity index 99% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/IGlobals.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/IGlobals.d.ts index 456895c..9d28dbc 100644 --- a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/IGlobals.d.ts +++ b/TypeScript/3GetSptConfigFile/types/models/eft/common/IGlobals.d.ts @@ -1128,8 +1128,11 @@ export interface Inertia { SprintAccelerationLimits: xyz; SideTime: xyz; DiagonalTime: xyz; + MaxTimeWithoutInput: xyz; MinDirectionBlendTime: number; - MoveTime: number; + MoveTimeRange: xyz; + ProneDirectionAccelerationRange: xyz; + ProneSpeedAccelerationRange: xyz; MinMovementAccelerationRangeRight: xyz; MaxMovementAccelerationRangeRight: xyz; } diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/ILocation.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/ILocation.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/ILocation.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/ILocation.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/ILocationBase.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/ILocationBase.d.ts similarity index 94% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/ILocationBase.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/ILocationBase.d.ts index ad48d32..b1dd448 100644 --- a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/ILocationBase.d.ts +++ b/TypeScript/3GetSptConfigFile/types/models/eft/common/ILocationBase.d.ts @@ -26,6 +26,7 @@ export interface ILocationBase { DisabledForScav: boolean; DisabledScavExits: string; Enabled: boolean; + EnableCoop: boolean; GlobalLootChanceModifier: number; IconX: number; IconY: number; @@ -41,6 +42,7 @@ export interface ILocationBase { MinDistToFreePoint: number; MinMaxBots: MinMaxBot[]; MinPlayers: number; + MaxCoopGroup: number; Name: string; NewSpawn: boolean; OcculsionCullingEnabled: boolean; @@ -48,6 +50,8 @@ export interface ILocationBase { OpenZones: string; Preview: Preview; RequiredPlayerLevel: number; + PmcMaxPlayersInGroup: number; + ScavMaxPlayersInGroup: number; Rules: string; SafeLocation: boolean; Scene: Scene; @@ -55,7 +59,8 @@ export interface ILocationBase { UnixDateTime: number; _Id: string; doors: any[]; - escape_time_limit: number; + EscapeTimeLimit: number; + EscapeTimeLimitCoop: number; exit_access_time: number; exit_count: number; exit_time: number; @@ -63,6 +68,7 @@ export interface ILocationBase { filter_ex: string[]; limits: ILimit[]; matching_min_seconds: number; + GenerateLocalLootCache: boolean; maxItemCountInLocation: MaxItemCountInLocation[]; sav_summon_seconds: number; tmp_location_field_remove_me: number; @@ -106,6 +112,7 @@ export interface BossLocationSpawn { BossName: string; BossPlayer: boolean; BossZone: string; + RandomTimeSpawn: boolean; Time: number; TriggerId: string; TriggerName: string; diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/ILocationsSourceDestinationBase.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/ILocationsSourceDestinationBase.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/ILocationsSourceDestinationBase.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/ILocationsSourceDestinationBase.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/ILooseLoot.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/ILooseLoot.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/ILooseLoot.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/ILooseLoot.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/IMetricsTableData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/IMetricsTableData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/IMetricsTableData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/IMetricsTableData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/IPmcData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/IPmcData.d.ts similarity index 97% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/IPmcData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/IPmcData.d.ts index adc2aa5..56bf07f 100644 --- a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/IPmcData.d.ts +++ b/TypeScript/3GetSptConfigFile/types/models/eft/common/IPmcData.d.ts @@ -6,7 +6,7 @@ import { MemberCategory } from "../../enums/MemberCategory"; export interface IPmcData { _id: string; aid: string; - savage: string; + savage?: string; Info: Info; Customization: Customization; Health: Health; @@ -28,13 +28,6 @@ export interface IPmcData { CarExtractCounts: CarExtractCounts; SurvivorClass: SurvivorClass; } -export declare enum SurvivorClass { - Unknown = 0, - Neutralizer = 1, - Marauder = 2, - Paramedic = 3, - Survivor = 4 -} export interface Info { EntryPoint: string; Nickname: string; @@ -56,6 +49,9 @@ export interface Info { Bans: IBan[]; BannedState: boolean; BannedUntil: number; + NeedWipeOptions: any[]; + lastCompletedWipe: LastCompleted; + lastCompletedEvent?: LastCompleted; } export interface Settings { Role: string; @@ -339,3 +335,13 @@ export interface RagfairInfo { } export interface CarExtractCounts { } +export declare enum SurvivorClass { + Unknown = 0, + Neutralizer = 1, + Marauder = 2, + Paramedic = 3, + Survivor = 4 +} +export interface LastCompleted { + $oid: string; +} diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/request/IBaseInteractionRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/request/IBaseInteractionRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/request/IBaseInteractionRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/request/IBaseInteractionRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/IBotBase.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IBotBase.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/IBotBase.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IBotBase.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/IBotCore.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IBotCore.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/IBotCore.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IBotCore.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/IBotType.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IBotType.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/IBotType.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IBotType.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/ICustomizationItem.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/tables/ICustomizationItem.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/ICustomizationItem.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/tables/ICustomizationItem.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/IHandbookBase.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IHandbookBase.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/IHandbookBase.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IHandbookBase.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/IItem.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IItem.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/IItem.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IItem.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/ILocationsBase.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/tables/ILocationsBase.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/ILocationsBase.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/tables/ILocationsBase.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/ILootBase.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/tables/ILootBase.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/ILootBase.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/tables/ILootBase.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/IMatch.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IMatch.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/IMatch.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IMatch.d.ts diff --git a/TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IProfileTemplate.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IProfileTemplate.d.ts new file mode 100644 index 0000000..c445e92 --- /dev/null +++ b/TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IProfileTemplate.d.ts @@ -0,0 +1,23 @@ +import { Dialogue, WeaponBuild } from "../../profile/IAkiProfile"; +import { IPmcData } from "../IPmcData"; +export interface IProfileTemplates { + Standard: IProfileSides; + "Left Behind": IProfileSides; + "Prepare To Escape": IProfileSides; + "Edge Of Darkness": IProfileSides; +} +export interface IProfileSides { + usec: TemplateSide; + bear: TemplateSide; +} +export interface TemplateSide { + character: IPmcData; + suits: string[]; + dialogues: Record; + weaponbuilds: WeaponBuild[]; + trader: ProfileTraderTemplate; +} +export interface ProfileTraderTemplate { + initialStanding: number; + initialSalesSum: number; +} diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/IQuest.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IQuest.d.ts similarity index 98% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/IQuest.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IQuest.d.ts index e1fc888..942339b 100644 --- a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/IQuest.d.ts +++ b/TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IQuest.d.ts @@ -23,6 +23,7 @@ export interface IQuest { status: string; KeyQuest: boolean; changeQuestMessageText: string; + side: string; } export interface Conditions { Started: AvailableForConditions[]; @@ -56,6 +57,7 @@ export interface AvailableForProps { plantTime?: number; zoneId?: string; type?: boolean; + countInRaid?: boolean; } export interface AvailableForCounter { id: string; diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/IRepeatableQuests.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IRepeatableQuests.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/IRepeatableQuests.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/tables/IRepeatableQuests.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/ITemplateItem.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/tables/ITemplateItem.d.ts similarity index 98% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/ITemplateItem.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/tables/ITemplateItem.d.ts index 934ea7d..23a1a14 100644 --- a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/ITemplateItem.d.ts +++ b/TypeScript/3GetSptConfigFile/types/models/eft/common/tables/ITemplateItem.d.ts @@ -50,6 +50,7 @@ export interface Props { UnlootableFromSide?: string[]; AnimationVariantsNumber?: number; DiscardingBlock?: boolean; + DropSoundType?: string; RagFairCommissionModifier?: number; IsAlwaysAvailableForInsurance?: boolean; DiscardLimit?: number; @@ -89,7 +90,7 @@ export interface Props { SightModesCount?: number; OpticCalibrationDistances?: number[]; ScopesCount?: number; - AimSensitivity: any; + AimSensitivity?: number | number[][]; Zooms?: number[][]; CalibrationDistances?: number[][]; Intensity?: number; @@ -200,6 +201,9 @@ export interface Props { MinRepairDegradation?: number; MaxRepairDegradation?: number; IronSightRange?: number; + IsFlareGun?: boolean; + IsGrenadeLauncher?: boolean; + IsOneoff?: boolean; MustBoltBeOpennedForExternalReload?: boolean; MustBoltBeOpennedForInternalReload?: boolean; BoltAction?: boolean; diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/ITrader.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/common/tables/ITrader.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/common/tables/ITrader.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/common/tables/ITrader.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/customization/IBuyClothingRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/customization/IBuyClothingRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/customization/IBuyClothingRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/customization/IBuyClothingRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/customization/IWearClothingRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/customization/IWearClothingRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/customization/IWearClothingRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/customization/IWearClothingRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IFriendRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/dialog/IFriendRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IFriendRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/dialog/IFriendRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IGetAllAttachmentsRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/dialog/IGetAllAttachmentsRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IGetAllAttachmentsRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/dialog/IGetAllAttachmentsRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IGetAllAttachmentsResponse.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/dialog/IGetAllAttachmentsResponse.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IGetAllAttachmentsResponse.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/dialog/IGetAllAttachmentsResponse.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IGetChatServerListRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/dialog/IGetChatServerListRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IGetChatServerListRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/dialog/IGetChatServerListRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IGetFriendListDataResponse.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/dialog/IGetFriendListDataResponse.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IGetFriendListDataResponse.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/dialog/IGetFriendListDataResponse.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IGetMailDialogInfoRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/dialog/IGetMailDialogInfoRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IGetMailDialogInfoRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/dialog/IGetMailDialogInfoRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IGetMailDialogListRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/dialog/IGetMailDialogListRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IGetMailDialogListRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/dialog/IGetMailDialogListRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IGetMailDialogViewRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/dialog/IGetMailDialogViewRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IGetMailDialogViewRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/dialog/IGetMailDialogViewRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IGetMailDialogViewResponseData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/dialog/IGetMailDialogViewResponseData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IGetMailDialogViewResponseData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/dialog/IGetMailDialogViewResponseData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IPinDialogRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/dialog/IPinDialogRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IPinDialogRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/dialog/IPinDialogRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IRemoveDialogRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/dialog/IRemoveDialogRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/IRemoveDialogRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/dialog/IRemoveDialogRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/ISendMessageRequest.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/dialog/ISendMessageRequest.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/ISendMessageRequest.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/dialog/ISendMessageRequest.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/ISetDialogReadRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/dialog/ISetDialogReadRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/dialog/ISetDialogReadRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/dialog/ISetDialogReadRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/game/IGameConfigResponse.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/game/IGameConfigResponse.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/game/IGameConfigResponse.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/game/IGameConfigResponse.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/game/IGameEmptyCrcRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/game/IGameEmptyCrcRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/game/IGameEmptyCrcRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/game/IGameEmptyCrcRequestData.d.ts diff --git a/TypeScript/3GetSptConfigFile/types/models/eft/game/IReportNicknameRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/game/IReportNicknameRequestData.d.ts new file mode 100644 index 0000000..087c58b --- /dev/null +++ b/TypeScript/3GetSptConfigFile/types/models/eft/game/IReportNicknameRequestData.d.ts @@ -0,0 +1,3 @@ +export interface IReportNicknameRequestData { + uid: string; +} diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/game/IVersionValidateRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/game/IVersionValidateRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/game/IVersionValidateRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/game/IVersionValidateRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/health/IHealthTreatmentRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/health/IHealthTreatmentRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/health/IHealthTreatmentRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/health/IHealthTreatmentRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/health/IOffraidEatRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/health/IOffraidEatRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/health/IOffraidEatRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/health/IOffraidEatRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/health/IOffraidHealRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/health/IOffraidHealRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/health/IOffraidHealRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/health/IOffraidHealRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/health/ISyncHealthRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/health/ISyncHealthRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/health/ISyncHealthRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/health/ISyncHealthRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/HideoutUpgradeCompleteRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/hideout/HideoutUpgradeCompleteRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/HideoutUpgradeCompleteRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/hideout/HideoutUpgradeCompleteRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutArea.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutArea.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutArea.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutArea.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutContinousProductionStartRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutContinousProductionStartRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutContinousProductionStartRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutContinousProductionStartRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutProduction.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutProduction.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutProduction.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutProduction.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutPutItemInRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutPutItemInRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutPutItemInRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutPutItemInRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutScavCase.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutScavCase.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutScavCase.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutScavCase.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutScavCaseStartRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutScavCaseStartRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutScavCaseStartRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutScavCaseStartRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutSettingsBase.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutSettingsBase.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutSettingsBase.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutSettingsBase.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutSingleProductionStartRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutSingleProductionStartRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutSingleProductionStartRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutSingleProductionStartRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutTakeItemOutRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutTakeItemOutRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutTakeItemOutRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutTakeItemOutRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutTakeProductionRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutTakeProductionRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutTakeProductionRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutTakeProductionRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutToggleAreaRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutToggleAreaRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutToggleAreaRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutToggleAreaRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutUpgradeCompleteRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutUpgradeCompleteRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutUpgradeCompleteRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutUpgradeCompleteRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutUpgradeRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutUpgradeRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/hideout/IHideoutUpgradeRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/hideout/IHideoutUpgradeRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/httpResponse/IGetBodyResponseData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/httpResponse/IGetBodyResponseData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/httpResponse/IGetBodyResponseData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/httpResponse/IGetBodyResponseData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/httpResponse/INullResponseData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/httpResponse/INullResponseData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/httpResponse/INullResponseData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/httpResponse/INullResponseData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inRaid/IRegisterPlayerRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inRaid/IRegisterPlayerRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inRaid/IRegisterPlayerRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inRaid/IRegisterPlayerRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inRaid/ISaveProgressRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inRaid/ISaveProgressRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inRaid/ISaveProgressRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inRaid/ISaveProgressRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/insurance/IGetInsuranceCostRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/insurance/IGetInsuranceCostRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/insurance/IGetInsuranceCostRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/insurance/IGetInsuranceCostRequestData.d.ts diff --git a/TypeScript/3GetSptConfigFile/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts new file mode 100644 index 0000000..bf209c6 --- /dev/null +++ b/TypeScript/3GetSptConfigFile/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts @@ -0,0 +1 @@ +export declare type IGetInsuranceCostResponseData = Record>; diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/insurance/IInsureRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/insurance/IInsureRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/insurance/IInsureRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/insurance/IInsureRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IAddItemRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inventory/IAddItemRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IAddItemRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inventory/IAddItemRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryAddRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryAddRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryAddRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryAddRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryBaseActionRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryBaseActionRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryBaseActionRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryBaseActionRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryBindRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryBindRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryBindRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryBindRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryCreateMarkerRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryCreateMarkerRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryCreateMarkerRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryCreateMarkerRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryDeleteMarkerRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryDeleteMarkerRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryDeleteMarkerRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryDeleteMarkerRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryEditMarkerRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryEditMarkerRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryEditMarkerRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryEditMarkerRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryExamineRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryExamineRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryExamineRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryExamineRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryFoldRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryFoldRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryFoldRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryFoldRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryMergeRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryMergeRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryMergeRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryMergeRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryMoveRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryMoveRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryMoveRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryMoveRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryReadEncyclopediaRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryReadEncyclopediaRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryReadEncyclopediaRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryReadEncyclopediaRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryRemoveRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryRemoveRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryRemoveRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryRemoveRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventorySortRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventorySortRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventorySortRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventorySortRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventorySplitRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventorySplitRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventorySplitRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventorySplitRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventorySwapRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventorySwapRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventorySwapRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventorySwapRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryTagRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryTagRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryTagRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryTagRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryToggleRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryToggleRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryToggleRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryToggleRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryTransferRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryTransferRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/inventory/IInventoryTransferRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/inventory/IInventoryTransferRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/itemEvent/IEmptyItemEventRouterResponse.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/itemEvent/IEmptyItemEventRouterResponse.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/itemEvent/IEmptyItemEventRouterResponse.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/itemEvent/IEmptyItemEventRouterResponse.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/itemEvent/IItemEventRouterBase.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/itemEvent/IItemEventRouterBase.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/itemEvent/IItemEventRouterBase.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/itemEvent/IItemEventRouterBase.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/itemEvent/IItemEventRouterRequest.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/itemEvent/IItemEventRouterRequest.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/itemEvent/IItemEventRouterRequest.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/itemEvent/IItemEventRouterRequest.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/itemEvent/IItemEventRouterResponse.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/itemEvent/IItemEventRouterResponse.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/itemEvent/IItemEventRouterResponse.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/itemEvent/IItemEventRouterResponse.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/launcher/IChangeRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/launcher/IChangeRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/launcher/IChangeRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/launcher/IChangeRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/launcher/IGetMiniProfileRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/launcher/IGetMiniProfileRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/launcher/IGetMiniProfileRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/launcher/IGetMiniProfileRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/launcher/ILoginRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/launcher/ILoginRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/launcher/ILoginRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/launcher/ILoginRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/launcher/IMiniProfile.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/launcher/IMiniProfile.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/launcher/IMiniProfile.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/launcher/IMiniProfile.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/launcher/IRegisterData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/launcher/IRegisterData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/launcher/IRegisterData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/launcher/IRegisterData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/launcher/IRemoveProfileData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/launcher/IRemoveProfileData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/launcher/IRemoveProfileData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/launcher/IRemoveProfileData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/location/IGetLocationRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/location/IGetLocationRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/location/IGetLocationRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/location/IGetLocationRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/match/IEndOfflineRaidRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/match/IEndOfflineRaidRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/match/IEndOfflineRaidRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/match/IEndOfflineRaidRequestData.d.ts diff --git a/TypeScript/3GetSptConfigFile/types/models/eft/match/IGetGroupStatusRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/match/IGetGroupStatusRequestData.d.ts new file mode 100644 index 0000000..cbdb77f --- /dev/null +++ b/TypeScript/3GetSptConfigFile/types/models/eft/match/IGetGroupStatusRequestData.d.ts @@ -0,0 +1,8 @@ +export interface IGetGroupStatusRequestData { + location: string; + savage: boolean; + dt: string; + keyId: string; + raidMode: string; + startInGroup: boolean; +} diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/match/IGetProfileRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/match/IGetProfileRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/match/IGetProfileRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/match/IGetProfileRequestData.d.ts diff --git a/TypeScript/3GetSptConfigFile/types/models/eft/match/IJoinMatchRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/match/IJoinMatchRequestData.d.ts new file mode 100644 index 0000000..cd34f7b --- /dev/null +++ b/TypeScript/3GetSptConfigFile/types/models/eft/match/IJoinMatchRequestData.d.ts @@ -0,0 +1,12 @@ +export interface IJoinMatchRequestData { + location: string; + savage: boolean; + dt: string; + servers: Server[]; + keyId: string; +} +export interface Server { + ping: number; + ip: string; + port: string; +} diff --git a/TypeScript/3GetSptConfigFile/types/models/eft/match/IJoinMatchResult.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/match/IJoinMatchResult.d.ts new file mode 100644 index 0000000..df695f4 --- /dev/null +++ b/TypeScript/3GetSptConfigFile/types/models/eft/match/IJoinMatchResult.d.ts @@ -0,0 +1,11 @@ +export interface IJoinMatchResult { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; + version: string; + location: string; + gamemode: string; + shortid: string; +} diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/match/IStartOffineRaidRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/match/IStartOffineRaidRequestData.d.ts similarity index 96% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/match/IStartOffineRaidRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/match/IStartOffineRaidRequestData.d.ts index 84bccc8..7cc457c 100644 --- a/TypeScript/3.0GetSptConfigFile/types/models/eft/match/IStartOffineRaidRequestData.d.ts +++ b/TypeScript/3GetSptConfigFile/types/models/eft/match/IStartOffineRaidRequestData.d.ts @@ -1,6 +1,5 @@ export interface IStartOfflineRaidRequestData { locationName: string; - entryPoint: string; startTime: number; dateTime: string; gameSettings: GameSettings; diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/notes/INoteActionData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/notes/INoteActionData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/notes/INoteActionData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/notes/INoteActionData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/notifier/INotifier.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/notifier/INotifier.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/notifier/INotifier.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/notifier/INotifier.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/notifier/ISelectProfileRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/notifier/ISelectProfileRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/notifier/ISelectProfileRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/notifier/ISelectProfileRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/player/IPlayerIncrementSkillLevelRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/player/IPlayerIncrementSkillLevelRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/player/IPlayerIncrementSkillLevelRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/player/IPlayerIncrementSkillLevelRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/presetBuild/IPresetBuildActionRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/presetBuild/IPresetBuildActionRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/presetBuild/IPresetBuildActionRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/presetBuild/IPresetBuildActionRequestData.d.ts diff --git a/TypeScript/3GetSptConfigFile/types/models/eft/profile/GetProfileStatusResponseData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/profile/GetProfileStatusResponseData.d.ts new file mode 100644 index 0000000..eee9b4f --- /dev/null +++ b/TypeScript/3GetSptConfigFile/types/models/eft/profile/GetProfileStatusResponseData.d.ts @@ -0,0 +1,11 @@ +export interface GetProfileStatusResponseData { + maxPveCountExceeded: false; + profiles: ProfileData[]; +} +export interface ProfileData { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; +} diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/profile/IAkiProfile.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/profile/IAkiProfile.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/profile/IAkiProfile.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/profile/IAkiProfile.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/profile/IProfileChangeNicknameRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/profile/IProfileChangeNicknameRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/profile/IProfileChangeNicknameRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/profile/IProfileChangeNicknameRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/profile/IProfileChangeVoiceRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/profile/IProfileChangeVoiceRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/profile/IProfileChangeVoiceRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/profile/IProfileChangeVoiceRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/profile/IProfileCreateRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/profile/IProfileCreateRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/profile/IProfileCreateRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/profile/IProfileCreateRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/profile/ISearchFriendRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/profile/ISearchFriendRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/profile/ISearchFriendRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/profile/ISearchFriendRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/profile/ISearchFriendResponse.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/profile/ISearchFriendResponse.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/profile/ISearchFriendResponse.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/profile/ISearchFriendResponse.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/profile/IValidateNicknameRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/profile/IValidateNicknameRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/profile/IValidateNicknameRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/profile/IValidateNicknameRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/quests/IAcceptQuestRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/quests/IAcceptQuestRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/quests/IAcceptQuestRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/quests/IAcceptQuestRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/quests/ICompleteQuestRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/quests/ICompleteQuestRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/quests/ICompleteQuestRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/quests/ICompleteQuestRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/quests/IHandoverQuestRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/quests/IHandoverQuestRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/quests/IHandoverQuestRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/quests/IHandoverQuestRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/quests/IListQuestsRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/quests/IListQuestsRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/quests/IListQuestsRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/quests/IListQuestsRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/quests/IRepeatableQuestChangeRequest.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/quests/IRepeatableQuestChangeRequest.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/quests/IRepeatableQuestChangeRequest.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/quests/IRepeatableQuestChangeRequest.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/ragfair/IAddOfferRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/ragfair/IAddOfferRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/ragfair/IAddOfferRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/ragfair/IAddOfferRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/ragfair/IExtendOfferRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/ragfair/IExtendOfferRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/ragfair/IExtendOfferRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/ragfair/IExtendOfferRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/ragfair/IGetItemPriceResult.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/ragfair/IGetItemPriceResult.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/ragfair/IGetItemPriceResult.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/ragfair/IGetItemPriceResult.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/ragfair/IGetMarketPriceRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/ragfair/IGetMarketPriceRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/ragfair/IGetMarketPriceRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/ragfair/IGetMarketPriceRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/ragfair/IGetOffersResult.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/ragfair/IGetOffersResult.d.ts similarity index 80% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/ragfair/IGetOffersResult.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/ragfair/IGetOffersResult.d.ts index 1c11422..fbc631d 100644 --- a/TypeScript/3.0GetSptConfigFile/types/models/eft/ragfair/IGetOffersResult.d.ts +++ b/TypeScript/3GetSptConfigFile/types/models/eft/ragfair/IGetOffersResult.d.ts @@ -1,6 +1,6 @@ import { IRagfairOffer } from "./IRagfairOffer"; export interface IGetOffersResult { - categories: Record; + categories?: Record; offers: IRagfairOffer[]; offersCount: number; selectedCategory: string; diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/ragfair/IRagfairOffer.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/ragfair/IRagfairOffer.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/ragfair/IRagfairOffer.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/ragfair/IRagfairOffer.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/ragfair/IRemoveOfferRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/ragfair/IRemoveOfferRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/ragfair/IRemoveOfferRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/ragfair/IRemoveOfferRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/ragfair/ISearchRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/ragfair/ISearchRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/ragfair/ISearchRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/ragfair/ISearchRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/repair/IBaseRepairActionDataRequest.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/repair/IBaseRepairActionDataRequest.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/repair/IBaseRepairActionDataRequest.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/repair/IBaseRepairActionDataRequest.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/repair/IRepairActionDataRequest.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/repair/IRepairActionDataRequest.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/repair/IRepairActionDataRequest.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/repair/IRepairActionDataRequest.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/repair/ITraderRepairActionDataRequest.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/repair/ITraderRepairActionDataRequest.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/repair/ITraderRepairActionDataRequest.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/repair/ITraderRepairActionDataRequest.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/trade/IProcessBaseTradeRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/trade/IProcessBaseTradeRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/trade/IProcessBaseTradeRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/trade/IProcessBaseTradeRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/trade/IProcessBuyTradeRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/trade/IProcessBuyTradeRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/trade/IProcessBuyTradeRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/trade/IProcessBuyTradeRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/trade/IProcessRagfairTradeRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/trade/IProcessRagfairTradeRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/trade/IProcessRagfairTradeRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/trade/IProcessRagfairTradeRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/trade/IProcessSellTradeRequestData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/trade/IProcessSellTradeRequestData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/trade/IProcessSellTradeRequestData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/trade/IProcessSellTradeRequestData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/weather/IWeatherData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/weather/IWeatherData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/weather/IWeatherData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/weather/IWeatherData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/eft/wishlist/IWishlistActionData.d.ts b/TypeScript/3GetSptConfigFile/types/models/eft/wishlist/IWishlistActionData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/eft/wishlist/IWishlistActionData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/eft/wishlist/IWishlistActionData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/enums/BaseClasses.d.ts b/TypeScript/3GetSptConfigFile/types/models/enums/BaseClasses.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/enums/BaseClasses.d.ts rename to TypeScript/3GetSptConfigFile/types/models/enums/BaseClasses.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/enums/ConfigTypes.d.ts b/TypeScript/3GetSptConfigFile/types/models/enums/ConfigTypes.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/enums/ConfigTypes.d.ts rename to TypeScript/3GetSptConfigFile/types/models/enums/ConfigTypes.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/enums/ELocationName.d.ts b/TypeScript/3GetSptConfigFile/types/models/enums/ELocationName.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/enums/ELocationName.d.ts rename to TypeScript/3GetSptConfigFile/types/models/enums/ELocationName.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/enums/EquipmentSlots.d.ts b/TypeScript/3GetSptConfigFile/types/models/enums/EquipmentSlots.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/enums/EquipmentSlots.d.ts rename to TypeScript/3GetSptConfigFile/types/models/enums/EquipmentSlots.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/enums/HideoutAreas.d.ts b/TypeScript/3GetSptConfigFile/types/models/enums/HideoutAreas.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/enums/HideoutAreas.d.ts rename to TypeScript/3GetSptConfigFile/types/models/enums/HideoutAreas.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/enums/MemberCategory.d.ts b/TypeScript/3GetSptConfigFile/types/models/enums/MemberCategory.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/enums/MemberCategory.d.ts rename to TypeScript/3GetSptConfigFile/types/models/enums/MemberCategory.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/enums/MessageType.d.ts b/TypeScript/3GetSptConfigFile/types/models/enums/MessageType.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/enums/MessageType.d.ts rename to TypeScript/3GetSptConfigFile/types/models/enums/MessageType.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/enums/Money.d.ts b/TypeScript/3GetSptConfigFile/types/models/enums/Money.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/enums/Money.d.ts rename to TypeScript/3GetSptConfigFile/types/models/enums/Money.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/enums/Traders.d.ts b/TypeScript/3GetSptConfigFile/types/models/enums/Traders.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/enums/Traders.d.ts rename to TypeScript/3GetSptConfigFile/types/models/enums/Traders.d.ts diff --git a/TypeScript/3GetSptConfigFile/types/models/external/IPostAkiLoadMod.d.ts b/TypeScript/3GetSptConfigFile/types/models/external/IPostAkiLoadMod.d.ts new file mode 100644 index 0000000..f6950e8 --- /dev/null +++ b/TypeScript/3GetSptConfigFile/types/models/external/IPostAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostAkiLoadMod { + postAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/3GetSptConfigFile/types/models/external/IPostDBLoadMod.d.ts b/TypeScript/3GetSptConfigFile/types/models/external/IPostDBLoadMod.d.ts new file mode 100644 index 0000000..ca7c682 --- /dev/null +++ b/TypeScript/3GetSptConfigFile/types/models/external/IPostDBLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostDBLoadMod { + postDBLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/3GetSptConfigFile/types/models/external/IPreAkiLoadMod.d.ts b/TypeScript/3GetSptConfigFile/types/models/external/IPreAkiLoadMod.d.ts new file mode 100644 index 0000000..ae7579e --- /dev/null +++ b/TypeScript/3GetSptConfigFile/types/models/external/IPreAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPreAkiLoadMod { + preAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/3.0GetSptConfigFile/types/models/external/tsyringe.d.ts b/TypeScript/3GetSptConfigFile/types/models/external/tsyringe.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/external/tsyringe.d.ts rename to TypeScript/3GetSptConfigFile/types/models/external/tsyringe.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/bindings/Route.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/bindings/Route.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/bindings/Route.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/bindings/Route.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IBotCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IBotCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IBotCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IBotCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IBundleCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IBundleCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IBundleCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IBundleCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/ICustomizationCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/ICustomizationCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/ICustomizationCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/ICustomizationCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IDataCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IDataCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IDataCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IDataCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IDialogueCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IDialogueCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IDialogueCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IDialogueCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IGameCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IGameCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IGameCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IGameCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IHandbookCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IHandbookCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IHandbookCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IHandbookCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IHealthCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IHealthCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IHealthCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IHealthCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IHideoutCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IHideoutCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IHideoutCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IHideoutCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IHttpCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IHttpCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IHttpCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IHttpCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IInraidCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IInraidCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IInraidCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IInraidCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IInsuranceCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IInsuranceCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IInsuranceCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IInsuranceCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IInventoryCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IInventoryCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IInventoryCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IInventoryCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IItemEventCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IItemEventCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IItemEventCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IItemEventCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/ILauncherCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/ILauncherCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/ILauncherCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/ILauncherCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/ILocationCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/ILocationCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/ILocationCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/ILocationCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IMatchCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IMatchCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IMatchCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IMatchCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IModCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IModCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IModCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IModCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/INoteCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/INoteCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/INoteCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/INoteCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/INotifierCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/INotifierCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/INotifierCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/INotifierCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IPresetBuildCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IPresetBuildCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IPresetBuildCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IPresetBuildCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IPresetCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IPresetCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IPresetCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IPresetCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IProfileCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IProfileCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IProfileCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IProfileCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IQuestCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IQuestCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IQuestCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IQuestCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IRagfairCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IRagfairCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IRagfairCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IRagfairCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IRepairCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IRepairCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IRepairCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IRepairCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/ISaveCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/ISaveCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/ISaveCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/ISaveCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/ITradeCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/ITradeCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/ITradeCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/ITradeCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/ITraderCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/ITraderCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/ITraderCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/ITraderCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IWeatherCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IWeatherCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IWeatherCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IWeatherCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IWishlistCallbacks.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IWishlistCallbacks.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/callbacks/IWishlistCallbacks.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/callbacks/IWishlistCallbacks.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/config/IAirdropConfig.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/config/IAirdropConfig.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/config/IAirdropConfig.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/config/IAirdropConfig.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/config/IBaseConfig.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/config/IBaseConfig.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/config/IBaseConfig.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/config/IBaseConfig.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/config/IBotConfig.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/config/IBotConfig.d.ts similarity index 97% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/config/IBotConfig.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/config/IBotConfig.d.ts index 5fb9d93..f8cf39b 100644 --- a/TypeScript/3.0GetSptConfigFile/types/models/spt/config/IBotConfig.d.ts +++ b/TypeScript/3GetSptConfigFile/types/models/spt/config/IBotConfig.d.ts @@ -18,6 +18,7 @@ export interface PresetBatch { bossKojaniy: number; bossSanitar: number; bossTagilla: number; + bossKnight: number; bossTest: number; cursedAssault: number; followerBully: number; @@ -28,6 +29,8 @@ export interface PresetBatch { followerKojaniy: number; followerSanitar: number; followerTagilla: number; + followerBirdEye: number; + followerBigPipe: number; followerTest: number; marksman: number; pmcBot: number; diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/config/ICoreConfig.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/config/ICoreConfig.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/config/ICoreConfig.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/config/ICoreConfig.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/config/IHealthConfig.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/config/IHealthConfig.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/config/IHealthConfig.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/config/IHealthConfig.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/config/IHideoutConfig.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/config/IHideoutConfig.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/config/IHideoutConfig.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/config/IHideoutConfig.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/config/IHttpConfig.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/config/IHttpConfig.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/config/IHttpConfig.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/config/IHttpConfig.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/config/IInRaidConfig.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/config/IInRaidConfig.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/config/IInRaidConfig.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/config/IInRaidConfig.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/config/IInsuranceConfig.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/config/IInsuranceConfig.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/config/IInsuranceConfig.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/config/IInsuranceConfig.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/config/IInventoryConfig.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/config/IInventoryConfig.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/config/IInventoryConfig.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/config/IInventoryConfig.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/config/ILocaleConfig.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/config/ILocaleConfig.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/config/ILocaleConfig.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/config/ILocaleConfig.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/config/ILocationConfig.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/config/ILocationConfig.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/config/ILocationConfig.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/config/ILocationConfig.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/config/IMatchConfig.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/config/IMatchConfig.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/config/IMatchConfig.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/config/IMatchConfig.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/config/IQuestConfig.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/config/IQuestConfig.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/config/IQuestConfig.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/config/IQuestConfig.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/config/IRagfairConfig.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/config/IRagfairConfig.d.ts similarity index 98% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/config/IRagfairConfig.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/config/IRagfairConfig.d.ts index 2d151ca..8518252 100644 --- a/TypeScript/3.0GetSptConfigFile/types/models/spt/config/IRagfairConfig.d.ts +++ b/TypeScript/3GetSptConfigFile/types/models/spt/config/IRagfairConfig.d.ts @@ -30,6 +30,7 @@ export interface Dynamic { expiredOfferThreshold: number; offerItemCount: MinMax; price: MinMax; + presetPrice: MinMax; endTimeSeconds: MinMax; condition: Condition; stackablePercent: MinMax; diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/config/IRepairConfig.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/config/IRepairConfig.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/config/IRepairConfig.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/config/IRepairConfig.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/config/ITraderConfig.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/config/ITraderConfig.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/config/ITraderConfig.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/config/ITraderConfig.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/config/IWeatherConfig.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/config/IWeatherConfig.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/config/IWeatherConfig.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/config/IWeatherConfig.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/controllers/IBotController.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/controllers/IBotController.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/controllers/IBotController.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/controllers/IBotController.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/generators/IBotGenerator.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/generators/IBotGenerator.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/generators/IBotGenerator.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/generators/IBotGenerator.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/generators/ILocationGenerator.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/generators/ILocationGenerator.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/generators/ILocationGenerator.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/generators/ILocationGenerator.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/generators/IPMCLootGenerator.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/generators/IPMCLootGenerator.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/generators/IPMCLootGenerator.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/generators/IPMCLootGenerator.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/generators/IRagfairAssortGenerator.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/generators/IRagfairAssortGenerator.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/generators/IRagfairAssortGenerator.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/generators/IRagfairAssortGenerator.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/generators/IRagfairOfferGenerator.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/generators/IRagfairOfferGenerator.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/generators/IRagfairOfferGenerator.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/generators/IRagfairOfferGenerator.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/logging/LogBackgroundColor.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/logging/LogBackgroundColor.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/logging/LogBackgroundColor.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/logging/LogBackgroundColor.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/logging/LogTextColor.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/logging/LogTextColor.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/logging/LogTextColor.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/logging/LogTextColor.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/logging/SptLogger.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/logging/SptLogger.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/logging/SptLogger.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/logging/SptLogger.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/mod/IMod.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/mod/IMod.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/mod/IMod.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/mod/IMod.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/mod/IModLoader.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/mod/IModLoader.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/mod/IModLoader.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/mod/IModLoader.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/mod/IPackageJsonData.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/mod/IPackageJsonData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/mod/IPackageJsonData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/mod/IPackageJsonData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/ragfair/IRagfairServerPrices.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/ragfair/IRagfairServerPrices.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/ragfair/IRagfairServerPrices.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/ragfair/IRagfairServerPrices.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/server/IDatabaseTables.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/server/IDatabaseTables.d.ts similarity index 81% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/server/IDatabaseTables.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/server/IDatabaseTables.d.ts index e0d3fdd..9978459 100644 --- a/TypeScript/3.0GetSptConfigFile/types/models/spt/server/IDatabaseTables.d.ts +++ b/TypeScript/3GetSptConfigFile/types/models/spt/server/IDatabaseTables.d.ts @@ -6,6 +6,7 @@ import { ICustomizationItem } from "../../eft/common/tables/ICustomizationItem"; import { IHandbookBase } from "../../eft/common/tables/IHandbookBase"; import { ILootBase } from "../../eft/common/tables/ILootBase"; import { IMatch } from "../../eft/common/tables/IMatch"; +import { IProfileTemplates } from "../../eft/common/tables/IProfileTemplate"; import { IQuest } from "../../eft/common/tables/IQuest"; import { IRepeatableQuestDatabase } from "../../eft/common/tables/IRepeatableQuests"; import { ITemplateItem } from "../../eft/common/tables/ITemplateItem"; @@ -39,10 +40,13 @@ export interface IDatabaseTables { items: Record; quests: IQuest[]; repeatableQuests: IRepeatableQuestDatabase; + /** DEPRECATED - Items file found in the client, massivly out of date compared to templates.items, try not to use this, remove ASAP*/ clientItems: Record; handbook: IHandbookBase; customization: Record; - profiles: any; + /** The profile templates listed in the launcher on profile creation, split by account type (e.g. Standard) then side (e.g. bear/usec) */ + profiles: IProfileTemplates; + /** Flea prices of items - gathered from online flea market dump */ prices: Record; }; traders?: Record; diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/server/IHttpServer.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/server/IHttpServer.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/server/IHttpServer.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/server/IHttpServer.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/server/ILocaleBase.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/server/ILocaleBase.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/server/ILocaleBase.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/server/ILocaleBase.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/server/ILocations.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/server/ILocations.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/server/ILocations.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/server/ILocations.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/server/IServerBase.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/server/IServerBase.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/server/IServerBase.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/server/IServerBase.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/server/ISettingsBase.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/server/ISettingsBase.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/server/ISettingsBase.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/server/ISettingsBase.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/services/CustomPreset.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/services/CustomPreset.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/services/CustomPreset.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/services/CustomPreset.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/services/CustomTraderAssortData.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/services/CustomTraderAssortData.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/services/CustomTraderAssortData.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/services/CustomTraderAssortData.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/utils/IAsyncQueue.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/utils/IAsyncQueue.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/utils/IAsyncQueue.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/utils/IAsyncQueue.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/utils/ICommand.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/utils/ICommand.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/utils/ICommand.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/utils/ICommand.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/utils/ILogger.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/utils/ILogger.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/utils/ILogger.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/utils/ILogger.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/models/spt/utils/IUuidGenerator.d.ts b/TypeScript/3GetSptConfigFile/types/models/spt/utils/IUuidGenerator.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/models/spt/utils/IUuidGenerator.d.ts rename to TypeScript/3GetSptConfigFile/types/models/spt/utils/IUuidGenerator.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/HttpRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/HttpRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/HttpRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/HttpRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/ImageRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/ImageRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/ImageRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/ImageRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/ItemEventRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/ItemEventRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/ItemEventRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/ItemEventRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/dynamic/BotDynamicRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/dynamic/BotDynamicRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/dynamic/BotDynamicRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/dynamic/BotDynamicRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/dynamic/BundleDynamicRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/dynamic/BundleDynamicRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/dynamic/BundleDynamicRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/dynamic/BundleDynamicRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/dynamic/CustomizationDynamicRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/dynamic/CustomizationDynamicRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/dynamic/CustomizationDynamicRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/dynamic/CustomizationDynamicRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/dynamic/DataDynamicRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/dynamic/DataDynamicRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/dynamic/DataDynamicRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/dynamic/DataDynamicRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/dynamic/HttpDynamicRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/dynamic/HttpDynamicRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/dynamic/HttpDynamicRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/dynamic/HttpDynamicRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/dynamic/InraidDynamicRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/dynamic/InraidDynamicRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/dynamic/InraidDynamicRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/dynamic/InraidDynamicRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/dynamic/LocationDynamicRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/dynamic/LocationDynamicRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/dynamic/LocationDynamicRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/dynamic/LocationDynamicRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/dynamic/NotifierDynamicRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/dynamic/NotifierDynamicRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/dynamic/NotifierDynamicRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/dynamic/NotifierDynamicRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/dynamic/TraderDynamicRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/dynamic/TraderDynamicRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/dynamic/TraderDynamicRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/dynamic/TraderDynamicRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/item_events/CustomizationItemEventRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/item_events/CustomizationItemEventRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/item_events/CustomizationItemEventRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/item_events/CustomizationItemEventRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/item_events/HealthItemEventRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/item_events/HealthItemEventRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/item_events/HealthItemEventRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/item_events/HealthItemEventRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/item_events/HideoutItemEventRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/item_events/HideoutItemEventRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/item_events/HideoutItemEventRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/item_events/HideoutItemEventRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/item_events/InsuranceItemEventRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/item_events/InsuranceItemEventRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/item_events/InsuranceItemEventRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/item_events/InsuranceItemEventRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/item_events/InventoryItemEventRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/item_events/InventoryItemEventRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/item_events/InventoryItemEventRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/item_events/InventoryItemEventRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/item_events/NoteItemEventRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/item_events/NoteItemEventRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/item_events/NoteItemEventRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/item_events/NoteItemEventRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/item_events/PresetBuildItemEventRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/item_events/PresetBuildItemEventRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/item_events/PresetBuildItemEventRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/item_events/PresetBuildItemEventRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/item_events/QuestItemEventRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/item_events/QuestItemEventRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/item_events/QuestItemEventRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/item_events/QuestItemEventRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/item_events/RagfairItemEventRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/item_events/RagfairItemEventRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/item_events/RagfairItemEventRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/item_events/RagfairItemEventRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/item_events/RepairItemEventRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/item_events/RepairItemEventRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/item_events/RepairItemEventRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/item_events/RepairItemEventRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/item_events/TradeItemEventRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/item_events/TradeItemEventRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/item_events/TradeItemEventRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/item_events/TradeItemEventRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/item_events/WishlistItemEventRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/item_events/WishlistItemEventRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/item_events/WishlistItemEventRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/item_events/WishlistItemEventRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/save_load/HealthSaveLoadRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/save_load/HealthSaveLoadRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/save_load/HealthSaveLoadRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/save_load/HealthSaveLoadRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/save_load/InraidSaveLoadRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/save_load/InraidSaveLoadRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/save_load/InraidSaveLoadRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/save_load/InraidSaveLoadRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/save_load/InsuranceSaveLoadRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/save_load/InsuranceSaveLoadRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/save_load/InsuranceSaveLoadRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/save_load/InsuranceSaveLoadRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/save_load/ProfileSaveLoadRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/save_load/ProfileSaveLoadRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/save_load/ProfileSaveLoadRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/save_load/ProfileSaveLoadRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/serializers/BundleSerializer.d.ts b/TypeScript/3GetSptConfigFile/types/routers/serializers/BundleSerializer.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/serializers/BundleSerializer.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/serializers/BundleSerializer.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/serializers/ImageSerializer.d.ts b/TypeScript/3GetSptConfigFile/types/routers/serializers/ImageSerializer.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/serializers/ImageSerializer.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/serializers/ImageSerializer.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/serializers/NotifySerializer.d.ts b/TypeScript/3GetSptConfigFile/types/routers/serializers/NotifySerializer.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/serializers/NotifySerializer.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/serializers/NotifySerializer.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/static/BotStaticRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/static/BotStaticRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/static/BotStaticRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/static/BotStaticRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/static/BundleStaticRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/static/BundleStaticRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/static/BundleStaticRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/static/BundleStaticRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/static/CustomizationStaticRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/static/CustomizationStaticRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/static/CustomizationStaticRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/static/CustomizationStaticRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/static/DataStaticRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/static/DataStaticRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/static/DataStaticRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/static/DataStaticRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/static/DialogStaticRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/static/DialogStaticRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/static/DialogStaticRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/static/DialogStaticRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/static/GameStaticRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/static/GameStaticRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/static/GameStaticRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/static/GameStaticRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/static/HealthStaticRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/static/HealthStaticRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/static/HealthStaticRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/static/HealthStaticRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/static/InraidStaticRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/static/InraidStaticRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/static/InraidStaticRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/static/InraidStaticRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/static/InsuranceStaticRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/static/InsuranceStaticRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/static/InsuranceStaticRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/static/InsuranceStaticRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/static/ItemEventStaticRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/static/ItemEventStaticRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/static/ItemEventStaticRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/static/ItemEventStaticRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/static/LauncherStaticRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/static/LauncherStaticRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/static/LauncherStaticRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/static/LauncherStaticRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/static/LocationStaticRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/static/LocationStaticRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/static/LocationStaticRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/static/LocationStaticRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/static/MatchStaticRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/static/MatchStaticRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/static/MatchStaticRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/static/MatchStaticRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/static/NotifierStaticRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/static/NotifierStaticRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/static/NotifierStaticRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/static/NotifierStaticRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/static/PresetStaticRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/static/PresetStaticRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/static/PresetStaticRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/static/PresetStaticRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/static/ProfileStaticRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/static/ProfileStaticRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/static/ProfileStaticRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/static/ProfileStaticRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/static/QuestStaticRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/static/QuestStaticRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/static/QuestStaticRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/static/QuestStaticRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/static/RagfairStaticRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/static/RagfairStaticRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/static/RagfairStaticRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/static/RagfairStaticRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/static/TraderStaticRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/static/TraderStaticRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/static/TraderStaticRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/static/TraderStaticRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/routers/static/WeatherStaticRouter.d.ts b/TypeScript/3GetSptConfigFile/types/routers/static/WeatherStaticRouter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/routers/static/WeatherStaticRouter.d.ts rename to TypeScript/3GetSptConfigFile/types/routers/static/WeatherStaticRouter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/servers/ConfigServer.d.ts b/TypeScript/3GetSptConfigFile/types/servers/ConfigServer.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/servers/ConfigServer.d.ts rename to TypeScript/3GetSptConfigFile/types/servers/ConfigServer.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/servers/DatabaseServer.d.ts b/TypeScript/3GetSptConfigFile/types/servers/DatabaseServer.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/servers/DatabaseServer.d.ts rename to TypeScript/3GetSptConfigFile/types/servers/DatabaseServer.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/servers/HttpServer.d.ts b/TypeScript/3GetSptConfigFile/types/servers/HttpServer.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/servers/HttpServer.d.ts rename to TypeScript/3GetSptConfigFile/types/servers/HttpServer.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/servers/RagfairServer.d.ts b/TypeScript/3GetSptConfigFile/types/servers/RagfairServer.d.ts similarity index 92% rename from TypeScript/3.0GetSptConfigFile/types/servers/RagfairServer.d.ts rename to TypeScript/3GetSptConfigFile/types/servers/RagfairServer.d.ts index 60c92b5..bc86cdb 100644 --- a/TypeScript/3.0GetSptConfigFile/types/servers/RagfairServer.d.ts +++ b/TypeScript/3GetSptConfigFile/types/servers/RagfairServer.d.ts @@ -17,7 +17,8 @@ export declare class RagfairServer { constructor(logger: ILogger, ragfairOfferGenerator: RagfairOfferGenerator, ragfairOfferService: RagfairOfferService, ragfairCategoriesService: RagfairCategoriesService, ragfairRequiredItemsService: RagfairRequiredItemsService, configServer: ConfigServer); load(): void; update(): void; - getCategories(): Record; + getAllCategories(): Record; + getBespokeCategories(offers: IRagfairOffer[]): Record; /** * Disable/Hide an offer from flea * @param offerId diff --git a/TypeScript/3.0GetSptConfigFile/types/servers/SaveServer.d.ts b/TypeScript/3GetSptConfigFile/types/servers/SaveServer.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/servers/SaveServer.d.ts rename to TypeScript/3GetSptConfigFile/types/servers/SaveServer.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/CustomHandbookItemService.d.ts b/TypeScript/3GetSptConfigFile/types/services/CustomHandbookItemService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/CustomHandbookItemService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/CustomHandbookItemService.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/CustomItemService.d.ts b/TypeScript/3GetSptConfigFile/types/services/CustomItemService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/CustomItemService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/CustomItemService.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/customPresetService.d.ts b/TypeScript/3GetSptConfigFile/types/services/CustomPresetService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/customPresetService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/CustomPresetService.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/CustomTraderAssortService.d.ts b/TypeScript/3GetSptConfigFile/types/services/CustomTraderAssortService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/CustomTraderAssortService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/CustomTraderAssortService.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/FenceService.d.ts b/TypeScript/3GetSptConfigFile/types/services/FenceService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/FenceService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/FenceService.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/HashCacheService.d.ts b/TypeScript/3GetSptConfigFile/types/services/HashCacheService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/HashCacheService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/HashCacheService.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/InsuranceService.d.ts b/TypeScript/3GetSptConfigFile/types/services/InsuranceService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/InsuranceService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/InsuranceService.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/LocaleService.d.ts b/TypeScript/3GetSptConfigFile/types/services/LocaleService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/LocaleService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/LocaleService.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/MatchLocationService.d.ts b/TypeScript/3GetSptConfigFile/types/services/MatchLocationService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/MatchLocationService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/MatchLocationService.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/ModCompilerService.d.ts b/TypeScript/3GetSptConfigFile/types/services/ModCompilerService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/ModCompilerService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/ModCompilerService.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/NotificationService.d.ts b/TypeScript/3GetSptConfigFile/types/services/NotificationService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/NotificationService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/NotificationService.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/PaymentService.d.ts b/TypeScript/3GetSptConfigFile/types/services/PaymentService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/PaymentService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/PaymentService.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/PlayerService.d.ts b/TypeScript/3GetSptConfigFile/types/services/PlayerService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/PlayerService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/PlayerService.d.ts diff --git a/TypeScript/3GetSptConfigFile/types/services/RagfairCategoriesService.d.ts b/TypeScript/3GetSptConfigFile/types/services/RagfairCategoriesService.d.ts new file mode 100644 index 0000000..83910e5 --- /dev/null +++ b/TypeScript/3GetSptConfigFile/types/services/RagfairCategoriesService.d.ts @@ -0,0 +1,40 @@ +import { IRagfairOffer } from "../models/eft/ragfair/IRagfairOffer"; +import { ILogger } from "../models/spt/utils/ILogger"; +export declare class RagfairCategoriesService { + protected logger: ILogger; + protected categories: Record; + constructor(logger: ILogger); + /** + * Get all flea categories and their count of offers + * @returns item categories and count + */ + getAllCategories(): Record; + /** + * With the supplied items, get custom categories + * @returns a custom list of categories + */ + getBespokeCategories(offers: IRagfairOffer[]): Record; + /** + * Take an array of ragfair offers and create a dictionary of items with thier corrisponding offer count + * @param offers ragfair offers + * @returns categories and count + */ + protected processOffersIntoCategories(offers: IRagfairOffer[]): Record; + /** + * Increment or decrement a category array + * @param offer offer to process + * @param categories categories to update + * @param increment should item be incremented or decremented + */ + protected addOrIncrementCategory(offer: IRagfairOffer, categories: Record, increment?: boolean): void; + /** + * Increase category count by 1 + * @param offer + */ + incrementCategory(offer: IRagfairOffer): void; + /** + * Reduce category count by 1 + * @param offer + */ + decrementCategory(offer: IRagfairOffer): void; +} diff --git a/TypeScript/3.0GetSptConfigFile/types/services/RagfairLinkedItemService.d.ts b/TypeScript/3GetSptConfigFile/types/services/RagfairLinkedItemService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/RagfairLinkedItemService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/RagfairLinkedItemService.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/RagfairOfferService.d.ts b/TypeScript/3GetSptConfigFile/types/services/RagfairOfferService.d.ts similarity index 86% rename from TypeScript/3.0GetSptConfigFile/types/services/RagfairOfferService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/RagfairOfferService.d.ts index 7afbf8c..7398a8f 100644 --- a/TypeScript/3.0GetSptConfigFile/types/services/RagfairOfferService.d.ts +++ b/TypeScript/3GetSptConfigFile/types/services/RagfairOfferService.d.ts @@ -11,12 +11,14 @@ import { DatabaseServer } from "../servers/DatabaseServer"; import { SaveServer } from "../servers/SaveServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; import { TimeUtil } from "../utils/TimeUtil"; +import { RagfairCategoriesService } from "./RagfairCategoriesService"; export declare class RagfairOfferService { protected logger: ILogger; protected timeUtil: TimeUtil; protected databaseServer: DatabaseServer; protected saveServer: SaveServer; protected ragfairServerHelper: RagfairServerHelper; + protected ragfairCategoriesService: RagfairCategoriesService; protected profileHelper: ProfileHelper; protected itemEventRouter: ItemEventRouter; protected httpResponse: HttpResponseUtil; @@ -26,12 +28,16 @@ export declare class RagfairOfferService { protected expiredOffers: Item[]; protected offers: IRagfairOffer[]; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, ragfairCategoriesService: RagfairCategoriesService, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + /** + * Get all offers + * @returns IRagfairOffer array + */ getOffers(): IRagfairOffer[]; getOfferByOfferId(offerId: string): IRagfairOffer; getOffersOfType(templateId: string): IRagfairOffer[]; addOffer(offer: IRagfairOffer): void; - addOfferToExpired(offer: Item): void; + addOfferToExpired(staleOffer: IRagfairOffer): void; setTraderUpdateStatus(traderId: string, shouldUpdate: boolean): void; shouldTraderBeUpdated(traderID: string): boolean; getExpiredOfferCount(): number; diff --git a/TypeScript/3.0GetSptConfigFile/types/services/RagfairPriceService.d.ts b/TypeScript/3GetSptConfigFile/types/services/RagfairPriceService.d.ts similarity index 74% rename from TypeScript/3.0GetSptConfigFile/types/services/RagfairPriceService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/RagfairPriceService.d.ts index 5256b99..e3168a6 100644 --- a/TypeScript/3.0GetSptConfigFile/types/services/RagfairPriceService.d.ts +++ b/TypeScript/3GetSptConfigFile/types/services/RagfairPriceService.d.ts @@ -28,5 +28,19 @@ export declare class RagfairPriceService { getFleaPriceForItem(tplId: string): number; getBarterPrice(barterScheme: IBarterScheme[]): number; getDynamicOfferPrice(items: Item[], desiredCurrency: string): number; + /** + * Multiply the price by a randomised curve where n = 2, shift = 2 + * @param existingPrice price to alter + * @param isPreset is the item we're multiplying a preset + * @returns multiplied price + */ + protected randomisePrice(existingPrice: number, isPreset: boolean): number; + /** + * Calculate the cost of a weapon preset by adding together the price of its mods + base price of default weapon preset + * @param item base weapon + * @param items weapon plus mods + * @param existingPrice price of existing base weapon + * @returns + */ getWeaponPresetPrice(item: Item, items: Item[], existingPrice: number): number; } diff --git a/TypeScript/3.0GetSptConfigFile/types/services/RagfairRequiredItemsService.d.ts b/TypeScript/3GetSptConfigFile/types/services/RagfairRequiredItemsService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/RagfairRequiredItemsService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/RagfairRequiredItemsService.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/TraderAssortService.d.ts b/TypeScript/3GetSptConfigFile/types/services/TraderAssortService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/TraderAssortService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/TraderAssortService.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/mod/dynamicRouter/DynamicRouterMod.d.ts b/TypeScript/3GetSptConfigFile/types/services/mod/dynamicRouter/DynamicRouterMod.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/mod/dynamicRouter/DynamicRouterMod.d.ts rename to TypeScript/3GetSptConfigFile/types/services/mod/dynamicRouter/DynamicRouterMod.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/mod/dynamicRouter/DynamicRouterModService.d.ts b/TypeScript/3GetSptConfigFile/types/services/mod/dynamicRouter/DynamicRouterModService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/mod/dynamicRouter/DynamicRouterModService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/mod/dynamicRouter/DynamicRouterModService.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/mod/image/imageRouteService.d.ts b/TypeScript/3GetSptConfigFile/types/services/mod/image/ImageRouteService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/mod/image/imageRouteService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/mod/image/ImageRouteService.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/mod/onLoad/OnLoadMod.d.ts b/TypeScript/3GetSptConfigFile/types/services/mod/onLoad/OnLoadMod.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/mod/onLoad/OnLoadMod.d.ts rename to TypeScript/3GetSptConfigFile/types/services/mod/onLoad/OnLoadMod.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/mod/onLoad/OnLoadModService.d.ts b/TypeScript/3GetSptConfigFile/types/services/mod/onLoad/OnLoadModService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/mod/onLoad/OnLoadModService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/mod/onLoad/OnLoadModService.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/mod/onUpdate/OnUpdateMod.d.ts b/TypeScript/3GetSptConfigFile/types/services/mod/onUpdate/OnUpdateMod.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/mod/onUpdate/OnUpdateMod.d.ts rename to TypeScript/3GetSptConfigFile/types/services/mod/onUpdate/OnUpdateMod.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/mod/onUpdate/OnUpdateModService.d.ts b/TypeScript/3GetSptConfigFile/types/services/mod/onUpdate/OnUpdateModService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/mod/onUpdate/OnUpdateModService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/mod/onUpdate/OnUpdateModService.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/mod/staticRouter/StaticRouterMod.d.ts b/TypeScript/3GetSptConfigFile/types/services/mod/staticRouter/StaticRouterMod.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/mod/staticRouter/StaticRouterMod.d.ts rename to TypeScript/3GetSptConfigFile/types/services/mod/staticRouter/StaticRouterMod.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/services/mod/staticRouter/StaticRouterModService.d.ts b/TypeScript/3GetSptConfigFile/types/services/mod/staticRouter/StaticRouterModService.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/services/mod/staticRouter/StaticRouterModService.d.ts rename to TypeScript/3GetSptConfigFile/types/services/mod/staticRouter/StaticRouterModService.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/utils/App.d.ts b/TypeScript/3GetSptConfigFile/types/utils/App.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/utils/App.d.ts rename to TypeScript/3GetSptConfigFile/types/utils/App.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/utils/AyncQueue.d.ts b/TypeScript/3GetSptConfigFile/types/utils/AyncQueue.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/utils/AyncQueue.d.ts rename to TypeScript/3GetSptConfigFile/types/utils/AyncQueue.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/utils/DatabaseImporter.d.ts b/TypeScript/3GetSptConfigFile/types/utils/DatabaseImporter.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/utils/DatabaseImporter.d.ts rename to TypeScript/3GetSptConfigFile/types/utils/DatabaseImporter.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/utils/HashUtil.d.ts b/TypeScript/3GetSptConfigFile/types/utils/HashUtil.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/utils/HashUtil.d.ts rename to TypeScript/3GetSptConfigFile/types/utils/HashUtil.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/utils/HttpResponseUtil.d.ts b/TypeScript/3GetSptConfigFile/types/utils/HttpResponseUtil.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/utils/HttpResponseUtil.d.ts rename to TypeScript/3GetSptConfigFile/types/utils/HttpResponseUtil.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/utils/JsonUtil.d.ts b/TypeScript/3GetSptConfigFile/types/utils/JsonUtil.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/utils/JsonUtil.d.ts rename to TypeScript/3GetSptConfigFile/types/utils/JsonUtil.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/utils/Logger.d.ts b/TypeScript/3GetSptConfigFile/types/utils/Logger.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/utils/Logger.d.ts rename to TypeScript/3GetSptConfigFile/types/utils/Logger.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/utils/MathUtil.d.ts b/TypeScript/3GetSptConfigFile/types/utils/MathUtil.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/utils/MathUtil.d.ts rename to TypeScript/3GetSptConfigFile/types/utils/MathUtil.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/utils/ObjectId.d.ts b/TypeScript/3GetSptConfigFile/types/utils/ObjectId.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/utils/ObjectId.d.ts rename to TypeScript/3GetSptConfigFile/types/utils/ObjectId.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/utils/RandomUtil.d.ts b/TypeScript/3GetSptConfigFile/types/utils/RandomUtil.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/utils/RandomUtil.d.ts rename to TypeScript/3GetSptConfigFile/types/utils/RandomUtil.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/utils/TimeUtil.d.ts b/TypeScript/3GetSptConfigFile/types/utils/TimeUtil.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/utils/TimeUtil.d.ts rename to TypeScript/3GetSptConfigFile/types/utils/TimeUtil.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/utils/UUidGenerator.d.ts b/TypeScript/3GetSptConfigFile/types/utils/UUidGenerator.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/utils/UUidGenerator.d.ts rename to TypeScript/3GetSptConfigFile/types/utils/UUidGenerator.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/utils/VFS.d.ts b/TypeScript/3GetSptConfigFile/types/utils/VFS.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/utils/VFS.d.ts rename to TypeScript/3GetSptConfigFile/types/utils/VFS.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/utils/Watermark.d.ts b/TypeScript/3GetSptConfigFile/types/utils/Watermark.d.ts similarity index 83% rename from TypeScript/3.0GetSptConfigFile/types/utils/Watermark.d.ts rename to TypeScript/3GetSptConfigFile/types/utils/Watermark.d.ts index 111bdd0..c6dc120 100644 --- a/TypeScript/3.0GetSptConfigFile/types/utils/Watermark.d.ts +++ b/TypeScript/3GetSptConfigFile/types/utils/Watermark.d.ts @@ -28,7 +28,12 @@ export declare class Watermark { protected text: string[]; protected versionLabel: string; initialize(): void; - getVersionTag(): string; + /** + * Get a version string (x.x.x) or (x.x.x-BLEEDINGEDGE) OR (X.X.X (18xxx)) + * @param withEftVersion Include the eft version this spt version was made for + * @returns string + */ + getVersionTag(withEftVersion?: boolean): string; getVersionLabel(): string; /** Set window title */ setTitle(): void; diff --git a/TypeScript/3.0GetSptConfigFile/types/utils/decorators/Singleton.d.ts b/TypeScript/3GetSptConfigFile/types/utils/decorators/Singleton.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/utils/decorators/Singleton.d.ts rename to TypeScript/3GetSptConfigFile/types/utils/decorators/Singleton.d.ts diff --git a/TypeScript/3.0GetSptConfigFile/types/utils/decorators/constructor.d.ts b/TypeScript/3GetSptConfigFile/types/utils/decorators/constructor.d.ts similarity index 100% rename from TypeScript/3.0GetSptConfigFile/types/utils/decorators/constructor.d.ts rename to TypeScript/3GetSptConfigFile/types/utils/decorators/constructor.d.ts diff --git a/TypeScript/4UseACustomConfigFile/package.json b/TypeScript/4UseACustomConfigFile/package.json index 290e1e3..c68e559 100644 --- a/TypeScript/4UseACustomConfigFile/package.json +++ b/TypeScript/4UseACustomConfigFile/package.json @@ -4,7 +4,7 @@ "main": "src/mod.js", "license": "MIT", "author": "Chomp", - "akiVersion": "3.0.0", + "akiVersion": "3.1.0", "scripts": { "setup:environment": "npm i", "build:unzipped": "copyfiles -e \"./node_modules/**/*.*\" -e \"./dist/**/*.*\" -e \"./package-lock.json\" -e \"./tsconfig.json\" -e \"./README.txt\" -e \"./mod.code-workspace\" \"./**/*.*\" ./dist", diff --git a/TypeScript/4UseACustomConfigFile/src/mod.ts b/TypeScript/4UseACustomConfigFile/src/mod.ts index 6c09663..e269363 100644 --- a/TypeScript/4UseACustomConfigFile/src/mod.ts +++ b/TypeScript/4UseACustomConfigFile/src/mod.ts @@ -1,18 +1,13 @@ import { DependencyContainer } from "tsyringe"; -import { IMod } from "@spt-aki/models/external/mod"; +import { IPostAkiLoadMod } from "@spt-aki/models/external/IPostAkiLoadMod"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; -class Mod implements IMod +class Mod implements IPostAkiLoadMod { private modConfig = require("../config/config.json"); - - // not used for this example - public load(container: DependencyContainer): void - { return } - - public delayedLoad(container: DependencyContainer): void - { + + public postAkiLoad(container: DependencyContainer): void { // get logger const logger = container.resolve("WinstonLogger"); diff --git a/TypeScript/4UseACustomConfigFile/types/callbacks/GameCallbacks.d.ts b/TypeScript/4UseACustomConfigFile/types/callbacks/GameCallbacks.d.ts index d5cad76..06da1b5 100644 --- a/TypeScript/4UseACustomConfigFile/types/callbacks/GameCallbacks.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/callbacks/GameCallbacks.d.ts @@ -2,6 +2,7 @@ import { GameController } from "../controllers/GameController"; import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse"; import { IGameEmptyCrcRequestData } from "../models/eft/game/IGameEmptyCrcRequestData"; +import { IReportNicknameRequestData } from "../models/eft/game/IReportNicknameRequestData"; import { IVersionValidateRequestData } from "../models/eft/game/IVersionValidateRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; @@ -20,5 +21,6 @@ declare class GameCallbacks { validateGameVersion(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; gameKeepalive(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; getVersion(url: string, info: IEmptyRequestData, sessionID: string): string; + reportNickname(url: string, info: IReportNicknameRequestData, sessionID: string): INullResponseData; } export { GameCallbacks }; diff --git a/TypeScript/4UseACustomConfigFile/types/callbacks/HealthCallbacks.d.ts b/TypeScript/4UseACustomConfigFile/types/callbacks/HealthCallbacks.d.ts index 8f7b89d..8672be7 100644 --- a/TypeScript/4UseACustomConfigFile/types/callbacks/HealthCallbacks.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/callbacks/HealthCallbacks.d.ts @@ -13,6 +13,13 @@ export declare class HealthCallbacks { protected profileHelper: ProfileHelper; protected healthController: HealthController; constructor(httpResponse: HttpResponseUtil, profileHelper: ProfileHelper, healthController: HealthController); + /** + * Custom aki server request found in modules/HealthSynchronizer.cs + * @param url + * @param info HealthListener.Instance.CurrentHealth class + * @param sessionID session id + * @returns empty response, no data sent back to client + */ syncHealth(url: string, info: ISyncHealthRequestData, sessionID: string): IGetBodyResponseData; offraidEat(pmcData: IPmcData, body: IOffraidEatRequestData, sessionID: string): IItemEventRouterResponse; offraidHeal(pmcData: IPmcData, body: IOffraidHealRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/4UseACustomConfigFile/types/callbacks/InsuranceCallbacks.d.ts b/TypeScript/4UseACustomConfigFile/types/callbacks/InsuranceCallbacks.d.ts index 520d0eb..6819960 100644 --- a/TypeScript/4UseACustomConfigFile/types/callbacks/InsuranceCallbacks.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/callbacks/InsuranceCallbacks.d.ts @@ -3,6 +3,7 @@ import { OnLoadOnUpdate } from "../di/OnLoadOnUpdate"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -17,7 +18,7 @@ export declare class InsuranceCallbacks extends OnLoadOnUpdate { protected insuranceConfig: IInsuranceConfig; constructor(insuranceController: InsuranceController, insuranceService: InsuranceService, httpResponse: HttpResponseUtil, configServer: ConfigServer); onLoad(): void; - getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; + getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; onUpdate(secondsSinceLastRun: number): boolean; getRoute(): string; diff --git a/TypeScript/4UseACustomConfigFile/types/callbacks/MatchCallbacks.d.ts b/TypeScript/4UseACustomConfigFile/types/callbacks/MatchCallbacks.d.ts index 083c1f5..158d8df 100644 --- a/TypeScript/4UseACustomConfigFile/types/callbacks/MatchCallbacks.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/callbacks/MatchCallbacks.d.ts @@ -1,9 +1,13 @@ import { MatchController } from "../controllers/MatchController"; +import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { DatabaseServer } from "../servers/DatabaseServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; @@ -16,18 +20,18 @@ export declare class MatchCallbacks { constructor(httpResponse: HttpResponseUtil, jsonUtil: JsonUtil, matchController: MatchController, databaseServer: DatabaseServer); updatePing(url: string, info: any, sessionID: string): INullResponseData; exitMatch(url: string, info: any, sessionID: string): INullResponseData; - exitToMenu(url: string, info: any, sessionID: string): INullResponseData; - startGroupSearch(url: string, info: any, sessionID: string): INullResponseData; - stopGroupSearch(url: string, info: any, sessionID: string): INullResponseData; + exitToMenu(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + startGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + stopGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; sendGroupInvite(url: string, info: any, sessionID: string): INullResponseData; acceptGroupInvite(url: string, info: any, sessionID: string): INullResponseData; cancelGroupInvite(url: string, info: any, sessionID: string): INullResponseData; putMetrics(url: string, info: any, sessionID: string): INullResponseData; getProfile(url: string, info: IGetProfileRequestData, sessionID: string): IGetBodyResponseData; - serverAvailable(url: string, info: any, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; - joinMatch(url: string, info: any, sessionID: string): IGetBodyResponseData; + serverAvailable(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; + joinMatch(url: string, info: IJoinMatchRequestData, sessionID: string): IGetBodyResponseData; getMetrics(url: string, info: any, sessionID: string): IGetBodyResponseData; - getGroupStatus(url: string, info: any, sessionID: string): IGetBodyResponseData; + getGroupStatus(url: string, info: IGetGroupStatusRequestData, sessionID: string): IGetBodyResponseData; createGroup(url: string, info: any, sessionID: string): IGetBodyResponseData; deleteGroup(url: string, info: any, sessionID: string): INullResponseData; startOfflineRaid(url: string, info: IStartOfflineRaidRequestData, sessionID: string): INullResponseData; diff --git a/TypeScript/4UseACustomConfigFile/types/callbacks/ModCallbacks.d.ts b/TypeScript/4UseACustomConfigFile/types/callbacks/ModCallbacks.d.ts index 866abf7..58342dc 100644 --- a/TypeScript/4UseACustomConfigFile/types/callbacks/ModCallbacks.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/callbacks/ModCallbacks.d.ts @@ -1,5 +1,5 @@ import { OnLoad } from "../di/OnLoad"; -import { DelayedModLoader } from "../loaders/DelayedModLoader"; +import { PostAkiModLoader } from "../loaders/PostAkiModLoader"; import { IHttpConfig } from "../models/spt/config/IHttpConfig"; import { IHttpServer } from "../models/spt/server/IHttpServer"; import { ILogger } from "../models/spt/utils/ILogger"; @@ -9,10 +9,10 @@ declare class ModCallbacks extends OnLoad { protected logger: ILogger; protected httpResponse: HttpResponseUtil; protected httpServer: IHttpServer; - protected modLoader: DelayedModLoader; + protected postAkiModLoader: PostAkiModLoader; protected configServer: ConfigServer; protected httpConfig: IHttpConfig; - constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, modLoader: DelayedModLoader, configServer: ConfigServer); + constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, postAkiModLoader: PostAkiModLoader, configServer: ConfigServer); onLoad(): void; getRoute(): string; sendBundle(sessionID: string, req: any, resp: any, body: any): void; diff --git a/TypeScript/4UseACustomConfigFile/types/callbacks/ProfileCallbacks.d.ts b/TypeScript/4UseACustomConfigFile/types/callbacks/ProfileCallbacks.d.ts index 116e7c5..6a86fc0 100644 --- a/TypeScript/4UseACustomConfigFile/types/callbacks/ProfileCallbacks.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/callbacks/ProfileCallbacks.d.ts @@ -3,6 +3,7 @@ import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IGetMiniProfileRequestData } from "../models/eft/launcher/IGetMiniProfileRequestData"; +import { GetProfileStatusResponseData } from "../models/eft/profile/GetProfileStatusResponseData"; import { IProfileChangeNicknameRequestData } from "../models/eft/profile/IProfileChangeNicknameRequestData"; import { IProfileChangeVoiceRequestData } from "../models/eft/profile/IProfileChangeVoiceRequestData"; import { IProfileCreateRequestData } from "../models/eft/profile/IProfileCreateRequestData"; @@ -23,7 +24,14 @@ export declare class ProfileCallbacks { changeNickname(url: string, info: IProfileChangeNicknameRequestData, sessionID: string): IGetBodyResponseData; validateNickname(url: string, info: IValidateNicknameRequestData, sessionID: string): IGetBodyResponseData; getReservedNickname(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; - getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; + /** + * Called when creating a character, when you choose a character face/voice + * @param url + * @param info response (empty) + * @param sessionID + * @returns + */ + getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; searchFriend(url: string, info: ISearchFriendRequestData, sessionID: string): IGetBodyResponseData; getMiniProfile(url: string, info: IGetMiniProfileRequestData, sessionID: string): string; getAllMiniProfiles(url: string, info: any, sessionID: string): string; diff --git a/TypeScript/4UseACustomConfigFile/types/callbacks/RagfairCallbacks.d.ts b/TypeScript/4UseACustomConfigFile/types/callbacks/RagfairCallbacks.d.ts index d5bab8b..da782e1 100644 --- a/TypeScript/4UseACustomConfigFile/types/callbacks/RagfairCallbacks.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/callbacks/RagfairCallbacks.d.ts @@ -9,6 +9,7 @@ import { IAddOfferRequestData } from "../models/eft/ragfair/IAddOfferRequestData import { IExtendOfferRequestData } from "../models/eft/ragfair/IExtendOfferRequestData"; import { IGetItemPriceResult } from "../models/eft/ragfair/IGetItemPriceResult"; import { IGetMarketPriceRequestData } from "../models/eft/ragfair/IGetMarketPriceRequestData"; +import { IGetOffersResult } from "../models/eft/ragfair/IGetOffersResult"; import { IRemoveOfferRequestData } from "../models/eft/ragfair/IRemoveOfferRequestData"; import { ISearchRequestData } from "../models/eft/ragfair/ISearchRequestData"; import { IRagfairConfig } from "../models/spt/config/IRagfairConfig"; @@ -28,7 +29,7 @@ export declare class RagfairCallbacks extends OnLoadOnUpdate { constructor(httpResponse: HttpResponseUtil, logger: ILogger, jsonUtil: JsonUtil, ragfairServer: RagfairServer, ragfairController: RagfairController, configServer: ConfigServer); onLoad(): void; getRoute(): string; - search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; + search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; getMarketPrice(url: string, info: IGetMarketPriceRequestData, sessionID: string): IGetBodyResponseData; getItemPrices(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; addOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/4UseACustomConfigFile/types/controllers/GameController.d.ts b/TypeScript/4UseACustomConfigFile/types/controllers/GameController.d.ts index 5f516de..f4c3d2c 100644 --- a/TypeScript/4UseACustomConfigFile/types/controllers/GameController.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/controllers/GameController.d.ts @@ -28,6 +28,11 @@ export declare class GameController { protected addMissingRepeatableQuestsProperty(pmcProfile: IPmcData): void; protected addMissingWeaponRepairSkill(pmcProfile: IPmcData): void; protected addMissingAkiVersionTagToProfile(fullProfile: IAkiProfile): void; + /** + * In 18876 bsg changed the pockets tplid to be one that has 3 additional special slots + * @param pmcProfile + */ + protected updateProfilePocketsToNewId(pmcProfile: IPmcData): void; protected addMissingArmorRepairSkill(pmcProfile: IPmcData): void; protected fixNullTraderSalesSums(pmcProfile: IPmcData): void; protected removeDanglingBackendCounters(pmcProfile: IPmcData): void; diff --git a/TypeScript/4UseACustomConfigFile/types/controllers/InsuranceController.d.ts b/TypeScript/4UseACustomConfigFile/types/controllers/InsuranceController.d.ts index db2c567..af45442 100644 --- a/TypeScript/4UseACustomConfigFile/types/controllers/InsuranceController.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/controllers/InsuranceController.d.ts @@ -3,6 +3,7 @@ import { ItemHelper } from "../helpers/ItemHelper"; import { ProfileHelper } from "../helpers/ProfileHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -33,6 +34,12 @@ export declare class InsuranceController { insuranceService: InsuranceService, configServer: ConfigServer); processReturn(): void; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; - cost(info: IGetInsuranceCostRequestData, sessionID: string): any; + /** + * Calculate insurance cost + * @param info request object + * @param sessionID session id + * @returns response object to send to client + */ + cost(info: IGetInsuranceCostRequestData, sessionID: string): IGetInsuranceCostResponseData; doAbsolutelyNothing(): void; } diff --git a/TypeScript/4UseACustomConfigFile/types/controllers/InventoryController.d.ts b/TypeScript/4UseACustomConfigFile/types/controllers/InventoryController.d.ts index b732aa9..f24ab62 100644 --- a/TypeScript/4UseACustomConfigFile/types/controllers/InventoryController.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/controllers/InventoryController.d.ts @@ -24,6 +24,8 @@ import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRout import { ILogger } from "../models/spt/utils/ILogger"; import { ItemEventRouter } from "../routers/ItemEventRouter"; import { DatabaseServer } from "../servers/DatabaseServer"; +import { FenceService } from "../services/FenceService"; +import { RagfairOfferService } from "../services/RagfairOfferService"; import { HashUtil } from "../utils/HashUtil"; import { JsonUtil } from "../utils/JsonUtil"; export declare class InventoryController { @@ -31,12 +33,14 @@ export declare class InventoryController { protected hashUtil: HashUtil; protected jsonUtil: JsonUtil; protected databaseServer: DatabaseServer; + protected fenceService: FenceService; protected presetHelper: PresetHelper; protected inventoryHelper: InventoryHelper; + protected ragfairOfferService: RagfairOfferService; protected profileHelper: ProfileHelper; protected paymentHelper: PaymentHelper; protected itemEventRouter: ItemEventRouter; - constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); + constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, fenceService: FenceService, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, ragfairOfferService: RagfairOfferService, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); /** * Move Item * change location of item with parentId and slotId @@ -93,9 +97,19 @@ export declare class InventoryController { tagItem(pmcData: IPmcData, body: IInventoryTagRequestData, sessionID: string): IItemEventRouterResponse; bindItem(pmcData: IPmcData, body: IInventoryBindRequestData, sessionID: string): IItemEventRouterResponse; /** - * Handles examining of the item * + * Handles examining an item + * @param pmcData player profile + * @param body request object + * @param sessionID session id + * @returns response */ examineItem(pmcData: IPmcData, body: IInventoryExamineRequestData, sessionID: string): IItemEventRouterResponse; + /** + * Get the tplid of an item from the examine request object + * @param body response request + * @returns tplid + */ + protected getItemTpl(body: IInventoryExamineRequestData): string; readEncyclopedia(pmcData: IPmcData, body: IInventoryReadEncyclopediaRequestData, sessionID: string): IItemEventRouterResponse; /** * Handles sorting of Inventory. diff --git a/TypeScript/4UseACustomConfigFile/types/controllers/MatchController.d.ts b/TypeScript/4UseACustomConfigFile/types/controllers/MatchController.d.ts index c322d96..7ef3fcc 100644 --- a/TypeScript/4UseACustomConfigFile/types/controllers/MatchController.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/controllers/MatchController.d.ts @@ -2,7 +2,10 @@ import { ProfileHelper } from "../helpers/ProfileHelper"; import { TraderHelper } from "../helpers/TraderHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { IInRaidConfig } from "../models/spt/config/IInRaidConfig"; import { IMatchConfig } from "../models/spt/config/IMatchConfig"; @@ -20,11 +23,11 @@ export declare class MatchController { constructor(saveServer: SaveServer, profileHelper: ProfileHelper, matchLocationService: MatchLocationService, traderHelper: TraderHelper, configServer: ConfigServer); getEnabled(): boolean; getProfile(info: IGetProfileRequestData): IPmcData[]; - protected getMatch(location: any): any; createGroup(sessionID: string, info: any): any; deleteGroup(info: any): void; - joinMatch(info: any, sessionID: string): any[]; - getGroupStatus(info: any): any; + joinMatch(info: IJoinMatchRequestData, sessionID: string): IJoinMatchResult[]; + protected getMatch(location: string): any; + getGroupStatus(info: IGetGroupStatusRequestData): any; startOfflineRaid(info: IStartOfflineRaidRequestData, sessionID: string): void; endOfflineRaid(info: IEndOfflineRaidRequestData, sessionID: string): void; } diff --git a/TypeScript/4UseACustomConfigFile/types/controllers/RagfairController.d.ts b/TypeScript/4UseACustomConfigFile/types/controllers/RagfairController.d.ts index c758593..c4ffc15 100644 --- a/TypeScript/4UseACustomConfigFile/types/controllers/RagfairController.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/controllers/RagfairController.d.ts @@ -60,6 +60,8 @@ export declare class RagfairController { protected ragfairConfig: IRagfairConfig; constructor(logger: ILogger, timeUtil: TimeUtil, httpResponse: HttpResponseUtil, itemEventRouter: ItemEventRouter, ragfairServer: RagfairServer, ragfairPriceService: RagfairPriceService, databaseServer: DatabaseServer, itemHelper: ItemHelper, saveServer: SaveServer, ragfairSellHelper: RagfairSellHelper, ragfairTaxHelper: RagfairTaxHelper, ragfairSortHelper: RagfairSortHelper, ragfairOfferHelper: RagfairOfferHelper, profileHelper: ProfileHelper, paymentService: PaymentService, handbookHelper: HandbookHelper, paymentHelper: PaymentHelper, inventoryHelper: InventoryHelper, ragfairHelper: RagfairHelper, ragfairOfferService: RagfairOfferService, ragfairRequiredItemsService: RagfairRequiredItemsService, ragfairOfferGenerator: RagfairOfferGenerator, configServer: ConfigServer); getOffers(sessionID: string, info: ISearchRequestData): IGetOffersResult; + protected isLinkedSearch(info: ISearchRequestData): boolean; + protected isRequiredSearch(info: ISearchRequestData): boolean; update(): void; getItemPrice(info: IGetMarketPriceRequestData): IGetItemPriceResult; addPlayerOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/4UseACustomConfigFile/types/generators/BotWeaponGenerator.d.ts b/TypeScript/4UseACustomConfigFile/types/generators/BotWeaponGenerator.d.ts index a43b18c..dd3ad69 100644 --- a/TypeScript/4UseACustomConfigFile/types/generators/BotWeaponGenerator.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/generators/BotWeaponGenerator.d.ts @@ -41,6 +41,13 @@ export declare class BotWeaponGenerator { * @returns */ protected generateExtraMagazines(weaponMods: Item[], weaponTemplate: ITemplateItem, magCounts: MinMax, ammoTpl: string, inventory: PmcInventory): void; + /** + * Get a randomised number of bullets for a specific magazine + * @param magCounts min and max count of magazines + * @param magTemplate magazine to generate bullet count for + * @returns bullet count number + */ + protected getRandomisedBulletCount(magCounts: MinMax, magTemplate: ITemplateItem): number; /** * Get a randomised count of magazines * @param magCounts min and max value returned value can be between diff --git a/TypeScript/4UseACustomConfigFile/types/generators/RagfairOfferGenerator.d.ts b/TypeScript/4UseACustomConfigFile/types/generators/RagfairOfferGenerator.d.ts index de53ea9..6645c8d 100644 --- a/TypeScript/4UseACustomConfigFile/types/generators/RagfairOfferGenerator.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/generators/RagfairOfferGenerator.d.ts @@ -18,6 +18,7 @@ import { JsonUtil } from "../utils/JsonUtil"; import { RandomUtil } from "../utils/RandomUtil"; import { TimeUtil } from "../utils/TimeUtil"; import { RagfairAssortGenerator } from "./RagfairAssortGenerator"; +import { RagfairCategoriesService } from "../services/RagfairCategoriesService"; export declare class RagfairOfferGenerator { protected logger: ILogger; protected jsonUtil: JsonUtil; @@ -31,11 +32,12 @@ export declare class RagfairOfferGenerator { protected ragfairAssortGenerator: RagfairAssortGenerator; protected ragfairOfferService: RagfairOfferService; protected ragfairPriceService: RagfairPriceService; + protected ragfairCategoriesService: RagfairCategoriesService; protected fenceService: FenceService; protected itemHelper: ItemHelper; protected configServer: ConfigServer; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); + constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, ragfairCategoriesService: RagfairCategoriesService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); createOffer(userID: string, time: number, items: Item[], barterScheme: IBarterScheme[], loyalLevel: number, price: number, sellInOnePiece?: boolean): IRagfairOffer; protected getTraderId(userID: string): string; protected getRating(userID: string): number; diff --git a/TypeScript/4UseACustomConfigFile/types/helpers/BotGeneratorHelper.d.ts b/TypeScript/4UseACustomConfigFile/types/helpers/BotGeneratorHelper.d.ts index e4b0c11..243e7a8 100644 --- a/TypeScript/4UseACustomConfigFile/types/helpers/BotGeneratorHelper.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/helpers/BotGeneratorHelper.d.ts @@ -29,6 +29,12 @@ export declare class BotGeneratorHelper { protected botConfig: IBotConfig; constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, probabilityHelper: ProbabilityHelper, databaseServer: DatabaseServer, durabilityLimitsHelper: DurabilityLimitsHelper, itemHelper: ItemHelper, inventoryHelper: InventoryHelper, containerHelper: ContainerHelper, configServer: ConfigServer); generateModsForItem(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem, modSpawnChances: ModsChances, isPmc?: boolean): Item[]; + /** + * Is this magazine cylinder related (revolvers and grenade launchers) + * @param magazineParentName the name of the magazines parent + * @returns true if it is cylinder related + */ + magazineIsCylinderRelated(magazineParentName: string): boolean; /** * Get a list of non black-listed cartridges from the PMC bot config * @param modSlot mod item slot @@ -69,6 +75,12 @@ export declare class BotGeneratorHelper { * @param {object} parentTemplate The CylinderMagazine's template */ protected fillCamora(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem): void; + /** + * Take a record of camoras and merge the compatable shells into one array + * @param camorasWithShells camoras we want to merge into one array + * @returns string array of shells fro luitple camora sources + */ + protected mergeCamoraPoolsTogether(camorasWithShells: Record): string[]; generateExtraPropertiesForItem(itemTemplate: ITemplateItem, botRole?: any): { upd?: Upd; }; diff --git a/TypeScript/4UseACustomConfigFile/types/loaders/AfterDbModLoader.d.ts b/TypeScript/4UseACustomConfigFile/types/loaders/AfterDbModLoader.d.ts deleted file mode 100644 index a9fc286..0000000 --- a/TypeScript/4UseACustomConfigFile/types/loaders/AfterDbModLoader.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { OnLoad } from "../di/OnLoad"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class AfterDbModLoader implements OnLoad { - protected initialModLoader: InitialModLoader; - constructor(initialModLoader: InitialModLoader); - onLoad(): void; - getRoute(): string; - getModPath(mod: string): string; - protected executeMods(container: DependencyContainer): void; -} diff --git a/TypeScript/4UseACustomConfigFile/types/loaders/DelayedModLoader.d.ts b/TypeScript/4UseACustomConfigFile/types/loaders/DelayedModLoader.d.ts deleted file mode 100644 index 2a05604..0000000 --- a/TypeScript/4UseACustomConfigFile/types/loaders/DelayedModLoader.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { HandbookController } from "../controllers/HandbookController"; -import { IModLoader } from "../models/spt/mod/IModLoader"; -import { ModCompilerService } from "../services/ModCompilerService"; -import { VFS } from "../utils/VFS"; -import { BundleLoader } from "./BundleLoader"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class DelayedModLoader implements IModLoader { - protected bundleLoader: BundleLoader; - protected handbookController: HandbookController; - protected vfs: VFS; - protected modCompilerService: ModCompilerService; - protected initialModLoader: InitialModLoader; - constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, initialModLoader: InitialModLoader); - getBundles(local: boolean): string; - getBundle(key: string, local: boolean): void; - getModPath(mod: string): string; - load(): void; - protected executeMods(container: DependencyContainer): void; - protected addBundles(): void; -} diff --git a/TypeScript/4UseACustomConfigFile/types/loaders/InitialModLoader.d.ts b/TypeScript/4UseACustomConfigFile/types/loaders/InitialModLoader.d.ts deleted file mode 100644 index 9a99dcc..0000000 --- a/TypeScript/4UseACustomConfigFile/types/loaders/InitialModLoader.d.ts +++ /dev/null @@ -1,64 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { ICoreConfig } from "../models/spt/config/ICoreConfig"; -import { ModLoader } from "../models/spt/mod/IMod"; -import { IModLoader } from "../models/spt/mod/IModLoader"; -import { IPackageJsonData } from "../models/spt/mod/IPackageJsonData"; -import { ILogger } from "../models/spt/utils/ILogger"; -import { ConfigServer } from "../servers/ConfigServer"; -import { ModCompilerService } from "../services/ModCompilerService"; -import { JsonUtil } from "../utils/JsonUtil"; -import { VFS } from "../utils/VFS"; -import { BundleLoader } from "./BundleLoader"; -export declare class InitialModLoader implements IModLoader { - protected logger: ILogger; - protected vfs: VFS; - protected jsonUtil: JsonUtil; - protected modCompilerService: ModCompilerService; - protected bundleLoader: BundleLoader; - protected configServer: ConfigServer; - protected static container: DependencyContainer; - protected readonly basepath = "user/mods/"; - protected imported: Record; - protected akiConfig: ICoreConfig; - constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, configServer: ConfigServer); - load(container: DependencyContainer): Promise; - getBundles(local: boolean): string; - getBundle(key: string, local: boolean): void; - /** - * Returns a list of mods with preserved load order - * @returns Array of mod names in load order - */ - getImportedModsNames(): string[]; - getModPath(mod: string): string; - protected importClass(name: string, filepath: string, container: DependencyContainer): void; - protected importMods(): Promise; - /** - * - * @param mods Get an array of broken/invalid mods by name - * @returns Mod names array - */ - protected getBrokenMods(mods: string[]): string[]; - /** - * Get packageJson data for mods - * @param mods mods to get packageJson for - * @returns dictionary - */ - protected getModsPackageData(mods: string[]): Record; - /** - * Does mod have "delayedLoad(" string in its entry class - * @param modFolderName folder name - * @param modToValidate package.json details - * @returns boolean - */ - protected isModSpt300Compatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; - protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; - protected executeMods(container: DependencyContainer): void; - sortModsLoadOrder(): string[]; - protected addMod(mod: string): Promise; - protected areModDependenciesFulfilled(pkg: IPackageJsonData, loadedMods: Record): boolean; - protected isModCompatible(mod: IPackageJsonData, loadedMods: Record): boolean; - protected validMod(mod: string): boolean; - protected getLoadOrderRecursive(mod: string, result: Record, visited: Record): void; - protected getLoadOrder(mods: Record): Record; - getContainer(): DependencyContainer; -} diff --git a/TypeScript/4UseACustomConfigFile/types/loaders/PostAkiModLoader.d.ts b/TypeScript/4UseACustomConfigFile/types/loaders/PostAkiModLoader.d.ts new file mode 100644 index 0000000..edc6e5d --- /dev/null +++ b/TypeScript/4UseACustomConfigFile/types/loaders/PostAkiModLoader.d.ts @@ -0,0 +1,21 @@ +import { DependencyContainer } from "tsyringe"; +import { HandbookController } from "../controllers/HandbookController"; +import { IModLoader } from "../models/spt/mod/IModLoader"; +import { ModCompilerService } from "../services/ModCompilerService"; +import { VFS } from "../utils/VFS"; +import { BundleLoader } from "./BundleLoader"; +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostAkiModLoader implements IModLoader { + protected bundleLoader: BundleLoader; + protected handbookController: HandbookController; + protected vfs: VFS; + protected modCompilerService: ModCompilerService; + protected preAkiModLoader: PreAkiModLoader; + constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, preAkiModLoader: PreAkiModLoader); + getBundles(local: boolean): string; + getBundle(key: string, local: boolean): void; + getModPath(mod: string): string; + load(): void; + protected executeMods(container: DependencyContainer): void; + protected addBundles(): void; +} diff --git a/TypeScript/4UseACustomConfigFile/types/loaders/PostDBModLoader.d.ts b/TypeScript/4UseACustomConfigFile/types/loaders/PostDBModLoader.d.ts new file mode 100644 index 0000000..5101b7b --- /dev/null +++ b/TypeScript/4UseACustomConfigFile/types/loaders/PostDBModLoader.d.ts @@ -0,0 +1,11 @@ +import { DependencyContainer } from "tsyringe"; +import { OnLoad } from "../di/OnLoad"; +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostDBModLoader implements OnLoad { + protected preAkiModLoader: PreAkiModLoader; + constructor(preAkiModLoader: PreAkiModLoader); + onLoad(): void; + getRoute(): string; + getModPath(mod: string): string; + protected executeMods(container: DependencyContainer): void; +} diff --git a/TypeScript/4UseACustomConfigFile/types/loaders/PreAkiModLoader.d.ts b/TypeScript/4UseACustomConfigFile/types/loaders/PreAkiModLoader.d.ts new file mode 100644 index 0000000..6ded3c6 --- /dev/null +++ b/TypeScript/4UseACustomConfigFile/types/loaders/PreAkiModLoader.d.ts @@ -0,0 +1,64 @@ +import { DependencyContainer } from "tsyringe"; +import { ICoreConfig } from "../models/spt/config/ICoreConfig"; +import { ModLoader } from "../models/spt/mod/IMod"; +import { IModLoader } from "../models/spt/mod/IModLoader"; +import { IPackageJsonData } from "../models/spt/mod/IPackageJsonData"; +import { ILogger } from "../models/spt/utils/ILogger"; +import { ConfigServer } from "../servers/ConfigServer"; +import { ModCompilerService } from "../services/ModCompilerService"; +import { JsonUtil } from "../utils/JsonUtil"; +import { VFS } from "../utils/VFS"; +import { BundleLoader } from "./BundleLoader"; +export declare class PreAkiModLoader implements IModLoader { + protected logger: ILogger; + protected vfs: VFS; + protected jsonUtil: JsonUtil; + protected modCompilerService: ModCompilerService; + protected bundleLoader: BundleLoader; + protected configServer: ConfigServer; + protected static container: DependencyContainer; + protected readonly basepath = "user/mods/"; + protected imported: Record; + protected akiConfig: ICoreConfig; + constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, configServer: ConfigServer); + load(container: DependencyContainer): Promise; + getBundles(local: boolean): string; + getBundle(key: string, local: boolean): void; + /** + * Returns a list of mods with preserved load order + * @returns Array of mod names in load order + */ + getImportedModsNames(): string[]; + getModPath(mod: string): string; + protected importClass(name: string, filepath: string, container: DependencyContainer): void; + protected importMods(): Promise; + /** + * + * @param mods Get an array of broken/invalid mods by name + * @returns Mod names array + */ + protected getBrokenMods(mods: string[]): string[]; + /** + * Get packageJson data for mods + * @param mods mods to get packageJson for + * @returns dictionary + */ + protected getModsPackageData(mods: string[]): Record; + /** + * Does mod have "delayedLoad(" string in its entry class + * @param modFolderName folder name + * @param modToValidate package.json details + * @returns boolean + */ + protected isModSpt3XXCompatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; + protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; + protected executeMods(container: DependencyContainer): void; + sortModsLoadOrder(): string[]; + protected addMod(mod: string): Promise; + protected areModDependenciesFulfilled(pkg: IPackageJsonData, loadedMods: Record): boolean; + protected isModCompatible(mod: IPackageJsonData, loadedMods: Record): boolean; + protected validMod(mod: string): boolean; + protected getLoadOrderRecursive(mod: string, result: Record, visited: Record): void; + protected getLoadOrder(mods: Record): Record; + getContainer(): DependencyContainer; +} diff --git a/TypeScript/4UseACustomConfigFile/types/models/eft/common/IGlobals.d.ts b/TypeScript/4UseACustomConfigFile/types/models/eft/common/IGlobals.d.ts index 456895c..9d28dbc 100644 --- a/TypeScript/4UseACustomConfigFile/types/models/eft/common/IGlobals.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/models/eft/common/IGlobals.d.ts @@ -1128,8 +1128,11 @@ export interface Inertia { SprintAccelerationLimits: xyz; SideTime: xyz; DiagonalTime: xyz; + MaxTimeWithoutInput: xyz; MinDirectionBlendTime: number; - MoveTime: number; + MoveTimeRange: xyz; + ProneDirectionAccelerationRange: xyz; + ProneSpeedAccelerationRange: xyz; MinMovementAccelerationRangeRight: xyz; MaxMovementAccelerationRangeRight: xyz; } diff --git a/TypeScript/4UseACustomConfigFile/types/models/eft/common/ILocationBase.d.ts b/TypeScript/4UseACustomConfigFile/types/models/eft/common/ILocationBase.d.ts index ad48d32..b1dd448 100644 --- a/TypeScript/4UseACustomConfigFile/types/models/eft/common/ILocationBase.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/models/eft/common/ILocationBase.d.ts @@ -26,6 +26,7 @@ export interface ILocationBase { DisabledForScav: boolean; DisabledScavExits: string; Enabled: boolean; + EnableCoop: boolean; GlobalLootChanceModifier: number; IconX: number; IconY: number; @@ -41,6 +42,7 @@ export interface ILocationBase { MinDistToFreePoint: number; MinMaxBots: MinMaxBot[]; MinPlayers: number; + MaxCoopGroup: number; Name: string; NewSpawn: boolean; OcculsionCullingEnabled: boolean; @@ -48,6 +50,8 @@ export interface ILocationBase { OpenZones: string; Preview: Preview; RequiredPlayerLevel: number; + PmcMaxPlayersInGroup: number; + ScavMaxPlayersInGroup: number; Rules: string; SafeLocation: boolean; Scene: Scene; @@ -55,7 +59,8 @@ export interface ILocationBase { UnixDateTime: number; _Id: string; doors: any[]; - escape_time_limit: number; + EscapeTimeLimit: number; + EscapeTimeLimitCoop: number; exit_access_time: number; exit_count: number; exit_time: number; @@ -63,6 +68,7 @@ export interface ILocationBase { filter_ex: string[]; limits: ILimit[]; matching_min_seconds: number; + GenerateLocalLootCache: boolean; maxItemCountInLocation: MaxItemCountInLocation[]; sav_summon_seconds: number; tmp_location_field_remove_me: number; @@ -106,6 +112,7 @@ export interface BossLocationSpawn { BossName: string; BossPlayer: boolean; BossZone: string; + RandomTimeSpawn: boolean; Time: number; TriggerId: string; TriggerName: string; diff --git a/TypeScript/4UseACustomConfigFile/types/models/eft/common/IPmcData.d.ts b/TypeScript/4UseACustomConfigFile/types/models/eft/common/IPmcData.d.ts index adc2aa5..56bf07f 100644 --- a/TypeScript/4UseACustomConfigFile/types/models/eft/common/IPmcData.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/models/eft/common/IPmcData.d.ts @@ -6,7 +6,7 @@ import { MemberCategory } from "../../enums/MemberCategory"; export interface IPmcData { _id: string; aid: string; - savage: string; + savage?: string; Info: Info; Customization: Customization; Health: Health; @@ -28,13 +28,6 @@ export interface IPmcData { CarExtractCounts: CarExtractCounts; SurvivorClass: SurvivorClass; } -export declare enum SurvivorClass { - Unknown = 0, - Neutralizer = 1, - Marauder = 2, - Paramedic = 3, - Survivor = 4 -} export interface Info { EntryPoint: string; Nickname: string; @@ -56,6 +49,9 @@ export interface Info { Bans: IBan[]; BannedState: boolean; BannedUntil: number; + NeedWipeOptions: any[]; + lastCompletedWipe: LastCompleted; + lastCompletedEvent?: LastCompleted; } export interface Settings { Role: string; @@ -339,3 +335,13 @@ export interface RagfairInfo { } export interface CarExtractCounts { } +export declare enum SurvivorClass { + Unknown = 0, + Neutralizer = 1, + Marauder = 2, + Paramedic = 3, + Survivor = 4 +} +export interface LastCompleted { + $oid: string; +} diff --git a/TypeScript/4UseACustomConfigFile/types/models/eft/common/tables/IProfileTemplate.d.ts b/TypeScript/4UseACustomConfigFile/types/models/eft/common/tables/IProfileTemplate.d.ts new file mode 100644 index 0000000..c445e92 --- /dev/null +++ b/TypeScript/4UseACustomConfigFile/types/models/eft/common/tables/IProfileTemplate.d.ts @@ -0,0 +1,23 @@ +import { Dialogue, WeaponBuild } from "../../profile/IAkiProfile"; +import { IPmcData } from "../IPmcData"; +export interface IProfileTemplates { + Standard: IProfileSides; + "Left Behind": IProfileSides; + "Prepare To Escape": IProfileSides; + "Edge Of Darkness": IProfileSides; +} +export interface IProfileSides { + usec: TemplateSide; + bear: TemplateSide; +} +export interface TemplateSide { + character: IPmcData; + suits: string[]; + dialogues: Record; + weaponbuilds: WeaponBuild[]; + trader: ProfileTraderTemplate; +} +export interface ProfileTraderTemplate { + initialStanding: number; + initialSalesSum: number; +} diff --git a/TypeScript/4UseACustomConfigFile/types/models/eft/common/tables/IQuest.d.ts b/TypeScript/4UseACustomConfigFile/types/models/eft/common/tables/IQuest.d.ts index e1fc888..942339b 100644 --- a/TypeScript/4UseACustomConfigFile/types/models/eft/common/tables/IQuest.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/models/eft/common/tables/IQuest.d.ts @@ -23,6 +23,7 @@ export interface IQuest { status: string; KeyQuest: boolean; changeQuestMessageText: string; + side: string; } export interface Conditions { Started: AvailableForConditions[]; @@ -56,6 +57,7 @@ export interface AvailableForProps { plantTime?: number; zoneId?: string; type?: boolean; + countInRaid?: boolean; } export interface AvailableForCounter { id: string; diff --git a/TypeScript/4UseACustomConfigFile/types/models/eft/common/tables/ITemplateItem.d.ts b/TypeScript/4UseACustomConfigFile/types/models/eft/common/tables/ITemplateItem.d.ts index 934ea7d..23a1a14 100644 --- a/TypeScript/4UseACustomConfigFile/types/models/eft/common/tables/ITemplateItem.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/models/eft/common/tables/ITemplateItem.d.ts @@ -50,6 +50,7 @@ export interface Props { UnlootableFromSide?: string[]; AnimationVariantsNumber?: number; DiscardingBlock?: boolean; + DropSoundType?: string; RagFairCommissionModifier?: number; IsAlwaysAvailableForInsurance?: boolean; DiscardLimit?: number; @@ -89,7 +90,7 @@ export interface Props { SightModesCount?: number; OpticCalibrationDistances?: number[]; ScopesCount?: number; - AimSensitivity: any; + AimSensitivity?: number | number[][]; Zooms?: number[][]; CalibrationDistances?: number[][]; Intensity?: number; @@ -200,6 +201,9 @@ export interface Props { MinRepairDegradation?: number; MaxRepairDegradation?: number; IronSightRange?: number; + IsFlareGun?: boolean; + IsGrenadeLauncher?: boolean; + IsOneoff?: boolean; MustBoltBeOpennedForExternalReload?: boolean; MustBoltBeOpennedForInternalReload?: boolean; BoltAction?: boolean; diff --git a/TypeScript/4UseACustomConfigFile/types/models/eft/game/IReportNicknameRequestData.d.ts b/TypeScript/4UseACustomConfigFile/types/models/eft/game/IReportNicknameRequestData.d.ts new file mode 100644 index 0000000..087c58b --- /dev/null +++ b/TypeScript/4UseACustomConfigFile/types/models/eft/game/IReportNicknameRequestData.d.ts @@ -0,0 +1,3 @@ +export interface IReportNicknameRequestData { + uid: string; +} diff --git a/TypeScript/4UseACustomConfigFile/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts b/TypeScript/4UseACustomConfigFile/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts new file mode 100644 index 0000000..bf209c6 --- /dev/null +++ b/TypeScript/4UseACustomConfigFile/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts @@ -0,0 +1 @@ +export declare type IGetInsuranceCostResponseData = Record>; diff --git a/TypeScript/4UseACustomConfigFile/types/models/eft/match/IGetGroupStatusRequestData.d.ts b/TypeScript/4UseACustomConfigFile/types/models/eft/match/IGetGroupStatusRequestData.d.ts new file mode 100644 index 0000000..cbdb77f --- /dev/null +++ b/TypeScript/4UseACustomConfigFile/types/models/eft/match/IGetGroupStatusRequestData.d.ts @@ -0,0 +1,8 @@ +export interface IGetGroupStatusRequestData { + location: string; + savage: boolean; + dt: string; + keyId: string; + raidMode: string; + startInGroup: boolean; +} diff --git a/TypeScript/4UseACustomConfigFile/types/models/eft/match/IJoinMatchRequestData.d.ts b/TypeScript/4UseACustomConfigFile/types/models/eft/match/IJoinMatchRequestData.d.ts new file mode 100644 index 0000000..cd34f7b --- /dev/null +++ b/TypeScript/4UseACustomConfigFile/types/models/eft/match/IJoinMatchRequestData.d.ts @@ -0,0 +1,12 @@ +export interface IJoinMatchRequestData { + location: string; + savage: boolean; + dt: string; + servers: Server[]; + keyId: string; +} +export interface Server { + ping: number; + ip: string; + port: string; +} diff --git a/TypeScript/4UseACustomConfigFile/types/models/eft/match/IJoinMatchResult.d.ts b/TypeScript/4UseACustomConfigFile/types/models/eft/match/IJoinMatchResult.d.ts new file mode 100644 index 0000000..df695f4 --- /dev/null +++ b/TypeScript/4UseACustomConfigFile/types/models/eft/match/IJoinMatchResult.d.ts @@ -0,0 +1,11 @@ +export interface IJoinMatchResult { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; + version: string; + location: string; + gamemode: string; + shortid: string; +} diff --git a/TypeScript/4UseACustomConfigFile/types/models/eft/match/IStartOffineRaidRequestData.d.ts b/TypeScript/4UseACustomConfigFile/types/models/eft/match/IStartOffineRaidRequestData.d.ts index 84bccc8..7cc457c 100644 --- a/TypeScript/4UseACustomConfigFile/types/models/eft/match/IStartOffineRaidRequestData.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/models/eft/match/IStartOffineRaidRequestData.d.ts @@ -1,6 +1,5 @@ export interface IStartOfflineRaidRequestData { locationName: string; - entryPoint: string; startTime: number; dateTime: string; gameSettings: GameSettings; diff --git a/TypeScript/4UseACustomConfigFile/types/models/eft/profile/GetProfileStatusResponseData.d.ts b/TypeScript/4UseACustomConfigFile/types/models/eft/profile/GetProfileStatusResponseData.d.ts new file mode 100644 index 0000000..eee9b4f --- /dev/null +++ b/TypeScript/4UseACustomConfigFile/types/models/eft/profile/GetProfileStatusResponseData.d.ts @@ -0,0 +1,11 @@ +export interface GetProfileStatusResponseData { + maxPveCountExceeded: false; + profiles: ProfileData[]; +} +export interface ProfileData { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; +} diff --git a/TypeScript/4UseACustomConfigFile/types/models/eft/ragfair/IGetOffersResult.d.ts b/TypeScript/4UseACustomConfigFile/types/models/eft/ragfair/IGetOffersResult.d.ts index 1c11422..fbc631d 100644 --- a/TypeScript/4UseACustomConfigFile/types/models/eft/ragfair/IGetOffersResult.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/models/eft/ragfair/IGetOffersResult.d.ts @@ -1,6 +1,6 @@ import { IRagfairOffer } from "./IRagfairOffer"; export interface IGetOffersResult { - categories: Record; + categories?: Record; offers: IRagfairOffer[]; offersCount: number; selectedCategory: string; diff --git a/TypeScript/4UseACustomConfigFile/types/models/enums/QuestStatus.d.ts b/TypeScript/4UseACustomConfigFile/types/models/enums/QuestStatus.d.ts deleted file mode 100644 index 6335c73..0000000 --- a/TypeScript/4UseACustomConfigFile/types/models/enums/QuestStatus.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -export declare enum QuestStatus { - Locked = 0, - AvailableForStart = 1, - Started = 2, - AvailableForFinish = 3, - Success = 4, - Fail = 5, - FailRestartable = 6, - MarkedAsFailed = 7 -} diff --git a/TypeScript/4UseACustomConfigFile/types/models/external/IAfterDBLoadMod.d.ts b/TypeScript/4UseACustomConfigFile/types/models/external/IAfterDBLoadMod.d.ts deleted file mode 100644 index 7f08b9e..0000000 --- a/TypeScript/4UseACustomConfigFile/types/models/external/IAfterDBLoadMod.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IAfterDBLoadMod { - loadAfterDbInit(container: DependencyContainer): void; -} diff --git a/TypeScript/4UseACustomConfigFile/types/models/external/IPostAkiLoadMod.d.ts b/TypeScript/4UseACustomConfigFile/types/models/external/IPostAkiLoadMod.d.ts new file mode 100644 index 0000000..f6950e8 --- /dev/null +++ b/TypeScript/4UseACustomConfigFile/types/models/external/IPostAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostAkiLoadMod { + postAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/4UseACustomConfigFile/types/models/external/IPostDBLoadMod.d.ts b/TypeScript/4UseACustomConfigFile/types/models/external/IPostDBLoadMod.d.ts new file mode 100644 index 0000000..ca7c682 --- /dev/null +++ b/TypeScript/4UseACustomConfigFile/types/models/external/IPostDBLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostDBLoadMod { + postDBLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/4UseACustomConfigFile/types/models/external/IPreAkiLoadMod.d.ts b/TypeScript/4UseACustomConfigFile/types/models/external/IPreAkiLoadMod.d.ts new file mode 100644 index 0000000..ae7579e --- /dev/null +++ b/TypeScript/4UseACustomConfigFile/types/models/external/IPreAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPreAkiLoadMod { + preAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/4UseACustomConfigFile/types/models/external/mod.d.ts b/TypeScript/4UseACustomConfigFile/types/models/external/mod.d.ts deleted file mode 100644 index 47939e9..0000000 --- a/TypeScript/4UseACustomConfigFile/types/models/external/mod.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IMod { - load(container: DependencyContainer): void; - delayedLoad(container: DependencyContainer): void; -} diff --git a/TypeScript/4UseACustomConfigFile/types/models/spt/config/IBotConfig.d.ts b/TypeScript/4UseACustomConfigFile/types/models/spt/config/IBotConfig.d.ts index 5fb9d93..f8cf39b 100644 --- a/TypeScript/4UseACustomConfigFile/types/models/spt/config/IBotConfig.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/models/spt/config/IBotConfig.d.ts @@ -18,6 +18,7 @@ export interface PresetBatch { bossKojaniy: number; bossSanitar: number; bossTagilla: number; + bossKnight: number; bossTest: number; cursedAssault: number; followerBully: number; @@ -28,6 +29,8 @@ export interface PresetBatch { followerKojaniy: number; followerSanitar: number; followerTagilla: number; + followerBirdEye: number; + followerBigPipe: number; followerTest: number; marksman: number; pmcBot: number; diff --git a/TypeScript/4UseACustomConfigFile/types/models/spt/config/IRagfairConfig.d.ts b/TypeScript/4UseACustomConfigFile/types/models/spt/config/IRagfairConfig.d.ts index 2d151ca..8518252 100644 --- a/TypeScript/4UseACustomConfigFile/types/models/spt/config/IRagfairConfig.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/models/spt/config/IRagfairConfig.d.ts @@ -30,6 +30,7 @@ export interface Dynamic { expiredOfferThreshold: number; offerItemCount: MinMax; price: MinMax; + presetPrice: MinMax; endTimeSeconds: MinMax; condition: Condition; stackablePercent: MinMax; diff --git a/TypeScript/4UseACustomConfigFile/types/models/spt/server/IDatabaseTables.d.ts b/TypeScript/4UseACustomConfigFile/types/models/spt/server/IDatabaseTables.d.ts index e0d3fdd..9978459 100644 --- a/TypeScript/4UseACustomConfigFile/types/models/spt/server/IDatabaseTables.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/models/spt/server/IDatabaseTables.d.ts @@ -6,6 +6,7 @@ import { ICustomizationItem } from "../../eft/common/tables/ICustomizationItem"; import { IHandbookBase } from "../../eft/common/tables/IHandbookBase"; import { ILootBase } from "../../eft/common/tables/ILootBase"; import { IMatch } from "../../eft/common/tables/IMatch"; +import { IProfileTemplates } from "../../eft/common/tables/IProfileTemplate"; import { IQuest } from "../../eft/common/tables/IQuest"; import { IRepeatableQuestDatabase } from "../../eft/common/tables/IRepeatableQuests"; import { ITemplateItem } from "../../eft/common/tables/ITemplateItem"; @@ -39,10 +40,13 @@ export interface IDatabaseTables { items: Record; quests: IQuest[]; repeatableQuests: IRepeatableQuestDatabase; + /** DEPRECATED - Items file found in the client, massivly out of date compared to templates.items, try not to use this, remove ASAP*/ clientItems: Record; handbook: IHandbookBase; customization: Record; - profiles: any; + /** The profile templates listed in the launcher on profile creation, split by account type (e.g. Standard) then side (e.g. bear/usec) */ + profiles: IProfileTemplates; + /** Flea prices of items - gathered from online flea market dump */ prices: Record; }; traders?: Record; diff --git a/TypeScript/4UseACustomConfigFile/types/servers/RagfairServer.d.ts b/TypeScript/4UseACustomConfigFile/types/servers/RagfairServer.d.ts index 60c92b5..bc86cdb 100644 --- a/TypeScript/4UseACustomConfigFile/types/servers/RagfairServer.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/servers/RagfairServer.d.ts @@ -17,7 +17,8 @@ export declare class RagfairServer { constructor(logger: ILogger, ragfairOfferGenerator: RagfairOfferGenerator, ragfairOfferService: RagfairOfferService, ragfairCategoriesService: RagfairCategoriesService, ragfairRequiredItemsService: RagfairRequiredItemsService, configServer: ConfigServer); load(): void; update(): void; - getCategories(): Record; + getAllCategories(): Record; + getBespokeCategories(offers: IRagfairOffer[]): Record; /** * Disable/Hide an offer from flea * @param offerId diff --git a/TypeScript/4UseACustomConfigFile/types/services/RagfairCategoriesService.d.ts b/TypeScript/4UseACustomConfigFile/types/services/RagfairCategoriesService.d.ts index 09956cc..83910e5 100644 --- a/TypeScript/4UseACustomConfigFile/types/services/RagfairCategoriesService.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/services/RagfairCategoriesService.d.ts @@ -1,10 +1,40 @@ import { IRagfairOffer } from "../models/eft/ragfair/IRagfairOffer"; +import { ILogger } from "../models/spt/utils/ILogger"; export declare class RagfairCategoriesService { - updateCategories(offers: IRagfairOffer[]): void; + protected logger: ILogger; protected categories: Record; - getCategories(): Record; - getCategoryByItemId(itemId: string): number; - resetCategories(): void; - setCategoryValue(itemId: string, newValue: number): void; - incrementCategory(itemId: string): void; + constructor(logger: ILogger); + /** + * Get all flea categories and their count of offers + * @returns item categories and count + */ + getAllCategories(): Record; + /** + * With the supplied items, get custom categories + * @returns a custom list of categories + */ + getBespokeCategories(offers: IRagfairOffer[]): Record; + /** + * Take an array of ragfair offers and create a dictionary of items with thier corrisponding offer count + * @param offers ragfair offers + * @returns categories and count + */ + protected processOffersIntoCategories(offers: IRagfairOffer[]): Record; + /** + * Increment or decrement a category array + * @param offer offer to process + * @param categories categories to update + * @param increment should item be incremented or decremented + */ + protected addOrIncrementCategory(offer: IRagfairOffer, categories: Record, increment?: boolean): void; + /** + * Increase category count by 1 + * @param offer + */ + incrementCategory(offer: IRagfairOffer): void; + /** + * Reduce category count by 1 + * @param offer + */ + decrementCategory(offer: IRagfairOffer): void; } diff --git a/TypeScript/4UseACustomConfigFile/types/services/RagfairOfferService.d.ts b/TypeScript/4UseACustomConfigFile/types/services/RagfairOfferService.d.ts index 7afbf8c..7398a8f 100644 --- a/TypeScript/4UseACustomConfigFile/types/services/RagfairOfferService.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/services/RagfairOfferService.d.ts @@ -11,12 +11,14 @@ import { DatabaseServer } from "../servers/DatabaseServer"; import { SaveServer } from "../servers/SaveServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; import { TimeUtil } from "../utils/TimeUtil"; +import { RagfairCategoriesService } from "./RagfairCategoriesService"; export declare class RagfairOfferService { protected logger: ILogger; protected timeUtil: TimeUtil; protected databaseServer: DatabaseServer; protected saveServer: SaveServer; protected ragfairServerHelper: RagfairServerHelper; + protected ragfairCategoriesService: RagfairCategoriesService; protected profileHelper: ProfileHelper; protected itemEventRouter: ItemEventRouter; protected httpResponse: HttpResponseUtil; @@ -26,12 +28,16 @@ export declare class RagfairOfferService { protected expiredOffers: Item[]; protected offers: IRagfairOffer[]; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, ragfairCategoriesService: RagfairCategoriesService, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + /** + * Get all offers + * @returns IRagfairOffer array + */ getOffers(): IRagfairOffer[]; getOfferByOfferId(offerId: string): IRagfairOffer; getOffersOfType(templateId: string): IRagfairOffer[]; addOffer(offer: IRagfairOffer): void; - addOfferToExpired(offer: Item): void; + addOfferToExpired(staleOffer: IRagfairOffer): void; setTraderUpdateStatus(traderId: string, shouldUpdate: boolean): void; shouldTraderBeUpdated(traderID: string): boolean; getExpiredOfferCount(): number; diff --git a/TypeScript/4UseACustomConfigFile/types/services/RagfairPriceService.d.ts b/TypeScript/4UseACustomConfigFile/types/services/RagfairPriceService.d.ts index 5256b99..e3168a6 100644 --- a/TypeScript/4UseACustomConfigFile/types/services/RagfairPriceService.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/services/RagfairPriceService.d.ts @@ -28,5 +28,19 @@ export declare class RagfairPriceService { getFleaPriceForItem(tplId: string): number; getBarterPrice(barterScheme: IBarterScheme[]): number; getDynamicOfferPrice(items: Item[], desiredCurrency: string): number; + /** + * Multiply the price by a randomised curve where n = 2, shift = 2 + * @param existingPrice price to alter + * @param isPreset is the item we're multiplying a preset + * @returns multiplied price + */ + protected randomisePrice(existingPrice: number, isPreset: boolean): number; + /** + * Calculate the cost of a weapon preset by adding together the price of its mods + base price of default weapon preset + * @param item base weapon + * @param items weapon plus mods + * @param existingPrice price of existing base weapon + * @returns + */ getWeaponPresetPrice(item: Item, items: Item[], existingPrice: number): number; } diff --git a/TypeScript/4UseACustomConfigFile/types/utils/Watermark.d.ts b/TypeScript/4UseACustomConfigFile/types/utils/Watermark.d.ts index 111bdd0..c6dc120 100644 --- a/TypeScript/4UseACustomConfigFile/types/utils/Watermark.d.ts +++ b/TypeScript/4UseACustomConfigFile/types/utils/Watermark.d.ts @@ -28,7 +28,12 @@ export declare class Watermark { protected text: string[]; protected versionLabel: string; initialize(): void; - getVersionTag(): string; + /** + * Get a version string (x.x.x) or (x.x.x-BLEEDINGEDGE) OR (X.X.X (18xxx)) + * @param withEftVersion Include the eft version this spt version was made for + * @returns string + */ + getVersionTag(withEftVersion?: boolean): string; getVersionLabel(): string; /** Set window title */ setTitle(): void; diff --git a/TypeScript/5ReplaceMethod/package.json b/TypeScript/5ReplaceMethod/package.json index 6b54124..cafc622 100644 --- a/TypeScript/5ReplaceMethod/package.json +++ b/TypeScript/5ReplaceMethod/package.json @@ -4,7 +4,7 @@ "main": "src/mod.js", "license": "MIT", "author": "Chomp", - "akiVersion": "3.0.0", + "akiVersion": "3.1.0", "scripts": { "setup:environment": "npm i", "build:unzipped": "copyfiles -e \"./node_modules/**/*.*\" -e \"./dist/**/*.*\" -e \"./package-lock.json\" -e \"./tsconfig.json\" -e \"./README.txt\" -e \"./mod.code-workspace\" \"./**/*.*\" ./dist", diff --git a/TypeScript/5ReplaceMethod/src/mod.ts b/TypeScript/5ReplaceMethod/src/mod.ts index 452caf9..6230011 100644 --- a/TypeScript/5ReplaceMethod/src/mod.ts +++ b/TypeScript/5ReplaceMethod/src/mod.ts @@ -1,20 +1,20 @@ import { DependencyContainer } from "tsyringe"; -import { IMod } from "@spt-aki/models/external/mod"; +import { IPreAkiLoadMod } from "@spt-aki/models/external/IPreAkiLoadMod"; import { LauncherController } from "@spt-aki/controllers/LauncherController"; import { DatabaseServer } from "@spt-aki/servers/DatabaseServer"; import { ILoginRequestData } from "@spt-aki/models/eft/launcher/ILoginRequestData"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { SaveServer } from "@spt-aki/servers/SaveServer"; -class Mod implements IMod +class Mod implements IPreAkiLoadMod { // DO NOT leave static references to ANY resolved dependency. // ALWAYS use the container to resolve dependencies // ****** ALWAYS ******* private static container: DependencyContainer; - + // Perform these actions before server fully loads - public load(container: DependencyContainer): void + public preAkiLoad(container: DependencyContainer): void { // We will save a reference to the dependency container to resolve dependencies // that we may need down the line @@ -35,12 +35,6 @@ class Mod implements IMod }, {frequency: "Always"}); } - // not used for this example - public delayedLoad(container: DependencyContainer): void - { - return - } - // our new replacement function, ready to be used public replacementFunction(info: ILoginRequestData): string { diff --git a/TypeScript/5ReplaceMethod/types/callbacks/GameCallbacks.d.ts b/TypeScript/5ReplaceMethod/types/callbacks/GameCallbacks.d.ts index d5cad76..06da1b5 100644 --- a/TypeScript/5ReplaceMethod/types/callbacks/GameCallbacks.d.ts +++ b/TypeScript/5ReplaceMethod/types/callbacks/GameCallbacks.d.ts @@ -2,6 +2,7 @@ import { GameController } from "../controllers/GameController"; import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse"; import { IGameEmptyCrcRequestData } from "../models/eft/game/IGameEmptyCrcRequestData"; +import { IReportNicknameRequestData } from "../models/eft/game/IReportNicknameRequestData"; import { IVersionValidateRequestData } from "../models/eft/game/IVersionValidateRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; @@ -20,5 +21,6 @@ declare class GameCallbacks { validateGameVersion(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; gameKeepalive(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; getVersion(url: string, info: IEmptyRequestData, sessionID: string): string; + reportNickname(url: string, info: IReportNicknameRequestData, sessionID: string): INullResponseData; } export { GameCallbacks }; diff --git a/TypeScript/5ReplaceMethod/types/callbacks/HealthCallbacks.d.ts b/TypeScript/5ReplaceMethod/types/callbacks/HealthCallbacks.d.ts index 8f7b89d..8672be7 100644 --- a/TypeScript/5ReplaceMethod/types/callbacks/HealthCallbacks.d.ts +++ b/TypeScript/5ReplaceMethod/types/callbacks/HealthCallbacks.d.ts @@ -13,6 +13,13 @@ export declare class HealthCallbacks { protected profileHelper: ProfileHelper; protected healthController: HealthController; constructor(httpResponse: HttpResponseUtil, profileHelper: ProfileHelper, healthController: HealthController); + /** + * Custom aki server request found in modules/HealthSynchronizer.cs + * @param url + * @param info HealthListener.Instance.CurrentHealth class + * @param sessionID session id + * @returns empty response, no data sent back to client + */ syncHealth(url: string, info: ISyncHealthRequestData, sessionID: string): IGetBodyResponseData; offraidEat(pmcData: IPmcData, body: IOffraidEatRequestData, sessionID: string): IItemEventRouterResponse; offraidHeal(pmcData: IPmcData, body: IOffraidHealRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/5ReplaceMethod/types/callbacks/InsuranceCallbacks.d.ts b/TypeScript/5ReplaceMethod/types/callbacks/InsuranceCallbacks.d.ts index 520d0eb..6819960 100644 --- a/TypeScript/5ReplaceMethod/types/callbacks/InsuranceCallbacks.d.ts +++ b/TypeScript/5ReplaceMethod/types/callbacks/InsuranceCallbacks.d.ts @@ -3,6 +3,7 @@ import { OnLoadOnUpdate } from "../di/OnLoadOnUpdate"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -17,7 +18,7 @@ export declare class InsuranceCallbacks extends OnLoadOnUpdate { protected insuranceConfig: IInsuranceConfig; constructor(insuranceController: InsuranceController, insuranceService: InsuranceService, httpResponse: HttpResponseUtil, configServer: ConfigServer); onLoad(): void; - getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; + getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; onUpdate(secondsSinceLastRun: number): boolean; getRoute(): string; diff --git a/TypeScript/5ReplaceMethod/types/callbacks/MatchCallbacks.d.ts b/TypeScript/5ReplaceMethod/types/callbacks/MatchCallbacks.d.ts index 083c1f5..158d8df 100644 --- a/TypeScript/5ReplaceMethod/types/callbacks/MatchCallbacks.d.ts +++ b/TypeScript/5ReplaceMethod/types/callbacks/MatchCallbacks.d.ts @@ -1,9 +1,13 @@ import { MatchController } from "../controllers/MatchController"; +import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { DatabaseServer } from "../servers/DatabaseServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; @@ -16,18 +20,18 @@ export declare class MatchCallbacks { constructor(httpResponse: HttpResponseUtil, jsonUtil: JsonUtil, matchController: MatchController, databaseServer: DatabaseServer); updatePing(url: string, info: any, sessionID: string): INullResponseData; exitMatch(url: string, info: any, sessionID: string): INullResponseData; - exitToMenu(url: string, info: any, sessionID: string): INullResponseData; - startGroupSearch(url: string, info: any, sessionID: string): INullResponseData; - stopGroupSearch(url: string, info: any, sessionID: string): INullResponseData; + exitToMenu(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + startGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + stopGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; sendGroupInvite(url: string, info: any, sessionID: string): INullResponseData; acceptGroupInvite(url: string, info: any, sessionID: string): INullResponseData; cancelGroupInvite(url: string, info: any, sessionID: string): INullResponseData; putMetrics(url: string, info: any, sessionID: string): INullResponseData; getProfile(url: string, info: IGetProfileRequestData, sessionID: string): IGetBodyResponseData; - serverAvailable(url: string, info: any, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; - joinMatch(url: string, info: any, sessionID: string): IGetBodyResponseData; + serverAvailable(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; + joinMatch(url: string, info: IJoinMatchRequestData, sessionID: string): IGetBodyResponseData; getMetrics(url: string, info: any, sessionID: string): IGetBodyResponseData; - getGroupStatus(url: string, info: any, sessionID: string): IGetBodyResponseData; + getGroupStatus(url: string, info: IGetGroupStatusRequestData, sessionID: string): IGetBodyResponseData; createGroup(url: string, info: any, sessionID: string): IGetBodyResponseData; deleteGroup(url: string, info: any, sessionID: string): INullResponseData; startOfflineRaid(url: string, info: IStartOfflineRaidRequestData, sessionID: string): INullResponseData; diff --git a/TypeScript/5ReplaceMethod/types/callbacks/ModCallbacks.d.ts b/TypeScript/5ReplaceMethod/types/callbacks/ModCallbacks.d.ts index 866abf7..58342dc 100644 --- a/TypeScript/5ReplaceMethod/types/callbacks/ModCallbacks.d.ts +++ b/TypeScript/5ReplaceMethod/types/callbacks/ModCallbacks.d.ts @@ -1,5 +1,5 @@ import { OnLoad } from "../di/OnLoad"; -import { DelayedModLoader } from "../loaders/DelayedModLoader"; +import { PostAkiModLoader } from "../loaders/PostAkiModLoader"; import { IHttpConfig } from "../models/spt/config/IHttpConfig"; import { IHttpServer } from "../models/spt/server/IHttpServer"; import { ILogger } from "../models/spt/utils/ILogger"; @@ -9,10 +9,10 @@ declare class ModCallbacks extends OnLoad { protected logger: ILogger; protected httpResponse: HttpResponseUtil; protected httpServer: IHttpServer; - protected modLoader: DelayedModLoader; + protected postAkiModLoader: PostAkiModLoader; protected configServer: ConfigServer; protected httpConfig: IHttpConfig; - constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, modLoader: DelayedModLoader, configServer: ConfigServer); + constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, postAkiModLoader: PostAkiModLoader, configServer: ConfigServer); onLoad(): void; getRoute(): string; sendBundle(sessionID: string, req: any, resp: any, body: any): void; diff --git a/TypeScript/5ReplaceMethod/types/callbacks/ProfileCallbacks.d.ts b/TypeScript/5ReplaceMethod/types/callbacks/ProfileCallbacks.d.ts index 116e7c5..6a86fc0 100644 --- a/TypeScript/5ReplaceMethod/types/callbacks/ProfileCallbacks.d.ts +++ b/TypeScript/5ReplaceMethod/types/callbacks/ProfileCallbacks.d.ts @@ -3,6 +3,7 @@ import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IGetMiniProfileRequestData } from "../models/eft/launcher/IGetMiniProfileRequestData"; +import { GetProfileStatusResponseData } from "../models/eft/profile/GetProfileStatusResponseData"; import { IProfileChangeNicknameRequestData } from "../models/eft/profile/IProfileChangeNicknameRequestData"; import { IProfileChangeVoiceRequestData } from "../models/eft/profile/IProfileChangeVoiceRequestData"; import { IProfileCreateRequestData } from "../models/eft/profile/IProfileCreateRequestData"; @@ -23,7 +24,14 @@ export declare class ProfileCallbacks { changeNickname(url: string, info: IProfileChangeNicknameRequestData, sessionID: string): IGetBodyResponseData; validateNickname(url: string, info: IValidateNicknameRequestData, sessionID: string): IGetBodyResponseData; getReservedNickname(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; - getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; + /** + * Called when creating a character, when you choose a character face/voice + * @param url + * @param info response (empty) + * @param sessionID + * @returns + */ + getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; searchFriend(url: string, info: ISearchFriendRequestData, sessionID: string): IGetBodyResponseData; getMiniProfile(url: string, info: IGetMiniProfileRequestData, sessionID: string): string; getAllMiniProfiles(url: string, info: any, sessionID: string): string; diff --git a/TypeScript/5ReplaceMethod/types/callbacks/RagfairCallbacks.d.ts b/TypeScript/5ReplaceMethod/types/callbacks/RagfairCallbacks.d.ts index d5bab8b..da782e1 100644 --- a/TypeScript/5ReplaceMethod/types/callbacks/RagfairCallbacks.d.ts +++ b/TypeScript/5ReplaceMethod/types/callbacks/RagfairCallbacks.d.ts @@ -9,6 +9,7 @@ import { IAddOfferRequestData } from "../models/eft/ragfair/IAddOfferRequestData import { IExtendOfferRequestData } from "../models/eft/ragfair/IExtendOfferRequestData"; import { IGetItemPriceResult } from "../models/eft/ragfair/IGetItemPriceResult"; import { IGetMarketPriceRequestData } from "../models/eft/ragfair/IGetMarketPriceRequestData"; +import { IGetOffersResult } from "../models/eft/ragfair/IGetOffersResult"; import { IRemoveOfferRequestData } from "../models/eft/ragfair/IRemoveOfferRequestData"; import { ISearchRequestData } from "../models/eft/ragfair/ISearchRequestData"; import { IRagfairConfig } from "../models/spt/config/IRagfairConfig"; @@ -28,7 +29,7 @@ export declare class RagfairCallbacks extends OnLoadOnUpdate { constructor(httpResponse: HttpResponseUtil, logger: ILogger, jsonUtil: JsonUtil, ragfairServer: RagfairServer, ragfairController: RagfairController, configServer: ConfigServer); onLoad(): void; getRoute(): string; - search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; + search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; getMarketPrice(url: string, info: IGetMarketPriceRequestData, sessionID: string): IGetBodyResponseData; getItemPrices(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; addOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/5ReplaceMethod/types/controllers/GameController.d.ts b/TypeScript/5ReplaceMethod/types/controllers/GameController.d.ts index 5f516de..f4c3d2c 100644 --- a/TypeScript/5ReplaceMethod/types/controllers/GameController.d.ts +++ b/TypeScript/5ReplaceMethod/types/controllers/GameController.d.ts @@ -28,6 +28,11 @@ export declare class GameController { protected addMissingRepeatableQuestsProperty(pmcProfile: IPmcData): void; protected addMissingWeaponRepairSkill(pmcProfile: IPmcData): void; protected addMissingAkiVersionTagToProfile(fullProfile: IAkiProfile): void; + /** + * In 18876 bsg changed the pockets tplid to be one that has 3 additional special slots + * @param pmcProfile + */ + protected updateProfilePocketsToNewId(pmcProfile: IPmcData): void; protected addMissingArmorRepairSkill(pmcProfile: IPmcData): void; protected fixNullTraderSalesSums(pmcProfile: IPmcData): void; protected removeDanglingBackendCounters(pmcProfile: IPmcData): void; diff --git a/TypeScript/5ReplaceMethod/types/controllers/InsuranceController.d.ts b/TypeScript/5ReplaceMethod/types/controllers/InsuranceController.d.ts index db2c567..af45442 100644 --- a/TypeScript/5ReplaceMethod/types/controllers/InsuranceController.d.ts +++ b/TypeScript/5ReplaceMethod/types/controllers/InsuranceController.d.ts @@ -3,6 +3,7 @@ import { ItemHelper } from "../helpers/ItemHelper"; import { ProfileHelper } from "../helpers/ProfileHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -33,6 +34,12 @@ export declare class InsuranceController { insuranceService: InsuranceService, configServer: ConfigServer); processReturn(): void; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; - cost(info: IGetInsuranceCostRequestData, sessionID: string): any; + /** + * Calculate insurance cost + * @param info request object + * @param sessionID session id + * @returns response object to send to client + */ + cost(info: IGetInsuranceCostRequestData, sessionID: string): IGetInsuranceCostResponseData; doAbsolutelyNothing(): void; } diff --git a/TypeScript/5ReplaceMethod/types/controllers/InventoryController.d.ts b/TypeScript/5ReplaceMethod/types/controllers/InventoryController.d.ts index b732aa9..f24ab62 100644 --- a/TypeScript/5ReplaceMethod/types/controllers/InventoryController.d.ts +++ b/TypeScript/5ReplaceMethod/types/controllers/InventoryController.d.ts @@ -24,6 +24,8 @@ import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRout import { ILogger } from "../models/spt/utils/ILogger"; import { ItemEventRouter } from "../routers/ItemEventRouter"; import { DatabaseServer } from "../servers/DatabaseServer"; +import { FenceService } from "../services/FenceService"; +import { RagfairOfferService } from "../services/RagfairOfferService"; import { HashUtil } from "../utils/HashUtil"; import { JsonUtil } from "../utils/JsonUtil"; export declare class InventoryController { @@ -31,12 +33,14 @@ export declare class InventoryController { protected hashUtil: HashUtil; protected jsonUtil: JsonUtil; protected databaseServer: DatabaseServer; + protected fenceService: FenceService; protected presetHelper: PresetHelper; protected inventoryHelper: InventoryHelper; + protected ragfairOfferService: RagfairOfferService; protected profileHelper: ProfileHelper; protected paymentHelper: PaymentHelper; protected itemEventRouter: ItemEventRouter; - constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); + constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, fenceService: FenceService, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, ragfairOfferService: RagfairOfferService, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); /** * Move Item * change location of item with parentId and slotId @@ -93,9 +97,19 @@ export declare class InventoryController { tagItem(pmcData: IPmcData, body: IInventoryTagRequestData, sessionID: string): IItemEventRouterResponse; bindItem(pmcData: IPmcData, body: IInventoryBindRequestData, sessionID: string): IItemEventRouterResponse; /** - * Handles examining of the item * + * Handles examining an item + * @param pmcData player profile + * @param body request object + * @param sessionID session id + * @returns response */ examineItem(pmcData: IPmcData, body: IInventoryExamineRequestData, sessionID: string): IItemEventRouterResponse; + /** + * Get the tplid of an item from the examine request object + * @param body response request + * @returns tplid + */ + protected getItemTpl(body: IInventoryExamineRequestData): string; readEncyclopedia(pmcData: IPmcData, body: IInventoryReadEncyclopediaRequestData, sessionID: string): IItemEventRouterResponse; /** * Handles sorting of Inventory. diff --git a/TypeScript/5ReplaceMethod/types/controllers/MatchController.d.ts b/TypeScript/5ReplaceMethod/types/controllers/MatchController.d.ts index c322d96..7ef3fcc 100644 --- a/TypeScript/5ReplaceMethod/types/controllers/MatchController.d.ts +++ b/TypeScript/5ReplaceMethod/types/controllers/MatchController.d.ts @@ -2,7 +2,10 @@ import { ProfileHelper } from "../helpers/ProfileHelper"; import { TraderHelper } from "../helpers/TraderHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { IInRaidConfig } from "../models/spt/config/IInRaidConfig"; import { IMatchConfig } from "../models/spt/config/IMatchConfig"; @@ -20,11 +23,11 @@ export declare class MatchController { constructor(saveServer: SaveServer, profileHelper: ProfileHelper, matchLocationService: MatchLocationService, traderHelper: TraderHelper, configServer: ConfigServer); getEnabled(): boolean; getProfile(info: IGetProfileRequestData): IPmcData[]; - protected getMatch(location: any): any; createGroup(sessionID: string, info: any): any; deleteGroup(info: any): void; - joinMatch(info: any, sessionID: string): any[]; - getGroupStatus(info: any): any; + joinMatch(info: IJoinMatchRequestData, sessionID: string): IJoinMatchResult[]; + protected getMatch(location: string): any; + getGroupStatus(info: IGetGroupStatusRequestData): any; startOfflineRaid(info: IStartOfflineRaidRequestData, sessionID: string): void; endOfflineRaid(info: IEndOfflineRaidRequestData, sessionID: string): void; } diff --git a/TypeScript/5ReplaceMethod/types/controllers/RagfairController.d.ts b/TypeScript/5ReplaceMethod/types/controllers/RagfairController.d.ts index c758593..c4ffc15 100644 --- a/TypeScript/5ReplaceMethod/types/controllers/RagfairController.d.ts +++ b/TypeScript/5ReplaceMethod/types/controllers/RagfairController.d.ts @@ -60,6 +60,8 @@ export declare class RagfairController { protected ragfairConfig: IRagfairConfig; constructor(logger: ILogger, timeUtil: TimeUtil, httpResponse: HttpResponseUtil, itemEventRouter: ItemEventRouter, ragfairServer: RagfairServer, ragfairPriceService: RagfairPriceService, databaseServer: DatabaseServer, itemHelper: ItemHelper, saveServer: SaveServer, ragfairSellHelper: RagfairSellHelper, ragfairTaxHelper: RagfairTaxHelper, ragfairSortHelper: RagfairSortHelper, ragfairOfferHelper: RagfairOfferHelper, profileHelper: ProfileHelper, paymentService: PaymentService, handbookHelper: HandbookHelper, paymentHelper: PaymentHelper, inventoryHelper: InventoryHelper, ragfairHelper: RagfairHelper, ragfairOfferService: RagfairOfferService, ragfairRequiredItemsService: RagfairRequiredItemsService, ragfairOfferGenerator: RagfairOfferGenerator, configServer: ConfigServer); getOffers(sessionID: string, info: ISearchRequestData): IGetOffersResult; + protected isLinkedSearch(info: ISearchRequestData): boolean; + protected isRequiredSearch(info: ISearchRequestData): boolean; update(): void; getItemPrice(info: IGetMarketPriceRequestData): IGetItemPriceResult; addPlayerOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/5ReplaceMethod/types/generators/BotWeaponGenerator.d.ts b/TypeScript/5ReplaceMethod/types/generators/BotWeaponGenerator.d.ts index a43b18c..dd3ad69 100644 --- a/TypeScript/5ReplaceMethod/types/generators/BotWeaponGenerator.d.ts +++ b/TypeScript/5ReplaceMethod/types/generators/BotWeaponGenerator.d.ts @@ -41,6 +41,13 @@ export declare class BotWeaponGenerator { * @returns */ protected generateExtraMagazines(weaponMods: Item[], weaponTemplate: ITemplateItem, magCounts: MinMax, ammoTpl: string, inventory: PmcInventory): void; + /** + * Get a randomised number of bullets for a specific magazine + * @param magCounts min and max count of magazines + * @param magTemplate magazine to generate bullet count for + * @returns bullet count number + */ + protected getRandomisedBulletCount(magCounts: MinMax, magTemplate: ITemplateItem): number; /** * Get a randomised count of magazines * @param magCounts min and max value returned value can be between diff --git a/TypeScript/5ReplaceMethod/types/generators/RagfairOfferGenerator.d.ts b/TypeScript/5ReplaceMethod/types/generators/RagfairOfferGenerator.d.ts index de53ea9..6645c8d 100644 --- a/TypeScript/5ReplaceMethod/types/generators/RagfairOfferGenerator.d.ts +++ b/TypeScript/5ReplaceMethod/types/generators/RagfairOfferGenerator.d.ts @@ -18,6 +18,7 @@ import { JsonUtil } from "../utils/JsonUtil"; import { RandomUtil } from "../utils/RandomUtil"; import { TimeUtil } from "../utils/TimeUtil"; import { RagfairAssortGenerator } from "./RagfairAssortGenerator"; +import { RagfairCategoriesService } from "../services/RagfairCategoriesService"; export declare class RagfairOfferGenerator { protected logger: ILogger; protected jsonUtil: JsonUtil; @@ -31,11 +32,12 @@ export declare class RagfairOfferGenerator { protected ragfairAssortGenerator: RagfairAssortGenerator; protected ragfairOfferService: RagfairOfferService; protected ragfairPriceService: RagfairPriceService; + protected ragfairCategoriesService: RagfairCategoriesService; protected fenceService: FenceService; protected itemHelper: ItemHelper; protected configServer: ConfigServer; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); + constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, ragfairCategoriesService: RagfairCategoriesService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); createOffer(userID: string, time: number, items: Item[], barterScheme: IBarterScheme[], loyalLevel: number, price: number, sellInOnePiece?: boolean): IRagfairOffer; protected getTraderId(userID: string): string; protected getRating(userID: string): number; diff --git a/TypeScript/5ReplaceMethod/types/helpers/BotGeneratorHelper.d.ts b/TypeScript/5ReplaceMethod/types/helpers/BotGeneratorHelper.d.ts index e4b0c11..243e7a8 100644 --- a/TypeScript/5ReplaceMethod/types/helpers/BotGeneratorHelper.d.ts +++ b/TypeScript/5ReplaceMethod/types/helpers/BotGeneratorHelper.d.ts @@ -29,6 +29,12 @@ export declare class BotGeneratorHelper { protected botConfig: IBotConfig; constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, probabilityHelper: ProbabilityHelper, databaseServer: DatabaseServer, durabilityLimitsHelper: DurabilityLimitsHelper, itemHelper: ItemHelper, inventoryHelper: InventoryHelper, containerHelper: ContainerHelper, configServer: ConfigServer); generateModsForItem(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem, modSpawnChances: ModsChances, isPmc?: boolean): Item[]; + /** + * Is this magazine cylinder related (revolvers and grenade launchers) + * @param magazineParentName the name of the magazines parent + * @returns true if it is cylinder related + */ + magazineIsCylinderRelated(magazineParentName: string): boolean; /** * Get a list of non black-listed cartridges from the PMC bot config * @param modSlot mod item slot @@ -69,6 +75,12 @@ export declare class BotGeneratorHelper { * @param {object} parentTemplate The CylinderMagazine's template */ protected fillCamora(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem): void; + /** + * Take a record of camoras and merge the compatable shells into one array + * @param camorasWithShells camoras we want to merge into one array + * @returns string array of shells fro luitple camora sources + */ + protected mergeCamoraPoolsTogether(camorasWithShells: Record): string[]; generateExtraPropertiesForItem(itemTemplate: ITemplateItem, botRole?: any): { upd?: Upd; }; diff --git a/TypeScript/5ReplaceMethod/types/loaders/AfterDbModLoader.d.ts b/TypeScript/5ReplaceMethod/types/loaders/AfterDbModLoader.d.ts deleted file mode 100644 index a9fc286..0000000 --- a/TypeScript/5ReplaceMethod/types/loaders/AfterDbModLoader.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { OnLoad } from "../di/OnLoad"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class AfterDbModLoader implements OnLoad { - protected initialModLoader: InitialModLoader; - constructor(initialModLoader: InitialModLoader); - onLoad(): void; - getRoute(): string; - getModPath(mod: string): string; - protected executeMods(container: DependencyContainer): void; -} diff --git a/TypeScript/5ReplaceMethod/types/loaders/DelayedModLoader.d.ts b/TypeScript/5ReplaceMethod/types/loaders/DelayedModLoader.d.ts deleted file mode 100644 index 2a05604..0000000 --- a/TypeScript/5ReplaceMethod/types/loaders/DelayedModLoader.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { HandbookController } from "../controllers/HandbookController"; -import { IModLoader } from "../models/spt/mod/IModLoader"; -import { ModCompilerService } from "../services/ModCompilerService"; -import { VFS } from "../utils/VFS"; -import { BundleLoader } from "./BundleLoader"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class DelayedModLoader implements IModLoader { - protected bundleLoader: BundleLoader; - protected handbookController: HandbookController; - protected vfs: VFS; - protected modCompilerService: ModCompilerService; - protected initialModLoader: InitialModLoader; - constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, initialModLoader: InitialModLoader); - getBundles(local: boolean): string; - getBundle(key: string, local: boolean): void; - getModPath(mod: string): string; - load(): void; - protected executeMods(container: DependencyContainer): void; - protected addBundles(): void; -} diff --git a/TypeScript/5ReplaceMethod/types/loaders/InitialModLoader.d.ts b/TypeScript/5ReplaceMethod/types/loaders/InitialModLoader.d.ts deleted file mode 100644 index 9a99dcc..0000000 --- a/TypeScript/5ReplaceMethod/types/loaders/InitialModLoader.d.ts +++ /dev/null @@ -1,64 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { ICoreConfig } from "../models/spt/config/ICoreConfig"; -import { ModLoader } from "../models/spt/mod/IMod"; -import { IModLoader } from "../models/spt/mod/IModLoader"; -import { IPackageJsonData } from "../models/spt/mod/IPackageJsonData"; -import { ILogger } from "../models/spt/utils/ILogger"; -import { ConfigServer } from "../servers/ConfigServer"; -import { ModCompilerService } from "../services/ModCompilerService"; -import { JsonUtil } from "../utils/JsonUtil"; -import { VFS } from "../utils/VFS"; -import { BundleLoader } from "./BundleLoader"; -export declare class InitialModLoader implements IModLoader { - protected logger: ILogger; - protected vfs: VFS; - protected jsonUtil: JsonUtil; - protected modCompilerService: ModCompilerService; - protected bundleLoader: BundleLoader; - protected configServer: ConfigServer; - protected static container: DependencyContainer; - protected readonly basepath = "user/mods/"; - protected imported: Record; - protected akiConfig: ICoreConfig; - constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, configServer: ConfigServer); - load(container: DependencyContainer): Promise; - getBundles(local: boolean): string; - getBundle(key: string, local: boolean): void; - /** - * Returns a list of mods with preserved load order - * @returns Array of mod names in load order - */ - getImportedModsNames(): string[]; - getModPath(mod: string): string; - protected importClass(name: string, filepath: string, container: DependencyContainer): void; - protected importMods(): Promise; - /** - * - * @param mods Get an array of broken/invalid mods by name - * @returns Mod names array - */ - protected getBrokenMods(mods: string[]): string[]; - /** - * Get packageJson data for mods - * @param mods mods to get packageJson for - * @returns dictionary - */ - protected getModsPackageData(mods: string[]): Record; - /** - * Does mod have "delayedLoad(" string in its entry class - * @param modFolderName folder name - * @param modToValidate package.json details - * @returns boolean - */ - protected isModSpt300Compatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; - protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; - protected executeMods(container: DependencyContainer): void; - sortModsLoadOrder(): string[]; - protected addMod(mod: string): Promise; - protected areModDependenciesFulfilled(pkg: IPackageJsonData, loadedMods: Record): boolean; - protected isModCompatible(mod: IPackageJsonData, loadedMods: Record): boolean; - protected validMod(mod: string): boolean; - protected getLoadOrderRecursive(mod: string, result: Record, visited: Record): void; - protected getLoadOrder(mods: Record): Record; - getContainer(): DependencyContainer; -} diff --git a/TypeScript/5ReplaceMethod/types/loaders/PostAkiModLoader.d.ts b/TypeScript/5ReplaceMethod/types/loaders/PostAkiModLoader.d.ts new file mode 100644 index 0000000..edc6e5d --- /dev/null +++ b/TypeScript/5ReplaceMethod/types/loaders/PostAkiModLoader.d.ts @@ -0,0 +1,21 @@ +import { DependencyContainer } from "tsyringe"; +import { HandbookController } from "../controllers/HandbookController"; +import { IModLoader } from "../models/spt/mod/IModLoader"; +import { ModCompilerService } from "../services/ModCompilerService"; +import { VFS } from "../utils/VFS"; +import { BundleLoader } from "./BundleLoader"; +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostAkiModLoader implements IModLoader { + protected bundleLoader: BundleLoader; + protected handbookController: HandbookController; + protected vfs: VFS; + protected modCompilerService: ModCompilerService; + protected preAkiModLoader: PreAkiModLoader; + constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, preAkiModLoader: PreAkiModLoader); + getBundles(local: boolean): string; + getBundle(key: string, local: boolean): void; + getModPath(mod: string): string; + load(): void; + protected executeMods(container: DependencyContainer): void; + protected addBundles(): void; +} diff --git a/TypeScript/5ReplaceMethod/types/loaders/PostDBModLoader.d.ts b/TypeScript/5ReplaceMethod/types/loaders/PostDBModLoader.d.ts new file mode 100644 index 0000000..5101b7b --- /dev/null +++ b/TypeScript/5ReplaceMethod/types/loaders/PostDBModLoader.d.ts @@ -0,0 +1,11 @@ +import { DependencyContainer } from "tsyringe"; +import { OnLoad } from "../di/OnLoad"; +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostDBModLoader implements OnLoad { + protected preAkiModLoader: PreAkiModLoader; + constructor(preAkiModLoader: PreAkiModLoader); + onLoad(): void; + getRoute(): string; + getModPath(mod: string): string; + protected executeMods(container: DependencyContainer): void; +} diff --git a/TypeScript/5ReplaceMethod/types/loaders/PreAkiModLoader.d.ts b/TypeScript/5ReplaceMethod/types/loaders/PreAkiModLoader.d.ts new file mode 100644 index 0000000..6ded3c6 --- /dev/null +++ b/TypeScript/5ReplaceMethod/types/loaders/PreAkiModLoader.d.ts @@ -0,0 +1,64 @@ +import { DependencyContainer } from "tsyringe"; +import { ICoreConfig } from "../models/spt/config/ICoreConfig"; +import { ModLoader } from "../models/spt/mod/IMod"; +import { IModLoader } from "../models/spt/mod/IModLoader"; +import { IPackageJsonData } from "../models/spt/mod/IPackageJsonData"; +import { ILogger } from "../models/spt/utils/ILogger"; +import { ConfigServer } from "../servers/ConfigServer"; +import { ModCompilerService } from "../services/ModCompilerService"; +import { JsonUtil } from "../utils/JsonUtil"; +import { VFS } from "../utils/VFS"; +import { BundleLoader } from "./BundleLoader"; +export declare class PreAkiModLoader implements IModLoader { + protected logger: ILogger; + protected vfs: VFS; + protected jsonUtil: JsonUtil; + protected modCompilerService: ModCompilerService; + protected bundleLoader: BundleLoader; + protected configServer: ConfigServer; + protected static container: DependencyContainer; + protected readonly basepath = "user/mods/"; + protected imported: Record; + protected akiConfig: ICoreConfig; + constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, configServer: ConfigServer); + load(container: DependencyContainer): Promise; + getBundles(local: boolean): string; + getBundle(key: string, local: boolean): void; + /** + * Returns a list of mods with preserved load order + * @returns Array of mod names in load order + */ + getImportedModsNames(): string[]; + getModPath(mod: string): string; + protected importClass(name: string, filepath: string, container: DependencyContainer): void; + protected importMods(): Promise; + /** + * + * @param mods Get an array of broken/invalid mods by name + * @returns Mod names array + */ + protected getBrokenMods(mods: string[]): string[]; + /** + * Get packageJson data for mods + * @param mods mods to get packageJson for + * @returns dictionary + */ + protected getModsPackageData(mods: string[]): Record; + /** + * Does mod have "delayedLoad(" string in its entry class + * @param modFolderName folder name + * @param modToValidate package.json details + * @returns boolean + */ + protected isModSpt3XXCompatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; + protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; + protected executeMods(container: DependencyContainer): void; + sortModsLoadOrder(): string[]; + protected addMod(mod: string): Promise; + protected areModDependenciesFulfilled(pkg: IPackageJsonData, loadedMods: Record): boolean; + protected isModCompatible(mod: IPackageJsonData, loadedMods: Record): boolean; + protected validMod(mod: string): boolean; + protected getLoadOrderRecursive(mod: string, result: Record, visited: Record): void; + protected getLoadOrder(mods: Record): Record; + getContainer(): DependencyContainer; +} diff --git a/TypeScript/5ReplaceMethod/types/models/eft/common/IGlobals.d.ts b/TypeScript/5ReplaceMethod/types/models/eft/common/IGlobals.d.ts index 456895c..9d28dbc 100644 --- a/TypeScript/5ReplaceMethod/types/models/eft/common/IGlobals.d.ts +++ b/TypeScript/5ReplaceMethod/types/models/eft/common/IGlobals.d.ts @@ -1128,8 +1128,11 @@ export interface Inertia { SprintAccelerationLimits: xyz; SideTime: xyz; DiagonalTime: xyz; + MaxTimeWithoutInput: xyz; MinDirectionBlendTime: number; - MoveTime: number; + MoveTimeRange: xyz; + ProneDirectionAccelerationRange: xyz; + ProneSpeedAccelerationRange: xyz; MinMovementAccelerationRangeRight: xyz; MaxMovementAccelerationRangeRight: xyz; } diff --git a/TypeScript/5ReplaceMethod/types/models/eft/common/ILocationBase.d.ts b/TypeScript/5ReplaceMethod/types/models/eft/common/ILocationBase.d.ts index ad48d32..b1dd448 100644 --- a/TypeScript/5ReplaceMethod/types/models/eft/common/ILocationBase.d.ts +++ b/TypeScript/5ReplaceMethod/types/models/eft/common/ILocationBase.d.ts @@ -26,6 +26,7 @@ export interface ILocationBase { DisabledForScav: boolean; DisabledScavExits: string; Enabled: boolean; + EnableCoop: boolean; GlobalLootChanceModifier: number; IconX: number; IconY: number; @@ -41,6 +42,7 @@ export interface ILocationBase { MinDistToFreePoint: number; MinMaxBots: MinMaxBot[]; MinPlayers: number; + MaxCoopGroup: number; Name: string; NewSpawn: boolean; OcculsionCullingEnabled: boolean; @@ -48,6 +50,8 @@ export interface ILocationBase { OpenZones: string; Preview: Preview; RequiredPlayerLevel: number; + PmcMaxPlayersInGroup: number; + ScavMaxPlayersInGroup: number; Rules: string; SafeLocation: boolean; Scene: Scene; @@ -55,7 +59,8 @@ export interface ILocationBase { UnixDateTime: number; _Id: string; doors: any[]; - escape_time_limit: number; + EscapeTimeLimit: number; + EscapeTimeLimitCoop: number; exit_access_time: number; exit_count: number; exit_time: number; @@ -63,6 +68,7 @@ export interface ILocationBase { filter_ex: string[]; limits: ILimit[]; matching_min_seconds: number; + GenerateLocalLootCache: boolean; maxItemCountInLocation: MaxItemCountInLocation[]; sav_summon_seconds: number; tmp_location_field_remove_me: number; @@ -106,6 +112,7 @@ export interface BossLocationSpawn { BossName: string; BossPlayer: boolean; BossZone: string; + RandomTimeSpawn: boolean; Time: number; TriggerId: string; TriggerName: string; diff --git a/TypeScript/5ReplaceMethod/types/models/eft/common/IPmcData.d.ts b/TypeScript/5ReplaceMethod/types/models/eft/common/IPmcData.d.ts index adc2aa5..56bf07f 100644 --- a/TypeScript/5ReplaceMethod/types/models/eft/common/IPmcData.d.ts +++ b/TypeScript/5ReplaceMethod/types/models/eft/common/IPmcData.d.ts @@ -6,7 +6,7 @@ import { MemberCategory } from "../../enums/MemberCategory"; export interface IPmcData { _id: string; aid: string; - savage: string; + savage?: string; Info: Info; Customization: Customization; Health: Health; @@ -28,13 +28,6 @@ export interface IPmcData { CarExtractCounts: CarExtractCounts; SurvivorClass: SurvivorClass; } -export declare enum SurvivorClass { - Unknown = 0, - Neutralizer = 1, - Marauder = 2, - Paramedic = 3, - Survivor = 4 -} export interface Info { EntryPoint: string; Nickname: string; @@ -56,6 +49,9 @@ export interface Info { Bans: IBan[]; BannedState: boolean; BannedUntil: number; + NeedWipeOptions: any[]; + lastCompletedWipe: LastCompleted; + lastCompletedEvent?: LastCompleted; } export interface Settings { Role: string; @@ -339,3 +335,13 @@ export interface RagfairInfo { } export interface CarExtractCounts { } +export declare enum SurvivorClass { + Unknown = 0, + Neutralizer = 1, + Marauder = 2, + Paramedic = 3, + Survivor = 4 +} +export interface LastCompleted { + $oid: string; +} diff --git a/TypeScript/5ReplaceMethod/types/models/eft/common/tables/IProfileTemplate.d.ts b/TypeScript/5ReplaceMethod/types/models/eft/common/tables/IProfileTemplate.d.ts new file mode 100644 index 0000000..c445e92 --- /dev/null +++ b/TypeScript/5ReplaceMethod/types/models/eft/common/tables/IProfileTemplate.d.ts @@ -0,0 +1,23 @@ +import { Dialogue, WeaponBuild } from "../../profile/IAkiProfile"; +import { IPmcData } from "../IPmcData"; +export interface IProfileTemplates { + Standard: IProfileSides; + "Left Behind": IProfileSides; + "Prepare To Escape": IProfileSides; + "Edge Of Darkness": IProfileSides; +} +export interface IProfileSides { + usec: TemplateSide; + bear: TemplateSide; +} +export interface TemplateSide { + character: IPmcData; + suits: string[]; + dialogues: Record; + weaponbuilds: WeaponBuild[]; + trader: ProfileTraderTemplate; +} +export interface ProfileTraderTemplate { + initialStanding: number; + initialSalesSum: number; +} diff --git a/TypeScript/5ReplaceMethod/types/models/eft/common/tables/IQuest.d.ts b/TypeScript/5ReplaceMethod/types/models/eft/common/tables/IQuest.d.ts index e1fc888..942339b 100644 --- a/TypeScript/5ReplaceMethod/types/models/eft/common/tables/IQuest.d.ts +++ b/TypeScript/5ReplaceMethod/types/models/eft/common/tables/IQuest.d.ts @@ -23,6 +23,7 @@ export interface IQuest { status: string; KeyQuest: boolean; changeQuestMessageText: string; + side: string; } export interface Conditions { Started: AvailableForConditions[]; @@ -56,6 +57,7 @@ export interface AvailableForProps { plantTime?: number; zoneId?: string; type?: boolean; + countInRaid?: boolean; } export interface AvailableForCounter { id: string; diff --git a/TypeScript/5ReplaceMethod/types/models/eft/common/tables/ITemplateItem.d.ts b/TypeScript/5ReplaceMethod/types/models/eft/common/tables/ITemplateItem.d.ts index 934ea7d..23a1a14 100644 --- a/TypeScript/5ReplaceMethod/types/models/eft/common/tables/ITemplateItem.d.ts +++ b/TypeScript/5ReplaceMethod/types/models/eft/common/tables/ITemplateItem.d.ts @@ -50,6 +50,7 @@ export interface Props { UnlootableFromSide?: string[]; AnimationVariantsNumber?: number; DiscardingBlock?: boolean; + DropSoundType?: string; RagFairCommissionModifier?: number; IsAlwaysAvailableForInsurance?: boolean; DiscardLimit?: number; @@ -89,7 +90,7 @@ export interface Props { SightModesCount?: number; OpticCalibrationDistances?: number[]; ScopesCount?: number; - AimSensitivity: any; + AimSensitivity?: number | number[][]; Zooms?: number[][]; CalibrationDistances?: number[][]; Intensity?: number; @@ -200,6 +201,9 @@ export interface Props { MinRepairDegradation?: number; MaxRepairDegradation?: number; IronSightRange?: number; + IsFlareGun?: boolean; + IsGrenadeLauncher?: boolean; + IsOneoff?: boolean; MustBoltBeOpennedForExternalReload?: boolean; MustBoltBeOpennedForInternalReload?: boolean; BoltAction?: boolean; diff --git a/TypeScript/5ReplaceMethod/types/models/eft/game/IReportNicknameRequestData.d.ts b/TypeScript/5ReplaceMethod/types/models/eft/game/IReportNicknameRequestData.d.ts new file mode 100644 index 0000000..087c58b --- /dev/null +++ b/TypeScript/5ReplaceMethod/types/models/eft/game/IReportNicknameRequestData.d.ts @@ -0,0 +1,3 @@ +export interface IReportNicknameRequestData { + uid: string; +} diff --git a/TypeScript/5ReplaceMethod/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts b/TypeScript/5ReplaceMethod/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts new file mode 100644 index 0000000..bf209c6 --- /dev/null +++ b/TypeScript/5ReplaceMethod/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts @@ -0,0 +1 @@ +export declare type IGetInsuranceCostResponseData = Record>; diff --git a/TypeScript/5ReplaceMethod/types/models/eft/match/IGetGroupStatusRequestData.d.ts b/TypeScript/5ReplaceMethod/types/models/eft/match/IGetGroupStatusRequestData.d.ts new file mode 100644 index 0000000..cbdb77f --- /dev/null +++ b/TypeScript/5ReplaceMethod/types/models/eft/match/IGetGroupStatusRequestData.d.ts @@ -0,0 +1,8 @@ +export interface IGetGroupStatusRequestData { + location: string; + savage: boolean; + dt: string; + keyId: string; + raidMode: string; + startInGroup: boolean; +} diff --git a/TypeScript/5ReplaceMethod/types/models/eft/match/IJoinMatchRequestData.d.ts b/TypeScript/5ReplaceMethod/types/models/eft/match/IJoinMatchRequestData.d.ts new file mode 100644 index 0000000..cd34f7b --- /dev/null +++ b/TypeScript/5ReplaceMethod/types/models/eft/match/IJoinMatchRequestData.d.ts @@ -0,0 +1,12 @@ +export interface IJoinMatchRequestData { + location: string; + savage: boolean; + dt: string; + servers: Server[]; + keyId: string; +} +export interface Server { + ping: number; + ip: string; + port: string; +} diff --git a/TypeScript/5ReplaceMethod/types/models/eft/match/IJoinMatchResult.d.ts b/TypeScript/5ReplaceMethod/types/models/eft/match/IJoinMatchResult.d.ts new file mode 100644 index 0000000..df695f4 --- /dev/null +++ b/TypeScript/5ReplaceMethod/types/models/eft/match/IJoinMatchResult.d.ts @@ -0,0 +1,11 @@ +export interface IJoinMatchResult { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; + version: string; + location: string; + gamemode: string; + shortid: string; +} diff --git a/TypeScript/5ReplaceMethod/types/models/eft/match/IStartOffineRaidRequestData.d.ts b/TypeScript/5ReplaceMethod/types/models/eft/match/IStartOffineRaidRequestData.d.ts index 84bccc8..7cc457c 100644 --- a/TypeScript/5ReplaceMethod/types/models/eft/match/IStartOffineRaidRequestData.d.ts +++ b/TypeScript/5ReplaceMethod/types/models/eft/match/IStartOffineRaidRequestData.d.ts @@ -1,6 +1,5 @@ export interface IStartOfflineRaidRequestData { locationName: string; - entryPoint: string; startTime: number; dateTime: string; gameSettings: GameSettings; diff --git a/TypeScript/5ReplaceMethod/types/models/eft/profile/GetProfileStatusResponseData.d.ts b/TypeScript/5ReplaceMethod/types/models/eft/profile/GetProfileStatusResponseData.d.ts new file mode 100644 index 0000000..eee9b4f --- /dev/null +++ b/TypeScript/5ReplaceMethod/types/models/eft/profile/GetProfileStatusResponseData.d.ts @@ -0,0 +1,11 @@ +export interface GetProfileStatusResponseData { + maxPveCountExceeded: false; + profiles: ProfileData[]; +} +export interface ProfileData { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; +} diff --git a/TypeScript/5ReplaceMethod/types/models/eft/ragfair/IGetOffersResult.d.ts b/TypeScript/5ReplaceMethod/types/models/eft/ragfair/IGetOffersResult.d.ts index 1c11422..fbc631d 100644 --- a/TypeScript/5ReplaceMethod/types/models/eft/ragfair/IGetOffersResult.d.ts +++ b/TypeScript/5ReplaceMethod/types/models/eft/ragfair/IGetOffersResult.d.ts @@ -1,6 +1,6 @@ import { IRagfairOffer } from "./IRagfairOffer"; export interface IGetOffersResult { - categories: Record; + categories?: Record; offers: IRagfairOffer[]; offersCount: number; selectedCategory: string; diff --git a/TypeScript/5ReplaceMethod/types/models/enums/QuestStatus.d.ts b/TypeScript/5ReplaceMethod/types/models/enums/QuestStatus.d.ts deleted file mode 100644 index 6335c73..0000000 --- a/TypeScript/5ReplaceMethod/types/models/enums/QuestStatus.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -export declare enum QuestStatus { - Locked = 0, - AvailableForStart = 1, - Started = 2, - AvailableForFinish = 3, - Success = 4, - Fail = 5, - FailRestartable = 6, - MarkedAsFailed = 7 -} diff --git a/TypeScript/5ReplaceMethod/types/models/external/IAfterDBLoadMod.d.ts b/TypeScript/5ReplaceMethod/types/models/external/IAfterDBLoadMod.d.ts deleted file mode 100644 index 7f08b9e..0000000 --- a/TypeScript/5ReplaceMethod/types/models/external/IAfterDBLoadMod.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IAfterDBLoadMod { - loadAfterDbInit(container: DependencyContainer): void; -} diff --git a/TypeScript/5ReplaceMethod/types/models/external/IPostAkiLoadMod.d.ts b/TypeScript/5ReplaceMethod/types/models/external/IPostAkiLoadMod.d.ts new file mode 100644 index 0000000..f6950e8 --- /dev/null +++ b/TypeScript/5ReplaceMethod/types/models/external/IPostAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostAkiLoadMod { + postAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/5ReplaceMethod/types/models/external/IPostDBLoadMod.d.ts b/TypeScript/5ReplaceMethod/types/models/external/IPostDBLoadMod.d.ts new file mode 100644 index 0000000..ca7c682 --- /dev/null +++ b/TypeScript/5ReplaceMethod/types/models/external/IPostDBLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostDBLoadMod { + postDBLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/5ReplaceMethod/types/models/external/IPreAkiLoadMod.d.ts b/TypeScript/5ReplaceMethod/types/models/external/IPreAkiLoadMod.d.ts new file mode 100644 index 0000000..ae7579e --- /dev/null +++ b/TypeScript/5ReplaceMethod/types/models/external/IPreAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPreAkiLoadMod { + preAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/5ReplaceMethod/types/models/external/mod.d.ts b/TypeScript/5ReplaceMethod/types/models/external/mod.d.ts deleted file mode 100644 index 47939e9..0000000 --- a/TypeScript/5ReplaceMethod/types/models/external/mod.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IMod { - load(container: DependencyContainer): void; - delayedLoad(container: DependencyContainer): void; -} diff --git a/TypeScript/5ReplaceMethod/types/models/spt/config/IBotConfig.d.ts b/TypeScript/5ReplaceMethod/types/models/spt/config/IBotConfig.d.ts index 5fb9d93..f8cf39b 100644 --- a/TypeScript/5ReplaceMethod/types/models/spt/config/IBotConfig.d.ts +++ b/TypeScript/5ReplaceMethod/types/models/spt/config/IBotConfig.d.ts @@ -18,6 +18,7 @@ export interface PresetBatch { bossKojaniy: number; bossSanitar: number; bossTagilla: number; + bossKnight: number; bossTest: number; cursedAssault: number; followerBully: number; @@ -28,6 +29,8 @@ export interface PresetBatch { followerKojaniy: number; followerSanitar: number; followerTagilla: number; + followerBirdEye: number; + followerBigPipe: number; followerTest: number; marksman: number; pmcBot: number; diff --git a/TypeScript/5ReplaceMethod/types/models/spt/config/IRagfairConfig.d.ts b/TypeScript/5ReplaceMethod/types/models/spt/config/IRagfairConfig.d.ts index 2d151ca..8518252 100644 --- a/TypeScript/5ReplaceMethod/types/models/spt/config/IRagfairConfig.d.ts +++ b/TypeScript/5ReplaceMethod/types/models/spt/config/IRagfairConfig.d.ts @@ -30,6 +30,7 @@ export interface Dynamic { expiredOfferThreshold: number; offerItemCount: MinMax; price: MinMax; + presetPrice: MinMax; endTimeSeconds: MinMax; condition: Condition; stackablePercent: MinMax; diff --git a/TypeScript/5ReplaceMethod/types/models/spt/server/IDatabaseTables.d.ts b/TypeScript/5ReplaceMethod/types/models/spt/server/IDatabaseTables.d.ts index e0d3fdd..9978459 100644 --- a/TypeScript/5ReplaceMethod/types/models/spt/server/IDatabaseTables.d.ts +++ b/TypeScript/5ReplaceMethod/types/models/spt/server/IDatabaseTables.d.ts @@ -6,6 +6,7 @@ import { ICustomizationItem } from "../../eft/common/tables/ICustomizationItem"; import { IHandbookBase } from "../../eft/common/tables/IHandbookBase"; import { ILootBase } from "../../eft/common/tables/ILootBase"; import { IMatch } from "../../eft/common/tables/IMatch"; +import { IProfileTemplates } from "../../eft/common/tables/IProfileTemplate"; import { IQuest } from "../../eft/common/tables/IQuest"; import { IRepeatableQuestDatabase } from "../../eft/common/tables/IRepeatableQuests"; import { ITemplateItem } from "../../eft/common/tables/ITemplateItem"; @@ -39,10 +40,13 @@ export interface IDatabaseTables { items: Record; quests: IQuest[]; repeatableQuests: IRepeatableQuestDatabase; + /** DEPRECATED - Items file found in the client, massivly out of date compared to templates.items, try not to use this, remove ASAP*/ clientItems: Record; handbook: IHandbookBase; customization: Record; - profiles: any; + /** The profile templates listed in the launcher on profile creation, split by account type (e.g. Standard) then side (e.g. bear/usec) */ + profiles: IProfileTemplates; + /** Flea prices of items - gathered from online flea market dump */ prices: Record; }; traders?: Record; diff --git a/TypeScript/5ReplaceMethod/types/servers/RagfairServer.d.ts b/TypeScript/5ReplaceMethod/types/servers/RagfairServer.d.ts index 60c92b5..bc86cdb 100644 --- a/TypeScript/5ReplaceMethod/types/servers/RagfairServer.d.ts +++ b/TypeScript/5ReplaceMethod/types/servers/RagfairServer.d.ts @@ -17,7 +17,8 @@ export declare class RagfairServer { constructor(logger: ILogger, ragfairOfferGenerator: RagfairOfferGenerator, ragfairOfferService: RagfairOfferService, ragfairCategoriesService: RagfairCategoriesService, ragfairRequiredItemsService: RagfairRequiredItemsService, configServer: ConfigServer); load(): void; update(): void; - getCategories(): Record; + getAllCategories(): Record; + getBespokeCategories(offers: IRagfairOffer[]): Record; /** * Disable/Hide an offer from flea * @param offerId diff --git a/TypeScript/5ReplaceMethod/types/services/RagfairCategoriesService.d.ts b/TypeScript/5ReplaceMethod/types/services/RagfairCategoriesService.d.ts index 09956cc..83910e5 100644 --- a/TypeScript/5ReplaceMethod/types/services/RagfairCategoriesService.d.ts +++ b/TypeScript/5ReplaceMethod/types/services/RagfairCategoriesService.d.ts @@ -1,10 +1,40 @@ import { IRagfairOffer } from "../models/eft/ragfair/IRagfairOffer"; +import { ILogger } from "../models/spt/utils/ILogger"; export declare class RagfairCategoriesService { - updateCategories(offers: IRagfairOffer[]): void; + protected logger: ILogger; protected categories: Record; - getCategories(): Record; - getCategoryByItemId(itemId: string): number; - resetCategories(): void; - setCategoryValue(itemId: string, newValue: number): void; - incrementCategory(itemId: string): void; + constructor(logger: ILogger); + /** + * Get all flea categories and their count of offers + * @returns item categories and count + */ + getAllCategories(): Record; + /** + * With the supplied items, get custom categories + * @returns a custom list of categories + */ + getBespokeCategories(offers: IRagfairOffer[]): Record; + /** + * Take an array of ragfair offers and create a dictionary of items with thier corrisponding offer count + * @param offers ragfair offers + * @returns categories and count + */ + protected processOffersIntoCategories(offers: IRagfairOffer[]): Record; + /** + * Increment or decrement a category array + * @param offer offer to process + * @param categories categories to update + * @param increment should item be incremented or decremented + */ + protected addOrIncrementCategory(offer: IRagfairOffer, categories: Record, increment?: boolean): void; + /** + * Increase category count by 1 + * @param offer + */ + incrementCategory(offer: IRagfairOffer): void; + /** + * Reduce category count by 1 + * @param offer + */ + decrementCategory(offer: IRagfairOffer): void; } diff --git a/TypeScript/5ReplaceMethod/types/services/RagfairOfferService.d.ts b/TypeScript/5ReplaceMethod/types/services/RagfairOfferService.d.ts index 7afbf8c..7398a8f 100644 --- a/TypeScript/5ReplaceMethod/types/services/RagfairOfferService.d.ts +++ b/TypeScript/5ReplaceMethod/types/services/RagfairOfferService.d.ts @@ -11,12 +11,14 @@ import { DatabaseServer } from "../servers/DatabaseServer"; import { SaveServer } from "../servers/SaveServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; import { TimeUtil } from "../utils/TimeUtil"; +import { RagfairCategoriesService } from "./RagfairCategoriesService"; export declare class RagfairOfferService { protected logger: ILogger; protected timeUtil: TimeUtil; protected databaseServer: DatabaseServer; protected saveServer: SaveServer; protected ragfairServerHelper: RagfairServerHelper; + protected ragfairCategoriesService: RagfairCategoriesService; protected profileHelper: ProfileHelper; protected itemEventRouter: ItemEventRouter; protected httpResponse: HttpResponseUtil; @@ -26,12 +28,16 @@ export declare class RagfairOfferService { protected expiredOffers: Item[]; protected offers: IRagfairOffer[]; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, ragfairCategoriesService: RagfairCategoriesService, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + /** + * Get all offers + * @returns IRagfairOffer array + */ getOffers(): IRagfairOffer[]; getOfferByOfferId(offerId: string): IRagfairOffer; getOffersOfType(templateId: string): IRagfairOffer[]; addOffer(offer: IRagfairOffer): void; - addOfferToExpired(offer: Item): void; + addOfferToExpired(staleOffer: IRagfairOffer): void; setTraderUpdateStatus(traderId: string, shouldUpdate: boolean): void; shouldTraderBeUpdated(traderID: string): boolean; getExpiredOfferCount(): number; diff --git a/TypeScript/5ReplaceMethod/types/services/RagfairPriceService.d.ts b/TypeScript/5ReplaceMethod/types/services/RagfairPriceService.d.ts index 5256b99..e3168a6 100644 --- a/TypeScript/5ReplaceMethod/types/services/RagfairPriceService.d.ts +++ b/TypeScript/5ReplaceMethod/types/services/RagfairPriceService.d.ts @@ -28,5 +28,19 @@ export declare class RagfairPriceService { getFleaPriceForItem(tplId: string): number; getBarterPrice(barterScheme: IBarterScheme[]): number; getDynamicOfferPrice(items: Item[], desiredCurrency: string): number; + /** + * Multiply the price by a randomised curve where n = 2, shift = 2 + * @param existingPrice price to alter + * @param isPreset is the item we're multiplying a preset + * @returns multiplied price + */ + protected randomisePrice(existingPrice: number, isPreset: boolean): number; + /** + * Calculate the cost of a weapon preset by adding together the price of its mods + base price of default weapon preset + * @param item base weapon + * @param items weapon plus mods + * @param existingPrice price of existing base weapon + * @returns + */ getWeaponPresetPrice(item: Item, items: Item[], existingPrice: number): number; } diff --git a/TypeScript/5ReplaceMethod/types/utils/Watermark.d.ts b/TypeScript/5ReplaceMethod/types/utils/Watermark.d.ts index 111bdd0..c6dc120 100644 --- a/TypeScript/5ReplaceMethod/types/utils/Watermark.d.ts +++ b/TypeScript/5ReplaceMethod/types/utils/Watermark.d.ts @@ -28,7 +28,12 @@ export declare class Watermark { protected text: string[]; protected versionLabel: string; initialize(): void; - getVersionTag(): string; + /** + * Get a version string (x.x.x) or (x.x.x-BLEEDINGEDGE) OR (X.X.X (18xxx)) + * @param withEftVersion Include the eft version this spt version was made for + * @returns string + */ + getVersionTag(withEftVersion?: boolean): string; getVersionLabel(): string; /** Set window title */ setTitle(): void; diff --git a/TypeScript/6ReferenceAnotherClass/package.json b/TypeScript/6ReferenceAnotherClass/package.json index 88d71b2..9ea46bf 100644 --- a/TypeScript/6ReferenceAnotherClass/package.json +++ b/TypeScript/6ReferenceAnotherClass/package.json @@ -4,7 +4,7 @@ "main": "src/mod.js", "license": "MIT", "author": "Chomp", - "akiVersion": "3.0.1", + "akiVersion": "3.1.0", "scripts": { "setup:environment": "npm i", "build:unzipped": "copyfiles -e \"./node_modules/**/*.*\" -e \"./dist/**/*.*\" -e \"./package-lock.json\" -e \"./tsconfig.json\" -e \"./README.txt\" -e \"./mod.code-workspace\" \"\"./**/*.*\"\" ./dist", diff --git a/TypeScript/6ReferenceAnotherClass/src/mod.ts b/TypeScript/6ReferenceAnotherClass/src/mod.ts index 4f5b679..cddc4dd 100644 --- a/TypeScript/6ReferenceAnotherClass/src/mod.ts +++ b/TypeScript/6ReferenceAnotherClass/src/mod.ts @@ -1,16 +1,12 @@ import { DependencyContainer } from "tsyringe"; -import { IMod } from "@spt-aki/models/external/mod"; +import { IPostAkiLoadMod } from "@spt-aki/models/external/IPostAkiLoadMod"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import {MoreCode } from "./MoreCode"; -class Mod implements IMod +class Mod implements IPostAkiLoadMod { - // not used for this example - public load(container: DependencyContainer): void - { return } - - public delayedLoad(container: DependencyContainer): void + public postAkiLoad(container: DependencyContainer): void { // get logger const logger = container.resolve("WinstonLogger"); diff --git a/TypeScript/6ReferenceAnotherClass/types/callbacks/GameCallbacks.d.ts b/TypeScript/6ReferenceAnotherClass/types/callbacks/GameCallbacks.d.ts index d5cad76..06da1b5 100644 --- a/TypeScript/6ReferenceAnotherClass/types/callbacks/GameCallbacks.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/callbacks/GameCallbacks.d.ts @@ -2,6 +2,7 @@ import { GameController } from "../controllers/GameController"; import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse"; import { IGameEmptyCrcRequestData } from "../models/eft/game/IGameEmptyCrcRequestData"; +import { IReportNicknameRequestData } from "../models/eft/game/IReportNicknameRequestData"; import { IVersionValidateRequestData } from "../models/eft/game/IVersionValidateRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; @@ -20,5 +21,6 @@ declare class GameCallbacks { validateGameVersion(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; gameKeepalive(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; getVersion(url: string, info: IEmptyRequestData, sessionID: string): string; + reportNickname(url: string, info: IReportNicknameRequestData, sessionID: string): INullResponseData; } export { GameCallbacks }; diff --git a/TypeScript/6ReferenceAnotherClass/types/callbacks/HealthCallbacks.d.ts b/TypeScript/6ReferenceAnotherClass/types/callbacks/HealthCallbacks.d.ts index 8f7b89d..8672be7 100644 --- a/TypeScript/6ReferenceAnotherClass/types/callbacks/HealthCallbacks.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/callbacks/HealthCallbacks.d.ts @@ -13,6 +13,13 @@ export declare class HealthCallbacks { protected profileHelper: ProfileHelper; protected healthController: HealthController; constructor(httpResponse: HttpResponseUtil, profileHelper: ProfileHelper, healthController: HealthController); + /** + * Custom aki server request found in modules/HealthSynchronizer.cs + * @param url + * @param info HealthListener.Instance.CurrentHealth class + * @param sessionID session id + * @returns empty response, no data sent back to client + */ syncHealth(url: string, info: ISyncHealthRequestData, sessionID: string): IGetBodyResponseData; offraidEat(pmcData: IPmcData, body: IOffraidEatRequestData, sessionID: string): IItemEventRouterResponse; offraidHeal(pmcData: IPmcData, body: IOffraidHealRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/6ReferenceAnotherClass/types/callbacks/InsuranceCallbacks.d.ts b/TypeScript/6ReferenceAnotherClass/types/callbacks/InsuranceCallbacks.d.ts index 520d0eb..6819960 100644 --- a/TypeScript/6ReferenceAnotherClass/types/callbacks/InsuranceCallbacks.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/callbacks/InsuranceCallbacks.d.ts @@ -3,6 +3,7 @@ import { OnLoadOnUpdate } from "../di/OnLoadOnUpdate"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -17,7 +18,7 @@ export declare class InsuranceCallbacks extends OnLoadOnUpdate { protected insuranceConfig: IInsuranceConfig; constructor(insuranceController: InsuranceController, insuranceService: InsuranceService, httpResponse: HttpResponseUtil, configServer: ConfigServer); onLoad(): void; - getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; + getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; onUpdate(secondsSinceLastRun: number): boolean; getRoute(): string; diff --git a/TypeScript/6ReferenceAnotherClass/types/callbacks/MatchCallbacks.d.ts b/TypeScript/6ReferenceAnotherClass/types/callbacks/MatchCallbacks.d.ts index 083c1f5..158d8df 100644 --- a/TypeScript/6ReferenceAnotherClass/types/callbacks/MatchCallbacks.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/callbacks/MatchCallbacks.d.ts @@ -1,9 +1,13 @@ import { MatchController } from "../controllers/MatchController"; +import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { DatabaseServer } from "../servers/DatabaseServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; @@ -16,18 +20,18 @@ export declare class MatchCallbacks { constructor(httpResponse: HttpResponseUtil, jsonUtil: JsonUtil, matchController: MatchController, databaseServer: DatabaseServer); updatePing(url: string, info: any, sessionID: string): INullResponseData; exitMatch(url: string, info: any, sessionID: string): INullResponseData; - exitToMenu(url: string, info: any, sessionID: string): INullResponseData; - startGroupSearch(url: string, info: any, sessionID: string): INullResponseData; - stopGroupSearch(url: string, info: any, sessionID: string): INullResponseData; + exitToMenu(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + startGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + stopGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; sendGroupInvite(url: string, info: any, sessionID: string): INullResponseData; acceptGroupInvite(url: string, info: any, sessionID: string): INullResponseData; cancelGroupInvite(url: string, info: any, sessionID: string): INullResponseData; putMetrics(url: string, info: any, sessionID: string): INullResponseData; getProfile(url: string, info: IGetProfileRequestData, sessionID: string): IGetBodyResponseData; - serverAvailable(url: string, info: any, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; - joinMatch(url: string, info: any, sessionID: string): IGetBodyResponseData; + serverAvailable(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; + joinMatch(url: string, info: IJoinMatchRequestData, sessionID: string): IGetBodyResponseData; getMetrics(url: string, info: any, sessionID: string): IGetBodyResponseData; - getGroupStatus(url: string, info: any, sessionID: string): IGetBodyResponseData; + getGroupStatus(url: string, info: IGetGroupStatusRequestData, sessionID: string): IGetBodyResponseData; createGroup(url: string, info: any, sessionID: string): IGetBodyResponseData; deleteGroup(url: string, info: any, sessionID: string): INullResponseData; startOfflineRaid(url: string, info: IStartOfflineRaidRequestData, sessionID: string): INullResponseData; diff --git a/TypeScript/6ReferenceAnotherClass/types/callbacks/ModCallbacks.d.ts b/TypeScript/6ReferenceAnotherClass/types/callbacks/ModCallbacks.d.ts index 866abf7..58342dc 100644 --- a/TypeScript/6ReferenceAnotherClass/types/callbacks/ModCallbacks.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/callbacks/ModCallbacks.d.ts @@ -1,5 +1,5 @@ import { OnLoad } from "../di/OnLoad"; -import { DelayedModLoader } from "../loaders/DelayedModLoader"; +import { PostAkiModLoader } from "../loaders/PostAkiModLoader"; import { IHttpConfig } from "../models/spt/config/IHttpConfig"; import { IHttpServer } from "../models/spt/server/IHttpServer"; import { ILogger } from "../models/spt/utils/ILogger"; @@ -9,10 +9,10 @@ declare class ModCallbacks extends OnLoad { protected logger: ILogger; protected httpResponse: HttpResponseUtil; protected httpServer: IHttpServer; - protected modLoader: DelayedModLoader; + protected postAkiModLoader: PostAkiModLoader; protected configServer: ConfigServer; protected httpConfig: IHttpConfig; - constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, modLoader: DelayedModLoader, configServer: ConfigServer); + constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, postAkiModLoader: PostAkiModLoader, configServer: ConfigServer); onLoad(): void; getRoute(): string; sendBundle(sessionID: string, req: any, resp: any, body: any): void; diff --git a/TypeScript/6ReferenceAnotherClass/types/callbacks/ProfileCallbacks.d.ts b/TypeScript/6ReferenceAnotherClass/types/callbacks/ProfileCallbacks.d.ts index 116e7c5..6a86fc0 100644 --- a/TypeScript/6ReferenceAnotherClass/types/callbacks/ProfileCallbacks.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/callbacks/ProfileCallbacks.d.ts @@ -3,6 +3,7 @@ import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IGetMiniProfileRequestData } from "../models/eft/launcher/IGetMiniProfileRequestData"; +import { GetProfileStatusResponseData } from "../models/eft/profile/GetProfileStatusResponseData"; import { IProfileChangeNicknameRequestData } from "../models/eft/profile/IProfileChangeNicknameRequestData"; import { IProfileChangeVoiceRequestData } from "../models/eft/profile/IProfileChangeVoiceRequestData"; import { IProfileCreateRequestData } from "../models/eft/profile/IProfileCreateRequestData"; @@ -23,7 +24,14 @@ export declare class ProfileCallbacks { changeNickname(url: string, info: IProfileChangeNicknameRequestData, sessionID: string): IGetBodyResponseData; validateNickname(url: string, info: IValidateNicknameRequestData, sessionID: string): IGetBodyResponseData; getReservedNickname(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; - getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; + /** + * Called when creating a character, when you choose a character face/voice + * @param url + * @param info response (empty) + * @param sessionID + * @returns + */ + getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; searchFriend(url: string, info: ISearchFriendRequestData, sessionID: string): IGetBodyResponseData; getMiniProfile(url: string, info: IGetMiniProfileRequestData, sessionID: string): string; getAllMiniProfiles(url: string, info: any, sessionID: string): string; diff --git a/TypeScript/6ReferenceAnotherClass/types/callbacks/RagfairCallbacks.d.ts b/TypeScript/6ReferenceAnotherClass/types/callbacks/RagfairCallbacks.d.ts index d5bab8b..da782e1 100644 --- a/TypeScript/6ReferenceAnotherClass/types/callbacks/RagfairCallbacks.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/callbacks/RagfairCallbacks.d.ts @@ -9,6 +9,7 @@ import { IAddOfferRequestData } from "../models/eft/ragfair/IAddOfferRequestData import { IExtendOfferRequestData } from "../models/eft/ragfair/IExtendOfferRequestData"; import { IGetItemPriceResult } from "../models/eft/ragfair/IGetItemPriceResult"; import { IGetMarketPriceRequestData } from "../models/eft/ragfair/IGetMarketPriceRequestData"; +import { IGetOffersResult } from "../models/eft/ragfair/IGetOffersResult"; import { IRemoveOfferRequestData } from "../models/eft/ragfair/IRemoveOfferRequestData"; import { ISearchRequestData } from "../models/eft/ragfair/ISearchRequestData"; import { IRagfairConfig } from "../models/spt/config/IRagfairConfig"; @@ -28,7 +29,7 @@ export declare class RagfairCallbacks extends OnLoadOnUpdate { constructor(httpResponse: HttpResponseUtil, logger: ILogger, jsonUtil: JsonUtil, ragfairServer: RagfairServer, ragfairController: RagfairController, configServer: ConfigServer); onLoad(): void; getRoute(): string; - search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; + search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; getMarketPrice(url: string, info: IGetMarketPriceRequestData, sessionID: string): IGetBodyResponseData; getItemPrices(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; addOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/6ReferenceAnotherClass/types/controllers/GameController.d.ts b/TypeScript/6ReferenceAnotherClass/types/controllers/GameController.d.ts index 5f516de..f4c3d2c 100644 --- a/TypeScript/6ReferenceAnotherClass/types/controllers/GameController.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/controllers/GameController.d.ts @@ -28,6 +28,11 @@ export declare class GameController { protected addMissingRepeatableQuestsProperty(pmcProfile: IPmcData): void; protected addMissingWeaponRepairSkill(pmcProfile: IPmcData): void; protected addMissingAkiVersionTagToProfile(fullProfile: IAkiProfile): void; + /** + * In 18876 bsg changed the pockets tplid to be one that has 3 additional special slots + * @param pmcProfile + */ + protected updateProfilePocketsToNewId(pmcProfile: IPmcData): void; protected addMissingArmorRepairSkill(pmcProfile: IPmcData): void; protected fixNullTraderSalesSums(pmcProfile: IPmcData): void; protected removeDanglingBackendCounters(pmcProfile: IPmcData): void; diff --git a/TypeScript/6ReferenceAnotherClass/types/controllers/InsuranceController.d.ts b/TypeScript/6ReferenceAnotherClass/types/controllers/InsuranceController.d.ts index db2c567..af45442 100644 --- a/TypeScript/6ReferenceAnotherClass/types/controllers/InsuranceController.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/controllers/InsuranceController.d.ts @@ -3,6 +3,7 @@ import { ItemHelper } from "../helpers/ItemHelper"; import { ProfileHelper } from "../helpers/ProfileHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -33,6 +34,12 @@ export declare class InsuranceController { insuranceService: InsuranceService, configServer: ConfigServer); processReturn(): void; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; - cost(info: IGetInsuranceCostRequestData, sessionID: string): any; + /** + * Calculate insurance cost + * @param info request object + * @param sessionID session id + * @returns response object to send to client + */ + cost(info: IGetInsuranceCostRequestData, sessionID: string): IGetInsuranceCostResponseData; doAbsolutelyNothing(): void; } diff --git a/TypeScript/6ReferenceAnotherClass/types/controllers/InventoryController.d.ts b/TypeScript/6ReferenceAnotherClass/types/controllers/InventoryController.d.ts index b732aa9..f24ab62 100644 --- a/TypeScript/6ReferenceAnotherClass/types/controllers/InventoryController.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/controllers/InventoryController.d.ts @@ -24,6 +24,8 @@ import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRout import { ILogger } from "../models/spt/utils/ILogger"; import { ItemEventRouter } from "../routers/ItemEventRouter"; import { DatabaseServer } from "../servers/DatabaseServer"; +import { FenceService } from "../services/FenceService"; +import { RagfairOfferService } from "../services/RagfairOfferService"; import { HashUtil } from "../utils/HashUtil"; import { JsonUtil } from "../utils/JsonUtil"; export declare class InventoryController { @@ -31,12 +33,14 @@ export declare class InventoryController { protected hashUtil: HashUtil; protected jsonUtil: JsonUtil; protected databaseServer: DatabaseServer; + protected fenceService: FenceService; protected presetHelper: PresetHelper; protected inventoryHelper: InventoryHelper; + protected ragfairOfferService: RagfairOfferService; protected profileHelper: ProfileHelper; protected paymentHelper: PaymentHelper; protected itemEventRouter: ItemEventRouter; - constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); + constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, fenceService: FenceService, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, ragfairOfferService: RagfairOfferService, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); /** * Move Item * change location of item with parentId and slotId @@ -93,9 +97,19 @@ export declare class InventoryController { tagItem(pmcData: IPmcData, body: IInventoryTagRequestData, sessionID: string): IItemEventRouterResponse; bindItem(pmcData: IPmcData, body: IInventoryBindRequestData, sessionID: string): IItemEventRouterResponse; /** - * Handles examining of the item * + * Handles examining an item + * @param pmcData player profile + * @param body request object + * @param sessionID session id + * @returns response */ examineItem(pmcData: IPmcData, body: IInventoryExamineRequestData, sessionID: string): IItemEventRouterResponse; + /** + * Get the tplid of an item from the examine request object + * @param body response request + * @returns tplid + */ + protected getItemTpl(body: IInventoryExamineRequestData): string; readEncyclopedia(pmcData: IPmcData, body: IInventoryReadEncyclopediaRequestData, sessionID: string): IItemEventRouterResponse; /** * Handles sorting of Inventory. diff --git a/TypeScript/6ReferenceAnotherClass/types/controllers/MatchController.d.ts b/TypeScript/6ReferenceAnotherClass/types/controllers/MatchController.d.ts index c322d96..7ef3fcc 100644 --- a/TypeScript/6ReferenceAnotherClass/types/controllers/MatchController.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/controllers/MatchController.d.ts @@ -2,7 +2,10 @@ import { ProfileHelper } from "../helpers/ProfileHelper"; import { TraderHelper } from "../helpers/TraderHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { IInRaidConfig } from "../models/spt/config/IInRaidConfig"; import { IMatchConfig } from "../models/spt/config/IMatchConfig"; @@ -20,11 +23,11 @@ export declare class MatchController { constructor(saveServer: SaveServer, profileHelper: ProfileHelper, matchLocationService: MatchLocationService, traderHelper: TraderHelper, configServer: ConfigServer); getEnabled(): boolean; getProfile(info: IGetProfileRequestData): IPmcData[]; - protected getMatch(location: any): any; createGroup(sessionID: string, info: any): any; deleteGroup(info: any): void; - joinMatch(info: any, sessionID: string): any[]; - getGroupStatus(info: any): any; + joinMatch(info: IJoinMatchRequestData, sessionID: string): IJoinMatchResult[]; + protected getMatch(location: string): any; + getGroupStatus(info: IGetGroupStatusRequestData): any; startOfflineRaid(info: IStartOfflineRaidRequestData, sessionID: string): void; endOfflineRaid(info: IEndOfflineRaidRequestData, sessionID: string): void; } diff --git a/TypeScript/6ReferenceAnotherClass/types/controllers/RagfairController.d.ts b/TypeScript/6ReferenceAnotherClass/types/controllers/RagfairController.d.ts index c758593..c4ffc15 100644 --- a/TypeScript/6ReferenceAnotherClass/types/controllers/RagfairController.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/controllers/RagfairController.d.ts @@ -60,6 +60,8 @@ export declare class RagfairController { protected ragfairConfig: IRagfairConfig; constructor(logger: ILogger, timeUtil: TimeUtil, httpResponse: HttpResponseUtil, itemEventRouter: ItemEventRouter, ragfairServer: RagfairServer, ragfairPriceService: RagfairPriceService, databaseServer: DatabaseServer, itemHelper: ItemHelper, saveServer: SaveServer, ragfairSellHelper: RagfairSellHelper, ragfairTaxHelper: RagfairTaxHelper, ragfairSortHelper: RagfairSortHelper, ragfairOfferHelper: RagfairOfferHelper, profileHelper: ProfileHelper, paymentService: PaymentService, handbookHelper: HandbookHelper, paymentHelper: PaymentHelper, inventoryHelper: InventoryHelper, ragfairHelper: RagfairHelper, ragfairOfferService: RagfairOfferService, ragfairRequiredItemsService: RagfairRequiredItemsService, ragfairOfferGenerator: RagfairOfferGenerator, configServer: ConfigServer); getOffers(sessionID: string, info: ISearchRequestData): IGetOffersResult; + protected isLinkedSearch(info: ISearchRequestData): boolean; + protected isRequiredSearch(info: ISearchRequestData): boolean; update(): void; getItemPrice(info: IGetMarketPriceRequestData): IGetItemPriceResult; addPlayerOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/6ReferenceAnotherClass/types/generators/BotWeaponGenerator.d.ts b/TypeScript/6ReferenceAnotherClass/types/generators/BotWeaponGenerator.d.ts index a43b18c..dd3ad69 100644 --- a/TypeScript/6ReferenceAnotherClass/types/generators/BotWeaponGenerator.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/generators/BotWeaponGenerator.d.ts @@ -41,6 +41,13 @@ export declare class BotWeaponGenerator { * @returns */ protected generateExtraMagazines(weaponMods: Item[], weaponTemplate: ITemplateItem, magCounts: MinMax, ammoTpl: string, inventory: PmcInventory): void; + /** + * Get a randomised number of bullets for a specific magazine + * @param magCounts min and max count of magazines + * @param magTemplate magazine to generate bullet count for + * @returns bullet count number + */ + protected getRandomisedBulletCount(magCounts: MinMax, magTemplate: ITemplateItem): number; /** * Get a randomised count of magazines * @param magCounts min and max value returned value can be between diff --git a/TypeScript/6ReferenceAnotherClass/types/generators/RagfairOfferGenerator.d.ts b/TypeScript/6ReferenceAnotherClass/types/generators/RagfairOfferGenerator.d.ts index de53ea9..6645c8d 100644 --- a/TypeScript/6ReferenceAnotherClass/types/generators/RagfairOfferGenerator.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/generators/RagfairOfferGenerator.d.ts @@ -18,6 +18,7 @@ import { JsonUtil } from "../utils/JsonUtil"; import { RandomUtil } from "../utils/RandomUtil"; import { TimeUtil } from "../utils/TimeUtil"; import { RagfairAssortGenerator } from "./RagfairAssortGenerator"; +import { RagfairCategoriesService } from "../services/RagfairCategoriesService"; export declare class RagfairOfferGenerator { protected logger: ILogger; protected jsonUtil: JsonUtil; @@ -31,11 +32,12 @@ export declare class RagfairOfferGenerator { protected ragfairAssortGenerator: RagfairAssortGenerator; protected ragfairOfferService: RagfairOfferService; protected ragfairPriceService: RagfairPriceService; + protected ragfairCategoriesService: RagfairCategoriesService; protected fenceService: FenceService; protected itemHelper: ItemHelper; protected configServer: ConfigServer; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); + constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, ragfairCategoriesService: RagfairCategoriesService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); createOffer(userID: string, time: number, items: Item[], barterScheme: IBarterScheme[], loyalLevel: number, price: number, sellInOnePiece?: boolean): IRagfairOffer; protected getTraderId(userID: string): string; protected getRating(userID: string): number; diff --git a/TypeScript/6ReferenceAnotherClass/types/helpers/BotGeneratorHelper.d.ts b/TypeScript/6ReferenceAnotherClass/types/helpers/BotGeneratorHelper.d.ts index e4b0c11..243e7a8 100644 --- a/TypeScript/6ReferenceAnotherClass/types/helpers/BotGeneratorHelper.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/helpers/BotGeneratorHelper.d.ts @@ -29,6 +29,12 @@ export declare class BotGeneratorHelper { protected botConfig: IBotConfig; constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, probabilityHelper: ProbabilityHelper, databaseServer: DatabaseServer, durabilityLimitsHelper: DurabilityLimitsHelper, itemHelper: ItemHelper, inventoryHelper: InventoryHelper, containerHelper: ContainerHelper, configServer: ConfigServer); generateModsForItem(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem, modSpawnChances: ModsChances, isPmc?: boolean): Item[]; + /** + * Is this magazine cylinder related (revolvers and grenade launchers) + * @param magazineParentName the name of the magazines parent + * @returns true if it is cylinder related + */ + magazineIsCylinderRelated(magazineParentName: string): boolean; /** * Get a list of non black-listed cartridges from the PMC bot config * @param modSlot mod item slot @@ -69,6 +75,12 @@ export declare class BotGeneratorHelper { * @param {object} parentTemplate The CylinderMagazine's template */ protected fillCamora(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem): void; + /** + * Take a record of camoras and merge the compatable shells into one array + * @param camorasWithShells camoras we want to merge into one array + * @returns string array of shells fro luitple camora sources + */ + protected mergeCamoraPoolsTogether(camorasWithShells: Record): string[]; generateExtraPropertiesForItem(itemTemplate: ITemplateItem, botRole?: any): { upd?: Upd; }; diff --git a/TypeScript/6ReferenceAnotherClass/types/loaders/AfterDbModLoader.d.ts b/TypeScript/6ReferenceAnotherClass/types/loaders/AfterDbModLoader.d.ts deleted file mode 100644 index a9fc286..0000000 --- a/TypeScript/6ReferenceAnotherClass/types/loaders/AfterDbModLoader.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { OnLoad } from "../di/OnLoad"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class AfterDbModLoader implements OnLoad { - protected initialModLoader: InitialModLoader; - constructor(initialModLoader: InitialModLoader); - onLoad(): void; - getRoute(): string; - getModPath(mod: string): string; - protected executeMods(container: DependencyContainer): void; -} diff --git a/TypeScript/6ReferenceAnotherClass/types/loaders/DelayedModLoader.d.ts b/TypeScript/6ReferenceAnotherClass/types/loaders/DelayedModLoader.d.ts deleted file mode 100644 index 2a05604..0000000 --- a/TypeScript/6ReferenceAnotherClass/types/loaders/DelayedModLoader.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { HandbookController } from "../controllers/HandbookController"; -import { IModLoader } from "../models/spt/mod/IModLoader"; -import { ModCompilerService } from "../services/ModCompilerService"; -import { VFS } from "../utils/VFS"; -import { BundleLoader } from "./BundleLoader"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class DelayedModLoader implements IModLoader { - protected bundleLoader: BundleLoader; - protected handbookController: HandbookController; - protected vfs: VFS; - protected modCompilerService: ModCompilerService; - protected initialModLoader: InitialModLoader; - constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, initialModLoader: InitialModLoader); - getBundles(local: boolean): string; - getBundle(key: string, local: boolean): void; - getModPath(mod: string): string; - load(): void; - protected executeMods(container: DependencyContainer): void; - protected addBundles(): void; -} diff --git a/TypeScript/6ReferenceAnotherClass/types/loaders/InitialModLoader.d.ts b/TypeScript/6ReferenceAnotherClass/types/loaders/InitialModLoader.d.ts deleted file mode 100644 index 9a99dcc..0000000 --- a/TypeScript/6ReferenceAnotherClass/types/loaders/InitialModLoader.d.ts +++ /dev/null @@ -1,64 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { ICoreConfig } from "../models/spt/config/ICoreConfig"; -import { ModLoader } from "../models/spt/mod/IMod"; -import { IModLoader } from "../models/spt/mod/IModLoader"; -import { IPackageJsonData } from "../models/spt/mod/IPackageJsonData"; -import { ILogger } from "../models/spt/utils/ILogger"; -import { ConfigServer } from "../servers/ConfigServer"; -import { ModCompilerService } from "../services/ModCompilerService"; -import { JsonUtil } from "../utils/JsonUtil"; -import { VFS } from "../utils/VFS"; -import { BundleLoader } from "./BundleLoader"; -export declare class InitialModLoader implements IModLoader { - protected logger: ILogger; - protected vfs: VFS; - protected jsonUtil: JsonUtil; - protected modCompilerService: ModCompilerService; - protected bundleLoader: BundleLoader; - protected configServer: ConfigServer; - protected static container: DependencyContainer; - protected readonly basepath = "user/mods/"; - protected imported: Record; - protected akiConfig: ICoreConfig; - constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, configServer: ConfigServer); - load(container: DependencyContainer): Promise; - getBundles(local: boolean): string; - getBundle(key: string, local: boolean): void; - /** - * Returns a list of mods with preserved load order - * @returns Array of mod names in load order - */ - getImportedModsNames(): string[]; - getModPath(mod: string): string; - protected importClass(name: string, filepath: string, container: DependencyContainer): void; - protected importMods(): Promise; - /** - * - * @param mods Get an array of broken/invalid mods by name - * @returns Mod names array - */ - protected getBrokenMods(mods: string[]): string[]; - /** - * Get packageJson data for mods - * @param mods mods to get packageJson for - * @returns dictionary - */ - protected getModsPackageData(mods: string[]): Record; - /** - * Does mod have "delayedLoad(" string in its entry class - * @param modFolderName folder name - * @param modToValidate package.json details - * @returns boolean - */ - protected isModSpt300Compatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; - protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; - protected executeMods(container: DependencyContainer): void; - sortModsLoadOrder(): string[]; - protected addMod(mod: string): Promise; - protected areModDependenciesFulfilled(pkg: IPackageJsonData, loadedMods: Record): boolean; - protected isModCompatible(mod: IPackageJsonData, loadedMods: Record): boolean; - protected validMod(mod: string): boolean; - protected getLoadOrderRecursive(mod: string, result: Record, visited: Record): void; - protected getLoadOrder(mods: Record): Record; - getContainer(): DependencyContainer; -} diff --git a/TypeScript/6ReferenceAnotherClass/types/loaders/PostAkiModLoader.d.ts b/TypeScript/6ReferenceAnotherClass/types/loaders/PostAkiModLoader.d.ts new file mode 100644 index 0000000..edc6e5d --- /dev/null +++ b/TypeScript/6ReferenceAnotherClass/types/loaders/PostAkiModLoader.d.ts @@ -0,0 +1,21 @@ +import { DependencyContainer } from "tsyringe"; +import { HandbookController } from "../controllers/HandbookController"; +import { IModLoader } from "../models/spt/mod/IModLoader"; +import { ModCompilerService } from "../services/ModCompilerService"; +import { VFS } from "../utils/VFS"; +import { BundleLoader } from "./BundleLoader"; +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostAkiModLoader implements IModLoader { + protected bundleLoader: BundleLoader; + protected handbookController: HandbookController; + protected vfs: VFS; + protected modCompilerService: ModCompilerService; + protected preAkiModLoader: PreAkiModLoader; + constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, preAkiModLoader: PreAkiModLoader); + getBundles(local: boolean): string; + getBundle(key: string, local: boolean): void; + getModPath(mod: string): string; + load(): void; + protected executeMods(container: DependencyContainer): void; + protected addBundles(): void; +} diff --git a/TypeScript/6ReferenceAnotherClass/types/loaders/PostDBModLoader.d.ts b/TypeScript/6ReferenceAnotherClass/types/loaders/PostDBModLoader.d.ts new file mode 100644 index 0000000..5101b7b --- /dev/null +++ b/TypeScript/6ReferenceAnotherClass/types/loaders/PostDBModLoader.d.ts @@ -0,0 +1,11 @@ +import { DependencyContainer } from "tsyringe"; +import { OnLoad } from "../di/OnLoad"; +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostDBModLoader implements OnLoad { + protected preAkiModLoader: PreAkiModLoader; + constructor(preAkiModLoader: PreAkiModLoader); + onLoad(): void; + getRoute(): string; + getModPath(mod: string): string; + protected executeMods(container: DependencyContainer): void; +} diff --git a/TypeScript/6ReferenceAnotherClass/types/loaders/PreAkiModLoader.d.ts b/TypeScript/6ReferenceAnotherClass/types/loaders/PreAkiModLoader.d.ts new file mode 100644 index 0000000..6ded3c6 --- /dev/null +++ b/TypeScript/6ReferenceAnotherClass/types/loaders/PreAkiModLoader.d.ts @@ -0,0 +1,64 @@ +import { DependencyContainer } from "tsyringe"; +import { ICoreConfig } from "../models/spt/config/ICoreConfig"; +import { ModLoader } from "../models/spt/mod/IMod"; +import { IModLoader } from "../models/spt/mod/IModLoader"; +import { IPackageJsonData } from "../models/spt/mod/IPackageJsonData"; +import { ILogger } from "../models/spt/utils/ILogger"; +import { ConfigServer } from "../servers/ConfigServer"; +import { ModCompilerService } from "../services/ModCompilerService"; +import { JsonUtil } from "../utils/JsonUtil"; +import { VFS } from "../utils/VFS"; +import { BundleLoader } from "./BundleLoader"; +export declare class PreAkiModLoader implements IModLoader { + protected logger: ILogger; + protected vfs: VFS; + protected jsonUtil: JsonUtil; + protected modCompilerService: ModCompilerService; + protected bundleLoader: BundleLoader; + protected configServer: ConfigServer; + protected static container: DependencyContainer; + protected readonly basepath = "user/mods/"; + protected imported: Record; + protected akiConfig: ICoreConfig; + constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, configServer: ConfigServer); + load(container: DependencyContainer): Promise; + getBundles(local: boolean): string; + getBundle(key: string, local: boolean): void; + /** + * Returns a list of mods with preserved load order + * @returns Array of mod names in load order + */ + getImportedModsNames(): string[]; + getModPath(mod: string): string; + protected importClass(name: string, filepath: string, container: DependencyContainer): void; + protected importMods(): Promise; + /** + * + * @param mods Get an array of broken/invalid mods by name + * @returns Mod names array + */ + protected getBrokenMods(mods: string[]): string[]; + /** + * Get packageJson data for mods + * @param mods mods to get packageJson for + * @returns dictionary + */ + protected getModsPackageData(mods: string[]): Record; + /** + * Does mod have "delayedLoad(" string in its entry class + * @param modFolderName folder name + * @param modToValidate package.json details + * @returns boolean + */ + protected isModSpt3XXCompatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; + protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; + protected executeMods(container: DependencyContainer): void; + sortModsLoadOrder(): string[]; + protected addMod(mod: string): Promise; + protected areModDependenciesFulfilled(pkg: IPackageJsonData, loadedMods: Record): boolean; + protected isModCompatible(mod: IPackageJsonData, loadedMods: Record): boolean; + protected validMod(mod: string): boolean; + protected getLoadOrderRecursive(mod: string, result: Record, visited: Record): void; + protected getLoadOrder(mods: Record): Record; + getContainer(): DependencyContainer; +} diff --git a/TypeScript/6ReferenceAnotherClass/types/models/eft/common/IGlobals.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/eft/common/IGlobals.d.ts index 456895c..9d28dbc 100644 --- a/TypeScript/6ReferenceAnotherClass/types/models/eft/common/IGlobals.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/models/eft/common/IGlobals.d.ts @@ -1128,8 +1128,11 @@ export interface Inertia { SprintAccelerationLimits: xyz; SideTime: xyz; DiagonalTime: xyz; + MaxTimeWithoutInput: xyz; MinDirectionBlendTime: number; - MoveTime: number; + MoveTimeRange: xyz; + ProneDirectionAccelerationRange: xyz; + ProneSpeedAccelerationRange: xyz; MinMovementAccelerationRangeRight: xyz; MaxMovementAccelerationRangeRight: xyz; } diff --git a/TypeScript/6ReferenceAnotherClass/types/models/eft/common/ILocationBase.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/eft/common/ILocationBase.d.ts index ad48d32..b1dd448 100644 --- a/TypeScript/6ReferenceAnotherClass/types/models/eft/common/ILocationBase.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/models/eft/common/ILocationBase.d.ts @@ -26,6 +26,7 @@ export interface ILocationBase { DisabledForScav: boolean; DisabledScavExits: string; Enabled: boolean; + EnableCoop: boolean; GlobalLootChanceModifier: number; IconX: number; IconY: number; @@ -41,6 +42,7 @@ export interface ILocationBase { MinDistToFreePoint: number; MinMaxBots: MinMaxBot[]; MinPlayers: number; + MaxCoopGroup: number; Name: string; NewSpawn: boolean; OcculsionCullingEnabled: boolean; @@ -48,6 +50,8 @@ export interface ILocationBase { OpenZones: string; Preview: Preview; RequiredPlayerLevel: number; + PmcMaxPlayersInGroup: number; + ScavMaxPlayersInGroup: number; Rules: string; SafeLocation: boolean; Scene: Scene; @@ -55,7 +59,8 @@ export interface ILocationBase { UnixDateTime: number; _Id: string; doors: any[]; - escape_time_limit: number; + EscapeTimeLimit: number; + EscapeTimeLimitCoop: number; exit_access_time: number; exit_count: number; exit_time: number; @@ -63,6 +68,7 @@ export interface ILocationBase { filter_ex: string[]; limits: ILimit[]; matching_min_seconds: number; + GenerateLocalLootCache: boolean; maxItemCountInLocation: MaxItemCountInLocation[]; sav_summon_seconds: number; tmp_location_field_remove_me: number; @@ -106,6 +112,7 @@ export interface BossLocationSpawn { BossName: string; BossPlayer: boolean; BossZone: string; + RandomTimeSpawn: boolean; Time: number; TriggerId: string; TriggerName: string; diff --git a/TypeScript/6ReferenceAnotherClass/types/models/eft/common/IPmcData.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/eft/common/IPmcData.d.ts index adc2aa5..56bf07f 100644 --- a/TypeScript/6ReferenceAnotherClass/types/models/eft/common/IPmcData.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/models/eft/common/IPmcData.d.ts @@ -6,7 +6,7 @@ import { MemberCategory } from "../../enums/MemberCategory"; export interface IPmcData { _id: string; aid: string; - savage: string; + savage?: string; Info: Info; Customization: Customization; Health: Health; @@ -28,13 +28,6 @@ export interface IPmcData { CarExtractCounts: CarExtractCounts; SurvivorClass: SurvivorClass; } -export declare enum SurvivorClass { - Unknown = 0, - Neutralizer = 1, - Marauder = 2, - Paramedic = 3, - Survivor = 4 -} export interface Info { EntryPoint: string; Nickname: string; @@ -56,6 +49,9 @@ export interface Info { Bans: IBan[]; BannedState: boolean; BannedUntil: number; + NeedWipeOptions: any[]; + lastCompletedWipe: LastCompleted; + lastCompletedEvent?: LastCompleted; } export interface Settings { Role: string; @@ -339,3 +335,13 @@ export interface RagfairInfo { } export interface CarExtractCounts { } +export declare enum SurvivorClass { + Unknown = 0, + Neutralizer = 1, + Marauder = 2, + Paramedic = 3, + Survivor = 4 +} +export interface LastCompleted { + $oid: string; +} diff --git a/TypeScript/6ReferenceAnotherClass/types/models/eft/common/tables/IProfileTemplate.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/eft/common/tables/IProfileTemplate.d.ts new file mode 100644 index 0000000..c445e92 --- /dev/null +++ b/TypeScript/6ReferenceAnotherClass/types/models/eft/common/tables/IProfileTemplate.d.ts @@ -0,0 +1,23 @@ +import { Dialogue, WeaponBuild } from "../../profile/IAkiProfile"; +import { IPmcData } from "../IPmcData"; +export interface IProfileTemplates { + Standard: IProfileSides; + "Left Behind": IProfileSides; + "Prepare To Escape": IProfileSides; + "Edge Of Darkness": IProfileSides; +} +export interface IProfileSides { + usec: TemplateSide; + bear: TemplateSide; +} +export interface TemplateSide { + character: IPmcData; + suits: string[]; + dialogues: Record; + weaponbuilds: WeaponBuild[]; + trader: ProfileTraderTemplate; +} +export interface ProfileTraderTemplate { + initialStanding: number; + initialSalesSum: number; +} diff --git a/TypeScript/6ReferenceAnotherClass/types/models/eft/common/tables/IQuest.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/eft/common/tables/IQuest.d.ts index e1fc888..942339b 100644 --- a/TypeScript/6ReferenceAnotherClass/types/models/eft/common/tables/IQuest.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/models/eft/common/tables/IQuest.d.ts @@ -23,6 +23,7 @@ export interface IQuest { status: string; KeyQuest: boolean; changeQuestMessageText: string; + side: string; } export interface Conditions { Started: AvailableForConditions[]; @@ -56,6 +57,7 @@ export interface AvailableForProps { plantTime?: number; zoneId?: string; type?: boolean; + countInRaid?: boolean; } export interface AvailableForCounter { id: string; diff --git a/TypeScript/6ReferenceAnotherClass/types/models/eft/common/tables/ITemplateItem.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/eft/common/tables/ITemplateItem.d.ts index 934ea7d..23a1a14 100644 --- a/TypeScript/6ReferenceAnotherClass/types/models/eft/common/tables/ITemplateItem.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/models/eft/common/tables/ITemplateItem.d.ts @@ -50,6 +50,7 @@ export interface Props { UnlootableFromSide?: string[]; AnimationVariantsNumber?: number; DiscardingBlock?: boolean; + DropSoundType?: string; RagFairCommissionModifier?: number; IsAlwaysAvailableForInsurance?: boolean; DiscardLimit?: number; @@ -89,7 +90,7 @@ export interface Props { SightModesCount?: number; OpticCalibrationDistances?: number[]; ScopesCount?: number; - AimSensitivity: any; + AimSensitivity?: number | number[][]; Zooms?: number[][]; CalibrationDistances?: number[][]; Intensity?: number; @@ -200,6 +201,9 @@ export interface Props { MinRepairDegradation?: number; MaxRepairDegradation?: number; IronSightRange?: number; + IsFlareGun?: boolean; + IsGrenadeLauncher?: boolean; + IsOneoff?: boolean; MustBoltBeOpennedForExternalReload?: boolean; MustBoltBeOpennedForInternalReload?: boolean; BoltAction?: boolean; diff --git a/TypeScript/6ReferenceAnotherClass/types/models/eft/game/IReportNicknameRequestData.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/eft/game/IReportNicknameRequestData.d.ts new file mode 100644 index 0000000..087c58b --- /dev/null +++ b/TypeScript/6ReferenceAnotherClass/types/models/eft/game/IReportNicknameRequestData.d.ts @@ -0,0 +1,3 @@ +export interface IReportNicknameRequestData { + uid: string; +} diff --git a/TypeScript/6ReferenceAnotherClass/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts new file mode 100644 index 0000000..bf209c6 --- /dev/null +++ b/TypeScript/6ReferenceAnotherClass/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts @@ -0,0 +1 @@ +export declare type IGetInsuranceCostResponseData = Record>; diff --git a/TypeScript/6ReferenceAnotherClass/types/models/eft/match/IGetGroupStatusRequestData.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/eft/match/IGetGroupStatusRequestData.d.ts new file mode 100644 index 0000000..cbdb77f --- /dev/null +++ b/TypeScript/6ReferenceAnotherClass/types/models/eft/match/IGetGroupStatusRequestData.d.ts @@ -0,0 +1,8 @@ +export interface IGetGroupStatusRequestData { + location: string; + savage: boolean; + dt: string; + keyId: string; + raidMode: string; + startInGroup: boolean; +} diff --git a/TypeScript/6ReferenceAnotherClass/types/models/eft/match/IJoinMatchRequestData.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/eft/match/IJoinMatchRequestData.d.ts new file mode 100644 index 0000000..cd34f7b --- /dev/null +++ b/TypeScript/6ReferenceAnotherClass/types/models/eft/match/IJoinMatchRequestData.d.ts @@ -0,0 +1,12 @@ +export interface IJoinMatchRequestData { + location: string; + savage: boolean; + dt: string; + servers: Server[]; + keyId: string; +} +export interface Server { + ping: number; + ip: string; + port: string; +} diff --git a/TypeScript/6ReferenceAnotherClass/types/models/eft/match/IJoinMatchResult.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/eft/match/IJoinMatchResult.d.ts new file mode 100644 index 0000000..df695f4 --- /dev/null +++ b/TypeScript/6ReferenceAnotherClass/types/models/eft/match/IJoinMatchResult.d.ts @@ -0,0 +1,11 @@ +export interface IJoinMatchResult { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; + version: string; + location: string; + gamemode: string; + shortid: string; +} diff --git a/TypeScript/6ReferenceAnotherClass/types/models/eft/match/IStartOffineRaidRequestData.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/eft/match/IStartOffineRaidRequestData.d.ts index 84bccc8..7cc457c 100644 --- a/TypeScript/6ReferenceAnotherClass/types/models/eft/match/IStartOffineRaidRequestData.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/models/eft/match/IStartOffineRaidRequestData.d.ts @@ -1,6 +1,5 @@ export interface IStartOfflineRaidRequestData { locationName: string; - entryPoint: string; startTime: number; dateTime: string; gameSettings: GameSettings; diff --git a/TypeScript/6ReferenceAnotherClass/types/models/eft/profile/GetProfileStatusResponseData.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/eft/profile/GetProfileStatusResponseData.d.ts new file mode 100644 index 0000000..eee9b4f --- /dev/null +++ b/TypeScript/6ReferenceAnotherClass/types/models/eft/profile/GetProfileStatusResponseData.d.ts @@ -0,0 +1,11 @@ +export interface GetProfileStatusResponseData { + maxPveCountExceeded: false; + profiles: ProfileData[]; +} +export interface ProfileData { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; +} diff --git a/TypeScript/6ReferenceAnotherClass/types/models/eft/ragfair/IGetOffersResult.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/eft/ragfair/IGetOffersResult.d.ts index 1c11422..fbc631d 100644 --- a/TypeScript/6ReferenceAnotherClass/types/models/eft/ragfair/IGetOffersResult.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/models/eft/ragfair/IGetOffersResult.d.ts @@ -1,6 +1,6 @@ import { IRagfairOffer } from "./IRagfairOffer"; export interface IGetOffersResult { - categories: Record; + categories?: Record; offers: IRagfairOffer[]; offersCount: number; selectedCategory: string; diff --git a/TypeScript/6ReferenceAnotherClass/types/models/enums/QuestStatus.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/enums/QuestStatus.d.ts deleted file mode 100644 index 6335c73..0000000 --- a/TypeScript/6ReferenceAnotherClass/types/models/enums/QuestStatus.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -export declare enum QuestStatus { - Locked = 0, - AvailableForStart = 1, - Started = 2, - AvailableForFinish = 3, - Success = 4, - Fail = 5, - FailRestartable = 6, - MarkedAsFailed = 7 -} diff --git a/TypeScript/6ReferenceAnotherClass/types/models/external/IAfterDBLoadMod.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/external/IAfterDBLoadMod.d.ts deleted file mode 100644 index 7f08b9e..0000000 --- a/TypeScript/6ReferenceAnotherClass/types/models/external/IAfterDBLoadMod.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IAfterDBLoadMod { - loadAfterDbInit(container: DependencyContainer): void; -} diff --git a/TypeScript/6ReferenceAnotherClass/types/models/external/IPostAkiLoadMod.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/external/IPostAkiLoadMod.d.ts new file mode 100644 index 0000000..f6950e8 --- /dev/null +++ b/TypeScript/6ReferenceAnotherClass/types/models/external/IPostAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostAkiLoadMod { + postAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/6ReferenceAnotherClass/types/models/external/IPostDBLoadMod.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/external/IPostDBLoadMod.d.ts new file mode 100644 index 0000000..ca7c682 --- /dev/null +++ b/TypeScript/6ReferenceAnotherClass/types/models/external/IPostDBLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostDBLoadMod { + postDBLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/6ReferenceAnotherClass/types/models/external/IPreAkiLoadMod.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/external/IPreAkiLoadMod.d.ts new file mode 100644 index 0000000..ae7579e --- /dev/null +++ b/TypeScript/6ReferenceAnotherClass/types/models/external/IPreAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPreAkiLoadMod { + preAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/6ReferenceAnotherClass/types/models/external/mod.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/external/mod.d.ts deleted file mode 100644 index 47939e9..0000000 --- a/TypeScript/6ReferenceAnotherClass/types/models/external/mod.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IMod { - load(container: DependencyContainer): void; - delayedLoad(container: DependencyContainer): void; -} diff --git a/TypeScript/6ReferenceAnotherClass/types/models/spt/config/IBotConfig.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/spt/config/IBotConfig.d.ts index 5fb9d93..f8cf39b 100644 --- a/TypeScript/6ReferenceAnotherClass/types/models/spt/config/IBotConfig.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/models/spt/config/IBotConfig.d.ts @@ -18,6 +18,7 @@ export interface PresetBatch { bossKojaniy: number; bossSanitar: number; bossTagilla: number; + bossKnight: number; bossTest: number; cursedAssault: number; followerBully: number; @@ -28,6 +29,8 @@ export interface PresetBatch { followerKojaniy: number; followerSanitar: number; followerTagilla: number; + followerBirdEye: number; + followerBigPipe: number; followerTest: number; marksman: number; pmcBot: number; diff --git a/TypeScript/6ReferenceAnotherClass/types/models/spt/config/IRagfairConfig.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/spt/config/IRagfairConfig.d.ts index 2d151ca..8518252 100644 --- a/TypeScript/6ReferenceAnotherClass/types/models/spt/config/IRagfairConfig.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/models/spt/config/IRagfairConfig.d.ts @@ -30,6 +30,7 @@ export interface Dynamic { expiredOfferThreshold: number; offerItemCount: MinMax; price: MinMax; + presetPrice: MinMax; endTimeSeconds: MinMax; condition: Condition; stackablePercent: MinMax; diff --git a/TypeScript/6ReferenceAnotherClass/types/models/spt/server/IDatabaseTables.d.ts b/TypeScript/6ReferenceAnotherClass/types/models/spt/server/IDatabaseTables.d.ts index e0d3fdd..9978459 100644 --- a/TypeScript/6ReferenceAnotherClass/types/models/spt/server/IDatabaseTables.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/models/spt/server/IDatabaseTables.d.ts @@ -6,6 +6,7 @@ import { ICustomizationItem } from "../../eft/common/tables/ICustomizationItem"; import { IHandbookBase } from "../../eft/common/tables/IHandbookBase"; import { ILootBase } from "../../eft/common/tables/ILootBase"; import { IMatch } from "../../eft/common/tables/IMatch"; +import { IProfileTemplates } from "../../eft/common/tables/IProfileTemplate"; import { IQuest } from "../../eft/common/tables/IQuest"; import { IRepeatableQuestDatabase } from "../../eft/common/tables/IRepeatableQuests"; import { ITemplateItem } from "../../eft/common/tables/ITemplateItem"; @@ -39,10 +40,13 @@ export interface IDatabaseTables { items: Record; quests: IQuest[]; repeatableQuests: IRepeatableQuestDatabase; + /** DEPRECATED - Items file found in the client, massivly out of date compared to templates.items, try not to use this, remove ASAP*/ clientItems: Record; handbook: IHandbookBase; customization: Record; - profiles: any; + /** The profile templates listed in the launcher on profile creation, split by account type (e.g. Standard) then side (e.g. bear/usec) */ + profiles: IProfileTemplates; + /** Flea prices of items - gathered from online flea market dump */ prices: Record; }; traders?: Record; diff --git a/TypeScript/6ReferenceAnotherClass/types/servers/RagfairServer.d.ts b/TypeScript/6ReferenceAnotherClass/types/servers/RagfairServer.d.ts index 60c92b5..bc86cdb 100644 --- a/TypeScript/6ReferenceAnotherClass/types/servers/RagfairServer.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/servers/RagfairServer.d.ts @@ -17,7 +17,8 @@ export declare class RagfairServer { constructor(logger: ILogger, ragfairOfferGenerator: RagfairOfferGenerator, ragfairOfferService: RagfairOfferService, ragfairCategoriesService: RagfairCategoriesService, ragfairRequiredItemsService: RagfairRequiredItemsService, configServer: ConfigServer); load(): void; update(): void; - getCategories(): Record; + getAllCategories(): Record; + getBespokeCategories(offers: IRagfairOffer[]): Record; /** * Disable/Hide an offer from flea * @param offerId diff --git a/TypeScript/6ReferenceAnotherClass/types/services/RagfairCategoriesService.d.ts b/TypeScript/6ReferenceAnotherClass/types/services/RagfairCategoriesService.d.ts index 09956cc..83910e5 100644 --- a/TypeScript/6ReferenceAnotherClass/types/services/RagfairCategoriesService.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/services/RagfairCategoriesService.d.ts @@ -1,10 +1,40 @@ import { IRagfairOffer } from "../models/eft/ragfair/IRagfairOffer"; +import { ILogger } from "../models/spt/utils/ILogger"; export declare class RagfairCategoriesService { - updateCategories(offers: IRagfairOffer[]): void; + protected logger: ILogger; protected categories: Record; - getCategories(): Record; - getCategoryByItemId(itemId: string): number; - resetCategories(): void; - setCategoryValue(itemId: string, newValue: number): void; - incrementCategory(itemId: string): void; + constructor(logger: ILogger); + /** + * Get all flea categories and their count of offers + * @returns item categories and count + */ + getAllCategories(): Record; + /** + * With the supplied items, get custom categories + * @returns a custom list of categories + */ + getBespokeCategories(offers: IRagfairOffer[]): Record; + /** + * Take an array of ragfair offers and create a dictionary of items with thier corrisponding offer count + * @param offers ragfair offers + * @returns categories and count + */ + protected processOffersIntoCategories(offers: IRagfairOffer[]): Record; + /** + * Increment or decrement a category array + * @param offer offer to process + * @param categories categories to update + * @param increment should item be incremented or decremented + */ + protected addOrIncrementCategory(offer: IRagfairOffer, categories: Record, increment?: boolean): void; + /** + * Increase category count by 1 + * @param offer + */ + incrementCategory(offer: IRagfairOffer): void; + /** + * Reduce category count by 1 + * @param offer + */ + decrementCategory(offer: IRagfairOffer): void; } diff --git a/TypeScript/6ReferenceAnotherClass/types/services/RagfairOfferService.d.ts b/TypeScript/6ReferenceAnotherClass/types/services/RagfairOfferService.d.ts index 7afbf8c..7398a8f 100644 --- a/TypeScript/6ReferenceAnotherClass/types/services/RagfairOfferService.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/services/RagfairOfferService.d.ts @@ -11,12 +11,14 @@ import { DatabaseServer } from "../servers/DatabaseServer"; import { SaveServer } from "../servers/SaveServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; import { TimeUtil } from "../utils/TimeUtil"; +import { RagfairCategoriesService } from "./RagfairCategoriesService"; export declare class RagfairOfferService { protected logger: ILogger; protected timeUtil: TimeUtil; protected databaseServer: DatabaseServer; protected saveServer: SaveServer; protected ragfairServerHelper: RagfairServerHelper; + protected ragfairCategoriesService: RagfairCategoriesService; protected profileHelper: ProfileHelper; protected itemEventRouter: ItemEventRouter; protected httpResponse: HttpResponseUtil; @@ -26,12 +28,16 @@ export declare class RagfairOfferService { protected expiredOffers: Item[]; protected offers: IRagfairOffer[]; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, ragfairCategoriesService: RagfairCategoriesService, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + /** + * Get all offers + * @returns IRagfairOffer array + */ getOffers(): IRagfairOffer[]; getOfferByOfferId(offerId: string): IRagfairOffer; getOffersOfType(templateId: string): IRagfairOffer[]; addOffer(offer: IRagfairOffer): void; - addOfferToExpired(offer: Item): void; + addOfferToExpired(staleOffer: IRagfairOffer): void; setTraderUpdateStatus(traderId: string, shouldUpdate: boolean): void; shouldTraderBeUpdated(traderID: string): boolean; getExpiredOfferCount(): number; diff --git a/TypeScript/6ReferenceAnotherClass/types/services/RagfairPriceService.d.ts b/TypeScript/6ReferenceAnotherClass/types/services/RagfairPriceService.d.ts index 5256b99..e3168a6 100644 --- a/TypeScript/6ReferenceAnotherClass/types/services/RagfairPriceService.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/services/RagfairPriceService.d.ts @@ -28,5 +28,19 @@ export declare class RagfairPriceService { getFleaPriceForItem(tplId: string): number; getBarterPrice(barterScheme: IBarterScheme[]): number; getDynamicOfferPrice(items: Item[], desiredCurrency: string): number; + /** + * Multiply the price by a randomised curve where n = 2, shift = 2 + * @param existingPrice price to alter + * @param isPreset is the item we're multiplying a preset + * @returns multiplied price + */ + protected randomisePrice(existingPrice: number, isPreset: boolean): number; + /** + * Calculate the cost of a weapon preset by adding together the price of its mods + base price of default weapon preset + * @param item base weapon + * @param items weapon plus mods + * @param existingPrice price of existing base weapon + * @returns + */ getWeaponPresetPrice(item: Item, items: Item[], existingPrice: number): number; } diff --git a/TypeScript/6ReferenceAnotherClass/types/utils/Watermark.d.ts b/TypeScript/6ReferenceAnotherClass/types/utils/Watermark.d.ts index 111bdd0..c6dc120 100644 --- a/TypeScript/6ReferenceAnotherClass/types/utils/Watermark.d.ts +++ b/TypeScript/6ReferenceAnotherClass/types/utils/Watermark.d.ts @@ -28,7 +28,12 @@ export declare class Watermark { protected text: string[]; protected versionLabel: string; initialize(): void; - getVersionTag(): string; + /** + * Get a version string (x.x.x) or (x.x.x-BLEEDINGEDGE) OR (X.X.X (18xxx)) + * @param withEftVersion Include the eft version this spt version was made for + * @returns string + */ + getVersionTag(withEftVersion?: boolean): string; getVersionLabel(): string; /** Set window title */ setTitle(): void; diff --git a/TypeScript/7OnLoadHook/package.json b/TypeScript/7OnLoadHook/package.json index 05aa80f..180b751 100644 --- a/TypeScript/7OnLoadHook/package.json +++ b/TypeScript/7OnLoadHook/package.json @@ -4,7 +4,7 @@ "main": "src/mod.js", "license": "MIT", "author": "Chomp", - "akiVersion": "3.0.1", + "akiVersion": "3.1.0", "scripts": { "setup:environment": "npm i", "build:unzipped": "copyfiles -e \"./node_modules/**/*.*\" -e \"./dist/**/*.*\" -e \"./package-lock.json\" -e \"./tsconfig.json\" -e \"./README.txt\" -e \"./mod.code-workspace\" \"./**/*.*\" ./dist", diff --git a/TypeScript/7OnLoadHook/src/mod.ts b/TypeScript/7OnLoadHook/src/mod.ts index 58a75a6..adbb0d6 100644 --- a/TypeScript/7OnLoadHook/src/mod.ts +++ b/TypeScript/7OnLoadHook/src/mod.ts @@ -1,11 +1,11 @@ import { DependencyContainer } from "tsyringe"; -import { IMod } from "@spt-aki/models/external/mod" +import { IPreAkiLoadMod } from "@spt-aki/models/external/IPreAkiLoadMod" import { ILogger } from "@spt-aki/models/spt/utils/ILogger" import { OnLoadModService } from "@spt-aki/services/mod/onLoad/OnLoadModService" -class Mod implements IMod +class Mod implements IPreAkiLoadMod { - public load(container: DependencyContainer): void + public preAkiLoad(container: DependencyContainer): void { const logger = container.resolve("WinstonLogger"); const onLoadModService = container.resolve("OnLoadModService"); @@ -16,15 +16,9 @@ class Mod implements IMod ) } - customFunctionThatRunsOnLoad(logger: ILogger): void + public customFunctionThatRunsOnLoad(logger: ILogger): void { logger.info("MyCustomMod custom function is loading right now") } - - // Not used in this example - public delayedLoad(container: DependencyContainer): void - { - return; - } } module.exports = {mod: new Mod()} \ No newline at end of file diff --git a/TypeScript/7OnLoadHook/types/callbacks/GameCallbacks.d.ts b/TypeScript/7OnLoadHook/types/callbacks/GameCallbacks.d.ts index d5cad76..06da1b5 100644 --- a/TypeScript/7OnLoadHook/types/callbacks/GameCallbacks.d.ts +++ b/TypeScript/7OnLoadHook/types/callbacks/GameCallbacks.d.ts @@ -2,6 +2,7 @@ import { GameController } from "../controllers/GameController"; import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse"; import { IGameEmptyCrcRequestData } from "../models/eft/game/IGameEmptyCrcRequestData"; +import { IReportNicknameRequestData } from "../models/eft/game/IReportNicknameRequestData"; import { IVersionValidateRequestData } from "../models/eft/game/IVersionValidateRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; @@ -20,5 +21,6 @@ declare class GameCallbacks { validateGameVersion(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; gameKeepalive(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; getVersion(url: string, info: IEmptyRequestData, sessionID: string): string; + reportNickname(url: string, info: IReportNicknameRequestData, sessionID: string): INullResponseData; } export { GameCallbacks }; diff --git a/TypeScript/7OnLoadHook/types/callbacks/HealthCallbacks.d.ts b/TypeScript/7OnLoadHook/types/callbacks/HealthCallbacks.d.ts index 8f7b89d..8672be7 100644 --- a/TypeScript/7OnLoadHook/types/callbacks/HealthCallbacks.d.ts +++ b/TypeScript/7OnLoadHook/types/callbacks/HealthCallbacks.d.ts @@ -13,6 +13,13 @@ export declare class HealthCallbacks { protected profileHelper: ProfileHelper; protected healthController: HealthController; constructor(httpResponse: HttpResponseUtil, profileHelper: ProfileHelper, healthController: HealthController); + /** + * Custom aki server request found in modules/HealthSynchronizer.cs + * @param url + * @param info HealthListener.Instance.CurrentHealth class + * @param sessionID session id + * @returns empty response, no data sent back to client + */ syncHealth(url: string, info: ISyncHealthRequestData, sessionID: string): IGetBodyResponseData; offraidEat(pmcData: IPmcData, body: IOffraidEatRequestData, sessionID: string): IItemEventRouterResponse; offraidHeal(pmcData: IPmcData, body: IOffraidHealRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/7OnLoadHook/types/callbacks/InsuranceCallbacks.d.ts b/TypeScript/7OnLoadHook/types/callbacks/InsuranceCallbacks.d.ts index 520d0eb..6819960 100644 --- a/TypeScript/7OnLoadHook/types/callbacks/InsuranceCallbacks.d.ts +++ b/TypeScript/7OnLoadHook/types/callbacks/InsuranceCallbacks.d.ts @@ -3,6 +3,7 @@ import { OnLoadOnUpdate } from "../di/OnLoadOnUpdate"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -17,7 +18,7 @@ export declare class InsuranceCallbacks extends OnLoadOnUpdate { protected insuranceConfig: IInsuranceConfig; constructor(insuranceController: InsuranceController, insuranceService: InsuranceService, httpResponse: HttpResponseUtil, configServer: ConfigServer); onLoad(): void; - getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; + getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; onUpdate(secondsSinceLastRun: number): boolean; getRoute(): string; diff --git a/TypeScript/7OnLoadHook/types/callbacks/MatchCallbacks.d.ts b/TypeScript/7OnLoadHook/types/callbacks/MatchCallbacks.d.ts index 083c1f5..158d8df 100644 --- a/TypeScript/7OnLoadHook/types/callbacks/MatchCallbacks.d.ts +++ b/TypeScript/7OnLoadHook/types/callbacks/MatchCallbacks.d.ts @@ -1,9 +1,13 @@ import { MatchController } from "../controllers/MatchController"; +import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { DatabaseServer } from "../servers/DatabaseServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; @@ -16,18 +20,18 @@ export declare class MatchCallbacks { constructor(httpResponse: HttpResponseUtil, jsonUtil: JsonUtil, matchController: MatchController, databaseServer: DatabaseServer); updatePing(url: string, info: any, sessionID: string): INullResponseData; exitMatch(url: string, info: any, sessionID: string): INullResponseData; - exitToMenu(url: string, info: any, sessionID: string): INullResponseData; - startGroupSearch(url: string, info: any, sessionID: string): INullResponseData; - stopGroupSearch(url: string, info: any, sessionID: string): INullResponseData; + exitToMenu(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + startGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + stopGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; sendGroupInvite(url: string, info: any, sessionID: string): INullResponseData; acceptGroupInvite(url: string, info: any, sessionID: string): INullResponseData; cancelGroupInvite(url: string, info: any, sessionID: string): INullResponseData; putMetrics(url: string, info: any, sessionID: string): INullResponseData; getProfile(url: string, info: IGetProfileRequestData, sessionID: string): IGetBodyResponseData; - serverAvailable(url: string, info: any, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; - joinMatch(url: string, info: any, sessionID: string): IGetBodyResponseData; + serverAvailable(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; + joinMatch(url: string, info: IJoinMatchRequestData, sessionID: string): IGetBodyResponseData; getMetrics(url: string, info: any, sessionID: string): IGetBodyResponseData; - getGroupStatus(url: string, info: any, sessionID: string): IGetBodyResponseData; + getGroupStatus(url: string, info: IGetGroupStatusRequestData, sessionID: string): IGetBodyResponseData; createGroup(url: string, info: any, sessionID: string): IGetBodyResponseData; deleteGroup(url: string, info: any, sessionID: string): INullResponseData; startOfflineRaid(url: string, info: IStartOfflineRaidRequestData, sessionID: string): INullResponseData; diff --git a/TypeScript/7OnLoadHook/types/callbacks/ModCallbacks.d.ts b/TypeScript/7OnLoadHook/types/callbacks/ModCallbacks.d.ts index 866abf7..58342dc 100644 --- a/TypeScript/7OnLoadHook/types/callbacks/ModCallbacks.d.ts +++ b/TypeScript/7OnLoadHook/types/callbacks/ModCallbacks.d.ts @@ -1,5 +1,5 @@ import { OnLoad } from "../di/OnLoad"; -import { DelayedModLoader } from "../loaders/DelayedModLoader"; +import { PostAkiModLoader } from "../loaders/PostAkiModLoader"; import { IHttpConfig } from "../models/spt/config/IHttpConfig"; import { IHttpServer } from "../models/spt/server/IHttpServer"; import { ILogger } from "../models/spt/utils/ILogger"; @@ -9,10 +9,10 @@ declare class ModCallbacks extends OnLoad { protected logger: ILogger; protected httpResponse: HttpResponseUtil; protected httpServer: IHttpServer; - protected modLoader: DelayedModLoader; + protected postAkiModLoader: PostAkiModLoader; protected configServer: ConfigServer; protected httpConfig: IHttpConfig; - constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, modLoader: DelayedModLoader, configServer: ConfigServer); + constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, postAkiModLoader: PostAkiModLoader, configServer: ConfigServer); onLoad(): void; getRoute(): string; sendBundle(sessionID: string, req: any, resp: any, body: any): void; diff --git a/TypeScript/7OnLoadHook/types/callbacks/ProfileCallbacks.d.ts b/TypeScript/7OnLoadHook/types/callbacks/ProfileCallbacks.d.ts index 116e7c5..6a86fc0 100644 --- a/TypeScript/7OnLoadHook/types/callbacks/ProfileCallbacks.d.ts +++ b/TypeScript/7OnLoadHook/types/callbacks/ProfileCallbacks.d.ts @@ -3,6 +3,7 @@ import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IGetMiniProfileRequestData } from "../models/eft/launcher/IGetMiniProfileRequestData"; +import { GetProfileStatusResponseData } from "../models/eft/profile/GetProfileStatusResponseData"; import { IProfileChangeNicknameRequestData } from "../models/eft/profile/IProfileChangeNicknameRequestData"; import { IProfileChangeVoiceRequestData } from "../models/eft/profile/IProfileChangeVoiceRequestData"; import { IProfileCreateRequestData } from "../models/eft/profile/IProfileCreateRequestData"; @@ -23,7 +24,14 @@ export declare class ProfileCallbacks { changeNickname(url: string, info: IProfileChangeNicknameRequestData, sessionID: string): IGetBodyResponseData; validateNickname(url: string, info: IValidateNicknameRequestData, sessionID: string): IGetBodyResponseData; getReservedNickname(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; - getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; + /** + * Called when creating a character, when you choose a character face/voice + * @param url + * @param info response (empty) + * @param sessionID + * @returns + */ + getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; searchFriend(url: string, info: ISearchFriendRequestData, sessionID: string): IGetBodyResponseData; getMiniProfile(url: string, info: IGetMiniProfileRequestData, sessionID: string): string; getAllMiniProfiles(url: string, info: any, sessionID: string): string; diff --git a/TypeScript/7OnLoadHook/types/callbacks/RagfairCallbacks.d.ts b/TypeScript/7OnLoadHook/types/callbacks/RagfairCallbacks.d.ts index d5bab8b..da782e1 100644 --- a/TypeScript/7OnLoadHook/types/callbacks/RagfairCallbacks.d.ts +++ b/TypeScript/7OnLoadHook/types/callbacks/RagfairCallbacks.d.ts @@ -9,6 +9,7 @@ import { IAddOfferRequestData } from "../models/eft/ragfair/IAddOfferRequestData import { IExtendOfferRequestData } from "../models/eft/ragfair/IExtendOfferRequestData"; import { IGetItemPriceResult } from "../models/eft/ragfair/IGetItemPriceResult"; import { IGetMarketPriceRequestData } from "../models/eft/ragfair/IGetMarketPriceRequestData"; +import { IGetOffersResult } from "../models/eft/ragfair/IGetOffersResult"; import { IRemoveOfferRequestData } from "../models/eft/ragfair/IRemoveOfferRequestData"; import { ISearchRequestData } from "../models/eft/ragfair/ISearchRequestData"; import { IRagfairConfig } from "../models/spt/config/IRagfairConfig"; @@ -28,7 +29,7 @@ export declare class RagfairCallbacks extends OnLoadOnUpdate { constructor(httpResponse: HttpResponseUtil, logger: ILogger, jsonUtil: JsonUtil, ragfairServer: RagfairServer, ragfairController: RagfairController, configServer: ConfigServer); onLoad(): void; getRoute(): string; - search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; + search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; getMarketPrice(url: string, info: IGetMarketPriceRequestData, sessionID: string): IGetBodyResponseData; getItemPrices(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; addOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/7OnLoadHook/types/controllers/GameController.d.ts b/TypeScript/7OnLoadHook/types/controllers/GameController.d.ts index 5f516de..f4c3d2c 100644 --- a/TypeScript/7OnLoadHook/types/controllers/GameController.d.ts +++ b/TypeScript/7OnLoadHook/types/controllers/GameController.d.ts @@ -28,6 +28,11 @@ export declare class GameController { protected addMissingRepeatableQuestsProperty(pmcProfile: IPmcData): void; protected addMissingWeaponRepairSkill(pmcProfile: IPmcData): void; protected addMissingAkiVersionTagToProfile(fullProfile: IAkiProfile): void; + /** + * In 18876 bsg changed the pockets tplid to be one that has 3 additional special slots + * @param pmcProfile + */ + protected updateProfilePocketsToNewId(pmcProfile: IPmcData): void; protected addMissingArmorRepairSkill(pmcProfile: IPmcData): void; protected fixNullTraderSalesSums(pmcProfile: IPmcData): void; protected removeDanglingBackendCounters(pmcProfile: IPmcData): void; diff --git a/TypeScript/7OnLoadHook/types/controllers/InsuranceController.d.ts b/TypeScript/7OnLoadHook/types/controllers/InsuranceController.d.ts index db2c567..af45442 100644 --- a/TypeScript/7OnLoadHook/types/controllers/InsuranceController.d.ts +++ b/TypeScript/7OnLoadHook/types/controllers/InsuranceController.d.ts @@ -3,6 +3,7 @@ import { ItemHelper } from "../helpers/ItemHelper"; import { ProfileHelper } from "../helpers/ProfileHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -33,6 +34,12 @@ export declare class InsuranceController { insuranceService: InsuranceService, configServer: ConfigServer); processReturn(): void; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; - cost(info: IGetInsuranceCostRequestData, sessionID: string): any; + /** + * Calculate insurance cost + * @param info request object + * @param sessionID session id + * @returns response object to send to client + */ + cost(info: IGetInsuranceCostRequestData, sessionID: string): IGetInsuranceCostResponseData; doAbsolutelyNothing(): void; } diff --git a/TypeScript/7OnLoadHook/types/controllers/InventoryController.d.ts b/TypeScript/7OnLoadHook/types/controllers/InventoryController.d.ts index b732aa9..f24ab62 100644 --- a/TypeScript/7OnLoadHook/types/controllers/InventoryController.d.ts +++ b/TypeScript/7OnLoadHook/types/controllers/InventoryController.d.ts @@ -24,6 +24,8 @@ import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRout import { ILogger } from "../models/spt/utils/ILogger"; import { ItemEventRouter } from "../routers/ItemEventRouter"; import { DatabaseServer } from "../servers/DatabaseServer"; +import { FenceService } from "../services/FenceService"; +import { RagfairOfferService } from "../services/RagfairOfferService"; import { HashUtil } from "../utils/HashUtil"; import { JsonUtil } from "../utils/JsonUtil"; export declare class InventoryController { @@ -31,12 +33,14 @@ export declare class InventoryController { protected hashUtil: HashUtil; protected jsonUtil: JsonUtil; protected databaseServer: DatabaseServer; + protected fenceService: FenceService; protected presetHelper: PresetHelper; protected inventoryHelper: InventoryHelper; + protected ragfairOfferService: RagfairOfferService; protected profileHelper: ProfileHelper; protected paymentHelper: PaymentHelper; protected itemEventRouter: ItemEventRouter; - constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); + constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, fenceService: FenceService, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, ragfairOfferService: RagfairOfferService, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); /** * Move Item * change location of item with parentId and slotId @@ -93,9 +97,19 @@ export declare class InventoryController { tagItem(pmcData: IPmcData, body: IInventoryTagRequestData, sessionID: string): IItemEventRouterResponse; bindItem(pmcData: IPmcData, body: IInventoryBindRequestData, sessionID: string): IItemEventRouterResponse; /** - * Handles examining of the item * + * Handles examining an item + * @param pmcData player profile + * @param body request object + * @param sessionID session id + * @returns response */ examineItem(pmcData: IPmcData, body: IInventoryExamineRequestData, sessionID: string): IItemEventRouterResponse; + /** + * Get the tplid of an item from the examine request object + * @param body response request + * @returns tplid + */ + protected getItemTpl(body: IInventoryExamineRequestData): string; readEncyclopedia(pmcData: IPmcData, body: IInventoryReadEncyclopediaRequestData, sessionID: string): IItemEventRouterResponse; /** * Handles sorting of Inventory. diff --git a/TypeScript/7OnLoadHook/types/controllers/MatchController.d.ts b/TypeScript/7OnLoadHook/types/controllers/MatchController.d.ts index c322d96..7ef3fcc 100644 --- a/TypeScript/7OnLoadHook/types/controllers/MatchController.d.ts +++ b/TypeScript/7OnLoadHook/types/controllers/MatchController.d.ts @@ -2,7 +2,10 @@ import { ProfileHelper } from "../helpers/ProfileHelper"; import { TraderHelper } from "../helpers/TraderHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { IInRaidConfig } from "../models/spt/config/IInRaidConfig"; import { IMatchConfig } from "../models/spt/config/IMatchConfig"; @@ -20,11 +23,11 @@ export declare class MatchController { constructor(saveServer: SaveServer, profileHelper: ProfileHelper, matchLocationService: MatchLocationService, traderHelper: TraderHelper, configServer: ConfigServer); getEnabled(): boolean; getProfile(info: IGetProfileRequestData): IPmcData[]; - protected getMatch(location: any): any; createGroup(sessionID: string, info: any): any; deleteGroup(info: any): void; - joinMatch(info: any, sessionID: string): any[]; - getGroupStatus(info: any): any; + joinMatch(info: IJoinMatchRequestData, sessionID: string): IJoinMatchResult[]; + protected getMatch(location: string): any; + getGroupStatus(info: IGetGroupStatusRequestData): any; startOfflineRaid(info: IStartOfflineRaidRequestData, sessionID: string): void; endOfflineRaid(info: IEndOfflineRaidRequestData, sessionID: string): void; } diff --git a/TypeScript/7OnLoadHook/types/controllers/RagfairController.d.ts b/TypeScript/7OnLoadHook/types/controllers/RagfairController.d.ts index c758593..c4ffc15 100644 --- a/TypeScript/7OnLoadHook/types/controllers/RagfairController.d.ts +++ b/TypeScript/7OnLoadHook/types/controllers/RagfairController.d.ts @@ -60,6 +60,8 @@ export declare class RagfairController { protected ragfairConfig: IRagfairConfig; constructor(logger: ILogger, timeUtil: TimeUtil, httpResponse: HttpResponseUtil, itemEventRouter: ItemEventRouter, ragfairServer: RagfairServer, ragfairPriceService: RagfairPriceService, databaseServer: DatabaseServer, itemHelper: ItemHelper, saveServer: SaveServer, ragfairSellHelper: RagfairSellHelper, ragfairTaxHelper: RagfairTaxHelper, ragfairSortHelper: RagfairSortHelper, ragfairOfferHelper: RagfairOfferHelper, profileHelper: ProfileHelper, paymentService: PaymentService, handbookHelper: HandbookHelper, paymentHelper: PaymentHelper, inventoryHelper: InventoryHelper, ragfairHelper: RagfairHelper, ragfairOfferService: RagfairOfferService, ragfairRequiredItemsService: RagfairRequiredItemsService, ragfairOfferGenerator: RagfairOfferGenerator, configServer: ConfigServer); getOffers(sessionID: string, info: ISearchRequestData): IGetOffersResult; + protected isLinkedSearch(info: ISearchRequestData): boolean; + protected isRequiredSearch(info: ISearchRequestData): boolean; update(): void; getItemPrice(info: IGetMarketPriceRequestData): IGetItemPriceResult; addPlayerOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/7OnLoadHook/types/generators/BotWeaponGenerator.d.ts b/TypeScript/7OnLoadHook/types/generators/BotWeaponGenerator.d.ts index a43b18c..dd3ad69 100644 --- a/TypeScript/7OnLoadHook/types/generators/BotWeaponGenerator.d.ts +++ b/TypeScript/7OnLoadHook/types/generators/BotWeaponGenerator.d.ts @@ -41,6 +41,13 @@ export declare class BotWeaponGenerator { * @returns */ protected generateExtraMagazines(weaponMods: Item[], weaponTemplate: ITemplateItem, magCounts: MinMax, ammoTpl: string, inventory: PmcInventory): void; + /** + * Get a randomised number of bullets for a specific magazine + * @param magCounts min and max count of magazines + * @param magTemplate magazine to generate bullet count for + * @returns bullet count number + */ + protected getRandomisedBulletCount(magCounts: MinMax, magTemplate: ITemplateItem): number; /** * Get a randomised count of magazines * @param magCounts min and max value returned value can be between diff --git a/TypeScript/7OnLoadHook/types/generators/RagfairOfferGenerator.d.ts b/TypeScript/7OnLoadHook/types/generators/RagfairOfferGenerator.d.ts index de53ea9..6645c8d 100644 --- a/TypeScript/7OnLoadHook/types/generators/RagfairOfferGenerator.d.ts +++ b/TypeScript/7OnLoadHook/types/generators/RagfairOfferGenerator.d.ts @@ -18,6 +18,7 @@ import { JsonUtil } from "../utils/JsonUtil"; import { RandomUtil } from "../utils/RandomUtil"; import { TimeUtil } from "../utils/TimeUtil"; import { RagfairAssortGenerator } from "./RagfairAssortGenerator"; +import { RagfairCategoriesService } from "../services/RagfairCategoriesService"; export declare class RagfairOfferGenerator { protected logger: ILogger; protected jsonUtil: JsonUtil; @@ -31,11 +32,12 @@ export declare class RagfairOfferGenerator { protected ragfairAssortGenerator: RagfairAssortGenerator; protected ragfairOfferService: RagfairOfferService; protected ragfairPriceService: RagfairPriceService; + protected ragfairCategoriesService: RagfairCategoriesService; protected fenceService: FenceService; protected itemHelper: ItemHelper; protected configServer: ConfigServer; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); + constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, ragfairCategoriesService: RagfairCategoriesService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); createOffer(userID: string, time: number, items: Item[], barterScheme: IBarterScheme[], loyalLevel: number, price: number, sellInOnePiece?: boolean): IRagfairOffer; protected getTraderId(userID: string): string; protected getRating(userID: string): number; diff --git a/TypeScript/7OnLoadHook/types/helpers/BotGeneratorHelper.d.ts b/TypeScript/7OnLoadHook/types/helpers/BotGeneratorHelper.d.ts index e4b0c11..243e7a8 100644 --- a/TypeScript/7OnLoadHook/types/helpers/BotGeneratorHelper.d.ts +++ b/TypeScript/7OnLoadHook/types/helpers/BotGeneratorHelper.d.ts @@ -29,6 +29,12 @@ export declare class BotGeneratorHelper { protected botConfig: IBotConfig; constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, probabilityHelper: ProbabilityHelper, databaseServer: DatabaseServer, durabilityLimitsHelper: DurabilityLimitsHelper, itemHelper: ItemHelper, inventoryHelper: InventoryHelper, containerHelper: ContainerHelper, configServer: ConfigServer); generateModsForItem(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem, modSpawnChances: ModsChances, isPmc?: boolean): Item[]; + /** + * Is this magazine cylinder related (revolvers and grenade launchers) + * @param magazineParentName the name of the magazines parent + * @returns true if it is cylinder related + */ + magazineIsCylinderRelated(magazineParentName: string): boolean; /** * Get a list of non black-listed cartridges from the PMC bot config * @param modSlot mod item slot @@ -69,6 +75,12 @@ export declare class BotGeneratorHelper { * @param {object} parentTemplate The CylinderMagazine's template */ protected fillCamora(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem): void; + /** + * Take a record of camoras and merge the compatable shells into one array + * @param camorasWithShells camoras we want to merge into one array + * @returns string array of shells fro luitple camora sources + */ + protected mergeCamoraPoolsTogether(camorasWithShells: Record): string[]; generateExtraPropertiesForItem(itemTemplate: ITemplateItem, botRole?: any): { upd?: Upd; }; diff --git a/TypeScript/7OnLoadHook/types/loaders/AfterDbModLoader.d.ts b/TypeScript/7OnLoadHook/types/loaders/AfterDbModLoader.d.ts deleted file mode 100644 index a9fc286..0000000 --- a/TypeScript/7OnLoadHook/types/loaders/AfterDbModLoader.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { OnLoad } from "../di/OnLoad"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class AfterDbModLoader implements OnLoad { - protected initialModLoader: InitialModLoader; - constructor(initialModLoader: InitialModLoader); - onLoad(): void; - getRoute(): string; - getModPath(mod: string): string; - protected executeMods(container: DependencyContainer): void; -} diff --git a/TypeScript/7OnLoadHook/types/loaders/DelayedModLoader.d.ts b/TypeScript/7OnLoadHook/types/loaders/DelayedModLoader.d.ts deleted file mode 100644 index 2a05604..0000000 --- a/TypeScript/7OnLoadHook/types/loaders/DelayedModLoader.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { HandbookController } from "../controllers/HandbookController"; -import { IModLoader } from "../models/spt/mod/IModLoader"; -import { ModCompilerService } from "../services/ModCompilerService"; -import { VFS } from "../utils/VFS"; -import { BundleLoader } from "./BundleLoader"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class DelayedModLoader implements IModLoader { - protected bundleLoader: BundleLoader; - protected handbookController: HandbookController; - protected vfs: VFS; - protected modCompilerService: ModCompilerService; - protected initialModLoader: InitialModLoader; - constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, initialModLoader: InitialModLoader); - getBundles(local: boolean): string; - getBundle(key: string, local: boolean): void; - getModPath(mod: string): string; - load(): void; - protected executeMods(container: DependencyContainer): void; - protected addBundles(): void; -} diff --git a/TypeScript/7OnLoadHook/types/loaders/InitialModLoader.d.ts b/TypeScript/7OnLoadHook/types/loaders/InitialModLoader.d.ts deleted file mode 100644 index 9a99dcc..0000000 --- a/TypeScript/7OnLoadHook/types/loaders/InitialModLoader.d.ts +++ /dev/null @@ -1,64 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { ICoreConfig } from "../models/spt/config/ICoreConfig"; -import { ModLoader } from "../models/spt/mod/IMod"; -import { IModLoader } from "../models/spt/mod/IModLoader"; -import { IPackageJsonData } from "../models/spt/mod/IPackageJsonData"; -import { ILogger } from "../models/spt/utils/ILogger"; -import { ConfigServer } from "../servers/ConfigServer"; -import { ModCompilerService } from "../services/ModCompilerService"; -import { JsonUtil } from "../utils/JsonUtil"; -import { VFS } from "../utils/VFS"; -import { BundleLoader } from "./BundleLoader"; -export declare class InitialModLoader implements IModLoader { - protected logger: ILogger; - protected vfs: VFS; - protected jsonUtil: JsonUtil; - protected modCompilerService: ModCompilerService; - protected bundleLoader: BundleLoader; - protected configServer: ConfigServer; - protected static container: DependencyContainer; - protected readonly basepath = "user/mods/"; - protected imported: Record; - protected akiConfig: ICoreConfig; - constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, configServer: ConfigServer); - load(container: DependencyContainer): Promise; - getBundles(local: boolean): string; - getBundle(key: string, local: boolean): void; - /** - * Returns a list of mods with preserved load order - * @returns Array of mod names in load order - */ - getImportedModsNames(): string[]; - getModPath(mod: string): string; - protected importClass(name: string, filepath: string, container: DependencyContainer): void; - protected importMods(): Promise; - /** - * - * @param mods Get an array of broken/invalid mods by name - * @returns Mod names array - */ - protected getBrokenMods(mods: string[]): string[]; - /** - * Get packageJson data for mods - * @param mods mods to get packageJson for - * @returns dictionary - */ - protected getModsPackageData(mods: string[]): Record; - /** - * Does mod have "delayedLoad(" string in its entry class - * @param modFolderName folder name - * @param modToValidate package.json details - * @returns boolean - */ - protected isModSpt300Compatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; - protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; - protected executeMods(container: DependencyContainer): void; - sortModsLoadOrder(): string[]; - protected addMod(mod: string): Promise; - protected areModDependenciesFulfilled(pkg: IPackageJsonData, loadedMods: Record): boolean; - protected isModCompatible(mod: IPackageJsonData, loadedMods: Record): boolean; - protected validMod(mod: string): boolean; - protected getLoadOrderRecursive(mod: string, result: Record, visited: Record): void; - protected getLoadOrder(mods: Record): Record; - getContainer(): DependencyContainer; -} diff --git a/TypeScript/7OnLoadHook/types/loaders/PostAkiModLoader.d.ts b/TypeScript/7OnLoadHook/types/loaders/PostAkiModLoader.d.ts new file mode 100644 index 0000000..edc6e5d --- /dev/null +++ b/TypeScript/7OnLoadHook/types/loaders/PostAkiModLoader.d.ts @@ -0,0 +1,21 @@ +import { DependencyContainer } from "tsyringe"; +import { HandbookController } from "../controllers/HandbookController"; +import { IModLoader } from "../models/spt/mod/IModLoader"; +import { ModCompilerService } from "../services/ModCompilerService"; +import { VFS } from "../utils/VFS"; +import { BundleLoader } from "./BundleLoader"; +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostAkiModLoader implements IModLoader { + protected bundleLoader: BundleLoader; + protected handbookController: HandbookController; + protected vfs: VFS; + protected modCompilerService: ModCompilerService; + protected preAkiModLoader: PreAkiModLoader; + constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, preAkiModLoader: PreAkiModLoader); + getBundles(local: boolean): string; + getBundle(key: string, local: boolean): void; + getModPath(mod: string): string; + load(): void; + protected executeMods(container: DependencyContainer): void; + protected addBundles(): void; +} diff --git a/TypeScript/7OnLoadHook/types/loaders/PostDBModLoader.d.ts b/TypeScript/7OnLoadHook/types/loaders/PostDBModLoader.d.ts new file mode 100644 index 0000000..5101b7b --- /dev/null +++ b/TypeScript/7OnLoadHook/types/loaders/PostDBModLoader.d.ts @@ -0,0 +1,11 @@ +import { DependencyContainer } from "tsyringe"; +import { OnLoad } from "../di/OnLoad"; +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostDBModLoader implements OnLoad { + protected preAkiModLoader: PreAkiModLoader; + constructor(preAkiModLoader: PreAkiModLoader); + onLoad(): void; + getRoute(): string; + getModPath(mod: string): string; + protected executeMods(container: DependencyContainer): void; +} diff --git a/TypeScript/7OnLoadHook/types/loaders/PreAkiModLoader.d.ts b/TypeScript/7OnLoadHook/types/loaders/PreAkiModLoader.d.ts new file mode 100644 index 0000000..6ded3c6 --- /dev/null +++ b/TypeScript/7OnLoadHook/types/loaders/PreAkiModLoader.d.ts @@ -0,0 +1,64 @@ +import { DependencyContainer } from "tsyringe"; +import { ICoreConfig } from "../models/spt/config/ICoreConfig"; +import { ModLoader } from "../models/spt/mod/IMod"; +import { IModLoader } from "../models/spt/mod/IModLoader"; +import { IPackageJsonData } from "../models/spt/mod/IPackageJsonData"; +import { ILogger } from "../models/spt/utils/ILogger"; +import { ConfigServer } from "../servers/ConfigServer"; +import { ModCompilerService } from "../services/ModCompilerService"; +import { JsonUtil } from "../utils/JsonUtil"; +import { VFS } from "../utils/VFS"; +import { BundleLoader } from "./BundleLoader"; +export declare class PreAkiModLoader implements IModLoader { + protected logger: ILogger; + protected vfs: VFS; + protected jsonUtil: JsonUtil; + protected modCompilerService: ModCompilerService; + protected bundleLoader: BundleLoader; + protected configServer: ConfigServer; + protected static container: DependencyContainer; + protected readonly basepath = "user/mods/"; + protected imported: Record; + protected akiConfig: ICoreConfig; + constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, configServer: ConfigServer); + load(container: DependencyContainer): Promise; + getBundles(local: boolean): string; + getBundle(key: string, local: boolean): void; + /** + * Returns a list of mods with preserved load order + * @returns Array of mod names in load order + */ + getImportedModsNames(): string[]; + getModPath(mod: string): string; + protected importClass(name: string, filepath: string, container: DependencyContainer): void; + protected importMods(): Promise; + /** + * + * @param mods Get an array of broken/invalid mods by name + * @returns Mod names array + */ + protected getBrokenMods(mods: string[]): string[]; + /** + * Get packageJson data for mods + * @param mods mods to get packageJson for + * @returns dictionary + */ + protected getModsPackageData(mods: string[]): Record; + /** + * Does mod have "delayedLoad(" string in its entry class + * @param modFolderName folder name + * @param modToValidate package.json details + * @returns boolean + */ + protected isModSpt3XXCompatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; + protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; + protected executeMods(container: DependencyContainer): void; + sortModsLoadOrder(): string[]; + protected addMod(mod: string): Promise; + protected areModDependenciesFulfilled(pkg: IPackageJsonData, loadedMods: Record): boolean; + protected isModCompatible(mod: IPackageJsonData, loadedMods: Record): boolean; + protected validMod(mod: string): boolean; + protected getLoadOrderRecursive(mod: string, result: Record, visited: Record): void; + protected getLoadOrder(mods: Record): Record; + getContainer(): DependencyContainer; +} diff --git a/TypeScript/7OnLoadHook/types/models/eft/common/IGlobals.d.ts b/TypeScript/7OnLoadHook/types/models/eft/common/IGlobals.d.ts index 456895c..9d28dbc 100644 --- a/TypeScript/7OnLoadHook/types/models/eft/common/IGlobals.d.ts +++ b/TypeScript/7OnLoadHook/types/models/eft/common/IGlobals.d.ts @@ -1128,8 +1128,11 @@ export interface Inertia { SprintAccelerationLimits: xyz; SideTime: xyz; DiagonalTime: xyz; + MaxTimeWithoutInput: xyz; MinDirectionBlendTime: number; - MoveTime: number; + MoveTimeRange: xyz; + ProneDirectionAccelerationRange: xyz; + ProneSpeedAccelerationRange: xyz; MinMovementAccelerationRangeRight: xyz; MaxMovementAccelerationRangeRight: xyz; } diff --git a/TypeScript/7OnLoadHook/types/models/eft/common/ILocationBase.d.ts b/TypeScript/7OnLoadHook/types/models/eft/common/ILocationBase.d.ts index ad48d32..b1dd448 100644 --- a/TypeScript/7OnLoadHook/types/models/eft/common/ILocationBase.d.ts +++ b/TypeScript/7OnLoadHook/types/models/eft/common/ILocationBase.d.ts @@ -26,6 +26,7 @@ export interface ILocationBase { DisabledForScav: boolean; DisabledScavExits: string; Enabled: boolean; + EnableCoop: boolean; GlobalLootChanceModifier: number; IconX: number; IconY: number; @@ -41,6 +42,7 @@ export interface ILocationBase { MinDistToFreePoint: number; MinMaxBots: MinMaxBot[]; MinPlayers: number; + MaxCoopGroup: number; Name: string; NewSpawn: boolean; OcculsionCullingEnabled: boolean; @@ -48,6 +50,8 @@ export interface ILocationBase { OpenZones: string; Preview: Preview; RequiredPlayerLevel: number; + PmcMaxPlayersInGroup: number; + ScavMaxPlayersInGroup: number; Rules: string; SafeLocation: boolean; Scene: Scene; @@ -55,7 +59,8 @@ export interface ILocationBase { UnixDateTime: number; _Id: string; doors: any[]; - escape_time_limit: number; + EscapeTimeLimit: number; + EscapeTimeLimitCoop: number; exit_access_time: number; exit_count: number; exit_time: number; @@ -63,6 +68,7 @@ export interface ILocationBase { filter_ex: string[]; limits: ILimit[]; matching_min_seconds: number; + GenerateLocalLootCache: boolean; maxItemCountInLocation: MaxItemCountInLocation[]; sav_summon_seconds: number; tmp_location_field_remove_me: number; @@ -106,6 +112,7 @@ export interface BossLocationSpawn { BossName: string; BossPlayer: boolean; BossZone: string; + RandomTimeSpawn: boolean; Time: number; TriggerId: string; TriggerName: string; diff --git a/TypeScript/7OnLoadHook/types/models/eft/common/IPmcData.d.ts b/TypeScript/7OnLoadHook/types/models/eft/common/IPmcData.d.ts index adc2aa5..56bf07f 100644 --- a/TypeScript/7OnLoadHook/types/models/eft/common/IPmcData.d.ts +++ b/TypeScript/7OnLoadHook/types/models/eft/common/IPmcData.d.ts @@ -6,7 +6,7 @@ import { MemberCategory } from "../../enums/MemberCategory"; export interface IPmcData { _id: string; aid: string; - savage: string; + savage?: string; Info: Info; Customization: Customization; Health: Health; @@ -28,13 +28,6 @@ export interface IPmcData { CarExtractCounts: CarExtractCounts; SurvivorClass: SurvivorClass; } -export declare enum SurvivorClass { - Unknown = 0, - Neutralizer = 1, - Marauder = 2, - Paramedic = 3, - Survivor = 4 -} export interface Info { EntryPoint: string; Nickname: string; @@ -56,6 +49,9 @@ export interface Info { Bans: IBan[]; BannedState: boolean; BannedUntil: number; + NeedWipeOptions: any[]; + lastCompletedWipe: LastCompleted; + lastCompletedEvent?: LastCompleted; } export interface Settings { Role: string; @@ -339,3 +335,13 @@ export interface RagfairInfo { } export interface CarExtractCounts { } +export declare enum SurvivorClass { + Unknown = 0, + Neutralizer = 1, + Marauder = 2, + Paramedic = 3, + Survivor = 4 +} +export interface LastCompleted { + $oid: string; +} diff --git a/TypeScript/7OnLoadHook/types/models/eft/common/tables/IProfileTemplate.d.ts b/TypeScript/7OnLoadHook/types/models/eft/common/tables/IProfileTemplate.d.ts new file mode 100644 index 0000000..c445e92 --- /dev/null +++ b/TypeScript/7OnLoadHook/types/models/eft/common/tables/IProfileTemplate.d.ts @@ -0,0 +1,23 @@ +import { Dialogue, WeaponBuild } from "../../profile/IAkiProfile"; +import { IPmcData } from "../IPmcData"; +export interface IProfileTemplates { + Standard: IProfileSides; + "Left Behind": IProfileSides; + "Prepare To Escape": IProfileSides; + "Edge Of Darkness": IProfileSides; +} +export interface IProfileSides { + usec: TemplateSide; + bear: TemplateSide; +} +export interface TemplateSide { + character: IPmcData; + suits: string[]; + dialogues: Record; + weaponbuilds: WeaponBuild[]; + trader: ProfileTraderTemplate; +} +export interface ProfileTraderTemplate { + initialStanding: number; + initialSalesSum: number; +} diff --git a/TypeScript/7OnLoadHook/types/models/eft/common/tables/IQuest.d.ts b/TypeScript/7OnLoadHook/types/models/eft/common/tables/IQuest.d.ts index e1fc888..942339b 100644 --- a/TypeScript/7OnLoadHook/types/models/eft/common/tables/IQuest.d.ts +++ b/TypeScript/7OnLoadHook/types/models/eft/common/tables/IQuest.d.ts @@ -23,6 +23,7 @@ export interface IQuest { status: string; KeyQuest: boolean; changeQuestMessageText: string; + side: string; } export interface Conditions { Started: AvailableForConditions[]; @@ -56,6 +57,7 @@ export interface AvailableForProps { plantTime?: number; zoneId?: string; type?: boolean; + countInRaid?: boolean; } export interface AvailableForCounter { id: string; diff --git a/TypeScript/7OnLoadHook/types/models/eft/common/tables/ITemplateItem.d.ts b/TypeScript/7OnLoadHook/types/models/eft/common/tables/ITemplateItem.d.ts index 934ea7d..23a1a14 100644 --- a/TypeScript/7OnLoadHook/types/models/eft/common/tables/ITemplateItem.d.ts +++ b/TypeScript/7OnLoadHook/types/models/eft/common/tables/ITemplateItem.d.ts @@ -50,6 +50,7 @@ export interface Props { UnlootableFromSide?: string[]; AnimationVariantsNumber?: number; DiscardingBlock?: boolean; + DropSoundType?: string; RagFairCommissionModifier?: number; IsAlwaysAvailableForInsurance?: boolean; DiscardLimit?: number; @@ -89,7 +90,7 @@ export interface Props { SightModesCount?: number; OpticCalibrationDistances?: number[]; ScopesCount?: number; - AimSensitivity: any; + AimSensitivity?: number | number[][]; Zooms?: number[][]; CalibrationDistances?: number[][]; Intensity?: number; @@ -200,6 +201,9 @@ export interface Props { MinRepairDegradation?: number; MaxRepairDegradation?: number; IronSightRange?: number; + IsFlareGun?: boolean; + IsGrenadeLauncher?: boolean; + IsOneoff?: boolean; MustBoltBeOpennedForExternalReload?: boolean; MustBoltBeOpennedForInternalReload?: boolean; BoltAction?: boolean; diff --git a/TypeScript/7OnLoadHook/types/models/eft/game/IReportNicknameRequestData.d.ts b/TypeScript/7OnLoadHook/types/models/eft/game/IReportNicknameRequestData.d.ts new file mode 100644 index 0000000..087c58b --- /dev/null +++ b/TypeScript/7OnLoadHook/types/models/eft/game/IReportNicknameRequestData.d.ts @@ -0,0 +1,3 @@ +export interface IReportNicknameRequestData { + uid: string; +} diff --git a/TypeScript/7OnLoadHook/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts b/TypeScript/7OnLoadHook/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts new file mode 100644 index 0000000..bf209c6 --- /dev/null +++ b/TypeScript/7OnLoadHook/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts @@ -0,0 +1 @@ +export declare type IGetInsuranceCostResponseData = Record>; diff --git a/TypeScript/7OnLoadHook/types/models/eft/match/IGetGroupStatusRequestData.d.ts b/TypeScript/7OnLoadHook/types/models/eft/match/IGetGroupStatusRequestData.d.ts new file mode 100644 index 0000000..cbdb77f --- /dev/null +++ b/TypeScript/7OnLoadHook/types/models/eft/match/IGetGroupStatusRequestData.d.ts @@ -0,0 +1,8 @@ +export interface IGetGroupStatusRequestData { + location: string; + savage: boolean; + dt: string; + keyId: string; + raidMode: string; + startInGroup: boolean; +} diff --git a/TypeScript/7OnLoadHook/types/models/eft/match/IJoinMatchRequestData.d.ts b/TypeScript/7OnLoadHook/types/models/eft/match/IJoinMatchRequestData.d.ts new file mode 100644 index 0000000..cd34f7b --- /dev/null +++ b/TypeScript/7OnLoadHook/types/models/eft/match/IJoinMatchRequestData.d.ts @@ -0,0 +1,12 @@ +export interface IJoinMatchRequestData { + location: string; + savage: boolean; + dt: string; + servers: Server[]; + keyId: string; +} +export interface Server { + ping: number; + ip: string; + port: string; +} diff --git a/TypeScript/7OnLoadHook/types/models/eft/match/IJoinMatchResult.d.ts b/TypeScript/7OnLoadHook/types/models/eft/match/IJoinMatchResult.d.ts new file mode 100644 index 0000000..df695f4 --- /dev/null +++ b/TypeScript/7OnLoadHook/types/models/eft/match/IJoinMatchResult.d.ts @@ -0,0 +1,11 @@ +export interface IJoinMatchResult { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; + version: string; + location: string; + gamemode: string; + shortid: string; +} diff --git a/TypeScript/7OnLoadHook/types/models/eft/match/IStartOffineRaidRequestData.d.ts b/TypeScript/7OnLoadHook/types/models/eft/match/IStartOffineRaidRequestData.d.ts index 84bccc8..7cc457c 100644 --- a/TypeScript/7OnLoadHook/types/models/eft/match/IStartOffineRaidRequestData.d.ts +++ b/TypeScript/7OnLoadHook/types/models/eft/match/IStartOffineRaidRequestData.d.ts @@ -1,6 +1,5 @@ export interface IStartOfflineRaidRequestData { locationName: string; - entryPoint: string; startTime: number; dateTime: string; gameSettings: GameSettings; diff --git a/TypeScript/7OnLoadHook/types/models/eft/profile/GetProfileStatusResponseData.d.ts b/TypeScript/7OnLoadHook/types/models/eft/profile/GetProfileStatusResponseData.d.ts new file mode 100644 index 0000000..eee9b4f --- /dev/null +++ b/TypeScript/7OnLoadHook/types/models/eft/profile/GetProfileStatusResponseData.d.ts @@ -0,0 +1,11 @@ +export interface GetProfileStatusResponseData { + maxPveCountExceeded: false; + profiles: ProfileData[]; +} +export interface ProfileData { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; +} diff --git a/TypeScript/7OnLoadHook/types/models/eft/ragfair/IGetOffersResult.d.ts b/TypeScript/7OnLoadHook/types/models/eft/ragfair/IGetOffersResult.d.ts index 1c11422..fbc631d 100644 --- a/TypeScript/7OnLoadHook/types/models/eft/ragfair/IGetOffersResult.d.ts +++ b/TypeScript/7OnLoadHook/types/models/eft/ragfair/IGetOffersResult.d.ts @@ -1,6 +1,6 @@ import { IRagfairOffer } from "./IRagfairOffer"; export interface IGetOffersResult { - categories: Record; + categories?: Record; offers: IRagfairOffer[]; offersCount: number; selectedCategory: string; diff --git a/TypeScript/7OnLoadHook/types/models/enums/QuestStatus.d.ts b/TypeScript/7OnLoadHook/types/models/enums/QuestStatus.d.ts deleted file mode 100644 index 6335c73..0000000 --- a/TypeScript/7OnLoadHook/types/models/enums/QuestStatus.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -export declare enum QuestStatus { - Locked = 0, - AvailableForStart = 1, - Started = 2, - AvailableForFinish = 3, - Success = 4, - Fail = 5, - FailRestartable = 6, - MarkedAsFailed = 7 -} diff --git a/TypeScript/7OnLoadHook/types/models/external/IAfterDBLoadMod.d.ts b/TypeScript/7OnLoadHook/types/models/external/IAfterDBLoadMod.d.ts deleted file mode 100644 index 7f08b9e..0000000 --- a/TypeScript/7OnLoadHook/types/models/external/IAfterDBLoadMod.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IAfterDBLoadMod { - loadAfterDbInit(container: DependencyContainer): void; -} diff --git a/TypeScript/7OnLoadHook/types/models/external/IPostAkiLoadMod.d.ts b/TypeScript/7OnLoadHook/types/models/external/IPostAkiLoadMod.d.ts new file mode 100644 index 0000000..f6950e8 --- /dev/null +++ b/TypeScript/7OnLoadHook/types/models/external/IPostAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostAkiLoadMod { + postAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/7OnLoadHook/types/models/external/IPostDBLoadMod.d.ts b/TypeScript/7OnLoadHook/types/models/external/IPostDBLoadMod.d.ts new file mode 100644 index 0000000..ca7c682 --- /dev/null +++ b/TypeScript/7OnLoadHook/types/models/external/IPostDBLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostDBLoadMod { + postDBLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/7OnLoadHook/types/models/external/IPreAkiLoadMod.d.ts b/TypeScript/7OnLoadHook/types/models/external/IPreAkiLoadMod.d.ts new file mode 100644 index 0000000..ae7579e --- /dev/null +++ b/TypeScript/7OnLoadHook/types/models/external/IPreAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPreAkiLoadMod { + preAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/7OnLoadHook/types/models/external/mod.d.ts b/TypeScript/7OnLoadHook/types/models/external/mod.d.ts deleted file mode 100644 index 47939e9..0000000 --- a/TypeScript/7OnLoadHook/types/models/external/mod.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IMod { - load(container: DependencyContainer): void; - delayedLoad(container: DependencyContainer): void; -} diff --git a/TypeScript/7OnLoadHook/types/models/spt/config/IBotConfig.d.ts b/TypeScript/7OnLoadHook/types/models/spt/config/IBotConfig.d.ts index 5fb9d93..f8cf39b 100644 --- a/TypeScript/7OnLoadHook/types/models/spt/config/IBotConfig.d.ts +++ b/TypeScript/7OnLoadHook/types/models/spt/config/IBotConfig.d.ts @@ -18,6 +18,7 @@ export interface PresetBatch { bossKojaniy: number; bossSanitar: number; bossTagilla: number; + bossKnight: number; bossTest: number; cursedAssault: number; followerBully: number; @@ -28,6 +29,8 @@ export interface PresetBatch { followerKojaniy: number; followerSanitar: number; followerTagilla: number; + followerBirdEye: number; + followerBigPipe: number; followerTest: number; marksman: number; pmcBot: number; diff --git a/TypeScript/7OnLoadHook/types/models/spt/config/IRagfairConfig.d.ts b/TypeScript/7OnLoadHook/types/models/spt/config/IRagfairConfig.d.ts index 2d151ca..8518252 100644 --- a/TypeScript/7OnLoadHook/types/models/spt/config/IRagfairConfig.d.ts +++ b/TypeScript/7OnLoadHook/types/models/spt/config/IRagfairConfig.d.ts @@ -30,6 +30,7 @@ export interface Dynamic { expiredOfferThreshold: number; offerItemCount: MinMax; price: MinMax; + presetPrice: MinMax; endTimeSeconds: MinMax; condition: Condition; stackablePercent: MinMax; diff --git a/TypeScript/7OnLoadHook/types/models/spt/server/IDatabaseTables.d.ts b/TypeScript/7OnLoadHook/types/models/spt/server/IDatabaseTables.d.ts index e0d3fdd..9978459 100644 --- a/TypeScript/7OnLoadHook/types/models/spt/server/IDatabaseTables.d.ts +++ b/TypeScript/7OnLoadHook/types/models/spt/server/IDatabaseTables.d.ts @@ -6,6 +6,7 @@ import { ICustomizationItem } from "../../eft/common/tables/ICustomizationItem"; import { IHandbookBase } from "../../eft/common/tables/IHandbookBase"; import { ILootBase } from "../../eft/common/tables/ILootBase"; import { IMatch } from "../../eft/common/tables/IMatch"; +import { IProfileTemplates } from "../../eft/common/tables/IProfileTemplate"; import { IQuest } from "../../eft/common/tables/IQuest"; import { IRepeatableQuestDatabase } from "../../eft/common/tables/IRepeatableQuests"; import { ITemplateItem } from "../../eft/common/tables/ITemplateItem"; @@ -39,10 +40,13 @@ export interface IDatabaseTables { items: Record; quests: IQuest[]; repeatableQuests: IRepeatableQuestDatabase; + /** DEPRECATED - Items file found in the client, massivly out of date compared to templates.items, try not to use this, remove ASAP*/ clientItems: Record; handbook: IHandbookBase; customization: Record; - profiles: any; + /** The profile templates listed in the launcher on profile creation, split by account type (e.g. Standard) then side (e.g. bear/usec) */ + profiles: IProfileTemplates; + /** Flea prices of items - gathered from online flea market dump */ prices: Record; }; traders?: Record; diff --git a/TypeScript/7OnLoadHook/types/servers/RagfairServer.d.ts b/TypeScript/7OnLoadHook/types/servers/RagfairServer.d.ts index 60c92b5..bc86cdb 100644 --- a/TypeScript/7OnLoadHook/types/servers/RagfairServer.d.ts +++ b/TypeScript/7OnLoadHook/types/servers/RagfairServer.d.ts @@ -17,7 +17,8 @@ export declare class RagfairServer { constructor(logger: ILogger, ragfairOfferGenerator: RagfairOfferGenerator, ragfairOfferService: RagfairOfferService, ragfairCategoriesService: RagfairCategoriesService, ragfairRequiredItemsService: RagfairRequiredItemsService, configServer: ConfigServer); load(): void; update(): void; - getCategories(): Record; + getAllCategories(): Record; + getBespokeCategories(offers: IRagfairOffer[]): Record; /** * Disable/Hide an offer from flea * @param offerId diff --git a/TypeScript/7OnLoadHook/types/services/RagfairCategoriesService.d.ts b/TypeScript/7OnLoadHook/types/services/RagfairCategoriesService.d.ts index 09956cc..83910e5 100644 --- a/TypeScript/7OnLoadHook/types/services/RagfairCategoriesService.d.ts +++ b/TypeScript/7OnLoadHook/types/services/RagfairCategoriesService.d.ts @@ -1,10 +1,40 @@ import { IRagfairOffer } from "../models/eft/ragfair/IRagfairOffer"; +import { ILogger } from "../models/spt/utils/ILogger"; export declare class RagfairCategoriesService { - updateCategories(offers: IRagfairOffer[]): void; + protected logger: ILogger; protected categories: Record; - getCategories(): Record; - getCategoryByItemId(itemId: string): number; - resetCategories(): void; - setCategoryValue(itemId: string, newValue: number): void; - incrementCategory(itemId: string): void; + constructor(logger: ILogger); + /** + * Get all flea categories and their count of offers + * @returns item categories and count + */ + getAllCategories(): Record; + /** + * With the supplied items, get custom categories + * @returns a custom list of categories + */ + getBespokeCategories(offers: IRagfairOffer[]): Record; + /** + * Take an array of ragfair offers and create a dictionary of items with thier corrisponding offer count + * @param offers ragfair offers + * @returns categories and count + */ + protected processOffersIntoCategories(offers: IRagfairOffer[]): Record; + /** + * Increment or decrement a category array + * @param offer offer to process + * @param categories categories to update + * @param increment should item be incremented or decremented + */ + protected addOrIncrementCategory(offer: IRagfairOffer, categories: Record, increment?: boolean): void; + /** + * Increase category count by 1 + * @param offer + */ + incrementCategory(offer: IRagfairOffer): void; + /** + * Reduce category count by 1 + * @param offer + */ + decrementCategory(offer: IRagfairOffer): void; } diff --git a/TypeScript/7OnLoadHook/types/services/RagfairOfferService.d.ts b/TypeScript/7OnLoadHook/types/services/RagfairOfferService.d.ts index 7afbf8c..7398a8f 100644 --- a/TypeScript/7OnLoadHook/types/services/RagfairOfferService.d.ts +++ b/TypeScript/7OnLoadHook/types/services/RagfairOfferService.d.ts @@ -11,12 +11,14 @@ import { DatabaseServer } from "../servers/DatabaseServer"; import { SaveServer } from "../servers/SaveServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; import { TimeUtil } from "../utils/TimeUtil"; +import { RagfairCategoriesService } from "./RagfairCategoriesService"; export declare class RagfairOfferService { protected logger: ILogger; protected timeUtil: TimeUtil; protected databaseServer: DatabaseServer; protected saveServer: SaveServer; protected ragfairServerHelper: RagfairServerHelper; + protected ragfairCategoriesService: RagfairCategoriesService; protected profileHelper: ProfileHelper; protected itemEventRouter: ItemEventRouter; protected httpResponse: HttpResponseUtil; @@ -26,12 +28,16 @@ export declare class RagfairOfferService { protected expiredOffers: Item[]; protected offers: IRagfairOffer[]; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, ragfairCategoriesService: RagfairCategoriesService, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + /** + * Get all offers + * @returns IRagfairOffer array + */ getOffers(): IRagfairOffer[]; getOfferByOfferId(offerId: string): IRagfairOffer; getOffersOfType(templateId: string): IRagfairOffer[]; addOffer(offer: IRagfairOffer): void; - addOfferToExpired(offer: Item): void; + addOfferToExpired(staleOffer: IRagfairOffer): void; setTraderUpdateStatus(traderId: string, shouldUpdate: boolean): void; shouldTraderBeUpdated(traderID: string): boolean; getExpiredOfferCount(): number; diff --git a/TypeScript/7OnLoadHook/types/services/RagfairPriceService.d.ts b/TypeScript/7OnLoadHook/types/services/RagfairPriceService.d.ts index 5256b99..e3168a6 100644 --- a/TypeScript/7OnLoadHook/types/services/RagfairPriceService.d.ts +++ b/TypeScript/7OnLoadHook/types/services/RagfairPriceService.d.ts @@ -28,5 +28,19 @@ export declare class RagfairPriceService { getFleaPriceForItem(tplId: string): number; getBarterPrice(barterScheme: IBarterScheme[]): number; getDynamicOfferPrice(items: Item[], desiredCurrency: string): number; + /** + * Multiply the price by a randomised curve where n = 2, shift = 2 + * @param existingPrice price to alter + * @param isPreset is the item we're multiplying a preset + * @returns multiplied price + */ + protected randomisePrice(existingPrice: number, isPreset: boolean): number; + /** + * Calculate the cost of a weapon preset by adding together the price of its mods + base price of default weapon preset + * @param item base weapon + * @param items weapon plus mods + * @param existingPrice price of existing base weapon + * @returns + */ getWeaponPresetPrice(item: Item, items: Item[], existingPrice: number): number; } diff --git a/TypeScript/7OnLoadHook/types/utils/Watermark.d.ts b/TypeScript/7OnLoadHook/types/utils/Watermark.d.ts index 111bdd0..c6dc120 100644 --- a/TypeScript/7OnLoadHook/types/utils/Watermark.d.ts +++ b/TypeScript/7OnLoadHook/types/utils/Watermark.d.ts @@ -28,7 +28,12 @@ export declare class Watermark { protected text: string[]; protected versionLabel: string; initialize(): void; - getVersionTag(): string; + /** + * Get a version string (x.x.x) or (x.x.x-BLEEDINGEDGE) OR (X.X.X (18xxx)) + * @param withEftVersion Include the eft version this spt version was made for + * @returns string + */ + getVersionTag(withEftVersion?: boolean): string; getVersionLabel(): string; /** Set window title */ setTitle(): void; diff --git a/TypeScript/8OnUpdateHook/package.json b/TypeScript/8OnUpdateHook/package.json index 6f67e85..2f50567 100644 --- a/TypeScript/8OnUpdateHook/package.json +++ b/TypeScript/8OnUpdateHook/package.json @@ -4,7 +4,7 @@ "main": "src/mod.js", "license": "MIT", "author": "Chomp", - "akiVersion": "3.0.1", + "akiVersion": "3.1.0", "scripts": { "setup:environment": "npm i", "build:unzipped": "copyfiles -e \"./node_modules/**/*.*\" -e \"./dist/**/*.*\" -e \"./package-lock.json\" -e \"./tsconfig.json\" -e \"./README.txt\" -e \"./mod.code-workspace\" \"./**/*.*\" ./dist", diff --git a/TypeScript/8OnUpdateHook/src/mod.ts b/TypeScript/8OnUpdateHook/src/mod.ts index d44e9e2..46d7397 100644 --- a/TypeScript/8OnUpdateHook/src/mod.ts +++ b/TypeScript/8OnUpdateHook/src/mod.ts @@ -1,12 +1,11 @@ import { DependencyContainer } from "tsyringe"; -import { IMod } from "@spt-aki/models/external/mod" +import { IPreAkiLoadMod } from "@spt-aki/models/external/IPreAkiLoadMod" import { ILogger } from "@spt-aki/models/spt/utils/ILogger" import { OnUpdateModService } from "@spt-aki/services/mod/onUpdate/OnUpdateModService" -class Mod implements IMod +class Mod implements IPreAkiLoadMod { - public load(container: DependencyContainer): void - { + public preAkiLoad(container: DependencyContainer): void { const logger = container.resolve("WinstonLogger"); const onUpdateModService = container.resolve("OnUpdateModService"); @@ -17,7 +16,7 @@ class Mod implements IMod ) } - customFunctionThatRunsOnLoad(timeSinceLastRun: number, logger: ILogger): boolean + public customFunctionThatRunsOnLoad(timeSinceLastRun: number, logger: ILogger): boolean { if (timeSinceLastRun > 30) { @@ -27,11 +26,5 @@ class Mod implements IMod return false; // we didnt do anything } - - // Not used in this example - public delayedLoad(container: DependencyContainer): void - { - return; - } } module.exports = {mod: new Mod()} \ No newline at end of file diff --git a/TypeScript/8OnUpdateHook/types/callbacks/GameCallbacks.d.ts b/TypeScript/8OnUpdateHook/types/callbacks/GameCallbacks.d.ts index d5cad76..06da1b5 100644 --- a/TypeScript/8OnUpdateHook/types/callbacks/GameCallbacks.d.ts +++ b/TypeScript/8OnUpdateHook/types/callbacks/GameCallbacks.d.ts @@ -2,6 +2,7 @@ import { GameController } from "../controllers/GameController"; import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse"; import { IGameEmptyCrcRequestData } from "../models/eft/game/IGameEmptyCrcRequestData"; +import { IReportNicknameRequestData } from "../models/eft/game/IReportNicknameRequestData"; import { IVersionValidateRequestData } from "../models/eft/game/IVersionValidateRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; @@ -20,5 +21,6 @@ declare class GameCallbacks { validateGameVersion(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; gameKeepalive(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; getVersion(url: string, info: IEmptyRequestData, sessionID: string): string; + reportNickname(url: string, info: IReportNicknameRequestData, sessionID: string): INullResponseData; } export { GameCallbacks }; diff --git a/TypeScript/8OnUpdateHook/types/callbacks/HealthCallbacks.d.ts b/TypeScript/8OnUpdateHook/types/callbacks/HealthCallbacks.d.ts index 8f7b89d..8672be7 100644 --- a/TypeScript/8OnUpdateHook/types/callbacks/HealthCallbacks.d.ts +++ b/TypeScript/8OnUpdateHook/types/callbacks/HealthCallbacks.d.ts @@ -13,6 +13,13 @@ export declare class HealthCallbacks { protected profileHelper: ProfileHelper; protected healthController: HealthController; constructor(httpResponse: HttpResponseUtil, profileHelper: ProfileHelper, healthController: HealthController); + /** + * Custom aki server request found in modules/HealthSynchronizer.cs + * @param url + * @param info HealthListener.Instance.CurrentHealth class + * @param sessionID session id + * @returns empty response, no data sent back to client + */ syncHealth(url: string, info: ISyncHealthRequestData, sessionID: string): IGetBodyResponseData; offraidEat(pmcData: IPmcData, body: IOffraidEatRequestData, sessionID: string): IItemEventRouterResponse; offraidHeal(pmcData: IPmcData, body: IOffraidHealRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/8OnUpdateHook/types/callbacks/InsuranceCallbacks.d.ts b/TypeScript/8OnUpdateHook/types/callbacks/InsuranceCallbacks.d.ts index 520d0eb..6819960 100644 --- a/TypeScript/8OnUpdateHook/types/callbacks/InsuranceCallbacks.d.ts +++ b/TypeScript/8OnUpdateHook/types/callbacks/InsuranceCallbacks.d.ts @@ -3,6 +3,7 @@ import { OnLoadOnUpdate } from "../di/OnLoadOnUpdate"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -17,7 +18,7 @@ export declare class InsuranceCallbacks extends OnLoadOnUpdate { protected insuranceConfig: IInsuranceConfig; constructor(insuranceController: InsuranceController, insuranceService: InsuranceService, httpResponse: HttpResponseUtil, configServer: ConfigServer); onLoad(): void; - getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; + getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; onUpdate(secondsSinceLastRun: number): boolean; getRoute(): string; diff --git a/TypeScript/8OnUpdateHook/types/callbacks/MatchCallbacks.d.ts b/TypeScript/8OnUpdateHook/types/callbacks/MatchCallbacks.d.ts index 083c1f5..158d8df 100644 --- a/TypeScript/8OnUpdateHook/types/callbacks/MatchCallbacks.d.ts +++ b/TypeScript/8OnUpdateHook/types/callbacks/MatchCallbacks.d.ts @@ -1,9 +1,13 @@ import { MatchController } from "../controllers/MatchController"; +import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { DatabaseServer } from "../servers/DatabaseServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; @@ -16,18 +20,18 @@ export declare class MatchCallbacks { constructor(httpResponse: HttpResponseUtil, jsonUtil: JsonUtil, matchController: MatchController, databaseServer: DatabaseServer); updatePing(url: string, info: any, sessionID: string): INullResponseData; exitMatch(url: string, info: any, sessionID: string): INullResponseData; - exitToMenu(url: string, info: any, sessionID: string): INullResponseData; - startGroupSearch(url: string, info: any, sessionID: string): INullResponseData; - stopGroupSearch(url: string, info: any, sessionID: string): INullResponseData; + exitToMenu(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + startGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + stopGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; sendGroupInvite(url: string, info: any, sessionID: string): INullResponseData; acceptGroupInvite(url: string, info: any, sessionID: string): INullResponseData; cancelGroupInvite(url: string, info: any, sessionID: string): INullResponseData; putMetrics(url: string, info: any, sessionID: string): INullResponseData; getProfile(url: string, info: IGetProfileRequestData, sessionID: string): IGetBodyResponseData; - serverAvailable(url: string, info: any, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; - joinMatch(url: string, info: any, sessionID: string): IGetBodyResponseData; + serverAvailable(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; + joinMatch(url: string, info: IJoinMatchRequestData, sessionID: string): IGetBodyResponseData; getMetrics(url: string, info: any, sessionID: string): IGetBodyResponseData; - getGroupStatus(url: string, info: any, sessionID: string): IGetBodyResponseData; + getGroupStatus(url: string, info: IGetGroupStatusRequestData, sessionID: string): IGetBodyResponseData; createGroup(url: string, info: any, sessionID: string): IGetBodyResponseData; deleteGroup(url: string, info: any, sessionID: string): INullResponseData; startOfflineRaid(url: string, info: IStartOfflineRaidRequestData, sessionID: string): INullResponseData; diff --git a/TypeScript/8OnUpdateHook/types/callbacks/ModCallbacks.d.ts b/TypeScript/8OnUpdateHook/types/callbacks/ModCallbacks.d.ts index 866abf7..58342dc 100644 --- a/TypeScript/8OnUpdateHook/types/callbacks/ModCallbacks.d.ts +++ b/TypeScript/8OnUpdateHook/types/callbacks/ModCallbacks.d.ts @@ -1,5 +1,5 @@ import { OnLoad } from "../di/OnLoad"; -import { DelayedModLoader } from "../loaders/DelayedModLoader"; +import { PostAkiModLoader } from "../loaders/PostAkiModLoader"; import { IHttpConfig } from "../models/spt/config/IHttpConfig"; import { IHttpServer } from "../models/spt/server/IHttpServer"; import { ILogger } from "../models/spt/utils/ILogger"; @@ -9,10 +9,10 @@ declare class ModCallbacks extends OnLoad { protected logger: ILogger; protected httpResponse: HttpResponseUtil; protected httpServer: IHttpServer; - protected modLoader: DelayedModLoader; + protected postAkiModLoader: PostAkiModLoader; protected configServer: ConfigServer; protected httpConfig: IHttpConfig; - constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, modLoader: DelayedModLoader, configServer: ConfigServer); + constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, postAkiModLoader: PostAkiModLoader, configServer: ConfigServer); onLoad(): void; getRoute(): string; sendBundle(sessionID: string, req: any, resp: any, body: any): void; diff --git a/TypeScript/8OnUpdateHook/types/callbacks/ProfileCallbacks.d.ts b/TypeScript/8OnUpdateHook/types/callbacks/ProfileCallbacks.d.ts index 116e7c5..6a86fc0 100644 --- a/TypeScript/8OnUpdateHook/types/callbacks/ProfileCallbacks.d.ts +++ b/TypeScript/8OnUpdateHook/types/callbacks/ProfileCallbacks.d.ts @@ -3,6 +3,7 @@ import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IGetMiniProfileRequestData } from "../models/eft/launcher/IGetMiniProfileRequestData"; +import { GetProfileStatusResponseData } from "../models/eft/profile/GetProfileStatusResponseData"; import { IProfileChangeNicknameRequestData } from "../models/eft/profile/IProfileChangeNicknameRequestData"; import { IProfileChangeVoiceRequestData } from "../models/eft/profile/IProfileChangeVoiceRequestData"; import { IProfileCreateRequestData } from "../models/eft/profile/IProfileCreateRequestData"; @@ -23,7 +24,14 @@ export declare class ProfileCallbacks { changeNickname(url: string, info: IProfileChangeNicknameRequestData, sessionID: string): IGetBodyResponseData; validateNickname(url: string, info: IValidateNicknameRequestData, sessionID: string): IGetBodyResponseData; getReservedNickname(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; - getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; + /** + * Called when creating a character, when you choose a character face/voice + * @param url + * @param info response (empty) + * @param sessionID + * @returns + */ + getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; searchFriend(url: string, info: ISearchFriendRequestData, sessionID: string): IGetBodyResponseData; getMiniProfile(url: string, info: IGetMiniProfileRequestData, sessionID: string): string; getAllMiniProfiles(url: string, info: any, sessionID: string): string; diff --git a/TypeScript/8OnUpdateHook/types/callbacks/RagfairCallbacks.d.ts b/TypeScript/8OnUpdateHook/types/callbacks/RagfairCallbacks.d.ts index d5bab8b..da782e1 100644 --- a/TypeScript/8OnUpdateHook/types/callbacks/RagfairCallbacks.d.ts +++ b/TypeScript/8OnUpdateHook/types/callbacks/RagfairCallbacks.d.ts @@ -9,6 +9,7 @@ import { IAddOfferRequestData } from "../models/eft/ragfair/IAddOfferRequestData import { IExtendOfferRequestData } from "../models/eft/ragfair/IExtendOfferRequestData"; import { IGetItemPriceResult } from "../models/eft/ragfair/IGetItemPriceResult"; import { IGetMarketPriceRequestData } from "../models/eft/ragfair/IGetMarketPriceRequestData"; +import { IGetOffersResult } from "../models/eft/ragfair/IGetOffersResult"; import { IRemoveOfferRequestData } from "../models/eft/ragfair/IRemoveOfferRequestData"; import { ISearchRequestData } from "../models/eft/ragfair/ISearchRequestData"; import { IRagfairConfig } from "../models/spt/config/IRagfairConfig"; @@ -28,7 +29,7 @@ export declare class RagfairCallbacks extends OnLoadOnUpdate { constructor(httpResponse: HttpResponseUtil, logger: ILogger, jsonUtil: JsonUtil, ragfairServer: RagfairServer, ragfairController: RagfairController, configServer: ConfigServer); onLoad(): void; getRoute(): string; - search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; + search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; getMarketPrice(url: string, info: IGetMarketPriceRequestData, sessionID: string): IGetBodyResponseData; getItemPrices(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; addOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/8OnUpdateHook/types/controllers/GameController.d.ts b/TypeScript/8OnUpdateHook/types/controllers/GameController.d.ts index 5f516de..f4c3d2c 100644 --- a/TypeScript/8OnUpdateHook/types/controllers/GameController.d.ts +++ b/TypeScript/8OnUpdateHook/types/controllers/GameController.d.ts @@ -28,6 +28,11 @@ export declare class GameController { protected addMissingRepeatableQuestsProperty(pmcProfile: IPmcData): void; protected addMissingWeaponRepairSkill(pmcProfile: IPmcData): void; protected addMissingAkiVersionTagToProfile(fullProfile: IAkiProfile): void; + /** + * In 18876 bsg changed the pockets tplid to be one that has 3 additional special slots + * @param pmcProfile + */ + protected updateProfilePocketsToNewId(pmcProfile: IPmcData): void; protected addMissingArmorRepairSkill(pmcProfile: IPmcData): void; protected fixNullTraderSalesSums(pmcProfile: IPmcData): void; protected removeDanglingBackendCounters(pmcProfile: IPmcData): void; diff --git a/TypeScript/8OnUpdateHook/types/controllers/InsuranceController.d.ts b/TypeScript/8OnUpdateHook/types/controllers/InsuranceController.d.ts index db2c567..af45442 100644 --- a/TypeScript/8OnUpdateHook/types/controllers/InsuranceController.d.ts +++ b/TypeScript/8OnUpdateHook/types/controllers/InsuranceController.d.ts @@ -3,6 +3,7 @@ import { ItemHelper } from "../helpers/ItemHelper"; import { ProfileHelper } from "../helpers/ProfileHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -33,6 +34,12 @@ export declare class InsuranceController { insuranceService: InsuranceService, configServer: ConfigServer); processReturn(): void; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; - cost(info: IGetInsuranceCostRequestData, sessionID: string): any; + /** + * Calculate insurance cost + * @param info request object + * @param sessionID session id + * @returns response object to send to client + */ + cost(info: IGetInsuranceCostRequestData, sessionID: string): IGetInsuranceCostResponseData; doAbsolutelyNothing(): void; } diff --git a/TypeScript/8OnUpdateHook/types/controllers/InventoryController.d.ts b/TypeScript/8OnUpdateHook/types/controllers/InventoryController.d.ts index b732aa9..f24ab62 100644 --- a/TypeScript/8OnUpdateHook/types/controllers/InventoryController.d.ts +++ b/TypeScript/8OnUpdateHook/types/controllers/InventoryController.d.ts @@ -24,6 +24,8 @@ import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRout import { ILogger } from "../models/spt/utils/ILogger"; import { ItemEventRouter } from "../routers/ItemEventRouter"; import { DatabaseServer } from "../servers/DatabaseServer"; +import { FenceService } from "../services/FenceService"; +import { RagfairOfferService } from "../services/RagfairOfferService"; import { HashUtil } from "../utils/HashUtil"; import { JsonUtil } from "../utils/JsonUtil"; export declare class InventoryController { @@ -31,12 +33,14 @@ export declare class InventoryController { protected hashUtil: HashUtil; protected jsonUtil: JsonUtil; protected databaseServer: DatabaseServer; + protected fenceService: FenceService; protected presetHelper: PresetHelper; protected inventoryHelper: InventoryHelper; + protected ragfairOfferService: RagfairOfferService; protected profileHelper: ProfileHelper; protected paymentHelper: PaymentHelper; protected itemEventRouter: ItemEventRouter; - constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); + constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, fenceService: FenceService, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, ragfairOfferService: RagfairOfferService, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); /** * Move Item * change location of item with parentId and slotId @@ -93,9 +97,19 @@ export declare class InventoryController { tagItem(pmcData: IPmcData, body: IInventoryTagRequestData, sessionID: string): IItemEventRouterResponse; bindItem(pmcData: IPmcData, body: IInventoryBindRequestData, sessionID: string): IItemEventRouterResponse; /** - * Handles examining of the item * + * Handles examining an item + * @param pmcData player profile + * @param body request object + * @param sessionID session id + * @returns response */ examineItem(pmcData: IPmcData, body: IInventoryExamineRequestData, sessionID: string): IItemEventRouterResponse; + /** + * Get the tplid of an item from the examine request object + * @param body response request + * @returns tplid + */ + protected getItemTpl(body: IInventoryExamineRequestData): string; readEncyclopedia(pmcData: IPmcData, body: IInventoryReadEncyclopediaRequestData, sessionID: string): IItemEventRouterResponse; /** * Handles sorting of Inventory. diff --git a/TypeScript/8OnUpdateHook/types/controllers/MatchController.d.ts b/TypeScript/8OnUpdateHook/types/controllers/MatchController.d.ts index c322d96..7ef3fcc 100644 --- a/TypeScript/8OnUpdateHook/types/controllers/MatchController.d.ts +++ b/TypeScript/8OnUpdateHook/types/controllers/MatchController.d.ts @@ -2,7 +2,10 @@ import { ProfileHelper } from "../helpers/ProfileHelper"; import { TraderHelper } from "../helpers/TraderHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { IInRaidConfig } from "../models/spt/config/IInRaidConfig"; import { IMatchConfig } from "../models/spt/config/IMatchConfig"; @@ -20,11 +23,11 @@ export declare class MatchController { constructor(saveServer: SaveServer, profileHelper: ProfileHelper, matchLocationService: MatchLocationService, traderHelper: TraderHelper, configServer: ConfigServer); getEnabled(): boolean; getProfile(info: IGetProfileRequestData): IPmcData[]; - protected getMatch(location: any): any; createGroup(sessionID: string, info: any): any; deleteGroup(info: any): void; - joinMatch(info: any, sessionID: string): any[]; - getGroupStatus(info: any): any; + joinMatch(info: IJoinMatchRequestData, sessionID: string): IJoinMatchResult[]; + protected getMatch(location: string): any; + getGroupStatus(info: IGetGroupStatusRequestData): any; startOfflineRaid(info: IStartOfflineRaidRequestData, sessionID: string): void; endOfflineRaid(info: IEndOfflineRaidRequestData, sessionID: string): void; } diff --git a/TypeScript/8OnUpdateHook/types/controllers/RagfairController.d.ts b/TypeScript/8OnUpdateHook/types/controllers/RagfairController.d.ts index c758593..c4ffc15 100644 --- a/TypeScript/8OnUpdateHook/types/controllers/RagfairController.d.ts +++ b/TypeScript/8OnUpdateHook/types/controllers/RagfairController.d.ts @@ -60,6 +60,8 @@ export declare class RagfairController { protected ragfairConfig: IRagfairConfig; constructor(logger: ILogger, timeUtil: TimeUtil, httpResponse: HttpResponseUtil, itemEventRouter: ItemEventRouter, ragfairServer: RagfairServer, ragfairPriceService: RagfairPriceService, databaseServer: DatabaseServer, itemHelper: ItemHelper, saveServer: SaveServer, ragfairSellHelper: RagfairSellHelper, ragfairTaxHelper: RagfairTaxHelper, ragfairSortHelper: RagfairSortHelper, ragfairOfferHelper: RagfairOfferHelper, profileHelper: ProfileHelper, paymentService: PaymentService, handbookHelper: HandbookHelper, paymentHelper: PaymentHelper, inventoryHelper: InventoryHelper, ragfairHelper: RagfairHelper, ragfairOfferService: RagfairOfferService, ragfairRequiredItemsService: RagfairRequiredItemsService, ragfairOfferGenerator: RagfairOfferGenerator, configServer: ConfigServer); getOffers(sessionID: string, info: ISearchRequestData): IGetOffersResult; + protected isLinkedSearch(info: ISearchRequestData): boolean; + protected isRequiredSearch(info: ISearchRequestData): boolean; update(): void; getItemPrice(info: IGetMarketPriceRequestData): IGetItemPriceResult; addPlayerOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/8OnUpdateHook/types/generators/BotWeaponGenerator.d.ts b/TypeScript/8OnUpdateHook/types/generators/BotWeaponGenerator.d.ts index a43b18c..dd3ad69 100644 --- a/TypeScript/8OnUpdateHook/types/generators/BotWeaponGenerator.d.ts +++ b/TypeScript/8OnUpdateHook/types/generators/BotWeaponGenerator.d.ts @@ -41,6 +41,13 @@ export declare class BotWeaponGenerator { * @returns */ protected generateExtraMagazines(weaponMods: Item[], weaponTemplate: ITemplateItem, magCounts: MinMax, ammoTpl: string, inventory: PmcInventory): void; + /** + * Get a randomised number of bullets for a specific magazine + * @param magCounts min and max count of magazines + * @param magTemplate magazine to generate bullet count for + * @returns bullet count number + */ + protected getRandomisedBulletCount(magCounts: MinMax, magTemplate: ITemplateItem): number; /** * Get a randomised count of magazines * @param magCounts min and max value returned value can be between diff --git a/TypeScript/8OnUpdateHook/types/generators/RagfairOfferGenerator.d.ts b/TypeScript/8OnUpdateHook/types/generators/RagfairOfferGenerator.d.ts index de53ea9..6645c8d 100644 --- a/TypeScript/8OnUpdateHook/types/generators/RagfairOfferGenerator.d.ts +++ b/TypeScript/8OnUpdateHook/types/generators/RagfairOfferGenerator.d.ts @@ -18,6 +18,7 @@ import { JsonUtil } from "../utils/JsonUtil"; import { RandomUtil } from "../utils/RandomUtil"; import { TimeUtil } from "../utils/TimeUtil"; import { RagfairAssortGenerator } from "./RagfairAssortGenerator"; +import { RagfairCategoriesService } from "../services/RagfairCategoriesService"; export declare class RagfairOfferGenerator { protected logger: ILogger; protected jsonUtil: JsonUtil; @@ -31,11 +32,12 @@ export declare class RagfairOfferGenerator { protected ragfairAssortGenerator: RagfairAssortGenerator; protected ragfairOfferService: RagfairOfferService; protected ragfairPriceService: RagfairPriceService; + protected ragfairCategoriesService: RagfairCategoriesService; protected fenceService: FenceService; protected itemHelper: ItemHelper; protected configServer: ConfigServer; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); + constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, ragfairCategoriesService: RagfairCategoriesService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); createOffer(userID: string, time: number, items: Item[], barterScheme: IBarterScheme[], loyalLevel: number, price: number, sellInOnePiece?: boolean): IRagfairOffer; protected getTraderId(userID: string): string; protected getRating(userID: string): number; diff --git a/TypeScript/8OnUpdateHook/types/helpers/BotGeneratorHelper.d.ts b/TypeScript/8OnUpdateHook/types/helpers/BotGeneratorHelper.d.ts index e4b0c11..243e7a8 100644 --- a/TypeScript/8OnUpdateHook/types/helpers/BotGeneratorHelper.d.ts +++ b/TypeScript/8OnUpdateHook/types/helpers/BotGeneratorHelper.d.ts @@ -29,6 +29,12 @@ export declare class BotGeneratorHelper { protected botConfig: IBotConfig; constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, probabilityHelper: ProbabilityHelper, databaseServer: DatabaseServer, durabilityLimitsHelper: DurabilityLimitsHelper, itemHelper: ItemHelper, inventoryHelper: InventoryHelper, containerHelper: ContainerHelper, configServer: ConfigServer); generateModsForItem(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem, modSpawnChances: ModsChances, isPmc?: boolean): Item[]; + /** + * Is this magazine cylinder related (revolvers and grenade launchers) + * @param magazineParentName the name of the magazines parent + * @returns true if it is cylinder related + */ + magazineIsCylinderRelated(magazineParentName: string): boolean; /** * Get a list of non black-listed cartridges from the PMC bot config * @param modSlot mod item slot @@ -69,6 +75,12 @@ export declare class BotGeneratorHelper { * @param {object} parentTemplate The CylinderMagazine's template */ protected fillCamora(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem): void; + /** + * Take a record of camoras and merge the compatable shells into one array + * @param camorasWithShells camoras we want to merge into one array + * @returns string array of shells fro luitple camora sources + */ + protected mergeCamoraPoolsTogether(camorasWithShells: Record): string[]; generateExtraPropertiesForItem(itemTemplate: ITemplateItem, botRole?: any): { upd?: Upd; }; diff --git a/TypeScript/8OnUpdateHook/types/loaders/AfterDbModLoader.d.ts b/TypeScript/8OnUpdateHook/types/loaders/AfterDbModLoader.d.ts deleted file mode 100644 index a9fc286..0000000 --- a/TypeScript/8OnUpdateHook/types/loaders/AfterDbModLoader.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { OnLoad } from "../di/OnLoad"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class AfterDbModLoader implements OnLoad { - protected initialModLoader: InitialModLoader; - constructor(initialModLoader: InitialModLoader); - onLoad(): void; - getRoute(): string; - getModPath(mod: string): string; - protected executeMods(container: DependencyContainer): void; -} diff --git a/TypeScript/8OnUpdateHook/types/loaders/DelayedModLoader.d.ts b/TypeScript/8OnUpdateHook/types/loaders/DelayedModLoader.d.ts deleted file mode 100644 index 2a05604..0000000 --- a/TypeScript/8OnUpdateHook/types/loaders/DelayedModLoader.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { HandbookController } from "../controllers/HandbookController"; -import { IModLoader } from "../models/spt/mod/IModLoader"; -import { ModCompilerService } from "../services/ModCompilerService"; -import { VFS } from "../utils/VFS"; -import { BundleLoader } from "./BundleLoader"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class DelayedModLoader implements IModLoader { - protected bundleLoader: BundleLoader; - protected handbookController: HandbookController; - protected vfs: VFS; - protected modCompilerService: ModCompilerService; - protected initialModLoader: InitialModLoader; - constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, initialModLoader: InitialModLoader); - getBundles(local: boolean): string; - getBundle(key: string, local: boolean): void; - getModPath(mod: string): string; - load(): void; - protected executeMods(container: DependencyContainer): void; - protected addBundles(): void; -} diff --git a/TypeScript/8OnUpdateHook/types/loaders/InitialModLoader.d.ts b/TypeScript/8OnUpdateHook/types/loaders/InitialModLoader.d.ts deleted file mode 100644 index 9a99dcc..0000000 --- a/TypeScript/8OnUpdateHook/types/loaders/InitialModLoader.d.ts +++ /dev/null @@ -1,64 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { ICoreConfig } from "../models/spt/config/ICoreConfig"; -import { ModLoader } from "../models/spt/mod/IMod"; -import { IModLoader } from "../models/spt/mod/IModLoader"; -import { IPackageJsonData } from "../models/spt/mod/IPackageJsonData"; -import { ILogger } from "../models/spt/utils/ILogger"; -import { ConfigServer } from "../servers/ConfigServer"; -import { ModCompilerService } from "../services/ModCompilerService"; -import { JsonUtil } from "../utils/JsonUtil"; -import { VFS } from "../utils/VFS"; -import { BundleLoader } from "./BundleLoader"; -export declare class InitialModLoader implements IModLoader { - protected logger: ILogger; - protected vfs: VFS; - protected jsonUtil: JsonUtil; - protected modCompilerService: ModCompilerService; - protected bundleLoader: BundleLoader; - protected configServer: ConfigServer; - protected static container: DependencyContainer; - protected readonly basepath = "user/mods/"; - protected imported: Record; - protected akiConfig: ICoreConfig; - constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, configServer: ConfigServer); - load(container: DependencyContainer): Promise; - getBundles(local: boolean): string; - getBundle(key: string, local: boolean): void; - /** - * Returns a list of mods with preserved load order - * @returns Array of mod names in load order - */ - getImportedModsNames(): string[]; - getModPath(mod: string): string; - protected importClass(name: string, filepath: string, container: DependencyContainer): void; - protected importMods(): Promise; - /** - * - * @param mods Get an array of broken/invalid mods by name - * @returns Mod names array - */ - protected getBrokenMods(mods: string[]): string[]; - /** - * Get packageJson data for mods - * @param mods mods to get packageJson for - * @returns dictionary - */ - protected getModsPackageData(mods: string[]): Record; - /** - * Does mod have "delayedLoad(" string in its entry class - * @param modFolderName folder name - * @param modToValidate package.json details - * @returns boolean - */ - protected isModSpt300Compatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; - protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; - protected executeMods(container: DependencyContainer): void; - sortModsLoadOrder(): string[]; - protected addMod(mod: string): Promise; - protected areModDependenciesFulfilled(pkg: IPackageJsonData, loadedMods: Record): boolean; - protected isModCompatible(mod: IPackageJsonData, loadedMods: Record): boolean; - protected validMod(mod: string): boolean; - protected getLoadOrderRecursive(mod: string, result: Record, visited: Record): void; - protected getLoadOrder(mods: Record): Record; - getContainer(): DependencyContainer; -} diff --git a/TypeScript/8OnUpdateHook/types/loaders/PostAkiModLoader.d.ts b/TypeScript/8OnUpdateHook/types/loaders/PostAkiModLoader.d.ts new file mode 100644 index 0000000..edc6e5d --- /dev/null +++ b/TypeScript/8OnUpdateHook/types/loaders/PostAkiModLoader.d.ts @@ -0,0 +1,21 @@ +import { DependencyContainer } from "tsyringe"; +import { HandbookController } from "../controllers/HandbookController"; +import { IModLoader } from "../models/spt/mod/IModLoader"; +import { ModCompilerService } from "../services/ModCompilerService"; +import { VFS } from "../utils/VFS"; +import { BundleLoader } from "./BundleLoader"; +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostAkiModLoader implements IModLoader { + protected bundleLoader: BundleLoader; + protected handbookController: HandbookController; + protected vfs: VFS; + protected modCompilerService: ModCompilerService; + protected preAkiModLoader: PreAkiModLoader; + constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, preAkiModLoader: PreAkiModLoader); + getBundles(local: boolean): string; + getBundle(key: string, local: boolean): void; + getModPath(mod: string): string; + load(): void; + protected executeMods(container: DependencyContainer): void; + protected addBundles(): void; +} diff --git a/TypeScript/8OnUpdateHook/types/loaders/PostDBModLoader.d.ts b/TypeScript/8OnUpdateHook/types/loaders/PostDBModLoader.d.ts new file mode 100644 index 0000000..5101b7b --- /dev/null +++ b/TypeScript/8OnUpdateHook/types/loaders/PostDBModLoader.d.ts @@ -0,0 +1,11 @@ +import { DependencyContainer } from "tsyringe"; +import { OnLoad } from "../di/OnLoad"; +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostDBModLoader implements OnLoad { + protected preAkiModLoader: PreAkiModLoader; + constructor(preAkiModLoader: PreAkiModLoader); + onLoad(): void; + getRoute(): string; + getModPath(mod: string): string; + protected executeMods(container: DependencyContainer): void; +} diff --git a/TypeScript/8OnUpdateHook/types/loaders/PreAkiModLoader.d.ts b/TypeScript/8OnUpdateHook/types/loaders/PreAkiModLoader.d.ts new file mode 100644 index 0000000..6ded3c6 --- /dev/null +++ b/TypeScript/8OnUpdateHook/types/loaders/PreAkiModLoader.d.ts @@ -0,0 +1,64 @@ +import { DependencyContainer } from "tsyringe"; +import { ICoreConfig } from "../models/spt/config/ICoreConfig"; +import { ModLoader } from "../models/spt/mod/IMod"; +import { IModLoader } from "../models/spt/mod/IModLoader"; +import { IPackageJsonData } from "../models/spt/mod/IPackageJsonData"; +import { ILogger } from "../models/spt/utils/ILogger"; +import { ConfigServer } from "../servers/ConfigServer"; +import { ModCompilerService } from "../services/ModCompilerService"; +import { JsonUtil } from "../utils/JsonUtil"; +import { VFS } from "../utils/VFS"; +import { BundleLoader } from "./BundleLoader"; +export declare class PreAkiModLoader implements IModLoader { + protected logger: ILogger; + protected vfs: VFS; + protected jsonUtil: JsonUtil; + protected modCompilerService: ModCompilerService; + protected bundleLoader: BundleLoader; + protected configServer: ConfigServer; + protected static container: DependencyContainer; + protected readonly basepath = "user/mods/"; + protected imported: Record; + protected akiConfig: ICoreConfig; + constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, configServer: ConfigServer); + load(container: DependencyContainer): Promise; + getBundles(local: boolean): string; + getBundle(key: string, local: boolean): void; + /** + * Returns a list of mods with preserved load order + * @returns Array of mod names in load order + */ + getImportedModsNames(): string[]; + getModPath(mod: string): string; + protected importClass(name: string, filepath: string, container: DependencyContainer): void; + protected importMods(): Promise; + /** + * + * @param mods Get an array of broken/invalid mods by name + * @returns Mod names array + */ + protected getBrokenMods(mods: string[]): string[]; + /** + * Get packageJson data for mods + * @param mods mods to get packageJson for + * @returns dictionary + */ + protected getModsPackageData(mods: string[]): Record; + /** + * Does mod have "delayedLoad(" string in its entry class + * @param modFolderName folder name + * @param modToValidate package.json details + * @returns boolean + */ + protected isModSpt3XXCompatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; + protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; + protected executeMods(container: DependencyContainer): void; + sortModsLoadOrder(): string[]; + protected addMod(mod: string): Promise; + protected areModDependenciesFulfilled(pkg: IPackageJsonData, loadedMods: Record): boolean; + protected isModCompatible(mod: IPackageJsonData, loadedMods: Record): boolean; + protected validMod(mod: string): boolean; + protected getLoadOrderRecursive(mod: string, result: Record, visited: Record): void; + protected getLoadOrder(mods: Record): Record; + getContainer(): DependencyContainer; +} diff --git a/TypeScript/8OnUpdateHook/types/models/eft/common/IGlobals.d.ts b/TypeScript/8OnUpdateHook/types/models/eft/common/IGlobals.d.ts index 456895c..9d28dbc 100644 --- a/TypeScript/8OnUpdateHook/types/models/eft/common/IGlobals.d.ts +++ b/TypeScript/8OnUpdateHook/types/models/eft/common/IGlobals.d.ts @@ -1128,8 +1128,11 @@ export interface Inertia { SprintAccelerationLimits: xyz; SideTime: xyz; DiagonalTime: xyz; + MaxTimeWithoutInput: xyz; MinDirectionBlendTime: number; - MoveTime: number; + MoveTimeRange: xyz; + ProneDirectionAccelerationRange: xyz; + ProneSpeedAccelerationRange: xyz; MinMovementAccelerationRangeRight: xyz; MaxMovementAccelerationRangeRight: xyz; } diff --git a/TypeScript/8OnUpdateHook/types/models/eft/common/ILocationBase.d.ts b/TypeScript/8OnUpdateHook/types/models/eft/common/ILocationBase.d.ts index ad48d32..b1dd448 100644 --- a/TypeScript/8OnUpdateHook/types/models/eft/common/ILocationBase.d.ts +++ b/TypeScript/8OnUpdateHook/types/models/eft/common/ILocationBase.d.ts @@ -26,6 +26,7 @@ export interface ILocationBase { DisabledForScav: boolean; DisabledScavExits: string; Enabled: boolean; + EnableCoop: boolean; GlobalLootChanceModifier: number; IconX: number; IconY: number; @@ -41,6 +42,7 @@ export interface ILocationBase { MinDistToFreePoint: number; MinMaxBots: MinMaxBot[]; MinPlayers: number; + MaxCoopGroup: number; Name: string; NewSpawn: boolean; OcculsionCullingEnabled: boolean; @@ -48,6 +50,8 @@ export interface ILocationBase { OpenZones: string; Preview: Preview; RequiredPlayerLevel: number; + PmcMaxPlayersInGroup: number; + ScavMaxPlayersInGroup: number; Rules: string; SafeLocation: boolean; Scene: Scene; @@ -55,7 +59,8 @@ export interface ILocationBase { UnixDateTime: number; _Id: string; doors: any[]; - escape_time_limit: number; + EscapeTimeLimit: number; + EscapeTimeLimitCoop: number; exit_access_time: number; exit_count: number; exit_time: number; @@ -63,6 +68,7 @@ export interface ILocationBase { filter_ex: string[]; limits: ILimit[]; matching_min_seconds: number; + GenerateLocalLootCache: boolean; maxItemCountInLocation: MaxItemCountInLocation[]; sav_summon_seconds: number; tmp_location_field_remove_me: number; @@ -106,6 +112,7 @@ export interface BossLocationSpawn { BossName: string; BossPlayer: boolean; BossZone: string; + RandomTimeSpawn: boolean; Time: number; TriggerId: string; TriggerName: string; diff --git a/TypeScript/8OnUpdateHook/types/models/eft/common/IPmcData.d.ts b/TypeScript/8OnUpdateHook/types/models/eft/common/IPmcData.d.ts index adc2aa5..56bf07f 100644 --- a/TypeScript/8OnUpdateHook/types/models/eft/common/IPmcData.d.ts +++ b/TypeScript/8OnUpdateHook/types/models/eft/common/IPmcData.d.ts @@ -6,7 +6,7 @@ import { MemberCategory } from "../../enums/MemberCategory"; export interface IPmcData { _id: string; aid: string; - savage: string; + savage?: string; Info: Info; Customization: Customization; Health: Health; @@ -28,13 +28,6 @@ export interface IPmcData { CarExtractCounts: CarExtractCounts; SurvivorClass: SurvivorClass; } -export declare enum SurvivorClass { - Unknown = 0, - Neutralizer = 1, - Marauder = 2, - Paramedic = 3, - Survivor = 4 -} export interface Info { EntryPoint: string; Nickname: string; @@ -56,6 +49,9 @@ export interface Info { Bans: IBan[]; BannedState: boolean; BannedUntil: number; + NeedWipeOptions: any[]; + lastCompletedWipe: LastCompleted; + lastCompletedEvent?: LastCompleted; } export interface Settings { Role: string; @@ -339,3 +335,13 @@ export interface RagfairInfo { } export interface CarExtractCounts { } +export declare enum SurvivorClass { + Unknown = 0, + Neutralizer = 1, + Marauder = 2, + Paramedic = 3, + Survivor = 4 +} +export interface LastCompleted { + $oid: string; +} diff --git a/TypeScript/8OnUpdateHook/types/models/eft/common/tables/IProfileTemplate.d.ts b/TypeScript/8OnUpdateHook/types/models/eft/common/tables/IProfileTemplate.d.ts new file mode 100644 index 0000000..c445e92 --- /dev/null +++ b/TypeScript/8OnUpdateHook/types/models/eft/common/tables/IProfileTemplate.d.ts @@ -0,0 +1,23 @@ +import { Dialogue, WeaponBuild } from "../../profile/IAkiProfile"; +import { IPmcData } from "../IPmcData"; +export interface IProfileTemplates { + Standard: IProfileSides; + "Left Behind": IProfileSides; + "Prepare To Escape": IProfileSides; + "Edge Of Darkness": IProfileSides; +} +export interface IProfileSides { + usec: TemplateSide; + bear: TemplateSide; +} +export interface TemplateSide { + character: IPmcData; + suits: string[]; + dialogues: Record; + weaponbuilds: WeaponBuild[]; + trader: ProfileTraderTemplate; +} +export interface ProfileTraderTemplate { + initialStanding: number; + initialSalesSum: number; +} diff --git a/TypeScript/8OnUpdateHook/types/models/eft/common/tables/IQuest.d.ts b/TypeScript/8OnUpdateHook/types/models/eft/common/tables/IQuest.d.ts index e1fc888..942339b 100644 --- a/TypeScript/8OnUpdateHook/types/models/eft/common/tables/IQuest.d.ts +++ b/TypeScript/8OnUpdateHook/types/models/eft/common/tables/IQuest.d.ts @@ -23,6 +23,7 @@ export interface IQuest { status: string; KeyQuest: boolean; changeQuestMessageText: string; + side: string; } export interface Conditions { Started: AvailableForConditions[]; @@ -56,6 +57,7 @@ export interface AvailableForProps { plantTime?: number; zoneId?: string; type?: boolean; + countInRaid?: boolean; } export interface AvailableForCounter { id: string; diff --git a/TypeScript/8OnUpdateHook/types/models/eft/common/tables/ITemplateItem.d.ts b/TypeScript/8OnUpdateHook/types/models/eft/common/tables/ITemplateItem.d.ts index 934ea7d..23a1a14 100644 --- a/TypeScript/8OnUpdateHook/types/models/eft/common/tables/ITemplateItem.d.ts +++ b/TypeScript/8OnUpdateHook/types/models/eft/common/tables/ITemplateItem.d.ts @@ -50,6 +50,7 @@ export interface Props { UnlootableFromSide?: string[]; AnimationVariantsNumber?: number; DiscardingBlock?: boolean; + DropSoundType?: string; RagFairCommissionModifier?: number; IsAlwaysAvailableForInsurance?: boolean; DiscardLimit?: number; @@ -89,7 +90,7 @@ export interface Props { SightModesCount?: number; OpticCalibrationDistances?: number[]; ScopesCount?: number; - AimSensitivity: any; + AimSensitivity?: number | number[][]; Zooms?: number[][]; CalibrationDistances?: number[][]; Intensity?: number; @@ -200,6 +201,9 @@ export interface Props { MinRepairDegradation?: number; MaxRepairDegradation?: number; IronSightRange?: number; + IsFlareGun?: boolean; + IsGrenadeLauncher?: boolean; + IsOneoff?: boolean; MustBoltBeOpennedForExternalReload?: boolean; MustBoltBeOpennedForInternalReload?: boolean; BoltAction?: boolean; diff --git a/TypeScript/8OnUpdateHook/types/models/eft/game/IReportNicknameRequestData.d.ts b/TypeScript/8OnUpdateHook/types/models/eft/game/IReportNicknameRequestData.d.ts new file mode 100644 index 0000000..087c58b --- /dev/null +++ b/TypeScript/8OnUpdateHook/types/models/eft/game/IReportNicknameRequestData.d.ts @@ -0,0 +1,3 @@ +export interface IReportNicknameRequestData { + uid: string; +} diff --git a/TypeScript/8OnUpdateHook/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts b/TypeScript/8OnUpdateHook/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts new file mode 100644 index 0000000..bf209c6 --- /dev/null +++ b/TypeScript/8OnUpdateHook/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts @@ -0,0 +1 @@ +export declare type IGetInsuranceCostResponseData = Record>; diff --git a/TypeScript/8OnUpdateHook/types/models/eft/match/IGetGroupStatusRequestData.d.ts b/TypeScript/8OnUpdateHook/types/models/eft/match/IGetGroupStatusRequestData.d.ts new file mode 100644 index 0000000..cbdb77f --- /dev/null +++ b/TypeScript/8OnUpdateHook/types/models/eft/match/IGetGroupStatusRequestData.d.ts @@ -0,0 +1,8 @@ +export interface IGetGroupStatusRequestData { + location: string; + savage: boolean; + dt: string; + keyId: string; + raidMode: string; + startInGroup: boolean; +} diff --git a/TypeScript/8OnUpdateHook/types/models/eft/match/IJoinMatchRequestData.d.ts b/TypeScript/8OnUpdateHook/types/models/eft/match/IJoinMatchRequestData.d.ts new file mode 100644 index 0000000..cd34f7b --- /dev/null +++ b/TypeScript/8OnUpdateHook/types/models/eft/match/IJoinMatchRequestData.d.ts @@ -0,0 +1,12 @@ +export interface IJoinMatchRequestData { + location: string; + savage: boolean; + dt: string; + servers: Server[]; + keyId: string; +} +export interface Server { + ping: number; + ip: string; + port: string; +} diff --git a/TypeScript/8OnUpdateHook/types/models/eft/match/IJoinMatchResult.d.ts b/TypeScript/8OnUpdateHook/types/models/eft/match/IJoinMatchResult.d.ts new file mode 100644 index 0000000..df695f4 --- /dev/null +++ b/TypeScript/8OnUpdateHook/types/models/eft/match/IJoinMatchResult.d.ts @@ -0,0 +1,11 @@ +export interface IJoinMatchResult { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; + version: string; + location: string; + gamemode: string; + shortid: string; +} diff --git a/TypeScript/8OnUpdateHook/types/models/eft/match/IStartOffineRaidRequestData.d.ts b/TypeScript/8OnUpdateHook/types/models/eft/match/IStartOffineRaidRequestData.d.ts index 84bccc8..7cc457c 100644 --- a/TypeScript/8OnUpdateHook/types/models/eft/match/IStartOffineRaidRequestData.d.ts +++ b/TypeScript/8OnUpdateHook/types/models/eft/match/IStartOffineRaidRequestData.d.ts @@ -1,6 +1,5 @@ export interface IStartOfflineRaidRequestData { locationName: string; - entryPoint: string; startTime: number; dateTime: string; gameSettings: GameSettings; diff --git a/TypeScript/8OnUpdateHook/types/models/eft/profile/GetProfileStatusResponseData.d.ts b/TypeScript/8OnUpdateHook/types/models/eft/profile/GetProfileStatusResponseData.d.ts new file mode 100644 index 0000000..eee9b4f --- /dev/null +++ b/TypeScript/8OnUpdateHook/types/models/eft/profile/GetProfileStatusResponseData.d.ts @@ -0,0 +1,11 @@ +export interface GetProfileStatusResponseData { + maxPveCountExceeded: false; + profiles: ProfileData[]; +} +export interface ProfileData { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; +} diff --git a/TypeScript/8OnUpdateHook/types/models/eft/ragfair/IGetOffersResult.d.ts b/TypeScript/8OnUpdateHook/types/models/eft/ragfair/IGetOffersResult.d.ts index 1c11422..fbc631d 100644 --- a/TypeScript/8OnUpdateHook/types/models/eft/ragfair/IGetOffersResult.d.ts +++ b/TypeScript/8OnUpdateHook/types/models/eft/ragfair/IGetOffersResult.d.ts @@ -1,6 +1,6 @@ import { IRagfairOffer } from "./IRagfairOffer"; export interface IGetOffersResult { - categories: Record; + categories?: Record; offers: IRagfairOffer[]; offersCount: number; selectedCategory: string; diff --git a/TypeScript/8OnUpdateHook/types/models/enums/QuestStatus.d.ts b/TypeScript/8OnUpdateHook/types/models/enums/QuestStatus.d.ts deleted file mode 100644 index 6335c73..0000000 --- a/TypeScript/8OnUpdateHook/types/models/enums/QuestStatus.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -export declare enum QuestStatus { - Locked = 0, - AvailableForStart = 1, - Started = 2, - AvailableForFinish = 3, - Success = 4, - Fail = 5, - FailRestartable = 6, - MarkedAsFailed = 7 -} diff --git a/TypeScript/8OnUpdateHook/types/models/external/IAfterDBLoadMod.d.ts b/TypeScript/8OnUpdateHook/types/models/external/IAfterDBLoadMod.d.ts deleted file mode 100644 index 7f08b9e..0000000 --- a/TypeScript/8OnUpdateHook/types/models/external/IAfterDBLoadMod.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IAfterDBLoadMod { - loadAfterDbInit(container: DependencyContainer): void; -} diff --git a/TypeScript/8OnUpdateHook/types/models/external/IPostAkiLoadMod.d.ts b/TypeScript/8OnUpdateHook/types/models/external/IPostAkiLoadMod.d.ts new file mode 100644 index 0000000..f6950e8 --- /dev/null +++ b/TypeScript/8OnUpdateHook/types/models/external/IPostAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostAkiLoadMod { + postAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/8OnUpdateHook/types/models/external/IPostDBLoadMod.d.ts b/TypeScript/8OnUpdateHook/types/models/external/IPostDBLoadMod.d.ts new file mode 100644 index 0000000..ca7c682 --- /dev/null +++ b/TypeScript/8OnUpdateHook/types/models/external/IPostDBLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostDBLoadMod { + postDBLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/8OnUpdateHook/types/models/external/IPreAkiLoadMod.d.ts b/TypeScript/8OnUpdateHook/types/models/external/IPreAkiLoadMod.d.ts new file mode 100644 index 0000000..ae7579e --- /dev/null +++ b/TypeScript/8OnUpdateHook/types/models/external/IPreAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPreAkiLoadMod { + preAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/8OnUpdateHook/types/models/external/mod.d.ts b/TypeScript/8OnUpdateHook/types/models/external/mod.d.ts deleted file mode 100644 index 47939e9..0000000 --- a/TypeScript/8OnUpdateHook/types/models/external/mod.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IMod { - load(container: DependencyContainer): void; - delayedLoad(container: DependencyContainer): void; -} diff --git a/TypeScript/8OnUpdateHook/types/models/spt/config/IBotConfig.d.ts b/TypeScript/8OnUpdateHook/types/models/spt/config/IBotConfig.d.ts index 5fb9d93..f8cf39b 100644 --- a/TypeScript/8OnUpdateHook/types/models/spt/config/IBotConfig.d.ts +++ b/TypeScript/8OnUpdateHook/types/models/spt/config/IBotConfig.d.ts @@ -18,6 +18,7 @@ export interface PresetBatch { bossKojaniy: number; bossSanitar: number; bossTagilla: number; + bossKnight: number; bossTest: number; cursedAssault: number; followerBully: number; @@ -28,6 +29,8 @@ export interface PresetBatch { followerKojaniy: number; followerSanitar: number; followerTagilla: number; + followerBirdEye: number; + followerBigPipe: number; followerTest: number; marksman: number; pmcBot: number; diff --git a/TypeScript/8OnUpdateHook/types/models/spt/config/IRagfairConfig.d.ts b/TypeScript/8OnUpdateHook/types/models/spt/config/IRagfairConfig.d.ts index 2d151ca..8518252 100644 --- a/TypeScript/8OnUpdateHook/types/models/spt/config/IRagfairConfig.d.ts +++ b/TypeScript/8OnUpdateHook/types/models/spt/config/IRagfairConfig.d.ts @@ -30,6 +30,7 @@ export interface Dynamic { expiredOfferThreshold: number; offerItemCount: MinMax; price: MinMax; + presetPrice: MinMax; endTimeSeconds: MinMax; condition: Condition; stackablePercent: MinMax; diff --git a/TypeScript/8OnUpdateHook/types/models/spt/server/IDatabaseTables.d.ts b/TypeScript/8OnUpdateHook/types/models/spt/server/IDatabaseTables.d.ts index e0d3fdd..9978459 100644 --- a/TypeScript/8OnUpdateHook/types/models/spt/server/IDatabaseTables.d.ts +++ b/TypeScript/8OnUpdateHook/types/models/spt/server/IDatabaseTables.d.ts @@ -6,6 +6,7 @@ import { ICustomizationItem } from "../../eft/common/tables/ICustomizationItem"; import { IHandbookBase } from "../../eft/common/tables/IHandbookBase"; import { ILootBase } from "../../eft/common/tables/ILootBase"; import { IMatch } from "../../eft/common/tables/IMatch"; +import { IProfileTemplates } from "../../eft/common/tables/IProfileTemplate"; import { IQuest } from "../../eft/common/tables/IQuest"; import { IRepeatableQuestDatabase } from "../../eft/common/tables/IRepeatableQuests"; import { ITemplateItem } from "../../eft/common/tables/ITemplateItem"; @@ -39,10 +40,13 @@ export interface IDatabaseTables { items: Record; quests: IQuest[]; repeatableQuests: IRepeatableQuestDatabase; + /** DEPRECATED - Items file found in the client, massivly out of date compared to templates.items, try not to use this, remove ASAP*/ clientItems: Record; handbook: IHandbookBase; customization: Record; - profiles: any; + /** The profile templates listed in the launcher on profile creation, split by account type (e.g. Standard) then side (e.g. bear/usec) */ + profiles: IProfileTemplates; + /** Flea prices of items - gathered from online flea market dump */ prices: Record; }; traders?: Record; diff --git a/TypeScript/8OnUpdateHook/types/servers/RagfairServer.d.ts b/TypeScript/8OnUpdateHook/types/servers/RagfairServer.d.ts index 60c92b5..bc86cdb 100644 --- a/TypeScript/8OnUpdateHook/types/servers/RagfairServer.d.ts +++ b/TypeScript/8OnUpdateHook/types/servers/RagfairServer.d.ts @@ -17,7 +17,8 @@ export declare class RagfairServer { constructor(logger: ILogger, ragfairOfferGenerator: RagfairOfferGenerator, ragfairOfferService: RagfairOfferService, ragfairCategoriesService: RagfairCategoriesService, ragfairRequiredItemsService: RagfairRequiredItemsService, configServer: ConfigServer); load(): void; update(): void; - getCategories(): Record; + getAllCategories(): Record; + getBespokeCategories(offers: IRagfairOffer[]): Record; /** * Disable/Hide an offer from flea * @param offerId diff --git a/TypeScript/8OnUpdateHook/types/services/RagfairCategoriesService.d.ts b/TypeScript/8OnUpdateHook/types/services/RagfairCategoriesService.d.ts index 09956cc..83910e5 100644 --- a/TypeScript/8OnUpdateHook/types/services/RagfairCategoriesService.d.ts +++ b/TypeScript/8OnUpdateHook/types/services/RagfairCategoriesService.d.ts @@ -1,10 +1,40 @@ import { IRagfairOffer } from "../models/eft/ragfair/IRagfairOffer"; +import { ILogger } from "../models/spt/utils/ILogger"; export declare class RagfairCategoriesService { - updateCategories(offers: IRagfairOffer[]): void; + protected logger: ILogger; protected categories: Record; - getCategories(): Record; - getCategoryByItemId(itemId: string): number; - resetCategories(): void; - setCategoryValue(itemId: string, newValue: number): void; - incrementCategory(itemId: string): void; + constructor(logger: ILogger); + /** + * Get all flea categories and their count of offers + * @returns item categories and count + */ + getAllCategories(): Record; + /** + * With the supplied items, get custom categories + * @returns a custom list of categories + */ + getBespokeCategories(offers: IRagfairOffer[]): Record; + /** + * Take an array of ragfair offers and create a dictionary of items with thier corrisponding offer count + * @param offers ragfair offers + * @returns categories and count + */ + protected processOffersIntoCategories(offers: IRagfairOffer[]): Record; + /** + * Increment or decrement a category array + * @param offer offer to process + * @param categories categories to update + * @param increment should item be incremented or decremented + */ + protected addOrIncrementCategory(offer: IRagfairOffer, categories: Record, increment?: boolean): void; + /** + * Increase category count by 1 + * @param offer + */ + incrementCategory(offer: IRagfairOffer): void; + /** + * Reduce category count by 1 + * @param offer + */ + decrementCategory(offer: IRagfairOffer): void; } diff --git a/TypeScript/8OnUpdateHook/types/services/RagfairOfferService.d.ts b/TypeScript/8OnUpdateHook/types/services/RagfairOfferService.d.ts index 7afbf8c..7398a8f 100644 --- a/TypeScript/8OnUpdateHook/types/services/RagfairOfferService.d.ts +++ b/TypeScript/8OnUpdateHook/types/services/RagfairOfferService.d.ts @@ -11,12 +11,14 @@ import { DatabaseServer } from "../servers/DatabaseServer"; import { SaveServer } from "../servers/SaveServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; import { TimeUtil } from "../utils/TimeUtil"; +import { RagfairCategoriesService } from "./RagfairCategoriesService"; export declare class RagfairOfferService { protected logger: ILogger; protected timeUtil: TimeUtil; protected databaseServer: DatabaseServer; protected saveServer: SaveServer; protected ragfairServerHelper: RagfairServerHelper; + protected ragfairCategoriesService: RagfairCategoriesService; protected profileHelper: ProfileHelper; protected itemEventRouter: ItemEventRouter; protected httpResponse: HttpResponseUtil; @@ -26,12 +28,16 @@ export declare class RagfairOfferService { protected expiredOffers: Item[]; protected offers: IRagfairOffer[]; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, ragfairCategoriesService: RagfairCategoriesService, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + /** + * Get all offers + * @returns IRagfairOffer array + */ getOffers(): IRagfairOffer[]; getOfferByOfferId(offerId: string): IRagfairOffer; getOffersOfType(templateId: string): IRagfairOffer[]; addOffer(offer: IRagfairOffer): void; - addOfferToExpired(offer: Item): void; + addOfferToExpired(staleOffer: IRagfairOffer): void; setTraderUpdateStatus(traderId: string, shouldUpdate: boolean): void; shouldTraderBeUpdated(traderID: string): boolean; getExpiredOfferCount(): number; diff --git a/TypeScript/8OnUpdateHook/types/services/RagfairPriceService.d.ts b/TypeScript/8OnUpdateHook/types/services/RagfairPriceService.d.ts index 5256b99..e3168a6 100644 --- a/TypeScript/8OnUpdateHook/types/services/RagfairPriceService.d.ts +++ b/TypeScript/8OnUpdateHook/types/services/RagfairPriceService.d.ts @@ -28,5 +28,19 @@ export declare class RagfairPriceService { getFleaPriceForItem(tplId: string): number; getBarterPrice(barterScheme: IBarterScheme[]): number; getDynamicOfferPrice(items: Item[], desiredCurrency: string): number; + /** + * Multiply the price by a randomised curve where n = 2, shift = 2 + * @param existingPrice price to alter + * @param isPreset is the item we're multiplying a preset + * @returns multiplied price + */ + protected randomisePrice(existingPrice: number, isPreset: boolean): number; + /** + * Calculate the cost of a weapon preset by adding together the price of its mods + base price of default weapon preset + * @param item base weapon + * @param items weapon plus mods + * @param existingPrice price of existing base weapon + * @returns + */ getWeaponPresetPrice(item: Item, items: Item[], existingPrice: number): number; } diff --git a/TypeScript/8OnUpdateHook/types/utils/Watermark.d.ts b/TypeScript/8OnUpdateHook/types/utils/Watermark.d.ts index 111bdd0..c6dc120 100644 --- a/TypeScript/8OnUpdateHook/types/utils/Watermark.d.ts +++ b/TypeScript/8OnUpdateHook/types/utils/Watermark.d.ts @@ -28,7 +28,12 @@ export declare class Watermark { protected text: string[]; protected versionLabel: string; initialize(): void; - getVersionTag(): string; + /** + * Get a version string (x.x.x) or (x.x.x-BLEEDINGEDGE) OR (X.X.X (18xxx)) + * @param withEftVersion Include the eft version this spt version was made for + * @returns string + */ + getVersionTag(withEftVersion?: boolean): string; getVersionLabel(): string; /** Set window title */ setTitle(): void; diff --git a/TypeScript/9RouterHooks/package.json b/TypeScript/9RouterHooks/package.json index ba1e8ad..edaafc1 100644 --- a/TypeScript/9RouterHooks/package.json +++ b/TypeScript/9RouterHooks/package.json @@ -4,7 +4,7 @@ "main": "src/mod.js", "license": "MIT", "author": "Chomp", - "akiVersion": "3.0.1", + "akiVersion": "3.1.0", "scripts": { "setup:environment": "npm i", "build:unzipped": "copyfiles -e \"./node_modules/**/*.*\" -e \"./dist/**/*.*\" -e \"./package-lock.json\" -e \"./tsconfig.json\" -e \"./README.txt\" -e \"./mod.code-workspace\" \"./**/*.*\" ./dist", diff --git a/TypeScript/9RouterHooks/src/mod.ts b/TypeScript/9RouterHooks/src/mod.ts index 5cfb06e..be5db05 100644 --- a/TypeScript/9RouterHooks/src/mod.ts +++ b/TypeScript/9RouterHooks/src/mod.ts @@ -1,13 +1,12 @@ import { DependencyContainer } from "tsyringe"; -import type { IMod } from "@spt-aki/models/external/mod"; +import type { IPreAkiLoadMod } from "@spt-aki/models/external/IPreAkiLoadMod"; import type { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import type {DynamicRouterModService} from "@spt-aki/services/mod/dynamicRouter/DynamicRouterModService"; import type {StaticRouterModService} from "@spt-aki/services/mod/staticRouter/StaticRouterModService"; -class Mod implements IMod +class Mod implements IPreAkiLoadMod { - public load(container: DependencyContainer): void - { + public preAkiLoad(container: DependencyContainer): void { const logger = container.resolve("WinstonLogger"); const dynamicRouterModService = container.resolve("DynamicRouterModService"); const staticRouterModService = container.resolve("StaticRouterModService"); @@ -77,11 +76,5 @@ class Mod implements IMod ); } - - // not used in this example - public delayedLoad(container: DependencyContainer): void - { - return; - } } module.exports = {mod: new Mod()} \ No newline at end of file diff --git a/TypeScript/9RouterHooks/types/callbacks/GameCallbacks.d.ts b/TypeScript/9RouterHooks/types/callbacks/GameCallbacks.d.ts index d5cad76..06da1b5 100644 --- a/TypeScript/9RouterHooks/types/callbacks/GameCallbacks.d.ts +++ b/TypeScript/9RouterHooks/types/callbacks/GameCallbacks.d.ts @@ -2,6 +2,7 @@ import { GameController } from "../controllers/GameController"; import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse"; import { IGameEmptyCrcRequestData } from "../models/eft/game/IGameEmptyCrcRequestData"; +import { IReportNicknameRequestData } from "../models/eft/game/IReportNicknameRequestData"; import { IVersionValidateRequestData } from "../models/eft/game/IVersionValidateRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; @@ -20,5 +21,6 @@ declare class GameCallbacks { validateGameVersion(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; gameKeepalive(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; getVersion(url: string, info: IEmptyRequestData, sessionID: string): string; + reportNickname(url: string, info: IReportNicknameRequestData, sessionID: string): INullResponseData; } export { GameCallbacks }; diff --git a/TypeScript/9RouterHooks/types/callbacks/HealthCallbacks.d.ts b/TypeScript/9RouterHooks/types/callbacks/HealthCallbacks.d.ts index 8f7b89d..8672be7 100644 --- a/TypeScript/9RouterHooks/types/callbacks/HealthCallbacks.d.ts +++ b/TypeScript/9RouterHooks/types/callbacks/HealthCallbacks.d.ts @@ -13,6 +13,13 @@ export declare class HealthCallbacks { protected profileHelper: ProfileHelper; protected healthController: HealthController; constructor(httpResponse: HttpResponseUtil, profileHelper: ProfileHelper, healthController: HealthController); + /** + * Custom aki server request found in modules/HealthSynchronizer.cs + * @param url + * @param info HealthListener.Instance.CurrentHealth class + * @param sessionID session id + * @returns empty response, no data sent back to client + */ syncHealth(url: string, info: ISyncHealthRequestData, sessionID: string): IGetBodyResponseData; offraidEat(pmcData: IPmcData, body: IOffraidEatRequestData, sessionID: string): IItemEventRouterResponse; offraidHeal(pmcData: IPmcData, body: IOffraidHealRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/9RouterHooks/types/callbacks/InsuranceCallbacks.d.ts b/TypeScript/9RouterHooks/types/callbacks/InsuranceCallbacks.d.ts index 520d0eb..6819960 100644 --- a/TypeScript/9RouterHooks/types/callbacks/InsuranceCallbacks.d.ts +++ b/TypeScript/9RouterHooks/types/callbacks/InsuranceCallbacks.d.ts @@ -3,6 +3,7 @@ import { OnLoadOnUpdate } from "../di/OnLoadOnUpdate"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -17,7 +18,7 @@ export declare class InsuranceCallbacks extends OnLoadOnUpdate { protected insuranceConfig: IInsuranceConfig; constructor(insuranceController: InsuranceController, insuranceService: InsuranceService, httpResponse: HttpResponseUtil, configServer: ConfigServer); onLoad(): void; - getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; + getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; onUpdate(secondsSinceLastRun: number): boolean; getRoute(): string; diff --git a/TypeScript/9RouterHooks/types/callbacks/MatchCallbacks.d.ts b/TypeScript/9RouterHooks/types/callbacks/MatchCallbacks.d.ts index 083c1f5..158d8df 100644 --- a/TypeScript/9RouterHooks/types/callbacks/MatchCallbacks.d.ts +++ b/TypeScript/9RouterHooks/types/callbacks/MatchCallbacks.d.ts @@ -1,9 +1,13 @@ import { MatchController } from "../controllers/MatchController"; +import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { DatabaseServer } from "../servers/DatabaseServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; @@ -16,18 +20,18 @@ export declare class MatchCallbacks { constructor(httpResponse: HttpResponseUtil, jsonUtil: JsonUtil, matchController: MatchController, databaseServer: DatabaseServer); updatePing(url: string, info: any, sessionID: string): INullResponseData; exitMatch(url: string, info: any, sessionID: string): INullResponseData; - exitToMenu(url: string, info: any, sessionID: string): INullResponseData; - startGroupSearch(url: string, info: any, sessionID: string): INullResponseData; - stopGroupSearch(url: string, info: any, sessionID: string): INullResponseData; + exitToMenu(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + startGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; + stopGroupSearch(url: string, info: IEmptyRequestData, sessionID: string): INullResponseData; sendGroupInvite(url: string, info: any, sessionID: string): INullResponseData; acceptGroupInvite(url: string, info: any, sessionID: string): INullResponseData; cancelGroupInvite(url: string, info: any, sessionID: string): INullResponseData; putMetrics(url: string, info: any, sessionID: string): INullResponseData; getProfile(url: string, info: IGetProfileRequestData, sessionID: string): IGetBodyResponseData; - serverAvailable(url: string, info: any, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; - joinMatch(url: string, info: any, sessionID: string): IGetBodyResponseData; + serverAvailable(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData | IGetBodyResponseData; + joinMatch(url: string, info: IJoinMatchRequestData, sessionID: string): IGetBodyResponseData; getMetrics(url: string, info: any, sessionID: string): IGetBodyResponseData; - getGroupStatus(url: string, info: any, sessionID: string): IGetBodyResponseData; + getGroupStatus(url: string, info: IGetGroupStatusRequestData, sessionID: string): IGetBodyResponseData; createGroup(url: string, info: any, sessionID: string): IGetBodyResponseData; deleteGroup(url: string, info: any, sessionID: string): INullResponseData; startOfflineRaid(url: string, info: IStartOfflineRaidRequestData, sessionID: string): INullResponseData; diff --git a/TypeScript/9RouterHooks/types/callbacks/ModCallbacks.d.ts b/TypeScript/9RouterHooks/types/callbacks/ModCallbacks.d.ts index 866abf7..58342dc 100644 --- a/TypeScript/9RouterHooks/types/callbacks/ModCallbacks.d.ts +++ b/TypeScript/9RouterHooks/types/callbacks/ModCallbacks.d.ts @@ -1,5 +1,5 @@ import { OnLoad } from "../di/OnLoad"; -import { DelayedModLoader } from "../loaders/DelayedModLoader"; +import { PostAkiModLoader } from "../loaders/PostAkiModLoader"; import { IHttpConfig } from "../models/spt/config/IHttpConfig"; import { IHttpServer } from "../models/spt/server/IHttpServer"; import { ILogger } from "../models/spt/utils/ILogger"; @@ -9,10 +9,10 @@ declare class ModCallbacks extends OnLoad { protected logger: ILogger; protected httpResponse: HttpResponseUtil; protected httpServer: IHttpServer; - protected modLoader: DelayedModLoader; + protected postAkiModLoader: PostAkiModLoader; protected configServer: ConfigServer; protected httpConfig: IHttpConfig; - constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, modLoader: DelayedModLoader, configServer: ConfigServer); + constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, postAkiModLoader: PostAkiModLoader, configServer: ConfigServer); onLoad(): void; getRoute(): string; sendBundle(sessionID: string, req: any, resp: any, body: any): void; diff --git a/TypeScript/9RouterHooks/types/callbacks/ProfileCallbacks.d.ts b/TypeScript/9RouterHooks/types/callbacks/ProfileCallbacks.d.ts index 116e7c5..6a86fc0 100644 --- a/TypeScript/9RouterHooks/types/callbacks/ProfileCallbacks.d.ts +++ b/TypeScript/9RouterHooks/types/callbacks/ProfileCallbacks.d.ts @@ -3,6 +3,7 @@ import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData"; import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData"; import { INullResponseData } from "../models/eft/httpResponse/INullResponseData"; import { IGetMiniProfileRequestData } from "../models/eft/launcher/IGetMiniProfileRequestData"; +import { GetProfileStatusResponseData } from "../models/eft/profile/GetProfileStatusResponseData"; import { IProfileChangeNicknameRequestData } from "../models/eft/profile/IProfileChangeNicknameRequestData"; import { IProfileChangeVoiceRequestData } from "../models/eft/profile/IProfileChangeVoiceRequestData"; import { IProfileCreateRequestData } from "../models/eft/profile/IProfileCreateRequestData"; @@ -23,7 +24,14 @@ export declare class ProfileCallbacks { changeNickname(url: string, info: IProfileChangeNicknameRequestData, sessionID: string): IGetBodyResponseData; validateNickname(url: string, info: IValidateNicknameRequestData, sessionID: string): IGetBodyResponseData; getReservedNickname(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; - getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; + /** + * Called when creating a character, when you choose a character face/voice + * @param url + * @param info response (empty) + * @param sessionID + * @returns + */ + getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; searchFriend(url: string, info: ISearchFriendRequestData, sessionID: string): IGetBodyResponseData; getMiniProfile(url: string, info: IGetMiniProfileRequestData, sessionID: string): string; getAllMiniProfiles(url: string, info: any, sessionID: string): string; diff --git a/TypeScript/9RouterHooks/types/callbacks/RagfairCallbacks.d.ts b/TypeScript/9RouterHooks/types/callbacks/RagfairCallbacks.d.ts index d5bab8b..da782e1 100644 --- a/TypeScript/9RouterHooks/types/callbacks/RagfairCallbacks.d.ts +++ b/TypeScript/9RouterHooks/types/callbacks/RagfairCallbacks.d.ts @@ -9,6 +9,7 @@ import { IAddOfferRequestData } from "../models/eft/ragfair/IAddOfferRequestData import { IExtendOfferRequestData } from "../models/eft/ragfair/IExtendOfferRequestData"; import { IGetItemPriceResult } from "../models/eft/ragfair/IGetItemPriceResult"; import { IGetMarketPriceRequestData } from "../models/eft/ragfair/IGetMarketPriceRequestData"; +import { IGetOffersResult } from "../models/eft/ragfair/IGetOffersResult"; import { IRemoveOfferRequestData } from "../models/eft/ragfair/IRemoveOfferRequestData"; import { ISearchRequestData } from "../models/eft/ragfair/ISearchRequestData"; import { IRagfairConfig } from "../models/spt/config/IRagfairConfig"; @@ -28,7 +29,7 @@ export declare class RagfairCallbacks extends OnLoadOnUpdate { constructor(httpResponse: HttpResponseUtil, logger: ILogger, jsonUtil: JsonUtil, ragfairServer: RagfairServer, ragfairController: RagfairController, configServer: ConfigServer); onLoad(): void; getRoute(): string; - search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; + search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData; getMarketPrice(url: string, info: IGetMarketPriceRequestData, sessionID: string): IGetBodyResponseData; getItemPrices(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData; addOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/9RouterHooks/types/controllers/GameController.d.ts b/TypeScript/9RouterHooks/types/controllers/GameController.d.ts index 5f516de..f4c3d2c 100644 --- a/TypeScript/9RouterHooks/types/controllers/GameController.d.ts +++ b/TypeScript/9RouterHooks/types/controllers/GameController.d.ts @@ -28,6 +28,11 @@ export declare class GameController { protected addMissingRepeatableQuestsProperty(pmcProfile: IPmcData): void; protected addMissingWeaponRepairSkill(pmcProfile: IPmcData): void; protected addMissingAkiVersionTagToProfile(fullProfile: IAkiProfile): void; + /** + * In 18876 bsg changed the pockets tplid to be one that has 3 additional special slots + * @param pmcProfile + */ + protected updateProfilePocketsToNewId(pmcProfile: IPmcData): void; protected addMissingArmorRepairSkill(pmcProfile: IPmcData): void; protected fixNullTraderSalesSums(pmcProfile: IPmcData): void; protected removeDanglingBackendCounters(pmcProfile: IPmcData): void; diff --git a/TypeScript/9RouterHooks/types/controllers/InsuranceController.d.ts b/TypeScript/9RouterHooks/types/controllers/InsuranceController.d.ts index db2c567..af45442 100644 --- a/TypeScript/9RouterHooks/types/controllers/InsuranceController.d.ts +++ b/TypeScript/9RouterHooks/types/controllers/InsuranceController.d.ts @@ -3,6 +3,7 @@ import { ItemHelper } from "../helpers/ItemHelper"; import { ProfileHelper } from "../helpers/ProfileHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData"; +import { IGetInsuranceCostResponseData } from "../models/eft/insurance/IGetInsuranceCostResponseData"; import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData"; import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse"; import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig"; @@ -33,6 +34,12 @@ export declare class InsuranceController { insuranceService: InsuranceService, configServer: ConfigServer); processReturn(): void; insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse; - cost(info: IGetInsuranceCostRequestData, sessionID: string): any; + /** + * Calculate insurance cost + * @param info request object + * @param sessionID session id + * @returns response object to send to client + */ + cost(info: IGetInsuranceCostRequestData, sessionID: string): IGetInsuranceCostResponseData; doAbsolutelyNothing(): void; } diff --git a/TypeScript/9RouterHooks/types/controllers/InventoryController.d.ts b/TypeScript/9RouterHooks/types/controllers/InventoryController.d.ts index b732aa9..f24ab62 100644 --- a/TypeScript/9RouterHooks/types/controllers/InventoryController.d.ts +++ b/TypeScript/9RouterHooks/types/controllers/InventoryController.d.ts @@ -24,6 +24,8 @@ import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRout import { ILogger } from "../models/spt/utils/ILogger"; import { ItemEventRouter } from "../routers/ItemEventRouter"; import { DatabaseServer } from "../servers/DatabaseServer"; +import { FenceService } from "../services/FenceService"; +import { RagfairOfferService } from "../services/RagfairOfferService"; import { HashUtil } from "../utils/HashUtil"; import { JsonUtil } from "../utils/JsonUtil"; export declare class InventoryController { @@ -31,12 +33,14 @@ export declare class InventoryController { protected hashUtil: HashUtil; protected jsonUtil: JsonUtil; protected databaseServer: DatabaseServer; + protected fenceService: FenceService; protected presetHelper: PresetHelper; protected inventoryHelper: InventoryHelper; + protected ragfairOfferService: RagfairOfferService; protected profileHelper: ProfileHelper; protected paymentHelper: PaymentHelper; protected itemEventRouter: ItemEventRouter; - constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); + constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, fenceService: FenceService, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, ragfairOfferService: RagfairOfferService, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter); /** * Move Item * change location of item with parentId and slotId @@ -93,9 +97,19 @@ export declare class InventoryController { tagItem(pmcData: IPmcData, body: IInventoryTagRequestData, sessionID: string): IItemEventRouterResponse; bindItem(pmcData: IPmcData, body: IInventoryBindRequestData, sessionID: string): IItemEventRouterResponse; /** - * Handles examining of the item * + * Handles examining an item + * @param pmcData player profile + * @param body request object + * @param sessionID session id + * @returns response */ examineItem(pmcData: IPmcData, body: IInventoryExamineRequestData, sessionID: string): IItemEventRouterResponse; + /** + * Get the tplid of an item from the examine request object + * @param body response request + * @returns tplid + */ + protected getItemTpl(body: IInventoryExamineRequestData): string; readEncyclopedia(pmcData: IPmcData, body: IInventoryReadEncyclopediaRequestData, sessionID: string): IItemEventRouterResponse; /** * Handles sorting of Inventory. diff --git a/TypeScript/9RouterHooks/types/controllers/MatchController.d.ts b/TypeScript/9RouterHooks/types/controllers/MatchController.d.ts index c322d96..7ef3fcc 100644 --- a/TypeScript/9RouterHooks/types/controllers/MatchController.d.ts +++ b/TypeScript/9RouterHooks/types/controllers/MatchController.d.ts @@ -2,7 +2,10 @@ import { ProfileHelper } from "../helpers/ProfileHelper"; import { TraderHelper } from "../helpers/TraderHelper"; import { IPmcData } from "../models/eft/common/IPmcData"; import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData"; +import { IGetGroupStatusRequestData } from "../models/eft/match/IGetGroupStatusRequestData"; import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData"; +import { IJoinMatchRequestData } from "../models/eft/match/IJoinMatchRequestData"; +import { IJoinMatchResult } from "../models/eft/match/IJoinMatchResult"; import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData"; import { IInRaidConfig } from "../models/spt/config/IInRaidConfig"; import { IMatchConfig } from "../models/spt/config/IMatchConfig"; @@ -20,11 +23,11 @@ export declare class MatchController { constructor(saveServer: SaveServer, profileHelper: ProfileHelper, matchLocationService: MatchLocationService, traderHelper: TraderHelper, configServer: ConfigServer); getEnabled(): boolean; getProfile(info: IGetProfileRequestData): IPmcData[]; - protected getMatch(location: any): any; createGroup(sessionID: string, info: any): any; deleteGroup(info: any): void; - joinMatch(info: any, sessionID: string): any[]; - getGroupStatus(info: any): any; + joinMatch(info: IJoinMatchRequestData, sessionID: string): IJoinMatchResult[]; + protected getMatch(location: string): any; + getGroupStatus(info: IGetGroupStatusRequestData): any; startOfflineRaid(info: IStartOfflineRaidRequestData, sessionID: string): void; endOfflineRaid(info: IEndOfflineRaidRequestData, sessionID: string): void; } diff --git a/TypeScript/9RouterHooks/types/controllers/RagfairController.d.ts b/TypeScript/9RouterHooks/types/controllers/RagfairController.d.ts index c758593..c4ffc15 100644 --- a/TypeScript/9RouterHooks/types/controllers/RagfairController.d.ts +++ b/TypeScript/9RouterHooks/types/controllers/RagfairController.d.ts @@ -60,6 +60,8 @@ export declare class RagfairController { protected ragfairConfig: IRagfairConfig; constructor(logger: ILogger, timeUtil: TimeUtil, httpResponse: HttpResponseUtil, itemEventRouter: ItemEventRouter, ragfairServer: RagfairServer, ragfairPriceService: RagfairPriceService, databaseServer: DatabaseServer, itemHelper: ItemHelper, saveServer: SaveServer, ragfairSellHelper: RagfairSellHelper, ragfairTaxHelper: RagfairTaxHelper, ragfairSortHelper: RagfairSortHelper, ragfairOfferHelper: RagfairOfferHelper, profileHelper: ProfileHelper, paymentService: PaymentService, handbookHelper: HandbookHelper, paymentHelper: PaymentHelper, inventoryHelper: InventoryHelper, ragfairHelper: RagfairHelper, ragfairOfferService: RagfairOfferService, ragfairRequiredItemsService: RagfairRequiredItemsService, ragfairOfferGenerator: RagfairOfferGenerator, configServer: ConfigServer); getOffers(sessionID: string, info: ISearchRequestData): IGetOffersResult; + protected isLinkedSearch(info: ISearchRequestData): boolean; + protected isRequiredSearch(info: ISearchRequestData): boolean; update(): void; getItemPrice(info: IGetMarketPriceRequestData): IGetItemPriceResult; addPlayerOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse; diff --git a/TypeScript/9RouterHooks/types/generators/BotWeaponGenerator.d.ts b/TypeScript/9RouterHooks/types/generators/BotWeaponGenerator.d.ts index a43b18c..dd3ad69 100644 --- a/TypeScript/9RouterHooks/types/generators/BotWeaponGenerator.d.ts +++ b/TypeScript/9RouterHooks/types/generators/BotWeaponGenerator.d.ts @@ -41,6 +41,13 @@ export declare class BotWeaponGenerator { * @returns */ protected generateExtraMagazines(weaponMods: Item[], weaponTemplate: ITemplateItem, magCounts: MinMax, ammoTpl: string, inventory: PmcInventory): void; + /** + * Get a randomised number of bullets for a specific magazine + * @param magCounts min and max count of magazines + * @param magTemplate magazine to generate bullet count for + * @returns bullet count number + */ + protected getRandomisedBulletCount(magCounts: MinMax, magTemplate: ITemplateItem): number; /** * Get a randomised count of magazines * @param magCounts min and max value returned value can be between diff --git a/TypeScript/9RouterHooks/types/generators/RagfairOfferGenerator.d.ts b/TypeScript/9RouterHooks/types/generators/RagfairOfferGenerator.d.ts index de53ea9..6645c8d 100644 --- a/TypeScript/9RouterHooks/types/generators/RagfairOfferGenerator.d.ts +++ b/TypeScript/9RouterHooks/types/generators/RagfairOfferGenerator.d.ts @@ -18,6 +18,7 @@ import { JsonUtil } from "../utils/JsonUtil"; import { RandomUtil } from "../utils/RandomUtil"; import { TimeUtil } from "../utils/TimeUtil"; import { RagfairAssortGenerator } from "./RagfairAssortGenerator"; +import { RagfairCategoriesService } from "../services/RagfairCategoriesService"; export declare class RagfairOfferGenerator { protected logger: ILogger; protected jsonUtil: JsonUtil; @@ -31,11 +32,12 @@ export declare class RagfairOfferGenerator { protected ragfairAssortGenerator: RagfairAssortGenerator; protected ragfairOfferService: RagfairOfferService; protected ragfairPriceService: RagfairPriceService; + protected ragfairCategoriesService: RagfairCategoriesService; protected fenceService: FenceService; protected itemHelper: ItemHelper; protected configServer: ConfigServer; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); + constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, ragfairCategoriesService: RagfairCategoriesService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer); createOffer(userID: string, time: number, items: Item[], barterScheme: IBarterScheme[], loyalLevel: number, price: number, sellInOnePiece?: boolean): IRagfairOffer; protected getTraderId(userID: string): string; protected getRating(userID: string): number; diff --git a/TypeScript/9RouterHooks/types/helpers/BotGeneratorHelper.d.ts b/TypeScript/9RouterHooks/types/helpers/BotGeneratorHelper.d.ts index e4b0c11..243e7a8 100644 --- a/TypeScript/9RouterHooks/types/helpers/BotGeneratorHelper.d.ts +++ b/TypeScript/9RouterHooks/types/helpers/BotGeneratorHelper.d.ts @@ -29,6 +29,12 @@ export declare class BotGeneratorHelper { protected botConfig: IBotConfig; constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, probabilityHelper: ProbabilityHelper, databaseServer: DatabaseServer, durabilityLimitsHelper: DurabilityLimitsHelper, itemHelper: ItemHelper, inventoryHelper: InventoryHelper, containerHelper: ContainerHelper, configServer: ConfigServer); generateModsForItem(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem, modSpawnChances: ModsChances, isPmc?: boolean): Item[]; + /** + * Is this magazine cylinder related (revolvers and grenade launchers) + * @param magazineParentName the name of the magazines parent + * @returns true if it is cylinder related + */ + magazineIsCylinderRelated(magazineParentName: string): boolean; /** * Get a list of non black-listed cartridges from the PMC bot config * @param modSlot mod item slot @@ -69,6 +75,12 @@ export declare class BotGeneratorHelper { * @param {object} parentTemplate The CylinderMagazine's template */ protected fillCamora(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem): void; + /** + * Take a record of camoras and merge the compatable shells into one array + * @param camorasWithShells camoras we want to merge into one array + * @returns string array of shells fro luitple camora sources + */ + protected mergeCamoraPoolsTogether(camorasWithShells: Record): string[]; generateExtraPropertiesForItem(itemTemplate: ITemplateItem, botRole?: any): { upd?: Upd; }; diff --git a/TypeScript/9RouterHooks/types/loaders/AfterDbModLoader.d.ts b/TypeScript/9RouterHooks/types/loaders/AfterDbModLoader.d.ts deleted file mode 100644 index a9fc286..0000000 --- a/TypeScript/9RouterHooks/types/loaders/AfterDbModLoader.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { OnLoad } from "../di/OnLoad"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class AfterDbModLoader implements OnLoad { - protected initialModLoader: InitialModLoader; - constructor(initialModLoader: InitialModLoader); - onLoad(): void; - getRoute(): string; - getModPath(mod: string): string; - protected executeMods(container: DependencyContainer): void; -} diff --git a/TypeScript/9RouterHooks/types/loaders/DelayedModLoader.d.ts b/TypeScript/9RouterHooks/types/loaders/DelayedModLoader.d.ts deleted file mode 100644 index 2a05604..0000000 --- a/TypeScript/9RouterHooks/types/loaders/DelayedModLoader.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { HandbookController } from "../controllers/HandbookController"; -import { IModLoader } from "../models/spt/mod/IModLoader"; -import { ModCompilerService } from "../services/ModCompilerService"; -import { VFS } from "../utils/VFS"; -import { BundleLoader } from "./BundleLoader"; -import { InitialModLoader } from "./InitialModLoader"; -export declare class DelayedModLoader implements IModLoader { - protected bundleLoader: BundleLoader; - protected handbookController: HandbookController; - protected vfs: VFS; - protected modCompilerService: ModCompilerService; - protected initialModLoader: InitialModLoader; - constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, initialModLoader: InitialModLoader); - getBundles(local: boolean): string; - getBundle(key: string, local: boolean): void; - getModPath(mod: string): string; - load(): void; - protected executeMods(container: DependencyContainer): void; - protected addBundles(): void; -} diff --git a/TypeScript/9RouterHooks/types/loaders/InitialModLoader.d.ts b/TypeScript/9RouterHooks/types/loaders/InitialModLoader.d.ts deleted file mode 100644 index 9a99dcc..0000000 --- a/TypeScript/9RouterHooks/types/loaders/InitialModLoader.d.ts +++ /dev/null @@ -1,64 +0,0 @@ -import { DependencyContainer } from "tsyringe"; -import { ICoreConfig } from "../models/spt/config/ICoreConfig"; -import { ModLoader } from "../models/spt/mod/IMod"; -import { IModLoader } from "../models/spt/mod/IModLoader"; -import { IPackageJsonData } from "../models/spt/mod/IPackageJsonData"; -import { ILogger } from "../models/spt/utils/ILogger"; -import { ConfigServer } from "../servers/ConfigServer"; -import { ModCompilerService } from "../services/ModCompilerService"; -import { JsonUtil } from "../utils/JsonUtil"; -import { VFS } from "../utils/VFS"; -import { BundleLoader } from "./BundleLoader"; -export declare class InitialModLoader implements IModLoader { - protected logger: ILogger; - protected vfs: VFS; - protected jsonUtil: JsonUtil; - protected modCompilerService: ModCompilerService; - protected bundleLoader: BundleLoader; - protected configServer: ConfigServer; - protected static container: DependencyContainer; - protected readonly basepath = "user/mods/"; - protected imported: Record; - protected akiConfig: ICoreConfig; - constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, configServer: ConfigServer); - load(container: DependencyContainer): Promise; - getBundles(local: boolean): string; - getBundle(key: string, local: boolean): void; - /** - * Returns a list of mods with preserved load order - * @returns Array of mod names in load order - */ - getImportedModsNames(): string[]; - getModPath(mod: string): string; - protected importClass(name: string, filepath: string, container: DependencyContainer): void; - protected importMods(): Promise; - /** - * - * @param mods Get an array of broken/invalid mods by name - * @returns Mod names array - */ - protected getBrokenMods(mods: string[]): string[]; - /** - * Get packageJson data for mods - * @param mods mods to get packageJson for - * @returns dictionary - */ - protected getModsPackageData(mods: string[]): Record; - /** - * Does mod have "delayedLoad(" string in its entry class - * @param modFolderName folder name - * @param modToValidate package.json details - * @returns boolean - */ - protected isModSpt300Compatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; - protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; - protected executeMods(container: DependencyContainer): void; - sortModsLoadOrder(): string[]; - protected addMod(mod: string): Promise; - protected areModDependenciesFulfilled(pkg: IPackageJsonData, loadedMods: Record): boolean; - protected isModCompatible(mod: IPackageJsonData, loadedMods: Record): boolean; - protected validMod(mod: string): boolean; - protected getLoadOrderRecursive(mod: string, result: Record, visited: Record): void; - protected getLoadOrder(mods: Record): Record; - getContainer(): DependencyContainer; -} diff --git a/TypeScript/9RouterHooks/types/loaders/PostAkiModLoader.d.ts b/TypeScript/9RouterHooks/types/loaders/PostAkiModLoader.d.ts new file mode 100644 index 0000000..edc6e5d --- /dev/null +++ b/TypeScript/9RouterHooks/types/loaders/PostAkiModLoader.d.ts @@ -0,0 +1,21 @@ +import { DependencyContainer } from "tsyringe"; +import { HandbookController } from "../controllers/HandbookController"; +import { IModLoader } from "../models/spt/mod/IModLoader"; +import { ModCompilerService } from "../services/ModCompilerService"; +import { VFS } from "../utils/VFS"; +import { BundleLoader } from "./BundleLoader"; +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostAkiModLoader implements IModLoader { + protected bundleLoader: BundleLoader; + protected handbookController: HandbookController; + protected vfs: VFS; + protected modCompilerService: ModCompilerService; + protected preAkiModLoader: PreAkiModLoader; + constructor(bundleLoader: BundleLoader, handbookController: HandbookController, vfs: VFS, modCompilerService: ModCompilerService, preAkiModLoader: PreAkiModLoader); + getBundles(local: boolean): string; + getBundle(key: string, local: boolean): void; + getModPath(mod: string): string; + load(): void; + protected executeMods(container: DependencyContainer): void; + protected addBundles(): void; +} diff --git a/TypeScript/9RouterHooks/types/loaders/PostDBModLoader.d.ts b/TypeScript/9RouterHooks/types/loaders/PostDBModLoader.d.ts new file mode 100644 index 0000000..5101b7b --- /dev/null +++ b/TypeScript/9RouterHooks/types/loaders/PostDBModLoader.d.ts @@ -0,0 +1,11 @@ +import { DependencyContainer } from "tsyringe"; +import { OnLoad } from "../di/OnLoad"; +import { PreAkiModLoader } from "./PreAkiModLoader"; +export declare class PostDBModLoader implements OnLoad { + protected preAkiModLoader: PreAkiModLoader; + constructor(preAkiModLoader: PreAkiModLoader); + onLoad(): void; + getRoute(): string; + getModPath(mod: string): string; + protected executeMods(container: DependencyContainer): void; +} diff --git a/TypeScript/9RouterHooks/types/loaders/PreAkiModLoader.d.ts b/TypeScript/9RouterHooks/types/loaders/PreAkiModLoader.d.ts new file mode 100644 index 0000000..6ded3c6 --- /dev/null +++ b/TypeScript/9RouterHooks/types/loaders/PreAkiModLoader.d.ts @@ -0,0 +1,64 @@ +import { DependencyContainer } from "tsyringe"; +import { ICoreConfig } from "../models/spt/config/ICoreConfig"; +import { ModLoader } from "../models/spt/mod/IMod"; +import { IModLoader } from "../models/spt/mod/IModLoader"; +import { IPackageJsonData } from "../models/spt/mod/IPackageJsonData"; +import { ILogger } from "../models/spt/utils/ILogger"; +import { ConfigServer } from "../servers/ConfigServer"; +import { ModCompilerService } from "../services/ModCompilerService"; +import { JsonUtil } from "../utils/JsonUtil"; +import { VFS } from "../utils/VFS"; +import { BundleLoader } from "./BundleLoader"; +export declare class PreAkiModLoader implements IModLoader { + protected logger: ILogger; + protected vfs: VFS; + protected jsonUtil: JsonUtil; + protected modCompilerService: ModCompilerService; + protected bundleLoader: BundleLoader; + protected configServer: ConfigServer; + protected static container: DependencyContainer; + protected readonly basepath = "user/mods/"; + protected imported: Record; + protected akiConfig: ICoreConfig; + constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, configServer: ConfigServer); + load(container: DependencyContainer): Promise; + getBundles(local: boolean): string; + getBundle(key: string, local: boolean): void; + /** + * Returns a list of mods with preserved load order + * @returns Array of mod names in load order + */ + getImportedModsNames(): string[]; + getModPath(mod: string): string; + protected importClass(name: string, filepath: string, container: DependencyContainer): void; + protected importMods(): Promise; + /** + * + * @param mods Get an array of broken/invalid mods by name + * @returns Mod names array + */ + protected getBrokenMods(mods: string[]): string[]; + /** + * Get packageJson data for mods + * @param mods mods to get packageJson for + * @returns dictionary + */ + protected getModsPackageData(mods: string[]): Record; + /** + * Does mod have "delayedLoad(" string in its entry class + * @param modFolderName folder name + * @param modToValidate package.json details + * @returns boolean + */ + protected isModSpt3XXCompatible(modFolderName: string, modToValidate: IPackageJsonData): boolean; + protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; + protected executeMods(container: DependencyContainer): void; + sortModsLoadOrder(): string[]; + protected addMod(mod: string): Promise; + protected areModDependenciesFulfilled(pkg: IPackageJsonData, loadedMods: Record): boolean; + protected isModCompatible(mod: IPackageJsonData, loadedMods: Record): boolean; + protected validMod(mod: string): boolean; + protected getLoadOrderRecursive(mod: string, result: Record, visited: Record): void; + protected getLoadOrder(mods: Record): Record; + getContainer(): DependencyContainer; +} diff --git a/TypeScript/9RouterHooks/types/models/eft/common/IGlobals.d.ts b/TypeScript/9RouterHooks/types/models/eft/common/IGlobals.d.ts index 456895c..9d28dbc 100644 --- a/TypeScript/9RouterHooks/types/models/eft/common/IGlobals.d.ts +++ b/TypeScript/9RouterHooks/types/models/eft/common/IGlobals.d.ts @@ -1128,8 +1128,11 @@ export interface Inertia { SprintAccelerationLimits: xyz; SideTime: xyz; DiagonalTime: xyz; + MaxTimeWithoutInput: xyz; MinDirectionBlendTime: number; - MoveTime: number; + MoveTimeRange: xyz; + ProneDirectionAccelerationRange: xyz; + ProneSpeedAccelerationRange: xyz; MinMovementAccelerationRangeRight: xyz; MaxMovementAccelerationRangeRight: xyz; } diff --git a/TypeScript/9RouterHooks/types/models/eft/common/ILocationBase.d.ts b/TypeScript/9RouterHooks/types/models/eft/common/ILocationBase.d.ts index ad48d32..b1dd448 100644 --- a/TypeScript/9RouterHooks/types/models/eft/common/ILocationBase.d.ts +++ b/TypeScript/9RouterHooks/types/models/eft/common/ILocationBase.d.ts @@ -26,6 +26,7 @@ export interface ILocationBase { DisabledForScav: boolean; DisabledScavExits: string; Enabled: boolean; + EnableCoop: boolean; GlobalLootChanceModifier: number; IconX: number; IconY: number; @@ -41,6 +42,7 @@ export interface ILocationBase { MinDistToFreePoint: number; MinMaxBots: MinMaxBot[]; MinPlayers: number; + MaxCoopGroup: number; Name: string; NewSpawn: boolean; OcculsionCullingEnabled: boolean; @@ -48,6 +50,8 @@ export interface ILocationBase { OpenZones: string; Preview: Preview; RequiredPlayerLevel: number; + PmcMaxPlayersInGroup: number; + ScavMaxPlayersInGroup: number; Rules: string; SafeLocation: boolean; Scene: Scene; @@ -55,7 +59,8 @@ export interface ILocationBase { UnixDateTime: number; _Id: string; doors: any[]; - escape_time_limit: number; + EscapeTimeLimit: number; + EscapeTimeLimitCoop: number; exit_access_time: number; exit_count: number; exit_time: number; @@ -63,6 +68,7 @@ export interface ILocationBase { filter_ex: string[]; limits: ILimit[]; matching_min_seconds: number; + GenerateLocalLootCache: boolean; maxItemCountInLocation: MaxItemCountInLocation[]; sav_summon_seconds: number; tmp_location_field_remove_me: number; @@ -106,6 +112,7 @@ export interface BossLocationSpawn { BossName: string; BossPlayer: boolean; BossZone: string; + RandomTimeSpawn: boolean; Time: number; TriggerId: string; TriggerName: string; diff --git a/TypeScript/9RouterHooks/types/models/eft/common/IPmcData.d.ts b/TypeScript/9RouterHooks/types/models/eft/common/IPmcData.d.ts index adc2aa5..56bf07f 100644 --- a/TypeScript/9RouterHooks/types/models/eft/common/IPmcData.d.ts +++ b/TypeScript/9RouterHooks/types/models/eft/common/IPmcData.d.ts @@ -6,7 +6,7 @@ import { MemberCategory } from "../../enums/MemberCategory"; export interface IPmcData { _id: string; aid: string; - savage: string; + savage?: string; Info: Info; Customization: Customization; Health: Health; @@ -28,13 +28,6 @@ export interface IPmcData { CarExtractCounts: CarExtractCounts; SurvivorClass: SurvivorClass; } -export declare enum SurvivorClass { - Unknown = 0, - Neutralizer = 1, - Marauder = 2, - Paramedic = 3, - Survivor = 4 -} export interface Info { EntryPoint: string; Nickname: string; @@ -56,6 +49,9 @@ export interface Info { Bans: IBan[]; BannedState: boolean; BannedUntil: number; + NeedWipeOptions: any[]; + lastCompletedWipe: LastCompleted; + lastCompletedEvent?: LastCompleted; } export interface Settings { Role: string; @@ -339,3 +335,13 @@ export interface RagfairInfo { } export interface CarExtractCounts { } +export declare enum SurvivorClass { + Unknown = 0, + Neutralizer = 1, + Marauder = 2, + Paramedic = 3, + Survivor = 4 +} +export interface LastCompleted { + $oid: string; +} diff --git a/TypeScript/9RouterHooks/types/models/eft/common/tables/IProfileTemplate.d.ts b/TypeScript/9RouterHooks/types/models/eft/common/tables/IProfileTemplate.d.ts new file mode 100644 index 0000000..c445e92 --- /dev/null +++ b/TypeScript/9RouterHooks/types/models/eft/common/tables/IProfileTemplate.d.ts @@ -0,0 +1,23 @@ +import { Dialogue, WeaponBuild } from "../../profile/IAkiProfile"; +import { IPmcData } from "../IPmcData"; +export interface IProfileTemplates { + Standard: IProfileSides; + "Left Behind": IProfileSides; + "Prepare To Escape": IProfileSides; + "Edge Of Darkness": IProfileSides; +} +export interface IProfileSides { + usec: TemplateSide; + bear: TemplateSide; +} +export interface TemplateSide { + character: IPmcData; + suits: string[]; + dialogues: Record; + weaponbuilds: WeaponBuild[]; + trader: ProfileTraderTemplate; +} +export interface ProfileTraderTemplate { + initialStanding: number; + initialSalesSum: number; +} diff --git a/TypeScript/9RouterHooks/types/models/eft/common/tables/IQuest.d.ts b/TypeScript/9RouterHooks/types/models/eft/common/tables/IQuest.d.ts index e1fc888..942339b 100644 --- a/TypeScript/9RouterHooks/types/models/eft/common/tables/IQuest.d.ts +++ b/TypeScript/9RouterHooks/types/models/eft/common/tables/IQuest.d.ts @@ -23,6 +23,7 @@ export interface IQuest { status: string; KeyQuest: boolean; changeQuestMessageText: string; + side: string; } export interface Conditions { Started: AvailableForConditions[]; @@ -56,6 +57,7 @@ export interface AvailableForProps { plantTime?: number; zoneId?: string; type?: boolean; + countInRaid?: boolean; } export interface AvailableForCounter { id: string; diff --git a/TypeScript/9RouterHooks/types/models/eft/common/tables/ITemplateItem.d.ts b/TypeScript/9RouterHooks/types/models/eft/common/tables/ITemplateItem.d.ts index 934ea7d..23a1a14 100644 --- a/TypeScript/9RouterHooks/types/models/eft/common/tables/ITemplateItem.d.ts +++ b/TypeScript/9RouterHooks/types/models/eft/common/tables/ITemplateItem.d.ts @@ -50,6 +50,7 @@ export interface Props { UnlootableFromSide?: string[]; AnimationVariantsNumber?: number; DiscardingBlock?: boolean; + DropSoundType?: string; RagFairCommissionModifier?: number; IsAlwaysAvailableForInsurance?: boolean; DiscardLimit?: number; @@ -89,7 +90,7 @@ export interface Props { SightModesCount?: number; OpticCalibrationDistances?: number[]; ScopesCount?: number; - AimSensitivity: any; + AimSensitivity?: number | number[][]; Zooms?: number[][]; CalibrationDistances?: number[][]; Intensity?: number; @@ -200,6 +201,9 @@ export interface Props { MinRepairDegradation?: number; MaxRepairDegradation?: number; IronSightRange?: number; + IsFlareGun?: boolean; + IsGrenadeLauncher?: boolean; + IsOneoff?: boolean; MustBoltBeOpennedForExternalReload?: boolean; MustBoltBeOpennedForInternalReload?: boolean; BoltAction?: boolean; diff --git a/TypeScript/9RouterHooks/types/models/eft/game/IReportNicknameRequestData.d.ts b/TypeScript/9RouterHooks/types/models/eft/game/IReportNicknameRequestData.d.ts new file mode 100644 index 0000000..087c58b --- /dev/null +++ b/TypeScript/9RouterHooks/types/models/eft/game/IReportNicknameRequestData.d.ts @@ -0,0 +1,3 @@ +export interface IReportNicknameRequestData { + uid: string; +} diff --git a/TypeScript/9RouterHooks/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts b/TypeScript/9RouterHooks/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts new file mode 100644 index 0000000..bf209c6 --- /dev/null +++ b/TypeScript/9RouterHooks/types/models/eft/insurance/IGetInsuranceCostResponseData.d.ts @@ -0,0 +1 @@ +export declare type IGetInsuranceCostResponseData = Record>; diff --git a/TypeScript/9RouterHooks/types/models/eft/match/IGetGroupStatusRequestData.d.ts b/TypeScript/9RouterHooks/types/models/eft/match/IGetGroupStatusRequestData.d.ts new file mode 100644 index 0000000..cbdb77f --- /dev/null +++ b/TypeScript/9RouterHooks/types/models/eft/match/IGetGroupStatusRequestData.d.ts @@ -0,0 +1,8 @@ +export interface IGetGroupStatusRequestData { + location: string; + savage: boolean; + dt: string; + keyId: string; + raidMode: string; + startInGroup: boolean; +} diff --git a/TypeScript/9RouterHooks/types/models/eft/match/IJoinMatchRequestData.d.ts b/TypeScript/9RouterHooks/types/models/eft/match/IJoinMatchRequestData.d.ts new file mode 100644 index 0000000..cd34f7b --- /dev/null +++ b/TypeScript/9RouterHooks/types/models/eft/match/IJoinMatchRequestData.d.ts @@ -0,0 +1,12 @@ +export interface IJoinMatchRequestData { + location: string; + savage: boolean; + dt: string; + servers: Server[]; + keyId: string; +} +export interface Server { + ping: number; + ip: string; + port: string; +} diff --git a/TypeScript/9RouterHooks/types/models/eft/match/IJoinMatchResult.d.ts b/TypeScript/9RouterHooks/types/models/eft/match/IJoinMatchResult.d.ts new file mode 100644 index 0000000..df695f4 --- /dev/null +++ b/TypeScript/9RouterHooks/types/models/eft/match/IJoinMatchResult.d.ts @@ -0,0 +1,11 @@ +export interface IJoinMatchResult { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; + version: string; + location: string; + gamemode: string; + shortid: string; +} diff --git a/TypeScript/9RouterHooks/types/models/eft/match/IStartOffineRaidRequestData.d.ts b/TypeScript/9RouterHooks/types/models/eft/match/IStartOffineRaidRequestData.d.ts index 84bccc8..7cc457c 100644 --- a/TypeScript/9RouterHooks/types/models/eft/match/IStartOffineRaidRequestData.d.ts +++ b/TypeScript/9RouterHooks/types/models/eft/match/IStartOffineRaidRequestData.d.ts @@ -1,6 +1,5 @@ export interface IStartOfflineRaidRequestData { locationName: string; - entryPoint: string; startTime: number; dateTime: string; gameSettings: GameSettings; diff --git a/TypeScript/9RouterHooks/types/models/eft/profile/GetProfileStatusResponseData.d.ts b/TypeScript/9RouterHooks/types/models/eft/profile/GetProfileStatusResponseData.d.ts new file mode 100644 index 0000000..eee9b4f --- /dev/null +++ b/TypeScript/9RouterHooks/types/models/eft/profile/GetProfileStatusResponseData.d.ts @@ -0,0 +1,11 @@ +export interface GetProfileStatusResponseData { + maxPveCountExceeded: false; + profiles: ProfileData[]; +} +export interface ProfileData { + profileid: string; + status: string; + sid: string; + ip: string; + port: number; +} diff --git a/TypeScript/9RouterHooks/types/models/eft/ragfair/IGetOffersResult.d.ts b/TypeScript/9RouterHooks/types/models/eft/ragfair/IGetOffersResult.d.ts index 1c11422..fbc631d 100644 --- a/TypeScript/9RouterHooks/types/models/eft/ragfair/IGetOffersResult.d.ts +++ b/TypeScript/9RouterHooks/types/models/eft/ragfair/IGetOffersResult.d.ts @@ -1,6 +1,6 @@ import { IRagfairOffer } from "./IRagfairOffer"; export interface IGetOffersResult { - categories: Record; + categories?: Record; offers: IRagfairOffer[]; offersCount: number; selectedCategory: string; diff --git a/TypeScript/9RouterHooks/types/models/enums/QuestStatus.d.ts b/TypeScript/9RouterHooks/types/models/enums/QuestStatus.d.ts deleted file mode 100644 index 6335c73..0000000 --- a/TypeScript/9RouterHooks/types/models/enums/QuestStatus.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -export declare enum QuestStatus { - Locked = 0, - AvailableForStart = 1, - Started = 2, - AvailableForFinish = 3, - Success = 4, - Fail = 5, - FailRestartable = 6, - MarkedAsFailed = 7 -} diff --git a/TypeScript/9RouterHooks/types/models/external/IAfterDBLoadMod.d.ts b/TypeScript/9RouterHooks/types/models/external/IAfterDBLoadMod.d.ts deleted file mode 100644 index 7f08b9e..0000000 --- a/TypeScript/9RouterHooks/types/models/external/IAfterDBLoadMod.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IAfterDBLoadMod { - loadAfterDbInit(container: DependencyContainer): void; -} diff --git a/TypeScript/9RouterHooks/types/models/external/IPostAkiLoadMod.d.ts b/TypeScript/9RouterHooks/types/models/external/IPostAkiLoadMod.d.ts new file mode 100644 index 0000000..f6950e8 --- /dev/null +++ b/TypeScript/9RouterHooks/types/models/external/IPostAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostAkiLoadMod { + postAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/9RouterHooks/types/models/external/IPostDBLoadMod.d.ts b/TypeScript/9RouterHooks/types/models/external/IPostDBLoadMod.d.ts new file mode 100644 index 0000000..ca7c682 --- /dev/null +++ b/TypeScript/9RouterHooks/types/models/external/IPostDBLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPostDBLoadMod { + postDBLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/9RouterHooks/types/models/external/IPreAkiLoadMod.d.ts b/TypeScript/9RouterHooks/types/models/external/IPreAkiLoadMod.d.ts new file mode 100644 index 0000000..ae7579e --- /dev/null +++ b/TypeScript/9RouterHooks/types/models/external/IPreAkiLoadMod.d.ts @@ -0,0 +1,4 @@ +import { DependencyContainer } from "./tsyringe"; +export interface IPreAkiLoadMod { + preAkiLoad(container: DependencyContainer): void; +} diff --git a/TypeScript/9RouterHooks/types/models/external/mod.d.ts b/TypeScript/9RouterHooks/types/models/external/mod.d.ts deleted file mode 100644 index 47939e9..0000000 --- a/TypeScript/9RouterHooks/types/models/external/mod.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { DependencyContainer } from "./tsyringe"; -export interface IMod { - load(container: DependencyContainer): void; - delayedLoad(container: DependencyContainer): void; -} diff --git a/TypeScript/9RouterHooks/types/models/spt/config/IBotConfig.d.ts b/TypeScript/9RouterHooks/types/models/spt/config/IBotConfig.d.ts index 5fb9d93..f8cf39b 100644 --- a/TypeScript/9RouterHooks/types/models/spt/config/IBotConfig.d.ts +++ b/TypeScript/9RouterHooks/types/models/spt/config/IBotConfig.d.ts @@ -18,6 +18,7 @@ export interface PresetBatch { bossKojaniy: number; bossSanitar: number; bossTagilla: number; + bossKnight: number; bossTest: number; cursedAssault: number; followerBully: number; @@ -28,6 +29,8 @@ export interface PresetBatch { followerKojaniy: number; followerSanitar: number; followerTagilla: number; + followerBirdEye: number; + followerBigPipe: number; followerTest: number; marksman: number; pmcBot: number; diff --git a/TypeScript/9RouterHooks/types/models/spt/config/IRagfairConfig.d.ts b/TypeScript/9RouterHooks/types/models/spt/config/IRagfairConfig.d.ts index 2d151ca..8518252 100644 --- a/TypeScript/9RouterHooks/types/models/spt/config/IRagfairConfig.d.ts +++ b/TypeScript/9RouterHooks/types/models/spt/config/IRagfairConfig.d.ts @@ -30,6 +30,7 @@ export interface Dynamic { expiredOfferThreshold: number; offerItemCount: MinMax; price: MinMax; + presetPrice: MinMax; endTimeSeconds: MinMax; condition: Condition; stackablePercent: MinMax; diff --git a/TypeScript/9RouterHooks/types/models/spt/server/IDatabaseTables.d.ts b/TypeScript/9RouterHooks/types/models/spt/server/IDatabaseTables.d.ts index e0d3fdd..9978459 100644 --- a/TypeScript/9RouterHooks/types/models/spt/server/IDatabaseTables.d.ts +++ b/TypeScript/9RouterHooks/types/models/spt/server/IDatabaseTables.d.ts @@ -6,6 +6,7 @@ import { ICustomizationItem } from "../../eft/common/tables/ICustomizationItem"; import { IHandbookBase } from "../../eft/common/tables/IHandbookBase"; import { ILootBase } from "../../eft/common/tables/ILootBase"; import { IMatch } from "../../eft/common/tables/IMatch"; +import { IProfileTemplates } from "../../eft/common/tables/IProfileTemplate"; import { IQuest } from "../../eft/common/tables/IQuest"; import { IRepeatableQuestDatabase } from "../../eft/common/tables/IRepeatableQuests"; import { ITemplateItem } from "../../eft/common/tables/ITemplateItem"; @@ -39,10 +40,13 @@ export interface IDatabaseTables { items: Record; quests: IQuest[]; repeatableQuests: IRepeatableQuestDatabase; + /** DEPRECATED - Items file found in the client, massivly out of date compared to templates.items, try not to use this, remove ASAP*/ clientItems: Record; handbook: IHandbookBase; customization: Record; - profiles: any; + /** The profile templates listed in the launcher on profile creation, split by account type (e.g. Standard) then side (e.g. bear/usec) */ + profiles: IProfileTemplates; + /** Flea prices of items - gathered from online flea market dump */ prices: Record; }; traders?: Record; diff --git a/TypeScript/9RouterHooks/types/servers/RagfairServer.d.ts b/TypeScript/9RouterHooks/types/servers/RagfairServer.d.ts index 60c92b5..bc86cdb 100644 --- a/TypeScript/9RouterHooks/types/servers/RagfairServer.d.ts +++ b/TypeScript/9RouterHooks/types/servers/RagfairServer.d.ts @@ -17,7 +17,8 @@ export declare class RagfairServer { constructor(logger: ILogger, ragfairOfferGenerator: RagfairOfferGenerator, ragfairOfferService: RagfairOfferService, ragfairCategoriesService: RagfairCategoriesService, ragfairRequiredItemsService: RagfairRequiredItemsService, configServer: ConfigServer); load(): void; update(): void; - getCategories(): Record; + getAllCategories(): Record; + getBespokeCategories(offers: IRagfairOffer[]): Record; /** * Disable/Hide an offer from flea * @param offerId diff --git a/TypeScript/9RouterHooks/types/services/RagfairCategoriesService.d.ts b/TypeScript/9RouterHooks/types/services/RagfairCategoriesService.d.ts index 09956cc..83910e5 100644 --- a/TypeScript/9RouterHooks/types/services/RagfairCategoriesService.d.ts +++ b/TypeScript/9RouterHooks/types/services/RagfairCategoriesService.d.ts @@ -1,10 +1,40 @@ import { IRagfairOffer } from "../models/eft/ragfair/IRagfairOffer"; +import { ILogger } from "../models/spt/utils/ILogger"; export declare class RagfairCategoriesService { - updateCategories(offers: IRagfairOffer[]): void; + protected logger: ILogger; protected categories: Record; - getCategories(): Record; - getCategoryByItemId(itemId: string): number; - resetCategories(): void; - setCategoryValue(itemId: string, newValue: number): void; - incrementCategory(itemId: string): void; + constructor(logger: ILogger); + /** + * Get all flea categories and their count of offers + * @returns item categories and count + */ + getAllCategories(): Record; + /** + * With the supplied items, get custom categories + * @returns a custom list of categories + */ + getBespokeCategories(offers: IRagfairOffer[]): Record; + /** + * Take an array of ragfair offers and create a dictionary of items with thier corrisponding offer count + * @param offers ragfair offers + * @returns categories and count + */ + protected processOffersIntoCategories(offers: IRagfairOffer[]): Record; + /** + * Increment or decrement a category array + * @param offer offer to process + * @param categories categories to update + * @param increment should item be incremented or decremented + */ + protected addOrIncrementCategory(offer: IRagfairOffer, categories: Record, increment?: boolean): void; + /** + * Increase category count by 1 + * @param offer + */ + incrementCategory(offer: IRagfairOffer): void; + /** + * Reduce category count by 1 + * @param offer + */ + decrementCategory(offer: IRagfairOffer): void; } diff --git a/TypeScript/9RouterHooks/types/services/RagfairOfferService.d.ts b/TypeScript/9RouterHooks/types/services/RagfairOfferService.d.ts index 7afbf8c..7398a8f 100644 --- a/TypeScript/9RouterHooks/types/services/RagfairOfferService.d.ts +++ b/TypeScript/9RouterHooks/types/services/RagfairOfferService.d.ts @@ -11,12 +11,14 @@ import { DatabaseServer } from "../servers/DatabaseServer"; import { SaveServer } from "../servers/SaveServer"; import { HttpResponseUtil } from "../utils/HttpResponseUtil"; import { TimeUtil } from "../utils/TimeUtil"; +import { RagfairCategoriesService } from "./RagfairCategoriesService"; export declare class RagfairOfferService { protected logger: ILogger; protected timeUtil: TimeUtil; protected databaseServer: DatabaseServer; protected saveServer: SaveServer; protected ragfairServerHelper: RagfairServerHelper; + protected ragfairCategoriesService: RagfairCategoriesService; protected profileHelper: ProfileHelper; protected itemEventRouter: ItemEventRouter; protected httpResponse: HttpResponseUtil; @@ -26,12 +28,16 @@ export declare class RagfairOfferService { protected expiredOffers: Item[]; protected offers: IRagfairOffer[]; protected ragfairConfig: IRagfairConfig; - constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + constructor(logger: ILogger, timeUtil: TimeUtil, databaseServer: DatabaseServer, saveServer: SaveServer, ragfairServerHelper: RagfairServerHelper, ragfairCategoriesService: RagfairCategoriesService, profileHelper: ProfileHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, configServer: ConfigServer); + /** + * Get all offers + * @returns IRagfairOffer array + */ getOffers(): IRagfairOffer[]; getOfferByOfferId(offerId: string): IRagfairOffer; getOffersOfType(templateId: string): IRagfairOffer[]; addOffer(offer: IRagfairOffer): void; - addOfferToExpired(offer: Item): void; + addOfferToExpired(staleOffer: IRagfairOffer): void; setTraderUpdateStatus(traderId: string, shouldUpdate: boolean): void; shouldTraderBeUpdated(traderID: string): boolean; getExpiredOfferCount(): number; diff --git a/TypeScript/9RouterHooks/types/services/RagfairPriceService.d.ts b/TypeScript/9RouterHooks/types/services/RagfairPriceService.d.ts index 5256b99..e3168a6 100644 --- a/TypeScript/9RouterHooks/types/services/RagfairPriceService.d.ts +++ b/TypeScript/9RouterHooks/types/services/RagfairPriceService.d.ts @@ -28,5 +28,19 @@ export declare class RagfairPriceService { getFleaPriceForItem(tplId: string): number; getBarterPrice(barterScheme: IBarterScheme[]): number; getDynamicOfferPrice(items: Item[], desiredCurrency: string): number; + /** + * Multiply the price by a randomised curve where n = 2, shift = 2 + * @param existingPrice price to alter + * @param isPreset is the item we're multiplying a preset + * @returns multiplied price + */ + protected randomisePrice(existingPrice: number, isPreset: boolean): number; + /** + * Calculate the cost of a weapon preset by adding together the price of its mods + base price of default weapon preset + * @param item base weapon + * @param items weapon plus mods + * @param existingPrice price of existing base weapon + * @returns + */ getWeaponPresetPrice(item: Item, items: Item[], existingPrice: number): number; } diff --git a/TypeScript/9RouterHooks/types/utils/Watermark.d.ts b/TypeScript/9RouterHooks/types/utils/Watermark.d.ts index 111bdd0..c6dc120 100644 --- a/TypeScript/9RouterHooks/types/utils/Watermark.d.ts +++ b/TypeScript/9RouterHooks/types/utils/Watermark.d.ts @@ -28,7 +28,12 @@ export declare class Watermark { protected text: string[]; protected versionLabel: string; initialize(): void; - getVersionTag(): string; + /** + * Get a version string (x.x.x) or (x.x.x-BLEEDINGEDGE) OR (X.X.X (18xxx)) + * @param withEftVersion Include the eft version this spt version was made for + * @returns string + */ + getVersionTag(withEftVersion?: boolean): string; getVersionLabel(): string; /** Set window title */ setTitle(): void; -- 2.47.1