• 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.

Tools to write for Traveller

robject

SOC-14 10K
Admin Award
Marquis
Consider that Traveller is like a set of independent tools.

Now, assuming that small programs are easier to write than big ones, consider a suite of Traveller software tools.

Finally, consider that some applications are better done as dynamic web pages, while others are better as full-on applications.

Starship design is a well-defined one, and has Andrew's venerable and excellent HGS as an example.

How about a Book 2 design tool? Maybe a good task for the beginning Traveller hacker.

Next, an animal encounter table generator. Something that could generate all random encounter tables for each terrain type on each world size range. I've seen something like this on the web already, haven't I?
 
I would love to take some of the disparate and outdated tools out there and get a community project to get them updated and working as common libraries with standard formats for data exchange.

Case in point is the wonderful stitching together that Mickazoid did in this thread:

http://www.travellerrpg.com/CotI/Discuss/showthread.php?t=10806

Her setup uses a ton of tools together for an awesome result, but she had to do some serious stitching to make it happen, and you have to have a good level of techiness to handle installing and using it.

The community could benefit from simple and seperate tools like:

Sector Generator
UPP Generator
Trade Route Generator
Border Generator
Mapper

that could be used together very easily.

It would be nice to use an object oriented language to write these, especially since that would make it much easier to port these tools to other languages.

You could write them in Java or C# and have them be almost identical in structure, although not ideal for this type of tool. C++ might be better as it would easily work on Windows or *nix.

It might also be nice to consider writing them in a language better suited to the web such as PHP or Javascript. I like that Perl is powerful, but increases the level of understanding by a notch, and sucks for Windows.

Writing these as command line tools would be fine, but it would be nice to write some simple GUI interfaces to access them for less tech saavy users. It would also make it easy to use a lot of the tools in Windows.

There are a lot of great programmers that hang out here. We could really create something very useful for everyone. I mean, this is 2012 and we are still stumbling around with old tools written 15 to 20 years ago. It's not very Traveller like to muck about with such low TL stuff when much better is available, is it?
 
I would love to take some of the disparate and outdated tools out there and get a community project to get them updated and working as common libraries with standard formats for data exchange.

No one is stopping you!

... you have to have a good level of techiness to handle installing and using it.

Bear the above point in mind...

The community could benefit from simple and seperate tools like:

Sector Generator
UPP Generator
Trade Route Generator
Border Generator
Mapper

No disagreement here.

A random sector generator can be found at: http://travellermap.com/model2/

My border generator can be found at: http://travellermap.com/borders/regen.htm but that's just a starting point, but you need to specify ?sector=XXXX as a parameter and it only pulls SEC data from the site (it actually pulls down 9 sectors so the borders are correctly generated along sector edges). It could be easily modified to allow users to copy/paste into a form or browse for a SEC file.

Feel free to party on any of that.

It would be nice to use an object oriented language to write these, especially since that would make it much easier to port these tools to other languages.

You could write them in Java or C# and have them be almost identical in structure, although not ideal for this type of tool. C++ might be better as it would easily work on Windows or *nix.

You're jumping to the solution here, without considering the target audience.

It might also be nice to consider writing them in a language better suited to the web such as PHP or Javascript.

You're still jumping to implementation details, without considering the needs of the users. You're assuming users who are capable of downloading if not compiling applications, you're willing to mandate one or just a couple of operating systems, administration rights, and ruling out mobile/tablet-oriented operating systems. But at least you mentioned the Web.

If your goal is to write code, go for it.

If your goal is to make utilities available with no installation that work on every platform, implement it as a modern Web application (i.e. JavaScript, HTML, CSS; server components only if necessary).

"But," the hypothetical luddite complains, "what about when I'm not online?" Which reminds me of a recent post by someone who went on photosafari in Africa a few months ago, and had wifi in the tents each night. It's the 21st Century - if you don't have net connectivity, odds are you're in the middle of a disaster and RPG utilities are the least of your concerns.

lack.of.internet.connectivity.warning.jpg


There are a lot of great programmers that hang out here. We could really create something very useful for everyone.

Nothing is stopping you!

I'll just reiterate my advice: if you want to make something which will be accessible and useful to nearly every Traveller player, make it a web app.
 
Just chiming in.

I'm not very tech-savvy, although more than most users. I use a pc. I play Classic Traveller in the Spinward Marches. Over the years, I have come across a lot of very cool applications. I prefer to download them to my hard drive and run them whenever. I like to have the option to load canon data into the thing. I need a gui or I find that ultimately I move away from using the application. And my feeling is that a web-based application is only there for as long as the website is there.

I am deeply appreciative of those folks who write and post the programs that I've enjoyed. Thanks, all.
 
Oh, I am considering the target audience: non-programmers.

