Log In  

BBS > Community Superblog
All | Following | GIFs | Off-site

Cart #picoclash-0 | 2022-11-13 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
1

Pico Clash v1

Pico Clash is a two player card-based real time strategy game.
There is no AI implemented, so you have to find a second player to play the game.

There is not much polish done, but the game is playable.

The game is inspired by Minion Masters or Clash of Clans.

Controls

  • Move cursor with arrow keys.
  • use x to cycle through cards
  • use o to play card at cursor position, if you have enough mana

The goal is to destroy the enemy tower.

Todos

  • nice start screen with explanation
  • more cards
  • more maps
  • staging screen where each player can configure its deck

I'm open for collaborations on this. Better GFX or discussion on improvements would be welcome.

1
0 comments


Cart #ladybug-2 | 2022-11-13 | Code ▽ | Embed ▽ | No License
26

How to Play

Use the directional keys to move the “Lady Bug” 🐞 and eat all the white seeds (dots) on the course.

Don’t let the 🐞 be eaten by the predatory “Enemy Bugs” 🪲 that chase the 🐞 around the screen. Use the turnstiles to allow the 🐞 to dodge the 🪲.

The 🪲 cannot turn the turnstiles. If the 🪲 hits a 💀, it disappears and is sent back to the bug box in the center of the coarse.

When the 🐞 hits the skull 💀 or is eaten up by a 🪲 , it disappears.

When players lose all the 🐞, the game is over.

Scoring

The scores awarded when various things are eaten up by the players’ 🐞 are as follows :

[ Continue Reading.. ]

26
18 comments


Cart #ppsketch-0 | 2022-11-12 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2


PicoPicoSketch is a drawing tool I made with my boyfriend to learn how to use PICO-8.

'helpbox' is referring to the box housing the controls list at the top of the screen.

Controls clarification

move - Moves the cursor.

draw - Paints the selected brush at the cursors location.

brush - While held left/right cycle through brush shapes and up/down toggle eraser.

RWGB - Secondary arrows toggle between the available colours.

wipe - Clears the canvas.

shade - Toggles between darker and lighter colour shades.

help - Toggles the controls info box.

*Excessive use of the draw tool will lag pico-8, this can be mitigated by the wipe tool.

[ Continue Reading.. ]

2
2 comments


Hello.

First off, I am aware that you can poke a string via P8SCII:

@addrnnnn[binstr] poke nnnn bytes to address addr
!addr[binstr] poke all remaining characters to address addr

Yet that is a little unusual for us beginners and I would like to suggest @zep that you add this ability to poke() so you can have poke(addr,string) which would take the entire contents of that string and convert every character to a byte and POKE it in the memory location stated.

In return this should also have PEEK thus: string=peek(addr,len) which would transfer the contents of memory addr with a length of len to the string in question.

Bonus for poking arrays and peeking arrays additionally.

poke4(addr,array[]) which would normally take the array which uses 4-bytes per element and stuff that into memory addr Same with peek array[index]=peek4(addr,len)

However these other two would be nice, poke2(addr,array[]) and array[index]=peek2(addr,len) where in this case array[] would not contain a decimal value and only return a number from -32768 to 32767.

[ Continue Reading.. ]

0 comments


Hello.

-- clear screen
cls()

-- remap screen from standard
-- 0x6000 to 0x8000. does not
-- work.
poke(0x5f55,0x80)

-- plot a single pixel there.
pset(0,0,7)

-- should return 7, does not.
?peek(0x8000),0,64

I was not aware there was a limitation for poke(0x5f55),mempage to ONLY work for the regular screen (0x6000) and the spritesheet (0x0000) - no other memory location !

I would like to request, @zep, that the memory chosen for both poke(0x5f54) and poke(0x5f55) can be anything at all, especially allowing for 0x8000 0xa000 0xc000 and 0xe000

It would sure help me a lot in my code. All of these in fact: pset(), pget(), line(), rect(), rectfill(), circ(), circfill(), oval(), ovalfill(), cls(), print(), spr(), sspr(), and clip().

Would anyone else like this ability ?

3
2 comments


Be aware, ZEP just fixed this. Thanks, Zep !

Hello.

If you click on your user name (see the golden arrow above) and icon that appears in the top-right-hand corner of this website (Lexaloffle), a small menu will appear beneath that.

