Coder Social home page Coder Social logo

bedrock-viz / bedrock-viz Goto Github PK

View Code? Open in Web Editor NEW
231.0 27.0 49.0 1.33 MB

Minecraft Bedrock Edition World Visualization & Reporting Tool with Web App

License: GNU General Public License v2.0

CMake 0.54% C++ 58.08% CSS 0.46% JavaScript 14.91% Shell 0.13% Dockerfile 0.09% HTML 25.78%
minecraft mcpe bedrock

bedrock-viz's Introduction

Bedrock Viz

GitHub release (latest by date including pre-releases) GitHub last commit GitHub Workflow Status GitHub issues GitHub pull requests

ReportCI Codecov

Discord

A fork of mcpe_viz.

Bedrock Viz is a tool that parses Minecraft Bedrock Edition world files. It creates overview images from the world files, and reports lots of details on your world.

It can also create a powerful Google Maps-like Web App for viewing your world.

Additional Features:

  • Create a powerful Google Maps-like web app viewer for your world.

    • Browse through all 256 layers of your world (Overworld and Nether) from bedrock to build limit.
    • Examine the location and details of mobs and items in your world.
    • Visualize chunk boundaries -- consider it an extremely cumbersome F3/debug mode!
    • Find slime chunks -- well, probably... slime chunk finding code is currently a bit weird in MCPE, it appears to work, but please be sure to confirm slimes are spawning in a chunk before you do a ton of work :)
    • Explore the biomes of your world.
    • Shaded-relief elevation overlay -- get a sense of the topography of your world.
    • Measure distances in your world
  • Create many types of images:

    • All layers of your world
    • Biomes in your world (very interesting!)
    • Block height in your world (kind of like a topographic map)
  • Create movies of all layers from bedrock to build limit (ffmpeg required)

Quick Start

For Windows users:

  • Download the zip file and unzip that file
  • Inside you will find bedrock-viz.exe
  • Run bedrock-viz.exe in your favorite terminal program (such as Command Prompt or Power Shell)

For macOS users(requires macOS 10.15 and above):

  • Install via homeberw:
    brew tap bedrock-viz/homebrew-tap && brew install bedrock-viz
    

For Linux users:

DO NOT RUN THIS ON YOUR ORIGINAL WORLD SAVES

MAKE A BACKUP COPY OF YOUR DATA AND RUN THIS AGAINST THAT COPY ONLY

Use the app to select the MCPE world file, the output directory, output name, and mode. Press "Go!". Watch the progress of bedrock-viz. If it completes successfully, you can click the "Launch Web App" button. If there was a problem, you should look in the "Progress" window for details that might help you resolve the issue.

See below for Web App usage notes.

Quick Start -- How to run it on Windows from the command-line

  • Same as above to get the files.
  • Open a command prompt and run it something like this:
bedrock-viz.exe --db path-to-your-world-file-dir/ --out out1 --html-most

Note: Replace "path-to-your-world-file-dir/" with the actual directory which contains your world files -- it wants the directory that has level.dat in it.

DO NOT RUN THIS ON YOUR ORIGINAL MCPE DATA FILES; MAKE A BACKUP COPY OF YOUR DATA AND RUN THIS AGAINST THAT COPY ONLY!

This will produce a bunch of image files and "index.html" in the directory out1. Open "index.html" in your browser.

Web App

You can create a browser-based viewer for your world files. It will allow you to pan, zoom and switch between the different images. It's pretty spiffy!

To make a quick viewer (with all regular images, but without indvidual layers), do something like this:

> ./bedrock-viz --db ./mcpe/another1/ --out ./mcpe/output/out1 --html-most

To make a complete viewer (with all images and all layers), do something like this:

> ./bedrock-viz --db ./mcpe/another1/ --out ./mcpe/output/out1 --html-all

This will create a LOT of images -- individual images for each layer of the overworld and nether, as well as all the regular images. It will also create "./mcpe/output/out1.html". Load this file in your browser and you will have an Openlayers-based viewer for your world! Openlayers (http://openlayers.org/) is a powerful javascript library for mapping.

Web App Usage Notes:

  • Zoom in with double click or press the "+" button (upper left)
  • Zoom out with shift-double click or press the "-" button (upper left)
  • Move with click and drag
  • Rotate with shift-alt click and drag
  • Your mouse position is shown in the upper right in world coordinates and image coordinates
  • You can go full-screen (button under mouse position window)
  • Tool bar at the bottom of the screen:
    • Choose Overworld or Nether
    • Scroll through the layers from 0 (bedrock) to 255 (build limit)
    • Choose Overview, Biome etc
    • Show Mobs and Objects -- click on an entry and the map will be updated with labeled points. You can toggle on as many different types as you like. Click on the points or labels to get more info on the item. Note that labels are not drawn when you are zoomed out.
    • Enable elevation overlay (shaded relief)
    • Enable chunk grid overlay

Web App Notes

If you are loading the web app from a local file -- that is, not accessing it from a web server -- your browser may impose restrictions on image loading and access to image pixels which makes it very difficult for the web app to deliver the best experience. Currently, Firefox appears to be the browser most willing to play nicely. The web app will let you know if you are impacted by this issue. For example, on Chrome, you will not see block information on mouse over, or be able to see the elevation overlay -- both of which are totally cool :)

If you are running Firefox or serving the files from a web server, you can make the web app load a little bit faster by adding the option "--no-force-geojson" to your command line. This prevents bedrock-viz from using a workaround for the above issue.

Using an NGINX Webserver in Docker to display your world

If you want to display your map locally through a webserver in Docker, these commands will set up an NGINX webserver with your data copied into a volume mounted to the /usr/share/nginx/html directory. The webserver is exposed on port 8080 and the web app can be viewed at http://localhost:8080.

Be aware anything in your maps folder will now be exposed via the web-server.

docker run --name bedrock-viz-http -v /path/to/output/folder:/usr/share/nginx/html:ro -p 8080:80 -d nginx

You can check the status of your container using docker ps:

