Log In  

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

Cart #science_gravity_project-0 | 2020-06-12 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

dont mind this cart, its a thing i made for science. the values may not be accurate as i had to use the ones provided by the teacher.

WARNING
PLEASE DO NOT LOOK AT THE SOURCE CODE, ITS VERY VERY VERY MESSY
IF YOU DO CHOOSE TO LOOK AT IT, BE WARNED FOR PERMANENT EYE DAMAGE

1 comment


Cart #yubagigeyi-2 | 2020-06-30 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
15

Hasi noun [colloq.]

German for Bunny

#hasicontent is a micro-game about taking photos of wild Bunnys in your garden for your friends on Instagram.

Carrots bring all the bunnys to the yard, but they cost you 100 likes. But the Bunnys will tell their friends and more show up in the future.

The game has no goal. Just watch cute Bunnys for one or two minutes and give them carrots. They'll love it :)

Controls:

  • Move the camera with the Arrow-keys
  • Snap photos with X
  • Throw a carrot with C

Behind the game:

My girlfriend and I moved to a new apartment recently and discovered wild Bunnys in our garden. They were so cute, i had to take photos of them and share them with my friends on Instagram. So i made a tiny game about it.

[ Continue Reading.. ]

15
2 comments


Does anyone have a code snippet that can turn a number into a decimal string, treating the bit pattern as a 32-bit unsigned integer instead of 16.16 bit fixed point?

1 comment


Cart #nair-4 | 2022-07-07 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
7

NAIR

The simple fighting game with only one attack

