Log In  

BBS > Superblog
Posts: All | Following    GIFs: All | Postcarts    Off-site: Accounts

Hello everybody,
I�ve recently created a PICO-8 resources page on ZEEF. Feel free to contact me (or contribute to the page) if you find something missing: https://marcosecchi.github.io/resources/pages/retrogaming_pico-8.html

4
2 comments


Cart #40365 | 2017-05-09 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA


Hello!

New user here, and absolutely in love with Pico-8!

Having followed several available tutorials online, I've cobbled together a few concepts to get this game running. Its just a player moving around a game field with some actors standing in the first screen. The player is repelled by the actors, which is sortof how I want to handle collision between the player and most objects. I may tweak that depending on what the player is bumping into.

I'm posting here because I've run into a dead end with my attempts to change the map displayed on screen. I intend to set triggers that switch what area is displayed on the screen (like the player walking onto a door tile), but currently I'm trying to figure out the necessary code to change what is displayed while the "trigger" is tied to btn4.

As you can see in the referenced WIP cartridge, scene_counter is set to "1" in _init, and if scene_counter == 1 then the map region (0,0,0,0) is drawn to the screen. However, if btnp(4) then the map region is changed to (16,0,0,0), which is the next region on the map data I'd like the "scene" to be framed at. With my current code the map background is changed correctly (and an empty desert scene is drawn, with marker-tiles on the outer corners to ensure I've set the new map coordinates correctly), however --

As you can see (if you run the game and press Z) the map is changed but the player appears to still be interacting with the constraints of the previous map scene on the island. Moving up and down, you still interact with the screen as if the two NPC actors are still present, and as if you are still on the island with the un-walkable water tiles and the yurt present in the center. You should don't see them.

I'm curious if anyone can review my code (and identify which tutorial I pulled the concepts from ;) ) and assist me in identifying why my game is showing the map correctly, but not actually moving the coordinates of where the action is taking place to the correct region in the map-editor data? Am I understanding whats happening correctly?

Any assistance would be great, and any constructive criticism would also be helpful. As a side note, it should be painfully obvious from my code that I'm a novice to any and all programming and could probably get done what I'm doing here with shorter code, likely with more advanced methods. I'm manually checking a lot of coordinates for my "collision detection", which works but is taking up more tokens that it probably should.

As an additional note, please ignore my in-code comments at the beginning. They're mostly just for me so I don't forget how the heck this all works, and more then a bit pretentious.

Thanks, and enjoy!

9 comments




So, I remade Lady GaGa's Poker Face in Pico-8.
This is my favorite song from her.

8
2 comments


I've of course found plenty of things on doing queues in lua all over the web, but it appears pico 8 has fewer of the main lua libraries available.

What I'd like to do is have a queue for passing messages to coroutines for "commands" to process. TBH it's probably overkill, but I'd like to know how anyway.

I know I can add(x, 10) to append to a table. But then there's del, which apparently only searches for a value and deletes it. I'm surprised there's no mirror operation to add which would remove from the end (or start) of a table. That's what I'm looking for, I think.

1 comment


Cart #40288 | 2017-05-07 | Embed ▽ | License: CC4-BY-NC-SA

William's project.

0 comments


Cart #40286 | 2017-05-07 | Code ▽ | Embed ▽ | No License
1

1
0 comments


Cart #40479 | 2017-05-12 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
7

0.6: fixed invincibility bug

Cart #40275 | 2017-05-07 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
7

Pushback is a simple action game based on the Ludum Dare theme "One Room".

How to play:
You are the center yellow block. Use the green blocks to push the red monsters back and squish them against the walls.

If the red monsters get next to you, they'll attack you, and you'll get progressively bloodier. Lose all your health and you lose.

[ Continue Reading.. ]

7
3 comments


Cart #40272 | 2017-05-07 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2

2
0 comments



Player changing base on inventory items collected

1
0 comments


Cart #40253 | 2017-05-07 | Embed ▽ | License: CC4-BY-NC-SA
1

You have currency and items that you can buy with it.

This mechanic is from the cart that DMS student Ben is working on.

