« Posts

Replicube

2026-02-13 Tags: games, daily-games

I've been really loving this game for the last three months. It's in the very niche category of "games about programming", inspired by Zachtronics, another favorite of mine. For each puzzle you're shown a 3d voxel shape and need to write a program that outputs that shape.

The program runs once per voxel (x,y,z coordinate) and returns a color or no color, like a 3d version of "shader" programs in videogames, and can be an animation with multiple frames.

The fun part (and zachtronics-like) is that your solution is shown on a bar chart compared to other players' solutions, graded on code size and code speed. For the regular puzzles you can't see anyone else's code, but there are three weekly challenges, ranging from easy to hard, and after the challenge closes you can view everyone's solutions to compare.

That daily game feel has me hooked, and you can submit a separate solution for code size and speed.

I would love it if they had a scatterplot too, so you could shoot for a solution that is best of both worlds. Unfortunately the best speed solution often looks like "unrolling loops" and hard coding checks in a 500+ word long solution.

It's also been really helpful to build my intuitions around math, things like cos and sin and atan2. Often when I start a new puzzle, I don't have a clear understanding of the underlying math, and need to start by hard coding a lot of the logic - and in the process I start to notice the commonalities and slowly refactor it into a simpler and shorter version.

If you pick it up, you can add me as a rival to easily compare scores, I'm _jesse_yo. And let me know your username so I can follow you back!

In the programming weeds:

The scripts you write are in Lua, which has some interesting implications for both run time and code size.

Lua is one of the rare languages that starts arrays at index 1 instead of index 0 - and you really feel it when trying to use modulo math to generate indices: data[(x % 4) + 1] instead of data[x % 4] everywhere, etc.