RogerBW's Blog

First Harpoon PBEM AAR: Gulf Escort Deja Vu 24 June 2014

After I'd written the software, I had to try it out; I had one experienced player and one newcomer to Harpoon (though he knows the real-world technologies and tactics), and we played by email over about a week. Here's the after-action report.

The scenario was Gulf Escort Dejá [sic] Vu, an introductory anti-surface warfare exercise from the Harpoon 4.1 scenario book: two Iranian Houdong PTGs, basically a Chinese copy and upgrade of the Osa, attempt to sink a tanker in the Persian Gulf and its escorting Halifax-class frigate. I made some minor changes to account for the real-world locations, such as adding a zone round the military airfield at Ras al-Mishab (near the northern tip of the Gulf) which was the tanker's goal area.

The maps presented here are from a referee's-eye view. The full chart from which these are extracted is available here (but beware, as it's a 9200×6732 bitmap that takes over 14 megabytes).

Red chose to keep his two boats together, and they started moving in towards the start point at 20 knots, with one radar active.

Start position

An hour after scenario start, Blue launched Ville de Québec's helicopter, and as it gained altitude immediately got an ESM detection on the attackers; it was ordered to move in on that bearing, with search radar active. (The minimum range on the shading is because Ville de Québec herself wasn't getting an ESM hit, which would have been the case if the boats were closer.)

Helo launch

Some ten minutes later, the PTGs detected the helicopter's search radar (it never came into their visual or gunnery range, but since both boats were detecting it they had a cross-bearing so I plotted it on the map anyway).

Helo detected

The PTGs continued to head west towards the Qatari coast. By 1403, with a good radar image of the whole coast, Red decided that the convoy wasn't hiding there, and turned north.

Turning north

The frigate made a quick sprint to the south to put some distance between it and the tanker, and turned back towards the north-west just as the PTGs picked it up on radar. The tanker started to evade, insofar as it could. The PTGs picked up speed.


Ville de Québec put herself squarely between tanker and attackers.

Threat axis

At 1506 the tanker finally came within radar range in spite of its limited evasive manoeuvres. The helicopter was now pretty low on fuel, keeping close to Ville de Québec.

Tanker detected

Ville de Québec turned to allow the helicopter to land; refuelling and rearming began immediately.

Helicopter lands

Red was taking advantage of the rules of engagement, going for a single missile salvo at close range; he planned to fire as he crossed the tanker's wake, then to make a break for safety.

Turning away

Things started happening very fast. Red turned and launched all the missiles from both boats, staying at top speed. Thanks to the short range, Ville de Québec had only a very brief window in which it could open up on them without risking hitting the tanker itself.

Missiles in flight

The first missile swarm was taken down by a lucky Bofors shot and most of Ville de Québec's Sea Sparrow complement. But only one of the second swarm was hit; the remaining three struck home against the tanker. Damage against this massive ship wasn't enough for immediate sinking or even speed reduction, but critical hits caused major flooding and loss of cargo (the latter having no game effect; given that the tanker's heading north-westwards through the Gulf, one assumes that there's no oil on board).

Ville de Québec returned fire with a spread of four Harpoons. They locked on, two going after each PTG.

Return fire

The PTGs' guns weren't up to the challenge of sea-skimming missiles with terminal manoeuvres; one missile was decoyed away, but the other three hit, sinking both boats.

Over the course of the next several hours, against the odds, the crew of Algowest proved unable to bring the slow but steady flooding under control, with the tanker eventually foundering at 0230 the next morning.

