Skip to content
VertCodeDEVELOPMENT
← All work

Case study

OreBound

Our own passion project, where we learn what makes Minecraft content go viral. Two custom gamemodes: Raft and Cookie Clicker.

OreBoundplay.orebound.net

Why OreBound exists

OreBound is our own server. It's a passion project, and it's where we learn what makes Minecraft content go viral, so we can do the same for the servers we build for clients.

That changes how features get designed. Every mechanic has to work as a ten-second clip, so the TikTok idea is written next to the feature: "You can't drink the ocean." "The storm is the payday." "Your raft works while you're offline."

12
Ocean tiers in Raft, from a 48-block cage of water to 1,024 blocks of open sea

Source: OBRaft, border_size.yml

~455×
More water at the last Raft tier than the first

Source: OBRaft game design, border tier table

30
Upgrade rungs on every cookie, for clicks and for generators

Source: OBClicker, upgrades.yml

0
Server entities per cookie. Every cookie, number and hitbox is packets

Source: OBClicker

Raft

Raft is the game Raft, in Minecraft. You and your crew start on a few planks in your own private ocean, and everything you own comes out of the water: you hook driftwood and barrels as they float past, and set nets, traps and a winch to haul in the rest.

The water wants you dead. Thirst drains while you play, swimming costs stamina, storms push you around, and three kinds of shark get meaner the further out you go. Ten machines on the raft, from a salvage net to a water tank that fills in the rain, keep you alive and show their state in the world.

The ocean grows, not the raft

The raft stays put. What moves is the world border. Each of the twelve ocean tiers pushes it outward in an eight-second animation and brings new debris, new threats and new islands. At the last tier the crew can Set Sail: a fresh ocean, keeping the raft and its machines.

Raft: border radius at each ocean tierblocks
Source: OBRaft, border_size.yml
Raft: border radius at each ocean tier
Radius
T148 blocks
T296 blocks
T3128 blocks
T4176 blocks
T5232 blocks
T6304 blocks
T7400 blocks
T8520 blocks
T9664 blocks
T10820 blocks
T11920 blocks
T121,024 blocks

A bounded ocean per crew is also what keeps it fast: there's a fixed budget of entities per ocean, and new chunks are only generated when a crew buys a tier.

Cookie Clicker

Cookie Clicker is a tycoon built around the old-school game. Every island has a cookie, and you click it: thirty upgrade rungs for what a click is worth, a ladder of generators that bake while you're away, combos, crits, golden cookies, frenzies, and prestige once you've climbed far enough.

The cookie isn't the whole game. At spawn you harvest crops on the farm, mine ores in the cave and fish at the pond, with one tool that grows with you, and quests and a season pass tie it all together.

The balance is on purpose: a player who sits and clicks should never out-earn one who leaves the cookie baking and goes to the farm, the mine or the pond.

Cookie Clicker: hours to the last prestige, by play stylehours
Source: Simulated with our balance model, harvest income included (OBClicker, upgrades.yml)
Cookie Clicker: hours to the last prestige, by play style
Hours
Clicking 4 times a second47 hours
Clicking 2 times a second73 hours
Only harvesting and idling160 hours

Everything is packets

There's no cookie entity on the server. Each cookie's skin and hitbox are packets, sent only to the players standing on that island, and so are the numbers that burst off it when you click. A thousand islands cost no entities, no chunk tickets and no entity ticks, and an island nobody is standing on costs nothing at all.

The crops and ores at spawn work the same way: everyone harvests in their own view, so the world itself never changes and no two players fight over the same block.

The platform behind it

OreBound is where our platform started. Every plugin on it is built on OBCore, our shared core for items, menus, animations, bosses and leaderboards, and runs region-safe on Canvas. The networks we run today are built on the same core.

Want a case study like this for your server?