Opened 2 years ago

Closed 2 years ago

Last modified 2 years ago

#4599 closed defect (fixed)

Indefinite attack range with Skirmish formation

Reported by: Grugnas Owned by:
Priority: Must Have Milestone: Alpha 22
Component: UI & Simulation Keywords: UnitAI
Cc: Patch:

Description (last modified by elexis)

Bug prologue: the macedonian player selected a group of slingers, archers and pikemen gave the command to form the Skirmisher formation then ordered to capture a civic center (probably at this point the formation disrupted). Since the units were to few, he retreated those units by commanding them to gather wood from the nearby trees then he commanded them to attack the cc again. What happened is that slingers and archers attacked the Civic Center from a distance of something like 100 - 120 meters (way further than their max range even when promoted to elite rank). The attackers tooltip didn't show any abnormal value nor elevation bonus, but i guess that pikemen within formation stopped to move as if they were halted or if they reached the target.

https://trac.wildfiregames.com/raw-attachment/ticket/4599/slinger.jpg

Even three pikemen attacked the CC at range: https://trac.wildfiregames.com/raw-attachment/ticket/4599/ranged_melee.jpg

Attachments (6)

syntagma.zip (257.7 KB) - added by Grugnas 2 years ago.
slinger.jpg (190.7 KB) - added by elexis 2 years ago.
ranged_melee.jpg (420.5 KB) - added by elexis 2 years ago.
indefinite_range.jpg (431.8 KB) - added by elexis 2 years ago.
commands.txt (8.3 KB) - added by elexis 2 years ago.
Minimal replay for r19694
formation.patch (660 bytes) - added by mimo 2 years ago.

Download all attachments as: .zip

Change History (14)

Changed 2 years ago by Grugnas

Attachment: syntagma.zip added

Changed 2 years ago by elexis

Attachment: slinger.jpg added

comment:1 Changed 2 years ago by elexis

Description: modified (diff)

Changed 2 years ago by elexis

Attachment: ranged_melee.jpg added

comment:2 Changed 2 years ago by elexis

Description: modified (diff)
Priority: Should HaveMust Have

Changed 2 years ago by elexis

Attachment: indefinite_range.jpg added

Changed 2 years ago by elexis

Attachment: commands.txt added

Minimal replay for r19694

comment:3 Changed 2 years ago by elexis

https://trac.wildfiregames.com/raw-attachment/ticket/4599/indefinite_range.jpg

Reproduce:

  1. Select the skirmish formation (line-closed doesn't do this trick)
  2. Attack the target in formation
  3. Unset the formation
  4. Retreat
  5. Attack the target unlimited range
  6. If you target another entity that wasn't in attack range, the units will not react to that order

comment:4 Changed 2 years ago by elexis

Summary: Very long range slingersIndefinite attack range with Skirmish formation

comment:5 Changed 2 years ago by fatherbushido

Nice minimal replay. The formation with that are the one for which FormationAttack has CanAttackAsFormation set to true ie

skirmish.xml
testudo.xml
phalanx.xml
syntagma.xml
wedge.xml
Last edited 2 years ago by fatherbushido (previous) (diff)

Changed 2 years ago by mimo

Attachment: formation.patch added

comment:6 Changed 2 years ago by mimo

Looking at the code in helpers/Commands.js, it seems that when we switch to the null formation, we never remove entities from their previous formation. This is done in the attached patch, which fix the quoted problem (thanks for the small commands.txt). While testing, I noticed that when we remove all entities except one from the formation, the remaining entity keep its formation icon and we can't switch back to the null one from the gui. This is also fixed in the patch.

comment:7 Changed 2 years ago by elexis

Milestone: BacklogAlpha 22

From your description I suspect the patch to fix one of the greatest formation problems too (the fact that we often can't disband a formation) (This sounds like a candidate for a release blocker, but I guess it depends on our availability)

comment:8 Changed 2 years ago by mimo

Resolution: fixed
Status: newclosed

Fixed in phab:D582 / r19709

Last edited 2 years ago by elexis (previous) (diff)
Note: See TracTickets for help on using tickets.