Difference between revisions of "TerrainWML"

From The Battle for Wesnoth Wiki
(the toplevel [terrain] tag)
(the toplevel [terrain] tag)
Line 27: Line 27:
 
* ''char'' this is only used for backwards compability to read old map files, once the compability layer is removed from the code using this field is deapreciated
 
* ''char'' this is only used for backwards compability to read old map files, once the compability layer is removed from the code using this field is deapreciated
 
* ''string'' this is the new string to represent the terrain in maps and scenarions
 
* ''string'' this is the new string to represent the terrain in maps and scenarions
* ''aliasof'' comma seperated string representing terrains that this terrain will be an alias of. This is a list of characters, with the + and - signs having special meanings. the string is read left to right taking the best value. when a minus sign is encountered, it starts taking the worst instead. the plus sign reverts it back to the best (note after a + or - a comma is also required)
+
* ''aliasof'' comma seperated string representing terrains that this terrain will be an alias of. This is a list of characters, with the + and - signs having special meanings. the string is read left to right taking the best value. when a minus sign is encountered, it starts taking the worst instead. the plus sign reverts it back to the best (note after a + or - a comma is also required. In order to include a + sign the entire line must be placed between double quotes.)
 
* ''def_alias'' like ''aliasof'' but overides it for defense calculation only
 
* ''def_alias'' like ''aliasof'' but overides it for defense calculation only
 
* ''mvt_alias'' like ''aliasof'' but overides it for movement calculation only
 
* ''mvt_alias'' like ''aliasof'' but overides it for movement calculation only

Revision as of 17:46, 8 February 2007

[edit]WML Tags

A:

abilities, about, achievement, achievement_group, add_ai_behavior, advanced_preference, advancefrom, advancement, advances, affect_adjacent, ai, allied_with, allow_end_turn, allow_extra_recruit, allow_recruit, allow_undo, and, animate, animate_unit, animation, aspect, attack (replay, weapon), attack_anim, attacks (special, stats), avoid;

B:

base_unit, background_layer, berserk, binary_path, break, brush;

C:

campaign, cancel_action, candidate_action, capture_village, case, chance_to_hit, change_theme, chat, checkbox, choice, choose, clear_global_variable, clear_menu_item, clear_variable, color_adjust, color_palette, color_range, command (action, replay), continue, core, credits_group, criteria;

D:

damage, damage_type, death, deaths, default, defend, defends, defense, delay, deprecated_message, destination, difficulty, disable, disallow_end_turn, disallow_extra_recruit, disallow_recruit, do, do_command, drains, draw_weapon_anim;

E:

editor_group, editor_music, editor_times, effect, else (action, animation), elseif, endlevel, end_turn (action, replay), enemy_of, engine, entry (credits, options), era, event, experimental_filter_ability, experimental_filter_ability_active, experimental_filter_specials, extra_anim;

F:

facet, facing, fake_unit, false, feedback, female, filter (concept, event), filter_adjacent, filter_adjacent_location, filter_attack, filter_attacker, filter_base_value, filter_condition, filter_defender, filter_enemy, filter_location, filter_opponent, filter_own, filter_owner, filter_radius, filter_recall, filter_second, filter_second_attack, filter_self, filter_side, filter_student, filter_vision, filter_weapon, filter_wml, find_path, fire_event, firststrike, floating_text, fonts, for, foreach, found_item, frame;

G:

game_config, get_global_variable, goal, gold, gold_carryover;

H:

harm_unit, has_ally, has_attack, has_unit, has_achievement, have_location, have_unit, heal_on_hit, heal_unit, healed_anim, healing_anim, heals, hide_help, hide_unit, hides;

I:

idle_anim, if (action, animation, intro), illuminates, image (intro, terrain), init_side, insert_tag, inspect, item, item_group;

J:

jamming_costs, join;

K:

kill, killed;

L:

label, language, leader, leader_goal, leadership, leading_anim, levelin_anim, levelout_anim, lift_fog, limit, literal, load_resource, locale, lock_view, lua;

M:

male, menu_item, message, micro_ai, missile_frame, modification, modifications, modify_ai, modify_side, modify_turns, modify_unit, modify_unit_type, move, move_unit, move_unit_fake, move_units_fake, movement_anim, movement costs, movetype, multiplayer, multiplayer_side, music;

N:

not, note;

O:

object, objective, objectives, on_undo, open_help, option, options, or;

P:

part, petrifies, petrify, place_shroud, plague, poison, post_movement_anim, pre_movement_anim, primary_attack, primary_unit, print, progress_achievement, put_to_recall_list;

R:

