This is my first full project in pico-8!
This is a little beat 'em up that showcases a weapon-pickup mechanic. You have a punch for an unarmed attack, but when you equip a weapon the stats of your attack change. Find your weapon of choice and use it to beat all 3 levels AND all 3 boss battles! The last level will loop back to the first level so the game can continue infinitely; this allows players to bring their favorite weapon to any and every level for a variety of experiences.
Weapon List
Unarmed
[8x8] | |
Controls
Titles
- X - Start 1 Player
- O (Z on keyboard) - Start 2 Player Co-Op
Game
- X - Jump
- The longer you hold when moving up, the higher the jump
- Hold when falling to glide
- Press Up when jumping to perform a "power" jump
- Press Down when jumping to end jump and hold Down to fall faster
The Game
Collecting the bombs in order (a fuse is lit after you collect the first bomb) can provide huge end-of-level bonuses.
When the bonus meter is full, a power-ball will be released, turning all enemies temporarily into coins.
In 2 Player mode, if one player dies, the remaining player will have a chance of collecting a "heart" coin on the next level to bring them back to life.
The distribution URL is here!
https://bitchunk.itch.io/pelogen2
What tools?
PELOGEN2 is a 3D modeling tool created on PICO-8.
Because it was created for such small specifications, it is not suitable for overly complex and large modeling.
In today's era of large-scale, detailed works, what would you create with this small-scale 3D modeling tool?
I think there is still value in being able to express creativity within limitations.
Even if it imitates something that exists in reality, it is precisely because it is low-poly that an unrealistic and creative world can be created.
Tutorials will be added to the devlog from time to time.
You may have questions about things you don't know about how to make or features. I would appreciate it if you could create a thread in that case. It's easy to deal with, and others can use it as a reference.
Features etc.
Data management
I made point collision instead box and works even better. You can see the points I used in the green box. Two yellow pixels for foot, four red pixels for the sides (2 left and 2 right) and two lime pixels for read. The green box is just a placeholder sprite sprite not a collision box
the advantage of this method is because is:
- easier to detect collision direction
- easier to implement coyote jump
- easier to implement trick to avoid hit the head against corners when try to jump
- easier to say when is touching ground or wall or ceiling
kladblok
Kladblok is a collection of small experiments that more often then not, don't look at all how I initially intended.
Maybe I will revisit it someday to add more, maybe I don't.
It's just a cart I add stuff to when I don't have the energy to work on something bigger. Or am just messing around.
And it might work as a bit of a draft library for background and particle effects.
Also some animations might be a bit flickery for some people.
Edit: Forgot to mention that aside from Flipping through the animations, you can also change the color palet using the up and down keys.
For the animations with a water-reflection, I may have stolen @drakeblue's code.
function box(_x,_y,_w,_h) return{ x=_x, y=_y, w=_w, h=_h } end function get_cols(a) local gx,gy=flr(a.x/8),flr(a.y/8) local ex,ey=flr((a.x+a.w-1)/8),flr((a.y+a.h-1)/8) local list={} for i=gx-1,ex+1 do for ii=gy-1,ey+1 do if fget(mget(i,ii),0) then add(list,box(i*8,ii*8,8,8)) end end end return list end function collide(a,_dx,_dy,list,side) local ca={ x=flr(a.x), y=flr(a.y), w=a.w, h=a.h } for i=1,#list do local v=list[i] if col(v,ca) then if _dx>0 then a.x=v.x-a.w side["right"]=true elseif _dx<0 then a.x=v.x+v.w side["left"]=true end if _dy>0 then a.y=v.y-a.h side["down"]=true elseif _dy<0 then a.y=v.y+v.h side["up"]=true end end end end --diss code expects that "a" have a --dx and dy function move(a) [ [size=16][color=#ffaabb] [ Continue Reading.. ] [/color][/size] ](/bbs/?pid=141827#p) |
Hi! This is Space Basher, a game about clearing space debris using a tool that has way too much recoil.
How to play
Move around using the D-pad and grab a debris by holding X. While grabbing, you can adjust the angle of your slice with Left and Right. Releasing X slices the debris in two, and sends you flying in the opposite direction.
Slicing depletes your ship's battery, leaving it unresponsive and without a shield. Hitting a debris without your shield up damages your ship. Three hits without a shield will destroy your ship.
Moving or grabbing a debris for too long will also deplete your ship's energy
Hey @zep since you're testing version 0.2.6 on BBS I assume you could be interested in these weird bugs/glitches that are breaking a grand total of 4 out of my 6 game carts.
I immediately downloaded version 0.2.6 of the desktop app to bugfix them but they run perfectly fine on app!?!?
Links to carts having issues (unplayable):
Dinky Kong (featured)
Jungle Ping (featured)
Head-8n
Legend of Kuna
I think you can tell the intended vs broken behaviour as well comparing how they run on App vs on BBS.
As you can see the main issue (especially for the first 3) is that starting the actual game (⭕️ button) the _update seems to behave correctly, you can hear game sounds, while _draw shows the main screen (although they basically rely on the same conditions). The first two also show blank during title screen and it appears during the game. Jungle ping after losing a few lives starts showing something of the actual gameplay.
Greetings dudes and dudettes,
this is a super small game I've written for a small tech talk for my colleagues. It's not polished and its' entire purpose is to have something to show while I talk 5 minutes about pico 8 and its core features.
Have a nice day!
controls
X to shoot,
arrow to steer and de/accelerate
After seeing LokiStriker's and Achie's shmups made in 1024 compressed bytes, I wanted to give it a go.
Here's the uncompressed source code.
--1k shmup --werxzy -- enemy data ty=split("⁶:425affffe7662400,0.01,0,7,0,0.3,0,-0.0001,2,5,5`⁶:425affffe7662400,0.01,0,7,0,1.1,0,-0.01,1,3,3`⁶:22227f7f2a361c08,0,0,9,0,0.3,0,0.02,4,1,3`⁶:425affffe7662400,0,0,13,0,0.1,0,0,3,30,20`⁶:3c42bdbdbda5423c,0,0,5,0,0.25,0,-0.0005,5,20,25","`") -- bullet data bty=split("●,1,0,0,0.8,1,60`✽,1,-15,15,0.4,3,200`✽,0,-120,10,0.4,7,100`\feミ,0,0,180,1,2,20`✽,1,0,36,1,10,30","`") cartdata"shm1k_werx" function _init() [ [size=16][color=#ffaabb] [ Continue Reading.. ] [/color][/size] ](/bbs/?pid=141804#p) |
Welcome to Little Chemist!
Based on the game "Little Alchemy 2"
---Still in beta mode---
Couple issues I have to fix: (Please let me know if any other issues to fix)
1.When first loading the game for the first time ever, do not press "resume" otherwise you
get an error. Resume is only if you have save the game.
2.Also for now when saving, delete the elements from the 'mix elements' before saving.
--Here is the "Hint Enabled" version--
This version his the hint enabled. This means that all the elements/items are shown and your goal is to find what elements are needed to create the grayed out elements/items.
Alien Fighter
Description
You have a spaceship. Use it to valiantly fight waves of enemies of increasing number. Collect health powerups to keep going. Dodge enemy shots. Fight bosses!
Controls
❎: Shoot.
➡️: Turn right.
⬅️: Turn left.
⬆️: Go forwards.
⬇️: Stop
Menu
music on/off: turns music on/off
sfx on/off: turns sound effects on/off
Goals
Enemy spawns.Waves.Pickups.Different screens (i.e., start and game over)Bosses.- More enemy variation.
Thanks to https://www.lexaloffle.com/bbs/?pid=22756#p for the ship rotation!
Updates
PICO-8 will gladly accept export("sfx_%x_%d.wav")
because the string argument contains %d
, but the format string is not sanitised and the SFX index will be caught by %x
, and %d
will then pick who knows what memory location.
Funny things can also happen with %s
, %*s
etc.; export("%s%s%s%s%s%s%s%s%s%s%s%s%d")
is almost a guaranteed crash.