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

Character Generators

Question?

Which would you rather (as a user of a program) see?

I think the program should not require looking at the books to see the modifiers. One should have it all at his finger tips.

If I have to look in the book to see what the modifiers are, then the program is only half useful.

I'd vote for a set up exactly as in the books (Roll is 6+, +2 DM if STR 9+, etc).
 
exactly

if the program doesn't do all of the calculations and account for the options and derived options then you may as well just create a spreadsheet or forget about most everything and just create a form fillable pdf (which we already have plenty of both).

This is why this is such a holy grail.
NO ONE has ever created a strict by the book chargen program.

Everything ever created thus far from stand alone programs, online interface programs, to all the spreadsheets - without fail - either skip things or add on extra house rules stuff that can not be turned off.

So if you can undergo this challenge and be successful, then you alone will be able to do in one fell swoop, something that has eluded everyone since people first started tapping out Traveller CharGen programs on their Trash-80s and saving their long and tedious code on cassette tapes.
 
Last edited:
Progress report: My experiment is coming along nicely at this point. All 144 skills for the Acquired Skill Table have been entered into the program and tested to see if when I pick a given career path, only those skills as pertains to the correct career path show up. I've set it up so that a "frame" with 4 radio buttons will give the user a choice between picking Personal Development, Service Skills, or Advanced Education. Characters with an Edu 8+ will enable the secondary Advanced Education table as well.

Currently, in the "completed" category is the interface that allows a user to generate random stats for the 6 attributes, and display any bonus gained for the character based on the current career path chosen by the user. When the program first starts, the default career path is "Navy" and thus, all the bonuses for Enlistment, Survival, Commisssion, and Promotion are for the career path of Navy. Click on the Army radio button immediately recalculates the bonuses based on the current stats, but for the Army career instead.

I'm now comfortable with using Flexgrid displays - and have created a single column display that will let me add on new skills one at a time as they occur during generation. At this point - I don't anticipate any deal breakers in creating a CT Chargen program that uses the Book 1 Characters and Combat rules. It took a bit to enter in 144 separate "skills" and make sure that they are in their proper two dimensional array, but it works now. Next task will be to actively make comparison rolls between a target number, the modifiers, and its subsequent roll determining a result. I figure that I'll create a function along the lines of "CompareRolls(Target Number as Integer, Mods as Integer) as string" where the function will return either "success" or "Fail" as the result.

That one approach alone will make it easy to handle the mechanics of survival rolls, commission rolls, and promotion rolls in determining if any skill rolls are required. Since adding on skills for the character is a simple string manipulation problem, I don't anticipate there being any real issues in finishing this program off in a timely fashion. The only real problems will stem from interpretation of any vague issues.

One Vague issue that comes to mind is "what happens if the number of skills generated exceed the IN + ED attributes combined? Do I lower one skill arbitrarily to make room for the new skill? Do I automatically stop skill generation once the maximum skills have been learned? What happens if the "automatic" skills gained at the end of character generation exceed IN + ED limits? Minor things like that ;)

All in all, it looks doable from where I"m sitting.
 
Question? Does anyone still use 640 x 480 Screen resolution for programs these days? At present, I've limited myself to that screen size thinking that it is safer to plan for the smallest screen space available than to go with my usual operational setting. On the other hand, if most people use either of 800 x 600 or 1024 x 768, then it would be foolish to design the interface window size for the 640 x 480.

Comments? For now, I'll plan on the intermediate sized window at 800 x 600 and see where it takes me.
 
One Vague issue that comes to mind is "what happens if the number of skills generated exceed the IN + ED attributes combined? Do I lower one skill arbitrarily to make room for the new skill? Do I automatically stop skill generation once the maximum skills have been learned? What happens if the "automatic" skills gained at the end of character generation exceed IN + ED limits? Minor things like that ;)

All in all, it looks doable from where I"m sitting.

You might offer some options there, such as "roll up configuration" so different people can set the program to do different things.

