About this mod
Ever want to change the stats of your ship like the cargo capacity or swap your home ship without visiting a vendor? NOW YOU CAN!
This mod provides a common ship API for modifying the properties of the ships in your fleet including swapping which ship is your active one.
- Requirements
- Permissions and credits
- Changelogs
Key Features:
1. Upgrade your Cargo Capacity
2. Swap Home Ships ANYWHERE
3. Claim a ship in space without needing to board or lose your current ship
4. Change any value on your ship (shields, health, engine, maneuverability, etc.)
5. Heal your ship in combat
6. Open your ship's inventory and transfer ANYWHERE
REQUIRES SFSE TO RUN
Currently in development, this is a lightweight console-based mod that allows you to access your ships properties, it is a shortcut/wrapper for what the game natively does
I mainly wanted a way to get a reference to my ship to edit and found it tedious to do so... (you can't just click it with console open to get a reference), as well as changing the cargo capacity as the mods doing so do not seem to work for me. Thus, I made a simpler way to update your ship's properties!
This mod also supports swapping your home ship without the need of a vendor! This works even on planets.
A brief warning up front : This mod is in active development, some of the function names are likely to change in the future, they are working titles and I will change them to whatever is easiest to type and remember. The current line-up are unlikely to change. If there are bugs and issues, please report them and I will work to fix them ASAP. As with all mods that tweak values, please save and backup prior to modifying your ships.
The supported functions are:
ListShips : List all of your owned ships, the index is usable by other functions as a shortened identifier
GetHomeShip : Returns the id (usable in the console) of your current home ship
SelectHomeShip : Select home ship for console commands
SetHomeShip : Sets your home ship from a reference, includes swapping the currently landed ship
SetHomeShipByIndex : Sets your home ship from an index listed by ListShips, includes swapping the currently landed ship
SelectShip : Select a ship from the list of owned ships (by index), see ListShips; This will select it in the console just like
SelectHomeShip : Sets your home ship from a reference, includes swapping the currently landed ship
SetCarryWeight : Sets your home ship's maximum cargo hold capacity
GetCarryWeight : Gets your home ship's maximum cargo hold capacity
Heal : Restore ships health and shields to max
UnlockCrew : Remove crew limits (amount of people you are able to assign to your current ship)
Godmode : Make your ship near invincible with high regeneration, maneuverability, and repair speed (warning: currently no off toggle)
Jump to the "Full Method Definitions" section for full details
Installation ///
[RECOMMENDED] Vortex: Simply download, install, and enable the mod as any other. It will be loaded in automatically as a script.
Manual: Drag the included Data folder into your Starfield installation location. If successful, you should be able to see a script at the path {STARFIELD ROOT}\Data\Scripts\ShipUtils.pex
Uninstall ///
Delete the {STARFIELD ROOT}\Data\Scripts\ShipUtils.pex file from your game files
Usage ///
Open the console and type in cgf "ShipUtils.[FUNCTION]" {args} where [FUNCTION] is replaced with the desired call (see the list above for each and its behavior) and {args} is optional arguments which are sent to the function. Be sure to INCLUDE the double quotes, they are required for global function calls.
For any aspiring mod developers, this means "CallGlobalFunction", there is also "CallFunction" (cf), which can take an object reference
For Example:
> cgf "ShipUtils.ListShips"
Will open a message box that shows all of your player owned ships
> cgf "ShipUtils.SelectShip"
Will select a ship from the index given by ListShips and highlight it in the console
> cgf "ShipUtils.SetCarryWeight" 3000
Will set your ships maximum cargo capacity to 3000
> cgf "ShipUtils.GetHomeShip"
Will open up a message box that shows you your current home ship's id
> cgf "ShipUtils.GetCarryWeight"
Will open up a message box that shows you your current home ship's maximum cargo capacity
Full Method Definitions ///
All return values will be printed to the console, either via Debug.MessageBox or Debug.Notification. If there is interest in developing this further, I can add API support for others to use/extend.
PLEASE REMEMBER TO CHANGE PLACEHOLDER VALUES OR YOU WILL NOT ACHIEVE THE DESIRED RESULT
void ListShips (null)
Lists all of your owned ships in the form of "index: shipRefId", the index is usable by other functions as a shortened identifier
Full Command:
> cgf "ShipUtils.ListShips"
int GetHomeShip (null)
Returns the reference id (usable in the console) of your current home ship
Full Command:
> cgf "ShipUtils.GetHomeShip"
void SelectHomeShip (null)
Select home ship for console commands (using prid command : "pick reference by id")
Full Command:
> cgf "ShipUtils.SelectHomeShip"
void SetHomeShip (ObjectReference shipReference)
Sets your home ship from a reference, including swapping the currently landed ship
Full Command:
> cgf "ShipUtils.SetHomeShip" 0x00000000
void SetHomeShipByIndex (int index)
Sets your home ship from an index listed by ListShips, includes swapping the currently landed ship
Full Command:
> cgf "ShipUtils.SetHomeShipByIndex" 0
void SelectShip (int index)
Select a ship from the list of owned ships by the index returned by ListShips; This will select it in the console just like SelectHomeShip (via prid)
Full Command:
> cgf "ShipUtils.SelectShip" 0
void SetCarryWeight (float newCarryWeight)
Sets your home ship's maximum cargo hold capacity
Full Command:
> cgf "ShipUtils.SetCarryWeight" 1000
float GetCarryWeight (null)
Gets your home ship's maximum cargo hold capacity
Full Command:
> cgf "ShipUtils.GetCarryWeight"
void Heal (null)
Restore ships health and shields to max. May be used in combat.
Full Command:
> cgf "ShipUtils.Heal"
void UnlockCrew (null)
Remove crew limits (amount of people you are able to assign to your current ship). (WARNING: THIS CHANGE IS PERMANENT)
Full Command:
> cgf "ShipUtils.UnlockCrew"
void Godmode (null)
Make your ship near invincible with high regeneration, maneuverability, and repair speed. (WARNING: THIS CHANGE IS PERMANENT)
Full Command:
> cgf "ShipUtils.Godmode"
Support / FAQ ///
Feel free to reach out for any questions you may have! I'm happy to help as this mod is actively in development and I am eager to receive any feedback you may have. The discussions tab is the best place for this.
I will add frequently asked questions (FAQs) here as they are received and answered.