Crystalline: Deflection Story

My game development story starts out with GameSalad and Jar Jar Binks. When I was 12 years old, I wanted to look into game development. I used my point-and-shoot digital camera to make a quick stop-motion animation of my Star Wars LEGO Jar Jar Binks figure walking, swapped out the graphics in the GameSalad platformer sample, and I realized I was hooked on game development.

I made several game prototypes with GameSalad, among which one was a black-and-white maze game named "Bob" which I later turned into a Tiled tutorial, but soon enough I stopped using GameSalad and got into real coding. My dad knew just the thing: Corona SDK. He told me that a 14-year-old had released a game with it, so he wanted me to give it a try.

I used a tutorial from the CoronaLabs website called "Corona in 5 Minutes" for my first coding experience. All I can say is, running through the tutorial certainly didn't take me 5 minutes. To begin with, I couldn't figure out whether you typed the code into the terminal window or the text editor, and by the time I had figured that out, I had several "syntax errors" (whatever those were) in my "main chunk" (whatever that was). All while writing one line of code.

I finally completed the tutorial, and lo and behold! I got the line "Hello, World!" in my terminal window. Needless to say, I, armed with TextEdit for my source code editor and Preview's annotation features for my graphics editor, took a while to learn Corona.

My first "game" was about moving a smiley face around with buttons (I named it "The Useless Game" for obvious reasons). My second was similar, only there was physics and you could jump while moving around. I kept making "games" like these, and in the process, I learned quite a lot.

After I was relatively proficient in Corona SDK (and my coding tools had upgraded to TextWrangler and Sketch), I started working on "real" games. I made a Bubble Ball clone (everyone's got to do one of those), finished it, but never published it. Then I made a pretty cool maze game (based on Bob, my GameSalad black-and-white maze game, but with light effects), but it never got finished, for one reason or another. The same fate awaited an endless defense game, a platformer, and an endless runner game. About the time I dropped the runner game, I saw a code sample dealing with particle effects. Before now, I'd drawn all my graphics by hand with Sketch, and special effects were worrying me. I said to myself, "Self, why don't you try making one of those?" The result wasn't very good. I put aside particle effects for a time.

As I built project after project, trying to find something I could make to publish, I made libraries on the side. Finally, I focused all my attention on another particle effects library. I finished it, published it, and thus CBE was created when I was 13 years old. It was quite a success, because it was free, easy to use, and used a clean, straightforward approach to particles. Perspective, my virtual camera library, also appeared in the same way, as well as some more less well-known libraries.

Ok, zoom forward a bit. Libraries such as Dusk, Cyan, and others surfaced, but I still hadn't created anything to put on the App Store. It was on my fourteenth birthday - after I realized I'd been coding for two years - that I decided I'd have to make a complete game.

The idea of deflection (according to the dictionary, 'deflection' fits my meaning closer than 'reflection') had been one in my mind for a while, so I made a quick grid-based light-bending game. My one problem was that it would be too common, so I shelved it, though it was the first game that was really good and had actually reached a publishable state. I kept working, trying to find something that could be my first game, until something struck me about the deflection idea. People have done square-based deflection games, and non-grid-clamped deflection games, but I'd never heard of a hexagon-based deflection game. With renewed energy, I rewrote my game to use hexagons as the playing surface, instead of squares, and you can imagine where things went from there.

Thanks for reading this long, long post, and, since you made it all the way down here, you might want to download my game here (hint, hint!).