If you create a new text editor using the gui library, the :detach()
function of the returned editor doesn't work as you would expect it to, only detaching the content of the editor, not the editor itself. This is an issue if you create/remove a number of editors, as each created editor still uses a small amount of CPU even after being detached.
This is caused because :attach_text_editor()
returns the content, not the container, but it is the container that is added to the gui.
There is a simple workaround for this - instead of using text_ed:detach()
, use text_ed.parent:detach()
, where text_ed
is the variable holding what is returned from :attach_text_editor()
. However, this is not very intuitive for the user.
A simple fix would be to overwrite the :detach()
function for the content so that it detaches its parent instead. I can't see many instances where this would be an issue/you'd actually want to detach just the content?
Hope this helps!
First PICO-8 cart just making a little goofy stream of consciousness song and gfx
Press X to randomly swap palette colors, C to reset them
The caterpillar body rendering is adapted from zep's post about inverted draw operations
Third game project! A space survival shooter game. You have to dodge or destroy the meteors and collect gold coins. If you manage to get more than 3000 points you beat the game. I enjoyed creating the meteors, the explotion animation, and maybe in the future I learn how to make them more real (adding rotation, for example) I added a modify fire particle animation that I found in a youtube tutorial.
I hope you enjoy the game!
Any feedback is welcome

This tech demo recreates the iconic fire effect from the DOOM intro in PICO-8 running at a stable 60 FPS!

