Author Archives: Fishbreath

The Crossbox Podcast: Episode 19 – Special Edition

For May’s episode, we dispense with the typical structure of the show to bring you something entirely different: a guest! Dave Williams of Jellyfish Games joins us to talk about Astrobase Command, an upcoming space station management game. Join us as we discuss everything from water pipes to the nature of personality and consciousness.

Further reading
Once you’ve listened to the episode, you’ll want to visit the Astrobase Command kickstarter. Go give them your support.

Continue reading

A Fishy Race Gun Shootout: Beretta 96A1 vs. CZ P-09

In previous posts, we’ve looked at two options for USPSA Limited competition: the Beretta 96, and the CZ P-09. Now it’s time to decide which one I’m going to build in the 2017-2018 offseason. Two guns enter. One gun leaves.

Likely trigger characteristics

Beretta 96
I know that the 92-pattern pistols have acceptable triggers as far as creep goes, and thanks to the Wilson Combat trigger bar and lightened hammer, the 96 can handle a tremendous reduction in hammer spring weight. The double-action pull is long and takes a lot of reaching, but the single-action pull is just fine.

CZ P-09
At present, I haven’t handled a P-09 specifically. I have dry-fired a CZ 75, and my impression about that was that CZ’s factory triggers are much lighter than Beretta’s, if perhaps a bit lower-quality. The action tuning I have planned for the P-09 ought to take care of that, and I expect the end result to be extremely light.

The Victor: CZ. Obviously, having not built either of these guns yet, I can’t say this for sure, but I expect the improvements to be similar, and the CZ starts from a better position.

Likely shooting characteristics

Beretta 96
The Beretta is the heavier gun out of the box, and that weight is better distributed both forward and backward and up and down, especially when taking into consideration newly-added steel parts. The 92-pattern pistols point and present very naturally for me, and given the massive amount of material already missing from their slides, are known to have a low flippiness factor.

CZ P-09
The P-09 is not dramatically lighter, only three ounces. Even though the proposed magazine well is aluminum instead of steel, it ought to suffice to level the playing field. That weight is also less evenly distributed, given the construction; like most polymer-framed pistols, it’ll be top-heavy compared to the Beretta when empty. CZs are known for their low bore axes, and that should help keep muzzle flip down.

The Victor: Toss-up. Both seem similar.

Magazines and magazine wells

Beretta 96
Here, the Beretta gives up some ground. Given the two-round improvement from the MecGar extension (which makes total magazine height about 130mm instead of the USPSA Limited-regulated 140mm), I suspect that the 17 rounds is perfectly plausible, given the MecGar spring and follower plus a custom-made 140mm extension. It may even be possible to get as far as 19, with a custom, flat-wire spring and a reduced follower. Only giving up two rounds of capacity against a tricked-out 20111 is nice, but it would take a lot of work, of which none has, at present, been done. The magazine well situation is also pretty bad. Beveling is about the best you can do, and that doesn’t get you much of a funnel, and in fact reduces your weight.

CZ P-09
The parts may be expensive, but the P-09 has options for large-capacity competition magazines and magazine wells. 21 rounds of .40 S&W in a 140mm magazine is entirely competitive with widebody 1911s. It might be nice to have a steel magazine well option in terms of weight, but the aluminum funnel is perfectly functional and large enough to make a difference in ease of magazine insertion.

The Victor: CZ.

Parts availability

It isn’t even close here, so I won’t bother with headers for each pistol. CZ Custom makes just about everything you might want, including a whole bevy of improved action parts, and Cajun Gun Works goes further still. The only aftermarket parts maker for Beretta guns is Wilson Combat, with the occasional spring from Wolff, and neither has anything like the same variety you can get for the P-09. Given CZ’s popularity on the competitive circuit, it seems likeliest to me that the situation will only tilt further in the P-09’s favor in the future.

The Victor: CZ.

Tinkering potential

Beretta 96
The tinkering potential for the Beretta excites me. Since so little can be found from the factory, I’d get to experiment with actual gunsmithery. At a minimum, I’d eventually want to design a custom 140mm floor plate for the magazine, along with a smaller follower. I’d also want to find a flat-wire spring (for minimum compressed height) to push capacity as far as I can. There would be fun 3D printing of prototypes and, eventually, 3D-printing-as-a-service of metal parts. I could do, for instance, a proper magazine funnel, too. If I wanted to move up to Open, I would have to work up an even bigger magazine extension to fit the 170mm limit.

CZ P-09
Tinkering on the CZ is more about buying and installing parts, and tuning what’s already on the gun. There’s less call for building things from scratch, because most of it already exists. I would still have to build 170mm magazines to play in Open effectively.

The Victor: Beretta.

Ergonomics

Beretta 96
I’ve extolled the Beretta’s pointability and presentation before, but the magazine release is a bit of a reach for me.

CZ P-09
Having not handled a P-09, I can’t say if I’d like it or not. The controls are different than my Production gun (an M9), so I have to ding it for that.

The Victor: Toss-up.

Suitability for Limited

Beretta 96
After the modifications discussed in the article, poor to average. The magazine capacity deficit means I would have to reload one or two times more than a 2011 shooter in your average USPSA stage, at a penalty of 2-3 seconds per reload. That will materially affect my performance in the long run. Also, even with a decocker conversion, I have to take the first shot as a double-action shot, which requires practicing a second trigger pull.

After developing better 140mm magazines, average to good.

