Log In  

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

I think palt() should be just replaced with a single variable that denotes color to be used as transparent, which defaults to 0. Because frankly, we don't need multiple transparent colors, I can't think of a single scenario where this would be useful.

6 comments


it'd be great to be able to output to console via a debug command.

2
11 comments


From where you could select which cartridge to load. Useful when you're unsure where it is or what the name of the cart is (and frankly selecting from the menu would be faster than typing dir, then looking for cart, then typing load cartname, esp. if cartname is long).

1
3 comments


So here's the thing: I have lots of cartridges. So much in fact that they take more than one screen when listing. I'd appreciate if dir command could take /p parameter that would work the same way as this parameter works for DOS dir command.

0 comments


Cart #13825 | 2015-09-08 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
3


a simple effect

3
2 comments


How about version of Voxatron for devices like Rift? The idea is simple: There would be some room, with table on which game of Voxatron would take place (you'd look around using head tracking). To get cartridges, you'd go away from the table to some sort of the box that contains all of your downloaded cartridges. How does that sound?

1
0 comments


I was wondering if it'd be possible to have 60 frames per second option added in future?

Right now Pico-8 runs at 30fps.

NES, SNES, Master System, MegaDrive/genesis could run at 60fps, if you programmed correctly. Otherwise you could drop to 30fps. Or if you lived in Europe you'd get 50/25.

MSX2+ computers could be overclocked through software to double CPU speed.

I'd like this so animations run more smoothly.

Maybe it's possible now through a POKE?

7
62 comments


http://pico-8.wikia.com/wiki/Pico-8_Wikia

For now it's empty, but I hope you could help fill it up with tutorials, useful snippets and other info.

2
35 comments


I find the syntax of sspr involves too much work, so I wrote a wrapper function that requires less arguments and less thinking.

Ladies and gentlemen... zspr

Arguments:
--n: standard sprite number
--w: number of sprite blocks wide to grab
--h: number of sprite blocks high to grab
--dx: destination x coordinate
--dy: destination y coordinate
--dz: destination scale/zoom factor

function zspr(n,w,h,dx,dy,dz)
  sx = 8 * (n % 16)
  sy = 8 * flr(n / 16)
  sw = 8 * w
  sh = 8 * h
  dw = sw * dz
  dh = sh * dz

  sspr(sx,sy,sw,sh, dx,dy,dw,dh)
end

Please let me know if you find it useful.

11
9 comments


We can set seed to any value. But we can't reset it back so it would be random. Could you add this feature?

3
5 comments


my first try ever at PICO-8 coding \:D/

Cart #25366 | 2016-07-15 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
36

sorry for the very bad "music", I did everything in one weekend and the tracker is a bit buggy and hard to use with a french keyboard layout :3

the updated version feature a background starfield, a better logo and the animation use the new _update60 function :)

36
16 comments


This is a major issue when using recoloring extensively, as the cartridge image looks completely messed up. I think it should be WYSIWYG, automatically saving the displayed image, rather than the screen data.

Just to clarify, I'm talking about pal(x,y,1) calls, where the color is re-tinted on display.

1 comment


Cart #13757 | 2015-09-06 | Code ▽ | Embed ▽ | No License
7

This is a game we made for the BBQ gamejam http://bbq.extra-coin.fr/

The idea is to a make a mini old zelda game speed run oriented. Have fun!

Arrow: Move
Use item: X
Swap item: Z

Made by Haunted Tie

http://haunted-tie.itch.io/
http://hauntedtie.be/

7
3 comments


Cart #13739 | 2015-09-06 | Code ▽ | Embed ▽ | No License
85

Controls:
Arrows to move the cursor
Press Z on a unit to select it, then move the cursor to pick a path
X to cancel actions.


Unsettled with the crown, a small group sets off to take the castle by force and defend the throne as their own. Their success will depend on their tactics on the battlefield, and the cunning by which they select their allies.


This is that game your uncle got you for your birthday after picking the one with the coolest looking box, but was too hard and unbalanced for your 8-year old self to beat.

Glad I'm getting to release this before I start work :D Lots of stuff I'm not happy with in this, and lots of stuff that I am happy with. It's a bit rough around the edges, a little too difficult for some runs and (maybe) a little too easy for others. There are definitely some bugs, especially with the enemy AI (but they're not getting fixed - currently sitting at 8192/8192 tokens :P) It's sort of a very simplified tactics-roguelike. It's designed such that you aren't really supposed to win on the first time (or second, or third) thanks to permadeath. You're supposed to play through a couple times and get a feel for how all the units work, what situations they're good in, how many hits from other units they can take, etc. In a perfect world I think I'd have around 4-5 more units in there, but alas, no room.

I think this won't be my last foray into this genre, though. I was a bit out of my comfort zone on this, and I learned a lot about what makes this kind of game fun. I think I'll be able to make something much more interesting the next time around.

85
22 comments


I noticed that 8venture ( https://www.lexaloffle.com/bbs/?tid=2247 ) uses an "unpack" function to define tables from strings, which frees up the code space for like, actual code, by making all tables take up only one token.

array = unpack("1,2,3,4,ideclarea,thumbwar")
table = unpack("x=1,y=2,z=-23.12,hello=there")

This is great, but it didn't support multidimensional arrays or tables! Considering half of We Missed You is literally a huge multidimensional table, a solution to this could greatly benefit more complicated projects, or just people who like doing everything in hilariously roundabout confusing ways. Now you can do things like thiss::

mission = unpack("x=1,y=3,type=0,ents={{x=56,y=76,props={sdir=0.5,scone=0.125,swing=0.12,rate=0.00869,t=0,rad=64},n=218,tfra=8,type=0,update=pvis},{x=104,y=42,props={sdir=0.25,scone=0.125,swing=0.25,rate=0.00869,t=0.5,rad=48},n=218,tfra=8,type=0,update=pvis}}")

[ Continue Reading.. ]

9
1 comment


Hey guys,
I was playing with crazy idea in my mind again and just wanted to give it a go. I was wondering how hard it would be to create emulator for PICO8. Program that can load catridges and play them (read bbs player without bbs). Since it's all based on lua (witch I have no experience implementing) and I am really bad at bitwise operations (witch are really crucial when working with retro stuff) I decided to create one to learn something new. Here is my first attempt. Far from being good or complete and I don't know if I would ever want to finish it...but...you never know :D

Some facts:

  • written in C# .NET 4.5 profile
  • used NLua library/wrapper for code execution
  • cartridge loading from png files (anyone want .net library for this? I can create one)
  • screen is blitted to windows form directly, no graphics libraries used so it's not very fast when scaled up
  • implemented features:
    • _update/_draw methods calling
    • fully working palette manipulation (pal, palt)
    • flipping graphics from ram to vram (flip)
    • clear screen buffer (cls)
    • full implementation of basic sprite drawing (spr)
    • some mathematical functions (flr, sin, cos)

Ps: I am Windows Phone user, I don't think there will ever be official player for my mobile platform so I will maybe create my own :D

Current testing cartridge:

[ Continue Reading.. ]

2
10 comments


The story so far...

I love Hanafuda and I'm making a version in #pico8

First, I drew the cards:

And then made sure it will all fit on a single screen in this mock-up:

Current status:
on hold until after Playdate Hanafuda is released

:)

12
9 comments


Seems like a common request for functions to convert to and from char codes.
Time will show whether it shall be added to the program, but until then you can do it by yourself:

Initialization (59 tokens, 197 bytes):

chars=" !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~"
-- '
s2c={}
c2s={}
for i=1,95 do
 c=i+31
 s=sub(chars,i,i)
 c2s[c]=s
 s2c[s]=c
end

(the blank comment is there solely to keep the editor from glitching out due to lack of escape sequence support)
After this is executed, you'll find yourself with having two tables - s2c, holding char->code pairs, and c2s, holding code->char pairs.
Since using these directly can be slightly less comfortable, here are a couple helper functions:

chr(code) : Returns the char (string) for the given code [13tk\36b]:

function chr(i)
 return c2s[i]
end

Example: chr(33) == "!"

[ Continue Reading.. ]

10
2 comments


Cart #13763 | 2015-09-06 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
3


Pico-8 is pure fun

3
0 comments


Hey!

Has anyone got a suggestion for a sensible way of implementing a menu/selection system in Pico-8? I'm putting together a minigame collection, and trying to keep the code readable when everything has to share the same space (e.g. the init/update/draw loops) is proving a challenge!

Thanks y'all!

4 comments




Top    Load More Posts ->