Page MenuHomeWildfire Games

Towers range tweak.
ClosedPublic

Authored by Grugnas on Jun 17 2017, 12:54 PM.

Details

Summary

sentry defense tower range increased from 66 to 72. Defense tower range decreased from 76 to 72.

Test Plan

Let towers range be equal to archers range. Reducing the range of an archer garrisoning a sentry defense tower is incorrect. The elevation bonus is, i guess, the bonus range the unit has by garrisoning the tower and shooting arrows from the top of the defense tower, thus an unit equipped with bow will have bowmen range 72 mts + elevation bonus equal to a hypothetical tower height.
i hope this replay is clear enough to understand which the issue with sentry towers is:
Despite the total range of a sentry tower: 66 mts of max distance + 9 mts of elvation bonus, they can't shoot at infantry archers with a range of 72 mts.

GIF (20mb): F156604

As far as i know this issue is already known since alpha 20 where the most common strategy was to train many archer camels as Ptolemies and destroy the opponent economy with no chance of turnback.

Diff Detail

Repository
rP 0 A.D. Public Repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

Grugnas created this revision.Jun 17 2017, 12:54 PM
Owners added a subscriber: Restricted Owners Package.Jun 17 2017, 12:54 PM
Grugnas updated this revision to Diff 2602.Jun 17 2017, 12:57 PM

elevation value considered as float

I am fine with current balance (butterfly effect also).

Vulcan added a subscriber: Vulcan.Jun 17 2017, 2:44 PM

Build is green

Updating workspaces.
Build (release)...
Build (debug)...
Running release tests...
Running cxxtest tests (306 tests)..................................................................................................................................................................................................................................................................................................................OK!
Running debug tests...
Running cxxtest tests (306 tests)..................................................................................................................................................................................................................................................................................................................OK!
Checking XML files...

http://jw:8080/job/phabricator/1576/ for more details.

Build is green

Updating workspaces.
Build (release)...
Build (debug)...
Running release tests...
Running cxxtest tests (306 tests)..................................................................................................................................................................................................................................................................................................................OK!
Running debug tests...
Running cxxtest tests (306 tests)..................................................................................................................................................................................................................................................................................................................OK!
Checking XML files...

http://jw:8080/job/phabricator/1577/ for more details.

Grugnas edited the test plan for this revision. (Show Details)Jun 17 2017, 7:46 PM
Grugnas edited the test plan for this revision. (Show Details)Jun 18 2017, 3:43 PM
Grugnas edited the test plan for this revision. (Show Details)Jun 18 2017, 3:48 PM
Grugnas edited the test plan for this revision. (Show Details)Jun 18 2017, 3:51 PM
Grugnas edited the test plan for this revision. (Show Details)
elexis edited the test plan for this revision. (Show Details)Jun 22 2017, 1:21 AM
elexis requested changes to this revision.Jun 22 2017, 1:41 AM
elexis added a subscriber: elexis.

