Saturday, June 14, 2025

Traveller System Generator Part 15 and More Corsairs

Traveller System Generator


I have no idea why I did not originally have what system a planet belongs to. That has been corrected, and now the system details page will show the planets for that system. And you can click on the planet name to get to that planet detail view. And I just realized - I need to be able to pick the system for the planet when creating them. But that should be pretty simple.
updated system details - now with planets!

My last update had directions on how to install the software - no idea if anyone has tried. It honestly does not do a whole lot and there are a lot better resources out there. But eventually I hope to get it to something useful!

I've not had a lot of time to get to this as I was visiting family last weekend, and sometimes a small break is good. But I am hoping that there will be at least semi-monthly updates as I do find this fun. Which makes me a lucky person - I actually enjoy my job and what I do. So much that I write code even in my free time! 

Corsairs Game Prep   

I think I have the theme I am going to run. First, one of the players is an ex-slave, so that will eventually feed into the game as only one of the 3 main political factions has slavery. Next, stealing inspired by the books, one of the Spire factions (which are more like city-states and independent of the larger island political groups which is from the original Corsairs books) has managed to get an ethericist able to control some of the huge beasts, and will be striking at both Spires and islands. The group, while initially attacking foreign ships, will hopefully build up a sense of the bigger picture. Which I still have to draw out, but I have a bit more than just the concept of the plan at any rate. But I have the opening chapter in my head at least though I need to write down the details. And I have a few big things plotted out, just need to wrap them up in a way that will work for the game.

I've got the backgrounds for most of the players, and we are stretching a bit beyond the original Corsairs. The world is now above jungles instead of the molten seas, and as I think I mentioned, basing a lot of this on some Jim Butcher books, the Spire series. This is the intro to the world:
Corsairs takes place on a world with floating islands above a ferocious jungle teeming with violence that few can survive. Amongst the islands are 2,000 meter floating cylinders made of spirestone. While the majority of the human population lives in the Spires, many still opt for the floating islands.
It is a world of flying sail ships, floating with the repellium that keeps the islands afloat and powered by the winds. Many political factions exist – the Spires are basically city-states. The islands tend to keep to themselves, trading with each other as well as the Spires.
You are privateers for the one of the island factions, the Greens. This is a small colection of islands almost in the middle between the three island factions.
It is a time of sword and canon. Gunpowder is available but seems unstable. However, the Spires also grow crystals that can harness etheric energies. These crystals can be used as weapons but tend to heat up fast. These same crystals are what makes the ships fly as well as the repellium: there is either a lift crystal or a huge chunk of repellium in the center of ships that let them float. Ethericists can also harness the etheric power of crystals directly, but this rewires the brain and most tend to develop odd quirks. The jungles below are full of dangers: it is where creatures live that can rip through an unprotected village in moments. The skies above are also dangerous – the spires and islands float in a relatively safe space between the two dangers.

And those Spires are actually made of crystaliron - this is a very post-apocalyptic world that is recovering. The players and their characters do not know this (unless they read this blog which they usually only do when I post game recaps) but that's okay. It may come around at some point and they can figure this out. I could even make it eventually a Traveller game - a system way out or maybe in the collapse of the Imperium. Probably not but the option is there to sneak into a Traveller game :)

And poking around, I found an artist that has some imagery I like that matches some of the ideas I have. His artstation link is here, and where these pictures come from: https://www.artstation.com/artwork/mgqX9






Related Posts for Traveller System Generator

https://traveller-ct.blogspot.com/2025/04/traveller-system-generator-part-1-of.html

https://traveller-ct.blogspot.com/2025/04/traveller-system-generator-part-2-of.html

https://traveller-ct.blogspot.com/2025/04/traveller-system-generator-part-3-of.html

https://traveller-ct.blogspot.com/2025/04/traveller-system-generator-part-4-of.html

https://traveller-ct.blogspot.com/2025/04/traveller-system-generator-part-5-and.html

https://traveller-ct.blogspot.com/2025/04/traveller-system-generator-part-6.html

Part 7 towards the bottom here

https://traveller-ct.blogspot.com/2025/05/traveller-system-generator-part-8.html

https://traveller-ct.blogspot.com/2025/05/traveller-system-generator-part-9.html

https://traveller-ct.blogspot.com/2025/05/traveller-system-generator-part-10.html

https://traveller-ct.blogspot.com/2025/05/traveller-system-generator-part-11-and.html

https://traveller-ct.blogspot.com/2025/05/game-switching-traveller-system.html

https://traveller-ct.blogspot.com/2025/05/traveller-generator-part-13-settings.html

https://traveller-ct.blogspot.com/2025/06/traveller-system-generator-part-14.html

