Update readme + example 1 types

This commit is contained in:
Dev 2023-07-29 13:48:13 +01:00
parent ef814a53e3
commit badd8fa265
32 changed files with 129 additions and 75 deletions

View File

@ -15,13 +15,13 @@ A system reboot may be needed after install.
The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this. The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this.
You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCodium. You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCode.
You can get VSCodium here: https://vscodium.com/#install You can get VSCOde here: https://code.visualstudio.com/
## **Workspace:** ## **Workspace:**
Once you have NodeJS and VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...). Once you have NodeJS and VSCode/VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...).
Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended. Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended.

View File

@ -15,13 +15,13 @@ A system reboot may be needed after install.
The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this. The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this.
You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCodium. You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCode.
You can get VSCodium here: https://vscodium.com/#install You can get VSCOde here: https://code.visualstudio.com/
## **Workspace:** ## **Workspace:**
Once you have NodeJS and VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...). Once you have NodeJS and VSCode/VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...).
Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended. Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended.

View File

@ -15,13 +15,13 @@ A system reboot may be needed after install.
The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this. The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this.
You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCodium. You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCode.
You can get VSCodium here: https://vscodium.com/#install You can get VSCOde here: https://code.visualstudio.com/
## **Workspace:** ## **Workspace:**
Once you have NodeJS and VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...). Once you have NodeJS and VSCode/VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...).
Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended. Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended.

View File

@ -15,13 +15,13 @@ A system reboot may be needed after install.
The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this. The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this.
You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCodium. You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCode.
You can get VSCodium here: https://vscodium.com/#install You can get VSCOde here: https://code.visualstudio.com/
## **Workspace:** ## **Workspace:**
Once you have NodeJS and VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...). Once you have NodeJS and VSCode/VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...).
Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended. Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended.

View File

@ -15,13 +15,13 @@ A system reboot may be needed after install.
The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this. The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this.
You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCodium. You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCode.
You can get VSCodium here: https://vscodium.com/#install You can get VSCOde here: https://code.visualstudio.com/
## **Workspace:** ## **Workspace:**
Once you have NodeJS and VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...). Once you have NodeJS and VSCode/VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...).
Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended. Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended.

View File

@ -13,15 +13,15 @@ A system reboot may be needed after install.
## **IDE:** ## **IDE:**
The second step is having an IDE ready. For the currect purpose we've setup a VSCodium workspace file. The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this.
You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCodium. You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCode.
You can get VSCodium here: https://vscodium.com/#install You can get VSCOde here: https://code.visualstudio.com/
## **Workspace:** ## **Workspace:**
Once you have NodeJS and VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Worspace from File...). Once you have NodeJS and VSCode/VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...).
Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended. Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended.

View File

@ -15,13 +15,13 @@ A system reboot may be needed after install.
The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this. The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this.
You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCodium. You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCode.
You can get VSCodium here: https://vscodium.com/#install You can get VSCOde here: https://code.visualstudio.com/
## **Workspace:** ## **Workspace:**
Once you have NodeJS and VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...). Once you have NodeJS and VSCode/VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...).
Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended. Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended.

View File

@ -15,13 +15,13 @@ A system reboot may be needed after install.
The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this. The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this.
You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCodium. You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCode.
You can get VSCodium here: https://vscodium.com/#install You can get VSCOde here: https://code.visualstudio.com/
## **Workspace:** ## **Workspace:**
Once you have NodeJS and VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...). Once you have NodeJS and VSCode/VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...).
Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended. Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended.

View File

@ -15,13 +15,13 @@ A system reboot may be needed after install.
The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this. The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this.
You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCodium. You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCode.
You can get VSCodium here: https://vscodium.com/#install You can get VSCOde here: https://code.visualstudio.com/
## **Workspace:** ## **Workspace:**
Once you have NodeJS and VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...). Once you have NodeJS and VSCode/VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...).
Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended. Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended.

View File

@ -15,13 +15,13 @@ A system reboot may be needed after install.
The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this. The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this.
You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCodium. You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCode.
You can get VSCodium here: https://vscodium.com/#install You can get VSCOde here: https://code.visualstudio.com/
## **Workspace:** ## **Workspace:**
Once you have NodeJS and VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...). Once you have NodeJS and VSCode/VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...).
Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended. Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended.

