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

collaborating on new programs?

I'll try to get the TravellerMap source up soon. I've always intended to, but it's not build on a very popular stack so I'm not sure it will get much contribution from anyone else.

If you've got a github account, let me know and I'll add you to the org and you can put it up with the other repos I'm slowly pulling together from older contributions and my archived files.

Regardless of the stack, I'd love to see it up there - travellermap is a fantastic example of some great open code.
 
I'll try to get the TravellerMap source up soon. I've always intended to, but it's not build on a very popular stack so I'm not sure it will get much contribution from anyone else.

Exciting to hear, but please don't take my example as meant for some kind of pressure to open your code. I was simply citing your system as an example of a popular service based site that, for whatever reason, could suddenly vanish.
 
Since we have some people familiar with Github here, I could do with some help.

Currently I'm developing StarBase from a dropbox folder. This works great because it means I don't have to do any commits, pulls, etc. It just works. I have up to date copies of the project on any machine I want it on, and snapshot the source tree into zip files every now and then.

I would like to fully open source the project, and a Github repository seems like the logical way to go but I could use some guidance on how to go about it. I'd like to keep my Dropbox based work flow if possible, but Dropbox's synchronisation might mess up Git. Has anyone got any experience of these working together? I might be better off moving completely to Git but I've not used it before.

Simon Hibbs
 
I'll try to get the TravellerMap source up soon. I've always intended to, but it's not build on a very popular stack so I'm not sure it will get much contribution from anyone else.

I echo the earlier sentiment; Traveller Map is awesome! The merchant stuff I occasionally work on draws directly from it and I find that ability to be doubly awesome.

Leitz
 
Since we have some people familiar with Github here, I could do with some help.

Currently I'm developing StarBase from a dropbox folder. This works great because it means I don't have to do any commits, pulls, etc. It just works. I have up to date copies of the project on any machine I want it on, and snapshot the source tree into zip files every now and then.

I would like to fully open source the project, and a Github repository seems like the logical way to go but I could use some guidance on how to go about it. I'd like to keep my Dropbox based work flow if possible, but Dropbox's synchronisation might mess up Git. Has anyone got any experience of these working together? I might be better off moving completely to Git but I've not used it before.

Simon Hibbs

Morning Simon!

As I understand it, you should be able to integrate Github and Dropbox. Since git lets you specify where your files are kept and Dropbox appears to be another directory on your machine it would let you upload and sync from any device that had your github credentials.

This may also help: http://git-scm.com/book/en/Getting-Started

I would personally help you more but I stumble through git myself.

Leitz
 
Since we have some people familiar with Github here, I could do with some help.

Currently I'm developing StarBase from a dropbox folder. This works great because it means I don't have to do any commits, pulls, etc. It just works. I have up to date copies of the project on any machine I want it on, and snapshot the source tree into zip files every now and then.

I would like to fully open source the project, and a Github repository seems like the logical way to go but I could use some guidance on how to go about it. I'd like to keep my Dropbox based work flow if possible, but Dropbox's synchronisation might mess up Git. Has anyone got any experience of these working together? I might be better off moving completely to Git but I've not used it before.


Hey Simon,

You can use them together quite easily - I've done exactly this on several occasions, although as I got more familiar with git and using github, I've shifted to not taking space in my dropbox for the repositories I work on - I just clone them around.

Git is a hell of learning curve to be honest. The git-scm book is quite good - just make sure to give yourself time to learn it. The basic commands when you're working by yourself are all pretty easy to cover. The "Git Basics" chapter in the book (http://git-scm.com/book/en/Git-Basics) covers the underlying pieces.

The general practice I've used at a high level:

  • git clone the repo on the machine I'm working from (home, work, etc)
  • before I start working, I update my local git repo from github with "git pull"
  • edit away, making changes. Periodically, I do a "git commit -a" to save all my updates into my local git repo
  • end of the working session, I use "git push" to replicate those changes up to github

It gets a touch more complex when you're working with branches or actively collaborating with other folks (some additional commands to compare, check, and merge branches when you want to do it).

I've just stuck with the command-line interface - although github's clients are very nice, I just got used to the CLI and never quite figured out how the GUI setup mapped to the commands I already knew well.

If you have some specific questions about "how do I..." with git and github, I'd be happy to help.
 