I made a character generator for Rifts using MSXML as a database and MSIE via automation, since HTML can do things when the user clicks on column headers, etc. Works pretty nice, but it can't do everything.

One of the features I incorporated was during attribute roll-up was that the user could specify whether to use the "out of the box" die-rolls or when 3D6 are rolled, it rolls 4 and takes the highest 3. Then each time you generate a set of attributes, it saves up to 30 sets and the user can keep rolling until he finds a set he likes or backtrack and grab an old one. Or if you're a by-the-book-only-get-one-shot, you take the first one.

I did the same with psionics, either take what you roll, or override the program and give either major or minor psionics. Later on almost all the numbers the program generates can be changed by hand too, so it works out nicely. I also did an "audit trail" so that during roll-up it records your choices -- including die rolls and that way you can see how a PC was made. How come this guy's PS (ST) is maxed out ? Look at the audit trail it shows what was rolled and then you can see if it was different, it must have been changed by hand.

So a some skill options might be:

Tight/By the Book -- < buzzer > you can't do that !
Monty Haul -- Sure another skill, you can't help if you're hot !
House rules -- do what your group does

Just ideas.
 
Last edited:
Does anyone still use 640x480?

I don't think I have since Win 3.x
I went to 800x600 on my (now ancient) Thinkpad when I first moved to Win ME and on my old PII-400 when I had Win 98 on it.

Since we got our "new" laptops and an eMachine back in 2000 (or 01 or 02 - can't recall exactly) we have always used 1024x768, the only time I have used lower res was because of the DosBox settings when running old programs.

I would be shocked if anyone ran modern computers at 640 unless there was some extenuating circumstances.

I mean, I guess you could include it as an optional setting. If the program is backwards compatible enough, one could run it on an old Win ME or Win 98 system that would have that setting.

Jerry
 
Regards to the backwards compatibility - I'm not all that conversant with Visual Basic 6 to re-engineer the user interface depending on graphic settings. Maybe a bit later after I've gotten the program running and feel comfortable with trying to change things...

At present, I've put in a solid 3 days running of work into the program. The basic framework is in place at the moment as far as display of various buttons, getting the right "information" to display in the right locations works as well. I'm playing around with making elements appear and disappear at will and will likely have to streamline the code to make it "tidy". I've just finished coding that determines what skills are automatically granted to any given character based on their "rank" or on what profession they've taken (or both). I've implemented a skill counter that determines whether or not a character gains 2 skills per term (begining first term for everyone, or Scouts for second and subsequent terms) plus 1 per promotion or commission etc - and testing to see if character is scout or "other" to disable the commission/promotion checks.

I've yet to create the aging check coding per se, but will make it dependent upon terms served with a basic roll against 7+ with mods. Example: ST saving roll requires a roll of an 8+ for terms 4 through 7, and 9+ for terms 8+. The "function would look like this:

Public function AgingCheck (RollModifier as integer) as Boolean
If Rolldice(2,6)< 7+RollModifier then
Let Agingcheck = False
Else
Let Agingcheck = True
end If
End function

All I need to do then is do a Strength aging check by:
STSaveResult = Agingcheck(1)

Program then makes it so that the character rolls against a base 7+1 or 8. Later on, if the age of the character requires that the target number is 9 instead of 8, I just use:

STSaveResult = Agingcheck(2)

Ditto with other aging rolls. Not too difficult to implement :)

The other "biggie" coding I need to accomplish soon is that of modifying the character's skills and/or stats as a result of choices made per Character Term - and then recalculating all "modifiers" to survival, promotion, etc every time a stat changes upwards or downwards. The skill coding seems simple enough to implement:

ArrySkills holds the skills
ArrySkillValue holds the skill value

Example:

ArrySkills (1) = "Pilot"
ArrySkills (2) = "Admin"
ArrySkills (3) = "Streetwise"

ArrySkillValue (1) = 1
ArrySkillValue (2) = 1
ArrySkillValue (3) = 1

