Units.csv File Details

A forum for the discussion and development of programs to assist working on or playing with the Vegastrike engine and data sets.
Post Reply
tonerman
Merchant
Merchant
Posts: 40
Joined: Sun Jan 09, 2005 11:48 pm
Location: San Jose, CA
Contact:

Units.csv File Details

Post by tonerman »

(right now this post is just a reminder for me to do this when I get to school tomarrow...)

This post will have a list of the Column headers for the Units.csv file and a description of what all the columns are for.

Description:
The units.csv file is a comma seperated file which cantains the stats for the various ships used within Vegastrike and/or its mods. You can view/edit it with any spreadsheet such as OpenOffice of Excel.


"Key"
The key name for the ship. This is the name the engine uses to identify the ship in game. This entry MUST be unique.
EX: "llama", "llama.blank", "llama.template"

"Directory"
The reletive path (to the directory containing Units.csv) where the files for the unit are located.
EX: "./llama"

"Name"
The name of the ship.
EX: "llama"

"FoFID"
"Object_Type"
"Combat_Role"

"Textual_Description"
The text description of the ship. (Shown in game?)

"Hud_image"
The image file used for the HUD. Must be .spr file?
EX: "llama-hud.spr"

"Unit_Scale"

"Cockpit"
The file that contains the internal appearance of the cockpit. Must be .cpt file?
EX: "medium_cockpit.cpt"

"CockpitX"
"CockpitY"
"CockpitZ"

"Mesh"
The name of the file for the mesh of the ship. Must be in format {filename(string);frame(int);texturetime(float)}. (frame and texturetime?)
SemiColon seperated.
EX: {llama.bfxm;;}

"Shield_Mesh"
"Rapid_Mesh"
"BSP_Mesh"
"Use_BSP"
"Use_Rapid"

"Mass"
The mass of the ship in Metric Tons

"Moment_Of_Inertia"
"Convex_Hull_Volume"
"Fuel_Capacity"
"Hull"
"Armor_Front_Top_Right"
"Armor_Front_Top_Left"
"Armor_Front_Bottom_Right"
"Armor_Front_Bottom_Left"
"Armor_Back_Top_Right"
"Armor_Back_Top_Left"
"Armor_Back_Bottom_Right"
"Armor_Back_Bottom_Left"
"Shield_Front_Top_Right"
"Shield_Back_Top_Left"
"Shield_Front_Bottom_Right"
"Shield_Front_Bottom_Left"
"Shield_Back_Top_Right"
"Shield_Front_Top_Left"
"Shield_Back_Bottom_Right"
"Shield_Back_Bottom_Left"
"Shield_Recharge"
"Shield_Leak"
"Warp_Capacitor"
"Primary_Capacitor"
"Reactor_Recharge"
"Jump_Drive_Present"
"Jump_Drive_Delay"
"Wormhole"
"Outsystem_Jump_Cost"
"Warp_Usage_Cost"
"Afterburner_Type"
"Afterburner_Usage_Cost"
"Maneuver_Yaw"
"Maneuver_Pitch"
"Maneuver_Roll"
"Yaw_Governor"
"Pitch_Governor"
"Roll_Governor"
"Afterburner_Accel"
"Forward_Accel"
"Retro_Accel"
"Left_Accel"
"Right_Accel"
"Top_Accel"
"Bottom_Accel"
"Afterburner_Speed_Governor"
"Default_Speed_Governor"
"ITTS"
"Radar_Color"
"Radar_Range"
"Tracking_Cone"
"Max_Cone"
"Lock_Cone"
"Hold_Volume"
"Can_Cloak"
"Cloak_Min"
"Cloak_Rate"
"Cloak_Energy"
"Cloak_Glass"
"Repair_Droid"
"ECM_Rating"
"ECM_Resist"
"Ecm_Drain"
"Hud_Functionality"
"Max_Hud_Functionality"
"Lifesupport_Functionality"
"Max_Lifesupport_Functionality"
"Comm_Functionality"
"Max_Comm_Functionality"
"FireControl_Functionality"
"Max_FireControl_Functionality"
"SPECDrive_Functionality"
"Max_SPECDrive_Functionality"
"Slide_Start"
"Slide_End"
"Activation_Accel"
"Activation_Speed"
"Upgrades"
"Sub_Units"
"Sound"
"Light"
"Mounts"
"Net_Comm"
"Dock"
"Cargo_Import"
"Cargo"
"Explosion"
"Equipment_Space"
"Num_Animation_Stages"
"Upgrade_Storage_Volume"
"Heat_Sink_Rating"


