User Tools

Site Tools



The material on this site is owned by Samuel Penn, and any queries should be directed there. Most of the material on this site is licensed under CC-BY-SA.



Flat Pack Tokens

Starting my preparation for the last instalment of Rise of the Runelords, and again taking a different approach to how I represent monsters on the table. For the 5th chapter, I tried to use actual models wherever possible, but that was both expensive (even using plastic Reaper Bones for most of them) and time consuming.

This time I'm looking at something both cheaper and quicker. I'm drawing up tokens in Inkscape, and then printing, cutting and gluing to an MDF base of the appropriate size. I then put a clear plastic base on top, to protect the paper image and allow the tokens to be marked with dry wipe pens.

One problem I had, was I find round tokens don't work well at large sizes. Pathfinder uses square bases for everything, so a round base for a Huge or Gigantic creature makes it non-obvious that the creature also fills the corner squares. Where I source the clear bases from (, don't do square clear plastic bases. After some thinking, I figured I could do all the tokens as round, then stick them onto a square backing base. This seems to be working fine.

I've also done some flight stands, which are constructed from two old Games Workshop flight stands, with a base stuck into each end of the stick. Each stand has magnetic basing material on the top, and a metal base stuck to the bottom. Not only can they be fixed to larger sized bottom bases (to make it clear where a large flying creature is, and for extra stability), but it means they can be stacked without falling over. Sticking metal bases on the bottom of character figures or flat tokens means they also don't fall off the flight stands.

The metallic basing material can be obtained from the same place as above. I can't remember where I got the metal bases from though.

Doing tokens this way also means they take up far less room, and are a lot more durable and portable than actual models. I'll still use some models for the important creatures, but it should greatly simplify everything else.

2018/12/22 10:09 · sam

Party Events

Using the Ultimate Intrigue rules to provide a more tactical approach to social interactions for PCs at a major social event has added an interesting layer to things for my Pathfinder game (see Party Time). However, I've added a couple of extra layers of my own.

Firstly, for each phase of the evening, a PC can chose to be seen doing something. This is in parallel to any specific social interactions with NPCs for discovery or influence. It's effectively a short term reputation which may benefit or hinder the PC's interaction with particular NPCs.

There are seven different activities (just like there are seven Thassilonian sins):

Sin Activity Skill Save
Lust Flirting. Diplomacy, Profession (Courtesan) Will
Gluttony Eating and drinking. Survival, Heal Fort
Pride Showing off dancing or singing. Perform (Singing or Dancing)
Wrath Being argumentative. Intimidate, Perform (Oratory) Will
Sloth Being a loner. Stealth, Perception
Greed Admiration of wealth. Appraise, Knowledge (Nobility)
Envy Snide comments and insults. Bluff, Perform (Comedy) Will

Each requires a skill check, and success gives a 'bonus' in that sin. The skill DC starts at 6, and goes up by +3 for each point of bonus the PC already has in that sin. These give bonuses or penalties when influencing different NPCs.

