Jump to content
Sign in to follow this  
alezil

Need Help with Clutters and surface

Recommended Posts

Hi everyone.

First of all, i must say that my native language is not English, so...sorry for the mistake i m making.

Now, to the point:

I started to make a custom terrain following CAPTNCAPS tutorial:
 https://www.youtube.com/playlist?list=PLUiViqS-dLHruCtyGL_bHrYDgmgkNV2E5

Most of the files I edited as show on the video, and used the given templates. With some difficulty I managed to make a simple map, but I cannot make the Clutter to appear on game (they don’t show on bulldozer, but apparently this is normal).

I tried some of the workarounds that I see here in the forum, but apparently my problem must been specific.  

 

Config.cpp

 

 

////////////////////////////////////////////////////////////////////
//DeRap: Produced from mikero's Dos Tools Dll version 4.88
//Wed Dec 31 20:29:17 2014 : Source 'file' date Wed Dec 31 20:29:17 2014
//http://dev-heaven.net/projects/list_files/mikero-pbodll
////////////////////////////////////////////////////////////////////

#define _ARMA_ //IMPORTANT!!

//Class map_stratis : config.bin{
class CfgPatches
{
class MPJ_Poland //Look it up here: https://sites.google.com/site/islandconfigs/home
{
units[] = {"MPJ_Poland"}; //not sure if it must be filled, as Stratis didn't, but A2 Maps did...
weapons[] = {};
requiredVersion = 0.1;
requiredAddons[] = {"A3_Data_F","A3_Roads_F","A3_Structures_F","A3_Map_Data"};
author = "Marcos P."; //Author Name (this entry exists twice!)
mail = "lll@gmail.com";
};
};
class CfgVehicles{}; //I think useless in ArmA3
class CfgWorlds
{
class DefaultWorld
{
cutscenes[] = {""}; //plays in main menu (this entry exists twice!)
class Weather
{
class Overcast;
};
};
class CAWorld: DefaultWorld
{
class Grid{};
class DayLightingBrightAlmost;
class DayLightingRainy;
class DefaultClutter;
class Weather: Weather
{
class Lighting;
class Overcast: Overcast
{
class Weather1;
class Weather2;
class Weather3;
class Weather4;
class Weather5;
class Weather6;
};
};
};

class DefaultLighting;
class MPJ_Poland: CAWorld
{


hazeDistCoef = 0.1; //??
hazeFogCoef = 0.98; //??
hazeBaseHeight = 150; //??
hazeBaseBeta0 = 6e-005; //??
hazeDensityDecay = 0.0006; //??
horizonParallaxCoef = 0.045; //??
horizonFogColorationStart = "0.8f"; //??
skyFogColorationStart = "0.7f"; //??
soundMapSizeCoef = 4; //??
satelliteNormalBlendStart = 10; //?when satellite and HD texture blend?
satelliteNormalBlendEnd = 100; //?when satellite and HD texture blend?
skyObject = "A3\Map_Stratis\data\obloha.p3d"; //skybox object, don't touch
horizontObject = "A3\Map_Stratis\data\horizont.p3d"; //??
skyTexture = "A3\Map_Stratis\data\sky_semicloudy_sky.paa"; //Not sure, because ArmA uses Simulweather, which brings it's own, dynamic sky stuff...
skyTextureR = "A3\Map_Stratis\data\sky_semicloudy_lco.paa"; //~
access = 3; //unknown, leave 3 set
worldId = 1337; //unknown, change to any number you like
cutscenes[] = {""}; //plays in main menu
description = "Kujawsko-Pomorskie, Poland"; //Shown as name when choosing Island
icon = ""; //Icon in front of Island Name
worldName = "\MPJ\Omaha\Omaha.wrp"; //path to your WRP file
pictureMap = "A3\map_Stratis\data\pictureMap_ca.paa"; //Editor Picture
pictureShot = "A3\map_Stratis\data\ui_Stratis_ca.paa"; //Loadingscreen Picture
plateFormat = "AS$-####"; //unknown
plateLetters = "ABCDEGHIKLMNOPRSTVXZ"; //unknown
author = "Marcos P"; //Author
mapSize = 2048; //probably the same number as your terrain image size
mapZone = 35; //unknown
longitude = 18.28; //west is negative!!
latitude = -57.29; //south is positive!!
elevationOffset = 0;//raise the whole map? not sure if waterlevel changes (heightmap 23m above sea ; IRL 123m above sea ; offset 100m)
envTexture = "A3\Data_f\env_land_ca.tga"; //reflection image, you probably want to change this, so it's not greece anymore...
newRoadsShape = "\MPJ\Omaha\data\roads\roads.shp"; //roads file!
class OutsideTerrain //so-called "Debug" area of ArmA


#include "cfgClutter.h"

class Names //City Names
{
#include "Omaha.hp"
};

safePositionAnchor[] = {3874.47,4093.64}; //??
safePositionRadius = 1900; //??
loadingTexts[] = {"Poland, always poland", "Russia is here...again"}; //Loading Texts
};
initWorld = "MPJ_Poland";//??
demoWorld = "MPJ_Poland";//??
};
class CfgWorldList//??
{
class MPJ_Poland{};
};
//};
#include "cfgSurfaces.h"



CFG Surface

class CfgSurfaces

