Universe defined where?

Forum For Privateer Remake
Post Reply
Melonhead
Bounty Hunter
Bounty Hunter
Posts: 131
Joined: Fri Sep 08, 2006 1:33 am
Location: Hampton, VA USA

Universe defined where?

Post by Melonhead »

I'm trying to figure out where the various files live that define the Privateer universe--where are the files that define systems, where are the garphics for bases, planets, bartenders, etc. No problem with those; the documentation is good enough.
But, I'm trying to figure out what the "source" is for the universe itself--the systems and planets within them. Using the online VegaStrike player tutorial, I've found the /sectors folder, with all the *.system files inside it, but I also see a /universe/wcuniverse.xml file, which seems to have similar info. Is one of these locations the "master," is one of them just a leftover from an earlier release (CVS vs. SVN), or do both work together in a way that isn't obvious? (I have this crazy idea that I'd like to improve the documentation so others can do interesting things. I've long since learned that I suck at coding, but am pretty good at documenting.)
z30
Expert Mercenary
Expert Mercenary
Posts: 808
Joined: Wed Nov 02, 2005 4:42 am

Re: Universe defined where?

Post by z30 »

Melonhead wrote:I'm trying to figure out where the various files live that define the Privateer universe--where are the files that define systems, where are the garphics for bases, planets, bartenders, etc. No problem with those; the documentation is good enough.

But, I'm trying to figure out what the "source" is for the universe itself--the systems and planets within them. Using the online VegaStrike player tutorial, I've found the /sectors folder, with all the *.system files inside it, but I also see a /universe/wcuniverse.xml file, which seems to have similar info. Is one of these locations the "master," is one of them just a leftover from an earlier release (CVS vs. SVN), or do both work together in a way that isn't obvious? (I have this crazy idea that I'd like to improve the documentation so others can do interesting things. I've long since learned that I suck at coding, but am pretty good at documenting.)
=======
<system name="Junction"><var name="planets" value="bd t bd"/>
<var name="quadrant" value="Humboldt"/>
<var name="sun_radius" value="85000"/>
<var name="xyz" value="1452 1675 420"/>
<var name="jumps" value="Gemini/J900 Gemini/Castor Gemini/Nexus Gemini/Penders_Star Gemini/119ce Gemini/New_Constantinople"/>
<var name="fulljumps" value="Gemini/J900 Gemini/Castor Gemini/Nexus Gemini/Penders_Star Gemini/Gemini Gemini/119ce Gemini/New_Constantinople"/>
<var name="faction" value="militia"/>
</system>
==========

Above is taken fromthe wcuniverse.xml file - I'm currently modifying the Junction system fyi.

It looks like this xml file places the system within the context of the WC universe , it even has the faction alignment which is something the sector file itself doesn't have.

The xyz coordinates in the Junction sector data are all insystem references, while the ones above correspond to some overall map similar to this :

http://www.wcnews.com/maps/

but in 3D.

It could be that the xml file is something leftover from a time when PR was using this format for nearly everything.
ace123
Lead Network Developer
Lead Network Developer
Posts: 2560
Joined: Sun Jan 12, 2003 9:13 am
Location: Palo Alto CA
Contact:

Post by ace123 »

The universe file with all the data is the "master" file. It is what missions will reference when trying to find the shortest route from one system to the next, or what will determine on the nav screen where you can jump to.

The *.system files, however serve two purposes.
In the sectors directory within the root folder, they are system files that are expected to match their descriptions in the universe file, but also are allowed to have more specifics about the types of bases and planets.
In your home folder, system files are autogenerated from the data in the universe file if they are not already found.

This system allows campaign systems to be customized (often this is done by tweaking the autogenerated system) without requiring all systems (there are quite a lot in the vegastrike universe) to take up extra hard disk space.

There's also a wiki page about this at:
HowTo:Edit Systems
listed as Creating or editing systems, under Miscellanious.

I'm going to copy this text into that page.
z30
Expert Mercenary
Expert Mercenary
Posts: 808
Joined: Wed Nov 02, 2005 4:42 am

Post by z30 »

ace123 wrote: This system allows campaign systems to be customized (often this is done by tweaking the autogenerated system) without requiring all systems (there are quite a lot in the vegastrike universe) to take up extra hard disk space.

There's also a wiki page about this at:
HowTo:Edit Systems
listed as Creating or editing systems, under Miscellanious.

I'm going to copy this text into that page.
Thanks Ace - I found the entry I needed that (hopefully) will enable me to make a Drayman variant orbit a planet.