docker ps --filter "name=bedrock-viz-http"
CONTAINER ID   IMAGE     COMMAND                  CREATED         STATUS         PORTS                                   NAMES
5a1797ab3b7f   nginx     "/docker-entrypoint.…"   2 minutes ago   Up 2 minutes   0.0.0.0:8080->80/tcp, :::8080->80/tcp   bedrock-viz-http

To clean up your webserver and data when you are done:

docker kill bedrock-viz-http
docker rm bedrock-viz-http

Usage

MAKE A COPY OF YOUR DATA AND RUN THIS AGAINST THAT COPY ONLY!

Here's an example invocation:

> ./bedrock-viz --grid --db ./mcpe/another1/ --out ./mcpe/output/out1

This will read the leveldb from the "./mcpe/another1" folder and name output files starting with "./mcpe/output/out1", and it will draw chunk boundaries on your output image. This also dumps the voluminous output to "out1.log". The log file has a ton of interesting information about your world. "grep" is your friend.

Please note that --db expects the directory which contains "level.dat".

To view all command line options, run

"./bedrock-viz --help"

For extended usage instructions, see USAGE.md

How to backup your MCPE world files

On Android, see this link.

On iOS or Windows 10, see this link

Note that MCPE is sometimes weird about actually closing world files -- that is, you think that MCPE is closed and should be done with the world file, but a backup of it may not work correctly. To be certain that you get a good backup, you should reboot and then do the backup before starting MCPE again.

Automated backup to Dropbox using DropSync (Android)

On Android, you can use DropSync to automatically backup your MCPE world to your dropbox account. You configure this tool to backup any of your world files to dropbox. As you play on your device, DropSync will copy the updated world files to Dropbox. Very cool! Install Dropbox's client (there's even one for Linux) on the machine you use for MCPE Viz. It is recommended to copy the data from your local Dropbox folder to another folder to prevent Dropbox from syncing from your MCPE Viz machine. Running MCPE Viz on the world files does change the world files. This method has only been lightly tested, so be careful.

Error messages

This program uses a lot of file handles and depending on your OS's defaults (OS X's are too low) you can have a failure that resembles the following:

  Generate full-size slices
    Writing all images in one pass
  ERROR: Failed to open output file (../worlds/output/images/kYQJAGOeAQA=.mcpe_viz_slice.full.overworld.247.png) errno=Too many open files(24)
  libpng error: No IDATs written into file
  ERROR: PngWriter setjmp triggered -- image might be too large (2672 x 1600)
  zsh: segmentation fault  ../bedrock-viz/build/bedrock-viz --db ../worlds/kYQJAGOeAQA= --out  --html-all

You can check your limits and temporarily set file descriptors with the following:

ulimit -a
ulimit -n 8192

Compiling from source

see BUILD.md

bedrock-viz's People

Contributors

bazfp avatar cabbey avatar dazworrall avatar geoffholden avatar paulgrahek avatar phunni avatar scp-r avatar spongecade avatar stsquad avatar terrykimura avatar tomnolan avatar wgebczyk avatar zimage avatar zisen123 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bedrock-viz's Issues

Can't map players

I followed the mcpe_viz.cfg tip to map the players and it's not working, players are always like Unknown

Here is a piece of the log
[ info] Unmapped remote player: 22ab1e1d-4159-3867-8f3b-a60cb472ea11
[ info] Unmapped remote player: 33d314f1-5884-3d3f-a55c-d66847f15f55
[ info] Unmapped remote player: 71d453d4-e55c-3a74-87ef-5a769b061113
[ info] Unmapped remote player: 806cbaa5-d1da-37ce-b046-509420b1e99f
[ info] Unmapped remote player: 82dc807b-f314-3b6d-bc6a-e823b67e25af
[ info] Unmapped remote player: e7b0b45e-9684-3508-b36c-b52c620bcb55
[ info] Unmapped remote player: server_48a3f13b-b55c-4d2b-ab0a-223501620826
[ info] Unmapped remote player: server_7a24e15e-5c2d-43e4-9704-13e21f19c7b6
[ info] Unmapped remote player: server_fbb51582-a31c-4585-945c-733af1725977

I tried to only configure the ones that are appearing on the map, which are the "server" ones...

I created the mapping file:
mcpe_viz.local.cfg:
player-id: server_48a3f13b-b55c-4d2b-ab0a-223501620826 Nick1
player-id: server_fbb51582-a31c-4585-945c-733af1725977 Nick2
player-id: server_7a24e15e-5c2d-43e4-9704-13e21f19c7b6 Nick3

What is wrong here? is this some bug?

Thanks a lot.

Nether update support

Need to make a bunch of updates to the xml for nether and a few changes to allow for additional block ids. Ultimately this should all be overhauled and just ignore the id numbers since they don't seem to be used in modern levels and only unames are with the taglist dictionary included with each chunk based on unames alone. There is a lot of legacy code in here that probably needs to be removed for the sake of sanity and making updates easier.

#4, #12, #20 should probably all get fixed together with the nether update changes.

NBT exception while reading levels db

Working from master (I pulled fresh this evening and got a97c0e2) I'm getting this error collection while parsing my save files.

[  error] NBT exception: (Invalid tag type: 0) (eof=false) (is=false) (tc=144) (pos=-1) (buflen=13563) (parseNbtQuiet)
[warning] Unexpected NBT format in _do_chunk_v7
[  error] NBT exception: (Invalid tag type: 0) (eof=false) (is=false) (tc=137) (pos=-1) (buflen=13237) (parseNbtQuiet)
[warning] Unexpected NBT format in _do_chunk_v7

It occurs twice in the output, once during the parse all level db step and again during the output for the overworld.