{
class Default {};
class CMPJ_grass_green_surface : Default
{
files = "MPJ_grass_green_*";
rough = 0.1;
dust = 0.05;
maxSpeedCoef = 0.8;
soundEnviron = "grass";
character = "grass_green_Character";
soundHit = "soft_ground";
};
class CMPJ_forest_pine_surface : Default
{
files = "MPJ_forest_pine_*";
rough = 0.1;
dust = 0.05;
maxSpeedCoef = 0.8;
soundEnviron = "grass";
character = "forest_pine_Character";
soundHit = "soft_ground";
};
class CMPJ_mud_surface : Default
{
files = "MPJ_mud_*";
rough = 0.1;
dust = 0.05;
maxSpeedCoef = 0.8;
soundEnviron = "grass";
character = "mud_Character";
soundHit = "soft_ground";
};
class CMPJ_soil_surface : Default
{
files = "MPJ_soil_*";
rough = 0.1;
dust = 0.05;
maxSpeedCoef = 0.8;
soundEnviron = "grass";
character = "soil_Character";
soundHit = "soft_ground";
};
class CMPJ_wild_grass_surface : Default
{
files = "MPJ_wild_grass_*";
rough = 0.1;
dust = 0.05;
maxSpeedCoef = 0.8;
soundEnviron = "grass";
character = "wild_grass_Character";
soundHit = "soft_ground";
};

};

class CfgSurfaceCharacters
{
class grass_green_Character
{
probability[]={0.99, 0.99};
names[]={"CMPJ_Grass_Green", "CMPJ_Flower1"};
};
class forest_pine_Character
{
probability[]={0.99, 0.99};
names[]={"CMPJ_Grass_Green", "CMPJ_Flower1"};
};
class mud_Character
{
probability[]={0.99, 0.99};
names[]={"CMPJ_Grass_Green", "CMPJ_Flower1"};
};
class soil_Character
{
probability[]={0.99, 0.99};
names[]={"CMPJ_Grass_Green", "CMPJ_Flower1"};
};
class wild_grass_Character
{
probability[]={0.99, 0.99};
names[]={"CMPJ_Grass_Green", "CMPJ_Flower1"};
};
};



Clutter

class Clutter

{
class CMPJ_Grass_Green: DefaultClutter
{
model = "A3\plants_f\Clutter\c_StrGrassGreen_group.p3d";
affectedByWind = 0.6;
swLighting = "true";
scaleMin = 0.7;
scaleMax = 1.0;
};
class CMPJ_Flower1: DefaultClutter
{
model = "A3\plants_f\Clutter\c_Flower_Medium_White1.p3d";
affectedByWind = 0.6;
swLighting = "true";
scaleMin = 0.7;
scaleMax = 1.0;
};
};



And Layers Config:

class Layers
{
class grass_green
{
texture = "MPJ\Omaha\data\MPJ_grass_green_co.paa";
material = "MPJ\Omaha\data\MPJ_grass_green.rvmat";
};
class mud
{
texture = "MPJ\Omaha\data\MPJ_mud_co.paa";
material = "MPJ\Omaha\data\MPJ_mud.rvmat";
};
class pine
{
texture = "MPJ\Omaha\data\MPJ_forest_pine_co.paa";
material = "MPJ\Omaha\data\MPJ_forest_pine.rvmat";
};
class wild_grass
{
texture = "MPJ\Omaha\data\MPJ_wild_grass_co.paa";
material = "MPJ\Omaha\data\MPJ_wild_grass.rvmat";
};
class soil
{
texture = "MPJ\Omaha\data\MPJ_soil_co.paa";
material = "MPJ\Omaha\data\MPJ_soil.rvmat";
};
};

class Legend
{
picture="MPJ\Omaha\source\mapLegend.png";
class Colors
{
grass_green[]={{0,255,0}};
mud[]={{255,255,0}};
pine[]={{255,0,0}};
wild_grass[]={{0,0,255}};
soil[]={{255,0,255}};
};
};




Ah! And I used capital letters on the paths and some names: "MPJ\Omaha\data\MPJ_soil.rvmat";

Can this cause problems?

And Last, but not least: When I exit the map on the editor I get the following message: No entry bin\configbin/cfgworlds.Omaha.

Thanks. 

Share this post


Link to post
Share on other sites

Update

Removed underscore in Cfg Surfaces in places like: "wild_grass_*"  and  "mud_*". Now i have something like wild_grass*". 

Changed extensions back to original parameters: .h, .hp to .hpp. No more: "
No entry bin\configbin/cfgworlds.Omaha." Error (the correct omaha.hpp is loaded, not the omaha.hp before linked) .

 

Changed probability[]={0.99, 0.99}; to probability[]={0.64, 0.27}; <-- Now, the maxium is less than 1 (0.64+0,27 = 0.91)

Checked this parameters on config as bushlurker suggets in other topic:

 

clutterGrid = 1.5;

               clutterDist = 125;

               noDetailDist = 65;

               fullDetailDist = 15;

Seens to be ok.


 

Removed all Capital Letters in the diretories names, files and paths.

Removed space 
in places like "{"CMPJ_Grass_Green", "CMPJ_Flower1"};"  Cfg surface. 
 

Changed "texture =" section on layers config to ""; as CAPTNCAPS suggests on the tutorial  <- Still, not work

Changed "texture =" section on layers config to ""; as to #(rgb,1,1,1)color(0.5,0.5,0.5,1,cdt); <- Still, not work


Still, no Clutter. 

Share this post


Link to post
Share on other sites

So... i tried for 6 hours... no success.

I am posting here the updates made in the configs... in the post above theres a list of what i changed.


Config.ccp 

////////////////////////////////////////////////////////////////////
//DeRap: Produced from mikero's Dos Tools Dll version 4.88
//Wed Dec 31 20:29:17 2014 : Source 'file' date Wed Dec 31 20:29:17 2014
//http://dev-heaven.net/projects/list_files/mikero-pbodll
////////////////////////////////////////////////////////////////////

#define _ARMA_ //IMPORTANT!!