If I wanted to add in another "Pilot", the program will run through a loop with a counter that will compare the "skill" to be added with ArrySkill(counter). If the string for the new skill matches any string in ArrySkills(counter), then the program will add +1 to the ArrySkillValue(counter). If there is no match, then the program will add the new skill to ArrySkill(4). In this case however, after doing the comparison, the arrays will look like this:


ArrySkills (1) = "Pilot"
ArrySkills (2) = "Admin"
ArrySkills (3) = "Streetwise"

ArrySkillValue (1) = 2
ArrySkillValue (2) = 1
ArrySkillValue (3) = 1

If I were to add in a new skill with "Ships Boat", the string comparison will go through ArrySkills 1 through 3 and not find a match, and will then add in the new skill. Arrays would now look like:

ArrySkills (1) = "Pilot"
ArrySkills (2) = "Admin"
ArrySkills (3) = "Streetwise"
ArrySkills (4) = "Ships Boat"

ArrySkillValue (1) = 2
ArrySkillValue (2) = 1
ArrySkillValue (3) = 1
ArrySkillValue (4) = 1

and so on. Doesn't look like it will be a deal breaker :)
 
So you're hard coding the values ?

[FONT=arial,helvetica] ArrySkillValue (1) = 1 ; during initial assignment

later on when bumped up by the program...

[/FONT][FONT=arial,helvetica] ArrySkillValue (1) = [/FONT][FONT=arial,helvetica] ArrySkillValue (1) + 1

???
[/FONT]
 
So you're hard coding the values ?

[FONT=arial,helvetica] ArrySkillValue (1) = 1 ; during initial assignment

later on when bumped up by the program...

[/FONT][FONT=arial,helvetica] ArrySkillValue (1) = [/FONT][FONT=arial,helvetica] ArrySkillValue (1) + 1

???
[/FONT]

sounds more like he just increments an array when a new skill is added. I know C# has arraylists - you can create a dynamic array and just keep adding elements to it as you need (i.e, new skill, check to see if it exists, if so, add one to that skill counter, else add a new skill and set the skill counter to 1). Looks like basic to me - not sure if he's using VB.Net and if so, if it has the same thing. If so - perhaps it may be easier to define a structure of a dim & an integer, and use that in an array list. But that's just me...one thing I've learned is that there are nearly as many ways to solve a programming problem as there are programmers!
 
So you're hard coding the values ?

[FONT=arial,helvetica] ArrySkillValue (1) = 1 ; during initial assignment

later on when bumped up by the program...

[/FONT][FONT=arial,helvetica] ArrySkillValue (1) = [/FONT][FONT=arial,helvetica] ArrySkillValue (1) + 1

???
[/FONT]


Not exactly hard coding it. As coliver988 explained, the initial values in both the Skill Array and the SkillValue array will be "null strings" and zeros. The program doesn't care what is the value of the string in the first element of the "SkillArray", nor does it care what the value is in the first element of the "SkillValueArray". All it does is store a string - any string, in the first element of the SkillArray if it can't find that "string" already existing in the array. So if I wanted to, I could store "Sky is blue" as the first element in the SkillArray, and it would always check to see if any further instance of "Sky is blue" is ever generated.

Think of it this way...

The SKillValueArray is a counter for how many times any given string was generated by the program, while the SkillArray keeps track of what strings were ever generated and ignores any duplication of strings.

Thus, if the strings were Pilot, Streetwise, Navigation, Pilot, Pistol, the two arrays would look like this:

Pilot
Streetwise
Navigation
Pistol

2
1
1
1

Next time the program is run, the strings might be streetwise, forgery, gunnery, rifle, navigation

The arrays would look like this:

Streetwise
forgery
gunnery
rifle
navigation

1
1
1
1
1

So it isn't hard coded as to what goes where in the arrays, so much as it keeps track of what things were generated, and how many times they were generated.
 
