Difference between revisions of "StatisticalScenarioWML"

From The Battle for Wesnoth Wiki
(Highlight attributes)
(The [team] tag: update syntax)
Line 88: Line 88:
* '''[defends]''': not displayed
* '''[defends]''': not displayed
The subtags describe numbers per unit type.
The subtags describe unit types per number.
For example the following information means that in given scenario the given team has recruited 3 Elvish Archers and 2 Elvish Fighters.
For example the following information means that in given scenario the given team has recruited 2 Elvish Fighters, 2 Elvish Shamans and 3 Elvish Archers.
   Elvish Archer="3"
   2="Elvish Fighter,Elvish Shaman"
   Elvish Fighter="2"
   3="Elvish Archer"

Latest revision as of 15:09, 9 November 2018

[edit]WML Tags


abilities, about, add_ai_behavior, advance, 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, attack_anim, attacks, avoid;


base_unit, berserk, binary_path, break, brush;


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


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;


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


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_vision, filter_weapon, filter_wml, find_path, fire_event, firststrike, floating_text, for, foreach, frame;


game_config, get_global_variable, goal, gold, gold_carryover;


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


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


jamming_costs, join;


kill, killed;


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


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;


not, note;


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


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


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_unit_overlay, repeat, replace_map, replace_schedule, replay, replay_start, reset_fog, resistance (ability, unit), resistance_defaults, resource, return, role, rule;


save, scenario, scroll, scroll_to, scroll_to_unit, secondary_attack, secondary_unit, section, select_unit, sequence, set_extra_recruit, set_global_variable, set_menu_item, set_recruit, set_specials, set_variable, set_variables, sheath_weapon_anim, show_if (message, set_menu_item), show_objectives, side, skirmisher, 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_type, store_unit_type_ids, store_villages, story, swarm, switch, sync_variable;


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


unhide_unit, unit, unit_overlay, unit_type, unit_worth, units, unlock_view, unpetrify, unstore_unit, unsynced;


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


while, wml_message, wml_schema;



The save file contains statistical information about all previously played scenarios; each one inside a [scenario] tag. It also includes information about currently played scenario -- if the game was saved in the middle of scenario -- though this one will be re-calculated from replay.

The statistics are recorded per scenario, per team, per unit type. Some of these statistics are available during game in "Statistics" menu option. Others are collected, but not currently displayed; this may later change.

The recorded information includes:

  • number of units recruited
  • number of units recalled
  • number of units advanced
  • number of units killed

The [statistics] tag

Top-level tag; appears directly in save file.


  • mid_scenario: whether the last scenario is currently being played


  • [scenario] -- recorded information for one played scenario

The example statistics tag looks like this:

    scenario="My first scenario"

      # statistics about team 1 in first scenario


      # statistics about team 2 in first scenario

    scenario="My second scenario"

      # statistics about team 1 in second scenario


      # statistics about team 2 in second scenario


The [scenario] tag

Appears in [statistics] tag.


  • scenario: the ID of the scenario whose results are recorded


  • [team]: recorded information for one team

Teams must be in index order. Currently only the side 1 (index 0) statistics are displayed in game.

The [team] tag

Appears in [scenario] tag.


  • damage_inflicted: total damage inflicted by units on team
  • damage_taken:total damage inflicted on units on team
  • recall_cost: total cost of units that were recalled
  • recruit_cost: total cost of units on team that were recruited


  • [recruits]: the set of units on [team] that were recruited in this scenario
  • [recalls]: the set of units that were recalled in this scenario
  • [advances]: "advancements"; the set of units on [team] that advanced in this scenario
  • [deaths]: "losses"; the set of units on [team] that died in this scenario
  • [killed]: "kills"; the set of units that were killed by units on [team]
  • [attacks]: not displayed
  • [defends]: not displayed

The subtags describe unit types per number. For example the following information means that in given scenario the given team has recruited 2 Elvish Fighters, 2 Elvish Shamans and 3 Elvish Archers.

  2="Elvish Fighter,Elvish Shaman"
  3="Elvish Archer"

See Also

This page was last edited on 9 November 2018, at 15:09.