To become a knight, Nils must first defeat the fierce dragon demon.
But on his quest he was caught off guard and captured by goblins.
Stripped from all his equipment, Nils must now escape from the situation and regather the
strength and supplies he needs to complete his quest.
Controls:
Z: Left Hand
X: Right Hand
Arrows: Movement
Arrows in combination with Hand button: Use
Arrows in equipment mode: Switch equipment
Hold down a Hand button and press a direction to use the item in that hand.
Hold down a Hand button for a longer period to switch to equip mode. (A white box appears around hand icon).
It is popular with some programs to POKE directly into the graphic tile space either temporarily for storage or to save off some new generated tiles.
cls() poke(0,255) spr(0,64,64) recover(0,1) |
My question is - is there a way or command to 'recover' the tiles (or any other memory location you've messed with) WITHOUT creating or using a separate array of prior storage ?
These memory locations are after all ROM in every sense of the word in that when the program ends and you are back to the editor, all your tiles or mapping, etc. are untouched despite you using their space during run-time.

I am new to Pico-8 so apologies if I'm missing something...
I'm writing a game using the _UPDATE() and _DRAW() functions which scrolls vertically a pixel at a time. It scrolls smoothly most of the time but every now and then it seems to 'stutter' briefly. Note that the sound/music isn't affected.
I have tried it on 3 systems and the problem is apparent on all of them, to some degree. From best to worst:
Mac i5
Raspberry Pi (1) B
PocketChip
I have used STAT(1) to find out CPU usage, and it never goes above 0.38 (on the Mac and Pi at least, I think slightly higher on PocketChip), so I would not expect frames to be dropped. I've put the STAT(1) at the very end of the _DRAW() function - is that the right thing to do?
I've noticed slowdown (particularly on PocketChip) on other carts too, but couldn't say what the CPU usage is.
Similar thread: https://www.lexaloffle.com/bbs/?tid=4089
Any advice appreciated!

It is true, so much can be done even in it's unfinished state. I was able to get so much out of it. I know that I say it a lot, but I mean it 100%, 110% if you may. It was great but now I have moved to other things.
It is me. I have decided that since I haven't been on voxatron for a while I might as well post the unfinished projects I have. To show others what I have accomplished.
I See
Advanced Bowman
Voxlings
Sorry to say but these games will not be finished.
I have apparently moved on. It was fantastic, the 5 years I stuck with Voxatron. Believe me when I say it's not because of the slow developing that made me quit. I was able to create new ideas all the time using the same basic functions.
This is not a final farewell though, I may eventually get back into it, but that is not for certain, and I still check the blog everyday, playing the amazing pico-8 catridges. Thanks to everyone who bothered to read this short message about me.
Thanks,
Jauq

ZIPPY FARM
by EggyBacon
I decided to move out of the city and become a farmer.
How hard can it be, right?
Good thing I'm a fast learner, because each season only lasts 12 seconds.
I'll be rolling in fabulous crops in no time.
What the...WHERE DID ALL THESE CROWS COME FROM?
WHY ARE MICE CHEWING UP MY FIELD?!

I did a small patch to SDL2 that should fix using the custom glyphs in 0.1.9, so until 0.1.9b is released this should suffice
This also fixes getting a ding/beep sound when trying to use the custom glyphs, the version of SDL2 that ships with PICO-8 is too old
Changed:
https://gamax92.keybase.pub/CustomSDL2.zip
No idea if this change adds in any issues but I've not been able to see any.

Here are two approaches to a micro rhythm machine: Programmable Sequencer (specify the rhythm, then play it) and a Real-time Sequencer (push the keys at the right time to record a rhythm).
PROGRAMMABLE SEQUENCER
Left/Right: Move cursor
Up/Down: Specify which instrument will play
X: Play/Stop
Update 2017-04-25: Better feedback during editing.
REAL-TIME SEQUENCER
A really simple beat machine with real-time performance recording and playback on a two-bar loop. The metronome can't be switched off and the tempo can't be set. And the playback can't be paused/restarted. Also, only one drum can sound at a time. Still fun!!
The latency between image and audio is kinda hindering its feasibility, especially when run in a browser. Sequencers as music makers in PICO-8 are perhaps better approach, e.g. 4-beat by 4mat. Anyway, step editing would be cool though and I'll add it later (and some fancier graphics along with that).
This function abuses Unicode and ANSI color codes to output a screenshot of the current screen to a text terminal such as xterm. You can record the PICO-8 rendering and replay it using “cat”! You can run PICO-8 over ssh! You can be anything you want.
I also set up a telnet service demonstrating the feature:
telnet lol.pm 12345
Here is how it looks like; this is PICO-8 (small window) launched from GNOME Terminal (large window) just after screenshot() was called:
And here is the code:
pico-8 cartridge // http://www.pico-8.com
version 8
__lua__
-- screenshot to console
-- by sam hocevar
function screenshot()
local l={ 16, 17, 89, 29, 131, 240, 251, 230, 197, 214, 220, 47, 39, 103, 211, 223 }
local e="\027["
printh(e.."?25l") -- hide cursor
for y=0,63 do
local ofg,obg=-1,-1
local s=e..(y+1)..";1\072" -- uppercase h
for x=0,127 do
fg,bg,ch=pget(x,y*2),pget(x,y*2+1),"\226\150\128"
if bg>fg then
fg,bg,ch=bg,fg,"\226\150\132"
end
if fg!=ofg or bg!=obg then
s=s..e
local t=""
if (bg!=obg) s,t=s.."48;5;"..l[bg+1],";"
if (fg!=ofg) s=s..t.."38;5;"..l[fg+1]
s=s.."m"
end
s=s..ch
ofg,obg=fg,bg
end
printh(s..e.."0m"..e.."\075") -- uppercase k
end
printh(e.."?25h") -- show cursor
end
|
The terminal must be UTF-8 and 256-color aware, so this will probably work in most Linux and OS X terminals. On Windows I could test it successfully with the MSYS2 terminal.






4 comments




