Design: combat rating and combat missions

Status: agreed direction, Modern rules unless stated otherwise. Weighted kill points (sections 1–3) and the status display (section 6) fit into the single-player game now. Player kills (section 4) wait for multiplayer, and missions (section 5) for a mission system. Numbers marked (to tune) are starting points for playtesting.

The idea

The rating from Harmless to Elite stays what it was in 1984: a measure of how good you are in a fight. Witchspace keeps the original names and thresholds, but changes what earns points:

  1. Danger earns points, not body count. Beating a pirate in a well-armed ship is worth far more than shooting a trader.
  2. Combat missions are the main road to Elite. Kills along the way help, but the big steps come from taking on hard, deliberate fights.
  3. Other players are worth the most, if they're a real match for you. Picking on weaker commanders earns nothing.
  4. Crime earns nothing. Killing innocent traders or the police never raises your rating.

Trading, exploration and delivery missions pay credits and reputation, never rating points. "Elite" means a combat pilot, as it always has.

Related designs: law and travel (crime, bounties, Marshals, power and protection), player-run stations (stations that issue missions).


1. Ranks and thresholds

The ranks and thresholds are the original's, now counted in rating points rather than kills:

Rank Points
Harmless 0
Mostly Harmless 8
Poor 16
Average 32
Above Average 64
Competent 128
Dangerous 512
Deadly 2,560
Elite 6,400

The rating never goes down. Points are kept to fractions internally, as the later 8-bit versions did, and shown rounded.

2. What history tells us

The 1984 BBC Micro version gave one point per kill, whatever you killed. Players soon found the cheapest road to Elite: wait outside a station and shoot police Vipers.

The Commodore 64 version, and then the BBC Master, Apple II and NES versions, gave each ship type its own value. That made pirates and Thargoids the way up. Some of those values:

Ship Original points
Constrictor / Cougar 5.33
Thargoid 2.66
Fer-de-Lance 1.25
Cobra Mk III (pirate) 1.16
Asp Mk II 1.08
Anaconda 1.0
Cobra Mk III (trader) 0.91
Mamba 0.5
Sidewinder 0.33
Viper (police) 0.10
Escape pod, shuttle 0.06
Cargo canister 0.04

Source: bbcelite.com, combat rank and ship specifications.

The lesson is that a fixed value per ship type is a big improvement, but players still hunt whatever pays best for the least risk. Witchspace adds the context of each fight.

3. Points for NPC kills

Points = ship value × role × threat × experience

Ship value

Each ship's JSON file gets a ratingValue, starting from the original's table above. New ships take a value in line with ships of similar strength. Community-designed ships need one too, checked by npm run validate.

(Built, 26 October 2026: Sidewinder 0.33, Mamba 0.5, Cobra Mk III 0.91, Viper 0.1, Bullsnake 0.5, Lancer 1.25, Falcon 2.0, Bastion 5.33, cargo canister 0.04; the station, the Titanoboa and missiles 0.)

Role

Target Multiplier
Pirate, or a ship with a bounty × 1.3 (the original's pirate Cobra was worth about 1.3 times a trader's)
Thargoid × 1 (already valued highly)
Trader, police or any clean ship 0 under Modern rules: it's a crime, and crime earns nothing
Ship that attacked you first, even if clean × 1: defending yourself is legitimate

Threat

How well armed and supported the target was (to tune):

Experience

Easy targets wear thin as you improve. Every NPC has a threat rank worked out from its ship, role and kit, for example:

Your rank compared with the target's Multiplier
At or below the target's rank × 1
One rank above × 0.5
Two ranks above × 0.25
Three or more above 0

A Deadly pilot gets nothing for Sidewinders, but every fight with a real threat still counts.

The combat computer

Kills made while the combat computer flies the ship count × 0.5: the rating should mean you flew the fight yourself.

How it's built

Sections 1–3 and 7 are built for Modern rules (src/game/rating.ts, with tests): ship value × role × threat × the odds × experience, halved for the combat computer. Threat counts the laser (beam × 1.2, military × 1.5), an ECM (+0.15) and missiles (+0.05 each, up to four), up to × 2. The odds count the other ships fighting you when it died. A foe's threat rank comes from the same numbers: a lone Sidewinder pirate is Poor, a pirate Cobra with a beam laser Competent. Destroying another commander earns nothing for now, because the game treats it as a crime (section 4 comes with legitimate fights). Driving off the Falcon counts as a kill. From Harmless, Average now takes about 70 lone Sidewinder pirates rather than 32 kills of anything.