A tactical victory to the Iranians, then (missile boats are cheaper than tankers). Thanks to John (Red) and Tomasz (Blue) for being my guinea pigs. Things I've learned from running this game:

  • Plotting the maps takes a while (30 seconds or so) since it has to manipulate huge bitmaps, so I don't want to do it casually. (It's far slower than working out new positions based on courses and speeds, which takes a fraction of a second.) A range table in plain text form lets me make decisions quickly (e.g. a player has said "move unit A so as to keep ranges roughly equal between units X and Y", and I want to know whether I've guessed at the right course), so I've written a stripped-down version of the plotter which just generates that.

  • It would be nice to have a syntax for conditions. For example, "let me know when the range between unit X and unit Y is less than ten miles" or "when the bearing from X to Y crosses Z". Then the system could just roll time forward until such a condition was reached. In practice, I did this manually.

  • Full NTDS symbology (with course, speed and possibly altitude), as plotted in the examples I posted last time, makes the map too cluttered when there's a history plot and units get close together. Just a unit ID is enough; the history plot gives a visual impression of recent courses and speeds. (Enemy courses and speeds should probably be in the range table that's supplied to the players at each decision point along with the map. Altitudes, too. Once I work out a decent presentation format.)

  • On the other hand that history plot doesn't need to include the whole game. Looking just back half an hour is a workable default when we're in three-minute tactical turns. So that's what we've got here.

  • It would be nice to be able to zoom in a bit, especially during engagement turns. The TPCs are bitmapped, but I could scale up a section for a larger plot and it probably wouldn't look too horrid. This will take a while to sort out, though.

  • Conversely it would be nice to have an intermediate level between the tactical picture as I've included it here and the full 60-megapixel chart, so that one can readily see the context of one's units without having to find them on the full map. Perhaps expanding the cropping margins on the tactical chart would help?

  • Aircraft fuel consumption is way more complex than it needs to be. Next time I do this I'll start with a table for each aircraft of kg of fuel used per tactical turn by throttle setting and altitude.

  • Once the missiles are flying, it all gets a bit sudden, and there's not really scope for much player interaction.

  • Yes, all right, Tomasz, you were right and I'll use the Smarter Radars rules next time. But I need suitably revised range figures for the Radar 998.

  • I'd be happier if I were using a "real" time system (e.g. POSIX time) rather than just hours and minutes, just as I'm happier with "real" latitude and longitude than with x/y plots on a table. As things stand, if a scenario spans local midnight, everything will get horribly confused; and the official system for representing 15-second time granularities, of HHMM.2, HHMM.5 and HHMM.7, simply offends me. So I'll probably do that, and convert to a displayed time as needed. (As a bonus, this will give me the possibility of accurate sunrise/sunset calculations.) And if necessary, I can even put each side's units in a different time zone (as happened in 1982 in the Falklands, where the British operated on GMT while the Argentinians were running on their local time).

  • I want to do it again.

If you would like to see the full versions of the maps as seen by the players, note that they are now available here.

See also:
Fourth Harpoon PBEM AAR: Gulf Escort Deja Vu Again

Comments on this post are now closed. If you have particular grounds for adding a late comment, comment on a more recent post quoting the URL of this one.

Tags 1920s 1930s 1940s 1950s 1960s 1970s 1980s 1990s 2000s 2010s 3d printing action advent of code aeronautics aikakirja anecdote animation anime army astronomy audio audio tech aviation base commerce battletech beer boardgaming book of the week bookmonth chain of command children chris chronicle church of no redeeming virtues cold war comedy computing contemporary cornish smuggler cosmic encounter coup covid-19 crime cthulhu eternal cycling dead of winter doctor who documentary drama driving drone ecchi economics en garde espionage essen 2015 essen 2016 essen 2017 essen 2018 essen 2019 essen 2022 essen 2023 existential risk falklands war fandom fanfic fantasy feminism film firefly first world war flash point flight simulation food garmin drive gazebo genesys geocaching geodata gin gkp gurps gurps 101 gus harpoon historical history horror hugo 2014 hugo 2015 hugo 2016 hugo 2017 hugo 2018 hugo 2019 hugo 2020 hugo 2022 hugo-nebula reread in brief avoid instrumented life javascript julian simpson julie enfield kickstarter kotlin learn to play leaving earth linux liquor lovecraftiana lua mecha men with beards mpd museum music mystery naval noir non-fiction one for the brow opera parody paul temple perl perl weekly challenge photography podcast politics postscript powers prediction privacy project woolsack pyracantha python quantum rail raku ranting raspberry pi reading reading boardgames social real life restaurant reviews romance rpg a day rpgs ruby rust scala science fiction scythe second world war security shipwreck simutrans smartphone south atlantic war squaddies stationery steampunk stuarts suburbia superheroes suspense television the resistance the weekly challenge thirsty meeples thriller tin soldier torg toys trailers travel type 26 type 31 type 45 vietnam war war wargaming weather wives and sweethearts writing about writing x-wing young adult
Special All book reviews, All film reviews
Produced by aikakirja v0.1