Tuesday, October 18, 2022

Beach Balls

 

I made a little browser game recently! It's called Beach Balls. It's a tiny score attack game you play with your mouse. Some friends have gotten really impressive scores already!

I made Beach Balls in Love2D, a game dev framework for the Lua programming language. I made all the art myself -- I also made the music in Bosca Ceoil. As small as the game is, it feels like a pretty big milestone to me, because it's my first time making a complete game essentially from scratch. 

I cannot say enough nice things about Love2D. It's extremely light-weight, which is a huge plus after a decade of dealing with large and sometimes cumbersome editors and export sizes. It's also free and open-source, which is nice after watching YoYoGames work for a decade plus to slowly tear Game Maker away from the hobbyists that fueled its initial success. It's instantly familiar and easy to use. Lua reminds me a lot of GML -- once I got a workflow going, it honestly didn't feel that much harder than Game Maker. Even though I was making everything in a text editor! I followed Sheepolution's very good tutorial for the record, at least until I had enough tools to branch off and do my own thing.

I've always used medium-level engines like Game Maker or high-level dev tools like RPGMaker, Twine, etc. until now. I've told friends that the creative work of making and finishing a game is already very scary and demanding, and I don't want to add a bunch of hard technical work on top of that. I also enjoy working within the limitations of high level editors. I don't need to make an engine from scratch to fit a very specific preconceived vision. I find the stories of my games while working on them, within the constraints of my tools.

But also... programming is really fun! I loved it as a kid, even separate from game dev stuff. I think my love of coding got burned out of me for a while after college, just like I stopped reading for five years after high school. I've been having a blast learning Love2D and the Lua environment. I immediately jumped into a much more ambitious project after finishing Beach Balls, and I'm already delighted by the tech problems I've been wrestling with.

There's nothing more real or authentic about making your own game engine in a lower-level framework. The actual story I'm sharing isn't anymore inherently worthwhile because I had to make my own collision code and scene manager. But doing all this stuff is fun as hell for me, and I like the hand-crafted artisanal feelings I get from using all my own code and art and sounds and music.

I've put out two dozen games now -- the creative part of game dev is officially No Longer Scary to me. This is a new skill to learn, a new way to get excited about this hobby that's been bringing me joy for a decade now. I feel good about it!

No comments:

Post a Comment