===============
#

<unit, building, enhancement, vehicle, asteroid, nebula ... /> -- (repeatable) An object.

* NOTEthat these can NOT have anything orbiting them.
* name -- The name of the unit.
* file -- The name of the unit file.
* faction -- The name of the unit's faction.
* destinations -- A space seperated list of the destinations that this will take you to. (usually only one, but more will make the jump point random).
* insideout -- Is the texture inside out? (?)
* difficulty -- A scaling factor???
*

For units that do not orbit:
o x, y, z -- The position of the planet.
*

For units that orbit around another planet:
o ri, rj, rk -- the farthest point of the orbit (vector x,y,z in meters) (see here)
o si, sj, sk -- the nearest point of the orbit (vector x,y,z in meters)
* year -- The amount of time for a year (?)
* day -- The amount of time for a day (?)
* position -- The current position on the orbiting elipse (in radians).
Melonhead
Bounty Hunter
Bounty Hunter
Posts: 131
Joined: Fri Sep 08, 2006 1:33 am
Location: Hampton, VA USA

Post by Melonhead »

Thanks! This turned out to be a much richer capability than I had expected. So, I have to ask...how does "bd" end up being the variable for "agricultural planet"?

It also looks like there are a lot of capabilities available in the VS system design that aren't currently used in Privateer. Is that a correct assessment, or are there actually a bunch of placeholders in in the universe XML file that aren't yet used by the VS engine?

Interesting possibilities, either way.
z30
Expert Mercenary
Expert Mercenary
Posts: 808
Joined: Wed Nov 02, 2005 4:42 am

Post by z30 »

Melonhead wrote:Thanks! This turned out to be a much richer capability than I had expected. So, I have to ask...how does "bd" end up being the variable for "agricultural planet"?

It also looks like there are a lot of capabilities available in the VS system design that aren't currently used in Privateer. Is that a correct assessment, or are there actually a bunch of placeholders in in the universe XML file that aren't yet used by the VS engine?

Interesting possibilities, either way.
The type of planet is actually contained in the Junction sector file, here's the entry for Burton :
===
<planet name="Burton" file="planets/agricultural.png" radius="1200" gravity="20" x="-11000" y="-22000" day="300">
<Atmosphere file="clouds.png" alpha="SRCALPHA INVSRCALPHA" radius="1211"/>
</planet>
===

agricultural.png not only determines how the planet looks like but which Python programs are called when you dock and how the Burton concourse looks like.

I believe the main program extracts the type of planet from the image name and uses that run the relevant scripts and pick out the correct units.csv entry.

The bases/agricultural.py controls the concourse interaction in this case.
Melonhead
Bounty Hunter
Bounty Hunter
Posts: 131
Joined: Fri Sep 08, 2006 1:33 am
Location: Hampton, VA USA

Post by Melonhead »

Hmm...I was looking at the wc_universe.xml (or milky_way.xml) where it defines the type of planets with one or two characters:
<var name="planets" value="v fm bd *o oa" />
At the beginning of the file, it identifies the "initial" for a planet type--I assumed that was the "identifier" to use:

<planet name="Agricultural">
<var name="texture" value="planets/agricultural"/>
<var name="initial" value="bd"/>
<var name="atmosphere" value="true"/>
</planet>

It just seemed random--maybe it is--but sometimes there's an interesting story, like, "bd is the abbreviation for agricultural in Hungarian."

I'll have to check out a bunch of sector files--Junction sounds interesting, and I also haven't had the time to load up basic VS and find Sol. The tradeoff between realistic scaling and fun/playability is a neat problem.
Melonhead
Bounty Hunter
Bounty Hunter
Posts: 131
Joined: Fri Sep 08, 2006 1:33 am
Location: Hampton, VA USA

Post by Melonhead »

Figured it out--

From the VS milky_way.xml file, bd = "bio-diverse." Privateer just uses the same thing with the title "agricultural" in its wcuniverse.xml.

That actually raises a related question--in the VS version, there are a wide variety of planet texures that don't seem to be used in Privateer. Is that a deliberate decision, since they weren't in the original game, or just something that hasn't made it to the "let's do this now" list?

Granted, uninhabitable moons/gas giants would be mostly eye candy, but it does seem like a wider variety of inhabitable planet types would allow for a richer trading system.

z30, how is your Junction mod coming? Would love to see it.
z30
Expert Mercenary
Expert Mercenary
Posts: 808
Joined: Wed Nov 02, 2005 4:42 am

Post by z30 »

