Implement Bounty mechanism
Posted: Wed Oct 29, 2025 7:11 am
I was surprised to discover that we don't actually have any mechanism for paying bounties, thus you can't actually hunt pirates for bounty.
Sure, you can scoop their cargo crates, but technically that would make you a pirate-pirate (anti-pirate?), plus you need cargo scoop (and do the scooping work), which puts constraints on your ship and equipment for hunting pirates.
Minimal implementation
Ships spawned by data/modules/Pirates.lua have a bounty to their head depending on ship tonnage/model (and weapons?). Size of bounty should be significantly lower than assassination mission rewards.
In onShipDestroyed, pay bounty to player (but only if they did the killing shot - I guess we can use the same code that iterates player's kills), display some message from pilot's guild or similar
For now: ignore enemy ships spawned by mission modules, they might not be known pirates, but discrete assassins with no bounty award
Though ideally: if a mission module has spawned pirates they should also have a bounty.
Preferred implementation
There's the issue with how fast do you get payment in deep space. My solution is this, which would also give some nerdy achievement chart-bling-bling:
Over-complicated implementation
Player must outfit their ship with a gun camera. Perhaps the gun camera slot is not on the ship but on the weapon, thus when you buy any kind of weapon, your ship is fitted with a gun camera slot? Sounds like a lot of code-work, for very little payoff. We can just say all ships/weapons have a gun camera built in.
(If you have a gun camera, do you turn it off when you want to be a pirate in deep space? That might actually be interesting. But require some UI button, and consequences if you forget to turn it off.)
Anyway, I don't have time & motivation to implement the above at the moment so I'm leaving it here, hoping to inspire someone to pick it up.
Sure, you can scoop their cargo crates, but technically that would make you a pirate-pirate (anti-pirate?), plus you need cargo scoop (and do the scooping work), which puts constraints on your ship and equipment for hunting pirates.
Minimal implementation
Ships spawned by data/modules/Pirates.lua have a bounty to their head depending on ship tonnage/model (and weapons?). Size of bounty should be significantly lower than assassination mission rewards.
In onShipDestroyed, pay bounty to player (but only if they did the killing shot - I guess we can use the same code that iterates player's kills), display some message from pilot's guild or similar
For now: ignore enemy ships spawned by mission modules, they might not be known pirates, but discrete assassins with no bounty award
Though ideally: if a mission module has spawned pirates they should also have a bounty.
Preferred implementation
There's the issue with how fast do you get payment in deep space. My solution is this, which would also give some nerdy achievement chart-bling-bling:
- in InfoTab / F3 there's a Bounty tab (or section) with a table
- Table has columns showing ship's registration number, ship's model, bounty reward, (and maybe pirate's name)
- When you kill a pirate, the registration and ship model fields are filled in, but not the bounty or pilot name - we don't know that in deep space
- When you land the bounty (and pirate's name if we care about that) is filled in, and you're payed, and get a message to that effect.
- Specifically: you're payed by the current faction's police force, this is good because it reminds you which faction you're in (otherwise easily not noticed), perhaps some factions pay more like a 1.5x premium for instance, so it's better to collect in a different faction? Would be cool if you had to manual go to the police station (tab) and request bounty payout. Would make visiting police more useful, plus self-documenting the existence of bounty hunting.
- Maybe police list their bounty payouts? "100t = $500", etc., but then it would have to be simple, only based on tonnage, not pirate captains noteriety.
Code: Select all
| Date | System | reg nr | Ship model | Bounty | Pilot |
|------------+------------------+--------+------------+---------+--------------|
| 3225-10-31 | Proxima Centauri | LN-293 | Malabar | PENDING | Captain hook |
| 3224-06-23 | Sirius | XR-782 | Kanara | $400 | LeChuck |
Player must outfit their ship with a gun camera. Perhaps the gun camera slot is not on the ship but on the weapon, thus when you buy any kind of weapon, your ship is fitted with a gun camera slot? Sounds like a lot of code-work, for very little payoff. We can just say all ships/weapons have a gun camera built in.
(If you have a gun camera, do you turn it off when you want to be a pirate in deep space? That might actually be interesting. But require some UI button, and consequences if you forget to turn it off.)
Anyway, I don't have time & motivation to implement the above at the moment so I'm leaving it here, hoping to inspire someone to pick it up.