Log In  

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

In this game, you're a cute little paper plane who flies around, collects red dots, and avoids bombs! There's high scores, a rainbow trail, and a few short tracks to fly around to. Have fun!

This was made at Squiggly River's October 2022 Camp Jam. If you're in Brisbane, Australia, come check us out!

Cart #paper_plane_game-0 | 2022-10-26 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2


I originally intended for this to be a tweetcart or a 1kjam submission, so that's why it uses labels and a whole bunch of gotos instead of _draw and _update😅

2
1 comment


Cart #longislandtrivia-1 | 2022-10-27 | Code ▽ | Embed ▽ | No License
2

2
1 comment


Cart #supergrillboy-2 | 2022-11-26 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
20

Controls

❎ to flip
⬅️➡️⬆️⬇️ to move spatula

Rules

The meat needs to be grilled! But who will grill it? YOU! But, can you handle the heat of all 10 levels?!

The burgers have two sides, when one side is cooked, it turns from white to red, flip the burgers until they have a big wide smile, but be careful the heat gets turned up little by little every level. Will you be able to make it to the Grill Boy hall of fame?

Behind The Scenes

(THIS IS NOT AN AGBIC ENTRY)

A few weeks ago I had just released, "Shoot Em' Doot Em", and was thinking about a project to do next. I sat outside facing the setting sun. And remembered something...

[ Continue Reading.. ]

20
4 comments


Cart #bezedit-0 | 2022-10-26 | Code ▽ | Embed ▽ | No License
4

Controls

Left: Restart animation
Down: Show/hide curve handles

Mouse: Select or move a curve handle
Left Mouse Button: Drag a curve handle

x: Add a new point to the curve at the current mouse position
O: Export curve as a Lua table (Paste it into the cartridge code to save!

4
6 comments


Cart #mcg_qdlst-0 | 2022-10-26 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
10

Recently, I've been futzing around with the wave function collapse algorithm. The original WFC is a titch heavy for PICO-8, so I've been experimenting with shortcuts and hacks to make something small and light enough to be practical in a PICO-8 game.

It's still quite early in development: it's optimized for readability, not compactness, there's probably more performance I can get out of it, and I'm pretty sure I have an off-by-one error lurking somewhere. All that said, it's giving interesting, useful results so far!

10
8 comments


Their DevTerm got middling reviews, if I recall correctly. This one has an all-metal body and maybe will fulfill the promises that the PocketCHIP couldn't keep? Pico-8 (and fantasy consoles in general) is explicitly noted as one of the use cases.

At any rate, I know there's a subsection of Pico-8 users looking for "the perfect portable device." I'll be curious to see reviews on this.

https://www.clockworkpi.com/uconsole

4
17 comments


Comic 128x384px example using P8scii One-off chars

A vertical comic strip three fullscreens tall
An example for the gfx method and spritesheet-to-p8scii string converter described here:
https://www.lexaloffle.com/bbs/?tid=49901

Cart #comic1offx3-0 | 2022-10-25 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
5

Please note, in this example the 3 screens are gradually less optimised for this method:

  • screen 1 at the top has been cleaned up of most stray pixels and recoloured manually in some parts;
  • screen 2 in the middle has a few minimal edits;
  • screen 3 raw image, not optimised, a few colours but stray pixels increase the char count.
5
4 comments


hi am lifetime and my scratch account is rudrak2

1 comment


Cart #circle_hunter_v2-0 | 2022-10-25 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
9

I made some changes on austinmerrick's great and simple idea. I didn't touched to base game mechanic, only added:

  • Max score counter. It automatically save your score, and load for you next time
  • Error counter. Counting how many times you missed an oppurunity to collect a score

Original cartridge here: https://www.lexaloffle.com/bbs/?tid=48139

9
1 comment


I've been putting some pico-8 games up on a personal website since it gets past an annoying block list, but I've noticed something strange. The games with highscores that save via cart data sometimes get reset back to their original states with none of the highscores. I checked in the developer menu and saw that cart data was being saved to local storage in the browser. I'm wondering if this is a known issue, hopefully with a known solution, or if there's something I'm doing without realizing it that's causing the data to be reset.
Thanks

1 comment


Cart #pck404_wfc_stm-0 | 2022-10-25 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
17

This is my take on the wave function collapse algorithm in one of its simple variants : the simple tiled model.

Given a set of tiles and some adjancency rules, the algorithm tries to produce an image. It can be used for levels generation, pattern-like backgrounds and can also be used for non-visual data.

How does it work ?

This cart contains a few demo tilesets and rulesets that you can navigate between with the left and right arrows.

Sometimes the algorithm gets stuck (shown with red tiles). This happens when there is a contradiction : the rules won't allow any tile to be placed on a position. Press X or O to restart.

Yeah but, really, how does it work ?

[ Continue Reading.. ]

17
7 comments


One-Off GFX

To display fullscreen images with a PRINT command. It doesn't take any space in your spritesheet, it uses p8scii one-off characters all in one string (~3000chars if used properly).

This is an old school method widely used in the 80s (e.g. on ZX Spectrum): each 8x8 block had a foreground (ink) and background (paper) colour, monochrome but using the colours well would deliver excellent pictures for title screens.
Now, One-Off GFX is based on that method but could also have more than two colours in a single block (at the expense of extra chars).
So -differently from other image compression methods- it doesn't really matter:

  • how complex the pixel patterns are in the gfx (dithered or plain)
  • how many colours are present overall on the screen

It just depends on how many colours are present in each 8x8 block; better keep it less than 4 and possibly just 2 in most of the blocks choosing wisely while drawing or editing the pic. A good drawing tool to improve monochrome skills is Multipaint (choose c64 hires mode)

[ Continue Reading.. ]

33
18 comments


Yo @zep,

I realize returning nil out of bounds is less "friendly"-seeming, but after reading another post in here, I realized it's way more useful.

For one thing, it should make this work:

plain_text = "my thing that is mine"
label = ""
for c in all(plain_text) do
  if c == ' ' then
    label ..= '_'
  else
    label ..= c
  end
end
print( label )  -- "my_thing_that_is_mine"

(Right now it never stops because the iterator keeps seeing "" instead of the nil it needs to terminate.)

And for another, returning a nil is much more likely to alert a programmer that their code is probably malfunctioning than returning an empty string. Accessing out of bounds is usually erroneous and should therefore trigger errors.

I realize some apps are probably already abusing the fact that you get an empty string when referencing past the end of the string, but really that's a bad programming pattern to be teaching people anyway. It's lazy, you should know where the end of the string is and stop there instead of expecting the OS/API to be your nanny and stop you from walking off of a cliff.

[ Continue Reading.. ]

4
8 comments


Cart #snake_plus-0 | 2022-10-24 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

Snake+

For my first "completed" project, I wanted to build something small and fun while getting familiar with Pico-8 and lua.

I'm not sure if I'll continue working on this, but would love any ideas/suggestions!

1 comment


Cart #bogs_beans_v0_6_1-0 | 2022-10-25 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
3

older versions:

Cart #bogs_beans-0 | 2022-10-24 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
3


My new game - made in pico 8 edu

-plot-
Bogg's 9 beans have gone missing!
He needs at least 4 to make his casserol!
Now go find them inside the mountain and bring them back to his house!

-controls-
arrows to move
x to see inventory

-Code by me (toblerone aka rinkachi-rinkitata) -
-Thanks to @thattomhall for who stole the coal? https://www.lexaloffle.com/bbs/?tid=40913 -

[ Continue Reading.. ]

3
6 comments


Small minesweeper clone.
Keyboard controls: Arrows to move yellow selector. x to flag, z to sweep.
Mouse controls: left click to sweep, right click to flag.

sweeping on already cleared cells auto-flags or auto-sweeps if the solution for the square is clear from the label and adjacent uncleared or flagged cells.

Cart #sweeper-0 | 2022-10-24 | Code ▽ | Embed ▽ | No License

0 comments


Hey all,

So what I'm trying to do is this... I've used a rotary spinner controller that reads as a mouse axis on other platforms before (Unity). I can get the 'velocity' of the spinner controller by reading the difference in mouse X values between frames. I enabled mouse support on PICO-8 to try a similar thing with PICO (a rotary spinner PICO-8 game! How cool would that be, right?); however, I noticed the mouse position no longer updates beyond the end of the screen, which is somewhat expected. In fact, I don't know why it works on Unity/Windows. This means the 'spinner' has a definite start and stop and I can't spin the spinner indefinitely and continue to measure its virtual velocity in this way.

Is there a way.... to 'write' a new mouse position so I can have the mouse 'wrap' around the edge of the screen? I know this is sort of an.... off the wall issue to be having but any thoughts are appreciated!

Nick

3 comments


Cart #pico_pong_online-3 | 2022-10-24 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
11

NOTE: In order to play this game online, go to https://pico-pong-online.herokuapp.com/

This game is one example of how to make online multiplayer games with pico-socket, a new library that I've been working on, that came out of a collaborative project with Ethan Jurman and his Tiny Tanks game

You can read some of the finer details about the pong game here: https://github.com/JRJurman/pico-pong-online

For a smaller example, and details around the library, and how to use it, check out the project on github. Below is an abridged version of the README and how it works:

[ Continue Reading.. ]

11
7 comments


I know a lot of people, myself included, usually write their pico~8 code a little off the cuff tinkering with it until it works. Which tends to be more fun in my experience. But it can also be incredibly frustrating if I'm working on sometime more complex where every time I change something I break something else. And in those cases planning out some formal tests helps me maintain my sanity and get the thing actually working much faster than I probably would otherwise. And since I'm working on something fairly complex at the moment, I took a bit of a detour and put together a little test framework and thought I'd make it available for anybody else who might find it useful.

The code is on github: https://github.com/jasondelaat/pico8-tools/tree/release/testo-8
Or you can just copy it here:

--------------------------------
-- testo-8: testing framework
-- copyright (c) 2022 jason delaat
-- mit license: https://github.com/jasondelaat/pico8-tools/blob/release/license
--------------------------------
do
   local all_tests = {}

   local function smt(t, mt)
      return setmetatable(t, {__index=mt})
   end

   local function shallow_copy(lst)
      local copy = {}
      for l in all(lst) do
         add(copy, l)
      end
      return copy
   end

   local function filter(f, lst)
      local results = {}
      for l in all(lst) do
         if f(l) then
            add(results, l)
         end
      end
      return results
   end

   local execute_meta = {
      execute=function(self)
         local result = self[4](self[3](self[2]()))
         if self._cleanup[1] then
            self._cleanup[1]()
         end
         return {
            result,
            self[1]..self.when_txt..self.result_txt
         }
      end
   }

   local when_result_meta
   local result_meta = {
      result=function(self, txt, fn)
         local t = shallow_copy(self)
         t.when_txt = self.when_txt
         t.result_txt = 'result '..txt..'\n'
         t._cleanup = self._cleanup
         add(t, fn)
         add(all_tests, smt(t, execute_meta))
         return smt(self, when_result_meta)
      end
   }

   local _cleanup
   local when_meta = {
      when=function(self, txt, fn)
         _cleanup = {}
         local t = shallow_copy(self)
         t.when_txt = 'when '..txt..'\n'
         t[3] = fn
         t._cleanup = _cleanup
         return smt(t, result_meta)
      end
   }

   when_result_meta = {
      when=when_meta.when,
      result=result_meta.result,
      cleanup=function(self, f)
         add(_cleanup, f)
         return self
      end
   }

   local given_meta = {
      given=function(self, txt, fn)
         local msg = self[1]..'given '..txt..'\n'
         return smt({msg, fn}, when_meta)
      end
   }
   function test(name)
      _cleanup = {}
      local t = smt({name..':\n', _cleanup=_cleanup}, given_meta)
      return t
   end

   local function run_tests()
      cls()
      cursor(0, 7)
      local results = {}
      for t in all(all_tests) do
         add(results, t:execute())
      end
      local failures =
         results and filter(function(r) return not r[1] end, results) or 0
      if #failures == 0 then
         print('all '..#all_tests..' tests passed!', 0, 0, 11)
      else
         for f in all(failures) do
            print(f[2])
         end
         rectfill(0, 0, 127, 6, 0)
         print(#failures..'/'..#all_tests..' tests failed:\n', 0, 0, 8)
         cursor(0, 127)
      end
   end

   function _init()
      run_tests()
   end
end
-- end testo-8 ------------------------------

[ Continue Reading.. ]

1
0 comments


Cart #spacewar_pico-1 | 2022-10-23 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2

Hello, it's me again! After finishing the Asteroids clone, I wanted to make a "sister" game of sorts, so I made a Spacewar clone! Including gravity, and a sun to crash into! No AI, so you need a second player to play this with! It took a bit of time to get the second player to work, having to convert the player into a tabled object. I hope this one works well, too!

Thank you very much!

2
1 comment




Top    Load More Posts ->