[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 3781: ob_start(): output handler 'ob_gzhandler' conflicts with 'zlib output compression'
Oolite Bulletins • Equipment by Ship Role
Page 1 of 1

Equipment by Ship Role

Posted: Wed Mar 18, 2020 9:22 pm
by Redspear
So this was the best title I could come up with, eh?

v1.0 Summary:
  • Alterations to pirate and escort equipment and availability.
    In short, they neither need fuel injectors nor are their long term interests always well served by their use
  • Also Vipers can appear as escorts but not pirates (the latter might be too confusing)
  • Vipers usually have injectors but interceptors don't!
  • Better odds for player to escape from pirates but not for pirates to escape police
- - - - - - - - - - - - - -

I know, it's a terrible title but this is a WIP and I'll almost certainly change it.

After my ramblings here, I went on a trawl through shipdata.plist and found details of interest regarding prevalence of injectors and ship speed.

Short Version:

In an effort to alter how combat is often experienced for the beginner and yet keep it recognisable for the veteran player, I'm considering tweaking the occurance of injectors in non player ships in two ways.
  • Reducing their general frequency
  • Swapping one ship for another more likely and useful (IMO) candidate
There may be some population tweaks as well a la Traffic Redistributer oxp.

Long version:

As I suspect most readers are well aware, the mk 3 was one of only two (two and a half if you count the viper pursuit) vessels to be granted a speed boost compared to the original elite. It's the default player ship in oolite and the only player ship in elite.

A comparison:

Elite first.
The mk 3 can reach speeds of 0.3
It can be outrun by mambas, sidewinders, asps and (crucially) police (vipers)
Kraits and the Fer de Lance can also keep pace with it

Now Oolite
The player mk 3 can reach 0.35
Only sidewinders and asps can outrun it (and thargoids) using the old elite values, vipers can no longer catch it
No other ships can keep up.

With a larger arena in oolite (i.e. scanner range) combats can take longer, potentially much longer, and so high speed is likely more of a virtue than it was in elite. Once you can outrun all police and nearly all bounty hunters however, then maybe you're so fast that the criminal life it too easy for you.

Enter the viper pursuit at 0.36 (just fast enough to catch the mk 3) and even the viper interceptor at 0.52 (fast enough to catch the mk 3 most of the inevitable 'upgrade from a mk 3' oxp ships that were to follow). The interceptor is also hard as nails to boot!

Injectors complicate the issue somewhat as with them the player can't be caught by the viper pursuit and can also leave the sidewinder behind.

So which core, non player ships have injectors and at what probability?
  • Asp - 0.5
  • Cobra mk 1 (alt version) - 0.25
  • Fer de Lance - 0.75
  • Krait - 0.65
  • Viper interceptor - 1 (i.e. always)

So none of the big traders have injectors (including the mk 3) and the only ship that has them without also having a hyperdrive is the krait.
In all cases they will likely have more fuel left than the player and so you're likely not escaping from the asp and almost certainly not from the interceptor.

Once the player has injectors, I think that's pretty well balanced. after all, once your tanks empty then you also have the sidewinders and (potentially) viper pursuits to worry about. But if you don't have injectors... running really isn't much of an option. So what can I tweak to maybe improve things here.

Could alter the frequency at which ships have injectors.
Interceptors probably should always have them as they only occur in some systems so the player can avoid the altogether.
The Fer de Lance is meant to be a premium bounty hunter's vessel and at 0.3 it seems a little slow for that role, so I wouldn't want to reduce the probability of injectors by too much.
The Asp is one of the few vessels faster than th mk 3 and s it doesn't need them as much but unlike the FdL it would actually have a higher injector speed than the mk 3. So again, I don't think I want to trim too much here.
The Cobra mk 1 is kind of fun on this list as it's the only real trader/miner here and it's nice that the occasional apparently helpless victim could escape.

The Krait however is the real oddity here.
  • It's a common enough pirate so that it has injectors is significant
  • Despite being superceeded by the mamba (according to elite lore at least) it has them when the Mamba does not
  • It actually has other uncommon advantages such as being found with both shield improvements (but is a fairly large target)
  • It's the only one without a hyperdrive and so it's not obvious that it should be carrying fuel in the first place
  • Despite the questionable liklihood of having them, that likelyhood is as high as 65%
Proposed new values:

Interceptor (premier police): 1
Fer de Lance (premier bounty hunter): 0.5
Asp (navy spec vessel): 0.25
Cobra MK 1 (token escaping trader/miner): 0.1
Krait (not sure why it's here...): 0

I think the game needs the Interceptors as they exist for every player to fear (on some level the) law.
Regarding the FdL and the Asp, it makes sense that they might have injectors and so one way to explain the reduction is to consider that they might already have spent their fuel (less likely to happen in game than might be expected due to player's use of the torus drive).

The Krait is a common occurrance however and once the player has injectors then that could be important i.e. there would be a common vessel that might encourage the player to have to use the injectors at least a little. It's not the most obvious ship for the role but it's speed value is about right: slower than the mk 3 but not too slow.

So, how about swapping it for the Mamba? I'd favour much less than the 0.65 probabilty granted to the Krait but it seems apt that there be some trace left of its racing heritage now that the mk 3 is actually faster than it (speeds of 0.35 vs 0.32). Further, if the role of the Krait in all of this was partly to make the player spend a little fuel here and there, then a slightly faster ship (0.32 vs 0.3) may be better able to remain relvant when I'm also reducing injector frequency.

So, I think I might swap the Krait for the Mamba but at something like 0.3 rather than 0.65 chance of having injectors.

A complication to consider is that the Mamba, unlike the Krait, is often an escort. I'm yet to be convinced however that there's a problem there.

Re: Much ado about pirates

Posted: Wed Mar 18, 2020 10:01 pm
by phkb
You might already be aware of this, but there might also be a complication in that not all ship equipment is defined via the shipdata.plist settings. The populator itself sets equipment levels on ships if the auto_weapons flag is set to "true", which accounts for all the core ships. To get this idea to work, you would need to override all ships to "auto_weapons = false" to allow the settings to hold.

Re: Much ado about pirates

Posted: Wed Mar 18, 2020 10:31 pm
by Redspear
Ah yes, you're quite right.

I was aware of this and yet somehow managed to forget it :lol:
phkb wrote: Wed Mar 18, 2020 10:01 pm To get this idea to work, you would need to override all ships to "auto_weapons = false" to allow the settings to hold.
That would be a drastic fix of course but likely worthwhile testing for proof of concept.

Re: Much ado about pirates

Posted: Sun Apr 12, 2020 9:06 pm
by Redspear
Thought some more about this and as well as adjusting injector likelihood I considered a couple of other elements.

Default Weapon

The Gecko, Krait, Mamba escort & Sidewinder escort all have beam lasers by default. Not can have beam lasers but do have beam lasers. They include some of the smallest and most evasive ships in the game. Admittedly, the Krait is quite big but then it also has a chance of having shield boosters installed.

There's the amusing line in ShipEntity.h,

Code: Select all

but it can appear that pirate packs are equipped to take on the player rather than a random lone trader (for which they are extremely well prepared in some cases). We can talk about a 'Darwinian Ooniverse' but if the pirates are equipped for the player rather than the average trader then that would be somewhat ironic I think.

A pulse laser might not seem like the weapon for a fighter but then how do we grant much larger vessels better weapons?
Missiles? I've discused this elsewhere but if once they run out all you've got is no more than a Krait.
Military Lasers? I'm not sure that's a good idea.

Proposal: Pulse laser becomes the standard weapon for most fighters.

So it might appear as if I'm neutering the fighters here and although it's true that a lone fighter would now be much less dangerous, a lone fighter would be a desperate pirate wouldn't they? Fighters work best in packs - it's tricky to hit one whilst simultaneously avoiding another. Against most traders and even the starting player, just two fighters with pulse lasers would have a chance. Defenceless target for a lone fighter? Try an Orbital shuttle, a Worm or a Transporter but not a Cobra 3.

Energy Banks

The Adder only has one, the Cobra Mk I has two but the Gecko, Mamba, Krait & Sidewinder all have 3. The Fer de Lance only has two...
That's not the whole story of course but 3 is quite a lot when you consider that an Anaconda 'only' has 7. This seems nuts. One has to consider gameplay as well as 'realism'' of course but I'm not sure how this helps with either.

Fighters aren't typically player ships because they lack a hyperdrive. You'll likely notice that I haven't included the Asp here but then if not a trader at least it can be a courier. So by this definition, none of the normally purchasable ships (without oxp) would be fighters. Bounty hunters might work alone and so they would likely favour something more robust, able to carry heavier weaponry. something like the Asp or the Fer de Lance (low energy banks but excellent recharge rate and often shielding too).

Proposal: 2 energy banks for the fighters instead of 3. that's still more than an Adder and no less than a Fer de Lance.

Whilst I'm being tougher on fighters here consider that none of them should be a match for even a poorly equipped Cobra 3, should they? They could be if I don't disable auto-weaopns, but I think it's reasonable that a stock Mk 3 should be the hot favourite against a stock fighter. Fighter makes a smaller target with greater agility, while the Mk 3 has the twice the energy reserves. Seems reasonable (and crucialy playable) to me.

Pitch Rate

Did you know that the Boa has the same pitch rate as the Mk 3 and even the Asp? Is it not intuitive to try to outmanuver a bigger ship? Actually the boa can out-roll both of them (at least according to the wiki) and even the Python can keep up (it has a slightly worse pitch rate however). Again, counter-intuitive and not sure it's helping with gameplay either.

Yes, the freighters are bigger targets and often slower but they also have 7-8 energy banks (despite being mostly cargo space - maybe...), often have beam lasers and missiles too. Tough makes sense, agile doesn't.

Proposal: halve the pitch rate of the big freighters

To be fair, the Anaconda could hardly be described as agile but then it does have 7 missile slots and ofen comes with escort fighters in tow. The fighters generaly have much better agility than the Mk 3, so doesn't it make sense that the freighters consistently don't? A Mk 3 should be a danger to a freighter I think: without ECM it's probably a bad idea but with a beam laser as well, the freighter should be worried.

Early Career vs Late

It's all very well adjusting the difficulty level but if we don't consider the player's increase in combat potential as they progress then we just remove much of the challenge. With that in mind, a few considerations:
  • Where equipment probability is reduced, allow auto-weapons
  • Where laser is downgraded, allow auto-weapons
  • Don't class Vipers as fighters (canonically they can tow other ships and have capacity for passengers)
  • Don't enforce changes on other oxps, just the default shipset (or whichever the player uses as the default)
So the base challenge is reduced rather than the overall challenge. the game can override the weapon and equipment probabilities where it feels so inclined. Yes, fighters are now more fragile and freighters less tricky but are they the player's only opponents? Hardly, rather they are the regular opponents. If the player wants a freighter then they have other advantages and the Boa Cruiser even has reasonable speed.

This is an oxp proposal rather than a core change proposal (thus expansion packs thread) and ultimately the player either installs or does not. So I use the word 'proposal' to invite criticism, to make me rethink or think better as regards the relevant issues. I've done some testing already but some things take time to reveal themselves. Besides there's some potential conflict with my other oxps here so I also need to consider what should go where and how it might all fit together.

Anyway, food for thought to some I hope.

Re: Much ado about pirates

Posted: Tue Apr 14, 2020 11:02 am
by Redspear
Redspear wrote: Sun Apr 12, 2020 9:06 pm Where equipment probability is reduced, allow auto-weapons
Where laser is downgraded, allow auto-weapons
Looking at the populator script however, it appears quite heavy handed and arguably with good reason.

Because a ship can often have several different roles it makes sense that it might be equipped accordingly. Why shouldn't a pirate interceptor have injectors for example, or an assassin have a beam laser? With regards to pirates it appears that a ship's default weapon is almost irrelevant (I could be reading it wrong...)

There is another way to do it however, namely to include the different roles as individual shipdata.plist entries and adjust their default weapon and equipment probabilities accordingly.

The populator script is arguably a superior method in that it can account for weapon probabilites rather than blanket allocations, however it is also more messy to edit by oxp. The template format of the shipdata entries however makes it simple enough to separate each ship into it's roles (whilst using shipdata-overrides to restrict the original entries to only one role (most likely perhaps). Not ideal with regards to other oxps using the same templates perhaps but unlike the populator it wouldn't be solely role specific but also ship specific. For example, perhaps a Fer de Lance hunter always has injectors but a Gecko hunter only usually has them.

Hmm, I think a stretegy might be coming together here. Will need to consider each ship carefully (and perhaps even their role allocations) but this should achieve what I'm after.

Re: Much ado about pirates

Posted: Mon Jan 17, 2022 4:52 am
by Redspear
As if I haven't got enough half-baked projects on the go, I came to thinking about this again and something struck me almost immediately:

Pirates really shouldn't have injectors at all

...or at least they shouldn't use them to chase escaping traders...

I'll argue the case from the perspective of both realism and gameplay.


Pirates are opportunists, not 'assassins' - why split their pack or chase one well equipped trader when another will be along shortly? Surely better to save injectors for evading police and hunters? Live to kill another day.

For a pirate pack the main escape route should be via hyperspace (police shouldn't follow) and that costs fuel too so all the more reason not to enter costly pursuits against faster ships. Just because fuel is cheap doesn't mean it's use can't be expensive...

Meanwhile, not every trader has injectors (undamaged or even present), nor do they necessarily have sufficient fuel with which to use them. Easy pickings suit opportunists - worst case for a pirate, picking on some paltry food trader: scoop a few alloys from what's left of the victim's hull (at approx 30cr each) and save on the repairs, fuel and missiles you might spend taking down a more prized (and likely troublesome) victim.


Outpacing Kraits and FdLs is often impractical in a stock mk III, when the aforementioned duo have injectors more often than not. It's bad enough trying to avoid Sidewinders and Asps, even without their having injectors, but at least one of them is weak and the other relatively rare.

Once the player has injectors then things change of course but as long as this item requires fuel then things can be balanced.

If pirates become too easy to evade then the fuel consumption rate can be increased. You could then avoid some encounters but not all. Do you inject past that group of three pirates or save your fuel in anticipation of encountering five soon after? Strategy is good.

The big gameplay problem at present, in this regard I think, is when the player DOESN'T have injectors. Attempts at escape are typically slow, drawn out, difficult and often fruitless. Defeat is a matter of difficulty and that's fine; slow, drawn out, dull defeat however is a matter of gameplay (IMHO at least).

Some other ship roles realistically should have injectors but they are less problematic. Assassins for example can be avoided all together (avoid contracts) as can hunters and police (stay clean); pirates however, opportunists that they are, cannot.

Possible solution:
  • don't give pirates injectors
  • increase (double?) fuel consumption for the same

The, 'If the player can have them then why can't everyone else?', argument raises a good question but another, perhaps more pertinent, way to think of it might not be, 'why can't they have?', but rather, 'why would they use?', especially with regards to their engaging with the player.

The 'auto_weapons' feature does complicate the relevant shipdata but then there's the option to have different listings for each role of the same ship without too much difficulty (like_ship templates). Then you can keep some of the variety without being subject to the populator script assigning injectors and the like by ship role.

There are other uses for injectors besides the two I have mentioned (i.e. chase/evade) but I think the point stands regardless.

Re: Much ado about pirates

Posted: Tue Jan 18, 2022 10:29 pm
by Redspear

Awfully partial to a table myself...

Again, rather than thinking what would be desirable, more what would be necessary.
Note that 'light' vessels would typically not operate independantly and therefore have less stringent requirements.

Possible consequences for the player: standard missiles and fuel injectors both become more useful in more (but crucially not all) encounters.

Re: Much ado about pirates

Posted: Sat Jan 22, 2022 10:18 pm
by Redspear
Early version for release once I have committed to a better name for it...

Three Key Changes
  • These ship roles almost never have injectors: pirates; escorts
  • Vipers can (and often do) have injectors BUT Viper interceptors RARELY have injectors
  • Vipers can also appear in an escort role (and therfore without injectors)
Elite manual wrote:VIPER (POLICE SHIP)
Small, highly maneuverable short range "hunter-killer"... This popular ship is also carried by large freighter convoys, for defensive purposes.


Well, I think I've already explained the first and (with the above quote) at least touched on the last.
As for the Viper injector swap...

Isn't it likely, in a system too low tech to service an interceptor fleet but sufficiently high tech to offer inteceptors, that they might consider equipping their outdated police fleet with injectors? Isn't that the stop-gap option for those who couldn't upgrade to interceptors?

There is the viper 'pursuit' which is (predictably) just fast enough to catch the player mk III (as long as the player doesn't use injectors) but Asps and Sidewinders needn't particularly fear Vipers as it stands in the default game, nor should most FdLs or Kraits (slower but usually have injectors).

As for the interceptors themselves, assuming multiple fleets, they don't have to catch their prey every time as long as they can at least cause it to expend fuel (by injecting away). Maybe their buddies in the next patrol will catch them (especially as I've drastically reduced injectors amongst pirates anyway).

Gameplay Effects:

It's a little early to accurately predict how this will effect system populations at this stage but for player encounters themselves:
  • Pirates almost never use injectors to chase you
  • Standard Viper police might use injectors to chase you (or to keep up with those chasing you)
  • Not every Viper is a police ship and not every Interceptor has injectors

The first release will have had minimal testing and I may decide to alter it significantly.
We'll see.

Re: Equipment by Ship Role

Posted: Sun Jan 23, 2022 9:05 pm
by Redspear
v1.0 now available for download, much as described in the last post.

Re: Equipment by Ship Role

Posted: Sat Nov 05, 2022 11:30 pm
by Redspear
Minor update (v 1.1) corrects viper escorts being labelled erroneously as Gal Cop vessels.

Re: Equipment by Ship Role

Posted: Sat Nov 12, 2022 10:18 pm
by Redspear
...and an issue with pirate asps having injectors available far too frequently.

Thus version 1.2