Log In  

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

PicoTown 1.1b3

Cart #20608 | 2016-05-15 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
7

PicoTown 1.1b2

Cart #20605 | 2016-05-15 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
7

PicoTown 1.1b

Cart #20604 | 2016-05-15 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
7

[ Continue Reading.. ]

7
3 comments


I've made a little tool (Windows only) that helps saving time and keeping organized when working on bigger pico-8 projects. It might be useful to some of you so I'm sharing it here on my blog. To see what it does and does not do, please read the blog post before downloading.

UPDATE: P8Coder is now open source P8Coder on GitHub

19
21 comments


Cart #20549 | 2016-05-13 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

A simple snake clone I made. The next version will include sounds, a title screen, and a persistent high score.

W/A/S/D -move

X -stop

1 comment


Cart #tetromix-3 | 2021-09-07 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
19

Inspired by the PicoMino game, I decided to create my own attempt at replicating the famous Russian puzzle game.

Pretty much all the expected functionality is available, such as 1- and 2-player gameplay, preliminary sound and graphical effects, level (garbage height) and speed selection, etc.

MODES:

The game provides two modes: A (endless) and B (25 lines).

In the A mode, the game continues until any of the players top out (until the game can't put a new piece on top of the playfield).
In a 2-player game, the surviving player is declared the winner.

In the B mode, the game also ends if the player eliminates 25 lines of blocks.

[ Continue Reading.. ]

19
21 comments


Cart #20539 | 2016-05-13 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2

I made a small demo of a rotating globe. The texture effect works visually.
Feel free to reuse the code to improve it or to make awesome games!

2
0 comments


I wrestled with timers last night trying to get my bad guys to shoot bullets on an interval. The problem was with half seconds or less.

Getting a guy to fire every 3 seconds is straight forward, 3*30=90frames

I was trying to create a sequence of bullets so one guy fires every 3 seconds, the next 3.25, the next 3.5 and so on down the line to create a "bullet wave"

My problem is calculating the number of frames for those half seconds. I'm dealing with "human" inputs for configuring the sequence. Something like badGuyShoot(3), badGuyShoot(3.25), badGuyShoot(3.5) and so on...

I'm not sure how to get the decimal part in order to calculate how many frames to use for that time.

3*30=90frames
.25=7.5f so round to 8f

Total frames to get (close to) 3.25 seconds is 98...but how do I get that number? I tried to see if there was a way to parse off the decimal and then use that as a separate number but no luck.

Any thoughts or approaches that you've used are appreciated. Any code or links you can share is even better. Maybe I'm just thinking about it the wrong way too...need some other eyeballs and brains to help.

3 comments


So this needs some explanation. I've never made anything even slightly resembling a video game before. I'm a completely amateur programmer. I'm mostly a journalist and a writer.

For a recent story I wrote, I had to set a goal for myself that I could accomplish in one week. I had seen some Pico-8 games floating around and wanted to give it a try, so I made a game about the experience I had writing the article.

It's pretty raw. It's basically a Simon Says race against the clock, there's no music and the only difference between the levels is you have less time each time. But I've never done anything like this before and I learned a lot in the process. And I had a lot of fun. I hope to improve on this and make another game soon :)

Cart #20527 | 2016-05-13 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

1 comment


Cart #20523 | 2016-05-13 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2

My first effort on Pico-8. Really fun to play with.

Controls:

Z: Restart
Left: Low jump
Up: High jump

2
1 comment


I have pico 8 up and running on my pi2. Everything seems fine except every special key (alt, shift, page-up, etc..) generates a space. Or at least something that looks like a space. This only happens in the console, the editor is fine, and works as expected. The keyboard is a generic en-usa usb keyboard, that works as expected everywhere else in the pi. My distribution is retro-pi current and up to date.

2
12 comments


Hey,

So I updated my pico-8 to a newer version, and it kept all the files I'd downloaded with it. PROBLEM IS, I can't find the cartridge folder in the finder at all (I'm using OSX)? I couldn't even find the folder they were supposed to be in, OR config.txt! But I can load them just fine from pico-8...what's going on here?

Thanks,
Alex

1 comment


Hi! Some folks on the IRC were struggling with metatables, and Ivoah suggested I post an explanation here to help more people get to grips with them. Here goes nothing:

A table is a mapping of keys to values. They're explained quite well in the PICO-8 manual so I won't go into more detail. In particular you should know that t.foo is just a nicer way of writing t["foo"] and also that t:foo() is a nicer way of calling the function t.foo(t)

A metatable is a table with some specially named properties defined inside. You apply a metatable to any other table to change the way that table behaves. This can be used to:

  1. define custom operations for your table (+, -, etc.)
  2. define what should happen when somebody tries to look up a key that doesn't exist
  3. specify how your table should be converted to a string (e.g. for printing)
  4. change the way the garbage collector treats your table (e.g. tables with weak keys)

[ Continue Reading.. ]

49
25 comments


Cart #20503 | 2016-05-12 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
13

I've never read Animorphs, but I have looked at the covers a lot.

(Press Z to transform)

13
3 comments


I discovered PICO-8 four days ago after reading a news in The Verge about the upcoming PocketCHIP. I purchased a license (the voxatron bundle) to see what it was about and since I can't stop playing with and the numerous games / demos.

I looked at some code, read some posts on the forum and thought it could be even more funny to code.

So I decided to start with a Lode Runner remake as my first program.
It might be a bit ambitious as it's been almost 15 years I haven't coded anything serious but I have some time and I'm decided to learn.

It's still at the very early stages, I managed to fit the first level into to 128x128 and draw the sprites set :

and I can display them together :

But that's it for now...

Part 2

Today, after a long weekend, I'm back to PICO-8 devellopement.
Lode Runner runs !

[ Continue Reading.. ]

10
26 comments


When compiled to HTML, it was surprisingly easy to inject data inside a PICO-8 cart.

The memory starting at 0x4300 (user data) maps to index 0x10DA1C of the heap in JavaScript. You can get and set the data easily using JavaScript (wait till the cart is loaded):

Module.getValue(0x10DA1C);
Module.setValue(0x10DA1C, 3);

Then read it or set in PICO-8 like this:

peek(0x4300)
poke(0x4300, 3)

I'm using it for a multiplayer game where I want to allow several players selection only when there is an internet connection (I haven't worked on the multiplayer communication yet though).