This is on an Ubuntu 19.10 box running the dedicated server. The scripts I use to manage the dedicated server does a nightly backup at 4am and I just pull those off my NAS and unzip them locally to parse, then write the output back to the SMB mount which is then served up via nginx. (Once I figured out that the leveldb library can't cope with opening the database over an SMB mount at least... that took a couple hours.)

Full output dump:
run errors.txt

warning on build

First off let me say, great project, when I map out my world, i get the following warnings

[warning] Unknown uname: minecraft:smooth_stone
[warning] Unknown uname: minecraft:stone_stairs

High memory usage

Hi All,

Is everyone seeing high memory usage whilst building layers? Eventually its runs out of memory and crashes.

Changes in HTML template for latest entities

The HTML template needs updating to reflect newer entities:

Heres the file I have used.

bedrock_viz.html.template.zip

@@ -99,10 +99,12 @@
            <span class="caret"></span></button>
          <ul class="dropdown-menu">
	    <li><a href="#" class="entityToggle" data-type="P" data-id="19">Bat</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="122">Cat</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="122">Bee</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="75">Cat</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="10">Chicken</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="11">Cow</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="24">Donkey</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="121">Fox</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="23">Horse</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="26">Horse, Skeleton</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="27">Horse, Zombie</a></li>
@ -111,14 +113,17 @@
	    <li><a href="#" class="entityToggle" data-type="P" data-id="16">Mooshroom</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="25">Mule</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="22">Ocelot</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="123">Panda</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="113">Panda</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="30">Parrot</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="12">Pig</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="28">Polar Bear</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="18">Rabbit</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="13">Sheep</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="21">Snow Golem</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="125">Strider</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="15">Villager</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="115">Villager2</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="118">Wandering Trader</a></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="14">Wolf</a></li>
	    <li role="separator" class="divider"></li>
	    <li><a href="#" class="entityToggle" data-type="P" data-id="112">Cod</a></li>
@ -150,6 +155,9 @@
	    <li><a href="#" class="entityToggle" data-type="H" data-id="50">Guardian, Elder</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="47">Husk</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="51">NPC</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="58">Phantom</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="114">Pillager</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="59">Ravager</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="39">Silverfish</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="34">Skeleton</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="48">Skeleton, Wither</a></li>
@ -157,15 +165,20 @@
	    <li><a href="#" class="entityToggle" data-type="H" data-id="35">Spider</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="46">Stray</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="105">Vex</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="57">Vindicator</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="45">Witch</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="52">Wither</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="32">Zombie</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="44">Zombie Villager</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="116">Zombie Villager2</a></li>
	    <li role="separator" class="divider"></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="43">Blaze</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="41">Ghast</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="42">Magma Cube</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="36">Zombie Pigman</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="123">Piglin</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="124">Hoglin</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="126">Zoglin</a></li>
	    <li role="separator" class="divider"></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="53">Ender Dragon</a></li>
	    <li><a href="#" class="entityToggle" data-type="H" data-id="55">Endermite</a></li>

No GUI from .exe and HTML page links do not go anywhere

Hello. When I run this command:
bedrock-viz_v0.1.1_win64>bedrock-viz.exe --no-force-geojson --db "C:\Users\roble\AppData\Local\Packages\Microsoft.MinecraftUWP_8wekyb3d8bbwe\LocalState\games\com.mojang\minecraftWorlds\PWfOXo6uRwA=/" --out out1 --html-all
I see a new out1.geojson and out1.html but no images. And the links in the HTML file do not do anything.
Here is the console output:
Packages\Microsoft.MinecraftUWP_8wekyb3d8bbwe\LocalState\games\com.mojang\minecraftWorlds\PWfOXo6uRwA=/" --out out1 --html-all
Reading XML from data/mcpe_viz.xml
parseLevelFile: name=C:\Users\roble\AppData\Local\Packages\Microsoft.MinecraftUWP_8wekyb3d8bbwe\LocalState\games\com.mojang\minecraftWorlds\PWfOXo6uRwA=//level.dat version=8 len=2081
Found World Spawn: x=4 y=32767 z=12
Level name is [The best place to live and wor]
DB Open: dir=C:\Users\roble\AppData\Local\Packages\Microsoft.MinecraftUWP_8wekyb3d8bbwe\LocalState\games\com.mojang\minecraftWorlds\PWfOXo6uRwA=/
DB Open Status: OK (block_size=4096 bloom_filter_bits=10)
Scan keys to get world boundaries
Bounds (chunk): DimId=0 X=(-18 19) Z=(-13 16)
Bounds (pixel): DimId=0 X=(-288 304) Z=(-208 256) Image=(608 480)
Bounds (chunk): DimId=1 X=(0 0) Z=(0 0)
Bounds (pixel): DimId=1 X=(0 0) Z=(0 0) Image=(16 16)
Bounds (chunk): DimId=2 X=(0 0) Z=(0 0)
Bounds (pixel): DimId=2 X=(0 0) Z=(0 0) Image=(16 16)
4350 records
Active 'hide-top', 'force-top', and 'geojson-block':
None
Parse all leveldb records
INFO: Unmapped remote player: 20b87a14-9120-35a9-9e98-9b6278fd7f65
INFO: Unmapped remote player: 5e5281d1-ee65-3a59-a1be-e2d8bc82837b
INFO: Unmapped remote player: server_49e3de99-cfa6-47f9-acd7-e7aaedc85105
Player Position: Dimension=0 Pos=(-7.42362, 59.62, 16.1678 @ image 280, 224) Rotation=(-81.712891, -0.327026)
Read 4350 records
Status: OK
Check Spawnable: Dimension 'overworld' (0)
Check Spawnable: Dimension 'nether' (1)
Check Spawnable: Dimension 'the-end' (2)
Do Output: overworld
Generate Image
Info: World (0, 0) is at image (288, 208)
Info: World Spawn (4, 12) is at image (292, 220)
Generate Biome Image
Generate Grass Image
Generate Height Column Image
Generate Height Column (grayscale) Image
Generate Height Column (alpha) Image
Generate Block Light Image
Generate Sky Light Image
Generate Slime Chunks Image
Generate Shaded Relief Image
Generate full-size slices
Writing all images in one pass
Row 0 of 480
Row 320 of 480
Do Output: nether
Generate Image
Generate Biome Image
Generate Grass Image
Generate Height Column Image
Generate Height Column (grayscale) Image
Generate Height Column (alpha) Image
Generate Block Light Image
Generate Sky Light Image
Generate Slime Chunks Image
Generate Shaded Relief Image
Generate full-size slices
Writing all images in one pass
Row 0 of 16
Do Output: the-end
Generate Image
Generate Biome Image
Generate Grass Image
Generate Height Column Image
Generate Height Column (grayscale) Image
Generate Height Column (alpha) Image
Generate Block Light Image
Generate Sky Light Image
Generate Slime Chunks Image
Generate Shaded Relief Image
Generate full-size slices
Writing all images in one pass
Row 0 of 16
Do Output: html viewer
Done.

Build instructions fail at cmake on Ubuntu 18.04

On Ubuntu 18.04 I install the pre-requisites and run the build.md commands (I just make them a script, so they're verbatim), but it results in:

-- Build type: Release
You have called ADD_LIBRARY for library pugixml without any source files. This typically indicates a problem with your CMakeLists.txt file
You have called ADD_LIBRARY for library pugixml-shared without any source files. This typically indicates a problem with your CMakeLists.txt file
You have called ADD_LIBRARY for library pugixml-static without any source files. This typically indicates a problem with your CMakeLists.txt file
-- Found PNG: /usr/lib/x86_64-linux-gnu/libpng.so (found version "1.6.34")
-- Boost version: 1.65.1
-- Found the following Boost libraries:
--   program_options
CMake Error at CMakeLists.txt:69 (target_link_libraries):
  Object library target "libbedrock-viz" may not link to anything.


-- Configuring incomplete, errors occurred!
See also "/home/deepsummer/bedrock-viz/build/CMakeFiles/CMakeOutput.log".
See also "/home/deepsummer/bedrock-viz/build/CMakeFiles/CMakeError.log".
make: *** No targets specified and no makefile found.  Stop.

I was able to get this working with the same steps on Ubuntu 19.10, however.

Multi-threaded render pipeline

This will require a massive overhaul of the parsing and rendering pipelines.

  1. Maps should be chunked out into different regions (minecraft already has a concept in leveldb for this... 32x32 chunks) when parsing. This will fix major memory issues for enormous worlds.
  2. Parsing/rendering should probably be done together on a region/chunk basis rather than trying to parse the entire world first and then render it together.

Allow worlds to be rendered within a certain set of coordinates

There is already support for exporting a schematic between a certain set of coordinates. It would be great to allow the map to be rendered within a certain set of coordinates as well.

Arguments should be implemented as:
--limit-x min,max
--limit-z min,max

There should not be any requirement for a specific combination of these to be supplied. If the user wants to use only --limit-z without --limit-x, that should be okay.

This will help as a workaround to the issue described in #35

Ref #25 Dead links and no images.

I'm still having the same issue. I do not see the images and the links go no where.

C:\Users\roble\Downloads\bedrock-viz_v0.1.1_win64 (1)>bedrock-viz.exe --no-force-geojson --db "C:\Users\roble\AppData\Local\Packages\Microsoft.MinecraftUWP_8wekyb3d8bbwe\LocalState\games\com.mojang\minecraftWorlds\NUsWXbvtQgA=" --out out3 --html-most
Reading XML from data/mcpe_viz.xml
parseLevelFile: name=C:\Users\roble\AppData\Local\Packages\Microsoft.MinecraftUWP_8wekyb3d8bbwe\LocalState\games\com.mojang\minecraftWorlds\NUsWXbvtQgA=/level.dat version=8 len=2121
Found World Spawn: x=1028 y=32767 z=4
Level name is [NICKLE]
DB Open: dir=C:\Users\roble\AppData\Local\Packages\Microsoft.MinecraftUWP_8wekyb3d8bbwe\LocalState\games\com.mojang\minecraftWorlds\NUsWXbvtQgA=
DB Open Status: OK (block_size=4096 bloom_filter_bits=10)
Scan keys to get world boundaries
Bounds (chunk): DimId=0 X=(0 98) Z=(-16 46)
Bounds (pixel): DimId=0 X=(0 1568) Z=(-256 736) Image=(1584 1008)
Bounds (chunk): DimId=1 X=(0 0) Z=(0 0)
Bounds (pixel): DimId=1 X=(0 0) Z=(0 0) Image=(16 16)
Bounds (chunk): DimId=2 X=(0 0) Z=(0 0)
Bounds (pixel): DimId=2 X=(0 0) Z=(0 0) Image=(16 16)
22436 records
Active 'hide-top', 'force-top', and 'geojson-block':
None
Parse all leveldb records
Processing records: 10000 / 22436 (44.6%)
Processing records: 20000 / 22436 (89.1%)
INFO: Unmapped remote player: 20b87a14-9120-35a9-9e98-9b6278fd7f65
INFO: Unmapped remote player: 5e5281d1-ee65-3a59-a1be-e2d8bc82837b
INFO: Unmapped remote player: 853eabc6-e011-308f-9d65-5ce75f24842a
INFO: Unmapped remote player: f3ffaf8c-58c1-33ef-8583-1189c4421855
INFO: Unmapped remote player: server_adacfe5e-0f47-49f0-b0c3-f293d2e5c20f
INFO: Unmapped remote player: server_b44d8f21-8df4-44fc-8142-0ab1793c6fcf
Player Position: Dimension=0 Pos=(1190.7, 65.62, 261.3 @ image 1190, 517) Rotation=(41.245667, 0.979797)
Read 22436 records
Status: OK
Check Spawnable: Dimension 'overworld' (0)
Check Spawnable: Dimension 'nether' (1)
Check Spawnable: Dimension 'the-end' (2)
Do Output: overworld
Generate Image
Info: World Spawn (1028, 4) is at image (1028, 260)
Generate Biome Image
Generate Grass Image
Generate Height Column Image
Generate Height Column (grayscale) Image
Generate Height Column (alpha) Image
Generate Block Light Image
Generate Sky Light Image
Generate Slime Chunks Image
Generate Shaded Relief Image
Do Output: nether
Generate Image
Generate Biome Image
Generate Grass Image
Generate Height Column Image
Generate Height Column (grayscale) Image
Generate Height Column (alpha) Image
Generate Block Light Image
Generate Sky Light Image
Generate Slime Chunks Image
Generate Shaded Relief Image
Do Output: the-end
Generate Image
Generate Biome Image
Generate Grass Image
Generate Height Column Image
Generate Height Column (grayscale) Image
Generate Height Column (alpha) Image
Generate Block Light Image
Generate Sky Light Image
Generate Slime Chunks Image
Generate Shaded Relief Image
Do Output: html viewer
Done.

Bring back the histogram

Histogram needs a fresh implementation since it was removed. Potentially include as a modal in the viewer with chart.js or something similar.

Might need to be worked into #38 when that rewrite is done.

Can't run on Ubuntu (Failed to load xml file)

Hi! Thank you for forking and keeping this repo alive!
I am trying to use bedrock-viz on Ubuntu 18, but unfortunately getting an error:

[  error] xml file(/usr/local/share/bedrock-viz/data/mcpe_viz.xml) not parsed successfully: File was not found
[  error] Failed to load xml file

I don't understand why bedrock-viz is trying to look for the XML file in this directory, it's not even in PATH.

Trying to run like this:

./bedrock-viz/build/bedrock-viz --db ./temp/Goodtimes --out ./www/ --html-most --no-force-geojson

Thank you!

UPDATE:

I tried to use --xml and also tried to link XML file, so bedrock-viz could find it, but then it will keep looking for other files in the same location:

[  error] copyFileWithStringReplacement failed to open src (/usr/local/share/bedrock-viz/static/mcpe_viz.html.template) errno=No such file or directory(2)
[  error] copyFile failed for src (/usr/local/share/bedrock-viz/static/mcpe_viz.js) to dest (./www//mcpe_viz.js) error-code (2)
[  error] copyFile failed for src (/usr/local/share/bedrock-viz/static/mcpe_viz.css) to dest (./www//mcpe_viz.css) error-code (2)
[  error] copyDirToDir(src=/usr/local/share/bedrock-viz/static/js dest=./www//js) failed to open source directory
[   info] Copying icon images
[  error] copyDirToDir(src=/usr/local/share/bedrock-viz/static/images dest=./www//images) failed to open source directory

bedrock-viz.exe does nothing

I've downloaded the .zip file and have attempted to launch the executable. It creates an output folder with nothing in it. There's a brief flash of a command prompt window before it closes near instantly.

"Could not load file: images/bedrock_viz.overworld.map.png"

I'm pretty sure that this is due to my overworld map being a little bit too big.
And I mean, like 50000x30000. Mostly because of going faaaaaar west and faaaar north once upon a time what generated places where no one on my server even wants to go no more.
This causes my map not loading in 'overworld' mode and showing this when entering my http:
"Could not load file: images/bedrock_viz.overworld.map.png"
I checked out miniweb, apache and nginx, with all the troubleshooting for not loading pngs I could find.
PNGs are not corrupted, I can load them with file browser.
Though I can't load them by entering whole path to one png in Chrome, like:
http://myserver/images/bedrock_viz.overworld.shaded_relief.png" (this one is the largest file, containing 55MB)
The only thing my browser shows then is a little empty square.
Firefox shows a big empty gray image when I enter this path.
(I wish I could set a certain coordinates for rendering map but maybe it's something else I can work out)
I almost forgot. End and Nether are loading fine. Mostly because these PNGs are far smaller than the Overworld one.

Mislabeled blocks

OK looking closer at the XML file and using my test world I am seeing many mislabeled using the original XML file. When I am using the updated XML file from my fork many missing blocks now show in the output but are still mislabeled or just don't appear if I have 1 of each slab on the ground, for example the 3 different prismarine slabs are labeled as "slab, Red Sandstone" and newer blocks like " "Cut red sandstone" and "cut sandstone" don't show up at all. Looking at the XML it seems like it has something to do with the blocks that have block variants, like the program is ignoring the variants and only being identified as the root block.

Another example possibly the easiest to view is wood planks all are labeled as oak planks.

On the other hand some of the new items such as the new wooden buttons/doors/trapdoors since they are all individual Blocks they all are identified properly.

I tired removing the main color of the item and adding the different colors for the variants they then get labeled as "UNKNOWN BLOCK"

Unkonwn unames

Hello
When I was generating my map the following warning appeared?

[warning] Unknown uname: minecraft:barrel
[warning] Unknown uname: minecraft:bee_nest
[warning] Unknown uname: minecraft:bell
[warning] Unknown uname: minecraft:blast_furnace
[warning] Unknown uname: minecraft:campfire
[warning] Unknown uname: minecraft:cartography_table
[warning] Unknown uname: minecraft:composter
[warning] Unknown uname: minecraft:crossbow
[warning] Unknown uname: minecraft:double_stone_slab4
[warning] Unknown uname: minecraft:grindstone
[warning] Unknown uname: minecraft:lectern
[warning] Unknown uname: minecraft:smoker
[warning] Unknown uname: minecraft:smooth_stone
[warning] Unknown uname: minecraft:spruce_wall_sign
[warning] Unknown uname: minecraft:stone_slab4
[warning] Unknown uname: minecraft:stonecutter_block
[warning] Unknown uname: minecraft:sweet_berries
[warning] Unknown uname: minecraft:sweet_berry_bush
[warning] Unknown uname: minecraft:wood

Is there anyway I can help updating these?

Thanks

make help more readable

Creating this for tracking in a PR I'm about to submit.

Both the source and the output in the console are a bit difficult to read. It would be great to have that modified to be more readable to users and other devs.

Docker Webserver Support

Based on Initial Project Task here
A simple approach would be to create a NGINX webserver with the docker command

docker run --name bedrock-viz -p 8080:80 -v /path/to/output-dir:/usr/share/nginx/html:ro -d nginx

However, this can cause issues because by default an output directory is not created for each output. This can result in the user accidentally mounting an entire Documents folder with files that are sensitive and now exposed on an insecure port. Creating a subfolder for the output by default seems preferred in this circumstance. Thoughts?

Not an issue just really mainly a question cause.

Ok,

I really love this program and I have more fun playing and adding to it then I do actually playing Minecraft these days.

Here is my question, when I make changes to the files on my local version of the program how do I submit them to you guys to get them added to the main program so that everyone can benefit from my changes? I guess my brain isn't understanding the difference between some of the terms Git uses. Here is what I understand/ am not sure on.

Repository = Main program everyone is using/working on
Branch = Each individuals local version of the main program they can add to or change so to not effect the main Program
Pull request = my brain says this should be me pulling down the main program to use or change
Push = this would be changes I have made that I want to have added to the main program.

I currently have Github desktop and Git Kraken both of which show I have a Branch "Picotazo" that I have made changes to.

So I guess the main question is how do I submit additions/changes to you guys so that everyone can benefit?

Compiling from source on ubuntu 18.04

Was just trying to compile on a fresh AWS image of Ubuntu 18.04 and was getting the following during

cmake ..

CMake Error at /usr/share/cmake-3.10/Modules/FindPackageHandleStandardArgs.cmake:137 (message):
  Could NOT find PNG (missing: PNG_LIBRARY PNG_PNG_INCLUDE_DIR)

Installing libpng got it working:

sudo apt-get install libpng++-dev

Villages not identified

It looks like villagers are not being identified on my map. Ill take a look at the Xml to see if there is something in there not working.

[BUG] Unknown unames in error log

Describe the bug
The following warnings are produced at the end of a run

[warning] Unknown uname: minecraft:netherite_boots
[warning] Unknown uname: minecraft:netherite_chestplate
[warning] Unknown uname: minecraft:netherite_helmet
[warning] Unknown uname: minecraft:netherite_leggings
[warning] Unknown uname: minecraft:polished_andesite_stairs
[warning] Unknown uname: minecraft:smooth_stone
[warning] Unknown uname: minecraft:spruce_wall_sign
[warning] Unknown uname: minecraft:stone_stairs

It appears that these items are missing from the data/bedrock-viz.xml file.

[Web App] Large map renders fail to load in browser

Large map renders fail to load in Chromium and Firefox when the PNG file gets too big. In my case, the map dimensions were 22000x35000 pixels at 13.8 MB in size.
OpenLayers supports tiling which would significantly improve Web App performance on bigger maps, but this likely requires a rewrite of the render generator as well.

CORS issue in browsers

Is there a way to address the CORS issue in browsers with the UX?

#39 encounters this and is a frequently raised issue.

Biomes mis-identified

Many biomes on the biome layer are being misidentified. I have ocean (as an example) that is being identified as end highlands or end barrens.

Bedrock-viz.exe has stopped working

I try running it and it says.
[ info] Loading xml from (data/bedrock_viz.xml)
[ info] Loading config from (data/bedrock_viz.cfg)
[ info] parseLevelFile: name=Gaia/level.dat version=8 len=2141
[ info] Found World Spawn: x=-17 y=68 z=-113
[ info] levelname.txt: Level name is 'Gaia'
[ info] DB Open: dir=Gaia
: The filename, directory name, or volume label syntax is incorrect.
(block_size=4096 bloom_filter_bits=10)
: The filename, directory name, or volume label syntax is incorrect.ST-337703

[ info] Scan keys to get world boundaries

the world name is gaia.
It just crashes and stops working. Help will be much appreciated

When generating map in windows with "--htlm-all" switch the html viewer is not added

Hello,

Glad someone picked up mcpe_viz and got it upto date. I have been using Plethora's version for several years. So I was testing using your program by command line as I got use to using the GUI "mcpe_viz_helper.exe" to generate my maps and I can not get the --html-all switch to output the html viewer. It stops right after "processing records:" and just terminates to command prompt. I do get an images directory but only has each of the world levels in it. None of the other image files. The switch "--hml-most" seems to be working because it exports all the extra files. So I took notice of what was different between the two outputs and here is what is missing when html-all is executed:

Processing records: 260000 / 266664 (97.5%) ((( this is as far as --html-all gets and then stops)))
Read 266664 records ((( when running html-most it goes further and does the rest like below.)))
Status: OK
Check Spawnable: Dimension 'overworld' (0)
Check Spawnable: Dimension 'nether' (1)
Check Spawnable: Dimension 'the-end' (2)
Do Output: overworld
Generate Image
Info: World (0, 0) is at image (5904, 12784)
Info: World Spawn (12, 4) is at image (5916, 12788)
Generate Biome Image
Generate Grass Image
Generate Height Column Image
Generate Height Column (grayscale) Image
Generate Height Column (alpha) Image
Generate Block Light Image
Generate Sky Light Image
Generate Slime Chunks Image
Generate Shaded Relief Image
Do Output: nether
Generate Image
Generate Biome Image
Generate Grass Image
Generate Height Column Image
Generate Height Column (grayscale) Image
Generate Height Column (alpha) Image
Generate Block Light Image
Generate Sky Light Image
Generate Slime Chunks Image
Generate Shaded Relief Image
Do Output: the-end
Generate Image
Generate Biome Image
Generate Grass Image
Generate Height Column Image
Generate Height Column (grayscale) Image
Generate Height Column (alpha) Image
Generate Block Light Image
Generate Sky Light Image
Generate Slime Chunks Image
Generate Shaded Relief Image
Detected large images and 'auto-tile' is enabled, enabling tiles!
Creating tiles for out1.overworld.map.png...
Creating tiles for out1.overworld.biome.png...
Creating tiles for out1.overworld.height_col.png...
Creating tiles for out1.overworld.height_col_grayscale.png...
Creating tiles for out1.overworld.height_col_alpha.png...
Creating tiles for out1.overworld.light_block.png...
Creating tiles for out1.overworld.light_sky.png...
Creating tiles for out1.overworld.slime_chunks.png...
Creating tiles for out1.overworld.grass.png...
Creating tiles for out1.overworld.shaded_relief.png...
Creating tiles for out1.nether.map.png...
Creating tiles for out1.nether.biome.png...
Creating tiles for out1.nether.height_col.png...
Creating tiles for out1.nether.height_col_grayscale.png...
Creating tiles for out1.nether.height_col_alpha.png...
Creating tiles for out1.nether.light_block.png...
Creating tiles for out1.nether.light_sky.png...
Creating tiles for out1.nether.slime_chunks.png...
Creating tiles for out1.nether.grass.png...
Creating tiles for out1.nether.shaded_relief.png...
Creating tiles for out1.the-end.map.png...
Creating tiles for out1.the-end.biome.png...
Creating tiles for out1.the-end.height_col.png...
Creating tiles for out1.the-end.height_col_grayscale.png...
Creating tiles for out1.the-end.height_col_alpha.png...
Creating tiles for out1.the-end.light_block.png...
Creating tiles for out1.the-end.light_sky.png...
Creating tiles for out1.the-end.slime_chunks.png...
Creating tiles for out1.the-end.grass.png...
Creating tiles for out1.the-end.shaded_relief.png...
Do Output: html viewer
Copying icon images
Done.

C:>

Can you fix the --html-all ? It seems to be just missing the html viewer processing at the end.

Thank you,
John

Feature request: Annotations

I've just started using Bedrock-viz, and I'm very impressed. One feature I'd really appreciate would be the ability to annotate the map with little text labels to help locate places of interest. Ideally the details could be stored in a file that could easily be imported whenever you re-generate the map. Or perhaps the file could even be left in-place?

One potential complication would be how to handle layers. My suggestion would be that a label would be assigned to a particular layer, but it would be visible with a reduced opacity on other layers. Perhaps there could be colour coding or little arrow icons to indicate whether it's above or below the current layer.

HTML Files Not Created

Hello, I am trying to generate an HTML version of my world on macOS. bedrock-viz runs without error, but no HTML file is created.

Output from command:

LAZERBOOK:bin troy$ ./bedrock-viz --db /Users/troy/Downloads/EileanMor/ --out /Users/troy/Downloads/EileanMorOutput/ --html-all
Reading XML from /usr/local/Cellar/bedrock-viz/v0.1.1/share/bedrock-viz/data/mcpe_viz.xml
parseLevelFile: name=/Users/troy/Downloads/EileanMor//level.dat version=8 len=2067
  Found World Spawn: x=524 y=32767 z=4
  Level name is [Eilean Mor - Copy]
DB Open: dir=/Users/troy/Downloads/EileanMor/
DB Open Status: OK (block_size=4096 bloom_filter_bits=10)
Scan keys to get world boundaries
  Bounds (chunk): DimId=0 X=(-75 267) Z=(-384 86)
  Bounds (pixel): DimId=0 X=(-1200 4272) Z=(-6144 1376) Image=(5488 7536)
  Bounds (chunk): DimId=1 X=(-35 39) Z=(-56 32)
  Bounds (pixel): DimId=1 X=(-560 624) Z=(-896 512) Image=(1200 1424)
  Bounds (chunk): DimId=2 X=(0 0) Z=(0 0)
  Bounds (pixel): DimId=2 X=(0 0) Z=(0 0) Image=(16 16)
  215899 records
Active 'hide-top', 'force-top', and 'geojson-block':
None
Parse all leveldb records
  Processing records: 10000 / 215899 (4.6%)
  Processing records: 20000 / 215899 (9.3%)
  Processing records: 30000 / 215899 (13.9%)
  Processing records: 40000 / 215899 (18.5%)
  Processing records: 50000 / 215899 (23.2%)
  Processing records: 60000 / 215899 (27.8%)
  Processing records: 70000 / 215899 (32.4%)
  Processing records: 80000 / 215899 (37.1%)
  Processing records: 90000 / 215899 (41.7%)
  Processing records: 100000 / 215899 (46.3%)
  Processing records: 110000 / 215899 (50.9%)
INFO: Unmapped remote player: 1156a42d-ca4a-35e8-9ec3-1a11bff8c441
INFO: Unmapped remote player: 5c1e4b67-8812-3270-b36c-6b8dc169284a
INFO: Unmapped remote player: 77054079-bd0b-3a74-9ced-0656aa4b975a
INFO: Unmapped remote player: 873af4fc-b420-3d62-b610-f73320a6d8f2
INFO: Unmapped remote player: 93438a90-e6f1-36a2-812e-57bdadd8eb71
INFO: Unmapped remote player: ec30c37f-177f-32b5-9e91-6c6e3f7a602f
INFO: Unmapped remote player: server_c331610d-c3b9-44c4-90ee-635c4c01b873
INFO: Unmapped remote player: server_c80a8e68-476a-40ba-8826-561c1df7d457
INFO: Unmapped remote player: server_d47a2b45-ada5-4197-b647-225919de5f65
Player Position: Dimension=0 Pos=(473.5, 64.62, -385.5 @ image 1673, 5758) Rotation=(0.000000, 0.000000)
  Processing records: 120000 / 215899 (55.6%)
  Processing records: 130000 / 215899 (60.2%)
  Processing records: 140000 / 215899 (64.8%)
  Processing records: 150000 / 215899 (69.5%)
  Processing records: 160000 / 215899 (74.1%)
  Processing records: 170000 / 215899 (78.7%)
  Processing records: 180000 / 215899 (83.4%)
  Processing records: 190000 / 215899 (88.0%)
  Processing records: 200000 / 215899 (92.6%)
  Processing records: 210000 / 215899 (97.3%)
Read 215899 records
Status: OK
Check Spawnable: Dimension 'overworld' (0)
Check Spawnable: Dimension 'nether' (1)
Check Spawnable: Dimension 'the-end' (2)
Do Output: overworld
  Generate Image
    Info: World Spawn (524, 4) is at image (1724, 6148)
  Generate Biome Image
  Generate Grass Image
  Generate Height Column Image
  Generate Height Column (grayscale) Image
  Generate Height Column (alpha) Image
  Generate Block Light Image
  Generate Sky Light Image
  Generate Slime Chunks Image
  Generate Shaded Relief Image
  Generate full-size slices
    Writing all images in one pass
    Row 0 of 7536
    Row 320 of 7536
    Row 640 of 7536
    Row 960 of 7536
    Row 1280 of 7536
    Row 1600 of 7536
    Row 1920 of 7536
    Row 2240 of 7536
    Row 2560 of 7536
    Row 2880 of 7536
    Row 3200 of 7536
    Row 3520 of 7536
    Row 3840 of 7536
    Row 4160 of 7536
    Row 4480 of 7536
    Row 4800 of 7536
    Row 5120 of 7536
    Row 5440 of 7536
    Row 5760 of 7536
    Row 6080 of 7536
    Row 6400 of 7536
    Row 6720 of 7536
    Row 7040 of 7536
    Row 7360 of 7536
Do Output: nether
  Generate Image
  Generate Biome Image
  Generate Grass Image
  Generate Height Column Image
  Generate Height Column (grayscale) Image
  Generate Height Column (alpha) Image
  Generate Block Light Image
  Generate Sky Light Image
  Generate Slime Chunks Image
  Generate Shaded Relief Image
  Generate full-size slices
    Writing all images in one pass
    Row 0 of 1424
    Row 320 of 1424
    Row 640 of 1424
    Row 960 of 1424
    Row 1280 of 1424
Do Output: the-end
  Generate Image
  Generate Biome Image
  Generate Grass Image
  Generate Height Column Image
  Generate Height Column (grayscale) Image
  Generate Height Column (alpha) Image
  Generate Block Light Image
  Generate Sky Light Image
  Generate Slime Chunks Image
  Generate Shaded Relief Image
  Generate full-size slices
    Writing all images in one pass
    Row 0 of 16
Do Output: html viewer
Copying icon images
Done.
LAZERBOOK:bin troy$ 

The CSS and JS files are created, but no HTML or geo coordinates file.

LAZERBOOK:Downloads troy$ cd EileanMorOutput
LAZERBOOK:EileanMorOutput troy$ ls -l
total 240
drwxr-xr-x  1267 troy  staff   40544 Dec 22 09:50 images
drwxr-xr-x@    9 troy  staff     288 Dec 22 09:50 js
-rw-r--r--@    1 troy  staff    3404 Dec 22 09:50 mcpe_viz.css
-rw-r--r--@    1 troy  staff  115780 Dec 22 09:50 mcpe_viz.js

Please Help [Closed]

I cannot figure out how to make this program run. Typing "bedrock-viz.exe --db bluh\bluh --out out1 --html-all" does absolutely nothing. The README suggests there's a user interface like MCPE Viz, but there is no such "helper" in the folder. I'm getting really stressed out by the ambiguous wording of "run it something like this" & "do something like this". Do I type this into command prompt? Do I need to run as admin? Can I type anything into bedrock-viz.exe before it closes? Is there a helper?

I don't even know where to type "./bedrock-viz --help", since Command Prompt just gives me '[anything I attempt to type]' is not recognized as an internal or external command,
operable program or batch file. I'm at my wit's end.

bedrock-viz.js modification

On opening the web page, if the world has negative X or Y coordinates, the map is not centered. the static/bedrock-viz.js needs modifying.

@@ -2129,8 +2129,8 @@ function initDimension() {
            view: new ol.View({
                projection: projection,
                center: [
                    dimensionInfo[globalDimensionId].playerPosX + Math.floor(dimensionInfo[globalDimensionId].worldWidth / 2)
                   ,dimensionInfo[globalDimensionId].playerPosY + Math.floor(dimensionInfo[globalDimensionId].worldHeight / 2)
                    dimensionInfo[globalDimensionId].playerPosX
                   ,dimensionInfo[globalDimensionId].playerPosY
                ],
                resolution: 1
            })
@ -2139,8 +2139,8 @@ function initDimension() {
        var view = new ol.View({
            projection: projection,
            center: [
                dimensionInfo[globalDimensionId].playerPosX + Math.floor(dimensionInfo[globalDimensionId].worldWidth / 2)
               ,dimensionInfo[globalDimensionId].playerPosY + Math.floor(dimensionInfo[globalDimensionId].worldHeight / 2)
                dimensionInfo[globalDimensionId].playerPosX
               ,dimensionInfo[globalDimensionId].playerPosY
            ],
        resolution: 1
        });

Segfault during big map generation

My world is 1.2GB big. I'm using @tomnolan fork.

Overworld generations fails with error:

[wto cze 30 13:56:14 2020] bedrock-viz[30096]: segfault at 7f2e2415eac0 ip 00005569b45a748b sp 00007ffccf089110 error 6 in bedrock-viz[5569b453a000+181000]

Is there a switch, to render only nether or end?

Windows BUILD.md instructions fail. Can't locate zlib.

This section of BUILD.md which gives instructions on how to build the repopsitory under Windows
`

make

mkdir build
cd build
cmake .. -DCMAKE_TOOLCHAIN_FILE=/scripts/buildsystems/vcpkg.cmake -G "Visual Studio 16 2019" -A x64

`
results in the following error

`CMake Error at C:/Program Files/CMake/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake:164 (message):
Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR)
Call Stack (most recent call first):
C:/Program Files/CMake/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake:445 (_FPHSA_FAILURE_MESSAGE)
C:/Program Files/CMake/share/cmake-3.17/Modules/FindZLIB.cmake:115 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
third_party/leveldb/CMakeLists.txt:47 (find_package)

-- Configuring incomplete, errors occurred!
See also "C:/Users/Simon/Documents/GitHub/bedrock-viz/build/CMakeFiles/CMakeOutput.log".
See also "C:/Users/Simon/Documents/GitHub/bedrock-viz/build/CMakeFiles/CMakeError.log".
`

CMakeError.log
CMakeOutput.log

Loading... Layers Remaining: 1

I've set up MCPE Viz 0.1.1 to generate map files which are output to a directory serviced by IIS. When I use the map, everything seems to work other than when I try to use the functions that show mobs or objects. At that point, the message "Loading... Layers Remaining: 1" stays on screen and never goes away while the data doesn't appear either; this is the case even if I load the map locally via the file system. If I flip "loadGeoJSONFlag" to false in the map's associated JS file, the IIS hosted version starts giving me a Vector Load Error but the local file-based one now shows the associated details correctly.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.