Tag Archives: projects

Skypirates! Development Log #2: RPG Layer

At the very bottom, Skypirates!1 is an RPG. World entities like characters and airplanes have rollable attributes, and those determine how they interact. Those interactions are out of scope today, though. We’re going to cover how the RPG layer works at its very core: the dice, or at least the simulated dice.

If you’ve been around a very long time, or spent a long time trawling the archives, you might have come across a set of rules for building zeppelins in Savage Worlds. This was the jumping-off point. Skypirates designs past used a step dice system Savage Worlds players would have found very familiar. Start at d2, and skills/vehicle characteristics go up to d12 by die size, then to d12+d2 and d12+d4.

That last clause indicates the problem: step dice have poor resolution. For a moment-in-time, quick-playing tabletop RPG, it’s sufficient. For a PC game where I expect the timeline to run from about 1922 to 1937, it doesn’t leave a lot of room for multiple generations of airplane, in a period of time wherein aviation technology would advance even more quickly than in reality owing to greater conflict between the major powers. It leaves even less room for variation in individual airframes2. So, regrettably, step dice had to go, simple as they are to reason about.

In abandoning physical dice as the underlying abstraction, I found myself wondering, “Why not a 1-100 system?” A number between 1 and 100 represents each skill or characteristic. To roll it, generate a random number between 1 and the skill value. Highest number wins. Hard to do with physical dice, trivial with computers.

It doesn’t quite capture everything, though, so I brought in an idea familiar to players of D&D Modern: advantage. Roll two dice, take the better result. But, I don’t plan on using it primarily for rolling character skills with a bonus. Instead, in a form I’m calling ‘capped advantage’, it’s a way to combine pilot skill with airplane characteristics.

Say a plane has Agility 50 and its pilot has Flying 70. I take that to mean that the pilot knows where the edge is, and can use every bit of the plane’s agility. So, behind the scenes, we roll Flying with capped advantage Agility: roll both skills, and take the better of the two, up to a cap of the best Agility result. If the rolls are Agility 37 and Flying 64, the pilot has hit the cap, and the final result is 503.

I’ll go into the representation of planes and characters at some later date, but I wanted to make sure we got through the week with some content here, even if it’s not the allegedly-weekly news update.


  1. While the exclamation mark is part of my official branding plan, I am likely to omit it in the running text for reasons of forgetfulness. 
  2. The Secret Horsepower Race relates a story of six production Spitfires, which varied in tested top speed from 330 mph to 360 mph. 
  3. I plan on doing something similar with aerial gunnery: roll the gun’s accuracy with capped advantage the pilot’s Gunnery skill. For simulation-fun reasons, lighter guns are more inherently accurate, but that doesn’t mean a pilot can shoot better than his overall skill just because the gun helps. 

Skypirates! Development Log #1: Introduction

You may remember Random Carrier Battles, if you’ve been here for long enough. That project is now abandoned, because modern alternatives like Task Force Admiral exist, and although they lack the Random element, they hit the Carrier Battles part of the project with more verisimilitude and much prettier graphics.

But the germ of the idea stuck around, and a better, easier 2d engine in the shape of Flutter presented itself. The idea (small-scale strategy-game air combat in the Pacific) got me thinking: what other settings would fit this kind of design?

The Pitch

Enter Skypirates! (Exclamation mark included.) Skypirates! is a game of air piracy, zeppelin aircraft carrier combat, and high adventure in the South Seas. My current, very preliminary design document covers three main gameplay layers.

menu

Air Combat

Send your zeppelin’s air wing into combat against all challengers: other planes and airships, surface targets, ships at sea, and more. From your radio room, direct squadrons of your own construction, staffed with pilots and officers whose personalities and particular abilities affect the way dogfights play out.

Airship and Crew Management

Design a zeppelin, or choose from premade options, with which to tackle the unfriendly skies of the Far East. Pick and choose aircraft to fill its hangars, and crew to fill its cabins.

Careful weighting of the options will pay off! Pilots with certain temperaments and skills match certain planes better than others.

High Adventure

Daring deeds and thrilling exploits are just around the corner in every port of call. Choose your own path through branching stories of treacherous pirates, ancient civilizations, and treasures thought lost to the mists of time.

map

Progress

These are the very early days, so it’s time for some generalities!

Technologies

“Flutter?” I hear the technologically-inclined in the audience asking. “The mobile app framework?”

It is an unusual choice, but not an unreasonable one, from where I stand.

Reason one: I’m familiar with Flutter right now, thanks to work. It’s simple and expressive, easy to extend, and ludicrously cross-platform. (I don’t intend to support anything beyond desktop, though.) It being a UI-centric toolkit, it makes the hard part (pretty UI) easy.

Reason two: Dart has gone from a pretty good language to a great one, with the addition of null safety. It’s concise without being unreadable, I like having named parameters, and it doesn’t go overboard on the punctuation.

Reason three: it’s less opinionated than most game engines about how world and data ought to be structured. This isn’t an attack on traditional game data modeling practice, merely a note that I find it easier to reason about when there’s a world state on one hand, and a rendering engine on the other, and they only talk in strictly limited ways.

Design: Scope and Scale

The world map image above is a lot of the map, but not the whole thing: it runs from about the top of Honshu west to Afghanistan, and south to about the northern third of Australia.

In this alternate history, that region of the planet has all of the ingredients for a vigorous population of pirates: namely, a lot of territories belonging to a lot of different powers, most of whom are busy in their home theater(s) with more pressing threats, and all of whom want to obstruct their opponents’ progress in overseas holdings as much as possible. Nearly every player in Europe is represented somewhere on the map: Britain, France, the Dutch Republic (alternate history, remember), Germany, Italy, Portugal… There are American colonies too, in and around the Philippines, from all the several American nations, and local powers too.