//Class map_stratis : config.bin{
class CfgPatches
{
class mpj_poland //Look it up here: https://sites.google.com/site/islandconfigs/home
{
units[] = {"mpj_poland"}; //not sure if it must be filled, as Stratis didn't, but A2 Maps did...
weapons[] = {};
requiredVersion = 0.1;
requiredAddons[] = {"A3_Data_F","A3_Roads_F","A3_Structures_F","A3_Map_Data"};
author = "Marcos P."; //Author Name (this entry exists twice!)
mail = "marcosp.dejesus@gmail.com";
};
};
class CfgVehicles{}; //I think useless in ArmA3
class CfgWorlds
{
class DefaultWorld
{
cutscenes[] = {""}; //plays in main menu (this entry exists twice!)
class Weather
{
class Overcast;
};
};
class CAWorld: DefaultWorld
{
class Grid{};
class DayLightingBrightAlmost;
class DayLightingRainy;
class DefaultClutter;
class Weather: Weather
{
class Lighting;
class Overcast: Overcast
{
class Weather1;
class Weather2;
class Weather3;
class Weather4;
class Weather5;
class Weather6;
};
};
};

class DefaultLighting;
class mpj_poland: CAWorld
{
dynLightMinBrightnessAmbientCoef = 0.5;
dynLightMinBrightnessAbsolute = 0.05;
class Sea
{
seaTexture = "a3\data_f\seatexture_co.paa";
seaMaterial = "#water";
shoreMaterial = "#shore";
shoreFoamMaterial = "#shorefoam";
shoreWetMaterial = "#shorewet";
WaterMapScale = 20;
WaterGrid = 50;
MaxTide = 0;
MaxWave = 0.25;
SeaWaveXScale = "2.0/50";
SeaWaveZScale = "1.0/50";
SeaWaveHScale = 1.0;
SeaWaveXDuration = 5000;
SeaWaveZDuration = 10000;
};
class Underwater
{
noWaterFog = -0.001;
fullWaterFog = 0.001;
deepWaterFog = 200;
waterFogDistanceNear = 10;
waterFogDistance = 40;
waterColor[] = {0.04,0.16,0.22};
deepWaterColor[] = {0.0,0.001,0.009};
surfaceColor[] = {0.04,0.16,0.22};
deepSurfaceColor[] = {0.0,0.001,0.009};
};
class SeaWaterShaderPars
{
refractionMoveCoef = 0.03;
minWaterOpacity = 0.0;
waterOpacityDistCoef = 0.4;
underwaterOpacity = 0.5;
waterOpacityFadeStart = 60;
waterOpacityFadeLength = 120;
};
startWeather = 0.3; //sets weather when opening map in editor
startFog = 0.0; //sets fog value when opening map in editor | same as fog slider in editor (probably)
forecastWeather = 0.3; //sets forecast when opening map in editor
forecastFog = 0.0;//~
startFogBase = 0.0;//~
forecastFogBase = 0.0;//~
startFogDecay = 0.013;//~
forecastFogDecay = 0.013;//~
fogBeta0Min = 0.0;//~
fogBeta0Max = 0.05;//~

class Lighting: DefaultLighting //Too much D: (https://sites.google.com/site/islandconfigs/cfgworlds-overview/cfgworlds-lighting-weather)
{
groundReflection[] = {0.132,0.133,0.122};
moonObjectColorFull[] = {550,500,450,1.0};
moonHaloObjectColorFull[] = {20,20,20,0.5};
moonsetObjectColor[] = {275,250,225,1.0};
moonsetHaloObjectColor[] = {10,10,10,0.25};
class ThunderBoltLight
{
diffuse[] = {2120,2170,8550};
ambient[] = {0.001,0.001,0.001};
intensity = 120000;
class Attenuation
{
start = 0.0;
constant = 0.0;
linear = 0.0;
quadratic = 1.0;
};
};
starEmissivity = 30.0;
};
class DayLightingBrightAlmost: DayLightingBrightAlmost //as above
{
deepNight[] = {-15,{ 0.005,0.01,0.01 },{ 0.0,0.002,0.003 },{ 0.0,0.0,0.0 },{ 0.0,0.0,0.0 },{ 0.0,0.002,0.003 },{ 0.0,0.002,0.003 },0};
fullNight[] = {-5,{ 0.182,0.213,0.25 },{ 0.05,0.111,0.221 },{ 0.04,0.034,0.004 },{ 0.039,0.049,0.072 },{ 0.082,0.128,0.185 },{ 0.283,0.35,0.431 },0};
sunMoon[] = {-3.75,{ 0.377,0.441,0.518 },{ 0.103,0.227,0.453 },{ 0.04,0.034,0.004 },{ 0.039,0.049,0.072 },{ 0.174,0.274,0.395 },{ 0.582,0.72,0.887 },0.5};
earlySun[] = {-2.5,{ 0.675,0.69,0.784 },{ 0.22,0.322,0.471 },{ 0.04,0.034,0.004 },{ 0.039,0.049,0.072 },{ 0.424,0.549,0.745 },{ 0.698,0.753,0.894 },1};
sunrise[] = {0,{ 0.675,0.69,0.784 },{ 0.478,0.51,0.659 },{ 0.2,0.19,0.07 },{ 0.124,0.161,0.236 },{ { 0.847,0.855,0.965 },0.2 },{ { 0.933,0.949,0.996 },2 },1};
earlyMorning[] = {3,{ { 0.844,0.61,0.469 },0.8 },{ 0.424,0.557,0.651 },{ { 1,0.45,0.2 },1 },{ 0.12,0.26,0.38 },{ { 0.428,0.579,0.743 },2 },{ { 0.844,0.61,0.469 },2.7 },1};
midMorning[] = {8,{ { 0.822,0.75,0.646 },3.8 },{ { 0.383,0.58,0.858 },1.3 },{ { 1.3,0.9,0.61 },2.8 },{ { 0.12,0.18,0.28 },0.5 },{ { 0.322,0.478,0.675 },3.5 },{ { 1.0,0.929,0.815 },4.7 },1};
morning[] = {16,{ { 1,0.95,0.91 },12.2 },{ { 0.12,0.18,0.28 },9.2 },{ { 1,0.95,0.91 },11.2 },{ { 0.12,0.18,0.28 },8.5 },{ { 0.14,0.18,0.24 },11.0 },{ { 0.5,0.6,0.9 },13.2 },1};
noon[] = {45,{ { 0.98,0.94,0.94 },13.8 },{ { 0.2,0.27,0.35 },10.8 },{ { 0.98,0.94,0.94 },13.8 },{ { 0.2,0.27,0.35 },10.8 },{ { 0.5,0.64,1.0 },12.0 },{ { 0.5,0.5,0.5 },14.8 },1,0.5,0.4,0.5,0.4};
};
class DayLightingRainy: DayLightingRainy //as above
{
deepNight[] = {-15,{ 0.005,0.01,0.01 },{ 0.0,0.002,0.003 },{ 0.0,0.0,0.0 },{ 0.0,0.0,0.0 },{ 0.0,0.002,0.003 },{ 0.0,0.002,0.003 },0};
fullNight[] = {-5,{ 0.023,0.023,0.023 },{ 0.02,0.02,0.02 },{ 0.023,0.023,0.023 },{ 0.02,0.02,0.02 },{ 0.01,0.01,0.02 },{ 0.08,0.06,0.06 },0};
sunMoon[] = {-3.75,{ 0.04,0.04,0.05 },{ 0.04,0.04,0.05 },{ 0.04,0.04,0.05 },{ 0.04,0.04,0.05 },{ 0.04,0.035,0.04 },{ 0.11,0.08,0.09 },0.5};
earlySun[] = {-2.5,{ 0.0689,0.0689,0.0804 },{ 0.06,0.06,0.07 },{ 0.0689,0.0689,0.0804 },{ 0.06,0.06,0.07 },{ 0.08,0.07,0.08 },{ 0.14,0.1,0.12 },0.5};
earlyMorning[] = {3,{ { 1,1,1 },"(-4)+3.95" },{ { 1,1,1 },"(-4)+3.0" },{ { 1,1,1 },"(-4)+3.95" },{ { 1,1,1 },"(-4)+3.0" },{ { 1,1,1 },"(-4)+4" },{ { 1,1,1 },"(-4)+5.5" },1};
morning[] = {16,{ { 1,1,1 },"(-4)+5.7" },{ { 1,1,1 },"(-4)+4.5" },{ { 1,1,1 },"(-4)+5.7" },{ { 1,1,1 },"(-4)+4.5" },{ { 1,1,1 },"(-4)+7" },{ { 1,1,1 },"(-4)+8" },1};
lateMorning[] = {25,{ { 1,1,1 },"(-4)+10.45" },{ { 1,1,1 },"(-4)+9.75" },{ { 1,1,1 },"(-4)+10.45" },{ { 1,1,1 },"(-4)+9.75" },{ { 1,1,1 },"(-4)+12" },{ { 1,1,1 },"(-4)+12.75" },1};
noon[] = {45,{ { 1,1,1 },10.0 },{ { 1,1,1 },9.0 },{ { 1,1,1 },9.0 },{ { 1,1,1 },8.0 },{ { 0.5,0.64,1 },12.0 },{ { 0.5,0.5,0.5 },14.8 },1};
};


class Lighting: Lighting
{
class BrightAlmost: DayLightingBrightAlmost
{
overcast = 0.0;
};
class Rainy: DayLightingRainy
{
overcast = 1.0;
};
};
class Overcast: Overcast
{
class Weather1: Weather1
{
sky = "A3\Map_Stratis\Data\sky_veryclear_sky.paa";
skyR = "A3\Map_Stratis\Data\sky_veryclear_lco.paa";
horizon = "A3\Map_Stratis\Data\sky_veryclear_horizont_sky.paa";
};
class Weather7: Weather1
{
sky = "A3\Map_Stratis\Data\sky_veryclear_sky.paa";
skyR = "A3\Map_Stratis\Data\sky_clear_lco.paa";
horizon = "A3\Map_Stratis\Data\sky_clear_horizont_sky.paa";
};
class Weather2: Weather2
{
sky = "A3\Map_Stratis\Data\sky_veryclear_sky.paa";
skyR = "A3\Map_Stratis\Data\sky_almostclear_lco.paa";
horizon = "A3\Map_Stratis\Data\sky_almostclear_horizont_sky.paa";
};
class Weather3: Weather3
{
sky = "A3\Map_Stratis\Data\sky_veryclear_sky.paa";
skyR = "A3\Map_Stratis\Data\sky_semicloudy_lco.paa";
horizon = "A3\Map_Stratis\Data\sky_semicloudy_horizont_sky.paa";
};
class Weather4: Weather4
{
sky = "A3\Map_Stratis\Data\sky_veryclear_sky.paa";
skyR = "A3\Map_Stratis\Data\sky_cloudy_lco.paa";
horizon = "A3\Map_Stratis\Data\sky_cloudy_horizont_sky.paa";
};
class Weather5: Weather5
{
sky = "A3\Map_Stratis\Data\sky_veryclear_sky.paa";
skyR = "A3\Map_Stratis\Data\sky_mostlycloudy_lco.paa";
horizon = "A3\Map_Stratis\Data\sky_mostlycloudy_horizont_sky.paa";
};
class Weather6: Weather6
{
sky = "A3\Map_Stratis\Data\sky_veryclear_sky.paa";
skyR = "A3\Map_Stratis\Data\sky_overcast_lco.paa";
horizon = "A3\Map_Stratis\Data\sky_overcast_horizont_sky.paa";
};
};
};

humidityUpCoef = 0.1;
humidityDownCoef = 0.05;

class SimulWeather
{
noiseTexture = "a3\data_f\noise_raw.paa";
numKeyframesPerDay = 48;
windSpeedCoef = "10.0f";
moonIrradianceCoef = "10.0f";
fadeMaxDistanceKm = 1000.0;
fadeMaxAltitudeKm = 15.0;
fadeNumAltitudes = 8;
fadeNumElevations = 8;
fadeNumDistances = 8;
fadeEarthTest = 1;
autoBrightness = 0;
autoBrightnessStrength = 0.1;
cloudGridWidth = 64;
cloudGridLength = 64;
cloudGridHeight = 16;
helperGridElevationSteps = 24;
helperGridAzimuthSteps = 15;
helperEffectiveEarthRadius = 160000;
helperCurvedEarth = 1;
helperAdjustCurvature = 0;
helperNumLayers = 120;
helperMaxDistance = 160000;
helperNearCloudFade = 0.1;
helperChurn = 10;
cloudWidth = 40000;
cloudLength = 40000;
wrapClouds = 1;
noiseResolution = 8;
noisePeriod = 4.0;
opticalDensity = 1.5;
alphaSharpness = 0.5;
selfShadowScale = 0.05;
mieAsymmetry = 0.87;
minimumLightElevationDegrees = 1.0;
directLightCoef = 0.25;
indirectLightCoef = 0.025;
fogStart = 0;
fogEnd = 2000;
fogHeight = 2000;
class DefaultKeyframe
{
rayleigh[] = {0.00749,0.01388,0.02878};
mie[] = {0.0046,0.0046,0.0046};
haze = 30;
hazeBaseKm = 5.0;
hazeScaleKm = 1.0;
hazeEccentricity = 1;
brightnessAdjustment = 1.0;
cloudiness = 0.6;
cloudBaseKm = 0.85;
cloudHeightKm = 8.0;
directLight = 0.4;
indirectLight = 1.0;
ambientLight = 3.0;
noiseOctaves = 5;
noisePersistence = 1.0;
fractalAmplitude = 2.8;
fractalWavelength = 190.0;
extinction = 5.0;
diffusivity = 0.001;
};
class Overcast
{
class Weather1: DefaultKeyframe
{
overcast = 0.0;
cloudiness = 0.0;
seqFileKeyframe = 0;
};
class Weather2: DefaultKeyframe
{
overcast = 0.2;
cloudiness = 0.3;
diffusivity = 0.5;
seqFileKeyframe = 0;
};
class Weather3: DefaultKeyframe
{
overcast = 0.4;
cloudiness = 0.3;
seqFileKeyframe = 3;
};
class Weather4: DefaultKeyframe
{
overcast = 0.5;
cloudiness = 0.4;
seqFileKeyframe = 4;
};
class Weather5: DefaultKeyframe
{
overcast = 0.8;
cloudiness = 0.9;
seqFileKeyframe = 5;
};
class Weather6: DefaultKeyframe
{
overcast = 1.0;
cloudiness = 1.0;
seqFileKeyframe = 7;
};
};
};

hazeDistCoef = 0.1; //??
hazeFogCoef = 0.98; //??
hazeBaseHeight = 150; //??
hazeBaseBeta0 = 6e-005; //??
hazeDensityDecay = 0.0006; //??
horizonParallaxCoef = 0.045; //??
horizonFogColorationStart = "0.8f"; //??
skyFogColorationStart = "0.7f"; //??
soundMapSizeCoef = 4; //??
satelliteNormalBlendStart = 10; //?when satellite and HD texture blend?
satelliteNormalBlendEnd = 100; //?when satellite and HD texture blend?
skyObject = "A3\Map_Stratis\data\obloha.p3d"; //skybox object, don't touch
horizontObject = "A3\Map_Stratis\data\horizont.p3d"; //??
skyTexture = "A3\Map_Stratis\data\sky_semicloudy_sky.paa"; //Not sure, because ArmA uses Simulweather, which brings it's own, dynamic sky stuff...
skyTextureR = "A3\Map_Stratis\data\sky_semicloudy_lco.paa"; //~
access = 3; //unknown, leave 3 set
worldId = 1337; //unknown, change to any number you like
cutscenes[] = {""}; //plays in main menu
description = "Kujawsko-Pomorskie, Poland"; //Shown as name when choosing Island
icon = ""; //Icon in front of Island Name
worldName = "\mpj\omaha\omaha.wrp"; //path to your WRP file
pictureMap = "A3\map_Stratis\data\pictureMap_ca.paa"; //Editor Picture
pictureShot = "A3\map_Stratis\data\ui_Stratis_ca.paa"; //Loadingscreen Picture
plateFormat = "AS$-####"; //unknown
plateLetters = "ABCDEGHIKLMNOPRSTVXZ"; //unknown
author = "Marcos P"; //Author
mapSize = 2048; //probably the same number as your terrain image size
mapZone = 35; //unknown
longitude = 18.28; //west is negative!!
latitude = -57.29; //south is positive!!
elevationOffset = 0;//raise the whole map? not sure if waterlevel changes (heightmap 23m above sea ; IRL 123m above sea ; offset 100m)
envTexture = "A3\Data_f\env_land_ca.tga"; //reflection image, you probably want to change this, so it's not greece anymore...
newRoadsShape = "\mpj\omaha\data\roads\roads.shp"; //roads file!
class OutsideTerrain //so-called "Debug" area of ArmA
{
satellite = "A3\map_Stratis\data\s_satout_co.paa";
enableTerrainSynth = 0;
class Layers
{
class Layer0
{
nopx = "A3\Map_Data\gdt_grass_green_nopx.paa";
texture = "A3\Map_Data\gdt_grass_green_co.paa";
};
};
colorOutside[] = {0.294118,0.333333,0.372549,1};
};
class Grid: Grid
{
offsetX = 0; //grid offset from maps edges
offsetY = 8192;
class Zoom1 //Different Grid When Zooming in/out
{
zoomMax = 0.2; //Very Zoomed In
format = "XY";
formatX = "000"; //Shown on border of map, to determine grid (can also be Aaa)
formatY = "000"; //Shown on border of map, to determine grid (can also be Aaa)
stepX = 100; //100m Grid?
stepY = -100; //100m grid?
};
class Zoom2
{
zoomMax = 0.95; //Zoomed in a little
format = "XY";
formatX = "00"; //Shown on border of map, to determine grid (can also be Aa)
formatY = "00"; //Shown on border of map, to determine grid (can also be Aa)
stepX = 1000; //1km grid?
stepY = -1000; //1km grid?
};
class Zoom3
{
zoomMax = 1e+030; //completely zoomed out
format = "XY";
formatX = "0"; //Shown on border of map, to determine grid (can also be A)
formatY = "0"; //Shown on border of map, to determine grid (can also be A)
stepX = 10000; //10km grid?
stepY = -10000; //10km grid?
};
};
startTime = "12:00"; //Time set when you load this Island in Editor
startDate = "6/7/2035"; //Date set when you load this Island in Editor
centerPosition[] = {2500,5650,1024}; //where the editor focuses on when you start the map (probably)
seagullPos[] = {1024,150.0,1024}; //if player respawns as seagull??
drawTaxiway = 1;
ilsPosition[] = {15761,30855}; //Airport position
ilsDirection[] = {0.34,0.08,0.76}; //Airport "rotation"
ilsTaxiOff[] = {14855,30855,14834,27951,15025,27784,15480,27747,15600,27910,15646,28136}; //Taxiway Waypoints when Landing
ilsTaxiIn[] = {15606,29017,15520,29145,15391,29201,15275,29204,15081,29176,14855,30855}; //Taxiway Waypoints when Taking Off
class ReplaceObjects{};//??
class Sounds//??
{
sounds[] = {};
};
class Animation//??
{
vehicles[] = {};
};
clutterGrid = 1.5; //not sure, I think lower number needs better pc, just don't touch
clutterDist = 125; //Max Distance to see grass (in meters)
noDetailDist = 65; //not quite sure
fullDetailDist = 15; //probably how far you see HD ground textures
midDetailTexture = "A3\Map_Data\middle_mco.paa"; //I'd just leave it
minTreesInForestSquare = 4;//??
minRocksInRockSquare = 4;//??

class Subdivision //Subdivision of Terrain Mesh (https://sites.google.com/site/islandconfigs/cfgworlds-overview/cfgworlds-subdivision-ambient)
{
class Fractal
{
rougness = 5; //texture roughness factor
maxRoad = 0.02; //max. value for squares containing road
maxTrack = 0.5; //max. value for squares containing track
maxSlopeFactor = 0.05;//max. coeficient depending on slope
};
class WhiteNoise
{
rougness = 2;
maxRoad = 0.01;
maxTrack = 0.05;
maxSlopeFactor = 0.0025;
};
minY = -0.0;//do not divide surfaces that are under given limit
minSlope = 0.02;//do not divide flat surfaces
};

class Ambient{}; //useless in A3 I guess, leave in just in case
class AmbientA3 //basically where animals etc. show up (https://sites.google.com/site/islandconfigs/cfgworlds-overview/cfgworlds-subdivision-ambient)
{
maxCost = 500;
class Radius440_500
{
areaSpawnRadius = 440.0;
areaMaxRadius = 500.0;
spawnCircleRadius = 30.0;
spawnInterval = 4.7;
class Species
{
class Kestrel_random_F
{
maxCircleCount = "((1 - night) * 2 * (1 - (WaterDepth interpolate [1,30,0,1])) + (2 * (hills))) * (1 - night)";
maxWorldCount = 4;
cost = 3;
spawnCount = 1;
groupSpawnRadius = 10;
maxAlt = 200;
minAlt = -10;
};
class Seagull
{
maxCircleCount = "((sea * (1 - night)) + (2 * houses * sea)) * (1 - night)";
maxWorldCount = 8;
cost = 3;
spawnCount = 1;
groupSpawnRadius = 10;
maxAlt = 200;
minAlt = -10;
};
class Rabbit_F
{
maxCircleCount = "(20 * (0.1 - houses)) * (1 - sea)";
maxWorldCount = 4;
cost = 5;
spawnCount = 1;
groupSpawnRadius = 10;
maxAlt = 80;
minAlt = -5;
};
};
};
class Radius40_60
{
areaSpawnRadius = 50.0;
areaMaxRadius = 83.0;
spawnCircleRadius = 10.0;
spawnInterval = 1.5;
class Species
{
class CatShark_F
{
maxCircleCount = "(4 * (WaterDepth interpolate [1,30,0,1]))";
maxWorldCount = 10;
cost = 6;
spawnCount = 1;
groupSpawnRadius = 10;
maxAlt = 10;
minAlt = -80;
};
class Turtle_F
{
maxCircleCount = "(2 * (waterDepth interpolate [1,16,0,1]) * ((1-houses) * (1-houses)))";
maxWorldCount = 6;
cost = 5;
spawnCount = 1;
groupSpawnRadius = 10;
maxAlt = 10;
minAlt = -80;
};
class Snake_random_F
{
maxCircleCount = "(1 - houses) * ((2 * (1 - sea)) + (2 * (meadow)))";
maxWorldCount = 3;
cost = 5;
spawnCount = 1;
groupSpawnRadius = 5;
maxAlt = 40;
minAlt = -5;
};
class Salema_F
{
maxCircleCount = "(12 * ((WaterDepth interpolate [1,30,0,1]) + 0.07))";
maxWorldCount = 40;
cost = 5;
spawnCount = 2;
groupSpawnRadius = 5;
maxAlt = 10;
minAlt = -80;
};
class Ornate_random_F
{
maxCircleCount = "(12 * ((WaterDepth interpolate [1,30,0,1]) + 0.05))";
maxWorldCount = 30;
cost = 5;
spawnCount = 3;
groupSpawnRadius = 5;
maxAlt = 10;
minAlt = -80;
};
class Mackerel_F
{
maxCircleCount = "(8 * ((WaterDepth interpolate [1,30,0,1]) + 0.07))";
maxWorldCount = 14;
cost = 5;
spawnCount = 2;
groupSpawnRadius = 5;
maxAlt = 10;
minAlt = -80;
};
class Mullet_F
{
maxCircleCount = "(8 * ((WaterDepth interpolate [1,30,0,1]) + 0.07))";
maxWorldCount = 14;
cost = 5;
spawnCount = 2;
groupSpawnRadius = 5;
maxAlt = 10;
minAlt = -80;
};
class Tuna_F
{
maxCircleCount = "(8 * ((WaterDepth interpolate [1,30,0,1]) - 0.2))";
maxWorldCount = 10;
cost = 5;
spawnCount = 2;
groupSpawnRadius = 5;
maxAlt = 10;
minAlt = -80;
};
};
};
class Radius30_40
{
areaSpawnRadius = 30.0;
areaMaxRadius = 40.0;
spawnCircleRadius = 3.0;
spawnInterval = 3.75;
class Species
{
class DragonFly
{
maxCircleCount = "4 * (1 - night) * (1 - (WaterDepth interpolate [1,30,0,1])) * sea * (1 - windy)";
maxWorldCount = 4;
cost = 1;
spawnCount = 1;
groupSpawnRadius = 1;
maxAlt = 30;
minAlt = -5;
};
class ButterFly_random
{
maxCircleCount = "3 * (1 - night) * (1 - (WaterDepth interpolate [1,30,0,1])) * (1 - windy)";
maxWorldCount = 6;
cost = 1;
spawnCount = 3;
groupSpawnRadius = 1;
maxAlt = 30;
minAlt = -5;
};
class FireFly
{
maxCircleCount = "(6 * night) * (1 - sea) * (1 - houses) * (1 - windy)";
maxWorldCount = 20;
cost = 1;
spawnCount = 3;
groupSpawnRadius = 3;
maxAlt = 30;
minAlt = -5;
};
class Cicada
{
maxCircleCount = "(4 * night) * (1 - sea) * (1 - windy)";
maxWorldCount = 6;
cost = 1;
spawnCount = 3;
groupSpawnRadius = 3;
maxAlt = 30;
minAlt = -5;
};
};
};
class Radius15_20
{
areaSpawnRadius = 15.0;
areaMaxRadius = 20.0;
spawnCircleRadius = 2.0;
spawnInterval = 2.85;
class Species
{
class FxWindGrass1
{
maxCircleCount = "2 * (1 - (WaterDepth interpolate [1,30,0,1])) * (windy interpolate [0.1,0.25,0,1])";
maxWorldCount = 3;
cost = 1;
spawnCount = 3;
groupSpawnRadius = 2.5;
maxAlt = 30;
minAlt = -5;
};
class FxWindGrass2
{
maxCircleCount = "2 * (1 - (WaterDepth interpolate [1,30,0,1])) * (windy interpolate [0.1,0.25,0,1])";
maxWorldCount = 3;
cost = 1;
spawnCount = 3;
groupSpawnRadius = 2.5;
maxAlt = 30;
minAlt = -5;
};
class FxWindLeaf1
{
maxCircleCount = "2 * (trees + 0.5) * (windy interpolate [0.1,0.25,0,1])";
maxWorldCount = 3;
cost = 1;
spawnCount = 3;
groupSpawnRadius = 2.5;
maxAlt = 30;
minAlt = -5;
};
class FxWindLeaf2
{
maxCircleCount = "2 * (trees + 0.5) * (windy interpolate [0.1,0.25,0,1])";
maxWorldCount = 3;
cost = 1;
spawnCount = 3;
groupSpawnRadius = 2.5;
maxAlt = 30;
minAlt = -5;
};
class FxWindLeaf3
{
maxCircleCount = "2 * (trees + 0.5) * (windy interpolate [0.1,0.25,0,1])";
maxWorldCount = 3;
cost = 1;
spawnCount = 3;
groupSpawnRadius = 2.5;
maxAlt = 30;
minAlt = -5;
};
class FxWindPollen1
{
maxCircleCount = "(3 * (1 - (WaterDepth interpolate [1,30,0,1]))) * (windy interpolate [0.05,0.15,0,1])";
maxWorldCount = 6;
cost = 1;
spawnCount = 1;
groupSpawnRadius = 1;
maxAlt = 30;
minAlt = -5;
};
class FxWindPaper1
{
maxCircleCount = "(4 * (1 - (WaterDepth interpolate [1,30,0,1])) * houses) * windy";
maxWorldCount = 2;
cost = 1;
spawnCount = 1;
groupSpawnRadius = 1;
maxAlt = 30;
minAlt = -5;
};
class FxWindPlastic1
{
maxCircleCount = "(4 * (1 - (WaterDepth interpolate [1,30,0,1])) * houses) * windy";
maxWorldCount = 2;
cost = 1;
spawnCount = 1;
groupSpawnRadius = 1;
maxAlt = 30;
minAlt = -5;
};
};
};
class Radius6_10
{
areaSpawnRadius = 6.0;
areaMaxRadius = 10.0;
spawnCircleRadius = 1.0;
spawnInterval = 0.1;
class Species
{
class HoneyBee
{
maxCircleCount = "4 * (1 - night) * (1 - sea) * (1 - houses) * (1 - windy)";
maxWorldCount = 8;
cost = 1;
spawnCount = 1;
groupSpawnRadius = 1;
maxAlt = 30;
minAlt = -5;
};
class HouseFly
{
maxCircleCount = "(3 + 3 * (houses)) * (1 - night) * (1 - (WaterDepth interpolate [1,30,0,1])) * (1 - windy)";
maxWorldCount = 10;
cost = 1;
spawnCount = 3;
groupSpawnRadius = 1;
maxAlt = 30;
minAlt = -5;
};
class Mosquito
{
maxCircleCount = "3 * (1 - (WaterDepth interpolate [1,30,0,1])) * (1 - windy)";
maxWorldCount = 2;
cost = 1;
spawnCount = 1;
groupSpawnRadius = 1;
maxAlt = 30;
minAlt = -5;
};
};
};
};

#include "cfgClutter.hpp"

class Names //City Names
{
#include "omaha.hpp"
};

safePositionAnchor[] = {3874.47,4093.64}; //??
safePositionRadius = 1900; //??
loadingTexts[] = {"Poland, always Poland", "Russia is here...again"}; //Loading Texts
};
initWorld = "mpj_poland";//??
demoWorld = "mpj_Poland";//??
};
class CfgWorldList//??
{
class mpj_poland{};
};
//};
#include "cfgSurfaces.hpp"



