Database Files for VS
-
- ISO Party Member
- Posts: 453
- Joined: Fri Jun 03, 2005 10:30 am
- Location: Europe
Database Files for VS
I would like to understand some of the VS configuration and database internals. There are many files in SVN that seem to be somehow configurating the behaviour of VS.
In particular, I'd like to know what the following files actually do, if they are used at all, are just remains of a former version or maybe unintendedly committed.
Cargo/Upgrades/Weapons/Turrets/Ships (all mangled)
a) ./stats/vegastrike.xls
b) ./units/units.csv
c) ./units/units_working.sxc
d) ./master_parts_list.csv
e) ./master_parts_list.xml
f) ./weapons_list.xml
g) ./documentation/unitstats.csv
Factions:
h) ./stats/factioninfo.csv
i) ./stats/factions.csv
j) ./factions.xml
As far as I've found out:
d) master_parts_list.csv stores for every item in VS a key, its category, volume, mass and price, the path to the cargo item picture and a description
about the rest I'm not completely sure.
In particular, I'd like to know what the following files actually do, if they are used at all, are just remains of a former version or maybe unintendedly committed.
Cargo/Upgrades/Weapons/Turrets/Ships (all mangled)
a) ./stats/vegastrike.xls
b) ./units/units.csv
c) ./units/units_working.sxc
d) ./master_parts_list.csv
e) ./master_parts_list.xml
f) ./weapons_list.xml
g) ./documentation/unitstats.csv
Factions:
h) ./stats/factioninfo.csv
i) ./stats/factions.csv
j) ./factions.xml
As far as I've found out:
d) master_parts_list.csv stores for every item in VS a key, its category, volume, mass and price, the path to the cargo item picture and a description
about the rest I'm not completely sure.
-
- Venturer
- Posts: 543
- Joined: Sun Jan 22, 2006 9:55 am
- Location: Baltic States
- Contact:
-
- Artisan
- Posts: 1270
- Joined: Fri Jan 03, 2003 3:27 am
- Location: Perth, Western Australia
- Contact:
Re: Database Files for VS
a) ./stats/vegastrike.xls
Ignore.
b) ./units/units.csv
Contains all the config information for the units that are spawned in game, VERY IMPORTANT!!!
c) ./units/units_working.sxc
Just something to help me with part of the rebalance. Ignore.
d) ./master_parts_list.csv
Contains the configuration information for all items able to be sold, VERY IMPORTANT.
e) ./master_parts_list.xml
An xml copy of the above, deprecated.
f) ./weapons_list.xml
Contains the weapon information for all the weapons possible, VERY IMPORTANT.
g) ./documentation/unitstats.csv
Ignore.
h) ./stats/factioninfo.csv
Ignore.
i) ./stats/factions.csv
Ignore.
j) ./factions.xml
Contains the configuration for factions, relationships/comms etc, VERY IMPORTANT.
If you want more detailed info, let me know and I'll post it up!
Dan
Ignore.
b) ./units/units.csv
Contains all the config information for the units that are spawned in game, VERY IMPORTANT!!!
c) ./units/units_working.sxc
Just something to help me with part of the rebalance. Ignore.
d) ./master_parts_list.csv
Contains the configuration information for all items able to be sold, VERY IMPORTANT.
e) ./master_parts_list.xml
An xml copy of the above, deprecated.
f) ./weapons_list.xml
Contains the weapon information for all the weapons possible, VERY IMPORTANT.
g) ./documentation/unitstats.csv
Ignore.
h) ./stats/factioninfo.csv
Ignore.
i) ./stats/factions.csv
Ignore.
j) ./factions.xml
Contains the configuration for factions, relationships/comms etc, VERY IMPORTANT.
If you want more detailed info, let me know and I'll post it up!
Dan
"Computers are useless. They can only give you answers."
-- Pablo Picasso
-- Pablo Picasso
-
- ISO Party Member
- Posts: 453
- Joined: Fri Jun 03, 2005 10:30 am
- Location: Europe
Perfectly, thank you much!
Do you mind if I remove the superfluous files (those labeled with "deprecated" and "ignore") from SVN then?
One more question: I'm inluding Silverain's upgrades and weapons pictures into SVN. The image paths are stored in the master_parts_list.cvs and including them works fine. For weapons, however, I find it very difficult. There are many more weapons listed in the master parts list than available in game. Some weapons are also listed with some properties in the units.cvs and some are also listed in weapons_list.xml. Which list in the authorative one?
(It's somewhat hard to find out since everything is spread accross these files. For example in units.cvs many upgrades have a directory string "./factions/upgrades/..." (from the "/units/" directory). But a directory /units/factions/upgrades/... does not exist!)
Do you mind if I remove the superfluous files (those labeled with "deprecated" and "ignore") from SVN then?
One more question: I'm inluding Silverain's upgrades and weapons pictures into SVN. The image paths are stored in the master_parts_list.cvs and including them works fine. For weapons, however, I find it very difficult. There are many more weapons listed in the master parts list than available in game. Some weapons are also listed with some properties in the units.cvs and some are also listed in weapons_list.xml. Which list in the authorative one?
(It's somewhat hard to find out since everything is spread accross these files. For example in units.cvs many upgrades have a directory string "./factions/upgrades/..." (from the "/units/" directory). But a directory /units/factions/upgrades/... does not exist!)
-
- Trader
- Posts: 19
- Joined: Fri Mar 17, 2006 2:17 pm
I'd like to tweak missile capacity of ships. It seems to me that the units.csv file should have all the ships' stats, but it's very confusing, many numbers and little explanation for them. So can someone please just give me an example of a line/part of a line that affects missile capacity?
P.S.
Also if someone would be so kind and tell me which file is responisble (and a line too if file is a jungle ) for determining how much space does a missile use within the missile capacity. Because while a ship can mount, say, 16 dumbfires per launcher, it can mount only 1 friend/foe missile, making such practically unusable.
P.S.
Also if someone would be so kind and tell me which file is responisble (and a line too if file is a jungle ) for determining how much space does a missile use within the missile capacity. Because while a ship can mount, say, 16 dumbfires per launcher, it can mount only 1 friend/foe missile, making such practically unusable.
-
- Explorer
- Posts: 13
- Joined: Sat Mar 25, 2006 4:31 pm
- Location: Germany
- Contact:
Hello dandandaman!
Hello JumpinDuck!
First make a backup copy of units/units.csv, then open it with your favourite spreadsheet program, I take OpenOffice Calc.
It will offer an import-dialog for items seperated by commata ','
Goto the far left to column CX that reads 'Mounts', the line below is the format of values to expect:
{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)}
For the "llama.begin" 's 6 mounts this is:
{;;;LIGHT MEDIUM SPECIAL;1.01200;-6.80000e-2;3.40800;;;;;;;;;1;1}
{Tractor;;;LIGHT MEDIUM PECIAL;-0.964000;-6.80000e-2;3.40800;;;;;;;;;1;1}
{Laser;;;LIGHT;0.380000;0.176000;1.07600;;;;;;;;;1;1}
{Laser;;;LIGHT;-0.336000;0.176000;1.07600;;;;;;;;;1;1}
{dumbfire;16;48;LIGHT-MISSILE MEDIUM-MISSILE SPECIAL-MISSILE;0;0;0;;;;;;;;;1;1}
{dumbfire;16;48;LIGHT-MISSILE MEDIUM-MISSILE SPECIAL-MISSILE;0;0;0;;;;;;;;;1;1}
If you match the corresponding columns you get these three types of mounts (two of every kind):
Most interesting to you will be the volume(meters) and the SIZE(string).
Another way would be to locate your favourite missile in the weapons_list.xml
The mountsize="heavy-missile" along with the volume="100" is what normally prevents Llama's form having those Normally, you know ...
If you don't want your abuse also to be exploited by the computer, you should think of how common your ships-type is in the universe compared to how many AI-controlled ships will be able to load the forged missiles. Perhaps it is best, if you tweak both files to meet somewhere in the middle.
HTH
private_lock
- First I thank you for this clear statement. It was what I was hunting the forum for Please consider making this thread sticky because more people might find the explanations quite useful!
- Was it a political decision to abandon those XML-formats or was it just to tedious to edit them compared to the *.csv?
Will the ./weapons_list.xml and ./factions.xml also get transformed to *.csv? What about the ./universe/milky_way.xml and all those *.system? - There are quite a lot more XML files in the units directory:
./units/admonisher/admonisher
./units/admonisher/admonisher.blank
./units/admonisher/admonisher.template
./units/aelar/aelar
./units/aelar/aelar.blank
./units/aelar/aelar.template
Do I get you right, that all those are deprecated too???
Actually the ./units/units.csv contains equivalent data.
If so, this should be indicated in http://vegastrike.sourceforge.net/phpwi ... tUnitFiles - Regarding the contents of ./units/units.csv What is the 'Cargo' column good for? Why do some bases have a hard wired Contraband/Pilot in their cargo hold? And imagine a Pilot off 367 metric tons To me the whole column seem utterly superfluous.
- The Cargo_Import column has many duplicate entries where this redundancy introduces a source of errors. Perhaps one could imagine an import tag to indicate, that 'starfortress.blank' and 'starfortress.template' are exactly the same as 'starfortress'.
- Anyway I still didn't get the use for those template and blank copies ...
Actually they differ in the preset of upgrades. But then I would consider it streight forward to have a single base ship with basic statistics. In addition the 'Upgrades' column would be enhanced to this format:
{VARIANT(string);PRICE(percentage);FIXED(boolean);{filename(string);mountoffset(int);subunoffset(int)}}
And the new shield levels and such stuff will be derived from the according upgrades. The total price calculates as the sum of all subcomponents multiplied by the second parameter to simulate the discount for beeing such a good customer and taking the ship as is.
This would also open the door to some randomly preassembled ships, like with a realworld car dealer.
BTW. can I sell upgrades, that came via the 'Upgrades' column or are those hardwired into the ship? If they are not in the normal ship-dealers upgrades, am I prevented from installing a second shield? Will the effects of several shields add up?
To me it would be more natural to have a third flag indicating whether a preset was fixed or not. Fixed items appear in gray in the upgrade-screen and never show a button. This allows to verify, they are there and view their statistics. It is obvious to the user, why he cannot buy another shield.
In addition those preinstalled components might suffer damage and can be repared that way.
All in all I would consider this a mayor step in reducing redundancy, since this system guarantees consitent data. All values are calculated by taking the base and modifying it through exactly one merged level of upgrades (preinstalled or bought later). - Once I fly a ship with Cargo_Import and a Dock, will computer AI controlled ships be able to land on my 'dodo' and trade 'Fuels/Crude' and 'Compressed_Gasses'? Will this affect my balance and hold volume?
Hello JumpinDuck!
First make a backup copy of units/units.csv, then open it with your favourite spreadsheet program, I take OpenOffice Calc.
It will offer an import-dialog for items seperated by commata ','
Goto the far left to column CX that reads 'Mounts', the line below is the format of values to expect:
{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)}
For the "llama.begin" 's 6 mounts this is:
{;;;LIGHT MEDIUM SPECIAL;1.01200;-6.80000e-2;3.40800;;;;;;;;;1;1}
{Tractor;;;LIGHT MEDIUM PECIAL;-0.964000;-6.80000e-2;3.40800;;;;;;;;;1;1}
{Laser;;;LIGHT;0.380000;0.176000;1.07600;;;;;;;;;1;1}
{Laser;;;LIGHT;-0.336000;0.176000;1.07600;;;;;;;;;1;1}
{dumbfire;16;48;LIGHT-MISSILE MEDIUM-MISSILE SPECIAL-MISSILE;0;0;0;;;;;;;;;1;1}
{dumbfire;16;48;LIGHT-MISSILE MEDIUM-MISSILE SPECIAL-MISSILE;0;0;0;;;;;;;;;1;1}
If you match the corresponding columns you get these three types of mounts (two of every kind):
Code: Select all
{type(string); {;
ammo(int); ;
volume(meters); ;
SIZE(string); LIGHT MEDIUM SPECIAL;
x(meters); 1.01200;
y(meters); -6.80000e-2;
z(meters); 3.40800;
xyscale(meters); ;
zscale(meters); ;
forex(meters); ;
forey(meters); ;
forez(meters); ;
upx(meters); ;
upy(meters); ;
upz(meters); ;
functionality(percentage); 1;
maxfunctionality(percentage)} 1}
{type(string); {Laser;
ammo(int); ;
volume(meters); ;
SIZE(string); LIGHT;
x(meters); 0.380000;
y(meters); 0.176000;
z(meters); 1.07600;
xyscale(meters); ;
zscale(meters); ;
forex(meters); ;
forey(meters); ;
forez(meters); ;
upx(meters); ;
upy(meters); ;
upz(meters); ;
functionality(percentage); 1;
maxfunctionality(percentage)} 1}
{type(string); {dumbfire;
ammo(int); 16;
volume(meters); 48;
SIZE(string); LIGHT-MISSILE MEDIUM-MISSILE SPECIAL-MISSILE;
x(meters); 0;
y(meters); 0;
z(meters); 0;
xyscale(meters); ;
zscale(meters); ;
forex(meters); ;
forey(meters); ;
forez(meters); ;
upx(meters); ;
upy(meters); ;
upz(meters); ;
functionality(percentage); 1;
maxfunctionality(percentage)} 1}
Another way would be to locate your favourite missile in the weapons_list.xml
Code: Select all
<Missile name="AdvTorpedo" mountsize="heavy-missile">
<Energy rate="0" refire="20" locktime="4" />
<Damage rate="80000" phasedamage="65000" longrange="1" radius="250" radialspeed="800" />
<Distance speed="850" pulsespeed="15" range="1000000" detonationrange="60" volume="100" />
<Appearance file="torpedo" soundwav="missile_3.wav" />
</Missile>
If you don't want your abuse also to be exploited by the computer, you should think of how common your ships-type is in the universe compared to how many AI-controlled ships will be able to load the forged missiles. Perhaps it is best, if you tweak both files to meet somewhere in the middle.
HTH
private_lock
-
- Venturer
- Posts: 538
- Joined: Tue Mar 21, 2006 12:54 am
- Location: Delta Prime
- Contact:
The XML files are no longer used for new ships, but compatability with it is kept for older ship models. Should you wish, you CAN create new ship entries using XML, however. It just wouldn't be following the new standard
Cmdr. Micheal Ferrius (Ret.)
Retired Confederate Pilot
For Hire!
Post jobs to the BBS!
Tengoku de omachi shite imasu
Retired Confederate Pilot
For Hire!
Post jobs to the BBS!
Tengoku de omachi shite imasu
-
- The Shepherd
- Posts: 5841
- Joined: Fri May 13, 2005 8:37 pm
- Location: Ottawa
- Contact:
-
- Venturer
- Posts: 538
- Joined: Tue Mar 21, 2006 12:54 am
- Location: Delta Prime
- Contact:
-
- Venturer
- Posts: 537
- Joined: Sat May 14, 2005 10:51 am
- Location: milkyway->the sol system->earth->Europe->The Nederland->Soud Holland->Leiden
- Contact:
@private_lock and @dandandaman
i work on this part op the projet...
only is in the multiplay/mmog area...
link for my projet (on the forum)
http://vegastrike.sourceforge.net/forum ... php?t=6542
i work on this part op the projet...
only is in the multiplay/mmog area...
link for my projet (on the forum)
http://vegastrike.sourceforge.net/forum ... php?t=6542
All Your Base Are Belong To Us
-
- Artisan
- Posts: 1270
- Joined: Fri Jan 03, 2003 3:27 am
- Location: Perth, Western Australia
- Contact:
private_lock:
man that's a lot of questions! sorry bout the delay, but here's some answers...
a) I'll get it wiki-ised I think instead... but ya, that's stuff that really needs to be covered somewhere
b) two main reasons ... first was that it was hard to batch-balance everything when it was in seperate files, and the second that loading and parsing tons of seperate xml files was a bit of a slowdown, so having one .csv file already loaded when it came to launching units sped things up a bit
c) Yup, all the xml unit files are deprecated. But no, that page need not be updated as it is in the old wiki. The new wiki has this incomplete page instead:
http://vegastrike.sourceforge.net/wiki/ ... _units.csv
d) Cargo make sure that the unit is launched with that cargo in its hold already (I believe). Why Pilots? Dunno...
e) .blanks and .templates aren't going to exist for much longer....well, i hope....so this shouldn't be a problem
f) sounds mighty similar to the plan!
g) Your hold volume, yes .. your balance...good question!
Dan
man that's a lot of questions! sorry bout the delay, but here's some answers...
a) I'll get it wiki-ised I think instead... but ya, that's stuff that really needs to be covered somewhere
b) two main reasons ... first was that it was hard to batch-balance everything when it was in seperate files, and the second that loading and parsing tons of seperate xml files was a bit of a slowdown, so having one .csv file already loaded when it came to launching units sped things up a bit
c) Yup, all the xml unit files are deprecated. But no, that page need not be updated as it is in the old wiki. The new wiki has this incomplete page instead:
http://vegastrike.sourceforge.net/wiki/ ... _units.csv
d) Cargo make sure that the unit is launched with that cargo in its hold already (I believe). Why Pilots? Dunno...
e) .blanks and .templates aren't going to exist for much longer....well, i hope....so this shouldn't be a problem
f) sounds mighty similar to the plan!
g) Your hold volume, yes .. your balance...good question!
Dan
"Computers are useless. They can only give you answers."
-- Pablo Picasso
-- Pablo Picasso
-
- Merchant
- Posts: 57
- Joined: Wed Jan 25, 2006 9:22 pm
- Location: Albuquerque
- Contact:
Isn't this so that when you blow up a ship, it ejects a pilot pod along with the cargo?dandandaman wrote:d) Cargo make sure that the unit is launched with that cargo in its hold already (I believe). Why Pilots? Dunno...
My poems crush bones into powder,
You mumble like a coward,
I'm Mos Def, you need to speak louder!
(Speed Law)
You mumble like a coward,
I'm Mos Def, you need to speak louder!
(Speed Law)
-
- Artisan
- Posts: 1270
- Joined: Fri Jan 03, 2003 3:27 am
- Location: Perth, Western Australia
- Contact:
-
- Explorer
- Posts: 13
- Joined: Sat Mar 25, 2006 4:31 pm
- Location: Germany
- Contact:
Hello drvoke and thanks to dandandaman
d) Following this philosophy in 0.4.3 only very few units could eject a pilot:
Starfortress, Vitik and Yavok in different flavours... In addition, only Llama.begin will blow out some upgrades. Since there are definitely more pilots swirling around in the void, this cannot be the only source. Moreover I wonder if those units are automatically detected for carrying contraband.
When I bought a new ship the other day, I noticed some new cargo I hadn't bought, including some mission-cargo for dump because I definitely had no mission going on. Strange!
f) Now I consider myself being really intelligent for coming up with the same idea as you guys
g) So far I didn't notice any AI docking with me ... How will I find out? I never noticed someone requesting a clearence from me ...
When granting clearence it would be logic to treat the situation the same way, as if I initiated the docking myself in putting me into the 'base screens' for the other ship, so that I can trade my cargo myself. No need for a new interface ...
Thats it for now
private_lock
d) Following this philosophy in 0.4.3 only very few units could eject a pilot:
Starfortress, Vitik and Yavok in different flavours... In addition, only Llama.begin will blow out some upgrades. Since there are definitely more pilots swirling around in the void, this cannot be the only source. Moreover I wonder if those units are automatically detected for carrying contraband.
When I bought a new ship the other day, I noticed some new cargo I hadn't bought, including some mission-cargo for dump because I definitely had no mission going on. Strange!
f) Now I consider myself being really intelligent for coming up with the same idea as you guys
g) So far I didn't notice any AI docking with me ... How will I find out? I never noticed someone requesting a clearence from me ...
When granting clearence it would be logic to treat the situation the same way, as if I initiated the docking myself in putting me into the 'base screens' for the other ship, so that I can trade my cargo myself. No need for a new interface ...
Thats it for now
private_lock
-
- Elite
- Posts: 1832
- Joined: Sat Jan 15, 2005 10:21 pm
- Location: State of Denial
- Contact:
Agreed, this info could stand to be in the wiki somewhere. A full breakdown of the data tree would be nice, perhaps as subpages to Development:CVS Tree.