Help with row= page= column=

Is there a guide to how to work with the " train row=" page=" column=" and “tech row=” page=“0” column=“0” parameters?

I want to add units and techs to the stable but the tech does not appear on the building. Reading some posts in the forum gave me the idea that the "row=“0” page=“0” column="0” parameters need to be precise for the game to locate the new units/techs but have no idea how they work.

techtreemod

tech name=“DEAge0Mexicans”>
Effect>
effect mergeMode=‘add’ type=“TechStatus” status=“obtainable”>NEWTECH1
effect mergeMode=‘add’ type=“TechStatus” status=“obtainable”>NEWTECH2
effect mergeMode=‘add’ type=“CommandAdd” tech=“NEWTECH1” page=“1” column=“2”>
target type=“ProtoUnit”>Stable
/effect>

effect mergeMode=‘add’ type=“CommandAdd” tech=“NEWTECH2” page=“1” column=“2”>
target type=“ProtoUnit”>Stable
/effect>
/Effect>

protomod

/protomods>
unit name=NEWUNIT1>
dbid>12000
info …………
/unit>

Unit name=‘Stable’>
train row=“0” page=“0” column=“2”>NEWUNIT1
tech row=“0” page=“1” column=“0”>NEWTECH1
tech row=“0” page=“1” column=“0”>NEWTECH2
tech row=“0” page=“1” column=“0”>NEWTECH3
/Unit>

how do “tech row=” page=“0” column=“0” parameters work?

Page is no longer used in 3DE , it was only in legacy for the ui to show the correct indicaor on the left side.
Otherwise:

Page
0 Train
1 Improve
2 Infantry
3 Wonders
4 Cavalry
5 Artillery
6 Build
7 Buy
8 Sell
9 Tactics
10 Commands (bottom row)
11 Abilities (controlled by abilities.xml)
18 Choose Ally
19 Armies
20 (consulate end relations BB)
21 Buy (consulate)
22 (blank, used for RD techs)
23 (used on a couple consulate techs in WoL, I think this is a typo but haven’t tested)
255 (unused/submenu for wonders)

Row means from left to right
Column top to bottom.

So

This will appear I the first icon space, in the 3rd line

Note that Nr “255” is not accessable to the player, and can hide special abilities for AI to use.

2 Likes

Is a Mess. Some people say “row” is not usted, others say “page” is not usted. I do not understand the pattern. If I use the exact same parameters for “pronto” or “techtree” parameters Will it work? For example:

Stable, Hussar tech. Row0 page1 column2. Replace the veteran tech with a new one and use the same values of Row0 page1 column2 for the new tech. It should work, i supuse?

Is there an offical/unofficual guide somewere?

Yes it works then

As for page like said above , only 255 and page 10 have a real meaning

Will work on it.

QUESTION: Im working on new Upgrades and units, they do the same stuff they just have a different names and icons. Is there a way to just replace one tech/unit for the other? Do “Margemod=replace” work on This?

Techtree?
Age0?
Tech/unit Margemod=replace ID=xxx name=unit/techname
Div…
Unit/tech info…
Tech/unit>

Or is My understending of “replace” wrong?

On “rows”:
— In original TAD, only SeedDrill & ArtificialFertilizer (in Mill and Rice Paddy) have row numbers that are 1 rather than 0.

— In AoE3DE, the above 2 techs are also copied into into Hacienda, and additionally the African Granary has 4 techs with row number 1:
DEAfricanVillagerFarming1 ~ 3, DEImpLargeScaleGatheringAfrican

This suggests row is indeed unused.
Apparently, AoE3 still expects and reads the row value for <Train> and <Tech>. It simply has no effect.

====

If I understand correctly (correct me when I’m wrong), the way AoE3 panels work is, you should see the “pages” more like paragraphs.

(Except for the special buttons,) each paragraph occupies at least one line, and may expand to occupy more lines.

To add another page is to start a new paragraph, which naturally begins from a new line.

So for example, you can have 3 pages, each occupying a line in the panel; or 2 pages, one occupying 2 rows, the other 1 line.

When the UI system adds a button to a page:

—It is first moved to the designated column number, which can wrap into the next line, so column 6 means the 1st space in the paragraph’s 2nd line.

—If the space is already occupied, the button is moved to the next one, until it either finds a free space, or overflows from the panel.

And while AoE3DE no longer displays the page labels, the above systems are still in place.

I think the correct description should be:
row is unused, column value is left to right, and wraps around to the next line.”

I don’t know how WoL places Royal Decree techs, but in unmodded games… see below.

In TAD, Page 22, which has no text label, is used to place some Chinese War Academy unit upgrades in the bottom row.

