Page MenuHomeWildfire Games

tweak citizen cavalry and elephant footprints
Needs ReviewPublic

Authored by Nescio on Dec 21 2019, 5:56 PM.

Details

Reviewers
None
Group Reviewers
Restricted Owners Package(Owns No Changed Paths)
Summary

Practically all fauna have a 2:1 length to width footprint ratio. However, citizen cavalry has a 3:2 ratio and worker elephants a circular footprint. This patch changes their footprints to the more appropiate 2:1 ratio.
Before:


After:

Also tweaked footprint height to:

  • infantry: 4
  • cavalry: 6
  • kush and ptol camel: 7.5
  • maur elephant archer: 9
  • maur worker elephant: 8

and their <StatusBars/HeightOffset> to <Footprint/Height> + 1.

A larger footprint also makes units more vulnerable to long range projectiles (e.g. arrows), so this patch makes citizen cavalry a smaller target. For comparison:

infantry (b/c/h) footprint:  7 (circular)
cavalry footprint:
  citizen:             24 → 18
  champion and hero:        20 (circular because of selection marker)
elephant footprint: 
  worker:              50 → 32
  archer:              38 → 32
  champion:                 38 (circular)
  hero :                    28 (circular)

[EDIT]: And removed some unnecessary footprint lines from infantry templates.

Test Plan

Agree this is an improvement.

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes

Successful build - Chance fights ever on the side of the prudent.

Link to build: https://jenkins.wildfiregames.com/job/vs2015-differential/841/display/redirect

Successful build - Chance fights ever on the side of the prudent.

Link to build: https://jenkins.wildfiregames.com/job/docker-differential/1357/display/redirect

Nescio updated this revision to Diff 10754.Dec 23 2019, 1:07 PM
Nescio retitled this revision from tweak citizen cavalry and worker elephant footprints to tweak citizen cavalry and elephant footprints.
Nescio edited the summary of this revision. (Show Details)

included elephant archer footprint

Successful build - Chance fights ever on the side of the prudent.

Link to build: https://jenkins.wildfiregames.com/job/vs2015-differential/870/display/redirect

Nescio updated this revision to Diff 10756.Dec 23 2019, 1:13 PM

unnecessary replace=""

Successful build - Chance fights ever on the side of the prudent.

Link to build: https://jenkins.wildfiregames.com/job/vs2015-differential/871/display/redirect

Successful build - Chance fights ever on the side of the prudent.

Link to build: https://jenkins.wildfiregames.com/job/docker-differential/1386/display/redirect

Successful build - Chance fights ever on the side of the prudent.

Link to build: https://jenkins.wildfiregames.com/job/docker-differential/1387/display/redirect

elexis added a subscriber: elexis.Dec 23 2019, 3:41 PM

See #3786 for the last time someone reworked all footprints to make them fit esthetically (selection ring matching visual actor size).

A larger footprint also makes units more vulnerable to long range projectiles

Is that true? I expected it uses the obstruction size, but I didn't look at the related code for a long time.

If it is true, it changes balancing slightly, so author or reviewer may want to consider that.
I guess the only relevant change is Cavalry 4 -> 3 width change, which makes it slightly harder for ranged units and structures to hit it. I don't know by how much without testing (probably not a dealbreaker but you never know).

Is that true? I expected it uses the obstruction size, but I didn't look at the related code for a long time.

Unit templates don't have a static obstruction defined in their templates, so I assumed their effective target size is based upon their footprint.

If it is true, it changes balancing slightly, so author or reviewer may want to consider that.
I guess the only relevant change is Cavalry 4 -> 3 width change, which makes it slightly harder for ranged units and structures to hit it. I don't know by how much without testing (probably not a dealbreaker but you never know).

Only at long range, because of spread. If anything, this patch would make differences between maximum range and point-blank less pronounced. E.g. at maximum range 40 infantry archers might beat 40 horse archers (due to the smaller infantry footprint), whereas at point-blank 40 horse archers could massacre the 40 infantry archers (due to the higher cavalry health). Just an example I didn't test myself, though.

Nescio edited the summary of this revision. (Show Details)Dec 23 2019, 3:57 PM
Nescio removed a reviewer: borg-.Jan 18 2020, 2:34 PM

