Lua to the End?

From the beginning of my game career, I intended to make games that use Libretro, a C/C++ library that can be used in writing emulators and standalone games. The reason why I learned Lua in the first place was because, compared to using straight C or C++, writing games in Lua and relying on the Lutro core seemed to be the more comfortable option. Indeed, because Lua programs do not need to be compiled, I ended up saving myself plenty of precious time in my last two college projects back when I took my Master’s Degree. Developing my final project using LÖVE instead of trying to understand the Libretro library, especially given the one-trimester deadline, spared me from a lot of grief. That knowledge of Lua also helped me develop games for the PICO-8, an all-in-one platform that not only helped me get used to normal game development but also has several channels of delivery, my favourite one being uploading the game itself in image format. You can even play these games in your browser with little fuss!

However, I am starting to feel the limitations Lua has. While Reckless Abandon has simple code, Re-Hoard has a game plan that needs object-oriented programming when generating random anti-hoarders, each with their own patrolling and hunting styles, per stage. Lua does not have any object-oriented functionality; other people fake that functionality using metatables. Even with that fake functionality, I fear that I would be better off relying on the real thing. Besides, if Lua lacked true object-oriented functionality, then what else would Lua lack? Other consideration include less layers of abstraction that might interfere with my wanting to interact with Libretro itself, the bigger maturity of C++ tools and libraries, and practice in a language that is still in high demand in the workplace. In fact, the more advanced aspects of Lua actually use a C library!

On the other hand, the gains from the lack of a compilation time proved to be an assets when I debugged my college projects. Also, LÖVE games store their assets as-is instead of they being baked directly in the program; I can edit a sprite or switch around a song and see the effects when running the game anew.

Despite these benefits, I am seriously considering working on my new games with C++ from now on. In fact, though Reckless Abandon would stay a PICO-8 game, I might move Re-Hoard to C++.

I just need to figure out how to display and move .png sprites and implement collision detection while I use Libretro.


Reckful Spriting

I managed to do almost all of the graphics of Reckless Abandon. I was actually out of ideas by the time I stopped, but I thankfully got almost everything done there. Other than that, I still have to do the bonus exhibit and a secret or so.

I stopped temporarily because I both wanted to rest and celebrate. I wanted the ideas to come, but that needed me stepping away from the game. Even coding would not give the rest my mind needed in gathering ideas.

I think I got almost all the ideas I needed since then now.

I feel accomplished that I did so much. I hope that I can release both Reckless Abandon and Re-Hoard by the end of this month.


A Human-Sized Wall

Recently, I started working on Reckless Abandon again. Weirdly, my problem was that I had trouble figuring out how to draw humans in sprite form. I think the reason behind my hesitation was because I am going to do a big number of human-based designs in both Reckless Abandon and Re-Hoard, yet in theory, there are several ways of drawing humans. There is a lot hanging on this base concept.

I decided to take my time in loosening up my human designs.


The one I like the most is the purple design due to its reasonable compactness while still being recognizable and animatable.


72 hours…

I earlier mentioned that, because both Re-Hoard and Reckless Abandon are half-developed, I can follow eevee’s lead on developing these Pico-8 games in 72 hours.

The issue is that eevee developed her game in 72 dedicated hours (save necessities, of course).

…I can dedicate myself that much, though, to some extent, but this is a flash of perspective that I missed when I wrote my last post.

I should get to playing around with the demos today.


I was so reckless…

You are probably wondering why I had not made any updates to this blog in a shockingly long time.

The first issue was my current computer. After the keyboard appearing to work not properly, I decided to switch its operating system. Because my laptop computer was meant to use Windows 8 and 10, I spent weeks figuring out which operating system worked until Fedora seemed to be the solution.

The second issue was my knowledge of the Pico-8. Because I did not have that familiarity needed in working with the Pico-8, I spent my time studying the API and using a cheat sheet. After that, though, I need to play around with the Pico-8, then practice that knowledge in a more relaxed way before I can get to working on Re-Hoard again.

That is right; I am not working on Re-Hoard right away. Though I did get an answer to my question, the game proved to require knowledge that exceeds the knowledge I currently have or knowledge I can use directly after just playing around. I need to make an easier game before I can tackle Re-Hoard again.

This easier game is called Reckless Abandon.

On a different take from Re-Hoard, Reckless Abandon is more realistic and contemporary in one way, yet more mysterious in another way. The game has a raccoon explore an abandoned amusement park and discover what gadgets and history this place has. Instead of relying on “arcade action”, Reckless Abandon focus on the mood and setting. The gameplay is very simple where the raccoon just moves around and “uses” a few objects, therefore making a game that becomes (in theory) far easier to program.

I hope to release both Re-Hoard and Reckless Abandon before the Puerto Rico Comi-Con because that convention would make a great networking opportunity. I would also need to update the site and make some beautiful art, which means that I would have to go back to practicing art. In fact, I am worried that I would not release the games on time.

…then again, eevee made a game in the Pico-8 during a 72-hour Ludum Dare. More on that, we both have the advantage of having the games half-done already; eevee already had a fully-developed game engine while I already have fully-developed game concepts. (In fact, developing the concept of Reckless Abandon was part of the reason of my inactivity here!)

2 games in 3 days each… let me see if I could reach that goal…


Re-Hoard: main and panic themes