Because I am lazy, I’m using Cartesian geometry instead of spherical geometry, so distances aren’t quite accurate. Eventually, that may change, if I decide to expand the scope of the world, but India, Southeast Asia, and some very near parts of Oceania seem like plenty of room to run to start with.

The world runs on one-minute time steps, and although positional accuracy is basically ‘as high as floating-point numbers allow’, I’m planning on an ‘interaction range’ of 5-10 miles, at which point other systems (dogfights, visiting a port or point of interest, etc.) come into play. Maybe. This part’s still up in the air.

The typical player faction is a single zeppelin, its crew, and its air wing, an independent with an eye toward privateering or outright piracy. The design likely admits some mild variations on the theme (employee of an aviation security company, a task force of two or three airships…), but those will come later if they come at all. As alluded to in the elevator pitch, crew will have relatively detailed character sheets, and crew characteristics and aircraft characteristics intersect somewhat. A pure virtuoso pilot might prefer a more agile machine, while a tactician might want something with better energy fighting. An instinctive gunner might do best with a few heavy guns, carefully choosing his shot. A more exuberant personality might prefer more ammo.

Characters under the player’s command get placed into three categories, to reduce skill management minutiae: the player’s avatar, over whose sheet the player has full control; officers, who the player can guide down certain paths; and ordinary crew, who level up and gain skills on their own, according to templates.

Design: Aircraft

All of which will be accounted for in aircraft design—although designing airframes is outside of the player’s scope. On the other hand, souping up an existing model, swapping its engine for a bigger one, or adding guns are within reason.

I have a lot more to say about aircraft, because getting the math down took a ton of effort, so I’ll save it for its own post.

Anyway, that’s a very brief introduction to a few parts of Skypirates! As I continue the creative process, I’ll have more to say.

Fishbreath Prints: the Glockblaster 3D

First, there was the Glockblaster. It’s parvusimperator’s favored carry Glock 19, with its micro red dot and its little compensator. Then came the Glockblaster 2 and Glockblaster 2.0, two USPSA project proposals parvusimperator and I both considered, then ultimately dropped1.

Now, there’s the Glockblaster 3D2.

The Glockblaster 3D is a project I’ve been wanting to tackle for some time now, and recent and upcoming stimulus checks provide the perfect excuse. I mean, the perfect reason. In short, the goal isn’t to build an everyday USPSA Open gun. The goal is to build a to build a .40 S&W3 Open gun using about as many 3D-printed parts as I can get away with4.

The obvious place to start, since the ground is well covered, is the frame. There are a number of options out there, but the best one was just released: the Defense Distributed G17.2, recently released by one Ivan the Troll, noted 3D printer gunsmith. It uses milled metal rail sections secured by pins front and rear, which helps out in a later step.

I may have gotten a bit ahead of myself, though—why a Glock in the first place, among all the printable options? Even if I’m not a Glock guy, the arguments in its favor I made in my Glockblaster 2.0 post still hold: the aftermarket isn’t there for any other option. The Glock is the de facto AR platform of the pistol world, even if the P320 has a better claim to the title given its design. Triggers, internal parts, and partial and complete uppers are all dead easy to find. Expertise is a bit harder to come by, but our very own parvusimperator happens to be a bit of a Glockhead, and is interested in seeing how this project goes5.

So, Glock it is. What do I want to get out of the project? As I alluded to earlier, what I don’t need it to be is a daily-driver competition gun6. I’m happy in Revolver, and plan to shoot it to the near-exclusion of all other divisions for some time to come. So, the Glockblaster 3D doesn’t have to be especially reliable, or especially good at its job. It’s a 3D printing technology demonstrator on the one hand, and a silly range toy I can take to matches for the afternoon shoot on the other, and if it jams up or disassembles itself, so be it.

Unlike a lot of my projects, this one isn’t as simple as buying a bunch of parts and putting them together. I see seven steps between where I am now and a completed Glockblaster 3D.

Step 1: finish a frame in PLA

PLA is easy to print with, and durable enough to make a frame that’ll stand up to both 9mm and, eventually, .40.

So, to get my feet beneath me in the field of making Glocks from nothing, I’m going to to start here. I’ll print a frame in PLA, buy the rails and parts kits I need, and get to a working frame.

Step 2: finish functional 9mm build

Parvusimperator has a Glock 17 upper I can slap on to see if everything fits, and perhaps even if everything works live.

I don’t know if I want a 9mm upper myself, at least at first. It depends in part on what kind of money the US government decides to send me. Given the parameters of the project (‘build a .40 Open Glock with 3D-printed parts’), spending money on a 9mm upper seems like a distraction. On the other hand, if I build a 9mm upper using a .40->9mm conversion barrel, I’m only out the cost of a barrel, and then I have something to shoot between this step and the end of the project. Plus, I can modify the rail units as required for a .40 slide without having to worry about 9mm function later.

So, I guess we’ll see.

Step 3: set up the printer for nylon

For something with long-term durability, I’m going to want a better material. In the past, PLA’s strength has surprised me, and its mechanical properties are sufficient for printing firearms, but nylon has two advantages.

First: it’s slipperier than PLA, which is good for parts that interface with metal. A slide whipping back and forth on top of nylon will do less damage to the nylon over time than it will to PLA. Second, and more importantly: nylon has much better performance at high temperatures than PLA, and will easily stand up to a match on a hot day, or being left in a hot car.

To print in nylon, I’ll need a hotend for the 3D printer that can push filament at about 270C, or 30-40C hotter than is wise to push the current hotend can7. I may also need an enclosure for the printer, which keeps the print area hotter to limit warming, and will definitely need some filament drying supplies: a box with some spools in and a layer of silica gel on the bottom, to keep dry filament dry, and a food dehydrator to turn wet filament into dry filament. (And also, perhaps, to make beef into match jerky, although I’ll have to look into whether it’s safe to use the same food dehydrator for both items.) I think I’d probably want to invest in an air purifier for the printer room, too, not for nylon specifically but just because it’s good for our indoor air quality to suck up all those VOCs and microparticles.

