So I decided to go for a platformer... my first in PICO8. Building it on top of my OOP game model (which maybe was not that good an idea...) so it is a code nightmare. Already at version 4 with a few discarded prototypes in the middle and for sure require some cleanup and refactoring... but kind of works and it would be great to start getting feedback.
Torches are an application of an old experiment, it's been a while I wanted to include them in some project (and for sure require fine tunning, as they are map cannot scroll as they are poke'd in place with additive blitting)
Still a very early WIP, no screen boundary control so if you fall off an edge you will fall forever :)
I am parking this for a while but I will come back to it very soon, I relly like where this is going


Hello! I'm a research student at the New Mexico State University, and I've been analyzing the usage of different IDE's used in game-development related classes (Digital Game Design, Senior Projects, Intro to Game Design/Programming, etc.).
I was recommended PICO-8 by my professors, and I quickly became addicted to messing with this fun, simplistic software.
However, I was wondering if any teachers, professors, or students have had any experiences with PICO-8 in the college classroom. What class was it used in, and how was it implemented?
I asked a similar question to the TIC-80 community, and I would love any insight about either software! Also, if available, would you guys be willing to share some sample projects (while crediting the creator, of course)?
Thank you for sharing!






This is a cut down version of the variable inspector I wrote a while ago. It's a bit more limited, but a lot more light weight. And there's a way to use it even if you have no tokens to spare (described below).
You use it to view Lua table variables:
- Run your game
- Press Esc to break into it
- Type: dinsp(variable)
Then use the mouse to expand values and scroll wheel to scroll up/down.

Code snippet follows (for some reason I can't use the code formatting tags):
poke(0x5f2d,3)cursor()pal()clip()function dadd(n,v,i,p)add(lines,{n=n,v=v,x=type(v)=="table"and"+"or" ",i=i},p) end function dexp(l,p)if l.x=="+" then for n,v in pairs(l.v) do p+=1 dadd(n,v,l.i.." ",p)end l.x="-"end end
function dinp()local x,y,b,w=stat(32),stat(33),stat(34),stat(36)line(x,y,x,y+2,10)if btnp(❎) then local i=(y-10)\6+1 local p=s+i local l=lines

This is my biggest pico-8 project so far!
Switching between windows by clicking on them gets buggy when there are more than two windows. I recommend either using the icons at the bottom, or not having a lot of windows open.
It would be great to see if others could build on this and make it better. If you want to do that, here is the cart:






Say a player has a way to design a custom painting in a game. This painting should persist between playthroughs, and be stored on the spritesheet.
I know that this should be done via cstore(), but I simply do not understand how.
function painting() -- code for modifying sheet through sset() here -- cstore(A,A,L) end |
What I actually need is the values for A and L.
Cheers in advance.


Intro
Recently I decided to dig into portal renderers and start to build my own, inspired by this excellent write-up of BUILD. This is currently work in progress, no guarantee it will turn into a full game but thought it was interesting enough to share.
I used a lot of stuff from other projects


Quick mod tonight: Celeste 2 Long!
This mod removes the length limit for Lani's grappling hook. That's it.
I know this isn't much compared to my normal mods but I had this idea and it worked pretty well, enjoy!
All credit for the original game goes to Noel, Maddy, and Lena https://mattmakesgames.itch.io/celeste-classic-2
get it? Celeste 2 long? ...too long? Anyone?




Hi i implemented an online leaderboard using this method: https://www.lexaloffle.com/bbs/?tid=42526. And I managed to get it to work. I can't embed it here because it requires setup on the browser side but if you are interested you can play it here: https://maxall41.itch.io/the-heist. Though the in-game leaderboard can be a little bit glitchy due to the difficulties of parsing json data in PICO-8.

Decided to make a game about exploring a bunch of islands. Obviously needs a lot of work, but it's a start.
Hold S or (<) P2 to see the map.
Use P1 arrow keys to move.
Hold X or (X) P1 and press any of the P1 arrow keys to place/destroy a platform on water.
To do:
- Add Scenery (e.g. trees, plants, etc.)
- Add crafting + resource management
- Make music
- Make player look not trash
I've run into the same thing on a couple of projects, so I'm wondering if I'm missing something in regards to map().
- sprites have flags marked 0-7
- the map command has the optional argument 'layer' that will display only sprites of a certain flag
- the default argument for layer is 0, which mean to show everything
- if I mark a sprite with flag 0, then using 0 as the argument will just show everything (which isn't what I want)
I think in the past I just didn't make use of flag 0 and it looks like that's what Zep did with Jelpi, but it seems odd that I can't (I think) use flag 0 as a layer argument.
Thanks


Hey everyone, here's my first Celeste Classic 1 mod: Celeste Flip!
It's based on my Celeste Classic 2 mod Celeste 2 Flip Hard Mode: https://www.lexaloffle.com/bbs/?tid=43821
Use X or V to flip gravity! (Z or C to jump and arrow keys to move.)
All credit for the original game goes to Noel, Maddy, and Lena https://mattmakesgames.itch.io/celeste-classic-2