I've put up the very early workings of some C stuff. So far a header file with some die roll functions and a basic UPP generator.

https://github.com/makhidkarun/trav_functions_c

Leitz

Addendum: If you're a C programmer feel free to look at my code and make suggestions. I'm (re)learning the language.
 
Last edited:
I've put up the very early workings of some C stuff. So far a header file with some die roll functions and a basic UPP generator.

https://github.com/makhidkarun/trav_functions_c

Leitz

Addendum: If you're a C programmer feel free to look at my code and make suggestions. I'm (re)learning the language.

I added it to my TI-89 C code. Just have to find the seed function to use though. It's in my TI lib somewhere. Been awhile since I did C on this thing.

What's the average stat do? 2-5 2-5? For characters you don't want rolling 2s, 3s, 11s, or 12s for?

ADDED:
I found my old C code I did for Mongoose back in 2009(?) before I gave up and started learning Python. It used randomize() to seed the RAND generator. No skills generated though with this program. See http://www.youtube.com/watch?v=5JgUDp79uv0
 
Last edited:
I'm leaning towards doing some skills. Not sure how far yet, though. Nor if I want to put the skills in a database so any language can pull the information.
 
I'd love to know what you're doing with Python, got any projects on the go at the moment?

Simon Hibbs

So far, I've used Python 2.5.4 (python-2.5.4.msi) with PyWin32 (pywin32-217.win32-py2.5.exe) to generate random Mongoose Traveller characters (along with their homeworlds) from the core rulebook. I just have the Psion career to program still. It opens Excel and creates a custom character sheet in that. Another window (think NotePad) stores an audit of the character background story that can be copy/pasted to the back side of the character sheet. I then save it to PDF using LuLu's free Soda PDF (http://sodapdf.com/products/free-pdf-reader). I have posted videos using it. Just search YouTube for Traveler character generation vids.
 
Last edited:
......It opens Excel and creates a custom character sheet in that. Another window (think NotePad) stores an audit of the character background story that can be copy/pasted to the back side of the character sheet. I then save it to PDF using LuLu's free Soda PDF (http://sodapdf.com/products/free-pdf-reader). I have posted videos using it. Just search YouTube for Traveler character generation vids.

I'll look up the youtube link.

Which Excel are you using? Recent versions will save to PDF directly (about time too).

I might be able to help with a Qt back end that could save directly to PDF.

Simon Hibbs
 
I made a github organization (https://github.com/makhidkarun) in the hopes maybe others would be interested in collaborating and making new from-scratch software supporting the game. If you have a github account, and are so interested, please let me know and I'll add you to the makhidkarun team.

Wouldn't mind helping out a bit. Don't have T5 but I've been working on an SRD based piece of software.

I know most of the programs for Traveller seem to be only for Windows (and rarely Linux users), but do you think we Mac users can get some nice T5 programs to use too?

Ask and ye shall receive ... sort of. The project I've been working on is here: https://github.com/tpmoney/itraveller.git. It doesn't do much now, but it does generate 90% of a world using the SRD rules and parses the rules out of a plist file so that they could be changed on the fly, and it's pure native Objective-C code, mostly because I wanted to learn. I'm fairly happy with the result so far, but there's plenty more to do. I could really use a hand coming up with further ways to generically state object creation rules that could be included in the plist to reduce the amount of "internal" knowledge the code needs to function. Specifically, I still have to implement "Bases", and "Trade Codes" in the rules plist, but they don't quite follow the existing design. And then of course that's only world generation, there's much much more to do. Anyone have any bright ideas? Even if you don't know how to code, if you had some ideas on generically expressing some of the creation rules in the plist that would be great.

I've put up the very early workings of some C stuff. So far a header file with some die roll functions and a basic UPP generator.

https://github.com/makhidkarun/trav_functions_c

Leitz

Addendum: If you're a C programmer feel free to look at my code and make suggestions. I'm (re)learning the language.

I don't know much about C (haven't touched it with any seriousness since high school), but my project above has some dice expression parsing code (TMMTDiceExpressionParser and TMMTDiceExpressionResult) that might be convertible to C (or more easily Java or some other OO language) that you might find useful. Rather than hard coding individual rolls, you can simply pass it a string like "2d6 + 5" and it will parse it all out. It can handle basic arithmetic, simple die expressions (XdY) and nested parenthesis.
 
Wouldn't mind helping out a bit. Don't have T5 but I've been working on an SRD based piece of software.
note that the SRD is not open for software... The OGL doesn't cover software, and the TLL explicitly excludes software.
 
note that the SRD is not open for software... The OGL doesn't cover software, and the TLL explicitly excludes software.

I'll be contacting mongoose RE this later today, but while IANAL, my reading of the relevant licenses does not support this conclusion. The material in the SRD is all covered under the OGL and uses the following definitions (emphasis mine):

OGL said:
b)’Derivative Material’ means copyrighted material including derivative works and translations (including into other computer languages), potation, modification, correction, addition, extension, upgrade, improvement, compilation, abridgment or other form in which an existing work may be recast, transformed or adapted;
...
(g) ‘Use’, ‘Used’ or ‘Using’ means to use, Distribute, copy, edit, format, modify, translate and otherwise create Derivative Material of Open Game Content.

