Im not sure what is wrong, but whenever I press Z it never shoots
TAB 0
function _init()
init_objects()
-- set up craft
px=63
py=100
pspr=1
vx=0
thrust=0.1
f=0.97
t_spr=17
-- set up stars
map1y=0
map2y=0
map3y=0
map1_spd=1
map2_spd=0.5
map3_spd=0.25
map_height=128
end
function _update()
--scroll map
map1y+=map1_spd
map2y+=map2_spd
map3y+=map3_spd
if map1y>127 then map1y=0 end
if map2y>127 then map2y=0 end
if map3y>127 then map3y=0 end
-- get input and change sprite
-- and thrust
pspr=1
if btn(0) then
vx-=thrust
pspr=3
end
if btn(1) then
vx+=thrust
pspr=2
end
-- apply thrust and friction
vx*=f
px+=vx
--check edges
if px<0 then
px=0
vx=0
end
if px>120 then
px=120
vx=0
end
-- change thrust sprite
t_spr+=1
if t_spr>19 then t_spr=17 end
--fire bullet
if btn(2) then
add_new_bullet(px,py,0,-3)
end
--draw bullet
for b in all(bullets) do
b:update()
end
end
function _draw()
cls()
-- draw stars
map(0,0,0,map1y,16,16)
map(16,0,0,map2y,16,16)
map(32,0,0,map3y,16,16)
map(0,0,0,map1y-map_height,16,16)
map(16,0,0,map2y-map_height,16,16)
map(32,0,0,map3y-map_height,16,16)
spr(pspr,px,py)
spr(t_spr,px,py+8)
--draw bullet
print(#bullets,1,2)
for b in all(bullets) do
b:draw()
end
end
TAB 1
--objects
function init_objects()
--declare objects
bullets={}
end
function add_new_bullet(_x,_y,_dx,_dy)
add(bullets,{
x=_x,
y=_y,
dx=_dx,
dy=_dy,
life=20,
draw=function(self)
circfill(self.x,self.y,2,11)
end,
update=function(self)
self.x=self.dx
self.y=self.dy
self.life-=1
if self.live<0 then
del(bullets,self)
end
end
})
end



As I'm working rather deeply in coding for the next Sorcery project, I am running into a nasty little thing that when the screen scrolls it jumps back when the cursor is able.
@zep: Suggest using CTRL [ and CTRL ] to shift the viewpoint of the source-code to center it if need be and reset to zero when ENTER is hit.
And before you think my tabs big they are not. I use 2-spaces per indentation so this can visually be a problem with complex and deep level nesting.






So, here's the main thing I've been working on since I posted VVVVVV Moonfall. I've been a lot more relaxed with it, and I've been taking measures to not write total spaghetti code, and some of it's even commented. In all, I'm really proud of how this has been coming together. The camera needs work, as does some little aspects of the movement, and some things need tweaking, but I'll get to all of that eventually.
For now, I've decided to post this mainly because I'm kind of exhausted creatively, and don't really know where to go next. So I'm gonna be taking a break from it, and probably from Pico-8 too. (making carts, at least.) I've been spending almost all of my free time lately on it, and I feel like that's kind of been sucking the life out of me, among other things. Anyway, enough about me.






!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
This is an older work-in-progress version! Play the completed released version here.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
This is a little scaled-sprite 3D graphics engine inspired by the old classic game Power Drift.
Still work in progress. Needs some basic game-play rules (laps, win/lose etc) and some difficulty balancing. But it's playable.










Hello there!
I'm making a Tetris clone that uses the map to save tile data. The program draws the tetraminoes using 2 'for' loops and a table that has start and center information, but also how many columns and rows to draw in this config:
table_x={startx,starty, row1x,row1y,n row1, row2x,row2y,n row2}
The program is supposed to check if it has a second row:
if(table[6]!=nil) then
pos_x,pos_y=0,0
for n=1,table[8],1 do
rot_x,rot_y=rot(table[6]+pos_x,table[7]+pos_y)
for v=0,7,7 do
for b=0,7,7 do
if(op=="gravity") then
flag=fget(mget((p1.x+rot_x+b)/8,(p1.y+rot_y+v)/8),0)
if(flag) then
....



==Balls to the Wall==
This is a game I made over the Christmas break and am just now finally publishing on bbs. I'm not really satisfied with how it turned out, but I figured it'd be good to post it to get some criticism. Unfortunately, there is no audio on this cart :( The code is pretty embarassing, but it was definitely a good learning experience for my next projects. Let me know what you think!
The controls are:
Z - change orientation
X - create wall
arrow keys - move cursor around screen
Buttons:
Put your cursor over the 'start' button to release the balls from their cage
Put your cursor over the 'eraser' to change your wall creator into an eraser. Touch the button again to revert it back to wall creator mode




fixed choice issue (only left button would progress, everything else made the screen blank)
{2/6/2020}
fixed upload, forgot about that (misnamed the embed/cart code)
{2/7/2020}
Check code for how it was done! Heavily Commented on!
Hope you all enjoy, feel free to modify it to your hearts content! Add stuff, or make your own text adventure!
Press P, then Reset Cart to reload to the first page!
This game is a clone with some changes of a game I saw originally made in Puzzlescript by @MattRix. The site where I saw it is not working at the moment. Updated to include logo.
11/2023 - Updated to include particle effects and transitions, as well a save system that stores last level played and the ability to undo movements until the beginning of a level.

.png)







Centipede
Here is my Version of Atari's arcade classic shooter Centipede.
In 1980 Dona Bailey developed the arcade game Centipede for Atari.
It was the first arcade game designed by a woman and became one of the most successful
arcade video games (see: Killer List of Video Games).
My kids and I already had a lot of fun with this Pico8-Centipede-Version and we are working
on an update! Wait and see!!...
![]() |
[0x0] |






Playable work in progress demake I've been working on, first for a week last January, now for a week again in the hopes of getting it playable for https://itch.io/jam/zachlike-jam
The original game is http://www.zachtronics.com/spacechem/ and I highly recommend every game they have produced.
Controls: arrows move the cursor. X to open a dialog to create/replace/delete instructions and arrows, arrows to move THAT cursor, X to confirm or O to cancel, optionally then arrows to set the direction/settings of the new instruction. O to open a dialog to run/pause/reset the simulation, or to grab and drop the sense and bond targets, or to change levels.
What works here:
arrows
start (1)


Hi guys,
Im giving it a go making a game on pico 8, after working on Godot and C3. Im wanting to build a platform engine because I tend to use that style of movement in a ton of my games. Ive tried a few different tutorials and they all have issues. I tried the one from Nerdy Teachers and if I change the movement speed to be quick the whole system fails, and the sprites get stuck etc. Plus Ive always been taught that changing a sprites hitbox size is a no no in game dev. So I guess what Im getting at is, is there a good/easyish way to code platform collisions. Or what is the best way to handle this? I have the movement down and all that, no problem. But the collisions always have glitches. Any thoughts/help would be greatly appreciated.
Thanks so much
mintpixel