CZ P-09
After the modifications discussed in the article, great. The magazine capacity is competitive with the guns at the highest end of the field. The trigger ought to be at least comparable, though it will still give something up to a tuned 1911 trigger. With the safety installed, the P-09 can be carried cocked and locked, removing the requirement for a double-action pull2.

The Victor: CZ.

Suitability for Ghetto Open

It’s difficult to separate the guns for Ghetto Open. In that division, I’m not aiming to compete quite as much; .40 S&W is often seen as a compromise when .38 Super and 9mm Major are on the table, for reasons of magazine capacity. For both guns, I’d have to mount an optic to the accessory rail on a cantilever mount. There are good solutions for that problem, though John might disagree, but it’s less ideal than mounting directly to the frame. For both guns, I’d have to work up a 170mm magazine. With the CZ, I can just stretch the 140mm extension. For the Beretta, the same applies; I’d just have to build my own 140mm extension first.

The Victor: Toss-up.

Intangibles

Beretta 96
As I said in its article, it’s cool, and it’s pretty. It has vintage cred, and is likely to attract more attention on the range, simply because it’s a well-known gun but not an ordinary competition one.

CZ P-09
It’s still a hipster competition gun—a hammer-fired, polymer-framed CZ pistol which is not a 75 or derivative. It’s doesn’t have the cachet of a Beretta, nor is it half as pretty.

It’s also $300 cheaper. In fact, if you ignore the magazines3, the CZ race gun with all the trimmings comes in under $1000—a pretty tremendous price point by any standard.

The Victor: Beretta. The CZ just doesn’t have the cool factor.

Conclusions

On the scorecard we have a CZ victory, 4-2-3. This puts me in an interesting spot. Truth be told, before I did this comparison, I wanted to build the Beretta. As parvusimperator said when we were working up this article series, “It speaks to you more.” And it does. I do very much want to return to the Beretta race gun someday.

The end of the previous paragraph gives away the game, though. My goal shooting USPSA is not merely to improve my own shooting. I want to improve my shooting relative to the rest of the USPSA—I want to be competitive. The Beretta could get me there, but especially in reloading, it’s a handicap the CZ isn’t. It’s also, as I mentioned, much cheaper, to the point where I could buy a case of .40 S&W and a proper aft-cant drop competition holster for the CZ before I even get to the Beretta’s price.

So that’s where I find myself. This winter, I’ll be building a CZ P-09 race gun. Maybe in a few years, I’ll put together a Beretta 96 Limited 10 blaster, and work on some of the other tinkering at the same time. Until then, though, the Production-class M9 will have to do for my competitive Beretta shooting. I could maybe justify building the Limited 96 if it were a little more expensive and just as effective. Unfortunately, it’s a lot more expensive, and I’m forced to admit it’s also not as good. The P-09 wins the day.


  1. The largest-capacity 2011 140mm magazines I’ve seen are 21 rounds. 
  2. I’ve heard good things about tuned CZ double action, though. It may be the case that I can get away with the decocker instead, which reduces the number of things to do on the way from the holster to the target. 
  3. Humor me. 

A Fishy Race Gun Proposal: CZ P-09

In my first post on the Fishy Race Gun of 2018, I laid out my plan for a Beretta 96 competition gun. I said there that a new contender had shown itself, and here we are: the CZ P-09. Since I’ve already justified myself in the previous article as far as building a race gun goes, let’s jump straight into the parts.

The Parts

CZ P-09 .40 S&W
Although CZ is a common name in competition handguns, the P-09 is decidedly unusual in that realm. The P-09 is a full-size polymer-frame pistol in the same pattern as the earlier, compact P-07. Like all of CZ’s pistols, the slide rides inside the frame, rather than outside as is the norm. CZ claims this has myriad benefits. For myself, I find it interesting from a design perspective. I have nothing to say on the relative merits.

Unlike the Beretta 96, the P-09 has nicely capacious magazines from the factory. The flush-fit .40 S&W magazines hold fifteen, the same as MecGar’s extended Beretta 96 magazines. It also comes in decocker configuration from the factory, with parts in the box to switch to a non-decocker safety. (That is, a safety which supports being in the holster cocked and locked.) That’s a major competitive advantage over the Beretta. All the guts, including the trigger, are steel, and even the double-action trigger reach is significantly shorter than the 92-platform pistol1. Finally, the P-09 is a recent design, and CZ, by way of CZ Custom, provides a great deal of ‘aftermarket’ support even for unpopular pistols.

As a polymer-frame pistol from a cheap foreign country, as opposed to an alloy frame from an expensive one, the P-09’s street price is about $440. Call it $490 shipped and transferred.

Sights
Cajun Gun Works, the premier non-CZ Custom CZ gunsmith, provides blacked-out rear sights and a fiber-optic front blade for $80.

Extended magazine release
I haven’t yet held a P-09, so I don’t know if the extended magazine release is important. That said, it probably is, since my thumbs are small. Cajun Gun Works sells one for $40.

Trigger tuning
Unfortunately, there is no all-in-one kit for trigger tuning, unlike Wilson Combat’s Beretta kit. I’ll have to assemble it myself from parts from Cajun Gun Works. First up: their competition spring kit, which includes a firing pin spring, a firing pin block spring, and two reduced power hammer springs (15lb and 13lb, down from stock 20lb). That comes to $25.

