All Projects → clarkx86 → Papyrusjs

clarkx86 / Papyrusjs

Licence: apache-2.0
papyrus.js renders maps of Minecraft: Bedrock Edition worlds using node.js, LevelDB and leaflet.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Papyrusjs

papyrusjs
papyrus.js renders maps of Minecraft: Bedrock Edition worlds using node.js, LevelDB and leaflet.
Stars: ✭ 53 (+6%)
Mutual labels:  mapping, leveldb, leaflet
Papyruscs
PapyrusCS renders maps of Minecraft: Bedrock Edition worlds using C#, LevelDB and leaflet.
Stars: ✭ 146 (+192%)
Mutual labels:  leveldb, minecraft, leaflet
Mcscript
A programming language for Minecraft Vanilla
Stars: ✭ 124 (+148%)
Mutual labels:  cli, minecraft
Ldb
A C++ REPL / CLI for LevelDB
Stars: ✭ 201 (+302%)
Mutual labels:  cli, leveldb
papyruscs
PapyrusCS renders maps of Minecraft: Bedrock Edition worlds using C#, LevelDB and leaflet.
Stars: ✭ 221 (+342%)
Mutual labels:  leveldb, leaflet
Kepler
The open source full-stack geosocial network platform
Stars: ✭ 125 (+150%)
Mutual labels:  mapping, leaflet
Lenz
Console based MAP 🗺 : with lots of features 🤩
Stars: ✭ 51 (+2%)
Mutual labels:  cli, mapping
coronavirus-map-dashboard
🦠 Coronavirus (COVID-19) Map Dashboard using coronavirus-tracker-api
Stars: ✭ 41 (-18%)
Mutual labels:  mapping, leaflet
maptiles
Map tile generator. Converts an image into map tiles using ImageMagick. Map tiles can be used in Google Maps, Leaflet and other map rendering software.
Stars: ✭ 52 (+4%)
Mutual labels:  mapping, leaflet
Lev
The complete REPL & CLI for managing LevelDB instances.
Stars: ✭ 295 (+490%)
Mutual labels:  cli, leveldb
Leaflet.markercluster
Marker Clustering plugin for Leaflet
Stars: ✭ 3,305 (+6510%)
Mutual labels:  mapping, leaflet
Leaflet.labeltextcollision
Leaflet.LabelTextCollision is a LeafletJS plug-in to display labels on vector data while avoiding label collisions.
Stars: ✭ 65 (+30%)
Mutual labels:  mapping, leaflet
Iclient Javascript
Modern GIS Web Client for JavaScript, based on Leaflet\OpenLayers\MapboxGL-JS\Classic(iClient8C), enhanced with ECharts\D3\MapV etc. Contributed by SuperMap & community.
Stars: ✭ 593 (+1086%)
Mutual labels:  mapping, leaflet
Mcpeserver
A Minecraft Server Launcher Written by Golang. Deprecated, please use official BDS
Stars: ✭ 113 (+126%)
Mutual labels:  cli, minecraft
mapr
Map species occurrence data
Stars: ✭ 34 (-32%)
Mutual labels:  mapping, leaflet
Wicket
A modest library for moving between Well-Known Text (WKT) and various framework geometries
Stars: ✭ 484 (+868%)
Mutual labels:  mapping, leaflet
Leaflet Dvf
Leaflet Data Visualization Framework
Stars: ✭ 678 (+1256%)
Mutual labels:  mapping, leaflet
Graphql Zeus
GraphQL client and GraphQL code generator with GraphQL autocomplete library generation ⚡⚡⚡ for browser,nodejs and react native
Stars: ✭ 1,043 (+1986%)
Mutual labels:  cli
Colorette
Easily set the color and style of text in the terminal.
Stars: ✭ 1,047 (+1994%)
Mutual labels:  cli
Torchbot
A bot for minecraft written in java
Stars: ✭ 47 (-6%)
Mutual labels:  minecraft
This tool is very unstable and in it's alpha-state!

I recommend taking a look at PapyrusCS instead!


Build Status Discord

papyrus.js

Papyrus is a tool to render Minecraft: Bedrock Edition (from now on referenced as "MCBE") worlds using Leaflet. It is written in JavaScript and powered by node.js.

You can view an example here.

Please also check out papyrus.js' sister-project: papyrus.cs!

Introduction

Since MCBE worlds don't use the Anvil format like in the Java Edition, but rather a by Mojang modified version of Google's LevelDB to save, the goal of Papyrus is to read these worlds and assemble a render of every pre-generated chunk.

Features

  • Render a top-down map of every already explored chunk
Planned
  • Windows support
  • Isometric renders
  • Auto-Updating renders
  • Live-View of currently online players on map (and their respective statistics)
  • Nether/ The End support

Installation

Do you just want to use papyrus.js (or don't want to build it from scratch)? You may be looking for the pre-built binaries.

Before installing, you may also need to install additional dependencies: sudo apt install g++ zlib1g-dev

Assuming you have node.js (>= 12) already installed, simply clone this repository and run the following command in your favourite terminal: npm install

Usage

node app.js --world="./My World/" --textures="./Vanilla_Resource_Pack" --output="./output" --mode="topdown_shaded"
  • For pre-built binaries use this syntax
./papyrusjs --world="./My World/" --textures="./Vanilla_Resource_Pack" --output="./output" --mode="topdown_shaded"

You are able to define a path to the texture pack that you want to use for the final render. Vanilla textures will automatically be downloaded if no textures are found. You can also force papyrus.js to download the latest textures with the option --force-download. If you want to download the vanilla resourcepack manually, you can get it here.

Please note: Only 16x16px Bedrock Edition texture packs are supported!

In some cases, high world size and low amount of ram (example: server with 2GB of ram), it is possible that the program crashes with an 'OutOfMemory' error. In this case, you can add the --expose-gc option to the command line.

node --expose-gc app.js --world="./My World/" --textures="./Vanilla_Resource_Pack" --output="./output" --mode="topdown_shaded"

Pre-built-binaries are not using this option at the moment.

Contribute xor support

If you want to help improve papyurs.js, please consider forking the repository.

Want to buy me a coffee (I love coffee)? Donate via PayPal ♥

Special thanks to...

... DeepBlue4200, mhsjlw and all the contributors.

Disclaimer

papyrus.js, as well as papyrus.cs are in no way affiliated with Mojang or Minecraft.

Contact: [email protected]

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].