• Welcome to the new COTI server. We've moved the Citizens to a new server. Please let us know in the COTI Website issue forum if you find any problems.

T5: Stellar detail IMTU

dalthor

SOC-12
I posted an initial version of this in the IISS forum. I've attempted to simplify the original.

With the possibility of 8 stars (!) in a system, I've been using the following to distinguish primary, close, near, and far stars. When you work away from the * on the keyboard, you get (, {, and [ in that order.

It kinda looks like this --

Primary comp (Close comp) {Near comp} [Far comp]

where comp represents the companion to another star.

Finally, I use an * to tell me which star the MW orbits.

Some examples, using >> as the start of my remarks, and using dashes (for now) in my stellar data:

Code:
*K6-III (M1-V) {K0-V K6-V}	>> Primary, Close, Near with companion
F7-V {M1-VI} [*F5-VI]		>> Primary, Close, Far, no companions
M0-V *M7-V			>> Primary and primary companion
*G5-V [M1-V]			>> Primary and Far
*G5-V				>> Primary only

I contemplate simplifying the notation above, using a 8-character string at the end of the stellar data to show star locations. Each character in the string represents one star. This allows me to use EXISTING stellar info, and add my own interpretation of where each star is located. This also means I DON'T HAVE TO CHANGE existing stellar data, but can do it my way by simply adding MY interpretation of the stellar data.

The string defaults to P to indicate a Primary with NO other stars. For each additional star I add the e-hex value of the orbit, or a "c" for a companion, and go from left to right, one position per star, in the order above. I use a "." to represent a non-existent star.

IMTU I also have a custom 4-character field AFTER the stellar data, which I call the POsH, used to "locate" the mainworld. This gives me the detail level I want IMTU. I'll add the POsH to my new indicator, with a dash as a separator.

P = planet type where 0 is planet, 1 is close satellite, 2 is far satellite, and 3 is asteroid belt
O is for the SOLAR orbit A-Z
s is the satellite orbit if MW orbits a GG, or a . (decimal) if a true planet
H is the habitable zone indicator, - for HZ-1, = for HZ, + for HZ+1, or . for asteroid belt

To use the first example above, you could get this result, using P for primary, capitalized e-hex for orbits for the Near, Close, and Far stars, and c for the companions:

Code:
*K6-III (M1-V) {K0-V K6-V}	>> *K6-III M1-V K0-V K6-V P.3.Ac..-0C.=

Primary is K6 III, MW orbits this star, no primary companion; Close M1 V in orbit 3, no Close companion; Near K0 V in orbit 10, Near companion inside orbit 0 (the letter c); no Far or Far companion. POsH indicates a planet, solar orbit 12, not a GG satellite, in the HZ. Note that this POsH is an example only, and may not be accurate for this stellar type.

To continue with the remaining stellar systems, again as examples only, POsH just a sample, and losing the dashes in stellar data:

Code:
F7-V {M1-VI} [*F5-VI]		>> F7 V M1 VI *F5 VI P...8.F.-3M..
M0-V *M7-V			>> M0 V *M7 V Pc......-00.=
*G5-V [M1-V]			>> *G5 V M1 V P.....C.-27p-
*G5-V				>> *G5 V P.......-04.=
Makes it a lot simpler to track things IMTU, and the only update is to add that "new" field to the existing stellar data. Haven't looked at updating any OTU sectors, but I'm testing this with my Varan sector, just for kicks.

Think there is any possibility of doing something like this for the T5SS?

Feedback wanted, and thank you!
 
Sounds good, appears logical, isn't any more complicated than the most complex components in the game already, but most importantly if it works for you in YTU then it's a winner :)
 
I like your logic and I love the extra detail, but I'm not sure the "P...etc" notation is good extra detail in the one-line system summaries. I'm finding it a bit hard to read, although with practice it would improve.

I love the PoSH notation; this is sufficient for the players to make an informed quick decision on jumping into the system and quickly working out travel times. I feel that the additional "P...etc" notation is better kept to detailed system notes (although sorting out Close, Near, Far and companions is great notation in the summary line). It's the sort of thing you can generate on the fly and then just track what you've done to keep things moving.

