| .github | ||
| build | ||
| dist | ||
| docs | ||
| src | ||
| .eslintignore | ||
| .gitattributes | ||
| .gitignore | ||
| .prettierignore | ||
| LICENSE.txt | ||
| package-lock.json | ||
| package.json | ||
Blue Marble
Overview
Welcome to Blue Marble! Blue Marble is a userscript for the website wplace.live. If you like this userscript, please ⭐ the repository! If you wish to contribute to Blue Marble, check out the CONTRIBUTING.md file in docs/.
Installation Instructions
Blue Marble has been verified to work on mobile devices. Blue Marble was designed on Chrome, but Blue Marble might work on "unsupported" browsers not listed above. Some versions/forks of Firefox work. Some versions/forks of Firefox do not work.
Installation instructions for Blue Marble are below. Click the arrows to expand the instructions you want to see. Blue text is a link.
Install Chrome (Computer) (Click to Expand)
- Install the TamperMonkey plugin for Chrome.

- Right-click the extention.

- Left-click "Manage Extension."
- Enable "Developer Mode."

- Enable "Allow user scripts."
- Download the BlueMarble.user.js file in the "assets" of the latest release.
- Open the TamperMonkey Dashboard.

- Drag the
BlueMarble.user.jsfile inside the dashboard of TamperMonkey.

- Click the "Install" button to install Blue Marble.

- Enable Blue Marble inside the TamperMonkey dashboard.

- Refresh the wplace.live webpage.
Install Edge (Computer) (Click to Expand)
- Install the TamperMonkey plugin for Microsoft Edge.

- Right-click the extention.

- Left-click "Manage Extension."
- Enable "Developer Mode."

- Download the BlueMarble.user.js file in the "assets" of the latest release.
- Open the TamperMonkey Dashboard.

- Drag the
BlueMarble.user.jsfile inside the dashboard of TamperMonkey.

- Click the "Install" button to install Blue Marble.

- Enable Blue Marble inside the TamperMonkey dashboard.

- Refresh the wplace.live webpage.
Install Firefox (Computer) (Click to Expand)
- Install the TamperMonkey plugin for Firefox.

- Download the BlueMarble.user.js file in the "assets" of the latest release.
- Open the TamperMonkey Dashboard.

- Drag the
BlueMarble.user.jsfile inside the dashboard of TamperMonkey.

- Click the "Install" button to install Blue Marble.

- Enable Blue Marble inside the TamperMonkey dashboard.

- Refresh the wplace.live webpage.
Template Instructions
Blue Marble will display your template as the same size. If your image is 500 pixels tall and 300 pixels wide, the template will be 500 pixels tall and 300 pixels wide. Here is the instructions to display a template image on the canvas:
- Find the pixel of the top left corner. Fill in
Tl X,Tl Y,Px X, andPx Ywith the coordinates. You can use the "Pin" icon to auto-fill the coordinates after clicking the pixel.

- Upload a PNG or WEBP image.
- Click the "Enable" button.
Script Settings
There are many settings available for the Blue Marble userscript! Through these settings, you can control how the script behaves.
Template Settings
Transparent Pixels
Templates for Blue Marble work slightly different from normal. Since there is a "Transparent" color, and transparent pixels in templates are typically ignored, your template should have a custom color to signify "Transparent" colored pixels. If a specific pixel can be any color, it should be transparent in the template. If a specific pixel should be "Transparent" color, it should have the #deface hex color. Any #deface colored pixel in your template will be interpereted as the "Transparent" color. Any transparent colored pixel in your template will be interpereted as ignored.
Coordinates
Tile Coordinates
The coordinate system for wplace.live is unique. Instead of all pixels having a global coordinate number (x, y), the coordinate number is relative to the tile. This means you need to know the tile number and the coordinate number to do anything. In Blue Marble, the tile coordinates and the pixel coordinates are displayed when you click on a pixel. These are the coordinates you should use for aligning a template.
Template Coordinates
The template is aligned from the top left corner of the template. You can auto-fill this position using the "pin" icon next to the coordinate input boxes.
How Versioning Works
The versioning system for this userscript follows the Semantic Versioning rules. As such, it is formatted in an X.Y.Z format where:
- X is the major version. This is incremented when a non-backward compatible update is pushed. This is for new features that break previous versions of the userscript. Additionally, if wplace.live breaks the userscript, this will be incremented.
- Y is the minor version. This is incremented whenever I push to GitHub. This is for stable bug-fixes and new (non-breaking) features.
- Z is the patch version. This is incremented whenever I launch a development version of the userscript to test a patch. This is for unstable bug-fixes/features.
Licenses
(Below, all mentions of the "userscript" refer to the "Blue Marble" userscript made by SwingTheVine)
Most of this userscript is licensed under the Mozilla Public License Version 2.0 (MPL-2.0). All software, code, and libraries in this repository are licensed under the MPL-2.0 license. However, the "Blue Marble" image in this userscript is owned by NASA and is licensed under the Creative Commons 0 1.0 Universal (CC0 1.0) license.
FAQ
Is Blue Marble malware?
A: Blue Marble does not contain malicious code. The Blue Marble code can be found in the src/ folder. If you worry about Blue Marble being malware, you can read the code, then bundle it yourself using the tools in build/.
How can Blue Marble place pixels for me?
A: Unfortunatly, Blue Marble will not support the automatic placement of pixels without user interaction.
How do I hide the overlay?
A: Turn the userscript off and refresh the page.
Why do game notifications appear on top of the overlay?
A: Game notifications only appear when they need immediate attention. Therefore, they have priority over the overlay (which typically needs no attention).
