• If you have a mod, tool or prefab, please use the Resources section. Click Mods at the top of the forums.

A19e Nitrogen - UNSTABLE

Status
Not open for further replies.
Is there a way to locate the traders with Previewmap?(I know you can see them in prefabs)
I checked that out myself and can only confirm the vanilla traders are purple, see picture.

previewMap.jpg

don't forget that the preview is flipped vertically :p

 
- Allow stopping the generation mid way:

It's already very fast and i believe for most it's easy to just wait or close the program and start again, but looking for something that looks

balanced while randomly generating in regards of biome distribution is rather time consuming.

I always keep the output folder open and check the biomes and heightmap while the generation is running, sometimes i wish i could restart

when i see the biomes, tho mostly in regards of craters/wasteland and burned forest, but also if there is no snow or desert at all.
Maybe I will add some options to trigger map generation and POI placement separately, as they are functionally different modules.

Something like:

-generate map and pois

-only generate map

-import map, generate pois (where you can edit the hight-map beforehand)

-import POI placement mask

- - - Updated - - -

The player spawn points are red, traders purple, city centers cyan, industrial buildings blue.

(..in Xylviers map, there also seem to be some custom added POIs, using the citycenter color)

 
Last edited by a moderator:
Maybe I will add some options to trigger map generation and POI placement separately, as they are functionally different modules.
Something like:

-generate map and pois

-only generate map

-import map, generate pois (where you can edit the hight-map beforehand)

-import POI placement mask

- - - Updated - - -

The player spawn points are red, traders purple, city centers cyan, industrial buildings blue.

(..in Xylviers map, there also seem to be some custom added POIs, using the citycenter color)
If you are feeling ambitious, the option for a hub city like we had with A15 and prior would be awesome. Some of my best gaming memory with 7D are from looting (or trying to loot) the hub city, hiding in the apartment buildings, etc. I miss the hub city more than anything else.

I'm currently playing, and running a server, from A15.2. My users in general dislike A17, were OK with A16, but still like A15 best.

 
Ok, after i posted the prefablist i created for Darkness Falls and posted it i got asked about that.

I send him(i believe) my script(python2.7) to allow making a genuine list based on the prefabs in the "7 days to die/data/prefabs" folder.

He told me i should post it in the forum as maybe some others could have interest in using it, so here we go:

Need to mention, that i packed a zip which when extracted will need to be in the "7 Days to die/data" folder as "prefablistgenerator_for_NITROGEN".

In that folder you find a "parser.py" which is the python script and a parser.exe, for those that do not have python3.7 installed.

The exe just in case you do not have python installed.

The Parser will generate the "prefabslist.txt" in its the folder.

This list will contain ALL prefabs in your data/prefabs folder, means you will need to go through it and comment out what is not needed/wanted or should be avoided. In that matter i can only advise to check with the "prefabslist.txt" that comes with the NITROGEN package from Damocles.

Also, be aware that my script only reads out what is in the prefabs tts and xml files. You will need to do some manual editing, as that can't all be done by a non sentient script XD

Hope it will be of use for some/one... ;)

new version:

https://drive.google.com/open?id=1Wfp5I6DqjVZGfSJP9Hq1eZvhFInbvTuC

old version:

https://drive.google.com/open?id=1Lg4kwi0R8VJl34lB74_sVM_Mah9LrXUz

 
Last edited by a moderator:
Absolutely loving this! Tried out a few maps. My first one I cranked all the pois and city/town sizes to max and it was lag hell. My next two maps I kept my cities at the lowest but largest level as well as towns with maximized other pois and they have been running great! I had the viscious crack turned on.. when I was running to the trader I discovered how viscious those cracks are as I wasn't expecting it or my broken leg.

Only anomaly I came across was a small lake that had a chrysanthemum growing in its centre.

Great work!

Looking forward to seeing what comes of this!

 
"Maybe I will add some options to trigger map generation and POI placement separately, as they are functionally different modules."

It would be great to have some options there. Also, can the splat map be handled separately as well? I'd like to remove certain roads that lead through rivers and such. OR that mask that was talked about, it could also include zones where no roads may go?

