• 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.
  • We, the systems administration staff, apologize for this unexpected outage of the boards. We have resolved the root cause of the problem and there should be no further disruptions.

T5 Web Apps

BTW: Is there an "open" Sector File Format that also supports listing of system details? (currently SectorMaker is not only generating the sector map but also the complete system details that SystemMaker provides -I don't render it at the moment because it is somewhat time consuming and increases the resulting web page to clunky sizes)

I suggest that you have the dubious honor of creating an extension of the .sec format to handle system detail.

By the way, my BeastMaker attempt is here: http://eaglestone.pocketempires.com/animals/t5animals.pl
 
I suggest that you have the dubious honor of creating an extension of the .sec format to handle system detail.

I settled for a CSV-based format to handle extended data. I guess I will wait for someone other defining the extension and will than implement that to support SEC-based data exchange.

And thanks for your link! (Nice touch with the e-mailing! I'll steal that :) )

BTW, could you link all your web apps here? I would like to link to them from my web apps directly.
 
Wait for rules stabilization!

But I will continue to work on the project tonight and hope to be able to offer an update soon.

Your site is top-notch. But all the Career tables in T5 have been blasted by a sandcaster with all these errata. You may wisely want to wait until the rules stabilize before writing your character generator.

Planet generation may also have been affected by errata (?).
 
Character generation is a big thing to implement. I will wait until T5 is stable (aka errata-complete) or at least until I decide to actually start playing it.

Planet generation may also have been affected by errata (?).

Yes, it has been. I just updated the web site to incorporate errata v0.71 for BeastMaker, HomeworldMaker, SectorMaker and SystemMaker.

Next step will be finalizing GunMaker and updating it to errata v0.71, too.
 
Here's the current wish list:

world map
Alien Sophont Builder
SectorMaker: upload of your own CSV for map generation
printouts
trade routes
character creator
Armor maker
e-Mailing (of results)
finalizing GunMaker and updating it to errata v0.71
 
Last edited:
I settled for a CSV-based format to handle extended data. I guess I will wait for someone other defining the extension and will than implement that to support SEC-based data exchange.

And thanks for your link! (Nice touch with the e-mailing! I'll steal that :) )

BTW, could you link all your web apps here? I would like to link to them from my web apps directly.

I'll link them from my sticky-aggregator-page: http://www.travellerrpg.com/CotI/Discuss/showthread.php?t=30549
 
I guess I will wait for someone other defining the extension and will than implement that to support SEC-based data exchange.

An attempt at a "standard" has been tried before. The resulting extension will probably not be surprising... and will only be a standard in that people use it (i.e. not a published consortium-approved standard, or what have you...)

My current preference

1. Hex data is served separately. I.E. you don't download it within a SEC file. You ask for a hex's data, and a separate file is sent containing all data for that hex.

This bypasses the "how do I put it in a SEC file" question, and moves on to a RESTful, internet 2.0 solution. How it is stored is up to you; the question today is how to serve it to others in a reasonably friendly way.

2. Each system in a hex is in its own "document" within one file. A "document" boundary is five or more asterisks starting on a line, like so (shown with optional hash and comment):
Code:
*****  # end of document / start of new document

3. Each document starts with optional headers. Some of these "headers" are:
Code:
Galaxy: <galaxy name>
Sector: <sector identification>
UWP: <uwp line from a SEC file goes here>
Distance from Primary: <distance in AUs from the primary system.>

4. Next comes a blank line. This terminates the header, and signals the beginning of content for the system. If this is the first document, then this is the primary system.

5. The system data comes next. System data lists one planet or satellite per line. A line of data has four main groupings: location, spaces, world data, and comments. Planetary data (with optional population digit) looks like this:

Code:
0   Serk                B89A866-C N  Wa                7

Here, "Location" is simply the orbit number, and is kept deliberately distance-agnostic.
The world name is 20 characters long, space padded.
The base data is 2 characters long, space padded.
The trade code data is 17 characters long, space padded.
The population digit comes after the trade codes.
If comments were here, they would come after a hash mark (#).

Satellite data, with comments, looks like this:

Code:
3g Pashigamam          Y100000-C    Ml Na In Po De An Cp  # lots of trade codes

Note that the location code here also has a satellite orbit letter, a-z, that is completely distance-agnostic.

I use the spaces after location data to indent the satellite data. It's not required, but it's nice for eye candy. A larger example:

Code:
Sector: A9101-4432X
UWP: Serk            0304 B89A866-C N  Wa        723 Vf M4 V

0   Serk                B89A866-C N  Wa
0b    Shabush             YS00127-B NS 
0d    Aglashlanlur        YS00265-B
0v    Ginamiiduug         YS00564-B    Co                      # comment
1   Adnigazursha        Y000000-B
2   Esha                YB00000-B
2s    Uglen               YS00000-B
3   Alernishim          YC00000-B
3d    Uggargasmine        H100000-B              
3g    Pashigamam          Y100000-C    Ml Na In Po De An Cp 0  # lots of codes
3j    Liishkhi            Y500000-B              
3q    Lushigegushe        Y740000-C    Re          
4   Shilegishasha       Y000000-B
5   Gakakakhinka        YC00000-B             
5a    Nanikirgale         YR00000-B              
5b    Kugdumgaa           YR00000-B              
5c    Arshimzigam         Y300000-B              
5f    Ungagiginik         Y624000-B              
5j    Arguur              Y663116-B              
5s    Kuukidiikuki        Y543145-B              
5t    Mikagamgir          Y100000-C    Re          
5v    Irshashuusade       Y300000-B              
5z    Arla                Y450000-B              

*******
UWP: <next world...>

<etc>
 
Last edited:
How would you represent sub-orbits of secondary stars?

Oh sure, blow my perfectly good concept to bits with a reasonable question...

How about

Code:
0   Serk                B89A866-C N  Wa
0b    Shabush             YS00127-B NS 
0d    Aglashlanlur        YS00265-B
0v    Ginamiiduug         YS00564-B    Co                      # comment
1   Adnigazursha        M0 V                                   # a star, baby
1.0   Arglebargle I       Y100000-0               
1.0a    Eeek                Y000000-0
1.1   Arglebargle II      Y200000-0
1.1c    Beaker Ring         YR00000-0
2   Esha                YB00000-B
2s    Uglen               YS00000-B
3   Alernishim          YC00000-B
...
 
Oh sure, blow my perfectly good concept to bits with a reasonable question...

Sorry. ;)

Maybe that's the reason why they always assign me to concept work instead of actual programming. :sigh:

How about...

OK, but I would like to use decimals (instead of hex) for higher orbit numbers. So we must put some delimiter in the suborbit designation. The point should be reversed for the upcoming decimal orbits. What about a colon?

Code:
0   Serk                B89A866-C N  Wa
0b    Shabush             YS00127-B NS 
0d    Aglashlanlur        YS00265-B
0v    Ginamiiduug         YS00564-B    Co                      # comment
1   Adnigazursha        M0 V
1:1    Arglebargle I       Y100000-0
1:1a     Eeek                Y000000-0
1:2    Arglebargle II      Y200000-0
1:2c     Beaker Ring         YR00000-0
2.1   Esha                YB00000-B
2.1s    Uglen               YS00000-B
3   Alernishim          YC00000-B
...
11    Alphabeta ...
12    Gammadelta ...
 
Both (decimal orbits and decimals for decimals) reasonable suggestions. A colon it shall be, then.

We also need a line for the primary star! Suggestions?

Code:
:   Soldos              M4 V
0   Serk                B89A866-C N  Wa
 
Last edited:
Sounds like the colon is becoming a pseudo operator for building a star system.

In other words, each line seems like a build-expression, and the colon is main operator, implicit with "primary" worlds and their satellites.

So "0" is shorthand for 0:0, perhaps. In other words, the example is shorthand for:

Code:
0:   Soldos              M4 V
0:0   Serk                B89A866-C N  Wa
0:0b    Shabush             YS00127-B NS 
0:0d    Aglashlanlur        YS00265-B
0:0v    Ginamiiduug         YS00564-B    Co                      # comment
0:1:  Adnigazursha        M0 V
0:1:1    Arglebargle I       Y100000-0
0:1:1a     Eeek                Y000000-0
0:1:2    Arglebargle II      Y200000-0
0:1:2c     Beaker Ring         YR00000-0
0:2.1   Esha                YB00000-B
0:2.1s    Uglen               YS00000-B
0:3   Alernishim          YC00000-B
...
0:11    Alphabeta ...
0:12    Gammadelta ...


(Note that I'm using "1:" instead of "1" for the secondary star now)

The shortened version is:

Code:
:   Soldos              M4 V
0   Serk                B89A866-C N  Wa
0b    Shabush             YS00127-B NS 
0d    Aglashlanlur        YS00265-B
0v    Ginamiiduug         YS00564-B    Co                      # comment
1:  Adnigazursha        M0 V
1:1    Arglebargle I       Y100000-0
1:1a     Eeek                Y000000-0
1:2    Arglebargle II      Y200000-0
1:2c     Beaker Ring         YR00000-0
2.1   Esha                YB00000-B
2.1s    Uglen               YS00000-B
3   Alernishim          YC00000-B
...
11    Alphabeta ...
12    Gammadelta ...
 
So "0" is shorthand for 0:0, perhaps.

Shouldn't that be ":0"? Explicitly spelled out, the listing would look like this:

Code:
:   Soldos              M4 V
:0   Serk                B89A866-C N  Wa
:0b    Shabush             YS00127-B NS 
:0d    Aglashlanlur        YS00265-B
:0v    Ginamiiduug         YS00564-B    Co                      # comment
:1:  Adnigazursha        M0 V
:1:1    Arglebargle I       Y100000-0
:1:1a     Eeek                Y000000-0
:1:2    Arglebargle II      Y200000-0
:1:2c     Beaker Ring         YR00000-0
:2   Esha                YB00000-B
:2s    Uglen               YS00000-B
:3   Alernishim          YC00000-B
...
:11    Alphabeta ...
:12    Gammadelta ...

EDIT: OK, I should wait longer. You seem to be editing your post too fast for my answering. :) Suggestion: no leading zero - no extra info there. The colon is just a delimiter. Maybe we should use a hyphen instead?
 
EDIT: OK, I should wait longer. You seem to be editing your post too fast for my answering. :) Suggestion: no leading zero - no extra info there. The colon is just a delimiter. Maybe we should use a hyphen instead?

I like your colon concept better.

Anyway: it's best we not explicitly require that leading character. I was just musing...
 
...OR...

As long as we're kicking it around: do you suppose we could produce JavaScript artifacts just as easily?

Don't know if it matters. I mean, if this is a web service thing, maybe JS is better. It's not a nice readable text format, but .... well ....

{ sector: 'A9101-4432X',
uwp: 'Serk 0304 B89A866-C N Wa 723 Vf M4 V',
systems: [
primary: {
name: 'soldos', class: 'M4 V',
orbits: [
{ name: 'serk', uwp: 'B89A866-C', bases: 'N', codes: 'Wa',
satellites: [ {}, { name: 'shabush', uwp: 'YS00127-B', bases: 'NS' } ] },
{ name: 'adnigazursha', uwp: 'M0 V', type: 'star',
worlds: [ {}...{} ] },
{ ... }
]
]
}
 
Back
Top