The .csv files covered here are: descriptions.csv, hull_mods.csv, person_names.csv, sim_opponents.csv, and wing_data.csv.


Descriptions.csv will contain all the unique strings and descriptions for your mod.


At the very top of descriptions.csv, you will see a list of categories. Going from left to right, the function of each will be described:

id - Internal ID of the item being referenced. Can be a ship, weapon, resource, asteroid, tooltip, or planet.


text1 - The generic description of the item. Keep in mind that for ships and weapons, this will get cut off after a certain length.

text2 - Used for WEAPON type to specify the Primary Role denoted in the codex, such as point defense, strike, etc. Used for ACTION_TOOLTIP type to specify label. Used for SHIP_SYSTEM type to specify the short type description denoted in the codex, under the ship system name.

text3 - Used for some CUSTOM types. Used by SHIP_SYSTEM types

notes - Unused.


Hull_mods.csv will contain information pertaining to hullmods: their OP costs, icons, and descriptions.


At the very top of hull_mods.csv, you will see a list of categories. Going from left to right, the function of each will be described:

name - The name of the hull mod that is displayed in-game. This isn't the internal name for the hull mod.

id - This is the internal name that is recognized by the code in the background. When modding, this hull mod will be referenced everywhere by this ID. Remember, if you want to reference this hull mod somewhere else, it is this designation that you use, not the one above.

tier - Unused.

cost_frigate - Ordnance point cost of this hull mod for frigates.

cost_destroyer - Ordnance point cost of this hull mod for destroyers.

cost_cruiser - Ordnance point cost of this hull mod for cruisers.

cost_capital - Ordnance point cost of this hull mod for capital ships.

script - File path that points to the .java file to use for this hull mod.

desc - The hull mod's description. The %s characters represent percentages that are grabbed from the hull mod's .java file.

sprite - Filepath to the 32x32 icon that the hull mod will use.


Person_names.csv will contain information pertaining to the names of AI fleet commanders that appear in the campaign.


At the very top of person_names.csv, you will see a list of categories. Going from left to right, the function of each will be described:

name - A person's name, either first or last.

gender - Determines gender usage of the name. "m" means it will only be used for males, "f" means it will only be used for females. Leave blank for unisex names.

usage - Determines whether the name will be used as a first or last name. "f" means it will be used as a first name, "l" means it will be used as a last name. Leave blank for it to be used in either location.

category - The category that the name belongs to. This will be referenced in a .faction file.


Sim_opponents.csv will contain information pertaining opponent ships in combat simulations.


variant_id - The id of the ship variant that will appear as an opponent.

Note: Simulation opponents will appear in-game in the same order that they appear in the .csv file. Meaning if you have a fighter squadron first in the .csv, it will be the first on the list in-game.

wing_data.csv (updated for 0.8.a)Edit

Wing_data.csv will contain information relating to fighter wings.


At the very top of wing_data.csv, you will see a list of categories. Going from left to right, the function of each will be described:

id - This determines the internal name of the wing. Make sure that all IDs you create end with _wing, otherwise bad things might happen.

variant - Determines which variant to use for the fighter wing.

tag - Used for the auto-fit: Look vanilla data.csv: "fighter1, fighter, mid"

  • The first is for the power of the fighter, auto-fit choice always fighter3 than fighter1.
  • The second is the alternative role, if you have not other wings and search a bomber.
  • The third is the "low-tech, mid-tech, high-tech".

tier - Market tier. Higher tiers cannot be found on the open market and require increasing high reputation with a faction to buy from their military market.

rarity - Between 0 and 1, the closer to 0, the rarer the fighter is in markets. Defaults to 1 if left empty.

fleet pts - How powerful the game sees the fighter as. Used when two AI fleets clash in the campaign to determine the winner.

op cost - The ordinance cost of the wings. Like weapon.

formation - Determines the formation that fighter wings fly in. Possible values are: BOX, CLAW, DIAMOND or V [1]

range - The maximum engagement or support range of the wing, past which it must return to the carrier or find a new target within range.

attackRunRange - Not very sure, always below than range, AxleMC131: "AttackRunRange is approximately how far out from a target fighters will open fire. This is important for bombers with torpedoes and such, to make sure the fighters get close enough to be most effective without getting destroyed by point defence."

num - The number of fighters in the squadron.

role - Determines the role of the fighter squadron, and involves AI handling of it. Possible values are: ASSAULT, BOMBER, FIGHTER, INTERCEPTOR, SUPPORT. Assault fighters prioritize enemy ships. Bombers will always engagement enemy warships and do not escort friendly ships. Fighters attack everything. Interceptors prioritize enemy fighter craft. Support fighters cannot be ordered to engage hostiles, only to escort allied ships.

role desc - Role description of the wing

refit - Time in seconds it takes for the wing to be repaired/refit at a carrier.

base value - Amount of credits the wing costs in-game.

number - Unused.

Example: Edit

cube_wing,cube_variant,"fighter2, bomber, mid",1,,3,3,BOX,6000,2500,4,FIGHTER,Heavy Fighter,10,5000,,,,,,,,,,,,,2

The cube_wing can be very found anywhere on each market, and this is a mid fighter2 who can also be bomber with the AI of a fighter

the ",,,,,,,,,,,,," is unused


  1. [1] com.fs.starfarer.api.loading.FormationType

Return to: Modding