For example, Gluttony and Envy give a bonus for Lady Sila Crusca (she gets on with people have a good time, but is also interested in malicious gossip). Sloth and Wrath give a penalty for her (unsociable people, or those having loud arguments don't interest her).

Some of the activities have a saving throw. Failure can have side effects. Already one PC has failed a Will save for Lust (spend the next phase 'distracted', there is now an untidy bedroom but you've gained a minor favour from some minor NPC). Another has failed Gluttony (caused a mess that servants need to clean up, and a penalty to subsequent saves).

Wrath and Envy fails haven't happened yet, so the PCs aren't aware of the repercussions. Succeeding at Sloth also gives a chance to hear some rumours.

Finally, another possibly background activity is to spend time nosing around the villa where the party is being held. This has been done just enough to know that they have an option of exploring the Library, the Bedrooms or the Servant quarters. If the PCs opt for taking this further, then they'll find out what happens when they do this.

2018/11/18 15:47 · sam

Party Time

I'm bringing the current run of my Pathfinder campaign to a break point, and I'm ending things with a bit of a party. The PCs have been invited to a 'house warming' being given by a new noble family recently arrived in Magnimar from Kintargo, in Cheliax. Obviously, they are worshippers of Asmodeus, but you shouldn't hold that against them.

I'm making heavy (possibly too heavy) use of the Influence rules in Ultimate Intrigue, and giving the PCs a chance to talk to various NPCs using the rules for discovery and influence. There's nineteen different NPCs they can talk to, plus a generic 'servants' group they can talk to.

Rather than 'influence' providing influence over an NPC, I'm using it as a means to gather information from the NPC. Each level of influence provides more information. For example, here's Lady Sila Crusca:

Lady Sila Crusca

Lady Sila is the wife of Lord Malchus Crusca. She is in her fifties, with long white hair. She is wearing a velvet green dress, threaded with gold and silver.

She is known to have had a relationship with Lonjiku Kaijitsu, and gave birth to his daughter Amaya Kaijitsu who now lives in Westcrown. She is enjoying the food and drink, as well as the gossip, which she seems to take part in using multiple languages.

  • Knowledge (Geography) or Craft (Calligraphy), DC 14
  • Knowledge (Nobility) or Linguistics, DC 19
  • Sense Motive, DC 24
Strengths (-4)
  • Anyone trying to chat her up. She made that mistake once, not again.
Weakness (+2)
  • Has an interest in Westcrown, and willing to discuss events in that city with anyone.
  • Is open that her daughter Amaya was fathered by Lonjiku Kaijitsu, and will talk rumours about what has happened to that family.
  • Tian women, or anyone in exotic foreign clothing styles.
Influence Skills
  • DC 14; you can use Linguistics to impress her with your multilingual talents, or Perform (Oratory) come up with some good haiku.
  • DC 19; you can use Bluff to better understand a woman who has lived with secrets, or Diplomacy to win her trust.
  • DC 24; you can use Profession (sailor) for she seems unusually interested in talking about sea currents along the Lost Coast.
Influence Benefits
  • She is Neutral, Aristocrat 4. Her only daughter, Amaya, was fathered by Lonjiku Kaijitsu, and she took her real (deceased) father’s name a couple of years ago. She now lives in Westcrown. +2 Malchus Crusca
  • The Kaijitsu family have mostly left their holdings in Magnimar, but she is trying to talk Amaya to coming back to the city and taking things over.
  • She has been trying to talk her husband into finding the wreck’s of Amaya’s grandfather’s fleet along the Lost Coast.
  • Aristocrats +1

The rules in Ultimate Intrigue set the DC of skill checks based on the average party level. I'm basing it on the NPCs level (10 + level). This makes some a lot easier to influence than others.

One of the first things that can be discovered about her is her alignment and character classes. Not all NPCs are so easy to find such things out about (some may give inaccurate, or incomplete, information for the first level or two of influence, especially those who are multi-classed).

Some of the NPCs give bonuses to influence other NPCs. So in the case of Lady Sila, she grants a +2 bonus to influence her husband as one of her influence benefits. The bit about the shipwreck is a possible adventure hook, and possibly a clue for a previous plot point they've been sitting on for a while. Her very last benefit is providing a reputation bonus to the Aristocrats faction.

Part of the aim is to figure out who can be spoken to, in order to get information and bonuses to make the harder NPCs easier to influence. Some of the PCs have quite high skills in some areas, which is turning out to be really beneficial for them.

I'm running the evening's events from 8pm through to midnight (when they know they have a special meeting with the head of the family). So far they are up to 9:30pm, and have fully 'unlocked' 3 of the NPCs. They are very unlikely to be able to talk to and find out all the information possible over the course of the evening.

The mechanisation and gamification of the interactions with the NPCs has worked quite well so far, making things a lot more tactical. Rather than just “I'll talk to Lady Renova and make a Diplomacy check”, there's more tactical planning involved.

In order to gamify things further, I've added in some extra options of what the PCs can do of my own. I'll cover them in the next post.

2018/11/18 15:30 · sam

Planetary Rings

I've been adding support for planetary rings to Worldgen over the last couple of weeks, and I now have added the display of them to the 3D view. Initially I played with the idea of rendering them as discrete points, much like I do for asteroid belts. This gives the advantage that they can be rendered correctly under gravity, with inner points orbiting faster than outer points. However, the result doesn't look much like the rings of Saturn.

So now rings have a texture generated at creation time, which is stored in the database. This is then 'just' applied to the ring object as a texture. I say just, because it required some hacking of the threejs library code to apply a texture to a ring in a circular pattern. Fortunately, I'm not the first person who wanted to do that.

The texture currently uses just a very simple algorithm for drawing lines of random colours. The only 'intelligence' is a chance of a gap forming in the rings, where the opacity is reduced. Other than that, there are no patterns or attempts to change the colour between random variations of the same hue.

Currently though, the placement and size of the rings isn't ideal, and I need to put more work into making them look a bit more 'realistic' (where realistic is 'like Saturn', since that's what everyone expects). I do allow for thinner rings, and multiple rings (the ones shown are single rings which have gaps in the texture), but more variations could probably be added.

Note that since all planets lack an axial tilt, their rings are similarly flat. Also, since the ring textures are just lines at the moment, they don't rotate.

2018/11/03 12:32 · sam


A recent adventure for the Pathfinder game I’m running was more of an investigation to find out what had happened to a couple of young lovers, which involved talking to people and searching for clues. I decided to go for a more mechanical approach to things, rather than just feeding clues with a single Perception check, or relying on them asking the right questions (though there was a bit of the latter thrown in as well).

For the searching for clues, the I gave the option of a number of different skills which could be used, which allowed different characters to contribute. So Sense Motive could be used to search a room, because you’re looking for indications of motive. Knowledge (Nobility) can be used, to find things that might be important to a noble. Rather than just having the person with a high Perception gain all the glory.

So, for example:

  • DC 11: Some clothes are missing, including a pair of boots, and a sword is not hanging from where it should be.
  • DC 14: The window is closed, but unlocked. It would be easy to get down from here to the garden.
  • DC 17: There are some boot prints on the window sill.
Sense Motive
  • DC 11: The bed looks like it was slept in the previous night.
  • DC 14: There’s no sign of a rush to leave. Everything is neat and tidy.
Knowledge (Nobility)
  • DC 11: There’s a collection of pamphlets for plays, including The Bumbling Goblin, Faerie of the Opera, A Day and Night for Miss Zeldana, and The Inconstant Nymph on the table. Zeldana is put on at the Rose and Rake, the others are for the Triodea. Follow up: Lore (Magnimar) 24: His first cousin, once removed (Durstin Versade), owns the Triodea.
Survival (in the garden)
  • DC 14: Probably went down the side of the house, across the garden and out through a side gate. Would not have taken him near the stables.

It actually worked quite well, and I allowed a bit of flexibility, especially when players wanted to ask questions or use skills not listed (so using Stealth to figure out the most likely way to leave the house without disturbing anyone, rather than Survival. That gave him the route, but not the fact that it would have avoided the stables (which a couple of horses were missing from, and a clue that the horses were possibly moved before hand, rather than trying to get them out of the city at night)).

This sort of things could just be roleplayed, with maybe the odd skill check (and that’s my usual approach), but this split the workload between characters so they all got to do something, and it gives more of a feeling that they might fail to get all the clues if they don’t have the right skills. The chance of getting nothing though, and not being able to progress at all was quite low.

There were also multiple ways of getting similar information. There’s a clue pointing at the theatres, but talking to the stableboy also had similar information. Putting both together gives a clear direction of which path to follow, but either one should give some hints which could be followed up with a bit more investigation.

For talking to witnesses and getting information out of them, I used a slightly modified form of the Pathfinder intrigue and influence rules for social combat. My main reason for using these was that the next adventure is going to be a party where I’m planning on using them quite heavily, and I wanted to give an introduction to the rules before hand.

Anyway, the PCs think the lovers sneaked out of the city at night to elope, and are heading to Sandpoint. So next session will probably be heading out of Magnimar along the Lost Coast Road to find them.

2018/10/28 18:22 · sam

Google Plus

For the last seven years I've used Google+ as my main place to 'hangout' online. Despite the naysayers, there's been a lot of good content and interesting people on there over the years. However, it's been announced that it's being shuttered late next year, so I need to find a new place to be.

Two places I'm currently looking at are:

Pluspora has a very different feel compared to G+, lacking a lot of the features I've come to like. MeWe is a walled garden, and doesn't currently allow public posts - you have to be a signed in user (at the very least) to see anyone's content.

Not sure yet which one I'm going to settle on, but there will probably be posts to both for a while.

2018/10/14 10:02 · sam

Pathfinder Tabletop

For the running the fifth chapter of Rise of the Runelords, I've turned to a mix of tabletop and virtual environments to manage things. Though I have all maps, monsters and NPCs managed within Roll20, as far as the players are concerned everything is running on the real table. Maps are done using cardboard tiles from Role 4 Initiative, with (mostly plastic) figures for the PCs and monsters. Where everyone is is determined by the tabletop map, and this is considered the single source of truth. Anything I have in Roll20 is merely for my own benefit (and keeping track of things that the PCs can't see yet).