Melonhead wrote:Figured it out--

From the VS milky_way.xml file, bd = "bio-diverse." Privateer just uses the same thing with the title "agricultural" in its wcuniverse.xml.

That actually raises a related question--in the VS version, there are a wide variety of planet texures that don't seem to be used in Privateer. Is that a deliberate decision, since they weren't in the original game, or just something that hasn't made it to the "let's do this now" list?

Granted, uninhabitable moons/gas giants would be mostly eye candy, but it does seem like a wider variety of inhabitable planet types would allow for a richer trading system.

z30, how is your Junction mod coming? Would love to see it.
Instead of making Speke a light industrial planet, I ended up with an orbiting militia Drayman HQ around the original pleasure planet - which sort of makes more sense storywise.

I do have a problem with Burton, both Burton and Victoria are agricultural planets - a gas planet with rings and an orbiting space/refinery station (gas extraction?) would give Junction a distinct flavor.

I don't know why the PR developers never used the VS textures - that does seem odd.
micheal_andreas_stahl
Elite Hunter
Elite Hunter
Posts: 1030
Joined: Mon Apr 10, 2006 10:02 am
Location: Gemini, Troy, Helen

Post by micheal_andreas_stahl »

It would be good if you made different planets have a speciality product depending on what type of planet it is.
"The bullets come out of the slim end, mate!"

Sniper after dominating another Sniper
Team Fortress 2
OnyxPaladin
Bounty Hunter
Bounty Hunter
Posts: 133
Joined: Tue Aug 01, 2006 4:46 am

Post by OnyxPaladin »

You mean like how pleasure worlds usually sell Playthings cheap?
spiritplumber
Developer
Developer
Posts: 1831
Joined: Mon Mar 07, 2005 10:33 pm
Contact:

Post by spiritplumber »

Precisely: if you make even a small improvement... email it to the developers and everyone'll be able to enjoy it later :)
My Moral Code:
- The only sin is to treat people as if they were things.
- Rules were made for people, not the other way around.
- Don't deceive. Real life is complicated enough.
- If all else fails, smash stuff.
OnyxPaladin
Bounty Hunter
Bounty Hunter
Posts: 133
Joined: Tue Aug 01, 2006 4:46 am

Post by OnyxPaladin »

My plaything doesn't need any improvement, and i think the devs should at least buy me a drink before i let them enjoy it.
micheal_andreas_stahl
Elite Hunter
Elite Hunter
Posts: 1030
Joined: Mon Apr 10, 2006 10:02 am
Location: Gemini, Troy, Helen

Post by micheal_andreas_stahl »

OnyxPaladin wrote:My plaything doesn't need any improvement, and i think the devs should at least buy me a drink before i let them enjoy it.
Huh??? I have not been around for a while so could you please explain.
"The bullets come out of the slim end, mate!"

Sniper after dominating another Sniper
Team Fortress 2
OnyxPaladin
Bounty Hunter
Bounty Hunter
Posts: 133
Joined: Tue Aug 01, 2006 4:46 am

Post by OnyxPaladin »

It was a bad joke, if you think about it too much you'll have a cerebral hemorrhage.
z30
Expert Mercenary
Expert Mercenary
Posts: 808
Joined: Wed Nov 02, 2005 4:42 am

Post by z30 »

micheal_andreas_stahl wrote:It would be good if you made different planets have a speciality product depending on what type of planet it is.
I'm thinking of making Burton an Ocean planet.

To make any planet unique a separate units.csv entry has to exist for it. So far only NewCon, NewDet & Perry have such entries, all the others are lumped into the generic planet classes.
micheal_andreas_stahl
Elite Hunter
Elite Hunter
Posts: 1030
Joined: Mon Apr 10, 2006 10:02 am
Location: Gemini, Troy, Helen

Post by micheal_andreas_stahl »

OnyxPaladin wrote:It was a bad joke, if you think about it too much you'll have a cerebral hemorrhage.
Wooops, it already happened. :)
"The bullets come out of the slim end, mate!"

Sniper after dominating another Sniper
Team Fortress 2
Melonhead
Bounty Hunter
Bounty Hunter
Posts: 131
Joined: Fri Sep 08, 2006 1:33 am
Location: Hampton, VA USA

Post by Melonhead »

I'm thinking of making Burton an Ocean planet.
That would be very cool. The more I think about it, it's the little stuff that makes it interesting to visit new places. Every time I go to a new planet, I find myself unconciously moving the mouse around hoping to find an easter egg.
Post Reply