This is just a document to outline what I want from the project, so it won't drastically change every month or so

Data driven content

I want data driven content, ideally people will be able to share their worlds with other people and modded content will just Be There™, henceforth referred to as Content Packs

This, though, will come with a couple restrictions, for safety reasons:

  • Content Packs cannot modify engine code, but can modify other Content Packs.
  • Content Packs cannot access the file system.
  • Content Packs cannot use unsafe, unmanaged memory, reflection, or native code

Items, blocks, fluids, and entities should ideally use an ECS or similar, allowing creators to modify the behavior of existing content.

Lore and Game Feel

I want the game to feel mostly lonely, like it's you against the world
There could be stuff like settlements, but those should be rare.
There might also be abandoned structures, sort of like the jungle temple in Minecraft.

As you get lower down in the world, you should come across stronger enemies (but not too strong!), with the reward of more minerals.

The world is separated into multiple layers:

  • The sky
    • Think skyloft from Skyward Sword
    • Flaoting islands you can explore
  • The surface
    • Basically the overworld from Minecraft
  • The underground
    • Caves and stuff
  • The core
    • Think undertale
    • Giant caves
  • The deep core
    • Lava and ice clash
    • Unstable ground

Engine Tech

The game world should go from -1024 blocks to +1024 blocks, being 64 chunks tall.

Blocks and fluids should have separate "layers", allowing for better fluid-logging compared to Minecraft

Model animations should be able to be keyframed

Should run at at least 60 FPS on my old laptop

  • Mobile Intel Whiskeylake i3 + integrated graphics

Graphics and Art

One pixel should always be 1/16 of a meter (block)

Foliage should wave in the wind, along with stuff like wind chimes, and lanterns.

Foliage, such as leaves, should look "bushy" and not just a full block.

Clouds should look like they could be real in the context of the voxel world, not necessarily in real life. Some good inspiration is Better Clouds

Shadows should be calculated real-time, sort of like in most optifine shaders.

Colored lighting should be used, but we need to avoid it looking like a rave