Generates a random maze, then places the player in the middle of it and ensures that you're not staring straight at a blank wall. Find your way to one of the corners and it will reset with a new maze and plonk you back in the middle. Not really intended as a game, just a learning exercise for me and the hope that the code will be of use to someone with more creativity than myself:)
Controls
Arrow keys to move forward/backward and turn.
Z/X will sidestep left and right
Hitting 'P' at any time will generate a new Maze and place the player in the middle of it.
Background
This is an extension of my previous raycaster. I had to adapt the raycaster logic a bit to handle the maze walls rather than a grid based map.
Hi all,
I'm just getting into Picotron, but have dabbled with PICO-8 for a long time.
Given the way /ram/carts main.lua works, what is your initial directory structure like and how are you doing source control (git, github, gitlab, codeberg, etc)?
Are you mostly using the Picotron or have you switched to a parent OS IDE like VSC or NeoVim?
THX1138 in advance, Pond.
(PS - here is a screenshot from what I'm working on, PacHac, a Pac-Man roguelike.
A Submission for TweetTweetJam 9. (500 Characters of Code Jam)
Control:
Arrow Keys - Move
X - Speed up yourself
O - Slow yourself but damage Asteroids
Itch.IO Page
This is a very basic implementation of a genetic algorithm, partly inspired by this Code Bullet video, with a few additions to improve the evolution speed and reliability. It's nothing fancy, but I found it fun to experiment with, so I thought I'd share it.
Each "ant" has a DNA consisting of a list of directions to move each frame, which starts off completely random, but though the process of mutations and "natural selection" evolves into a path to reach the goal.
To improve the evolution speed and reliability, the ants are evolved gradually by giving each generation slightly longer to reach the goal. In addition, the mutations to the DNA are biased towards the end of the path, so more ants have a chance to explore the end of the path before they die.
Hey pico 8 community. I recently started making some demos and carts for myself and my friends. Although I have been struggling with collisions. Most tutorials use fget and mget. I want to use them, although I don't understand the parameters that are used.
I am not looking for a one size fits all code. I am just looking for a explanation for how they work, and what the parameters are used for and how they work in functions.
Thank you :D
-BEiNg139
Hi @zep!
pico8 0.2.6b / linux:
cls() if (false)?1 --hi print(2) print(3) |
expected output: 2 3
actual output: 3
Here's an altered version that works as expected:
cls() if (false)?1 print(2) print(3) |
(this prints 2 3
, as expected)
3 things seem required to trigger this bug:
- shorthand if
- shorthand print on the same line
- !! further text after the shorthand print (" --hi", in this example. but just a single trailing space triggers the bug too)
When these are all true, the next line seems to get scooped up into the shorthand line. This can include attaching an else
to the wrong if
, like in this more complicated example:
cls() if false then if (false)?1 --hi else print(2) print(3) end print(4) |
expected output: 2 3 4
actual output: 4
Hello good people of the Picotron! First time posting. I apologize if I<m not posting in the right forum, but I<m a bit lost in the current layout of the site.
I'm a amateur programmer who never went too far qith this hobby, so I thought maybe something meant to be "easy" like Picotron could be a thing for me, the eternal wannabe game designer.
My question to day is about tables.
I can<t quite get them to work. I use simple one dimension arrays, but I need more of a Pascal-type of record, and when I read the Lua documentation, it seems to be possible, but my code doesn<t compile when I try to create tables with more than one dimension or different types of variable. It<s a syntax problem. I know what I want to do, but I can't find the right syntax.
For instance, in my RPG, there will be a party of six characters. So I need a table with at least a string column for the name of the character, a number column for the character sprite number, one column each for the chacter<s abilities. At the end of the day, there will be a lot of data in that table.
Title says it all.
I'm making a horizontal scrolling game with a map 32 screen wide and 1 screen tall, and with the player using extra colors different from the enemy colors. (enemies can't be over or under the player).
For this, I'm using screen rotation, but now I can't use print to display text any more as it appears rotated.
Has anyone already implemented a 90° rotated print function ?
Hi, I encountered a waveform corruption bug while trying to move SFX as part of a multi-composer collaboration project.
On version 0.2.6B
Reproduction steps:
1) Make a custom waveform in SFX 0
2) Make in SFX 1 make a sequence using SFX 0
3) Make in SFX 2 make a sequence using SFX 0
4) Move (cut and paste) SFX 0 to SFX 4
5) Move (cut and paste) SFX 1 to SFX 5
6) Move (cut and paste) SFX 2 to SFX 6
7) Check SFX 4, the data will be corrupted
It seems that this can happen with other combinations but this is the procedure that caused the bug to happen and is reproducible on a fresh cart.
The corruption seem to be an inversion of the sign of alternating sample of some sections of the wave
Celeste but a black hole is chasing you.
The black hole speeds up over time. Here is everything that increases it's speed:
- New level (Biggest increase in speed)
- Death
- Dashing (Smallest increase in speed)
Getting berries decreases speed.
If the hole is more than 2 levels away, it starts to get a speed multiplier.
The formula for speed goes something like this:
(distance is distance between blackhole and roof of current level)
(0.025level + 0.01 deaths + 0.005 dashes)/berries + ((floor(distance)256)*2)
Xhive is a single stage retro Shoot 'em up. You control a spaceship across a procedurally generated scrolling level and try to destroy various enemies to get the highest score.
Mission
The origin of the hostile aliens has been found. Your job is to fly into the xeno hive with one of the best combat spaceship and kill everything.
Instructions
- If you shoot, you move slower.
- Colliding with the hive, aliens or their projectiles will damage your ship.
- After you leave the hive, an NG+ starts.
- Every run, the hive is procedurally generated.
Controls
- Move: Arrow Keys
Controls:
X to shoot
Z to use your strawberry bombs
Arrow keys to move
The only power-ups are the strawberries, nothing else is a power-up.
Story:
You are a space fighter who is currently fighting in the war of Andromeda. You were told to go to fight a battle against the evil aliens and you were told that people would be joining you to fight. But nobody showed up. You are all alone fighting 20 waves of evil aliens. Can you do it? Can you defeat the Gorthen and end it all?
Directions:
shoot the enemies and don't get hit by them. You have 5 lives. If you lose all 5 you lose
collect the strawberries. once you get 10, you get another life or, if you have more then one strawberry, you can use Z to shoot 3 bullets (this changes depending on what difficulty you have it on.) * the amount of strawberries that you have. These bullets do more damage and can destroy the enemy bullets. Doing this resets your strawberries to 0.
There are 20 waves.
Different modes/difficulties:
There are two modes: standard and endless.
Standard is just the normal game with 20 waves.
Endless is an endless amount of waves where every ten waves you fight the Gorthen.(the boss).
All of the enemies are completely random.
I know its not that good but I don't know how else to do it. So if you have any suggestions, please tell me.
Also, if you change the mode, it brings you back to the start screen and you lose your progress.
There are 4 difficulties: easy, normal, hard, and extreme.
The only things that change is the shooting frequency, the difficulty of the boss, the amount of strawberries you need to get a new life, and how many bullets you shoot per strawberry.
If you choose extreme, Good Luck!
I hope you enjoy my first game!
Have fun!
The Gorthen designed by Brody Vaine.
I don't know why there are two carts, so if anyone knows how to get rid of the extra, please tell me.
Please give me feedback so I can make it better