Maybe? I'm not sure; I'm certainly in favour of being better prepared than not!
 
Been fiddling with some code to do T5 generation. Here is some sample output. For now, I assume the MW orbits the primary - haven't coded anything to determine a specific star for MW.

I haven't removed my () {} [] sets in stellar data yet. Wanted to see how this would look. I did include the POsH based on the Primary star. This is for testing right now; I wanted to see how the idea worked.


Code:
0411 E-0411 D310747-6 Na Pi Sa             {-2} (966+0) [8525] BD   S    413 8  NaXX F4 V                             P....... 2AT= 
0412 E-0412 E310557-6 Ni Tz                {-3} (845+0) [6256] B         210 11 NaXX A1 V A5 V                        Pc...... 0A.= 
0413 E-0413 C100576-9 Va Ni Sa             {-1} (E46+5) [2489] B    S    413 11 NaXX K5 III {M5 V} [M7 V M8 VI]       P...7.Dc 2AV= 
0414 E-0414 B200555-7 Va Ni Sa             {-1} (846-3) [7429] B         342 17 NaXX A1 IV A7 IV (F7 VI)              Pc2..... 2AQ= 
0415 E-0415 C432101-7 Lo Po Tz             {-2} (300+0) [0005] B    S    742 13 NaXX K5 V (M1 VI) {DM BD}             P.1.Ac.. 0A.= 
0416 E-0416 X435899-7 Ph Pa Tz             {-2} (774-2) [B687] Bce       650 11 NaXX F1 V [F6 VI]                     P.....G. 0A.= 
0417 E-0417 E567666-1 Ni Ag Ri Tz          {-1} (756+0) [7530] BC        821 14 NaXX A3 IV (DF DG)                    P.5c.... 0A.= 
0418 E-0418 A000613-6 As Ni Na             {-1} (354+1) [A551] B    S    404 10 NaXX G4 V M9 V (M8 VI)                Pc5..... 3F.. 
0419 E-0419 X200854-5 Va Ph Na Pi Co Tz    {-2} (675+2) [8635] BDe       421 16 NaXX K1 V {M8 VI}                     P...9... 0B.+ 
0420 E-0420 C430101-5 De Lo Po Tz          {-2} (A00+0) [3038] B    S    231 14 NaXX F7 V                             P....... 0A.= 
0421 I-0421 A000261-A As Lo                {1}  (A10+2) [637E] B         630 11 NaXX A7 IV (K1 VI G2 V) {F1 V} [A8 V] P.5cB.D. 3L..

For my use, I will likely keep the added info. If I dump the files for somebody else, I can easily "turn off" those fields in the file process.

Here is the same data, using "regular" stellar format. This is where the added fields would be helpful.

Code:
0411 E-0411 D310747-6 Na Pi Sa             {-2} (966+0) [8525] BD   S    413 8  NaXX F4 V                             P....... 2AT= 
0412 E-0412 E310557-6 Ni Tz                {-3} (845+0) [6256] B         210 11 NaXX A1 V A5 V                        Pc...... 0A.= 
0413 E-0413 C100576-9 Va Ni Sa             {-1} (E46+5) [2489] B    S    413 11 NaXX K5 III M5 V M7 V M8 VI           P...7.Dc 2AV= 
0414 E-0414 B200555-7 Va Ni Sa             {-1} (846-3) [7429] B         342 17 NaXX A1 IV A7 IV F7 VI                Pc2..... 2AQ= 
0415 E-0415 C432101-7 Lo Po Tz             {-2} (300+0) [0005] B    S    742 13 NaXX K5 V M1 VI DM BD                 P.1.Ac.. 0A.= 
0416 E-0416 X435899-7 Ph Pa Tz             {-2} (774-2) [B687] Bce       650 11 NaXX F1 V F6 VI                       P.....G. 0A.= 
0417 E-0417 E567666-1 Ni Ag Ri Tz          {-1} (756+0) [7530] BC        821 14 NaXX A3 IV DF DG                      P.5c.... 0A.= 
0418 E-0418 A000613-6 As Ni Na             {-1} (354+1) [A551] B    S    404 10 NaXX G4 V M9 V M8 VI                  Pc5..... 3F.. 
0419 E-0419 X200854-5 Va Ph Na Pi Co Tz    {-2} (675+2) [8635] BDe       421 16 NaXX K1 V M8 VI                       P...9... 0B.+ 
0420 E-0420 C430101-5 De Lo Po Tz          {-2} (A00+0) [3038] B    S    231 14 NaXX F7 V                             P....... 0A.= 
0421 I-0421 A000261-A As Lo                {1}  (A10+2) [637E] B         630 11 NaXX A7 IV K1 VI G2 V F1 V A8 V       P.5cB.D. 3L..

