When you see the default kana font, you might think that you could create something a little better.
But then you realize that it was a kind of provocation for creators (or designers).
Why the tilt?
Hiragana can be quite difficult to express in 5x5px.
One answer to this problem is a slanted design.
This allowed us to secure a space, albeit a small one, per character.
x4 size

Original size

Preview gif

Text conversion scripts for SpreadSheet custom scripts
This script converts "Kana/Kana" text to "Katamuki kana" specification in a spreadsheet.
Register it in a custom script and execute p8Katamukikana([Cell-ID])
on the cell you want to convert.
function p8Katamukikana(text) { const kanamap = { 'が': 'か゛', 'ぎ': 'き゛','ぐ': 'く゛','げ': 'け゛','ご': 'こ゛', [ [size=16][color=#ffaabb] [ Continue Reading.. ] [/color][/size] ](/bbs/?pid=130144#p) |
I often use shell scripts to export and then upload my games to itch.io, and there's a small inconvenience that trips me up sometimes: If my game is too large, the export fails, but I have no way of detecting that from my shell script.
> pico8 game.p8 -export "-f froggypaint.html" EXPORT: -f froggypaint.html failed: code block too large > echo $? 0 |
I would expect the status code (echo $?
) to be 1 or some other failure code
(Hm, now that I've written this up I suppose I could work around this by reading stderr stdout and checking for the string "failed"...)


KAIZOLESTE: A NEW MOUNTAIN
A new mountain has been discovered where the impossible becomes possible and chaos becomes order and order becomes chaos. Random peaks, Deep caves, and penguins galore, Madeline faces her hardest challenge yet in Kaizoleste.
IMPORTANT:
This mod has SAAAAAVE DAAATAAA!!!! all of your progress is saved no matter where you play, even online! all your data is saved including: your current level; your total time played; your death count and; your berry count! if you click "delete save" in the pause menu, all of your savedata is gone. if you accidently click it, no worries! just beat your current level and you wont lose any progress.
Also credits to evercore team for evercore, because i used it as a base for this mod.
.png)









Hello! I was wondering if anybody can help me figure out why my code wont delete an object. This is my first time using del so I'm sorry if it is really obvious.
trigger:
function update_slash_p1()
for s in all(slash_p1) do
s.dx+=1
if s.dx>8
then
kill_slash_p1()
end
end
code:
function kill_slash_p1()
del(slash_p1,
dx,
frame,
flip,
damage
)
end
I also tried:
del(slash_p1,{
dx,
frame,
flip,
damage
})
end
Thank you!


This is a ZX Spectrum inspired platform game where you are tasked with collecting all the coins in a level before proceeding to the next one.
The hardest part of developing this was emulating the ZX Spectrums 'colour clash' (which limits only 2 colours to an 8x8 cell) without tanking Pico 8's framerate.
It also comes with a retro-inspired manual (which can be found here: https://geeitsomelaldy.itch.io/dicey-dans-danger-dungeon )
Text Transcript:
HOW TO PLAY






A simple 1-bit procedural map generator with coastlines, rivers, mountains and forests.
Controls
⬆️⬇️⬅️➡️ - Move camera
❎🅾️ - Zoom in an out
TAB - Enter forge, create a new world
This started life as a tweet cart and creeped in scope a bit until it became what you see now.
There's a UI to play with the numbers, if you'd like to modify these values outside the boundaries I've set, check out the vals
object array near the start of the file.
The world is created from a vornoi diagram, mountains are placed along cell boundaries and forest in cell centre points.





Feature Overview
MSPLIT()
Converts a string into a table by splitting it with multiple delimiters.
- The default delimiter is " " for ease of data entry and readability(according to one's own preference).
- the default delimiters and numeric conversion flags should be modified according to your project.
- This function consumes 36 Token.
-- Split a pair of data and further split it into colors and names. local value=msplit( '10-yellow 11-green 8-red 12-blue' ,' ','-' ) for i,v in pairs(value) do local col,name=unpack(v) ?name,i*32-24,48,col end |
If you want to check the type at once, consider using a DMP().
Copy/paste is super cumbersome when using web exports on Mac. It appears that to reliably copy, I have to press ctrl-C and then cmd-C after text is written to the clipboard, and to get pastes to work I have to press cmd-V and then ctrl-V for PICO-8 to pick up the paste.
Is there a better way to do this? If not, can Mac exports be updated to only need cmd-C and cmd-V? I'd love to cut down the instructions on Tiny Drops...
It looks like this also may be affecting folks using the EDU edition: https://www.lexaloffle.com/bbs/?tid=51921


Hello! This is a small game I made for a school physics project.
It is heavily inspired by WHAT THE GOLF? and WHAT THE BAT? by Triband.
It features a tutorial, 4 levels, 12 total gags/sublevels, and a boss fight.
I built it on top of zep's collision demo but modified it to account for mass and elasticity (still not very accurate though).


Feature Overview
TOHEX()
Converts to a hexadecimal string filled with zeros.
- If the number of digits is not specified, specify 0.
- The maximum number of digits specified is 4.
- This function consumes 40 Token.
?tohex(32) -- 20 ?tohex(32,3) -- 020 ?tohex('0x32',1) -- 32 |
This function is included in the KNUTIL library.