If you click on Profile you get a page that shows all your posts and cartridges.

To view just the images of cartridges you've written, click on Cartridges.

And it will show you the cartridges you've written.

OK now here's the problem. If you scroll down a bit:

You will see carts you've not only written yourself but carts you've written on OTHER people's threads.

May I suggest there be an option to list ONLY the carts that you've written yourself - where you are the author of the thread.

[ Continue Reading.. ]

1
2 comments


A sort of computer virus.
It is able to spread and has a maximum depth of 3.
It won't spread to other hosts but is able to travel up between folders (don't know why).

As soon as you run it, it begins the process, so be careful, I guess.

Cures

Deleting the cartridge,
Renaming everything important to you so that the name has a -(hyphen), including folders,
Or putting the cart in a folder with nothing in it.

Cart #cvirus-0 | 2022-11-12 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
1

UFNR doesn't (in this case) stand for anything.
Definition of computer virus (for the nerdy ones): a piece of code that can duplicate itself, with usually a harmful intention or effect. UFNR can spread but doesn't really do anything else.

1
1 comment


Cart #lina_a_fishy_quest-5 | 2023-02-13 | Code ▽ | Embed ▽ | No License
16

Lina: A Fishy Quest

This project is an entry for the 20 Seconds Game Jam!

Controls:

Story:

Sometimes our little witch needs some relaxation and Sour Cream demands fishes for dinner, so let's help Lina find the perfect catch! 🎣

Gameplay:

Hook fishes to earn points, fishes from the deep earn you more!

Avoid the Junk if you can, it will reduce your score!

You have 20 seconds to earn the most points!

Bubble streams will move everything up or down depending on their direction! Be careful, your hook is deployed all the time, move it away from junk floating on top!

Support:

If you like my work you can purchase the standalone binaries for this game! If you would like to see more games, gamedev blogs, pixel- and voxel arts check out my Ko-fi page, where you can support me if you want!

[ Continue Reading.. ]

16
3 comments


This isn't really anything special, just a little quality of life improvement I've found handy and keep in a file of utility functions I use frequently.

Overloads sub() so it works on arrays as well as strings. I find it useful to be able to slice and dice arrays in the same way as strings and especially now that we can index strings with square bracket notation the difference between them isn't always important. I've got something with a length and I want a sub-section of it. Makes sense to use the same function for both, in my mind at least.

_sub = sub

function sub(lst, i, j)
   if type(lst) == 'string' then
      return _sub(lst, i, j)
   else
      local r = {}
      for n=i,j or #lst do
         add(r, lst[n])
      end
      return r
   end
end

Creates a new array without modifying the original. Doesn't handle negative indices because I've not really needed them so far but it would be easy enough to add.

Potentially a feature suggestion @zep? I don't mind writing the function myself but I'd also be happy not to. But maybe I'm the only one who finds it useful.

[ Continue Reading.. ]

2
3 comments


Cart #proserpinasquest-3 | 2022-11-13 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
37


Demons have invaded the village of the necromancers! Help Proserpina and Jack, her trusty Will-O'-the-Wisp, to destroy them all.

Proserpina's Quest is a Breakout Game.

Controls:

Proserpina's Quest is playable with keyboard, gamepad or smartphone.

Hit Jack ❎/[x] to destroy all the demons!
Take potions and magic items to slow down Jack, make him more powerful,gain a life or gain a time bonus.

Credits:

Design, Art, Code: Fred Osterero
Musics: Nicolas Grandgirard

Tales from the Necropolis

Do you want an other adventure in the dark world of the necromancers? So play

[ Continue Reading.. ]

37
14 comments


Sorry, I guess? is a

file flooder.

And as usual, it needs to be executed in the app, otherwise it just displays Sorry, I guess?
This is because it uses ls().
It is my biggest cart ever with,

Drumroll please...

32875 characters

158% compressed size(almost).

10 file version:

Cart #flood_1-0 | 2022-11-12 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

64 file version:

Cart #flood-0 | 2022-11-11 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

Sorry for any damage.
It is harmless and can be removed.

[ Continue Reading.. ]

2 comments


Hello.

I would like to request a feature that was available in GFA years ago via bitblt() for bit blitter object.

