Hi all, we are excited to share our first full Pico 8 project, called It's Ok To Jump Down. Run and jump your way through randomly generated islands to collect as many coins as possible. Spend your coins at the shop to unlock upgrades and most importantly new biomes to progress further. Finishing the 6th biome earns you a fun reward for your hard work, but don't be afraid to play past this point for a harder challenge.
The game centers around the water-jumping mechanic. Standing under a waterfall fills your water tank(s), which allows you to perform strings of jumps to collect hard to reach coins. You can also refill mid-air.
We really hope you enjoy!
Small numbers (such as 0.00001) are not sent properly between processes. For example, when process A sends 0.00001 to process B, the process B receives 1.
Instructions how to reproduce:
load #wuguzudofo
and run- hit "z" to create child process and send small number from this process to the parent
- parent process will present 1 instead of 0.00001
Whiskers in the Winter Labyrinth
Here comes my first Picotron game 'Whiskers in the Winter Labyrinth'.
Created for the Cre8-Jam 2024 this puzzle game offers 24 levels. You play as Whiskers the cat that finds itself inside of a distorted labyrinth which needs to be fixed. There are also some things to collect and to discover.
As of right now the game is still a bit rough around the edges, having only a few sound effects and no music at all, but it is fully playable.
When the AI plays itself in my game, it is too much for the _update() so PICO-8 drops _draw() frames. The moves are correct, but its awkward because both pieces move at once.
How do I remedy this? Is it a coroutine I need? I've been playing with them and have gotten some crazy results, not really knowing what I am trying to accomplish. But is that even the right approach?
Or can I make some kind of delay between moves to give the cpu time to catch up? I tested by making it only run the engine after a button press and it works fine.
I also tried calling flip() explicitly after the resource-heavy function but no dice.
any pointers are appreciated.
THE GOD OF CHANCE HAS TAKEN OVER THE VAMPIRIC CASTLE: TAKE IT BACK
Use and manipulate the dice you roll each turn to most effectively deal damage to, and protect yourself from, the strange enemies in turn-based combat.
Maneuver through the castle walls and interior to reach and reclaim the throne, gaining upgrades along the way.
CONTROLS
Left/Right arrow keys: choose a category
Up/Down arrow keys: choose an option
Z key: confirm/select
X key: cancel or exit action/selection
Hey folks!
This is my first time using pico 8 and my first cart! It's an auto-battler where you make decisions on who to add to your team. Units have various combat styles, and some have non combat abilities as well.
Edit: Updated cart, found logic error in the cheetah, it is now a glass cannon just as I designed :3 And changed sprite colours of wolf to make it stand out from the porcupine.
The Free Lands, which has an ID of dekasimiha, is a "sandbox" game for Pico-8 where you can mine trees, explore castles, see ruins, find gold, collect enough keys, and destroy enough bosses to win! The game is in its early Beta stages, so don't expect much.
Features added in v1.3.2 (the latest): New keys, new areas (castles and ruins), a battleaxe added to the game, inventory expanded to tools, a new "tutorial" area that explains some mechanics and the game, and a new tree texture.
If you play this game and want to become a "registered" beta tester in the credits (once those get added... lol) then you can comment on this and say you played the game and want to be a beta tester! Thank you!
@toadofsky
I moved the conversation to chat so as not to clog up the cartridge section.
in response to your last post;
how are you going to hook up PICO-8 to the internet though? Can you do that?
Jorth
A small stack-based language interpreter implemented in Pico-8, oh and a text editor too. It's a programming toy. If you know Forth, this language won't be too hard to learn.
Controls
Ctrl-G: Switches modes
Ctrl-D: Deletes the current code
Ctrl-C: Copies the code (bugged)
Ctrl-V: Pastes whatever is in the clipboard (bugged)
Ctrl-H: Replaces the current content of the program with a help menu
Click to run the code.
Changelog
0.1:
- First version!
0.2:
- Added Ctrl-H for docs
- Added STOP intrinsic
0.3:
- New intrinsics for working with Lua
- New docs for IF-ELSE, DEF, and Lua intrinsics
- Smarter error messages
-= PYRO : World Espionage =-
OVERVIEW
An in-progress game based on the old DOS game Pyro II (itself based on an older game named Firebug).
Infiltrate various sites to recover or destroy top secret files, then burn the evidence as you make your escape. How far can you go?
INSTRUCTIONS
Shortly after entering a floor, your Fuse will ignite - use it to burn as much as you can before making your way down the exit stairs.
- Use Gas Canisters to spread gasoline, or leave them behind to cause explosions
- Only some walls burn, others cannot be burnt, though they can be exploded
- The staircase can only be entered from the right side, regardless whether the walls around it are burned down.
Hello,
I am simulating a ball being dragged around by a player. I'd like to create some animation to simulate that the ball is rotating (top-down view). I am trying to do that with a light source on top of the ball but I can't quite get it working correctly.
Looking for advice or some pointers to good tutorials on this subject.
Thanks in advance
function _init() player = {x=64, y=64} end function _update() local move_x, move_y = 0, 0 if btn(0) then move_x = -1 end if btn(1) then move_x = 1 end if btn(2) then move_y = -1 end if btn(3) then move_y = 1 end -- update player position and animation if move_x != 0 or move_y != 0 then player.x += move_x player.y += move_y end update_ball() end function _draw() cls() rectfill(player.x, player.y, player.x+8, player.y+8, 8) draw_ball() end --ball ball = {x=80, y=80, vx=0, vy=0, length=24, friction=0.9, mass=5, pull_force=0.2} ball.hitbox = {2,2,6,6} ball.name = "ball" ball.radius = 5 -- in ball initialization ball.light_pos = {x = ball.x, y = ball.y} function distance(x1, y1, x2, y2) return sqrt((x2-x1)^2 + (y2-y1)^2) end function update_ball() local dx = ball.x - player.x local dy = ball.y - player.y local dist = distance(ball.x, ball.y, player.x, player.y) if dist > ball.length then local angle = atan2(dx, dy) local pull_strength = (dist - ball.length) * ball.pull_force ball.vx -= cos(angle) * pull_strength ball.vy -= sin(angle) * pull_strength end ball.vx *= ball.friction ball.vy *= ball.friction ball.x += ball.vx ball.y += ball.vy if ball.vx != 0 or ball.vy != 0 then local move_dir_x = ball.vx > 0 and 1 or (ball.vx < 0 and -1 or 0) local move_dir_y = ball.vy > 0 and 1 or (ball.vy < 0 and -1 or 0) ball.light_pos.x += move_dir_x * 0.5 ball.light_pos.y += move_dir_y * 0.5 -- check if light has reached ball edge local light_dist = distance(ball.x, ball.y, ball.light_pos.x, ball.light_pos.y) if light_dist >= ball.radius+1 then -- move light along the direction of movement ball.rolled_under = true ball.roll_under_timer = ball.roll_under_frames -- reposition light on opposite side of ball and continue moving ball.light_pos.x = ball.x - move_dir_x * ball.radius ball.light_pos.y = ball.y - move_dir_y * ball.radius -- immediately continue moving in the same direction ball.light_pos.x += move_dir_x * 0.5 ball.light_pos.y += move_dir_y * 0.5 end end end function draw_ball() line(player.x+4, player.y+4, ball.x, ball.y, 13) circfill(ball.x, ball.y, 5, 1) -- light spot circfill(ball.light_pos.x, ball.light_pos.y, 1, 7) end |
Welcome!
Juicio (Juice-e-Oh) is a local startup situated in the middle of No-where Dry Dry Basin.
Sasa needs help making smoothies for hungry bird clientele, Fit falling fruit into 5x5 squares to clear!
Zone out to either minty or spicy mode and share your highscores!
Controls
Left/Right to move (Fruit can wrap across the screen.)
Down to advance by one
Up to quick drop
🅾️ to advance/select dialog option
Notes
Star blocks give score when you fill the star birds on the sides of the screen. If you fill them out with stars to spare you'll get bonus score.
If fruit goes over the blender line it's game over, But if you would've cleared your all good to keep going!
this is a proof of concept :3
i basically took the concept of geometry dash platformer mode aand ported it to pico-8
all the original game art belongs to mr robert topala, all i did was use it as reference :)
(edit: forgor to mention that the spike hitboxes are very stupido dumdum but it's whatever)
(edit edit: i'm still learnin lua so i had chatgpt help me please don't kill me :3)
(im an un-experienced pico-8 dev)
So i've been developing a small program that will allow you to draw things with different colors from the alternate color pallet, so far you can just switch colors from their alternate pallet and regular pallet.
But I realized that if I want, lets say the regular red and the alternate red at the same time, it wouldn't be possible.
So what i'm looking for, is an easy way to fix my mistakes and change my cart so that I can have alternate and regular versions at the same time, of one of the colors. (im aware that each time the alt and reg versions of a color is present, one of the other colors will need to be sacrificed)
Cart preview PNG img elements could really use the css declaration image-rendering: pixelated
Now:
With image-rendering: pixelated
:
This would be a better reflection of the games' actual look, and even makes them a bit more appealing to play IMO. It's a pretty simple change to boot!
Thanks for reading!