Sunday, April 26, 2026

Traveller System Update 35 - World Maps

Was lying in bed and realized I could probably get AI to generate a world map for me, as I am not great at the UX side of things. The first draft actually mostly worked: I had it create the service, show me the updates to a few of the associated things, and it does generate a graphic thing. That is sort of close if you squint sideways and have a few drinks.

But - it is a start. I'll have to look over the actual code to see what is actually happening. I think the math side of things is correct, but it did not generate the world map based on the Form 8 I dropped into the chat. However - it was also about an hour or two of work, versus a few days had I been trying to do this by myself. 

Which sort of brings to mind the whole set of changes that software has been through. I've actually worked with punch cards (24 rows of 80 columns), teletype machines on greenbar, vim editors, plain text editors, early GUI editors and IDEs that started with auto-completion for lines and now the AI (technically large language models) that can write most of the code for you. Production-ready or not is an entirely different discussion, and a matter of opinions (mostly based on if they are trying to sell you an AI system or "reduce headcount"). Of course, Claude, the most popular code generator, just jumped up significantly in cost. Remember kids - the 1st hit is free!

What I was aiming for


What I got
I will get back to the orbital stuff, but I wanted to get something a bit splashy out there. I see what others are doing and honestly get a bit depressed: they are writing consumer-facing software, and I am sort of stuck in enterprise backend ideas. Of course, that is what I've done for years so it is a natural fit for me. 

Edit: a bit closer!


Friday, April 24, 2026

Terrain

One can only job search so much. So I've been working on painting the terrain stuff as well as I've got time. And one of these days maybe I'll actually use it. I've had some interesting discussions over the years, both with other gamers and inside my head about theater of the mind vs immersion via terrain and minis. 

On the one hand, our minds can envision anything and make up the details as we need to. One of the reasons I like the early Traveller line art: it was not overly detailed and left a good bit to our own imaginations. On the other hand, sometimes you really do need to understand how things look and how various characters are in relation to one another. TFT of course covers this with requiring a hex mat to properly handle combat. Traveller combat ranges from grids to pure abstract range bands.  

The trick is to remember that the terrain on the table is not all that there is, it is still an abstract representation. Just with more details. And that is where I get concerned that the toys actually detract from the game. And pretty sure I've had this conversation before with my readers!

So, pictures of terrain. This is the spider caves from the Archon Caves Kickstarter a couple years ago. The plastic showed up a while ago, and I've been doing some painting.

this may not be a good place to set up a camp!

spider bridges

closer view of spider bridges

finally "good enough" as she has been sitting on my desk for almost a year now. Also Archon but I think from an earlier KS

and good enough for these two as well

and read a blog where the author was making cool terrain from household goods and realized that the sprues from the terrain could make for a space dock of sorts. Just need to get some foam core or something and add more greebling and some sort of habitat dome or something.

And still trying to decide about MTU vs OTU for the Kinunir Traveller game I'll be running in a bit.
ships from 0-Hr




Tuesday, April 21, 2026

A Breggle and an Archer

For our 1st session we grabbed some minis I had, and 1 player chose the archer for her character, a changeling. I backed with the minis for Dolmenwood so had a Breggle Magician. They were unpainted, so I decided to go ahead and paint them. As I have a bit too much time, still being unemployed (and searching for jobs is such a horrendous experience!) The Dwarf is an old Grenedier model I think that I got in high school, so it at least 40 years old! And painted with enamel model paints as that was all I knew about back then. The friar was from some Kickstarter - I'd have to check to see if it was Reaper, Wildspire or something else. But I had already painted him oddly enough.

I also painted some of the terrain from the Caves edition of the last Archon Kickstarter. I've got another set of sprues with a wash and will just hightlight the bones and webs from that one. I probably will not be backing their next crowdsourcing: I am not even using the sets now a lot, I am sadly unemployed, and they really just did not grab me particularly this time around.

Keir the Changeling and Elrod Bumble, Breggle Magician. 

The Dwarf Lozebelle Nightmail and Henry Moon with their friends in the abandoned mine.


Thursday, April 16, 2026

The Kinunir Game - Session 0

Color me surprised but I am going to run a Traveller game! Using the Kinunir since it was the 1st published adventure, I have the original version as well as the PDF, and there is some discussion over on COTI about the ship. I took that as a sign.

We had a session 0 and I had them roll up characters. Oddly, we have characters from Classic Book 6 Scouts, Mongoose 1st edition and Cepheus Diverse Roles. And even more interesting, to me at least, is that they only stayed for 2-3 terms. 

The Scout player wanted to be an engineer, and tried to get into college and failed, then tried to get into the Navy and failed, and the draft ended up Scouts. Which can give the engineering skills. I doubt he wrote down each year and what he did. Oddly none of the duty assignments had a chance of promotion. Nor did he end up with a Scout ship.

The Law Enforcement player, using Mongoose 1e, had an interesting career with some interesting events and picked up a smattering of skills. It has been a while since I rotated through that character generation process so had to backtrack a couple of time. He ended up a lieutenant, I think. 

The final player, who has joked for years about playing a juggling whore, ended up going through the Prostitute career. He picked up a few interesting skills, including advocacy (lawyer), got beat up by some of his clients. The mustering out benefits are not great for that career, but apparently the player has a plan for what he wants to do.

While I do like Traveller character generation, and I do house-rule that they roll then can pick the skill, the players I think wanted more control over things. And it kept coming up about the adventure: what sort of characters did they need for the planned game? And to me, that is where Traveller really differentiates itself from most RPGs: it really does not matter too much what your background was, what matters is what you do. All 3 characters will have something that can help with the game. Years ago, I ran a game and 1 player chose barbarian and had all of 1 term. He had 2 skills I think, and none of that mattered in running the game honestly. I'll probably recheck the Mongoose skill package and may do that as well. We have 1 more player that will need to generate a character as well. 

The other question is - OTU or MTU? I was going to go MTU but looking at the adventure, I'd have to translate a fair amount to map it well enough. I decided to stick with the OTU, and they are all from Regina by their choice. Being a long-time Traveller player I would have gone a different direction, but they all wanted it to be simple and that does simplify a few things.

