Mod.cpp/bin File Format

From Bohemia Interactive Community
Revision as of 06:04, 2 February 2015 by Benargee (talk | contribs) (Zeus example)
Jump to navigation Jump to search

Template:unsupported-doc

As of Operation Arrowhead, the root folder of your @mod can contain an (optional) mod.cpp/bin.

somewhere\@YourMod\mod.bin

and on the command line to start arrowhead

mod=somewhere\@YourMod,lots,of,others...

A mod.bin/cpp allows for more detailed information in the Game's expansion menu for mod folders (rather than the engine simply declaring there is a mysterious @yourmod)

Contents of this cpp could be as follows:

name = "Cold War Rearmed²";
picture = \some\paafile\somewere.paa;
actionName = "Website";
action = "http://cwr.armedzone.com/";

This is the standard, easy to apply, method.

As convenient (and clever) as it may be, it does not fit well with standard methods of distribution. Eg all things pbo.

NOTE: Be careful: true/false are invalid values in the mod.cpp.

The alternative is to insert a cfgMods class into one of your pbo's, or, make one specifically for this.

The following are BI samples of how it's done:

//config.cpp
#define true 1
#define false 0

class CfgMods
{
	defaultAction = "http://www.arma2.com/mods";
	class Expansion
	{
		dir = "Expansion";
		name = "Arma 2: Operation Arrowhead";
		picture = "ca\ui\data\logo_arma2ep1_ca.paa";
		hidePicture = false;
		hideName = true;
		action = "http://www.arma2.com/arrowhead";
	};
	class BAF
	{
		dir = "BAF";
		name = "Arma 2: British Armed Forces (Lite)";
		picture = "ca\data_baf\mod.paa";
		action = "http://www.arma2.com/BAF";
		hash = "BAF v. 1.03";
		hideName = 1;
		actionName = "Buy Now";
		hidePicture = 1;
		islite = 1;
	};
	class PMC
	{
		dir = "PMC";
		picture = "ca\ui\data\logo_arma2pmc_ca.paa";
		hash = "PMC v. 1.02";
		action = "http://www.arma2.com/PMC";
		hideName = 1;
		name = "Arma 2: Private Military Company";
		hidePicture = 0;
	};
};

Arma 3 Zeus:

class CfgMods
{
	class Mod_Base;
	class Curator: Mod_Base
	{
		picture = "\A3\Ui_F_Curator\Data\Logos\arma3_zeus_icon_ca.paa";
		logo = "\A3\Ui_F_Curator\Data\Logos\arma3_curator_logo_ca.paa";
		logoOver = "\A3\Ui_F_Curator\Data\Logos\arma3_curator_logoOver_ca.paa";
		tooltipOwned = "$STR_A3_CFGMODS_CURATOR_NAME";
		action = "http://zeus.arma3.com";
		fieldManualTopicAndHint[] = {"Curator","Curator"};
		dlcColor[] = {0.31,0.78,0.78,1};
		overview = "$STR_A3_DLC_CURATOR_DESCRIPTION";
		hideName = 1;
		hidePicture = 0;
		name = "$STR_A3_CFGMODS_CURATOR_NAME";
		dir = "Curator";
		appId = 275700;
	};
};

Notes

Inkompetent
Currently in ArmA3 (version 1.08) the CfgMods entry in config.cpp does not seem to work, and the mod.cpp file must be used.
Posted on January 15, 2013 - 15:26

Bottom Section