Tech Generator Progress

   TL;DR: The EV Tech Generator is now producing a full range of weapons in the style of EV Override! I need to do final checks to confirm that they're all working correctly, then I'll move on to generating outfits. :)


EV Tech Generator

   A few weeks ago I went down a conceptual rabbit-hole in which I thought about using design concepts from Magic: the Gathering to guide the creation of weapons and outfits in Orion Skies. In this paradigm, each outfit would be roughly analogous being its own Magic card.

   Magic cards have two properties that I felt were worth exploring further in connection to this idea:

  1. There are a lot of unique cards.
  2. Although each card is unique, they also follow well-defined rules governing how much each card costs & what it can do.

   To pursue those properties in an EVx context, I began working on the EV Tech Generator:

  1. A procedural generator will be very helpful if I decide to include large quantities of weapons and outfits in Orion Skies.
  2. The process of creating the generator is forcing me to decide what "rules" should govern what each weapon or outfit should be able to do in Orion Skies, to keep everything balanced.

 

Current Status

   Right now, the EV Tech Generator is at "first draft" status for generating EVO-style weaponry. It has Settings to configure whether its weapons should more strictly match classic EVO, versus generating weapons using the principles of EVO: Expanded.

   Here are the weapon types it currently generates:

  1. Basic Cannons
  2. Rapidfire Cannons (e.g. Gatling Blaze Cannon)
  3. Burst Cannons (e.g. Burst Phase Cannon)
  4. Forward-Only Turrets (e.g. Forward Phase Turret)
  5. 360° Turrets
  6. Beams
  7. Beam Turrets
  8. Basic Rocket Launchers
  9. Turreted Rocket Launchers
  10. Long-Range Forward-Swivel Rocket Launchers
  11. Guided Missiles
  12. Homing Pulses (e.g. SAD Modules)
  13. Bomb Pods (e.g. Defence Pods)

   For these generated weapons, they vary from each other in the following ways:

  1. How much space they require
  2. How much Shield vs Armor damage they do
  3. How much damage they do per shot, versus their rate of fire
  4. Accurracy
  5. Speed at which the projectile moves
  6. Maximum range (configurable in Settings)

    With this said, there are some "oddball" weapons in EVO, such as the Plasma Siphon or the Mine Layer, that fall outside of the weapons this tool will generate. Oddball weapons are inherently difficult to procedurally generate and, I think, are best left to plug-in authors to create manually.

EVO: Expanded made some additions and adjustments to the weapons compared with base EVO.

Balance Concepts

   To ensure the weapons are balanced against each other and thus would make for an interesting game scenario, there are a few concepts that guide their creation:

Heaviness

   A Blaze Cannon takes up 5 tons; a Neutron Cannon takes up 15 tons and does correspondingly more damage. In this generator, that dynamic is called "Heaviness", where a Blaze Cannon is treated as a lightweight cannon and a Neutron Cannon as a heavy cannon. You see a similar trend in EVO around the sizes of rockets and missiles, with Needles being lightest and Hunters being heaviest.

   In this generator, Heaviness is one of the first stats calculated for a given weapon. It's configurable in the Settings to either: A) exactly match the heavinesses we see in EVO (i.e. every Basic Cannon takes either 5 tons or 15 tons); or B) to be more fluid and dynamic (i.e. Basic Cannons can also exist at 6, 7, 8, 9, 10, 11, 12, 13 or 14 tons).

Average Damage

    One of the really neat dynamics in EVO is the differentiation of Shields vs Armor; some ships' health is primarily Shields and others' is primarily Armor; and some weapons do primarily Shield Damage and others do more Armor Damage.

   To accommodate weapons that deal different sorts of damage while balancing them in comparison to each other, this generator focuses primarily on their Average damage output when calculating stats and balancing things, but then randomly determines how much that damage should focus on Shields vs Armor.

Damage Per Second

   This is incredibly important for balance. If you have a Crescent Warship, and you are slugging it out with an AI Crescent Warship, the winner will tend to be determined by who is doing more damage faster. This Generator keeps close track of how much Damage Per Second, or "DPS", each weapon is doing.

   Generally speaking, Heavier weapons deal more DPS. Additionally, weapons with targeting/guidance options tend to have lesser DPS (i.e. a Missile will do less DPS than an otherwise equivalent Rocket).

Damage Per Ton

   This also is incredibly important, for secondary weapons like Rockets and Missiles. Because your ship can only carry so much ammunition, there is a limit to how much total damage you will be able to dish out with a given weapon system. To ensure that weapons' total damage outputs would tend to be balanced relative to each other regardless of how big the player's ship is, this generator keeps track of "Damage Per Ton", or "DPT".

   This is calculated by assuming the player purchases a launcher and maxes out the ammo for it; by comparing the total damage output to the total tonnage, we can find how much damage is being dealt for each ton of space.

   DPT follows similar trends to DPS: Heavier weapons deal more DPT, and guided weapons deal less. By arming your ship with bigger, heavier, clunkier, more-difficult-to-aim weapons, you can get more total damage output out of your ship.

   There is a downside to doing this: In order to balance DPT, the Generator needs to impose maximum-ammo limits on each launcher type. This was done in EVO: Expanded, but not in classic EV Override. I put an option in the Settings tab to let the user choose whether to impose this type of balancing or not. 

Future Concepts?

   As I continue to add new capabilities and layers to this generator, I'll be keeping an eye out for balance, and that may mean discovering & encoding new balance concepts.


Future Plans

   Right now I need to take some time to confirm that everything it's currently generating is perfect, and to make any needed corrections. After that, I'll work on the following:

  1. Generating EVO-style outfits (fuel scoops, armor upgrades, afterburners, etc).
  2. A second "generation mode" that produces Ares-style weaponry.
  3. Possibly some kind of "combined"/"other" mode that could mix-and-match weaponry from both EVO and Ares, and possibly include entirely new types as well.
  4. Adding additional optional layers, configurable in the Settings, that don't exist in EVO/Ares – for some examples: "shotgun" weapons; point-defense weapons; lateral thrusters; point-blank weapons; faction-based stat effects; outfits that affect multiple different stats; weapons that affect your ship's stats.

 

   ...and that's all for this update. I wish everyone in the community well and I look forward to updating everyone about new progress in the future. :)

Comments

Popular posts from this blog

2022 Review, and a Look Forward

All About rEV: Expanded

The World of Orion Skies