Campaign tracking for Space Infantry

Campaign tracking for Space Infantry

Space Infantry Resurgence comes with all of the tokens and cards that you need to track inventory, resources and wounds while you play a game. The physicality of the pieces is one of my favourite aspects of the game as is the ability to visually track it all on the table as you are playing.

The campaign game is a different beast altogether and it can benefit from the addition of digital tools to help you track the missions and the state of your squad. The boxed game comes with printed campaign sheets you can use and the Space Infantry Resources section on the Lock ‘n Load Publishing forum has PDF versions that you can print or use on your computer or tablet to track your information. If you are like me though you want to have more control over the campaign and mission data and so you might look at using spreadsheets or other knowledge system applications to help track your data and store your data for those situations where you need to clear the table for some other purpose. I have built campaign tracking tools in two different applications and I will explore how I used them both and what each can do to help you as you play your campaign games.


A Space Infantry campaign can involve tracking a lot of different values and one way to do that is with a spreadsheet. The spreadsheet that I was initially using (more on that) was created using the Numbers app for the Mac. There are two reasons for this. It comes for free with the Mac and, much more critically, it makes it the spreadsheets more visually appealing. I place a significant amount of value in the appearance of the tools that I use and so Excel or Open Office aren’t my tools of choice. I also find that Open Office (or Libre Office) both have absolutely horrible user interfaces and frankly life is too short to put up with that sort of nonsense.

Its better to look good

Numbers has two features that make it useful for building these types of tools. First, tables are individual elements in the application and a ‘sheet’ in numbers is a blank canvas that you can use to add tables, images, type shapes and other elements. So it allows you to create layouts like this:

This is the Campaign tracking sheet I created for my current campaign. It has all the data from the printed Campaign sheet from my Space Infantry Resurgence boxed set and I can enter in the data for each mission as I finish them and track my VPs. The small box tracking the VP total is actually a single cell ‘table’. I extracted some visual elements from the Space Infantry Resurgence rulebook PDF and also downloaded free versions of the fonts used in the rulebook so I could make my campaign sheets fit in with the visual style of the rules and game components.

I did something similar for the Squad Sheet as well.

All of the Traits available are paired with a set of checkboxes to let me mark which Traits I have used and the unit entries have dropdown menus to let me select things such as the state of a unit.


The second reason that I am fond of Numbers is that I can use the scripting and automation tools on my Mac to access and repurpose that data in other applications if I so desire. I can select tables and put them into word processing documents for reports or to even take the data and send it to other applications for processing or repurposing.

The spreadsheet I have built for tracking my SI campaign doesn’t currently require that type of automation but it is always good when you can do so as we will see later in this article.

Just the facts ma’am

Spreadsheets are great for storing data and applying conditional styling to items based on other data. So you can store the campaign victory conditions in a sheet and then use that data and your current XP value to colour your current XP total to indicate how well, or poorly, you are doing. Where Numbers lacks features is in areas like complex conditional formatting. So you can’t change the colour of the name of a unit based on the value in a dropdown menu. This is a major issue for me and is probably why I tend to always be on the lookout for way to fully represent the data I am tracking.

I also have a sheet to track unit data while I am playing.

This actually hasn’t been used as much as I would have thought but it will come in handy if I ever have to play a mission on a smaller table where I can’t use the unit cards and tokens to track wounds. The Mission Resources table has been quite useful though as it makes it a snap to track which Resources I have used or have left. I actually find using the tokens for this to be a bit cumbersome at times.

Future plans

I plan to add a STRATOPs table to the document to track which STRATOP cards I have and which ones I have used in the campaign. I didn’t think that it would be as useful since there are cards for each STRATOP option but in the few campaign games I have played it has been troublesome keeping the cards organized.

Now earlier I mentioned that I don’t actually plan on using that spreadsheet going forward. There are two reasons for this. First, any spreadhseet application is not going to allow you to take notes while you play. This is, at least to me, a fairly critical feature for tracking my campaign. Secondly, it is difficult to expand the features available in a commercial application. Luckily there are options available.


While a spreadsheet is handy, there are a number of areas in which it is not useful. Spreadsheet applications also don’t let you link to data in a way that is useful or meaningful to human beings. You typically can’t create a table for your Support troops and then include it in another sheet or table or create a link to allow you to view it.

This is where applications like Obsidian are useful. Obsidian is a class of applications called a ‘knowledge base’ and it allows you to create and reuse content throughout a document, link to it, access it programatically and create views of all of your data that include specific pieces that you want to use. Obsidian is free (but not Open Source) and it keeps all the files and data that you create locally so you won’t ever have a service provider go out of business or lose a password to your data. It is available for Mac, Windows, Linux and both Android and iOS.

It also uses Markdown which is a text formatting system that lets you quickly type out formatting commands which are then rendered into HTML when you view a document. You can quickly create tables, embed images and even create links as easily as typing.

So you can type this:

##### Mission S003: End Run 
*Somehow, the enemy has taken the Meridian Gate, that puts them 5 jumps from Sol, and opens the entire inner reach to direct assault. We don't have time for a full deployment to take it back. Destroy it.*

**Objective**: Complete an encounter check on Mission Node 03 to destroy the Meridian Gate. 

**Special Rules**: Low power: When a squad reaches a Node with A or B lower power symbol, after resolving any encounters, roll an RN.