Unit templates don't have a static obstruction defined in their templates, so I assumed their effective target size is based upon their footprint.

The related code (Attacking.js-helper; L137 onwards) shows that footprints are indeed used.

Nescio edited reviewers, added: Restricted Owners Package; removed: Restricted Owners Package.Jan 19 2020, 11:27 AM
Nescio added a subscriber: ValihrAnt.
Nescio updated this revision to Diff 11389.Feb 17 2020, 8:41 PM
Nescio edited the summary of this revision. (Show Details)

status bars

Nescio added inline comments.Feb 17 2020, 8:44 PM
binaries/data/mods/public/simulation/templates/template_unit_cavalry.xml
33

<StatusBars/HeightOffset> minus 0.5

binaries/data/mods/public/simulation/templates/template_unit_infantry.xml
58–59

<StatusBars/HeightOffset> minus 0.5

binaries/data/mods/public/simulation/templates/units/kush_cavalry_javelinist_merc_b.xml
9–11

Because camels are taller than horses.

binaries/data/mods/public/simulation/templates/units/ptol_cavalry_archer_b.xml
3–5

Because camels are taller than horses.

Nescio edited the summary of this revision. (Show Details)Feb 17 2020, 8:45 PM
Nescio added a subscriber: bb.

Successful build - Chance fights ever on the side of the prudent.

Link to build: https://jenkins.wildfiregames.com/job/docker-differential/1785/display/redirect

Freagarach added a reviewer: Restricted Owners Package.Mar 27 2020, 2:23 PM

Actually I don't think adjusting footprints really distorts gameplay balance.

It will do, albeit only slightly.

True, there is a very small (neglible?) effect, but that affects all civs equally.
More importantly, footprint dimensions are determined by what looks good in game, not by balance considerations; otherwise any commit that introduces new actors would be a gameplay patch.

Freagarach removed a reviewer: Restricted Owners Package.Mar 27 2020, 2:41 PM

True that.

(Nonetheless, I still hope a team member is willing to review and commit this patch, as well as D2502 (walls) and D2640 (traders). Though footprints are not terribly important, aesthetics matter.)

