Log In  
[back to top]

WIth the previous version of the BBS, I almost never got logged out. With this version, it seems like every time I visit, I have to log back in. A couple days ago I was even sometimes getting logged out just clicking around to different pages.

Is this short login session time by design?

P#59496 2018-11-30 19:53

This is a really weird bug, but stat calls for pattern index, note index, and "number of ticks played" do not always sync up and sometimes one changes before the other. It was intermittent and hard to track down. In order to compensate for this, I had to write something to insulate myself from it:

function poll_songpos()
  local pat = stat(24)
  local n = stat(21)
  local ticks = stat(26)

  -- compensate for bug (!) where pattern sometimes changes before note
  if pat ~= songpos.pat and n ~= songpos.n then
    songpos.pat = pat
    songpos.n = n

    if songpos.prevticks > 0 and ticks >= songpos.prevticks then
      songpos.ticks = 0
      songpos.waitingforticksync = true
  elseif pat == songpos.pat and n ~= songpos.n then
    songpos.n = n

  -- compensate for bug (!) where pattern sometimes changes before ticks
  if songpos.waitingforticksync then
    if ticks < songpos.prevticks then
      songpos.waitingforticksync = false
    songpos.ticks = ticks
    songpos.prevticks = ticks

(I then changed all other code to use songpos as the source of truth, rather than the stat calls)

However, this caused a big headache and was hard to track down and it would be great if this wrapper were not necessary. Also I'm not 100% sure this wrapper code is completely bulletproof; I simply wrote it out of necessity to get the issue out of the way from the specific cart I was working on.

Sorry I don't have a cart demonstrating the issue, but I will try to make one. I just wanted to get this reported sooner rather than later, in hopes that it might get addressed for the upcoming update :D

EDIT: as a reminder I also have another bug thread about stat(24) returning 0 instead of -1 which hasn't been fixed yet

Thanks again, @zep, for adding these sfx state-related stat calls a while back; it is super fun to get stuff to react to music/sfx, in a way that is not easily possible on most other platforms!

P#59474 2018-11-29 22:35 ( Edited 2018-11-29 22:44)

The new BBS 4.0 "cart menu" (the one that slides over and covers the screen and shows other carts) is really cool! However, it seems it allows music to continue playing, while not running _update on the cart. This will basically completely break some audio synchronization stuff I do with stat calls in some of my carts (I do this heavily in one which is going to be released very soon!)

You can see an obvious demonstration of the issue with this cart, which displays the notes that it sees are playing: https://www.lexaloffle.com/bbs/?pid=28685

Until now, I did not see a way for music to play without the update method being called for so long (besides minor frame drops, which I do some work to account for), and this feels kind of like a violation of a basic assumption (at least an assumption I had) with the API so I'm hoping this web behavior can be changed so that the cart is either completely paused or completely running, and not a weird in-between state? @zep

P#59460 2018-11-29 19:40 ( Edited 2018-11-29 20:38)

It looks like the "/bbs" bit is missing.

For example, this is the image URL on my settings page:

But the correct URL is apparently:

P#59415 2018-11-28 07:12

When sorting by likes, anything past page 1 seems to display an empty page.

compare this: https://www.lexaloffle.com/bbs/?cat=7#sub=2&orderby=featured

to this: https://www.lexaloffle.com/bbs/?cat=7#sub=2&page=2&orderby=featured

P#59414 2018-11-28 07:07 ( Edited 2018-11-28 07:08)

Cart #59095 | 2018-11-17 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

QUEST has been hailed by critics as "the most exhilarating 299 characters of source code I have played today" and "a true example of minimalism...well definitely not a false example".

Features include:

  • Dynamically hard-coded sound effect(s)!!
  • Full English dialogue!!
  • Fit-on-one-screen source code!!

(This was created as part of TweetTweetJam in which the prompt was to make a game using fewer than 560 characters of code.)

P#59097 2018-11-16 22:35 ( Edited 2018-11-24 22:01)

Cart #56542 | 2018-09-11 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

Give a man a fish and he'll eat for a day.
Teach a man to fish and, well...you'll see what happens.

(this cart was made in a few hours on a tropical island)

P#56543 2018-09-11 17:11 ( Edited 2018-09-15 05:22)

