This is quite a long post - there's been a lot of conversation so far and even summarising it takes a while.
Preliminary results
So, the combat survey is still collecting results, and if you have time to complete it, please do - especially if you're ranked from Harmless to Dangerous, and especially if you find the combat in 1.80 too difficult.
However, the initial results are fairly clear - and give a difficult challenge for combat balancing. There's no great surprises here, but some of the Elite pilots perhaps need to try harder to remember more how difficult they found combat when they were starting out (which may sometimes mean "in the 1980s"). I include myself in that.
- Player skill and experience makes a big difference - a genuine beginner will have difficulty in a 1-on-1 fight with even the lowest AI, while a skilled pilot can defeat six of them without even upgrading their ship.
- Player equipment also makes a big difference: no surprises there. A fully-upgraded ship can take about twice the damage, heals about twice as fast, and deals damage about seven times faster, as well as having more options for avoiding damage outright.
- NPC equipment doesn't make a huge difference in the early game - if you get blown up by a set of ships with beam lasers, you'd probably also have lost if they'd been armed with pulse lasers: it would just have taken longer. Once the player has their own beam/military lasers it starts to become more important.
- NPC AI makes a massive difference. The weakest AI is around three times worse in combat than the average one.
The challenge.
- An Elite pilot with an iron-ass (core) ship can probably take on encounters at least ten times and probably over twenty times more challenging than a beginner in a stock ship could expect to survive. The game needs to provide encounters suitable to both types of pilot and to give reasonable ways for a player to avoid or at least survive encounters out of their range (traditionally: avoid that system).
- There are multiple 'sides' in space - trader/pirate/hunter being the main triad, but with other groups providing complications - most of which need to be providing encounters suitable to all levels of player for whatever style of play they're doing while also providing reasonable interactions with each other: it's no good a Corporate State having very strong police patrols and very weak pirates: it might as well have no pirates at all for the number of times the player will actually get to see them.
There are a number of barriers related to long-standing tradition/canon/history which make resolving those challenges harder. All of these are to a greater or lesser extent related to what Oolite is and range from "absolutely off the table" to "use extreme caution" in terms of what a suggested core-game solution could do to them.
- Obviously and most fundamentally, Oolite is an open-world game. It's also non player-centred. This throws many of the conventional ways of balancing the game out of the window to start with. At least it's not also multiplayer, because that would really give us trouble.
- There are only eight government types, which is the traditional method of scaling combat difficulty, and their spatial distribution makes it impossible to have much fun without passing through at least Communist/Dictatorship systems fairly early in the game. The 1.80 adjustment to include inter-system raids spreads the difficulty out a little more than an 8-point scale, but again, not in a particularly controlled fashion.
- There is a very short list of weapons, an even shorter list of anti-weapon countermeasures, and a relatively small set of core ships most of which (ignoring the freighters and the shuttles) are basically identical in terms of combat characterfistics (e.g. you could remove the NPC Sidewinders, Mambas, Geckos, Kraits, and Cobra IIIs from the game, replacing them all with Morays, without significantly affecting game balance, provided they mostly didn't have full missile loads)
- The military laser is far too good to give to NPCs, but once the player has even one (on the aft mount, preferably) it becomes virtually impossible to lose most fights regardless of enemy numbers because of its extreme range it's not necessarily particularly fun to fight like that. Missiles, on the other hand, go from "extremely dangerous" to "minor irritation" extremely quickly as the ECM (or injectors) can be a very early purchase.
So, these are various ideas which have been suggested so far, and a few more besides. I think they fall into two broad categories: fairly uncontroversial but likely insufficient; really controversial but may be effective. There are probably many options that haven't come up yet, so please suggest them as they occur to you.
Let's start with the ones which I think will probably help a bit without causing serious problems elsewhere.
- Responsiveness: At the moment NPCs respond virtually instantly to alerts. Slowing this down a little would help on the strategic side. I've already put this in to 1.81: you can now hit some NPCs with a missile even if they have ECM, though it's not easy, and you'll see some other delays in reactions at times. It feels better than 1.80 (though it feels slightly odd at first to hit a ship and only have it turn red a couple of seconds later), but it's nowhere near sufficient.
- Tracking: kanthoney's existing work on making NPC target tracking much worse against unpredictable movements.
The 1.80 changes made it possible for the NPC AI to reliably hit a player who was flying completely level at any more distant than point-blank range. Unfortunately they also made it too easy for the AI to hit a player who was dodging in the same circumstances. This - I've tried it out a bit - puts this back to more reasonable levels - NPCs will take a little while to react to your actions, so dodging is much more effective (it feels more effective than in 1.77, too).
On its own it doesn't help much - you can buy time by dodging, but fly level long enough to aim and fire back, and you still get shredded. Useful for being able to recover shields and energy between, though, and makes stalling for help to arrive a more usable tactic. - Beam laser: Make beam laser half-damage, half-heat. Having briefly tried this, it doesn't make that much difference to how much damage NPCs do - if they're hitting you, they're hitting you, and the reduced per-second damage is compensated for by them firing for longer. It gives you more chance to avoid dying in a head-on fight, but it's not a huge difference.
However, for the player, it's much more forgiving of bad flying. You can hold the trigger down for quite a while before it overheats.
It makes the military laser really seem like an upgrade - with the heat output to match. While experienced pilots starting afresh will still probably buy the military laser as soon as they have the money spare, Jamesons whose aim still needs a bit of practice might find the beam laser a better weapon. - Deceleration: Make torus mass-locking deceleration (as opposed to normal shutdown deceleration) much sharper. Makes combat more likely to be announced outside of laser range, giving more time to react by running/dumping.
- Missiles Reduce the spread of missile damage a bit (and maybe the average as well). At the moment a missile will often destroy a fully-shielded stock Cobra III on impact - being able to survive a single missile hit is much more important than being able to completely destroy an NPC with a single hit - and NPCs are much better at taking missiles at a favourable angle than a beginning player is.
- Odds calculations: Increase the per-ship weighting in the odds calculation. Change a few other factors around a little. The aim is to make 2-ship and 3-ship pirate formations likely to attack the player's Cobra III even if all they have is some weak light fighters. The current calculation tends to need 4:1 odds for those groups - which is definite overkill.
From the survey, 2:1 odds should be more than sufficient to risk an attack.
Making low-skill NPCs more likely to mess up the odds calculation might also help here: a pair of terribly piloted Mambas aren't actually a match for a Cobra III except in very favourable situations, but they might not know that. - Weapon selection: Make beam lasers rarer compared with pulse lasers on low-end NPCs. This probably won't make that much difference to the result, but it will at least make the fights last longer and make running to the station while under fire / deciding to dump cargo now that you're definitely losing a bit easier. Mainly this would affect the small "independent" pirate groups, which are the only pirate types native to Corporate/Democracy/Confederacy systems, and the corresponding "light" hunter packs, as well as the lighter escort/trader craft.
Might even affect the Vipers in low-tech low-order systems. - Leave it to the OXPs: Adjust the system populator a little to include a single-number "
this.$npcStrength
" variable which applies a global adjustment to NPC armament and skill levels. The results of the "balance test" trial suggest that relatively small tweaks at this level can make a fairly big difference.
Of course, this wouldn't remove the responsibility to make the core game balanced, but it might mean that outliers (in both directions!) could have fun without OXPers having to make quite complex OXPs to do it. It'll also make finding a suitable default value a bit easier since less of the populator script will need rewriting each time.
Backup Plans
And now for some more substantial potential changes, in case the above doesn't work. These might not be necessary, and some of them I don't like for various reasons (I won't say which at this stage) - but see what you think in case we need to go further.
- Dissipation: Scale weapon damage with range, from 100% at short range (<25% max range?) down to 0% at extreme range. The AIs will need adjusting a bit. With a beam or military laser they often won't want to open fire except at relatively short range - even if they're dead certain of a hit. (Naturally this means that the negative-skill AIs will open fire *anyway* and waste their laser heat on misses and minor scratches)
Hopeful result: sniping and long-range battles become less dangerous and give more time to close in; dogfights become the way to get kills. The military laser is still advantageous for range since you can be landing high-damage hits on them at a fair distance, but you're not going to be completely immune to return fire if you want to do actual damage. More time to dump cargo before pirates get in effective range.
Unlikely to harm a beginning player much as they're not going to be hitting very often at 10km to start with; might be more of a problem in the mid-game, though, where you can aim that well and want to thin them out before they get close.
Graphical hint: fade the beam out as it loses power
The Thargoid Laser will not suffer from range dissipation. It's already the lowest power laser in terms of damage/second by a long way, and they could do with something to make them a bit more dangerous than a Python. Thargoid combat tactics will probably switch to the warship trying to hang around at a relatively high distance from its target, using their high flight speed, while the drones close in (their pulse lasers will still dissipate as usual). The military laser will still destroy a warship in ideal circumstances, but you'll have to work a bit more for them. - New or modified weapons: Lots of possibilities here. No idea if any of them might help, though.
Some sort of low-tech mine the player could drop to discourage or slow down pursuit in a somewhat less globally destructive way than a Q-mine?
Change how ECM disrupts missile targeting so that rather than destroying the missile it just messes up its target prediction temporarily (hardheads are affected but nowhere near as much)? - the key being that missiles remain an effective distraction (NPCs still have to run and dodge even with ECM) but are much less likely to be fatal. The energy cost of ECM would have to come down quite a bit, of course.
EMP mine? When it goes off, ship sensors and targeting get scrambled, and you might be able to get a bit of distance before they pick you up again.
Chaff mine/projector? Explodes into a cloud of small short-lived fragments - doesn't damage ships, but temporarily blocks laser fire (especially pulse fire).
Booster rocket? Takes up a pylon mount, but gives you a significant velocity hit forwards. Useful for getting quickly away from a fight, or at least gaining sufficient distance to be able to run away; potentially useful for getting quickly into a fight, too.
Semi-active homing missiles? Mostly immune to countermeasures as they're guided from the controlling craft, but need to be fired a bit earlier in the fight as destroying the controller causes the missile to self-destruct. Making these the standard missile and making the current one a slightly more expensive fire-and-forget version might help by making it easier to survive the inevitable Cobra I revenge shot; having to maintain target (but not visual) lock isn't likely to be a major penalty to the player in the early game.
Reduce the military laser maximum range? (Or indeed all laser ranges?) If we don't have to balance the middle and upper end of the game for long-range sniping, maybe we can cut the size of some of the larger groups. Weapon ranges I think are quite a bit longer compared with maximum speed in Oolite than most other space combat games.
This would make the boring bit of a losing fight where you've outrun your pursuers to outside laser range, and still have 10km to go at a relative speed of maybe 50m/s before they give up the pursuit and you can activate the torus drive even longer, though. Possibly NPCs could be made to realise that they can't catch up and give up the pursuit - though I tried that a bit in 1.79 and getting it to work without making them also leave alone ships that were doing a wide loop on injectors was tricky.
I really don't know what might actually help here, and a lot of these would require the ability to adjust the starting loadout in Lave without spending much money. - Respecify ships/weapons: Adjust ship energy and laser damage/heat a bit more - make Sidewinders and the other light fighters comparable with a Cobra I in energy, not a Cobra III - but to make them not just a deathtrap (as the Cobra I is in any serious fight) also reduce the laser damage/heat rate for all weapons so they take at least as many hits to kill as now (and therefore Cobra IIIs, Asps, Pythons, etc. take longer).
At the moment you fire a military laser and most NPCs are dead in just over a second if all shots hit - the player won't survive a full blast from even a beam laser, if all the shots hit the same side of their ship, and that's under three seconds of fire. If we go for something much lower - maybe fifteen seconds to fully overheat a beam laser? - then fights will last a lot longer, and the player won't die before they can react.
Maybe make the freighter turn rates a lot slower, to give the player a much easier job against them. Not so helpful if the player is flying a freighter, of course.
The Viper Interceptor probably needs downgrading a bit, too. It should be an Asp competitor, not a Constrictor competitor. Top-secret military hardware loses its impact a bit if a ship you can see in most high-tech worlds is about as tough.
Obviously this is going to mess up all sorts of ship OXPs, and possibly quite a few others. - More interceptors: Viper Interceptors or pirate/hunter Kraits/Asps/FDLs, depending on the system. Hang around off the spacelane, watching for distant laser fire, then move in on injectors to help their side.
Stalling for time in a fight becomes more likely to work if you're in the right sort of system; conversely in the wrong sort of system, you need to win fights quickly and then move on before reinforcements show up. - Starting position: Move the default player start position to Arzaso to give them a friendlier starting cluster. Lave can stick around as "traditional start"
- System safety: Decouple or mostly decouple government type and system safety. e.g. Make regional blocks almost the dominant factor in system safety - so e.g. the Xexedi Cluster is even safer than its constituent mostly-safe systems might suggest, but the Tortuga Expanse is ridiculously dangerous (assuming a non-pirate player here). The cluster between Leesti and Azaqu could then be made really safe.
The regional blocks wouldn't necessarily all be named (the names and borders wouldn't necessarily be visible in game at all), and they would probably have to be set up entirely manually rather than procedurally, since detecting cluster edges would be difficult. There would probably need to be a "threat assessment" line added to F7 separate from the government line, of course. - Starting conditions: Actually, part of the *problem* is that the player starts in a Cobra III: most small groups will assume it probably has some sort of upgrade and leave it alone, those that do attack it will demand a lot of cargo, and even without upgrades it'll scan as one of the more dangerous ships in the fight just for its speed, energy and missile racks, so it'll take quite a lot for a pirate band to stop shooting at the player even if a couple of Vipers show up. On top of that, it's a really easy target. If the player is only going to start with a pulse laser, may as well start them in a tiny light fighter than no-one's going to be able to even hit.
Adjust ship pricing, stats, equipment, etc. and start the player in a Mamba (maybe a Gecko, for the missile pylon). You start off working your way up as a minion in a pirate gang / an escort pilot to a freighter / an assistant for a bounty hunter. A 5:7 fight in which the player is just one of the ships is a lot more survivable than a 1:3 fight.
By the time the player is good enough to survive solo, they should have enough money to afford a light multi-role ship of their own. (Expert players should be able to go solo from the start anyway, like our "Broke Adder" fans currently do...)
Obviously this requires much more ability for the player to join and work with friendly ships - which requires NPC torus and in-flight comms, with all the complications and implications of that, to prevent the "missions" from becoming hour-long "the waiting is theworstonly part" trips.
This is basically not going to be implementable ... but I mention it as an idea in case it inspires something more practical and suitable from someone else. - Budget-based population: Control the difficulty of encounters by making the NPCs buy and equip their ships. Will obviously require an "NPC price" for ships (and maybe for equipment items as well) to avoid ridiculous situations. Adjusting the relative prices of various items and ships, including potentially the cost of hiring the pilots, might make it easier in the long run to adjust difficulty levels.
- Fame and infamy: Once the player passes Dangerous rank, start adding ship groups specifically after them - they've reached a combat skill few pilots manage, and are starting, like it or not, to make a name for themselves: and with that comes unwanted attention - pirates get tough bounty hunters, traders get pirates hunting them across systems for their valuable cargo, bounty hunters get the friends of pirates they killed paying for a revenge squadron.
The tricky thing here is that any balance change which is actually right is going to be very difficult to find out as such. You'll have noticed if you've been reading the forums a lot that the balance issues in both 1.77 and 1.80 were commented on a lot after release ... and not much at all even when (at least judging by the download counts on my nightly-only OXPs) lots of people were using the nightly builds just before.
The nightly builds are mainly used by developers and OXP writers to try out new features. Balance testing has previously been done by the much smaller set of players who fly around actually playing the game in the nightly builds: there aren't very many, and I think we all hold Elite rank.
So particularly ridiculous situations or behaviours get remarked on and either removed or toned down - but mainly the challenges are just dealt with.
What we could really do with is some volunteers, ideally ranked at Competent or below, ideally who at best aren't great shots with the aft laser yet (though we'll take Dangerous or above pilots who are finding the current game too difficult as well) who are willing to spend a lot of time - probably more time than the developers spend actually writing the code - testing out the balance, especially the early game balance. This will not be at all an easy task; volunteeers will need to:
- Download the nightly builds regularly and spend a lot of time playing them, putting up with weird unrelated bugs.
- Start and restart tens of times as we make changes.
- Work with us over maybe six months of gradual changes: we'll need to make a change, leave it with you to play, get your feedback, and then make more adjustments and do the whole thing over again.
- Play with very few OXPs (basically, graphical enhancements and other neutral bits only) - we can use the new 1.81 "scenario OXP restriction" feature to make this a bit easier on you by not having to actually uninstall them from regular play.
- Try not to actually improve too much as a pilot in the process.