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

Editing Height Maps

No, like he has a fix, but I don't understand it.

Something called smoothworldall, but he had to dll hack it for it to work properly.

He'll be along. :)

 
looks like a consle command aka swa in f1. It sounds better than what ive been doing. op 1 editing in b131 till error is rectified.

op2 replaced 240 dll with 231 dll but renders the jagged minecraft hills but can paint general terrain. op 3 edited the gernationrules class to

remove the line for rgb32, then replace biome mapper in rwg, again partial results. op 4 havenot tried yet , trying to refrain from hacking too much, but will parse the dll and nuke biomeidmapper references in world generation and worldgenerationinput, then edit the rwg putting back biome gen at bottom. so if there is an easier way im all for it.but if it continues same direction, im going to remove all infinging classes, and import legacy ones.

 
I am in the process of putting together a tutorial for taking this image and converting it to a heightmap and using that start-to-finish into a world. I expect to finish today or tomorrow. I will also include the modified DLLs necessary and a fully realized world (one town, one trader).

NOTE: The method I am using requires hand painting biomes and roads as well as manual placement of water and POIs.

 
Last edited by a moderator:
Count me in, I was hand painting everything in b231. As long as i can get a smooth grade again, I have the splat biome, w 1 river, dtm.tga and raw. ready to convert. Thanks for this. Dont want to hack the classes for a while.

 
Here are the patched DLLs (till the fixed version comes from TFP).

https://www.dropbox.com/s/ofenxy18fm8t9cm/swa_smoothworldall_patched_DLL_files.zip

Basically there is a bug where smoothworldall (swa) when used with noregion flag, assumes the world is 4096x4096.

I've hacked versions of the DLL for alternate world sizes.

A more improved fix would be to first check the world size is square (since the math for smoothing requires that), then set the array, loop, and writing sizes based on the actual world.

Code Compare of Stock and modified for 8192x8192:

CodeCompare_Stock_vs_8192.gif

This allows the 'swa <numpasses> noregion' command to be used from the console to smooth the world and make it look not so minecrafty. Just pick the DLL for the sized world you've got.

'swa 5 noregion' being a nice value.

 
Last edited by a moderator:
Got it thanks. Will combine with my worldgeneration,worldgenerationinput, rwg biomeidmapper to biome gen switch. Hopefully it will emu 231. Till they can readjust it officially.

 
FWIW, the demo world is ready to have a trader, town full of POIs, water, and connecting roads added. I don't intend to do a whole maps worth, just a small area to well, demo.

Current state:

heightmap from custom image: done

terrain smoothed: done

custom biome layout: done

initial road demo: done

No mistaking the radzone on this map checkerboard biomes surrounded by road.



 
Last edited by a moderator:
OK, so is this something that is going to get passed on to them, or I should expect to always use a custom DLL to generate maps with smoothing?

 
OK, so is this something that is going to get passed on to them, or I should expect to always use a custom DLL to generate maps with smoothing?
I thought it was implied that I told TFP by the fact that I said "Here are the patched DLLs (till the fixed version comes from TFP)."

Yes, I reported the issue to the right people and it will be fixed. I don't have the details as to when and which build.

 
I thought it was implied that I told TFP by the fact that I said "Here are the patched DLLs (till the fixed version comes from TFP)."
Yes, I reported the issue to the right people and it will be fixed. I don't have the details as to when and which build.
Thanks very much.

Edit: BTW, I did read that, but I guess I should have worded my question better in some way. I basically just wanted to know if they were aware and will fix it, or if we just had to sit it out and hope for them to catch it... which you've just answered. Thanks again.

 
Last edited by a moderator:
Here are the patched DLLs (till the fixed version comes from TFP).https://www.dropbox.com/s/ofenxy18fm8t9cm/swa_smoothworldall_patched_DLL_files.zip

Basically there is a bug where smoothworldall (swa) when used with noregion flag, assumes the world is 4096x4096.

