Log In  

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

I know this isn't strictly speaking Pico-8 related but I'm not much of a programmer and I get the feeling that a lot of the clever techniques that I see used here are...um...algorithmically standard things in terms of doing 2D graphics and movements and things like that and can probably be used in any 2D game programming language/library.
Does anyone know of any 2D gamedev resources to learn more that explain the math/algorithms involved in simple 2D games and effects? I've done exactly one game in Pico8 and it took a very long time because I don't know how to implement things that appear to be standard 2D videogamey things. Absolutely everything I know about game programming is in that game and it's basically just Pong (again).

Sorry for the off-topicness and potentially vague question.

1
7 comments


Cart #38807 | 2017-03-28 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
6

This entire cart is 243 characters (plus six sprites). The code is just:

k,f,q,b=64,0,sqrt,btn
x,y=k,k::a::cls(12)for j=3,k do
s=j/4
sspr(q(q(s))*16-f%8/4,1,k+k,1,k-j*32,k+j,k*4*s,1)end
r=b(1)p=22
if(r)x+=2,p=16
if(b(0))x-=2,p=16
if(b(2))y+=1,p=k
if(b(3))y-=1,p=70
spr(28,x+8,99,4,2)spr(p,x,y,6,3,r)flip()f+=1
goto a

It was a successful attempt to code the basics of a game in two tweets. There's actually enough room to clamp x and y to the screen. I hope someone will use this as a starter to make a real game.

6
9 comments


Maybe it's just because it's late and I'm a bit fried...but hoping another set of "eyes" can help me think about map numbers.

I'm making another shmup. I have a map that is full-width and full-height (16,64) serving as the background. I have the map moving down with viewport being the bottom 16x16 of the map. So the initial map placement on screen is 0,-384

map(0,0, 0,-384, 32,128)

I have a bunch of flagged sprites in the map that can be hit by bullets. I know how to use fget+mget to check the sprite flag.

The issue I'm having is how to get the x/y of the map tile while it's moving.

I know I need to use the bullet's x/y but I don't know how to match that up to the tile on the map that is scrolling by. I'm guessing it's some sort of offset(?) but I don't know what that would be or how to calculate it into a map tile position.

I'm moving the map down by .25 each tick. It's something that I need to track when a map row goes off the bottom of the screen or something...I dunno...my brain hurts. If you think of something, please share...maybe this will make more sense by lunchtime tomorrow :)

mapy=-384
function _draw()
	cls()
	map(0,0, 0,mapy, 32,128)
	mapy+=.25
end
4 comments


by
Cart #41166 | 2017-05-31 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
80

I loved these old "programming" puzzle games in the Apple II era, like Rocky's Boots and Robot Odyssey. I thought it seemed like a good fit to do something similar for pico-8, since unlike most programming games we don't need full keyboard input, we can get by with just two buttons.

Older versions:


Cart #40902 | 2017-05-23 | Code ▽ | Embed ▽ | No License
24

Cart #40556 | 2017-05-14 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
24

Cart #39999 | 2017-04-28 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
24

Cart #39784 | 2017-04-19 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
24

Cart #39571 | 2017-04-12 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
24

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

Cart #38890 | 2017-03-31 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
24

Cart #38793 | 2017-03-28 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
24


24
23 comments


Hey, fellow Picos.
I am currently working on a book aiming to teach kids code games with PICO-8. Target audience is aged 8-14, so it will be a quite slow, careful approach suitable for all kinds of beginners, not just kids. I am writing it in both english and german (will have to have the english proofread though) and plan to initially fund it on kickstarter.com.
I would love to showcase some of the bestlooking games in it to show what's possible with Pico, will be going to approach some of you eventually to ask for your permission.
I have been teaching game development for kids for some years in a primary school and currently teach marketing- & management-students to make games using Pico.
If this sounds interesting to you, I'll keep you posted in here.
Best,
Tassilo

10
20 comments


Cart #38758 | 2017-03-26 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2


Like Yahtzee, but nacht—I mean, not. The rules slightly differ from Yahtzee. You can read about it on Wikipedia here.

Controls
[o]/z: hold die/select scoring category
[x]/x: roll
left/right: choose die and scoring category
up/down: switch between rolling and scoring

I made this a while ago, but never made the finishing touches (like a title screen). I still haven't, but I thought I'd upload it anyway.

2
0 comments


Cart #38748 | 2017-03-26 | Code ▽ | Embed ▽ | No License

1 comment


Cart #38801 | 2017-03-28 | Code ▽ | Embed ▽ | No License
3

Here's the whole thing:

k,i,q=64,0,sqrt
cls(1)memset(i,223,k)::a::for y=3,k do
s=y/4
sspr(q(q(s))*16-i%8/4,0,k+k,1,k-y*32,k+y,k*4*s,1)
end i+=1 flip()goto a

Leverages memset for the checkerboard, piggybacking off some code for the background rendering in my upcoming PLAT4MER cart.

3
6 comments



Why settle for single renderings of a Mandelbrot when we can smoothly zoom in?

Features:
--Dithered Palette Animation
--Smooth Bilinear Zoom from sprite buffer
--Background Rendering of Mandelbrot into a (third?) buffer

The way this works is that we graphically zoom into initially rendered view of the Mandelbrot from the sprite buffer. While doing this, we are drawing the next level of Mandelbrot zoom into a second background buffer. When it's done, this gets copied into the zoom/sprite buffer. Lather, rinse, repeat.

Overall, a neat effect I think. Though, I wonder if I should trade the (more or less) smooth frame rate and dithering for less chunky pixels.

Also, I realize that I am awful at spelling "Mandelbrot".

-Electric Gryphon

16
3 comments


