User Tools

Site Tools


arma:ofpport

This is an old revision of the document!


Port OFP addon to ArmA

Overview

To port your OFP addon into ArmA, the p3d model must be in OFP MLOD format for ArmA to read it (by OFP we mean that it wouldn't be much of porting, if it would be already in ArmA MLOD format, now would it heh). All textures must be present, so you need to be careful to collect all those Data\ and O\ textures from CWC and Resistance addon dirs. Configs are the one part that needs “complete” overhaul.

If you just want to get your model ingame, you can use the OFP texturing, but if you want to really optimize it for ArmA then you need to merge the textures to one or perhaps two big texture files and to create normal and specular maps for the model.

Also you could roughly say that porting all p3d models is the same, the backbone of the operation is same, of course configs and individual model selections and such differ, but so far I would summarize my basic porting operation to these important steps:

1) Get the model to MLOD format.
2) In O2PE start by renaming the Res LODs to 1,2,3,4 etc as many as there are.
3) Change proxy names as they most likely are not compatible with ArmA. You can use for example “driver”, “gunner” and “commander”.

Thats the basic backbone which helps to bring your model closer to ArmA compatibility. These three steps are just the beginning of the porting, but in most cases with those edits to the p3d model you should get it ingame with properly made/ported config file (of course with pretty much all features disabled like turrets and animations etc).

Aircraft

This is aircraft port details like cessna and jet aircrafts.

Building

This is building port details like basic houses, gates, piers, bunkers and so on.

Car

This is car port details like skoda, jeep or truck.

Helicopter

This is helicopter port details like uh60, huey or hind. Here is quick dirty overview.

Completly New cfgBones and cfgModels section.

cfgBones:

	class VTE_HueyBones: Helicopter
	{
		isDiscrete=1;
		skeletonInherit="";
		skeletonBones[]=
		{
			"vrtule staticka","",
			"vrtule blur","",
			"vrtule",""
		};
	};

cfgModels:

	class VTE_uh101: Helicopter
	{
		skeletonName = "VTE_HueyBones";
		sectionsInherit="";
		sections[]=
		{
			"clan","clan_sign","vte_noseart","velka vrtule staticka","velka vrtule blur",
                        "velka vrtule","mala vrtule staticka","mala vrtule blur","mala vrtule","zasleh"
		};
		class Animations
		{
			class HRotor
			{
				type = "rotation";
				source = "rotorH";
				selection = "velka vrtule";
				axis = "velka osa";
				angle0 = 0;
				angle1 = -2 * 3.1415;
			};
			class VRotor
			{
				type = "rotation";
				source = "rotorV";
				selection = "mala vrtule";
				axis = "mala osa";
				angle0 = 0;
				angle1 = 2 * 3.1415;
			};
		};
	};

Added in the cfgVehicles:

                mainRotorSpeed = -1;
		rotorBig = vrtule_velka;
		rotorBigBlend = vrtule_velka_bl_;
		rotorSmall = vrtule_mala;
		rotorSmallBlend = vrtule_mala_bl;

Need to change the way vehicles are defined.

1) Rename all LODs to 1, 2, 3, 4 etc.
2) Edit the config to reflect the new cfgBones and cfgModels entries.
3) Add correct proxys from ArmA to all LODs, dont forget fire-geometry.

In all LODs choose zasleh selection, in Face Properties (E) put User Value to 0 and untick Enable Shadow completely. Then in Properties (SHIFT-E) set Lighting (Obsolete) setting to Normal. Its funny that it says obsolete, but if you leave it to for example Shining, then your muzzle flash is blackened out heh.

Tank

This is tank port details like M113, M1A1 or T80.

Soldier

Soldier porting is not possible at the moment, all what we have been reading on forums and in private messages is that too much have been changed and any MLOD models by default arent working because they need brand new animations. Also all soldier models from OFP are just way way too low poly and low detail in other ways that we just need skip them.

Vegetation

This is vegetation port details like trees, bushes, grass, rocks etc.

Porting vegetation objects is quite easy. Here are the steps PMC used when porting over VTE objects.

1) Open model in O2, renumber the LODs to 1, 2, 3, 4, 5 etc.
2) In Geometry change the class to treeSoft, treeHard, bushSoft or bushHard if your object is one of those.
3) If you have forest objects, in Geometry add placement to slope property name.
x) Create shadowVolume LOD (which PMC cannot do at the moment, *crying*. Check out shadow tutorial).

If you do not use geometry class=treeSoft (or bushsoft etc) then your vegetation will not “sway” in the wind.

Also many of our roads had missing geometry value of map=road in them, so they did not display at ingame map view.

Weapon

This is weapon port details like hand guns, rifles and rocket launchers.

Config

Propably the most difficult task is to port the config, while many of the config entries are the same, there is differences enough to cause confusion and many errors if you just try to drop in OFP config into ArmA addon.

arma/ofpport.1194725947.txt.gz · Last modified: 2007-11-10 20:19 (external edit)