race, random_placement, recall (action, replay), recalls, recruit, recruit_anim, recruiting_anim, recruits, redraw, regenerate, remove_event, remove_item, remove_object, remove_shroud, remove_sound_source, remove_time_area, remove_trait, remove_unit_overlay, repeat, replace_map, replace_schedule, replay, replay_start, reset_fog, resistance (ability, unit), resistance_defaults, resolution, resource, return, role, rule;

S:

save, scenario, screen_fade, scroll, scroll_to, scroll_to_unit, secondary_attack, secondary_unit, section, select_unit, sequence, set_achievement, set_extra_recruit, set_global_variable, set_menu_item, set_recruit, set_specials, set_variable, set_variables, sheath_weapon_anim, show_if (message, objective, set_menu_item), show_objectives, side, skirmisher, slider, slow, snapshot, sound, sound_source, source (replay, teleport), special_note, specials, split, stage, standing_anim, statistics, status, store_gold, store_items, store_locations, store_map_dimensions, store_reachable_locations, store_relative_direction, store_side, store_starting_location, store_time_of_day, store_turns, store_unit, store_unit_defense, store_unit_defense_on, store_unit_type, store_unit_type_ids, store_villages, story, swarm, sub_achievement, switch, sync_variable;

T:

target, team, teleport (ability, action), teleport_anim, terrain, terrain_defaults, terrain_graphics, terrain_mask, terrain_type, test, test_condition, test_do_attack_by_id, text_input, textdomain, theme, then, tile, time, time_area, topic, toplevel, trait, transform_unit, traveler, true, tunnel;

U:

unhide_unit, unit (action, scenario), unit_overlay, unit_type, unit_worth, units, unlock_view, unpetrify, unstore_unit, unsynced;

V:

value, variable, variables, variant, variation, victory_anim, village, vision_costs, volume;

W:

while, wml_message, wml_schema;

Z:

zoom;

the toplevel [terrain] tag

the [terrain] tag describes a terrain in WML. Terrains are usually described in the terrain.cfg file

the [terrain] tag has the following keys and subtags

  • image an image used for this terrain in the map editor
  • symbol_image appears to work the same as image - clarification is needed
  • adjacent_image a prefix for adjacent terrain images. they will be postfixed with the orientation of the border to give the image name that will be used for the border terrain
  • name the name of the terrain
  • char the character used to represent this terrain in maps and scenarios
  • aliasof characters representing terrains that this terrain will be an alias of. This is a list of characters, with the + and - signs having special meanings. the string is read left to right taking the best value. when a minus sign is encountered, it starts taking the worst instead. the plus sign reverts it back to the best
  • def_alias like aliasof but overides it for defense calculation only
  • mvt_alias like aliasof but overides it for movement calculation only
  • unit_height_adjust how much the unit graphic should be moved up or down when on that terrain
  • submerge float, between 0 and 1: stems how much of the unit graphic should be submerged by the terrain
  • no_overlay whether this terrain should be overwritten by other terrain's borders; 'no_overlay=true' terrains are not overwritten.
  • light signed value: this will modified local light level on that hex by that amount for gameplay
  • heals signed value: this value is the amount of HP an unit will be healed at the start of every turn. (If set to true a unit on that terrain will be healed 8 HP at the start of every turn, this notation is deappriciated and support might stop at some point.)
  • gives_income if set to true, this terrain will give income every turn when flagged as if it were a village
  • recruit_onto if set to true, it is possible to recruit or recall on that terrain
  • recruit_from if set to true it is possible to recruit when a unit that can recruit is on that terrain

(SVN terrain only) In this version some things have changed including some existing tags, modifications are listed here

  • char this is only used for backwards compability to read old map files, once the compability layer is removed from the code using this field is deapreciated
  • string this is the new string to represent the terrain in maps and scenarions
  • aliasof comma seperated string representing terrains that this terrain will be an alias of. This is a list of characters, with the + and - signs having special meanings. the string is read left to right taking the best value. when a minus sign is encountered, it starts taking the worst instead. the plus sign reverts it back to the best (note after a + or - a comma is also required. In order to include a + sign the entire line must be placed between double quotes.)
  • def_alias like aliasof but overides it for defense calculation only
  • mvt_alias like aliasof but overides it for movement calculation only
  • income_description for terrains with gives_income and owned by nobody this text is shown in the terrain description in the top bar before the brackets. This tag is optional, if not supplied Wesnoth will assume the terrain is a village and sets an appropriate message.
  • income_description_ally like income_description but if owned by an ally
  • income_description_enemy like income_description but if owned by an enemy
  • income_description_own like income_description but if owned by yourself

See Also