Log In  

Thank you for checking out my very first game!

I am 9 years old and my Dad is helping me.

Cart #robohefato-0 | 2022-03-13 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
6

Controls

It's pretty simple! Just use the up, down, left and right keys move your character through the maze.

Game Play

The goal is to retrieve the flag and bring it back to the door at the start of the maze before time runs out.

There is a loaf of bread that you can pick up to leave breadcrumbs. If you walk over breadcrumbs that you've already dropped, they look different so you can see where you have backtracked.

Also placed in the maze are a couple of axes can be used to break walls by running into them while holding the axe.

Keep in mind that the axes break after a certain amount of time, so use them wisely!

Credits

By Rhys Alloway and assisted by Richard Alloway.

P#108551 2022-03-13 19:27

Whoa! This is fantastic! I love the game design decisions you made. The loaf of bread leaving crumbs is extremely helpful, and I love that it looks different when you go back over your own trail. That was actually very helpful several times. And the axe is such a good idea to help you out. I ended up using it to get to the flag. :D Not something I've seen in other maze games like this! Love the sprites too. :)

This is an excellent first game. Great work.

I was able to finish it!

P#108553 2022-03-13 19:51

Very nice first game!
Welcome to the community :)

P#108565 2022-03-13 22:26

Good game at that, @ralloway. Gold star work.

Two things. You might change the BTNP() speed to a bit faster and do not use the axe if an arrow key is held. If you are facing a wall and tap that direction, then the axe could be used to chop in that direction.

I won the game but every time I ran into a wall it started to use my axe - which I didn't want.

If you need assistance in any of your coding, feel free to ask, there are a lot of friendly Piconians here to help you. :)

Welcome !

P#108566 2022-03-13 23:08 ( Edited 2022-03-13 23:08)

Nice work! I beat it :)
I loved the idea of the breadcrumbs, and picking some of them up so you could tell if you backtracked. Smart thinking. The axe added some fun. Who doesn't like to axe through walls! These were pretty unique features for a maze game, which made it interesting to play. And I love the "Get to the choppa!" reference. That's from when I was a kid.

Looking forward to what you make in the future. Keep it up!

P#108580 2022-03-14 05:38

I'd like to thank everyone for the positive feedback and criticism!

My son is thrilled to see so much excitement about his game. :)

He has a few questions based on the comments:

  • Is the time limit good? Is it too long or too short?
  • @dw817 We're not familiar with changing the BTNP() speed or detecting if an arrow key is held down. Is there a tutorial or documentation that explains this?
  • Is the maze too big? Should the first maze be smaller and get bigger with the next levels?

Rhys would like to say, "Stay tuned for my next game ( Amethyst Alley )!"

P#108649 2022-03-15 11:48

This is a great game - Well done Rhys!

The breadcrumbs are a lovely idea. The fact that the axes regenerate, whether intentional or not, makes for a fun experience. I quite enjoyed just causing destruction, then rushing back to the first axe and causing more destruction.

Regarding your questions:

  • The time limit is fine. Once you know the maze the limit is too long but it's not really an issue.
  • The size of the maze seemed a little daunting the first time playing. If you were to develop this game further then increasing maze sizes for different levels would be a good idea. The first level could simply be a single screen allowing the user to see all of the game components at once.

Gold star! Can't wait for your next game.

P#108653 2022-03-15 12:28

The official documentation gives some tricks about btn and btnp: https://www.lexaloffle.com/dl/docs/pico-8_manual.html#BTNP

The poke function used there serves to change values in special memory regions that control parts of pico-8’s behaviour; it is the base for many advanced things!

P#108659 2022-03-15 13:49
1

@ralloway Tweaking the repeat speed of btnp() can be kind of tricky for someone new to coding. Another possibly simpler solution might be something like this:

if (btn(➡️) and btnp(🅾️)) then
    --use axe on wall to the right
end

Then the axe will only be used if the playing is pushing against a wall and they press the Z button. It'd prevent bumping into a wall and accidentally using the axe, but still allow people to decide which direction to use the axe.

Note that btn() will detect if a button is being pressed at all, whereas btnp() will detect if a button is newly being pressed. (Though, as you've seen, btnp() repeats itself after a short delay if it's being held down.)

Oh, and Amethyst Alley is an amazing name for a game. Can't wait to play it. :)

P#108694 2022-03-15 21:20

@MBoffin is right, @ralloway. Holding down an extra button would be perfect, then you don't need to worry about detecting held or tap for the axe.

To speed up BTNP(), to change its repeat speed and time to repeat, that information can be found HERE:

https://www.lexaloffle.com/dl/docs/pico-8_manual.html#BTNP

Here is a simple example:

Cart #jifepohiba-0 | 2022-03-16 | Code ▽ | Embed ▽ | No License

function _init()

-- initial delay before
-- repeating.
poke(0x5f5c,8)

-- set the repeating delay.
-- one is fastest
poke(0x5f5d,1)

-- starting position for
-- circle.
x=64
y=64

end

function _update()

-- clear screen.
  cls()

-- draw circle.
  circ(x,y,15)

-- move circle, four arrow
-- keys.
  if (btnp(⬅️)) x=x-1
  if (btnp(➡️)) x=x+1
  if (btnp(⬆️)) y=y-1
  if (btnp(⬇️)) y=y+1
end
P#108710 2022-03-16 01:33

[Please log in to post a comment]

Follow Lexaloffle:          
Generated 2024-03-29 09:07:03 | 0.045s | Q:38