Layers Cfg

class Layers
{
class grass_green
{
texture = #(rgb,1,1,1)color(0.5,0.5,0.5,1,cdt)
material = "mpj\omaha\data\mpj_grass_green.rvmat";
};
class mud
{
texture = #(rgb,1,1,1)color(0.5,0.5,0.5,1,cdt)
material = "mpj\omaha\data\mpj_mud.rvmat";
};
class pine
{
texture = #(rgb,1,1,1)color(0.5,0.5,0.5,1,cdt)
material = "mpj\omaha\data\mpj_forest_pine.rvmat";
};
class wild_grass
{
texture = #(rgb,1,1,1)color(0.5,0.5,0.5,1,cdt)
material = "mpj\omaha\data\mpj_wild_grass.rvmat";
};
class soil
{
texture = #(rgb,1,1,1)color(0.5,0.5,0.5,1,cdt)
material = "mpj\omaha\data\mpj_soil.rvmat";
};
};

class Legend
{
picture="mpj\omaha\source\mapLegend.png";
class Colors
{
grass_green[]={{0,255,0}};
mud[]={{255,255,0}};
pine[]={{255,0,0}};
wild_grass[]={{0,0,255}};
soil[]={{255,0,255}};
};
};



Clutter Cfg

class Clutter
{
class cmpj_Grass_Green: DefaultClutter
{
model = "A3\plants_f\Clutter\c_StrGrassGreen_group.p3d";
affectedByWind = 0.6;
swLighting = "true";
scaleMin = 0.7;
scaleMax = 1.0;
};
class cmpj_Flower1: DefaultClutter
{
model = "A3\plants_f\Clutter\c_Flower_Medium_White1.p3d";
affectedByWind = 0.6;
swLighting = "true";
scaleMin = 0.7;
scaleMax = 1.0;
};
};


 
And CfgSurfaces 

