A minimal demo showing how I set up the mode 7 effect for Sally's Star Racers ( https://www.lexaloffle.com/bbs/?pid=181063#p ). This is a cleaner starting point if you want to make your own mode7 game. 1355 tokens, and it includes a lot of boilerplate for crawling map data and instantiating actors in the world.
I am using ToyBoxJam assets for this demo, so thanks to @thattomhall and the contributors to this asset pack!


About the game:
Hormogrid™ is a tiny fast-paced puzzle game played on a 4×4 grid of cells called hormones.
Each cell can be red or dark:
– Red cells represents Dopamine (“Do”), the happiness hormone
– Dark cells represents Cortisol (“Co”), the stress hormone
Your goal is to turn every cell red (Dopamine) before time runs out.
Pressing (X) on a cell flips it, but it also flips all its adjacent cells (up, down, left, and right)
Known issues:
The game difficulty may be a bit inconsistent due to the procedural generation. You may occasionally encounter grid layouts that can be solved in less than 3 moves on the highest difficulty, or vice versa.

UPDATE: New TOSSED Mode for chasing high scores, new visuals, and a menu
bug: sometimes words do not appear in word list
scored wild tiles have unintended behaviour
HOW TO PLAY CLASSIC MODE:
In CLASSIC MODE, you can place a maximum of 25 tiles, in order to score as many points as possible.
You can make between 3 and 5 letter words, but your points receive a bonus; the longer the word the better!
Letters have different scores, depending on how frequently they are used.
HOW TO PLAY TOSSED MODE:
In TOSSED MODE, playing 5 letter words will clear the letters, making more space to
score more points! However, there are some brand new tile types as well:
STONES
Stones are pesky, and get in the way of your words. To remove them, you'll need bombs
BOMBS
There are 4 types of bombs: Radish, Cucumber, Tomato and Lettuce. When placed,

Round hp bar
Free to use in any game
Can be used for mana also just change the color
function draw_hp(x, y, hp, max_hp, color)
local r = 12
local f = hp / max_hp
local fh = flr(r * 2 * f)
local top_y = y + (r - fh)
for dy = r - 1, -r, -1 do
local ly = y + dy
local dx = sqrt(r^2 - dy^2)
local x1 = flr(x - dx + 0.5)
local x2 = flr(x + dx - 0.5)
if dy >= r - fh then
line(x1, ly, x2, ly, color)
end
end
if hp < max_hp then
local ry = r - fh
local base_y = y + ry
local dx = sqrt(r^2 - ry^2)
local x1 = flr(x - dx + 0.5)
local x2 = flr(x + dx - 0.5)
local wt = cos(time() * 0.25) * 6
for lx = x1, x2 do
local woff = sin((lx + wt) * 0.15)
local ly = flr(base_y + woff)
local rx = lx - x
local ry = ly - y
if rx * rx + ry * ry <= r * r then
pset(lx, ly, color)
end
end
[ [size=16][color=#ffaabb] [ Continue Reading.. ] [/color][/size] ](/bbs/?pid=181428#p) |

Acording to the manual:
https://www.lua.org/manual/5.3/manual.html
The escape sequence '\z' skips the following span of white-space characters, including line breaks; it is particularly useful to break and indent a long literal string into multiple lines without adding the newlines and spaces into the string contents. A short literal string cannot contain unescaped line breaks nor escapes not forming a valid escape sequence.
so a
?"hallo\z 2ndline" |
should count as 2 tokens.
The code itself works, but it is misscolored in the editor and the tokencount is with 5 too high.
Submission for Toy Box Jam 2025, all assets provided by the game jam.
I've been searching for so long and now I'm here. This place, the tower on the horizon, calls to me. Is my journey over? Is he here? Father...
Controls
x - use item
z - change item/open chest
x+z - check inventory
Items
Sword
|
|
[8x8] |

Welcome to HUMAN PARTY!
The animals have a zoo with one of the last humans on the planet. Time to take care of him. And when he's doing well, it's time to party!
HOW TO PLAY
This is a combination of an Idle Game and a Tamagotchi. You let the game run in the background and return every now and then to improve the quality of the food, for example. Over time, the human feels better and better, which increases the zoo's income and allows you to buy further improvements.
WHY AND HOW IT WAS MADE
HUMAN PARTY is my fourth PICO-8 game. As always, I thought about the mechanics I wanted to implement in order to learn more about the engine. This time, I wanted to create a small shop system and also practice working with lots of variables that perform all kinds of calculations in the background. I also learned how to make creatures follow a specific path.
This is my prototype for the PICO-8 class. There will probably be changes before we do the class, but the key components are:
- creating sprites
- making the character move
- creating a layout for the level
- programming item interaction and hitting walls
- sound effects
Below the game itself you can click "code" to see the code. I hope to be able to explain and help students to type all of the code included in this game as part of the class.
I may add code that the kids can copy/paste at the end to add enemy movement or a proper victory screen. I don't think we will have time to cover those things in the class.
The students will also be creating their own sprite artwork, so the player character, enemies, walls, layout, sound effects, etc should look different for everyone.
so i just drew some sprite in asesprite and well within the 128x128 sprite sheet pico allows, but when i go to make the level ibn the map editor then as soon as i pan with space bar the last to sprite sheet pages go black. is this a known problem. i am within the palette and sprite limit so idk what is going on

The character 26 translates to the ¥ character in P8SCII. However, on ASCII, the character is an end-of-file marker. If one uses the P8SCII ¥ character in an include file, it terminates the parsing of the file and most likely cases a syntax error.
I stumbled across this trying to export binary strings from Picotron into TXT files that I could then include in Pico-8. I properly escaped the string as described in this thread (https://www.lexaloffle.com/bbs/?tid=38692). But if the binary string accidentally includes the character 26, the include fails. However, exporting the escaped binary string to the clipboard and copy & pasting it into Pico-8 works fine.
Code to reproduce behavior
In Picotron:
store("/desktop/test.txt", "test=\"¥\"") |
In Pico-8:
#include test.txt |
Output:
Suggested solutions:
- Add P8SCII escape code to escape ¥

Pico-8 has a nice poke to adjust the map width, but you unfortunately can't use the built in map editor to conveniently take advantage of it.
I wonder if someone already rebuilt the sprite and map editor of pico-8 in pico-8, so I could tweak it to add map width support without starting from scratch.
Another feature I'd like to add is usage of the range 128-255 tiles+flags for the 4sceen x 8 screen maps, so you can use the extra range as flipped versions of the 0-127 range.





0 comments