While I’m in there, I’d also want to do the Cajun Gun Works short reset kit. It includes an extended firing pin, which serves to make the lighter hammer strike more effective at setting off primers, as well as an improved firing pin retaining spring, and an enhanced disconnector and lifter. The kit costs $75.

Finally, I’d put in a reduced-power trigger return string for $7. The trigger tuning comes in total to $107.

Other internal gubbins
Cajun Gun Works makes an improved hammer which purports to reduce creep in the single-action trigger pull, which costs $90.

Magazine well
Unlike the Beretta 96, the P-09 has a properly funnel-like magazine well available through CZ Custom. It requires a special hammer spring plug ($15) and costs $75 itself, for $90 total. Also, it looks properly race-gun.

Magazines
Now we come to the pain point. A Beretta 96 15-round .40 S&W magazine is between $20 and $30, depending on where you go. A factory CZ P-09 15-round magazine is $50. Fortunately, it comes with two in the box. Unfortunately, I’d want to order two more, and turn three of them into high-capacity competition magazines. Each high-capacity magazine requires a $38 base pad extension and an $18 spring and follower kit. The less high-capacity magazine still requires the extended base pad to fit in the magazine well2.

Let’s break it down. I need to buy two magazines ($100 total). I need three extended magazine kits ($56 each, $168 total) to hit my capacity goal of 60 rounds on the belt3. Finally, I need one magwell base pad sans the spring kit ($38).

In total, magazines and related accoutrements will cost a staggering $306. It’s worth noting that Limited-ready P-09 magazines cost about $100 per, provided you have no starting materials. That’s in rarefied company, not much cheaper than your high-end 2011 magazines.

Finishing
I see less need for it on the P-09, which is, let’s be honest, a profoundly ugly gun4. That said, CZ finishes its suppressor-ready 9mm P-09s in a lovely Urban Grey, which goes some distance toward making the gun merely inoffensive. A similar gray or dingy white on the frame, grips, and magwell would be nice. The local cerakote shop would charge about $200 for that, including the armory fees5.

In total, the P-09 race gun costs around $1200, again less cerakote costs. It lacks the pedigree6 of the Beretta 96, and has a much smaller cool factor. It’s also quite a bit cheaper, to the point that the difference could cover a case of .40 S&W and a competition holster.

Where does that leave me? With two solid options, each with a lot to recommend it. The only thing for it is a good old-fashioned shootout post. Stay tuned!


  1. It’s a hair over three millimeters longer than the Glock’s reach. 
  2. This is not strictly true, but I see no reason to spend $26 on the normal base pad when a mere $12 gets me the full 140mm. 
  3. Why the fourth magazine? It’s nice to have a spare so you can load the chamber without downloading one of your full-capacity magazines. 
  4. Not quite as bad as a Glock, though. 
  5. Something like this would be nifty, but probably more than I would want to pay. 
  6. CZ has a long history of competition, it’s true; it’s just the P-09 in particular has very little competitive history. 

A Fishy Race Gun Proposal: Beretta 96

In my review of the Beretta M9, I teased that I would be looking into a true competition gun based on the Beretta 92 platform. In this article, I’ll go into it a little deeper.

Why?

Why build a race gun at all? I like USPSA. (More on that later.) I like tinkering. I don’t want to be boring and buy the same gun everyone else is using1. There you have it. As I’ve said in the past, I like Beretta 92 platform. It points naturally for me, and my M9 is one of the softer-shooting 9mm firearms I’ve handled. (Obviously. It’s enormous and heavy.)

Given that I find myself really enjoying USPSA, I want to explore some of the other divisions. Given that I don’t have $2500 to spend on a 20112, nor much experience with the 1911 platform, nor much interest in learning how to tinker with the 1911 platform, I don’t have much reason to go in the traditional direction. Given, finally, that the thing slowing me down is not the handgun but rather my limited skill, I don’t mind slightly suboptimal equipment.

Since the kinds of race-y modifications I’m considering take me out of USPSA Production, the obvious place to aim is Limited, where scoring depends on power factor, and 9mm Major isn’t allowed. I need to do a little testing to verify, but my suspicion is that I’ll be insignificantly slower shooting .40 S&W, and the more forgiving scoring will help me out.

So, let’s look at the parts.

The Parts

Beretta 96A1
We’ll start with the gun itself. The Beretta 96 was the first 92-pattern gun chambered for .40 S&W, which is the minimum caliber required for shooting Limited Major in USPSA. The original 96, being simply a 92 with a larger-bore barrel, did not cover itself in acclaim. It was, in fact, oft-maligned for falling apart. The 96A1, a 2010 refresh of the design, solved many of the issues, adding a recoil buffer in addition to heavier construction elsewhere. As a recent design made of alloy, rather than plastic, its street price is about $675. Figure $725, shipped and transferred. Stock magazine capacity is twelve, going up to fifteen with MecGar’s extended jobbers.

The 96A1 also features a front sight dovetail, which brings me to my next item.

Sights
The traditional sighting system for Limited guns is blacked-out rear sights and a fiber-optic front sight. Wilson Combat sells just such a setup for the 96A1, coming to about $1003.

Trigger
Quite a bit going on here. The stock Beretta trigger is plastic, which doesn’t bother me overmuch, and bends a long way forward, which makes it difficult for me to get a good finger on it for the double-action pull. Wilson Combat and Beretta both make an identical steel trigger which features a less aggressive forward bend and a shorter overall reach.

