
Ragged Souls is NOT a real game - at least won't be anytime soon. I've only begun learning how to make software but I wanted to try making a cool looking title screen in the 128x128 resolution so that I have a vague idea of the kind of end product I'm working toward. Title screens also seem like a fun way of practicing pixel art, so I might make more on the side.
My game Kingdom 8, developed entirely with Pico-8, just took 2nd place in the Abyssals Game Jam! 🎉
What makes this result even more exciting is that the theme of the jam was RPG, a very broad and challenging genre to tackle. Competing against games made in different engines and styles, I’m really proud that a project built on our beloved Pico-8 could stand out and achieve such recognition.
Thank you so much to everyone who played, rated, and supported the game! 🙏
-
TripPICOchu
A hands‑on learning tool from VHS Cologne’s TalentCAMPus, designed for young locals, refugees and asylum seekers.

A trippy Pico8 game from my TalentCAMPus Workshop for VHS Cologne, where youngs from a variety of cohorts —locals, refugees and asylum seekers — were introduced to Lua, pixel art, sound design, and basic game design and interaction through creative exploration.
I guided them in using basic functions in Pico8, creating and tweaking experiments, and later bringing some part of this game alive. Later I added personal improvements.
Not only the overall experience was quite fulfilling, I — as a Brazilian — am quite happy to promote Lua, a programming language developed at PUC-Rio.
Pikachu's Pixel Art is a copy of Johan Vinet's amazing work
https://johanvinet.tumblr.com/post/127476776680/here-are-100-characters-8x8-pixels-using-the
-
How to Play
Objective
COLLECT 42 Picochus before the time runs out.
...collect?
- The Picoball has to TOUCH Picochu 🏳️🌈
- Picoball's CIRCLE needs to be the SAME SIZE Picochu's ball WHEN TOUCHING <3
-
Controls
Move Picoball
← ↑ → ↓
Shrink Circle
X
Elarge Circle
C
-
Now with a small tutorial, better interface, and a final overall polish.
-
Warning
This game uses strong, fast‑blinking colors as psychedelic effect.
It may trigger discomfort or seizures in photosensitive players.
Phones on silent mode won't play any sound or music.


Using the latest Pico-8 version, if I highlight with Shift/Click a note or series of notes in the SFX editor then copy with Control/C, I can paste the result into another column in the sfx editor with Control/V but if I close the cart and open another cart to paste to, I get the message "Nothing to paste" when trying to paste with Control/V.
I have tried Linux Mint and Windows10 with the same result.
The documentation says this should work, any idea what I am doing wrong?
Thanks,
Peter
-- parametrlər
player = {
x = 64,
y = 64,
s = 2,
sprite = 1 -- bu sprite ID-dir
}
item_sprite = 2 -- item üçün sprite ID
score = 0
max_score = 15
items = {}
-- itemləri yarat
function spawn_items()
for i=1, max_score do
add(items, {
x=flr(rnd(120))+4,
y=flr(rnd(120))+4,
collected=false
})
end
end
function _init()
spawn_items()
end
function _update()
if score >= max_score then
return
end
-- hərəkət
if btn(0) then player.x -= player.s end
if btn(1) then player.x += player.s end
if btn(2) then player.y -= player.s end
if btn(3) then player.y += player.s end
-- sərhədlər
player.x = mid(0, player.x, 120)
player.y = mid(0, player.y, 120)
-- item toplanması
for item in all(items) do
if not item.collected and abs(player.x - item.x) < 5 and abs(player.y - item.y) < 5 then
item.collected = true
score += 1
end
end
end
function _draw()
cls()
-- itemləri çək
for item in all(items) do
if not item.collected then
spr(item_sprite, item.x, item.y)
end
end
-- karakteri çək
spr(player.sprite, player.x, player.y)
-- xal
print("xal: "..score, 1, 1, 7)
-- təbrik mesajı
if score >= max_score then
rectfill(20, 50, 108, 78, 0)
print("UYY ALLAH, QAZANDIN!", 30, 60, 11)
end
end
-- parametrlər
player = {
x = 64,
y = 64,
s = 2,
sprite = 1 -- bu sprite ID-dir
}
item_sprite = 2 -- item üçün sprite ID
score = 0
max_score = 15
items = {}
-- itemləri yarat
function spawn_items()
for i=1, max_score do
add(items, {
x=flr(rnd(120))+4,
y=flr(rnd(120))+4,
collected=false
})
end
end
function _init()
spawn_items()
end
function _update()
if score >= max_score then
return
end
-- hərəkət
if btn(0) then player.x -= player.s end
if btn(1) then player.x += player.s end
if btn(2) then player.y -= player.s end
if btn(3) then player.y += player.s end
-- sərhədlər
player.x = mid(0, player.x, 120)
player.y = mid(0, player.y, 120)
-- item toplanması
for item in all(items) do
if not item.collected and abs(player.x - item.x) < 5 and abs(player.y - item.y) < 5 then
item.collected = true
score += 1
end
end
end
function _draw()
cls()
-- itemləri çək
for item in all(items) do
if not item.collected then
spr(item_sprite, item.x, item.y)
end
end
-- karakteri çək
spr(player.sprite, player.x, player.y)
-- xal
print("xal: "..score, 1, 1, 7)
-- təbrik mesajı
if score >= max_score then
rectfill(20, 50, 108, 78, 0)
print("TEBRIKLER BALIM", 30, 60, 11)
end
end
hey guys.
i got the pico-8 console three days ago, and this is what I've made in that time!
posting this because I'm trying to make a metroidvania, and I also would like some feedback on the tokens i'm using. i'll take any help I can get because I have zero clue what I'm doing.
listing some things I wanna learn how to do:
-
that room-to-room scroll thing in metroidvanias
-
how to spawn a player on a specific map tile
- walljumping
i've been studying the resources, but i haven't found anything for these issues. hope you enjoy what i've made regardless!