I agree that the web is a great platform to create these types of tools for considering the variety of platforms that users have, but in that case someone ultimately has to host the tools on the web, pay for bandwidth, etc. in order for those non-programmers to use it. As to your point about not having access, there are many times where I am on a plane for 6 hours and want to work on system generation and mapping, or the wifi access at the cafe is just too slow. Obviously they are the exception, not the rule, so your point about accessibility is well taken.

There are also things that aren't so straightforward to do with a language like Javascript or PHP, like PDF generation. Sure, there are extensions and tools that could run on a server that could be accessed from the code, but now you are talking non-standard web hosting in order to present the solution to the masses.

You could always make the web based code available for other to install and run in their own local environment or web server, but then the setup goes beyond your target audience again.

As far as using other platforms are concerned, I'm not talking about distributing basic code and forcing the user to compile, but rather having pre-compiled tools that can just be downloaded and run by non-computer users, while still making the source available for those who might want to tinker with it or just browse for educational/fun purposes.

You can very easily support Windows, Linux, and Mac with a very common code base if you choose the right language.

The real point is that I can go on the web and find tons of different tools to do various tasks, but none of them really are meant to work together or most don't even consider that you might want to use the output data somewhere else.

And of course I can start writing code all by my lonesome to do what I want, however I want, for whatever I need it for, but to me it makes more sense to get community input into what others want or need, and work together to come up with something that will work for the most people in a logical and consistant manner. Three or four people programming would make this a reality rather than one of us toiling in our spare time forever as a half finished dream. Just look how long it is taking Hemedian to write Universe 2 (though a gigantic project compared to what I am talking about here).

All that said, I didn't want to imply that I thought that a non-web approach was the way to go. There are pros and cons to both approaches, and both are completely valid.

One last point that I didn't make before, is that the consideration for non-Traveller uses or non-OTU uses is a must (at least for me) because I don't really use any Traveller sectors (or other info) in IMTU, and I'd imagine there are others out there that do the same.
 
Most open-source collaborations actually started as one person writing a functional program that others later added to.

Traveller programs are not hard to write (they were some of the first I made as a young teen 30 odd years ago). With multiple programmers involved, it would actually be harder to write any given app, and even a full suite for a particular rule set - so there isn't a real motivation to do so for the programmer.

Most folk have a particular version of Traveller they prefer. Therefore, little motivation to actually support other versions (that isn't even addressing house rules, rule interpretations or errata adoption). There is also the issue that one cannot readily share anything written for current versions without permission - free or not. (Though support with user input from sources generally works.)

As to specific languages and standard data exchange formats, there are really way too many choices for any consensus to actually be achieved that isn't a compromise (usually bad) and just a bunch of talk and playing with documents (vs producing a working product).

Before there is a fire, there is typically a spark.

The idea is fine - and blatantly obvious. The actual implementation (language, runtime nature and requirements, data formats) is largely irrelevant till someone actually implements it. There are a lot of folks who can code, be they experienced or not - its not really rocket science. But, getting folks to commit to a theoretical implementation is unlikely to get off the ground.

If you want it - write it and share it. Then promote and support it - and hope it catches on.

BTW: Javascript support for PDF is pretty much as 'easy' as any other language - inter-browser issues are also really not different than any other approach to mutli-platform applications.

Also: Thanks inexorabletash - www.travellermap.com is really top-notch!
 
Starship design is a well-defined one, and has Andrew's venerable and excellent HGS as an example.

IMHO HGS is an interesting example of how Trav software can come about. HGS was originally a project for my degree. Take a raw idea from scratch and develop it through a single lifetime iteration. It would never have come about without my need to do (what I thought was) a simple project from start to finish. I never really thought people would use it much, but I asked Marc for permission to distribute it anyway.
 
Just chiming in.

I'm not very tech-savvy, although more than most users. I use a pc. I play Classic Traveller in the Spinward Marches. Over the years, I have come across a lot of very cool applications. I prefer to download them to my hard drive and run them whenever. I like to have the option to load canon data into the thing. I need a gui or I find that ultimately I move away from using the application. And my feeling is that a web-based application is only there for as long as the website is there.

I am deeply appreciative of those folks who write and post the programs that I've enjoyed. Thanks, all.

I agree with Baron 100%; I need the gui as well, and also appreciate everyone and anyone who's done this kind of work!
 
<snip>How about a Book 2 design tool? Maybe a good task for the beginning Traveller hacker.<snip>

That's been on my list of "Traveller things to do" for too many years. Maybe I'll have to collaborate with someone and make it move forward.

However, it's probably a good idea to have more than one option available, so don't let the idea that it's on MY list dissuade anyone else from doing it.
 
I'll just reiterate my advice: if you want to make something which will be accessible and useful to nearly every Traveller player, make it a web app.

I'm bringing this back because I think the web also gives us the flexibility to write code in little pieces...
 
Back
Top