While I’m working in the trigger well, I plan to remove the factory trigger return spring and replace it with a reduced-power unit, to score an easy improvement in trigger pull weight.

The trigger and reduced-power return spring come to about $50.

Action tuning
Wilson Combat sells an action tune kit for $80, which includes three options for lightened hammer springs, a trigger bar, and a chrome-silicon trigger return spring. As far as I can tell, this kit is the only way to get the Wilson trigger bar, which is an important part of tuning lightened trigger pulls.

It goes like this: you install a reduced-power hammer spring. (The kit includes a 12lb spring, down from the 20lb factory spring.) Your gun no longer reliably ignites primers. You install the trigger bar, which lengthens the hammer arc and delivers more impulse to the firing pin.

This is one of the most important mods for a competition gun, and would probably bring the double action pull weight well under ten pounds, and the single-action pull weight to the vicinity of three or four, much better than stock.

Skeleton hammer
The skeleton hammer not only looks cool, it also masses less than the factory hammer. A given spring therefore drives it more quickly, which helps to reduce lock time and increase the energy delivered to the firing pin. $30 from Beretta.

Steel guide rod
This isn’t all that necessary, but I prefer steel parts where I can get them. It also does a little to combat muzzle rise, being a heavier-than-stock part out near the muzzle. $25 from Wilson Combat.

Extended magazine release
As I mentioned in the M9 review, I can’t reach the factory magazine release from shooting position. Wilson Combat makes one which would fit right under my thumb. $50.

Magazine guide
The hammer spring block on 92-pattern pistols normally has a lanyard loop. Wilson Combat makes a magazine guide instead, a sloped piece to guide misses aft into the magazine well. $50.

Gunsmith work
Living near Pittsburgh as I do, Allegheny Arms is within driving distance. As one of the premier Beretta gunsmiths of the modern day, they offer two services of which I want to take advantage. First is a decocker conversion. For a carry gun, I like having a manual safety. For a gun whose sole purpose is competition, I want to do as little as possible coming out of the holster.

Finally, I’m not great at reloads, and any little bit helps. Allegheny Arms will do a fairly aggressive magazine well bevel. It isn’t a full-on magazine funnel, but combined with the Wilson Combat magazine guide, it would meaningfully improve my first-try reload percentage. All together, the gunsmith work comes to $285.

Magazines
The stock Beretta magazines are useless for Limited. To start off, I’d want to buy four MecGar 15-round magazines for a total stage capacity of 60 rounds. That adds $100 to the total. Eventually, I’d probably want to experiment with custom followers and longer extensions4, but given that I could spend an essentially unlimited amount of money tilting at that particular windmill, we’ll leave it off for now.

Finishing
Beretta’s stock finish is fine, but I’ve always wanted a Flat Dark Earth or Desert Sand Beretta. Leaving it at the local cerakote shop costs about $300 for barrel, slide, and frame, plus armory services.

If you’re keeping track, that puts me at right about $1500, not including the cerakote finish. (That seems fair. It’s completely unnecessary, so I could always do it later.) That cost includes some shipping, but maybe not all of the shipping, and of course fixes the value of my time at zero5. In return, I get a Beretta competition pistol, more or less the pinnacle of the platform, for about half of a reasonable 2011 build. It’s what you might call vintage—Beretta hasn’t been properly popular on the competition circuit since the 1990s. It has a tremendous amount of cool factor for me, a massive Beretta fanboy, and even parvusimperator would agree that the 92-pattern pistols are pretty.

So, why haven’t I started building it? Well, a forum post brought a new contender to my attention, and the choice turns out to be harder than I expected. Stay tuned. Next week, we’ll have a look at another Fishy race gun idea, and the week after, we’ll decide which one it’s going to be.


  1. Sometimes, people settle on a given platform because it’s the best. Competition frequently, but not always, finds that platform. For instance, the downforce revolution in Formula 1 came after a long period of mechanical-grip-only racing. We understood aerodynamics, and there were no rules preventing it. It was just that nobody thought to try it. 
  2. Probably can barely even get a used model from a reputable maker at that price. 
  3. I’ll borrow parvusimperator’s sight pusher. If he doesn’t have one, I’ll borrow his brass punches. 
  4. Woo, 3D printing! 
  5. If I consider building a gun leisure, I think that’s reasonable. 

Fishbreath Shoots: Beretta M9 Review

Is it necessary to review the Beretta M9 nowadays? Given the 92-pattern’s long history of military and police issue, I don’t doubt it’s near the top of the list as far as ‘how many people have shot this?’ goes. Am I going to review it anyway? Yes, yes I am. Will it be a traditional review, where I tell you things you already know? No, it won’t.

The gun in question is a bone-stock, commercial production Beretta M9. It isn’t a 92, so it has the flat backstrap and straight dust cover. It’s neither an M9A1 nor an M9A3, so it doesn’t have a rail, retains the original snowman-style sights, and isn’t finished in Modern Operator Tacticool Desert Tan1. It’s an M9, no more, no less, recently produced but in the very same pattern as the M9 as accepted into US military service in 1985.

Like I said, it’s one of the most widely-shot firearms in history. Like many popular things, the stereotypical view of it is wrong.

If you hang around firearms forums, or if you were recently deployed to somewhere sandy and far away, you may be down on the M9. “It’s unreliable! The fiddly bits inside get clogged with sand. Mine is inaccurate. It rattled when I walked. The slide came off of a buddy’s gun and hit him in the nose.”