While you can indeed do SPR() or SSPR() to transfer the entire contents of the SPRITESHEET (0x0000) to the display (0x6000) I would like to add that memcpy() have an added argument.

memcpy(dest,orig,len,transparent)

if transparent is not NIL then it assumes you are transferring pixel data and as such will modify memory as if you were using SPR(). So any colors that have the transparent flag will come into play.

While I know you can use 0x5f54 and 0x5f55, which does not work for map(), see this link for details on that:

https://www.lexaloffle.com/bbs/?tid=50158

Instead of changing the sprite and screen location, it would be far easier to transfer memory with transparency than poke to screen write to and spr() or sspr().

You could layer your screens.

function screen()
  cls()
  memcpy(0x6000,0xe000,0x2000,1)
  memcpy(0x6000,0xc000,0x2000,1)
  memcpy(0x6000,0xa000,0x2000,1)
  memcpy(0x6000,0x8000,0x2000,1)
end

[ Continue Reading.. ]

0 comments


as a minesweeper i can confirm that this is, indeed, minesweeper.

Cart #kitegijge-3 | 2023-03-19 | Code ▽ | Embed ▽ | No License
1

1
2 comments


Cart #tictactoebyjpp-0 | 2022-11-11 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
3

Here is my port of the famous game TIC TAC TOE on Pico-8.

You play against the computer, and there are 3 artificial intelligence modes:
Easy, normal, hard

3
0 comments




Cart #redagainstblue-0 | 2022-11-11 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
3


Quick 12 minute local two player game. Wanted to try and make a game under 20 minutes and this was a fun idea to try. Hope you enjoy! First game posted here and am open to feedback, though I might not see it right away.

Have fun tappin'!

Cashmere <3

3
5 comments


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

here is a demo cartridge for using the DevKit.

Move the frog using the virtual buttons or by turning the mouse wheel.
Mouse information is displayed at the top left of the screen

Have a nice day !

Jean-Philippe

2
1 comment


In the manual (version 0.2.5c), for the MAP command it says:

CELL_W and CELL_H default to 128,32 (the top half of the map). 
To draw the whole map, including the bottom half shared with 
the sprite sheet, use:

MAP(0, 0, 0, 0, 128, 64)

It seems this is no longer true. Calling MAP with no arguments will in fact draw the whole map,
including the bottom half.

(PS: It's better this way IMHO. Don't change the code. Just update the manual.)

1 comment


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

(v00 11-10-22)
TO LOAD THIS PICO-8 CART, in immediate mode, type: load #map256x128

To navigate use the arrow keys. Note the 1st and last tile in the map set are blank to show all 32768-tiles are in use.

Hello there.

With extended memory comes extended responsibilities, and one of them is the new ability to reroute the mapper to high memory.

As you know or should you have free RAM located from 0x8000-0xFFFF, a cool 32768-bytes for use.

So what this program does is take advantage of the fact you can now reroute the mapper from default location 0x2000 and instead point it to 0x8000.

Then memory is filled with random numbers 1-4 to show the sample 1-4 tiles.

[ Continue Reading.. ]

3
2 comments


Hello.

I am working on some code to use the spritesheet as screen memory as detailed in the Pico-8 help:

0X5F54 GFX:    can be 0x00 (default) or 0x60 (use the screen memory as the spritesheet)
0X5F55 SCREEN: can be 0x60 (default) or 0x00 (use the spritesheet as screen memory)
0X5F56 MAP:    can be 0x20 (default) or 0x10..0x2f, or 0x80 and above.
0X5F57 MAP SIZE: map width. 0 means 256. Defaults to 128.

Unfortunately map() does not work in ANY capacity to draw directly into the spritesheet.
@zep, Please have this fixed for next release !

Here is the code:

-- show map() does not work
-- for screen/spritesheet swap

for i=0,31 do
  for j=0,31 do
    mset(j,i,rnd(3)+1)
  end
end

cls()

-- take your pick, none work!
poke(0x5f54,0x00,0x00)
--poke(0x5f54,0x00,0x60)
--poke(0x5f54,0x60,0x00)
--poke(0x5f54,0x60,0x60)
cls(1)
map()

-- copy spritesheet to screen.

memcpy(0x6000,0,0x2000)

[ Continue Reading.. ]

2
15 comments




Top    Load More Posts ->