<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.wesnoth.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Henkutsu</id>
	<title>The Battle for Wesnoth Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.wesnoth.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Henkutsu"/>
	<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/Special:Contributions/Henkutsu"/>
	<updated>2026-07-22T03:29:05Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.31.16</generator>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=UsefulWMLFragments&amp;diff=14756</id>
		<title>UsefulWMLFragments</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=UsefulWMLFragments&amp;diff=14756"/>
		<updated>2007-04-09T14:54:51Z</updated>

		<summary type="html">&lt;p&gt;Henkutsu: /* Useful WML Fragments */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Useful WML Fragments ==&lt;br /&gt;
&lt;br /&gt;
NOTES ABOUT ADDING PAGES: try not to add new pages here. Find a category in which your code fits and add it to that page.&lt;br /&gt;
&lt;br /&gt;
Most of the things found here are macros (see [[PreprocessorRef]]) that must be copied into a scenario file or another file included first by the campaign, and then used in the scenario (or multiplayer map). Remember that a macro cannot be used at a point before it is defined.&lt;br /&gt;
&lt;br /&gt;
For a step by step instruction, look here: [[HowTo: IncludeMacros]] and then here: [[HowTo: UseMacros]]&lt;br /&gt;
&lt;br /&gt;
High level macros often require the lower level macros found in ProgrammingMacros, Utilities, and Scenario Tools.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Logic Structure Macros ===&lt;br /&gt;
*[[ProgrammingMacros]]: Definitions for some low-level macros to make it easier to write program-like WML.&lt;br /&gt;
*[[WML Utilities]]: Macros to assist other macros. Test Value of Variable. If Have Unit. Store Unit Attribute. Filter by Terrain. Iterate. Overlay with Filter. Determine Opposite Coordinates. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Campaign Tools ===&lt;br /&gt;
*[[WML Scenario Tools]]: Macros directly useful in a scenario. Modify unit. Give villages to a side. Return Unit to Recall List. Trap Unit. Change Keep Terrain. Hero die message. Item effect.&lt;br /&gt;
*[[WML Dialog Tools]]: Macros useful for unit dialog/storyboarding. Character Speaker, Blank story section, Delays and Fades.&lt;br /&gt;
*[[Victory Conditions]]: Number of Villages, Amount of Gold. Suitable for multiplayer scenarios.&lt;br /&gt;
&lt;br /&gt;
==== Map Tools ====&lt;br /&gt;
*[[A Shop Like Thing]]: How to add even more RPG elements to your scenarios.&lt;br /&gt;
*[[Rain effect]]: Creating an overlay of rain in a scenario. (old)&lt;br /&gt;
*[[Map Modification WML]] Tools for editing the terrain in creative ways&lt;br /&gt;
&lt;br /&gt;
==== Unit Tools ====&lt;br /&gt;
*[[MoveExistingUnit]]: Move a unit from one place to another, displaying its movement. Move Unit 1. Move Unit 2. Move Unit 3.&lt;br /&gt;
*[[WML Abilities]]: Knockback. Charm. Bloodlust. Abilities cannot currently be incorporated in the unit type definitions themselves, but must be included in the scenario file.&lt;br /&gt;
*[[WML Buildings]]: Generic Buildings, Light House/Dark Tower, Wishing Well #1, Wishing Well #2.&lt;br /&gt;
*[[RandomTraitUnit]]: Create a unit with two random traits. (very simple.) (updated)&lt;br /&gt;
&lt;br /&gt;
==== Item Tools ====&lt;br /&gt;
*[[DroppableItem]]: Macros to drop items. Currently only macros for dropping items on unit death including a permenant item that can be picked up, and dropped, multiple times by different units.&lt;br /&gt;
*[[General Item WML]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Multiplayer Tools ===&lt;br /&gt;
*[[PseudoRandom]]: A replacement for {RANDOM} in multiplayer, where {RANDOM} is buggy.&lt;br /&gt;
*[[General Multiplayer WML]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Advanced WML ===&lt;br /&gt;
*[[Advanced WML]]:  Branch on Village Type. Recruit from a Ship. Point Rotation Scheme.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Templates ===&lt;br /&gt;
*[[WML Templates]]: Generic campaign, scenario and unit templates. (updated)&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category: UsefulWMLFragments]]&lt;/div&gt;</summary>
		<author><name>Henkutsu</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=User:Henkutsu&amp;diff=14755</id>
		<title>User:Henkutsu</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=User:Henkutsu&amp;diff=14755"/>
		<updated>2007-04-09T14:50:20Z</updated>

		<summary type="html">&lt;p&gt;Henkutsu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ok, still need to do more work on [[UsefulWMLFragments]].&lt;br /&gt;
&lt;br /&gt;
Have updated most of the pages but still need to do:&lt;br /&gt;
* Category: UsefulWMLFragments&lt;br /&gt;
* Category: ObseleteWMLFragments&lt;br /&gt;
* [[HowTo: IncludeMacros]]&lt;br /&gt;
* [[HowTo: UseMacros]]&lt;br /&gt;
* Category: HowTo&lt;br /&gt;
&lt;br /&gt;
Already fixed a few of the wrong links in the side bar... hmm. Back to my campaign!&lt;/div&gt;</summary>
		<author><name>Henkutsu</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=User:Henkutsu&amp;diff=14754</id>
		<title>User:Henkutsu</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=User:Henkutsu&amp;diff=14754"/>
		<updated>2007-04-09T14:49:41Z</updated>

		<summary type="html">&lt;p&gt;Henkutsu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ok, still need to do more work on [[UsefulWMLFragments]].&lt;br /&gt;
&lt;br /&gt;
Have updated most of the pages but still need to do:&lt;br /&gt;
*[[Category: UsefulWMLFragments]]&lt;br /&gt;
*[[Category: ObseleteWMLFragments]]&lt;br /&gt;
*[[HowTo: IncludeMacros]]&lt;br /&gt;
*[[HowTo: UseMacros]]&lt;br /&gt;
*[[Category: HowTo]]&lt;br /&gt;
&lt;br /&gt;
Already fixed a few of the wrong links in the side bar... hmm. Back to my campaign!&lt;/div&gt;</summary>
		<author><name>Henkutsu</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=A_Shop_Like_Thing&amp;diff=14748</id>
		<title>A Shop Like Thing</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=A_Shop_Like_Thing&amp;diff=14748"/>
		<updated>2007-04-09T14:27:43Z</updated>

		<summary type="html">&lt;p&gt;Henkutsu: Changed structure of page. Added comments and updated code where I could. Added see also. Kept links but it should all make sense now.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Please note that this code is a bit out of date. All references to &amp;quot;range&amp;quot; should be &amp;quot;melee&amp;quot; or &amp;quot;ranged&amp;quot; now instead of &amp;quot;short&amp;quot; and &amp;quot;long&amp;quot; (Have been fixed now). There may be other parts that are out of date, particularily in regards to adding specials. Check [[ReferenceWML]] on the tags just to check :) Happy coding.&lt;br /&gt;
&lt;br /&gt;
== A Shop Like Thing ==&lt;br /&gt;
&lt;br /&gt;
Just paste this code into your scenario:&lt;br /&gt;
The code inside each [option] tag are different items, their attributes can easily be changed.&lt;br /&gt;
In the first section of code, it defines on what coordinates on the map are the shops located. it also shows which sides can use them. You can take out any item in [options] tags and this code still works., as long as you have the beginning and the end bits.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;side=1,2,3,4&lt;br /&gt;
x=37,34,40,37&lt;br /&gt;
y=1,2,2,4&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 [event]&lt;br /&gt;
 name=moveto &lt;br /&gt;
 first_time_only=no&lt;br /&gt;
 [filter]&lt;br /&gt;
 side=1,2,3,4&lt;br /&gt;
 x=37,34,40,37&lt;br /&gt;
 y=1,2,2,4&lt;br /&gt;
 [/filter]&lt;br /&gt;
 [store_gold]&lt;br /&gt;
 side=$side_number&lt;br /&gt;
 variable=gold&lt;br /&gt;
 [/store_gold]&lt;br /&gt;
 [message]&lt;br /&gt;
 speaker=narrator&lt;br /&gt;
 message=_ &amp;quot;What items would you like to purchase?&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== Melee damage increase ===&lt;br /&gt;
 [option]&lt;br /&gt;
 message=_ &amp;quot;Sharpen Melee Weapon g:140 dmg:2&amp;quot;&lt;br /&gt;
 [command]&lt;br /&gt;
 [if]&lt;br /&gt;
 [variable]&lt;br /&gt;
 name=gold&lt;br /&gt;
 greater_than=140&lt;br /&gt;
 [/variable]&lt;br /&gt;
 [then]&lt;br /&gt;
 [gold]&lt;br /&gt;
 amount=-140&lt;br /&gt;
 side=$side_number&lt;br /&gt;
 [/gold]&lt;br /&gt;
 [object]&lt;br /&gt;
 [effect]&lt;br /&gt;
 apply_to=attack&lt;br /&gt;
 range=melee&lt;br /&gt;
 increase_damage=2&lt;br /&gt;
 [/effect]&lt;br /&gt;
 [/object]&lt;br /&gt;
 [/then]&lt;br /&gt;
 [/if]&lt;br /&gt;
 [/command]&lt;br /&gt;
 [/option]&lt;br /&gt;
&lt;br /&gt;
=== Ranged damage increase ===&lt;br /&gt;
 [option]&lt;br /&gt;
 message=_ &amp;quot;Enchance Ranged Weapon g:150 dmg:2&amp;quot;&lt;br /&gt;
 [command]&lt;br /&gt;
 [if]&lt;br /&gt;
 [variable]&lt;br /&gt;
 name=gold&lt;br /&gt;
 greater_than=150&lt;br /&gt;
 [/variable]&lt;br /&gt;
 [then]&lt;br /&gt;
 [gold]&lt;br /&gt;
 side=$side_number&lt;br /&gt;
 amount=-150&lt;br /&gt;
 [/gold]&lt;br /&gt;
 [object]&lt;br /&gt;
 [effect]&lt;br /&gt;
 apply_to=attack&lt;br /&gt;
 range=ranged&lt;br /&gt;
 increase_damage=2&lt;br /&gt;
 [/effect]&lt;br /&gt;
 [/object]&lt;br /&gt;
 [/then]&lt;br /&gt;
 [/if]&lt;br /&gt;
 [/command]&lt;br /&gt;
 [/option]&lt;br /&gt;
&lt;br /&gt;
=== Extra damage and magical enhancement ===&lt;br /&gt;
(May be partially out of date)&lt;br /&gt;
 [option]&lt;br /&gt;
 message=_ &amp;quot;Crystal Orb g:150 dmg:+2 Magical&amp;quot;&lt;br /&gt;
 [command]&lt;br /&gt;
 [if]&lt;br /&gt;
 [variable]&lt;br /&gt;
 name=gold&lt;br /&gt;
 greater_than=150&lt;br /&gt;
 [/variable]&lt;br /&gt;
 [then]&lt;br /&gt;
 [gold]&lt;br /&gt;
 amount=-150&lt;br /&gt;
 side=$side_number&lt;br /&gt;
 [/gold]&lt;br /&gt;
 [object]&lt;br /&gt;
 [effect]&lt;br /&gt;
 apply_to=attack&lt;br /&gt;
 special=magical&lt;br /&gt;
 increase_damage=2&lt;br /&gt;
 [/effect]&lt;br /&gt;
 [/object]&lt;br /&gt;
 [/then]&lt;br /&gt;
 [/if]&lt;br /&gt;
 [/command]&lt;br /&gt;
 [/option]&lt;br /&gt;
