Page MenuHomeWildfire Games

tweak soldier footprints
ClosedPublic

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

Details

Reviewers
wraitii
genava55
Group Reviewers
Restricted Owners Package(Owns No Changed Paths)
Commits
rP23932: Tweak soldier footprints
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:

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

[EDIT]: Further changes:

  • Standardized <StatusBars/HeightOffset> to <Footprint/Height> + 1.
  • Removed some unnecessary footprint lines from infantry templates.
  • Made use of D2844/rP23900 by @Angen to give heroes the same footprints as their citizen counterparts.

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:            20 → 18
  hero:                20 → 18
elephant footprint: 
  worker:              50 → 40.5
  archer:              38 → 40.5
  champion:            38 → 40.5
  hero :               28 → 40.5

i.e. about a 2 : 5 : 12 infantry : cavalry : elephant ratio.

Also adjusted the footprint of each chariot individually (all of the chariot actors are slightly off-centre, but that's an art problem, outside the scope of this patch). Before:


After:

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

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.Jul 13 2020, 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.

Silier added a subscriber: Silier.Jul 13 2020, 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.Jul 14 2020, 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.

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.

Fair point, maybe instead of hampering development with concerns before merging we should keep track of focus points to be watching for when playtesting, except for the most impactful cases of course.

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.

Fair point, maybe instead of hampering development with concerns before merging we should keep track of focus points to be watching for when playtesting, except for the most impactful cases of course.

@badosu, basically you're saying let's commit this now and revisit it in a couple of months in case it turns out a noticeable (and negative) effect? That sounds perfectly satisfactory to me! Also for D2721. @Angen?

Nescio updated this revision to Diff 12804.Jul 20 2020, 12:14 PM
Nescio edited the summary of this revision. (Show Details)
  • include war dog footprint (from D2721)

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

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

Nescio updated this revision to Diff 12805.Jul 20 2020, 12:21 PM
Nescio edited the summary of this revision. (Show Details)
  • slightly larger elephant footprint

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

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

Nescio updated this revision to Diff 12807.Jul 20 2020, 12:29 PM
  • exclude war dog footprint (to D2496)
Owners added a subscriber: Restricted Owners Package.Jul 20 2020, 12:29 PM
Nescio updated this revision to Diff 12810.Jul 20 2020, 12:34 PM

(wrong patch)

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

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

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

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

Nescio removed a subscriber: Restricted Owners Package.Jul 20 2020, 12:41 PM
Nescio updated this revision to Diff 12971.Jul 30 2020, 11:02 PM
Nescio retitled this revision from tweak citizen cavalry and elephant footprints to tweak soldier footprints.
Nescio edited the summary of this revision. (Show Details)
  • make use of D2844/rP23900 by @Angen to give heroes the same footprints as their citizen counterparts.

Build failure - The Moirai have given mortals hearts that can endure.

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

Nescio edited the summary of this revision. (Show Details)Jul 30 2020, 11:20 PM

Overall this seems fine to me. However, the selectable overlays are quite small on Champion cavalry and champion elephants (and some heroes such as Darius). Can you update them now that D2844 has been merged?

Nescio added a comment.Aug 3 2020, 3:55 PM

You mean the chariots? Those are not touched. I'll have a look at them.

Nescio updated this revision to Diff 13031.Aug 3 2020, 6:05 PM
Nescio edited the summary of this revision. (Show Details)
  • adjust all chariot footprints, per @wraitii
Vulcan added a comment.Aug 3 2020, 6:13 PM

Build failure - The Moirai have given mortals hearts that can endure.

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

Nescio updated this revision to Diff 13032.Aug 3 2020, 6:18 PM
  • correct typo in hero infantry template
Vulcan added a comment.Aug 3 2020, 6:23 PM

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

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

I'm talking about the texture for these:


These seem too small. The footprint is probably correct, but you should scale the "selectable" up I think.

Nescio added a comment.Aug 3 2020, 7:21 PM

I'm talking about the texture for these:
These seem too small. The footprint is probably correct, but you should scale the "selectable" up I think.

The problem is the arrow shape is rather narrow. As you can see its length and width match the actor's (4×8). However, if you want the actor to be inside the footprint, than it probably has to be at least doubled in both dimensions, like this (8×16):


or widened, like this (12×12):

I think these alternatives look even worse.

Nescio added a comment.Aug 3 2020, 7:27 PM

For chariots it's even more pronounced, since those are widest at the front, where the arrow is at its narrowests. So basically the arrow is an unsuitable shape.

For chariots it's even more pronounced, since those are widest at the front, where the arrow is at its narrowests. So basically the arrow is an unsuitable shape.

Mh, perhaps we need another diff then for changing the texture.

Nescio added a comment.Aug 3 2020, 7:39 PM

Perhaps, yes; any preferred shape?
Anyway, is there anything else in this patch (which, amongst other things, assigns champions and heroes the same footprint sizes as their citizen counterparts)?

wraitii accepted this revision.Aug 3 2020, 7:42 PM

Perhaps, yes; any preferred shape?

Not sure... Perhaps a "fat triangle" https://cdn3.volusion.com/qz29d.hncd6/v/vspfiles/photos/TMP-205-2T.jpg?v-cache=1487081183
Or perhaps an hexagon? Perhaps a zelda-ruby-like shape?

Anyway, is there anything else in this patch (which, amongst other things, assigns champions and heroes the same footprint sizes as their citizen counterparts)?

Not really, the rest seems fine.

Nescio added a comment.Aug 3 2020, 7:55 PM

Not sure... Perhaps a "fat triangle" https://cdn3.volusion.com/qz29d.hncd6/v/vspfiles/photos/TMP-205-2T.jpg?v-cache=1487081183
Or perhaps an hexagon? Perhaps a zelda-ruby-like shape?

Personally I think the ellipse looks best for all units. That one is already used by animals, citizens, and ships, though, and the purpose of the champion's footprint is exactly to differentiate them from other units, therefore theirs must look quite differently.
I have about two dozen svg available at https://github.com/0abc/0abc-a23/tree/master/art/textures/selection/svg_source, though I suppose I write another one, if it's clear what's wanted.
However, since changing the texture is a highly visible change, it's best to discuss that on the forums, to reach a wider audience, before proposing a patch on phabricator.

Nescio edited reviewers, added: Restricted Owners Package; removed: Restricted Owners Package.Aug 3 2020, 8:33 PM
This revision is now accepted and ready to land.Aug 3 2020, 8:33 PM
borg- added a comment.Aug 3 2020, 10:01 PM

Well, it seems to me that the standard for rts games is the circle, there must be a good reason for that (I think). I don't know how much it affects gameplay.

Well, it seems to me that the standard for rts games is the circle, there must be a good reason for that (I think).

Yes, round shapes are simple and look good.

I don't know how much it affects gameplay.

The choice of texture (image) has no effect at all.

I think my choices in order of decreasing preference are:

  • A "pentagon" fat arrow (handmade):

  • A regular hexagon.

Both sit somewhere between "Circle" of regular units and "Star" of Hero units.

(but yes, definitely open a forum thread and do another diff)

genava55 accepted this revision.Aug 4 2020, 10:00 AM

I think the circle is a better looking solution. Other shapes are confusing if they are not used specifically to distinguish different units. People are used to the circle/arrow/star shapes.
It doesn't really matter that the arrow is not perfectly nice looking, visually the player can easily distinguish the champion simply by seeing the flat side of the arrow or its tip.
If you want to try something else, the pentagon could be a nice alternative because you can stretch it easily and it still recognizable.

Nescio's patch is a small visual improvement, I don't think it will have such an effect on the projectile count landing (I doubt there is people "dancing" with chariot for example).
For me, this is good enough and a revision to apply.

wraitii updated this revision to Diff 13042.Aug 4 2020, 3:38 PM

Fix small mistake in boudicca footprint (Circle conflicting with Square)
Ready for commit.

Vulcan added a comment.Aug 4 2020, 3:39 PM

Build failure - The Moirai have given mortals hearts that can endure.

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

Nescio added a comment.Aug 4 2020, 3:49 PM

Fix small mistake in boudicca footprint (Circle conflicting with Square)

Out of curiosity, what exactly did you change? The brit_hero_boudicca.xml file in D2496?id=13042 looks exactly the same as in D2496?id=13032, I really can't find a difference.

Ready for commit.

Vulcan disagrees.

Out of curiosity, what exactly did you change? The brit_hero_boudicca.xml file in D2496?id=13042 looks exactly the same as in D2496?id=13032, I really can't find a difference.

<Square disable=""/>
It's in the template itself.

Vulcan disagrees.

Ole' Vulcan crashed, sadly.

Nescio updated this revision to Diff 13046.Aug 4 2020, 4:05 PM
  • remove lines that shouldn't be there (spotted by @wraitii)
Nescio added a comment.Aug 4 2020, 4:05 PM

Ah, you meant the template_unit_hero_cavalry_javelinist.xml file, I see now what you mean.

Vulcan added a comment.Aug 4 2020, 4:06 PM

Build failure - The Moirai have given mortals hearts that can endure.

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

Nescio added a comment.Aug 4 2020, 4:10 PM

For the record, I ran the checkrefs.pl script in source/tools/entity/ and did not encounter any issues:

Checking public's integrity. 
The following mod(s) will be loaded: public|mod. 
Loading maps PMP...
Loading entities...
Loading actors...
Loading variants...
Loading art files...
Loading materials...
Loading particles...
Loading sound groups...
Loading audio files...
Loading GUI XML...
Loading GUI data...
Loading civs...
Loading random maps...
Loading techs...
Loading terrains...
Loading auras...

Validating actors...

0 actor validation errors

Validating variants...

0 variant validation errors

Validating gui pages...

0 gui page validation errors

Validating gui xmls...

0 gui xml validation errors

Validating maps...

0 map validation errors

Validating materials...

0 material validation errors

Validating particles...

0 particle validation errors

Validating pathfinders...

0 pathfinder validation errors

Validating territory managers...

0 territory manager validation errors

Validating sound groups...

0 sound group validation errors

Validating terrains...

0 terrain validation errors

Validating terrain textures...

0 terrain texture validation errors

Validating textures...

0 texture validation errors
This revision was landed with ongoing or failed builds.Aug 4 2020, 4:24 PM
Closed by commit rP23932: Tweak soldier footprints (authored by wraitii). · Explain Why
This revision was automatically updated to reflect the committed changes.
Nescio added a comment.Aug 4 2020, 4:28 PM

Thank you, @wraitii, I appreciate it!
This patch went through 14 differentials; I don't remember having another patch that had that many.

This patch went through 14 differentials; I don't remember having another patch that had that many.

Some things take time :)

This patch went through 14 differentials.

(For fun: d1718 has 52.)

Nescio added a comment.Aug 4 2020, 4:55 PM

Some things take time :)

Or perseverance; this one took only about eight months to get committed; D1042 two-and-a-half years. Anyway, I'm not complaining, I'm just happy this patch (and D2721) is now in.