How do you lower the terrain of a height map, By this i mean the entire map.
I was trying to recreate Cyrodiil from oblivion in minecraft with this program, so first i made a height map:
then i made the new map, fixed biomes, water level etc:
I noticed that the highest mountain was already at the 255 mark, and the lowest on the map was around 125, but i didn't really care until I finally exported the map, IT WAS FRIGGEN HIGH. there were clouds at the bottom of the Abacean sea. So my question is: is there some way of lowering the entire land mass from the map's water level of around 170 to the regular minecraft level of 62
(I'm also asking this because due to the amount of blocks, there was a superb amount of lag that crashed minecraft.)
A couple of people have asked me for the bo2 objects that I have been using to make multilayer custom cave systems. I don't have an easy way to post all the files, but I generate them using a short Perl script. It should be fairly easy for people on OS X or Linux (I think Windows users would have to install Perl) to run this script on their machine and create the bo2 files. Here is the script:
for ($level = $first_level; $level >= $last_level; $level -= $level_offset) {
open BO2, ">cave_h${level_height}_d$level.bo2" or die $!;
print BO2 $header;
for ($depth = $level; $depth > $level - $level_height; $depth --) {
if ($depth == $level) {
$layer = $top_layer;
}
elsif ($depth == $level - $level_height + 1) {
$layer = $bottom_layer;
}
else {
$layer = $main_layer;
}
$layer =~ s/\$depth/$depth/g;
print BO2 $layer;
}
close BO2;
}
In order to run this, you would copy the code into a file (e.g., caves.pl), change the file location after "#!" on the first line to the location of Perl on your machine using a text editor (/usr/bin/perl works on vanilla OS X), make the file executable (e.g., "chmod +x caves.pl" from the terminal on OS X or Linux), and execute the code (e.g., "./caves.pl" from the terminal on OS X or Linux).
Running the script will create a bunch of bo2 objects named something like "cave_h6_d-26.bo2". The number after "h" is the height (distance between floor and ceiling) of the caves created by that bo2 object, and the number after "d" is the depth below the surface of the cave ceiling. BO2 object with a zero or positive depth break the surface.
The way you use the bo2 objects in WorldPainter is to "Add a bo2 format custom obect layer" using the "+" at the bottom of the "Layers" panel, and paint this layer with a solid brush at maximum intensity over the region where you want a cave. Overlapping layers at different depths can be painted over each other to make higher caves and linked together to allow movement from level to level of the cave. Layers overlap if the depth values of their BO2 object differ by "2" or "4". Layers with depth values that differ by "6" just touch at the edges and may leave floating blocks at their boundary unless an intermediate depth layer is also painted in the area where they overlap.
The height and depth values of the generated bo2 objects can be controlled by changing the "$level_height" and "$level_offset" variables in the script. This allows you to control the height of a single layer cave generated by the bo2 objects, how much the layers overlap, and how big the steps are between layers. The default values generate a very dense set of depths (2 block steps). I recommend building a cave system using every other layer (e.g., depths 2, -2, -6, -10, ...) and only using the intermediate layers when you need a smooth transition between cave levels.
Have fun and let me know if you build anything awesome using these bo2 objects!
Allowing the caves to break the surface is what is causing your issue.
D=
But I like having the caves break the surface. Hmmm..... Any work arounds or something in place to help prevent this in the future? Guess I'll have to use WorldEdit or something to "fixwater" for now.
Click edit in the top left corner and chose " Change height..." from the drop down.
Looks like an awesome map btw!
This wouldnt fix the problem I had, unless something basic is escaping me.
I spend a long time crafting a map and exported it only to find the water level on my map one square different in height than the Minecraft generated one, leaving me with a map which the water levels at the edge dont match. I would like an option to raise only the water level by 'x' distance, or raise the land by 'x' squares, where this would basically rise all land blocks, or sea blocks by the stipulated amount, not the height map of the whole map.
Does this make sense ?... Does this already exist ?
This wouldnt fix the problem I had, unless something basic is escaping me.
I spend a long time crafting a map and exported it only to find the water level on my map one square different in height than the Minecraft generated one, leaving me with a map which the water levels at the edge dont match. I would like an option to raise only the water level by 'x' distance, or raise the land by 'x' squares, where this would basically rise all land blocks, or sea blocks by the stipulated amount, not the height map of the whole map.
Does this make sense ?... Does this already exist ?
I don't think there is a way to raise or lower just land X amount without affecting the water.
However, if you use the water tool you can click on existing water to raise or lower the water. Left click to raise or right click to lower.
Although... would it not be easier to just set the water level at 62 (default) if you now you might venture outside the edge of the map you created?
But I like having the caves break the surface. Hmmm..... Any work arounds or something in place to help prevent this in the future? Guess I'll have to use WorldEdit or something to "fixwater" for now.
I could be wrong but, if you don't "populate" any areas that have water i don't think it will create caves in that area.
Dude you should totally make it possible to upload topographical maps into your editor.
You can now! Click file at the top and go to import, then click on Height Map.
You can use any image you want. Black and white works best though. White= High terrain Black= low terrain.
Using photos can have some pretty interesting results. I used a Dodge logo and made a Dodge island! LOL
I don't know if this is possible, but I have a suggestion.
There should be more custom material brushes instead of just 5, and in the input box for selecting the block ID for the brush, it should be like the data value input box. I'm trying to make a map with new blocks that don't use the 1-255 IDs.
What I'm saying is, you should be able to use ANY block ID.
EDIT: Or is there a program like this, or at least can replace a block with any other type of block, regardless of the ID?
Does anyone have any custom brushes that are really good for mountain ranges, rivers, valleys, etc...? If anyone does could you please send me them to me via email? [email protected]
As WorldPainter is becoming more and more popular this thread is heating up a lot. Responding to everyone, although I would love to continue to, is just becoming too much work, especially since I have started a new job and will have less time to spend on WorldPainter.
Rest assured that I will continue to read everything that is posted here, and that I will take note of every suggestion. But from now I will only actually respond if you ask a direct question, it hasn't been answered by someone else already, and it's not something that's answered in the FAQ or you could find out really easily by just trying it out.
Please help me out by answering each other's questions, and by explaining this to people who might be wondering why I'm not responding. Thanks everyone!
There is no "coast" option. Do you mean the "beaches" option? Yes, that works. Note that the beaches don't consist of just sand though, it's a mix of sand, grass, gravel and clay. And it's only applied when you use the Mountain tool, or when you right-click with a Terrain type selected.
Does anyone have any custom brushes that are really good for mountain ranges, rivers, valleys, etc...?
It's not really a "custom brush", but I have some bo2 objects that make nice rivers when used with the proper technique. See Reply #3665 in this Forum. Making believable rivers in WorldPainter is pretty hard, and I don't think it would be possible to make a custom brush that does everything that is needed.
I'm using a Windows system computer, and when I attempt to use any tool or select a terrain type on world painter, it just freezes up. Think you can help me solve this?
If it just freezes, without any error message and without coming out of it, then unfortunately I have no idea why that would be. You're the first to report that problem. I can just give general advice. Make sure Windows and Java are fully updated and malware free. If you're using a custom Windows theme, try disabling it. If you have some kind of "Windows light", use regular Windows. Try upgrading to Java 7, or if you have the 64-bit version, try the 32-bit version.
How do you lower the terrain of a height map, By this i mean the entire map.
I was trying to recreate Cyrodiil from oblivion in minecraft with this program, so first i made a height map:
then i made the new map, fixed biomes, water level etc:
I noticed that the highest mountain was already at the 255 mark, and the lowest on the map was around 125, but i didn't really care until I finally exported the map, IT WAS FRIGGEN HIGH. there were clouds at the bottom of the Abacean sea. So my question is: is there some way of lowering the entire land mass from the map's water level of around 170 to the regular minecraft level of 62
(I'm also asking this because due to the amount of blocks, there was a superb amount of lag that crashed minecraft.)
Looks like an awesome map btw!
-Part-time Maintainer of Ovo's Rustic Pack: Redemption
-Owner and Founder of ChiRho Entertainment-
$level_height = 6;
$level_offset = 2;
$first_level = 4;
$last_level = -60;
$header = <<'HEADER_END';
[META]
version=2.0
spawnOnBlockType=2
spawnSunlight=True
spawnDarkness=True
spawnWater=False
spawnLava=False
underFill=False
randomRotation=True
dig=True
tree=false
branch=False
needsFoundation=True
rarity=100
collisionPercentage=100
spawnElevationMin=0
spawnElevationMax=256
spawnInBiome=All
[DATA]
HEADER_END
$top_layer = <<'TOP_END';
0,1,$depth:0
1,1,$depth:0
2,1,$depth:0
0,0,$depth:0
1,0,$depth:0
2,0,$depth:0
0,-1,$depth:0
1,-1,$depth:0
2,-1,$depth:0
1,-2,$depth:0
2,-2,$depth:0
TOP_END
$main_layer = <<'MAIN_END';
-3,0,$depth:0
-2,-1,$depth:0
-2,0,$depth:0
-2,1,$depth:0
-1,-2,$depth:0
-1,-1,$depth:0
-1,0,$depth:0
-1,1,$depth:0
-1,2,$depth:0
0,-3,$depth:0
0,-2,$depth:0
0,-1,$depth:0
0,0,$depth:0
0,1,$depth:0
0,2,$depth:0
1,-3,$depth:0
1,-2,$depth:0
1,-1,$depth:0
1,0,$depth:0
1,1,$depth:0
1,2,$depth:0
2,-2,$depth:0
2,-1,$depth:0
2,0,$depth:0
2,1,$depth:0
2,2,$depth:0
MAIN_END
$bottom_layer = <<'BOTTOM_END';
-1,0,$depth:0
-1,1,$depth:0
-1,2,$depth:0
0,0,$depth:0
0,1,$depth:0
0,2,$depth:0
1,0,$depth:0
1,1,$depth:0
1,2,$depth:0
2,1,$depth:0
2,2,$depth:0
BOTTOM_END
for ($level = $first_level; $level >= $last_level; $level -= $level_offset) {
open BO2, ">cave_h${level_height}_d$level.bo2" or die $!;
print BO2 $header;
for ($depth = $level; $depth > $level - $level_height; $depth --) {
if ($depth == $level) {
$layer = $top_layer;
}
elsif ($depth == $level - $level_height + 1) {
$layer = $bottom_layer;
}
else {
$layer = $main_layer;
}
$layer =~ s/\$depth/$depth/g;
print BO2 $layer;
}
close BO2;
}
In order to run this, you would copy the code into a file (e.g., caves.pl), change the file location after "#!" on the first line to the location of Perl on your machine using a text editor (/usr/bin/perl works on vanilla OS X), make the file executable (e.g., "chmod +x caves.pl" from the terminal on OS X or Linux), and execute the code (e.g., "./caves.pl" from the terminal on OS X or Linux).
Running the script will create a bunch of bo2 objects named something like "cave_h6_d-26.bo2". The number after "h" is the height (distance between floor and ceiling) of the caves created by that bo2 object, and the number after "d" is the depth below the surface of the cave ceiling. BO2 object with a zero or positive depth break the surface.
The way you use the bo2 objects in WorldPainter is to "Add a bo2 format custom obect layer" using the "+" at the bottom of the "Layers" panel, and paint this layer with a solid brush at maximum intensity over the region where you want a cave. Overlapping layers at different depths can be painted over each other to make higher caves and linked together to allow movement from level to level of the cave. Layers overlap if the depth values of their BO2 object differ by "2" or "4". Layers with depth values that differ by "6" just touch at the edges and may leave floating blocks at their boundary unless an intermediate depth layer is also painted in the area where they overlap.
The height and depth values of the generated bo2 objects can be controlled by changing the "$level_height" and "$level_offset" variables in the script. This allows you to control the height of a single layer cave generated by the bo2 objects, how much the layers overlap, and how big the steps are between layers. The default values generate a very dense set of depths (2 block steps). I recommend building a cave system using every other layer (e.g., depths 2, -2, -6, -10, ...) and only using the intermediate layers when you need a smooth transition between cave levels.
Have fun and let me know if you build anything awesome using these bo2 objects!
Allowing the caves to break the surface is what is causing your issue.
Is there any way to change the ocean/river floor?, I mean, without touching the terrain that is out the water.
D=
But I like having the caves break the surface. Hmmm..... Any work arounds or something in place to help prevent this in the future? Guess I'll have to use WorldEdit or something to "fixwater" for now.
-Part-time Maintainer of Ovo's Rustic Pack: Redemption
-Owner and Founder of ChiRho Entertainment-
This wouldnt fix the problem I had, unless something basic is escaping me.
I spend a long time crafting a map and exported it only to find the water level on my map one square different in height than the Minecraft generated one, leaving me with a map which the water levels at the edge dont match. I would like an option to raise only the water level by 'x' distance, or raise the land by 'x' squares, where this would basically rise all land blocks, or sea blocks by the stipulated amount, not the height map of the whole map.
Does this make sense ?... Does this already exist ?
I don't think there is a way to raise or lower just land X amount without affecting the water.
However, if you use the water tool you can click on existing water to raise or lower the water. Left click to raise or right click to lower.
Although... would it not be easier to just set the water level at 62 (default) if you now you might venture outside the edge of the map you created?
I could be wrong but, if you don't "populate" any areas that have water i don't think it will create caves in that area.
Hmmm, now I'm not sure.
You can now! Click file at the top and go to import, then click on Height Map.
You can use any image you want. Black and white works best though. White= High terrain Black= low terrain.
Using photos can have some pretty interesting results. I used a Dodge logo and made a Dodge island! LOL
Honda Land! haha
There should be more custom material brushes instead of just 5, and in the input box for selecting the block ID for the brush, it should be like the data value input box. I'm trying to make a map with new blocks that don't use the 1-255 IDs.
What I'm saying is, you should be able to use ANY block ID.
EDIT: Or is there a program like this, or at least can replace a block with any other type of block, regardless of the ID?
As WorldPainter is becoming more and more popular this thread is heating up a lot. Responding to everyone, although I would love to continue to, is just becoming too much work, especially since I have started a new job and will have less time to spend on WorldPainter.
Rest assured that I will continue to read everything that is posted here, and that I will take note of every suggestion. But from now I will only actually respond if you ask a direct question, it hasn't been answered by someone else already, and it's not something that's answered in the FAQ or you could find out really easily by just trying it out.
Please help me out by answering each other's questions, and by explaining this to people who might be wondering why I'm not responding. Thanks everyone!
I created WorldPainter. For support, please visit the WorldPainter subreddit.
Not on my machine. What do mean exactly by "crash"? Is there an error message?
There is no "coast" option. Do you mean the "beaches" option? Yes, that works. Note that the beaches don't consist of just sand though, it's a mix of sand, grass, gravel and clay. And it's only applied when you use the Mountain tool, or when you right-click with a Terrain type selected.
I created WorldPainter. For support, please visit the WorldPainter subreddit.
You can use a custom ground cover layer for this (press the + button on the Layers panel).
I may add a scale setting to the Resources layer, such as already exist for custom underground pockets layer (which does what you suggest).
I created WorldPainter. For support, please visit the WorldPainter subreddit.
It's not really a "custom brush", but I have some bo2 objects that make nice rivers when used with the proper technique. See Reply #3665 in this Forum. Making believable rivers in WorldPainter is pretty hard, and I don't think it would be possible to make a custom brush that does everything that is needed.
If it just freezes, without any error message and without coming out of it, then unfortunately I have no idea why that would be. You're the first to report that problem. I can just give general advice. Make sure Windows and Java are fully updated and malware free. If you're using a custom Windows theme, try disabling it. If you have some kind of "Windows light", use regular Windows. Try upgrading to Java 7, or if you have the 64-bit version, try the 32-bit version.
I created WorldPainter. For support, please visit the WorldPainter subreddit.