I've hacked versions of the DLL for alternate world sizes.

A more improved fix would be to first check the world size is square (since the math for smoothing requires that), then set the array, loop, and writing sizes based on the actual world.

Code Compare of Stock and modified for 8192x8192:

CodeCompare_Stock_vs_8192.gif

This allows the 'swa <numpasses> noregion' command to be used from the console to smooth the world and make it look not so minecrafty. Just pick the DLL for the sized world you've got.

'swa 5 noregion' being a nice value.
Very nice ! :-)

Do you have also a fixed .dll for the mapsize of 15360x12288 ? Do not wonder, i adjusted my map size to the existing TGA size, so not more world would be rendered then needed. And it worked until the rollback of random gen came.

You can even create 1024x1024 maps if you want to :-D

Or do i have to wait for the official patch ? Or should i go the nasty way and resize my biomes.png and TGAs again to a standard size, hmm.

 
Last edited by a moderator:
Very nice ! :-)Do you have also a fixed .dll for the mapsize of 15360x12288 ? Do not wonder, i adjusted my map size to the existing TGA size, so not more world would be rendered then needed. And it worked until the rollback of random gen came.

You can even create 1024x1024 maps if you want to :-D

Or do i have to wait for the official patch ? Or should i go the nasty way and resize my biomes.png and TGAs again to a standard size, hmm.
I'm not surprised you can make map sizes of just about any size.

As for fixed for smoothing of a 15360x12288 , no. The way the smoothing routine itself is written, the math that is used requires a square world. I had a nice image that was 16384x10240 I was thinking of using as a heightmap till I hit that. I ended up squeezing and stretching that one to 13312x13312.

 
Well iam just doing resizing, should work pretty fast cause i did the biomes.png, street layout and height map as layered paint.net file and then i can export each layer accordingly and save as the right format.

So its easier for me to paint streets and terrain and city places first, activating or deactivating the layer i want to.

Thank you :)

 
Last edited by a moderator:
Does not work for me, at least not for the 13312x13312 size. I do have to replace the Assembly-CSharp.dll in the 7daystodie/7daystodie_Data/managed folder right ? And rename it ofc ?

World loads, but still has sharp steps. What did went wrong ? Maybe i made the mistake ( i guess so).

Edit:

-Deleted the savegames

-deleted the .raw file too so a new one gets generated

No luck.

 
Last edited by a moderator:
Did you run the smoothworld command after replacing the DLL? Sorry, I can't assume anything. :-)
Im lost. What do you mean exactly ? Or is there any source i can read more ? There is no console command for "smoothworld". Sorry.

 
Ah okay, perfect...

...so what the dll does is allows you to run the smoothworld command on maps larger than the 4k (I think).

SmoothWorldAll is the cmd.

 
Ah okay, perfect...
...so what the dll does is allows you to run the smoothworld command on maps larger than the 4k (I think).

SmoothWorldAll is the cmd.
Correct:

swa 5 noregion

or

smoothworldall 5 noregion

5 being the number of passes.

Remember you'll have to delete your region files from your save or start a new game after.

The noregion flag tells smoothworldall to update the dtm.raw instead of writing region files.

 
Correct:swa 5 noregion

or

smoothworldall 5 noregion

5 being the number of passes.

Remember you'll have to delete your region files from your save or start a new game after.

The noregion flag tells smoothworldall to update the dtm.raw instead of writing region files.
Thank you, the command was the one thing Im missing here.

The modified dlls smooth even more then the regular files, which is nice, but i guess i will wait for the official patch for this, otherwise i might get different world smoothing and would have to replace all prefabs again. Thank you very much for your effort and have a happy new year! :smile-new:

Ah okay, perfect...
...so what the dll does is allows you to run the smoothworld command on maps larger than the 4k (I think).

SmoothWorldAll is the cmd.
Thank you for helping, too.

I wish you a happy new year too! :smile-new:

 
Last edited by a moderator:
Back
Top