Aurora is on version 2.5.0 C#, available at the Aurora Forums.
Contact Erik on the forum for a wiki account.
Difference between revisions of "C-Ship-Combat"
King-Salomon (talk | contribs) |
King-Salomon (talk | contribs) m (→Combat) |
||
Line 71: | Line 71: | ||
[http://aurora2.pentarch.org/index.php?topic=8495.msg107125#msg107125 Date 11.03.2018] | [http://aurora2.pentarch.org/index.php?topic=8495.msg107125#msg107125 Date 11.03.2018] | ||
+ | |||
+ | ===Weapon Failure=== | ||
+ | |||
+ | At the point when any weapon (energy-based or missile launcher) fires, there is a 2% chance the weapon will suffer a failure. If sufficient maintenance supplies are available, the weapon will be instantly repaired and will fire normally. If maintenance supplies are not available, the weapon will be damaged and unable to fire. | ||
+ | |||
+ | This is partially to simulate the stress of combat on weapon systems, but also as a balance to other rule changes. | ||
+ | |||
+ | [http://aurora2.pentarch.org/index.php?topic=8495.msg107701#msg107701 Date 07.04.2018] | ||
+ | |||
+ | |||
+ | ==Space to Ground & Ground to Space Combat== | ||
+ | |||
+ | [[C-Ground Combat#Space to Ground & Ground to Space Combat|please go here]] |
Revision as of 08:42, 13 January 2019
Fire Controle Settings
Automated Weapon Assignment
C# has a more intelligent auto-assignment for weapons and fire controls. You can set up a ship with a single click and then adjust as necessary. The code assumes that
- Any missile fire control with a resolution of 1 is an anti-missile fire control
- Any missile fire control with a resolution greater than 1 is a 'normal' missile fire control
- Any beam fire control with a tracking speed at least 2x racial speed is a point defence fire control (some leeway here for older ships)
- Other beam fire controls are for offensive weapons
- Weapons within the given category (missile PD, missile offensive, beam PD, beam offensive) are split equally between fire controls of the same category
- More powerful beam weapons are assigned first
- ECCM is assigned as available with the priority order of offensive launcher, PD launcher, offensive beam, PD beam
The assignment code will take account of damage to the ship and adjust accordingly. In most cases, the above will be sufficient (and will be used for NPR designs). For more bespoke and unusual player ships, some tweaking may be necessary.
for examples and screenshots please see http://aurora2.pentarch.org/index.php?topic=8495.msg107378#msg107378
Point Defence
In C# Aurora, fire controls set to 'Final Defensive Fire' or 'Final Defensive Fire (Self Only)' will fire on hostile missiles, regardless of whether the fire control is set to 'Open Fire'. Fire controls set to Area Mode or for AMMs will only fire defensively when that fire control is set to 'Open Fire'.
When a missile reaches its target, a target ship will use its CIWS first. If that is insufficient, it will use any weapons linked to fire controls set to 'Final Defensive Fire' or 'Final Defensive Fire (Self Only)'. If that is still insufficient, ships or the same race or an allied race with fire controls set to 'Final Defensive Fire' will be checked in increasing order of distance from the target ship.
A target population will use any ground units assigned to point defence to shoot at incoming missiles. If that is insufficient, the same process as for ships will take place, checking same race or allied ships within point defence range of the planet.
Combat
Combat Reports
In VB6, understanding the combat events can be difficult given the sheer amount of information. Therefore, C# Aurora uses a condensed system where you no longer see each individual weapon firing, or the damage from individual hits. Instead weapon fire and any resulting damage are shown in a summary format. The side being attacked will also receive some information about the firing ship, using the Alien Ship Name if available.
Here is the summary when a Japanese destroyer opens fire on a Martian Patrol Ship. The different in hull designation in the two reports is because Mars classes the Monoceros as a patrol ship, while Japanese Intelligence classes it as a destroyer.
http://www.pentarch.org/steve/Screenshots/FiringSummary002.PNG
http://www.pentarch.org/steve/Screenshots/DamageReport003.PNG
Subsequent damage reports in the next two five-second increments as the Japanese ship continues firing with 10cm railguns. The 15cm railguns are recharging.
http://www.pentarch.org/steve/Screenshots/DamageReport004.PNG
http://www.pentarch.org/steve/Screenshots/DamageReport005.PNG
The ship is finally destroyed by the next volley.
http://www.pentarch.org/steve/Screenshots/DamageReport007.PNG
Armour Damage Templates
In VB6 Aurora, the damage templates for each weapon are held in a database table, with one row for each combination of weapon type and damage amount. While this is simple, it mean any new weapon or change to damage model has to be laboriously updated in the table.
For C#, the damage templates are generated in code as needed based on a 'gradient' system. All the damage starts at a single point and is distributed right and left according to the gradient setting. Any column which has damage greater than the gradient, checks left and right. If an adjacent column has a damage amount that is lower than the current column damage minus the gradient, a single point of damage is moved to that column. The adjacent column with lower damage is used first. The code cycles back and forth through the columns until no more adjustments are necessary
For example, missile damage has a 'gradient' of 1. Therefore, there cannot be a gap of 2 damage between adjacent columns. Laser damage has a gradient of 3, so any gap of 4 damage between columns is corrected. Here are some examples for 25 damage:
- Gradient 1 (Missile, Carronade, Ramming): 1,2,3,4,5,4,3,2,1
- Gradient 2 (Railgun, Particle Torpedo): 1,3,5,7,5,3,1
- Gradient 3 (Laser): 3,6,8,5,3
Particle Lances cause damage in a single column, gauss cause only a single point of damage and meson ignore armour.
The template generation takes about a millisecond so there is no performance issue. This means that new weapons with higher gradients can be added very easily.
Weapon Failure
At the point when any weapon (energy-based or missile launcher) fires, there is a 2% chance the weapon will suffer a failure. If sufficient maintenance supplies are available, the weapon will be instantly repaired and will fire normally. If maintenance supplies are not available, the weapon will be damaged and unable to fire.
This is partially to simulate the stress of combat on weapon systems, but also as a balance to other rule changes.