None of these complaints are strictly inaccurate, but they don’t capture the full picture. Let’s get nerdy and talk about firearms actions for a bit. The 92-pattern pistol, unlike most modern handguns, does not use a Browning-inspired tilting-barrel design2. Rather, it uses a locking block, which engages the frame by lugs until an internal plunger running up against the frame pushes the locking block down to release the barrel.

Though it’s less common nowadays, the locking block action has some advantages. For one, given the traditional open slide, the ejection on the M9 is absurdly reliable. If the case comes out of the barrel at all, it’s leaving the gun. For another, the skeleton slide makes for a much smaller recoiling mass. The main wear item—the locking block—is easier to fix than worn-out cuts inside a slide. All you have to do is replace the locking block, rather than the slide. The bullet at the top of the magazine can feed directly into the barrel, since its angle relative to the barrel never changes. This makes for simpler magazines and requires no faffing about with feed ramps; as a side effect, it means that the M9 will happily feed any ammunition which is not overlong. It also means that feeding failures3 rarely happen outside of torture tests.

Now, the 92-pattern pistol does have some failings as an issue weapon, which we’ve touched on in previous articles. Mainly, a double-action pistol is not especially well-suited to the role the M9 found itself in, that of a soldier’s sidearm. Shooting a double-action pistol well requires mastering both the double-action trigger pull and the single-action trigger pull. It’s a heavy pistol, only incrementally lighter than the 1911 it replaced, and it’s also quite large. I have average-sized hands, and I suspect my thumbs are somewhat shorter than the norm; the magazine release is out of my reach.

I’m purposefully not mentioning the trigger reach or the safety. The former is obviously a problem, and the latter is obviously not. Do you subscribe to the school of thought which claims the 92’s safety is easy to engage by accident while working the slide? If so, next question: have you ever actually done it? Parvusimperator and I once spent a good ten minutes trying to engage the safety by accident, and wouldn’t you believe it, neither of us managed to. This particular complaint is overblown.

I did say that the 92 has some failings as an issue weapon, and if pressed, I might even admit that a striker-fired gun is probably a better choice (for a secondary weapon, because of easier training). Obviously, it isn’t a great choice if your aim is concealment. That leaves two categories: the duty gun and the competition gun. I think it stacks up well in both of those. Let’s look at why.

Weight
For a competition gun in particular, weight is not a bad thing. Even a heavy gun can be comfortably carried in a good holster, and if concealment isn’t a requirement, it’s not terribly hard to make a good holster. Weight means less felt recoil. Less felt recoil means faster, more accurate follow-up shots.

Trigger
It’s a double-action trigger. By definition, that means it’s better than almost every striker-fired trigger in existence. The first pull is rough, but how often do you have to do that? Once4.

Dependability
Much like parvusimperator’s favored Glocks, the M9 is, on the whole, a legendarily reliable piece of equipment. Unlike said Glocks, the M9 requires some attention to hold up its end of the bargain. Any firearm with steel riding on aluminum, like the 92-pattern guns, requires lubrication. It also requires occasional replacement—the design life of an M9 is about 40,000 rounds, and combat conditions undoubtedly shrink that figure. Many of the M9’s alleged flaws can be chalked up to pistols nearing their end of life, and to bad maintenance habits5. Carrying an M9 by itself, or shooting it in competition, leaves a gun owner room to solve both problems.

It’s no secret I like Beretta’s products. My carry gun, after all, is a Px4 Compact, and I’ve taken to shooting the M9 as my standard competition pistol. It’s plenty competitive, both in 3-Gun Nation Practical division, and USPSA Production division. I have some plans, even, to build a Beretta 96 for Limited competition next season. Watch this space.


  1. A color I actually really like. 
  2. For patent reasons, maybe? Ask parvusimperator. 
  3. Why yes, I did choose a picture of a Glock to illustrate this point. No, no particular reason why. cough 
  4. The match-running mavens at Performance Shooting Sports in Ohio are fond of ‘pistol loaded, chamber empty’ start conditions. Those are my favorite. No double-action pull at all! 
  5. I’m not judging, mind. A soldier overseas has many, many tasks which come ahead of ‘pistol maintenance’, not least of which is ‘rifle maintenance’. 

Fishbreath Plays: Starsector 0.8 Kind-Of-Review

I’m a scavenger and salvager by trade. My fleet is half reclaimed ships, free to obtain and cheap to run. Maybe a little less capable, but I have a solid set of four frigates and a combat shuttle. One of those frigates is an armed merchantman. Not only does it have some teeth, it’s hard to kill, and it has a big fuel tank. Refueling the other ships, it can get the fleet out of the core worlds and into the outer sector. I’ve been taking a few scouting and exploration jobs on the side to pay the bills.

The one that landed on my desk last night was a run to Gindraum, a blue supergiant ten light-years from the nearest inhabited world, to scan a derelict ship in the system’s outer reaches. That’s on the edge of my fleet’s range. That shuttle in particular takes just as much fuel as a frigate, but carries less than a third as much as my armed freighter. I left it at Jangala, the world I started out at, along with my shortest-legged frigate.

We set out, stopping briefly to beat up on a pirate fleet which decided to run us down. A week and a half later, detouring around some tremendous hyperspace storms, we came up on Gindraum. By the inner system jump point was a flashing beacon. I brought us closer. It was a message from the Hegemony Navy:

“Warning. This system is known to contain automated weapons systems. Extreme caution is advised.”