The OGL does not specifically prohibit software, and certainly definition b implies it. Further, WotC has a FAQ with regards to the OGL which states in part:

WotC FAQ said:
Q: How can the OGL be used with software?

A: Just like with other material, the OGL allows you to use any Open Content, provided you follow the terms of the OGL. Follow the requirements of the License, include the text of the license and the appropriate copyright information, and clearly identify Open Content.

NOTE: The biggest problem we've found with software and the OGL is that programmers aren't paying attention to Section 8 of the OGL. Section 8 states: ñIf you distribute Open Game Content You must clearly indicate which portions of the work that you are distributing are Open Content.î This doesn't mean you can say ñall rules in my program are Openî, the users need to be able to see all that Open Content. You can do this by putting Open Content in a format that is easy to understand. Popular solutions have been to place everything in text files that the program pulls info from, having everything in a viewable database within the software, using Java script on a webpage (viewing the source of the webpage will display the code and Java script is relatively easy for a user to interpret). The key is that the user has to see everything that is Open Content that the program uses and be able to understand it without too much effort. The whole point of the OGL is that once information is declared Open everyone has free access to it under the OGL. Compiling that information into a program denies the user that access and violates the spirit of the Open Gaming License.

With the code being open sourced and the SRD rules being implemented in a separate text file read and parsed by the program, the OGL content is clearly marked and available in its entirety.

The TLL specifically covers the use of the Traveller Logo, which the software in question does not use.

That said, the "Read Me" (which is non binding) does imply that software is not permitted (though which software is not clear), and it's likely that the name needs to change from iTraveller to some other name (iSpacefarer?). So as I said, I'll be contacting mongoose later.
 
Summary

OK, so here's what I see from this thread:

Server-backed Web Apps

Joe Heck stresses that web apps are relatively easy, language and platform neutral, and can use light front-ends (HTML with some or no JavaScript). I would add that they can communicate with each other, or even chain together, via JSON.

Some of my [Robert, aka 'robject] web-based apps are server-backed.

JavaScript

Whartung [planned] Portable, stand-alone (browser-based) JavaScript programs. These differ from typical Web Apps in that they do not require a server component: they're all-included, using HTML and JavaScript (and CSS).

Joe has also expressed interest in JavaScript for Traveller.

BytePro is at least passively interested in JavaScript work.

I've [Robert, aka 'robject] got a fair pile of standalone JavaScript+HTML on my website as well.

C

Leitz has written some Traveller-related C. https://github.com/makhidkarun/trav_functions_c

Java

DangerousThing is talking about Java, but hasn't yet committed to writing something Travellerish at this time.

.NET

Joshua Bell wrote Travellermap.com with .NET.

OSX

vain is working on Traveller-related worldgen for the Mac.

Perl

Perl is my [Robert aka 'robject'] native language. If it can be done, I can do it in Perl.

Python

Shonner has done Traveller-related Python. Simonh has expressed interest.
 
TravellerMap.com as a whole is probably an even split between C# (using the .NET framework and ASP.NET server goo) and JavaScript for everything but tiles/search. The more I can do in JS the better. In the next few years I should be able to reduce the backed to just a file server/database and have all rendering done locally (in SVG?) but I still need to support IE8.

I've plonked a couple of my other projects on GitHub already (github.com/inexorabletash) but no Traveller stuff yet. Soon!
 
Back
Top