The prostitute, a hetaerae actually (Hetaerae – You are a member of a trained and educated group whose job is to provide long term companionship) may have had some interaction with the police officer. They did end up with 2 contacts during character generation, though the player decided on his own who they were. I'll have to get that info so that I can link that into the rumors and patrons of the adventure somehow. The Scut has mustered out on Regina as there is a Scout & Naval base there.

I never did a world write up on Regina, so I suppose I'll see about generating some maps. There is a LOT of info on this subsector capitol, so I'll have to read a bit on that to not break canon too much. Not that we will really need maps, but I like them. Plus need to figure where to place the Scout and Navy bases beyond the starport, as well as the miscellaneous shipyards, one of which has the Kinunir in it. Maybe map the shipyards, though that would be an interesting challenge as space is a fully 3D environment. 



Friday, April 10, 2026

Traveller System Update 34 - Orbital info part 5

Orbital dynamics are hard! Maybe it is rocket science. Anyway, finished with at least the display for the edit. Just need to repeat for the create view, and then actually save off the data. Then add at least the primary to the index view.

In theory I enabled the multi-select, but now realize how would you tell which star type goes with which size? So - I need to make it single select, and possibly duplicate for multiple stars? Actually, I need to pull the star type stuff into a partial view and have a view per star. The create will need to have a "add new star" option as well. And this is one of the reasons you want to think things through before starting. As Abe Lincoln said, "If I have six hours to cut down a tree, I spend the first four sharpening the blade." And as more than one of my bosses has told me over the years, "Slow is fast."

Anyway, as this is a personal and honestly slightly meandering project, that's okay. But I'll have to add the partials to allow for multiple stars in the system. As well as making that work in the details view. And I do plan on cleaning up the landing page with drop-down menus versus the single line across the top. Just need to figure out what goes where. Which is one of the harder issues in software honestly: just where do you put stuff? I could bore you to death talking about repositories vs ORMs and various service layers. Though I will note that this application follows the basic standards so that other developers could easily find things for the most part. 

The job search is honestly depressing. 52 applications so far, 4 rejections. Main issue is I am an older software developer, and most companies do not want to hire older people. Which is silly - they are just about guaranteed that I'll stick out for a few years vs younger devs, who often have more options, will jump ship as soon as possible. And I do have a lot of experience. I figure I'll keep looking another couple of months then perhaps look at Lowes around the corner. Sadly, if not for insurance, I'd consider an early retirement. I have been working a long time. At least I've met a lot of really nice and interesting people along the way. Along with some not-so-nice people, but that is life.

Sunday, April 05, 2026

Domenwood Adventure: Session 0 and a Quick Trip Up a Nose

Switching from Corsairs to Dolmenwood, we had a good session 0 I think. We have 4 characters, of which 2 are from the Dolmenwood setting directly, one from OSE and one from the expanded player options (a review here):

  • Friar Henry Moon, human. I need to get which saint he follows and a few other details. Dolmenwood class
  • Dwarf: LozeBelle Nightmail ("Belle" as the layer took pity on my ability to pronounce things). OSE kindred. Thebruiser of the group, but was a tailor before taking up adventuring. 
  • Breggle Elrod Bumble, Magician. The player even used the random tables for characteristics and fun things. Dolmenwood kindred
  • Changeling Keir (from the OSR Advanced Player Options). Offspring of a mortal and a doppleganger. They were a frost sculpturer in the land of Fey but decided to see more of the world from their human parent. 

A Breggle, from the Dolmenwood Player's Guide

It took us a while to get through the character generation, but I do that pretty much old school: roll stats straight as-is. But I do allow 1 extra roll to replace any roll, and the Dolmenwood rules allow for a 2 for 1 replacement, where you can take 2 off one stat to add 1 to another. But I decided to start at 2nd level after reading the initial adventure I wanted to run, as well as allow the magic users (magician and friar) more than a single spell. 

I also allowed the players to pretty much equip themselves as needed and still roll for gold. I figure a level 2 character will have picked up the basic weapons and armor by now. And things can get dangerous enough in old school games anyway.

Two of the characters, Belle and Keir, have worked together before: they have run the crab apples from the orchard to Castle Brackenwold for Zoemina Ladle. The NPCs are from the Dolmenwood Campaign book, but the job stuff came from the party backstory generator. It gives me some potential hooks later if I need them.

The friar is from the Old Abbey, a destroyed and ancient abbey. Actually, from an unnamed village nearby as the Abbey is in ruins and only inhabited by a few people. Think I'll get back to the Settlements book and roll it up just to have that. He is all the way over here due to dreams he has been having the last few weeks:
A valiant or courageous PC is visited in a recurring dream by a beautiful elf lady,clad in white. In the dreams, the PC falls in love with the Lady, and awakes with a deep yearning to be with her. After some weeks of experiencing this dream, the PC has a second one: venturing into a burial mound, opening a coffer, taking a ring from the finger of a skeleton, and bringing the ring to the Lady. At the end of this dream, the Lady tells the PC that the tomb is a real place, and that a magical door to her realm is located there, in the lower level. She (falsely) promises her heart to the PC, if they can retrieve this ring that was stolen from her in ancient times and bring it to her. She reveals the location of the tomb and says that one who bears the ring can enter the magical door in the lower level that leads to her realm in Fairy

The Breggle, a native of the Dolmenwood, has his own reasons to be here: he is getting paid to return a ring from a burial mound. He'll get paid 1000 gold to get that ring. Elrod has a map of the burial mound, and it is a couple miles from the Giant's Nose, a tavern run by an older Dwarf. 

And that is where we started the adventure, all 4 in there after a storm had come through, destroying Pierogi's gardens. The four adventurers, not knowing each other yet, are persuaded by a bit of gold and some free meals to go up the nose. 

After getting shrunk to about 1/2", they are hoisted up the nose on a stick with cotton to prevent splinters. The first part of the journey is climbing up some mucus-slimed hairs, but no one falls. They do meet an Elf heading down, Fern Evergreen. They talk briefly, and he manages to gracefully bypass the party. They find some of the brown mold here, before getting to the first ledge. They get to a ledge and manage to find some of the glowing spores. But they also find 4 snot creatures. There is a battle, but with the dice rolls, 2 of the creatures were fighting Keir, and 2 against Belle. The fight went well, though Keir and Belle both got hurt. Friar Henry Moon cast a healing spell and healed up one (and sadly, my notes are far too sparse to remember who got hurt the most). 