class CfgSurfaces
{
class Default {};
class cmpj_grass_green_surface : Default
{
files = "MPJ_grass_green*";
rough = 0.1;
dust = 0.05;
maxSpeedCoef = 0.8;
soundEnviron = "grass";
character = "grass_green_Character";
soundHit = "soft_ground";
};
class cmpj_forest_pine_surface : Default
{
files = "MPJ_forest_pine*";
rough = 0.1;
dust = 0.05;
maxSpeedCoef = 0.8;
soundEnviron = "grass";
character = "forest_pine_Character";
soundHit = "soft_ground";
};
class cmpj_mud_surface : Default
{
files = "MPJ_mud*";
rough = 0.1;
dust = 0.05;
maxSpeedCoef = 0.8;
soundEnviron = "grass";
character = "mud_Character";
soundHit = "soft_ground";
};
class cmpj_soil_surface : Default
{
files = "MPJ_soil*";
rough = 0.1;
dust = 0.05;
maxSpeedCoef = 0.8;
soundEnviron = "grass";
character = "soil_Character";
soundHit = "soft_ground";
};
class cmpj_wild_grass_surface : Default
{
files = "MPJ_wild_grass*";
rough = 0.1;
dust = 0.05;
maxSpeedCoef = 0.8;
soundEnviron = "grass";
character = "wild_grass_Character";
soundHit = "soft_ground";
};

};

