PICO-8 Snake

In the fall of 2023, I had a task I needed to pass, a sort of final trial before I could officially begin my doctoral student of mathematics. In Auburn, what you need to do to pursue doctoral research is to first take classes for two years and pass a series of preliminary exams before you can get a committee and advisor and all that. It's two now, but it was three when I began, and by the beginning of the fall semester of 2023, only one remained. Real Analysis.

I took Real Analysis all the previous year. For those who don't know, Real Analysis is basically the foundations of Calculus - to study Real Analysis to learn both about all the fundamental building blocks of Calculus, and then extensions of Calculus beyond the real line and real numbers, into other strange spaces and fields. This isn't a great lay explanation, but it'll do for now. Point is, real analysis deals almost entirely with infinitesimal quantities, decimals, fractions, limits, continuums, spectrums. Basically the opposite of what I've wanted my research to be - graph theory, combinatorics, discrete mathematics, topics where objects are distinct and integer, quantized, no fuzzy reasoning about infinitesimal quantities. At least in general. I respect real analysis, and my professor, Dr. Sukhatiev, was quite good. But the fact remains that at the end of the year, I felt like I understood quite little, and was very nervous about that fact.

The real analysis preliminary exam was scheduled for after the summer, and I studied little over summer. The prelim was scheduled, unusually, for about a month and a half after school began. I remember shortly after returning to Auburn some videocalls with my friend Shannon, where I explained the terrible nervousness I was undergoing, and the next month and a half I spent most of my free time either fruitlessly reading through a textbook or poorly taken notes or agonizing about the inefficiency of my studying and the oncoming exam. It got to a point where a couple of friends were actually concerned about my wellbeing. I was also on a diet at the time and losing weight, so the combination of my high stress and increasing gauntness may have made an troubling image.

The month and a half passed, and all through out that time I sought distractions from the prelim, and one that fell in my lap was an old copy of PICO-8. PICO-8, for those unfamiliar, is a sort of fantasy game console, a home microcomputer that never was. When you program in PICO-8, you have to create your application within a 32 kilobyte footprint - you must fit everything you want to display into a 128x128 screen, with a 16 color palette and tileset of 256 8x8 sprites, music and sound effects made with four channels and basic synthesizers. It's like an 80's home computer that never was, and the point of programming in it at all is to see how impressive you can make something within those limitations, much like the demoscene of old. Below is a fine example:

When not panicking about the prelim, I spent a great deal of time in PICO-8, experimenting with different ways of using math to create 2D artwork and animations, such as the one below which was my personal favorite.

Eventually, a week before the exam, my nerves got to me, and I couldn't study anymore one night. After weeks of studying, I was immensely stressed and my nerves were fried. I had to do something else, so I sat down at my laptop in my darkened bedroom and booted PICO-8, and basically entered a fugue state. In 12 hours over a Friday evening and Saturday morning I programmed a copy of the classic game Snake, complete with scorekeeping and highscores, a tilemap background, proper sprites to match the snake's movement, and a short little synth loop, all programmed in Lua which I had barely used before.

It's important to me that you all understand that I was not well.

Point is, I did it - I made a pretty good copy of Snake for someone with such limited programming experience in general, such as myself. Luckily PICO-8 can be embedded into webpages very easily, so I could upload my game to itch.io - or here - and people could play it from their computers or phones with no problem. Here it is. Controls are the arrow keys and the x key, you can figure it out from there, I believe in you. I passed the prelim by the way. Test was very easy. Kinda makes you wonder if all this was worth it.


Return to Videogame Hub
Return To Main Page