Search the Community
Showing results for tags 'grid'.
Found 4 results
-
[Release] Collapsed Pattern Generator
mrcurry posted a topic in ARMA 3 - MISSION EDITING & SCRIPTING
I had need of a way to make new decent looking defenses for anti-air and artillery sites on the fly. So I wrote a little tile layer, called it CPG, and realized someone else might find this useful so here we are. What does CPG do? It takes a predefined set of tiles and lays them in an organic-looking pattern according to the connection rules of the tiles. It provides functions for the mission maker to easily create and edit tilesets as well as spawn patterns made from those tilesets in both the 3DEN editor as well as during mission runtime. The TL;DR is it makes this happen: How does it work? Tilesets are defined in the editor and exported to memory and/or .sqf-file. Tiles come in a limited number of types related to how they may connect. Each type can have multiple variants of which 1 is randomly selected on generation of each tile. A funky hybrid of BFS and Wave Function Collapse algorithm generates a grid and places the tiles according to the connection rules. How do I use it? First see installation steps below. Once installed you can activate the generator by calling CPG_fnc_generate (See below spoiler for examples). The "generate" function differentiates between 3DEN and mission runtime and spawns the objects appropriately. Installation Download the demo mission: https://www.dropbox.com/s/b5gzyv4q3im0tcu/CPG_demo_v1_1.zip?dl=0 Copy the CPG folder to your mission. In your description.ext > CgFunctions class include the file "CPG\functions.ext" like so: class CfgFunctions { #include "CPG\functions.ext" }; Creating your own tileset Here's a quick guide how to create your own tilesets for the generator: If you do create your own tilesets and feel like sharing please post them to this thread. 🙂 Old releases: v1.0 - https://www.dropbox.com/s/e8p4n46cvp5acb4/CPG_demo_v1_0.zip?dl=0- 4 replies
-
- 8
-
- fortifications
- generator
-
(and 5 more)
Tagged with:
-
Hey everyone, Does anyone know how to find the terrain cell size ingame? I didn't find any related value in the config. The only thing listed in the config is the mapSize, which is useless. This page lists the cell sizes for most A3 maps by Bohemia: https://pmc.editing.wiki/doku.php?id=arma3:terrain:grid-cell-size
-
Hello, I post this message after many search, and after lot of tries to resolve my problem myself, after 3 days i'm again in trouble. Problem : I have only 3 textures on my layer.cfg but i can't show all textures, only 2 textures are showing in game or in Buldozer... i think a grid problem, or a number of texture by cell problem, but i'm not good enough for solve this problem at this time. In this case : - gdt_beach texture are in RGB Red in my MASK and she is in game - h2a_drygrass texture are in the rest of the map and h2a_weed are not showed Technical Infos : Logs : ===================================================================== == D:\Program Files (x86)\Steam\steamapps\common\Arma 3 Tools\TerrainBuilder\TerrainBuilder.exe == "D:\Program Files (x86)\Steam\steamapps\common\Arma 3 Tools\TerrainBuilder\TerrainBuilder.exe" Exe timestamp: 2017/11/15 18:34:49 Current time: 2018/05/13 14:06:15 Type: Public Version: 140800 ===================================================================== Application initialization finished. Layer 'default' successfully loaded. Repair tool - Operation DONE in (0.0 s)! All layers seem to be valid. Warning: surface mask tile "M_000_000_lco.png" - found 51 materials (4 allowed) Warning: surface mask tile "M_001_000_lco.png" - found 51 materials (4 allowed) Warning: surface mask tile "M_002_000_lco.png" - found 51 materials (4 allowed) Warning: surface mask tile "M_005_000_lco.png" - found 41 materials (4 allowed) Warning: surface mask tile "M_006_000_lco.png" - found 49 materials (4 allowed) Warning: surface mask tile "M_007_000_lco.png" - found 34 materials (4 allowed) Warning: surface mask tile "M_008_000_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_009_000_lco.png" - found 69 materials (4 allowed) Warning: surface mask tile "M_010_000_lco.png" - found 139 materials (4 allowed) Warning: surface mask tile "M_011_000_lco.png" - found 98 materials (4 allowed) Warning: surface mask tile "M_012_000_lco.png" - found 44 materials (4 allowed) Warning: surface mask tile "M_001_001_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_002_001_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_005_001_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_006_001_lco.png" - found 51 materials (4 allowed) Warning: surface mask tile "M_007_001_lco.png" - found 51 materials (4 allowed) Warning: surface mask tile "M_008_001_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_011_001_lco.png" - found 141 materials (4 allowed) Warning: surface mask tile "M_012_001_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_000_002_lco.png" - found 43 materials (4 allowed) Warning: surface mask tile "M_005_002_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_006_002_lco.png" - found 51 materials (4 allowed) Warning: surface mask tile "M_007_002_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_008_002_lco.png" - found 51 materials (4 allowed) Warning: surface mask tile "M_009_002_lco.png" - found 192 materials (4 allowed) Warning: surface mask tile "M_010_002_lco.png" - found 137 materials (4 allowed) Warning: surface mask tile "M_011_002_lco.png" - found 130 materials (4 allowed) Warning: surface mask tile "M_012_002_lco.png" - found 41 materials (4 allowed) Warning: surface mask tile "M_000_003_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_004_003_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_005_003_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_006_003_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_007_003_lco.png" - found 51 materials (4 allowed) Warning: surface mask tile "M_008_003_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_009_003_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_010_003_lco.png" - found 203 materials (4 allowed) Warning: surface mask tile "M_011_003_lco.png" - found 194 materials (4 allowed) Warning: surface mask tile "M_012_003_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_005_004_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_006_004_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_007_004_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_008_004_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_009_004_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_010_004_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_000_005_lco.png" - found 37 materials (4 allowed) Warning: surface mask tile "M_003_005_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_004_005_lco.png" - found 51 materials (4 allowed) Warning: surface mask tile "M_005_005_lco.png" - found 44 materials (4 allowed) Warning: surface mask tile "M_006_005_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_008_005_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_009_005_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_010_005_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_000_006_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_001_006_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_002_006_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_003_006_lco.png" - found 51 materials (4 allowed) Warning: surface mask tile "M_004_006_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_005_006_lco.png" - found 51 materials (4 allowed) Warning: surface mask tile "M_006_006_lco.png" - found 51 materials (4 allowed) Warning: surface mask tile "M_007_006_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_008_006_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_009_006_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_010_006_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_000_007_lco.png" - found 49 materials (4 allowed) Warning: surface mask tile "M_001_007_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_002_007_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_003_007_lco.png" - found 51 materials (4 allowed) Warning: surface mask tile "M_005_007_lco.png" - found 62 materials (4 allowed) Warning: surface mask tile "M_006_007_lco.png" - found 51 materials (4 allowed) Warning: surface mask tile "M_007_007_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_008_007_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_009_007_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_011_007_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_012_007_lco.png" - found 50 materials (4 allowed) Warning: surface mask tile "M_000_008_lco.png" - found 51 materials (4 allowed) Warning: surface mask tile "M_001_008_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_002_008_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_003_008_lco.png" - found 51 materials (4 allowed) Warning: surface mask tile "M_004_008_lco.png" - found 125 materials (4 allowed) Warning: surface mask tile "M_005_008_lco.png" - found 102 materials (4 allowed) Warning: surface mask tile "M_008_008_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_009_008_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_010_008_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_011_008_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_012_008_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_000_009_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_001_009_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_002_009_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_003_009_lco.png" - found 46 materials (4 allowed) Warning: surface mask tile "M_004_009_lco.png" - found 51 materials (4 allowed) Warning: surface mask tile "M_008_009_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_009_009_lco.png" - found 51 materials (4 allowed) Warning: surface mask tile "M_010_009_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_011_009_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_012_009_lco.png" - found 9 materials (4 allowed) Warning: surface mask tile "M_000_010_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_001_010_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_002_010_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_003_010_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_004_010_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_005_010_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_008_010_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_009_010_lco.png" - found 51 materials (4 allowed) Warning: surface mask tile "M_010_010_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_011_010_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_000_011_lco.png" - found 42 materials (4 allowed) Warning: surface mask tile "M_001_011_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_002_011_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_005_011_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_006_011_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_007_011_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_008_011_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_009_011_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_012_011_lco.png" - found 49 materials (4 allowed) Warning: surface mask tile "M_000_012_lco.png" - found 51 materials (4 allowed) Warning: surface mask tile "M_001_012_lco.png" - found 43 materials (4 allowed) Warning: surface mask tile "M_002_012_lco.png" - found 50 materials (4 allowed) Warning: surface mask tile "M_004_012_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_005_012_lco.png" - found 44 materials (4 allowed) Warning: surface mask tile "M_006_012_lco.png" - found 50 materials (4 allowed) Warning: surface mask tile "M_007_012_lco.png" - found 49 materials (4 allowed) Warning: surface mask tile "M_008_012_lco.png" - found 26 materials (4 allowed) Warning: surface mask tile "M_009_012_lco.png" - found 50 materials (4 allowed) Warning: surface mask tile "M_010_012_lco.png" - found 48 materials (4 allowed) Warning: surface mask tile "M_011_012_lco.png" - found 74 materials (4 allowed) Warning: surface mask tile "M_012_012_lco.png" - found 47 materials (4 allowed) Debugger info - (func: CV4WGridImporter::LoadV4wGrid(45)) [AssertNoDlg] MainThread=10840 istream.good() WRP Creator - Export of file "P:\h2a\h2a_north_america_nightmare\h2a_north_america_nightmare.wrp" successfully completed. Map size: width = 1024, height = 1024 0 objects placed on map. Application deinitialization. Application deinitialization finished. File : layers.cfg class Layers { class h2a_drygrass { texture = "h2a\h2a_north_america_nightmare\data\h2a_drygrass_co.paa"; material = "h2a\h2a_north_america_nightmare\data\h2a_drygrass.rvmat"; }; class h2a_weed { texture = "h2a\h2a_north_america_nightmare\data\h2a_weed_co.paa"; material = "h2a\h2a_north_america_nightmare\data\h2a_weed.rvmat"; }; class gdt_beach { texture = "h2a\h2a_north_america_nightmare\data\gdt_beach_co.paa"; material = "h2a\h2a_north_america_nightmare\data\gdt_beach.rvmat"; }; }; class Legend { picture = "h2a\h2a_north_america_nightmare\source\mapLegend.png"; class Colors { h2a_weed = = {{0,255,0}}; h2a_drygrass[] = {{255,0,0}}; gdt_beach[] = {{0,0,255}}; }; }; Img : data folder File : gdt_beach.rvmat ambient[]={1,1,1,1}; diffuse[]={0.25,0.25,0.25,1}; forcedDiffuse[]={0,0,0,0}; emmisive[]={0,0,0,0}; specular[]={0,0,0,0}; specularPower=10; PixelShaderID="NormalMapDiffuse"; VertexShaderID="NormalMapDiffuseAlpha"; class Stage1 { texture="h2a\h2a_north_america_nightmare\data\gdt_beach_nopx.paa"; uvSource="tex"; class uvTransform { aside[]={6,0,0}; up[]={0,6,0}; dir[]={0,0,0}; pos[]={0,0,0}; }; }; class Stage2 { texture="h2a\h2a_north_america_nightmare\data\gdt_beach_co.paa"; uvSource="tex"; class uvTransform { aside[]={6,0,0}; up[]={0,6,0}; dir[]={0,0,0}; pos[]={0,0,0}; }; }; File : h2a_drygrass.rvmat ambient[]={1,1,1,1}; diffuse[]={0.25,0.25,0.25,1}; forcedDiffuse[]={0,0,0,0}; emmisive[]={0,0,0,0}; specular[]={0,0,0,0}; specularPower=10; PixelShaderID="NormalMapDiffuse"; VertexShaderID="NormalMapDiffuseAlpha"; class Stage1 { texture="h2a\h2a_north_america_nightmare\data\h2a_drygrass_nopx.paa"; uvSource="tex"; class uvTransform { aside[]={6,0,0}; up[]={0,6,0}; dir[]={0,0,0}; pos[]={0,0,0}; }; }; class Stage2 { texture="h2a\h2a_north_america_nightmare\data\h2a_drygrass_co.paa"; uvSource="tex"; class uvTransform { aside[]={6,0,0}; up[]={0,6,0}; dir[]={0,0,0}; pos[]={0,0,0}; }; }; File : h2a_weed.rvmat ambient[]={1,1,1,1}; diffuse[]={0.25,0.25,0.25,1}; forcedDiffuse[]={0,0,0,0}; emmisive[]={0,0,0,0}; specular[]={0,0,0,0}; specularPower=10; PixelShaderID="NormalMapDiffuse"; VertexShaderID="NormalMapDiffuseAlpha"; class Stage1 { texture="h2a\h2a_north_america_nightmare\data\h2a_weed_nopx.paa"; uvSource="tex"; class uvTransform { aside[]={6,0,0}; up[]={0,6,0}; dir[]={0,0,0}; pos[]={0,0,0}; }; }; class Stage2 { texture="h2a\h2a_north_america_nightmare\data\h2a_weed_co.paa"; uvSource="tex"; class uvTransform { aside[]={6,0,0}; up[]={0,6,0}; dir[]={0,0,0}; pos[]={0,0,0}; }; }; File : config.cpp class CfgPatches { class h2a_north_america_nightmare { units[] = {}; weapons[] = {}; requiredVersion = 0.1; fileName = "h2a_north_america_nightmare.pbo"; author = "Hellmaker2a"; requiredAddons[] = {"A3_Data_F","A3_Roads_F","A3_Structures_F","A3_Map_Data"}; }; }; class CfgVehicles{}; class CfgWorlds { class DefaultWorld { class Weather { class Overcast; }; }; class CAWorld: DefaultWorld { class DayLightingBrightAlmost; class DayLightingRainy; class Lighting; class Weather: Weather { #include "config\LightingNew.hpp" #include "config\Overcast.hpp" }; }; class Altis: CAWorld { class Grid; class DefaultClutter; }; class h2a_north_america_nightmare: Altis { #include "config\Lighting.hpp" #include "config\DayLightingBrightAlmost.hpp" #include "config\DayLightingRainy.hpp" cutscenes[] = {}; description = "North-America Nightmare"; worldName = "h2a\h2a_north_america_nightmare\h2a_north_america_nightmare.wrp"; startTime = "06:00"; startDate = "21/08/2014"; startWeather = 0.2; startFog = 0.0; fogBeta0Min = 0.0; fogBeta0Max = 0.02; forecastWeather = 0.6; forecastFog = 0.0; centerPosition[] = {3072,3072,500}; seagullPos[] = {3072,30720,500}; longitude = 65; latitude = -34; elevationOffset = 0; envTexture = "A3\Data_f\env_land_ca.paa"; //midDetailTexture = "h2a_north_america_nightmare\data\av_middle_mco.paa"; minTreesInForestSquare = 2; minRocksInRockSquare = 2; //pictureMap = "\h2a_north_america_nightmare\data\pictureMap_ca.paa"; //pictureShot = "\h2a_north_america_nightmare\data\ui_Schultz_ca.paa"; plateFormat = "A#$-####"; plateLetters = "ABCDEGHIKLMNOPRSTVXZ"; author = "Hellmaker2a"; newRoadsShape = "\h2a\h2a_north_america_nightmare\data\roads\roads.shp"; ilsPosition[] = {}; ilsDirection[] = {}; ilsTaxiIn[] = {}; ilsTaxiOff[] = {}; drawTaxiway = 0; loadingTexts[] = {North-America Nightmare by Hellmaker2a}; #include "config\OutsideTerrain.hpp" class SecondaryAirports{}; #include "config\Sea.hpp" #include "config\Underwater.hpp" #include "config\SeaWaterShaderPars.hpp" #include "config\Grid.hpp" #include "config\Clutter.hpp" class Ambient{}; class AmbientA3 { maxCost = 500; class Radius440_500 { areaSpawnRadius = 440.0; areaMaxRadius = 500.0; spawnCircleRadius = 30.0; spawnInterval = 4.7; #include "config\Species_440_500.hpp" }; class Radius40_60 { areaSpawnRadius = 50.0; areaMaxRadius = 83.0; spawnCircleRadius = 10.0; spawnInterval = 1.5; #include "config\Species_40_60.hpp" }; class Radius30_40 { areaSpawnRadius = 30.0; areaMaxRadius = 40.0; spawnCircleRadius = 3.0; spawnInterval = 3.75; #include "config\Species_30_40.hpp" }; class Radius15_20 { areaSpawnRadius = 15.0; areaMaxRadius = 20.0; spawnCircleRadius = 2.0; spawnInterval = 2.85; #include "config\Species_15_20.hpp" }; class Radius6_10 { areaSpawnRadius = 6.0; areaMaxRadius = 10.0; spawnCircleRadius = 1.0; spawnInterval = 0.1; #include "config\Species_06_10.hpp" }; }; class Names { #include "h2a_north_america_nightmare.hpp" }; }; }; class CfgWorldList { class h2a_north_america_nightmare{}; }; class CfgMissions { class Cutscenes{}; }; #include "config\CfgSurfaces.hpp" #include "config\CfgSurfaceCharacters.hpp" File config/CfgSurfaceCharacters.hpp class CfgSurfaceCharacters { class H2AWildGrassClutter { probability[] = {0.4,0.2,0.3,0.07,0.02,0.01}; names[] = {"GrassTall","AutumnFlowers","GrassBunch","GrassCrooked","WeedDead","WeedDeadSmall"}; }; }; File : config/CfgSurfaces.hpp class CfgSurfaces { class Default{}; class Water{}; class H2AWeed: Default //ok { files = "h2a_weed_*"; rough = 0.08; maxSpeedCoef = 0.9; dust = 0.15; lucidity = 4; grassCover = 0.05; soundEnviron = "grass"; character = "H2AWildGrassClutter"; soundHit = "soft_ground"; }; }; File : config/Clutter.hpp class clutter { class GrassTall: DefaultClutter { model = "a3\plants_f\Clutter\c_Grass_Tall_Dead.p3d"; affectedByWind = 0.4; swLighting = 1; scaleMin = 0.7; scaleMax = 1.0; }; class AutumnFlowers: DefaultClutter { model = "a3\plants_f\Clutter\c_Flower_Medium_White2.p3d"; affectedByWind = 0.4; swLighting = 1; scaleMin = 0.7; scaleMax = 1.0; }; class GrassBunch: DefaultClutter { model = "a3\plants_f\Clutter\c_Grass_Bunch_Small.p3d"; affectedByWind = 0.35; swLighting = 1; scaleMin = 0.2; scaleMax = 0.6; }; class GrassCrooked: DefaultClutter { model = "a3\plants_f\Clutter\c_GrassCrooked.p3d"; affectedByWind = 0.3; swLighting = 1; scaleMin = 0.4; scaleMax = 0.8; }; class WeedDead: DefaultClutter { model = "a3\plants_f\Clutter\c_GrassDead_Tuft_Stony.p3d"; affectedByWind = 0.3; swLighting = 1; scaleMin = 0.75; scaleMax = 1.1; }; class WeedDeadSmall: DefaultClutter { model = "a3\plants_f\Clutter\c_GrassLong_DryBunch.p3d"; affectedByWind = 0.3; swLighting = 1; scaleMin = 0.75; scaleMax = 0.9; }; }; Any suggestion to solve this problem ? thanks in advance !
-
Everytime i try to load my terrain ingame I get the following error: Picture This is my config Here are my sampling settings I also don't have any objects placed at all on the terrain, which is weird. If anyone has any idea on how to fix this, please let me know. :)