class CfgSurfaceCharacters
{
class grass_green_Character
{
probability[]={0.64, 0.25};
names[]={"cmpj_Grass_Green","cmpj_Flower1"};
};
class forest_pine_Character
{
probability[]={0.64, 0.25};
names[]={"cmpj_Grass_Green","cmpj_Flower1"};
};
class mud_Character
{
probability[]={0.47, 0.25};
names[]={"cmpj_Grass_Green","cmpj_Flower1"};
};
class soil_Character
{
probability[]={0.64, 0.25};
names[]={"cmpj_Grass_Green","cmpj_Flower1"};
};
class wild_grass_Character
{
probability[]={0.44, 0.25};
names[]={"cmpj_Grass_Green","cmpj_Flower1"};
};
};




Again... english is not my native language so sorry for any mistake i made writting this... I really learn all from video games.

Anyway, seven hours since i start looking for a solution... no sucess.

So, any help would be most welcome... 


 

Share this post


Link to post
Share on other sites

In your cfgSurfaces you use capitals, in your layers.cfg you use lowercase, example :

 

mpj\omaha\data\mpj_mud.rvmat

 

files = "MPJ_mud*";

 

Try it and see :)

  • Like 1

Share this post


Link to post
Share on other sites

In your cfgSurfaces you use capitals, in your layers.cfg you use lowercase, example :

 

mpj\omaha\data\mpj_mud.rvmat

 

files = "MPJ_mud*";

 

Try it and see :)

Oh! what another pair of eyes can do! uahuahauha

 
As I said before "Removed all capital letters in the directory names and directories, files and paths." This was one of the first changes I made ... then I looked at the file for seven hours and did not notice this error, and probably would not notice him alone ... so thank you !! It is now finally working.

I just can not express how grateful I am. So thanks again!

Share this post


Link to post
Share on other sites

Happy to help, good luck with your terrain project :)

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×