This is a cover of one of the silent hill themes. This one intrigued me when I first heard it, and tried to make a decent demake of it. This was done by ear and memory, I hadn't heard the song in a while so hopefully this is still accurate. This is a short 4 segment loop in 3 channels. Feel free to use for whatever you want.
I plan on making more covers, If you want a specific song remade in pico-8, lemme know in the comment thread. :)
Hey everyone,
I recently purchased Pico-8 and am loving it. I am breezing through the few tutorials there are on the internet and am starting to wonder how many of you have implemented physics engines to handle things such as gravity and the like.
I have been looking at other people's code and getting a bit of a clue but am feeling a little overwhelmed :<.
Any resources would be great as I want to learn how to do this for real so I can grow as a developer.
Thanks!
Edit: Just looking for something simple how when the player jumps, to have him come back down

A faithful port of the hit Game Computer Mini color game Triotos now available on pico-8!
Rules of the game here: link
Do choose the music before beggining the game.
Credits to usr_Share for the graphics, coding and Adrian09_01 for the music and coding

Hi,
I'd like to create a top-down adventure game with a map that will exceed the dimensions of the map editor, so I'd need to create and store the map by other methods. The problem is that I'm a bit clueless about how to best go about this and wondered if anyone could send me down the right path.
I'm guessing that I'd basically have to store the map in an array (well a table). Does anyone have any experience with doing this kind of thing?
Thanks!

So I recently discovered Pico-8 and think it's great. I'm a hobbyist programmer at best but playing with Pico-8 has taken me back to my teen years messing about with basic and assembly on my C64 and Atari ST. I never managed to pull together a full game back then, and pretty much put any programming aspirations on hold for a long time except for the odd macro in excel.
Anyhoo... (deep breath) .. here's my first attempt at a Pico-8 game, very loosely inspired by the initial stage/state of a certain C64 game I was rather fond of.
Background: After returning colour to the world our hero retired to a peaceful house in the country. But... oh no!.. his lovely garden is under attack, and there's not a power-up in sight - so it's no lasers, just bouncing (and the cats gone missing!).
Gameplay: protect the flowers by bouncing into the nasties.
Left/Right to accelerate the ball in that direction (ie decelerate if travelling in the opposite direction)
There are four types of nasty:
Bugs - Nasty little beasts that eat the flowers. Dropped by birds.Harmless to the ball - just bash em! Different waves have more or less bugs. They flash on the radar when eating a flower... kill em quick.
Birds - fly about and have a chance of dropping a bug. Easy to kill, can't harm the ball.
Spikey birds (aka killer birds) - have swords for wings. Will hurt the ball if hit from above... so hit them from below. Also drop bugs.
Frogs (aka cyber frogs) - jump about on their powerful cyber-scissor back legs. Will hurt the ball if hit from below. Have a chance of 'snipping' and killing any flower they are landed on so try to splat them before they jump...
Lose points for dead flowers, score points for every nasty that's killed.
There are six waves which repeat over three levels. Extra life at level start.
Game over if all flowers are eaten or all lives lost.
I'm not sure how fun it is, now it's all done and dusted. Also not sure if too hard or too easy, so any feedback welcome.
Hope someone gets at least a modicum of enjoyment from it :)

Are there any disadvantages to drawing single objects with map() rather than spr()?
I want to make a platformer but the ground landscape will change depending on what falls from the sky and lands.
Normally, for things that fall to the ground I'd draw a sprite but since the thing falling will end up being something the player can walk on, and I want to use flags for ground checking, I thought drawing with map would be a valid solution.
But then I also felt that sounded not so good because maps are there to be backgrounds and stuff, right? Something that's not really moving. And also I'm wondering if mget() will work like I want given the x/y could be outside the normal map cel grid.
I mean, if I did something like this, would that be advisable?
obj={x=40,y=0}
function _update()
obj.y+=1
end
function _draw()
map(0,0, obj.x,obj.y, 1,1)
end
|

