HowTo:Edit units.csv
Create Ships in Wings3D | HowTos | Edit Unit Files |
The Template:CVS:Units.csv file contains specific information on all Vessels and Installations and Upgrades in VegaStrike. This has replaced the xunit.xml
files.
Contents
The units.csv
file
The Template:CVS:Units.csv is a comma delimited text file which can be edited with any spreadsheet program.
NOTE: Microsoft Works has problems with the long description columns. For a free alternative, try OpenOffice.
Columns in the units.csv
file
The original desciption of the xunit syntax from hellcatv is located in CVS. The columns of the Template:CVS:Units.csv file and their description are; FIXME Copy Descriptions from HowTo:Edit Unit Files
- Key (Key)
- Directory (String)
- Name (string)
- FoFID (string)
- Object_Type (string)
- Combat_Role (string) - combat role that the ship has (see ai/VegaPriorities.csv )
- Textual_Description (string)
- Hud_image (string)
- Unit_Scale (float) - Sets the scaling of the unit in the game
- Cockpit (string) - Defines a cockpit for the ship. Points to a cockpit file. Extension
.cpt
. See also HowTo:Edit HUDs. - CockpitX (x=float) - Coordinates where the Cockpit should be in the Unit/Ship
- CockpitY (y=float) - Coordinates where the Cockpit should be in the Unit/Ship
- CockpitZ (z=float(meters)) - Coordinates where the Cockpit should be in the Unit/Ship
- Mesh
({filename(string);frame(int);texturetime(float)})
- Shield_Mesh (string) - (optional) xmesh-file to use for the shield instead of a sphere. Extension
.xmesh
- Rapid_Mesh (string) - (optional) xmesh-file to load and use for collisions with other units/ships/... instead of the Meshfile from above (not drawn) Extension
.xmesh
- BSP_Mesh (string) - (optional) xmesh-file to use for beam and bolt collisions (not drawn) Extension
.xmesh
- Use_BSP (boolean)
- Use_Rapid (boolean)
- Mass (metric tons) - mass in metric tonnes (kkg)
- Moment_Of_Inertia (metric tons * meters*meters)
- Convex_Hull_Volume (meters * meters * meters)
- Fuel_Capacity (metric tons)
- Hull (VSD) - Specifies the ships Hull
- Armor_Front_Top_Right (VSD) - Specifies the ships physical armor
- Armor_Front_Top_Left (VSD) - Specifies the ships physical armor
- Armor_Front_Bottom_Right (VSD) - Specifies the ships physical armor
- Armor_Front_Bottom_Left (VSD) - Specifies the ships physical armor
- Armor_Back_Top_Right (VSD) - Specifies the ships physical armor
- Armor_Back_Top_Left (VSD) - Specifies the ships physical armor
- Armor_Back_Bottom_Right (VSD) - Specifies the ships physical armor
- Armor_Back_Bottom_Left (VSD) - Specifies the ships physical armor
- Shield_Front_Top_Right (VSD) - Specifies the ships Shield (electric armor)
- Shield_Back_Top_Left (VSD) - Specifies the ships Shield (electric armor)
- Shield_Front_Bottom_Right (VSD) - Specifies the ships Shield (electric armor)
- Shield_Front_Bottom_Left (VSD) - Specifies the ships Shield (electric armor)
- Shield_Back_Top_Right (VSD) - Specifies the ships Shield (electric armor)
- Shield_Front_Top_Left (VSD) - Specifies the ships Shield (electric armor)
- Shield_Back_Bottom_Right (VSD) - Specifies the ships Shield (electric armor)
- Shield_Back_Bottom_Left (VSD) - Specifies the ships Shield (electric armor)
- Shield_Recharge (VSD/second) - Shield regeneration if not violating speed limit
- Shield_Leak (percentage) - (optional) how much leak these shields have (usually 0%)
- Warp_Capacitor (800MJ)
- Primary_Capacitor (100MJ)
- Reactor_Recharge (100MJ/s)
- Jump_Drive_Present (Boolean ) - boolean whether the jump drive is missing (assumed missing in absence of tag)
- Jump_Drive_Delay (seconds) - seconds before jump drive initiates
- Wormhole (boolean) - forces units to teleport upon touching this one
- Outsystem_Jump_Cost (800MJ)
- Warp_Usage_Cost (800MJ/second) - energy to jump
- Afterburner_Type (int type ) - Specifies the ships engine
- Afterburner_Usage_Cost (100MJ/s)
- Maneuver_Yaw (metric tons*degrees/second^2) - Specifies the ships maneuver data
- Maneuver_Pitch (metric tons*degrees/second^2) - Specifies the ships maneuver data
- Maneuver_Roll (metric tons*degrees/second^2) - Specifies the ships maneuver data
- Yaw_Governor (degrees/sec) - maximum yaw
- Pitch_Governor (degrees/sec) - maximum pitch
- Roll_Governor (degrees/sec) - maximum roll
- Afterburner_Accel (metric tons*m/s^2) - Thrust with afterburners
- Forward_Accel (metric tons*m/s^2) - Thrust without afterburners
- Retro_Accel (metric tons*m/s^2) - Reverse thrust
- Left_Accel (metric tons*m/s^2) - Left thrust
- Right_Accel (metric tons*m/s^2) - Right thrust
- Top_Accel (metric tons**m/s^2) - Top thrust
- Bottom_Accel (metric tons*m/s^2) - Bottom thrust
- Afterburner_Speed_Governor (meters/second) - Max safe speed with afterburners
- Default_Speed_Governor (meters/second) - Max safe speed without afterburner
- ITTS (boolean) - if the unit has ability to target track with lead
- Radar_Color (boolean) - if unit has color radar
- Radar_Range (meters) - maximum range of radar
- Tracking_Cone (Degrees) - cosine of cone at which guns may track
- Max_Cone (Degrees)
- Lock_Cone (Degrees) - cosine of cone at which missiles gain locking time
- Hold_Volume (m^3) - volume in cargo units
- Can_Cloak (boolean)
- Cloak_Min (percentage) - minimum percentage of cloakedness
- Cloak_Rate (percentage/second) - time per second to cloak
- Cloak_Energy (800MJ/s) - how much energy this takes.
- Cloak_Glass (boolean) - boolean whether or not effect 2 is used
- Repair_Droid (int)
- ECM_Rating (int)
- ECM_Resist (int)
- Ecm_Drain (800MJ/s)
- Hud_Functionality (1 normalized fraction)
- Max_Hud_Functionality (1 normalized fraction)
- Lifesupport_Functionality (1 normalized fraction)
- Max_Lifesupport_Functionality (1 normalized fraction)
- Comm_Functionality (1 normalized fraction)
- Max_Comm_Functionality (1 normalized fraction)
- FireControl_Functionality (1 normalized fraction)
- Max_FireControl_Functionality (1 normalized fraction)
- SPECDrive_Functionality (1 normalized fraction)
- Max_SPECDrive_Functionality (1 normalized fraction)
- Slide_Start (seconds) - (optional) number of tenths of seconds before fully reacting to keyboard (smoothing)
- Slide_End (seconds) - (optional) number of tenths of seconds to stop
- Activation_Accel (m/s^2)
- Activation_Speed (m/s)
- Upgrades
({filename(string);mountoffset(int);subunoffset(int)})
- filename -
- mountoffset -
- subunoffset -
- Example:
{skyscope1;;}{capacitor02;;}{reactor02;;}{spec_capacitor01;;}{quadshield02;;}{armor01;;}
- Prohibited_Upgrades (Semicolon delineated list of prohibited upgrades, allowing up to a certain number if specified with colon.)
- Sub_Units
({filename(string);x(meters);y(meters);z(meters);forex(meters);forey(meters);forez(meters);upx(meters);upy(meters);upz(meters);restricted(meters)})
- A Subunt is a (not necessarily) small independant part of your unit. In fact the main unit and the subunit are two different ships (units) patched together at a certain point (x,y,z see below). If a subunit is destroyed the remaining parts will fly into space like the remainings of any other ship ... e.g turrets- filename - unit file that can be referenced from toplevel units
- x, y, z - location of subunit
- forex, forey, forez - (optional) Forward vector of subunit (assume 0,0,1)
- upx, upy, upz - (optional) Up vector of subunit (assume 0,1,0)
- restricted - (optional) minimum dot with forey that the turret can have so it can't turn inside itself
- Example:
- Sound (shieldhit(string);armorhit(string);hullhit(string);jump(string);explode(string);cloak(string);engine(string))
- shieldhit, armorhit, hullhit -
- jump -
- explode -
- cloak -
- engine -
- Example:
- Light
({meshfile(string);x(meters);y(meters);z(meters);scale(meters);r(percentage);g(percentage);b(percentage);a(percentage);activationspeed(meters/second)})
- Specifies an engine-flame/light/glow/whatever on your ship- meshfile - meshfile (sans
.xmesh
) for this engine model - x, y, z - location of light (in meters)
- scale - size of engine (radius, in meters)
- r, g, b, a - (optional)red/blue/green colour of engine
- activationspeed -
- Example:
{supernova.bmp.bfxm;0.00000e+0;0.350000;-2.09200;2;;;;;}{supernova.bmp.bfxm;1.31600;-6.00000e-3;-1.82200;2;;;;;}{supernova.bmp.bfxm;-1.32800;-6.00000e-3;-1.82200;2;;;;;}
- meshfile - meshfile (sans
- Mounts
({type(string);ammo(int);volume(meters);SIZE(string);x(meters);y(meters);z(meters);xyscale(meters);zscale(meters);forex(meters);forey(meters);forez(meters);upx(meters);upy(meters);upz(meters);functionality(percentage);maxfunctionality(percentage)})
- type - Type of weapon (see weapon_list.xml in the data directory)
- ammo - how much ammo the gun holds (only needed for ammo needing weapons e.g. missiles,torpedos,...
- volume -
- SIZE - size class(es)/type(s) and if they are capable of autotracking.
- x, y, z - location of weapon
- xyscale, zscale -
- forex, forey, forez - (optional) Forward vector of mount (assume 0,0,1)
- upx, upy, upz - (optional) Up vector of mount (assume 0,1,0)
- Example:
{;;;Light Medium;1.01200;-6.80000e-2;3.40800;;;;;;;;;1;1}{;;;Light Medium;-0.964000;-6.80000e-2;3.40800;;;;;;;;;1;1}{;;;Light;0.380000;0.176000;1.07600;;;;;;;;;1;1}{;;;Light;-0.336000;0.176000;1.07600;;;;;;;;;1;1}{;0;48;light-missile medium-missile special-missile;0;0;0;;;;;;;;;1;1}{;0;48;light-missile medium-missile special-missile;0;0;0;;;;;;;;;1;1}
- Net_Comm (?)
- Dock
({INTERNAL(boolean);x(meters);y(meters);z(meters);size(meters);minsize(meters)})
- INTERNAL - (optional/unused) whether the dock port makes the ship disappeared. The ship must be smaller than the size of the dock, otherwise it will remain in open space.
- x, y, z - location of dock (in meters)
- size - size of dock port (radius, in meters)
- minsize -
- Example:
- Cargo_Import
({Cat(string);price(percentage);pricestddev(percentage);quant(percentage);quantstddev(percentage)})
Used by bases, etc. for generating the cargo available for purchase.- Cat - A category to use from Master_part_list.csv eg
Natural_Products/Natural_Resources"
- price - price scale (multiplied by price in list)
- pricestddev - price scale variation (above adjusted by this)
- quant - quantity of this sort of cargo
- quantstddev - quantity variation
- Example:
- Cat - A category to use from Master_part_list.csv eg
- Cargo
({filename(string);Category(string);price(credits);quant(int);mass(metric Tons);volume(meters*meters*meters);functionality(percentage);maxfunctionality(percentage);description(string);missionCargo(bool)})
- filename - name of cargo
- Category -
- price - price of cargo
- quant - ammount of cargo
- mass - mass in tonnes
- volume - size of cargo in m3
- functionality, maxfunctionality - FIXME ???
- description - (optional/unused)
- missionCargo - ???
- Example:
{skyscope1;upgrades/Sensors/Basic;200;1;1;1;1;1;Refurbished Part;0}{capacitor02;upgrades/Capacitors/Standard;200;1;1;1;1;1;Refurbished Part;0}{reactor02;upgrades/Reactors/Standard;200;1;1;1;1;1;Refurbished Part;0}{spec_capacitor01;upgrades/SPEC_Capacitors;200;1;1;1;1;1;Refurbished Part;0}{quadshield02;upgrades/Shield_Systems/Standard_Quad_Shields;200;1;1;1;1;1;Refurbished Part;0}{armor01;upgrades/Armor;200;1;1;1;1;1;Refurbished Part;0}
- Explosion (string)
- Equipment_Space (m^3)
- Num_Animation_Stages (int)
- Upgrade_Storage_Volume (float)
- Heat_Sink_Rating (float)
FIXME Integrate the Hint better into the decription above.
Hint (Source):
- The ...Maneuver variables are a value that can be calculated from "metric tons*degrees/second^2".
- The ...Governor variables are the maximum turn speed defined as "degrees/sec".
Editing the units.csv
file
- Open the units.csv file in a spreadsheet application and if you are adding a new item, add a new line.
- FIXME ADD INFO
- Save the file as a csv file.
Example: Llama.begin
See also
- Template:CVS:Units.csv in CVS
- HowTo:Edit XUNIT files
- HowTo:Add Descriptions
- HowTo:Add Cargo
- HowTo:Add Upgrades
- HowTo:Edit master_part_list.csv
Create Ships in Wings3D | HowTos | Edit Unit Files |