All of that makes for a fairly expensive and fairly involved process, so that brings me to step 4, which I can work on at the same time.

Step 4: make a sight mount for the DD/FMDA Glock

SJC makes perfectly serviceable Glock sight mounts that don’t occupy the accessory rail and don’t block the ejection port, but they require drilling into the frame to make a second pin hole. The FMDA Glock, on the other hand, has a pin forward of the trigger guard, for the front rail unit, that can be used as a second anchor point (along with one of the locking block pins).

That front pin is featureless and thus easy to replace with a longer one. Both pins above the trigger guard, however, have additional features: the locking block pin is slightly dumbbell-shaped, with wider ends and a narrower middle, while the trigger pin has cuts into which the slide release fits to help retain it.

I am not a Glock guy, so I don’t know if those cuts are function-critical. My hope is that the locking block pin can be replaced with a featureless, non-dumbbelled one, which makes the task of designing a sight mount super-easy. (Although I may still have to have it printed by some manner of print house, so I can have it glass- or carbon-fiber-reinforced for stiffness.)

If the locking block pin can’t be so replaced, then it’s on to hooking into the trigger pin. I’m pretty sure, based on how the SJC sight mount is attached, that the cuts on the trigger pin are purely for anti-walk, and for a technology demonstrator like this, I can either omit them entirely and just push the pin back into place when it starts moving, or cut them in myself with a dremel.

Step 5: build a .40 upper

Now we’re getting into the home stretch.

A .40 upper requires a slight tweak to the lower: I’ll have to modify the front rail unit to allow the slide to fully cycle. Happily, it’s not a hard modification—just need to shave a bit off of the front so that the slide doesn’t crash into the rails, and a light chamfer with a file or a dremel is not hard to achieve.

I haven’t decided yet if I want to do the Glock 22-length slide or the Glock 35-length slide. On the one hand, the latter adds weight (good!) and gives me a bit more room to hang a weight under the front of the gun without getting in the way of the eventual DAA holster block (also good!; saves me money on a different holster).

On the other, the Glock 22-length is actually tested, and parts availability is a bit better.

I think I probably lean slightly toward the 35-length, because I like giant handguns.

Step 6: compensator, spring tuning, etc.

SJC sells the benchmark Glock compensator, an 11-port number that seems to work fairly well even in its .40 version8. Not much more to say about it. This is one part I clearly can’t 3D print, not that it isn’t tempting to try with a prototype and a laser-sintered version.

Spring tuning includes both recoil spring (to get the gun to run well with the compensator) and trigger work. Since I shoot Revolver in USPSA by day, I think I want a Walther-style ‘rolling break’, emulating the wheelgun’s double action pull. That’s easier to achieve than glass-rod break on partially-cocked striker-fired guns anyway.

Step 7: random Open accoutrements

USPSA Open lets you do just about anything you want. I have a few ideas that go from normal to silly.

Normal idea 1: a slide racker in place of the rear sight. Because the sight mount covers some of the slide, there aren’t as many ways to get your hands on it. A slide racker gives you a knob or handle of some kind to grab, resolving the problem altogether.

Normal idea 2: frame weight and brass magazine well. A magwell is a traditional Open gun feature. Making it out of brass adds a bunch of weight, which is good on lightweight guns like Glocks. SJC makes one, although I’ll have to modify the frame to attach it.

The frame weight is also a traditional Glock item, adding weight to the gun and also reducing muzzle flip. In this case, I think I’ll have to roll my own: the existing options don’t play nice with the DAA holster I have for the revolver, and I don’t feel like buying a new holster for this goof-off gun.

Silly idea 1: a Radetec RISC bullet counter. I’m pretty sure that it doesn’t do any detection of reloads, and since I wouldn’t expect to be shooting to slide lock very often, it’ll be wrong after I drop the first magazine. That said, given the constraints of USPSA, I don’t really care. It’s 75% about looking cool anyway.

Silly idea 2: a tuned mass damper in place of a frame weight. A moving mass on a spring, damped by either liquid or a near-airtight fit, seems like it might help? It worked for the Renault F1 team in the early 2000s, anyway, and a gun moving back and forth shooting doubles is kind of like a stiff suspension moving under load.

This, I think, is the most silly of my ideas, but it’s an indication of a greater truth: 3D printing makes prototyping a silly tuned mass damper for a pistol a matter of a few hours of CAD work and a few dollars of filament. I can explore random things like this with effectively zero cost.

Conclusion

Well, that’s my plan. I’m not expecting to get it done anytime especially soon. I’m about midway through Step 1 now, and there are a number of demands on my finances I consider more important than this.

As I make progress, I’ll be sure to keep you up to date.


  1. He decided to get a real Open gun rather than putz about with trying to turn a Glock into one. I was fine with the putzing around, but decided I’d rather shoot Revolver, so neither Glockblaster 2 nor 2.0 ever existed beyond our imaginations. 
  2. It’s supposed to sound like a bad 80s movie, in the vein of parvusimperator’s Glockblaster 2: Glockblast Harder post. 
  3. I think I’ve gone into ‘why .40’ in the past, so I won’t relitigate that issue here, beyond to remark that it’s still because the project parameters don’t require me to have 30-round magazines. 
  4. I say ‘about’ to leave myself wiggle room if I decide that prudence should dictate I buy a part instead of making it. 
  5. Possibly interested in the same way as people who watch videos of Nurburgring crashes or that one can-opener bridge, but I haven’t asked and don’t intend to. 
  6. If it turns out that it’s that reliable, I won’t complain. Ignore the sound in your head; that’s parvusimperator’s muffled laughter. 
  7. The standard Ender 3 hotend has a PTFE tube that runs all the way down to the nozzle. This is good, because PTFE is low-friction; this is bad, because PTFE offgasses neurotoxins at temperatures above about 250C, and I don’t want to sniff (if you will) that temperature. 
  8. Received wisdom in USPSA is that compensators work best with light bullets going fast, because a light bullet going fast enough to make power factor requires more pressure, which means more gas coming out the end of the barrel, which means more power to the compensator. 

