Space Traders – Entire Universe of variables. (Spreading Invention)
Total Planets: 914 _ Total Elements: 118 _ Total Inventions: 1882 _._._
Map contains a functioning Dialog to Query all of the planets and elements. I did not factor in the Inventions due to laziness. To query the inventions for planets, you crosslink the available elements on the planet with the elements required for the invention. This was my intention, but of course you can do with it as you like.
The inventions are from very early fiction future dreamers, it tops off at mid around 2004. All data used in this map can be found on Wikipedia.
You don’t have to use everything from the map. It’s all separated nicely. So you can use just the planets and elements if you like, or the inventions, elements, planets on their own.
This Map has 18,746 lines of Galaxy Script.
I am not currently making a game with this. But I see so much value in it, for someone who can take it to the next level. A functional, Playable Map, Elements have Cost, and they are cheap, Invention have Cost and they are expensive. The concept for my map was a space trader game. You buy and sell minerals until you can afford inventions. Then buy and sell invention. You can only buy minerals if the plant has them, and you can only sell them to planets that don’t have them. The concept and math I was using for my game was to add multipliers. Inventions can have 1-4 element requirements to make them. For each element the planet does not have, a multiplier would be added to the selling price. Elements would be straight trade X2 the cost. Inventions that cost 800, and require 4 minerals, would have a maximum of 4000 selling price. This is the math applied to the Costing, and spreading of minerals/inventions. A planet has a minimum of 1 and maximum of 30 elements that can be found on it. With over 900 planets, it allows for each player to develop their own style of play.
Example of the Data:
Planets:
gv_planetValues[0] = "Mass";
gv_planetValues[1] = "EquatorialDiameter";
gv_planetValues[2] = "OrbitalRadius";
gv_planetValues[3] = "OrbitalPeriod";
gv_planetValues[4] = "OrbitalEccentRicity";
gv_planetValues[5] = "InclinationtoSunsEquator";
gv_planetValues[6] = "RotationPeriod";
gv_planetValues[7] = "Moons";
gv_planetValues[8] = "Rings";
gv_planetValues[9] = "DistanceAway";
gv_planetValues[10] = "PlanetElements";
Planet#769:
gv_planets[769] = "Tarsus III";
DataTableSetFixed(true, "Tarsus IIIEquatorialDiameter", 9.07);
DataTableSetFixed(true, "Tarsus IIIMass", 569.488);
DataTableSetFixed(true, "Tarsus IIIOrbitalRadius", 43.764);
DataTableSetFixed(true, "Tarsus IIIOrbitalPeriod", 355.7);
DataTableSetFixed(true, "Tarsus IIIInclinationtoSunsEquator", 42.2);
DataTableSetFixed(true, "Tarsus IIIOrbitalEccentRicity", 0.865);
DataTableSetFixed(true, "Tarsus IIIRotationPeriod", 133.74);
DataTableSetInt(true, "Tarsus IIIMoons", 0);
DataTableSetBool(true, "Tarsus IIIRings", true);
DataTableSetFixed(true, "Tarsus IIIDistanceAway", 0.76);
DataTableSetString(true, "Tarsus IIIPlanetElements", "Copper Tungsten Uranium Neon Erbium Cobalt Palladium Indium Zirconium Dubnium Tin Krypton Bromine Calcium Nobelium Antimony Meitnerium Nitrogen Vanadium Beryllium Ununhexium Magnesium Darmstadtium Thallium Dysprosium Nickel Caesium Einsteinium Technetium Lawrencium Iron Strontium Copernicium Silicon Oxygen Rhenium Thorium");
Elements:
gv_elementValues[0] = "Sym";
gv_elementValues[1] = "Period";
gv_elementValues[2] = "ChemicalSeries";
gv_elementValues[3] = "Mass";
gv_elementValues[4] = "Cost";
Element#106:
gv_elements[106] = "Bohrium";
DataTableSetString(true, "BohriumSym", "Bh");
DataTableSetInt(true, "BohriumPeriod", 7);
DataTableSetString(true, "BohriumChemicalSeries", "Transition metal");
DataTableSetFixed(true, "BohriumMass", 273);
DataTableSetInt(true, "BohriumCost", 11);
Inventions:
gv_planetValues[0] = "Cost";
gv_planetValues[1] = "InventionRequire";
Inevention#1613:
gv_inventions[1613] = "AIRE - reverse engineering software";
DataTableSetInt(true, "AIRE - reverse engineering softwareCost", 407);
DataTableSetString(true, "AIRE - reverse engineering softwareInventionRequire", "Europium Boron");
Total Planets: 914
Total Elements: 118
Total Inventions: 1882
Map contains a functioning Dialog to Query all of the planets and elements. I did not factor in the Inventions due to laziness.
Please give credit if used. "ItsAboutTime_Sldprt"
The idea behind this was inspired by SolarWinds. When I was a child, I played this game in shareware on Dos. Who knew I would recreate the concept 20 years later using something called .Net, and Starcraft.
If you are making anything close to SolarWinds, you are my hero, and it validates uploading my not so hard effort here.
Hey Joccaren,
First of all, thank you for the compliments. Second of all, I know how useful this is, as I wish to see it go to good use. It’s actually very easy to use.
There is a String arrays with the Planet, Element, and Invention names. Then there is a String array for each that represents the Name values.
Using a return from the Data Tables, you combine any Name, with Name value from the arrays to get the value from the Data Table. Use the appropriate Global Data Table to get the value. For example Strings are in Data Table Strings. Integers are in data table integers. Real’s are in data table reals. Booleans are in data table Boolean.
For a dialog that has a list. If you put every planet into one, the selected index -1 directly relates to the array index of the name array.
I kind of felt when posting this that anyone wanting to make this type of map would be limited in what one person could put in as triggers. Typing is slow, clicking even slower. So I felt good uploading, as now it allows someone to concentrate on the playable game, and not the mass about of data to go with it. 18,000 lines of code are something automating externally was easy. I have now even come up with a way to automate writing libraries that can be imported as XML documents.
If you have anything else on this topic that you would like to add to your game, let me know. I was thinking about adding ships. But I would like feedback on what kind of data would be useful to script against.
Anyways Cheers, ItsAboutTime_Sldprt
OK. I have one thing to say.
THANK YOU!
This is exactly what i need for a map I'm making atm, and I was wondering how on earth I was going to manage to make it, then I found this. I just hope that I can understand enough to edit and replicate what I want.