Hopefully will have actual game to post soon :)

1
0 comments


Cart #40282 | 2017-05-07 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

1 comment


Cart #adventurecreator-8 | 2021-01-12 | Code ▽ | Embed ▽ | No License
16

This is a demake of Adventure Creator, an old Atari 400/800 game. It's not my goal to perfectly imitate the game, just get enough of it in there to be fun and nostalgic to play.

The original game was by Spinnaker/Dale Disharoon on the Atari 400/800 released in 1984.

It is dedicated to the memory of Dale Disharoon who died in 2008. His game gave me and my sister Katy a lot of fond memories together. I hope this demake honors his memory and preserves his legacy in some form.

It's a bit of a strange and probably outdated game. It is best described as a roguelike with questionable mechanics. But it makes a fun toy, and probably interesting to small children and anyone who remembers the game.

[ Continue Reading.. ]

16
2 comments


I've got some code similar to this in my game for different types of entities.

knight.sm=cocreate(
 function ()
  while(knight.alive) do
   w=knight.w
   h=knight.h
   s=knight.s

   if btn(0) then

... ... .. ..

Basically inside the function I'm creating a coroutine from I just use the "knight" reference from global scope as a "this" reference, so to speak. But...now I want to create a different type of entity within a loop, using a similar approach to the above.

 for m=1,10 do ::redo::
  .... 

  chest.sm=cocreate(
   function()
    while chest.alive==true do

The problem I'm running into is that that "chest" variable inside the loop, only ever seems to refer to one chest (presumably the very first time the function() is processed by lua).

I want to create a coroutine for each chest entity, which has a reference to "that" chest for each one in the loop. I'm sure there's a way to do something like that but I'm fairly new to lua.

1
1 comment


If I try to start pico8 with superuser it gives me this:

Failed to open audio: ALSA: Couldn't open audio device: Device or resource busy

but when I open it without sudo it does not give this error and sound works. I need to open pico8 in superuser because I want to access GPIO.

I've tried reflashing the PocketChip, but it didn't help.

0 comments


Cart #41029 | 2017-05-27 | Code ▽ | Embed ▽ | No License
143

Also available on itch.io, Indiexpo, and Kongregate.

Walkthrough

Kelin's artwork:
https://www.pixiv.net/en/users/12757087/illustrations/Kelin

--

Hello, Everyone!!
This is my first game... in PICO-8.

The game is about Kelin who has a job to deliver a package to her client. However, rain comes and Kelin has to stay in an unused old house because the path to cave is blocked. She is also hungry. Help Kelin find food and something to rid the cave block in the old house with adventure gameplay mechanic!

[ Continue Reading.. ]

143
66 comments


Cart #40233 | 2017-05-06 | Code ▽ | Embed ▽ | No License

For my first project, I'm making some relaxing scenes based on the seasons. Very much a work in progress now...

Scene 1: Summer [in progress]

press [x] to randomize the clouds.

0 comments


Cart #40228 | 2017-05-06 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
16

Just a simple little 2D-rotation example.

The function takes a 2D position (X,Y) and rotates it by ANGLE. CX,CY represents the center/pivot point.

The lines of code in the middle are the rotation matrix:

local rotx=cosa*x-sina*y
local roty=sina*x+cosa*y

This rotates a point around the origin. Before and after doing so, we offset our position by our center coordinate - this lets us rotate around any arbitrary pivot point.

For bonus points: When you're rotating lots of objects by the same angle (like a camera rotating, or a complex prop rotating), you can re-use your SINA and COSA values.

16
3 comments



This is a playing cards library, spent quite a while on it.

It allows you to both store playing card data and render the data. Read the comments for usage.

8
2 comments


Cart #40200 | 2017-05-04 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

This is my Blackjack cart. I don't plan on doing much more with it, as I've moved onto other things for the time being. If anybody wants to finish it up or post fixes, I'll update it with credit :)

1 comment


Cart #40192 | 2017-05-04 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
37

It's May the 4th, otherwise known as Star Wars Day - so I made a little something :).

Swing away, and may the gamedev force be with us all! :)

37
3 comments




Top    Load More Posts ->