4. Points for player kills (multiplayer)

Other players are the most valuable targets when they're a real match.

Points = their ship's value × 3 × rank factor (to tune)

Their rank compared with yours Rank factor
Two or more ranks below you 0, and the law takes a dim view (see power and protection)
One rank below × 0.5
Same rank × 1
One rank above × 2
Two or more ranks above × 4, up to × 8

A Competent pilot who brings down a Deadly one in a better ship has earned a lot.

Rules against abuse:

5. Combat missions

Missions are the main road to Elite. Only combat missions award rating points. Trading, courier and exploration missions pay credits and reputation only.

Kinds of mission

Kind Examples Rating points
Contracts (repeatable, from station boards) Bounty on a named pirate; escort a trader convoy; defend a station from a raid; clear a pirate nest in an anarchy Moderate. Scales with the danger, uses the experience rule from section 3
Campaigns (one-off, multi-stage stories) Hunt down a stolen prototype warship; stop a Thargoid incursion before it reaches a system Large: 256 points for the hardest, the size of the original's "Right On Commander!" step
Player contracts (multiplayer) Bounties posted by players, the Marshals or loan sharks (see law and travel) As for player kills (section 4)

Rank opens doors

Content

Missions are a natural community contribution, like ships. A mission would be a data file: issuer, minimum rank, stages, enemies and rewards. It would be checked by npm run validate and kept original, with no missions or characters copied from the original games or novels.

6. Pacing

A rough target for the road to Elite (to tune):

Rank Total play time Mostly from
Competent ~10 hours Pirates met on the way, first contracts
Dangerous ~40 hours Contracts
Deadly ~150 hours Contracts, first campaigns
Elite ~300+ hours Campaigns, hard contracts and other players

Missions should provide well over half of the points above Competent. Elite should stay a long-term goal that few commanders reach.

Routes to Elite: explorer first

Exploring never earns rating points (Elite means a combat pilot), but exploring to Pathfinder first is a natural apprenticeship for the road to Elite:

  1. It pays for the fighter. A proper fighting fit (military laser 6,000, a rear beam 1,000, extra energy 1,500, ECM 600, escape pod 1,000, missiles) costs 10,000–16,000 Cr: about what Pathfinder takes to earn at the new pacing, with no money risked on cargo.
  2. It teaches the flying: jumps, fuel, mass lock, docking, the chart, closing on a target, staying out of the star.
  3. It teaches the map: where the anarchies and big bounties are, which high-tech stations sell military lasers, where to refuel on the run.

Military lasers are earned (Mark, 28 October 2026): "I thought military lasers were only available much later on in the game and commanders would need to be at least Competent, or else it would be far too easy." Under Modern rules a station sells a military laser only to a pilot rated Competent or above (and still only at tech level 10 and up); the shipyard's configurator follows the same rule. Classic sells them as 1984 did. 4. The kit carries over: long-range tanks for escape jumps and reaching the frontier; Wexley-Yorozu standing for guarding their yards and developments.

To make the pairing designed rather than accidental (proposed):

Explorer rank Combat rank of similar effort
Pathfinder Average / Above Average
Trailblazer Competent
Pioneer Dangerous
Voyager Deadly

Elite has no twin.

7. Showing it

8. Classic rules

(For now Classic still counts one point a kill, as the first BBC version did: Classic stays as it is until Mark decides on the per-ship values below.)

Classic uses the original per-ship values from section 2, as the Commodore 64, BBC Master, Apple II and NES versions did, rather than the first BBC version's one point per kill. Every kill counts, police and traders included, at their original (low) values: it's a crime, but the rating doesn't judge. There's no role, threat or experience multiplier, and no player kills, because Classic is single-player. Combat missions may appear under Classic later, as one-off campaigns in the spirit of the original's missions.

9. Moving existing commanders over

Existing commanders keep their kills, converted one-for-one into rating points, so nobody loses rank when weighted points arrive. (Built: the commander's kills already holds points, so nothing needed converting.)


Open questions

Think something here should change? Say so on the ideas board, where others can vote it up, or email hello@witchspace.org.uk. If you code: this page is docs/design/combat-rating.md on GitHub, open to pull requests.