View File

@ -15,13 +15,13 @@ A system reboot may be needed after install.
The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this. The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this.
You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCodium. You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCode.
You can get VSCodium here: https://vscodium.com/#install You can get VSCOde here: https://code.visualstudio.com/
## **Workspace:** ## **Workspace:**
Once you have NodeJS and VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...). Once you have NodeJS and VSCode/VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...).
Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended. Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended.

View File

@ -10,6 +10,7 @@ export declare class BotCallbacks {
constructor(botController: BotController, httpResponse: HttpResponseUtil); constructor(botController: BotController, httpResponse: HttpResponseUtil);
/** /**
* Handle singleplayer/settings/bot/limit * Handle singleplayer/settings/bot/limit
* Is called by client to define each bot roles wave limit
* @returns string * @returns string
*/ */
getBotLimit(url: string, info: IEmptyRequestData, sessionID: string): string; getBotLimit(url: string, info: IEmptyRequestData, sessionID: string): string;

View File

@ -1,4 +1,5 @@
import { DialogueHelper } from "../helpers/DialogueHelper"; import { DialogueHelper } from "../helpers/DialogueHelper";
import { ProfileHelper } from "../helpers/ProfileHelper";
import { IGetAllAttachmentsResponse } from "../models/eft/dialog/IGetAllAttachmentsResponse"; import { IGetAllAttachmentsResponse } from "../models/eft/dialog/IGetAllAttachmentsResponse";
import { IGetFriendListDataResponse } from "../models/eft/dialog/IGetFriendListDataResponse"; import { IGetFriendListDataResponse } from "../models/eft/dialog/IGetFriendListDataResponse";
import { IGetMailDialogViewRequestData } from "../models/eft/dialog/IGetMailDialogViewRequestData"; import { IGetMailDialogViewRequestData } from "../models/eft/dialog/IGetMailDialogViewRequestData";
@ -11,16 +12,19 @@ import { SaveServer } from "../servers/SaveServer";
import { GiftService } from "../services/GiftService"; import { GiftService } from "../services/GiftService";
import { MailSendService } from "../services/MailSendService"; import { MailSendService } from "../services/MailSendService";
import { HashUtil } from "../utils/HashUtil"; import { HashUtil } from "../utils/HashUtil";
import { RandomUtil } from "../utils/RandomUtil";
import { TimeUtil } from "../utils/TimeUtil"; import { TimeUtil } from "../utils/TimeUtil";
export declare class DialogueController { export declare class DialogueController {
protected logger: ILogger; protected logger: ILogger;
protected saveServer: SaveServer; protected saveServer: SaveServer;
protected timeUtil: TimeUtil; protected timeUtil: TimeUtil;
protected dialogueHelper: DialogueHelper; protected dialogueHelper: DialogueHelper;
protected profileHelper: ProfileHelper;
protected randomUtil: RandomUtil;
protected mailSendService: MailSendService; protected mailSendService: MailSendService;
protected giftService: GiftService; protected giftService: GiftService;
protected hashUtil: HashUtil; protected hashUtil: HashUtil;
constructor(logger: ILogger, saveServer: SaveServer, timeUtil: TimeUtil, dialogueHelper: DialogueHelper, mailSendService: MailSendService, giftService: GiftService, hashUtil: HashUtil); constructor(logger: ILogger, saveServer: SaveServer, timeUtil: TimeUtil, dialogueHelper: DialogueHelper, profileHelper: ProfileHelper, randomUtil: RandomUtil, mailSendService: MailSendService, giftService: GiftService, hashUtil: HashUtil);
/** Handle onUpdate spt event */ /** Handle onUpdate spt event */
update(): void; update(): void;
/** /**
@ -69,7 +73,7 @@ export declare class DialogueController {
*/ */
protected getDialogByIdFromProfile(profile: IAkiProfile, request: IGetMailDialogViewRequestData): Dialogue; protected getDialogByIdFromProfile(profile: IAkiProfile, request: IGetMailDialogViewRequestData): Dialogue;
/** /**
* Get the users involved in a mail between two entities * Get the users involved in a mail between two entities
* @param fullProfile Player profile * @param fullProfile Player profile
* @param dialogUsers The participants of the mail * @param dialogUsers The participants of the mail
* @returns IUserDialogInfo array * @returns IUserDialogInfo array
@ -88,21 +92,37 @@ export declare class DialogueController {
* @returns true if uncollected rewards found * @returns true if uncollected rewards found
*/ */
protected messagesHaveUncollectedRewards(messages: Message[]): boolean; protected messagesHaveUncollectedRewards(messages: Message[]): boolean;
/** Handle client/mail/dialog/remove */ /**
removeDialogue(dialogueID: string, sessionID: string): void; * Handle client/mail/dialog/remove
setDialoguePin(dialogueID: string, shouldPin: boolean, sessionID: string): void; * Remove an entire dialog with an entity (trader/user)
/** Handle client/mail/dialog/read */ * @param dialogueId id of the dialog to remove
setRead(dialogueIDs: string[], sessionID: string): void; * @param sessionId Player id
*/
removeDialogue(dialogueId: string, sessionId: string): void;
/** Handle client/mail/dialog/pin && Handle client/mail/dialog/unpin */
setDialoguePin(dialogueId: string, shouldPin: boolean, sessionId: string): void;
/**
* Handle client/mail/dialog/read
* Set a dialog to be read (no number alert/attachment alert)
* @param dialogueIds Dialog ids to set as read
* @param sessionId Player profile id
*/
setRead(dialogueIds: string[], sessionId: string): void;
/** /**
* Handle client/mail/dialog/getAllAttachments * Handle client/mail/dialog/getAllAttachments
* Get all uncollected items attached to mail in a particular dialog * Get all uncollected items attached to mail in a particular dialog
* @param dialogueID Dialog to get mail attachments from * @param dialogueId Dialog to get mail attachments from
* @param sessionID Session id * @param sessionId Session id
* @returns * @returns
*/ */
getAllAttachments(dialogueID: string, sessionID: string): IGetAllAttachmentsResponse; getAllAttachments(dialogueId: string, sessionId: string): IGetAllAttachmentsResponse;
/** client/mail/msg/send */ /** client/mail/msg/send */
sendMessage(sessionId: string, request: ISendMessageRequest): string; sendMessage(sessionId: string, request: ISendMessageRequest): string;
/**
* Send responses back to player when they communicate with SPT friend on friends list
* @param sessionId Session Id
* @param request send message request
*/
protected handleChatWithSPTFriend(sessionId: string, request: ISendMessageRequest): void; protected handleChatWithSPTFriend(sessionId: string, request: ISendMessageRequest): void;
protected getSptFriendData(friendId?: string): IUserDialogInfo; protected getSptFriendData(friendId?: string): IUserDialogInfo;
/** /**

View File

@ -132,7 +132,7 @@ export declare class QuestController {
*/ */
protected getQuestsFailedByCompletingQuest(completedQuestId: string): IQuest[]; protected getQuestsFailedByCompletingQuest(completedQuestId: string): IQuest[];
/** /**
* Fail the quests provided * Fail the provided quests
* Update quest in profile, otherwise add fresh quest object with failed status * Update quest in profile, otherwise add fresh quest object with failed status
* @param sessionID session id * @param sessionID session id
* @param pmcData player profile * @param pmcData player profile

View File

@ -40,6 +40,12 @@ export declare class BotLootGenerator {
* @param botLevel Level of bot * @param botLevel Level of bot
*/ */
generateLoot(sessionId: string, botJsonTemplate: IBotType, isPmc: boolean, botRole: string, botInventory: PmcInventory, botLevel: number): void; generateLoot(sessionId: string, botJsonTemplate: IBotType, isPmc: boolean, botRole: string, botInventory: PmcInventory, botLevel: number): void;
/**
* Force healing items onto bot to ensure they can heal in-raid
* @param botInventory Inventory to add items to
* @param botRole Role of bot (sptBear/sptUsec)
*/
protected addForcedMedicalItemsToPmcSecure(botInventory: PmcInventory, botRole: string): void;
protected getRandomisedCount(min: number, max: number, nValue: number): number; protected getRandomisedCount(min: number, max: number, nValue: number): number;
/** /**
* Take random items from a pool and add to an inventory until totalItemCount or totalValueLimit is reached * Take random items from a pool and add to an inventory until totalItemCount or totalValueLimit is reached

View File

@ -3,6 +3,7 @@ import { Inventory } from "../models/eft/common/tables/IBotBase";
import { Item } from "../models/eft/common/tables/IItem"; import { Item } from "../models/eft/common/tables/IItem";
import { Grid, ITemplateItem } from "../models/eft/common/tables/ITemplateItem"; import { Grid, ITemplateItem } from "../models/eft/common/tables/ITemplateItem";
import { EquipmentSlots } from "../models/enums/EquipmentSlots"; import { EquipmentSlots } from "../models/enums/EquipmentSlots";
import { ItemAddedResult } from "../models/enums/ItemAddedResult";
import { ILogger } from "../models/spt/utils/ILogger"; import { ILogger } from "../models/spt/utils/ILogger";
import { DatabaseServer } from "../servers/DatabaseServer"; import { DatabaseServer } from "../servers/DatabaseServer";
import { LocalisationService } from "../services/LocalisationService"; import { LocalisationService } from "../services/LocalisationService";
@ -72,7 +73,7 @@ export declare class BotWeaponGeneratorHelper {
* @param inventory Inventory to add item+children into * @param inventory Inventory to add item+children into
* @returns a `boolean` indicating item was added * @returns a `boolean` indicating item was added
*/ */
addItemWithChildrenToEquipmentSlot(equipmentSlots: string[], parentId: string, parentTpl: string, itemWithChildren: Item[], inventory: Inventory): boolean; addItemWithChildrenToEquipmentSlot(equipmentSlots: string[], parentId: string, parentTpl: string, itemWithChildren: Item[], inventory: Inventory): ItemAddedResult;
/** /**
* is the provided item allowed inside a container * is the provided item allowed inside a container
* @param slot location item wants to be placed in * @param slot location item wants to be placed in

View File

@ -1,5 +1,5 @@
import { IPmcData } from "../models/eft/common/IPmcData"; import { IPmcData } from "../models/eft/common/IPmcData";
import { Victim } from "../models/eft/common/tables/IBotBase"; import { Quest, Victim } from "../models/eft/common/tables/IBotBase";
import { Item } from "../models/eft/common/tables/IItem"; import { Item } from "../models/eft/common/tables/IItem";
import { ISaveProgressRequestData } from "../models/eft/inRaid/ISaveProgressRequestData"; import { ISaveProgressRequestData } from "../models/eft/inRaid/ISaveProgressRequestData";
import { ILostOnDeathConfig } from "../models/spt/config/ILostOnDeathConfig"; import { ILostOnDeathConfig } from "../models/spt/config/ILostOnDeathConfig";
@ -13,6 +13,7 @@ import { JsonUtil } from "../utils/JsonUtil";
import { InventoryHelper } from "./InventoryHelper"; import { InventoryHelper } from "./InventoryHelper";
import { ItemHelper } from "./ItemHelper"; import { ItemHelper } from "./ItemHelper";
import { PaymentHelper } from "./PaymentHelper"; import { PaymentHelper } from "./PaymentHelper";
import { QuestHelper } from "./QuestHelper";
export declare class InRaidHelper { export declare class InRaidHelper {
protected logger: ILogger; protected logger: ILogger;
protected saveServer: SaveServer; protected saveServer: SaveServer;
@ -20,12 +21,13 @@ export declare class InRaidHelper {
protected itemHelper: ItemHelper; protected itemHelper: ItemHelper;
protected databaseServer: DatabaseServer; protected databaseServer: DatabaseServer;
protected inventoryHelper: InventoryHelper; protected inventoryHelper: InventoryHelper;
protected questHelper: QuestHelper;
protected paymentHelper: PaymentHelper; protected paymentHelper: PaymentHelper;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected profileFixerService: ProfileFixerService; protected profileFixerService: ProfileFixerService;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected lostOnDeathConfig: ILostOnDeathConfig; protected lostOnDeathConfig: ILostOnDeathConfig;
constructor(logger: ILogger, saveServer: SaveServer, jsonUtil: JsonUtil, itemHelper: ItemHelper, databaseServer: DatabaseServer, inventoryHelper: InventoryHelper, paymentHelper: PaymentHelper, localisationService: LocalisationService, profileFixerService: ProfileFixerService, configServer: ConfigServer); constructor(logger: ILogger, saveServer: SaveServer, jsonUtil: JsonUtil, itemHelper: ItemHelper, databaseServer: DatabaseServer, inventoryHelper: InventoryHelper, questHelper: QuestHelper, paymentHelper: PaymentHelper, localisationService: LocalisationService, profileFixerService: ProfileFixerService, configServer: ConfigServer);
/** /**
* Lookup quest item loss from lostOnDeath config * Lookup quest item loss from lostOnDeath config
* @returns True if items should be removed from inventory * @returns True if items should be removed from inventory
@ -61,6 +63,14 @@ export declare class InRaidHelper {
* @returns Reset profile object * @returns Reset profile object
*/ */
updateProfileBaseStats(profileData: IPmcData, saveProgressRequest: ISaveProgressRequestData, sessionID: string): IPmcData; updateProfileBaseStats(profileData: IPmcData, saveProgressRequest: ISaveProgressRequestData, sessionID: string): IPmcData;
/**
* Look for quests not are now status = fail that were not failed pre-raid and run the failQuest() function
* @param sessionId Player id
* @param pmcData Player profile
* @param preRaidQuests Quests prior to starting raid
* @param postRaidQuests Quest after raid
*/
protected processFailedQuests(sessionId: string, pmcData: IPmcData, preRaidQuests: Quest[], postRaidQuests: Quest[]): void;
protected resetSkillPointsEarnedDuringRaid(profile: IPmcData): void; protected resetSkillPointsEarnedDuringRaid(profile: IPmcData): void;
/** /**
* Take body part effects from client profile and apply to server profile * Take body part effects from client profile and apply to server profile

View File

@ -116,7 +116,7 @@ export declare class QuestHelper {
* Get quests that can be shown to player after failing a quest * Get quests that can be shown to player after failing a quest
* @param failedQuestId Id of the quest failed by player * @param failedQuestId Id of the quest failed by player
* @param sessionId Session id * @param sessionId Session id
* @returns * @returns IQuest array
*/ */
failedUnlocked(failedQuestId: string, sessionId: string): IQuest[]; failedUnlocked(failedQuestId: string, sessionId: string): IQuest[];
/** /**

View File

@ -69,6 +69,7 @@ export interface AvailableForProps {
zoneId?: string; zoneId?: string;
type?: boolean; type?: boolean;
countInRaid?: boolean; countInRaid?: boolean;
globalQuestCounterId?: any;
} }
export interface AvailableForCounter { export interface AvailableForCounter {
id: string; id: string;

View File

@ -0,0 +1,4 @@
export declare enum ItemAddedResult {
SUCCESS = 1,
NO_SPACE = 2
}

View File

@ -7,5 +7,6 @@ export declare enum QuestRewardType {
ASSORTMENT_UNLOCK = "AssortmentUnlock", ASSORTMENT_UNLOCK = "AssortmentUnlock",
PRODUCTIONS_SCHEME = "ProductionScheme", PRODUCTIONS_SCHEME = "ProductionScheme",
TRADER_STANDING_RESET = "TraderStandingReset", TRADER_STANDING_RESET = "TraderStandingReset",
TRADER_STANDING_RESTORE = "TraderStandingRestore" TRADER_STANDING_RESTORE = "TraderStandingRestore",
STASH_ROWS = "StashRows"
} }

View File

@ -31,5 +31,8 @@ export declare enum WildSpawnTypeNumber {
BOSSZRYACHIY = 29, BOSSZRYACHIY = 29,
FOLLOWERZRYACHIY = 30, FOLLOWERZRYACHIY = 30,
ARENAFIGHTER = 31, ARENAFIGHTER = 31,
ARENAFIGHTEREVENT = 32 ARENAFIGHTEREVENT = 32,
CRAZYASSAULTEVENT = 33,
SPTUSEC = 34,
SPTBEAR = 35
} }

View File

@ -62,6 +62,11 @@ export interface PresetBatch {
gifter: number; gifter: number;
test: number; test: number;
exUsec: number; exUsec: number;
arenaFighterEvent: number;
arenaFighter: number;
crazyAssaultEvent: number;
sptUsec: number;
sptBear: number;
} }
export interface LootNvalue { export interface LootNvalue {
scav: number; scav: number;

View File

@ -38,6 +38,8 @@ export interface IPmcConfig {
enemyTypes: string[]; enemyTypes: string[];
/** How many levels above player level can a PMC be */ /** How many levels above player level can a PMC be */
botRelativeLevelDeltaMax: number; botRelativeLevelDeltaMax: number;
/** Force a number of healing items into PMCs secure container to ensure they can heal */
forceHealingItemsIntoSecure: boolean;
} }
export interface PmcTypes { export interface PmcTypes {
usec: string; usec: string;

View File

@ -15,13 +15,13 @@ A system reboot may be needed after install.
The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this. The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this.
You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCodium. You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCode.
You can get VSCodium here: https://vscodium.com/#install You can get VSCOde here: https://code.visualstudio.com/
## **Workspace:** ## **Workspace:**
Once you have NodeJS and VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...). Once you have NodeJS and VSCode/VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...).
Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended. Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended.

View File

@ -15,13 +15,13 @@ A system reboot may be needed after install.
The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this. The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this.
You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCodium. You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCode.
You can get VSCodium here: https://vscodium.com/#install You can get VSCOde here: https://code.visualstudio.com/
## **Workspace:** ## **Workspace:**
Once you have NodeJS and VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...). Once you have NodeJS and VSCode/VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...).
Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended. Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended.

