Press "Enter" to skip to content

Darren’s (Quick and Dirty) Pico-8 Cart Masher

Last updated on August 5, 2022

About a week after UL’s Game Dev Soc Game Jam, I had some free time to revisit the collaboration tool I made for the gamejam team. It was nothing special, but I was hit by a mini-epiphany of turning it into a super-simple web app that would aim to make it as easy as possible to use. A fun little side-project, why not? Generally when solving any problem I have to ask myself “Has this been solved before?” because usually the answer is “Yes” and in this highly connected world we live in there is a Good Reason why a problem has not already been solved by someone else, in which case there is some rewarding thinking in asking yourself “Why has this problem not been solved?”.

Maybe I am already jumping the gun – so after sketching out a little boilerplate code on flask, I decided to go and see if such a tool already existed. Low-and-behold, a new land has been discovered! The wonderful PICO-8 console has a little ecosystem flourishing across the world. Eager coders, gamedevs and hackers are contributing to each other’s code around this lovely little fantasy console! The fantasy-console lends itself quite well to introducing programming. It’s not surprising that there are now a bunch of hobbyists sharing their creations. And I was not the first to make a tool that achieves the result we needed. There was a bunch of tools that did what mine did – mostly because it was an easy problem to solve given the nature of the pico-8 cart format. (Pico-8 makes it easy for us programmers because carts are thoughtfully saved in plaintext format, and plaintext is to programmers what timber is to carpenters.)

Those other projects probably had significantly more hours and expertise put into them too. That makes them way less fragile than my quick script. Maybe the world does not need yet another PICO-8 cartridge combiner. Then again, I did not come across any browser-based online tools that I could just use without code.

At the gamejam I am motivated, enthusiastic about coding. So much so that I actually didn’t bother with searching for existing solutions and just made a thing. I assumed it didn’t exist already – we all make mistakes though and that’s why jams are useful! The main reason I thought that there was not a quick online webapp was this: a programmer on the team uses the tool. The only thing that a webapp would do for a programmer is ensure that they had to use a web app instead of the command line, which is actually wasting time for them rather than making it easier.

The programmer would simply need to request the other team members send their respective cartridges via the delivery method of choice – it doesn’t matter how once the programmer receives the cart data for each part of the cart. Organising this kind of file sharing is a common and necessary for teams – which is why we have things like Dropbox, Google Drive, Weetransfer and a whole lot of similar services. For this specific case, the pico-8 cart format is text so you could even copy-paste it into your team chat and copy-paste that into your own cart. So again, why would you need the extra hassle of using another tool? Experience is the biggest reason. The next is to see if I can actually make it easier than just doing it yourself.

The tool is a essentially a very specific and fragile set of copy-paste actions. The only answer now is that if I offer it up as a website, with an easy to find name and domain, then I will make it just a little more appealing of an option for the programmer on the team to say “Just go to pico8cartmasher.com and drag-and-drop your cart file into that.”. Maybe it will give you a link, or some way of sharing it with your team that is super quick. Basically it needs to reduce friction to the point where it is an obvious choice to make. But then again, I didn’t even think about looking online until I had already build the tool in the first place. Discovery of this tool is the second challenge to face, and likely the most important to it’s success. Oh well! I guess all I can hope for is that somebody finds it useful. For now, I am willing to give it a day or two. If only to learn more about deploying web apps and the pico-8 community.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.