Fishbreath Fabricates: Britains 4.7″ naval gun toy

Are you familiar with Little Wars? In 1913, novelist H. G. Wells published it, the first set of rules for miniatures wargaming available to the public. Toy soldiers careen across carpeted (or cork-floored, in the original conception, but I don’t have a cork-floored playroom) countryside, under fire from spring-loaded toy cannon as they charge home for glory.

“Sounds great! Where do I start?” I said. Well, toy soldiers aren’t too hard to find, but I decided that I can print better ones, or perhaps eventually cast them in resin from silicone molds around 3D-printed masters.

The mighty artillery, however, is the sticking point. Nobody makes toy cannons of the right power anymore, and the early-20th-century originals from Britains Ltd. run about $50 a piece. Not exactly cheap, and especially not when a Little Wars game of moderate size might call for six or ten guns. I have in my possession, however, a 3D printer and a copy of FreeCAD, and armed with these tools, I set about fixing this availability problem, with the help of my Thanksgiving vacation.

That holiday at my in-laws being a pretty sedate affair—an awful lot of movies1 and television—I had ample time to Google my way to a minimum understanding of how to CAD, or at least how to use one of several alternative (or redundant, uncharitably) workflows in FreeCAD. Et voila!

Continue reading

OpenTafl 2020: New Tree Search Horizons

That’s right, I’m getting back to a project I’ve left alone for a while: OpenTafl, my hnefatafl engine project. The only one of its kind, it is both a host for other, yet-unwritten tafl bots, and a tafl bot in itself.

Why the return after all this time? Well, two reasons. First, I had to move the whole project to Github recently, because Bitbucket is shutting down its Mercurial repositories. Second, I had a bit of a brain blast on how to do a particular kind of AI project I’ve been wanting to try for a while.

OpenTafl’s current AI uses an alpha-beta pruning search, which is only a hop, skip, and jump away from the original, mathematician’s tree search algorithm, minimax. In simple terms, alpha-beta pruning minimax plays out all possible variations to a certain depth, assuming each player plays optimally, and picks the move which leads to the best outcome. The pruning bit skips searching nodes which are provably less optimal.

Of course, knowing what the optimal move is depends on one of two things: searching the game tree all the way to the end, or searching to a lesser depth and evaluating the leaf nodes in the tree. The former is impossible for reasons of computational power, the latter is logically impossible1. Evaluation functions, as we call them, are always imperfect, and require an awful lot of domain knowledge to do well.

Because tafl is a poorly-studied game, there isn’t a lot of domain knowledge to encode into an evaluation function, which has always limited OpenTafl’s potential somewhat. There are further downsides to the alpha-beta search it uses, too, in particular that it can’t readily be multi-threaded2. So, what’s the answer?

Well, at least potentially, Monte Carlo tree search. Popular among go AIs (and used as the framework for DeepMind’s efforts in computer players for board games), the secret to MCTS is a bit of randomness and a preference for exploring interesting lines of play. Start at the root of the game tree, navigate through the nodes you’ve already seen. When you find a leaf node (that is, one with no children), you generate its children, then play a random game until someone wins or loses. At each tree node, track the win/loss ratio for the tree, and use Mathematics™ to guide your root-to-leaf exploration in future iterations.

Simple! Of course, tafl poses some unique obstacles to MCTS, as Tuireann of PlayTaflOnline.com discovered. The biggest issue is that random moves in tafl are very, very unlikely to do anything of interest—tafl branching factors are higher than branching factors in, say, chess, and there’s no space pressure like there is in go. (That is to say, if you keep making random moves in go, the game eventually ends.)

Tafl MCTS artificial intelligences need some way to guide the playout process (the process of playing to the end of a game). The modern approach for this is to either train a neural network on a large corpus of existing high-level games (tafl doesn’t have one), or train a neural network by playing it against itself for a long time (which I don’t have the budget for). Given those constraints, I set about inventing a measure which would permit me to make random-ish moves which nevertheless move the game forward.

I’m calling the measure King Distance to Victory, or KDV; it’s inspired by part of the evaluation function from J.A.R.L., one of the entrants to the 2016 OpenTafl Tafl Open (which is on the calendar again for 2020, AI programmers!). For a given game state, the KDV is the shortest straight-line distance from the king’s current position to a victory space, counting spaces occupied by allies as 2 and spaces occupied by enemies as 3 or 4. The defender’s goal is to bring KDV to zero. The attacker’s goal is to maximize the average KDV and minimize the variation in the KDV values3.

It isn’t a perfect measure, but it isn’t meant to be—rather, it’s a measure to push playouts toward states which end the game. On that ground, I think it’ll be successful. I also hope to write a quick classical evaluation function which uses the KDV measure exclusively, to see how it plays on its own, without the MCTS magic behind it.

More news to come as it is made.


  1. This proof is left as a trivial exercise for the reader. 
  2. To prove which nodes can be ignored, alpha-beta search has to evaluate them in order, for a given value of ‘order’. 
  3. This helps encapsulate the idea that the attackers should aim to surround the king and close the noose, rather than simply get in the way of his best move. Note as well the implication that each state has multiple KDVs: an edge-escape game has up to four (the king moves straight from his current position to each edge), and a corner-escape game has up to eight (the king moves straight from his position to an edge space, then from the edge space to one of two corners). 