Seeing a rope, which is an old vein, they get a rope they have, and start climbing to the next level. Belle slips but manages her saving roll. so is just left swinging a bit. They notice that there is a bit of a breeze, and wonder if the giant is still living. Climbing up, they encounter some of the nerves hanging off the roof of the nose and are attacked by some stinging things. Elrod has managed to climb up, and they defeat the 2 vicious plants that plummet out of the nose. Which is not even noticed by Pierogi and Franklin as it stayed thee same size so got blown away by a mild breeze. But our heroes get some of the stinging nettle before getting off on the top-most platform. There is a small crack leading up, to where the last ingredient was at. The air was stale, but Belle climbs up. 

Poking her head out of the floor, she sees a glowing giant starting to stride to her. "Leave me!" he yells, club starting to swing. He hits her and somehow I managed to roll max damage for the it. But Belle gets out of the way, and the others pop up and we have a battle with the giant. Keir gets hit at least once, and everyone gets enough hits in to defeat the giant's spirit. The friar did try and turn undead which, sadly as the giant was a few levels above, had no effect as his roll was not good enough. Had the battle lasted 6 rounds he could have tried again. But they managed to kill the spirit, and gather the lace seeds. 

They climb back down, and enlarged to their normal size, and get some good food, some gold, and 170 XP each (I think - I need to remember to write down XP in the notes!)  And this was where we closed off the initial session.

Thoughts

I think they enjoyed the game - we also got to use more of the dice which, well, we are all dice goblins. Some of the things we had to read a bit on: one of the magician's spells, after re-reading the description, did not work like the player originally thought. We did a retcon on that turn as we are all learning the rules. Fortunately, one of the other players also has the books, and is a great GM so that helped to get help and have more than 1 person looking things up. 

I slightly modified the Giant's Nose thing a bit but it was mostly the same. It was a bit difficult to understand how to get the map working as it is more vertical than horizontal so hard to figure that for a few things. However, it was a silly introduction to the game, and I wanted something mostly non-lethal to get a handle on some of the mechanics. And I've read the adventure we'll run in a month a few times to get a feel for that. And I even found the minis and have them all in a single place for that game. Hopefully that will be fun.

And I made cupcakes.


NPCS

Franklin - a human druid who lives somewhere near the Giant's Nose,
Pierogi Poundflour - Dwarf owner of the Giant's Nose
Zoemina Ladle - human female, owner of the Roost, "a fantastic treehouse inn is nestled in the boughs of a trio of old beeches"
Fern Evergreen - Elf met in the nose

Friday, April 03, 2026

Traveller System Update 33 - Orbits Part 4

Progress is being made, though there are a lot of moving pieces. Turns out I never got around to adding the stars to the system model! Part of that is also due to the fact I was confused over the nomenclature: what I am calling stellar types is actually the sizes: Ia, Ib, and so on. And the star type is the traditional B0, G0 and all that. Which I *finally* figured out when I created the stellar data table to get all the other info.

So, adding those to the system pages as well as updating the repository so stuff is eager loaded. Meaning we collect all the related data when we do the initial request for the data. As this DB is so very small, as well as local, that sort of thing works well. For larger, more complex databases, this is not always a good idea. Like a lot of software - it is usage dependent. Sadly, I live in a world with few hard and fast rules as so much is contextual!

Regardless, got the star list to at least show up, though I am not saving off the data just yet. But once I get all that done, as well as the same for the stellar size, then I can get to the actual orbital period! 

work in progress. And yes, really need to make that a prettier list. I'll probably fancy it up via some AI prompting.

Job hunting is going apace. I fear that job scrolling has become the new doom scrolling! I've applied to 26 jobs so far, and of course, heard nothing back. Several I think I hit all the marks they want but this is a crowded field. And honestly, in the software world, not all those jobs posted are actually real jobs. Shocker, I know.

And finally - I watched the Artemis launch. So glad we are going back to the moon. I remember the Apollo flights and thinking we'd have a moon base not too long after that. I suppose too much UFO and Space:1999 spoiled me.

Space:1999

UFO


Saturday, March 28, 2026

Traveller System Update 32 - Orbital Distances Part 3

And then I had to add the orbital distances table and UX as we need that to calculate the orbital period. Though to be "more" correct, the mass of the planet would also impact the orbit as heavier or larger planets will have to go faster in the same orbit. But not going to worry about that overly much: this is a game, not a reality simulation. Which often comes up in arguments over on COTI. Or at least very active discussions.

I did add the paging functions to the stellar data and still have a few of those rows to add in but getting closer to adding the orbital period to the planet information. Then we can also add in albedo, world average temperatures, and stuff like that. However, albedo will be interesting:

The albedo for a world can be computed by what portion of the world is covered by various terrain types, and noting the average cloudiness of the atmosphere. Combining these values provides an overall albedo for the world.
That is two more tables we'd have to add - albedo by terrain type, and cloudiness based on hydrographics. Which then means we'd have to figure out land masses, determine what is covering them and fun things like that. Do-able, but diving deeper than I thought this little project would go.

Regardless, I should have the orbital distance calculations done in the next update, probably another day or so as sadly, I still spend a lot of time behind the keyboard. But it is fun for me. Which is great as I've been doing this for a long time, and if it is still fun, then I've picked the right career. 

Anyway - more progress as I have a bit more time now obviously! But now off the start prepping for next week's game: I need to see if I have the terrain and minis and get all that ready to go as it is a face to face game. 

I'm going to have to rethink the menu as the horizontal is running out of space, and just because I have a wide screen monitor does not mean every else does!



Thursday, March 26, 2026

Traveller System Update 31.5 - Notes on data entry

Well, putting in the data is certainly a longer process than I would like. If this sort of thing happened a lot, I'd create an import function as those are pretty simple to implement. Working my way through entering the stellar data, just so I can calculate the orbits! Yeah, I could take the easy way out but oddly I like math and figuring out how to do this sort of thing (not saying I am good at math, but like physics and a few other things, I like it without necessarily being good at it. See any earlier posts on game organization!)

Anyway, got through adding a few more and realize I'll have to add paging functions to this page. I had a few choices when I started this project, which was first, yet another version of some form of Traveller software, but also a way for me to play with the latest version of .NET. Way back when I started and .NET came out, the boss would never let me use the latest and greatest. "Never use a .0 release" was the common refrain. And from a business viewpoint, pretty standard honestly and safer. I went to a local .NET user group for years and they got to play and show of the latest stuff, things I could not use. Anyway - now I can at least for personal projects like this one. And actually I was at my former job as it was not yet in production, as well as that entire software ecosystem is pretty mature and thoroughly tested even for .0 releases.