The user data section is 6912 bytes long, so that's a lot of data for PICO-8.
Potentially this technique can be used to do all sort of really cool things like leaderboard inside the cart, downloadable levels or players, syncing several players together (chat, collaboration games, multiplayer games...).

Caveats:

  • Not sure if the index in the heap will remain stable across releases. Is it even stable across carts? It must be decided by some internal logic in Emscripten.
  • It works only in web mode of course.
  • It works only when embedded in a particular web page.
6
11 comments


On two DELL keyboards I've tried SHIFT adds a space so entering COMMAND( ) becomes COMMAND ( ) and results in a syntax error. Anyone else experiencing this ? Thanks.

4 comments


Cart #20494 | 2016-05-12 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2


My first attempt at coding something which resembles a video game in Pico-8 :-)

You're the driver of a semi-automatic roof repairing cart and you're undoing the damage caused by the meteorites. The roof of each house can only take so much damage before the entire house is destroyed.

Controls:
LEFT, RIGHT: Drive left and right.
UP, DOWN: Extend or retract the arm of the vehicle.
Z: Make the arm repair the roof. Make sure you're properly aligned with the roof.

Scoring:
+25 points to undo the damage caused by one meteorite strike.
Level up after 200 points scored. A randomly chosen house will grow in size upon leveling up.

Thanks for playing :)

2
3 comments


How can I version control pico-8 source code? It seems like the output is a binary (which technically can be checked in but would be difficult to diff).

How are others doing it?

3 comments


My first game with Pico-8, Pico-2048 !
I like to start a new game engine by program a classic ... yes, 2048 is now a classic ^^

They have two different concepts with "2048". I don't know which is the best and let's players decide.

First Concept
Near "Three" where tiles moving step by step. I like this version, it's more strategic and the player can do what he really want :

Cart #20607 | 2016-05-15 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
17

Second Concept
Near the original "2048" where tiles moving until they can't. More action, more luck ... more fun :

Cart #20600 | 2016-05-15 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
17

[ Continue Reading.. ]

17
10 comments


As I've been reading around game dev boards, seeing a lot about front-loading arrays (tables) with common objects when the game boots. Then just cycling through those arrays to find an unused object and update its variables...essentially just recycling the same objects over and over. I get it and I'm doing that but...

Right now for my shooter game I'm building my array of objects as-needed. So rather than seed a table with 50 bullet objects at the start, I'm adding to that array as bullets are created, then reusing slots as they get deactivated.

Both methods use recycling so that's good. My method is working fine but wondering if there are any big gains in doing the pre-load at boot over build-as-you-go. Or if it's negligible to even worry about.

4 comments


I am sure this has been brought up a few times already. I would really like to see a new version of pico-8 have a widescreen option.
120x160 would be much better, although I am not sure that is possible. Now that people love pico-8, and they want to expand it to the physical world with LCD screens, it seems time to update the aspect ratio from 4:3 to 16:9

I understand it is meant to be retro aspect of 4:3, but that also means it is not fully compatible with 99% of flat screens! I have found a few 8" screens that are 4:3 ratio, but why spend $100 on a screen, just to remove the the black bars? This creates an retro game problem of having empty screen space on each side, making the player wish their screen was a bit taller, every single time they go to play a game. If there were more pixels instead, say 120x160, then the older 4:3 ratio games could have the black bars on the side, and still be compatible with the new, widescreen version.

I feel like this is the natural evolution of what pico-8 users want: we want to use any screen without compromising our screens potential. The new rpi 3 has 2GB of ram, so maybe 120x160 would run well, or maybe the engine is at it's limitations already. I am very happy pico-8 is now catching on like wildfire! I feel that widescreen support would make it unstoppable!

What do you guys think? 120x160, 96x128, or let's be stubborn and stick with 128x128, potentially decreasing new user appeal.

2
25 comments




Top    Load More Posts ->