If we clean up the TAD War Academy proto a bit, it looks like this:

		<Train row ='0' page ='0' column ='0'>ypOldHanArmy</Train>
		<Train row ='0' page ='0' column ='1'>ypStandardArmy</Train>
		<Train row ='0' page ='0' column ='2'>ypMingArmy</Train>
		<Train row ='0' page ='0' column ='5'>ypImperialArmy</Train>
		<Train row ='0' page ='0' column ='4'>ypForbiddenArmy</Train>
		<Train row ='0' page ='0' column ='3'>ypTerritorialArmy</Train>

		<Tech row ='0' page ='2' column ='0'>YPDisciplinedChuKoNu</Tech>
		<Tech row ='0' page ='2' column ='1'>YPDisciplinedQiangPikeman</Tech>

		<Tech row ='0' page ='22' column ='0'>YPDisciplinedSteppeRider</Tech>
		<Tech row ='0' page ='22' column ='1'>YPDisciplinedKeshik</Tech>

		<Tech row ='0' page ='2' column ='2'>YPHonoredArquebusier</Tech>
		<Tech row ='0' page ='2' column ='3'>YPHonoredIronFlail</Tech>

		<Tech row ='0' page ='22' column ='2'>YPHonoredChangdao</Tech>
		<Tech row ='0' page ='22' column ='3'>YPHonoredMeteorHammer</Tech>

The actual in-game panel looks like this:

Label 0 1 2 3 4 5
Armies Old Han Army Standard Army Ming Army Territorial Army Forbidden Army Imperial Army
Improve Chu Ko Nu Qiang Pikeman Changdao Swordsman Iron Flail
Steppe Rider Keshik Arquebusier Meteor Hammer

Though I still don’t know why the upgrades are located 1 column to the right of their designations.

2 Likes

A more complete list of page values:

Value cStringCommandPanel text TAD use
0 Train train units
1 Improve research techs, build Asian wonders/TC/TP
2 Infantry Arsenal
3 Wonders (unused)
4 Cavalry Arsenal
5 Artillery Arsenal
6 Build build buildings
7 Buy Market
8 Sell Market
9 Tactics change unit modes
10 Commands special bottommost row
11 Abilities controlled by abilities.xml
12 British (unused)
13 French (unused)
14 Russian (unused)
15 Dutch (unused)
16 Spanish Consulate (unused)
17 Portuguese (unused)
18 Choose Ally Consulate
19 Armies War Academy, Consulate batch units
20 Consulate end relations Big Button
21 Buy (Consulate) Consulate techs & one-off units
22 (blank) War Academy 2nd-row unit upgrades
255 hidden options that the player won’t see

====

For another example of the system in the wild, look at Arsenal, a building with 3 standard “pages”:

The TAD Arsenal has the following techs.

		<Tech row ='0' page ='4' column ='2'>Pillage</Tech>
		<Tech row ='0' page ='2' column ='5'>MilitaryDrummers</Tech>
		<Tech row ='0' page ='2' column ='1'>Bayonet</Tech>
		<Tech row ='0' page ='5' column ='0'>IncendiaryGrenades</Tech>
		<Tech row ='0' page ='2' column ='4'>PaperCartridge</Tech>
		<Tech row ='0' page ='2' column ='0'>Rifling</Tech>
		<Tech row ='0' page ='4' column ='0'>CavalryCuirass</Tech>
		<Tech row ='0' page ='5' column ='1'>GunnersQuadrant</Tech>
		<Tech row ='0' page ='2' column ='0'>InfantryBreastplate</Tech>
		<Tech row ='0' page ='5' column ='4'>Trunion</Tech>
		<Tech row ='0' page ='2' column ='3'>Flintlock</Tech>
		<Tech row ='0' page ='5' column ='3'>ProfessionalGunners</Tech>
		<Tech row ='0' page ='5' column ='2'>HeatedShot</Tech>
		<Tech row ='0' page ='4' column ='1'>Caracole</Tech>

(These techs have the same placement values in AoE3DE; the only difference is XML formatting.)

You can see the order of “pages” is hardcoded: the XML is written in the order of

Cavalry, Infantry, Artillery,

while in the real game, the order will be

Infantry, Cavalry, Artillery.

On a closer look, note how Counter Infantry Rifling & Infantry Breastplate are both placed in Page 2 Column 0, while nothing is placed in Page 2 Column 2.

Socket Bayonet (Page 2 Column 1) is automatically pushed to Column 2;
— The system is less consistent about how the two conflicting buttons should be placed.

When first built, the Arsenal panel looks like this:

When you send the Advanced Arsenal card, causing the panel to refresh, the two conflicting buttons are placed in the reverse order.

I guess this inconsistency of ordering (between initialization and later refresh) technically counts as a bug.

2 Likes

This very much wild.
I’ll check some of our tech that don’t move to the front

Oh yes! Now we are talking. This Will be very usefull. Tks for the info.

So its donde! worked like a sharm. Tnks.

So This is a funny one. Can a tech and a building be located on the same row? I think it can not but i’m not and expert. The thing is I wanna add some “tarde wagons” or something to the Marker, like the State Capitol for a mod and all that… But I noticed there is noooo space on rows for buildings like wagons.