Administrator Jeremy Stieglitz Posted October 21, 2016 Administrator Share Posted October 21, 2016 Gonna be a bit of a rapid info dump on how Procedurally Generated ARK's (PGARK's) currently works -- will continue to flesh this out as I get more time over the weekend. Bear in mind the system is early and will be rapidly advancing, so if you use Procedurally Generated ARKs, there's always a possibility of losing your save data when the algorithms are further modified! Without further ado, here we go! How To Configure your first PGARK Launch the game, goto Play Local ARK, select "Create New Procedurally Generated ARK" in the upper-left of the Host UI, and then you can play around with all the different PGARK settings to construct an ARK to your liking. Give it unique ARK name in the lower-right, and click Host. After a long wait (this will be further optimized shortly), you'll be on your new ARK! The procedural ARK data is cached to disk so subsequent loads of it are much faster (in Saved\GenerateMapCache, which you can delete if you ever wish to clear up disk space or force regenerate the procedural data in case it becomes corrupted). You can delete existing saved Procedurally Generated ARK's (by name) in the Host UI. Furthermore, you can save multiple PGARK configurations in the Create New Procedural ARK UI, if you wish to retain them for later tweaking or to create multiple unique saved ARK's from the same configuration. Here's a really rough guide to some of the PGARK settings you can edit in the UI: VARIABLE PURPOSE VISIBLE ON UI AS... ErosionIterations Number of droplets which are used to simulate erosion Erosion Iterations GrassDensity Density of foliage in the grasslands biome Grasslands Grass Density IslandBorderCurveExp The exponent used in the curve to smoothly interpolate between island and water floor Island Border Curve JungleBiomeStart The height value at which the jungle biome start Jungle Biome Start JungleGrassDensity Foliage density in the Jungle biome Jungle Grass Density JungleTreeDensity Trees & rocks density in the jungle biome Jungle Tree Density LandscapeRadius The radius of the landscape, outside of this radius it is water (to avoid cutting the landscape by the terrain border) Landscape Radius MapSeed The seed used in the noise & random functions Map Seed MaxSawnPointHeight The maximum height of land for a spawn point to be created Max Sawn Point Height Mountain Height A multiplier for mountain height Mountain Height MountainBiomeStart The height value at which the mountain biome starts Mountain Biome Start MountainGrassDensity Foliage density in the mountain biome Mountain Grass Density Mountains Frequency The frequency of the noise used to generate mountains Mountain Frequency Mountains Slope How hard the transition is from land to mountain, the higher the value the smoother the transition (from 0 to 2) Mountain Slope MountainsTreeDensity Density of trees and rocks in the mountain biome Mountain Tree Density North/South/East/West Regions 1, 2, 3 OceanFloorLevel The height value for the ocean floor (from -1 to WaterLevel) Ocean Flool Level RedWoodGrassDensity Foliage density in the Redwood biome Redwood Grass Density RedWoodTreeDensity Density of trees and rocks in the redwood biome Redwood Tree Density RWBiomeSize The radius of the Redwood biome (from 0 to 1) Redwood Biome Size RWForestBiomeLocation The location of the redwood biome (X,Y from 0 to 1) Redwood Biome Location Shore Slope How hard the transition is from water floor to shore, the higher the value the smoother the transition (from 0 to 2) Shore Slope ShoreTreeDensity Foliage density in the shore biome Shore Tree Density SnowBiomeLocation The location of the snow biome (X,Y from 0 to 1) Snow Biome Location SnowBiomeSize The radius of the snow biome (from 0 to 1) Snow Biome Size SnowGrassDensity Foliage density in the snow biome Snow Grass Density SnowMountainGrassDensity Foliage density in the snow mountain biome Snow Mountain Grass Density SnowMountainsTreeDensity Density of trees and rocks in the snow mountain biome Snow Mountains Tree Density SnowShoreTreeDensity Density of trees and rocks in the snow shore biome Snow Shore Tree Density SnowTreeDensity Density of trees and rocks in the snow biome Snow Tree Density TerrainScaleMultiplier X,Y,Z to scale the whole terrain Terrain Scale Multiplier TreeDensity Density of trees and rocks in the grasslands biome Grasslands Tree Density Turbulence Power The power of the turbulence function used to randomly perturb the coordinates input to the noise function, to add some realism to the noise Tubulence Power UnderwaterObjectsDensity Object density in the underwater biome Underwater Objects Density Water Frequency The frequency of the noise function used to generate land/water Water Frequency WaterLevel The height value for the water surface, from (Ocean Floor level to 1) Water Level ShorelineStartOffset The distance from the water that the shoreline begins. Raise this for a shore that goes farther up to the land. ShorelineThickness The overall width of the shore. Raise this along with ShorelineStartOffset to get a thicker, larger shore. Hosting a Dedicated Server on PGARK The actual PGARK configuration is stored in your \Saved\Config\Windows (or WindowsServer or LinuxServer etc)\Game.ini file, here: [/Script/ShooterGame.ShooterGameMode] PGMapName=YourPGARK1 PGTerrainPropertiesString=MapSeed=412;LandscapeRadius=1.2;Water Frequency=11;Mountains Frequency=11;Mountains Slope=1.4;MountainsHeight=1.3;Turbulence Power=0.0125;Shore Slope=1.0;WaterLevel=-0.72;GrassDensity=1.0;JungleGrassDensity=0.02;ErosionIterations=200000;OceanFloorLevel=-1.0;SnowBiomeSize=0.3;RWBiomeSize=0.11;MountainBiomeStart=-0.55;MountainsTreeDensity=0.01;JungleBiomeStart=-0.65;IslandBorderCurveExp=4.0;MaxSawnPointHeight=0.1;SnowGrassDensity=0.25;MountainGrassDensity=0.05;SnowMountainGrassDensity=0.15;UnderwaterObjectsDensity=0.5;SnowMountainsTreeDensity=0.01;TreeDensity=0.003;JungleTreeDensity=0.66;RedWoodTreeDensity=0.35;SnowTreeDensity=1.0;RedwoodGrassDensity=0.1;ShoreTreeDensity=0.05;SnowShoreTreeDensity=0.025;DeepWaterBiomesDepth=-0.24;InlandWaterObjectsDensity=0.5;ShorelineStartOffset=0.04;ShorelineThickness=0.0045;TerrainScaleMultiplier=(X=1.0f,Y=1.0f,Z=1.0f);SnowBiomeLocation=(X=0.2f,Y=0.2f);RWForestBiomeLocation=(X=0.5f,Y=0.5f);NorthRegion1Start=(X=0.25f,Y=0.0f);NorthRegion1End=(X=0.416f,Y=0.5f);NorthRegion2Start=(X=0.416f,Y=0.0f);NorthRegion2End=(X=0.582f,Y=0.5f);NorthRegion3Start=(X=0.582f,Y=0.0f);NorthRegion3End=(X=0.75f,Y=0.0f);SouthRegion1Start=(X=0.25f,Y=0.5f);SouthRegion1End=(X=0.416f,Y=1.0f);SouthRegion2Start=(X=0.416f,Y=0.5f);SouthRegion2End=(X=0.582f,Y=1.0f);SouthRegion3Start=(X=0.582f,Y=0.5f);SouthRegion3End=(X=0.75f,Y=1.0f);EastRegion1Start=(X=0.75f,Y=0.0f);EastRegion1End=(X=1.0f,Y=0.333f);EastRegion2Start=(X=0.75f,Y=0.333f);EastRegion2End=(X=1.0f,Y=0.666f);EastRegion3Start=(X=0.75f,Y=0.666f);EastRegion3End=(X=1.0f,Y=1.0f);WestRegion1Start=(X=0.0f,Y=0.0f);WestRegion1End=(X=0.25f,Y=0.333f);WestRegion2Start=(X=0.0f,Y=0.333f);WestRegion2End=(X=0.25f,Y=0.666f);WestRegion3Start=(X=0.0f,Y=0.666f);WestRegion3End=(X=0.25f,Y=1.0f) After you configure an ARK to your liking in singleplayer mode, copy the values to your dedicated server's Game.ini file, and then host the server on the map called "PGARK" (ala "ShooterGameServer.exe PGARK?listen". The server will automatically load whatever PGMapName you have set. So if you want to do a different Procedural ARK, change the PGMapName value to "YourPGARK2" and you'll get a different savedata for that. You can revert back to any previous PGMapName to load the data of a previously saved PGARK. Note that if you have no existing save data for the PGMapName, it will use the PGTerrainPropertiesString to create the new ARK. But after you have save data for a PGMapName, the INI's PGTerrainPropertiesString will not take effect when loading that save data -- instead, it will use whatever procedural settings are contained within the PGMapName's existing savedata. In other words, to try out a new PGTerrainPropertiesString configuration, you either would need to delete your PGMapName's savedata, or use a different PGMapName. To get a PGARK configuration that you like, we recommend experimenting in singleplayer through the in-game UI, and then once you have settings you're happy with, copy the PGTerrainPropertiesString from your Windows\Game.ini into your dedicated server's WindowsServer\Game.ini (into the [/Script/ShooterGame.ShooterGameMode] section as described above). Then, as long as you're hosting a new PGMapName, those settings will take effect just as they were in your singleplayer game! You can also easily share good PGARK configurations by sharing that string with other server hosts, just copy the text of PGTerrainPropertiesString to them, and they can put it in their own INI. Share your best PGTerrainPropertiesString settings on the Forum! Hosts can put the PGTerrainPropertiesString value into PGLastUsedSettings as well, which will then become visible to the in-game UI for further custom tweaking/iteration. New System: Overriding/Modifying Map Spawners via INI There's a powerful new INI-driven system to override, add, or substract all NPC spawners within the ARK. In particular you can use this to adjust the spawners of a PGARK to your precise liking. Here are some examples of how it works: Add these INI values, as many as you want, into your Game.ini's [/Script/ShooterGame.ShooterGameMode] section. For example, this will REMOVE Trikes and Sauropod entries from the PGARK's Grassland Spawner, and it will remove Trikes and Ptero's from the PGARK's Jungle Spawner (you could then do a ConfigAddNPCSpawnEntriesContainer afterwards, to add them back in with different rates, if desired):ConfigSubtractNPCSpawnEntriesContainer=(NPCSpawnEntriesContainerClassString="DinoSpawnEntriesGrassland_PGM_C",NPCSpawnEntries=( (NPCsToSpawnStrings=("Trike_Character_BP_C")),(NPCsToSpawnStrings=("Sauropod_Character_BP_C")) ), NPCSpawnLimits=( (NPCClassString="Trike_Character_BP_C"),(NPCClassString="Sauropod_Character_BP_C") ) ) ConfigSubtractNPCSpawnEntriesContainer=(NPCSpawnEntriesContainerClassString="DinoSpawnEntriesJungle_PGM_C",NPCSpawnEntries=( (NPCsToSpawnStrings=("Trike_Character_BP_C")),(NPCsToSpawnStrings=("Ptero_Character_BP_C")) ), NPCSpawnLimits=( (NPCClassString="Trike_Character_BP_C"),(NPCClassString="Ptero_Character_BP_C") ) ) This will ADD a Giganotosaurus Spawner to the PGARK's beach spawner, but limiting it to only 1 Giga per spawner (via the NPCSpawnLimits):ConfigAddNPCSpawnEntriesContainer=(NPCSpawnEntriesContainerClassString="DinoSpawnEntriesBeach_PGM_C",NPCSpawnEntries=( (AnEntryName="GigaSpawner",EntryWeight=1000.0,NPCsToSpawnStrings=("Gigant_Character_BP_C"))), NPCSpawnLimits=( (NPCClassString="Gigant_Character_BP_C",MaxPercentageOfDesiredNumToAllow=0.01) ) ) This will OVERRIDE the PGARK's beach spawner to spawn NOTHING but Gigas and Rexes in equal weights and limits... OUCH!ConfigOverrideNPCSpawnEntriesContainer=(NPCSpawnEntriesContainerClassString="DinoSpawnEntriesGrassland_PGM_C",NPCSpawnEntries=( (AnEntryName="GigaSpawner",EntryWeight=1.0,NPCsToSpawnStrings=("Gigant_Character_BP_C")) , (AnEntryName="RexSpawner",EntryWeight=1.0,NPCsToSpawnStrings=("Rex_Character_BP_C")) ), NPCSpawnLimits=( (NPCClassString="Gigant_Character_BP_C",MaxPercentageOfDesiredNumToAllow=0.5) , (NPCClassString="Rex_Character_BP_C",MaxPercentageOfDesiredNumToAllow=0.5) ) ) Using this technique, you can modify all of the spawners of any map. It will even take Mod creature class names, as long as you know their short (summonable) class names! Here's a list of all the spawner class names on TheIsland, TheCenter, ScorchedEarth, and PGARK for your handy reference: PGARK DinoSpawnEntries_InlandWater_PGM_C DinoSpawnEntries_TheDeepwater_PGM_C DinoSpawnEntries_TheOcean_PGM_C DinoSpawnEntriesBeach_PGM_C DinoSpawnEntriesGrassland_PGM_C DinoSpawnEntriesJungle_PGM_C DinoSpawnEntriesMountain_PGM_C DinoSpawnEntriesSnow_PGM_C DinoSpawnEntriesSnowMountain_PGM_C DinoSpawnEntriesSnowShoreline_PGM_C DinoSpawnEntriesSwamp_PGM_C DinoSpawnEntriesRedwoodsPGM_C TheIsland DinoSpawnEntries_Beavers_C DinoSpawnEntries_DarkWater_C DinoSpawnEntries_DarkWater_Mosa_C DinoSpawnEntries_DarkWaterAngler_C DinoSpawnEntries_DeepWater_C DinoSpawnEntries_InlandWater_C DinoSpawnEntries_Ocean_C DinoSpawnEntriesRedwoods_C DinoSpawnEntries_RedwoodWater_C DinoSpawnEntries_ShallowWater_C DinoSpawnEntries_SwampWater_C DinoSpawnEntriesArcha_C DinoSpawnEntriesBeach_C DinoSpawnEntriesCave1_C DinoSpawnEntriesCave2_C DinoSpawnEntriesCave2-LowSpiderScorp_C DinoSpawnEntriesCave3_C DinoSpawnEntriesCave5_C DinoSpawnEntriesCave5_Tough_C DinoSpawnEntriesCave7-Fliers_C DinoSpawnEntriesCaveIceWater_C DinoSpawnEntriesCaveLava_C DinoSpawnEntriesCaveWater_C DinoSpawnEntriesDamiensAtoll_C DinoSpawnEntriesGigant_C DinoSpawnEntriesGrassland_C DinoSpawnEntriesIceCave_C DinoSpawnEntriesJungle_C DinoSpawnEntriesMonsterIsland_C DinoSpawnEntriesMountain_C DinoSpawnEntriesPelican_C DinoSpawnEntriesPenguins_C DinoSpawnEntriesQuetz_C DinoSpawnEntriesSnow_C DinoSpawnEntriesSwamp_C DinoSpawnEntriesSwampCave_C DinoSpawnEntriesSwampCaveWater_C DinoSpawnEntriesTinyCave_C DinoSpawnEntriesTitano_C DinoSpawnEntriesWater_C TheCenter (which also uses many TheIsland spawners) CustomAnglerSpawner_C CustomPenguinSpawner_C DunkEurSpawn_C GrasslandsUnderArea_WaterSpawn_C IceCave_Spawner_C IceCaveWater_Spawner_C Lava_Spawn_C Lava_Upper_Spawn_C LavaBeach_Spawn_C LavaWater_Spawn_C MiniCaveBearSpawner_C SnowGrasslands_Spawn_C SnowGrasslandsUnderArea_Spawn_C SnowyLake_Mosa_C SnowyMountain_Spawn_C SpiderCaveSpawner_C UnderwaterCaveSpawn_C DinoSpawnEntries_OceanUnderworld_CScorched Earth SE_DinoSpawnEntries_DeathWorm_C SE_DinoSpawnEntries_RexSolo_C SE_DinoSpawnEntriesBadlands_C SE_DinoSpawnEntriesCanyonCave_C SE_DinoSpawnEntriesCanyons_C SE_DinoSpawnEntriesDunes_C SE_DinoSpawnEntriesEZMode_C SE_DinoSpawnEntriesGreenDesert_C SE_DinoSpawnEntriesMountain_C SE_DinoSpawnEntriesMountainCave_C SE_DinoSpawnEntriesOasis_C SE_DinoSpawnEntriesRuinsCave_C SE_DinoSpawnEntriesRuinsCaveNoGolem_C SE_DinoSpawnEntriesSandworm_C SE_DinoSpawnEntriesWater_C SE_DinoSpawnEntriesWyvern_C SE_DinoSpawnEntriesWyvernTrench_C Procedural Generator Modding Guide The Procedural ARK Generation is nearly 100% Blueprint-driven, so it is super moddable (and the Generator Blueprints used can be overriden by any Mod!). We have no doubt that enterprising modders will be able to create even better algorithms and logic paths than us, for more lifelike and detailed procedural ARK's. Here are the first details about how to get involved with creating a unique Procedural Generator Mod in the ARK Dev Kit: https://forums.unrealengine.com/showthread.php?90664-9-28-ARK-Dev-Kit-v247-8-has-been-posted-to-the-Epic-Launcher! And here's an example of a very simple one!http://steamcommunity.com/sharedfiles/filedetails/?id=785098977 Bonus video tutorial by ThickFreedom: Link to comment Share on other sites More sharing options...
R0b Posted October 21, 2016 Share Posted October 21, 2016 details? Link to comment Share on other sites More sharing options...
KDE Posted October 21, 2016 Share Posted October 21, 2016 How to, How to!! Link to comment Share on other sites More sharing options...
Artanys Posted October 21, 2016 Share Posted October 21, 2016 (edited) wooo details, i want to get a server up asap Edit: pretty Edited October 21, 2016 by Artanys Link to comment Share on other sites More sharing options...
StriderUk Posted October 21, 2016 Share Posted October 21, 2016 lol Link to comment Share on other sites More sharing options...
Voom65 Posted October 21, 2016 Share Posted October 21, 2016 Need to know how to do all that. Dedicated servers need support please Link to comment Share on other sites More sharing options...
StriderUk Posted October 21, 2016 Share Posted October 21, 2016 yes, am thinking if we get an output file from doing this in singleplayer, it might be possible to copy this across. But we will still need to know the setting unless we can find it of course to flick. Link to comment Share on other sites More sharing options...
Specleaf Posted October 21, 2016 Share Posted October 21, 2016 17 minutes ago, Jeremy Stieglitz said: Gonna be a bit of a rapid info dump on how Procedurally Generated ARK's (PGARK's) currently works -- will continue to flesh this out as I get more time over the weekend. Bear in mind the system is early and will be rapidly advancing, so if you use Procedurally Generated ARKs, there's always a possibility of losing your save data when the algorithms are further modified! Without further ado, here we go! How To Configure your first PGARK Hosting a Dedicated Server on PGARK New System: Overriding/Modifying Map Spawners via INI Are this suppose to be a link or something? It doesn't really explain much. Link to comment Share on other sites More sharing options...
NikouT Posted October 21, 2016 Share Posted October 21, 2016 I am very positive we can use this map generated for singleplayer by copy-pasting it to map folder of the game itself. Link to comment Share on other sites More sharing options...
aknarts Posted October 21, 2016 Share Posted October 21, 2016 Just now, NikouT said: I am very positive we can use this map generated for singleplayer by copy-pasting it to map folder of the game itself. You still need the launch options, map name and stuff(I suspect that to be the name you select while generating). Although it should be possible to do the generation on the server side. You also sort of need the location to put it into on the server as that might be different from the single player Link to comment Share on other sites More sharing options...
Guest BubbaCrawfish Posted October 21, 2016 Share Posted October 21, 2016 Chances are he's still typing out the details, Just chill... Although the big thing here is, prepare to lose whatever you put in there, so don't take vital stuff across yet. Link to comment Share on other sites More sharing options...
Raptor222 Posted October 21, 2016 Share Posted October 21, 2016 9 minutes ago, Voom65 said: Need to know how to do all that. Dedicated servers need support please I already broke it put in 8.0 for landscape radius and it stalled loading Link to comment Share on other sites More sharing options...
Guest BubbaCrawfish Posted October 21, 2016 Share Posted October 21, 2016 Maybe he fell asleep at the keyboard... I know I've done that many times. It's such a cosy, warm pl... *snore* Link to comment Share on other sites More sharing options...
Nasbit Posted October 21, 2016 Share Posted October 21, 2016 18 minutes ago, Specleaf said: Are this suppose to be a link or something? It doesn't really explain much. these are only placeholder for more details Link to comment Share on other sites More sharing options...
Pastafarian Posted October 21, 2016 Share Posted October 21, 2016 Havin so much fun on these PGAs THANK YOU SOO MUCH FOR ADDING THESE! More fun on ark then i have had since i first started. Link to comment Share on other sites More sharing options...
zeluz Posted October 21, 2016 Share Posted October 21, 2016 (edited) 6 minutes ago, Pastafarian said: Havin so much fun on these PGAs THANK YOU SOO MUCH FOR ADDING THESE! More fun on ark then i have had since i first started. ow did you do it for a dedicated server?Ive looked in all my server tools and cant find it anywhere Edited October 21, 2016 by zeluz Link to comment Share on other sites More sharing options...
Tylaris Posted October 21, 2016 Share Posted October 21, 2016 So when I woke up and first saw the link to here I thought to myself "Has hell frozen over? Wildcard never gives us much info let alone a guide when it comes to new content". Then I click through and see this "guide" and think "yea... balance restored." Link to comment Share on other sites More sharing options...
Guest BubbaCrawfish Posted October 21, 2016 Share Posted October 21, 2016 1 minute ago, zeluz said: ow did you do it for a dedicated server?Ive looked in all my server tools and cant find it anywhere No, he's talking of singleplayer more likely. Link to comment Share on other sites More sharing options...
Swords Posted October 21, 2016 Share Posted October 21, 2016 NPC spawn tweaking, drool* Link to comment Share on other sites More sharing options...
BLiNNeMaNS Posted October 21, 2016 Share Posted October 21, 2016 overriding map spawners through ini.. yay just curious if it's possible to remove types per region (create some sort of biome/remove bronto's from herbi island type) of map or only removal of entire species. Link to comment Share on other sites More sharing options...
Whatzitooya Posted October 21, 2016 Share Posted October 21, 2016 My guess is yes, by setting the biome size to 0 Link to comment Share on other sites More sharing options...
Moretic Posted October 21, 2016 Share Posted October 21, 2016 so how to make the largest possible map? Link to comment Share on other sites More sharing options...
zeluz Posted October 21, 2016 Share Posted October 21, 2016 i would assume you increase the terrain scale multiplier Link to comment Share on other sites More sharing options...
Moretic Posted October 21, 2016 Share Posted October 21, 2016 just did, by 10... nothing happend Link to comment Share on other sites More sharing options...
zeluz Posted October 21, 2016 Share Posted October 21, 2016 sry were all new to this and no1 has a guide up just yet *Cough* *Cough* Link to comment Share on other sites More sharing options...
Recommended Posts