SystemMaker
This is the guide to using the Spelljammer SystemMaker tool. It
includes notes, descriptions, and whatever other information I think you
might need to use the tool. As users ask questions, I will try to refine
this document.
File Menu
Load, Save
These menus allow you to load or save an XML file that describes
your system. Examples (using the spheres of the Gatespace cluster) are
included in the data directory. Note: the tool maintains only one system
in memory at a time.
Random
Generate a random sphere. This uses the random sphere generation
tables in the SJ books, with a few additions or modifications where they
made sense. Here are a few of the differences (or unimplemented
features):
- The tool only handles standard circular orbits (or fixed
location planets). It will not handle random wandering planets, or
planets that orbit on square or elliptical paths, for instance.
- The tool adds a bit of randomization to the orbital distances.
It also generates orbital distances for moons around planets.
- It will not do anything with a sphere filled with a debris
field. However, it does handle large-area asteroid fields. See Shamblespace for an
example.
Add Planet
Adds a new random planet to the system. The new planet will have
random attributes, and its orbital distance will be greater the current
set of planets. If the system has not been created, it will create the
first planet as the primary. Once it creates the planet, it will also
automatically display the planet editor pane with the new planet's
parameters.
Properties
This menu brings up a popup pane allowing you to edit properties
used by the tool. The current properties are:
- Map Size: The (square) size of maps, aside from sidebar images
- Sidebar Width/Height: The width and height of sidebar images
- Sidebar Margin: The margin for sidebar images. This determines
the inset of the primary location from the upper left corner, and the
space between the outermost planet and the bottom of the image.
- Days From Zero: This long number is the number of days from
the "zero time" of the system. The zero time is when all the planets
(and moons) lined up. By default, this number is set to the system time
when you start the tool; you can set a specific time to generate system
maps with consistent locations. You will want to use a pretty big
number though.
View Menu
Full System Map
Generates a map with all planets displayed. The map is to scale.
Inner System Map
Generates a map with only the inner planets displayed The map is
to scale.
Outer System Map
Generates a map with only the outer planets (and the primary)
displayed. The map is to scale.
Planet Moon Map
Generates a display of a planet-moon system. Not currently
working (I'm getting there!).
Sidebar Image
Generates a sidebar images suitable for including on web pages.
Planet Display Panes
Each planet, including the primary, will appear in orbital order
in the center of the tool. Each pane will include the basic information
about the planet, and whatever descriptive text is available for that
planet. Moons initially will not be displayed - hit the Show Moons
toggle to view the moons of a planet. To add a moon, hit the Add Moon
button; the moon's initial values will be random. Hitting the Edit
button will bring up the Planet Edit pane in a popup window.
Planet Edit Pane
The Planet Edit Pane allows you to edit the various values of
each planet (and moon, primary, or other astronomical). You can edit the
various fields and the description. Once you hit Save, the information
will be saved, and the edit pane will close. Reset will reset the
information to its current value, and let you keep editing. Note: do not
include commas in your text entry.
Image Displays
When the SystemMaker creates an image, it allows you to save the
image to a PNG file. Currently PNG is the only format supported. Other
formats will be added in the future.
XML Format
You can hand-edit the XML files that the SystemMaker uses to save
planetary systems. Some advanced parameters are only editable if you
hand-edit the XML file. Look at the examples in the data directory.
The root element is system. The system element can contain
one primary node, and as many planet and astronomical
nodes as you want. Each of these can contain one or more description
elements. Planets can also contain one or more moon elements.
Note that XML is case-sensitive.
The system element has two attributes. The first is name,
which sets the name of the system. The second optional element is motion.
The motion attribute specifies the direction of motion for all planets
in the system. Valid values are clockwise, counterclockwise, random
(moves at random within an orbit), mixed (planets move either clockwise
or counterclockwise), or special (something else weird). I may add other
values in the future.
Each of the primary, planet, moon, and astronomical elements has
several attributes. Some of these have default values. The attributes,
and their descriptions or roles, are the following:
- name: name of the body. This must be specified.
- shape: shape of the body. Valid values are amorphous,
belt, cluster, flat, elliptical, sphere, regular, irregular, and
portal. If not set, the SystemMaker will generate a random value.
- type: type of the body. Valid values are earth, air,
fire, water, live, void, positive, negative. Use void to indicate when
you might have moons circling around an empty point. The values
positive and negative are used for portals (the odd primary). If not
set, the default value is earth.
- size: This can either be a number (size in miles), or a
single capital letter (size code). If not set, the SystemMaker will
generate a random value. If you specify a letter, it will randomly
determine a size in miles in the appropriate range.
- distance: Distance from the center of the sphere (for
planets and astronomicals) or the moon's planet (for moons). For
planets only, if the value is less than 1000000 (one million), it will
be automatically multiplied by 1000000. This value must be specified
for planets and astronomicals. It is ignored for the primary.
- year: The time it takes for the body to make a full
orbit around its primary. For moons, this is the time it takes to
complete one complete cycle of phases (from full to full), not just a
revolution of 360 degrees.
- motion: direction or type of motion. Valid values are
all of the values for motion under system except mixed. If the value is
not specified, the SystemMaker will use the motion specified for the
entire system. The value for a planet's motion, if set, overrides the
motion for the entire system.
- symbol: Unicode character representing the planet. If
not set, the standard symbol representing the planet shape will be
used. Use this when you have a peculiar planet or astronomical that you
want to denote with a special symbol.
- inclination: for moving planets, this is the angle the
planet makes with the ecliptic (the equator of the crystal sphere) as
it crosses the ecliptic. For stationary bodies, this is the angle above
(or below, for negative values) the ecliptic where the body is located.
The default value is zero.
- ascension: angle from the zero location where the body
crosses the ecliptic going up (for moving bodies), or angle from zero
where the body is located (for fixed bodies). It can also be used to
specify the offset of a planet from the zero position when two planets
occupy the same orbit (see the example data file for Chromaspace).
Note: All attribute names are lower-case.