Akaito/reassembly-ai-mod-example

improve automatic P calculation

manylegged asked for this feature 12 months ago — 6 comments

manylegged commented 12 months ago Admin

// @Owlfeathers // With regard to specific adjustments to the automatic P calculations, I think the most // significant changes I'd suggest are as follows:

// - Heavily reducing the P of spinal-mounted weapons which rely on DPS instead of burst damage // - (e.g. plasma projector, proton beam), which are usually terrible since the entire ship has // - to continually remain pointed at the target (and moreover, the same exact spot on the // - target) to be effective

// - Reducing the value placed on rate of fire for launchers (rapid-fire launchers aren't // - generally as strong as their P values would suggest - since missiles fired at different // - times tend to hit different parts of a target, they don't focus damage well). The rapid-fire // - launchers (with the possible exception of the Terran rocket launcher) are pretty over-valued // - currently, while even ludicrously powerful launchers like the Nuclear Option aren't all that // - expensive due to their low rate of fire.

// - Changing drone P calculations - no idea what the formula for this is currently, but most // - drones are pretty bad currently since huge numbers of drones can be countered with minimal // - investment in point defence, and even ignoring that, they spread damage all across a target // - rather than focusing it. Terran drones in particular are also too slow to actually catch any // - ship frail enough for them to stand a chance at harming, while Tinkrell rocket drones are // - just horrifically overpriced.

// - Reducing the value placed on lasers with the CHARGING attribute - these are universally a // - bit over-valued, with the possible exception of the Terran burst laser, which finds some // - utility as an expensive-but-good point defence system.

// - Including the energy cost of weapons in P calculations - this is a pretty significant factor // - in a weapon's usefulness which is entirely overlooked by P calculations at the moment.

// - Fixing P calculations for pulsed non-charging lasers. I don't know how this is currently // - calculated, but there doesn't seem to be any sound logic to it.

// Gamindustri's Lost Soul - Yesterday at 2:14 AM //As an added note to Owl's list of changes to P calculations I would like to mention that lasers //entirely ignore explosive properties in calculations. As being explosive can significantly //increase a laser's power I feel that it is a property that P calculations need to reflect.

| Draxiss314 commented 12 months ago

Also for some reason, the p cost of ranged weapons beyond a certain point is capped off. There's a very abrupt jump when you go from a range of anything less than 500 m to 500 m. Growrate doesn't appear to be factored in, as well.

| Lapapsnow commented 11 months ago

Additionally: The ability to force assign a 0 P value to a block despite durability and density or other factors would be hugely appreciated.

manylegged commented 11 months ago Admin

Adding PHOTOSYNTH to a block but giving it a photosynthpersec of zero drastically drops the p-cost of the block, even though the block retains its other functions.

Other things P calculation ignores:

  • Power generation of a command module. One that generates 10 units and one that generates 10000000 units have the same cost.
  • Growrate
  • Beam weapon length past 1500 units. I'd suggest a much more gentle scale on beam length to P-cost in general.
  • Immobilizing and linearForce
  • Explosive properties of beam weapons
  • Something else I'm forgetting that's fairly important, but hey I'm sure I'll remember
  • Thruster boost time
  • Thruster boost, on the less-than-one end, seems to cap off. In general seems wonky.
  • Turret rotation speed(edited)

manylegged commented 11 months ago Admin

(that last comment is from Draxiss)

manylegged commented 10 months ago Admin

implemented a big auto-p rebalance a few months ago. Closing this bug - we can open a new one for future changes.

Join the discussion!

Sign-in with GitHub to comment