Range mechanics:
The elevation bonus is added, so the range is already 66m + 9m = 75m for the sentry tower and 76m + 15m = 91m. (Notice the range upgrade doesn't affect the height bonus.)

If the idea is to have towers attack archers exactly if archers can attack the tower, then this sentry tower range buff might barely be sufficient, because the entire footprint (9.5 width) is vulnerable, but the arrows are shot only from the center and the footprint of archers (1.5m) is smaller than that of the building (#3381, it's not sufficient to just have 72m range for both).

But it seems to be just sufficient: If an archer wants to attack it, it has to be at least 72m + 4.75m = 76.75m close to the center of the sentry tower. The sentry tower then has 66m+9m = 75m range from the center which can shoot into the archers foot at 75m + 0.75m.
I.e. +1 range is the least buff needed to protect one from archers according to my math.
So maybe we can make this a +4 range instead of a +6m range buff (should test my math ingame).

We don't really have a reason to nerf defense towers, do we?

Armor:
Buffing the sentry tower armor is ok, but +5 is a lot in one a single buff, so I'd rather make this +4 pierce and +1 hack maybe.

This revision now requires changes to proceed.Jun 22 2017, 1:41 AM
fatherbushido requested changes to this revision.Jun 22 2017, 9:00 AM

(I set Request Changes for blocking that)

In D652#26774, @elexis wrote:

Range mechanics:
The elevation bonus is added, so the range is already 66m + 9m = 75m for the sentry tower and 76m + 15m = 91m. (Notice the range upgrade doesn't affect the height bonus.)

If the idea is to have towers attack archers exactly if archers can attack the tower, then this sentry tower range buff might barely be sufficient, because the entire footprint (9.5 width) is vulnerable, but the arrows are shot only from the center and the footprint of archers (1.5m) is smaller than that of the building (#3381, it's not sufficient to just have 72m range for both).

But it seems to be just sufficient: If an archer wants to attack it, it has to be at least 72m + 4.75m = 76.75m close to the center of the sentry tower. The sentry tower then has 66m+9m = 75m range from the center which can shoot into the archers foot at 75m + 0.75m.
I.e. +1 range is the least buff needed to protect one from archers according to my math.

this is valid against archers at rank 1 with a range of 72 mts, while rank 3 archers have 80 mts range and probably they should be damaged aswell.
As elexis said, a tower shoots at 66 + 9 meters for a total of 75 mts while they can be hitted from a distance of 66 + 9 - (footprint width + depth / 4) mts for a total of circa 71 mts of distance. Knowing that an archer when promoted get +4 range per rank, they can shoot at it at a distance of 80, thus probably having a range of 72 + elevation could eventually shoot at rank 3 archers depending on the elevation bonus.

Also, i'd like to propose (without uploading a patch yet) to have a counter system for towers not in terms of bonus damage but in terms of weak spots: while a tower can shoot at great distance, they perhaps could have a minimum range (they already had but for some reason sentry tower lost their minimum range) and have a low hack and crush armor, thus melee attacks would be their weak spot in any phase in game.

Grugnas updated this revision to Diff 2677.Jun 25 2017, 12:40 PM
Grugnas edited edge metadata.

reverted defense towers range tweak because it doesn't take into account footprint.

Build is green

Updating workspaces.
Build (release)...
Build (debug)...
Running release tests...
Running cxxtest tests (306 tests)..................................................................................................................................................................................................................................................................................................................OK!
Running debug tests...
Running cxxtest tests (306 tests)..................................................................................................................................................................................................................................................................................................................OK!
Checking XML files...

http://jw:8080/job/phabricator/1621/ for more details.

In D652#27079, @Grugnas wrote:

hitted

hit, hit, hit

archer when promoted get +4 range per rank, they can shoot at it at a distance of 80, thus probably having a range of 72 + elevation could eventually shoot at rank 3 archers depending on the elevation bonus.

Ah, I didn't consider that

for some reason sentry tower lost their minimum range

You mean those 4 min distance removed in https://code.wildfiregames.com/rP19747#872d8a8c that lie within the footprint and thus only misled the reader?

Melee units are already supposed to be the better units at destroying sentry towers.

Patch seems ok for me, even if it will make pizza games much harder. But I heard borg- has some concern, so that should be figured out.

fatherbushido requested changes to this revision.Jun 29 2017, 1:54 PM

66 + 8 > 72 (was a thought thing)
(+ no min distance) -> (see elexis comment, was a thought thing)

-> (phase 1)

I am fine with keeping as it is now

This revision now requires changes to proceed.Jun 29 2017, 1:54 PM
In D652#27665, @elexis wrote:

Patch seems ok for me, even if it will make pizza games much harder. But I heard borg- has some concern, so that should be figured out.

I'd rather say that in the current version any not archer relying civs (Carthaginians, persians, mauryans, ptols) have already bad times even if they build a sentry tower while having a structure common for any civ sounds more equilibrate (pizza games are lightnin games anyway).
Despite cavalry can be trained in phase 1 already, sentry towers on the other hand find their only use in phase 1 because replaced by defense towers later in the game and if they can't make the desired effect they will only be an abandoned structure.

fatherbushido accepted this revision.Jun 29 2017, 2:41 PM

Taking account of the way building AI targets and if we agree that the tower should be able to hit the archer, 71 is needed. So 72 is ok.
(assuming we are on flat terrain)

fatherbushido added a comment.EditedJun 29 2017, 3:28 PM

70 is sufficient too
(I would prefer that value finally :p)

(so accepted for 70)

Grugnas updated this revision to Diff 2754.Jun 29 2017, 3:40 PM

tweaked in order to affect not-promoted units

fatherbushido accepted this revision.Jun 29 2017, 3:49 PM

Build is green

Updating workspaces.
Build (release)...
Build (debug)...
Running release tests...
Running cxxtest tests (306 tests)..................................................................................................................................................................................................................................................................................................................OK!
Running debug tests...
Running cxxtest tests (306 tests)..................................................................................................................................................................................................................................................................................................................OK!
Checking XML files...

http://jw:8080/job/phabricator/1662/ for more details.

elexis accepted this revision.Jun 30 2017, 12:37 PM

66+9-4.5=70,5, so +2m range is the minimum sentry tower range buff to make unpromoted archers being shot at.
Why has 4 been chosen?
Accepting everything greater or equal +2 and smaller than +6

This revision is now accepted and ready to land.Jun 30 2017, 12:37 PM

+4 isn't enough to reach promoted archers but enough to reach archers whenever the tower is built on a slightly downhill terrain (elevation bonus at least won't work as elevation malus).

This revision was automatically updated to reflect the committed changes.