&lt;br /&gt;
=== Increase maximum HP ===&lt;br /&gt;
 [option]&lt;br /&gt;
 message=_ &amp;quot;Toughness Increase Scroll g:250 hp:10&amp;quot;&lt;br /&gt;
 [command]&lt;br /&gt;
 [if]&lt;br /&gt;
 [variable]&lt;br /&gt;
 name=gold&lt;br /&gt;
 greater_than=250&lt;br /&gt;
 [/variable]&lt;br /&gt;
 [then]&lt;br /&gt;
 [gold]&lt;br /&gt;
 amount=-250&lt;br /&gt;
 side=$side_number&lt;br /&gt;
 [/gold]&lt;br /&gt;
 [object]&lt;br /&gt;
 [effect]&lt;br /&gt;
 apply_to=hitpoints&lt;br /&gt;
 increase_total=10&lt;br /&gt;
 [/effect]&lt;br /&gt;
 [/object]&lt;br /&gt;
 [/then]&lt;br /&gt;
 [/if]&lt;br /&gt;
 [/command]&lt;br /&gt;
 [/option]&lt;br /&gt;
&lt;br /&gt;
=== Set Movement to 10 ===&lt;br /&gt;
 [option]&lt;br /&gt;
 message=_ &amp;quot;Flying Boots g:400 m:to 10&amp;quot;&lt;br /&gt;
 [command]&lt;br /&gt;
 [if]&lt;br /&gt;
 [variable]&lt;br /&gt;
 name=gold&lt;br /&gt;
 greater_than=400&lt;br /&gt;
 [/variable]&lt;br /&gt;
 [then]&lt;br /&gt;
 [gold]&lt;br /&gt;
 amount=-400&lt;br /&gt;
 side=$side_number&lt;br /&gt;
 [/gold]&lt;br /&gt;
 [object] &lt;br /&gt;
 [effect] &lt;br /&gt;
 apply_to=movement&lt;br /&gt;
 set=10&lt;br /&gt;
 [/effect]&lt;br /&gt;
 [/object]&lt;br /&gt;
 [/then]&lt;br /&gt;
 [/if]&lt;br /&gt;
 [/command]&lt;br /&gt;
 [/option]&lt;br /&gt;
&lt;br /&gt;
=== Add Extra Movement ===&lt;br /&gt;
 [option] &lt;br /&gt;
 message=_ &amp;quot;Boot Upgrade g:400 m:+1&amp;quot;&lt;br /&gt;
 [command]&lt;br /&gt;
 [if]&lt;br /&gt;
 [variable]&lt;br /&gt;
 name=gold&lt;br /&gt;
 greater_than=400&lt;br /&gt;
 [/variable]&lt;br /&gt;
 [then]&lt;br /&gt;
 [gold]&lt;br /&gt;
 amount=-400&lt;br /&gt;
 side=1&lt;br /&gt;
 [/gold]&lt;br /&gt;
 [object]&lt;br /&gt;
 [effect]&lt;br /&gt;
 apply_to=movement&lt;br /&gt;
 increase=1&lt;br /&gt;
 [/effect]&lt;br /&gt;
 [/object]&lt;br /&gt;
 [/then]&lt;br /&gt;
 [/if]&lt;br /&gt;
 [/command]&lt;br /&gt;
 [/option] &lt;br /&gt;
&lt;br /&gt;
=== Heal damage ===&lt;br /&gt;
(May be partially out of date)&lt;br /&gt;
 [option]&lt;br /&gt;
 message=_ &amp;quot;Healing Fountain g:All hp:+50&amp;quot;&lt;br /&gt;
 [command]&lt;br /&gt;
 [if]&lt;br /&gt;
 [variable]&lt;br /&gt;
 name=gold&lt;br /&gt;
 greater_than=0&lt;br /&gt;
 [/variable]&lt;br /&gt;
 [then]&lt;br /&gt;
 [gold]&lt;br /&gt;
 amount=0&lt;br /&gt;
 side=$side_number&lt;br /&gt;
 [/gold]&lt;br /&gt;
 [object]&lt;br /&gt;
 [effect]&lt;br /&gt;
 apply_to=hitpoints&lt;br /&gt;
 increase=50&lt;br /&gt;
 violate_max=1&lt;br /&gt;
 [/effect]&lt;br /&gt;
 [/object]&lt;br /&gt;
 [/then]&lt;br /&gt;
 [/if]&lt;br /&gt;
 [/command]&lt;br /&gt;
 [/option]&lt;br /&gt;
&lt;br /&gt;
=== Extra Melee attack ===&lt;br /&gt;
 [option]&lt;br /&gt;
 message=_ &amp;quot;Rage Stone g:300 atks:+1 Melee&amp;quot;&lt;br /&gt;
 [command]&lt;br /&gt;
 [if]&lt;br /&gt;
 [variable]&lt;br /&gt;
 name=gold&lt;br /&gt;
 greater_than=300&lt;br /&gt;
 [/variable]&lt;br /&gt;
 [then]&lt;br /&gt;
 [gold]&lt;br /&gt;
 amount=-300&lt;br /&gt;
 side=$side_number&lt;br /&gt;
 [/gold]&lt;br /&gt;
 [object]&lt;br /&gt;
 [effect]&lt;br /&gt;
 apply_to=attack&lt;br /&gt;
 range=melee&lt;br /&gt;
 increase_attacks=1&lt;br /&gt;
 [/effect]&lt;br /&gt;
 [/object]&lt;br /&gt;
 [/then]&lt;br /&gt;
 [/if]&lt;br /&gt;
 [/command]&lt;br /&gt;
 [/option]&lt;br /&gt;
&lt;br /&gt;
=== Extra ranged attack ===&lt;br /&gt;
 [option] &lt;br /&gt;
 message=_ &amp;quot;Sight Stone g:350 atks:+1 ranged&amp;quot;&lt;br /&gt;
 [command]&lt;br /&gt;
 [if]&lt;br /&gt;
 [variable]&lt;br /&gt;
 name=gold&lt;br /&gt;
 greater_than=350&lt;br /&gt;
 [/variable]&lt;br /&gt;
 [then]&lt;br /&gt;
 [gold]&lt;br /&gt;
 amount=-350&lt;br /&gt;
 side=$side_number&lt;br /&gt;
 [/gold]&lt;br /&gt;
 [object]&lt;br /&gt;
 [effect]&lt;br /&gt;
 apply_to=attack&lt;br /&gt;
 range=ranged&lt;br /&gt;
 increase_attacks=1&lt;br /&gt;
 [/effect]&lt;br /&gt;
 [/object]&lt;br /&gt;
 [/then]&lt;br /&gt;
 [/if]&lt;br /&gt;
 [/command]&lt;br /&gt;
 [/option]&lt;br /&gt;
&lt;br /&gt;
=== Add a weapon ===&lt;br /&gt;
(May be partially out of date)&lt;br /&gt;
 [option]&lt;br /&gt;
 message=_ &amp;quot;Fire Scepter g:350 atks:8-1 ranged magical fire&amp;quot;&lt;br /&gt;
 [command] &lt;br /&gt;
 [if]  &lt;br /&gt;
 [variable]&lt;br /&gt;
 name=gold&lt;br /&gt;
 greater_than=350&lt;br /&gt;
 [/variable]&lt;br /&gt;
 [then]&lt;br /&gt;
 [gold]&lt;br /&gt;
 amount=-350&lt;br /&gt;
 side=$side_number&lt;br /&gt;
 [/gold]&lt;br /&gt;
 [object]&lt;br /&gt;
 [effect]&lt;br /&gt;
 apply_to=new_attack&lt;br /&gt;
 name=Fire Scepter&lt;br /&gt;
 type=fire&lt;br /&gt;
 special=magical&lt;br /&gt;
 range=ranged&lt;br /&gt;
 damage=8&lt;br /&gt;
 number=1&lt;br /&gt;
 [/effect]&lt;br /&gt;
 [/object]&lt;br /&gt;
 [/then]&lt;br /&gt;
 [/if]&lt;br /&gt;
 [/command]&lt;br /&gt;
 [/option]&lt;br /&gt;
&lt;br /&gt;
=== Add a weapon ===&lt;br /&gt;
(May be partially out of date)&lt;br /&gt;
 [option]&lt;br /&gt;
 message=_ &amp;quot;Ice Scepter g:350 atks:8-1 ranged magical Ice&amp;quot;&lt;br /&gt;
 [command]&lt;br /&gt;
 [if]&lt;br /&gt;
 [variable]&lt;br /&gt;
 name=gold&lt;br /&gt;
 greater_than=350&lt;br /&gt;
 [/variable]&lt;br /&gt;
 [then] &lt;br /&gt;
 [gold]&lt;br /&gt;
 amount=-350&lt;br /&gt;
 side=$side_number&lt;br /&gt;
 [/gold]&lt;br /&gt;
 [object]&lt;br /&gt;
 [effect]&lt;br /&gt;
 apply_to=new_attack&lt;br /&gt;
 name=Ice Scepter&lt;br /&gt;
 type=cold&lt;br /&gt;
 special=magical&lt;br /&gt;
 range=long&lt;br /&gt;
 damage=8&lt;br /&gt;
  number=1&lt;br /&gt;
 [/effect] &lt;br /&gt;
 [/object]  [/then]&lt;br /&gt;
 [/if]  &lt;br /&gt;
 [/command]&lt;br /&gt;
 [/option]&lt;br /&gt;
 ##########################closing tags&lt;br /&gt;
 [/message]&lt;br /&gt;
 [/event]&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
* [[UsefulWMLFragments]]&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
[[Category: UsefulWMLFragments]]&lt;/div&gt;</summary>
		<author><name>Henkutsu</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=UsefulWMLFragments&amp;diff=14746</id>
		<title>UsefulWMLFragments</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=UsefulWMLFragments&amp;diff=14746"/>
		<updated>2007-04-09T14:14:12Z</updated>

		<summary type="html">&lt;p&gt;Henkutsu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Useful WML Fragments ==&lt;br /&gt;
