Difference between revisions of "Declaring Faction Mappings"
From ALiVE Wiki
(2 intermediate revisions by 2 users not shown) | |||
Line 31: | Line 31: | ||
}; | }; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
+ | Example faction template | ||
'''script\staticData.sqf''' | '''script\staticData.sqf''' | ||
Line 147: | Line 149: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
+ | [[Category: Tutorials]] |
Latest revision as of 04:33, 24 July 2016
For some unit mods, the CfgGroups config will be malformed and not follow our guidelines on standardisation Unit mod authors config standardisation.
If you really want to be able to use these mods with ALiVE you can provide a mapping for the mod factions.
To load the mappings, you follow the same proceedure as the custom blacklists. In the example below you can see some custom mappings (that already exists) for Massi's African Units, PMC Pomi and Suddens Russians.
If you are already loading a custom black list or logistics customisations you can edit and add the code to your existing staticData.sqf
init.sqf
if(isServer) then { // ------------------------------------------------------------------------------------------------------------- // override default data // see script/staticData.sqf ["MISSION INIT - Waiting"] call ALIVE_fnc_dump; waitUntil {!isNil "ALiVE_STATIC_DATA_LOADED"}; ["MISSION INIT - Continue"] call ALIVE_fnc_dump; // override static data settings call compile (preprocessFileLineNumbers "script\staticData.sqf"); ["MISSION INIT - Static data override loaded"] call ALIVE_fnc_dump; // ------------------------------------------------------------------------------------------------------------- };
Example faction template
script\staticData.sqf
// African // --------------------------------------------------------------------------------------------------------------------- mas_afr_rebl_o_mappings = [] call ALIVE_fnc_hashCreate; [mas_afr_rebl_o_mappings, "Side", "EAST"] call ALIVE_fnc_hashSet; [mas_afr_rebl_o_mappings, "GroupSideName", "EAST"] call ALIVE_fnc_hashSet; [mas_afr_rebl_o_mappings, "FactionName", "mas_afr_rebl_o"] call ALIVE_fnc_hashSet; [mas_afr_rebl_o_mappings, "GroupFactionName", "OPF_mas_afr_F_o"] call ALIVE_fnc_hashSet; mas_afr_rebl_o_typeMappings = [] call ALIVE_fnc_hashCreate; [mas_afr_rebl_o_typeMappings, "Air", "Air"] call ALIVE_fnc_hashSet; [mas_afr_rebl_o_typeMappings, "Armored", "Armored"] call ALIVE_fnc_hashSet; [mas_afr_rebl_o_typeMappings, "Infantry", "Infantry_mas_afr_o"] call ALIVE_fnc_hashSet; [mas_afr_rebl_o_typeMappings, "Mechanized", "Mechanized"] call ALIVE_fnc_hashSet; [mas_afr_rebl_o_typeMappings, "Motorized", "Motorized_mas_afr_o"] call ALIVE_fnc_hashSet; [mas_afr_rebl_o_typeMappings, "Motorized_MTP", "Motorized_MTP"] call ALIVE_fnc_hashSet; [mas_afr_rebl_o_typeMappings, "SpecOps", "Recon_mas_afr_o"] call ALIVE_fnc_hashSet; [mas_afr_rebl_o_typeMappings, "Support", "Support"] call ALIVE_fnc_hashSet; [mas_afr_rebl_o_mappings, "GroupFactionTypes", mas_afr_rebl_o_typeMappings] call ALIVE_fnc_hashSet; [ALIVE_factionCustomMappings, "mas_afr_rebl_o", mas_afr_rebl_o_mappings] call ALIVE_fnc_hashSet; [ALIVE_factionDefaultSupplies, "mas_afr_rebl_o", ["Box_mas_ru_rifle_Wps_F"]] call ALIVE_fnc_hashSet; mas_afr_rebl_i_mappings = [] call ALIVE_fnc_hashCreate; [mas_afr_rebl_i_mappings, "Side", "INDEP"] call ALIVE_fnc_hashSet; [mas_afr_rebl_i_mappings, "GroupSideName", "INDEP"] call ALIVE_fnc_hashSet; [mas_afr_rebl_i_mappings, "FactionName", "mas_afr_rebl_i"] call ALIVE_fnc_hashSet; [mas_afr_rebl_i_mappings, "GroupFactionName", "IND_mas_afr_F_i"] call ALIVE_fnc_hashSet; mas_afr_rebl_i_typeMappings = [] call ALIVE_fnc_hashCreate; [mas_afr_rebl_i_typeMappings, "Air", "Air"] call ALIVE_fnc_hashSet; [mas_afr_rebl_i_typeMappings, "Armored", "Armored"] call ALIVE_fnc_hashSet; [mas_afr_rebl_i_typeMappings, "Infantry", "Infantry_mas_afr_i"] call ALIVE_fnc_hashSet; [mas_afr_rebl_i_typeMappings, "Mechanized", "Mechanized"] call ALIVE_fnc_hashSet; [mas_afr_rebl_i_typeMappings, "Motorized", "Motorized_mas_afr_i"] call ALIVE_fnc_hashSet; [mas_afr_rebl_i_typeMappings, "Motorized_MTP", "Motorized_MTP"] call ALIVE_fnc_hashSet; [mas_afr_rebl_i_typeMappings, "SpecOps", "Recon_mas_afr_i"] call ALIVE_fnc_hashSet; [mas_afr_rebl_i_typeMappings, "Support", "Support"] call ALIVE_fnc_hashSet; [mas_afr_rebl_i_mappings, "GroupFactionTypes", mas_afr_rebl_i_typeMappings] call ALIVE_fnc_hashSet; [ALIVE_factionCustomMappings, "mas_afr_rebl_i", mas_afr_rebl_i_mappings] call ALIVE_fnc_hashSet; [ALIVE_factionDefaultSupplies, "mas_afr_rebl_i", ["Box_mas_us_rifle_Wps_F"]] call ALIVE_fnc_hashSet; mas_afr_rebl_b_mappings = [] call ALIVE_fnc_hashCreate; [mas_afr_rebl_b_mappings, "Side", "WEST"] call ALIVE_fnc_hashSet; [mas_afr_rebl_b_mappings, "GroupSideName", "WEST"] call ALIVE_fnc_hashSet; [mas_afr_rebl_b_mappings, "FactionName", "mas_afr_rebl_b"] call ALIVE_fnc_hashSet; [mas_afr_rebl_b_mappings, "GroupFactionName", "BLU_mas_afr_F_b"] call ALIVE_fnc_hashSet; mas_afr_rebl_b_typeMappings = [] call ALIVE_fnc_hashCreate; [mas_afr_rebl_b_typeMappings, "Air", "Air"] call ALIVE_fnc_hashSet; [mas_afr_rebl_b_typeMappings, "Armored", "Armored"] call ALIVE_fnc_hashSet; [mas_afr_rebl_b_typeMappings, "Infantry", "Infantry_mas_afr_b"] call ALIVE_fnc_hashSet; [mas_afr_rebl_b_typeMappings, "Mechanized", "Mechanized"] call ALIVE_fnc_hashSet; [mas_afr_rebl_b_typeMappings, "Motorized", "Motorized_mas_afr_b"] call ALIVE_fnc_hashSet; [mas_afr_rebl_b_typeMappings, "Motorized_MTP", "Motorized_MTP"] call ALIVE_fnc_hashSet; [mas_afr_rebl_b_typeMappings, "SpecOps", "Recon_mas_afr_b"] call ALIVE_fnc_hashSet; [mas_afr_rebl_b_typeMappings, "Support", "Support"] call ALIVE_fnc_hashSet; [mas_afr_rebl_b_mappings, "GroupFactionTypes", mas_afr_rebl_b_typeMappings] call ALIVE_fnc_hashSet; [ALIVE_factionCustomMappings, "mas_afr_rebl_b", mas_afr_rebl_b_mappings] call ALIVE_fnc_hashSet; [ALIVE_factionDefaultSupplies, "mas_afr_rebl_b", ["Box_mas_us_rifle_Wps_F"]] call ALIVE_fnc_hashSet; // --------------------------------------------------------------------------------------------------------------------- // PMC POMI // --------------------------------------------------------------------------------------------------------------------- PMC_POMI_mappings = [] call ALIVE_fnc_hashCreate; [PMC_POMI_mappings, "Side", "INDEP"] call ALIVE_fnc_hashSet; [PMC_POMI_mappings, "GroupSideName", "INDEP"] call ALIVE_fnc_hashSet; [PMC_POMI_mappings, "FactionName", "PMC_POMI"] call ALIVE_fnc_hashSet; [PMC_POMI_mappings, "GroupFactionName", "PMC_POMI"] call ALIVE_fnc_hashSet; PMC_POMI_typeMappings = [] call ALIVE_fnc_hashCreate; [PMC_POMI_typeMappings, "Air", "Air"] call ALIVE_fnc_hashSet; [PMC_POMI_typeMappings, "Armored", "Armored"] call ALIVE_fnc_hashSet; [PMC_POMI_typeMappings, "Infantry", "Infantry"] call ALIVE_fnc_hashSet; [PMC_POMI_typeMappings, "Mechanized", "Mechanized"] call ALIVE_fnc_hashSet; [PMC_POMI_typeMappings, "Motorized", "Motorized"] call ALIVE_fnc_hashSet; [PMC_POMI_typeMappings, "Motorized_MTP", "Motorized_MTP"] call ALIVE_fnc_hashSet; [PMC_POMI_typeMappings, "SpecOps", "SpecOps"] call ALIVE_fnc_hashSet; [PMC_POMI_typeMappings, "Support", "Support"] call ALIVE_fnc_hashSet; [PMC_POMI_mappings, "GroupFactionTypes", PMC_POMI_typeMappings] call ALIVE_fnc_hashSet; [ALIVE_factionCustomMappings, "PMC_POMI", PMC_POMI_mappings] call ALIVE_fnc_hashSet; // --------------------------------------------------------------------------------------------------------------------- // SUD RUSSIANS // --------------------------------------------------------------------------------------------------------------------- SUD_RU_mappings = [] call ALIVE_fnc_hashCreate; [SUD_RU_mappings, "Side", "INDEP"] call ALIVE_fnc_hashSet; [SUD_RU_mappings, "GroupSideName", "INDEP"] call ALIVE_fnc_hashSet; [SUD_RU_mappings, "FactionName", "SUD_RU"] call ALIVE_fnc_hashSet; [SUD_RU_mappings, "GroupFactionName", "SUD_RU"] call ALIVE_fnc_hashSet; SUD_RU_typeMappings = [] call ALIVE_fnc_hashCreate; [SUD_RU_typeMappings, "Air", "Air"] call ALIVE_fnc_hashSet; [SUD_RU_typeMappings, "Armored", "Armored"] call ALIVE_fnc_hashSet; [SUD_RU_typeMappings, "Infantry", "Infantry"] call ALIVE_fnc_hashSet; [SUD_RU_typeMappings, "Mechanized", "Mechanized"] call ALIVE_fnc_hashSet; [SUD_RU_typeMappings, "Motorized", "Motorized"] call ALIVE_fnc_hashSet; [SUD_RU_typeMappings, "Motorized_MTP", "Motorized_MTP"] call ALIVE_fnc_hashSet; [SUD_RU_typeMappings, "SpecOps", "SpecOps"] call ALIVE_fnc_hashSet; [SUD_RU_typeMappings, "Support", "Support"] call ALIVE_fnc_hashSet; [SUD_RU_mappings, "GroupFactionTypes", SUD_RU_typeMappings] call ALIVE_fnc_hashSet; [ALIVE_factionCustomMappings, "SUD_RU", SUD_RU_mappings] call ALIVE_fnc_hashSet; // ---------------------------------------------------------------------------------------------------------------------