This is a pico-port of an existing game I released sometime last year. (2021 update: And now it's on Steam!)
For the most part, the gameplay is perfectly identical. I took a lot of care to make the speeds match up on the lower resolution machine.

NAIR controls like a platform fighter, with walljumps and wavedashes. You only have one attack (and it only works in the air), but it's very finely tuned. The attack is slightly more disjointed in the back, combos into itself (just barely), and does so depending on your spacing.

[ Continue Reading.. ]

7
1 comment


Cart #shootybird-0 | 2020-06-11 | Code ▽ | Embed ▽ | No License
8

Made as the final project of CS50x.

Shooty Bird borrows the controls of Flappy Bird and add the ability to shoot a projectile every time the player "jumps". Waves of ennemies are coming from the right side of the screen and your goal is to get the highest score as possible.

This game was more than anything a good first step in learning pico-8.

8
6 comments


Okay, so I recently joined out of my interest in learning Lua coding and making cool little retro games. But I cant think of a good game idea and/or concept. Can you guys suggest some?

5 comments


Hi. I am trying to work on a game with my 10 year old daughter. One of the features she wants is for her hero to make a noise that freezes the enemy. I have found help with coding that has given me most of what I need to do but this is the last one that I can not find anything similar. Had it been done on pico8 and is it possible?
Thanks

2 comments


Now, I am having a lot of problems with having mobs spawn.
I tried with marking tiles as "spawn" and then doing a loop that in -init() does

 function spawn_mobs()
  for x=0,127 do
   for y=0,63 do
    if is_tile(spawn,x,y) then
     spr(m.spr,x,y)
   end
  end
 end

This doesn't work
Any ideas on any other method to spawn monsters?

17 comments


I like using the pico-8 palette for general pixel art because of the designers intent on making the palette as flexible as possible with the limited colors used; however I feel this philosophy isn't taken as well for the secret palette, which I use alongside the default. The secret palette kinda feels like its just making variations on the default palette rather than filling in its deficiencies (although it does a great job usually) one color I would like to see added is a bright cyan-like color, because light grey is quite jarring against a very solid cyan. light cyan would make what I would consider a very essential highlight for blue

Id suggest replacing deep brown (128), since there are already plenty of brown/orange colors, and purple makes a good shadow to brown. I even remade the palette in the original spirit, while adding the color: 80ffc8 (R 128, G 255, B 200) This can definitely be tweaked. Thanks for considering my suggestion.

7
2 comments


Please add a flag when launching a cart from the command line to make the cart path relative to the PICO-8 carts folder rather than the current directory of the command prompt/terminal. In addition, a feature to launch within a certain PICO-8 subdirectory rather than the root folder would be nice.

0 comments


I'm having a strange issue using the pico-8 TweenMachine library created by JoebRogers. When I create multiple instances of a tween, they seem to be interfering with each other. Lets say I have a tween for the player in the player class:

pl={
 x=0,
 y=0,
 sprite=0
}
pl.tween=tween_machine:add_tween({
 func=inback,
 duration=0.45
})
pl.tween:register_step_callback(pl_update_y)
pl.tween:register_finished_callback(pl_tween_end)

That works as expected. However, when I try to update tweens created for enemy objects, the enemy movement (processed by the enemy tween) is causing the player to move erratically. When I remove the enemy tween the player tween works fine again. Here's how I create enemy objects:

enemy_group1={}
for i=1,max_group_enemies do
  enemy={
   etype=1,
   width=0,
   height=0,
   edir=⬅️,
   tween=tween_machine:add_tween({})
  }

[ Continue Reading.. ]

0 comments


Cart #lunar_8-0 | 2020-06-10 | Code ▽ | Embed ▽ | No License
2

2
2 comments


Cart #burntherope-2 | 2020-06-12 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
73

PICO-8 games are getting so hard these days...

This is a port of a Flash game from Kian Bashiri called "You Have To Burn The Rope". It's a really hard game. You have to burn the rope there.

Here's a pretty apt description of the game, according to its original programmer:

You Have To Burn The Rope is, by formal definitions, a game since it has all the things that make up a game - besides losing condition which I regret not adding - but I wouldn't call it a game since it is hardly interactive in any meaningful way. The point was to make fun of other games that limit the player's interaction by being easy, linear, or heavily controlled and jokingly ask at which point these games also cease to be games.

[ Continue Reading.. ]

73
25 comments


Reacting to Cart Drag Events

I was thinking about the final fantasy games for the ps1 and about how I really love the concept of a game which prompts you to switch the game disk out for another one you have sitting nearby. I know pico8 can automatically load carts without user input, but I was trying to brainstorm a way which would allow you to have that tactile feel of sticking a cart in. I'd like to propose a method of achieving this and open the floor up to further discussion about the topic.

Basically this is sort of an advanced, tactile multicart that a developer can customize to their will.

I was wanting to implement this in such a way where the cart developer has full control of how it works aesthetically, so with as little intervention as possible, so I wanted to avoid a function which completely freezes the cart and waits for a drag event.

Suggested Method:

"Stat" Method
(similar to how dev mouse is only activated when it's queried, perhaps this feature should be opt-in in the same way)

  • have a set of stat values which store the filepath/bbs id(?)
  • if a drag event happened this frame, it records the filename of the drag and finds some sort of unique identifier set by the user from the cart (unknown what this would be yet)
  • probably clear these stat values on the next frame to be ready for another drag event
  • activate by poking a memory value or maybe by querying the feature for the first time with stat
    • to avoid a drag event immediately unloading the current cart and loading the new one
    • prepare the console to get the new stat()s and maybe enable a cute drag indicator when you drag stuff over the window
  • to switch carts, have a loop running around checking every frame if the values have been set, and react accordingly
    • "now loading map Baja California, please insert baja cart"
    • if stat(uid) == "mybikes_baja" then load stat(filename) etc etc, if it's wrong "please try again" or whatever
    • if btnp (cancel) then go back to main game loop and do something or other (different map maybe? cancel teleport?)
    • etc

I could think of alternate methods like calling a function which would pause the cart and wait for a drag event, but that seems intrusive and not very customizable

Problems:

One problem with this idea is currently it's very difficult to hide/find a unique identifier inside a pico8 cart. I was thinking the cartdata string would be a good one, but this is not explicitly set per cartridge inside the cart itself, and also there's no way to guess by looking at cartdata calls because carts can arbitrarily read and write any cartdata they want.

Another issue is that this feature would not work for BBS carts, so some sort of alternative would need to be in place if the user cannot or willnot drag a cart into the window. I'm not sure how to do this unintrusively. maybe if you press the pause key and the console calls the function or stat, then it adds an option to the menu to prompt for a bbs id? maybe this feature just isn't for bbs carts, just as multicart isn't really supported for bbs?

Another problem is exporting to a multicart binary would also be very difficult. but perhaps the two features would be mutually exclusive? this is more of an aesthetic choice that a developer could make for fun.

Discussion:

I'd love to hear what people think of this idea. I think it would be a lot of fun, even if it would take a while before we see it used in a cart. Does anyone else think this would be a good idea or see any other problems with it?

3 comments


Cart #toknight01-0 | 2020-06-10 | Code ▽ | Embed ▽ | No License
3

Making a new game and wondered if its the sort of game people would enjoy playing. Give some feedback and i'll see if i should continue with this game,

Thanks!

3
3 comments


Cart #dnpibij-0 | 2020-06-10 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

2 comments


Cart #picowdertoy-0 | 2020-06-10 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
1

little powder toy clone i made to try out pico8

click with the mouse to place sand

1
0 comments


Recently an option was added to change the width of tabs in PICO-8. I would like to have a config option to change all leading tabs to spaces (and the tab width would determine how many spaces) like many code editors do. There are trade offs between tabs and spaces and I tend to like to have absolute control over the vertical positioning of code. This is especially useful in PICO-8 so that the code ends up looking pretty when viewed including in the web code viewer. When I use tabs, if I have several clauses of an if lined up right underneath each other for example, they might not be underneath each other if a different tab width is selected from what I had used when I wrote the code. I'd like it to look the same as when I wrote it, in any editor.

I'm able to create pre-commit hooks and scripts to accomplish this for myself, but it'd be nice if it was built in as many code editors have the option.

7
4 comments


Cart #zoopico-1 | 2021-05-04 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
28

(Updated 2021-05-04 with some new animations and colours, and other small improvements and fixes.)

This is a PICO-8 remake of Zoop, a puzzle game released for a ton of different platforms in 1995.

It's fairly simple: coloured shapes push in from the edge of the screen, and if any reach the centre square, the game ends. You control the pointer thing in the middle, and you can shoot it at the shapes. If you hit a shape of the same colour, it's cleared from the grid. If you hit a shape of a different colour, you swap colours. Try to survive and get a high score.

There are 3 power-ups. A spinny wheel thing that clears a whole column:

[ Continue Reading.. ]

28
9 comments


I have enemies in my game that have behaviours - 1 behaviour function per enemy. Instead of defining the behaviour within the enemy class definition (waste of memory as the function will be created for each enemy of the same type) I want to define each behaviour once (outside the enemy class) and have each enemy instance hold a reference to its single behaviour. The enemy object needs to be able to send a reference of itself to the single behaviour function. I tried this:

function setup()
 enemy_group1={}
 for i=1,max_group_enemies do
  enemy={
   e.alive=false,
   behav=en_visit(self)
  }
  add(enemy_group1,enemy)
 end
 add(enemies,enemy_group1)
end

function en_visit(e)
 e.x+=1
end

function spawn(x,y,etype,edir,vel)
 for _,e in pairs(enemies[etype]) do
  if not e.alive then
   e.alive=true
   return
  end
 end
end

function update()
 for _,egroup in pairs(enemies) do
  for _,e in pairs(egroup) do
   if e.alive then
    e:behav()
   end
  end
 end
end

[ Continue Reading.. ]

3 comments




Top    Load More Posts ->