Well that’s a little worrying. I turned away from the insystem jump point and headed for the fringe jump point. Hopefully that would drop me a little further from any potential nasties.

We came out of hyperspace in between a ring system and an asteroid belt at roughly a Saturn orbit distance. Turns out that the fringe of this system is really big. I went counterclockwise, finding an awful lot of nothing much for a month and a half. Around a gas giant inside the rings, our sensors found an old frigate carrying a single sleeper pod. Inside was a very confused lieutenant who agreed to join up with me and warned me about some dormant combat drones around the backside of a nearby moon. I kept my distance.

Finally, we found the derelict we were after, in a nebula out beyond the rings by the old hyperspace communication relay. An active drone flew a patrol pattern around it. I’m not averse to a scrap (or the scrap following a scrap), but nobody likes fighting combat AI. At my order, the fleet went dark, creeping through the nebula at low signature while the drone was on the far side of its orbit. We came up on the derelict, ran the scanner package the client gave us, and turned to run, just as the drone came back around. Between the nebula and the silent running, I made my escape. Fuel and supplies running low and money in hand, I set a course for the jump point. Time to head home.

I’ve written about Starsector before. Two and a half years ago, it turns out. That, in part, is the story of Starsector: a game which has been available in pre-release form for at least six years. I first played it in college, in fact; one day, I put it up on a projector and hooked it into the suite’s sound system, and sold several copies on the spot.

Since then, it’s seen little updates: ship fitting, an economy here, a random battle generator there. Yesterday, though, the developer released version 0.8, and finally, we have a closer approximation of what we can expect on that glorious day when release arrives.

It’s spectacular. I’m not given to hyperbole, or indeed to statements without hedging of some kind or another, so don’t miss the import of this statement: Starsector is going to go down in history as a timeless classic. I fully expect it will end up being the best space sandbox game of the decade. It’s that good.

The story above gives you some idea of what’s been added. Surveying and salvage flesh out the list of things to do, and a procedurally-generated outer sector adds an enormous playground in which to do it. (To say nothing of the massively expanded sector core—there’s plenty to do before you start to dip your toes in the outer system.)

Honestly, I don’t want to say too much, because I don’t want to rob you of the sense of wonder you’ll feel when you play through it yourself. Rest assured, though, Starsector was good two and a half years ago, but it’s an incredible experience now, and it isn’t even done. You owe it to yourself to pick it up. You can do so here.

Tesla Motors: Ignoring Facts of Human-Machine Interaction Since 2014

Okay, I’ve had about enough of Tesla’s zombie legion of brainwashed fans reflexively and ignorantly defending them on autopilot grounds, so it’s time for a good old fashioned rant. I have two targets.

First: autopilot itself. Tesla’s autopilot is a nifty technological achievement. In its current state, though, it’s dangerous, and it disregards seventy years of research into how humans interact with machines. This book, on the specific topic of human reliability in transit systems, cites just over two hundred sources. In the world of trains, locomotive cabs usually feature a device called an alerter. If the driver doesn’t flip a switch or press a button every so often, the locomotive automatically stops.

The locomotive, actually, is a good analogue for the specific sort of cognitive load imposed by driving with an assisted cruise control system. If you read my Train Simulator review, you have some idea what I mean. For the benefit of you who did not read it, let me sum up.

Driving a car manually is a task with relatively evenly-distributed (low) difficulty. It takes constant attention to keep from hitting something or driving off the road. It may take more attention at times, but there’s a certain minimum cognitive load below which you can no longer drive a car. Sure, it’s no helicopter, but you do have to be paying at least a little bit of attention. This is materially different from driving a train or a semi-automatic car.

Piloting those two forms of transit requires so nearly zero input from the driver as to be indistinguishable therefrom. In both cases, the vehicle handles the moment-to-moment input required to keep itself from crashing into things1. The driver has no ongoing task to keep his mind focused. A quick sampling of Wikipedia articles on train crashes shows, broadly speaking, two sorts of accident which capture almost every incident: equipment failures causing derailment, and driver inattentiveness causing a train to run into another train2. In fact, the trend with trains is increasing computerization and automation, because—shocker—it turns out that humans are very bad at watching nothing happen with boring predictability for dozens or hundreds of hours, then leaping into action the moment something begins to go wrong. This article, by a self-proclaimed UI expert3 goes into great detail on the problem, using Google’s experience with testing self-driving cars as an example. The train industry knows it’s a problem, too, hence the use of the alerter system I mentioned earlier.

“Well then, you ought to love what Tesla is doing!” I hear you say. Don’t get me wrong, I think they’re making intriguing products4, and the technology which goes into even the limited autopilot available to Tesla drivers is amazing stuff. That said, there’s a twofold problem.

First, no self-driving system—not even Google’s more advanced fleet of research vehicles—is perfect. Nor will they ever be. Computerizing a train is trivial in comparison. There’s very little control to be done, and even less at the train itself. (Mostly, it happens at the switching and signaling level, and nowadays that’s done from a centralized control room.) There are very few instances driving a train where you can see an obstacle soon enough to stop before hitting it, and very few instances where it’s worth stopping to avoid hitting the thing you might hit. Again, though, hitting a deer with a train is materially different than hitting a deer with a luxury sedan. More generally, there’s a lot more to hit with a car, a lot more of it is dangerous, and it’s a lot more difficult to tell into which category—dangerous or no—a certain piece of stuff falls.