sounds more like he just increments an array when a new skill is added. I know C# has arraylists - you can create a dynamic array and just keep adding elements to it as you need (i.e, new skill, check to see if it exists, if so, add one to that skill counter, else add a new skill and set the skill counter to 1). Looks like basic to me - not sure if he's using VB.Net and if so, if it has the same thing. If so - perhaps it may be easier to define a structure of a dim & an integer, and use that in an array list. But that's just me...one thing I've learned is that there are nearly as many ways to solve a programming problem as there are programmers!

by the by? Thank you for mentioning Dynamic Arrays :) You just saved me some heartache in programming I think. I was using fixed arrays with a predetermined value for the size on the basis of "What is the largest I think I'll need". With Dynamic arrays, and the Redim Preserve along with upperbound(arrayname,upperbound) commands, I think I just trimmed off a few lines of code here or there ;)
 
by the by? Thank you for mentioning Dynamic Arrays :) You just saved me some heartache in programming I think. I was using fixed arrays with a predetermined value for the size on the basis of "What is the largest I think I'll need". With Dynamic arrays, and the Redim Preserve along with upperbound(arrayname,upperbound) commands, I think I just trimmed off a few lines of code here or there ;)

you are most welcome. When I started C# a while ago, I was quite happy to find the array list (and even happier that you could stick ANYTHING in them: simple values, structures, SQL parameters. They are quite useful!) The most other useful thing: web searches! That has saved me lots of time finding out how to do something.
 
So it isn't hard coded as to what goes where in the arrays, so much as it keeps track of what things were generated, and how many times they were generated.


The numbers sure looked that way.

The language I use doesn't offer a re-dim/preserve which is annoying as hell. However unless you're dealing in 1000s and 1000s of rows and multiple columns, you can simply create a new one and shuffle things around. It does offer nice CSV-file-to-array management, so you can dump a fairly large, multi-row, multi-column array to a CSV file, drop it, then update the file and import that into an array in a few steps.
 
progress report:

At present, the program permits me to:

Generate Stats
Choose Career while viewing stats and bonuses due to stats
Enlist into chosen career or failing that, implement the draft
Determines survival or death
Determines commission or not
Determines promotion or not
Tallies up the skills earned for that term
Checks to see if aging occurs or not - and implements results of aging
Asks if character reenlists or if character attempts to muster out

Things yet to implement before I am happy with the overall structure and will begin to tidy up the program cosmetically:

While I've coded that portion of the skills adding routine and display skills routine, I've not as yet coded the section where it asks you whether you wish to pick personal development, service skills, advanced education or advanced education EDU 8+ - generating the specific skills rolled randomly when you pick the category for skill advancement. I have also not as yet created the mustering out code that determines the benefits awarded based on the mustering out process. Provisionally (which means I have to keep testing the code for bugs or logic errors), the chargen program is on track. Just keeping you guys up to date :)
 
