Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Short textual weapon stat summaries #141

Open
AmkG opened this issue Jun 9, 2020 · 1 comment
Open

Short textual weapon stat summaries #141

AmkG opened this issue Jun 9, 2020 · 1 comment

Comments

@AmkG
Copy link
Contributor

AmkG commented Jun 9, 2020

In the old Sid Meier's Alpha Centauri, a unit would be defined by a triple of numbers: attack-defense-movepoints. So for example the most basic Scout unit would be 1-1-1.

The cute thing is that this simple text description was used by Sid Meier's Alpha Centauri to also indicate to you any special abilities a unit has. For example, a flying unit would be described as <4>-1-6, while a ground-bound anti-air unit would be 1-<3>-1. An interceptor, a flying unit that automatically defends against other flying units, would be <4>-<1>-6. An artillery unit would be (5)-1-1, and a "trance" unit that has good defense against psi attacks would be 1-4t-1. A marine unit that could attack directly from a seafaring transport would be 8~-1-1. etc.

I think we can create similar descriptions for weapons/missiles. For example:

  • Iron Lance [1] 5-1-5! (reach 1, damage 5, accuracy 1, penetration 5, ChargeAttack)
  • PHS-8 Phase Cannon [8] 2-2+-5 (reach 8, damage 2, accuracy 2, penetration 5, Accurate)
  • Ironbreaker Longsword [1] 4-4-<1> (reach 1, damage 4, accuracy 4, penetration 1, Defender)
  • Heavy Missiles [7] ((2))-1-1 x4 (reach 7, damage 2, accuracy 1, penetration 1, Blast 2, quantity 4) - the Claymore version.
  • Heat Axe [1] 3-2-\3/ (reach 1, damage 3, accuracy 2, penetration 3, BurnAttack)
  • Flame Knout [1] 3-<1>-\3/ (reach 1, damage 3, accuracy 1, penetration 3, Flail BurnAttack)
  • Beam Scourge [1] 1//-<3>-4* (reach 1, damage 1, accuracy 3, penetration 4, FastAttack Flail Intercept)
  • Wrecking Ball [1] 4-<1*>-3 (reach 1, damage 4, accuracy 1, penetration 3, Flail Smash)
  • Storm Pistol [5] 1x3&-2-1 (reach 1, damage 1, accuracy 2, penetration 1, BurstFire3 LinkedFire)
  • Heavy Railgun [5] 3x/4-2-2 (reach 5, damage 3, accuracy 2, penetration 2, VariableFire4)
  • Ion Lance [2] >}3{<-1-1! (reach 2, damage 3, accuracy 1, penetration 1, Haywire Overload ChargeAttack)

Having such a short text description of each weapon would be useful in the longform display of mecha. The longform display can list the weapons of the mecha, together with the short text description of the weapon stats, without requiring long infopanels for each weapon.

Thoughts?

@AmkG
Copy link
Contributor Author

AmkG commented Jun 9, 2020

To implement, every attack attribute would include two classmethods: get_shortstat_decoration_index and decorate_shortstat. get_shortstat_decoration_index would return a numeric index that indicates in what order they would decorate the basic damage-accuracy-penetration tuple, so that e.g. Haywire Overload and Overload Haywire weapons would have the same short stat description. Then decorate_shortstat would be given damage accuracy penetration strings, and would then return a tuple of those three strings, but with their decorations added.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant