.RBF (Relic Binary File) files are compiled LUA files that contain game attributes, such as unit stats and game data. These are similar to .RGD files used in Dawn of War 1, and can be decompiled into plain text files with Corsix' RBFConv program. RBF files such as tuning.rbf contain game data stored for easy balance changes and enhanced mod support without the need for direct source access. RBFs are considered Attrib (attribute) files which determines how the SGA archives that contain them are read.
Editing RBF files is integral to DoW2 modding. Although Entity (EBP) and Squad Blueprints (SBP) can be created dynamically through SCAR, the vast majority are created through RBF files for permanent storage and repeated access. Editing RBF files allows the creation of new units, buildings, abilities, wargear, upgrades, extensive balance changes, squad behavior, etc.
Editing is currently done using third party community tools. The only known tool as of July 6th, 2009 is RBFConv. This open source command line application will convert RBF files to text and allow editing via text editors such as Notepad or Textpad. There are other tools available which extend RBFConv functionality by providing batch processing and a GUI.
Most RBF files are defined by the type of ”bag” they contain. A bag defines an entity or data set which is read by the game. Generally an RBF file is limited to one bag and a series of sub data sets or extensions (_ext). Exceptions include tuning.rbf and attributes.rbf. Many types of RBFs have a default.rbf association which defines default values.
The following are categorized types of RBF files as defined by the bag or data set they contain or position in file hierarchy:
Defines abilities used by entities or squads in the game. They contain the ability_bag bag.
Defines many of the static variables used to define properties in other RBF files. There is only one RBF file of this type: attributes.rbf.
Defines graphical effects to be applied to the various states of the infiltration effect used by entities or squads in the game. They contain the camouflage_fx_bag bag.
Defines stances related to the infiltration effect used by entities or squads in the game. Typically entities hold fire while infiltrated. They contain the camouflage_stance_bag bag.
EBPs define entities which include vehicles, buildings, mines, markers, squad members, etc. Extensions can be specified to for example allow an entity to melee attack, generate resources or have access to specific abilities.
Defines squad formations. They contain the formation_bag bag.
Defines material impact effects which is referenced by the material RBFs (see below). They contain the hit_material_bag bag.
Defines localization language and fonts. There is only one RBF file of this type: localization/localization.rbf. This file is unique to the local language version of the user's DoW2.
Defines material properties such as defining the cover type and hit material. They contain the material_bag bag.
Defines properties related to entity movement. They contain the material_bag bag.
Defines which type of terrain of objects an entity is permitted to pass through or over. They contain the passability_bag bag.
Unknown RBF files. Appears to be unused. They contain the posture_bag bag.
SBPs define squads which entity members. Extensions are used to specify squad properties.
Defines slot items which are consumables similar to abilities. They contain the slot_item_bag bag.
Defines squad distribution. They contain the squad_distribution_bag bag.
Defines many squad properties such as movement and automatic cover search. They contain the squad_plan_bag bag.
Defines many game balancing properties such as AI unit information, campaign drop rates and retreat modifiers. There is only one RBF file of this type: tuning/tuning.rbf. This RBF is exceedingly large and the most time consuming to process.
Defines many entity movement properties which are particularly important for large entities such as tanks and walkers. They contain the turn_plan_bag bag.
Defines many user interface properties such as colours and shapes. They contain the ui_selection_bag, area_outline_arrow_bag and area_outline_circle_bag bags.
Defines upgrade properties such as cost, activated wargear or abilities, etc. They contain the upgrade_bag bag.
Defines wargear properties such as graphical appearance and applied weapons, etc. They contain the wargear bag.
Defines weapon properties such as damage, setup time, reload time, etc. They contain the weapon_bag bag.
Defines weapon damage types and properties such as armour and cover multipliers. They contain the weapon_damage_bag bag.
Defines weapon families and properties such as damage type, affect on unit size, etc. They contain the weapon_family_bag bag.
Modifiers are typically used in ability, wargear and upgrade RBF files, but can also be seen in EBP and SBP and other RBF files. Using modifiers one can alter certain values of an entity, a squad, a weapon or a player. See the modifiers article for more information on certain types of modifiers and how to use them and a list of all known modifiers.
ork_burna.rbf (1.3.2) converted to text
{
| upgrade_bag: {
| | time_cost: {
| | | $REF: "time_cost_table";
| | | cost: {
| | | | $REF: "cost_table";
| | | | popcap: 0f;
| | | | requisition: 40f;
| | | | power: 20f;
| | | | waaagh: 0f;
| | | };
| | | time_seconds: 15f;
| | | energy: 0f;
| | };
| | global_max_limit: 0;
| | local_max_limit: 1;
| | owner_type: "self";
| | actions: {
| | | equip_wargear_action: {
| | | | $REF: "actions\upgrade\equip_wargear_action";
| | | | wargear: "wargear\wargear\pvp\race_ork\ork_wp1_burna";
| | | };
| | };
| | requirements: {
| | };
| | ui_event_cue: true;
| | ui_info: {
| | | icon_name: "upgrades\icon_package_recoil";
| | | screen_name: 9050693; -- Burna
| | | hotkey_name: "ork_burna";
| | | help_text: 9050694; -- Effective against infantry, buildings and units in cover.
| | | extra_text: 0;
| | | brief_text: 9101862; -- Equip flamethrower
| | };
| | ui_group: "command_panel";
| | ui_group_position: 1;
| | speech: {
| | | has_speech_code: true;
| | | speech_code_2: {
| | | | $REF: "types\speech\speech_codes";
| | | | codes: {
| | | | };
| | | };
| | | speech_code_3: {
| | | | $REF: "types\speech\speech_codes";
| | | | codes: {
| | | | | code: "bur";
| | | | | code: "wgr";
| | | | };
| | | };
| | };
| | user_interface: {
| | | icon_file_path: "orks/icon_upgrades/ork_burna";
| | };
| | multiplayer_usage: {
| | | $REF: "upgrade_mp_squad";
| | | button_index: 3;
| | };
| | on_kill_actions: {
| | | on_self: {
| | | };
| | | on_target: {
| | | };
| | };
| | time_cost_reequip: {
| | | $REF: "";
| | };
| | ui_display_when_purchased: true;
| };
};