Cart #51156 | 2018-04-01 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

When I started making this, I was inspired by two Italian things: pizza (not pictured) and the Cassini spacecraft.

~ this cart is designed to be played in a dark room with headphones on the night of a new moon ~

P#50543 2018-03-17 19:48 ( Edited 2018-04-02 16:07)

(tip for people unfamiliar with PICO-8 controls: the "O" button maps to the following keyboard keys: Z, C, or N)


KITTENM4STERSOFT DEFRAG is the industry-leading fantasy defragmenter for the PICO-8.

Read what customers are saying about KITTENM4STERSOFT DEFRAG:

> "It really looks like it's working!"

> "The rectangles were over there and there...but now they are all over there! Amazing!"

> "I can't stop watching. Please send help."

Let's see how the features in KITTENM4STERSOFT DEFRAG stack up when compared with Other Leading Defragmenters:

                                KITTENM4STERSOFT DEFRAG     COMPETITORS
Defrags FANTASY DISKS?                     ✓             |       X
Can be run over and over?                  ✓             |       X 
Relaxing Music while you wait?             ✓             |       X 
Screensaver Mode?                          ✓             |       X 
Inuitive One-Button Controls?              ✓             |       X 

User Experience First

Other leading defragmenters are designed with function first, giving only a passing thought to USER EXPERIENCE.

KITTENM4STERSOFT DEFRAG is revolutionizing the industry by putting user experience first!

KITTENM4STERSOFT DEFRAG is the only PICO-8 defragmenter designed for one sole purpose: to give you the luxuriously satisfying experience of watching a disk be defragmented.


  • Removes 100% of fantasy fragments!
  • Makes you feel like you are accomplishing actual work!
  • Meticulously rearranges each file's fragments into a contiguous and sequential mass, leaving your computer—and you!—feeling whole, complete, and at peace!

Never Stops Working

Other leading defragmenters can also defragment, but once they finish running, your files are stuck there at the beginning of the drive, forcing you to wait hours, days, or even weeks until your disk is fragmented enough to defragment again to satisfying results.

Unlike other leading defragmenters which cease to provide the user with an entertaining display of ambulating rectangles once they have finished, KITTENM4STERSOFT DEFRAG creates a new FANTASY DISK each time it is run!

Menu Options

Open the PICO-8 menu (on keyboard, press RETURN or P) to access the following two optional modes:


Enjoy the latest in popular music, perfectly paired with the enticing visuals to enhance your meditative experience. DEFRAGMENT YOUR MIND, BODY, AND SOUL!


Activate SCREENSAVER MODE to disable pesky dialog boxes, enabling you to sit back and enjoy an endless supply of fresh fantasy disks get defragmented with no user interaction required!

P#49180 2018-02-11 17:08 ( Edited 2018-06-09 06:05)

Cart #45656 | 2017-10-31 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

here is my submission for 3-COLOR JAM

It has two secret endings :>

For people not familiar with PICO-8, the desktop web controls are: arrow keys and Z/X (or C/V or N/M)

P#45572 2017-10-28 21:29 ( Edited 2017-10-31 00:27)

Cart #40777 | 2017-05-20 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

feed the ducks

P#40778 2017-05-20 01:33 ( Edited 2018-09-16 22:17)


P#36217 2017-01-21 18:44 ( Edited 2017-01-29 22:28)

I recently made a program that can translate (some) MIDIs to PICO-8 tracker format and I thought I'd also make a fun visualizer to show it off :)

The music you see (and hear) above is J.S. Bach's Sinfonia 15 in B minor (BWV 801). It was translated from a MIDI file (that I found on the internet somewhere) into PICO-8 tracker format by the aforementioned tool:


This visualizer takes a simple approach of displaying whatever notes it sees are currently playing each frame (if any notes changed) so it may skip notes if the notes ever change faster than the FPS (this cart runs at 60). A more robust visualizer could be written, but I just wanted something that could display most normal songs for fun :)

You can use this visualizer to display your own music by downloading this cart and uncommenting one or both of these lines in the _init() function (and changing the path string appropriately):

-- load the music and sfx data from another cart
--reload(0x3100, 0x3100, 0x1200, 'othercart.p8.png')

