Opened 3 years ago

Last modified 8 weeks ago

#5106 new defect

A single unit "dancing" to dodge arrows of dozens of attackers

Reported by: elexis Owned by:
Priority: Release Blocker Milestone: Alpha 24
Component: Simulation Keywords:
Cc: Dunedan Patch: Phab:D2767

Description

As well demonstrated by Hannibal Barca on the Jebel Barkal mountain, one can set a unit to patrol between two very close points to dodge 100% of dozens of attackers arrows.

The attackers shoot at the point where the enemy will be expected to be. But the enemy unit does a turnaround before he reaches that point, so none of the arrows hit it.

With patroling it is very easy, one has only to do about three clicks. So we might add a minimum distance to avoid the problem.

But the issue also exists without patroling, by manual dancing (originally done by wesono). (I'm not sure how this can be addressed, since one should be able to move units by a short distance.)

It can be a very gamebreaking problem if there is a fight of 30 to 100 ranged units where one party misses all arrows and the other party strikes every time.

At least the patroling should be disabled for this release if possible.

Attachments (2)

screenshot2153.jpg (431.6 KB ) - added by elexis 3 years ago.
patch.patch (6.2 KB ) - added by wraitii 6 months ago.
test setup using a demo map and trigger & a little modding

Download all attachments as: .zip

Change History (11)

by elexis, 3 years ago

Attachment: screenshot2153.jpg added

comment:1 by elexis, 3 years ago

Hannibal was standing / dancing there the entire game. Notice the two distinct heaps of arrows:

https://trac.wildfiregames.com/raw-attachment/ticket/5106/screenshot2153.jpg

comment:2 by Dunedan, 3 years ago

Cc: Dunedan added

comment:3 by elexis, 3 years ago

Milestone: Alpha 23Backlog

meh

comment:4 by Imarok, 2 years ago

Das noted somewhere in the forums, one solution would be implementing a concept of acceleration, so that it units won't be able to reach their final speed instantly.

comment:5 by Imarok, 21 months ago

Component: UI & SimulationSimulation

Move tickets to Simulation as UI & Simulation got some sub components.

comment:6 by elexis, 20 months ago

Milestone: BacklogAlpha 24
Priority: Should HaveMust Have

by wraitii, 6 months ago

Attachment: patch.patch added

test setup using a demo map and trigger & a little modding

comment:7 by wraitii, 6 months ago

Priority: Must HaveRelease Blocker

See the patch above for an experimental setup. I basically tested 8 versions of the same scenario: 5 Athen Marine Archers firing on 1 Cavalry auto-patrolling. Archers were 40 meters away. Times reported are "time to kill":

Experiment 1 - regular

  • svn: forever
  • svn with no spread: forever
  • svn with 2x arrow speed: 40s
  • svn with 4x arrow speed: 15s (very few misses)

Experiment #2 - In these I don't predict the target position 40% of the time and fire straight at it.

  • svn: about 1m20-30s
  • svn with no spread: 45s
  • svn with 2x arrow speed: 30s
  • svn with 4x arrow speed: 15s (unchanged)

So it seems to me we simply need to make arrows at least 3 times as fast, and it could be useful to introduce a small random component to prediction (possibly predicting between "stop", "reverse", "regular") to avoid falling into bad patterns.

This seems easy to fix and it's a bad issue, so I'm bumping to Release Blocker.

comment:8 by elexis, 6 months ago

Patch: Phab:D2767

in reply to:  7 comment:9 by Bohaska, 8 weeks ago

Replying to wraitii:

See the patch above for an experimental setup. I basically tested 8 versions of the same scenario: 5 Athen Marine Archers firing on 1 Cavalry auto-patrolling. Archers were 40 meters away. Times reported are "time to kill":

Experiment 1 - regular

  • svn: forever
  • svn with no spread: forever
  • svn with 2x arrow speed: 40s
  • svn with 4x arrow speed: 15s (very few misses)

Experiment #2 - In these I don't predict the target position 40% of the time and fire straight at it.

  • svn: about 1m20-30s
  • svn with no spread: 45s
  • svn with 2x arrow speed: 30s
  • svn with 4x arrow speed: 15s (unchanged)

So it seems to me we simply need to make arrows at least 3 times as fast, and it could be useful to introduce a small random component to prediction (possibly predicting between "stop", "reverse", "regular") to avoid falling into bad patterns.

This seems easy to fix and it's a bad issue, so I'm bumping to Release Blocker.

Did you change the amount of damage dealt proportionately? (eg. 2x arrows but each arrow does 0.5x damage)

Note: See TracTickets for help on using tickets.