Anyway, back to paging: the repositories in this application are mostly pretty standard, and now I am wishing I used a generic repository as that would have covered probably 95% of the usage. What that means is: instead of having a repository class (where we can load and update data for a specific table), we create a generic repository where we pass in something like <StellarData> to indicate the stellar data type. It would have simplified things so that I would not have to write a service class per model. However - the downside of that is things that are unique to a class, or if you want to include related records, I think makes that approach a lot more complicated. Like a lot of things even outside the world of software, one solution rarely solves all the problems. And as an aside, don't get me started with Entity Framework being a repository pattern already! I go back and forth on that a lot as well. And yes, unless you are a developer or in the IT world, probably a WTF am I talking about?!

Regardless, I'll have to add a paging function as the list, even when half completed, is already quite long! Maybe a search function as well so we can find all the G0 class info, or all the subgiant type info. Not sure what would even be needed since I am the only one using this. You can see why a product owner can be important - let the developer know what is really needed versus what we think is important!

But why this is only half an update: it was mostly data entry and some musings. Though I may go ahead & add the paging functions as that is not complicated. For good or bad, I just get the AI to do most of it. Or I can copy/paste from other code where I did this before. But AI is a great tool if still overhyped in so many ways.

that is a lot of data!

I really need to also start looking at the next game. Getting laid off really throws me off a good bit. Still taking some time off though I did attempt to sharpen up my resume and randomly apply to some interesting places where it looks my skills could work. But as I told my group - the good news about this is that I have more time for game prep and reading! There is always a bright side to everything. Sometimes you really have to look hard though!

But I think the players are excited - they have some character ideas, and I've started going through the Backstory Generator and two of the characters are in the employ of Zoemina Ladle and sometimes take the crab apples to the castle, a journey of less than a day. They usually meet at the Roost (an inn built into the trees of the forest) but also have a secret location as sometimes she may have them do more clandestine operations and need to meet a bit more in secret. The two players are the wife & child of one of the players, so not sure how to get the location of the secret place to them. Though my group is pretty good about metagaming so if the players know that and the characters do not, they will stick in character. I'll have to check.

not sure who did this but found on Pinterest


Tuesday, March 24, 2026

Back to job hunting!

I was laid off this week. This makes the 4th time in my career. Of course, IT is often precarious field. After the initial gut punch and a few days off, I'll start job hunting again. And sadly, just 3 years out before I could retire if I want to. I feel like I may be wearing a red shirt in Star Fleet.