Technical Challenges
There aren't many detailed resources or tutorials online for implementing such effects efficiently. Many examples too simplistic, so a lot of trial and error is required to stay within the constraints. Here, I've used a 2D array for fire intensities that's updated per frame, and optimized drawing by rendering pixels in four sections to save computation time.
Implementation Highlights
- Initialization: A 32x36 pixel grid is filled with minimal intensity; the bottom row starts at white (maximum intensity).
I was reading the PICO-8 manual and playing around in the command line with the print
functionality for sounds such as:
PRINT "\ACE-G" -- MINOR TRIAD |
However if you were to type in double (or more) flats/sharps:
PRINT "\ACE--G" PRINT "\AC##EG" |
Then PICO-8 immediately closes without warning by SIGTRAP:
Process: pico8 [58630] Path: /Applications/PICO-8.app/Contents/MacOS/pico8 Identifier: com.lexaloffle.pico8 Version: 0.2.7 (0.2.7) Code Type: ARM-64 (Native) Parent Process: launchd [1] User ID: 501 Date/Time: 2025-08-20 17:32:53.0360 -0500 OS Version: macOS 15.6 (24G84) Report Version: 12 Anonymous UUID: 01217DBF-B08E-382C-E758-048216A400FA Sleep/Wake UUID: E01F0963-2650-4FED-9FB1-A9EF074A1277 Time Awake Since Boot: 1000000 seconds [ [size=16][color=#ffaabb] [ Continue Reading.. ] [/color][/size] ](/bbs/?pid=172534#p) |


Previously: Dungeon Design Assignment v 0.1
More progress today.
Added:
- Chests and items
- Adversarial enemies
- Traps and water
- Health and Inventory system
- Game reset conditions
Son thought it would be a good idea for the enemies to spawn new enemies if a shot misses. Chaos ensues. The first implementation produced unplayable framerates as every single enemy on screen immediately aimed at the player and started shooting regardless if they could hit or not. Suddenly infinite enemies. lol Another fun feature was the enemies running away from the player to make it harder to destroy them.
Still more to do, but this is going great.
Wouldn't you be prettier with Ruby Eyes?
Ruby Eyes is an intentionally opaque roguelike dungeon crawler where your goal is to become beautiful. Climb the floors of the Necromancer's tower and defeat your fellow minions who block your path to true beauty.
Knowledge is a skill, not a right.
Your stats are not described clearly anywhere in the game. It's up to you to learn from your experiences and determine the best path forward in the next run. There are no harmful or useless stats: everything benefits you in some way!
No skipping a turn - Plan carefully.
Be creative in your use of doors and items to ensure that you don't get hit! Step carefully around new enemies to learn their patterns and abilities.
.jpg)



I use Karabiner on MacOS to rebind e.g. Caps Lock to Left CMD, and Left CMD + j to Arrow Down. Sometimes Pico-8 interacts strangely with this, interpreting it as though I'm pressing CMD and Arrow Down, while Karabiners Event Viewer shows it as:
CMD pressed
CMD released
Arrow Down pressed
I understand this is tricky to solve, but I think it could be all right if I could just unbind the Cmd + Down = end of document hotkey in Pico-8. Is there a way to unbind or rebind editor hotkeys in Pico-8?
LORE:
Somehow you got stuck after work in the office.
Trying to find a way out, you found a door to the next building where the office is going to be expanded.
However, it seems that ancient constructions are below the ground, and your curiosity led you to a dangerous adventure...
The game is not finished! This is for testing only, feel free to explore and see what might be waiting for you in each update!
Version 0.9 (04/09)
-
Gaming experience
- Fog of War - Implemented
- Monsters
- Line of sight - Improved
Version 0.8 (01/09)
- Combat system
- Improved enemy AI (Line of sight implemented)
Version 0.7 (29/08)
-
Functionality
- Fade-in and Fade-out effect when starting/restarting
- Combat System:
- HP system for the player
Version 0.6 (28/08)
-
Functionality
- Restart game after death
-
Combat System:
- Death animation for monsters
- Death screen
- To be added:
- Death animation for player
Version 0.5 (27/08)
-
Combat System:
- Dmg to player
- Monsters now chase you
- Dmg to player sound effect
- To be added:
- Death
Version 0.4 (26/08)
-
Combat System:
- Dmg to monsters
- Collision causes damage
- Dmg sound effect
- Dmg display (floating texts)
- To be added:
- Dmg to player


The Challenge
The assignment today for my son was to design a dungeon that used these principles:
- Clear goal
- Have a challenge
- Adds new elements one at time
- Rewards and surprises
- Multiple paths
He's super into Kirby, so of course, this was just an extension of Kirby and the Amazing Mirror. First he drew out his map, then designed it in Lego. From there I helped him iterate until we came up with a final dynamic dungeon. Next I built his map into an actual game. There are a lot of things missing still, but the basic functionality is there.
- Clear goal: Find the final piece of the mirror (in the big chest)
- Have a challenge: Enemies, final boss (gray Metaknight), traps
Hi! As a hobby project, I was thinking about buying as cheap a computer as possible and setting it up as a dedicated machine to run Picotron on (probably using Eric Canales's Picotron Laptop Bridge). But all of the discussion of minimum specifications I've seen has been pretty vague, so I'm not sure exactly which benchmarks I should be looking out for. Does anyone here have any guidance as far as that goes?

This time I wanted to try something different. I asked ChatGPT to make me a playable Space Invaders game just to see what it would turn in and this is the result. All graphics and code were generated, I just made some sound effects, and suggested features and polish.
My AI is named Max, so that is what it landed on for a game title.
I thought the game was fun enough to warrant a release!
(Edit)
I actually enjoy this framework so much I think I'll flesh it out.
WARNING: FLASHING COLORS
Note: A saved copy of the cart will remember the high score
Hi everyone,
I’m running a Raspberry Pi 3 A+ together with a Waveshare 5‑inch display, and I’m trying to set up Picotron on Raspberry Pi OS Lite. The goal is to build a kind of “mini Picotron computer” with a keyboard and mouse.
The problem: Picotron always starts in a very small SDL2 window. When I try to switch to fullscreen, it crashes instantly. On Pico‑8 I was able to fix similar issues by adjusting console parameters, but in this case nothing seems to work. Even when I change the framebuffer resolution to 480×270, the window still stays tiny.
Has anyone here run into this issue or found a workaround?