Second, there’s a problem with both driver alertness systems and marketing. To the first point, requiring that you have your hands on the wheel is not enough. There’s a reason a locomotive alerter system requires a conscious action every minute or so. Without that constant requirement for cognition, the system turns into another thing you just forget about. To the second, calling something which clearly does not drive the car automatically an ‘autopilot’ is the height of stupidity5. Which brings me to the second rant I mentioned at the start of the article.

Tesla fans.

You see, whenever anyone says, “Maybe Tesla shouldn’t call their assisted driving system Autopilot, because that means something which pilots automatically,” an enormous gaggle of geeks push their glasses up their noses and say, “Actually…”6

I’m going to stop you right there, strawman7 in a Tesla polo. If your argument starts with “Actually” and hinges on quibbling over the definition of words, it’s a bad argument. Tesla Autopilot is not an autopilot. “What about airplane autopilots?” you may ask. “Those are pilot assistance devices. They don’t fly the airplane from start to finish.” Precisely. The pilot still has lots to do8, even to the point of changing speeds and headings by hand at times. More to the point, it’s almost impossible to hit another plane with a plane unless you’re actively trying9. Not so with cars. Cars exist in an environment where the obstacles are thick and ever-present. A dozing pilot is usually a recipe for egg on his face and a stiff reprimand. A dozing driver is a recipe for someone dying.

I also sometimes hear Tesla fans (and owners) saying, in effect, “Just pay attention like I do.” The hubris there is incredible. No, you are not unlike the rest of the human race. You suffer from the same attention deficit when monitoring a process which mostly works but sometimes fails catastrophically as does the remainder of the human race. It is overwhelmingly more likely that you overestimate your own capability than that you’re some specially talented attention-payer.

To quote Lenin, “What is to be done?” Fortunately, we have seventy years of research on this sort of thing to dip into. If your system is going to require occasional human intervention by design, it has to require conscious action on the same time scale on which intervention will be required. Trains can get away with a button to push every minute because things happen so slowly. Planes have very little to hit and lots to do even when the plane is flying itself. Cars have neither luxury. To safely drive an Autopilot-equipped car, you have to be paying attention all the time. Therefore, you have to be doing something all the time.

I say that thing ought to be steering. I’m fine with adaptive speed, and I’m also fine with all kinds of driver aids. Lane-keeping assist? Shake the wheel and display a warning if I’m doing something wrong. Automatic emergency braking? By all means. These are things computers are good at, and which humans can’t do: seeing a specific set of circumstances and reacting faster than humans. Until the day when a car can drive me from my house to my office with no input from me—a day further away than most people think—the only safe way for me, or anyone, to drive is to be forced to pay attention.

Update 04/21/17
I’m not usually one to revisit already-posted articles, but this is just too much. In this Ars Technica comment, a Tesla owner describes “multiple uncommanded braking events” since the last software update. In the very same post, he calls his Tesla “the best car I’ve ever owned”.

If you needed further proof of the Tesla fan’s mindset, there it is.


  1. Whether by advanced computer systems and machine vision, or by the way flanged steel wheels on top of steel rails stay coupled in ordinary circumstances. 
  2. Sometimes, driver inattentiveness causes derailments, too, as when a driver fails to slow to the appropriate speed for a certain stretch of track. 
  3. I like his use of a topical top-level domain. We over here at .press salute you, sir! 
  4. Electric cars weren’t cool five years ago. Now they’re kind of cool10
  5. In a stroke of genius, Cadillac called a similar system ‘Super Cruise’. I’ll be frank with you: when a salesman is going down the list of options for your new Caddy, and he says, “Do you want to add Super Cruise?” your answer is definitely going to be, “Heck yes. What’s Super Cruise?” It just sounds that cool. Also, it has a better, though not quite ideal, solution to the driver attentiveness problem. There’s a little IR camera on the steering column which tracks your gaze and requires you to look at the road. 
  6. Yes, I realize that also describes me and this article. I also just fixed my glasses. 
  7. Never let it be said that our qualities do not include self-awareness and self-deprecation! 
  8. The occasional embarrassed dozing pilot story notwithstanding. 
  9. That’s why it’s always news on the exceedingly rare occasions when it happens, and frequently news when it doesn’t, but merely almost happens. 
  10. If poorly built, but Tesla say they’re working on that. 

OpenTafl v0.4.6.2b released

OpenTafl has seen some major development work for the first time in a while, culminating in the recent release of v0.4.6.2b.

This version adds some major features which have been on my to-do list for some time. First, the in-game and replay board views now support keyboard input, a major usability enhancement. No longer will mistaken command entries torpedo your games!

That feature, however, was merely a happy piece of good fortune, falling out of the true headline feature for the v0.4.6.x releases: a variant editor. That’s right. OpenTafl is now the best tool available for designing tafl rules, bar none. Not only can you individually tweak every rule described in the OpenTafl notation specification, you can also edit the board layout to look any way you like.

If you’re interested in playing a few games with the new UI or experimenting with rules variants all your own, you can, as always, get the latest version from the OpenTafl website. I haven’t promoted v0.4.6.x to the stable release yet, but I expect to do so soon.