Why do I bring this up here? Because of my 1st layoff decades ago, I started this blog to play with some Traveller trading software. Though the blog has definitely changed a bit over the years, I have been getting back to the software side of things for this (30+ updates since I started the .NET Core version). Oddly enough that ancient 1st version, still on GitHub I think. (and a quick check later, apparently that does not seem to be there. It was Winforms which is still a great UI thing in many ways! It may be buried on a drive somewhere - I'll have to look. It even used the TravellerMap APIs for a number of things)

I knew this was coming anyway - the new CTO was a previous CTO and every time the IT department gets a new person, they fire someone. I was pretty sure I was on that chopping block!

Regardless, it means I'll spend a bit more time playing with the software, trying not to freak out, and pet my cats and dog a heck of a lot. I'll note that every time I have been laid off, I've gotten a job that usually ended up being better in one way or another. And technically I could early retire but it is the insurance costs that hold me back from that. Plus, I really like working and solving problems.

Anyway - I'll be okay. Eventually. You may even get more game blog posts as this does give me more time to read the stuff I have, do more game prep, and read! Though I did just finish that last book today. But I've bookcases full of books to go back through then!

some interesting clouds I saw the other day

always look up - things will get better! Or there is a bug on the ceiling.
Next post will be game or software related, but a mini not-quote-a-vent post just to get this out there. 

Friday, March 20, 2026

Corsairs Session 6: Batkin Siblings

Our intrepid heroes grabbed what they could from the mines: ledgers, furniture, normal things for a not-quite pirate crew to take. None of the slaves were wanting to go with the group, so after loading the supplies, and leaving enough food and rations, they head back to the trading post. There's a bit of a chase as they approach the nebulous border (sorry, no George Jetson floating road guides here!) but a few deft turns and watching the mainsails they leave the Alderil Navy ship behind. 

Smooth sailing to the port. The crew starts selling what they can of the purloined goods, and the pay the crew for a bit of shore leave. Wanting to return to Dulcet Spire, but not wanting to take the Wind Razor, they get passage aboard the Wind Whale, a cargo vessel heading that way in a few days. Meanwhile, they get the Razor restocked, start looking into getting a stern gun for protection when chased. 

Getting onboard the Wind Whale under assumed names, they meet Bosun Fairly Heathcote. It is a two day trip to the Spire but they arrive, unnoticed by the Navy, and get directions to the Batkin Embassy. Several long flights of stairs up, some open to the huge open-air market inside the giant Spire, and they get to the Embassy up in the administrative sections. 

Ambassador Batrok, an older Batkin with a greying muzzle, talks with them after they introduce themselves. One of the things we found during this session is that the Batkin really have no formal government: most things are communal, and roles are pretty fluid. We did a bit of world building so I could envision how the player sees the race she created for the game. And they squeak in their language, which humans cannot understand, or even hear half of.

The embassy has 6 Batkin aids (Bentock, Biota, Batkra, Bit, Batony and Baroti) and 6 human aids (Jeager Hardjen, Yavin Kenosky, Ulric Dituri, Daron Voight, Fleur Cantos and Tessa Ducot). Not that they really met any of them other than as they walked through, though Batony did find the letter left behind by Batrina's siblings:

Batrina, if you receive this letter, we have been rescued from slavery by the Leitford Family. They have safely left us at the embassy on Dulcet Spire. A strange place with no dirt under our feet, nor enough sky to glide in. After regaining our health, we decided to return home. Living among the humans as shown us their cruelty and their compassion. But we cannot live among them. Please come home and let us know you are safe. 

 ~ Batmaya and Batzion

They were mistrustful of things, and even though 6 months ago it all seemed okay, this group rightfully does not trust the Anderil Empire.

And this is sort of where we left things. I felt that I was not doing a good job in getting the world I envisioned across well, and the play seemed more forced, and I am not sure everyone was having fun. O we decided, or rather I decided, to switch things up. We're going to try the Dolmenwood OSE game. I'm going to start with the short Winter's Daughter adventure to see how that works out. The advantage is that fantasy like this is easier for everyone to have a more shared idea of what the world is. And one of the players, as well as myself, want to use more than just our 6-sided dice!

Session 0 will be in a couple weeks. Even though there are good character generators online for Dolmenwood, I think they want to roll up characters face to face. I also just got the PDF for the backstory generator, so we may use that as well assuming I actually look through that to get a feel for how to use it. And, we may start in the Giant's Nose as I did back that and I should use the things I get!

Saturday, March 14, 2026

Traveller System Update 31 - Orbits Part 2

Got to adding the UX (User Experience) for entering the data from the various charts in Book 6, pages 44-45. I've essentially combined all those charts to single chart. 

Edit and creates have nice drop-downs and the index seems decent enough.

Dropdowns!

Charts!
I do realize when reading what other people do when creating Traveller software that I am doing this in an entirely different direction. I'm coming from the viewpoint that the user may have a different physics or using more up to date info than the Scouts Book 6. This application is very, very heavy on allowing the users to edit and maintain all those tables.

Is this a good approach? Not really - people just want to use the stuff without having to deal with all that under the hood stuff. However, there are plenty enough applications out there for most of this, and all with a much better interface. My personal interests have always been in what we call the backend for software: the databases and internal business logic. Which is great for some things, and not so great for others. 

Regardless, this is my approach for this. In theory, of course, someone could write another application using the very same database that this system maintains. Why I chose SQLite to externalize the DB versus hardcoding all these values was to allow other applications access. Again - that's how I've always worked in the past: the DB is entirely independent of the application. Had one job where I mostly wrote microservices, and they all interacted with the same database. I'll also note the repo is under the MIT open-source license, so people can do whatever they want with the software.

Anyway, I'll have to finish adding all the data, then I can actually calculate the planetary orbit! I think - I may have missed something else but Ill cross that bridge when I get there.

And my next post will probably be the expected Corsairs recap, along with notes about why we are switching to the Dolmenwood game as an experiment.


Friday, March 13, 2026

Wondrous Worlds - Quick Review and Run Through

I recently got the physical book Wondrous Worlds, another book in Nord's world building series. I do seem to collect these. The link above gives a free preview and other people's reviews. But here is mine anyway!

Overview

Physically, it is a nice hardcover, with artwork similar to their other books. Nice art, if, hmm, not bland per se, but nothing really outstanding. I'd go with typical fantasy art. Which I may be getting jaded on, as with the internet it is everywhere and easy to find. Not like when you had to go out and buy books. But it is nice art. The pages are sepia toned with a spot of blue around the page number. 

The contents have 8 chapters and 7 appendices. The chapters are relatively short, with the meat of the book in the appendices for the detailed tables and a few other things.

Chapter Overview

Chapter 1 is the introduction, with an overview of the process and the advice to start small and build up. It has the usual advice that sometimes the results look strange, but often you can find good stories in those contradictions. Which any Traveller player already knows from world generation! It gives succinct paragraphs about the various things that go into deigning the world.

Chapter 2 is a quick start guide and runs through creating a region. Roll for the environment on a d12 table, adding points of interest such as landmarks, settlements, and destinations. Of course, they also have the Wondrous Destinations: Forests and Wondrous Settlements books, so you can really expand upon those. I also have those books and have used them. If anyone wants, I can also do reviews of those if I've not already. Decades of blogs and well, I don't always remember! Then step 3 is the realm, where you throw in all your regions. Realms have governance and rules, as well as borders. 

Chapter 3 is regions, the entire purpose of the book. To quote from the book:

In this chapter, you’ll shape your world by first choosing or rolling for different environments—each with unique topographical features, weather patterns, resources, recent history, flora, fauna, and looming dangers. You’ll then populate your region with points of interest such as majestic waterfalls, ancient monoliths, bustling trading posts, hidden villages, and haunted ruins. Finally, you’ll delve into the region’s culture and society, exploring its governance, traditions, economy & trade, history & lore, and conflicts. By blending these elements, you’ll create a richly detailed setting brimming with intrigue, laying the perfect foundation for your worldbuilding journey.

The environments table now includes the appendix where that gets expanded out a good deal more than the quick start chapter. There are more landmarks with d4 options for each. You roll on the history table, 20 possibilities with another d4 set of options each. You can have magical effects such as "arcane amplification", another d20 table with d4 options per effect. Settlements are next, with an abbreviated version of the Wondrous Settlements process. Destinations give a d12 list of various destinations, such religious structure or outpost. Dangers exist in the worlds of course - but apparently only d6 types. It finishes off with 20 possible regional conflicts.

Chapter 4 is Realms. Regions (and I suppose it could be a single region in a realm). There are 8 sections getting created: culture and society, inhabitants, governance and rules, history and mythology, economy and trade, magic and technology and conflict and tension. Multiple tables per each section expand out on this, along with the note that you are of course, allowed to add more. Heck - I could see possible even adding some of Traveller's government types here, though tis books has 20 types already. There are some interesting tables that can help spark the imagination. 

Chapter 5 covers continents. Just as realms are made up of one or more regions, continents are made up of one or more realms. It is like those Russian nesting dolls. In the case of mapping to Traveller, we probably have a balkanized world. The continents chapter incudes sections for geography, climate, global powers, lost civilizations, continental trade and cultural divisions. Multiple tables give all sorts of possible options, such as atmospheric rivers, glacial advances and retreats and so forth. 

Chapter 6 covers worlds. Which of course, are made up of one or more continents. Here we cover the solar system, celestial bodies, cosmic phenomena, divine and magical influence on the world level, and cultural influence that flavors the world. Interestingly for a fantasy world system, there are tables for the moons, the type of suns and how many, things that are more generic and fantasy based than our Traveller system generation. Of course, this book is for creating a fantasy world. But I can see a fair amount of overlap between the systems. 

Chapter 7 covers the planes. Our created world may live in one of a series of planes, such as the feywild with magic pretty much oozing out of everything. This is a short chapter of just a few pages and a short paragraph for each plane. Wondering if they are planning a Wondrous Planes books to expand on that :)

