Controls
- Mobile: D-pad and
X
preferred (touch controls not optimized) - Desktop: arrow keys and
X
or mouse
version history
- 5: Public release
Instructions
Shoot the targets to get more ammo.
Game ends when ammo runs out.
Use arrows to aim, Z to shoot.
(press the ▶ button to start)
Source code
555 characters
srand(555)a,b,c,d,x,m,n=btnp,127,0,8,64,3,-12::r::c+=1p,l,e=64,{},c/2%16+1for i=0,b do p=i>56and i<72and p or p+rnd(e)-e/2add(l,p)end y,o=l[x],rnd(48)\1+1if rnd()>0.5then o=b-o end q=l[o]::s::k=a()m,n=mid(m+(k>>1&1)-(k&1),-16,16),mid(n+(k>>3&1)-(k>>2&1),-16)if a(4)then d=max(d-1)f,g,h,j=x,y,m/4,n/4end cls(c%3+1)?'★',x-3,y-3,7 for v,p in ipairs(l)do line(v-1,p+1,v-1,b,0)end?'웃',o-3,q-2,c%3+8 circ(x+m,y+n,1,6)if j then j+=1/8f+=h g+=j pset(f,g,9)if f<1or f>b or g>l[f\1]then h,j=f,nil if abs(h-o)<2.5then d+=3goto r end end end?'🅾️'..d,4,119 flip()goto s |
Fruit Salad 64
Make a bowl of fruit salad by squashing matching fruits together. Can you finish all 3 levels? Fruit are worth more in the beginning, be fast to get a good hi-score!
C&C welcome
Controls
-
←
→
↑
↓
– Move the selection -
X
/Z
– Pick and place items Enter
– Pause/Settings
Update notes
-
2022-12-07
- Updated cart image
- 2023-01-01
- Game session is now remembered across restarts (reset saved game from pause menu)
- Items can be picked up, even if there are no matching items on the board
- Items can be swapped if they don't match
- Added more levels
- Score can now reach hundreds of millions before overflowing
You are the last survivor of a zombie apocalypse
Time is running out...
controls
- Hold arrows to move
- Press Z to fire
Turn down the volume for optimal experience! (unless you're running this within PICO-8, in which case it should sound all chill)
Big thanks to pancelor for squeezing this down from 323 to 251 characters, and for teaching me some wizard-level golfing tricks!
(press ▶ to view)
Use arrows to control ambience
Headphones recommended
Changelog
-
2021-08-18
- Add keys to toggle drone
- Add logo & animation
Newtonian gravity simulation
It's a bit unstable. Vector math and fixed point numbers don't mix too well, although I'm sure this could be modified to better utilize the available digit range..
Press Z to pause and adjust the velocities.
Press Ctrl+R to reset the simulation.
I'm working on this small animation library. It adds a straightforward way to animate an object's state.
Usage example:
Let's say there's a game object called "progress", representing a progress bar we want to animate:
progress={value=0} |
we could animate the value rising from 0 to 100 by adding this to something that triggers the progress to start:
tween(progress,{value=100}) |
and in _update() we want to call the animate() function to keep updating the value, until it's duration has elapsed:
if has_animations(progress) then animate(progress) end |
Demo
Configuration
There are some global variables you can override:
animate_default_duration=0.4 animate_default_easing=ease_quad_out animate_key="__a" --which key should contain the tweening animation state |
You can also add your own easing functions:
function my_easing(t) return t*t*t end add(animate_easings,my_easing) ease_my_easing=#animate_easings |
Arguments
tween(node,target,options) |
- node - table that contains the value that should be animated
- target - table of the values that should be tweened
- [options.duration] - how long the tween should play
- [options.easing] - easing function (included easings: linear, quad_in, quad_out and quad_in_out)
- [options.custom_time] - custom starting time
Tweens are removed automatically once the animation completes. Starting a new animation for a key with an active animation will overwrite the previous one, continuing animating from it's current value.
Download
The most recent version is available at https://github.com/thykka/pico-8-libs/blob/main/animate.lua
Changelog
- v3
- refactored & parametrized almost everything
- animate_key() replaced by tween()
- can now tween multiple values with one tween() call
BoozeSnek
Official port of PePuSnek for SCRIPT-8, improved.
WARNING: Contains flashing lights!
Changelog
- 14-11-2020
- Changed scoring rules; points are now accumulated, instead of calculated when the game ends
- Added persistent HiScores
- Music on/off setting is now persistent
Checking out a couple of different methods to fill the screen.
cls seem slightly faster than memset. I wonder if the difference is due to the multiplication op, or if there's something else going on...
Left/Right switches modes
Hello, World!
It's not a lot,
but it's honest glitch.