Fishbreath Shoots: Cowboy Up – Another Potential Project Gun

The Glockblaster 2.0 post sounded an awful lot like I’d made a choice, didn’t it? Well, joke’s on you. I’m terrible at decisions.

The price on the street for the Ruger Super GP100, an actual, non Smith & Wesson competition-focused revolver, is surprising and compelling. Parvusimperator liked the one he picked up at the USCCA Expo a month or two ago. I’m going to go and fondle one at the local gun store two Saturdays hence, and will likely make my decision on which division it’s going to be at that time.

Why am I attracted to revolver? Four reasons.

One: it’s just cool. Wheelguns are fascinating machines, first off, and their Old West heritage makes them cooler than any semi-auto can hope to be. Impractical, sure, but so also would be the Open Glock.

Two: Revolver is a wide-open division. There aren’t a lot of young folks shooting it, and by picking it up when I’m still young and agile, I buy myself an advantage over the stereotypical revolver shooter. Put another way, there’s no division where I’m more likely to attend major matches on merit, if only because there are so few competition revolver shooters out there.

Three: way more pie-in-the-sky, but because Revolver is a wide-open division and there aren’t a lot of new shooters, if I pick it up and do well with it, I’m dramatically more likely to attract sponsor attention than I am in any other division. Not very likely, granted, but the rumor is that Ruger is looking to push into the competitive shooting space. How many other shooters are there who are a) interested in revolver and b) in the market for Ruger equipment specifically? I don’t have to be nearly as good at Revolver to find a Ruger jersey in the mail than I would have to be at, say, Carry Optics to catch CZ’s eye. I doubt I’m anywhere close yet, but Revolver is nevertheless much closer.

Four: I have the CZ set up for two go-fast divisions: Limited and Carry Optics. I’m fond of Carry Optics, and it sates my desire to have a competition gun I can burn down stages with. Open is more of the same, whereas Revolver goes entirely in the opposite direction: plan hard, slow down, get your As. Eight rounds in the cylinder leaves no room for mistakes. Minor scoring means accuracy is crucial. Slow reloads mean it’s sometimes better to run away from a miss. There’s a great deal more thinking required in Revolver, both before the stage and during it. That’s appealing, and I suspect it’ll make me a better shooter in the fast divisions, too.

So, in the spirit of these posts, let’s take a look at the shopping list.

Ruger Super GP100 .357/.38: $1160, shipped and transferred

An 8-round cylinder cut down to be as light as possible, a chambering readily suited to minor power factor, and hopefully Ruger-size controls. (My hands are too small for Smiths out of the factory, but I can generally reach everything I have to on Ruger revolvers.) Competition sights, an allegedly-light double action trigger, and moon clip cuts.

The Super GP100 is designed pretty much exactly to fit USPSA and IPSC revolver requirements, which saves me time and effort over my previous revolver plan, which would have taken some amateur gunsmithing effort. I do like tinkering, but parvusimperator has talked up the benefit of buying a gun that Just Works™, and I’m willing to give it a try.

Initial Competitive Capacity

Guga Ribas revolver holster: $190, shipped

Revolver is a race division, so you’re allowed to use the gun-rest-with-trigger-guard-lock holsters you find in Limited and Open. I’m game.

The Super GP100 is new enough that I’m stuck with universal holsters, which practically means only the Guga Ribas unit is a guarantee.

Speedbeez moon clip belt rack: $160, shipped

You need a way to keep those moon clips close at hand. Speedbeez makes an 8-clip belt rack with magnetic retention, which gives me plenty of ammo for even the most hamfisted stage plan.

There are other options, but none match the capacity, ease of use, and free shipping of Speedbeez’s.

20xTK Custom blued steel moon clips: $105, shipped

By opting for blued steel rather than stainless, I can get moon clips for about half as much, which means I can load a bunch pre-match and do less loading on the day. Moon clips are, of course, slower to fill up than magazines, so any savings in time is worth a bit of a spend.

Original Precision moon/demoon tool: $80, shipped

There are tons of tools out there to load and strip moon clips. This one is the right balance of price (less than two separate tools), size (two connected steel rods), and ease of use (the Youtube video makes it look pretty easy).

Grand Total: $1705

Not only is this cheaper, I think I also overestimated some of the shipping costs.

As I said in the Glockblaster 2.0 post, I like tinkering. On the other hand, I also like being in the running equipment-wise in my divisions, and I love me some wheelguns. I can see a path forward where, if the Super GP100 strikes me as a fitting choice, I go that way for now, and save the tinkering of an Open Glock or home-machined 2011 for later in life, when my eyes start going bad and I can’t move like I can now.

Unlike the Glockblaster 2.0, I don’t have a list of upgrades to try. Ruger hasn’t made any yet, for one, but I understand they’re working on a skeletonized hammer and an extended cylinder catch. Those may find their way to the gun eventually.

Cosmetically, why would I mess with a good-looking wheelgun? Instead, I’d put the money toward some good in-ear headphones and a cowboy hat.

Is that what will happen? Time will tell! Until then, enjoy a stage video from a match in May, and keep your eyes open for more such things as I consider investing in a hat cam ahead of a two-match July.

Fishbreath Shoots: Glockblaster 2.0 – A Potential 2019/2020 Project Gun

Something that’s been rattling around the back of my mind, especially now that Parvusimperator’s admittedly sweet Open-division custom double-stack 1911 came in, is the segment sometimes called ‘Ghetto Open’. What is Ghetto Open? Well, let’s use a car analogy.