Chapter 8 covers pantheons. Creating your deities based on the planes, choosing forms, power source, abilities, motivations, methods, bonds, familiars, and relics. Then we have several pages going over existing pantheons: Greek, Norse and Slavic. A fairly short chapter with more general information than anything really specific. Of course, bringing in deities do not really need much more than what their attitude is and how they do things: they are gods so stats and things like that are useless and to me even counter productive.

Appendix Overview

Appendix A Environments. This is where each environments gets 10 or so pages with environment specific tables. Each of the 12 environments gets a few steps. Step one gives a type, an age, weather, characteristics, resources and local history. Some may have additional tables. Step 2 covers life: plants and animals, how many and what kinds of each, food chains, monsters, humanoid populations, traffic and dangers. This is the real meat of the book to be honest and is also the largest section. I'll give an example in the next few posts of creating a region as this post is already longer than I normally do. 

Appendix B is a brief overview of mapmaking. Those who read this blog know I love maps. This is a pretty short chapter covering some really basic map making, breaking it down to 4 steps: sketch, outline, detail and shading. Obviously, this is for the old-school (and still my favorite despite just how many map making programs do I have again?!) pencil on paper map drawing. It covers various ideas for drawing a variety of things, mostly using the 1-point perspective if I remember my high school art classes from almost 5 decades ago. 

Appendix C covers iconic regions. It is a set of pre-generated regions, one per environment. It is a good place to see what the end product could be, and is just over a single page per region. 

Appendix D gives iconic characters. There is a d12 table that could be useful for NPCs with archetypes, and gives their strengths, weaknesses and goals. Then we get a few characters with their role and archetype, along with a couple paragraphs to help define them. 

Appendix E gives some iconic landmark examples. This helps give you some ideas on how to use those tables to give a more nuanced and in-game perspective on the landmarks you have rolled up. 

Appendix F are iconic settlements. Which, if you have the Wondrous Settlements book is a short rehash of that albeit with different settlements. Basically 1 page or so summaries of a few settlements ranging from outposts to major cities.

Appendix G are iconic destinations. A dozen destination examples. I did a quick run-through 5 years ago (!) for that book here.

Summary

Yes, another book on world building. It is pretty detailed, has a lot of tables that, like Traveller, can be expanded on and at least give a spark to creativity. As with generating characters, random stuff I think helps me from creating the same old thing every time. 

Is it a useful book? I think that really depends on how often you create new worlds and regions. Most of my fantasy games, regardless of the actual game, are on the same world. It just happens to be a very large world with a lot of space. Cidri (the Fantasy Trip world) is several times larger than Earth, and my little fantasy world sits on it someplace. As does the Dolmenwood forest, which I'll be running next on our Saturday games (and yes, I owe the players the last game Corsair recap, and that will cover why we are switching games).

For players, it is not something they need unless they want to read up on things like that. Or write and would like some inspiration. For GMs, if you are running sandbox games, I think it is a good tool though to be honest, a bit more limited due to the tables. Yes, there are d20 tables with d4 options. That does give 40 possible things often. And used as the start of something I think it can be a good springboard. As much as I dislike the idea, you can also ask AI to generate a lot of this for you, and it may come up with really interesting things as well. I buy books like this as I prefer the human touch. There are also a LOT of on-line tables and generators created by people that are probably just as useful. 

There are also some appendices I don't think need to be there - the iconic characters, settlements and destinations are covered in their other books. I know this book is sort of the capstone of their other books, but those sorts of things are available all over the place. I've backed far too many Kickstarters for NPCs, settings and so on. Some of which I've actually used but mostly, not. But that fault lies with me honestly. 

In the end, I do recommend the book because it does give more options and may create a really unique setting to play in. It is a tool I think that can be useful. And of course, I do like books!

I'll have an example run through at some point using the book.

Wednesday, March 04, 2026

Traveller System Update 30 - Orbits Part 1

I decided to next calculate the year (orbital period) for the planets in our system. Asked AI and realized I may need to add a bit more to some of the tables. But that is easy, and adding the orbital period is not hard. As it is a calculated field, I may just generate it on the fly as needed vs saving it.

To get the math formulas to work, I added some scripts to my theme's HTML. And yes, AI gave me the answers to that after a couple false starts. MathJax-script is the javascript library behind that.

I've added a new table that incorporates the stellar data such as luminosity, mass and so on. Then realized there more tables on the next page. And we also need the orbits table that indicates the AU and distance. But I figured 8+ hours of work mostly in .NET (a good bit of Rails review to see what I screwed up in translating the code, and yes, *think* I found it) an hour or so getting the basic table up if not functional is a good step. The stellar type and size need to be drop downs to save off the correct foreign keys. Not sure when I'll get back to this - running the Corsairs game this weekend and while I spent almost an hour doing some brainstorming, I still need to work on some more details. But some progress at least! I should be able to add the other table and data fields possibly this weekend. And the generated code for the controller and views is technically not AI but a scaffolded process that a number of frameworks have to help with the basic grunt work for those things. All I do is select the model and it will create the controller and views for me. And as I (finally!) thought to use the DisplayName tag in the models, the labels are much nicer than the field names.


AI response to me asking how to calculate the period. Despite having the book sitting right next to me. I worry I am outsourcing my thinking now.

You picked a good rabbit hole here—Book 6 is quietly pretty crunchy under the hood.

1. Get the orbital radius from the orbit number

In Book 6: Scouts, look up the radius \(a\) in AU for the given orbit number.

2. Get the star’s mass

Look up \(M_\star\) for that star (in units of \(M_\odot\)).

3. Use the Kepler-style Traveller formula

Book 6 uses Kepler’s third law:

$$P_{\text{years}} = \sqrt{\dfrac{a^3}{M_\star}}$$

4. Convert to days

$$P_{\text{days}} = P_{\text{years}} \times 365$$


5. Worked example (Orbit 5)

If \(a = 2.8\text{ AU}\) and \(M_\star = 1.0\):

$$P_{\text{years}} = \sqrt{\dfrac{2.8^3}{1.0}} \approx 4.69\text{ years}$$

$$P_{\text{days}} \approx 1710\text{ days}$$

Wednesday, February 25, 2026

