I started a YouTube series to teach some Pico-8 fundamentals. It is called Pico-8 Hero. In the first "season" we'll be writing a Breakout clone from scratch. It is aimed at people, who have completely no idea how programming works.
I will post more episodes in this thread as they come out.
Pico-8 Overview
#1 - Hello World
#2 - Functions and Variables
#3 - If-Statements
C'mon, get your initialization inside of _init() already! (bonus - keeping your code inside functions basically eliminates worrying about code order)
Good luck with the rest of your series!
That is a good point. TBH I'm not yet entirely comfortable with the way scope works in LUA. Will fix this in upcoming episodes tho!
I think that's a great idea! I bet it will help a lot of people get into programming.
I am a newbie programmer myself. I started by making the breakout from the pico-zine #1. I am still working on that first (getting ready to share more progress soon, after taking a nearly six months hiatus), so videos like yours are a great resource, especially for picking up coding practices (as right now my code is a mess, fingers crossed for making it better on my next project).
Anyway, just wanted to say thank you for doing this.
P.S Do you have a schedule when you stream Pico-8 Hero? I would love to come to a live stream.
I'm glad I can contribute to the community. :)
We don't have a clear schedule but if you follow us on Twitch you'll always get a notification when a stream begins https://www.twitch.tv/teamworkcast
You can also follow me on twitter @Krystman
Anyways, here is the next episode:
Keep up the great work.
Whenever we get people new to the PICO8 in the slack, I point them to your web series :)
Love the series!!! but after video #7 I am completely overwhelmed.. I am new to coding in Lua, and not particularly a math wiz but video #7 made a sort of quantum leap in difficulty, and the extra testing program made it all more complicated coming out of left field ..
If anyone else in this forum knows some good collision detection resources for learning i would love it!! (unity kinda solves this for you)
Yeah, sorry. That part kinda snuck up on me. Just copy the final function and continue. It is not STRICTLY necessary anyway.
Almost finished my first game because of this :) I kinda went my own way after part 8 and jumped to 12 for some tweaks.
My collision detection is still pretty wonky though, but I think that's because I'm using sprites with different origin points. Will fix that right at the end...it's good enough for now.
Are you going to continue with PICO-8 tutorials after this game example? Because you explain things extremely well. Thank you!
I'm glad the series helped you! Yes, I will continue with more Pico-8 tutorials afterwards.
Speaking of which, here is the newest episode:
Wow, this was quite a hiatus. But we are back with a while bunch of episodes in the backlog.
We are also moving our Game Dev content to a dedicated channels. Our Tutorials will now appear at the Lazy Devs Academy. Come over and give us a sub!
Hey Krystman, just started watching your series a couple days ago I'm currently on ep 10, and I'm loving it. While following along I've run into a bug, and I can't find what is causing it.
https://imgur.com/a/nJbuk
As you can see my game isn't taking away lives and simply ends goes to game over screen, and it seems to contradict my code.
Here's my code for the game, for better context: https://pastebin.com/VDhTTYNU
LOL, that's a good bug! Took me a little to track it down.
So the issue is the if statement that checks if the ball left the screen. You got your END mixed up and that statement ended up being executed multiple times per frame. Just above the statement you have a loop that goes through all of the bricks. You didn't close the loop with an END properly so the if statement is now inside that loop. So it gets executed once for every brick. So you end up losing as many lives as there are bricks in the game.
A feature people ask about a lot is how to make the screen fade out. Well, here we go!
[Please log in to post a comment]