If you’re a fan of driving fast around tracks and money is no object, the obvious thing to do is to buy a proper track day car: something by Caterham, say, or an Ariel Atom. They’re street-legal in the technical sense, but they’re clearly designed with a particular purpose in mind, and that purpose is going fast around a track. This is your double-stack 1911.

If you’re fond of cars with pedigree, you might instead buy something used from BMW or Mercedes and carefully tune it, making something refined into something both refined and fast. Here you find your Czechmates, your Tanfoglio Gold Teams, and perhaps your carefully-smithed Beretta and CZ one-offs.

If you’re one step up from a mad scientist, you know you can find twin turbo kits for your 2009 Honda Accord online, and why not bolt ’em in? You aren’t going to beat the Atoms and Caterhams around a track on an average day, but maybe every now and then you’ll snatch a bit of implausible glory. And hey, even if not, you raced with the big boys on their terms, and were way closer than you had any right to be. This is Ghetto Open.

I’ve been thinking about Ghetto Open guns for a while. The problem is that most of the ones I’ve had in mind are too far outside the mainstream1. You need a big aftermarket for a Ghetto Open gun to work, because you need parts of all sorts. The 2009 Honda Accord of the firearms world is, then, the Glock: ubiquitous, reliable, predictable, a little boring, and not especially fast. We can change that2. First, though, we should define some goals for Ghetto Open.

Goal #1: it should be cheap. If it costs as much as buying the right tool, then there’s no point to it.

Goal #2: it should be easy. The less work you have to do to shoot Open, the more heartfelt your mocking can be on the rare occasions when you’re on par with the proper guns, and the more resistant you are to mocking when you come up short3.

Goal #3: it should be weird. Buying a worn-out 2011 on the cheap is not Ghetto Open, which is defined in part by being the unwise tinkerer’s choice.

Goal #4: it should be functional. This is distinct from competitive. We’re fond of saying that it’s the Indian, not the arrow, but between Indians of equal skill, arrows do matter. Happily, at my level of competition, the Indians are anything but equally skilled, and I think I can fulfill my USPSA goals—to be moderately competitive—anyway, even if my hardware isn’t up to the top-of-the-line standard.

So, let’s take a look at a possible shopping list.

Law Enforcement Trade-In Glock 22: $325

If you’re familiar with Glock’s ridiculous naming scheme, you’ll recognize ‘Glock 22’ as a .40 S&W Glock. Notably, that’s a bigger bullet than the traditional .38 Super[Comp] or the 9mm Major which make up the bulk of Open division. Why would I hamstring myself with a bullet which is harder to pack into those juicy 170mm magazines?

See Goal #2 above. 9mm Major is iffy in most off-the-rack guns, to say nothing of Glocks. If I buy a gun which was designed to run .40 S&W, which need not be loaded very hot to make major, I should hopefully avoid some of the durability problems you might run into shooting dramatically over-spec 9mm through the same model of gun4.

It also means I can buy factory ammo—165-grain, 1050fps .40S&W is not at all hard to find, and is no more expensive factory-bought than 9mm Major ammo is to make. This represents a huge cost savings, too. With 9mm Major, more or less every round you put through the gun has to be a reload. I save on not just the time it would take to get loads worked out and produced, but also on the money it would take to set up a reloading rig. Even if 9mm Major comes out cheaper per round than .40, which I doubt it would in the end, it would have to counteract a big initial outlay to be cost-competitive. I can also use the same ammo in my Limited gun for added multi-tasking.

Shooting .40 will, of course, limit my magazine capacity: ETS 170mm magazines claim 24 rounds of .40, while the SJC 170mm big stick or the Taylor Freelance 170mm extensions claim 25. Does that matter? Not really, at this level. 1911 drivers only steal a reload on me on stages with between 26 and 29-30 shots required, which don’t show up much. Typically, club matches here are either short stages of about 20 rounds or long stages of the maximum permissible 325.

Initial Competitive Capacity

SJC Open Gun In-A-Box Kit: $1070 (incl. frame weight and red dot)

SJC, purveyors of Glock Open supplies, have a kit which takes you from zero to more or less ready to rock and roll. This price includes a frame weight but not the thumb rest (cool, but not required) or the slide racker (see preceding parenthetical). You also get a compensator and threaded barrel, a frame-mounted sight mount, an extended magazine release, a brass magwell, springs, a guide rod, and some other miscellaneous gubbins.

The price also includes a C-More Slide Ride sight. Why a C-More rather than a standard micro-dot? For one, it and the mount weigh a little more, which is desirable given the lightness of the starting platform. For another, it’s simply the largest window available on a pistol sight at any price, and that price is within $30 or so of the price of a micro-dot.

Mounting them in the correct orientation on the Glock (that is, with the bottom facing down) requires extractor tuning to ensure that empties get flung clear of the sight. That sounds difficult, so I’ll opt instead for the sideways mount, which clears the ejection port altogether and has the added benefit of getting the dot closer to the slide.

A Trigger Kit: $130?

I’ll have to consult with Parvusimperator on which is best, but Austrian-pattern toaster parts can’t be that expensive.

Upon consultation, he suspects that $130 is probably high, especially if I’m fine with the base-model trigger shoe. We’ll leave it in to make the final tall look better.

Magazines: $125

Taylor Freelance makes 170mm extensions which claim to be +10 over the factory 15-rounders. Buying a pair of those, with the included springs, gets me two 170mm magazines with the hopefully-theoretical-maximum-25-round capacity for relatively cheap.

If I want a third magazine for a bit of extra cushion, I could throw in an ETS 170mm for $206.

A CR Speed Holster: $175

If I want to use the frame weight, and I do want to use the frame weight, I have to follow SJC’s recommendations on holsters. The CR Speed jobber is the only race holster which fits the bill.

Grand Total: $1825

