2300AD character starship

Still thinking about the starship that the characters in my possibly-never-to-happen campaign will have.

The broad outlines are fine – I want an oldish survey vessel; decommissioned from the Royal Navy and being used by the Royal Society for xenology and survey purposes.

The original concept wasn’t quite working because of the habitat modules and the need to have two landers – I think it would be very dangerous to only have a single lander to access unknown worlds, but the hangarage for two was taking up too much of the ship.  Having two spin modules forced an inconvenient split in accommodation and working space which was very unergonomic.

There was also an issue with quarantine – watching lots of SG-1 reinforced my belief that any ground crew would need to be segregated on return for several days or weeks in case they infected the entire rest of the ship – so there needed to be a whole quarantine area, which is more space.

Plus there seemed to be a need to duplicate laboratory space in the main ship, but also in modules that could be landed on the surface, which then led to modular shuttles and lots of interface trips, which are very fuel intensive in 2300AD.

The design of the new Marseilles class liner gave me a great idea.  Rather than having a lander ferrying people to the surface, put all the scientists, laboratories and ATVs in two large interface landers, each massing 100 tons displacement and capable of interface travel.  In orbit these then dock at the ends of two arms via a top clamp, forming the spin modules for the scientists to live in and conduct research in orbit.  These then detach and land on the surface, where they are used as ground stations.  And when they return, they are self contained quarantine zones as well.

So the stats for the Explorer class landers are:

Hull: 100 dT streamline airframe self-sealing hull

0.5 MW New Commercial MHD power-plant with 100% radiators

0.01 MW closed loop recycling Fuel Cell backup power-plant, with Solar Panels

Air-breathing fusion thrusters, max acceleration 2G, max speed 2,000 km/h

344 m3 fuel

2 man cockpit

6 full size staterooms

4 laboratories

56 m3 of cargo hold

bay for a standard 15 dT Explorer class ATV

 

World of Xoth

Thinking of setting a new ‘swords and sorcery’ campaign for David and Adrian in the World of Xoth.

I like to visualise my campaign worlds to help create atmosphere, and in this case, like most S&S campaign worlds, the nations have fairly clear historical analogues (which I used to think was lazy, but I now realise is really useful to help players relate to the campaign world if they don’t have time to immerse themselves in the background).

In this case, I might get half a dozen 25mm wargaming figures for each nation and paint them up, to give a view of what the average soldier is wearing and to use as guardsmen and city watch.

So the nations in the World of Xoth, and their analogues (for me) are:

Mazania – black amazons – find some nude amazon warriors

Azimba –

Shoma –

Ikuna – zulus (Wargames Factory do some plastic zulus)

Zadj – Persia – sassanid persians – always wanted to paint a few of them.

Yar-Ammon – egyptians

Jairan – Arabs

Khazistan – turkish ghilmen

Susrah – Seleucids?

Taraam – Assyrians?

Nabastis – Myceneans or classical greeks

Lamu – pale men in long robes? Slavs?

Sea Reavers – arab pirates/Sinbad

Messing around in stutterspace

Having done the Chinese arm, my next effort has been to try and do a new map of the French arm based on Constantine’s updated near star list.  However I found I was running into problems because I was relying on a variety of websites to tell me the distances between stars, and sometimes they contradicted each other, or sometimes they just didn’t have the stars that I was interested in (but that Constantine was showing as being within 7.7 ly).  Now the simple solution would have been to have used Astrosynthesis like he does, but I have a very old Mac Mini at home, and it is a PC piece of software, so that was out.  And anyway, I didn’t want all of the features of Astrosynthesis, just something that would tell me the distance between two coordinates, which is Pythagoras.  So I decided that the simplest thing would be to knock up a quick script (not my first thought though – that was to do it in Excel, which is possible, but produces a matrix that is very sparsely populated, and very difficult to read).  Normally I would script something in php, but a friend had been extolling the virtues of Python, so I decided to use it as an opportunity to learn some basic Python as well.

The input is designed to be a simple csv file of star coordinates, names and characteristics.  The output, in this version, is a text file and html file, listing each star in alphabetical order, with the distances to all the stars that are within 7.7 ly.

The python script is:

import math
from operator import itemgetter

def main(filepath):
 star_data = []
 nav_data = []
 import_position_data(filepath, star_data)
 calculate_distances(star_data, nav_data)
 write_output_file(nav_data)
 write_html_file(nav_data)

def import_position_data(filepath, star_data):
 input_f = open(filepath, 'r')
 for line in input_f:
  line_data = line.split(',')
  star_data.append(line_data)
 input_f.close()

def calculate_distances(star_data, nav_data):
 for star_a in star_data:
  this_nav_data = star_a
  for star_b in star_data:
   if star_a[2] != star_b[2]:
    distance = math.sqrt(
    (float(star_a[3]) - float(star_b[3]))**2
    +(float(star_a[4]) - float(star_b[4]))**2
    +(float(star_a[5]) - float(star_b[5]))**2)
    if distance <= 7.7:
     this_route_data = [star_b[2], distance, star_b[3], star_b[4], star_b[5]] 
     this_nav_data.append(this_route_data)
     del this_route_data
   nav_data.append(this_nav_data)
   del this_nav_data