I also think it might affect balance. Here it is not the balance between civs but the balance between units which is also important (to compare, right now champions aren't really viable compared to citizen soldier which is a problem). If cav become harder to hit it would buff them. Now i don't know if this patch actually noticeably changes balance or not, but to me it would be the kind of patch that could use some testing to be on the safe side of things.
If it does affect balance but we still want that patch then maybe cavalry would have to be nerfed in some other stats.

For what's it worth, I believe I ran a few AI vs AI test games when I proposed this patch in December, and didn't notice any difference. Cavalry footprint area is still much larger than that of Infantry, footprint length is unchanged, and Structure attack spread is typically low.
You can implement the patch with arc patch D2496 and try it out yourself.

Nescio updated this revision to Diff 12040.May 29 2020, 12:14 PM
Nescio edited the summary of this revision. (Show Details)
Owners added a subscriber: Restricted Owners Package.May 29 2020, 12:14 PM
Nescio edited the summary of this revision. (Show Details)May 29 2020, 12:14 PM
Nescio added inline comments.May 29 2020, 12:18 PM
binaries/data/mods/public/simulation/templates/template_unit_cavalry.xml
33

minus 1

binaries/data/mods/public/simulation/templates/template_unit_hero_infantry.xml
16–19

Unnecessary because already inherited from template_unit.xml; cf. template_unit_champion_infantry.xml and template_unit_hero_healer.xml templates.

binaries/data/mods/public/simulation/templates/template_unit_infantry.xml
59–62

idem

Successful build - Chance fights ever on the side of the prudent.

Link to build: https://jenkins.wildfiregames.com/job/docker-differential/2255/display/redirect

Nescio edited the summary of this revision. (Show Details)Fri, Jul 3, 9:35 PM
Nescio edited the summary of this revision. (Show Details)Fri, Jul 3, 9:39 PM
Nescio edited the summary of this revision. (Show Details)
Angen edited reviewers, added: Restricted Owners Package; removed: Restricted Owners Package.Sun, Jul 12, 11:51 AM

I think we want D2844 first, this generally looks OK.

binaries/data/mods/public/simulation/templates/template_unit.xml
29

Why is this changed? I'm not sure footprint height affects anything here?

binaries/data/mods/public/simulation/templates/units/maur_elephant_archer_b.xml
27

I'm slightly concerned that this might be a debuff to the elephant archer that doesn't really need it.

Whilst I agree D2844 can be nice to have, I vehemently disagree this patch needs that one, or vice versa.
Hitherto footprints have always been determined based on what looks good in game, most recently D2639/rP23504, D2502/rP23609, D2640/rP23758. See also D2721.

binaries/data/mods/public/simulation/templates/template_unit.xml
29

For consistency with line 113.
(<Footprint/Height> equals <StatusBars/HeightOffset> minus 1.)

binaries/data/mods/public/simulation/templates/units/maur_elephant_archer_b.xml
27

It's the same footprint given to maur_support_elephant.xml (below).

Stan added a comment.Mon, Jul 13, 12:13 AM

Notice that most your examples except the last one are structure related. And those are different in the sense you won't see 1200 buildings stuck against one another. For traders their size is a bit irrelevant since they do not fight.

Angen added a subscriber: Angen.Mon, Jul 13, 7:30 AM

ptol military footprint went big -> small and footprint itself was quite big with free space

for traders it was agreed balance among them does not change gameplay too much.

For walls it was mostly the same I think also structures are quite big so 2 or 3 points in footprint size does not mess things up significantly compared to much smaller unit footprints (as was said several comments above) where in some cases shape itself is changed.

The examples I gave are the most recent footprint changes I know of. For earlier commits changing the footprint sizes of units, see e.g. rP18014, rP14589, rP14393, rP13690, rP13297, rP11756, rP11628 (there are more). I didn't see gameplay balance considerations being mentioned in any of them.

In the old commits, there is rarely explained anything why changes were done and the fact something is not mentioned, it does not mean it was not taken into account or maybe was not and they did not care about it in that time.
We know it can affect balance, we should care about it. If balancing people state it does not affect balance (or affects in ridiculus small scale), great lets commit. But if they say it might change things in wrong way, we should avoid committing else in the future there will be need to nerf/buff some unit somehow.

If we can have way how to make things look better without disturbing balance, why not to use it?

The reason for this patch specifically is not improving gameplay balance, nor should it be the reason for accepting it. Making gameplay balance considerations suddenly a requirement assigns undue importance to the current values, which are rather arbitrary.
Of course, it's not forbidden to look at how it might affect gameplay, but in cases such as this the burden of proof ought to be on those claiming it has a noticeable (and negative) impact, not vice versa.

badosu added a subscriber: badosu.Tue, Jul 14, 3:07 AM

Making gameplay balance considerations suddenly a requirement assigns undue importance to the current values, which are rather arbitrary.

While true that values are arbitrary, a lot of effort is being done so that we can enjoy a more balanced game on next version.

Of course one should not be hampered to perform fundamental improvements that might have a negative impact on gameplay, but considerations should be part of the process of course, in the same or subsequent patches.

Balance may look like a small detail, and perhaps that's one reason we have so many issues with it at the current stage that were neglected so far; be it maps, civilization bonuses, heroes or unit composition.

All of these that although we are trying to remedy bit by bit are still a long ways from a satisfactory state. Checking if we are not taking a huge step backwards should definitely be part of this process moving forwards, otherwise all effort goes to waste.

Balance is a big issue why competitive players lose interest in the game, losing traction and perhaps more people wanting to collaborate.

That said, this looks like a fundamental flaw that should be fixed, be it in this patch or later, any gameplay issues should be addressed as well.

Again, I'm not saying gameplay balance is unimportant. Taking it into account when reviewing any patch does not harm.
However, the assumption this one specifically distorts gameplay balance is faulty. I sincerely believe the effect is negligible, anyone claiming otherwise ought to show why. I ran multiple single-player games and didn't notice it having any affect. If anything, I'd guess it improves balance, since it brings the footprint size of citizen cavalry closer to that of their champion counterparts, and yes, cavalry still has a footprint about three times as large as infantry, so qualitatively the status quo is maintained. Please try it yourself.
Improving the gameplay balance is not the reason why I proposed these (D2496, D2640, D2721) patches, improving how things look in game (and consistency) is.