With these features done, I turn my attention next to a few network-centric things for v0.5.x. OpenTafl’s network play server has not, to date, seen much use; now that PlayTaflOnline.com is getting close to its new architecture, I hope to write a PlayTaflOnline front end for OpenTafl, so you can use OpenTafl to play games at PlayTaflOnline, with all the rich support for replays, commentary, and analysis from OpenTafl. OpenTafl’s network server mode and self-contained network play will continue to be a supported mechanism for remote games, but won’t see new features. v0.5.x will also contain an automatic updater, to simplify the end-user updating process.

Looking further into the future, I’m running out of OpenTafl features I want to do. With luck, 2017 will see a v1.0 release.

The Crossbox Podcast: Episode 18 – Monsters Among Us

In this October-themed episode for April, we talk monster hunting, monster-size reference books, and monstrous failures, with a side order of cheap beer and cheap Glocks.

Further reading
Spoilers on Resident Evil 7 from about 32:00 to 35:30.
Predictably, John was correct and Jay was not on a point of firearms trivia: the Remington R51 is a modernized Remington Model 51, an early-20th-century pocket pistol.

Continue reading

Fishbreath Plays: MHRD Review

If you like puzzle games, it’s a good time to be alive. You’ve got your programming puzzle games, like Shenzhen I/O, SpaceChem, and really, the entire Zachtronics catalog; you’ve got your process optimization puzzle games, like Big Pharma and Production Line; you’ve got puzzle games of every shape, size, color, and description.

You even have, it turns out, logic puzzlers. That’s where MHRD comes in. You’re a hardware engineer for the waggishly-named Microhard, a company building the Next Big Thing in CPU design in the 1980s. You start with a single logic element: a NAND gate (for the uninitiated, that means not-and). You end up with a simple but entirely functional 16-bit CPU1, designing all the logic circuits you need along the way. Start with NAND, build the rest of the logic gates, figure out your multiplexers, demultiplexers, adders, and memory elements, put it all together into your higher-level CPU components.

It’s packaged in a fun, oldtimey DOS-style terminal editor, and unlike a lot of retro UIs, it doesn’t wear out its welcome. All your circuit design happens in a hardware description language, in an in-game editor. The editor has some foibles: it doesn’t scroll, and it only does line wrapping when adding text. On the other hand, it has a decent auto-completion engine. The hardware description language makes sense: you refer to pins and buses by name, connecting them to other pins and buses with an arrow operator. For instance, opCode->alu.opCode would connect the circuit’s opCode input to the ALU’s opCode input. Generally, the syntax is straightforward and easy to remember. Sound effects are basic; you get a background fan whir befitting an old PC, and an IBM keyboard sound effect which wears out its welcome after a while.

That’s all there is to it, which brings me to my next point. Is it good as a game? That’s a harder question to answer. It is sited in a difficult middle ground. It can’t be too freeform—given an instruction set and a CPU specification, very few people who don’t already know how could build all the necessary subcomponents. At the same time, it shouldn’t be too static, or else it feels a little too much like rote construction to the truth table for the component at issue. MHRD errs a bit too far in the latter direction. There is no real sandbox. All you’re doing is building the gates and circuits the game tells you to, in exactly that order. There’s no discovery to be had, and not a lot of freedom to design solutions in different ways. Unlike, say, Shenzhen I/O, the problems are small enough that it’s never all that unclear how to solve them.

That isn’t to say that there’s no fun to be had. If you aren’t a hardware engineer, or a software engineer with a deep interest in hardware2, you will find it fascinating how few steps it takes to get from a NAND gate to a functioning processor3. There are leaderboards, too, based on NAND counts for each element. Given that logic design is a fairly well-understood field, the NAND counts are uniformly the smallest possible number of gates required for each task, which gives you a nice target to aim for. The developer is active on his Steam forum, and seems to have more planned for the game. Given that it’s an atmospheric logic puzzle that I, an experienced software engineer, found enjoyable and educational, I think it’s worth a buy. (You may want to wait for a a sale.)

At the same time, there’s a better way. (If you’ve been reading the footnotes, you should have seen this coming.) There’s a free course out there, a Computer Science 101 sort of thing, called Nand2Tetris. As the name suggests, it’s similar to MHRD in that you’re building a CPU from a NAND gate alone. Nand2Tetris differs in two ways. First, it isn’t a game. As such, there isn’t a plot (MHRD’s is skeletal, but present), or any pretension that it’s about anything besides learning. Second, it goes a lot further. MHRD stops at the aforementioned functional CPU. The last puzzle combines the instruction decoder, the ALU, and some registers, and that’s it. It verifies your solution by running a few instructions through the CPU, and you’re done.

Nand2Tetris, as the name suggests, keeps going. After you finish the CPU, you write a compiler to generate your microcode. After you write your compiler, you write an operating system. After that, you can run Tetris. Furthermore, although you have assignments, you also have a proper sandbox. You get a hardware design language and a hardware simulator, and you can build anything you like. That, I feel, is the promise of a logic design puzzle game, and MHRD doesn’t quite deliver.

In the final reckoning, though, I say MHRD is worth the price of entry. I don’t really have the inclination to write my own compiler, and I have plenty of other software projects besides. If you’re only interested in the logic design portion, you ought to get MHRD too. If, on the other hand, you want to really understand how computers work—how the processor you built becomes the computer you use every day—try Nand2Tetris instead.


  1. It’s very similar in architecture, I understand, to the CPU designed in the Nand2Tetris course. We’ll come back to that. 
  2. Or a very good memory for that hardware class you took back in college. 
  3. Not counting the memory elements, the CPU task takes fewer than 800 NAND gates in the minimal solution. My current best is 3500.