Eldritch Gits Character - Franklin Deleanor Smith

We're starting a new game, Eldritch Gits. I'm playing a 4-term soldier who went into the Infantry. As I've mentioned in the Space Gits & Fantasy Gits games, the Gits series takes after Traveller a lot in terms of prior history. You go through each term, gains some skills or abilities, and have an event. I managed to go all 4 terms, the max, without going to prison. As did 2 of the other players. One ended up in prison for initially a 3-year sentence but apparently misbehaved and had 4 years added. Though he ended up getting out a year early for good behavior. 

Randomly rolling my background, Frankie is born to poverty. Born 1893 to an impoverished family, he decided the Army was his way out of the wrong side of the tracks. His first term he gained a bit of smarts due to a good Army education. He also improved his dexterity and gained the Athletics skill. His second term, he specialized and joined the Infantry, learning the machine gun skill as well as gaining even more dexterity and strength. His 3rd 5-year term he had a strange encounter with a gypsy: he learned he was going to die on a boat. And as a side note, the GM had already said we would eventually be on a ship later! I feel I need to play Frankie like Mr. T in the A-Team and refuse to go on boats instead of flying! Frankie also met another player's character in prison. We were doing 1 term per player rounds, and one had "you meet someone" and it ended up being me. As we both ended up being enforcers for our gang later, this was our initial bonding apparently. In the final term, I gained some more skills and also made a pact with something "dark" for a favor. I asked for the name of the boat I was going to die on. Which oddly gives me a sense of immortality: if I never get on that boat I won't die! So Frankie can be pretty aggressive about a few things as he feels he won't die until he is on that boat. 

And I also just realized he would have been in the Great War, World War 1. That was July 1914 through November 1918. He was 19 when it started. And actually, let me see when his birthday is: d12 = June, and a d30 = 17. June 17, 1893. Here are some events for the day little Frankie was born:

  • Gold is found in Kalgoorlie, Western Australia.
  • The overthrow of Queen Liliuokalani in Hawaii occurred, with American planters establishing a new government. 
  • The Wengernalpbahn railway in Switzerland was opened, connecting Wengen to the surrounding areas. 

Frankie has 4 siblings, 4 younger brothers: John, William and James (top 3 most popular names in the 1890s). Random rolls all ended up being younger brothers. Only 1 was also in the Army for the Great War, John, who is a year younger than Franklin. 

After we all went through our terms, we ended up with 2 enforcers and 2 brains of the party. The other players had some fun backgrounds, especially the one who went through prison. The brains of the party also have eldritch books - what could possibly go wrong?! We have a speakeasy behind the Hurricane Books and Curious. We've hired Joey, a kid, to keep watch for the cops, and added a poker table to the roulette table. Currently we get our liquor and load it through the loading dock at the back of the bookstore, which has a hidden door to the speakeasy. We added curious to the name to explain the potential sloshing of the boxes: snow globes, why yes, we do import snow globes. 

I want to play him as a brash person: he lived through the war and saw the atrocities that man can inflict on fellow man. One of the reasons he joined the gang to operate the speakeasy: man can be cruel, and you may as well fleece them for what you can as they deserve no better. His 20 years in the military taught him to be punctual, dress for the environment, and have a firm sense of hierarchy and command structure. Not sure which of the brains, Dr. Theodore "Ted" Knight or Dr. Winston Forrest Roberts, is the one at the top of that structure. But he views Tommy McCaffery as his equal and treats him like one of his younger brothers. The 2 doctors he will always respond with a "sir" in there somewhere as his army career never got him much higher than a sergeant or some NCO level. He also feels invulnerable and will take risks he should not. But refuses to get on boats. And perhaps also looks over his shoulder a bit, wary of that pact with something dark. He sleeps with the lights on, and a knife always strapped to him. 

Still poking around to find a good character image. 1930s soldiers are not hard to find, though I do want drawn art versus photos. For some reason I really don't like using real people for my games. One of my many quirks I suppose. 

most of the character sheet






Sunday, February 15, 2026

Traveller System Update 29 - finished data entry and refactored details

Yes, I had a bit more time today as both my regular gaming sessions got cancelled. Life and family happens. And I wanted to get the software to a better place than I left it yesterday. And I needed to get off the couch. I did finish putting in the world details, and then I refactored the planet controller. I was specifically calling the trade classification service which takes in a planet's UWP and spits out a list of trade classifications. We really only use the name, and, as I mentioned in the last post, we're going to be adding more planet details beyond the trade classifications. Such as the world details for gravity, surface area, etc. 

I added a "Planet details service" that will return a dictionary, basically the title and a list of strings. For our trade classifications, dictionary is "Trade Classifications", list of trade classification names. But it will also return (eventually) things like "World details": "gravity 1.125", "escape velocity 12 m/s" and so on. I updated the view to basically take that list and the "title" is a <h5> header and then list the details. 

This means we can add whatever we want to the details and the view will just show it automatically. Pretty easy and generic. Later on thinking we could even add formatting info somehow.

The new service:

using TravSystem.Models;

namespace TravSystem.Services; public class PlanetDetailsService : IPlanetDetailsService { private readonly ITradeClassiificationService _tradeClassificationService; public PlanetDetailsService(ITradeClassiificationService tradeClassificationService) { _tradeClassificationService = tradeClassificationService; } public async Task<Dictionary<string, List<string>>> GetDetails(TPlanet planet) { Dictionary<string, List<string>> results = new Dictionary<string, List<string>>(); List<TradeClassification> trades = await loadTradeClassifications(planet); results.Add("Trade Classifications", trades.Select(x => x.Name).ToList()) ; return results; } private async Task<List<TradeClassification>> loadTradeClassifications(TPlanet planet) { List<TradeClassification> tradeClassifications = await _tradeClassificationService.FindTradeClassifications(planet.UWP); if (tradeClassifications.Count == 0) tradeClassifications = new List<TradeClassification>() { new TradeClassification() { Name = "none" } }; return tradeClassifications; } }
And then the controller just does:
// GET: TPlanets/Details/5 public async Task<IActionResult> Details(int? id) { if (id == null) { return NotFound(); } var tPlanet = await _repo.GetByID(id.Value); if (tPlanet == null) { return NotFound(); } ViewBag.Details = await _detailsService.GetDetails(tPlanet); return View(tPlanet); }
and then the view:
@{
    ViewData["Title"] = "Details";
    var details = ViewBag.Details as Dictionary<string, List<string>>;
}
....
@if (details != null)
{
    foreach (var kvp in details)
    {
        <div class="mb-3">
            <h5>@kvp.Key</h5>
            <div>@string.Join(" ", kvp.Value)</div>
        </div>
    }
}
and voila, details!