I'd love to create the basic map, then adjust stuff, keeping the POI placements and heightmap, but being able to adjust the roads, cut the ones going over rivers to be replaced by bridgePOI later (manually)

Dunno if that comes across right... Currently, I have a handcrafted map + heightmap, i've put that through the generator, and the city placement was pretty much perfect. I'd like to paint in a river now and remove the roads-parts it crosses, regenerate the terrain without touching the POI placements, taking care that my river (or any feature) doesn't touch terrain already occupied by a poi.

 
Thanks for all the feedback.

I will note down the suggestions, lets see when I have time to add some more features.

 
"Maybe I will add some options to trigger map generation and POI placement separately, as they are functionally different modules."
It would be great to have some options there. Also, can the splat map be handled separately as well? I'd like to remove certain roads that lead through rivers and such. OR that mask that was talked about, it could also include zones where no roads may go?

I'd love to create the basic map, then adjust stuff, keeping the POI placements and heightmap, but being able to adjust the roads, cut the ones going over rivers to be replaced by bridgePOI later (manually)

Dunno if that comes across right... Currently, I have a handcrafted map + heightmap, i've put that through the generator, and the city placement was pretty much perfect. I'd like to paint in a river now and remove the roads-parts it crosses, regenerate the terrain without touching the POI placements, taking care that my river (or any feature) doesn't touch terrain already occupied by a poi.
Added separate generation steps, to redo POI mapping to the same terrain. Also added a mask image import that blocks POIs and roads to use a masked off area.

This way the user has more manual control over the POI and road distribution.

Also an option to only have a single spawnpoint, so in MP everyone should start together at the same spot.

Will be included when the next version is uploaded.

 
New version 0.25 online (same download link)

-option to only have single playerspawn (same starting location in MP)

-generation mode:

* automatic: normal generation

* use import_HM.png: loads import_HM.png from the resources folder, then generates map

* import + mask: loads import_HM.png and a mask.png from the resource folder (mask will block POIs from spawning, and discourages roads), only the alpha channel is considered, alpha below 20 is free, everything else blocked

* only generate HM: stops after generating the procedural map

* only map POIs: loads the genHM.png from the indicated folder, and continue generation

usecases:

-> you first use "only generate the HM", edit the hightmap, then use "only map POIs" to continue

-> you can repeat "only map POIs" to try out different POI distributions on the same hightmap

-> you can create a custom hightmap, place it in the resource folder, add a mask, then generate a custom world

In the provided example (quickly drawn), I used the mask to block the mountains and river areas / river deltas from spawning POIs.

The mask can have any size, as long as its square. Larger masks will of course have a better resolution.

The logic ist just testing for the center of the POI for a mask-pixel. So to really avoid an area, it should have a large enough margin in the mask.

The mask consideres any pixel with an ALPHA value smaller than 20 (eg fully transparent) as passable, anything else as blocked. The color does not matter, so you can paint all blocked areas pink if you like.

The easiest way to create a mask would be to paint an separate layer in photoshop ontop of the terrain, and then export that layer as mask.png

 
Last edited by a moderator:
Is there a mask for forcing generation of pois along roads? If not, is it planned? :)
Currently the roads are created after the POIs where placed. (thus avoiding them)

The vanilla RWG seems to first create roads and city blocks, then POIs, NitroGen is doing it the other way around.

But I can see how it looks to create more paths, also toward smaller settlements (farms, rednecks, oldwest-towns).

Or test creating smaller random "road-side" POIs like gas stations, grocery markets and gun shops near a road.

 
Just thinking that I'd really like to be able to paint (mask) places that would for sure spawn pois if it's smooth enough, then that roads would find a way to.

 
Just thinking that I'd really like to be able to paint (mask) places that would for sure spawn pois if it's smooth enough, then that roads would find a way to.
Sure I could read out more information from the mask, like a city-center point.

That could be like reading a single red pixel as spawn point for a city-center, that gets added to a preferred list.

BTW: currently all towns and cities have a road to each of their 3-closest other cities/towns.

 
Lots of changes, very nice. I'm still a bit stumped on how to edit roads after generation *g*

I'm making a map, painting in my general features.

