In the process of creating scenery elements, in this case clouds, for a WIP Pico-8 game. I wanted to build a process that could be called at any point in the game and place a unique element within the scene. It quickly became evident that the concept of a reusable function could back fire on my idea of a programable design. This led me to the question: at what point does the processing of parameters and customization of new objects created in a prototype, out weigh a simple tween?
The original concept of unique clouds was scaled back, the weight and token usage didn’t warrant the features that were available for the potential number of times the function would be called.
In this code walkthrough, I’m illustrating how to implement clouds through a window in a section of the screen. With a few minor adjustments, the script could be modified to work full width or the speed adjusted.
Continue reading Reusable Animated Clouds For the Pico-8
Creating sprite animation based on user input in Lua is made remarkably handy by a set of functions made available by the Pico-8 environment. I’m going to be extending these core functions with a set of reusable worker functions to establish the foundations of a game engine.
What’s covered in this article:
- Pico-8 programming environment structure
- Creating a manageable instruction set
- Receiving user input and manipulating game assets
This tutorial’s goal is help those of us who are new to Lua/Pico-8 to get a working prototype up and running. I’m basing this modal on my experiences developing a simple adventure game.
Continue reading Pico-8 Sprite Animation Basics
Last Cyber Monday I picked up the awesome PocketChip by The Next Thing. The pleasant bonus to the very capable Linux based system, is that it comes packaged with the Pico-8 virtual console.
The game system, as it’s name suggests, is reminiscent of an 8-bit machine. Complete with the limitations of 32kb “carts” that hold game code, artwork and music. 16 colors and very chippy, chip tune sound generation. The screen size is 127 x 127 pixels. All together the systems capabilities amount to a very convincing retro machine.
The Pico-8 environment also includes a three part IDE: code editor, sprite sheet art package and sound tracker. While it’s possible to use the built in code editor pretty effectively, when the code length gets into the hundreds of lines, code management gets complicated.
To establish a more modern working environment, I installed Pico-8 onto an OSX system. The following guide is intended for Mac users but aspects can be applied to Linux, Windows and CHIP/Raspberry Pi.
Editing Pico-8 Carts
OSX stores Pico-8 carts in the /Users/$USERNAME/Library/Application Support/pico-8/carts folder, $USERNAME is your user on the system. On the PocketCHIP and Linux, you can find carts in /home/chip/.lexaloffle/pico-8/carts. Replace “chip” with the systems user.
To make life easier, create a symlink from a dev directory to the cart location.
First create a dev folder in you desired location.
Then from within the cart folder execute:
ln -s /Users/USERNAME/Library/Application\ Support/pico-8/carts ~/pico-8-dev
Note the escaped space in “Application Support”. The above example will link the cart location within Pico-8 to the folder pico-8-dev located in the users home folder.
Continue reading Setting Up a Pico-8 Workflow