&lt;br /&gt;
NOTES ABOUT ADDING PAGES: Don't add new pages here. Find a category in which your code fits and add it to that page.&lt;br /&gt;
&lt;br /&gt;
Most of the things found here are macros (see [[PreprocessorRef]]) that must be copied into a scenario file or another file included first by the campaign, and then used in the scenario (or multiplayer map). Remember that a macro cannot be used at a point before it is defined.&lt;br /&gt;
&lt;br /&gt;
For a step by step instruction, look here: [[HowTo: IncludeMacros]] and then here: [[HowTo: UseMacros]]&lt;br /&gt;
&lt;br /&gt;
High level macros often require the lower level macros found in ProgrammingMacros, Utilities, and Scenario Tools.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Logic Structure Macros ===&lt;br /&gt;
*[[ProgrammingMacros]]: Definitions for some low-level macros to make it easier to write program-like WML.&lt;br /&gt;
*[[WML Utilities]]: Macros to assist other macros. Test Value of Variable. If Have Unit. Store Unit Attribute. Filter by Terrain. Iterate. Overlay with Filter. Determine Opposite Coordinates. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Campaign Tools ===&lt;br /&gt;
*[[WML Scenario Tools]]: Macros directly useful in a scenario. Modify unit. Give villages to a side. Return Unit to Recall List. Trap Unit. Change Keep Terrain. Hero die message. Item effect.&lt;br /&gt;
*[[WML Dialog Tools]]: Macros useful for unit dialog/storyboarding. Character Speaker, Blank story section, Delays and Fades.&lt;br /&gt;
*[[Victory Conditions]]: Number of Villages, Amount of Gold. Suitable for multiplayer scenarios.&lt;br /&gt;
&lt;br /&gt;
==== Map Tools ====&lt;br /&gt;
*[[A Shop Like Thing]]: How to add even more RPG elements to your scenarios.&lt;br /&gt;
*[[Rain effect]]: Creating an overlay of rain in a scenario.&lt;br /&gt;
&lt;br /&gt;
==== Unit Tools ====&lt;br /&gt;
*[[MoveExistingUnit]]: Move a unit from one place to another, displaying its movement. Move Unit 1. Move Unit 2. Move Unit 3.&lt;br /&gt;
*[[WML Abilities]]: Knockback. Charm. Bloodlust. Abilities cannot currently be incorporated in the unit type definitions themselves, but must be included in the scenario file.&lt;br /&gt;
*[[WML Buildings]]: Generic Buildings, Light House/Dark Tower, Wishing Well #1, Wishing Well #2.&lt;br /&gt;
*[[RandomTraitUnit]]: Create a unit with two random traits. (very simple.) (updated)&lt;br /&gt;
&lt;br /&gt;
==== Item Tools ====&lt;br /&gt;
*[[DroppableItem]]: Macros to drop items. Currently only macros for dropping items on unit death including a permenant item that can be picked up, and dropped, multiple times by different units.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Multiplayer Tools ===&lt;br /&gt;
*[[PseudoRandom]]: A replacement for {RANDOM} in multiplayer, where {RANDOM} is buggy.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Advanced WML ===&lt;br /&gt;
*[[Advanced WML]]:  Branch on Village Type. Recruit from a Ship. Point Rotation Scheme.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Templates ===&lt;br /&gt;
*[[WML Templates]]: Generic campaign, scenario and unit templates. (updated)&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category: UsefulWMLFragments]]&lt;/div&gt;</summary>
		<author><name>Henkutsu</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DroppableItem&amp;diff=14745</id>
		<title>DroppableItem</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DroppableItem&amp;diff=14745"/>
		<updated>2007-04-09T14:12:23Z</updated>

		<summary type="html">&lt;p&gt;Henkutsu: MAJOR CHANGE! Changed structure of page completely. Added comments and instructions to help newbies. Added sections. Kept links but it should all make sense now.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is for code fragments for dropping items.&lt;br /&gt;
&lt;br /&gt;
== Droppable on Death ==&lt;br /&gt;
&lt;br /&gt;
This section is for macros that drop an item due to the death of unit.&lt;br /&gt;
&lt;br /&gt;
=== Dropping a picked up item ===&lt;br /&gt;
&lt;br /&gt;
This macro comes in two parts with space for [effect] code between them. Using this macro creates an item at a point on the map specified by X and Y, keeps track of it (when the unit carrying it dies) via two variable (which the user names!!) and provides an image for the map.&lt;br /&gt;
&lt;br /&gt;
Note that if you want any unit to be able to pick up the item you can ignore the ADDITIONAL_FILTERS part.&lt;br /&gt;
==== Part One ====&lt;br /&gt;
 #define DROPPABLE_ITEM X Y XVAR YVAR NAME IMAGE ADDITIONAL_FILTERS&lt;br /&gt;
 [label]&lt;br /&gt;
 x={X}&lt;br /&gt;
 y={Y}&lt;br /&gt;
 text=&amp;quot;{NAME}&amp;quot;&lt;br /&gt;
 [/label]&lt;br /&gt;
 [event]&lt;br /&gt;
 name=prestart&lt;br /&gt;
 	{VARIABLE {XVAR} {X}}&lt;br /&gt;
 	{VARIABLE {YVAR} {Y}}&lt;br /&gt;
 &lt;br /&gt;
 	[item]&lt;br /&gt;
 	x=${XVAR}&lt;br /&gt;
 	y=${YVAR}&lt;br /&gt;
 	image={IMAGE}&lt;br /&gt;
 	[/item]&lt;br /&gt;
 		&lt;br /&gt;
 	[event]&lt;br /&gt;
 	name=die&lt;br /&gt;
 	first_time_only=no&lt;br /&gt;
 	[store_unit]&lt;br /&gt;
 	[filter]&lt;br /&gt;
 	x=$x1&lt;br /&gt;
 	y=$y1&lt;br /&gt;
 	[/filter]&lt;br /&gt;
 	variable=itemstore&lt;br /&gt;
 	[/store_unit]&lt;br /&gt;
 	[if]&lt;br /&gt;
 	[variable]&lt;br /&gt;
 	name=itemstore.variables.{XVAR}&lt;br /&gt;
 	equals=on&lt;br /&gt;
 	[/variable]&lt;br /&gt;
 		[then]&lt;br /&gt;
 		{VARIABLE_OP {XVAR} to_variable x1}&lt;br /&gt;
 		{VARIABLE_OP {YVAR} to_variable y1}&lt;br /&gt;
 		[item]&lt;br /&gt;
 		x=$x1&lt;br /&gt;
 		y=$y1&lt;br /&gt;
 		image={IMAGE}&lt;br /&gt;
 		[/item]&lt;br /&gt;
 		[/then]&lt;br /&gt;
 	[/if]&lt;br /&gt;
 	[/event]&lt;br /&gt;
 &lt;br /&gt;
 	[event]&lt;br /&gt;
 	name=moveto&lt;br /&gt;
 	first_time_only=no&lt;br /&gt;
 		[filter]&lt;br /&gt;
 		x=${XVAR}&lt;br /&gt;
 		y=${YVAR}&lt;br /&gt;
 		{ADDITIONAL_FILTERS}&lt;br /&gt;
 		[/filter]&lt;br /&gt;
 		&lt;br /&gt;
 		[removeitem]&lt;br /&gt;
 		x=${XVAR}&lt;br /&gt;
 		y=${YVAR}&lt;br /&gt;
 		[/removeitem]&lt;br /&gt;
 		[store_unit]&lt;br /&gt;
 		variable=itemstore&lt;br /&gt;
 		[filter]&lt;br /&gt;
 		x=${XVAR}&lt;br /&gt;
 		y=${YVAR}&lt;br /&gt;
 		[/filter]&lt;br /&gt;
 		[/store_unit]&lt;br /&gt;
 		{VARIABLE itemstore.variables.{XVAR} on}&lt;br /&gt;
 		[unstore_unit]&lt;br /&gt;
 		variable=itemstore&lt;br /&gt;
 		[/unstore_unit]&lt;br /&gt;
 		&lt;br /&gt;
 		[unit_overlay]&lt;br /&gt;
 		x=${XVAR}&lt;br /&gt;
 		y=${YVAR}&lt;br /&gt;
 		image={IMAGE}&lt;br /&gt;
 		[/unit_overlay]&lt;br /&gt;
 		&lt;br /&gt;
 		[object]&lt;br /&gt;
 		name={NAME}&lt;br /&gt;
 		image={IMAGE}&lt;br /&gt;
 		duration=forever&lt;br /&gt;
 		cannot_use_message=&amp;quot;-cannot use message-&amp;quot;&lt;br /&gt;
 			[filter]&lt;br /&gt;
 			x=${XVAR}&lt;br /&gt;
 			y=${YVAR}&lt;br /&gt;
 			[/filter]&lt;br /&gt;
 #enddef&lt;br /&gt;
