Background :
We are three students from Ada Tech School Paris and for our first group project we had to make a game with Pico 8 in two weeks.
The Game :
A prisoner try to escape a scary prison with the help of some abandoned prisoners.
Do not fall in the lava and try to avoid the guards who certainly gonna put you again in your jail.
The Controls :
Arrow keys - Move the prisoner
[X] - Close dialogue and jump
Crédits :
Music : Robby Duguay
Developpers : Constant Guilbert, Arthur Guisne and Céline Barbe
So since I can't get the idea of a Software Automatic Mouth port for Pico-8 out of my head, I experimented with trying to generate similar sounds in bytebeat, and I ended up with something that aaalmostkindasorta makes vowels?
Most research courtesy of H2Obsession: https://sites.google.com/site/h2obsession/CBM/C128/SAM-128/technical
Btw I read through https://www.lexaloffle.com/bbs/?tid=32130 and it didn't solve my issue.
I have two Logitech F310 controllers and two wireless ones.
Unplugging all of them, and plugging in any of them individually, works just fine. So each controller works.
But plugging in more than 1, will often disconnect one of the previously working ones from PICO-8's logic (while still physically plugged in). I can only get 2 working at a time, sometimes plugging in a third will make it so only 1 of the 3 is working.
I've logged the log.txt file's changes live to see what SDL2 mapping string PICO8 creates for each controller after plugging them in one at a time while PICO-8 is running, copied those strings into pico8's SDL-controllers file, quit PICO8, saved the file (just in case PICO8 overwrites it while quitting, which I highly doubt), and restarted pico-8. No success with this method at all. It seemingly does absolutely nothing.
I'd really like to have my kids be able to play 4 player games with these. Anyone know what could be the issue, or know of some thread about this issue that my googling couldn't find? I'd really appreciate any help. Thanks.
it would be nice to select where the pause menu should appear. Also the possiblity to draw a custom background for the pause.
For example for a RPG. It would be useful to draw the player-status on screen and the pause-menu on the right button of the screen. In combination with the menuitem-command it would be an easy and "cheap" possibility to create a status-menu. Or display a map of the current level, an inventory and so on.
Suggestion:
menustyle([<position>[,<draw-function>]])
position could be 0=top left, 1=top, 2 top right, 3 left, 4 center (default), 5 right, 6 bottom left, 7 bottom, 8 bottem right
And draw-function is a function which is called direct before the pause-menu appears.
Hey, here's that thing you didn't know you needed - a stupid Halloween reskin of my already stupid game, Unsafe at Home! This quality reskin features Halloween colors and sprites, and a very slow, minor/off key rendition of "Take Me Out to the Ballgame". Why would I do this? Honestly, your guess is as good as mine as to what my brain decides is important at any given time. But 'tis the season, right? Both Halloween and the World Series are happening this weekend, so why the heck not?
Controls
Up arrow: move forward around the bases
Down arrow: move backward around the bases
X/Z: hit a homer! (once you've got a bat)
Here's my third game, again with Romeo the cat.
I was originally working on a video game called "Romeo Adventure", which is scheduled to be programmed in Lua Love 2D. While working on the game engine, I ultimately wanted to test it on the Pico 8, to end up with the game you have here.
So here is "Romeo in Pico Adventure".
Your goal is to control Romeo, and help him to avoid enemies and find the exit of the great forest.
I wish you a very good game with Romeo.
Grave Matters
I'm proud to release my first PICO-8 game just in time for Halloween.
It's a short adventure platformer with spooky music inspired by Beethoven and Andrew Gold.
Enter into a graveyard full of spiders and bats.
Help a ghost find its lost gem and witch brew her potions.
If you're having trouble with the bats, select "Easy Mode" from the pause menu.
Happy Halloween!
[8x8] | |
Hi there,
I'm trying to launch a multi-cart game like Another World from the command line under Linux.
My command line is:
pico8 -windowed 0 -root_path /path/to/aw -run aw.p8 |
When I launch it, I get an error message COULD NOT LOAD AW.P8.
I can check that I'm in the right folder with a DIR and I can load and execute it from Pico-8 through LOAD AW.P8 (returns: LOADED AW.P8 (49877 CHARS) and then RUN it from there, but I want to get it loaded + run from the command line.
Anyone knows how I can do that?
Pico Castle is a demake of Cinematronics' Star Castle featuring Felice's anti-aliased vectors and freds72's color support.
https://www.lexaloffle.com/bbs/?pid=49754
The objective of Pico Castle is destroying the Pico Castle by removing its shields and penetrating one bullet into it while avoiding or shooting 3 sparks (4 sparks in Hard difficulty). Destroying Pico Castle gives you a bonus life.
Just like the original game did, this game is time based. the difficulty increases in every 30 seconds (15 seconds in Hard difficulty) and after 5 minutes(2 minutes and 30 seconds in Hard difficulty) the game permanently stays at the maximun difficulty level.
The final image is an adaptation of the image from the Principles of painting with math tutorial by Inigo Quilez.
I'm using fixed time-steps and the animation is intentionally a bit slow so "real time" might be fudging the truth a bit but I thought I wouldn't be able to animate these things at all and it turns out I was wrong. I just needed to trade off time for space in time honoured fashion. That's why there's a "loading screen" at the start: most of the time intensive calculations are being done up front. I used the SDF utility I posted the other day—not strictly necessary of course, you can just write the functions directly—to create all the signed distance functions used for the animations and then converted them to arrays by pre-calculating all the distances and turning distance checks into a simple table lookup.
These are my own notes on saving token tricks that I've used previously. I'm sure what's here is not unique to me - there are other documents about this subject (e.g. https://github.com/seleb/PICO-8-Token-Optimizations) and I recommend looking at those as well, probably before this one. I intend to add and update here as I learn more.
If you see a mistake or are a true wizard that can offer wisdom to this humble novice then please feel free to comment :)
Starting out
I say "starting out", because the next few ideas concern initialisation and structure, but this might be a good place to suggest that a lot of these tips produce much nastier to read code that's more of a pain with which to work and employing all this stuff straight away, especially if you're new to coding is just going to make the whole experience more difficult and probably not much fun. I tend to bear some of the things here in mind as I code and some things are becoming (bad) habits, but usually I've only used these techniques as a second, third or an in desperation when PICO-8 won't run any more pass.
Chance of Rain
A slightly interactive and slightly meditative evolutionary pond simulation
Controls
- ARROW KEYS: control frog
- Z: surface/submerge
- X: tongue
- ENTER: options
Gameplay
This simulation is meant to be watched more than played (though you may interact with it by suggesting actions for the frog).
There are four types of creatures living in this rainy pond: a frog, fish, flies, and dragonflies. Enjoy watching them swim, fly, eat, die, and birth new generations. Flies birth larva into the water which swim towards the nearest rock, where they slowly mature and eventually sprout wings - becoming flies themselves. Well-fed fish will turn green and reproduce when near each other. Dragonflies swarm the lillypad to spawn new. Each parent passes genetic predispositions onto their offspring - which allows for behavior evolution over time. Creatures may die of old age or starvation. All the while, a happy frog swims about - ready to offer a guiding hand (or, rather, mouth) if one part of the ecosystem becomes unbalanced.
Occasionally, you may see some event-triggered haikus or tips to help you further enjoy and understand the game. Statistics about your world will also slide by from time-to-time (and can be triggered manually from the options menu). If your ecosystem fails or you lose a creature type, just keep playing - there are heavy storms that roll in occasionally to replenish your stock.
Every game has randomizations, so each experience will be unique.
DNA System
A DNA system has been implemented that allows parents to pass certain parameters onto their offspring. There is even a chance of slight genetic mutations for each parameter. Through this system, each species will actually evolve its behavior over time to be best-suited to its environment.
- Dragonflies pass on these parameters to their offspring
- speed, initial lifespan, threshold for hunger, starvation resistance, tolerance for rain, and others
- Fish pass on these parameters to their offspring
- speed, initial lifespan, threshold for hunger, and starvation resistance
- Insects pass on these parameters to larva which become adult flies
- speed, initial lifespan, swarming location, tolerance for rain, and others
Full "technical" breakdown of the DNA system:
The Agony and Ecstasy of the PocketCHIP
I arrived at PICO-8 because I bought a PocketCHIP back in 2016. The PocketCHIP came pre-loaded with PICO-8 and prior I had no concept of a "fantasy" console, but I was excited to make games again. Unfortunately, the PocketCHIP was a beautiful-yet-awful piece of hardware.
Essentially, the PocketCHIP was a Raspberry Pi-like mini computer wrapped in a case with a touchscreen and keyboard. On the surface, the PocketCHIP was a pretty raw looking piece of hardware...but I dug the style and was excited when it arrived. Yet I quickly found out that the experience of the PocketCHIP was something to be desired.
All bark and no bite
The keyboard was awful and despite coming with PICO-8 -- a game hub -- playing games was very unsatisfying. I needed a new bezel with a built in d-pad just to make playing games tolerable. I even had to put nail polish on keys to know what did what. In short, it was not fun to play on. But it did lead me to PICO-8 and for that I'm thankful.
Spellcrafting & Sailing Roguelike!
If you get stuck, you can reference the manual!
Gameplay
The game is centered around the concept of crafting spells by stacking different pages of a spellbook.
So I have an issue where the player object can clip through about half a collision tile, but only when moving to the left. As I type that I realize how weird and niche this problem is. Anyways, here's my move function:
function control_player() newx=p.x newy=p.y if (btn(⬅️)) then newx-=.1 p.sprite=d.left elseif (btn(➡️)) then newx+=.1 p.sprite=d.right elseif (btn(⬆️)) then newy-=.1 p.sprite=d.up elseif (btn(⬇️)) then newy+=.1 p.sprite=d.down end if (can_move(newx,newy)) then p.x=mid(0,newx,127) p.y=mid(0,newy,63) end if (door_tile(newx,newy)) then scene="room1" p.x=6 p.y=10 end end |
and here's my collision function:
function is_tile(tile_type,x,y) local tile_x=newx+pixeloffset_x local tile_y=newy+pixeloffset_y tile=mget(tile_x,tile_y) has_flag=fget(tile,tile_type) return has_flag end function can_move(x,y) return not is_tile(wall,x,y) end function door_tile(x,y) return is_tile(door,x,y) end |
pixel_offset is initially 0, and changes based on scene to account for the map change.
Any idea what is causing this?
side note: Everyone on this forum has been so helpful and I just want to say thanks for all the help! This is my first coding project outside of html and I really appreciate it :]