On much of this I am either guessing.. or... making an educated guess, if a developer or someone see a mistake with my guess.. PLEASE say something.. thanky! :)
Have you seen my repair droid?
pontiac
Elite
Elite
Posts: 1454
Joined: Sun Jan 12, 2003 6:24 pm
Location: Far out in the uncharted backwaters of the unfashionable end of the western spiral arm of the Galaxy
Contact:

Post by pontiac »

You can get more infos on some of the entries under this URL:
http://vegastrike.sourceforge.net/phpwi ... tUnitFiles

Maybe a new wiki-page about the units.csv would be good:
http://vegastrike.sourceforge.net/phpwi ... itUnitsCsv

Pontiac
Silverain
Expert Mercenary
Expert Mercenary
Posts: 984
Joined: Thu Aug 07, 2003 5:35 am
Location: Brisbane, Land of Oz
Contact:

Post by Silverain »

This could be something for zazen and the Developers Guide.
THOUGHT CRIME! [points finger] THOUGHT CRIME!
tonerman
Merchant
Merchant
Posts: 40
Joined: Sun Jan 09, 2005 11:48 pm
Location: San Jose, CA
Contact:

Post by tonerman »

Woot.. thanks for the link...

It appeared to have much of the info I wanted..

Now.. to figure out wiki.. I might just write straight to the wiki and forgo this thread... than again.. copy/paste isn't that hard..hehehe

How would I go about registering so I can update the wiki page? and not just be logged as an IP address?
Have you seen my repair droid?
Silverain
Expert Mercenary
Expert Mercenary
Posts: 984
Joined: Thu Aug 07, 2003 5:35 am
Location: Brisbane, Land of Oz
Contact:

Post by Silverain »

tonerman wrote:How would I go about registering so I can update the wiki page? and not just be logged as an IP address?


Go to the wiki page, or link from the home page via FAQWiki. Down the bottom is a sign in section. Just sign in with a username structured as two joined words with capitals i.e. convention we use is User... so UserTonerman (note the two capitals - wiki requires it for some reason). Then, on the page you wish to edit, click the edit button down the bottom, and it creates the edit area.

For practice, go play in the wiki sandbox to get the hang of using the wiki.

Silverain
THOUGHT CRIME! [points finger] THOUGHT CRIME!
GAlex
Mercenary
Mercenary
Posts: 126
Joined: Sun May 01, 2005 10:33 am
Location: Italia

Post by GAlex »

hello everyone.

i'm new to this forum, but have followed VS since 0.3 and appreciated much all it's progress.

in order to easily edit csv files w/out buying microsoft excel or using the heavy-weight way-too-much-stuff openoffice, also 'cause my localisation implies the decimal comma instead of decimal point (think of the consequence!), i've developed a small app to accomplish this task, and released it with the GPL.
the GUI is self-explanatory.

You can find it attached at this post.

it's written in freepascal with the aid of lazarus ide/rad.
the choice is motivated by the facts that freepascal and lazarus are open source and free software, like VS, they are powerfull to develop from small to big apps in a little time, the learning curve for freepascal is quite low, the compiler is fast, os-independant, multiplatform, and builds statically linked executables which then doesn't rely on any external library.
the attached zip archive contains the sources and the compiled-stripped-upx_ed executable for win32. anyone can (cross-)compile for any other os (linux and macosx primarily).
see www.lazarus.freepascal.org for more info