I threw out my old version and rewrote it in Perl. I've lost some features and gained some new ones-- mainly better cross platform support than I had before. I did have Mercenary implemented, but now I'm back to just Book One. (It shouldn't take long to rewrite that advanced chargen piece I had, though-- if I can just get the time.)

It's a simple data-driven console application, but I've made it as strict of an implementation of "The Traveller Book" as I could. In order to preserve FFE's rights (and in the spirit of fair use), I assume you have the charts and tables in front of you as you use it-- so it skimps on presentation quite a bit.

I published the code publicly here.

http://lispy.wordpress.com/2008/10/06/programmer-new-to-the-area-seeks-support/

Non-hackers may have trouble installing Perl and getting the Moose dependencies from CPAN. This is my second medium-sized program in Perl, so I'm far from being the kind of expert to help you get it set up. ;) I have a list of Perl things I need to learn before I mess with it too much more, so we'll see if I can get back into it sometime....

Here is a sample run:


972989

1: Navy
2: Marines
3: Army
4: Scouts
5: Merchants
6: Other
>> 5
You are attempting to enter service #5 Merchants.
Your base enlistment target is 7.
Enlistment DM of +1 due to Stren.
Enlistment DM of +2 due to Intel.
Your net Enlistment Target is 4.
You rolled a 9.
You're in!!
No rank/service skill for you this time...

Your base survival target is 5.
Survival DM of +2 due to Intel.
Your net survival target is 3.
You rolled a 7.
You survived!
Your base commission target is 4.
Commission DM of +1 due Intel.
Your net commission target is 3.
You rolled a 7.
You gained a commission!
No rank/service skill for you this time...
Your base promotion target is 10.
Promotion DM of +1 due Intel.
Your net commission target is 9.
You rolled a 4.
You did not gain a promotion.
You get to roll for 3 skills this term.

1: PersonalDevelopmentSkills
2: ServiceSkills
3: AdvancedSkills
4: HighlyAdvancedSkills
>> 4
You rolled a 2.
*Navigation*-1

1: PersonalDevelopmentSkills
2: ServiceSkills
3: AdvancedSkills
4: HighlyAdvancedSkills
>> 4
You rolled a 4.
*Computer*-1, Navigation-1

1: PersonalDevelopmentSkills
2: ServiceSkills
3: AdvancedSkills
4: HighlyAdvancedSkills
>> 4
You rolled a 3.
Computer-1, *Engineering*-1, Navigation-1
Your reenlistment target is 4.

1: Reenlist
2: Muster Out
>> 1
You rolled a 10.
You successfully reenlisted!

Your base survival target is 5.
Survival DM of +2 due to Intel.
Your net survival target is 3.
You rolled a 3.
You survived!
Your base promotion target is 10.
Promotion DM of +1 due Intel.
Your net commission target is 9.
You rolled a 10.
You gained a promotion!
No rank/service skill for you this time...
You get to roll for 2 skills this term.

1: PersonalDevelopmentSkills
2: ServiceSkills
3: AdvancedSkills
4: HighlyAdvancedSkills
>> 4
You rolled a 2.
Computer-1, Engineering-1, *Navigation*-2

1: PersonalDevelopmentSkills
2: ServiceSkills
3: AdvancedSkills
4: HighlyAdvancedSkills
>> 4
You rolled a 2.
Computer-1, Engineering-1, *Navigation*-3
Your reenlistment target is 4.

1: Reenlist
2: Muster Out
>> 1
You rolled a 4.
You successfully reenlisted!

Your base survival target is 5.
Survival DM of +2 due to Intel.
Your net survival target is 3.
You rolled a 8.
You survived!
Your base promotion target is 10.
Promotion DM of +1 due Intel.
Your net commission target is 9.
You rolled a 8.
You did not gain a promotion.
You get to roll for 1 skills this term.

1: PersonalDevelopmentSkills
2: ServiceSkills
3: AdvancedSkills
4: HighlyAdvancedSkills
>> 1
You rolled a 6.
*Bribery*-1, Computer-1, Engineering-1, Navigation-3
Your reenlistment target is 4.

1: Reenlist
2: Muster Out
>> 2
You rolled a 6.
You have mustered out.
You completed 3 terms.
You get 4 at rank 2.

1: Benefits
2: Cash
>> 1
You rolled a 1.
You gained a Low Psg.

1: Benefits
2: Cash
>> 1
You rolled a 1.
You gained a Low Psg.

1: Benefits
2: Cash
>> 2
You rolled a 5.
You gained 20000 cash.

1: Benefits
2: Cash
>> 2
You rolled a 3.
You gained 10000 cash.

Final Results:
Merchants 3rd Officer (3 Terms) 972989 Age: 30 Cash: 30000
Bribery-1, Computer-1, Engineering-1, Navigation-3
2 Low Psg
 
Okay... most insane attribute rolls ever here. (Should I have gone into the Merchants instead?)



AABA67

1: Navy
2: Marines
3: Army
4: Scouts
5: Merchants
6: Other
>> 3
You are attempting to enter service #3 Army.
Your base enlistment target is 5.
Enlistment DM of +1 due to Dext.
Enlistment DM of +2 due to Endur.
Your net Enlistment Target is 2.
You rolled a 10.
You're in!!
You gain a rank/service skill level in Rifle.
*Rifle*-1

Your base survival target is 5.
Survival DM of +2 due to Educ.
Your net survival target is 3.
You rolled a 7.
You survived!
Your base commission target is 5.
Commission DM of +1 due Endur.
Your net commission target is 4.
You rolled a 10.
You gained a commission!
You gain a rank/service skill level in SMG.
Rifle-1, *SMG*-1
Your base promotion target is 6.
You rolled a 7.
You gained a promotion!
No rank/service skill for you this time...
You get to roll for 4 skills this term.

1: PersonalDevelopmentSkills
2: ServiceSkills
3: AdvancedSkills
>> 1
You rolled a 5.
AABA77 (Educ raised)

1: PersonalDevelopmentSkills
2: ServiceSkills
3: AdvancedSkills
>> 3
You rolled a 1.

1: Grav Vehicle
2: Tracked Vehicle
3: Wheeled Vehicle
4: Prop-driven Fixed Wing
5: Jet-driven Fixed Wing
6: Jet-driven Fixed Wing
7: Helicopter
8: Large Watercraft
9: Small Watercraft
10: Hovercraft
11: Submersible
>> 2
Rifle-1, SMG-1, *Tracked Vehicle*-1

1: PersonalDevelopmentSkills
2: ServiceSkills
3: AdvancedSkills
>> 3
You rolled a 2.
*Mechanical*-1, Rifle-1, SMG-1, Tracked Vehicle-1

1: PersonalDevelopmentSkills
2: ServiceSkills
3: AdvancedSkills
>> 3
You rolled a 6.

1: Body Pistol
2: Auto Pistol
3: Revolver
4: Carbine
5: Rifle
6: Auto Rifle
7: Shotgun
8: SMG
9: Laser Carbine
10: Laser Rifle
>> 5
Mechanical-1, *Rifle*-2, SMG-1, Tracked Vehicle-1
Your reenlistment target is 7.

1: Reenlist
2: Muster Out
>> 1
You rolled a 8.
You successfully reenlisted!

Your base survival target is 5.
Survival DM of +2 due to Educ.
Your net survival target is 3.
You rolled a 7.
You survived!
Your base promotion target is 6.
Promotion DM of +1 due Educ.
Your net commission target is 5.
You rolled a 12.
You gained a promotion!
No rank/service skill for you this time...
You get to roll for 2 skills this term.

1: PersonalDevelopmentSkills
2: ServiceSkills
3: AdvancedSkills
>> 3
You rolled a 1.

1: Grav Vehicle
2: Tracked Vehicle
3: Wheeled Vehicle
4: Prop-driven Fixed Wing
5: Jet-driven Fixed Wing
6: Jet-driven Fixed Wing
7: Helicopter
8: Large Watercraft
9: Small Watercraft
10: Hovercraft
11: Submersible
>> 2
Mechanical-1, Rifle-2, SMG-1, *Tracked Vehicle*-2

1: PersonalDevelopmentSkills
2: ServiceSkills
3: AdvancedSkills
>> 3
You rolled a 6.

1: Body Pistol
2: Auto Pistol
3: Revolver
4: Carbine
5: Rifle
6: Auto Rifle
7: Shotgun
8: SMG
9: Laser Carbine
10: Laser Rifle
>> 5
Mechanical-1, *Rifle*-3, SMG-1, Tracked Vehicle-2
Your reenlistment target is 7.

1: Reenlist
2: Muster Out
>> 1
You rolled a 7.
You successfully reenlisted!

Your base survival target is 5.
Survival DM of +2 due to Educ.
Your net survival target is 3.
You rolled a 5.
You survived!
Your base promotion target is 6.
Promotion DM of +1 due Educ.
Your net commission target is 5.
You rolled a 11.
You gained a promotion!
No rank/service skill for you this time...
You get to roll for 2 skills this term.

1: PersonalDevelopmentSkills
2: ServiceSkills
3: AdvancedSkills
>> 3
You rolled a 5.

1: Dagger
2: Blade
3: Foil
4: Sword
5: Cutlass
6: Broadsword
7: Bayonet
8: Spear
9: Halberd
10: Pike
11: Cudgal
>> 10
Mechanical-1, *Pike*-1, Rifle-3, SMG-1, Tracked Vehicle-2

1: PersonalDevelopmentSkills
2: ServiceSkills
3: AdvancedSkills
>> 3
You rolled a 6.

1: Body Pistol
2: Auto Pistol
3: Revolver
4: Carbine
5: Rifle
6: Auto Rifle
7: Shotgun
8: SMG
9: Laser Carbine
10: Laser Rifle
>> 5
Mechanical-1, Pike-1, *Rifle*-4, SMG-1, Tracked Vehicle-2
Your reenlistment target is 7.

1: Reenlist
2: Muster Out
>> 1
You rolled a 2.
You have been forced to muster out.
You completed 3 terms.
You get 5 at rank 4.

1: Benefits
2: Cash
>> 1
You rolled a 3.
Your Educ was raised by 2.

1: Benefits
2: Cash
>> 1
You rolled a 3.
Your Educ was raised by 2.

1: Benefits
2: Cash
>> 2
You rolled a 4.
You gained 10000 cash.

1: Benefits
2: Cash
>> 2
You rolled a 1.
You gained 2000 cash.

1: Benefits
2: Cash
>> 2
You rolled a 3.
You gained 10000 cash.

Final Results:
Army Lt Colonel (3 Terms) AABAB7 Age: 30 Cash: 22000
Mechanical-1, Pike-1, Rifle-4, SMG-1, Tracked Vehicle-2
 
Gonna plug SignalGK

From what I can see they do straight rules Book 1, give you the option to add Sup4.

Back in the day... I mean before C was a programming language... before I learned fortran... I made a Book1 only straight rules generator in Pet Basic...

ah... good times... good times....

don't remember squat all about programming now... the manager bone in my head has grown far too large to allow any real knowledge to continue to co-exist....
 
Fun fun fun.

Picked up 2 extra levels of Cutlass via the Benefits table. I love this game!


Navy Lt Cmdr (5 Terms) 6B7AA9 Age: 38 Cash: 6000
Cutlass-5, Gunnery-1, Mechanical-1, Ships Boat-4
Cutlass
 
Fun fun fun.

Picked up 2 extra levels of Cutlass via the Benefits table. I love this game!


Navy Lt Cmdr (5 Terms) 6B7AA9 Age: 38 Cash: 6000
Cutlass-5, Gunnery-1, Mechanical-1, Ships Boat-4
Cutlass

Yeah... cuz in the far future folks commanding starships are going to be damned awesome swordsmen.....
 
Gonna plug SignalGK

From what I can see they do straight rules Book 1, give you the option to add Sup4.

Back in the day... I mean before C was a programming language... before I learned fortran... I made a Book1 only straight rules generator in Pet Basic...

ah... good times... good times....

don't remember squat all about programming now... the manager bone in my head has grown far too large to allow any real knowledge to continue to co-exist....

C was developed in 1972 actually (http://en.wikipedia.org/wiki/C_(programming_language) and Pet Basic in 1977 (http://en.wikipedia.org/wiki/Commodore_BASIC) just to be pedantic. And I did my initial Traveller programming on an Apple ][. Then some in Pascal on a PDP-10, then some in Pet Basic on a C64 as well. Now C#/.Net mostly, thanks to work. Yes - good times, good times...

At the time, I never really thought about the cutless other than just assuming it would be safer than fire arms, depending on just how tough your hulls are. But it did bring forth the more romantic aspects of star ship traveling as an Age of Sail pseudo-simulation. I never had a character with that skill, but I usually did Scouts, with the occassional Marine after book 4 came out.

</end thread derailment>
 
Back
Top