Roll20 is managed from my Chromebook (used in preference to my laptop, since it can happily last all day without needing to be plugged in), which is also connected to the TV via HDMI cable (I did start off using Chromecast for screen mirroring over a wireless connection, but that turned out to be unreliable).

The only feature that is run from Roll20 from the player's point of view is initiative, which is displayed up on the TV. Players also get to see the output from my API scripts, which will report when a creature is down to two thirds or one third hitpoints, so they have some idea of how badly injured creatures are.

All my dice rolling is controlled from Roll20, which saves me time as GM. However, players roll using real dice on the real tabletop (though occasionally they'll ask me to make a roll for them, when they need to roll buckets of dice for a large spell or sneak attack for example). This helps keep to the 'real' feel of playing a tabletop game.

Most monsters/NPCs I have the right models for (an exercise that turned out more trouble and expensive than I expected, so I will probably drop this for future adventures), so I don't need to display pictures of things to the players, but when I do I can do that via the TV. Due to the layout of the room, the TV is behind a couple of the players, so it's not ideal and I try to avoid putting things up for display on there whenever possible.

Actual handouts are still done on printed bits of paper, so that players having something to hold and read.

None of the players are actually part of the Roll20 game itself, so apart from a few statistics (Perception, Sense Motive and Initiative) I have very limited PC information digitally. Most players prefer to use NPC Gen anyway. We could potentially try using Roll20 for video if a player couldn't make it, but we haven't had to do that yet.

We're most of the way through Sins of the Saviors now, and it's running reasonably smoothly. I would prefer to be able to draw out more maps up front in preparation for each game, but the last part of the adventure is difficult to predict where players are going next, and I don't have enough map tiles to be able to draw out all the maps (especially since some are pretty huge) at once.

2018/07/23 14:46 · sam


As part of fleshing out basic planet types for WorldGen, I've been working on generating maps for five different types of asteroids. For the most part they share the same basic framework - a texture map, plus a deformation map which gives them their shape. All the bugs where the texture didn't link directly at the edges have been fixed, so they actually look like solid objects.

Most of the time has been spent with the colours. Silicaceous (top right) and Carbonaceous (middle) were the simplest, with relatively consistent textures across the surface. Gelidaceous asteroids (bottom right) are comprised of rock and ice, so have a mix of textures. Metallic asteroids (bottom left) have a high degree of metals.

The final type, Vulcanian (top left, and actually called Vulcanoidal in the original Planetary Classification List, but I've renamed them to give them a different name to the class they belong to) are special in that they're found close to their star, so can be incredibly hot. There're several versions of these, depending on how hot they are - what is shown is a middling Vulcanian type which is hot enough to glow red.

Some have a few extra options to give individual asteroids a bit of uniqueness, and I'll add to these as time goes on. For now though, there's probably enough detail to move on to providing extra detail to larger worlds.

2018/06/24 20:25 · sam

Planetary Cloud Cover

A Cytherean World

The next step of progress is the ability to add cloud layers to worlds. Each world can have any number of cloud layers, which are displayed on the globe view for the planet. This is most useful for worlds which have very dense cloud cover, such as the Cytherean world shown here. This is a Venus-like world, that is shrouded in thick hot clouds.

Each cloud layer can be a different colour and have different levels of transparency. In the case of Cytherean worlds, the thickness of the clouds is determined by the atmospheric pressure, which in turn is determined by the surface temperature.

Cytherean world with surface made visible

Thick clouds means that it is difficult to see the surface on the 3D view, so the globe view has also been updated so that the user can control the orientation of the world using the mouse. Doing this also makes the clouds transparent, so that the actual surface of the planet can be viewed.

Other updates include a brief description for the whole system, which will give a brief description of the stars and planets, and note any system wide phenomena (such as heavy solar flare activity). The top of the system page also shows a count of the different types of worlds, and the star port type.

2018/06/03 12:35 · sam

Carbonaceous Asteroids

I've had some time to work on my WorldGen application, and have the first basic implementation for moons. Unusually, they've been implemented within asteroid belts, which don't technically have moons but the backend framework for moons (which are really just planets associated with another planet) fit what I wanted to do.

So asteroid belts can now have individual named 'planetoids' within them (of a size comparable to Vesta or Ceres), as well as the undefined (generated from a random seed every time they are needed) smaller asteroids. The solar system map displays their current position within the belt, orbiting along with everything else.

I've now also have a way to generate a 3D map for such an asteroid, using a distortion texture which is applied to a simple sphere. This gives an irregular natural looking shape, though it can't produce anything as irregular as Comet 67P/Churyumov-Gerasimenko using this technique.

There's also a modifier that smooths out larger asteroids, so Ceres sized asteroids will tend to be far more spherical than smaller ones.

The textual descriptions of such worlds needs some work (to be honest, there's not a lot that can be said about a small barren rock, so coming up with enough unique random text to make them interesting is hard), and there's still lots of bugs in how moons get displayed on the web page, but there is progress.

I've also possibly decided on nomenclature for belts, giving them capital letters to denote their position. The first (innermost) belt in the system will be A, the second B etc. Named planetoids within the belt will be labelled from innermost to outermost, starting at 'a' and going onwards. This matches the naming for moons, but they have a roman numeral (for the planet) followed by a letter (e.g. our Moon would be “Sol IIIa”), which is clearer. So I might still change things.

2018/05/20 11:42 · sam
blog.txt · Last modified: 2019/07/30 22:50 by sam