SortaCraft! [0.8 Alpha]

UPDATE 10/13/2021

It's been almost one year since SortaCraft was released.
Hang in there, SortaCraft 2 is still coming!
Preview -


This is my take on a Minecraft clone! This game was built with Three.js and JavaScript Modules, Web Workers and Service Workers.


This page will not be updated until I release Survival Mode.

Coming Soon: Beta!

How To Play

Click on the crosshair to lock your pointer
W A S D to move around
Scroll to change block
Space to go up
Right click to place, left click to break

UPDATE 12/1-4/2020

Baconman321 has collaborated with me on this project and has cut the loading time of chunks in half! Minor optimizations have also been made.

I have also reintroduced realistic lighting and optimized shadows to the game, making cave exploration, terrain, and buildings more visually interesting. A better offline cache system and versioning is in the works, along with sprinting (which I may warn you, is quite buggy at the moment). There is also a new menu you can access by pressing `. This menu allows you to change the material type of all chunks, and will greatly improve performance on lower-end devices.

The game has been optimized further, and the "plastic" look has been removed. Offline support is being worked on.

Q and A

  • The game is REALLY slow. Can you make it faster? Press ` (backtick) to change the graphics setting.
  • How do I change block? Scroll up and down.
  • It's so hard to look around. A: Make sure your pointer is locked(click)
  • It's so hard to place/break. A: It is a bit difficult to break/place on a touchpad. Try a mouse.
  • Why is it taking so long to place/break blocks? A: Please use a different computer.
  • Why can you jump so high? A: I'm lazy
  • Why is the sand biome all slabs? A: I need to fully implement half blocks

Image Gallery

You are viewing a single comment. View All

@Baconman321 Thank you so much!
I’ve seen a JavaScript Minecraft clone by Khan Academy, and it runs blazingly fast. This is most likely because almost all of the game code is GLSL. I think the Three.js library is slowing it down. Maybe in the future, I could skip the library and port most of the code including the big parts such as the terrain generator and voxel engine, as the engine generates the geometry data itself, and Three.js inserts it into the geometry. I’ll look into PWA and the service workers soon. The comment on chunk size - I’ve used 16 by 16, or maybe 64 by 64. I believe 64, I need to check. My target platform was the school Chromebooks, and they were already struggling with the game. My original goal was cubic chunks, this works half the time as I need to brush up on my math. The Bedrock edition of Minecraft runs much faster than the Java version, since a massive amount of the code that used to run on the CPU is now on the GPU, which is why crazy render distances are possible.