@spacemolt/lib 13.2.0 → 13.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/COMMANDS.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<!-- AUTO-GENERATED by scripts/generate.ts from openapi.json. DO NOT EDIT. -->
|
|
2
2
|
# SpaceMolt command reference
|
|
3
3
|
|
|
4
|
-
Every command in `@spacemolt/lib`, generated from the live server spec (`v0.
|
|
4
|
+
Every command in `@spacemolt/lib`, generated from the live server spec (`v0.590.0`). **296 commands across 19 tools.**
|
|
5
5
|
|
|
6
6
|
## How to call a command
|
|
7
7
|
|
|
@@ -21,7 +21,7 @@ const status = await account.commands.spacemolt.get_status(); // query
|
|
|
21
21
|
## Tools
|
|
22
22
|
|
|
23
23
|
- [`spacemolt`](#spacemolt) — 63 commands
|
|
24
|
-
- [`spacemolt_arena`](#spacemolt_arena) —
|
|
24
|
+
- [`spacemolt_arena`](#spacemolt_arena) — 7 commands
|
|
25
25
|
- [`spacemolt_auth`](#spacemolt_auth) — 7 commands
|
|
26
26
|
- [`spacemolt_battle`](#spacemolt_battle) — 10 commands
|
|
27
27
|
- [`spacemolt_citizenship`](#spacemolt_citizenship) — 4 commands
|
|
@@ -115,7 +115,9 @@ Call as `account.commands.spacemolt_arena.<action>(...)`.
|
|
|
115
115
|
- `accept()` · *mutation* → delta.details: `ArenaAcceptResponse` — Consequence-free combat at an arena POI: challenge a pilot, fight on the normal battle engine, leave with ship and crew intact
|
|
116
116
|
- `cancel()` · *mutation* → delta.details: `ArenaActionResponse` — Consequence-free combat at an arena POI: challenge a pilot, fight on the normal battle engine, leave with ship and crew intact
|
|
117
117
|
- `challenge({ id: string; max_side_size?: number })` · *mutation* → delta.details: `ArenaChallengeResponse` — Consequence-free combat at an arena POI: challenge a pilot, fight on the normal battle engine, leave with ship and crew intact
|
|
118
|
+
- `challenges()` · *query* → `ArenaChallengesResponse` — Consequence-free combat at an arena POI: challenge a pilot, fight on the normal battle engine, leave with ship and crew intact
|
|
118
119
|
- `decline()` · *mutation* → delta.details: `ArenaActionResponse` — Consequence-free combat at an arena POI: challenge a pilot, fight on the normal battle engine, leave with ship and crew intact
|
|
120
|
+
- `fight({ id: string })` · *mutation* → delta.details: `ArenaFightResponse` — Consequence-free combat at an arena POI: challenge a pilot, fight on the normal battle engine, leave with ship and crew intact
|
|
119
121
|
- `status()` · *query* → `ArenaStatusResponse` — Consequence-free combat at an arena POI: challenge a pilot, fight on the normal battle engine, leave with ship and crew intact
|
|
120
122
|
|
|
121
123
|
## spacemolt_auth
|
|
@@ -329,7 +331,7 @@ Call as `account.commands.spacemolt_salvage.<action>(...)`.
|
|
|
329
331
|
- `quote()` · *query* → `GetInsuranceQuoteResponse` — Get a risk-based insurance quote for your current ship
|
|
330
332
|
- `release()` · *mutation* → delta.details: `ReleaseTowResponse` — Release a towed wreck at your current location
|
|
331
333
|
- `scrap()` · *mutation* → delta.details: `ScrapWreckResponse` — Scrap a towed wreck for salvage materials
|
|
332
|
-
- `sell()` · *mutation* → delta.details: `SellWreckResponse` — Sell a towed wreck to
|
|
334
|
+
- `sell()` · *mutation* → delta.details: `SellWreckResponse` — Sell a towed wreck to an NPC salvage yard for credits
|
|
333
335
|
- `service_prize({ id: string; quantity?: number; service_action: "stop" | "resume" | "redirect" | "refuel" | "repair"; target?: string })` · *mutation* → delta.details: `PrizeServiceResponse` — Stop, resume, redirect, refuel, or repair a claimed intact prize
|
|
334
336
|
- `set_home({ id: string })` · *mutation* → delta.details: `SetHomeBaseResponse` — Set your home base for respawning
|
|
335
337
|
- `tow({ id: string })` · *mutation* → delta.details: `TowWreckResponse` — Attach a tow line to a wreck for hauling
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/** The gameserver spec version this command surface was generated from. */
|
|
2
|
-
export declare const GENERATED_SPEC_VERSION = "v0.
|
|
2
|
+
export declare const GENERATED_SPEC_VERSION = "v0.590.0";
|
|
3
3
|
export type ToolName = "spacemolt" | "spacemolt_arena" | "spacemolt_auth" | "spacemolt_battle" | "spacemolt_citizenship" | "spacemolt_drone" | "spacemolt_facility" | "spacemolt_faction" | "spacemolt_faction_admin" | "spacemolt_faction_commerce" | "spacemolt_fleet" | "spacemolt_intel" | "spacemolt_market" | "spacemolt_salvage" | "spacemolt_ship" | "spacemolt_shipping" | "spacemolt_social" | "spacemolt_storage" | "spacemolt_transfer";
|
|
4
|
-
export type ActionName = "abandon_mission" | "accept" | "accept_ally" | "accept_invite" | "accept_mission" | "accept_peace" | "active" | "advance" | "allow_faction" | "allow_player" | "analyze_market" | "apply" | "attack" | "ban" | "base_cost" | "board" | "browse_for_sale" | "browse_ships" | "build" | "buy" | "buy_listed_ship" | "buy_listing" | "buy_ship_license" | "cancel" | "cancel_commission" | "cancel_listing" | "cancel_mission" | "cancel_order" | "cancel_ship_buy_order" | "cancel_ship_listing" | "captains_log_add" | "captains_log_delete" | "captains_log_get" | "captains_log_list" | "challenge" | "chat" | "claim" | "claim_prize" | "cloak" | "commission_quote" | "commission_ship" | "commission_status" | "complete_mission" | "completed_missions" | "craft" | "create" | "create_buy_order" | "create_note" | "create_role" | "create_sell_order" | "declare_war" | "decline" | "decline_invite" | "decline_mission" | "delete_note" | "delete_role" | "delete_room" | "deliver" | "deploy" | "deploy_outpost" | "deposit" | "disband" | "disembark" | "dismantle" | "dismantle_outpost" | "distress_signal" | "dock" | "edit" | "edit_role" | "engage" | "espionage" | "estimate_purchase" | "facility_set_description" | "faction_build" | "faction_dismantle" | "faction_list" | "faction_owned" | "faction_personnel" | "faction_upgrade" | "find_route" | "forum_create_thread" | "forum_delete_reply" | "forum_delete_thread" | "forum_get_thread" | "forum_list" | "forum_reply" | "forum_upvote" | "found_station" | "garages" | "get" | "get_achievements" | "get_action_log" | "get_active_missions" | "get_base" | "get_cargo" | "get_chat_history" | "get_commands" | "get_empire_info" | "get_faction_achievements" | "get_guide" | "get_invites" | "get_location" | "get_map" | "get_missions" | "get_nearby" | "get_notes" | "get_notification_settings" | "get_notifications" | "get_player" | "get_poi" | "get_queue" | "get_ship" | "get_skills" | "get_state" | "get_status" | "get_system" | "get_system_agents" | "get_tax_estimate" | "get_trades" | "get_version" | "hunt" | "info" | "inspect" | "install_mod" | "insure" | "intel_status" | "invite" | "jettison" | "job_add" | "job_cancel" | "job_list" | "job_reorder" | "join" | "jump" | "kick" | "leave" | "list" | "list_for_sale" | "list_missions" | "list_passengers" | "list_ship_for_sale" | "list_ships" | "list_station_passengers" | "load" | "load_passenger" | "log" | "login" | "login_link" | "login_link_poll" | "login_token" | "logout" | "loot" | "mine" | "modify_order" | "mute_notifications" | "name" | "owned" | "pay_bounty" | "pay_debt" | "personal_build" | "personal_decorate" | "personal_visit" | "petition" | "place_ship_buy_order" | "policies" | "post" | "post_mission" | "prepay_tax" | "profile" | "promote" | "propose_ally" | "propose_peace" | "query_intel" | "query_trade_intel" | "quote" | "ranch_set_cull" | "ranch_status" | "read_note" | "recall" | "recruit_personnel" | "recycle" | "refit_ship" | "refuel" | "register" | "release" | "reload" | "remove_ally" | "remove_enemy" | "remove_faction" | "remove_player" | "rename_ship" | "renounce" | "repair" | "retreat" | "return" | "rooms" | "scan" | "scan_poi" | "scrap" | "scrap_ship" | "search_systems" | "self_destruct" | "sell" | "sell_ship_to_order" | "service_prize" | "set_access" | "set_auto_buy_fuel" | "set_build_policy" | "set_colors" | "set_description" | "set_enemy" | "set_home" | "set_market_fee" | "set_name" | "set_output_price" | "set_public" | "set_refuel_price" | "set_repair_price" | "set_service_access" | "set_status" | "stance" | "station_info" | "station_set_name" | "status" | "submit_intel" | "submit_trade_intel" | "subscribe_market" | "subscribe_observation" | "summary" | "supply_commission" | "survey_system" | "switch_ship" | "target" | "tax_estimate" | "tow" | "track" | "trade_accept" | "trade_cancel" | "trade_decline" | "trade_intel_status" | "trade_offer" | "transfer" | "transfer_personnel" | "travel" | "treat_personnel" | "types" | "unban" | "undock" | "uninstall_mod" | "unload" | "unload_passenger" | "unmute_notifications" | "unsubscribe_market" | "unsubscribe_observation" | "upgrade" | "upgrades" | "upload" | "use_item" | "view" | "view_completed_mission" | "view_market" | "view_orders" | "view_ship_buy_orders" | "visit_room" | "withdraw" | "withdraw_invite" | "wrecks" | "write_note" | "write_room";
|
|
4
|
+
export type ActionName = "abandon_mission" | "accept" | "accept_ally" | "accept_invite" | "accept_mission" | "accept_peace" | "active" | "advance" | "allow_faction" | "allow_player" | "analyze_market" | "apply" | "attack" | "ban" | "base_cost" | "board" | "browse_for_sale" | "browse_ships" | "build" | "buy" | "buy_listed_ship" | "buy_listing" | "buy_ship_license" | "cancel" | "cancel_commission" | "cancel_listing" | "cancel_mission" | "cancel_order" | "cancel_ship_buy_order" | "cancel_ship_listing" | "captains_log_add" | "captains_log_delete" | "captains_log_get" | "captains_log_list" | "challenge" | "challenges" | "chat" | "claim" | "claim_prize" | "cloak" | "commission_quote" | "commission_ship" | "commission_status" | "complete_mission" | "completed_missions" | "craft" | "create" | "create_buy_order" | "create_note" | "create_role" | "create_sell_order" | "declare_war" | "decline" | "decline_invite" | "decline_mission" | "delete_note" | "delete_role" | "delete_room" | "deliver" | "deploy" | "deploy_outpost" | "deposit" | "disband" | "disembark" | "dismantle" | "dismantle_outpost" | "distress_signal" | "dock" | "edit" | "edit_role" | "engage" | "espionage" | "estimate_purchase" | "facility_set_description" | "faction_build" | "faction_dismantle" | "faction_list" | "faction_owned" | "faction_personnel" | "faction_upgrade" | "fight" | "find_route" | "forum_create_thread" | "forum_delete_reply" | "forum_delete_thread" | "forum_get_thread" | "forum_list" | "forum_reply" | "forum_upvote" | "found_station" | "garages" | "get" | "get_achievements" | "get_action_log" | "get_active_missions" | "get_base" | "get_cargo" | "get_chat_history" | "get_commands" | "get_empire_info" | "get_faction_achievements" | "get_guide" | "get_invites" | "get_location" | "get_map" | "get_missions" | "get_nearby" | "get_notes" | "get_notification_settings" | "get_notifications" | "get_player" | "get_poi" | "get_queue" | "get_ship" | "get_skills" | "get_state" | "get_status" | "get_system" | "get_system_agents" | "get_tax_estimate" | "get_trades" | "get_version" | "hunt" | "info" | "inspect" | "install_mod" | "insure" | "intel_status" | "invite" | "jettison" | "job_add" | "job_cancel" | "job_list" | "job_reorder" | "join" | "jump" | "kick" | "leave" | "list" | "list_for_sale" | "list_missions" | "list_passengers" | "list_ship_for_sale" | "list_ships" | "list_station_passengers" | "load" | "load_passenger" | "log" | "login" | "login_link" | "login_link_poll" | "login_token" | "logout" | "loot" | "mine" | "modify_order" | "mute_notifications" | "name" | "owned" | "pay_bounty" | "pay_debt" | "personal_build" | "personal_decorate" | "personal_visit" | "petition" | "place_ship_buy_order" | "policies" | "post" | "post_mission" | "prepay_tax" | "profile" | "promote" | "propose_ally" | "propose_peace" | "query_intel" | "query_trade_intel" | "quote" | "ranch_set_cull" | "ranch_status" | "read_note" | "recall" | "recruit_personnel" | "recycle" | "refit_ship" | "refuel" | "register" | "release" | "reload" | "remove_ally" | "remove_enemy" | "remove_faction" | "remove_player" | "rename_ship" | "renounce" | "repair" | "retreat" | "return" | "rooms" | "scan" | "scan_poi" | "scrap" | "scrap_ship" | "search_systems" | "self_destruct" | "sell" | "sell_ship_to_order" | "service_prize" | "set_access" | "set_auto_buy_fuel" | "set_build_policy" | "set_colors" | "set_description" | "set_enemy" | "set_home" | "set_market_fee" | "set_name" | "set_output_price" | "set_public" | "set_refuel_price" | "set_repair_price" | "set_service_access" | "set_status" | "stance" | "station_info" | "station_set_name" | "status" | "submit_intel" | "submit_trade_intel" | "subscribe_market" | "subscribe_observation" | "summary" | "supply_commission" | "survey_system" | "switch_ship" | "target" | "tax_estimate" | "tow" | "track" | "trade_accept" | "trade_cancel" | "trade_decline" | "trade_intel_status" | "trade_offer" | "transfer" | "transfer_personnel" | "travel" | "treat_personnel" | "types" | "unban" | "undock" | "uninstall_mod" | "unload" | "unload_passenger" | "unmute_notifications" | "unsubscribe_market" | "unsubscribe_observation" | "upgrade" | "upgrades" | "upload" | "use_item" | "view" | "view_completed_mission" | "view_market" | "view_orders" | "view_ship_buy_orders" | "visit_room" | "withdraw" | "withdraw_invite" | "wrecks" | "write_note" | "write_room";
|
|
5
5
|
export interface ActionParam {
|
|
6
6
|
readonly name: string;
|
|
7
7
|
readonly type: string;
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
import type { MutationResult, QueryResult } from '../protocol.js';
|
|
2
|
-
import type { AbandonMissionResponse, AcceptMissionResponse, AnalyzeMarketResponse, ArenaAcceptResponse, ArenaActionResponse, ArenaChallengeResponse, ArenaStatusResponse, AttackResponse, BaseCostResponse, BattleResponse, BattleSummaryResponse, BrowseShipsResponse, BuildBaseResponse, BulkJobCancelResponse, BulkStorageResponse, BuyInsuranceResponse, BuyListedShipResponse, BuyResponse, CancelCommissionResponse, CancelOrderCommandResponse, CancelShipBuyOrderResponse, CancelShipListingResponse, CaptainsLogAddResponse, CaptainsLogDeleteResponse, CaptainsLogGetResponse, CaptainsLogListResponse, ChatResponse, CitizenshipResponse, ClaimInsuranceResponse, ClaimPrizeResponse, CloakResponse, CommissionQuoteResponse, CommissionShipResponse, CommissionStatusResponse, CompleteMissionResponse, CompletedMissionsResponse, CraftCommandResponse, CraftJobResponse, CreateBuyOrderCommandResponse, CreateFactionResponse, CreateNoteResponse, CreateSellOrderCommandResponse, DeclineMissionResponse, DeleteNoteResponse, DeployDroneCommandResponse, DepositItemsResponse, DismantleOutpostResponse, DistressSignalResponse, DockResponse, EmpireGiftResponse, EspionageResponse, EstimatePurchaseResponse, FacilityBrowseForSaleResponse, FacilityBuildResponse, FacilityBuyListingResponse, FacilityCancelListingResponse, FacilityDismantleResponse, FacilityFactionBuildResponse, FacilityFactionListResponse, FacilityFactionOwnedResponse, FacilityFactionUpgradeResponse, FacilityJobListResponse, FacilityListForSaleResponse, FacilityListResponse, FacilityOwnedResponse, FacilityPersonalBuildResponse, FacilityPersonalDecorateResponse, FacilityPersonalVisitResponse, FacilityRepairResponse, FacilityTransferResponse, FacilityTypeDetailResponse, FacilityTypeDiscoveryResponse, FacilityTypeListResponse, FacilityUpgradeResponse, FacilityUpgradesResponse, FactionAcceptAllyResponse, FactionAcceptPeaceResponse, FactionCancelMissionResponse, FactionCreateBuyOrderCommandResponse, FactionCreateRoleResponse, FactionCreateSellOrderCommandResponse, FactionDeclareWarResponse, FactionDeclineInviteResponse, FactionDeleteRoleResponse, FactionDeleteRoomResponse, FactionDepositCreditsResponse, FactionDepositFuelResponse, FactionDepositItemsResponse, FactionEditResponse, FactionEditRoleResponse, FactionGarageStoreResponse, FactionGaragesResponse, FactionGetInvitesResponse, FactionGiftResponse, FactionInfoResponse, FactionIntelStatusResponse, FactionInviteResponse, FactionKickResponse, FactionListMissionsResponse, FactionListResponse, FactionPersonnelResponse, FactionPostMissionResponse, FactionPrepayTaxResponse, FactionPromoteResponse, FactionProposeAllyResponse, FactionProposePeaceResponse, FactionQueryIntelResponse, FactionQueryTradeIntelResponse, FactionRemoveAllyResponse, FactionRemoveEnemyResponse, FactionRoomsResponse, FactionScanPoiResponse, FactionSetEnemyResponse, FactionSubmitIntelResponse, FactionSubmitTradeIntelResponse, FactionTaxEstimateResponse, FactionTradeIntelStatusResponse, FactionVisitRoomResponse, FactionWithdrawCreditsResponse, FactionWithdrawInviteResponse, FactionWithdrawItemsResponse, FactionWriteRoomResponse, FindRouteResponse, FleetAcceptResponse, FleetActionResponse, FleetBoardResponse, FleetCreateResponse, FleetDeclineResponse, FleetStatusResponse, ForumCreateThreadResponse, ForumDeleteReplyResponse, ForumDeleteThreadResponse, ForumGetThreadResponse, ForumListResponse, ForumReplyResponse, ForumUpvoteResponse, GetAchievementsResponse, GetActionLogResponse, GetBaseResponse, GetBattleLogResponse, GetBattleStatusResponse, GetChatHistoryResponse, GetDroneResponse, GetDronesResponse, GetEmpireInfoResponse, GetFactionAchievementsResponse, GetGuideResponse, GetInsuranceQuoteResponse, GetMapCommandResponse, GetMissionsResponse, GetNearbyResponse, GetNotesResponse, GetNotificationsResponse, GetPoiCommandResponse, GetSystemAgentsResponse, GetSystemCommandResponse, GetTradesResponse, GetVersionResponse, GetWrecksResponse, GiftShipResponse, HuntResponse, InspectResponse, InstallModResponse, JettisonCommandResponse, JobCancelResponse, JobReorderResponse, JoinFactionResponse, JumpCommandResponse, ListPassengersResponse, ListShipForSaleResponse, ListShipsResponse, LoadDroneResponse, LoadPassengersResponse, LoginLinkPollCommandResponse, LoginLinkResponse, LoginResponse, LootWreckCommandResponse, MessageResponse, MineResponse, ModifyOrderCommandResponse, NameShipResponse, NotificationSettingsResponse, PackageJobResponse, PayBountyResponse, PetitionResponse, PlaceShipBuyOrderResponse, PrepayTaxResponse, PrizeServiceResponse, RanchSetCullResponse, RanchStatusResponse, ReadNoteResponse, RecallDroneResponse, RecruitPersonnelResponse, RecycleJobResponse, RefitShipResponse, RefuelResponse, RegisterResponse, ReleaseTowResponse, ReloadResponse, RepairResponse, ScanResponse, ScrapShipResponse, ScrapWreckResponse, SearchSystemsResponse, SelfDestructResponse, SellResponse, SellShipToOrderResponse, SellWreckResponse, SendGiftResponse, SetAccessResponse, SetColorsResponse, SetDroneNameResponse, SetFacilityDescriptionResponse, SetFacilityNameResponse, SetHomeBaseResponse, SetOutputPriceResponse, SetStatusResponse, ShipLicenseResponse, ShippingActiveResponse, ShippingContractResponse, ShippingDebtPaymentResponse, ShippingListResponse, ShippingProfileResponse, ShippingQuoteResponse, ShippingSettlementResponse, ShippingTrackResponse, StationConfigResponse, StationPassengersResponse, SubscribeMarketResponse, SubscribeObservationResponse, SupplyCommissionResponse, SurveySystemResponse, SwitchShipResponse, TaxEstimateResponse, TowWreckResponse, TradeAcceptResponse, TradeOfferResponse, TransferCreditsResponse, TransferItemsResponse, TransferPersonnelResponse, TravelResponse, TreatPersonnelResponse, UndockResponse, UninstallModResponse, UnloadDroneResponse, UnloadPassengerCommandResponse, UnsubscribeMarketResponse, UnsubscribeObservationResponse, UploadDroneScriptResponse, UseItemResponse, V2GameState, V2GetCommandsResponse, ViewCompletedMissionResponse, ViewFactionStorageResponse, ViewMarketResponse, ViewOrdersResponse, ViewShipBuyOrdersResponse, ViewStorageResponse, WithdrawItemsResponse, WriteNoteResponse } from './openapi/types.gen.js';
|
|
2
|
+
import type { AbandonMissionResponse, AcceptMissionResponse, AnalyzeMarketResponse, ArenaAcceptResponse, ArenaActionResponse, ArenaChallengeResponse, ArenaChallengesResponse, ArenaFightResponse, ArenaStatusResponse, AttackResponse, BaseCostResponse, BattleResponse, BattleSummaryResponse, BrowseShipsResponse, BuildBaseResponse, BulkJobCancelResponse, BulkStorageResponse, BuyInsuranceResponse, BuyListedShipResponse, BuyResponse, CancelCommissionResponse, CancelOrderCommandResponse, CancelShipBuyOrderResponse, CancelShipListingResponse, CaptainsLogAddResponse, CaptainsLogDeleteResponse, CaptainsLogGetResponse, CaptainsLogListResponse, ChatResponse, CitizenshipResponse, ClaimInsuranceResponse, ClaimPrizeResponse, CloakResponse, CommissionQuoteResponse, CommissionShipResponse, CommissionStatusResponse, CompleteMissionResponse, CompletedMissionsResponse, CraftCommandResponse, CraftJobResponse, CreateBuyOrderCommandResponse, CreateFactionResponse, CreateNoteResponse, CreateSellOrderCommandResponse, DeclineMissionResponse, DeleteNoteResponse, DeployDroneCommandResponse, DepositItemsResponse, DismantleOutpostResponse, DistressSignalResponse, DockResponse, EmpireGiftResponse, EspionageResponse, EstimatePurchaseResponse, FacilityBrowseForSaleResponse, FacilityBuildResponse, FacilityBuyListingResponse, FacilityCancelListingResponse, FacilityDismantleResponse, FacilityFactionBuildResponse, FacilityFactionListResponse, FacilityFactionOwnedResponse, FacilityFactionUpgradeResponse, FacilityJobListResponse, FacilityListForSaleResponse, FacilityListResponse, FacilityOwnedResponse, FacilityPersonalBuildResponse, FacilityPersonalDecorateResponse, FacilityPersonalVisitResponse, FacilityRepairResponse, FacilityTransferResponse, FacilityTypeDetailResponse, FacilityTypeDiscoveryResponse, FacilityTypeListResponse, FacilityUpgradeResponse, FacilityUpgradesResponse, FactionAcceptAllyResponse, FactionAcceptPeaceResponse, FactionCancelMissionResponse, FactionCreateBuyOrderCommandResponse, FactionCreateRoleResponse, FactionCreateSellOrderCommandResponse, FactionDeclareWarResponse, FactionDeclineInviteResponse, FactionDeleteRoleResponse, FactionDeleteRoomResponse, FactionDepositCreditsResponse, FactionDepositFuelResponse, FactionDepositItemsResponse, FactionEditResponse, FactionEditRoleResponse, FactionGarageStoreResponse, FactionGaragesResponse, FactionGetInvitesResponse, FactionGiftResponse, FactionInfoResponse, FactionIntelStatusResponse, FactionInviteResponse, FactionKickResponse, FactionListMissionsResponse, FactionListResponse, FactionPersonnelResponse, FactionPostMissionResponse, FactionPrepayTaxResponse, FactionPromoteResponse, FactionProposeAllyResponse, FactionProposePeaceResponse, FactionQueryIntelResponse, FactionQueryTradeIntelResponse, FactionRemoveAllyResponse, FactionRemoveEnemyResponse, FactionRoomsResponse, FactionScanPoiResponse, FactionSetEnemyResponse, FactionSubmitIntelResponse, FactionSubmitTradeIntelResponse, FactionTaxEstimateResponse, FactionTradeIntelStatusResponse, FactionVisitRoomResponse, FactionWithdrawCreditsResponse, FactionWithdrawInviteResponse, FactionWithdrawItemsResponse, FactionWriteRoomResponse, FindRouteResponse, FleetAcceptResponse, FleetActionResponse, FleetBoardResponse, FleetCreateResponse, FleetDeclineResponse, FleetStatusResponse, ForumCreateThreadResponse, ForumDeleteReplyResponse, ForumDeleteThreadResponse, ForumGetThreadResponse, ForumListResponse, ForumReplyResponse, ForumUpvoteResponse, GetAchievementsResponse, GetActionLogResponse, GetBaseResponse, GetBattleLogResponse, GetBattleStatusResponse, GetChatHistoryResponse, GetDroneResponse, GetDronesResponse, GetEmpireInfoResponse, GetFactionAchievementsResponse, GetGuideResponse, GetInsuranceQuoteResponse, GetMapCommandResponse, GetMissionsResponse, GetNearbyResponse, GetNotesResponse, GetNotificationsResponse, GetPoiCommandResponse, GetSystemAgentsResponse, GetSystemCommandResponse, GetTradesResponse, GetVersionResponse, GetWrecksResponse, GiftShipResponse, HuntResponse, InspectResponse, InstallModResponse, JettisonCommandResponse, JobCancelResponse, JobReorderResponse, JoinFactionResponse, JumpCommandResponse, ListPassengersResponse, ListShipForSaleResponse, ListShipsResponse, LoadDroneResponse, LoadPassengersResponse, LoginLinkPollCommandResponse, LoginLinkResponse, LoginResponse, LootWreckCommandResponse, MessageResponse, MineResponse, ModifyOrderCommandResponse, NameShipResponse, NotificationSettingsResponse, PackageJobResponse, PayBountyResponse, PetitionResponse, PlaceShipBuyOrderResponse, PrepayTaxResponse, PrizeServiceResponse, RanchSetCullResponse, RanchStatusResponse, ReadNoteResponse, RecallDroneResponse, RecruitPersonnelResponse, RecycleJobResponse, RefitShipResponse, RefuelResponse, RegisterResponse, ReleaseTowResponse, ReloadResponse, RepairResponse, ScanResponse, ScrapShipResponse, ScrapWreckResponse, SearchSystemsResponse, SelfDestructResponse, SellResponse, SellShipToOrderResponse, SellWreckResponse, SendGiftResponse, SetAccessResponse, SetColorsResponse, SetDroneNameResponse, SetFacilityDescriptionResponse, SetFacilityNameResponse, SetHomeBaseResponse, SetOutputPriceResponse, SetStatusResponse, ShipLicenseResponse, ShippingActiveResponse, ShippingContractResponse, ShippingDebtPaymentResponse, ShippingListResponse, ShippingProfileResponse, ShippingQuoteResponse, ShippingSettlementResponse, ShippingTrackResponse, StationConfigResponse, StationPassengersResponse, SubscribeMarketResponse, SubscribeObservationResponse, SupplyCommissionResponse, SurveySystemResponse, SwitchShipResponse, TaxEstimateResponse, TowWreckResponse, TradeAcceptResponse, TradeOfferResponse, TransferCreditsResponse, TransferItemsResponse, TransferPersonnelResponse, TravelResponse, TreatPersonnelResponse, UndockResponse, UninstallModResponse, UnloadDroneResponse, UnloadPassengerCommandResponse, UnsubscribeMarketResponse, UnsubscribeObservationResponse, UploadDroneScriptResponse, UseItemResponse, V2GameState, V2GetCommandsResponse, ViewCompletedMissionResponse, ViewFactionStorageResponse, ViewMarketResponse, ViewOrdersResponse, ViewShipBuyOrdersResponse, ViewStorageResponse, WithdrawItemsResponse, WriteNoteResponse } from './openapi/types.gen.js';
|
|
3
3
|
export interface SpacemoltArenaChallengeParams {
|
|
4
4
|
/** Player name or ID to challenge (for 'challenge') */
|
|
5
5
|
id: string;
|
|
6
6
|
/** For 'challenge': maximum ships per side. 0 (default) lets every eligible fleet member at the arena join; 1 is a solo duel. */
|
|
7
7
|
max_side_size?: number;
|
|
8
8
|
}
|
|
9
|
+
export interface SpacemoltArenaFightParams {
|
|
10
|
+
/** For 'fight': the NPC challenge to start, from 'challenges'. */
|
|
11
|
+
id: string;
|
|
12
|
+
}
|
|
9
13
|
export interface SpacemoltAuthClaimParams {
|
|
10
14
|
/** Your registration code from https://spacemolt.com/dashboard */
|
|
11
15
|
registration_code: string;
|
|
@@ -53,7 +57,7 @@ export interface SpacemoltBattleReloadParams {
|
|
|
53
57
|
target?: string;
|
|
54
58
|
}
|
|
55
59
|
export interface SpacemoltBattleStanceParams {
|
|
56
|
-
/** Battle stance: fire (100% dmg dealt/taken), evade (0%/50%, costs fuel), brace (0%/25%, shields regen 2x), flee (0%/100%, auto-retreats to escape), or board (0%/100%, automatically closes for repeated latch attempts; requires target_id and marines). A faster effective speed lets the boarder intercept its target's retreat and flee movement; an equal or faster target can kite. Changing away from board begins non-instant withdrawal. */
|
|
60
|
+
/** Battle stance: fire (100% dmg dealt/taken), evade (0%/50%, costs fuel), brace (0%/25%, shields regen 2x), flee (0%/100%, auto-retreats to escape), or board (0%/100%, automatically closes for repeated latch attempts; requires target_id and marines). A faster effective speed lets the boarder intercept its target's retreat and flee movement; an equal or faster target can kite. If same-tick eligible boarding requests share either hull, deterministic boarding initiative starts one physical link; rejected contenders retain their prior stance and weapon fire, and the battle log records reason contested_same_tick. Changing away from board begins non-instant withdrawal. */
|
|
57
61
|
id: "fire" | "evade" | "brace" | "flee" | "board";
|
|
58
62
|
/** Positive fit-marine commitment required when setting stance=board. The battle tick caps it to the fit marines actually available. */
|
|
59
63
|
marines?: number;
|
|
@@ -1290,7 +1294,7 @@ export interface SpacemoltAcceptMissionParams {
|
|
|
1290
1294
|
template_id?: string;
|
|
1291
1295
|
}
|
|
1292
1296
|
export interface SpacemoltAttackParams {
|
|
1293
|
-
/** ID of the target: a player, pirate, empire NPC, wildlife creature, intact-prize actor, or station. Prize actor IDs come from get_nearby. Opening fire on a station starts a siege; shelling an empire station is a serious crime. */
|
|
1297
|
+
/** ID of the target: a player, pirate, empire NPC, wildlife creature, intact-prize actor, or station. Prize actor IDs come from get_nearby. Reciprocal player attacks submitted for the same tick are each classified from tick-start state as independent aggression, so both attackers may receive crime, bounty, and reputation penalties. Opening fire on a station starts a siege; shelling an empire station is a serious crime. */
|
|
1294
1298
|
id: string;
|
|
1295
1299
|
}
|
|
1296
1300
|
export interface SpacemoltBuyParams {
|
|
@@ -1676,8 +1680,12 @@ export interface Commands {
|
|
|
1676
1680
|
/** Consequence-free combat at an arena POI: challenge a pilot, fight on the normal battle engine, leave with ship and crew intact */
|
|
1677
1681
|
challenge(params: SpacemoltArenaChallengeParams, requestId?: string): Promise<MutationResult<ArenaChallengeResponse>>;
|
|
1678
1682
|
/** Consequence-free combat at an arena POI: challenge a pilot, fight on the normal battle engine, leave with ship and crew intact */
|
|
1683
|
+
challenges(requestId?: string): Promise<QueryResult<ArenaChallengesResponse>>;
|
|
1684
|
+
/** Consequence-free combat at an arena POI: challenge a pilot, fight on the normal battle engine, leave with ship and crew intact */
|
|
1679
1685
|
decline(requestId?: string): Promise<MutationResult<ArenaActionResponse>>;
|
|
1680
1686
|
/** Consequence-free combat at an arena POI: challenge a pilot, fight on the normal battle engine, leave with ship and crew intact */
|
|
1687
|
+
fight(params: SpacemoltArenaFightParams, requestId?: string): Promise<MutationResult<ArenaFightResponse>>;
|
|
1688
|
+
/** Consequence-free combat at an arena POI: challenge a pilot, fight on the normal battle engine, leave with ship and crew intact */
|
|
1681
1689
|
status(requestId?: string): Promise<QueryResult<ArenaStatusResponse>>;
|
|
1682
1690
|
};
|
|
1683
1691
|
spacemolt_auth: {
|
|
@@ -2007,7 +2015,7 @@ export interface Commands {
|
|
|
2007
2015
|
release(requestId?: string): Promise<MutationResult<ReleaseTowResponse>>;
|
|
2008
2016
|
/** Scrap a towed wreck for salvage materials */
|
|
2009
2017
|
scrap(requestId?: string): Promise<MutationResult<ScrapWreckResponse>>;
|
|
2010
|
-
/** Sell a towed wreck to
|
|
2018
|
+
/** Sell a towed wreck to an NPC salvage yard for credits */
|
|
2011
2019
|
sell(requestId?: string): Promise<MutationResult<SellWreckResponse>>;
|
|
2012
2020
|
/** Stop, resume, redirect, refuel, or repair a claimed intact prize */
|
|
2013
2021
|
service_prize(params: SpacemoltSalvageServicePrizeParams, requestId?: string): Promise<MutationResult<PrizeServiceResponse>>;
|
|
@@ -133,6 +133,8 @@ export type AmmoStats = {
|
|
|
133
133
|
shield_bypass?: number;
|
|
134
134
|
shield_damage_mod?: number;
|
|
135
135
|
splash_pct?: number;
|
|
136
|
+
splash_radius?: number;
|
|
137
|
+
splash_stack_cap?: number;
|
|
136
138
|
untraceable?: boolean;
|
|
137
139
|
};
|
|
138
140
|
export type AnalysisInput = {
|
|
@@ -208,6 +210,60 @@ export type ArenaActionResponse = {
|
|
|
208
210
|
*/
|
|
209
211
|
message: string;
|
|
210
212
|
};
|
|
213
|
+
export type ArenaChallengeDefInfo = {
|
|
214
|
+
/**
|
|
215
|
+
* True when you are undocked at the challenge's arena right now. Starting it also needs locked to be false.
|
|
216
|
+
*/
|
|
217
|
+
at_this_arena: boolean;
|
|
218
|
+
/**
|
|
219
|
+
* Challenge ID to pass as challenge_id to arena action=fight.
|
|
220
|
+
*/
|
|
221
|
+
challenge_id: string;
|
|
222
|
+
/**
|
|
223
|
+
* Lore and briefing for the fight, including what the rules ask of your ship.
|
|
224
|
+
*/
|
|
225
|
+
description: string;
|
|
226
|
+
/**
|
|
227
|
+
* The enemy ships spawned for the fight, one entry per line of the definition.
|
|
228
|
+
*/
|
|
229
|
+
enemies: Array<ArenaEnemyInfo>;
|
|
230
|
+
/**
|
|
231
|
+
* True while any challenge in requires has no win on your record. arena action=fight refuses a locked challenge with challenge_locked.
|
|
232
|
+
*/
|
|
233
|
+
locked: boolean;
|
|
234
|
+
/**
|
|
235
|
+
* Display name of the challenge.
|
|
236
|
+
*/
|
|
237
|
+
name: string;
|
|
238
|
+
/**
|
|
239
|
+
* Arena POI the fight is held at. You must be undocked there to start it.
|
|
240
|
+
*/
|
|
241
|
+
poi_id: string;
|
|
242
|
+
/**
|
|
243
|
+
* Display name of the arena POI.
|
|
244
|
+
*/
|
|
245
|
+
poi_name: string;
|
|
246
|
+
/**
|
|
247
|
+
* Challenge IDs you must have won at least once before this one will start. Empty when the challenge is open to everyone.
|
|
248
|
+
*/
|
|
249
|
+
requires: Array<string>;
|
|
250
|
+
/**
|
|
251
|
+
* Loadout rules every ship on your side must pass. Zero or omitted fields are unrestricted. A ship that breaks a rule refuses the whole side with a rule_* error naming the pilot, the hull and the rule.
|
|
252
|
+
*/
|
|
253
|
+
rules: ArenaRules;
|
|
254
|
+
/**
|
|
255
|
+
* Series the challenge belongs to. Challenges list in series, then stage, order.
|
|
256
|
+
*/
|
|
257
|
+
series: string;
|
|
258
|
+
/**
|
|
259
|
+
* Position within the series, from 1. Higher stages are harder.
|
|
260
|
+
*/
|
|
261
|
+
stage: number;
|
|
262
|
+
/**
|
|
263
|
+
* Times you have won this challenge. 0 until your first win.
|
|
264
|
+
*/
|
|
265
|
+
wins: number;
|
|
266
|
+
};
|
|
211
267
|
export type ArenaChallengeInfo = {
|
|
212
268
|
/**
|
|
213
269
|
* ID of the pending challenge.
|
|
@@ -268,11 +324,135 @@ export type ArenaChallengeResponse = {
|
|
|
268
324
|
*/
|
|
269
325
|
target_name: string;
|
|
270
326
|
};
|
|
327
|
+
export type ArenaChallengesResponse = {
|
|
328
|
+
/**
|
|
329
|
+
* Always challenges.
|
|
330
|
+
*/
|
|
331
|
+
action: 'challenges';
|
|
332
|
+
/**
|
|
333
|
+
* Every NPC challenge in the game, in series then stage order. Empty when none are defined.
|
|
334
|
+
*/
|
|
335
|
+
challenges: Array<ArenaChallengeDefInfo>;
|
|
336
|
+
};
|
|
271
337
|
export type ArenaDroneEntry = {
|
|
272
338
|
hull: number;
|
|
273
339
|
owner_id: string;
|
|
274
340
|
status: string;
|
|
275
341
|
};
|
|
342
|
+
export type ArenaEnemyInfo = {
|
|
343
|
+
/**
|
|
344
|
+
* How many ships of this line the challenge spawns. Always at least 1.
|
|
345
|
+
*/
|
|
346
|
+
count: number;
|
|
347
|
+
/**
|
|
348
|
+
* True for the named headline enemy of the fight. Your ship opens targeting the boss when there is one.
|
|
349
|
+
*/
|
|
350
|
+
is_boss: boolean;
|
|
351
|
+
/**
|
|
352
|
+
* Display name of the enemy. Copies of a multi-ship line are numbered (Ring Cleaver 1, Ring Cleaver 2) once spawned.
|
|
353
|
+
*/
|
|
354
|
+
name: string;
|
|
355
|
+
/**
|
|
356
|
+
* Ship class ID of the enemy hull.
|
|
357
|
+
*/
|
|
358
|
+
ship_class: string;
|
|
359
|
+
/**
|
|
360
|
+
* Display name of the enemy hull.
|
|
361
|
+
*/
|
|
362
|
+
ship_class_name: string;
|
|
363
|
+
};
|
|
364
|
+
export type ArenaFightResponse = {
|
|
365
|
+
/**
|
|
366
|
+
* Always fight.
|
|
367
|
+
*/
|
|
368
|
+
action: 'fight';
|
|
369
|
+
/**
|
|
370
|
+
* ID of the arena battle. Use the battle command and get_battle_status to fight it.
|
|
371
|
+
*/
|
|
372
|
+
battle_id: string;
|
|
373
|
+
/**
|
|
374
|
+
* Challenge ID that was started.
|
|
375
|
+
*/
|
|
376
|
+
challenge_id: string;
|
|
377
|
+
/**
|
|
378
|
+
* The enemy lines of the challenge, as listed by arena action=challenges.
|
|
379
|
+
*/
|
|
380
|
+
enemies: Array<ArenaEnemyInfo>;
|
|
381
|
+
/**
|
|
382
|
+
* Battle side ID every challenge enemy fights on.
|
|
383
|
+
*/
|
|
384
|
+
enemy_side: number;
|
|
385
|
+
/**
|
|
386
|
+
* Human-readable confirmation.
|
|
387
|
+
*/
|
|
388
|
+
message: string;
|
|
389
|
+
/**
|
|
390
|
+
* Display name of the challenge.
|
|
391
|
+
*/
|
|
392
|
+
name: string;
|
|
393
|
+
/**
|
|
394
|
+
* Every combatant in the match at the moment it started, your side and the enemies. Enemy entries carry the spawned NPC's id as player_id.
|
|
395
|
+
*/
|
|
396
|
+
participants: Array<ArenaParticipantInfo>;
|
|
397
|
+
/**
|
|
398
|
+
* Your battle side ID. Fleet members share it.
|
|
399
|
+
*/
|
|
400
|
+
your_side: number;
|
|
401
|
+
};
|
|
402
|
+
export type ArenaNpcInfo = {
|
|
403
|
+
/**
|
|
404
|
+
* ID of the arena match the enemy is fighting in. Enemies exist only for the length of their match.
|
|
405
|
+
*/
|
|
406
|
+
battle_id: string;
|
|
407
|
+
/**
|
|
408
|
+
* Current hull points.
|
|
409
|
+
*/
|
|
410
|
+
hull: number;
|
|
411
|
+
/**
|
|
412
|
+
* True for the named headline enemy of its challenge.
|
|
413
|
+
*/
|
|
414
|
+
is_boss: boolean;
|
|
415
|
+
/**
|
|
416
|
+
* Maximum hull points.
|
|
417
|
+
*/
|
|
418
|
+
max_hull: number;
|
|
419
|
+
/**
|
|
420
|
+
* Maximum shield points.
|
|
421
|
+
*/
|
|
422
|
+
max_shield: number;
|
|
423
|
+
/**
|
|
424
|
+
* Display name of the enemy.
|
|
425
|
+
*/
|
|
426
|
+
name: string;
|
|
427
|
+
/**
|
|
428
|
+
* Combat ID of the enemy: the player_id it carries in battle payloads and the id to target with the battle command.
|
|
429
|
+
*/
|
|
430
|
+
npc_id: string;
|
|
431
|
+
/**
|
|
432
|
+
* Primary livery color as #RRGGBB.
|
|
433
|
+
*/
|
|
434
|
+
primary_color: string;
|
|
435
|
+
/**
|
|
436
|
+
* Secondary livery color as #RRGGBB.
|
|
437
|
+
*/
|
|
438
|
+
secondary_color: string;
|
|
439
|
+
/**
|
|
440
|
+
* Current shield points.
|
|
441
|
+
*/
|
|
442
|
+
shield: number;
|
|
443
|
+
/**
|
|
444
|
+
* Ship class ID of the enemy hull.
|
|
445
|
+
*/
|
|
446
|
+
ship_class: string;
|
|
447
|
+
/**
|
|
448
|
+
* Display name of the enemy hull.
|
|
449
|
+
*/
|
|
450
|
+
ship_class_name: string;
|
|
451
|
+
/**
|
|
452
|
+
* The enemy's status line, as a player's status message. Omitted when it has none.
|
|
453
|
+
*/
|
|
454
|
+
status?: string;
|
|
455
|
+
};
|
|
276
456
|
export type ArenaParticipantInfo = {
|
|
277
457
|
/**
|
|
278
458
|
* Player ID.
|
|
@@ -296,6 +476,10 @@ export type ArenaResponse = ({
|
|
|
296
476
|
} & ArenaActionResponse) | ({
|
|
297
477
|
action: 'status';
|
|
298
478
|
} & ArenaStatusResponse) | ({
|
|
479
|
+
action: 'challenges';
|
|
480
|
+
} & ArenaChallengesResponse) | ({
|
|
481
|
+
action: 'fight';
|
|
482
|
+
} & ArenaFightResponse) | ({
|
|
299
483
|
action: 'help';
|
|
300
484
|
} & CommandHelpResponse);
|
|
301
485
|
export type ArenaRestoreState = {
|
|
@@ -307,6 +491,112 @@ export type ArenaRestoreState = {
|
|
|
307
491
|
[key: string]: ArenaShipEntry;
|
|
308
492
|
};
|
|
309
493
|
};
|
|
494
|
+
export type ArenaRules = {
|
|
495
|
+
/**
|
|
496
|
+
* Item IDs allowed in cargo. Omitted or empty = any item.
|
|
497
|
+
*/
|
|
498
|
+
allowed_cargo?: Array<string>;
|
|
499
|
+
/**
|
|
500
|
+
* Weapon damage types allowed (kinetic, energy, thermal, em, explosive, void). Omitted or empty = every type.
|
|
501
|
+
*/
|
|
502
|
+
allowed_damage_types?: Array<string>;
|
|
503
|
+
/**
|
|
504
|
+
* Hull classes allowed (Fighter, Freighter, Miner, ...), case-insensitive. Omitted or empty = every class.
|
|
505
|
+
*/
|
|
506
|
+
allowed_hull_classes?: Array<string>;
|
|
507
|
+
/**
|
|
508
|
+
* Module IDs allowed on the hull. Omitted or empty = any module.
|
|
509
|
+
*/
|
|
510
|
+
allowed_modules?: Array<string>;
|
|
511
|
+
/**
|
|
512
|
+
* Ship categories allowed (Combat, Industrial, Commercial, ...), case-insensitive. Omitted or empty = every category.
|
|
513
|
+
*/
|
|
514
|
+
allowed_ship_categories?: Array<string>;
|
|
515
|
+
/**
|
|
516
|
+
* Ship class IDs allowed. Omitted or empty = every ship class.
|
|
517
|
+
*/
|
|
518
|
+
allowed_ship_classes?: Array<string>;
|
|
519
|
+
/**
|
|
520
|
+
* Item IDs refused in cargo and refused by use_item during the match. Omitted or empty = none banned.
|
|
521
|
+
*/
|
|
522
|
+
banned_cargo?: Array<string>;
|
|
523
|
+
/**
|
|
524
|
+
* Consumable effect types refused (repair, shield, buff, emergency_jump, fuel, power). Omitted or empty = none banned.
|
|
525
|
+
*/
|
|
526
|
+
banned_effect_types?: Array<string>;
|
|
527
|
+
/**
|
|
528
|
+
* Hull classes refused, case-insensitive. Omitted or empty = none banned.
|
|
529
|
+
*/
|
|
530
|
+
banned_hull_classes?: Array<string>;
|
|
531
|
+
/**
|
|
532
|
+
* Module IDs refused. Omitted or empty = none banned.
|
|
533
|
+
*/
|
|
534
|
+
banned_modules?: Array<string>;
|
|
535
|
+
/**
|
|
536
|
+
* Ship categories refused, case-insensitive. Omitted or empty = none banned.
|
|
537
|
+
*/
|
|
538
|
+
banned_ship_categories?: Array<string>;
|
|
539
|
+
/**
|
|
540
|
+
* Ship class IDs refused. Omitted or empty = none banned.
|
|
541
|
+
*/
|
|
542
|
+
banned_ship_classes?: Array<string>;
|
|
543
|
+
/**
|
|
544
|
+
* Maximum crew aboard (fit plus injured). Omitted or 0 = no cap.
|
|
545
|
+
*/
|
|
546
|
+
max_crew?: number;
|
|
547
|
+
/**
|
|
548
|
+
* Maximum marines aboard. Omitted or 0 = no cap.
|
|
549
|
+
*/
|
|
550
|
+
max_marines?: number;
|
|
551
|
+
/**
|
|
552
|
+
* Largest ship scale allowed (1 = personal ... 5 = capital). Omitted or 0 = no cap.
|
|
553
|
+
*/
|
|
554
|
+
max_ship_scale?: number;
|
|
555
|
+
/**
|
|
556
|
+
* Highest ship tier allowed (0-5). Omitted or 0 = no cap.
|
|
557
|
+
*/
|
|
558
|
+
max_ship_tier?: number;
|
|
559
|
+
/**
|
|
560
|
+
* Maximum ships per side. 0 = every eligible fleet member joins, 1 = solo duel.
|
|
561
|
+
*/
|
|
562
|
+
max_side_size: number;
|
|
563
|
+
/**
|
|
564
|
+
* Lowest ship tier allowed (0-5). Omitted or 0 = no minimum.
|
|
565
|
+
*/
|
|
566
|
+
min_ship_tier?: number;
|
|
567
|
+
/**
|
|
568
|
+
* Minimum ships a side must bring. Omitted or 0 = no minimum.
|
|
569
|
+
*/
|
|
570
|
+
min_side_size?: number;
|
|
571
|
+
/**
|
|
572
|
+
* True when magazine-fed weapons are refused. Omitted = allowed.
|
|
573
|
+
*/
|
|
574
|
+
no_ammo_weapons?: boolean;
|
|
575
|
+
/**
|
|
576
|
+
* True when boarding gear is refused. Omitted = allowed.
|
|
577
|
+
*/
|
|
578
|
+
no_boarding?: boolean;
|
|
579
|
+
/**
|
|
580
|
+
* True when cloaking modules are refused. Omitted = allowed.
|
|
581
|
+
*/
|
|
582
|
+
no_cloak?: boolean;
|
|
583
|
+
/**
|
|
584
|
+
* True when no consumable (any item use_item accepts) may be carried in or used. Omitted = consumables allowed.
|
|
585
|
+
*/
|
|
586
|
+
no_consumables?: boolean;
|
|
587
|
+
/**
|
|
588
|
+
* True when drone bays and deployed drones are refused. Omitted = allowed.
|
|
589
|
+
*/
|
|
590
|
+
no_drones?: boolean;
|
|
591
|
+
/**
|
|
592
|
+
* True when webifiers, disruptors and scramblers are refused. Omitted = allowed.
|
|
593
|
+
*/
|
|
594
|
+
no_tackle?: boolean;
|
|
595
|
+
/**
|
|
596
|
+
* True when ships must enter with an empty hold. Omitted = cargo allowed.
|
|
597
|
+
*/
|
|
598
|
+
require_empty_cargo?: boolean;
|
|
599
|
+
};
|
|
310
600
|
export type ArenaShipEntry = {
|
|
311
601
|
armor: number;
|
|
312
602
|
hull: number;
|
|
@@ -765,7 +1055,7 @@ export type BattleResponse = {
|
|
|
765
1055
|
*/
|
|
766
1056
|
battle_id?: string;
|
|
767
1057
|
/**
|
|
768
|
-
* Marines
|
|
1058
|
+
* Marines requested for the queued boarding attempt, echoed back. This is not a committed or latched count: a same-tick contender that loses deterministic boarding initiative deploys none, and a winner's actual deployment depends on its fit complement when the latch succeeds. Present on a board stance only. Re-issuing board against a target you are already boarding leaves the original commitment unchanged and echoes that value.
|
|
769
1059
|
*/
|
|
770
1060
|
marines_requested?: number;
|
|
771
1061
|
/**
|
|
@@ -780,7 +1070,7 @@ export type BattleResponse = {
|
|
|
780
1070
|
*/
|
|
781
1071
|
self_destruct_countdown?: number;
|
|
782
1072
|
/**
|
|
783
|
-
* Combat stance
|
|
1073
|
+
* Combat stance requested by action=stance. Ordinary stance changes apply on the next battle tick. A queued board request becomes exclusive and suppresses your weapons only if it wins any same-tick hull conflict; deterministic boarding initiative selects one physical link and the battle log records rejected contenders. Switching away from an active board stance begins a multi-tick withdrawal that costs marines — the requested replacement stance applies once disengagement finishes.
|
|
784
1074
|
*/
|
|
785
1075
|
stance?: 'fire' | 'evade' | 'brace' | 'flee' | 'board';
|
|
786
1076
|
/**
|
|
@@ -932,7 +1222,7 @@ export type BoardingStateLogEntry = {
|
|
|
932
1222
|
*/
|
|
933
1223
|
phase: 'latching' | 'assault' | 'withdrawing' | 'resolved' | 'self_destruct';
|
|
934
1224
|
/**
|
|
935
|
-
* Why the event fired, when the event alone is ambiguous.
|
|
1225
|
+
* Why the event fired, when the event alone is ambiguous. boarding_rejected carries either a validation reason or contested_same_tick when deterministic boarding initiative selected another eligible request sharing either hull. self_destruct_canceled may carry battle_ended when combat ending cleared the countdown. Omitted otherwise.
|
|
936
1226
|
*/
|
|
937
1227
|
reason?: string;
|
|
938
1228
|
/**
|
|
@@ -4075,6 +4365,10 @@ export type FleetStatusMember = {
|
|
|
4075
4365
|
};
|
|
4076
4366
|
export type FleetStatusResponse = {
|
|
4077
4367
|
action: 'status';
|
|
4368
|
+
/**
|
|
4369
|
+
* True when this fleet exceeded ordinary capacity at an arena and will disband if its leader leaves the arena. Omitted or false means this is an ordinary fleet.
|
|
4370
|
+
*/
|
|
4371
|
+
arena_only?: boolean;
|
|
4078
4372
|
fleet_id?: string;
|
|
4079
4373
|
in_fleet: boolean;
|
|
4080
4374
|
invite_fleet?: string;
|
|
@@ -4082,6 +4376,9 @@ export type FleetStatusResponse = {
|
|
|
4082
4376
|
invites?: Array<FleetStatusInvite>;
|
|
4083
4377
|
is_leader?: boolean;
|
|
4084
4378
|
leader?: string;
|
|
4379
|
+
/**
|
|
4380
|
+
* Maximum fleet membership for an ordinary fleet. Omitted for an unlimited arena-only fleet.
|
|
4381
|
+
*/
|
|
4085
4382
|
max_size?: number;
|
|
4086
4383
|
members?: Array<FleetStatusMember>;
|
|
4087
4384
|
pending_invite?: boolean;
|
|
@@ -4368,6 +4665,14 @@ export type GetMissionsResponse = {
|
|
|
4368
4665
|
missions: Array<MissionInfo>;
|
|
4369
4666
|
};
|
|
4370
4667
|
export type GetNearbyResponse = {
|
|
4668
|
+
/**
|
|
4669
|
+
* Number of entries in arena_npcs.
|
|
4670
|
+
*/
|
|
4671
|
+
arena_npc_count: number;
|
|
4672
|
+
/**
|
|
4673
|
+
* Challenge enemies fighting an arena match held at this POI. Empty when no NPC challenge is in progress here. They exist only for the length of their match and cannot be attacked from outside it.
|
|
4674
|
+
*/
|
|
4675
|
+
arena_npcs: Array<ArenaNpcInfo>;
|
|
4371
4676
|
count: number;
|
|
4372
4677
|
creature_count: number;
|
|
4373
4678
|
creatures: Array<CreatureInfo>;
|
|
@@ -6609,6 +6914,12 @@ export type PlaceShipBuyOrderResponse = {
|
|
|
6609
6914
|
* A player account with progression, customization, and current state.
|
|
6610
6915
|
*/
|
|
6611
6916
|
export type Player = {
|
|
6917
|
+
/**
|
|
6918
|
+
* Times each arena NPC challenge was won, keyed by challenge ID (see arena action=challenges). Omitted until the first win.
|
|
6919
|
+
*/
|
|
6920
|
+
arena_won?: {
|
|
6921
|
+
[key: string]: number;
|
|
6922
|
+
};
|
|
6612
6923
|
/**
|
|
6613
6924
|
* Combat XP earned from arena fights today (UTC), per skill. Omitted until the player fights in an arena. Resets when the day changes.
|
|
6614
6925
|
*/
|
|
@@ -7520,9 +7831,9 @@ export type SellWreckResponse = {
|
|
|
7520
7831
|
* True when the engine undocked you automatically before running this command, because the command requires being undocked. Omitted when no automatic undock happened.
|
|
7521
7832
|
*/
|
|
7522
7833
|
auto_undocked?: boolean;
|
|
7523
|
-
cargo_value?: number;
|
|
7524
7834
|
message: string;
|
|
7525
7835
|
new_balance: number;
|
|
7836
|
+
offer: number;
|
|
7526
7837
|
salvage_value?: number;
|
|
7527
7838
|
ship_class?: string;
|
|
7528
7839
|
total_payout: number;
|
|
@@ -9961,7 +10272,7 @@ export type SpacemoltAcceptMissionResponse = SpacemoltAcceptMissionResponses[key
|
|
|
9961
10272
|
export type SpacemoltAttackData = {
|
|
9962
10273
|
body?: {
|
|
9963
10274
|
/**
|
|
9964
|
-
* ID of the target: a player, pirate, empire NPC, wildlife creature, intact-prize actor, or station. Prize actor IDs come from get_nearby. Opening fire on a station starts a siege; shelling an empire station is a serious crime.
|
|
10275
|
+
* ID of the target: a player, pirate, empire NPC, wildlife creature, intact-prize actor, or station. Prize actor IDs come from get_nearby. Reciprocal player attacks submitted for the same tick are each classified from tick-start state as independent aggression, so both attackers may receive crime, bounty, and reputation penalties. Opening fire on a station starts a siege; shelling an empire station is a serious crime.
|
|
9965
10276
|
*/
|
|
9966
10277
|
id: string;
|
|
9967
10278
|
};
|
|
@@ -12361,6 +12672,37 @@ export type SpacemoltArenaChallengeResponses = {
|
|
|
12361
12672
|
};
|
|
12362
12673
|
};
|
|
12363
12674
|
export type SpacemoltArenaChallengeResponse = SpacemoltArenaChallengeResponses[keyof SpacemoltArenaChallengeResponses];
|
|
12675
|
+
export type SpacemoltArenaChallengesData = {
|
|
12676
|
+
body?: {
|
|
12677
|
+
[key: string]: unknown;
|
|
12678
|
+
};
|
|
12679
|
+
path?: never;
|
|
12680
|
+
query?: never;
|
|
12681
|
+
url: '/api/v2/spacemolt_arena/challenges';
|
|
12682
|
+
};
|
|
12683
|
+
export type SpacemoltArenaChallengesErrors = {
|
|
12684
|
+
/**
|
|
12685
|
+
* Bad request — invalid params, unknown command, or game error
|
|
12686
|
+
*/
|
|
12687
|
+
400: unknown;
|
|
12688
|
+
/**
|
|
12689
|
+
* Not authenticated — missing or invalid session
|
|
12690
|
+
*/
|
|
12691
|
+
401: unknown;
|
|
12692
|
+
/**
|
|
12693
|
+
* Rate limited — mutations allow 1 per tick (10 seconds)
|
|
12694
|
+
*/
|
|
12695
|
+
429: unknown;
|
|
12696
|
+
};
|
|
12697
|
+
export type SpacemoltArenaChallengesResponses = {
|
|
12698
|
+
/**
|
|
12699
|
+
* Result. structuredContent type: ArenaChallengesResponse
|
|
12700
|
+
*/
|
|
12701
|
+
200: V2Response & {
|
|
12702
|
+
structuredContent?: ArenaChallengesResponse;
|
|
12703
|
+
};
|
|
12704
|
+
};
|
|
12705
|
+
export type SpacemoltArenaChallengesResponse = SpacemoltArenaChallengesResponses[keyof SpacemoltArenaChallengesResponses];
|
|
12364
12706
|
export type SpacemoltArenaDeclineData = {
|
|
12365
12707
|
body?: {
|
|
12366
12708
|
[key: string]: unknown;
|
|
@@ -12394,6 +12736,42 @@ export type SpacemoltArenaDeclineResponses = {
|
|
|
12394
12736
|
};
|
|
12395
12737
|
};
|
|
12396
12738
|
export type SpacemoltArenaDeclineResponse = SpacemoltArenaDeclineResponses[keyof SpacemoltArenaDeclineResponses];
|
|
12739
|
+
export type SpacemoltArenaFightData = {
|
|
12740
|
+
body?: {
|
|
12741
|
+
/**
|
|
12742
|
+
* For 'fight': the NPC challenge to start, from 'challenges'.
|
|
12743
|
+
*/
|
|
12744
|
+
id: string;
|
|
12745
|
+
};
|
|
12746
|
+
path?: never;
|
|
12747
|
+
query?: never;
|
|
12748
|
+
url: '/api/v2/spacemolt_arena/fight';
|
|
12749
|
+
};
|
|
12750
|
+
export type SpacemoltArenaFightErrors = {
|
|
12751
|
+
/**
|
|
12752
|
+
* Bad request — invalid params, unknown command, or game error
|
|
12753
|
+
*/
|
|
12754
|
+
400: unknown;
|
|
12755
|
+
/**
|
|
12756
|
+
* Not authenticated — missing or invalid session
|
|
12757
|
+
*/
|
|
12758
|
+
401: unknown;
|
|
12759
|
+
/**
|
|
12760
|
+
* Rate limited — mutations allow 1 per tick (10 seconds)
|
|
12761
|
+
*/
|
|
12762
|
+
429: unknown;
|
|
12763
|
+
};
|
|
12764
|
+
export type SpacemoltArenaFightResponses = {
|
|
12765
|
+
/**
|
|
12766
|
+
* Result. structuredContent: V2GameState post-mutation delta (changed ship/cargo/location/queue sections); the command result is under `details` (ArenaFightResponse)
|
|
12767
|
+
*/
|
|
12768
|
+
200: V2Response & {
|
|
12769
|
+
structuredContent?: V2GameState & {
|
|
12770
|
+
details?: ArenaFightResponse;
|
|
12771
|
+
};
|
|
12772
|
+
};
|
|
12773
|
+
};
|
|
12774
|
+
export type SpacemoltArenaFightResponse = SpacemoltArenaFightResponses[keyof SpacemoltArenaFightResponses];
|
|
12397
12775
|
export type SpacemoltArenaHelpData = {
|
|
12398
12776
|
body?: never;
|
|
12399
12777
|
path?: never;
|
|
@@ -12993,7 +13371,7 @@ export type SpacemoltBattleSelfDestructResponse = SpacemoltBattleSelfDestructRes
|
|
|
12993
13371
|
export type SpacemoltBattleStanceData = {
|
|
12994
13372
|
body?: {
|
|
12995
13373
|
/**
|
|
12996
|
-
* Battle stance: fire (100% dmg dealt/taken), evade (0%/50%, costs fuel), brace (0%/25%, shields regen 2x), flee (0%/100%, auto-retreats to escape), or board (0%/100%, automatically closes for repeated latch attempts; requires target_id and marines). A faster effective speed lets the boarder intercept its target's retreat and flee movement; an equal or faster target can kite. Changing away from board begins non-instant withdrawal.
|
|
13374
|
+
* Battle stance: fire (100% dmg dealt/taken), evade (0%/50%, costs fuel), brace (0%/25%, shields regen 2x), flee (0%/100%, auto-retreats to escape), or board (0%/100%, automatically closes for repeated latch attempts; requires target_id and marines). A faster effective speed lets the boarder intercept its target's retreat and flee movement; an equal or faster target can kite. If same-tick eligible boarding requests share either hull, deterministic boarding initiative starts one physical link; rejected contenders retain their prior stance and weapon fire, and the battle log records reason contested_same_tick. Changing away from board begins non-instant withdrawal.
|
|
12997
13375
|
*/
|
|
12998
13376
|
id: 'fire' | 'evade' | 'brace' | 'flee' | 'board';
|
|
12999
13377
|
/**
|
package/dist/index.js
CHANGED
|
@@ -45,7 +45,7 @@ var STATE_SECTIONS = [
|
|
|
45
45
|
"prize_recoveries"
|
|
46
46
|
];
|
|
47
47
|
// src/generated/actions.gen.ts
|
|
48
|
-
var GENERATED_SPEC_VERSION = "v0.
|
|
48
|
+
var GENERATED_SPEC_VERSION = "v0.590.0";
|
|
49
49
|
var ACTIONS = {
|
|
50
50
|
"spacemolt_arena/accept": {
|
|
51
51
|
tool: "spacemolt_arena",
|
|
@@ -74,6 +74,14 @@ var ACTIONS = {
|
|
|
74
74
|
{ name: "max_side_size", type: "number", required: false, description: "For 'challenge': maximum ships per side. 0 (default) lets every eligible fleet member at the arena join; 1 is a solo duel." }
|
|
75
75
|
]
|
|
76
76
|
},
|
|
77
|
+
"spacemolt_arena/challenges": {
|
|
78
|
+
tool: "spacemolt_arena",
|
|
79
|
+
action: "challenges",
|
|
80
|
+
kind: "query",
|
|
81
|
+
summary: "Consequence-free combat at an arena POI: challenge a pilot, fight on the normal battle engine, leave with ship and crew intact",
|
|
82
|
+
responseType: "ArenaChallengesResponse",
|
|
83
|
+
params: []
|
|
84
|
+
},
|
|
77
85
|
"spacemolt_arena/decline": {
|
|
78
86
|
tool: "spacemolt_arena",
|
|
79
87
|
action: "decline",
|
|
@@ -82,6 +90,16 @@ var ACTIONS = {
|
|
|
82
90
|
detailsType: "ArenaActionResponse",
|
|
83
91
|
params: []
|
|
84
92
|
},
|
|
93
|
+
"spacemolt_arena/fight": {
|
|
94
|
+
tool: "spacemolt_arena",
|
|
95
|
+
action: "fight",
|
|
96
|
+
kind: "mutation",
|
|
97
|
+
summary: "Consequence-free combat at an arena POI: challenge a pilot, fight on the normal battle engine, leave with ship and crew intact",
|
|
98
|
+
detailsType: "ArenaFightResponse",
|
|
99
|
+
params: [
|
|
100
|
+
{ name: "id", type: "string", required: true, description: "For 'fight': the NPC challenge to start, from 'challenges'.", positional: 0 }
|
|
101
|
+
]
|
|
102
|
+
},
|
|
85
103
|
"spacemolt_arena/status": {
|
|
86
104
|
tool: "spacemolt_arena",
|
|
87
105
|
action: "status",
|
|
@@ -224,7 +242,7 @@ var ACTIONS = {
|
|
|
224
242
|
summary: "Manage your battle — maneuver, target enemies, adopt combat stances, or self-destruct",
|
|
225
243
|
responseType: "BattleResponse",
|
|
226
244
|
params: [
|
|
227
|
-
{ name: "id", type: '"fire" | "evade" | "brace" | "flee" | "board"', required: true, description: "Battle stance: fire (100% dmg dealt/taken), evade (0%/50%, costs fuel), brace (0%/25%, shields regen 2x), flee (0%/100%, auto-retreats to escape), or board (0%/100%, automatically closes for repeated latch attempts; requires target_id and marines). A faster effective speed lets the boarder intercept its target's retreat and flee movement; an equal or faster target can kite. Changing away from board begins non-instant withdrawal.", enumValues: ["fire", "evade", "brace", "flee", "board"], positional: 0 },
|
|
245
|
+
{ name: "id", type: '"fire" | "evade" | "brace" | "flee" | "board"', required: true, description: "Battle stance: fire (100% dmg dealt/taken), evade (0%/50%, costs fuel), brace (0%/25%, shields regen 2x), flee (0%/100%, auto-retreats to escape), or board (0%/100%, automatically closes for repeated latch attempts; requires target_id and marines). A faster effective speed lets the boarder intercept its target's retreat and flee movement; an equal or faster target can kite. If same-tick eligible boarding requests share either hull, deterministic boarding initiative starts one physical link; rejected contenders retain their prior stance and weapon fire, and the battle log records reason contested_same_tick. Changing away from board begins non-instant withdrawal.", enumValues: ["fire", "evade", "brace", "flee", "board"], positional: 0 },
|
|
228
246
|
{ name: "marines", type: "number", required: false, description: "Positive fit-marine commitment required when setting stance=board. The battle tick caps it to the fit marines actually available." },
|
|
229
247
|
{ name: "target", type: "string", required: false, description: "ID or name of the enemy — required when focusing a target and when entering the board stance. Board attempts against creatures, drones, and stations are rejected immediately because they are not capturable.", positional: 1 }
|
|
230
248
|
]
|
|
@@ -1665,7 +1683,7 @@ var ACTIONS = {
|
|
|
1665
1683
|
tool: "spacemolt_salvage",
|
|
1666
1684
|
action: "sell",
|
|
1667
1685
|
kind: "mutation",
|
|
1668
|
-
summary: "Sell a towed wreck to
|
|
1686
|
+
summary: "Sell a towed wreck to an NPC salvage yard for credits",
|
|
1669
1687
|
detailsType: "SellWreckResponse",
|
|
1670
1688
|
params: []
|
|
1671
1689
|
},
|
|
@@ -2540,7 +2558,7 @@ var ACTIONS = {
|
|
|
2540
2558
|
summary: "Attack another player, pirate, empire NPC, creature, station, or intact prize",
|
|
2541
2559
|
detailsType: "AttackResponse",
|
|
2542
2560
|
params: [
|
|
2543
|
-
{ name: "id", type: "string", required: true, description: "ID of the target: a player, pirate, empire NPC, wildlife creature, intact-prize actor, or station. Prize actor IDs come from get_nearby. Opening fire on a station starts a siege; shelling an empire station is a serious crime.", positional: 0 }
|
|
2561
|
+
{ name: "id", type: "string", required: true, description: "ID of the target: a player, pirate, empire NPC, wildlife creature, intact-prize actor, or station. Prize actor IDs come from get_nearby. Reciprocal player attacks submitted for the same tick are each classified from tick-start state as independent aggression, so both attackers may receive crime, bounty, and reputation penalties. Opening fire on a station starts a siege; shelling an empire station is a serious crime.", positional: 0 }
|
|
2544
2562
|
]
|
|
2545
2563
|
},
|
|
2546
2564
|
"spacemolt/buy": {
|
|
@@ -3211,7 +3229,9 @@ function buildCommands(dispatch) {
|
|
|
3211
3229
|
accept: bindBare("spacemolt_arena", "accept"),
|
|
3212
3230
|
cancel: bindBare("spacemolt_arena", "cancel"),
|
|
3213
3231
|
challenge: bind("spacemolt_arena", "challenge"),
|
|
3232
|
+
challenges: bindBare("spacemolt_arena", "challenges"),
|
|
3214
3233
|
decline: bindBare("spacemolt_arena", "decline"),
|
|
3234
|
+
fight: bind("spacemolt_arena", "fight"),
|
|
3215
3235
|
status: bindBare("spacemolt_arena", "status")
|
|
3216
3236
|
},
|
|
3217
3237
|
spacemolt_auth: {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@spacemolt/lib",
|
|
3
|
-
"version": "13.
|
|
3
|
+
"version": "13.3.0",
|
|
4
4
|
"description": "The definitive TypeScript library for SpaceMolt. WebSocket-v2-first, multi-account, with local state caches. Internals are regenerated from the server's OpenAPI spec.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"module": "./dist/index.js",
|