For the better part of this decade, my eyes have been set on some uncertain natural progression of game development; a better higher level than what scripting languages offer. Something which encourages tinkering and allows casual developers to step only as low as they would like; in short, something which offers visual programming, until you step low enough, all while remaining in a safe, crash-free environment. Though, visual programming is not a focus: I believe following objects & variables by name is superior to following complex line webs. 'Visualization' is more like it; easy, simple tools to allow tinkering, and a UI which reflects all your changes immediately. Ultimately, Fun Editor is a tool for artists. It may be too high-level for most serious programmers.
My greatest mistake is likely sticking to using Love2D & Lua when actually attempting the idea; stubbornness. Naturally, the performance of any 'big system' will suffer greatly in Lua, but probably the worst part is the lack of high-performance, well-documented libraries I can use. In 2021, I began learning Rust, and now this project is being given its best chance at being performance-optimal, while being upheld by many great dependencies which are giving it its best fighting chance. Below is a video of one of my weaker attempts for the project, though it has some style. Of course, my latest serious attempt will be on here as soon as you're able to buy it.
This was a small project I started as part of a little community game jam. I probably should have made it in Game Maker, since the jam was in a Game Maker community, but it was small enough that nobody would care. Plus, I was very excited to learn Love2D!
This project showcases some basic game design patterns. A simple and unique game mechanic, teaching the player in-game, handmade 2D platforming physics, level progression, enemies, and level design variety. This game also shows off my ability to emulate game hardware limitations. Making an NES-style game, I tried to match as many of the restrictions & oddities as I could from the NES. Notably in this project, that meant adhering to the NES's blue-centric color palette, and implementing an odd tile effect which appears on the right of the screen, shown in the video below.
I still quite like the concept! Switching between standing upright or walking on all fours; one form providing additional speed & jump height, while the other form allowed for combat, and peaking your head up in shallow water. Maybe I will return to this game one day.
While never a serious an attempt at a 3D engine, this was a fun endeavor and exploration into the basics of 3D. As I was learning Love2D, I was interested in emulating 3D for fun, so this project was a fun excuse to kind of start learning 3D.
Another inspiration for this project was when I learned about how the Playstation 1 did its texture mapping; "affine texture mapping" it's called. I learned that while Love2D's polygon draw routine would allow texture mapping, it only performed an affine distortion to the texture, and so I could use it to render a 3D scene with accuracy to the PS1!
It was done by projecting 3d points onto a 2D plane, using the CPU, following information learned from Wikipedia. Eventually, I knew the CPU wasn't up to snuff, so I wrote a shader... which performed the 3D projection math. It's really roundabout and silly, and my performance was totally abysmal. But it was fun. :)
You may also notice the start of a model from another project of mine.