&lt;br /&gt;
==== Effect goes here ====&lt;br /&gt;
&lt;br /&gt;
Of course the code for the macro above will do nothing without an [effect] attatched to the item (via the [object] tag in the above macro) other than cart an image around. To add an effect, make an [effect] tag as below (or look at [[EffectWML]]:&lt;br /&gt;
 	&lt;br /&gt;
 #All this should be between the usage of the DROPPABLE_ITEM macro and its /DROPPABLE_ITEM&lt;br /&gt;
 #		&lt;br /&gt;
 # This is not the only thing you can do but for an item that increases movementspeed by 10(!) do:&lt;br /&gt;
 [effect]&lt;br /&gt;
     apply_to=movement&lt;br /&gt;
     increase=10&lt;br /&gt;
 [/effect]&lt;br /&gt;
 &lt;br /&gt;
==== Part 2 ====&lt;br /&gt;
Once you have done all of the above, call the closing macro to close all the tags and clear the variables.&lt;br /&gt;
&lt;br /&gt;
 #define /DROPPABLE_ITEM XVAR YVAR&lt;br /&gt;
 		[/object]&lt;br /&gt;
 		&lt;br /&gt;
 	{VARIABLE {XVAR} 0}&lt;br /&gt;
 	{VARIABLE {YVAR} 0}&lt;br /&gt;
 	[/event]&lt;br /&gt;
 [/event]&lt;br /&gt;
 #enddef&lt;br /&gt;
&lt;br /&gt;
=== Dropping Loot ===&lt;br /&gt;
This macro makes it so that when a unit matching a filter dies, it will drop an item (eg gold!)&lt;br /&gt;
 &lt;br /&gt;
 #Re writing... come back later.&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
* [[UsefulWMLFragments]]&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
[[Category: UsefulWMLFragments]]&lt;/div&gt;</summary>
		<author><name>Henkutsu</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=Template:WML_Tags&amp;diff=14744</id>
		<title>Template:WML Tags</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=Template:WML_Tags&amp;diff=14744"/>
		<updated>2007-04-09T14:06:42Z</updated>

		<summary type="html">&lt;p&gt;Henkutsu: changed effect to link to EffectWML instead of UnitWML&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;gallery&amp;quot; style=&amp;quot;width:175px;float: right;border: 1px solid #B48648; color:#B48648; font-size: 7pt;margin-left;10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;span style=&amp;quot;float: right;&amp;quot;&amp;gt;&amp;lt;small class=&amp;quot;editlink noprint plainlinksneverexpand&amp;quot;&amp;gt;[{{SERVER}}{{localurl:Template:WML Tags|action=edit}} edit ]&amp;lt;/small&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
'''WML Tags'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|''A:'' &lt;br /&gt;
[[AbilitiesWMLTechnical1.1.3|abilities]],&lt;br /&gt;
[[CampaignWML#The_.5Babout.5D_tag|about]],&lt;br /&gt;
[[UnitWML|advancefrom]],&lt;br /&gt;
[[UnitWML|advancement]],&lt;br /&gt;
[[StatisticalScenarioWML|advances]],&lt;br /&gt;
[[AiWML|ai]],&lt;br /&gt;
[[DirectActionsWML|allow_recruit]],&lt;br /&gt;
[[VariablesWML|array]],&lt;br /&gt;
[[AttackWML|attack]],&lt;br /&gt;
[[StatisticalScenarioWML|attacks]],&lt;br /&gt;
[[AiWML|avoid]];&lt;br /&gt;
|-&lt;br /&gt;
|''B:'' &lt;br /&gt;
[[CampaignWML#The_.5Bbinary_path.5D_tag|binary_path]],[[HelpWML|bold]];&lt;br /&gt;
|-&lt;br /&gt;
|''C:'' &lt;br /&gt;
[[CampaignWML#The_.5Bcampaign.5D_tag|campaign]], [[DirectActionsWML|capture_village]], [[ReplayWML|choose]],&lt;br /&gt;
[[InternalActionsWML|clear_variable]],&lt;br /&gt;
[[InterfaceActionsWML|colour_adjust]],&lt;br /&gt;
[[ReplayWML|command]];&lt;br /&gt;
|-&lt;br /&gt;
|''D:'' &lt;br /&gt;
[[StatisticalScenarioWML|deaths]],[[UnitWML|defend]],[[StatisticalScenarioWML|defends]],&lt;br /&gt;
[[UnitWML|defense]],&lt;br /&gt;
[[InterfaceActionsWML|delay]],&lt;br /&gt;
[[ReplayWML|destination]],&lt;br /&gt;
[[DirectActionsWML|disallow_recruit]],&lt;br /&gt;
[[InternalActionsWML|do]];&lt;br /&gt;
|-&lt;br /&gt;
|''E:'' &lt;br /&gt;
[[EffectWML|effect]],[[InternalActionsWML|else]],[[ReplayWML|end_turn]],&lt;br /&gt;
[[DirectActionsWML|endlevel]],&lt;br /&gt;
[[EraWML|era]],&lt;br /&gt;
[[EventWML|event]],&lt;br /&gt;
[[ThemeWML|expenses]];&lt;br /&gt;
|-&lt;br /&gt;
|''F:'' &lt;br /&gt;
[[FilterWML|filter]], [[FilterWML|filter_second]], [[HelpWML|format]], [[AttackWML|frame]];&lt;br /&gt;
|-&lt;br /&gt;
|''G:'' &lt;br /&gt;
[[GameConfigWML|game_config]], [[ScenarioWML|generator]], [[DirectActionsWML|gold]], [[ThemeWML|gold]];&lt;br /&gt;
|-&lt;br /&gt;
|''H:'' &lt;br /&gt;
[[InternalActionsWML|have_unit]], [[HelpWML|header]], [[InterfaceActionsWML|hide_unit]];&lt;br /&gt;
|-&lt;br /&gt;
|''I:'' &lt;br /&gt;
[[InternalActionsWML|if]], [[TimeWML|illuminated_time]], [[TerrainGraphicsWML|image]],&lt;br /&gt;
[[HelpWML|img]], [[ThemeWML|income]], [[HelpWML|italic]], [[InterfaceActionsWML|item]];&lt;br /&gt;
|-&lt;br /&gt;
|''J:''&lt;br /&gt;
[[HelpWML|jump]];&lt;br /&gt;
|-&lt;br /&gt;
|''K:'' &lt;br /&gt;
[[DirectActionsWML|kill]], [[StatisticalScenarioWML|killed]];&lt;br /&gt;
|-&lt;br /&gt;
|''L:'' &lt;br /&gt;
[[LabelWML|label]] ([[InterfaceActionsWML|map]], [[ThemeWML|theme]]), [[LanguageWML|language]], [[AiWML|leader_goal]];&lt;br /&gt;
|-&lt;br /&gt;
|''M:'' &lt;br /&gt;
[[ThemeWML|main_map]],[[ThemeWML|menu]], [[InterfaceActionsWML|message]], [[ThemeWML|mini_map]],&lt;br /&gt;
[[AttackWML|missile_frame]], [[SingleUnitWML|modifications]], [[DirectActionsWML|modify_side]],&lt;br /&gt;
[[DirectActionsWML|modify_turns]], [[ReplayWML|move]], [[InterfaceActionsWML|move_unit_fake]], [[UnitWML|movement costs]],&lt;br /&gt;
[[UnitsWML|movetype]], [[ScenarioWML|multiplayer]], [[EraWML|multiplayer_side]], [[InterfaceActionsWML|music]];&lt;br /&gt;
|-&lt;br /&gt;
|''N:'' &lt;br /&gt;
[[FilterWML|not]], [[ThemeWML|num_units]];&lt;br /&gt;
|-&lt;br /&gt;
|''O:'' &lt;br /&gt;
[[DirectActionsWML|object]], [[InterfaceActionsWML|objectives]], [[InterfaceActionsWML|objective]],&lt;br /&gt;
[[ThemeWML|observers]], [[InterfaceActionsWML|option]], [[InternalActionsWML|or]];&lt;br /&gt;
|-&lt;br /&gt;
|''P:'' &lt;br /&gt;
[[ThemeWML|panel]], [[IntroWML|part]], [[DirectActionsWML|place_shroud]], [[ThemeWML|position]],&lt;br /&gt;
[[InterfaceActionsWML|print]], [[AiWML|protect_location]], [[AiWML|protect_unit]];&lt;br /&gt;
|-&lt;br /&gt;
|''R:'' &lt;br /&gt;
[[UnitsWML|race]], [[ReplayWML|random]], [[ReplayWML|recall]], [[StatisticalScenarioWML|recalls]],&lt;br /&gt;
[[ReplayWML|recruit]], [[StatisticalScenarioWML|recruits]], [[InterfaceActionsWML|redraw]],&lt;br /&gt;
[[HelpWML|ref]], [[DirectActionsWML|remove_shroud]], [[InterfaceActionsWML|remove_unit_overlay]],&lt;br /&gt;
[[InterfaceActionsWML|removeitem]], [[SavefileWML|replay]], [[SavefileWML|replay_start]],&lt;br /&gt;
[[UnitWML|resistance]], [[ThemeWML|resolution]], [[ReplayWML|results]], [[InternalActionsWML|role]];&lt;br /&gt;
|-&lt;br /&gt;
|''S:'' &lt;br /&gt;
[[SavefileWML|save]], [[ScenarioWML|scenario]],&lt;br /&gt;
[[InterfaceActionsWML|scroll]], [[InterfaceActionsWML|scroll_to]],&lt;br /&gt;
[[InterfaceActionsWML|scroll_to_unit]], [[HelpWML|section]],&lt;br /&gt;
[[InterfaceActionsWML#.5Bset_menu_item.5D_.28SVN_trunk_only.29|set_menu_item]], [[DirectActionsWML|set_recruit]],&lt;br /&gt;
[[InternalActionsWML|set_variable]], [[SideWML|side]], [[ThemeWML|side_playing]], [[SavefileWML|snapshot]],&lt;br /&gt;
[[InterfaceActionsWML|sound]], [[ReplayWML|source]], [[AbilitiesWMLTechnical1.1.3|specials]]&lt;br /&gt;
[[StatisticalScenarioWML#The_.5Bstatistics.5D_tag|statistics]],&lt;br /&gt;
[[ThemeWML|status]], [[DirectActionsWML|stone]], [[InternalActionsWML|store_gold]], [[InternalActionsWML|store_locations]],&lt;br /&gt;
[[InternalActionsWML|store_starting_location]], [[InternalActionsWML|store_unit]], [[IntroWML|story]];&lt;br /&gt;
|-&lt;br /&gt;
|''T:'' &lt;br /&gt;
[[AiWML|target]],&lt;br /&gt;
[[StatisticalScenarioWML#The_.5Bteam.5D_tag|team]],&lt;br /&gt;
[[DirectActionsWML|teleport]], [[UnitWML|teleport_anim]],&lt;br /&gt;
[[TerrainWML|terrain]], [[DirectActionsWML|terrain]], [[TerrainGraphicsWML|terrain_graphics]], [[ScenarioWML#Test_scenario|test]],&lt;br /&gt;
[[CampaignWML#The_.5Btextdomain.5D_tag|textdomain]], [[ThemeWML|theme]], [[InternalActionsWML|then]],&lt;br /&gt;
[[TerrainGraphicsWML|tile]], [[TimeWML|time]], [[ScenarioWML|time_area]], [[ThemeWML|time_of_day]],&lt;br /&gt;
[[HelpWML|topic]], [[HelpWML|toplevel]], [[SingleUnitWML|trait]], [[ThemeWML|turn]], [[ScenarioWML|tutorial]];&lt;br /&gt;
|-&lt;br /&gt;
|''U:'' &lt;br /&gt;
[[InterfaceActionsWML|unhide_unit]], unit&amp;amp;nbsp;([[UnitWML|define]], [[SingleUnitWML|create]]),&lt;br /&gt;
[[ThemeWML|unit_abilities]], [[ThemeWML|unit_alignment]], [[ThemeWML|unit_description]],&lt;br /&gt;
[[ThemeWML|unit_hp]], [[ThemeWML|unit_image]], [[ThemeWML|unit_level]], [[ThemeWML|unit_moves]],&lt;br /&gt;
[[InterfaceActionsWML|unit_overlay]], [[ThemeWML|unit_profile]], [[ThemeWML|unit_status]],&lt;br /&gt;
[[ThemeWML|unit_traits]], [[ThemeWML|unit_type]], [[ThemeWML|unit_weapons]], [[ThemeWML|unit_xp]],&lt;br /&gt;
[[UnitsWML|units]], [[DirectActionsWML|unstone]], [[DirectActionsWML|unstore_unit]], [[ThemeWML|upkeep]];&lt;br /&gt;
|-&lt;br /&gt;
| ''V:'' &lt;br /&gt;
[[InternalActionsWML|variable]], [[VariablesWML|variables]], [[SideWML|village]], [[ThemeWML|villages]];&lt;br /&gt;
|-&lt;br /&gt;
| ''W:'' &lt;br /&gt;
[[InternalActionsWML|while]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Henkutsu</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=UsefulWMLFragments&amp;diff=14743</id>
		<title>UsefulWMLFragments</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=UsefulWMLFragments&amp;diff=14743"/>
		<updated>2007-04-09T13:40:18Z</updated>

		<summary type="html">&lt;p&gt;Henkutsu: MAJOR CHANGE! Changed structure of page completely. Kept links but it should all make sense now.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Useful WML Fragments ==&lt;br /&gt;
&lt;br /&gt;
NOTES ABOUT ADDING PAGES: Don't add new pages here. Find a category in which your code fits and add it to that page.&lt;br /&gt;
&lt;br /&gt;
Most of the things found here are macros (see [[PreprocessorRef]]) that must be copied into a scenario file or another file included first by the campaign, and then used in the scenario (or multiplayer map). Remember that a macro cannot be used at a point before it is defined.&lt;br /&gt;
&lt;br /&gt;
For a step by step instruction, look here: [[HowTo: IncludeMacros]] and then here: [[HowTo: UseMacros]]&lt;br /&gt;
&lt;br /&gt;
High level macros often require the lower level macros found in ProgrammingMacros, Utilities, and Scenario Tools.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Logic Structure Macros ===&lt;br /&gt;
*[[ProgrammingMacros]]: Definitions for some low-level macros to make it easier to write program-like WML.&lt;br /&gt;
*[[WML Utilities]]: Macros to assist other macros. Test Value of Variable. If Have Unit. Store Unit Attribute. Filter by Terrain. Iterate. Overlay with Filter. Determine Opposite Coordinates. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Campaign Tools ===&lt;br /&gt;
*[[WML Scenario Tools]]: Macros directly useful in a scenario. Modify unit. Give villages to a side. Return Unit to Recall List. Trap Unit. Change Keep Terrain. Hero die message. Item effect.&lt;br /&gt;
*[[WML Dialog Tools]]: Macros useful for unit dialog/storyboarding. Character Speaker, Blank story section, Delays and Fades.&lt;br /&gt;
*[[Victory Conditions]]: Number of Villages, Amount of Gold. Suitable for multiplayer scenarios.&lt;br /&gt;
&lt;br /&gt;
==== Map Tools ====&lt;br /&gt;
*[[A Shop Like Thing]]: How to add even more RPG elements to your scenarios.&lt;br /&gt;
*[[Rain effect]]: Creating an overlay of rain in a scenario.&lt;br /&gt;
&lt;br /&gt;
==== Unit Tools ====&lt;br /&gt;
*[[MoveExistingUnit]]: Move a unit from one place to another, displaying its movement. Move Unit 1. Move Unit 2. Move Unit 3.&lt;br /&gt;
*[[WML Abilities]]: Knockback. Charm. Bloodlust. Abilities cannot currently be incorporated in the unit type definitions themselves, but must be included in the scenario file.&lt;br /&gt;
*[[WML Buildings]]: Generic Buildings, Light House/Dark Tower, Wishing Well #1, Wishing Well #2.&lt;br /&gt;
*[[RandomTraitUnit]]: Create a unit with two random traits. (very simple.) (updated)&lt;br /&gt;
&lt;br /&gt;
==== Item Tools ====&lt;br /&gt;
*[[DroppableItem]]: Generic item that a unit can carry, and is left on the ground when the unit dies.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Multiplayer Tools ===&lt;br /&gt;
*[[PseudoRandom]]: A replacement for {RANDOM} in multiplayer, where {RANDOM} is buggy.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Advanced WML ===&lt;br /&gt;
*[[Advanced WML]]:  Branch on Village Type. Recruit from a Ship. Point Rotation Scheme.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Templates ===&lt;br /&gt;
*[[WML Templates]]: Generic campaign, scenario and unit templates. (updated)&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category: UsefulWMLFragments]]&lt;/div&gt;</summary>
		<author><name>Henkutsu</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=UsefulWMLFragments&amp;diff=14742</id>
		<title>UsefulWMLFragments</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=UsefulWMLFragments&amp;diff=14742"/>
		<updated>2007-04-09T13:21:40Z</updated>

		<summary type="html">&lt;p&gt;Henkutsu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Useful WML Fragments ==&lt;br /&gt;
&lt;br /&gt;
Most of the things found here are macros (see [[PreprocessorRef]]) that must be copied into a scenario file or another file included first by the campaign, and then used in the scenario (or multiplayer map). Remember that a macro cannot be used at a point before it is defined.&lt;br /&gt;
&lt;br /&gt;
High level macros often require the lower level macros found in ProgrammingMacros, Utilities, and Scenario Tools.&lt;br /&gt;
&lt;br /&gt;
[[WML Templates]]: Generic campaign, scenario and unit templates.&lt;br /&gt;
&lt;br /&gt;
[[ProgrammingMacros]]: Definitions for some low-level macros to make it easier to write program-like WML.&lt;br /&gt;
&lt;br /&gt;
[[WML Utilities]]: Macros to assist other macros. Test Value of Variable. If Have Unit. Store Unit Attribute. Filter by Terrain. Iterate. Overlay with Filter. Determine Opposite Coordinates.&lt;br /&gt;
&lt;br /&gt;
[[WML Scenario Tools]]: Macros directly useful in a scenario. Modify unit. Give villages to a side. Return Unit to Recall List. Trap Unit. Change Keep Terrain. Hero die message. Item effect.&lt;br /&gt;
&lt;br /&gt;
[[WML Dialog Tools]]: Macros useful for unit dialog/storyboarding. Character Speaker, Blank story section, Delays and Fades.&lt;br /&gt;
&lt;br /&gt;
[[MoveExistingUnit]]: Move a unit from one place to another, displaying its movement. Move Unit 1. Move Unit 2. Move Unit 3.&lt;br /&gt;
&lt;br /&gt;
[[Victory Conditions]]: Number of Villages, Amount of Gold. Suitable for multiplayer scenarios.&lt;br /&gt;
&lt;br /&gt;
[[WML Abilities]]: Knockback. Charm. Bloodlust. Abilities cannot currently be incorporated in the unit type definitions themselves, but must be included in the scenario file.&lt;br /&gt;
&lt;br /&gt;
[[WML Buildings]]: Generic Buildings, Light House/Dark Tower, Wishing Well #1, Wishing Well #2.&lt;br /&gt;
&lt;br /&gt;
[[RandomTraitUnit]]: Create a unit with two random traits. (very simple.)&lt;br /&gt;
&lt;br /&gt;
[[DroppableItem]]: Generic item that a unit can carry, and is left on the ground when the unit dies.&lt;br /&gt;
&lt;br /&gt;
[[A Shop Like Thing]]: How to add even more RPG elements to your scenarios.&lt;br /&gt;
&lt;br /&gt;
[[PseudoRandom]]: A replacement for {RANDOM} in multiplayer, where {RANDOM} is buggy.&lt;br /&gt;
&lt;br /&gt;
[[Rain effect]]: Creating an overlay of rain in a scenario.&lt;br /&gt;
&lt;br /&gt;
[[Advanced WML]]:  Branch on Village Type. Recruit from a Ship. Point Rotation Scheme.&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category: UsefulWMLFragments]]&lt;/div&gt;</summary>
		<author><name>Henkutsu</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=Talk:UsefulWMLFragments&amp;diff=14741</id>
		<title>Talk:UsefulWMLFragments</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=Talk:UsefulWMLFragments&amp;diff=14741"/>
		<updated>2007-04-09T13:20:08Z</updated>

		<summary type="html">&lt;p&gt;Henkutsu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I'm thinking that it would be good to have all pages linked also link back. It would also be good to add this page to the Category: WML, opinions? /tsr&lt;br /&gt;
&lt;br /&gt;
Henkutsu: That is my thoughts too. Also several of the pages are badly outdated. After getting so many errors in my scenarios from old code, I'm now going through the whole thing cleaning it up. I'm adding the links and may move bits to different pages.&lt;br /&gt;
An example of the old code is the Random Traits stuff.&lt;/div&gt;</summary>
		<author><name>Henkutsu</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=Talk:RandomTraitUnit&amp;diff=14740</id>
		<title>Talk:RandomTraitUnit</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=Talk:RandomTraitUnit&amp;diff=14740"/>
		<updated>2007-04-09T13:17:21Z</updated>

		<summary type="html">&lt;p&gt;Henkutsu: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Um. Just changed the whole thing... &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hope no one minded.&lt;/div&gt;</summary>
		<author><name>Henkutsu</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=WML_Abilities&amp;diff=14735</id>
		<title>WML Abilities</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=WML_Abilities&amp;diff=14735"/>
		<updated>2007-04-09T12:58:21Z</updated>

		<summary type="html">&lt;p&gt;Henkutsu: Added a See Also section to the bottom to make navigation easier&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Remember that you must include the WML ability code in every scenario where you intend them to work. Or include them in the unit file inside the [unit] tag.&lt;br /&gt;
&lt;br /&gt;
Abilities require macros found elsewhere in UsefulFragments, typically ProgammingMacros, [[WML_Utilities|Utilities]], or Scenario Tools. &lt;br /&gt;
&lt;br /&gt;
=== Knockback  ===&lt;br /&gt;
&lt;br /&gt;
When a unit is hit with a ''knockback'' attack, it is immediately pushed one hex away from the attacker, at which point the combat ends. Exception: units in villages can't be knocked out of them.&lt;br /&gt;
&lt;br /&gt;
Examples that give ''knockback'' for every Drake Glider on their slam attack, and for the Shock Trooper named Jane:&lt;br /&gt;
 {KNOCKBACK (type=Drake Glider) slam}&lt;br /&gt;
 {KNOCKBACK description=Jane mace}&lt;br /&gt;
&lt;br /&gt;
Requires the macros ''OPPOSITE_SIDE'', ''IF'', ''IF_HAVE_UNIT'' and ''STORE_UNIT_VAR''.&lt;br /&gt;
&lt;br /&gt;
 #define KNOCKBACK FILTER WEAPON&lt;br /&gt;
     [event]&lt;br /&gt;
         name=attacker_hits&lt;br /&gt;
         first_time_only=no&lt;br /&gt;
 &lt;br /&gt;
         [filter]&lt;br /&gt;
             {FILTER}&lt;br /&gt;
         [/filter]&lt;br /&gt;
 &lt;br /&gt;
         [special_filter]&lt;br /&gt;
             weapon={WEAPON}&lt;br /&gt;
         [/special_filter]&lt;br /&gt;
 &lt;br /&gt;
         [sound]&lt;br /&gt;
             name=ghoul-hit.wav&lt;br /&gt;
         [/sound]&lt;br /&gt;
 &lt;br /&gt;
         {OPPOSITE_SIDE $x2 $y2 $x1 $y1 target_hex}&lt;br /&gt;
 &lt;br /&gt;
         [store_locations]&lt;br /&gt;
             x,y=$x2,$y2&lt;br /&gt;
             terrain=AaBbDeLptUVvYZ&lt;br /&gt;
             variable=defender_in_village&lt;br /&gt;
         [/store_locations]&lt;br /&gt;
 &lt;br /&gt;
         {IF_HAVE_UNIT x,y=$target_hex.x,$target_hex.y (&lt;br /&gt;
             [else]&lt;br /&gt;
                 {IF defender_in_village.length not_equals 1 (&lt;br /&gt;
                     [then]&lt;br /&gt;
                         {STORE_UNIT_VAR x,y=$x2,$y2 side side_of_defender}&lt;br /&gt;
 &lt;br /&gt;
                         [teleport]&lt;br /&gt;
                             [filter]&lt;br /&gt;
                                 x,y=$x2,$y2&lt;br /&gt;
                             [/filter]&lt;br /&gt;
 &lt;br /&gt;
                             x,y=$target_hex.x,$target_hex.y&lt;br /&gt;
                         [/teleport]&lt;br /&gt;
 &lt;br /&gt;
                         [capture_village]&lt;br /&gt;
                             side=$side_of_defender&lt;br /&gt;
                             x,y=$target_hex.x,$target_hex.y&lt;br /&gt;
                         [/capture_village]&lt;br /&gt;
 &lt;br /&gt;
                         {CLEAR_VARIABLE side_of_defender}&lt;br /&gt;
                     [/then]&lt;br /&gt;
                 )}&lt;br /&gt;
             [/else]&lt;br /&gt;
         )}&lt;br /&gt;
 &lt;br /&gt;
         {CLEAR_VARIABLE target_hex}&lt;br /&gt;
         {CLEAR_VARIABLE defender_in_village}&lt;br /&gt;
     [/event]&lt;br /&gt;
 #enddef&lt;br /&gt;
&lt;br /&gt;
=== Charm ===&lt;br /&gt;
&lt;br /&gt;
When a unit is hit with a ''charm'' attack, it instantly jumps to the attacker's side, and returns to it's original side at the beginning of that side's turn. A charmed unit has 1 movement point and can attack.&lt;br /&gt;
&lt;br /&gt;
Example that makes all Troll Whelps have charm on their attack:&lt;br /&gt;
&lt;br /&gt;
 {CHARM (type=Troll Whelp) fist}&lt;br /&gt;
&lt;br /&gt;
Requires the macros ''IF'', ''STORE_UNIT_VAR'' and ''MODIFY_UNIT''.&lt;br /&gt;
&lt;br /&gt;
 #define CHARM FILTER WEAPON&lt;br /&gt;
     [event]&lt;br /&gt;
         name=attacker_hits&lt;br /&gt;
         first_time_only=no&lt;br /&gt;
 &lt;br /&gt;
         [filter]&lt;br /&gt;
             {FILTER}&lt;br /&gt;
         [/filter]&lt;br /&gt;
 &lt;br /&gt;
         [special_filter]&lt;br /&gt;
             weapon={WEAPON}&lt;br /&gt;
         [/special_filter]&lt;br /&gt;
 &lt;br /&gt;
         {STORE_UNIT_VAR x,y=$x1,$y1 side charmer_side}&lt;br /&gt;
         {STORE_UNIT_VAR x,y=$x2,$y2 side charmed_side}&lt;br /&gt;
 &lt;br /&gt;
         {IF charmer_side not_equals $charmed_side (&lt;br /&gt;
             [then]&lt;br /&gt;
                 {MODIFY_UNIT x,y=$x2,$y2 variables.real_side $charmed_side}&lt;br /&gt;
                 {MODIFY_UNIT x,y=$x2,$y2 side $charmer_side}&lt;br /&gt;
                 {MODIFY_UNIT x,y=$x2,$y2 moves 1}&lt;br /&gt;
                 {MODIFY_UNIT x,y=$x2,$y2 attacks_left 1}&lt;br /&gt;
 &lt;br /&gt;
                 {VARIABLE_OP varname format &amp;quot;side_$charmed_side|_units_charmed&amp;quot;}&lt;br /&gt;
                 {VARIABLE $varname yes}&lt;br /&gt;
 &lt;br /&gt;
                 {CLEAR_VARIABLE varname}&lt;br /&gt;
             [/then]&lt;br /&gt;
         )}&lt;br /&gt;
 &lt;br /&gt;
         {CLEAR_VARIABLE charmer_side}&lt;br /&gt;
         {CLEAR_VARIABLE charmed_side}&lt;br /&gt;
     [/event]&lt;br /&gt;
 &lt;br /&gt;
     [event]&lt;br /&gt;
         name=side turn&lt;br /&gt;
         first_time_only=no&lt;br /&gt;
 &lt;br /&gt;
         {VARIABLE_OP this_side_charmed to_variable &amp;quot;side_$side_number|_units_charmed&amp;quot;}&lt;br /&gt;
 &lt;br /&gt;
         {IF this_side_charmed equals yes (&lt;br /&gt;
             [then]&lt;br /&gt;
                 [store_unit]&lt;br /&gt;
                     [filter]&lt;br /&gt;
                         [not]&lt;br /&gt;
                             side=$side_number&lt;br /&gt;
                         [/not]&lt;br /&gt;
                     [/filter]&lt;br /&gt;
 &lt;br /&gt;
                     variable=possibly_charmed&lt;br /&gt;
                     kill=no&lt;br /&gt;
                 [/store_unit]&lt;br /&gt;
 &lt;br /&gt;
                 {FOREACH possibly_charmed i}&lt;br /&gt;
                     {VARIABLE_OP real_side format &amp;quot;0$possibly_charmed[$i].variables.real_side&amp;quot;}&lt;br /&gt;
 &lt;br /&gt;
                     {IF real_side not_equals &amp;quot;0&amp;quot; (&lt;br /&gt;
                         [then]&lt;br /&gt;
                             {IF side_number equals $possibly_charmed[$i].variables.real_side (&lt;br /&gt;
                                 [then]&lt;br /&gt;
                                     {CLEAR_VARIABLE possibly_charmed[$i].variables.real_side}&lt;br /&gt;
                                     {VARIABLE possibly_charmed[$i].side $side_number}&lt;br /&gt;
 &lt;br /&gt;
                                     [unstore_unit]&lt;br /&gt;
                                         variable=possibly_charmed[$i]&lt;br /&gt;
                                         find_vacant=no&lt;br /&gt;
                                     [/unstore_unit]&lt;br /&gt;
                                 [/then]&lt;br /&gt;
                             )}&lt;br /&gt;
                         [/then]&lt;br /&gt;
                     )}&lt;br /&gt;
                 {NEXT i}&lt;br /&gt;
 &lt;br /&gt;
                 {CLEAR_VARIABLE possibly_charmed}&lt;br /&gt;
             [/then]&lt;br /&gt;
         )}&lt;br /&gt;
     [/event]&lt;br /&gt;
 #enddef&lt;br /&gt;
&lt;br /&gt;
=== Bloodlust ===&lt;br /&gt;
&lt;br /&gt;
Bloodlust is a very simple ability. If a unit that has bloodlust kills an enemy unit when attacking, it may attack again, provided that there are more enemy units adjacent to it.&lt;br /&gt;
&lt;br /&gt;
Requires the macro MODIFY_UNIT.&lt;br /&gt;
&lt;br /&gt;
This would give the bloodlust ability to all Dwarvish Ulfserkers (making them insanely powerful):&lt;br /&gt;
&lt;br /&gt;
 {BLOODLUST (type=Dwarvish Ulfserker)}&lt;br /&gt;
&lt;br /&gt;
 #define BLOODLUST FILTER&lt;br /&gt;
     [event]&lt;br /&gt;
         name=die&lt;br /&gt;
         first_time_only=no&lt;br /&gt;
 &lt;br /&gt;
         [filter_second]&lt;br /&gt;
             {FILTER}&lt;br /&gt;
         [/filter_second]&lt;br /&gt;
 &lt;br /&gt;
         {MODIFY_UNIT x,y=$x2,$y2 moves 0}&lt;br /&gt;
         {MODIFY_UNIT x,y=$x2,$y2 attacks_left 1}&lt;br /&gt;
     [/event]&lt;br /&gt;
 #enddef&lt;br /&gt;
&lt;br /&gt;
=== Pickpocket ===&lt;br /&gt;
&lt;br /&gt;
This special could also be called loot. When a unit with this attack special sucessfully hits an enemy unit, it gains a certain amount of gold - say 10.&lt;br /&gt;
&lt;br /&gt;
To do this, use this code:&lt;br /&gt;
&lt;br /&gt;
 #define WEAPON_SPECIAL_PICKPOCKET&lt;br /&gt;
 [damage]&lt;br /&gt;
 id=pickpocket&lt;br /&gt;
 name=&amp;quot;Pickpocket&amp;quot;&lt;br /&gt;
 description=&amp;quot;Pickpocket:&lt;br /&gt;
 When used offensively, this attack gives 10 gold to the attacker on every successful hit.&amp;quot; &lt;br /&gt;
 multiply=1&lt;br /&gt;
 [/damage]&lt;br /&gt;
 #enddef&lt;br /&gt;
&lt;br /&gt;
Then put this event in your scenario:&lt;br /&gt;
&lt;br /&gt;
 [event]&lt;br /&gt;
 	name=attacker_hits&lt;br /&gt;
 	first_time_only=no&lt;br /&gt;
 		[filter]&lt;br /&gt;
 		side=$side_number&lt;br /&gt;
 		canrecruit=1&lt;br /&gt;
 		[/filter]&lt;br /&gt;
 		[special_filter]&lt;br /&gt;
 		weapon=pickpocket gloves&lt;br /&gt;
 		[/special_filter]&lt;br /&gt;
 		[gold]&lt;br /&gt;
 		side=$side_number&lt;br /&gt;
 		amount=10&lt;br /&gt;
 		[/gold]&lt;br /&gt;
 [/event]&lt;br /&gt;
&lt;br /&gt;
Then give the unit you want to have the &amp;quot;pickpocket&amp;quot; special something like this:&lt;br /&gt;
&lt;br /&gt;
 [object]&lt;br /&gt;
 silent=yes&lt;br /&gt;
 	[effect]&lt;br /&gt;
 		apply_to=new_attack &lt;br /&gt;
 		name=pickpocket gloves&lt;br /&gt;
 		type=impact&lt;br /&gt;
 		range=melee &lt;br /&gt;
 		damage=3&lt;br /&gt;
 		number=3 &lt;br /&gt;
 	 		 [specials]&lt;br /&gt;
 	 			 {WEAPON_SPECIAL_PICKPOCKET}&lt;br /&gt;
 	 		 [/specials]&lt;br /&gt;
 	  [/effect]&lt;br /&gt;
 [/object]&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
* [[UsefulWMLFragments]]&lt;br /&gt;
* [[WML Dialog Tools]]&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
[[Category: UsefulWMLFragments]]&lt;/div&gt;</summary>
		<author><name>Henkutsu</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=WML_Utilities&amp;diff=14732</id>
		<title>WML Utilities</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=WML_Utilities&amp;diff=14732"/>
		<updated>2007-04-09T12:51:23Z</updated>

		<summary type="html">&lt;p&gt;Henkutsu: Added to UsefullWMLFragments catagory&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Test Value of Variables ==&lt;br /&gt;
&lt;br /&gt;
 # Shortcut for IF statements testing the value of a variable. You still need to&lt;br /&gt;
 # write [then] and [else] tags manually, though.&lt;br /&gt;
 #&lt;br /&gt;
 # You can use it like this:&lt;br /&gt;
 #&lt;br /&gt;
 # {IF some_variable equals yes (&lt;br /&gt;
 #     [then]&lt;br /&gt;
 #         # something&lt;br /&gt;
 #     [/then]&lt;br /&gt;
 #&lt;br /&gt;
 #     [else]&lt;br /&gt;
 #         # something else&lt;br /&gt;
 #     [/else]&lt;br /&gt;
 # )}&amp;lt;br&amp;gt;&lt;br /&gt;
 #define IF VAR OP VAL CONTENTS&lt;br /&gt;
     [if]&lt;br /&gt;
         [variable]&lt;br /&gt;
             name={VAR}&lt;br /&gt;
             {OP}={VAL}&lt;br /&gt;
         [/variable]&amp;lt;br&amp;gt;&lt;br /&gt;
         {CONTENTS}&lt;br /&gt;
     [/if]&lt;br /&gt;
 #enddef&lt;br /&gt;
&lt;br /&gt;
 # Just a variation of the above, testing [have_unit] instead of [variable].&amp;lt;br&amp;gt;&lt;br /&gt;
 #define IF_HAVE_UNIT FILTER CONTENTS&lt;br /&gt;
     [if]&lt;br /&gt;
         [have_unit]&lt;br /&gt;
             {FILTER}&lt;br /&gt;
         [/have_unit]&amp;lt;br&amp;gt;&lt;br /&gt;
         {CONTENTS}&lt;br /&gt;
     [/if]&lt;br /&gt;
 #enddef&lt;br /&gt;
&lt;br /&gt;
== Store Attribute to Variable ==&lt;br /&gt;
&lt;br /&gt;
 # Example that flips all orcs to whatever side James is on:&lt;br /&gt;
 #&lt;br /&gt;
 # {STORE_UNIT_VAR description=James side side_of_James}&lt;br /&gt;
 # {MODIFY_UNIT race=orc side $side_of_James}&amp;lt;br&amp;gt;&lt;br /&gt;
 #define STORE_UNIT_VAR FILTER VAR TO_VAR&lt;br /&gt;
     [store_unit]&lt;br /&gt;
         [filter]&lt;br /&gt;
             {FILTER}&lt;br /&gt;
         [/filter]&amp;lt;br&amp;gt;&lt;br /&gt;
         kill=no&lt;br /&gt;
         variable=STORE_UNIT_VAR_store&lt;br /&gt;
     [/store_unit]&amp;lt;br&amp;gt;&lt;br /&gt;
     {VARIABLE_OP {TO_VAR} format $STORE_UNIT_VAR_store.{VAR}}&amp;lt;br&amp;gt;&lt;br /&gt;
     {CLEAR_VARIABLE STORE_UNIT_VAR_store}&lt;br /&gt;
 #enddef &lt;br /&gt;
&lt;br /&gt;
== Filter by Terrain ==&lt;br /&gt;
 # Check whethers or not the terrain in the given coordinates is of the given&lt;br /&gt;
 # type or types. Filtering by terrain isn't possible directly.&lt;br /&gt;
 #&lt;br /&gt;
 # You can use it for example like this:&lt;br /&gt;
 #&lt;br /&gt;
 # [event]&lt;br /&gt;
 #     name=moveto&lt;br /&gt;
 #     first_time_only=no&lt;br /&gt;
 #&lt;br /&gt;
 #     {IF_TERRAIN $x1 $y1 gfm (&lt;br /&gt;
 #         [then]&lt;br /&gt;
 #             {DEBUG_MSG &amp;quot;Stepped on grassland, forest or mountains!&amp;quot;}&lt;br /&gt;
 #         [/then]&lt;br /&gt;
 #     )}&lt;br /&gt;
 # [/event]&amp;lt;br&amp;gt;&lt;br /&gt;
 #define IF_TERRAIN X Y TYPES CONTENTS&lt;br /&gt;
     [store_locations]&lt;br /&gt;
         x={X}&lt;br /&gt;
         y={Y}&lt;br /&gt;
         terrain={TYPES}&lt;br /&gt;
         variable=IF_TERRAIN_temp&lt;br /&gt;
     [/store_locations]&amp;lt;br&amp;gt; &lt;br /&gt;
     [if]&lt;br /&gt;
         [variable]&lt;br /&gt;
             name=IF_TERRAIN_temp.length&lt;br /&gt;
             not_equals=0&lt;br /&gt;
         [/variable]&amp;lt;br&amp;gt; &lt;br /&gt;
         {CONTENTS}&lt;br /&gt;
     [/if]&amp;lt;br&amp;gt; &lt;br /&gt;
     {CLEAR_VARIABLE IF_TERRAIN_temp}&lt;br /&gt;
 #enddef&lt;br /&gt;
&lt;br /&gt;
==Iterate==&lt;br /&gt;
 # You can iterate through a range of numbers with this macro. The CONTENTS&lt;br /&gt;
 # are repeated with every iteration, and you can use the VAR variable to&lt;br /&gt;
 # insert the number of the current step into each iteration. Note that&lt;br /&gt;
 # when using this, you must iterate from a smaller number to the bigger&lt;br /&gt;
 # number, because the increment is always 1.&lt;br /&gt;
 #&lt;br /&gt;
 # Example that spawns a row of skeletons into the coordinates (4,5),&lt;br /&gt;
 # (5,5), (6,5), (7,5), (8,5) and (9,5):&lt;br /&gt;
 #&lt;br /&gt;
 # {ITERATE 4 9 i (&lt;br /&gt;
 #     [unit]&lt;br /&gt;
 #         type=Skeleton&lt;br /&gt;
 #         x=$i&lt;br /&gt;
 #         y=5&lt;br /&gt;
 #     [/unit]&lt;br /&gt;
 # )}&amp;lt;br&amp;gt;&lt;br /&gt;
 #define ITERATE FROM TO VAR CONTENTS&lt;br /&gt;
     {VARIABLE {VAR} {FROM}}&amp;lt;br&amp;gt;&lt;br /&gt;
     [while]&lt;br /&gt;
         [variable]&lt;br /&gt;
             name={VAR}&lt;br /&gt;
             less_than_equal_to={TO}&lt;br /&gt;
         [/variable]&amp;lt;br&amp;gt;&lt;br /&gt;
         [do]&lt;br /&gt;
             {CONTENTS}&amp;lt;br&amp;gt;&lt;br /&gt;
             {VARIABLE_OP {VAR} add 1}&lt;br /&gt;
         [/do]&lt;br /&gt;
     [/while]&lt;br /&gt;
 #enddef&lt;br /&gt;
&lt;br /&gt;
== Adding unit overlays with a filter instead of (x,y) ==&lt;br /&gt;
&lt;br /&gt;
 # UNIT_OVERLAY adds an overlay to a unit, taking in a standard filter&lt;br /&gt;
 #&lt;br /&gt;
 # Example that gives all spearmen a book:&lt;br /&gt;
 # {UNIT_OVERLAY type=Spearman items/book1.png}&lt;br /&gt;
 &lt;br /&gt;
 #define UNIT_OVERLAY FILTER IMG&lt;br /&gt;
     [store_unit]&lt;br /&gt;
         [filter]&lt;br /&gt;
             {FILTER}&lt;br /&gt;
         [/filter]&lt;br /&gt;
         variable=UNIT_OVERLAY_store&lt;br /&gt;
         kill=no&lt;br /&gt;
     [/store_unit]&lt;br /&gt;
     {FOREACH UNIT_OVERLAY_store UNIT_OVERLAY_i}&lt;br /&gt;
 	{VARIABLE_OP UNIT_OVERLAY_tempx format $UNIT_OVERLAY_store[$UNIT_OVERLAY_i].x}&lt;br /&gt;
 	{VARIABLE_OP UNIT_OVERLAY_tempy format $UNIT_OVERLAY_store[$UNIT_OVERLAY_i].y}&lt;br /&gt;
         [unit_overlay]&lt;br /&gt;
             x=$UNIT_OVERLAY_tempx&lt;br /&gt;
             y=$UNIT_OVERLAY_tempy&lt;br /&gt;
 		image={IMG}&lt;br /&gt;
         [/unit_overlay]&lt;br /&gt;
     {NEXT UNIT_OVERLAY_i}&lt;br /&gt;
     {CLEAR_VARIABLE UNIT_OVERLAY_store}&lt;br /&gt;
 #enddef&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Determining opposite coordinates ==&lt;br /&gt;
&lt;br /&gt;
 # Using this, you can determine the coordinates on the &amp;quot;opposite side&amp;quot; of a&lt;br /&gt;
 # central hex, relative to another hex adjacent to it. What this really means&lt;br /&gt;
 # is illustrated below:&lt;br /&gt;
 #       __            __            __&lt;br /&gt;
 #    __/  \__      __/2 \__      __/  \__&lt;br /&gt;
 #   /  \__/1 \    /  \__/  \    /2 \__/  \    C: central point&lt;br /&gt;
 #   \__/C \__/    \__/C \__/    \__/C \__/    1: the hex to &amp;quot;mirror&amp;quot;&lt;br /&gt;
 #   /2 \__/  \    /  \__/  \    /  \__/1 \    2: the result&lt;br /&gt;
 #   \__/  \__/    \__/1 \__/    \__/  \__/&lt;br /&gt;
 #      \__/          \__/          \__/&lt;br /&gt;
 #&lt;br /&gt;
 # The coordinates of the central point are given in {CENTER_X} and {CENTER_Y},&lt;br /&gt;
 # and the coordinates of hex 1 in {X} and {Y}. The coordinates of hex 2 are&lt;br /&gt;
 # then stored in {VAR}, which will have member variables x and y.&lt;br /&gt;
 #&lt;br /&gt;
 # Note that this uses the IF macro given earlier on this page.&amp;lt;br&amp;gt;&lt;br /&gt;
 #define OPPOSITE_SIDE CENTER_X CENTER_Y X Y VAR&lt;br /&gt;
     {VARIABLE x_odd {X}}&amp;lt;br&amp;gt;&lt;br /&gt;
     {VARIABLE_OP x_odd multiply 0.5}&lt;br /&gt;
     {VARIABLE_OP x_odd multiply 2}&amp;lt;br&amp;gt;&lt;br /&gt;
     {VARIABLE c_x {CENTER_X}}&lt;br /&gt;
     {VARIABLE c_y {CENTER_Y}}&lt;br /&gt;
     {VARIABLE s_x {X}}&lt;br /&gt;
     {VARIABLE s_y {Y}}&amp;lt;br&amp;gt;&lt;br /&gt;
     {VARIABLE result_x {CENTER_X}}&lt;br /&gt;
     {VARIABLE result_y {CENTER_Y}}&amp;lt;br&amp;gt;&lt;br /&gt;
     {IF s_x greater_than $c_x (&lt;br /&gt;
         [then]&lt;br /&gt;
             {VARIABLE_OP result_x add -1}&lt;br /&gt;
         [/then]&lt;br /&gt;
     )}&amp;lt;br&amp;gt;&lt;br /&gt;
     {IF s_x less_than $c_x (&lt;br /&gt;
         [then]&lt;br /&gt;
             {VARIABLE_OP result_x add 1}&lt;br /&gt;
         [/then]&lt;br /&gt;
     )}&amp;lt;br&amp;gt;&lt;br /&gt;
     {IF s_x equals $c_x (&lt;br /&gt;
         [then]&lt;br /&gt;
             {IF s_y less_than $c_y (&lt;br /&gt;
                 [then]&lt;br /&gt;
                     {VARIABLE_OP result_y add 1}&lt;br /&gt;
                 [/then]&lt;br /&gt;
             )}&amp;lt;br&amp;gt;&lt;br /&gt;
             {IF s_y greater_than $c_y (&lt;br /&gt;
                 [then]&lt;br /&gt;
                     {VARIABLE_OP result_y add -1}&lt;br /&gt;
                 [/then]&lt;br /&gt;
             )}&lt;br /&gt;
         [/then]&lt;br /&gt;
     )}&amp;lt;br&amp;gt;&lt;br /&gt;
     {IF x_odd not_equals $s_x (&lt;br /&gt;
         [then]&lt;br /&gt;
             {IF s_y equals $c_y (&lt;br /&gt;
                 [then]&lt;br /&gt;
                     {VARIABLE_OP result_y add 1}&lt;br /&gt;
                 [/then]&lt;br /&gt;
             )}&lt;br /&gt;
         [/then]&amp;lt;br&amp;gt;&lt;br /&gt;
         [else]&lt;br /&gt;
             {IF s_y equals $c_y (&lt;br /&gt;
                 [then]&lt;br /&gt;
                     {VARIABLE_OP result_y add -1}&lt;br /&gt;
                 [/then]&lt;br /&gt;
             )}&lt;br /&gt;
         [/else]&lt;br /&gt;
     )}&amp;lt;br&amp;gt;&lt;br /&gt;
     {VARIABLE {VAR}.x $result_x}&lt;br /&gt;
     {VARIABLE {VAR}.y $result_y}&amp;lt;br&amp;gt;&lt;br /&gt;
     {CLEAR_VARIABLE c_x}&lt;br /&gt;
     {CLEAR_VARIABLE c_y}&lt;br /&gt;
     {CLEAR_VARIABLE s_x}&lt;br /&gt;
     {CLEAR_VARIABLE s_y}&lt;br /&gt;
     {CLEAR_VARIABLE result_x}&lt;br /&gt;
     {CLEAR_VARIABLE result_y}&lt;br /&gt;
     {CLEAR_VARIABLE x_odd}&lt;br /&gt;
 #enddef&lt;br /&gt;
&lt;br /&gt;
== General macros ==&lt;br /&gt;
&lt;br /&gt;
 #define FORMAT ARRAY VARIABLE&lt;br /&gt;
 {VARIABLE_OP {VARIABLE} to_variable {ARRAY}.{VARIABLE}}&lt;br /&gt;
 #enddef&lt;br /&gt;
&lt;br /&gt;
 ##this is a &amp;quot;partial&amp;quot; macro; not all of the tags match up&lt;br /&gt;
 #put {NEXT INDEX} after it&lt;br /&gt;
 #define FOREACH_FORMAT ARRAY INDEX&lt;br /&gt;
  {FOREACH {ARRAY} {INDEX}}&lt;br /&gt;
   {FORMAT {ARRAY}[${INDEX}] x}&lt;br /&gt;
   {FORMAT {ARRAY}[${INDEX}] y}&lt;br /&gt;
 #enddef&lt;br /&gt;
&lt;br /&gt;
 #define STORE_UNIT NAME&lt;br /&gt;
 [store_unit]&lt;br /&gt;
  [filter]&lt;br /&gt;
  description={NAME}&lt;br /&gt;
  [/filter]&lt;br /&gt;
 variable={NAME}_store&lt;br /&gt;
 [/store_unit]&lt;br /&gt;
 #enddef&lt;br /&gt;
&lt;br /&gt;
 #define UNSTORE_UNIT NAME X Y&lt;br /&gt;
 {VARIABLE {NAME}_store.x {X}}&lt;br /&gt;
 {VARIABLE {NAME}_store.y {Y}}&lt;br /&gt;
 [unstore_unit]&lt;br /&gt;
 variable={NAME}_store&lt;br /&gt;
 [/unstore_unit]&lt;br /&gt;
 {CLEAR_VARIABLE {NAME}_store}&lt;br /&gt;
 #enddef&lt;br /&gt;
&lt;br /&gt;
 #define UNSTORE_ARRAY ARRAY&lt;br /&gt;
 {FOREACH {ARRAY} i}&lt;br /&gt;
   [unstore_unit]&lt;br /&gt;
   variable={ARRAY}[$i]&lt;br /&gt;
   [/unstore_unit]&lt;br /&gt;
   [clear_variable]&lt;br /&gt;
   variable={ARRAY}[$i]&lt;br /&gt;
   [/clear_variable]&lt;br /&gt;
 {NEXT i}&lt;br /&gt;
 #enddef&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
* [[UsefulWMLFragments]]&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
[[Category: UsefulWMLFragments]]&lt;/div&gt;</summary>
		<author><name>Henkutsu</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=UsefulWMLFragments&amp;diff=14730</id>
		<title>UsefulWMLFragments</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=UsefulWMLFragments&amp;diff=14730"/>
		<updated>2007-04-09T12:24:31Z</updated>

		<summary type="html">&lt;p&gt;Henkutsu: Added to UsefullWMLFragments catagory&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Useful WML Fragments ==&lt;br /&gt;
&lt;br /&gt;
Most of the things found here are macros (see [[PreprocessorRef]]) that must be copied into a scenario file or another file included first by the campaign, and then used in the scenario (or multiplayer map). Remember that a macro cannot be used at a point before it is defined.&lt;br /&gt;
&lt;br /&gt;
High level macros often require the lower level macros found in ProgrammingMacros, Utilities, and Scenario Tools.&lt;br /&gt;
&lt;br /&gt;
[[WML Templates]]: Generic campaign, scenario and unit templates.&lt;br /&gt;
&lt;br /&gt;
[[ProgrammingMacros]]: Definitions for some low-level macros to make it easier to write program-like WML.&lt;br /&gt;
&lt;br /&gt;
[[WML Utilities]]: Macros to assist other macros. Test Value of Variable. If Have Unit. Store Unit Attribute. Filter by Terrain. Iterate. Overlay with Filter. Determine Opposite Coordinates.&lt;br /&gt;
&lt;br /&gt;
[[WML Scenario Tools]]: Macros directly useful in a scenario. Modify unit. Give villages to a side. Return Unit to Recall List. Trap Unit. Change Keep Terrain. Hero die message. Item effect.&lt;br /&gt;
&lt;br /&gt;
[[WML Dialog Tools]]: Macros useful for unit dialog/storyboarding. Character Speaker, Blank story section, Delays and Fades.&lt;br /&gt;
&lt;br /&gt;
[[MoveExistingUnit]]: Move a unit from one place to another, displaying its movement. Move Unit 1. Move Unit 2. Move Unit 3.&lt;br /&gt;
&lt;br /&gt;
[[Victory Conditions]]: Number of Villages, Amount of Gold. Suitable for multiplayer scenarios.&lt;br /&gt;
&lt;br /&gt;
[[WML Abilities]]: Knockback. Charm. Bloodlust. Abilities cannot currently be incorporated in the unit type definitions themselves, but must be included in the scenario file.&lt;br /&gt;
&lt;br /&gt;
[[WML Buildings]]: Generic Buildings, Light House/Dark Tower, Wishing Well #1, Wishing Well #2.&lt;br /&gt;
&lt;br /&gt;
[[RandomTraitUnit]]: Create a unit with two random traits.&lt;br /&gt;
&lt;br /&gt;
[[DroppableItem]]: Generic item that a unit can carry, and is left on the ground when the unit dies.&lt;br /&gt;
&lt;br /&gt;
[[A Shop Like Thing]]: How to add even more RPG elements to your scenarios.&lt;br /&gt;
&lt;br /&gt;
[[PseudoRandom]]: A replacement for {RANDOM} in multiplayer, where {RANDOM} is buggy.&lt;br /&gt;
&lt;br /&gt;
[[Rain effect]]: Creating an overlay of rain in a scenario.&lt;br /&gt;
&lt;br /&gt;
[[Advanced WML]]:  Branch on Village Type. Recruit from a Ship. Point Rotation Scheme.&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category: UsefulWMLFragments]]&lt;/div&gt;</summary>
		<author><name>Henkutsu</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=UsefulWMLFragments&amp;diff=14725</id>
		<title>UsefulWMLFragments</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=UsefulWMLFragments&amp;diff=14725"/>
		<updated>2007-04-09T11:32:30Z</updated>

		<summary type="html">&lt;p&gt;Henkutsu: Added tag about the village macro under wml scenario&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Useful WML Fragments ==&lt;br /&gt;
&lt;br /&gt;
Most of the things found here are macros (see [[PreprocessorRef]]) that must be copied into a scenario file or another file included first by the campaign, and then used in the scenario (or multiplayer map). Remember that a macro cannot be used at a point before it is defined.&lt;br /&gt;
&lt;br /&gt;
High level macros often require the lower level macros found in ProgrammingMacros, Utilities, and Scenario Tools.&lt;br /&gt;
&lt;br /&gt;
[[WML Templates]]: Generic campaign, scenario and unit templates.&lt;br /&gt;
&lt;br /&gt;
[[ProgrammingMacros]]: Definitions for some low-level macros to make it easier to write program-like WML.&lt;br /&gt;
&lt;br /&gt;
[[WML Utilities]]: Macros to assist other macros. Test Value of Variable. If Have Unit. Store Unit Attribute. Filter by Terrain. Iterate. Overlay with Filter. Determine Opposite Coordinates.&lt;br /&gt;
&lt;br /&gt;
[[WML Scenario Tools]]: Macros directly useful in a scenario. Modify unit. Give villages to a side. Return Unit to Recall List. Trap Unit. Change Keep Terrain. Hero die message. Item effect.&lt;br /&gt;
&lt;br /&gt;
[[WML Dialog Tools]]: Macros useful for unit dialog/storyboarding. Character Speaker, Blank story section, Delays and Fades.&lt;br /&gt;
&lt;br /&gt;
[[MoveExistingUnit]]: Move a unit from one place to another, displaying its movement. Move Unit 1. Move Unit 2. Move Unit 3.&lt;br /&gt;
&lt;br /&gt;
[[Victory Conditions]]: Number of Villages, Amount of Gold. Suitable for multiplayer scenarios.&lt;br /&gt;
&lt;br /&gt;
[[WML Abilities]]: Knockback. Charm. Bloodlust. Abilities cannot currently be incorporated in the unit type definitions themselves, but must be included in the scenario file.&lt;br /&gt;
&lt;br /&gt;
[[WML Buildings]]: Generic Buildings, Light House/Dark Tower, Wishing Well #1, Wishing Well #2.&lt;br /&gt;
&lt;br /&gt;
[[RandomTraitUnit]]: Create a unit with two random traits.&lt;br /&gt;
&lt;br /&gt;
[[DroppableItem]]: Generic item that a unit can carry, and is left on the ground when the unit dies.&lt;br /&gt;
&lt;br /&gt;
[[A Shop Like Thing]]: How to add even more RPG elements to your scenarios.&lt;br /&gt;
&lt;br /&gt;
[[PseudoRandom]]: A replacement for {RANDOM} in multiplayer, where {RANDOM} is buggy.&lt;br /&gt;
&lt;br /&gt;
[[Rain effect]]: Creating an overlay of rain in a scenario.&lt;br /&gt;
&lt;br /&gt;
[[Advanced WML]]:  Branch on Village Type. Recruit from a Ship. Point Rotation Scheme.&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
* [[ReferenceWML]]&lt;/div&gt;</summary>
		<author><name>Henkutsu</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=UsefulWMLFragments&amp;diff=14724</id>
		<title>UsefulWMLFragments</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=UsefulWMLFragments&amp;diff=14724"/>
		<updated>2007-04-09T11:29:29Z</updated>

		<summary type="html">&lt;p&gt;Henkutsu: Added a new page for character dialog macros.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Useful WML Fragments ==&lt;br /&gt;
&lt;br /&gt;
Most of the things found here are macros (see [[PreprocessorRef]]) that must be copied into a scenario file or another file included first by the campaign, and then used in the scenario (or multiplayer map). Remember that a macro cannot be used at a point before it is defined.&lt;br /&gt;
&lt;br /&gt;
High level macros often require the lower level macros found in ProgrammingMacros, Utilities, and Scenario Tools.&lt;br /&gt;
&lt;br /&gt;
[[WML Templates]]: Generic campaign, scenario and unit templates.&lt;br /&gt;
&lt;br /&gt;
[[ProgrammingMacros]]: Definitions for some low-level macros to make it easier to write program-like WML.&lt;br /&gt;
&lt;br /&gt;
[[WML Utilities]]: Macros to assist other macros. Test Value of Variable. If Have Unit. Store Unit Attribute. Filter by Terrain. Iterate. Overlay with Filter. Determine Opposite Coordinates.&lt;br /&gt;
&lt;br /&gt;
[[WML Scenario Tools]]: Macros directly useful in a scenario. Modify unit. Return Unit to Recall List. Trap Unit. Change Keep Terrain. Hero die message. Item effect.&lt;br /&gt;
&lt;br /&gt;
[[WML Dialog Tools]]: Macros useful for unit dialog/storyboarding. Character Speaker, Blank story section, Delays and Fades.&lt;br /&gt;
&lt;br /&gt;
[[MoveExistingUnit]]: Move a unit from one place to another, displaying its movement. Move Unit 1. Move Unit 2. Move Unit 3.&lt;br /&gt;
&lt;br /&gt;
[[Victory Conditions]]: Number of Villages, Amount of Gold. Suitable for multiplayer scenarios.&lt;br /&gt;
&lt;br /&gt;
[[WML Abilities]]: Knockback. Charm. Bloodlust. Abilities cannot currently be incorporated in the unit type definitions themselves, but must be included in the scenario file.&lt;br /&gt;
&lt;br /&gt;
[[WML Buildings]]: Generic Buildings, Light House/Dark Tower, Wishing Well #1, Wishing Well #2.&lt;br /&gt;
&lt;br /&gt;
[[RandomTraitUnit]]: Create a unit with two random traits.&lt;br /&gt;
&lt;br /&gt;
[[DroppableItem]]: Generic item that a unit can carry, and is left on the ground when the unit dies.&lt;br /&gt;
&lt;br /&gt;
[[A Shop Like Thing]]: How to add even more RPG elements to your scenarios.&lt;br /&gt;
&lt;br /&gt;
[[PseudoRandom]]: A replacement for {RANDOM} in multiplayer, where {RANDOM} is buggy.&lt;br /&gt;
&lt;br /&gt;
[[Rain effect]]: Creating an overlay of rain in a scenario.&lt;br /&gt;
&lt;br /&gt;
[[Advanced WML]]:  Branch on Village Type. Recruit from a Ship. Point Rotation Scheme.&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
* [[ReferenceWML]]&lt;/div&gt;</summary>
		<author><name>Henkutsu</name></author>
		
	</entry>
</feed>