Your preferred overkill prevention

admiralzeech
Sergeant Major
Posts: 296
Joined: Wed 9 Sep 2015 13:10
Contact:

Your preferred overkill prevention

Postby admiralzeech » Mon 14 Sep 2015 14:42

This is a thread for people who are interested in overkill prevention system. If you're against overkill prevention, please enjoy watching silently from the sidelines :P

Ok, let's pretend Eugen are about to add an overkill prevention system in the new future. What kind of system do you want?

#1: "Magical" overkill prevention.
In this system, your units know exactly how much health the target has, how much damage your weapons do, and how many projectiles are headed towards the target. So if there are enough projectiles in the air to kill the target, then your unit will find another target if one exists, or just hold fire and wait for another target.


#2: Random attack delay and random target
When an enemy target comes into view, each of your units will wait a small random amount of time. After this delay, the unit will randomly pick an available target and fire at it until it dies. (Higher priority targets have a higher chance of being selected.)
(The delay is to prevent all your units locking on to the very first enemy that comes into view.)


#3: Random target per shot
Your units will choose a new target randomly with every missile (or burst of gun fire.) (Higher priority targets have a higher chance of being selected.)


Or something else?

User avatar
Megiddo
Chief Warrant Officer
Posts: 678
Joined: Thu 23 Jul 2015 22:57
Contact:

Re: Your preferred overkill prevention

Postby Megiddo » Mon 14 Sep 2015 15:26

Interesting,

but beside the micro you can, or have to bring to manage your attack move, i think that the game mechanic, when A-move for example, will only consider the firing opportunities/firing authorizations. as soon as the units see a valuable target and are authorized to fire, they do so.

my best advice :

- micro your attack
- build heterogeneous groups
- when there are a unique or very few enemy units left, favour autocannons and rifle infantry units, a much better rate of fire and no waste of missiles or cooldowned attacks. or advantage an attack with one or two units which can snipe your opponent.

"You don't use a cannon to kill a fly" ;)
That's the saddest part of the story. I was getting used to think, after nearly three decades of its existence, that the word "Strategy" was the main cornerstone of the RTS genre and golden age.

torinus
Lieutenant
Posts: 1239
Joined: Fri 15 May 2015 22:39
Contact:

Re: Your preferred overkill prevention

Postby torinus » Mon 14 Sep 2015 16:07

@admiralzeech: I suggest you get together with this guy: http://steamcommunity.com/app/318020/di ... 952687722/
And create a AoA clan called "I hate micro".

Cursix
Private
Posts: 4
Joined: Sat 12 Sep 2015 04:00
Contact:

Re: Your preferred overkill prevention

Postby Cursix » Mon 14 Sep 2015 21:38

I would actually like to see settings that you can place on your units. Similar to hold fire, you can specify if you want focus fire or spread fire.

My issue with #1 is that its too precise; I would rather see maybe one or two additional units shoot at the same time to add redundancy and randomness factors. Still a few wasted shots but not like shooting 20 missiles when 2-4 will do the job.

Lauer
Sergeant
Posts: 60
Joined: Sun 28 Sep 2014 06:08
Contact:

Re: Your preferred overkill prevention

Postby Lauer » Tue 15 Sep 2015 05:30

I vote for Option #1. Doubt it will happen tho



torinus wrote:@admiralzeech: I suggest you get together with this guy: http://steamcommunity.com/app/318020/di ... 952687722/
And create a AoA clan called "I hate micro".

^these people will be the death of AoA.

Blastom
Corporal
Posts: 39
Joined: Mon 3 Aug 2015 07:25
Contact:

Re: Your preferred overkill prevention

Postby Blastom » Tue 15 Sep 2015 06:18

There's a problem in "magical" one - I have 5 javelins and only need 3 of them can one shoot a puma, so there'll be only 3 of them fire missiles. Then if the puma is near a repair station, when the first missile hits, the puma get a small health recovery before the other 2 impact, it survives. While on other hand, there shall be 5 javelins hit it and it has no chance.

admiralzeech
Sergeant Major
Posts: 296
Joined: Wed 9 Sep 2015 13:10
Contact:

Re: Your preferred overkill prevention

Postby admiralzeech » Tue 15 Sep 2015 10:20

Blastom wrote:There's a problem in "magical" one - I have 5 javelins and only need 3 of them can one shoot a puma, so there'll be only 3 of them fire missiles. Then if the puma is near a repair station, when the first missile hits, the puma get a small health recovery before the other 2 impact, it survives. While on other hand, there shall be 5 javelins hit it and it has no chance.


Well, it depends on whether there are other targets or not. If not, then the 4th and 5th javelin will hold fire. As soon as the puma heals enough to exceed the damage from 3 javelins, the 4th will fire.

Or add in a small amount of overkill into the system, like someone else suggested.

User avatar
nyxstef
Sergeant Major
Posts: 270
Joined: Fri 7 Aug 2015 07:42
Contact:

Re: Your preferred overkill prevention

Postby nyxstef » Wed 16 Sep 2015 01:56

Such algorithms can possibly be implemented, but don't forget that there are people playing this game with low-spec PCs. These algorithms will take lots of CPU time, and exponentially grow with the number of units in any battle.