Lesson: DON'T POKE VRAM.
Or poke anything for that matter.

Results: cartridge.

How did I manage to do this? I do not know in the slightest.

Anyways, enjoy.

EDIT: It also messes up audio.

-- WARNING --

Shrill and loud sound in the beginning!

THIS CODE MESSES UP YOUR PICO-8 SESSION!

DO NOT, I REPEAT, DO NOT RUN THIS IF THE SESSION IS IMPORTANT!

The colours in the shell WILL go weird after using this!

Please restart your PICO-8 with REBOOT or SHUTDOWN after using this!

-- New and improved version! --

No more shrill sound!

Cart #38733 | 2017-03-25 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2

-- OLD VERSION --

[Warning!]
Loud sound in the beginning!

Cart #38731 | 2017-03-25 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2

2
1 comment


Cart #38726 | 2017-03-25 | Code ▽ | Embed ▽ | No License
16

First Pico-8 game. Sorry it's Pong/Arkanoid again :) This is pretty much done simply because I can't think of anything else to add. I had to learn Lua at the same time so the code is probably pretty horrible. I'll update it for bug fixes and that but I'm probably going to move onto something else after this.

  • 16 levels.
  • 7 power ups.
  • Persistent high-score.
  • Whizzy particles.

Yeah, I guess that's it. Many thanks to the Pico-Hero guy for getting me started.

16
4 comments


But is there any guides to installing this on a Raspberry Pi 3 that's running Raspbian? I've managed to transfer over the files and extract the folder but I have no clue as to how I'm supposed to run the program. I did make sure to download the rPi version as well.

Sorry if it's a bit of a newbie question. Just really want to try this thing out :)

2 comments


Hi,

I'm trying to record an animated GIF under Linux in PICO-8. It records it fine according to PICO-8, but I have no idea where the file is located. I've done a file search for GIFs under my user directory and nothing turns up. Nothing under $HOME/Desktop where I'd expect it to be.

Little help?

8 comments


Cart #38710 | 2017-03-25 | Code ▽ | Embed ▽ | No License
1

baby steps into my pico 8 adventure aaaaaaaaaaa

press z for OPEN MOUTH. that is all.

1
0 comments


Just my intro.

Easy enough to plop in front of anything, really

just copy and paste

Press O/A/Circle to skip

Dev timer at the bottom

Cart #38690 | 2017-03-24 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

0 comments


I know this is a small thing, but I often forget to quit pico-8 and I leave it running in the background overnight, which prevents my Mac from sleeping. Maybe it could be tweaked so that pico-8 only blocks the display from turning off/computer from sleeping when it's in run mode?

I tracked it down to pico-8 by running pmset -g assertions which showed:

   pid 164(coreaudiod): [0x001a40d7000197e9] 11:05:27 PreventUserIdleSystemSleep named:
 "com.apple.audio.AppleHDAEngineOutput:1B,0,1,1:0.context.preventuseridlesleep"
	Created for PID: 93582.

PID 93582 is pico-8. So it appears it's because it's keeping the audio channel open.

2 comments


Hey guys,

I wrote a bash script to download/ rename carts from the bbs,

you can download a single thread, or the whole index (50 carts per page), you can also dump carts from your favorite section.

The script rename the cart to include metadata, the downloaded PNGs looks like that:

funfetched_nanoman-1.0_29017_38515.p8.png

the name is arranged with the following structure, uou can easily customize it in the script:

$AUTHOR_NAME"_"$GAME_TITLE"_"$BBS_ID"_"$GAME_ID".p8.png

So it runs on linux/bash, it might work under windows 10 bash (?), not sure i never tried the OS ; tell me :]

I'm not a bash expert, it just works :) if you have suggestion or tips, i will gladly read your comments!

link: https://github.com/kikookoubis/pico-8-carts-bash-downloader

2 comments


Hi everyone!

I am building a small pong clone and I would like the game to pause for 2 or 3 seconds whenever a player is scoring.

I saw that there are out there timer class but, since it was not easy for me to implement that, I wanted to ask if there is a simpler way to achieve this result.

Thanks!

3 comments


Cart #38674 | 2017-03-24 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

  • This is a test to create some echo effect. Initially intended for a game I made (Into the Darkness).
  • The echo simulation is very simple: a sound is played from a given source point in a given direction. The sound propagates at a given speed in this direction and with a given aperture. As it propagates, it is attenuated and reflects on the walls (ideal reflection) with a given absorption.
  • All the parameters (initial position, direction, sound speed, aperture, attenuation, absorption) can be set before launching the simulation.
  • Once the simulation launched, the source can then move and becomes a receiver. The sound echo can only be heard when the receiver is located at the front of the sound cone (red lines).

[ Continue Reading.. ]

0 comments


Cart #38668 | 2017-03-24 | Code ▽ | Embed ▽ | No License
11

Final Project for the Computational Media 164, Professor Adam Smith, Winter 2017

#CMPM164w17

Controls:

Menu:
Up and Down to navigate
Z to choose

Game:
Up and Down to move forward and backward
Left and Right to turn
Z to jump
X to shoot
S to throw grenade
TAB to switch guns
E to enter Warthog
--Z to accelerate
--X to accelerate


Students/Developers:
Geoff Smith
Hiu-Chun Lo
Noah Davidson
Jonix Gabato-Telmo
Nima Bazofti
Nikolai Chen

Code Attribution/Special Thanks:
hungrybutterfly (PICO 8 BBS) - Wolfenstein 3D https://www.lexaloffle.com/bbs/?tid=28423
Zep - his specially made raycast demo cart
Adam Smith - for being a cool dude (and our professor)

11
4 comments




Top    Load More Posts ->