I'm editing the biome file and the heightmap

I'm now adding a no spawn mask to my rivers and lakes

I'm rendering those until i find a nice spread of cities and towns that i like

So far this is working great (apart from having to flip the heightmap every time *g*)

Now i'd like to undo all the damage the poi and road generation has done, like a road going through a river for example, which it will do if the river is very long it seems. I have no idea on how to accomplish that.

Feels like i should use the generated POI heightmap, edit out the filled up river-parts, edit the splatmap and delete the road. But how to render that thing now while keeping all the pois and stuff? Is there a way and i'm not seeing it?

Or can we perhaps leave out road generation completely, apart from within a city? and then i could draw my own highways on the splatmap??

Since I'm modelling the entire map myself, flattening and adjusting would not be required ^^ But i can't be arsed to manually create twenty cities, that's why i need the random poi generation and heightmap adjustments :)

 
Last edited by a moderator:
Lots of changes, very nice. I'm still a bit stumped on how to edit roads after generation *g*
I'm making a map, painting in my general features.

I'm editing the biome file and the heightmap

I'm now adding a no spawn mask to my rivers and lakes

I'm rendering those until i find a nice spread of cities and towns that i like

So far this is working great (apart from having to flip the heightmap every time *g*)

Now i'd like to undo all the damage the poi and road generation has done, like a road going through a river for example, which it will do if the river is very long it seems. I have no idea on how to accomplish that.

Feels like i should use the generated POI heightmap, edit out the filled up river-parts, edit the splatmap and delete the road. But how to render that thing now while keeping all the pois and stuff? Is there a way and i'm not seeing it?

Or can we perhaps leave out road generation completely, apart from within a city? and then i could draw my own highways on the splatmap??

Since I'm modelling the entire map myself, flattening and adjusting would not be required ^^ But i can't be arsed to manually create twenty cities, that's why i need the random poi generation and heightmap adjustments :)
It would be superb if a road would build a bridge when encountering rivers.

 
Lots of changes, very nice. I'm still a bit stumped on how to edit roads after generation *g*
I'm making a map, painting in my general features.

I'm editing the biome file and the heightmap

I'm now adding a no spawn mask to my rivers and lakes

I'm rendering those until i find a nice spread of cities and towns that i like

So far this is working great (apart from having to flip the heightmap every time *g*)

Now i'd like to undo all the damage the poi and road generation has done, like a road going through a river for example, which it will do if the river is very long it seems. I have no idea on how to accomplish that.

Feels like i should use the generated POI heightmap, edit out the filled up river-parts, edit the splatmap and delete the road. But how to render that thing now while keeping all the pois and stuff? Is there a way and i'm not seeing it?

Or can we perhaps leave out road generation completely, apart from within a city? and then i could draw my own highways on the splatmap??

Since I'm modelling the entire map myself, flattening and adjusting would not be required ^^ But i can't be arsed to manually create twenty cities, that's why i need the random poi generation and heightmap adjustments :)
Roads will eventually find a way (the mask is just increasing the cost of the path-seach, like mountains do). I can increase the costs of the mask-pixels, that should allow for longer detours around blocked of areas.

If you need full control of roads: you could render the map with roads turned off. (the city roads are still present then, the option is just regarding the long distance roads).

You can then edit the splat map manually (drawing the roads), and also smooth out the terrain map beforehand where the roads should go.

Of course the cities locations will not be known 100% at that point, unless the mask is very restrictive. But you could prepare mountain-passes beforehand for example, and later draw the road onto that.

But overall I would suggest to make the mask at the rivers thicker than the river, and already plan in land-bridges when painting very long rivers. (better preparing it by hand, than letting the generator mess around automatically when crossing a river)

The most effort but best result would be to manually place a bridge there (adding it and its position to the prefabs.xml) where your manually drawn road cross a large river.

 
Last edited by a moderator:
It would be superb if a road would build a bridge when encountering rivers.
I can add them at one point. They need a bit more complex logic, as the bridge POIs are not very long , and only go East-West or North-South, the generator would have to prepare a land-bridge at its end for wider rivers/lakes.

 
Status
Not open for further replies.
Back
Top