Using current stellar data from Travellermap, there is no way to determine location of any star except the primary. The notation I'm using could help with that, and POsH is simply for use IMTU so I am consistent with orbits for my mainworlds.

Looking at page 430 of the BBB, it would have been helpful to see a world line for Regina, to see what the detailed workup would look distilled down to a single line. The detailed workup gives orbits on each star - but how is it stored? Using the world line, how does Marc determine which star is Close, Near, Far, or companion? The example on page 431 shows the format, but where does the 2nd star orbit in the system? It is helpful when trying to determine travel time, which can be a critical element to a plot.

For what it is worth, I currently use the ( ) {} [] notation, but may switch to the P....... in the future. We shall see.

I know I would like to know. Maybe I need to send this for errata discussion...
 
Last edited:
I'm finding it a bit hard to read, although with practice it would improve.

I have been considering a space between Close and Near portions of the notation, to help readability. It'll then have three 4-character fields, which would help, for example

Code:
A7 IV K1 VI G2 V F1 V A8 V       P.5c B.D. 3L..

Haven't implemented a travel time calculator in my code yet, but that is on the list. I write VB6 code right now, and need to get into the 21st century; time is the major issue for me. These added fields would be used for that portion, among other things.

Unfortunately, my old code doesn't port easily to VB 2005 or 2008, and a full rewrite is not in the cards at this time. I'd like to get into Perl or C#. I'd prefer Perl; just gotta commit the time to learn.
 
While playing with code to implement orbital locations, I noticed a few things, and wanted to bring them up here. Anywhere I use CLOSE, NEAR, or FAR in the comments below, it will apply to the companion (if any) as well. The word solar below always refers to an orbit around the primary.

1) A CLOSE star is allowed in solar orbits 0 to 5 of the primary. Occasionally, a CLOSE will fall within the minimum available orbit for the primary. In this instance, I remove the CLOSE star altogether - there is no open orbit, it would be in the interior of the primary star.

Example: the first "open" solar orbit of a G0 1a is orbit 6 - there could not be a CLOSE star, since orbits 0-5 are inside the stellar primary.

2) NEAR stars are allowed in solar orbits 6 to 11. If a NEAR star falls inside the primary, I move it to the first available valid solar orbit.

Example: for first "open" solar orbit of an M9 II star is orbit 8. The NEAR would be allowed in solar orbits 8 to 11.

3) Every so often, a MW could, by random roll, have the same solar orbit as a CLOSE or NEAR star. I haven't made a decision on this - which one should I move?

If the HZ of the NEAR or CLOSE star is in a low enough orbit, AND it would would fall in at least the minimum solar HZ of the primary, I could place the MW around that NEAR or CLOSE star. (The allowed orbits around a NEAR, CLOSE, or FAR are calculated as the solar orbit - 3, ignoring values less than zero.)

If they are in HZ-1 or HZ+1, I lean toward moving the MW into the HZ orbit, and leaving the NEAR/CLOSE as is.

If both are in the HZ, I'd move the NEAR or CLOSE star in or out, determined by the minimum or maximum available solar orbit.

FAR stars are all outside the HZ of the primary; if MW was to orbit the FAR star, it would go in the FAR star HZ if that orbit was within the allowed solar - 3 range. If not, I'd place it in a solar HZ.

The code, at this point, is getting a bit complex; I need to be able to calculate and track the available orbits. Using the POsH and stellar location notation described above, I can begin the process.