hoping it will be usefull, many thanks to all.

file removed due to redesign.
Last edited by GAlex on Mon May 02, 2005 6:59 pm, edited 1 time in total.
"Eppur si muove ..."
(Galileo Galilei just after abjuring to the Inquisition)
hellcatv
Developer
Developer
Posts: 3980
Joined: Fri Jan 03, 2003 4:53 am
Location: Stanford, CA
Contact:

Post by hellcatv »

really neat idea... ack I didn't compile pascal into my gcc--anyone here have time to build me a linux version of it?
Vega Strike Lead Developer
http://vegastrike.sourceforge.net/
Halleck
Elite
Elite
Posts: 1832
Joined: Sat Jan 15, 2005 10:21 pm
Location: State of Denial
Contact:

Post by Halleck »

This looks like an excellent tool! MUCH more lightweight than openoffice calc and perfectly suited for the job. The one issue I have with it is that I can't find a way to edit info in a cell... when I go to make changes, the whole cell is blanked out. It's not very convenient having to re-type all the values in a cell when you wanted to just change one number (especially for cels which contain huge lists of mount points).

Also, on densely packed cells such as the mount point listing, your program renders the text in a big, dense, illegible jumble (at least on my system).

Good job, though. Once those kinks are ironed out (or if there is some workaround) I'll likely switch over to this handy utility for all my CSV-editing needs.
GAlex
Mercenary
Mercenary
Posts: 126
Joined: Sun May 01, 2005 10:33 am
Location: Italia

improvements

Post by GAlex »

thanks for the feedbacks.

i've released a new version that improve the first in the way you pointed.

i ("I" should be deprecated) think that there should be a cleanup of the source code of TStringGrid in Lazarus Component Library (LCL) 'cause it displays a little havoc in field with too much content, but it's not so much important by now.

however, as you can see, i've added two new components above the status bar wich has been redesigned and simplified. it now only shows the current file/search status, and the field title, while the new components allow a more confortable editing and a fully readable field value description.

to activate editing you can obviously click on the TEdit, or you can simply press <enter> on a field in the grid. another <enter> in the TEdit changes the values and returns the focus on the grid. this allows a full keyboard less mouse value editing (since mouse is less productive than keyboard). in this direction, i will hopefully soon releas a new build with key-accelerator (such as alt_o alt_s etc... but need to figure out how it works exactly).

the new file is here attached.
as soon as i have the time to install my new SuSE 9.3 AND Lazarus AND Freepascal I will release a linux build (and hopefully a macosx crosscompiled one).

any other advices/requests?

attachment removed due to code changes.
Last edited by GAlex on Tue May 03, 2005 8:20 pm, edited 2 times in total.
"Eppur si muove ..."
(Galileo Galilei just after abjuring to the Inquisition)
Halleck
Elite
Elite
Posts: 1832
Joined: Sat Jan 15, 2005 10:21 pm
Location: State of Denial
Contact:

Post by Halleck »

Excellent! Having it load up the contents of the cell you want to edit makes tweaking the csv file much easier, thank you for adding that function. I only have two more suggestions:
1. It would be very handy to have a "sticky" column on the far left that displays the unit name (much like the row at the top which displays the value type). It's currently difficult to tell which unit row you are editing. Basically, the column containing the unit names should always be visible.

2. Using the mouse scroll wheel moves the cel selector up and down, and scrolls the view window at the same time. I'd reccomend having the scroll wheel only control one or the other, since these two operations get out of sync quickly when performed at the same time. It's nothing more than a minor annoyance though, don't worry about it if changing it would be too difficult.

Anyway, good job! The interface is very streamlined.
GAlex
Mercenary
Mercenary
Posts: 126
Joined: Sun May 01, 2005 10:33 am
Location: Italia

improvements

Post by GAlex »

ok.

just 5 minutes GUI-Designing, added 1 line of code!

