
Hi everyone, this is my first Cartridge published to Pico-8 BBS.
This game is an evolution of the second game found in "Gamedev with Pico-8" .pdf document in Pico-8 resources page, and I really enjoyed coding it and learning Pico-8 gamedev. I had a lot of ideas that I plan to use in the future for my next cartridges, but I decided to keep this one simple.
In CosmoLander you take control of your explorer spaceship in a mission to visit multiple planets from a far away galaxy. The main goal is to land on as much different planets as you can, while managing your Fuel and shooting at the switches that control the landing platform gates.
Rules:
The more precise you land on a platform, the higher your score (60 to 100). Be careful not to touch the ground too hard, otherwise your spaceship will get crushed in pieces.
Every 500 points you are provided a floating Fuel Tank, that will replenish 20% of your spaceship tank. If you choose not to pick it up, you will have to wait for the next 500 points, so don't miss the chance.
Every 6 planets you visit you will face a more difficult challenge, where the planet will have a switch controlling the Landing Platform Gates, you have to press the red button either by shooting at it (use button X to shoot!) or by landing on top of it (its riskier, but it grants extra 80 points!!).
Buttons:
Spaceship Weapons: ❎
Spaceship Controls: ⬅️⬆️➡️
If this game made you have some fun and spend time on it, please consider leaving a comment and sharing your Highest Score, to challenge other Pilots!!
Enjoy!
Hi! My name is Shoma. I'm from Japan.
I'm crazy about "lateral thinking puzzles" recently.
I tried to make the game with that idea.
I made a simple puzzle game that is able to be cleared super very short time like a 5 minutes.
The title of my first work is "I misplaced the key somewhere.." .
The purpose of the game is "back to the spaceship before the oxygen runs out" .
— STORY —
We came to treasure hunt by our spaceship. I misplaced the keys somewhere while exploring in outer space and couldn't enter the spaceship! Oxygen disappears moment by moment, and the members say die ...
——————





Hey everyone, I've made a little gui program with Python to export and import the lua code of the cartridges(only working for .p8 files for now).It even checks that the code size you're trying to import to the cart is less than 32k, tough i'm not sure if that is still the correct size. You can check it out here.
Contributions are highly appreciated!(Specially if you know something about tkinter, because i learned it doing this program and it's quite janky lol).
Cheers!


I have created a marching line of invaders that move and animate left and right, dropping down a few rows each time they reach the opposite edge of the screen, It's working great!
So then I added a function that will fire a shot from one of the aliens but when I iterate through the table I always get the last one in the table for my x, y starting position of the invaders shot.
Is there a way to iterate through a table picking a random entry to generate some variables from? I have tried several things but can't seem to figure out how to do this as we only have: add, all, count, del, foreach and pairs.
Thanks,
Brian


Hey everyone,
As apart of a project I am working on, I encoded the P8SCII font and character set into 2 C arrays (I couldn't find any existing such encoding). I also wrote a very small library around these arrays and released everything on GitHub into the public domain. If you’re ever working on a C/C++ project where you want P8SCII but don’t have (or want) disk IO, this library can hopefully prove useful!
So, as shown in my previous two posts, I'm making an operating system for Pico-8 called P8OS.
I am making it so that Z, closest to the window/whatever key, activates the app menu, and X, right next to it activates the task menu, where you can see which windows/programs are active. I need to check for both of them every frame. Shortened down to the problematic code, here is where it goes wrong:
function btnk(k) local p=stat(30)and stat(31) if k!=nil then if(p==k)return true if(p!=k)return false else return p end end if(btnk('z'))inmenu=not inmenu if(btnk('x'))intask=not intask |
It will not detect pressing X unless Z is pressed in the same frame, which is even more confusing.
Clearly something has gone desperately wrong somewhere in this code. I just can't pinpoint what.
P.S. Keep in mind that if you want to reproduce this you will need to call poke(24365,1) or equivalents at the start of your code.



This is my manifesto of sorts on how I plan to implement P8OS in the forseeable future. I will keep writing it over time. Basically, you'll see the post progress as I write it down.
Part 0: Decisions, decisions, decisions
First, I'll have to make some choices to fit the limitations of PICO-8. First and formost; will we allow external programs that can be installed onto any given person's copy of the OS? And if so, how will we fit this into PICO-8?
I have the answer to both of those questions. 1) Yes. 2) A VM.
A VM is perfect for this. If you manage to design a compact and efficient bytecode and run it efficiently, then you're set.
Second decision: Should our OS have multitasking? And, once again, if so, how?
Here are the answers: 1) Yes. 2) Instancing.
If we build our VM modularly, we should be able to have a single instance of the VM for each program, which if run asynchronously, would allow for multitasking.
Third decision: Should we use the mouse and keyboard?
As demonstrated by my extremely early and nonfunctional version of the OS, yes to both.

Here is a simple platformer based on the NerdyTeachers Platormer Tutorial for Pico-8. I highly recommend this tutorial for anyone who is starting off with Pico-8. Here is a small sample of everything the tutorial covers (besides the music).
Link to tutorial: https://www.youtube.com/watch?v=q6c6DvGK4lg


Slide down a slippery pipe being pulled by a fish. The fish loves slime and the slime leaking into the water will determine which direction the fish pulls you. But watch out for the slime enemies. Don't let them touch you when they are red or hit you with their red slime particles or you will lose hearts! Control the flow of the slime, collect money, and smash the enemy slimes. See if you can make it through the 9 levels!
controls:
press z to increase spin speed
press x to make the fish jump
press x while the fish is in the air to slam it down and smash slimes
use the arrow keys to serve back and forth / up and down while sliding

