UNPKG

xedoc.js

Version:

A wrapper for Rust Console Edition (RCE) that allows you to use the websocket and API from G-Portal.

509 lines (501 loc) 14.7 kB
export enum GPortalRoutes { Api = 'https://www.g-portal.com/ngpapi/', Token = 'https://auth.g-portal.com/auth/realms/master/protocol/openid-connect/token', WS = 'wss://www.g-portal.com/ngpapi/', Origin = 'https://www.g-portal.com', Home = 'https://www.g-portal.com/en', Auth = 'https://auth.g-portal.com/auth/realms/master/protocol/openid-connect/auth', } export enum PlayerKillType { Natural = 'Natural', Entity = 'Entity', Player = 'Player', Npc = 'Npc', } export const playerKillData = [ { id: 'thirst', name: 'Thirst', type: PlayerKillType.Natural, }, { id: 'hunger', name: 'Hunger', type: PlayerKillType.Natural, }, { id: 'guntrap.deployed', name: 'Shotgun Trap', type: PlayerKillType.Entity, }, { id: 'pee pee 9000', name: 'Pee Pee 9000', type: PlayerKillType.Natural, }, { id: 'barricade.wood', name: 'Wooden Barricade', type: PlayerKillType.Entity, }, { id: 'wall.external.high.stone', name: 'High External Stone Wall', type: PlayerKillType.Entity, }, { id: 'wall.external.high', name: 'High External Wooden Wall', type: PlayerKillType.Entity, }, { id: 'gates.external.high.wood', name: 'High External Wooden Gate', type: PlayerKillType.Entity, }, { id: 'gates.external.high.stone', name: 'High External Stone Gate', type: PlayerKillType.Entity, }, { id: 'gates.external.high.wood (entity)', name: 'High External Wooden Gate', type: PlayerKillType.Entity, }, { id: 'gates.external.high.stone (entity)', name: 'High External Stone Gate', type: PlayerKillType.Entity, }, { id: 'flameturret_fireball (entity)', name: 'Flame Turret', type: PlayerKillType.Entity, }, { id: 'icewall (entity)', name: 'Ice Wall', type: PlayerKillType.Entity, }, { id: 'wall.external.high.wood (entity)', name: 'High External Wooden Wall', type: PlayerKillType.Entity, }, { id: 'wall.external.high.ice (entity)', name: 'High External Ice Wall', type: PlayerKillType.Entity, }, { id: 'bear', name: 'Bear', type: PlayerKillType.Npc, }, { id: 'autoturret_deployed', name: 'Auto Turret', type: PlayerKillType.Entity, }, { id: 'cold', name: 'Cold', type: PlayerKillType.Natural, }, { id: 'bleeding', name: 'Bleeding', type: PlayerKillType.Natural, }, { id: 'boar', name: 'Boar', type: PlayerKillType.Npc, }, { id: 'wolf', name: 'Wolf', type: PlayerKillType.Npc, }, { id: 'fall', name: 'Fall', type: PlayerKillType.Natural, }, { id: 'drowned', name: 'Drowned', type: PlayerKillType.Natural, }, { id: 'radiation', name: 'Radiation', type: PlayerKillType.Natural, }, { id: 'autoturret_deployed (entity)', name: 'Auto Turret', type: PlayerKillType.Entity, }, { id: 'bear (bear)', name: 'Bear', type: PlayerKillType.Npc, }, { id: 'boar (boar)', name: 'Boar', type: PlayerKillType.Npc, }, { id: 'wolf (wolf)', name: 'Wolf', type: PlayerKillType.Npc, }, { id: 'guntrap.deployed (entity)', name: 'Shotgun Trap', type: PlayerKillType.Entity, }, { id: 'fall!', name: 'Fall', type: PlayerKillType.Natural, }, { id: 'lock.code (entity)', name: 'Code Lock', type: PlayerKillType.Entity, }, { id: 'bradleyapc (entity)', name: 'Bradley APC', type: PlayerKillType.Npc, }, { id: 'wall.external.high.stone (entity)', name: 'High External Stone Wall', type: PlayerKillType.Entity, }, { id: 'wall.external.high (entity)', name: 'High External Wooden Wall', type: PlayerKillType.Entity, }, { id: 'barricade.metal (entity)', name: 'Metal Barricade', type: PlayerKillType.Entity, }, { id: 'spikes.floor (entity)', name: 'Floor Spikes', type: PlayerKillType.Entity, }, { id: 'sentry.bandit.static (entity)', name: 'Bandit Sentry', type: PlayerKillType.Entity, }, { id: 'cactus-1 (entity)', name: 'Cactus', type: PlayerKillType.Entity, }, { id: 'cactus-2 (entity)', name: 'Cactus', type: PlayerKillType.Entity, }, { id: 'cactus-3 (entity)', name: 'Cactus', type: PlayerKillType.Entity, }, { id: 'cactus-4 (entity)', name: 'Cactus', type: PlayerKillType.Entity, }, { id: 'cactus-5 (entity)', name: 'Cactus', type: PlayerKillType.Entity, }, { id: 'cactus-6 (entity)', name: 'Cactus', type: PlayerKillType.Entity, }, { id: 'cactus-7 (entity)', name: 'Cactus', type: PlayerKillType.Entity, }, { id: 'landmine (entity)', name: 'Landmine', type: PlayerKillType.Entity, }, { id: 'sentry.scientist.static (entity)', name: 'Scientist Sentry', type: PlayerKillType.Entity, }, { id: 'patrolhelicopter (entity)', name: 'Patrol Helicopter', type: PlayerKillType.Npc, }, { id: 'flameturret.deployed (entity)', name: 'Flame Turret', type: PlayerKillType.Entity, }, { id: 'oilfireballsmall (entity)', name: 'Small Oil Fire', type: PlayerKillType.Entity, }, { id: 'napalm (entity)', name: 'Napalm', type: PlayerKillType.Entity, }, { id: 'cargoshipdynamic2 (entity)', name: 'Cargo Ship', type: PlayerKillType.Entity, }, { id: 'cargoshipdynamic1 (entity)', name: 'Cargo Ship', type: PlayerKillType.Entity, }, { id: 'barricade.wood (entity)', name: 'Wooden Barricade', type: PlayerKillType.Entity, }, { id: 'beartrap (entity)', name: 'Bear Trap', type: PlayerKillType.Entity, }, { id: 'barricade.woodwire (entity)', name: 'Wooden Barricade', type: PlayerKillType.Entity, }, { id: 'campfire (entity)', name: 'Campfire', type: PlayerKillType.Entity, }, { id: 'rocket_crane_lift_trigger (entity)', name: 'Crane Lift', type: PlayerKillType.Entity, }, { id: 'rowboat (entity)', name: 'Rowboat', type: PlayerKillType.Entity, }, { id: 'fireball (entity)', name: 'Fireball', type: PlayerKillType.Entity, }, { id: 'teslacoil.deployed (entity)', name: 'Tesla Coil', type: PlayerKillType.Entity, }, { id: 'hotairballoon (entity)', name: 'Hot Air Balloon', type: PlayerKillType.Entity, }, { id: 'minicopter.entity (entity)', name: 'Minicopter', type: PlayerKillType.Entity, }, { id: 'attackhelicopter.entity (entity)', name: 'Attack Helicopter', type: PlayerKillType.Entity, }, { id: 'scraptransporthelicopter (entity)', name: 'Scrap Transport Helicopter', type: PlayerKillType.Entity, }, ]; export enum RCEEvent { Message = 'MESSAGE', ServerReady = 'SERVER_READY', ServiceStatus = 'SERVICE_STATUS', ServiceSensor = 'SERVICE_SENSOR', ExecutingCommand = 'EXECUTING_COMMAND', VendingMachineName = 'VENDING_MACHINE_NAME', QuickChat = 'QUICK_CHAT', PlayerSuicide = 'PLAYER_SUICIDE', PlayerRespawned = 'PLAYER_RESPAWNED', CustomZoneCreated = 'CUSTOM_ZONE_CREATED', CustomZoneRemoved = 'CUSTOM_ZONE_REMOVED', PlayerRoleAdd = 'PLAYER_ROLE_ADD', PlayerRoleRemove = 'PLAYER_ROLE_REMOVE', ItemSpawn = 'ITEM_SPAWN', NoteEdit = 'NOTE_EDIT', TeamCreate = 'TEAM_CREATE', TeamJoin = 'TEAM_JOIN', TeamLeave = 'TEAM_LEAVE', TeamInvite = 'TEAM_INVITE', TeamInviteCancel = 'TEAM_INVITE_CANCEL', TeamPromoted = 'TEAM_PROMOTED', KitSpawn = 'KIT_SPAWN', KitGive = 'KIT_GIVE', SpecialEventSet = 'SPECIAL_EVENT_SET', EventStart = 'EVENT_START', PlayerKill = 'PLAYER_KILL', PlayerJoined = 'PLAYER_JOINED', PlayerLeft = 'PLAYER_LEFT', PlayerListUpdated = 'PLAYER_LIST_UPDATED', FrequencyGained = 'FREQUENCY_GAINED', FrequencyLost = 'FREQUENCY_LOST', Error = 'ERROR', } export enum QuickChat { COMBAT_WereUnderAttack = 'd11_quick_chat_combat_slot_0', COMBAT_Retreat = 'd11_quick_chat_combat_slot_1', COMBAT_MoveOut = 'd11_quick_chat_combat_slot_2', COMBAT_DontShoot = 'd11_quick_chat_combat_slot_3', COMBAT_BeCareful = 'd11_quick_chat_combat_slot_4', COMBAT_TheyreBetterArmed = 'd11_quick_chat_combat_slot_5', COMBAT_ImOutOfAmmo = 'd11_quick_chat_combat_slot_6', COMBAT_ImHurt = 'd11_quick_chat_combat_slot_7', BUILDING_UpgradeWalls = 'd11_quick_chat_building_slot_0', BUILDING_NeedBeds = 'd11_quick_chat_building_slot_1', BUILDING_NeedBuildingPermission = 'd11_quick_chat_building_slot_2', BUILDING_WhatsDoorCode = 'd11_quick_chat_building_slot_3', BUILDING_CanIHaveKey = 'd11_quick_chat_building_slot_4', BUILDING_NeedBetterDoor = 'd11_quick_chat_building_slot_5', BUILDING_UpkeepRunningLow = 'd11_quick_chat_building_slot_6', BUILDING_WhichChestFreeGame = 'd11_quick_chat_building_slot_7', ACTIVITIES_GoingForStone = 'd11_quick_chat_activities_phrase_format d11_Stone', ACTIVITIES_GoingForWood = 'd11_quick_chat_activities_phrase_format d11_Wood', ACTIVITIES_GoingForMetal = 'd11_quick_chat_activities_phrase_format d11_Metal', ACTIVITIES_GoingForFood = 'd11_quick_chat_activities_phrase_format d11_Food', ACTIVITIES_GoingForWater = 'd11_quick_chat_activities_phrase_format d11_Water', ACTIVITIES_GoingForScrap = 'd11_quick_chat_activities_phrase_format d11_Scrap', ACTIVITIES_GoingForMetalFragments = 'd11_quick_chat_activities_phrase_format d11_Metal_Fragments', ACTIVITIES_GoingForMedicine = 'd11_quick_chat_activities_phrase_format d11_Medicine', QUESTIONS_AreYouFriendly = 'd11_quick_chat_questions_slot_0', QUESTIONS_CanIBuildAroundHere = 'd11_quick_chat_questions_slot_1', QUESTIONS_DoYouWantToTeamUp = 'd11_quick_chat_questions_slot_2', QUESTIONS_DoYouNeedAnything = 'd11_quick_chat_questions_slot_3', QUESTIONS_CouldYouHelpMe = 'd11_quick_chat_questions_slot_4', QUESTIONS_WantToTrade = 'd11_quick_chat_questions_slot_5', QUESTIONS_WhosThere = 'd11_quick_chat_questions_slot_6', QUESTIONS_CanIEnter = 'd11_quick_chat_questions_slot_7', RESPONSES_Yes = 'd11_quick_chat_responses_slot_0', RESPONSES_No = 'd11_quick_chat_responses_slot_1', RESPONSES_OK = 'd11_quick_chat_responses_slot_2', RESPONSES_ThankYou = 'd11_quick_chat_responses_slot_3', RESPONSES_NoProblem = 'd11_quick_chat_responses_slot_4', RESPONSES_Hello = 'd11_quick_chat_responses_slot_5', RESPONSES_Goodbye = 'd11_quick_chat_responses_slot_6', RESPONSES_ImSorry = 'd11_quick_chat_responses_slot_7', ORDERS_FollowMe = 'd11_quick_chat_orders_slot_0', ORDERS_GoAway = 'd11_quick_chat_orders_slot_1', ORDERS_RepairThis = 'd11_quick_chat_orders_slot_2', ORDERS_WaitHere = 'd11_quick_chat_orders_slot_3', ORDERS_ComeIn = 'd11_quick_chat_orders_slot_4', ORDERS_LetsGo = 'd11_quick_chat_orders_slot_5', ORDERS_HereTakeThis = 'd11_quick_chat_orders_slot_6', ORDERS_HurryUp = 'd11_quick_chat_orders_slot_7', LOCATION_North = 'd11_quick_chat_location_slot_0', LOCATION_NorthEast = 'd11_quick_chat_location_slot_1', LOCATION_East = 'd11_quick_chat_location_slot_2', LOCATION_SouthEast = 'd11_quick_chat_location_slot_3', LOCATION_South = 'd11_quick_chat_location_slot_4', LOCATION_SouthWest = 'd11_quick_chat_location_slot_5', LOCATION_West = 'd11_quick_chat_location_slot_6', LOCATION_NorthWest = 'd11_quick_chat_location_slot_7', NEED_Scrap = 'd11_quick_chat_i_need_phrase_format d11_Scrap', NEED_LowGradeFuel = 'd11_quick_chat_i_need_phrase_format lowgradefuel', NEED_Food = 'd11_quick_chat_i_need_phrase_format d11_Food', NEED_Water = 'd11_quick_chat_i_need_phrase_format d11_Water', NEED_Wood = 'd11_quick_chat_i_need_phrase_format d11_Wood', NEED_Stone = 'd11_quick_chat_i_need_phrase_format stones', NEED_MetalFragments = 'd11_quick_chat_i_need_phrase_format d11_Metal_Fragments', NEED_HighQualityMetal = 'd11_quick_chat_i_need_phrase_format metal.refined', HAVE_Scrap = 'd11_quick_chat_i_have_phrase_format d11_Scrap', HAVE_LowGradeFuel = 'd11_quick_chat_i_have_phrase_format lowgradefuel', HAVE_Food = 'd11_quick_chat_i_have_phrase_format d11_Food', HAVE_Water = 'd11_quick_chat_i_have_phrase_format d11_Water', HAVE_HuntingBow = 'd11_quick_chat_i_have_phrase_format bow.hunting', HAVE_Pickaxe = 'd11_quick_chat_i_have_phrase_format pickaxe', HAVE_Hatchet = 'd11_quick_chat_i_have_phrase_format hatchet', HAVE_HighQualityMetal = 'd11_quick_chat_i_have_phrase_format metal.refined', } export enum RCEIntent { All = 'ALL', ConsoleMessages = 'CONSOLE_MESSAGES', ServiceState = 'SERVICE_STATE', ServiceSensors = 'SERVICE_SENSORS', } export enum LogLevel { None = 0, Error = 1, Warn = 2, Info = 3, Debug = 4, } export const RegularExpressions: { [key: string]: RegExp } = { AIO_RPC_Error: new RegExp(/status\s*=\s*([^\n]+)\s+details\s*=\s*"([^"]+)"/), Log: new RegExp(/(\d{2}\/\d{2}\/\d{4} \d{2}:\d{2}:\d{2}):LOG: (.+)$/), CommandExecuting: new RegExp(/Executing console system command '([^']+)'/), VendingMachineName: new RegExp( /\[VENDING MACHINE\] Player \[ ([^\]]+) \] changed name from \[ ([^\]]+) \] to \[ ([^\]]+) \]/ ), QuickChat: new RegExp(/(\[CHAT (TEAM|SERVER|LOCAL)\]) ([\w\s\-_]+) : (.+)/), CustomZoneCreated: new RegExp(/Successfully created zone \[([\w\d\s_-]+)\]/), CustomZoneRemoved: new RegExp(/Successfully removed zone \[([\w\d\s_-]+)\]/), PlayerRoleAdd: new RegExp( /\[([\w\s-]+)] Added \[([\w\s-]+)] to Group \[([\w\s-]+)]/ ), PlayerRoleRemove: new RegExp( /\[([\w\s-]+)] Removed \[([\w\s-]+)] from Group \[([\w\s-]+)]/ ), ItemSpawn: new RegExp( /\bgiving ([\w\s._-]+) ([\d.]+) x ([\w\s._-]+(?: [\w\s._-]+)*)\b/ ), NoteEdit: new RegExp( /\[NOTE PANEL\] Player \[ ([^\]]+) \] changed name from \[\s*([\s\S]*?)\s*\] to \[\s*([\s\S]*?)\s*\]/ ), TeamCreate: new RegExp(/\[([^\]]+)\] created a new team, ID: (\d+)/), TeamJoin: new RegExp( /\[([^\]]+)\] has joined \[([^\]]+)]s team, ID: \[(\d+)\]/ ), TeamLeave: new RegExp( /\[([^\]]+)\] has left \[([^\]]+)]s team, ID: \[(\d+)\]/ ), TeamInvite: new RegExp( /\[([\w\s]+)] has invited \[([\w-]+)] to their team ID: \[(\d+)]/ ), TeamInviteCancel: new RegExp( /\[([\w\s-]+)] canceled the invitation for \[([\w\s-]+)] to their team, ID: \[(\d+)]/ ), TeamPromoted: new RegExp( /\[([\w\s-]+)] promoted \[([\w\s-]+)] as their new leader of the team, ID: \[(\d+)]/ ), KitSpawn: new RegExp(/SERVER giving (.+?) kit (\w+)/), KitGive: new RegExp( /\[ServerVar\] ([\w\s_-]+) giving ([\w\s_-]+) kit ([\w\s_-]+)/ ), SpecialEventSet: new RegExp(/Setting event as :(\w+)/), };