now the statusbas reports also the current unit (having a fixed column makes the unit name uneditable).

the bad habits of the TStringGrid control of LCL about scrolling with the mouseweel are bugs and/or intention of the coders, since there is not a property that involves it.

i can only suggest you better use pg-up pg-down from the keyboard having much more usual results in scrolling (i definitely have no time to dedicate to a rewrite of the Grid control code, maybe another time!).

also sorry for the time lag, but i'm italian so ... GMT+1!

here is the new version attached, while the previous has obviously been removed.

a linux binary is coming soon.

any other suggestion?

attachment buggy, reposted.
Last edited by GAlex on Wed May 04, 2005 8:03 pm, edited 1 time in total.
"Eppur si muove ..."
(Galileo Galilei just after abjuring to the Inquisition)
Halleck
Elite
Elite
Posts: 1832
Joined: Sat Jan 15, 2005 10:21 pm
Location: State of Denial
Contact:

Post by Halleck »

Excellent. Next time I need to make some changes to units.csv, I'll use your editor and tell you how it goes.

And the scroll wheel thing is no big deal, I figured out that you can just scroll and then click on some random row and it works about the same (or just use the arrow keys/pgup/pgdn as you suggested).
GAlex
Mercenary
Mercenary
Posts: 126
Joined: Sun May 01, 2005 10:33 am
Location: Italia

debugged

Post by GAlex »

thanks to you.
the last archive contains a buggy tainted version. reposted.

if you have requests for any other improvement and/or new tools, you can post me or mail me (i think my mail is on the profile).

i will be back on 16.may 'cause i'm going to spend some days in Tunisia.

see you soon.
You do not have the required permissions to view the files attached to this post.
"Eppur si muove ..."
(Galileo Galilei just after abjuring to the Inquisition)
Halleck
Elite
Elite
Posts: 1832
Joined: Sat Jan 15, 2005 10:21 pm
Location: State of Denial
Contact:

Post by Halleck »

All right then, enjoy your vacation. :wink:
And thanks for the app!
strangelet
Bounty Hunter
Bounty Hunter
Posts: 201
Joined: Wed Jan 14, 2004 11:11 pm
Location: londonengland, england
Contact:

Post by strangelet »

i wonder if we might see a mac application of this lil gem? artists could use some help with datamungeing.
- - above and beyond - -
Halleck
Elite
Elite
Posts: 1832
Joined: Sat Jan 15, 2005 10:21 pm
Location: State of Denial
Contact:

Post by Halleck »

GAlex wrote:it's written in freepascal with the aid of lazarus ide/rad.
...
the attached zip archive contains the sources and the compiled-stripped-upx_ed executable for win32. anyone can (cross-)compile for any other os (linux and macosx primarily).
see www.lazarus.freepascal.org for more info


Evidently, all that's needed to port this to MacOS is a simple re-compile.
GAlex
Mercenary
Mercenary
Posts: 126
Joined: Sun May 01, 2005 10:33 am
Location: Italia

linux build

Post by GAlex »

ok, i'm not dead, but my PC was indeed, after my beloved black :twisted: cat dropped a cup of coffee on my naked PC case having the effect of shortcircuiting the motherboard and a pair of other things.

now, after rebuilding a new PC, reinstalling almost everything (fortunately i make weekly backups on DVDs), AND finally having a linux system working, i recompiled my li'l app on linux.

too bad due to a LCL bug in the linux version, i had to change some portions of code to get it working.

now i think it will run flawless on any linux > 2.6.x (remember it is statically linked!). if not, let me know.

as for the MacOsX build, well ... i've not an apple, so someone else should install lazarus on an apple machine and compile my app from scratch (i think the linux version of the code should work unlike the w32 version). if someone will try, let me know.

have a nice compiling! :wink:

GAlex.

got problems attaching file. now it should work (25/06/2005)
You do not have the required permissions to view the files attached to this post.
"Eppur si muove ..."
(Galileo Galilei just after abjuring to the Inquisition)
Post Reply