====== ArmA 2 MakePbo ======
[[https://www.pmctactical.org/forum/viewforum.php?f=50|ArmA 2 Forum]], [[:arma2|ArmA 2 Home]], [[arma2:config|ArmA 2 Config]], [[arma2:file_formats|ArmA 2 File Formats]], [[arma2:missions|ArmA 2 Missions]], [[arma2:modeling|ArmA 2 3D Modeling]], [[arma2:scripting|ArmA 2 Scripting]], [[arma2:terrain|ArmA 2 Terrain]], [[arma2:texturing|ArmA 2 Texturing]], [[arma2:tools|ArmA 2 Tools]]
This pbo maker will create one of four different types of pbo depending on options specified on the command line.
Syntax:
MakePbo [-options] Foldername
options are case INsensitive
-c CWC
-r Resistance
-e Elite
-a ArmA (default)
-L Lintcheck: check mission.sqm/desc.ext/config.cpp/*.rvmat
-F ignore any #include \hard folders (LintCheck only)
-B Binarize (rapify) any of the above files (except desc.ext)
-T binarize and include config.cpp as config.cpp.txt (eg)
-N do Nothing special. Make a pbo wysiwig
-P PrefixName this will over-ride $PBOPREFIX$ and use a direct over-ride
Notes:
rapification of any type (auto rap, or autolint) will check the following types of file
mission.sqm
description.ext
config.cpp
*.rvmat
*.bisurf
Note that in the case of desc.ext and bisurfs, they are checked for accuracy only. They are not, 'binarized'
Note that if a $PBOPREFIX$ file is detected in the pbo folder. It takes precedence. It is a method by which drag and drop applications can create prefix pbo headers, without further intervention. The content of this file, becomes the prefix header, unconditionally. It is also recorded in the pbo for reference.
Prefix headers in general are handled simply by stating ArmA, or Elite as an option. The $PBOPREFIX$ is intended to over-ride the prefix names that this application would otherwise create.
Note also that as part of it's automation, this application prepends the 'ca\' prefix to Armed Assault official addon names IF, -a is selected (and no $PBOPREFIX$ detected).
Note that there is no provision for makepbo to compress file data.
Note that sha key signatures (ArmA) or crc checks (elite) are automatically appended to end of file
Versioning
Preamble:
all revised missions should have a new pbo name. This has NO EFFECT WHATSOEVER to the game play, the prefix, or the position of the mission in arma. It does however give the one thing sorely missed in ofp: a way of having self documenting, self evident, changes to addons (in this case, mission.pbo's)
to do so, ALL that is required is simply rename the folder and voila, any makepbo will create a pbo of that name.
Unfortunately
because SVN (and CVS, but perhaps not git) cause a total recopy of renamed files and folders (bloody stupid)
and because this can incur huge penalties in bandwidth when all you wanted to do was rename a mission molder!
the following scenario is in place
If makepbo encounters "PboName.h" in the mission folder, it will rename the pbo appropriately
thus
PboName="CWR_StealTheCarV1_02.Abel"; or alternatively
PboName="CWR_StealTheCarV1_02.Abel.pbo";
The entire name is replaced (rather than a patch of some revision numbers) to give authors some flexibility)
Requires DePbo.dll - Check [[http://dev.withsix.com/projects/mikero-pbodll/files|Mikero tools homepage]] in Dev-Heaven.