Field Deployments · Public Edition
Projects
A few side projects built outside of work. Click a title to expand it.
Average Roll Calculator
A dice-roll tracker for tabletop games like D&D and Pathfinder — log rolls per character, per die, and see your averages with and without modifiers.
I originally built this in Python, purely as a way to actually learn the language on a real (if small) problem instead of another tutorial exercise. Once I'd gotten what I wanted out of the Python version, I used the same project to learn C# next — rewrote it from scratch, and that rewrite became the project's main development branch going forward.
Features
- User-defined characters to keep rolls separated
- Tracks D4, D6, D8, D10, D12, D20 and D100 rolls
- Tracks a modifier for each roll
- Automatically calculates averages with and without modifiers
- Sortable roll table — by rolled value, modifier, or result
More features planned
Installation & usage
Windows only for now — download the .exe from the releases folder on GitHub and run it, no installer needed. Create a character, switch to the tab for the die you're tracking, enter the rolled value and any modifier, and hit Add Roll.
Helped jump-start the project: Zoe. Uses MarioZ's MadMilkman.Ini library.
Beat Saber Song Finder
Quick context: Beat Saber is a VR rhythm game where you slice blocks flying at you in time with the music, using a lightsaber in each hand. It's the game that got me into VR in the first place, and it's still one of my favourites.
Beat Saber supports custom, community-made maps for almost any song, downloadable from a dedicated custom-map site. I wanted maps for my favourite tracks, but manually checking whether each song from my Spotify favourites existed as a map was slow and repetitive. So I wrote a Python script that takes an .xlsx export of my Spotify favourites, checks each track against the custom-map site, and writes out a new spreadsheet listing which songs have a map available to download.
Existence isn't quality, though — a song showing up as available still gets a manual look before I actually play it, since a map might exist but be poorly made or too easy.
Server & Hardware Projects
- Private FortiGate — acquired through partner programmes; used to test the newest features and releases before they show up at work.
-
Pre-built NAS
, slightly modified with custom hardware — used for basic backups and as a small virtualization server.
- Automatic backups
- Doubles as an ad-free smart TV, controlled via phone and connected to the TV
-
Virtualization via Portainer
- Private Wiki.js instance
- Custom Pi-hole
Movie & Video Center planned