def write_output_file(nav_data):
 # sort into Star name order
 sorted_nav_data = sorted(nav_data, key=itemgetter(2))
 output_f = open("star_distances.txt", 'w')
 for star in sorted_nav_data:
  output_f.write('=' * 40 + '\n')
  output_f.write(star[2] + '\n')
  output_f.write('-' * 20 + '\n')
  output_f.write(star[9] + '\n')
  output_f.write('X coordinate: ' + star[3] + '\n')
  output_f.write('Y coordinate: ' + star[4] + '\n')
  output_f.write('Z coordinate: ' + star[5] + '\n')
  distance_from_sol = math.sqrt(
  (float(star[3]))**2
  +(float(star[4]))**2
  +(float(star[5]))**2)
  output_f.write('Distance from Sol: ' + str(distance_from_sol)[0:4] + ' ly\n')
  output_f.write('\n') 
  output_f.write('Neighbours\n')
  for neighbour in star[12:]: 
   output_f.write(neighbour[0] + " at " + str(neighbour[1])[0:4] + "ly\n")
  output_f.write('\n')
  del distance_from_sol
 output_f.close()

def write_html_file(nav_data):
 # sort into Star name order
 sorted_nav_data = sorted(nav_data, key=itemgetter(2))
 output_f = open("star_distances.html", 'w')
 output_f.write('<html><head></head><body>\n')
 for star in sorted_nav_data:
  output_f.write('<h2>' + star[2] + '</h2>\n')
  output_f.write('<p>Type: ' + star[9] + '</p>\n')
  output_f.write('<p>X coordinate: ' + star[3] + '</p>\n')
  output_f.write('<p>Y coordinate: ' + star[4] + '</p>\n')
  output_f.write('<p>Z coordinate: ' + star[5] + '</p>\n')
  distance_from_sol = math.sqrt(
  (float(star[3]))**2
  +(float(star[4]))**2
  +(float(star[5]))**2)
  output_f.write('<p>Distance from Sol: ' + str(distance_from_sol)[0:4] + ' ly</p>\n')
  output_f.write('</br>\n')
  output_f.write('<p>Neighbours:</p>\n')
  for neighbour in star[12:]:
   output_f.write('<p>' + neighbour[0] + " at " + str(neighbour[1])[0:4] + "ly</p>\n")
  output_f.write('</br>\n')
  del distance_from_sol
 output_f.write('</body></html>\n')
 output_f.close()

if __name__ == '__main__':
 import sys
 if len(sys.argv) > 1:
  main(sys.argv[1])
 else:
  main('Raw Star Data.csv')

Formatting isn’t great but you get the idea…

The one problem with this… One of the many problems with this, is that the txt file it produces is about 600 pages long if I do it for stars with 100 ly of Sol.  Which is a wonderful academic astronomical resource, but not as useful as a practical 2300AD astrogation resource.  So we need to trim out the stars that we can’t possibly reach using a 7.7 ly stutterwarp.  First step is to remove all the stars which have no other star within 7.7 ly, because they are obviously inaccessible.  Next and more difficult step is to trim out the stars that have no route to Sol, which is more difficult and computationally intensive, but it occurs to me that if I start near Sol, and store the routes as I find them, then all I need to do is find a connection to a star that is already on a route and I know that it must connect to Sol.

2300AD – The Chinese Arm

2300AD is a role playing game that I have admired from afar for a very long time, and have finally persuaded some friends to play (with me GMing).

A key part of a good SF RPG is the background – futuristic enough to be fun but close to now and limited enough to have texture, and avoid the genericism that plagued Traveller (when you have seen one A988786 planet, you have seen them all).

2300AD is wonderfully limited and ‘hard’ and a key part of this is the realistic near-star list, the only problem being that the list of stars near to Earth has dramatically changed since the ’70s.  My trawling of the intertubes has however discovered a wonderful website by a chap who refers to himself as the Evil Dr Ganymede, and this includes a wonderfully scientific updating of the near-star list, which also involves moving a bunch of the colonies in the rules around, because the stars they were round have moved in the intervening period.

I’m going to use his list rather than the canon one, because the accuracy appeals to me.  I had decided to start my players in the Chinese Arm, because the Ebers appeal to me, and because the French Arm is a bit over-used.  So the first step for me has been to take the maps on his Chinese Arm page and hand-draw my own ‘tourist’ map for the arm, showing the pertinent features that the players need to know in tube map style.  So here it is:

Tourist Map of the Chinese Arm for 2300AD
Tourist Map of the Chinese Arm for 2300AD

Another project

Another project to add to my long list (why do none of them ever get finished?) is to restart the Glorantha Borderlands campaign that basically got dropped halfway through an assault on a newtling temple (I can’t remember why). Anyway, I think the key now, since none of my players will read any background material at all, it to have the right Praxian figures to give them the clues to remind them the world they are supposed to be in. So I am going to be collecting lots of links to Amerindian figures and bison, which is why they will start appearing in the links section.

