I've made a series of fonts for the PICO-8. Each font uses as few sprites and as little code as possible. An 'LS' version of a font uses Less Sprites at the expense of longer code.
TinyText: a lowercase font meant for use alongside the uppercase system font. Each character is just 3x4 pixels and aligns to the bottom of the system font, meaning lines of text are still 5 pixels tall and 3-pixel monospaced. The whole font uses just 5 sprites. Can fit 21 lines of text on-screen (the same as the system font).
TinyTextLS: the same font as TinyText but with just 4 sprites!
MiniText: a prettier lowercase font also meant for use alongside the uppercase system font. Character size varies and can hang below the writing line, meaning lines of text are now 7 pixels tall (but are still 3-pixel monospaced). The code is a bit longer, but the font still only uses 5 sprites. Can fit 16 lines of text on-screen.
MiniTextLS: the same font as MiniText but with just 3 sprites! [deprecated, see LRP's Mini]

A game based on Shodo by oinariman (Ryosuke Mihara).
With help, support, and patience from Jonathan Muth.
M is an unhappy art student who thinks she doesn't have what it takes.
Her teacher thinks that's bullshit.
Use the arrow keys to move.
Hold z to draw.
What can you and M make before time runs out?!
Press f to skip the intro if you've already seen it!
Take a screenshot when you're finished and add it to the gallery:
Submit your stuff c:
or email it to [email protected]
or tweet it to @JonathanMuth
View all the work here:
UR an Artist Tumblr

I've been meaning to ask around about interest in this for a while, but as far as I can tell, generated Pico-8 HTML/JS is free to be used as I please.
As someone who uses Cordova and Electron a lot in my job, my first thought was to wrap a project in Electron for a Pico-8-free 'native' app, perhaps with arcade style frames, additional controls, etc. This also extends to Cordova for iOS/Android (with a bit of faffing around to replicate keypresses).
My thought is that it opens up Pico-8 hobbyists to create games they can distribute (and sell? I don't know what the ramifications of this are) and expand the freedom that people have. There's also scope for additional experimentation, using smartphone sensors for controls, etc.
I suppose I wanted to bring up 2 discussion points:
1. Are there any limitations on what can and cannot be done with either the generated code or the .p8 file data itself?
and
[b]2. Are people interested in wrapping their Pico-8 games in a way that they can play Pico-8 games both outside of Pico-8 and outside of their web browser?

Hey guys, I'm just starting with PICO-8. So far it's very fun. Although I'm a frontend web developer by profession, Lua was very easy to pick up due to its similarities to Javascript. The development experience is generally pretty awesome apart from poor debugging tools. But overall, the simplicity is welcomed since it lets you bang out proof-of-concepts really quickly.
Alas, the simplicity really does set me back in one category -- persisting data.
It seems like looking at the manual and some carts, the main method is to write binary data to a memory address with peek/poke/memcpy/memset. As a JS guy, I've worked with plenty network protocols and IO between filesystems, databases, and APIs, but when it comes to working directly with binary data and using memory addresses, I'm kind of lost. I've rarely encountered a situation that required me to use bitwise operators or manipulate binary values directly.
That being said, I have looked around the BBS and attempted to find something to guide me on this quest to save the game state. I've seen a couple of threads (like this one) and downloaded a few carts like Shodo and Picodachi to see how it's done. Despite my best attempts to grok the concept, it's very difficult to understand the following:

Another little project my brother and I have been working on. We are huge Cave Story fans, so building a demake was kind of a childhood dream come true. Never ceases to amaze me how much can be done within the (wonderful self-imposed) limitations of the Pico-8 engine.
It has no real ending as-of-now, we might add that in later. But for now, enjoy! If you want to see some of our process in creating this, we vlogged about it at DoubtfulGames

ZOOMZOOMZOOMZOOM
| is in beta some of the commands and keys you can use are ARROW KEYS = move selection for zoom Z = zoom X = colors TAB = you can change color combinations D = edit palette |
| if you want to help me make this art thing you can help by assisting in -making the zoom animation actually work (ADDING YOUR OWN SPRITES) |
part of the art saga i suppose.

Introducing Writer!, the PICO-8 word processor that nobody asked for. Writer! would have been distributed with the PICO-8 (fantasy) keyboard peripheral, which plugs into both controller ports. Don't have a PICO-8 keyboard of your own? Your standard keyboard's WE, ASDF, XC and arrow keys should emulate the correct inputs.

This is a stepping stone to an overly-ambitious project.
I'm looking for a better way to sort a table of triangles--currently sorting speed for around 150 triangles is preventing me from having solid filled triangles.
Does anyone have a good quicksort implementation that could sort a list of triangles, where each triangle contains 3 points and a centroid "z" value?
triangle_list={}
function new_triangle(p1,p2,p3,z,color)
t={}
t.p1=p1
t.p2=p2
t.p3=p3
t.z=z
t.color=color
add(triangle_list,t)
end
function sort_by_z()
...
end
|
That said, I actually like the way that the wire-frame looks, and backface culling almost makes hills appear opaque.
Hey All
Here's a quick update with music copying and keyboard configuration for controller buttons.
To configure buttons, use KEYCONFIG from the commandline.
To copy a song from one cartridge to another:
- In the song editor, click on the start pattern and then shift-click on the end pattern that you want to transport. They should light up green.
- Control-C to copy the pattern data, along with the sfx they point to.
- Load the cart you want to paste into, open the song view and click on the pattern index you want to paste to.
- CTRL-V to paste. When pasting a song, any SFX that are needed are written to unused slots and then the pattern indexes are adjusted accordingly.
Changelog:
v0.1.5 Added: Keyboard configuration for player buttons (KEYCONFIG) Added: Music tracker select / copy / paste Added: Single-level undo in audio tools Added: Live preview of frequencies in sound editor Fixed: Command history extends past last reboot Fixed: Sfx exporter broken Fixed: Slashes at end of path resolve to double slashes Fixed: Load cart from commandline under Windows |

Hi there! First post here. I'm doing some kind of go game and I have no idea how to make the CPU to take decisions about where to put the stones in the board…
I'm a web developer and this aspect of programming is completely unknown to me, so… Where should I begin? Any piece of advice? Book to read? Tutorial?

I'm very pleased to finally release TRAIN, a game I've been messing about with for months and months. It started out as an attempt to build a nice interface that would look right in a very old point-and-click simulation game, and grew a lot from that aesthetic. It's definitely one of the things I've made that I'm proudest of with PICO-8, as minimal as it seems.
You have a large control panel for a very small toy train. The controls are supposed to be something of a puzzle. There are no instructions, only hints, but suffice it to say that you can make the train move. Fuel is limited, so the goal is to maximise your distance. Ideally, you won't go hunting in the source to figure out what the buttons do, but the buttons used are these:
Left Shift
Z
X
S
D
F
UP
DOWN
You should see a definite effect from most button presses, so most of it will be fairly simple after an initial trial/error period.
It's a weird little game, but I hope you enjoy it.

A bit of sad, I spent the last three weeks with creating a small rpg game with Pico8, but ran out of memory half the way. I would have been able to come along with the token count with some tricks, but finally, the compressed cartridge size limit hit me and I don't see any chance to finish it with the current limits of Pico8. If the memory limit for the source code would be doubled, there would be a chance, but until then, maybe the wip is of some fun for one or the other. As I'm toying around with a fantasy console like Pico8 myself, maybe it will see the light there eventually ;)
The game picks up elements from the early Ultimas and The Bard's Tale. You can move around the city, enter some buildings and you can enter the first two dungeons. There is already a world with some other buildings and dungeons, but as there's no memory left, I'm not able to fill them with game play.
So far, have some fun with it!
Update: Seems, the cart was that too big, that the export failed - uploaded again.
Update2: I fixed two missing features, where you weren't able to leave the shop and the inventory. Further, I unlocked the wilderness and all the other dungeons.

Hi ! This is a bomberman clone i made a long time ago (early september 2015) with pico8 0.1.1
I hope it still works !
PS: The code supports two players, but must be edited before to enable it..... and there's a button that destroys ALL blocks in scene. Again, this can be disabled. Just not use it if you want a "fair" game with those brainless bots ! xD
Enjoy !

I am much confused about cstore/reload vs cartdata.
If I read correctly - you could replace cartdata with cstore/reload writing to and from the cart file, no?
Is it actually the case that this is true, or am I missing something important? I will note I am unable to currently get cstore/reload to actually work as I think they are supposed to, so I am open to "no, you misunderstand".
For the record - this is what I was trying:
Start Pico-8, do:
POKE(0x4300, 99)
CSTORE(0x4300, 0x4300, 1, "TEST")
Then later, restart Pico-8, and:
RELOAD(0x4300, 0x4300, 1, "TEST")
PRINT(PEEK(0x4300))
And I expect it to return 99 - but it does not.
Is a puzzlement.
PS. Can we get a version() call, or maybe put it in the "About Pico-8" menu? Seems it would be handy.





15 comments




