= How to port your A24 mod to A25 = This lists (most) of the template-changing commits, and how to fix them. === r24953 === In UnitAI, the `NaturalBehaviour` of animals was deprecated in favour of more options for `Stance`s. As a consequense of significant changes in UnitAI for animals (they can behave more like other units now), animals now need vision range to attack and chase. === r24960 === In Garrisonable, a `Size` now needs to be specified. === r24963 === In ResourceSupply, there is now an option for timers, hence `Amount` is changed to `Max` (with a possibility for `Initial`). One can use `find . -type f | xargs sed -i 's/Amount>/Max>/g'` to fix their templates. === r24989 === Treasures now have their rewards in a seperate component. So instead of: {{{ 300 treasure.stone }}} one should now write: {{{ 300 1000 }}} (yes, this means one can reward multiple resources with one treasure). Also the people gathering those treasures don't need a rate in their `ResourceGatherer` component anymore, but they have a seperate component as well :) {{{ 1 }}} {{{ 2 }}} Notice here that `rate` was previously unused for treasures and there is no such entry now. === r25053 === The `elephant_stables` was renamed to `elephant_stable`. Some templates need to be moved around, but e.g. maps and referencing templates can be fixed using: `find . -type f | xargs sed -i 's/elephant_stables/elephant_stable/g'` === r25089 === The functions to mirage are now stored in their respective components, meaning mods that introduce a component (and want it miraged) should add the functions there. Also, mods modifying components need to include the mirage functions there from unmodded 0 A.D.