This is a little carrot farm simulator, number-go-up game where you try to make as much money as possible without dying from exhaustion either by running out of energy or staying up too late. I followed SpaceCat's 2025 farming simulator tutorial for much of this, but tried to put my own spin on it where I could.

when running picotron with a folder synced from another machine, it always gives the same error, stating that it can't read the /desktop or /appdata directories, then crashes. my best guess is that somewhere the executable uses the absolute path, including the username, which is different across the two machines. does anyone know any way to fix this?

Direcgeon
Direcgeon is heavily inspired by Alpine Alpaca by Krystian Majewski. The core card-movement mechanic — where cards define your direction and distance rather than giving you free movement — comes directly from that game. What you're playing here is my own twist on that idea, taken into a different setting with different stakes.
How It Works
You have a deck of cards. Three types: go straight down, diagonal left, diagonal right. Each card has a random speed — 1 step (30%), 2 steps (40%), 3 steps (30%). The 40% weight on speed 2 is intentional — common enough to move fast, but not so dominant that the deck feels uniform.
The deck starts at 5 cards, grows by 3 each floor, and caps at 50.

WIP template of the persuasion wheel from Oblivion, for Wheeljam 2026. To use in your project, use the below snippet to grab just the wheel definition:
#include pwheel.p8:0 |
Then use the below in their respective functions:
wheel=init_pwheel() --_init() wheel:update() --_update() wheel:draw() --_draw() |
Finally, use wheel:lock(direction) to lock a wedge in that direction. When all four directions are locked, wheel.final will be set to True. Access wheel.fin[1] through wheel.fin[4] for the locked values, going clockwise from 1 (12 o'clock) to 4 (9 o'clock).
The second tab of the file is a demo which is running above, and shows basic usage such as changing colors and locking directions. Every other time you reset the wheel it will toggle "vfx" to show a floating animation and alternate color scheme.
Welcome to the first game in the DFECT Series: TETRIS DFECT.



TETRIS DFECT is basically just Tetris, with a lot of particles and effects! I had worked on this long ago but never released it here! Unfortunately, it doesn't have official rotations, so hardcore tetris players may not like this implementation, but despite that, this still is one of my favorite personal projects.
Some other notable features:
- Configurable Gameplay! (This is a key feature of the DFECT Series!)
- Multiplayer!
I wouldn't say this is fully complete, but it's kicking off a series of games I'd like to make taking classic games and giving them a bit of a twist. At some point, I may come back to this and adjust the rotations, but it'll be a full re-write of that.

Note: this only works if unsandboxed! To use it, you have to do load #gif from the terminal.
I've made a massive breakthrough in my GIF Decoder!
A huge thank you to @xietanu for his Gif'd library. Studying his implementation made me realize I was bottlenecking myself with a self-imposed 50% CPU cap. By removing that limit and allowing the coroutine to utilize nearly 190% of the CPU budget, performance has skyrocketed: the cart can now decode a 480x270px GIF in just 15 seconds!
I also want to thank @zep for the view.p64 app, which served as a great inspiration for the viewing logic and interface.
Remaining Hurdles
Despite the speed boost, I'm still facing two "ghosts in the machine" that I can't quite shake: Smaller images work perfectly, but the reliability seems to drop as the dimensions increase.
If any optimization wizards have ideas on why the memmap + poke approach might be stuttering at the buffer boundaries, or if you see further ways to refine the LZW stream, I'd love to hear your thoughts!

# Carrot Chase
My first Pico-8 Game.
A short grid-based game where you move the bunny through the map and pick up all carrots to proceed to the next level.
Press C to restart a level.
This is a project to learn Pico-8 and get comfortable with it. Nothing new and not so much fun, but publishing it here is part of the charme of Pico-8:-)
Music needs improvement and more tracks, but I'm not sure, if I want to spend more time on a weak idea...

Collect cattle and avoid farmers in this UFO arcade game, made in less than 48 hours for a game jam held at my uni!
Collect cows for points, the more cows at once the bigger bonuses!
Make sure to not drop any, the farmers will get angrier! Don't collect any farmers, they take away points (but you are allowed to, and encouraged to, drop them)!
Now finally on Splore with Scoresub leaderboards!
On account of it being a jam game, it's not the best balanced-
But hey, that means the leaderboard will be wacky and fun :p
Enjoy!
Itch version (slightly different but basically the same)

Controls
you jump by pressing up, z is the attack, x is the dash. you get three z hits (z,z,z) and up+z resets these and is a launcher for sending the enemy into the air. you only get 15 dashes while in the air. landing an attack after a dash while in the air gives back lots of energy. it costs energy for attacks. down+z does a crouch attack when used on the ground, using down+z while in the air does a downwards diagonal dash kick attack that sends enemies flying downwards. using down+x shoots a energy blast.
you can toggle the player outline look in the pause menu as well as toggle the music (but it always says "on" even if toggled off. but it works).
Progression/Gameplay loop
this is just a 1v1 battler. theres only one class but its extremely satisfying to air dash juggle the enemy. im curious what types of times people will get for defeating the game. and what types of combo high scores people will get. you can reset z,z,z with up+/down+ z but the energy drain is much larger then if you're air juggling the enemy.
Recent update
I recently added the custom color pallet along with some easter eggs for special characters if you use the right color pallet combination.
To know those special color pallet combos heres the spoiler
[hidden]supergod2: blue, pale, orange, red. Decrepit old man: white, pale, pale, dark green. Smarf: white, blue, blue, red. Achugo: orange, pale, black, darkblue. sero: green, pale, white, silver. God: pale, pale, white, yellow. afroguynamedsam: black, brown, white, red. TheChosenOne: black, pale, darkblue, blue.

Welcome to the second game in the DFECT Series: PONG DFECT.




PONG DFECT takes the standard expectations of pong and adds one vital feature, lanes. Shifting between lanes is a lot like swapping positions in tennis. A forward position can make it tougher for the opponent to react! Shifting from the back to the front while hitting a ball can launch it forward!
Because pico-8 has limited input, paddles have an acceleration and slide effect to vertical paddle movement. Holding X (Z on keyboard) will apply the "Brakes", slowing your movement, and making things easier to control. Aside from that feature, you can also adjust the slide and speed of the paddle in the paddle configuration! This is a per-paddle configuration, so each player can have different settings that work best for them!

loads save automatically on refresh
(O) to go into and out of tile select
(X) to place tile
(^)(v)(<)(>) to move
(X) in tile select to go into animation settings
(O) in animation settings to go back to tile select
(^)(v) in animation settings to set speed
(<)(>) in animation settings to set animation type
(X) in animation settings to start animation
(O) in animation to stop animation
(X) in animation to go to save/clear
(<) in save/clear to save
(>) in save/clear to clear
(O) in save/clear to go to animation
arguably better tileset from n+ for those who need it:

After using create_process to spawn a child process (eg. a second window) as part of a bbs sandboxed cart, neither the env().parent_pid nor the child pid will receive send_message from eachother. There's no way for them to communicate.
In an extreme example, Window Pong
In a more common scenario? Opening a separate "settings window" or similar dialog or control widget for a frameless game, and just wanting to communicate back to the main window which setting has been changed, which button has been pushed, for immediate feedback.
Relatedly, "bring_window_to_front" is not among the whitelisted wm messages for your game's own subprocesses, which in this case I am using to try and bring back into focus the dialog window that's being requested by the user if it is already open. Would it be fair for the cartridge to be allowed to steal focus from itself for one of its child windows like that?






2 comments

