GameConfigWML

From The Battle for Wesnoth Wiki
Revision as of 01:34, 24 January 2023 by Octalot (talk | contribs) (The [game_config] tag: Update docs about orbs, and clear out some of the obsolete data)

[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 [game_config] tag

This tag is a top level WML tag which can only be used once because it defines basic settings that are used everywhere in the game. In official versions of Wesnoth it is in game_config.cfg; values used there are labeled 'standard'.

Note Note: This page is very outdated, and will take multiple edits to update.

The following keys are recognised

  • base_income: (standard 2) how much your leader earns without any villages
  • village_income: (standard 1) how much your leader earns for each village you control
  • poison_amount: (standard 8) the amount of damage poison deals to a unit
  • rest_heal_amount: (standard 2) how much HP a unit gains each turn it rests
  • recall_cost: (standard 20) how much it costs to recall a unit; this cost is independent of level.
  • kill_experience: (standard 8) killing a unit with level=X will give X*kill_experience experience to the killing unit. However, if a unit has level=0, it will still give half of X experience.
  • default_defeat_music: (standard 'defeat.ogg,defeat2.ogg') default list of music tracks that are chosen to play on player's defeat; this can be overriden per-scenario
  • default_victory_music: (standard 'victory.ogg,victory2.ogg') default list of music tracks that are chosen to play on player's victory; this can be overriden per-scenario
  • title_music: (standard 'main_menu.ogg') the music to play at the title screen
  • energy: (standard 'misc/bar-energy.png') the images used to display hp/xp bars.
  • orb: (standard 'misc/orb.png') the orb image to add on top of the hp bar, this is recolorable to show the status; see 'Orbs', WesnothManual
  • orb_two_color: (standard 'misc/orb-two-color.png') like orb, but has two separate recolorable parts
  • flag_image: (standard 'image/flag'terrain/flag-1.png:150,terrain/flag-2.png:150,terrain/flag-3.png:150,terrain/flag-4.png:150') the default flag animation to mark captured villages (if no custom flag is defined in the [side] tag). By example, this animation has 4 frames of 150ms each. An automatic side-coloring is applied.
  • flag_icon_image: (standard 'flags/flag-icon.png') the default flag icon to indicate the side playing in the statusbar (if no custom flag_icon is defined in the [side] tag). An automatic side-coloring is applied.
  • hp_bar_scaling : (standard '0.6') The ratio of hitpoints to height used for displaying the hp bar. Can be overwritten in [unit] and [unit_type].
  • xp_bar_scaling : (standard '0.5') The ratio of xp to height used for displaying the xp bar. Can be overwritten in [unit] and [unit_type].
  • footprint_left_nw, footprint_left_n, footprint_right_nw, footprint_right_n: images used to display the path that a unit would take to the tile the cursor is on.

The first image of each key is used for tiles which would take only 1 movement point for the selected unit to move onto; the second for ones which would take more. The 'n' and 'nw' designations distinguish between tiles which are moved from orthogonally and diagonally in the same way as described in [missile_frame], AnimationWML. The 'left' and 'right' designations are used alternately throughout the path; however, the standard values are the same for 'left' and 'right'.

  • terrain_mask_image: (standard 'terrain/alphamask.png') used to give a hex-shape from a rectangular image.
  • grid_image: (standard 'terrain/grid.png') the image used by the grid option
  • unreachable_image: (standard 'terrain/darken.png') the stripes mask used to show unreachable locations
  • observer_image: (standard 'misc/eye.png') the image to use for observer in multi-player games. (The eye in the upper right hand corner.)
  • zoom_levels: (Version 1.13.8 and later only) A comma-separated list of valid zoom levels, with 1.0 representing 100%.

Color Palettes

Color palettes are defined by two tags within [game_config].

  • [color_palette]: Contains the definitions of source palettes, such as magenta. Each key defines a palette, and must be set to a comma-separated list of hexadecimal colors.
  • [color_range]: Defines a target color palette.
    • id: Used to reference the palette, for example from [side] or ~RC().
    • name: A translatable name for the color. This may be ignored for non-core colors?
    • rgb: A comma-separated sequence of four hexadecimal colors:
      1. the average shade of a unit's team-color portions
      2. the maximum highlight shade of a unit's team-color portions
      3. the minimum shadow shade of a unit's team-color portions
      4. the color of the markers on the mini-map.

See Also