This level of detail is mainly useful for travel time calculations. I can't see that anybody else has noticed (or cared?) about this stuff, but I wanted to discuss it.

Anybody see any flaws in my logic? Any thoughts?

Thanks!
 
OK, did some more playing.

Now have 2-character base codes, and amber and red zones as well; putting a space in the stellar markers field, to break it up a bit, and have tweaked the field order.

Cleaned up quite a bit of code, and streamlined stellar generation in preparation for determining which star the MW orbits.

MW posh is still generated based on the primary star.

New samples:

Code:
0102 A-0102 BFF8776-7                      {0}  (366+0) [7719] B         454 21 NaXX P... .... 03.= G7 V                               
0109 A-0109 CAEA221-9 Oc Lo                {-1} (E10-1) [4147] B         354 19 NaXX Pc.. .... 03.= G5 V M1 VI                         
0428 I-0428 A558778-5 Ag                   {1}  (767+0) [8897] BC   MN   420 8  NaXX Pc.. 6.G. 07.= A8 V M1 VI {M4 VI} [M4 VI]         
0502 A-0502 A9A7987-5 Fl Hi In             {2}  (488+1) [8B47] BE   W    840 12 NaXX P.4. .... 03.= G3 V (K0 VI)                       
0621 I-0621 E565620-2 Ni Ag Ri             {-1} (955+0) [A543] BC        542 11 NaXX P.5c 7cG. 04.= F7 V (G9 VI M2 VI) {K8 VI G6 VI} [G3 VI] 
1216 F-1216 E755BFH-2 Ga Hi                {-1} (8A4+1) [9A71] BE      A 332 8  NaXX Pc.. .... 05.= F2 V K9 VI                               
2025 K-2025 D431422-5 Ni Po Ho             {-3} (632-3) [1177] B    S    842 14 NaXX Pc2c .... 03.- F8 V K8 VI (K7 VI G7 VI)           
2320 G-2320 C7686AA-4 Ni Ag Ri Ho          {0}  (653+1) [B622] BC   M    540 14 NaXX P... 7cHc 04.- F9 IV {K6 VI K6 VI} [K0 VI BD]

Next phase will be implementing MW on something other than the primary. I've decided to leave in the () {} [] characters in the stellar data. The solar orbits field will be used in travel times.

I'm taking lack of comments to mean I'm doing well. :)
 
Just for kicks I added a UWP decoder to my code setup. It is crude, but output looks like this:


Code:
0104 A-0104 C4AA214-7 Fl Lo                   {-2} (510+1) [1078] B    M    402 11 NaXX P... 9... 05.= F2 V {G5 VI}
The mainworld has a Routine starport that can repair major damage and provide unrefined fuel;
highport on POP 9+; has downport. The mainworld is 4000 miles (6400 kilometers) in diameter. The
atmosphere is exotic, with virtually total hydrosphere. There are less than 1000 inhabitants,
governed by company or corporate rule by a managerial elite. The law restricts laser and beam
weapons. Technology is circa 1975 AD.

I need to fiddle with the descriptions for starport, and the tech level to get the wording I want.
 
Fun stuff, dalthor. Keep up the good work.

And if you have any questions with Perl, feel free to ask.
 
Just for kicks I added a UWP decoder to my code setup. It is crude, but output looks like this ...

Not so crude - actually really cool. You can clean up the output when playing with how you want the UWP rendered, but getting the text right based on arbitrary UWPs is grand. This stuff might seem straightforward at first, but getting the text 'just right' takes hours of work.
 
Thank you for the comments, gents!

I've updated the starport wording, and am much happier with the results. Next phase will be the tech level - the BBB leaves a lot to be desired as far as TL descriptions. That will become a separate post - how to "fill in the blanks" so to speak.

As I get this UWP breakout finalized, I'll be using these descriptions on the wiki pages for basic world descriptions in the Varan sector. Someday I may even put in campaign-specific notes.

FWIW, the Varan sector has "moved" on the travmap site - it is now an example faraway sector. IMTU it'll still be located close to known space, since a lot of my campaign was set up as a first contact campaign. Maybe I could make the Varans a minor race,and get them "approved" so to speak, kinda like the other unofficial but adjacent sectors. :)

