Difference between revisions of "UsefulWMLFragments"

From The Battle for Wesnoth Wiki
(MAJOR CHANGE! Changed structure of page completely. Kept links but it should all make sense now.)
Line 1: Line 1:
 
== Useful WML Fragments ==
 
== Useful WML Fragments ==
 +
 +
NOTES ABOUT ADDING PAGES: Don't add new pages here. Find a category in which your code fits and add it to that page.
  
 
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.
 
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.
 +
 +
For a step by step instruction, look here: [[HowTo: IncludeMacros]] and then here: [[HowTo: UseMacros]]
  
 
High level macros often require the lower level macros found in ProgrammingMacros, Utilities, and Scenario Tools.
 
High level macros often require the lower level macros found in ProgrammingMacros, Utilities, and Scenario Tools.
  
[[WML Templates]]: Generic campaign, scenario and unit templates.
 
 
[[ProgrammingMacros]]: Definitions for some low-level macros to make it easier to write program-like WML.
 
 
[[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.
 
  
[[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.
+
=== Logic Structure Macros ===
 +
*[[ProgrammingMacros]]: Definitions for some low-level macros to make it easier to write program-like WML.
 +
*[[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.  
  
[[WML Dialog Tools]]: Macros useful for unit dialog/storyboarding. Character Speaker, Blank story section, Delays and Fades.
 
  
[[MoveExistingUnit]]: Move a unit from one place to another, displaying its movement. Move Unit 1. Move Unit 2. Move Unit 3.
+
=== Campaign Tools ===
 +
*[[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.
 +
*[[WML Dialog Tools]]: Macros useful for unit dialog/storyboarding. Character Speaker, Blank story section, Delays and Fades.
 +
*[[Victory Conditions]]: Number of Villages, Amount of Gold. Suitable for multiplayer scenarios.
  
[[Victory Conditions]]: Number of Villages, Amount of Gold. Suitable for multiplayer scenarios.
+
==== Map Tools ====
 +
*[[A Shop Like Thing]]: How to add even more RPG elements to your scenarios.
 +
*[[Rain effect]]: Creating an overlay of rain in a scenario.
  
[[WML Abilities]]: Knockback. Charm. Bloodlust. Abilities cannot currently be incorporated in the unit type definitions themselves, but must be included in the scenario file.
+
==== Unit Tools ====
 +
*[[MoveExistingUnit]]: Move a unit from one place to another, displaying its movement. Move Unit 1. Move Unit 2. Move Unit 3.
 +
*[[WML Abilities]]: Knockback. Charm. Bloodlust. Abilities cannot currently be incorporated in the unit type definitions themselves, but must be included in the scenario file.
 +
*[[WML Buildings]]: Generic Buildings, Light House/Dark Tower, Wishing Well #1, Wishing Well #2.
 +
*[[RandomTraitUnit]]: Create a unit with two random traits. (very simple.) (updated)
  
[[WML Buildings]]: Generic Buildings, Light House/Dark Tower, Wishing Well #1, Wishing Well #2.
+
==== Item Tools ====
 +
*[[DroppableItem]]: Generic item that a unit can carry, and is left on the ground when the unit dies.
  
[[RandomTraitUnit]]: Create a unit with two random traits. (very simple.)
 
  
[[DroppableItem]]: Generic item that a unit can carry, and is left on the ground when the unit dies.
+
=== Multiplayer Tools ===
 +
*[[PseudoRandom]]: A replacement for {RANDOM} in multiplayer, where {RANDOM} is buggy.
  
[[A Shop Like Thing]]: How to add even more RPG elements to your scenarios.
 
  
[[PseudoRandom]]: A replacement for {RANDOM} in multiplayer, where {RANDOM} is buggy.
+
=== Advanced WML ===
 +
*[[Advanced WML]]: Branch on Village Type. Recruit from a Ship. Point Rotation Scheme.
  
[[Rain effect]]: Creating an overlay of rain in a scenario.
 
  
[[Advanced WML]]: Branch on Village Type. Recruit from a Ship. Point Rotation Scheme.
+
=== Templates ===
 +
*[[WML Templates]]: Generic campaign, scenario and unit templates. (updated)
  
 
== See Also ==
 
== See Also ==

Revision as of 13:40, 9 April 2007

Useful WML Fragments

NOTES ABOUT ADDING PAGES: Don't add new pages here. Find a category in which your code fits and add it to that page.

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.

For a step by step instruction, look here: HowTo: IncludeMacros and then here: HowTo: UseMacros

High level macros often require the lower level macros found in ProgrammingMacros, Utilities, and Scenario Tools.


Logic Structure Macros

  • ProgrammingMacros: Definitions for some low-level macros to make it easier to write program-like WML.
  • 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.


Campaign Tools

  • 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.
  • WML Dialog Tools: Macros useful for unit dialog/storyboarding. Character Speaker, Blank story section, Delays and Fades.
  • Victory Conditions: Number of Villages, Amount of Gold. Suitable for multiplayer scenarios.

Map Tools

Unit Tools

  • MoveExistingUnit: Move a unit from one place to another, displaying its movement. Move Unit 1. Move Unit 2. Move Unit 3.
  • WML Abilities: Knockback. Charm. Bloodlust. Abilities cannot currently be incorporated in the unit type definitions themselves, but must be included in the scenario file.
  • WML Buildings: Generic Buildings, Light House/Dark Tower, Wishing Well #1, Wishing Well #2.
  • RandomTraitUnit: Create a unit with two random traits. (very simple.) (updated)

Item Tools

  • DroppableItem: Generic item that a unit can carry, and is left on the ground when the unit dies.


Multiplayer Tools

  • PseudoRandom: A replacement for {RANDOM} in multiplayer, where {RANDOM} is buggy.


Advanced WML

  • Advanced WML: Branch on Village Type. Recruit from a Ship. Point Rotation Scheme.


Templates

  • WML Templates: Generic campaign, scenario and unit templates. (updated)

See Also