BLOCKFORGE

A fully on-chain voxel world, living on Bitcoin forever.

Built with Three.js WebGPU · Powered by Ordinals · By MDV

📖 Read the Wiki
Buy & Trade
ord.net Satflow
🧱 Latest Builds
100% On-Chain Single HTML File No Server Required Live WebRTC Multiplayer Free Airdrop
1,000
Collectible Pieces
32×64×32
Voxels Per Chunk
8
Unique Biomes
1
HTML File
0
External Dependencies
Core Features

A Living World on the Blockchain

BlockForge is a fully playable voxel world inscribed entirely on Bitcoin. Every block of code, every texture, every shader, permanently stored on the most secure network in existence. No servers. No dependencies. Just Bitcoin and your browser.

100% On-Chain

The entire game (9,000+ lines of code, textures, shaders, terrain generation) lives in a single HTML inscription on Bitcoin. No external servers, no CDNs, no APIs that can go down. As long as Bitcoin exists, BlockForge exists.

Bitcoin-Reactive

The world reacts to Bitcoin in real time. Block height drives the day/night cycle. Transaction count controls cloud density. Fee rates trigger weather events. Every new block sends shooting stars across the sky.

Permanent Edits

Own a chunk, build on it, and inscribe your changes as a child inscription. Your builds become permanent, encoded on Bitcoin forever. Other players see your creations when they load into the world.

🎨

Custom Textures

Import any Bitcoin inscription as a block texture. Build galleries of on-chain art. Display NFT collections as physical blocks in a 3D world. Every texture references an actual inscription ID.

Post-Processing

Bloom, ambient occlusion, god rays, toon shading, film grain, vignette. A full cinematic post-processing pipeline powered by WebGPU, all running in the browser.

🌍

8 Procedural Biomes

Plains, desert, tundra, enchanted forest, alien planet, ancient ruins, cyberpunk city, and deep ocean. Each with unique terrain, creatures, vegetation, weather, and building materials.

Truly On-Chain

Inscribed on Bitcoin. Forever.

Single File, Zero Dependencies

The entire game is a single HTML file: every line of JavaScript, every pixel of every texture, every terrain generation algorithm. It imports only from other Bitcoin inscriptions. No npm packages. No build tools. No external URLs.

Open it from ordinals.com/content/ and it runs. Download it and open it locally, it still runs. A self-contained universe.

DELEGATE
voxel_world.html · 7,000+ lines
delegates to
PIECE #1
Chunk (0,0) · Ruins
PIECE #2
Chunk (-1,0) · Plains
. . .
1,000 pieces total
PIECE #N
Chunk (3,3) · Enchanted
child of
child of
CHILD INSCRIPTION
edit.json
op: erase_floor · blocks: [...]
CHILD INSCRIPTION
castle.json
op: erase_floor · blocks: [...]
ON LOAD: fetch children → rebuild world

Build Permanently with Parent-Child

Each piece in the collection is a parent inscription. When you build on your chunk, you export a compact JSON of your changes and inscribe it as a child inscription. The game discovers these children on load and reconstructs your builds.

Your creations aren't stored in a database. They're on Bitcoin, permanent and verifiable. Other players loading into the world will see what you've built.

The World Breathes Bitcoin

BlockForge polls Bitcoin's latest block data and weaves it into the world. Odd blocks bring day, even blocks bring night. The current block height is displayed on the sun and moon.

High transaction counts darken the sky with dense clouds. Elevated fee rates trigger storms: rain in the plains, snow in the tundra, sandstorms in the desert. Every new block launches a cascade of shooting stars.

The World

Explore. Build. Discover.

A 32×32 Chunk World

The world spans 1,024 chunks across 8 biomes, each chunk a 32×64×32 block canvas, over 65,000 voxels per chunk. Terrain is generated procedurally from a shared seed, so every player sees the same world.

Structures, creatures, and vegetation populate each biome. Sheep graze the plains, jellyfish drift through alien skies, drones patrol cyberpunk streets, and dragons circle overhead.

Asynchronous Discovery

There's no multiplayer server. Instead, players discover each other's builds as they explore. Load into a chunk and the game fetches any child inscriptions. Other players' permanent creations materialize around you.

The world map reveals explored territory and highlights chunks with builds. Teleport anywhere with a click. Watch the world fill in as more builders inscribe their visions.

Cinematic Rendering

Powered by Three.js WebGPU with a full post-processing pipeline: scene bloom, emissive bloom with depth masking, screen-space ambient occlusion, god rays from both sun and moon, toon edge detection, film grain, and vignette.

All configurable in-game with real-time sliders. Take screenshots in dedicated photo mode with orbit camera controls.

Multiplayer

Play Together. Live.

BlockForge multiplayer runs over WebRTC through a lightweight off-chain relay whose address is anchored on a Bitcoin sat. No accounts, no logins, no friend codes — the relay is found on-chain so the inscription needs nothing off-chain to discover it.

🌐

WebRTC via On-Chain Relay

Every client opens a WebRTC datachannel to a single shared relay box. The relay's address is read from a Bitcoin sat at startup, so the inscription has no off-chain config to maintain. Rotating the relay is a re-inscribe of one sat.

🔨

Real-Time Building

Place a block and every connected player sees it instantly. Break a block and particles fly on their screen too. The relay fans out room messages so all clients in the same chunk room see edits the moment they happen.

🎭

Custom Skins