Anyway, I digress. Here are three more recent descriptions:

Code:
0107 A-0107 CCE9FFA-3 Hi                   {0}  (6EA-4) [JF52] BE        601 10 NaXX P.4. .... 02.= K5 V (BD)
The mainworld has a Routine starport that can repair major damage, provide unrefined fuel, has a
highport, and has a downport. The mainworld is 12000 miles (19200 kilometers) in diameter. The
atmosphere is ellipsoid, with 90% hydrosphere. There are quadrillions of inhabitants, governed by a
totalitarion oligarcy, with an all-powerful minority maintaining absolute control through widespread
coercion and oppression. The law prohibits weapon possession. Technology is the industrial
revolution, circa 1700 AD.

0109 A-0109 A543875-4 Ph Pa Pi Po Ho Sa    {0}  (975+1) [9833] BcDe      903 7  NaXX P... ..G. 24R- F2 V [G2 VI]
The mainworld has an Excellent starport that can build and overhaul starships, provide refined and
unrefined fuel, has a highport, and has a downport. The mainworld is 5000 miles (8000 kilometers) in
diameter. The atmosphere is thin and tainted, with 30% hydrosphere. There are hundreds of millions
of inhabitants, governed by balkanization, with rival governments competing for control. The law
restricts shock, EMP, rag, mag, and grav weapons. Technology is mechanization, circa 1900 AD.

0123 I-0123 X545232-3 Lo                   {-3} (210-5) [1022] B         412 6  NaXX P... .... 03.= G6 V
The mainworld has no starport, shipyard, repair facilities, fuel, highport, downport or beacon. The
mainworld is 5000 miles (8000 kilometers) in diameter. The atmosphere is thin and tainted, with 50%
hydrosphere. There are less than 1000 inhabitants, governed by a self-perpetuating oligarchy, ruled
by a restricted minority with little or no input from the masses. The law restricts 'portable'
weapons. Technology is the industrial revolution, circa 1700 AD.

Did pick up the Llama and Camel books (O'Reilly PERL books) and am starting to peruse them.

Slowly but surely recovering from head trauma, starting to be able to "focus" a bit better, and maintain my concentration. Now if I can just remember things for more than 3 minutes...without the need to read stuff over and over and over ad nauseum.

Oh, and you may have noticed that the PoSH has changed a bit - the solar orbit is now e-hex from 0 to 19, rather than A-Z. This is consistent with orbits in the BBB.

Western Fish Radar. (If I say it in Chinese Mandarin, it sounds like "shee you layda" )
 
Last edited:
Just for kicks, I fiddled with the UWP descriptor generator. It formats the line width base on the width of the world line.

Here are a couple of examples, with the same base code, for comparison.

Code:
0104 A-0104 B8C8522-8 Fl Ni Ho Tz          {-1} (541+0) [7426] B         501 6  NaXX Pc.. .... 01.- K1 V BD
The mainworld has a Good starport that can build and overhaul spaceships, provide refined and unrefined
fuel, and has a downport. The mainworld is 8000 miles (12800 kilometers) in diameter. The atmosphere is
insidious, with 80% hydrosphere. There are hundreds of thousands of inhabitants, governed by a
participating democracy with rule by popular vote. The law restricts 'portable' weapons. Technology is
circa 2000 AD. Photonics, commcasters and jammers are recent innovations.

0105 A-0105 B6A5567-6 Fl Ni Ho Lk Px Sa    {-1} (B42+2) [5487] B         902 7  NaXX P... ..C. 18J- G4 II [K6 VI]
The mainworld has a Good starport that can build and overhaul spaceships, provide refined and unrefined fuel, and
has a downport. The mainworld is 6000 miles (9600 kilometers) in diameter. The atmosphere is exotic, with 50%
hydrosphere. There are hundreds of thousands of inhabitants, governed by a captive government or colony, ruled by
a leadership answerable to an outside group. The law restricts pistols. Technology is the early nuclear age,
circa 1950 AD. Fission, early computers and electronics are used.

I have refined the tech level descriptions, but it isn't necessarily what I want for the finished product.
 
Back
Top