Including shipping and transfer fees, where appropriate. A complete gun costs considerably less—more like $1350 (leaving out trigger work, magazines, and holster). That’s probably where I would start, so I could properly assess how well it works and what, if anything, I need to change before buying into the rest.

Future Upgrades

The nice thing about the Glock aftermarket is that it’s gigantic, and anything I don’t like I can replace. Leaving aside functional parts, here are some options.

Slide cuts

Reducing that reciprocating mass is a good thing for controllability and also looks sweet, but there’s likely a balance to be struck between slide lightening and light springs, given the strange push-pull nature of the Glock spring system.

Barrel porting

Parvusimperator described a double-inline-ported Glock he got a chance to play with at a class, and deemed it good. If the compensator isn’t enough on its own, some extra porting (following some slide cuts to support it) might be a thing to try.

One of those inertial shot counters

Radetec, the guys behind that smart Glock slide from SHOT a while back, make an inertial shot counter. It’s exactly the kind of silly frippery I can get behind for a gamer gun. It precludes use of a slide racker, but between a slide racker and a sci-fi bullet counter…

Sweet Cerakote color scheme

After everything’s squared away, the obvious thing to do is to make it look nifty. Options I’ve considered: blue and white (or white and blue) because I like that scheme, The Red Ones Go Faster, Nerf colors, NES colors, X-Box black and green.

Conclusions

No revolver?

You may recall that last year’s question was between Carry Optics and Revolver, and Carry Optics won. Now that the Ruger Super GP100 has hit the streets, and market price looks to be in the $1000 to $1200 range, it’s cost-competitive with a handicap Open gun, and I picked Carry Optics in part because it would be more competitive. So, why does it look like Open is a leading contender ahead of Revolver this year?

In short, tinkering. If I get into Revolver, granted, I get to cowboy it up, but there’s very little to change on the gun. I buy (most likely) a .357/.38 revolver, put some reduced springs in it, and maybe send it away to get a trigger job. There are very few choices involved, and so also it was with the CZ race gun. With a Glock project, on the other hand, I have at least two options for almost everything, and the parts aren’t so expensive that I can’t experiment.

So am I going to do it?

Maybe.

The tinkering potential is through the roof. I’m told that even a working Open Glock will occasionally require some workbench-based TLC. Second, at the nearly-$1800 total, it gets me into Open with all the non-cosmetic Open accoutrements for less half the cost of an STI Open gun on its own. Even a used Open gun will run you north of $3000 most of the time and require you to hand-load either .38 Super/Super Comp or 9mm Major. I’m willing to accept some limitations for that kind of savings in time and money.

On the other hand, Revolver forces me to develop some skills I can get away with ignoring in high-capacity divisions—namely, good planning and good hits. The Super GP100 presents a compelling value proposition, given that it’s a top-of-the-line competition revolver at a lower price than the decidedly less top-of-the-line Open Glock. The project as a whole is a few hundred dollars cheaper, too, and gives me a second go-slow division (next to Production).

It comes down to how important I find fielding competitive equipment (important, but not critical), how much I like going fast (yes), how much I want to do revolver competition eventually (also yes), and how much Ruger’s new entrant is going for at the end of the summer. We’ll update you then.


  1. Parvusimperator thinks the gun described in this article is a bad idea. My other proposals are not merely bad but also ridiculous. 
  2. All of it, including the reliable part. 
  3. “Sure, I was slower, but I also have never pulled a reloading machine lever in my life.” 
  4. Parvusimperator notes that Gen3 Glock 22s don’t have a great reputation for long-term reliability unmodified, though. 
  5. Major matches, I understand, can feature longer stages. That adds a second plausible window where the 1911 drivers can get ahead by a reload, at 51 to 60 rounds. 
  6. Parvusimperator dislikes them for dust intrusion reasons. For a rarely-used magazine, I’m willing to take that risk. 

Fishbreath Shoots: C-Zed Carry Optics USPSA Match Report

You may remember that last winter, I wrote a few articles on building a Carry Optics slide for my CZ P-09 Limited gun.

Well, I finished the slide, as one of the links above indicates, made it to a range a few times to get the last few bugs worked out and the sight zeroed, and took it to the opening match of the USPSA season at Castlewood Rod and Gun Club, our favored approximately-local destination for low-pressure shooting sports1. How did it go?

Bugs

The most pressing issue discovered in testing was that the .40 S&W magazine bodies do not actually feed 9mm reliably. They appear to, and work most of the time in testing, but I ran into some issues where the last few rounds would cause trouble. The second-to-last round would sometimes pop up beyond the feed lips to make a stovepipe failure to feed, a very unusual malfunction.

There was also an issue with a wimpy sear spring causing hammer follow, but I took care of that last year at the end of the Limited season.

Practice

The first order of business was getting the sight zeroed. This turned out to be much less drama than I had expected. Parvusimperator and I popped over to our local indoor range, and while he did some drills, I set about adjusting things. Between my ballistics calculator app and my surprisingly not-rusty pistol skills, I got to a reasonable 25-yard zero pretty quickly. It shoots about an inch low at the sub-10-yard ranges you find most USPSA targets at, but is much closer to dead on for the 15-25-yard long-range targets, which is where I’d prefer the sight be the most accurate anyway.

On the second trip, in the middle of the week before the Saturday match, I did a bit of zero-refining—the point of impact was a bit to the left of the point of aim—and ran a printed-target drill parvusimperator brought along. This was also when I discovered the magazine issues mentioned above, happily leaving me enough time to pop the followers and baseplates off of the .40 magazines onto my 9mm magazines.

At the end of those two practice sessions, I was feeling fairly confident. Dots are pistol easy mode, and although I felt I had some work to do in picking up the dot on the draw, I was happy with the performance of the gun and my performance with it.

The Match: How I Shot

In short, pretty well! Finding the dot did not prove to be an issue on the clock.