-- permanently store the music and sfx data loaded above
--cstore(0x3100, 0x3100, 0x1200)

I hope you enjoy watching the little notes go by. I enjoy Bach's keyboard music and much of it also happens to translate very easily to PICO-8 tracker format :)

P#28685 2016-09-17 15:45 ( Edited 2017-02-08 01:15)

Now that O/X button glyphs were added in 0.1.7 I just had a crazy idea: what if the glyphs could be customized to be displayed differently on your PICO-8 so that they could look like the buttons on whatever controller you are using? (or whatever keyboard keys you are using)

I realize that the O and X on the current glyphs are only 3x3 and that's not a lot of room to work with...anyway, thought I'd throw the idea out there just in case :)

have a great day!

P#26100 2016-07-29 16:11 ( Edited 2017-10-12 13:53)

It would be great if it was possible to draw in the sprite and map editors using only the keyboard (i.e. without requiring the use of a mouse/touchpad). With sprites being only 8x8, I find myself wanting an easy way to precisely move the cursor by one pixel at a time instead of the inherent looseness/analogueness of a mouse/touchpad.

I also think in general it might be thematically fitting for all of PICO-8's editor modes to be completely useable without requiring a mouse, to be similar to older computers for which mice were either optional peripherals or not present at all :)

P#23568 2016-06-24 18:30 ( Edited 2016-09-09 20:56)

This thread is just to say thank you to zep for making the SPLORE feature :)

I have a dedicated gaming computer that is permanently hooked up to my TV in my living room and I just had the sense to put PICO-8 on it, and let me tell you: using SPLORE on it with a wireless Xbox 360 controller is so fun!!

I am discovering carts I've never played before just because this interface makes it so easy to browse through carts!

Sure it has some flaws that I trust will be addressed (I'm looking at you, search), but man is the overall concept such a great one! I happily discovered it's even possible to type into the search box by selecting characters using the controller!? So coool!

And I made a shortcut to PICO-8 with the -splore command-line argument so it boots straight into SPLORE mode, and then I launch that shortcut from Steam Big Picture Mode with a controller...it's just a dream <3

Thanks, zep, for turning my living room into a PICO-8 arcade! :D

P#22232 2016-06-04 00:48 ( Edited 2016-06-15 01:54)

(I really hope this doesn't sound whiny; I don't want to tell anyone what they should or should not do; I'm just trying to make sure people are aware of something they may never have thought of!)


If you use "up" as the jump button for a platformer, it makes it basically impossible to play your game using a controller/gamepad.

Please be kind to those of us who like to use a joystick or d-pad as our directional input!




(besides, aren't we supposed to pretend that the non-devkit version of PICO-8 only has a d-pad and two buttons, with no keyboard?)

P#22212 2016-06-03 21:21 ( Edited 2016-06-05 12:06)

this is just your standard fish painter game, but no one had done one for pico-8 yet, so

P#21727 2016-05-30 02:18 ( Edited 2017-06-17 22:43)

Cart #17186 | 2015-11-29 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

you are a raincloud!

my wife and I made this together.

P#17184 2015-11-29 13:09 ( Edited 2015-12-12 19:44)

Cart #51509 | 2018-04-11 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

Standard 9/6 Jacks or Better video poker

Controls should hopefully be straightforward (directional buttons and primary action button, e.g. Z), with the following notes:
-Press up to scroll up to the pay table above the play area.
-Secret quick-draw feature: After holding, you may press the secondary action button (e.g. X) to instantly "draw"

Note: This game makes use of audio/video synchronization (particularly in the intro) that seems to not work very well on the web version (on my computer at least; maybe you will have better results) and it looks/sounds way better if you run it in the native PICO-8 client.

Good luck :)

EDIT 2015-06-11: Updated for PICO-8 0.1.1 compatibility
EDIT 2017-06-16: Fixed coin-count display bug, adjusted several sfx volumes to avoid distortion
EDIT 2018-04-10: Added support for some things that did not exist in PICO-8 when I first made this: saving to cartdata (and "cash out" menu option to reset), button glyph on title screen

P#10912 2015-05-24 21:38 ( Edited 2018-04-11 06:13)

View Older Posts
Follow Lexaloffle:        
Generated 2020-03-30 11:11 | 0.111s | 4194k | Q:149