Import any standard Minecraft 64×64 skin PNG. The built-in skin editor lets you drag-and-drop a skin file, preview it in 3D, and export a single JSON for on-chain inscription. Your skin is shared with other players automatically.

👥

Live Avatars

See other players walking, building, and exploring in real time. Animated avatars with smooth interpolation, arm swing on block actions, name tags overhead, and custom colors. Toggle third-person view to see yourself too.

💾

72-Hour Edit Replay

The relay buffers each chunk's recent edits server-side for ~72 hours. When a new player joins a chunk room, the buffered history streams in as replay events — so collaborative builds survive disconnects until they're inscribed permanently on-chain.

One Click to Connect

Multiplayer is enabled by default. No setup, no configuration, no friend codes. Open the world, the inscription reads the relay address from chain, opens the datachannel, and you're connected.

Build Together in Real Time

Every block placement and break is broadcast instantly to all connected players. Watch someone build a tower across the world, or collaborate on the same structure block-by-block. Custom textures sync too. If a player places a block with an inscribed texture you don't have, it's loaded automatically.

Chunk operations like erase and reset are also shared, so teams can start with a clean slate and build together from scratch.

Minecraft-Compatible Skin Editor

Use any existing Minecraft skin. Thousands of free editors and skin libraries already exist. Drop a standard 64×64 PNG into BlockForge's built-in skin editor, set your display name, and you're ready.

The skin is embedded as base64 in a single JSON file. One inscription makes it permanent on-chain. Your skin is automatically shared with other players over multiplayer, and visible in third-person view (press Q to cycle camera modes).

PLAYER A
Browser · keypair
PLAYER B
Browser · keypair
WebRTC DataChannel (each client ↔ relay)
OFF-CHAIN RELAY
Pion ICE-lite · Room fan-out · ~72h replay buffer
▲ relay address read from sat ▲
BITCOIN (ORDINALS)
Permanent builds · Skins · Game code · Relay config (sat-anchored)

How It Works

At startup the inscription reads an encrypted config blob from a known Bitcoin sat — that blob holds the relay's IP, port, and DTLS fingerprint. The browser opens a WebRTC datachannel directly to that relay box.

The relay is a star: every client connects to it, joins per-chunk rooms, and the relay fans out block edits in real time. It also buffers ~72 hours of edits so late joiners catch up. Permanent builds get inscribed on Bitcoin via the parent-child pattern.

A Note on Multiplayer

Ordinals explorers like ordinals.com serve inscriptions with strict Content Security Policies. WebSockets to external domains are blocked, but WebRTC datachannels are allowed — which is why the relay uses WebRTC instead of a traditional websocket protocol.

The inscription is multiplayer-capable on ordinals.com directly. Some flows still benefit from the unlocked headers at blockforgebtc.com (same exact on-chain code, proxied with permissive CSP).

BlockForge Identities.

100 fully on-chain voxel PFP characters that double as your in-game avatar. Every piece is a hand-built 1/1 with its own biome backdrop, signature emote, and a skin-gated block only its owner can place in BlockForge.

A Playable PFP.

Each Identity is a self-contained WebGPU 3-D viewer inscribed on Bitcoin. Open it in any wallet or explorer and the character renders live with shadows, post-processing, a unique biome backdrop, and a signature emote tied to its biome.

Hold one and you can equip it in BlockForge as your in-game avatar. Same rig, same emotes, visible to every other player who walks past your chunk. Plus a 1-of-1 placeable block only that owner can use, 100 Identities, 100 exclusive blocks.

NOT TRAIT-GENERATED. 100 PIECES, BUILT FROM THE GROUND UP.

Explore Identities Browse on Ordinals
Play Anywhere

Desktop. Mobile. Gamepad.

BlockForge adapts to your device. Full keyboard and mouse on desktop. Touch controls with virtual joystick on mobile. Native gamepad support with full menu navigation for arcade setups and controllers.

🖥

Desktop

Full WebGPU rendering with post-processing, shadows, particles, and maximum draw distance. Keyboard + mouse with pointer lock. Photo mode with orbit camera.

📱

Mobile

Optimized mobile path with reduced draw distance, simplified lighting, touch joystick that spawns at your finger, and action buttons for placing and breaking blocks.

🎮

Gamepad

Full controller support via the Gamepad API. Dual analog sticks, all buttons mapped, menu navigation with D-pad. Auto-detects on connect, no setup required.

The Collection

1,000 Pieces. 1 Shared World.

Each piece in the BlockForge collection is a chunk of the world, your own 32×64×32 canvas to build on. 8 mega-chunks span 2×2 areas at biome intersections. Every piece runs the same game, sees the same world, and discovers other players' builds.

100% FREE AIRDROP

BlockForge will be distributed as a free airdrop to the Bitcoin Ordinals community. No mint price. No allowlist. Just art, code, and Bitcoin.

On-Chain Activity

Latest Builds

Every chunk update is a child inscription. Here are the most recent ones — top-down snapshots of what players have been building, rendered from the inscribed block data.

Loading recent builds…
Under the Hood

Technical Specifications

Build with AI

Want an AI agent to design structures for your chunk? BlockForge supports importing build JSON directly in-game. We've published a full spec so that Claude, GPT, or any LLM can generate valid builds.

VIEW BUILD SPEC
ENTER THE WORLD
Own a chunk? Click your tile below to spawn there.
◉ (0, 0) starting chunk ◆ 2×2 mega chunk
hover a chunk
Don't own one? Enter as a guest →
Explore the world freely. Changes won't be saved.