Spotting the details

Its only when you have photographed a figure and are cropping it that you notice the bits you have missed:

Note to self – need to do the eyes and the suns on his knees…

Old School

Coming soon, some photos from America, but while I sort out the decent ones from the 700 that I took (the joy and curse of digital photography) here are some photos of some RPG figures that I have been painting recently. I have a couple of boxes of old RPG figures, some dating back to when I first started in the eightes, and mostly unpainted. Since I started RPGing again we have started using them again and so I have started painting and repainting them (believe it or not my painting skills were even worse 20 years ago). Here are a couple that I have done; first a female cleric figure:

Female Cleric

And also a plate armoured warrior (normally used in the evil antagonist role, but actually quite appropriate as a cleric as well since he has a flail):

Plate armoured warrior or cleric

Then one of the rare ones painted for me by Petra. I think this was originally one of the Elric with Stormbringer figures, but I bought a couple of them to use as high elf command figures. This one then got painted by Petra to her colour scheme, so I am now using it as an RPG figure because I can’t paint a whole unit to match…

Elric of Melnibone

The new combat system…

…as used this evening. And when I say new, I mean stolen from Pendragon.

This is to avoid the problem with high-skill Runequest where combat is just a series of successfully parried attacks. Realistic, in that two highly trained swordsmen will keep fencing with each other, but tedious because it is only resolved as fatigue starts reducing skill levels.

So instead the Pendragon system. Here the aim is to roll under your skill, but more than your opponent. So there is an advantage in having a higher skill than your opponent because it gives you more headroom – the range of numbers where you are succeeding and your opponent can’t because it is more than his skill, so if he rolls higher than you he fails.

Obviously a 01-05 can’t be a critical in this system so instead your skill is, and the numbers immediately below it. So if you have a skill of 43, 42 and 43 will be a critical. 01 – 41 will be a success, but if you roll 36 and your opponent with a parry skill of 55 rolls 44, he has parried your sucessful attack.

More Magic

Although these are actually earlier thoughts about how a magic system should work.

Combat systems in RPG are normally well honed, based on actual experience, and allow a number of rounds of sparring and gradual degredation of the enemy. In systems like RuneQuest, you have the opportunity to parry, and you can decide how much armour to wear in a trade-off between skill levels (modified by encumbrance) and protection.

Magic systems on the other hand tend to be much simpler (caveat here – I haven’t bought a new RPG in 20 years so they have probably moved on). What I am looking for is the tussle of power between two opponents as they strive overcome each other’s power. The touchstone is the scene in the Lord of the Rings (the book stupid, not the film) where Gandalf is trying to seal the door from the chamber of Marzabul (sp). To misquote – ‘…the counter spell was terrible and in the end the door was destroyed, along with part of the chamber…’.

This is what I want – the ability to start casting a spell, for the target to realise it and start casting a counter-spell, the for the original caster to increase the power and so on. As part of this there needs to be a separation between the amount of raw power that a caster has access to and their ability to control it, so there is the temptation to use more power and suffer the backlash. The use of magic should be instrinsically dangerous, especially with powerful spells.

It should also have some sort of moral hazard, because it normally does in fantasy literature. And this I think should be tied into how you obtain power. Magical power should be ubiquitous, but low density. An individual caster should have enough power to light a match. To cast powerful spells you need to concentrate power, and half of the magic system should be ways of doing this. At the moment, a number of schemes spring to mind:

1. Cast for a very long time – ritual magic, hours or days of chanting, requiring endurance rolls, as the power builds and builds.

2. Have many people casting – the metaconcerts of the Many Coloured Land or the ur-vile wedges of The Chronicles of Thomas Covenant. The interesting question here is whether the ultimate caster can handle it all.

3. Divine power – all the catsre does is open the gate and lets the power from the other side stream thorugh. If the source is not beneficent though who knows what else may come through.

4. Black magic – tap into the power of a thousand human sacrifices. This is the fast route to power, and therefore gives the players an essential moral dilemma and the chance for the NPC baddie to circumvent all the irritating PC restrictions.

Social Magic in RPG

I have had a long running issue with the power of magic in D&Desque role-playing games. They allow too much power without any corresponding responsibility – no society could possibly survive in such a situation. It would only take one disaffected 20th level magician to destroy 1000 years of progress.

Runequest had a more realistic system, where powerful magic was utterly embedded in the system, so you had to be part of the social structure in order to gain access to it. The problem was that it lacked the pzzazz of the D&D system.

What I am looking for is something in the middle, and today’s idea is this. Many systems have the idea that metal or encumbrance interfere with magic, to reinforce the standard trope of the unarmoured mage.

What would happen if people interfered with magic as well. The more intelligence there is in the area, the more difficult it is to cast spells. You need to open yourself up to the flow of power to cast spells and people make that more difficult.

The advantage of this is that you can still cast the powerful fireball down a dungeon where no one is around, but you can’t cast it so easily in a village and it is very, very difficult in a great metropolis. A self-levelling system? I think I need to think through the ramifications of it, but it could be a nice little idea.