View File

@ -15,13 +15,13 @@ A system reboot may be needed after install.
The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this. The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this.
You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCodium. You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCode.
You can get VSCodium here: https://vscodium.com/#install You can get VSCOde here: https://code.visualstudio.com/
## **Workspace:** ## **Workspace:**
Once you have NodeJS and VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...). Once you have NodeJS and VSCode/VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...).
Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended. Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended.

View File

@ -15,13 +15,13 @@ A system reboot may be needed after install.
The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this. The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this.
You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCodium. You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCode.
You can get VSCodium here: https://vscodium.com/#install You can get VSCOde here: https://code.visualstudio.com/
## **Workspace:** ## **Workspace:**
Once you have NodeJS and VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...). Once you have NodeJS and VSCode/VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...).
Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended. Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended.

View File

@ -15,13 +15,13 @@ A system reboot may be needed after install.
The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this. The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this.
You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCodium. You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCode.
You can get VSCodium here: https://vscodium.com/#install You can get VSCOde here: https://code.visualstudio.com/
## **Workspace:** ## **Workspace:**
Once you have NodeJS and VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...). Once you have NodeJS and VSCode/VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...).
Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended. Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended.

View File

@ -15,13 +15,13 @@ A system reboot may be needed after install.
The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this. The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this.
You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCodium. You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCode.
You can get VSCodium here: https://vscodium.com/#install You can get VSCOde here: https://code.visualstudio.com/
## **Workspace:** ## **Workspace:**
Once you have NodeJS and VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...). Once you have NodeJS and VSCode/VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...).
Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended. Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended.

View File

@ -15,13 +15,13 @@ A system reboot may be needed after install.
The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this. The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this.
You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCodium. You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCode.
You can get VSCodium here: https://vscodium.com/#install You can get VSCOde here: https://code.visualstudio.com/
## **Workspace:** ## **Workspace:**
Once you have NodeJS and VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...). Once you have NodeJS and VSCode/VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...).
Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended. Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended.

View File

@ -15,13 +15,13 @@ A system reboot may be needed after install.
The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this. The second step is having an IDE ready. We've setup a VSCodium workspace file to help with this.
You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCodium. You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCode.
You can get VSCodium here: https://vscodium.com/#install You can get VSCOde here: https://code.visualstudio.com/
## **Workspace:** ## **Workspace:**
Once you have NodeJS and VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...). Once you have NodeJS and VSCode/VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Workspace from File...).
Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended. Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended.