Hi,
I've been dabbling in Pico-8 since yesterday and am loving it so far! However, I have come up against a really frustrating problem and have spent hours trying to figure out why my code doesnt work. I keep getting a
"then" expected near "=" error up, for the line highlighted in the code below. Any ideas of why this isn't working would be very much appreciated!!!
All the best,
Paul.
player = {}
player.x = 5
player.y = 5
player.sprite = 0
player.speed = 2
crab = {}
crab.x = 50
crab.y = 50
crab.sprite = 9
crab.ran = 1
function mover()
player.moving = true
player.sprite += 1
if player.sprite > 4 then
player.sprite = 0
end
end
function movel()
player.moving = true
player.sprite -= 1
if player.sprite <4 then
player.sprite = 8
end
end
function crabmov()
crab.ran = flr(rnd(2))
if crab.ran = 0 then <------------------
crab.x -= 1
end
if crab.ran = 1 then
crab.x += 1



With that new update that makes pico-8 impossible to read .png files instead of .p8.png files now my whole cartridge folder is useless!
I renamed all 98 carts in that folder to the game's name and now with that new update none of them appears in splore mode! Ive tried changing the file extension to .p8.png and even just .p8 with no results at all. It was such a blast playing pico-8 on my bigscreen TV with the steam link but i guess thats over now because there's no way in hell im redownloading each and every 98 carts.
Im sure there was a reason, but personally im pretty pissed.


Just bought a copy of Voxatron (and PICO-8 with it!) after musing over it as I wait on my PocketC.H.I.P. to arrive (fingers crossed for August)
Anyway, I am a Pixel artist and animator at heart (my heavily My Little Pony based DeviantArt page HERE ) that had been using Stencyl for sometime and decided I needed a breath of fresh air ;)
Hope to be talking a lot with you guys as I learn the ropes of this new environment :)
Oh, and any help or guidance of any sort would be greatly appreciated!

I have a question on the pico-8 palette. Sometimes I observed the behavior, that some colors changes on the pico-8 palette, when messing around with .png's.
For example, if I save screenshot directly from pico-8 and open it in an editor, that red, i.e. is sometimes displayed at R 251, G 0, B 61.
When I open the official pico-8 palette in one editor (in that case PikoPixel, OS-X), than red is again R 251, G 0, B 61. If I open the same file in another editor (Pyxel Edit, OS-X), then red becomes R 255, G 0, B 77. If I import the same image as palette in Pyxel Edit, red again becomes R 251, G 0, B 61.
Is someone able to explain this behavior? Or had similar observations and can help by adding use-cases?


I wrote a little tool, that converts 128x128 .png images to native .p8 code. It does not import the image to mapdata, (like https://www.lexaloffle.com/bbs/?tid=2715), but converts it to native code.
https://github.com/nodepond/pic2pico/
Currently only exact matching colors are transfered into code.
This tool might be useful, if you want a background, but also have sprites for i.e. displaying text. Of of the next features might be some compressing of image data, to show even more images.


Hi everyone! I'm mostly an old school gamer, which is why I'm glad I ran across the PICO-8 the other week and I've been having a bit of fun with it. A pretty cool concept that many people are pouring their hearts and souls into. Hopefully I can do the same eventually, but not being a tech person, I doubt I could do anything other than a demo (if I'm even that lucky!), much less an entire game. Yeah I know, there's tutorials and all, but those are too impossible to try to dive into with a rare illness that causes chronic fatigue when you're trying to concentrate and then you get interrupted by having to nap. Only two more surgeries to go before I'm normal again (whatever that means :P ), but I don't have the money for them right now, so we'll just have to see one day.
Anyway, here's some gaming stuff about myself:
Platforms/systems I own
Atari 7800 (with a few dozen 2600 carts)
Vectrex (hence my user name!)
Sega Genesis
Sega CD
Sega 32X
Some handhelds
Some PC games
Plug and play unit
*Chromebook (some stuff is exclusive to it but I mostly use it for internet gaming)
The family also has a Wii, Ipad Mini and a crappy Android device that I also game on but they're not mine.
And last but not least, some [b]gaming stuff I've founded as well