On the first stage of the day, I discovered I had not screwed my battery cover in tightly enough, so the cover and battery popped out mid-stage. It was in one of Castlewood’s small bays, fortuitously, so I was able to point-shoot my way to the end with no misses. Someone found my battery cover in the mud, but not the battery, and since I had neglected to bring extra batteries2, I had to bum one off of someone else.

After that, the drama was limited. I ended up putting in stellar performances on the next two stages, good enough for the Carry Optics stage wins. I dropped some points on the classifier for taking an extra shot, too.

The gun performed perfectly, and having 23 in the magazine makes stage planning even easier than having 20, like I do in Limited configuration. I was able to complete several stages with no reload; Castlewood frequently has short stages mixed in with the long ones, which I appreciate both from a variety perspective and from a costs-less-in-bullets perspective.

The Match: Results

I was 23rd overall out of 60-some shooters, and 2nd out of 6 Carry Optics shooters (within 6% of the leader, too!). I won two stages in Carry Optics, like I said—one a moving-heavy stage with some restrictions on target engagement, one a shooting-heavy stage with a reload.

The classifier for this match happened to be the same one I shot to wrap up last year with Limited, so I can make some direct comparisons. I was a little slower this time out, in part because of penalties, and in part because of some rust on my classifier draw-and-shoot skills. Going by percentage of As shot, I was much more accurate with the Carry Optics gun, and just about as fast. I won’t know for sure until the next match, where I plan to swap the slide to get both divisions in the same day, if I’m faster with Carry Optics or Limited, but it’s definitely close enough to be in question.

I’m entirely satisfied with the outcome. I beat the shooters I was supposed to beat (those in the Lesser Divisions like Production), nearly won my division, and came out ahead of a few Limited shooters who are usually a little better than me. I was the sixth-best non-PCC non-Open shooter at the match, which is the fairest group to compare me to.

All told, the CZ Carry Optics project is an unqualified success.


  1. Except for their sporting clays course, which is brutal. 
  2. Well, I had extra 1620s, but the sight takes 1632s. If you’re familiar with coin cells, you will recall that the second two digits are the battery’s nominal voltage. 2V won’t run a 3.2V sight. Oops. 

Comparative Red Dot Areas and Prices

I thought I’d pull this out for reference/expansion. Original data courtesy of Fishbreath’s great post on his P-09 Carry Optics Build. It’s still sorted by mm height/$100, but it’s also a handy reference of window sizes. I’m adding data as we get some new sights available like the Trijicon SRO and (soon) the SIG Romeo 3MAX.

For the area column, the sights are assumed to be rectangular (except for the C-More SlideRide, which is circular), which is an invalid assumption, but you get what you pay for.

Sight NameWidth (mm)Height (mm)Area (mm2)Street Pricemm height/$100
C-More SlideRide29.029.0660.52 (circle)$300 (aluminum)9.667
Vortex Viper24.017.5420.00$2307.608
Vortex Venom26.316.3428.69$2307.087
Lucid LITL MO28.019.0532.00$2806.785
Burris FastFire III21.015.0315.00$2306.522
JP JPoint21.515.0322.50$2855.263
Sig Romeo 325.021.0525.00$4005.250
C-More RTS225.022.0550.00$4205.238
Sig Romeo 130.016.0480.00$3254.923
Leupold DeltaPoint Pro25.717.5449.75$3704.730
Vortex Razor27.817.4483.72$4004.350
Trijicon SRO25.022.5562.50$5504.090
Trijicon RMR22.016.0352.00$5003.200

New Life for an Old Police Magnum

When we last looked at my old 870, it had been through a ringer, and I changed a few things. I got a cool magpul stock and a magazine tube extension. Class notes gave me a few more things I wanted to change.

First: the sights, which entailed a new barrel with (bonus) fresh parkerizing. Basically, I wanted some sort of rear sight. I found myself dissatisfied with a bead (and no sight rib for the bead to sit on). I settled on a barrel set up for rifle sights that came from the factory with XS Express-style rifle sights. Perfect! These sights were originally designed for quick acquisition at close ranges while threatened by dangerous game on the African Savannah, and I can’t think of something more appropriate to what I want this shotgun to do. Plus, being barrel-mounted, they require exactly no gunsmithing of the receiver. Now I have a rear reference to avoid making elevation errors at range.

I could have gone with ghost ring sights, but those end up needing gunsmithing (to drill and tap the receiver), and I didn’t feel like doing that. A red dot would also have been a good choice, but that would have cost much more, and I didn’t feel like spending the money here. It would also probably have needed a gunsmithing trip.

Sights sorted, I next wanted to deal with the problem of illumination. I’m a firm believer of defensive weapons needing a light to identify targets. There are a bunch of ways to do this, and I settled on the most turnkey: the Surefire DSF-870 forend. It replaces the factory forend, and has a light and controls for said light built right in. Controls include momentary and constant on buttons, as well as a lockout switch so your batteries don’t run down in the safe. This solution isn’t the lightest or the cheapest, but it stands up to recoil pretty well and tends not to smash hands up.

So that’s that. And my shotgun is more or less done, aside from a likely future trip for some cerakote to refinish the receiver. Let’s take a brief moment to talk about something that isn’t on the gun: ammo saddles. There’s no cuff on the stock for ammo either.

For my purpose, I question the need for ammo on the gun. I’m not a law enforcement officer. I currently have a capacity of 6+1 shells. I really can’t see myself needing more than that in a defensive encounter. Shotgun shells are pretty good at making people stop doing whatever it is that they’re doing. Given that, plus the size of recorded home defensive encounters, plus the complete lack of relevant1 encounters where people run the shotgun dry has led me to skip the bother, cost, and weight of playing around with sidesaddles.


  1. For law-abiding civilians who are non-LEO.