- Export to ZzFXM and OS13k
- Share compressed links
- Several example songs
- Instruments are customizable
- Undo and Redo
- Cut, copy, and paste
- Turing complete!
Figuring out how make something cool with such a small amount of code is quite the challenge, but it’s not my first rodeo. This year I submitted two programs, so check out my other entry, Digit Dilemma Plus, a logic puzzle game with procedural levels. The contest provides “shims”, html starter code for canvas and WebGL programs, but neither of my entries use them.
In this post I will go through every single line of my 1 kilobyte piano and explain how some of the trickier parts work. The whole thing is open source on GitHub and has a some improvements since my JS1024 submission. So please continue reading and let’s make sweet music together!
Here’s 1Keys running live in a CodePen for you to mess around with. It can be played with either the mouse or keyboard.Continue reading
An experiment to visualize how points move around the mandelbrot set. Draw with your mouse and watch the Mandelbrot set do it’s magic!
Months ago, when I heard that the legendary JS1k game jam would not be continuing, I talked it over with some other devs and decided to help fill the void we would host a 2k game jam on itch called 2kPlus Jam. The primary goal of this comp was to create a game that fits entirely in a 2 kilobyte zip file. That is incredibly small, for point of reference a 3.5 floppy disk could hold over 700 of these games.
The theme for the game jam was “Shift” which I incorporated by shifting the hue for the world’s color when the player crosses a checkpoint. I imagined that crossing a checkpoint was fictionally like shifting or jumping into a new dimension with a different hue, which is how I came up with the name “Hue Jumper”.
For 2kPlus jam I made a 3D racing game that fits in 2 kilobyte zip! It includes physics, controls, rendering engine, and procedural level generator. The code is extremely dense and clean as I went through many iterations to fit everything. I also spent an immense amount of time polishing the look and feel. You can play the game in browser, or view the code on GitHub. I am working on a post that will go into some technical detail about how my game works. Also, check the other submissions to 2kPlus jam, there are some mind blowing entries!
I used the theme by having ghosts of your previous lives return to help you after each death. There is also a juggling mechanic like the Twin Bee / Stinger series of games where you can juggle an egg for massive bonus points. The level is procedurally generated every time you start a new game and gets progressively more difficult over time.
The game can be played with keyboard, mouse, or gamepad in several different configurations. There are 2 ways to shoot, hold fire for fully auto, or wait to charge up a powerful blast.
My adventure in tiny coding began on April fools day, strangely enough. For the previous several weeks I had gone perhaps slightly mad, feverishly working on tiny C++ skiing game. Inspired by Andrew Kensler’s Business Card Ray Tracer, I had the urge to make a tiny game to print on the back of on my business card. On April first I published a half joking post about how I would only be making business card sized games now. Little did I know that would not be far from the truth.
I began writing a column called “Dissecting a Dweet” that explains how some of these tiny programs work, which I post right here on my blog. The most popular one by far was “#3 – Mini Black Hole” is a good place to start. So far I’ve released eight of these and I have roughly the first twenty planned out if interest continues.
Towards the end of the year I moved on to building some larger programs, but still sticking with this new “tiny code” philosophy. For JS13k I made “Bounce Back” an action adventure roguelite that won second place! I also made “Bogus Roads” for #LowResJam, one of my most complete game with 3 procedural generated levels and 5 music tracks. A few weeks ago at MAGFest I presented a talk on tiny coding to a packed audience which I will continue refining for submission to GDC.
Late in the year I released ZzArt on GitHub, a tool that can evolve abstract art using GLSL shaders. Though the code itself is fairly simple, I have been completely amazed by the results. I now have saved hundreds of amazing images, and ended up getting many of them printed for holiday gifts. I even had a few poster sized prints made and hung them in my living room! I will definitely continue developing this.
I recently had some exciting news recently when one of my videos won “Best Illusion of The Year” and now has over two million views! There are many more amazing things that I’ve left out, so keep reading for a organized list of everything I’ve done in 2019. Follow me on twitter for daily updates on my progress. Here’s to an amazing 2020 for everyone!