Table of Contents
How to port your A26 mod to A27
This lists (most) of the template-changing commits, and how to fix them. And also some other breaking changes.
r27114 & r27115
Move unit portraits to their own specific folders. Modders can change their templates with the script at MISSING.
r27169
The minimap now requires a background per civilization. It should be placed in session/icons/bkg/
and named background_circle_{civ}.png
You can also remove that feature by editing gui/session/minimap/MiniMapPanel.js
or adding exclusions.
r27245
The requirements of training and upgrades are now handled by a Requirements helper. The schema of both is unified. One can fix the templates with: Phab:P265.
r27308
basic_spec.xml
,blend_spec.xml
,objectcolor_spec.xml
,playercolor_spec.xml
have been removed. You can use Phab:P290 to fix them.
rP27368
aura.xml
basic_glow.xml
basic_glow_norm.xml
basic_glow_wind.xml
basic_specmap.xml
basic_trans_ao.xml
basic_trans_ao_spec.xml
basic_trans_spec.xml
no_trans_ao.xml
no_trans_ao_spec.xml
no_trans_parallax_ao.xml
no_trans_spec.xml
objectcolor_specmap.xml
player_trans_ao.xml
player_trans_ao_parallax.xml
player_trans_norm.xml
player_trans_parallax.xml
player_trans_spec.xml
player_trans_spec_helmet.xml
trans_wind.xml
were removed. You can use Phab:P292 to fix them
IMPORTANT: The reason they were removed is that the more materials the least performance. You should always use empty normal maps and spec maps (2x2 null_white.dds or null_black.dds for spec) and default_norm for normal. You might notice some artifacts on transparent meshes.
r27722
The diplomacy stuff is taken out of the Player component, this leaves a smaller Player.js file and allows easier modding of just diplomacy-related code. One should change the player templates to have
<SharedLosTech/>
<SharedDropsitesTech/>
in a new Diplomacy
node.
r28093
There is a new map generation interface. Which random maps should be converted to. The engine will warn if the old one is used.
The 0 A.D. Maps are converted in r28119. You can look there for examples.
Note: For the library rmgen g_Map
has to stay in global scope. (I went for globalThis
.) That's done in r28117.
r28120
The color
property of columns inside olist objects has been renamed to textcolor
for consistency reasons.
r28145
PushGuiPage
doesn't take a callback anymore but returns a promise.