Helloooo everyone!
I made this cart because I am positive someone out there desperately needs it.
Ok, so I just made it for fun, but surely you would too.
I left some notes on how to use it, but you may have some work ahead if you want to decipher my code.
The making
I first envisioned a shape platformer game. That never happened. Anyhoo, I had envisioned a game
and I needed a simple and easy way to draw believable polygons. First, I looked around to see if
anyone else had done it before. I found one or two, but I did not like them enough.
My plan was simple:
I would draw the shapes one line at a time, top to bottom.
After some trial runs, I ended up scrapping it. Next, I dabbled with the idea of vertical lines.
Simple little game made in a couple of days as a mini project. Use the arrow keys to mimic the pattern - challenge yourself with four different difficulty settings, or see how far you can go in endless mode.
You can change the speed in the options menu if you find the default speed too fast or slow. You can also turn off the multicoloured text animations if you want.
Technically my first finished and submitted cart (I've got another one sitting that I'd consider my actual first cart, but I've still got some UI to finish in it). Also, apologies to those reading through the code - it's in one big lump, not super commented, and obviously far from perfect. This was just an impulsive little project I started a few days ago and I didn't fret over programming it in an optimised manner; there's definitely things that could be cleaned up if I were making something bigger where I'd be more inclined to put the effort in. But, hey, I finished it, and it works. So enjoy :)
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 [ [size=16][color=#ffaabb] [ Continue Reading.. ] [/color][/size] ](/bbs/?pid=125170#p) |
Feature Overview
STRDSUM() sums two numerable strings.
- The number of digits it can handle exceeds the 32-bit limit. (Probably as long as the system will allow.)
- Match the string length to the longer of the two arguments.
- Negative values and values after the decimal point cannot be handled.(Insert a period in the output result.)
- This function consumes 63 Token.
This code may cause errors in versions prior to 0.2.5c.
?strdsum('32768','32768') -- 65536 ?strdsum('500','000500') -- 001000 ?strdsum('900109','123456') -- 1023565 |
I'm new to PICO-8, and my first experiment was to create a simple program that moves a rectangle back and forth. When I run it, the movement will be fairly smooth at first, but then I start to notice a sort of hitching every couple of seconds. I tried this both on my desktop and laptop, and see the same behavior on both computers.
Is this something with my code, my eyes, or PICO-8 itself?
I'm running this on Windows by the way.
Here is the code I'm trying:
x = 109 xs = -1 function _update() x = x + xs if x < 0 or x > 110 then xs = xs * -1 end end function _draw() cls() rectfill(x,0,x+15,30,12) end |
hello!
sorry if this is "yet another" boring token-saving post (haven't been around long enough to know how common they are), but here's a list of (fairly) generalizable token saving tricks i've compiled while working on my upcoming game, in case it might be helpful to anyone. i think there are some on here that i haven't seen elsewhere on bbs, but also some of these may be pretty basic :)
this list does not include unpack(split())
tricks, or _ENV
tricks, which can both have enormous token windfalls.
also, by far the best way to save tokens is not using these tricks, but to stare at your code hard... really hard... until something clicks and you realize you can convey 3 variables' worth of information with one, that you can reuse functions, that you're doing the same computation throughout your code many times and can use a variable, etc. or you know, to delete stuff.
these are kind of last-resort, please god just 3 more tokens sorts of things (although they do add up). hope they are of some use. with that aside, let's begin!
No duh, right?
I've been making PICO8 games for 7 years now (doesn't feel that long) and the tokens and limits have just been part of the fun. Those restrictions can push our creativity into something better. That's the whole point and I love it.
My focus has always been on making the games for people playing on the P8 console in some fashion, whether on a PC or a handheld or whatever. And that audience is basically other P8 devs and gamers that know and appreciate the limitations.
Until now, Itch.io has mostly been an afterthought for my games. Basically just a nice way for people to play them all via the web...and you get some nice exposure bumps from the platform and so on.
Don't Dig Up the Dead it was the first time I put more conscious effort into the Itch.io versions of the game, whether that be the downloadable binaries or even just playing the web version for free. I've also put more effort into spreading the word about the game because I'm just proud of it and very happy with how it turned out. No shame. But with that push comes more feedback, which is always wonderful to receive...
Frogs Can't Swim
Controls
⬅️⬆️⬇️➡️ Face direction
🅾️ Hop forward
How to Play
As a tiny, little frog, find the exit to each level by hopping on and over lily pads to reveal directional clues to the exit, and eventually the exit itself. Avoid speeding cars, irritating bees, wiggly snakes, and falling into water (since you can't swim) to reach the exit before the timer runs out! How many levels can you complete? (*Except in 'Not Frogger' Mode, you need to land on all the flowered lily pads at the top of the screen to complete the level)
Hello! I've been playing around with the Pico 8 for a while, and I thought I'd sit down and try to create a full game myself! I coded this in about 4 days. It's an arcade-like experience, loosely inspired by Disc Room and Pigments, but it takes that general game structure in a new direction. There's twelve different levels to try to survive in, each with their own obstacles, powers, and goals.
Controls should be explained in-game. Have fun playing, and good luck earning the highest medals!
Thank you to Heracleum and the PICO-8 Discord with help optimizing the game's draw loop.
BZB is a busy bee and needs your guidance to reach her hive.
Each garden has 36 patches on a 6x6 grid and there are two flowers on each flower bed patch.
BZB will fly, orthogonally, from one patch to another, as long as the two patches have one flower in common.
Note that BZB cannot be convinced to fly to a patch she has been before, since such patch has no pollen left.
Help BZB bring the most pollen to the hive.
How to play
⬅️/➡️/⬆️/⬇️: move cursor to adjacent patch
❎: move bee to cursor patch (if possible)
🅾️: undo, move bee to previous patch
Goal
Guide the bee to the hive through the longest path to collect the most pollen and thus produce the most honey.
This code uses 11% CPU according to Pico-8, but if I delete the v[0]=1
lines in the if false
block it uses 7% CPU:
v={} ::_:: if false then v[0]=1 v[0]=1 v[0]=1 v[0]=1 v[0]=1 v[0]=1 v[0]=1 v[0]=1 v[0]=1 v[0]=1 v[0]=1 v[0]=1 v[0]=1 v[0]=1 v[0]=1 v[0]=1 v[0]=1 v[0]=1 v[0]=1 v[0]=1 v[0]=1 v[0]=1 end for i=0,1023 do v[0]=5 v[0]=5 v[0]=5 v[0]=5 end flip() goto _ |
Other observations:
- If I put the
v[0]=1
lines in a for loop with a huge iteration count this code uses 7% CPU. (No bug.) - If I put this code into
_update()
or_draw()
it uses 7% CPU. (No bug.) - Adding / removing
v[0]=5
lines bumps CPU by roughly 3% per line. - Replacing
v[0]
withv[1]
makes no difference. - Pico-8 does act on this CPU info, the contents of the
if false
block will affect whether Pico-8 visibly stutters if I add draw code and the non-executing lines push CPU over 100%.
I had only played with the AI-generation stuff without any real thought as to how I can actually benefit from it. But with the release of Don't Dig Up the Dead, I had a happy accident when using AI to generate some supporting art.
Don't Dig Up the Dead uses a mix of borrowed and original in-game assets. Music and sound came from some packs and some of the animation came from other games, but a large part of what you see is my own art and I'm proud that I was able to put something together that felt like it all belonged. There's enough of "me" in what people see that I'm not embarrassed to show it off.
I marched along making my game and got it to a very happy spot that I thought I was ready to release and be done. But then AI showed up. I took the bait like the rest of the world and started playing around with the art generation AI to see what it would do...just for fun without any real intent to use it for anything. But then I thought, "hey, I could use this to make art for my game." My game was done so this wasn't about generating pixels or sprites, just supporting material, like cover art and promotional stuff.
Every hole digs up a soul
You must find 3 magic relics to help rid the land of evil. Use the Find-O-Meter and your trusty shovel to search the forest. But if you dig up the dead you'll need to fight them off to stay alive, so pay attention to everything you unearth...it might just save your life.
- Find more than 30 items scattered throughout a spooky forest
- Challenging shmup action as you fight off the dead
- Simple and rewarding inventory management
- Secrets and riddles abound
Playing the game
For PICO8 owners: Play through Splore or by running load #dontdig
from the PICO8 commandline.
Gamepad recommended for best experience.
- D-Pad/Arrows: Move your character
- B Button/Z: Action button. Hold down to dig and shoot.
- A Button/X: Inventory
- Start/P: Pause and settings
- Read the manual to learn more (PDF)
This prototype was made for Pico-View, a monthly web-zine hosted here on the BBS and also on NerdyTeachers.com.
You are challenged with taking on this mechanic of rewarding the player for nearly missing obstacles.
You can:
1) Play this prototype as-is, and share your highscores below.
2) Take this cart, and edit it as much as you'd like to create your own spin-off!
Don't forget to share it here on the BBS with the tag "Prototype Party" so we can see all the imaginative creations that all started from this prototype. And keep your eyes out for more in the coming issues of Pico-View!
Read the full issue here:
BBS Pico-View
Alien Bread
Antoine Foucault
Alien Bread is a short experimental shooter that allowed me to learn the basics of Pico-8.
I will continue improving my Pico-8 skills and create small prototypes and short games.
Don't hesitate to give me feedbacks!
Story
Play as a piece of bread whose day was interrupted by aliens!
Shoot butter to attack your otherworldly enemies!
Controls
Arrow keys - Move
C / V - Shoot
X / Z (hold) - Switch to horizontal shoot mode