While working on this, somewhere along the line I wiped out my trade classifications data. I put it all back in using the T5 book. But I did not use commas, and that broke the service. I started putting in commas between each value, then the lightbulb went off - this is pseudohex code, so 1 character per value. I updated the service so that for each line if there are commas, it will split that way, else will split per character. I do need to verify it is working correctly but it does save on some data entry. But it is all or nothing.
ugly mix but allowed
The Wondrous Worlds is setting next to me at my desk. I'll probably do a overview/review of it in the next post or two. I'm also re-reading The Science of the Mind - I used it as a resource for my master's thesis way back and it has been sitting on my science shelf the last 30 years. So figured I should either re-read it or put it into the used bookstore pile to go. Not sure my brain is still up to that!
And yes, halfway through February already. Tempus fugit. And fugits faster as we get older.


And just in case anyone wants to look at the code: https://github.com/COliver988/TravSystem

Saturday, February 14, 2026

Traveller System Update 28 - World Data

I felt like getting back to this for a bit. Originally, I was going to start adding some stuff from the World Builder's Handbook but, after finally finding that (the Mongoose version, sadly I just have the PDF but the book is too $$ for me!), and looking at how it did something, I remembered that the Scuts book also had more details. Specifically, I was looking at calculating the gravity for the world. And there is a World Data table on page 48. 

It is now added to the software. I've not finished adding my data, nor added that to the planet details yet but probably will over the weekend later. Meaning I may add a new "planet data" service that this is just the start of. I want to add those quirks about society, the physical details like albedo maybe. And eventually create the animal encounter tables. With events. At least that is the current plan.


I also got the Wondrous Worlds book and will see about doing a preview. Yes, I do seem to do a bit of world building. And probably have far too many books for stuff like that. On the other hand...



Sunday, February 08, 2026

Corsairs Session 5: The Leiford Mines

Returning to the Dulcet Spire, Captain Penny gets 2nd mate Smitty to sell the sky whale meat they managed to harvest before the predators started in. Plans were being made: Smitty, John and Leslie, crew members, were to explore and check out the slave market on the Spire. During discussions, they did find that he Leifords did free some Batkin children, and that they found something strange deep in the mines. While discussing plans with the officers, a bosun alerted the captain that Mathew Roberts was requesting to come aboard. After brief greetings and an apology about not being able to get to the trade station at the appropriate time, Mr. Roberts said that the Navy seemed to be concerned about the Wind Razor. The crew did not all wear the appropriate uniforms, and apparently the Apderil Empire has a fairly strict uniform culture. He also had a map of the mines. Which apparently, we all forgot about. I had a couple mine maps ready to go and they never made it to the table. Not really necessary the way we played that scenario.

Deciding that perhaps their stay was over, they sent a runner to the slave market to retrieve their crew and took off post-haste. They did send Smitty to the Harbor Master's office to see if they could get a prorated amount of their docking fees back. Smitty is not a good bargainer: they almost had to pay early termination fees (snake eyes on the attempt. The players should not have let me roll!)

Leo, the pilot, despite several weeks of learning his craft, is still not particularly good with directions. They do manage to get to the mine, only 6 miles away. The fly closer and the officers debark behind the mountain where the guard tower cannot see them. Partway there, there are attacked by a carapaced creature of the Corsair world. Batrina was made aware and not wanting to alert the guard in the tower, drew steel. The battle was fairly swift with Tibbs, the dragonet, putting in the killing blow. And taking a bite to eat. 

Guard tower and mine entrance

Behind the tower, Tibbs provides a distraction from the guard as Batrina climbs up. A brief struggle and she knocks out Frank. The others climb into the crowded tower to decide on plans. There is a hatch in the middle of the floor that leads to the lower section. It is mostly a small storeroom: a barrel of water, some emergency food, and some swords, cross bows and bolts of arrows. 

Henry, the sneakiest of them, goes to the mine, and seeing no one there, sneaks into the passage. The player had a fantastic roll - all successes so he got as far as the barracks before hearing voices. Peaking around one door, he sees the kitchen with a couple guards and several slaves preparing a meal. Across from that is another door, leading to the slave barracks. Hearing that one of the guards, George, is about to head back with food for Frank, Henry darts back out of the mines and up to the tower to alert the others. And just barely in time: George yells from the storeroom that food is ready. Batrina opens the door and lands on top of him. Chili and crackers are everywhere.

A new plan is hatched, and Penny and Leo take the guards' coats, and they all head down the mine shaft. The other guard there, Hedley, looks up to see who is at first assumes it is George as Penny has a chili-stained rag up across his face. There is a quick scuffle, and the guards are trussed up. 

We went through this part pretty quickly: they promised to either take on the slaves as crew (and 5 accepted) or be taking out of the Alderil Empire (the remaining 3). Even though the Lieford slaves live a relatively decent life, it is still being a slave. They find that there were Batkin children in the mines about 6 months back from one of the laves who only had 7 more years (and I'll be frank: the older I get the fast the years go by! Well, actually, Frank is one of the guards and I am Craig <insert canned laughter>). 

They go to the office and find ledgers, including the one indicating:

2 Batkin children, ages appear to be early teens. Remanded to the Batkin Embassy 56 Day Year 1409

And this is where we left things off (with the slight update as above, so now we know that there is a Batkin Embassy somewhere). 

While I think I was a bit better organized this time around, I also feel that we're just sort of wandering in the desert with no real end game in sight. I think I need to give a bit more direction: the characters are privateers for the Repencarras Domain. While they have taken out on Alderial Empire ship in this game, it has been more personal as I am also trying to tie in the characters' background. We've rescued 1 father, that lead to clues to the 2 missing siblings, the Batkin above. So we *may* be able to see about rescueing them or finding out what happened to them. But I think I may have to slip them a note from the Repencarras Domain to remind them of their primary duties: harass the Alderil Empire. Which, now that I think of it, they are doing it if they are messing with mine operations. As those do get tithed to help pay for the government. So, yes, they are doing their jobs!