Page MenuHomeWildfire Games

[gameplay] remove infantry from fortress
ClosedPublic

Authored by Nescio on Jan 16 2021, 5:11 PM.

Details

Summary

D1761/rP22984 enabled the arsenal for all civs and removed siege engines and technologies from the fortress.
D2801/rP24470 enabled the stable for all civs and removed cavalry and chariots from the barracks and fortress.
D3362/rP24612 enabled the elephant stable for all civs with elephants and removed elephants from the fortress.
D3372/rP24640 introduced unlock champion cavalry and chariot technologies at the stable.
This patch removes champion infantry from the fortress.

The difficulty is that civs (athen, cart, pers, spart) that have specific structures to train their champion infantry at shouldn't be able to train them at the barracks (own or captured from other civs), and vice versa. To achieve this, it's necessary for them to have different file names.
Currently champion infantry file names are rather inconsistent (cf. D906). Originally civs had only one, hence champion_infantry.xml, but as more champions were added, names seemed to have been made up on the fly, e.g. champion_pikeman.xml, champion_infantry_pike.xml, champion_infantry_pikeman.xml.
For this patch to work it's necessary to rename the champion infantry files either for civs with barracks champions or for civs without. Although most civs get barracks champions, only a minority of champions are trainable at the barracks, since there are a great number of unused or maps-only units. Thus the easiest (and clearest) solution is to adopt a consistent naming scheme only for barracks champions, which is done:

champion_infantry_spearman
champion_infantry_pikeman
champion_infantry_maceman
champion_infantry_axeman
champion_infantry_swordsman
champion_infantry_javelineer
champion_infantry_slinger
champion_infantry_archer

Champion infantry that's trained at other structures keep their haphazard names (e.g. champion_infantry.xml, champion_marine.xml, and champion_ranged.xml for Athens).

Further changes:

  • It's no longer necessary to have extra *_barracks.xml templates, which are thus deleted, resulting in about a dozen fewer files.
  • The “unlock champion units” technology is renamed to “unlock champion infantry” for consistency.
  • The “unlock champion chariot” technology is added to the Seleucids, who have a chariot, which was overlooked in D3372/rP24640.

Not changed, could be adjusted later, if it turns out to be an issue:

  • The Carthaginian infantry champion is still trained at the temple. The barracks would probably be better, but there are players who like it at the temple.
  • The Seleucid unlock pikeman vs unlock swordsman technologies are still free. They have to choose one, whereas some other civs can have two or three infantry champions. Besides, the Seleucids have two non-free unlock technologies at the stable.
Test Plan

Check for completeness and correctness. Verify everything works as intended.

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

Nescio created this revision.Jan 16 2021, 5:11 PM
Owners added subscribers: Restricted Owners Package, Restricted Owners Package.Jan 16 2021, 5:11 PM

Build is green

builderr-debug-macos.txt
ld: warning: text-based stub file /System/Library/Frameworks//CoreAudio.framework/CoreAudio.tbd and library file /System/Library/Frameworks//CoreAudio.framework/CoreAudio are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox.tbd and library file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback.tbd and library file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreVideo.framework/CoreVideo.tbd and library file /System/Library/Frameworks//CoreVideo.framework/CoreVideo are out of sync. Falling back to library file for linking.
ld: warning: text-based stu

See https://jenkins.wildfiregames.com/job/macos-differential/2897/display/redirect for more details.

Nescio requested review of this revision.Jan 16 2021, 6:15 PM
Nescio edited the summary of this revision. (Show Details)Jan 16 2021, 6:23 PM
Nescio removed a subscriber: Restricted Owners Package.

This leaves Fortresses as:

  • Hero training area (for some civs)
  • Some rare techs (which TBH seems dispensable)
  • Defensive strongpoint + territory root.

I wonder if we should allow them to train a mercenary, or if we consider them sufficiently useful as-is ?

Defensive strongpoint + territory root.

Exactly! That's precisely the point. Their purpose is to defend your territory, there are other structures for training units. Fortresses have been made a bit more affordable too (D3324/rP24552).

Hero training area (for some civs)

I'd like to see heroes removed from them as well (it's actually more of a penalty compared to civs that don't), but that's something for a future patch.

Anyway, as @borg- reminded me repeatedly, having some civs able to train their champions at the barracks, others at (not too expensive) specific structures, and some only at the (still expensive) fortress is neither consistent nor balanced.

I don't particularly mind, was more wondering if they still had a good enough appeal. I guess maybe, given the territory root now.

Well, we'll see. They can always be made stronger or cheaper in A25.
Anyway, the idea of having separate structures for separate functions is to force players to make choices on what to prioritize, rather than just booming and building a structure that's best for everything.

Yeah I definitely think that's stronger gameplay, also makes scouting more valuable.

Silier added a subscriber: Silier.Jan 16 2021, 7:13 PM

do you know sele have free tech for champions ?

Yes, I'm aware of that; I think it's fine. The Seleucids have to choose, whereas the Macedonians get two infantry champions with the technology and some civs with specific structures have three (Athenians, Kushites, Mauryas). Besides, the Seleucids have both cavalry and chariots at the stable, so in the end they'll be spending just as much on unlock technologies as most factions.
Thanks for the heads-up, though; I'll update the summary.

Nescio edited the summary of this revision. (Show Details)Jan 16 2021, 7:34 PM
borg- accepted this revision.EditedJan 16 2021, 7:51 PM

Objetive patch are give a Fortress a defense objetive + Future special techs. for consistense is better remove Champions from Fortress If you have barrack/stable and some specifics buildings for It.

I think you forget sele Fortress techs.

This revision is now accepted and ready to land.Jan 16 2021, 7:51 PM
Nescio added inline comments.Jan 16 2021, 8:04 PM
binaries/data/mods/public/simulation/templates/template_structure_military_barracks.xml
64 ↗(On Diff #15386)

@borg-, they're here.

In D3384#150287, @borg- wrote:

Objetive patch are give a Fortress a defense objetive + Future special techs.

In D3318 I proposed a defensive counter to the "Will to Fight" tech in the fortress, very strong, but expensive, for super late game.

This revision was automatically updated to reflect the committed changes.
Owners added a subscriber: Restricted Owners Package.Jan 17 2021, 10:41 AM