Plus there are too many factors that take into account... Such as when new units come into firing range of target / your units become out of range, multi-weapon units, combination of different types of units, existence of repair units, etc.

Moreover, units can move while being targeted at, so the algorithm must re-adjust every fraction of a second, which can take a huge toll on the CPU (unless optimized a lot, which will require many developer hours & budget).

So in short: not gonna happen.
R.I.P AoA (Sep 2015 - Oct 2015) :(

admiralzeech
Sergeant Major
Posts: 296
Joined: Wed 9 Sep 2015 13:10
Contact:

Re: Your preferred overkill prevention

Postby admiralzeech » Wed 16 Sep 2015 09:51

nyxstef wrote:Such algorithms can possibly be implemented, but don't forget that there are people playing this game with low-spec PCs. These algorithms will take lots of CPU time, and exponentially grow with the number of units in any battle.
So in short: not gonna happen.


Whilst I agree with you that it's not going to happen, you're totally wrong about the performance requirements of such an algorithm. You just came up with some fancy sounding explanation that is so completely wrong that it's quite shocking to me. No offense.

As a 16 year old girl who pretends to be a 30-something male games programmer on the internet (or is it the other way around?) I can tell you that such a system is pretty much trivial. Here's one way of doing it.

- AoA, unlike Supreme Commander, doesn't seem to simulate its projectiles very much. Almost everything is guaranteed to hit, unless it's a missile that is decoyed or shot down. (Or artillery.) So we don't need to worry about dodging, stuff getting in the way, inaccuracy etc, too much.

- Ok, for every unit, in addition to their Hit Points, we'll give them another number, called Incoming Doom. It starts at zero.

- If a projectile is launched towards a unit, the projectile will remember its target (missiles do it anyways, for tracking). On its target, the Incoming Doom number will be incremented by the amount of damage the projectile will do.

- If the projectile misses, is shot down, decoyed, or otherwise is destroyed in any way, before disappearing it will contact its target and subtract the damage back from the target's Incoming Doom.

- When a unit is about to fire, it will check the target's Incoming Doom score. If it is higher than the target's HP (plus some margin for overkill just to be safe), then the unit will choose another target, or just hold fire if no other targets.

- This simple system is mostly meaningless for rapid fire cannons, and partially meaningless for AOE / artillery attacks. So it should just be used on low fire rate weapons like tank cannons, grenade launchers and missiles. Which is probably what we most want it for, anyways.
(we could make it work for AOE attacks, but I can't be bothered explaining here since it's more complicated.)


So yeah, one additional number on every unit, a single numerical check every time you choose a target, and an addition/subtraction every time a projectile is created or destroyed.
The amount of processing required is less than 1% of a single unit's pathfinding. Or a single projectile's collision detection.

"Game mechanics" generally require very little processing power, compared to 3D-world stuff like pathfinding and collision detection. Don't ever try to refute a "game mechanics" suggestion by claiming it will take too much processing power :)

But anyways, like you said, it's not going to happen.

User avatar
nyxstef
Sergeant Major
Posts: 270
Joined: Fri 7 Aug 2015 07:42
Contact:

Re: Your preferred overkill prevention

Postby nyxstef » Wed 16 Sep 2015 12:22

I studied Software Engineering, and yes I do know what I'm saying.

What you're saying is totally implementable, but 1 important thing that must be taken into consideration is that the new code must be modular and easily modifiable to accommodate future patches. In other words, if Eugen decides to add new weapon types / mechanics into the game or changes existing ones, the overkill prevention system must be able to handle them without needed to be modified too.

Second, human intervention. If both armies are left to fight by themselves, the algorithm doesn't need to readjust that often. However, since players will definitely send commands to units (pro players will send lots of commands per minutes) the algorithm needs to recalculate quite often, resulting in huge CPU time demand.

Third, are you going to include bombers into the system? Bombers deal their maximum damage on targets in the middle of their bombing area, and less the further from the center, so as SW. However, bombers deal their damage not in a single burst, rather over time (albeit very short period).

Fourth, if artillery is considered into your 'Doom' value, that means Eugen must also implement a system to predict projectile's path, as they can miss. It will be very hard to implement for artillery units such as Valor and Buratinos, as their damage is not equal over an area, like upgraded AMOS.

Lastly, there's possibility of infinite loop in the system. Let say that a Puma with Pantsirs behind just need 1 more hit from a missile, and you have 3 Javelins. So your first Javelin will shoot at Puma, and the 2 others will shoot at other units in range. If the missile for Puma is intercepted, one of the Javelins will shoot again at Puma, while the 2 others will shoot at other units again. This will continue on until you manually command all Javelins to shoot at the Puma, causing needless micro. Even if you add dynamic targeting system, what will be your design? Is it going to immediately command all Javelins to shoot at Puma, or command additional Javelin to shoot at target (looping until the Puma is destroyed) ?

TL;DR: Such complex auto-targeting system won't happen.


Simpler method is that all fired missiles still in flight will automatically target nearby enemies if the original target is destroyed.
R.I.P AoA (Sep 2015 - Oct 2015) :(

Return to “Act of Aggression”

Who is online

Users browsing this forum: No registered users and 2 guests