Pico-8 implementation of Scale2x and Scale3x. Original algorithms by Andrea Mazzoleni
Scale2x:
--[[ sind : sprite index sz_x : x size sz_y : y size sx : screen pos x sy : screen pos y alpha: color to make transparent ]]-- function scale2x(sind,sz_x,sz_y,sx,sy,alpha) alpha=alpha or 0 local offx=sind%16 local offy=flr(sind/16) local soffx=offx*8 local soffy=offy*8 local sizex=sz_x-1 local sizey=sz_y-1 local a,b,c,d,e,f,g,h,i, e0,e1,e2,e3,x0,y0 for y=0,sizey do for x=0,sizex do e=sget(soffx+x,soffy+y) a=e b=e c=e d=e f=e g=e h=e i=e if y>0 then b=sget(soffx+x,soffy+y-1) end if y<sizey then h=sget(soffx+x,soffy+y+1) end if x>0 then d=sget(soffx+x-1,soffy+y) if y>0 then a=sget(soffx+x-1,soffy+y-1) end if y<sizey then g=sget(soffx+x-1,soffy+y+1) end end if x<sizex then f=sget(soffx+x+1,soffy+y) if y>0 then c=sget(soffx+x+1,soffy+y-1) end if y<sizey then i=sget(soffx+x+1,soffy+y+1) end end e0=e e1=e e2=e e3=e if b!=h and d!=f then if(d==b) e0=d if(b==f) e1=f if(d==h) e2=d if(h==f) e3=f end --draw x0=sx+x*2 y0=sy+y*2 if(e0!=alpha) pset(x0, y0, e0) if(e1!=alpha) pset(x0+1,y0, e1) if(e2!=alpha) pset(x0, y0+1,e2) if(e3!=alpha) pset(x0+1,y0+1,e3) end end end |
When I made Nora's Mouse Chase! for p8jam2 last month, it left me unsatisfied. So I started work on my own 2D game engine again. At first I was making it from scratch, but then I realized all the C libraries I had gathered made up basically the same thing as LÖVE anyway, so I switched to using that as the base. There were some other snags and I've had to basically start over a few times, but I'm working out the details as I go.
I don't have anything to show for my work yet, so I don't know why I'm posting... And I certainly don't know why I'm posting it here, of all places. Maybe I just really adore this quiet little corner of the Internet.
Anyway, I've given this project the working name of Nora-Net. The goal? A decentralized online multiplayer game engine and service, capable of supporting at least 100 players per server (although ideally somewhere around 1024 players would be amazing), where the game itself can be edited cooperatively online by admins who can upload new scripts and sprites on the fly and build the world together.
In one sense, the continuing efforts where pico-hotel left off. In another, a decent replacement for BYOND and Second Life, with realtime action gaming in mind. I want Nora-Net to be able to support puzzle games, platformers, and RPGs all just as effortlessly, with a Bitcoin Wallet type of client-side account registration and identification to access server-side save data which servers can share with eachother if set up to allow it.
I want this to be something I can go to as my game engine of choice for all my future projects, an engine capable of virtually any 2D game imaginable, supporting singleplayer, multiplayer, and massively multiplayer, with optimized renderig and networking behind the scenes. I want to run a Mii-like character creation service on it which exports finished character head sprites in a variety of sizes, styles, and poses for other games on the engine to use with their own body sprites to make a unified-yet-customizable avatar for you to take with you everywhere, whether that head is getting tacked on to a space marine or used as a portrait when you win or lose a round of Puzzle & Flower Land 3.
This is too big of a project for me to tackle alone, and I know it. I also have no income and approximately two years left before my life will almost certainly take a turn for worse. But what the hell, let's see where this road takes me anyway. It'll be fun.


... Adam and I work for Warhorse Studios in Prague (designing and implementing adaptive music in the title called Kingdom Come: Deliverance) and for the Czech Technical University in Prague (a researcher and an assistant professor). I also contribute to the Overmare Studios' RPG as the music team leader. I co-founded and write and produce for a band called the Wasteland Wailers which started performing live this year (Berlin, Baltimore). I am interested in interactive audio and music.
My twitter is @adam_sporka.
My SoundCloud is https://soundcloud.com/adam_sporka.
I'm writing a roguelike! it's not even a game at this point, because all the gamey bits are missing (victory conditions, interesting decisions, etc). So you need stuff(monsters, magic, item, traps). But how do you put stuff in?
For the time being I'm doing it when the room is created. The rooms can vary in size a whole lot by design, but I'm kind of worried about having the same amount of stuff in small and huge rooms.
So I decided for he following algorithm:
1: each room has a 50% chance of having a monster, and if it does try again (and then again, etc)
2: rooms bigger than 20-40 locs should have as many attempts to have monsters (so 2 attempts if >30, 3 if >60, etc)
Here's the code. I understand it's really not much, but it does a neat trick
function stock_room(x,y,x2,y2) local area = (x2-x)*(y2-y) -- the size of the room do if chance(0.5) then -- 50% chance spawn_monster(x,y,x2,y2) else area -= random_in_range(20,40) end while area > 0 end |
Hey All
I'm in the process of simplifying the website a little. In particular, I wanted to improve the experience of playing cartridges in threads by removing clutter. They now look more like a page dedicated to the cart:
- The player starts open
- There's a big obvious play button and large thumbnail
- There's no banner at the top of each page


I removed the PLAY buttons from the thread previews, and autoplay, as I think they're no longer needed -- the whole playable region of a cart is now visible without scrolling after opening the cart's thread, and it's more obvious to new visitors what to do next.
There are still a few small things to finish, but let me know what you think of the new layout, and if there's anything that bugs you.









Commencée, délaissée et finalement terminée...
Voici la documentation en français de PICO-8 : PDF.
Je vais progressivement compléter ce document avec mes notes, remarques et projets illustrant les différentes notions présentées (et d'autres selon l'humeur du moment).
Bonne lecture,
jihem

so i started to have a look at carts i could adapt for my own purpose and i've taken zep's collide demo as the basis of my new game: apescape.
here's the story behind the game:
you are an alien (betsigutgrrl) from the planet futon who has come to earth to study humans. you've taken the form of an orangutan, and inadvertently got yourself caught and are now trapped in a zoo.
meanwhile another race of aliens from planet sofa have started to invade earth. can you escape the zoo whilst avoiding the sofarians?
the game is mostly a reskin of the demo, but i've started to keep track collisions between betsigutgrrl and sofarians. this will eventually form the health bar.
power ups will be in the form of fruit and random food left behind in your habitat,

after a few false starts, i've decided to resume game making and allocate my friday commute as my day to do this.
since using pico-8 i've learnt the following:
- writing stuff from scratch is hard
- making graphics from scratch is not so hard
- i care more about game design rather than the coding
so with this in mind, i'm going to use other people's code rather than get bog down by how path finding, collision and ai work.
here's to getting back on the wagon. let's hope i don't die of dysentery.