| Roll | Result |
|:---: | :---- |
| 0-3 | A is usable|
| 4-5 | B is usable|
| 6+ | Both are usable |

**Zero-G**: When on a Node that has a zero-g symbol, all units without the zero-g skill receive a -1 AP penalty to all skill checks. 

**Automated Defences**: All class A events on a Space Node instead fight 1 drone if triggered.

And have it look like this when viewing the document:

The Markdown format is supported by an enormous number of applications and online tools so the work you put into formatting and linking your data won’t be wasted. In fact this article was written using Markdown in a different application. And since it is just plain text it also means that your data is future-proof and also less prone to catastrophic user editing errors.

Notes and more

One of the primary uses of a tool like Obsidian is to let you quickly write notes which means that you can write and format game information easily as you play. You could do this using multiple apps but I rather like the idea that everything you need while you play is in a single window. As you build up your campaign material you can also quickly link to previous items as well. The application even helps to make this easier by filling in the paths to other notes or images for you when you attempt to create a link.

You could, for example, quickly add a link to a map of a previous mission or even a link to your Squad Leader or the unit list for the mission.

Obsidian will also track those links for you and present a graph of them but that is probably outside the scope of what a Space Infantry campaign would need. Unless you played a lot of campaign games.

Programming and plugins

If you are so inclined you can also write your own Javascript code to expand the features in Obsidian either by creating your own plugin or using the CustomJS plugin to write code that can be accessed from within Onsidian. One of the first things I wanted to do was create a way to replicate the chit pull method of RN generation which is my preferred way to play the game. There is a dice rolling plugin for Obsidian that has a number of options available but the chits in Space Infantry Resurgence have a fixed number of counters that are used and also have the ‘+’ token that requires you to draw two chits and add them together.

I spent quite a bit of time trying to use existing plugins to create an accurate simulation of a cup with some tokens in it and eventually had to just write my own Javascript code. The beauty of Obsidian is that you have this as an option if you want to do so.

If you don’t want to do that sort of thing the dice roller plugin allows you to do simple D6 or D8 rolls or even define a system similar to the Extended Dice method using the Conditional rules feature of the plugin.

Data out and data in

When I first started to create a tool to help me track my SI campaign game data I started out with a spreadsheet. It is my default solution. It quickly became apparent to me that I would not only need to track data but to also write notes and link them. I was using Obsidian for another task and decided to try it out.

I needed to get the Space Infantry unit data from my spreadsheet and into Obsidian. I also needed to create a series of page for each unit so I could access data for them and possibly make notes. The first part was simple enough to do. I exported the Unit data from Numbers as a CSV file and then opened it in an app called Easy CSV Editor. It has an option to export data in Markdown table format so I can easily convert the spreadsheet into a Markdown table with almost no work on my part.

Turning my CSV data into this:

Which is rendered in Obsidian as this:


I also wanted to create individual pages for each unit that had the individual stats as well as a link to the unit’s card image. I don’t have any plans for this data at the moment but it is better to have it now than have to get it all out at a later date. One of the most useful plugins for Obsidian is Dataview. It provides tools for you to query sets of pages in Obsidian and display the results. This means that you can create pages in a directory and put data in them which you can then query. The plugin uses YAML to format the data. YAML is a ‘human readable’ data format which mostly means that it is a simple way for you to enter your own data and then have it read and processed by your computer. Here is an example of the YAML data for one of the Space Infantry units.

Once you have that data you can create custom views for yourself for things like, for example, all of the units that have a Cost of 10 points.

Now you could enter all of that data yourself but I am incredibly lazy and so I wrote an AppleScript to process all of the data in the Numbers spreadsheet and then create the pages and add the YAML data to them. It took me a few hours to write and test the code but I know have the ability to recreate those pages if the units are ever updated or new units are added to the game. You could also do the same using Node if you were so inclined. I am not sure what automation tools ship with Windows or Linux so I don’t have any idea how to do the same on those platforms other than using Node.

So what does all of this mean?

The reason that Obsidian is a great tool for tracking your campaign data is that it scales with your technical ability but remains functional and useful no matter how much of a tech-geek your are. If all you want to do is make some tables with your units in them and then link to pages with mission notes you can. You can also add more technical features if you want. There are many tutorials and online documentation that you can use to build up your skills if you want.

You can easily add metadata to your pages as you write them and then if, in the future, you want to use it you can. Since that metadata is also plain text it makes it very simple to add something like this

campaign: C001
mission: S003
turn: 1
enemy: Mercenaries

to each of the pages you make for a mission report and then later us it to build lists of mission reports if you want.

I am still experimenting with how I am going to use Obsidian but the exciting thing about the application is that I am never stuck with a setup or file format. I can expand and adapt as I go one and none of my work is made redundant if I later change how I want to use it.

Going forward almost all of my AARs are going to be tracked and written using Obsidian. I may not ever need to use all of that content in a more complex format or to mine it for new content but it is nice to know that I will have that option if I want to. This is not something that you can say using applications like Office or even the ‘Office like’ applications on the Mac.

Zac Belado
Author: Zac Belado

Zac is a wargamer from Edmonton, Alberta Canada. When not trying to figure out a new set of rules or cut the corners on counters he is busy building websites.