PICO-8

Awesome PICO-8 Awesome

PICO-8 tools code

A curated list of PICO-8 resources, tutorials, tools and more. Inspired by the awesome list thing. You might also like awesome-lua and awesome-love2d.

PICO-8 is a fantasy console for making, sharing and playing tiny games and other computer programs. When you turn it on, the machine greets you with a shell for typing in a subset of Lua commands and provides simple built-in tools for creating your own cartridges.

Community

DemoScene

Resources

  • Official Manual - Placeholder dump of pico-8.txt! (Proper manual coming soon).
  • Cheat Sheet - by Neko250. Based on the official manual, with edits where found appropriate.
  • PicoZine #1, #2, #3 and #4 - PICO-8 Zine is a 48-page fanzine made by and for PICO-8 users.
  • Going from Lua 5.2 to PICO-8's Lua - This document is here to help folks with a proficiency in Lua understand the limitations and discrepencies between Lua and PICO-8's Lua.
  • Cheat Sheet (printable) - A reduced cheat sheet in a printable format. German and Englisch version available.
  • Cheat Sheet (wallpaper) - An enhancement of the printable cheat sheet for use as a desktop wallpaper.

Tutorials

Tools

  • Sprite Editor - External sprite editor compatible with Pico-8 and PicoLove.
  • pico2png - Spritesheet extraction written in perl.
  • Spritesheets and tools for the PICO-8 Palette - Compilation of works assest and tools using the PICO-8 palette.
  • Pico8Utils - Compilation of lua scripts based on the unix philosophy for working with .p8 files.
  • picotool - Tools and Python libraries for manipulating Pico-8 game files.
  • p8dl - Carts Downloader - Python - Downloads cartridges into the correct folder (looks at your config.txt).
  • Pico-8 Carts Downloader - Bash - Downloads cartridge from the BBS (single cart, whole index or dump your favourited entries) & rename them according to their metadata.
  • p8 responsive webplayer transform - Python script that makes your HTML export page responsive.
  • Color Palette - Hex and RGB colors codes for web.
  • PICO-8 font - by RhythmLynx.
  • pico-test - PICO-8 testing framework.
  • Lib-Pico8 - A Pico-8 library of useful common functions.
  • pico8-missing-builtins - Provides Lua built-in functions to pico8.
  • P8Coder - A programming tool that replaces the lua code in pico-8 cartridges (p8) with the code you write in P8Coder.
  • Pico-Kit - An opinionated collection of Pico-8 helpers that make it easier to get going. Adds OOP, better debugging, and physics.
  • picoDeploy - Deploy Pico-8 carts as standalone applications on desktop (Electron) and mobile (Ionic).
  • pico8Grunt - A build system for pico8 games, using gruntjs.
  • PICO-EC - A tiny scene-entity-component library created for the PICO-8 fantasty console.
  • PICO-Tween - A small library of tweening/easing functions for use in the PICO-8 fantasy console, inspired by Robert Penner's easing functions.
  • p8 - A dependency manager and build tool. Lets you share code/sprites, require() dependencies, and auto-reload carts on save. Works with any external code editor and supports MoonScript.
  • MIDI to PICO-8 - A tool to convert MIDI files to PICO-8 music.
  • midi2pico - A MIDI to PICO-8 converter.
  • Custom template - A simple and clean template, that fixes issues with fullscreen, mouse and just looks nice.
  • Fillp Tool - A simple helper tool for generating fillp patterns.

Text Editors Language Support

Programming Fonts

You might be interested to install pico-8 programming fonts they support the pico-8 custom characters as well as various fonts (bitmap and regular anti-aliased fonts). Check the BBS thread here.

How to install the font(s):

  • Linux: copy the files on ~/.fonts and sudo fc-cache -f -v
  • Windows: copy the files on c:/windows/fonts/

Hacks - undocumented PICO-8 features

  • Mouse - How to retrieve mouse coordinates (with demo).
  • p8keyboard.js - Javascript "keyboard adapter" for the Pico-8. Send ASCII characters to a Pico-8 program running in a browser.
  • SFX Modifications - Four effects that can only be applied by modifying memory (with demo).
  • Tracker State/Audio Memory Locations - How to access and modify audio data as it is playing.

Hardware

  • GameShell - A modular handheld game console that allows you to play & modify retro games and DIY new devices. Check the GameShell Docs for how to run PICO-8 on the GameShell.

Articles & Posts

Podcasts

  • pico chat - A bite-sized podcast about Pico-8 and other tiny games.

Talks

  • Sharing the love - Making games with PICO-8. linux conf au 2017 - Hobart, Australia

Clones

  • TIC-80 by Nesbox - Tiny Computer, available on HTML 5, Windows, Linux 32/64bit, Android & MacOSX
  • PicoLove - Pico-8 Reimplementation in LÖVE.
  • LIKO-12 - An open source fantasy computer made using LÖVE with 96kb RAM.
  • PX8 - Open Source Fantasy Console (128x128 pixels) in Rust (with Python/LUA code support).

I Want to Contribute!

Great! 😃

Please, read the contribution guidelines first.

License

CC0

To the extent possible under law, Felipe Bueno has waived all copyright and related or neighboring rights to this work.

See https://github.com/pico-8/awesome-PICO-8/blob/master/LICENSE for more information.