Even though I liked Robert Duguay’s Nine Songs in Pico-8, the fact that they were not freely-licensed always bothered me. I decided to make my own.

Actually, other than transcribing a few songs ‒ some partially, some fully ‒ I never made a full song before. I never even went through formal music training other than eevee’s post on music. Here, I just went by a sort of mindful intuition: while some of this was me going by what “sounds great”, I also asked myself questions that I felt that should be asked, the main one being, “Does this contribute to the overall feeling I want to convey?” I ended up with a song that “tells a story,” so to speak.

I made these in the music tool of WarioWare: DIY, used a male-male 3.5 mm cable from the headphone slot in my New 3DS XL to the microphone slot in a computer I use, then recorded, modified and exported them in Audacity. (I wish the in-game player did not make a sound when you start playing the song…) The MIDI files came from the WarioWare DIY Editor.



Time to Panic!!!

Creative Commons License
These works are licensed under a Creative Commons Attribution 4.0 International License.


I should start over.

Not long after I posted my last post, I fully realized that, when I was making my first game, I actually did very little preparatory work before just diving into the editor. Despite how fun that would sound, I was clueless all this time at how stuff worked in the Pico-8! Most relevantly, how could I learn how the opponents were to move if I had trouble with the physics!

That was stupid of me.

I decided to take my time exploring the Pico-8 more thoroughly before I go back to the game. I would still work on the assets, but the actual coding would have to wait until I get used to things more.


No help yet…

I posted in the Lexaloffle Forums, but I did not get a response even after about a week. I wonder what I did wrong in writing my post… I modified my post by making my request more specific, but I just do not know what else to write. I am so blocked; I don’t even know how to properly articulate what I need.

Maybe I can use this opportunity to “refresh” the code. I should branch the code, first, in case someone from the forums notices my edited post. Thankfully for me, posts that are edited also get “bumped” to the top of the BBS list, making unnecessary the need of “bump” posts and all that.


Delays and Re-Hoard

One of the most iconic quotes from Shigeru Miyamoto: “A delayed game is eventually good, but a rushed game is forever bad.” However, in the Internet, a couple of interesting rebuttals to this quote is Duke Nukem: Forever and The Mighty No. 9, that is, games that had a large development time but ended up underperforming terribly. The problem with that rebuttal is that both of them had undergone gross mismanagement during their long development times. Duke Nukem: Forever kept changing companies. The Mighty No. 9 was Keiji Inafune’s first time managing a game by himself, which involved him making horrible mistakes with his backer’s money among other things.

My time with Re-Hoard gave me an idea of the trouble Mr. Inafune had to stand. The only reason why I am not undergoing the same controversy is because, while Mr. Inafune as running on the money of a huge number of fans who wanted him to revive the same iconic MegaMan franchise that made Mr. Inafune historic in the first place, I am an unknown person who is making something entirely new on my own resources. Also, while The Mighty No. 9 had its development known far and wide, I made public only the source code of my game Re-Hoard because I do not want to cause such a fuss over any problems from my failing to deliver.

Of course, because this is my first game that I am fully developing and releasing, I have gone against a lot of mistakes on the overall development procedure, the most important being my own responsibility on development. More specifically, while I wanted to develop daily, I spent weeks without touching the game. Eventually, I did get around to work.



This is the farthest I could go in developing how the opponents were supposed to act in my game. I stopped in March 3rd.

…I soon remembered why I stopped in the first place. I was not just procrastinating; I was frustrated at not being able to plan how my game is supposed to run! This was the farthest I could do when planning the behavior of the opponents in the game. After that, I would still have to deal with the behavior of the player dragon, the switching between stages, the title screen, and the music, let alone the debugging! At least I managed to find good visual designs of the opponents and the treasure.

I feel stupid and useless over this inability. I spent 5 years in my Bachelor’s Degree and 3 years in my Master’s Degree; shouldn’t I be able to do this stuff by now?


I should not be so hard on myself here; this is actually the first time I coded around the Pico-8 API. A lot of things are still new to me. Writing this, I wonder if I went too fast before starting to code my game, even if my game is relatively simple.

I think this would be the best time that I would request help in the forums. I did not want to do so because that might leave a bad impression on others, that is, one where I would promise without delivering a game, but, because I want to actually deliver my game, I willingly put away what is, in the end, just an assumption.


Uploaded my re-hoarded notes

I just uploaded my notes on the development of Re-Hoard. Hopefully, the help I would get would have the necessary information.

What’s weird is that, though I expected to go to writing the code after I wrote my notes, I found out that I also needed to organize my notes into actual algorithms instead of thinking that the notes are already algorithms in themselves. I realise that I would need actual flowcharts out of this, too.

A weirder thing is that, even though all I did was clean up and clarify my notes, I was no longer willing to work until tomorrow. I thought that this was a trait that only came up during my final project in college.

Then again, these days, I have been adjusting to a life where I essentially have control of all my time. I already developed a surprisingly high amount of self-discipline back at my final year in college, but this transition from following instructions to doing your own work just began. I mean, even when I had a lot of free reign on the things I could do in my final project, I still had to answer to the school staff. Here, I have to do everything and respond to myself. This level of responsibility, while lower-pressure in a way, is something to what I have to get used gradually. I am only getting the hang of these things around this week.

I hope that I would develop more regularly, now.