ReplayWML

From The Battle for Wesnoth Wiki
Revision as of 23:37, 11 May 2014 by Gfgtdf (talk | contribs) (The [command] tag)

[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, credits_group, criteria;

D:

damage, 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, found_item, for, foreach, 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, 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, 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 [command] tag

The [command] tag is used to specify an action in a replay.

The following tags are recognized:

  • [start]: is used to initialize the replay so that generated random numbers can be saved.
  • [move]: the player moved a unit.
    • [source]: the location the unit moved to.
    • [destination]: the location the unit moved from.
  • [recruit]: the player recruited a unit.
    • value: the index number of the recruited unit. (Index numbers start at 0 and include all recruitable units in alphabetical order.) Template:DevFeature1.11 This has been deprecated in favor of specifying the type id.
    • type: Template:DevFeature1.11 the id of the type of unit recruited.
    • x and y: the castle tile the unit is recruited on.
    • [from]
      • x and y: the keep tile the unit is recruited from.
  • [recall]: the player recalled a unit. Same keys as [recruit], except that value is the id of the unit being recalled.
  • [attack]: the player attacked.
    • weapon: the index number of the weapon. Weapons are indexed by the unit designer.
    • [source]: the location of the attacking unit.
    • [destination]: the location of the defending unit.
  • [end_turn]: the player ended his turn.
  • [init_side]: new turn is starting for a side. This fires begin of turn events.
  • [fire_event]: a specific event was raised
    • raise: the name of the event
    • [source]: the location of the event
    • [set_variable]: set WML variable(s) before firing
      • name: the name of the variable
      • value: a string value (literal)
  • [advance_unit]: a unit was leveled by WML. ([unstore_unit] for example)
  • [choose]: the player was given an option by the scenario or for an advancement path.
    • value: the index number of the option chosen. Index numbers are given by the scenario designer.
  • [random]: if the action required a random number, this describes the random number that was generated. In 1.0.x, nested [random] tags are used and only one is allowed at this level. In 1.1.x, a [random] tag is used at this level for each value.
    • value: list of generated random values. In 1.1.x only a single value can be used.
    • [results]: used for [attack] commands. Describes the results of the battle.
      • chance: the percent chance that the attack had to hit.
      • damage: the amount of damage that the attack would do if it hits.
      • dies: whether the defender dies from the hit.
      • hits: whether the attack hits.
    • [random]: additional lists of generated random values. [random] has the same format as the first [random] and describes the other numbers that were generated. .


Template:DevFeature1.11 The replay wml changed, and the page was already outdated, i here wrote the current contents, some of then changed in 1.11 but some of then were already outdated before. The [command] tag is used to specify an action in a replay. Is has the following attributes:

  • dependent if true, this command is not an alonestanding command and instead belongs to an earlier command, for example an advancement choice for an earlier attack command which issued an advancement.
  • from_side the side which issued the command. Only present for dependent commands.
  • sent used internaly in networked mp, to know which commands were already sended to the other clients.

The following tags are recognized for dependent=no(default):

  • [start]: is used to initialize the replay so that generated random numbers can be saved.
  • [move]: the player moved a unit.
    • x,y: the path the unit walkes.
    • skip_sighed: whether the unit doesn't stop when deiscovering another unit, possible values are 'only_ally', 'all' or no, (default no).
  • [recruit]: the player recruited a unit.
    • type: the id of the type of unit recruited.
    • x and y: the castle tile the unit is recruited on.
    • [from]
      • x and y: the keep tile the unit is recruited from.
  • [recall]: the player recalled a unit. Same keys as [recruit], except that value is the id of the unit being recalled.
  • [attack]: the player attacked.
    • weapon: the index number of the weapon. Weapons are indexed by the unit designer.
    • defender_weapon: the index number of the defenders weapon. Weapons are indexed by the unit designer, '-1' to choose the best weapon localy.
    • [source]: the location of the attacking unit.
    • [destination]: the location of the defending unit.
  • [disband]: the player removes a unit from his recall list.
    • value the id of the removed unit.
  • [end_turn]: the player ended his turn.
  • [init_side]: new turn is starting for a side. This fires begin of turn events.
  • [fire_event]: a specific event was raised
    • raise: the name of the event
    • [source]: the location of the event
    • [set_variable]: set WML variable(s) before firing
      • name: the name of the variable
      • value: a string value (literal)
  • [lua_ai]
    • code the lua code that is executed.
  • [auto_shroud] a player toggeled delayed shroud updated
    • active whether automatic shoud updates will be active.
  • [update_shoud] a player manually updated shoud.

Non dependent commands can have a [checkup] tag which is used to check whether the data generated in the replay matches the data generated during the original game, The [checkup] tag can contain diffferent [result] tags whose content is different for the different actions. For [attack] commands the [result]s give infomation about the single hits and can have the following attributes:

    • chance: the percent chance that the attack had to hit.
    • damage: the amount of damage that the attack would do if it hits.
    • hits: whether the attack hits.

Or

    • dies: whether the defender dies from the hit.

The following tags are recognized for dependent=true:

  • [choose]: the player was given an option by the scenario or for an advancement path.
    • value: the index number of the option chosen. Index numbers are given by the scenario designer.
  • [input]: if a lua code used LuaWML:Misc#wesnoth.synchronize_choice this tag contains the returned table.
  • [global_variable] a wml code used [get_global_variable]

See Also