Hi!
I'm trying to make a reusable platform game engine in the style of Super Mario Bros or Sonic the Hedgehog etc. I've just finished putting something together and I'd love to get any opinions on how it feels or ways to make it better. The graphics are extremely basic because I'm just focusing on the mechanics for now.
My biggest problem with it is in making jumping through platforms feel nice. Currently if the bottom of the player is intersecting a floor tile, the player is moved above it to stand on it. However this results in the player being put up on a platform when it doesn't feel like he should be. I'd like to make it so that a platform is only detected when the player's feet just slightly intersect it by up to half a tile.
Controls:
Arrow keys to move
"Z" key to jump
Features:
-Horizontal and vertical acceleration
-Friction
-Gravity
-Capped speeds
-Floor detection
-Variable jump height based on length of time button is held
-Variable jump height based on horizontal speed of player at time of jump
It seems to run slower in a browser than in Pico-8. My code isn't currently very efficient, perhaps that's the reason.

Refactor Fun
After reading more of the Pico-8 Zine 2 it's crazy obvious that I should use a "Finite State Machine" to control the hero ship, enemies, etc. I've been looking through the code of the iconic P.A.T. Shooter and it seems a state machine is used to keep track of everything.
It makes sense and it seems to allow for more "portable" functions. As in hey this function is great I can totally use it pretty much as is in a whole other project. Yay, me! Yay, us guys! (at least that's what I want to say)
Using init
The first thing to refactor, I guess, is the global variables declared at the top of the file. They can be blasted into the _init function and everything should work the same:
Update:
added function fixstages to TMap class, for prevent unreachable platforms from pattern in stage. Implementation is very simple and you can extend method as you wich. Currently is checked only "platform" tile id.
Method:
From generated POI point is created connection to free edge in stage and remove platform tiles between connected stages if exist.

Hi,
I'm trying to put together the physics of a classic platform game in Pico-8. I want to achieve something that behaves like Super Mario Bros.
I have coded a jump system where when the player presses jump, the character rises by a set number of pixels each frame, with that number decreasing every frame, so the character slows down as he gets to the top of his jump. This works well, but I run into problems when I try to implement a variable jump. Like Mario, I'd like my character's jump height to depend on how long the jump button is held down. I did achieve this simply by cancelling the vertical climb when the button is released, but this means that the jump doesn't slow to a halt unless the button is held long enough to see the full jump.
I suspect I'm going about the whole thing in the wrong way and wondered if someone can tell me how the guys at Nintendo did it with Mario. I'm sure there are lots of ways of achieving something similar, but I'd like to know how it was achieved on the NES if possible as I'm as interested in the technique as I am in the end result.
Some Googling suggests that the best method to use is by setting up forces acting on the character. Is this how it would have been accomplished back in the 1980s?
Thanks for any help! :)
Andy

Quick thing I made with the, ahem, undocumented mouse feature, dunno if it's been done before, but here's my take on a stacking window manager I coded in, like, less than an hour?
- You can drag and drop windows
- Active window goes on front
- Each window has its own update/draw function, clip'd and camera'd to the window
I wanted to post this before going to sleep, but here's what's probably next:
- Resizing windows
- Title bars
- Input to the active window
- Task bar and desktop icons
Well, hope you like it. It's pretty much a multitasking OS in PICO-8 we have here.
P.S.: Since it uses the undocumented mouse feature, it may or may not work on anything other than the desktop version. You've been warned.

I've been running through threads trying to find box physics but most of what I find is physics for circles/balls, it seems.
Anybody have a good lead on a physics engine-like thing for squares that I could try to figure out?
My next game idea involves boxes falling to the ground but they need to pile up (and then the player needs to be able to walk/jump on top of them).
I could have the boxes always land on a flat side but thought it would be cooler if they tumble into place and fill in space likes a box would in the real world. Seems like something doable in P8 but I have zero idea on how to start that from scratch, so I need something to get me started.
I was dabbling in Npp & ended up making this. It's made navigating through source code much simpler for me, I figured others might find it useful too.
Example from one of Zep's compression carts (whose nested functions caused no end of trouble for my puny regex-fu):
NB, it requires you to edit Notepad's config files, so maybe make a backup first in case something goes wrong.
Link: Github Gist






1 comment

