He keeps adding features to it. You can specify where it keeps those cache files, which is important if you backup your world directory, so it doesn't just bloat it to death. I noticed he added a marker for the spawn, so I used that example and converted the warps.txt to markers. That is, if you use hey0's mod.
I found out about pngcrush through that guy's readme, it looks more advanced than just "convert -quality 100" in ImageMagick, so what the heck, I upgraded to it.
And my python binary is "python26" since I have 2.6 and 2.4 installed.
I think my server is pretty griefer resistant now, so I won't mind just sharing the URL:
I touch a file at the end, so on each run it just recompresses anything updated after the last run. Even on my fully filled in 4300x2800 world, an update only takes about 5 minutes.
http://www.myminecraft.com Survival and creative servers
Teamspeak available, multiple anti-grief measures in place
VIP based whitelist to limit griefing even further.
I touch a file at the end, so on each run it just recompresses anything updated after the last run. Even on my fully filled in 4300x2800 world, an update only takes about 5 minutes.
I am totally stealing that touchfile code; I forgot that find had a -newer switch. Well played, sir.
29000/29766 chunks rendered
Done!
Traceback (most recent call last):
File "gmap.py", line 144, in <module>
main()
File "gmap.py", line 101, in main
q = quadtree.QuadtreeGen(w, destdir, depth=options.zoom, imgformat=imgformat)
File "/home/djkelso/bin/quadtree.py", line 85, in __init__
raise ValueError("Your map is waaaay too big!")
ValueError: Your map is waaaay too big!
recompressing png files with pngcrush
Rollback Post to RevisionRollBack
http://www.myminecraft.com Survival and creative servers
Teamspeak available, multiple anti-grief measures in place
VIP based whitelist to limit griefing even further.
I found they have a -z switch, changed it to 8 and its going further now.. just a fyi to everyone using this having problems.
Ratty, how did you go about making your admiunium wall? you use cfill from cuboid?
Rollback Post to RevisionRollBack
http://www.myminecraft.com Survival and creative servers
Teamspeak available, multiple anti-grief measures in place
VIP based whitelist to limit griefing even further.
I noticed he added a marker for the spawn, so I used that example and converted the warps.txt to markers. That is, if you use hey0's mod.
For those of you on Mysql setup with hey's, here is a little script to obtain warps from sql, and add to a text file for overview maker.. getmarkers.php
<?
$dbhost = 'localhost';
$dbuser = 'user;
$dbpass = 'pass';
$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql');
$dbname = 'database';
mysql_select_db($dbname);
$q = mysql_query('SELECT * FROM warps') or die(mysql_error());
while($row = mysql_fetch_array($q)) {
$warps .= "$row[name]:$row[x]:$row[y]:$row[z]\n";
}
mysql_close($conn);
$f = fopen("warps.txt", "w");
fwrite($f, $warps);
fclose($f);
?>
then in makeoverview.sh add these two lines right above the awk line at the bottom
echo Making Warps.txt
php getmarkers.php
note, you'll have to change the path to the warps.txt file which should now be in your ~/bin folder.
edited to fix markers.
Rollback Post to RevisionRollBack
http://www.myminecraft.com Survival and creative servers
Teamspeak available, multiple anti-grief measures in place
VIP based whitelist to limit griefing even further.
Ratty, how did you go about making your admiunium wall? you use cfill from cuboid?
I've never used that mod, it looked interesting, but I'm a little scared to run even more mods, then one more mod to hope gets updated after each minecraft release. I know Notch has not put much out lately, but I'm sure he will start showering us with updates soon!
I just used MCedit. It has problems if the chunks dont exist so I had to manually explore the border. Well, not really manually, I made a bunch of warp points and would teleport, wait for the lag to stop, teleport again, etc... until the full border was drawn.
Ratty, how did you go about making your admiunium wall? you use cfill from cuboid?
I've never used that mod, it looked interesting, but I'm a little scared to run even more mods, then one more mod to hope gets updated after each minecraft release. I know Notch has not put much out lately, but I'm sure he will start showering us with updates soon!
I just used MCedit. It has problems if the chunks dont exist so I had to manually explore the border. Well, not really manually, I made a bunch of warp points and would teleport, wait for the lag to stop, teleport again, etc... until the full border was drawn.
how did you figure out the warp points? mcedit show x,y,z and you created a warp based on that? I can do this in game with cuboids cfill function.. but i dont know how to go about getting my 4 corners lined up.
Rollback Post to RevisionRollBack
http://www.myminecraft.com Survival and creative servers
Teamspeak available, multiple anti-grief measures in place
VIP based whitelist to limit griefing even further.
I use hey0's mod, i just made warp points and looked at warps.txt.
Or you can do /getpos (also hey0's mod command).
If you're using cuboids, that has a hey0 plugin version, so if you're not using hey0, you should really consider it!
And I'd be scared to try cuboids across an area that is larger than you can see, how will it handle chunks that are saved to disk because nobody is in range? If cuboids will actually go ahead and load in those paged chunks for editing, I'll be extremely impressed.
But if you're in MCedit you can just visually see the map, and just draw your adminium walls wherever you want them. It's not that terrible, just a one time edit.
Hey Ratty,
Could I possibly convince you to post your world-trimming scripts here? I'm setting up my own server, and have everything up and going except world-size limitation. I'm not sure how to do that.
I use Centos and installed python 2.6 out of EPEL repository, that way it can live alongside the older python, but I can break out python 2.6 for running modern things.
mce is well documented, and after I made the above commandline he has added the ability to say "everything between these". The above coordinates is in the older format:
<x> <y> <z> <x size> <y size> <z size>
so you'd have to have the first coordinate be the very northeast of your map. Then the sizes would be like the coordinates of the Southwest edge, but to get the "size" so you'd subtract them. Math is not my strong suit so I had to struggle with that a little. :smile.gif:
Now to add the air buffer, you can do nearly the same command, but change it to createchunks
Oh and I guess to make sense, you need to adjust the numbers to expand out a bit.
That will fill in any gaps in your map with air, so be very careful you don't have any little unexplored area in your map or those will be turned into void!
That is just basic trimming, keep in mind that the chunks will regrow as people explore, so I recommend about 11 chunks (170 or so blocks) in every direction, maybe even a couple more chunks too.
Also, it doesnt matter what number you put for Y axis, since both operations affect the entire chunk anyway.
I did a lot more fancy stuff that I haven't listed out to make it perfect, probably more than any sane person should, but I really got hooked on making it look perfect. I put some custom things in the air border, like this big text logo I inserted. So I have a script trim past the air border, but copy in those custom chunks too.
Its hard to see, but its in the upper right corner of this
But if you put the prune command in your crontab, it will keep the size of the map down just fine, and not look that bad.
If you run into a problem where the server crashes when you explore the air blocks, the fix for that is to relight the blocks, you can just do your whole map, though it can take a long time to process.
I do it when the server is running, just make sure nobody is running around near the edge of the world. But that is unlikely. And of course you'll do a full backup before you start. :smile.gif:
Oh and you can use something like c10t to make a map of the world so you can make sure it worked as expected, its a lot easier than joining the game to inspect the work.
Help? I'm running makemaps.sh manually, I got everything figured out except this.....
zaery@my-server:~/mcserver/bin$ ./makemaps.sh
./makemaps.sh: line 10: /home/zaery/mcserver/bin/cart5: is a directory
convert: unable to open image `map1-*.png': No such file or directory @ blob.c/OpenBlob/2480.
convert: unable to open file `map1-*.png' @ png.c/ReadPNGImage/2917.
convert: missing an image filename `world-20101109-1610.png' @ convert.c/ConvertImageCommand/2838.
ln: accessing `world-20101109-1610.png': No such file or directory
old world-20101109-1559.png
new world-20101109-1603.png
compare: image size differs `world-20101109-1559.png' @ compare.c/SimilarityImage/1509.
convert: unable to open image `/tmp/makechanges.21921..1.tga': No such file or directory @ blob.c/OpenBlob/2480.
convert: missing an image filename `/tmp/makechanges.21921..2.tga' @ convert.c/ConvertImageCommand/2838.
composite: unable to open image `/tmp/makechanges.21921..2.tga': No such file or directory @ blob.c/OpenBlob/2480.
composite: missing an image filename `changes/changes-world-20101109-1603.png' @ composite.c/CompositeImageCommand/1609.
ln: accessing `changes/changes-world-20101109-1603.png': No such file or directory
./makemaps.sh: line 10: /home/zaery/mcserver/bin/cart5: is a directory
That should tell you right there. You must have a cart5 directory in there, it expects to find ~/bin/cart5 to be cartographer binary itself.
This stuff keeps changing fast, I've long since gave up on cartographer and switched to c10t. viewtopic.php?f=25&t=33803
Hopefully you know enough to modify that yourself, that is most of the fun of doing this stuff, figuring out how to tweek this stuff to your preference. Example of c10t:
c10t -m 4 -w /path/to/world -o /path/to/your/map.png -q
Well, that renaming fixed the first line, but didnt fix any other lines, so it's still got issues. How would I get c10t to replace Cartograph and work nicely with all the scripts you wrote?
I'm running Minecraft server on a Linux dedicated server, and I tried to run browman Minecraft Overview, but I got an error and I can't solve it:
rios@icarus:~/tmp/brownan-Minecraft-Overviewer-914a307$ python2.6 gmap.py /home/minecraft/world/ imgs/
2010-11-29 19:42:38,744 [WARNING] alpha_over extension not found; using default PIL paste()
2010-11-29 19:42:38,874 [INFO] Welcome to Minecraft Overviewer!
2010-11-29 19:42:38,874 [INFO] Scanning chunks
Traceback (most recent call last):
File "/home/rios/tmp/brownan-Minecraft-Overviewer-914a307/chunk.py", line 120, in render_and_save
return a.render_and_save(cave)
File "/home/rios/tmp/brownan-Minecraft-Overviewer-914a307/chunk.py", line 361, in render_and_save
os.unlink(dest_path)
OSError: [Errno 2] No such file or directory: '/home/minecraft/world/o/1g/img.o.-c.nocave.a059ad.png'
Traceback (most recent call last):
File "/home/rios/tmp/brownan-Minecraft-Overviewer-914a307/chunk.py", line 120, in render_and_save
return a.render_and_save(cave)
File "/home/rios/tmp/brownan-Minecraft-Overviewer-914a307/chunk.py", line 361, in render_and_save
os.unlink(dest_path)
OSError: [Errno 2] No such file or directory: '/home/minecraft/world/o/1m/img.o.-6.nocave.c00f48.png'
Traceback (most recent call last):
File "/home/rios/tmp/brownan-Minecraft-Overviewer-914a307/chunk.py", line 120, in render_and_save
return a.render_and_save(cave)
File "/home/rios/tmp/brownan-Minecraft-Overviewer-914a307/chunk.py", line 361, in render_and_save
os.unlink(dest_path)
OSError: [Errno 2] No such file or directory: '/home/minecraft/world/o/1/img.o.1.nocave.a94d21.png'
Traceback (most recent call last):
File "gmap.py", line 173, in <module>
main()
File "gmap.py", line 120, in main
w.go(options.procs)
File "/home/rios/tmp/brownan-Minecraft-Overviewer-914a307/world.py", line 213, in go
self.chunkmap = self._render_chunks_async(chunks, procs)
File "/home/rios/tmp/brownan-Minecraft-Overviewer-914a307/world.py", line 311, in _render_chunks_async
results[(col, row)] = result.get()
File "/usr/lib/python2.6/multiprocessing/pool.py", line 422, in get
raise self._value
OSError: [Errno 2] No such file or directory: '/home/minecraft/world/o/1/img.o.1.nocave.a94d21.png'
Traceback (most recent call last):
File "/home/rios/tmp/brownan-Minecraft-Overviewer-914a307/chunk.py", line 120, in render_and_save
return a.render_and_save(cave)
File "/home/rios/tmp/brownan-Minecraft-Overviewer-914a307/chunk.py", line 361, in render_and_save
os.unlink(dest_path)
OSError: [Errno 2] No such file or directory: '/home/minecraft/world/o/1k/img.o.-8.nocave.038da0.png'
But I can't find any .png in wolrd dir on server nether on my client (on Mac OS X).
Any idea ?
If it helps, here is how I am invoking Minecraft-overviewer:
http://minecraft.nom-nom-nom.us/
Lately I've been using minecraft-overviewer.
http://github.com/brownan/Minecraft-Ove ... README.rst
He keeps adding features to it. You can specify where it keeps those cache files, which is important if you backup your world directory, so it doesn't just bloat it to death. I noticed he added a marker for the spawn, so I used that example and converted the warps.txt to markers. That is, if you use hey0's mod.
I found out about pngcrush through that guy's readme, it looks more advanced than just "convert -quality 100" in ImageMagick, so what the heck, I upgraded to it.
And my python binary is "python26" since I have 2.6 and 2.4 installed.
I think my server is pretty griefer resistant now, so I won't mind just sharing the URL:
http://minecraft.nom-nom-nom.us/maps/overview-nomland/
makeoverview.sh
I touch a file at the end, so on each run it just recompresses anything updated after the last run. Even on my fully filled in 4300x2800 world, an update only takes about 5 minutes.
warp2markers.awk
this is going to take a while~! :smile.gif:
http://www.myminecraft.com Survival and creative servers
Teamspeak available, multiple anti-grief measures in place
VIP based whitelist to limit griefing even further.
I am totally stealing that touchfile code; I forgot that find had a -newer switch. Well played, sir.
http://www.myminecraft.com Survival and creative servers
Teamspeak available, multiple anti-grief measures in place
VIP based whitelist to limit griefing even further.
Ratty, how did you go about making your admiunium wall? you use cfill from cuboid?
http://www.myminecraft.com Survival and creative servers
Teamspeak available, multiple anti-grief measures in place
VIP based whitelist to limit griefing even further.
For those of you on Mysql setup with hey's, here is a little script to obtain warps from sql, and add to a text file for overview maker.. getmarkers.php
then in makeoverview.sh add these two lines right above the awk line at the bottom
note, you'll have to change the path to the warps.txt file which should now be in your ~/bin folder.
edited to fix markers.
http://www.myminecraft.com Survival and creative servers
Teamspeak available, multiple anti-grief measures in place
VIP based whitelist to limit griefing even further.
I've never used that mod, it looked interesting, but I'm a little scared to run even more mods, then one more mod to hope gets updated after each minecraft release. I know Notch has not put much out lately, but I'm sure he will start showering us with updates soon!
I just used MCedit. It has problems if the chunks dont exist so I had to manually explore the border. Well, not really manually, I made a bunch of warp points and would teleport, wait for the lag to stop, teleport again, etc... until the full border was drawn.
how did you figure out the warp points? mcedit show x,y,z and you created a warp based on that? I can do this in game with cuboids cfill function.. but i dont know how to go about getting my 4 corners lined up.
http://www.myminecraft.com Survival and creative servers
Teamspeak available, multiple anti-grief measures in place
VIP based whitelist to limit griefing even further.
Or you can do /getpos (also hey0's mod command).
If you're using cuboids, that has a hey0 plugin version, so if you're not using hey0, you should really consider it!
And I'd be scared to try cuboids across an area that is larger than you can see, how will it handle chunks that are saved to disk because nobody is in range? If cuboids will actually go ahead and load in those paged chunks for editing, I'll be extremely impressed.
But if you're in MCedit you can just visually see the map, and just draw your adminium walls wherever you want them. It's not that terrible, just a one time edit.
p.s. As for converting warp points to minecraft overviewer, this perl script is awesome
http://github.com/brownan/Minecraft-Ove ... s#issue/66
just edit the path to your minecraft dir in the script first.
Could I possibly convince you to post your world-trimming scripts here? I'm setting up my own server, and have everything up and going except world-size limitation. I'm not sure how to do that.
Thanks!
coandco
I used mce
viewtopic.php?f=1012&t=38715&p=659718
its a python script that does a million wonderful things.
python26 mce.py /tmp/mc/creative prune 176 1 176 3248 1 4784
I use Centos and installed python 2.6 out of EPEL repository, that way it can live alongside the older python, but I can break out python 2.6 for running modern things.
mce is well documented, and after I made the above commandline he has added the ability to say "everything between these". The above coordinates is in the older format:
<x> <y> <z> <x size> <y size> <z size>
so you'd have to have the first coordinate be the very northeast of your map. Then the sizes would be like the coordinates of the Southwest edge, but to get the "size" so you'd subtract them. Math is not my strong suit so I had to struggle with that a little. :smile.gif:
Now to add the air buffer, you can do nearly the same command, but change it to createchunks
python26 mce.py /tmp/mc/creative createchunks 176 1 176 3248 1 4784
Oh and I guess to make sense, you need to adjust the numbers to expand out a bit.
That will fill in any gaps in your map with air, so be very careful you don't have any little unexplored area in your map or those will be turned into void!
That is just basic trimming, keep in mind that the chunks will regrow as people explore, so I recommend about 11 chunks (170 or so blocks) in every direction, maybe even a couple more chunks too.
Also, it doesnt matter what number you put for Y axis, since both operations affect the entire chunk anyway.
I did a lot more fancy stuff that I haven't listed out to make it perfect, probably more than any sane person should, but I really got hooked on making it look perfect. I put some custom things in the air border, like this big text logo I inserted. So I have a script trim past the air border, but copy in those custom chunks too.
Its hard to see, but its in the upper right corner of this
But if you put the prune command in your crontab, it will keep the size of the map down just fine, and not look that bad.
If you run into a problem where the server crashes when you explore the air blocks, the fix for that is to relight the blocks, you can just do your whole map, though it can take a long time to process.
One more question: Do you do the prune/airfill while the server is running, or do you have to turn off the server temporarily to do it?
Oh and you can use something like c10t to make a map of the world so you can make sure it worked as expected, its a lot easier than joining the game to inspect the work.
I'll give you some gold:
That should tell you right there. You must have a cart5 directory in there, it expects to find ~/bin/cart5 to be cartographer binary itself.
This stuff keeps changing fast, I've long since gave up on cartographer and switched to c10t.
viewtopic.php?f=25&t=33803
Hopefully you know enough to modify that yourself, that is most of the fun of doing this stuff, figuring out how to tweek this stuff to your preference. Example of c10t:
c10t -m 4 -w /path/to/world -o /path/to/your/map.png -q
If it helps, here is how I am invoking Minecraft-overviewer:
You could try running that (with or without --night).