Wednesday, June 11, 2025

Traveller System Generator Part 14 - An Attempt At Directions

Figured I'd try & put better directions on how to download and run the software that I've been working on. Especially as someone asked over on COTI. 

First, I'm using the MIT open-source license which I think is the most open. Basically, you can do anything you want with it. All the code is in GitHub here so you can click the various things there. To download a zip file of the code, you can select the "download zip" via the green Code button:

click the green <> Code button and at the bottom is download zip
This will download a zip file. Windows, Linux and Mac should all be able to open that file. It will be named "TravSystem-master.zip". Unzipping that file where you want, and you will have a top-level directory TravSystem-master.

In that directory there are several files you can ignore - I was playing with Docker so there are some files there. The other files:
  • License.txt = the license
  • readme.md = a markdown file. plain text, markdown is a lightweight formatting markup thing.
  • TravSystem.sln = the Visual Studio solution. Unless you have Visual Studio, it does not do anything for you. It is the configuration and stuff for that development environment.
  • .gitignore and .gitattributes = source control stuff.
Opening up that directory you have a bunch of folders, and several files. If you are running Windows, and using the File Explorer, you can right-click in there and open a terminal there. For a Mac you will need to open a bash shell there. For that, you just open a terminal (hmm, "just open a terminal" => hit the cmd + space bar to bring up the application launcher, start typing "terminal" and you should be able to open a terminal session. Not entirely sure you can do this directly in Finder as you can in File Explorer but that would be easier if so. Else you will need to get to where you unzipped that file. Note that for bash, the command "ls -al' will list the files, and "cd" is used to change directories. If you have questions, please leave comments and I can address those directly)
open a terminal session in the TravSystem directory

Then type in "dotnet run", and it *should* try to build the software then leave a bunch of stuff in the terminal - this is actual program running. BUT: it is a web site, and you will see in the console what port it is running on:
the web site is running!
Go to your browser of choice, and in the URL enter "localhost:5269" (note the " Now listening on: http://localhost:5269" which is just telling you that you have a service, in this case the Traveller software, listening at port 5269). 

Doing that you should now have the site up & running. It has already created your local SQLite DB in that directory.

On a Mac it should do the same - while I want to think it will attempt to download .NET if you don't already have it, I am not sure that it will. Hard to test on my Mac as I also write .NET code on there, so I installed that a while ago. If you need to install .NET 8 (which is what this runs), you can go here to download it: https://learn.microsoft.com/en-us/dotnet/core/install/macos. Pick .NET 8. Note this also works on Linux:

your OS of choice
Just closing the web site does NOT stop the application. On the terminal you started it on, use "ctl-C" to stop that process (same for Windows, Mac and Linux). 

Hopefully that helps!

Files in the TravSystem folder

This is a MVC (Model-View-Controller) type of web site. Though organized a bit differently as I tend to experiment sometimes, but should be basically recognizable to any web developer (and I still maintain I am not a web developer, but I may have to admit it sooner or later)

Controllers - this is the directory that has the various controllers. This tells the browser where to go basically. You can see that there are files for all the things we want to do: Home, TAtmosphereController.cs for all the atmosphere stuff, and so on. Each file (and they are text files so you can look around) are really pretty similar - some initialization stuff so we have database access, an index to show all the stuff, details for showing details of a specific thing and so forth. Each of those actions maps 1:1 to the views, which we'll get to in a bit.
Data is where we have data-related stuff. The Models directory has the models - the software representation of the things like law level, government and all that. The Repositories directory contains the repositories - the actual "read and get from the database" stuff. They are all pretty similar as well. We initialize them to be able to connect to the DB. The RepositoryContracts are the interfaces for the repositories. I am using dependency injection, so we need to basically be able to define a contract. If really curious I can point you to a better explanation than I can give. There is also the TravellerDbContext.cs file which basically sets up the database to be able to read the data. There is also a bunch of other things telling the system how the tables interact. 
Migrations contains the SQL scripts to update the DB. as I add and change things. we need to keep the database updated. I've set this up in the startup to automatically check. So if I make an update, and you want that, you will have to probably make a copy of the DB, save it, follow the stuff above, and stick the DB back in the TravSystem directory (Traveller.db). 
obj is the compiled code and all that and gets created when you run the software.
Properties just has a launchsettings.json file, telling how to launch the web site. I never mess with it - one of those auto-created things with .NET.
Services holds all the various services, cush as the TPlanetGenService.cs file that does the actual planet generation. 
Views contains all the views for the controllers listed above - this is where you can find the Index and Details views. A view is just a web page. Like this blog post. There is 1 folder per controller and is the actual web page. There is a Shared folder that has views common to all views. 
wwwroot contains the "public" files for the site, such as CSS, javascripts and stuff.

There are then a few files - the appsettings...json files are application settings - you can have settings per environment you run in but the one that you use is the plain appsettings.json file which really has nothing in it. Usually, you set up logging info and stuff like that. 

The big file that actually starts the site is the Program.cs file: this is where we add all those repositories and services to the dependency injection container so that they are available where we need them. It also sets up a few other things (controllers, the DB and any migrations it may need to run). There are several things I could probably remove as there is no authorization but it is boilerplate code.

Related Post

https://traveller-ct.blogspot.com/2025/04/traveller-system-generator-part-1-of.html

https://traveller-ct.blogspot.com/2025/04/traveller-system-generator-part-2-of.html

https://traveller-ct.blogspot.com/2025/04/traveller-system-generator-part-3-of.html

https://traveller-ct.blogspot.com/2025/04/traveller-system-generator-part-4-of.html

https://traveller-ct.blogspot.com/2025/04/traveller-system-generator-part-5-and.html

https://traveller-ct.blogspot.com/2025/04/traveller-system-generator-part-6.html

Part 7 towards the bottom here

https://traveller-ct.blogspot.com/2025/05/traveller-system-generator-part-8.html

https://traveller-ct.blogspot.com/2025/05/traveller-system-generator-part-9.html

https://traveller-ct.blogspot.com/2025/05/traveller-system-generator-part-10.html

https://traveller-ct.blogspot.com/2025/05/traveller-system-generator-part-11-and.html

https://traveller-ct.blogspot.com/2025/05/game-switching-traveller-system.html

https://traveller-ct.blogspot.com/2025/05/traveller-generator-part-13-settings.html

Sunday, June 01, 2025

Game Prep: Corsairs, Brass Rings

Going to be running 2 different games as we take a break from TFT (and a long-running game that we only managed to get together every 2-4 weeks, so it got more disjointed than I liked).

The Corsair game is going to take a different world, though, than the original game. Borrowing heavily from Butcher's Windlass series, we are replacing the Molten Sea with a vicious jungle that no one has ever survived in. Plus we have the Spires, large floating cities made generations ago from Sunstone by unknown people. We will still have floating islands and repellium, but I am also adding in the crystals that can aid in flight and be used as weapons as well. And as 1 player does not like to play humans, we will need to throw a few other species in there. The books have 2 others we can use readily: intelligent cats that, while lacking hands, are used as vermin hunters. They have their own society in the warrens of vents that transverse the spires, as well as living on the islands. There is also a warrior-type of breed that are stronger, faster and shorter lived than humans. Cat people of a sort. They are also looked down on by most people and many consider a second-class citizen. Not all. Mechanically, they have to use their 4d6 stat for "mighty as a lion" (aka strength) but will also get a 4d6 for the "nimble as a mountain lion" (aka dexterity) and the 2d6 for intelligence, dense as a sack of potatoes. They will also get a negative social reaction score sometimes, depending on who it is. The military respect them as powerful warriors, but the upper class mostly see them as servants only. 

I'll leave it open for more races - we did add a very Dwarven-style race last time. I'll share this link with the Saturday game group, and we can start figuring out what kind of character (and what species) the players want to play. And then get a bit of background. 

I also have the Windward game, so actually have a lot of flying ship minis if we need them. And yeah, I did get the big box expansion with all the stuff. Still have yet to play the game! But I obviously need to have some ship-to-ship chasing and combats! Of course, the ships do not have to be traditional galleons - I found some really interesting ships back when I ran the 1st game.

Wish I knew who to attribute these to!
Flying ships!

For Brass Rings I am going to continue along the 1st adventure. This time though our 1st 2 antagonists have gone missing in Endkeep Station! Dr. Crackers and Miss Meadowheart's parents are mounting a rescue operation. While I doubt the Circada Gang in their steam jalopy will attack the train again, I do have several ideas to expand that past Endkeep Station, and use some of the locations in the original book. I am also opening this up to any rodents as per the book. I've yet to get any character ideas from the Monday night gang but, as above, I'll send them the link to this post so they can have start to think about things a bit and figure out what sort of characters they want to play. There are "islands" out past the F Ring of Saturn that we can explore. Who knows, perhaps there is a library that connects to other libraries in this universe as well. Which reminds me - I need to add an Uncle Heimlich for Brass Rings!
draft map, with insert of Endkeep Station




Henrich of the Corsairs - do I need a different one as this next game is a different universe?


a possible Uncle Heimlich from Brass Rings. Perhaps Miss Meadowheart's uncle?