Benbonk Logic: I took a break by making an another game in a brand new engine where the colour palette triggers me
@BenBonk4 жыл бұрын
true
@emarald643 жыл бұрын
Lol
@Baconcat0083 жыл бұрын
True
@Galaxy_World3 жыл бұрын
ya
@Galaxy_World3 жыл бұрын
@@BenBonk ik
@yanihero1294 жыл бұрын
00:48 "some ideas were borderline impossible, or way too complex" "use a red colour pallet" Hmmmmm
@BenBonk4 жыл бұрын
IMPOSSIBLE
@davidbitca4 жыл бұрын
u cant do it with pico8's color palette
@NStripleseven4 жыл бұрын
There's only like 1-2 red
@meriquinn4 жыл бұрын
@@NStripleseven You can use 1, 2, 8, 14, and then either 15 or 7, or even both for a red color palette in PICO-8. Colors naturally look different when paired together. (0 is by default transparent so 1 is better/easier to use as a black)
@NStripleseven4 жыл бұрын
M Ramsey Huh. I didn't know that.
@NerdyTeachers3 жыл бұрын
This is fantastic! Thanks for the shoutout and we're very glad you enjoyed our Platformer tutorial! You really took it much farther on your own and that's what we love to see! Well done!
@stormedapple93173 жыл бұрын
I tried making a pico 8 game and your tutorials really helped me get started, thank you!
@NStripleseven4 жыл бұрын
Beginning of the video: I wanted a break from Slimekeep, so I did this. End of the video: I wanted to stop doing this and get back to Slimekeep.
@BenBonk4 жыл бұрын
Yup
@DiggyPT3 жыл бұрын
Epic
@khajiithaswares41473 жыл бұрын
Well it worked, ge did get his inspiration back
@hainesnoids3 жыл бұрын
"Pico-8 uses a modified version of Lua" Roblox programmers: *A blessing from the lord!*
@TheHENOOB3 жыл бұрын
I kinda like Lua is very easy for game development, even valve is using it with Source 2
@lememz3 жыл бұрын
@@TheHENOOB i mean lua is kinda good and all, but i really want my fucking curly brackets
@ncik5153 жыл бұрын
@@lememz you would hate python
@lememz3 жыл бұрын
@@ncik515 i mean, i literally can't read python but using nothing is better than having to write fucking "end" and "then"
@DiggyPT3 жыл бұрын
@@lememz lua has curly brackets
@falxie_4 жыл бұрын
Pico 8 seems very interesting. The first version of Celeste was made in it
@iLikeDucks_3 жыл бұрын
Ye i know its even inside of celeste as a small minigame/easter egg in celestial resort
@filipkuzmicz81273 жыл бұрын
Thats why i clicked ob this video XD
@lucasoreidopunho35563 жыл бұрын
Wow, i've didn't knew that!! I was playing the sequel of the game in pico-8, yesterday.
@lorrdy76403 жыл бұрын
Yeah I though I heard about Pico 8 before.
@noizepusher75943 жыл бұрын
Yeah, until this vid I thought all games using the little Pico 8 engine were re referencing Celeste’s pico 8 mode. I didn’t know it was an entire programming language
@jdyerjdyer4 жыл бұрын
There are several ways you can address the coffee pickup issue. The easiest to implement is a cool down timer. You set a timer to count down after a pickup and until that timer is zero, you can't pick up another coffee. This works great if you can ensure that the timer is long enough to remove the coffee after pickup, but short enough that should the player reach another coffee, they are able to pick it up without waiting. If you can't ensure that, then the next fix is an id system. Generate some random number for each coffee pickup and if that number is in your list of recent pickups, then you just ignore it. You don't have to make the numbers very large, in fact you could just label them in order of placement in the level, or since there is a finite number, just label them all and track them all, but for larger levels, this might impact performance. Reasonably, tracking the last 5 pickups and giving them an id modulus 5 should be easy and sufficient. Another method is to create triggers and use them on your collisions. Basically you check for collisions on a regular interval and if a collision is detected, then you check to see if a trigger is registered for the entities that have collided. If so, then you call that trigger and wait for that trigger to return before continuing. Here, inside the trigger is where you would update the jump count and remove the coffee. This sequential check can become a bottleneck, but it does address the multiple pickup problem. I'm not sure if the Pico8 system runs slower, or if it has full cpu usage, but if it doesn't have a slowdown issue, this is actually how most modern game systems work--i.e. loop through all active objects { if collision detected and registered trigger { fire trigger } }.Another way if the removal of an object might take some time is to use a collectible flag on each collectible and before doing anything on the collision, increment the jump counter and then immediately set the collectible flag to false. if collision and collectible is true { process collectible; set collectible = false; remove collectible; }. This option is best on systems where the main game thread is running on one process while your script might be in another or the collision script might have multiple instances created. It isn't ideal because you could still get multiple collisions at once, but it has two benefits in that you are quickly setting the flag to false, so hopefully before any other script accesses the shared boolean it is set, and by putting any cpu intensive (relative) processes to the end, you ensure that the check happens as fast as possible. Hope this helps. I'm sure there are other ways of doing it, but these are the most common I've seen done.
@TheMinecraftFan3 жыл бұрын
wow lots of words my brain cant handle it
@nightyysleeps3 жыл бұрын
chunky
@Chadderbox4 жыл бұрын
I need to try pico-8. I've never done anything that is really that limiting other than game jams. I think the limit on pico makes some really unique things.
@BenBonk4 жыл бұрын
I would recommend giving it a try. It was a nice challenge and interesting engine.
@colinjohnson55153 жыл бұрын
Man it’s cool. I’m going to try to teach my kids some of this stuff too.
@mushroomer563 жыл бұрын
Coming from a Lua programmer here, didn’t know that PICO-8 used Lua and I’m actually quite interested in trying it out.
@kobsboy42273 жыл бұрын
u make me realize that im not the only game dev that spends days on seemingly simple problems
@DrCrazyEvil3 жыл бұрын
Oh if you've been watching lots of devlogs it happens to everybody but they just don't show it so its easy to assume they're not problem solving at times even if they do.
@JanxZ3 жыл бұрын
1:33 i love how the background is just not lua at all
@mushroomer563 жыл бұрын
LUL, I know Lua and that definitely isn’t
@activediamond78943 жыл бұрын
Looks like Java maybe, lmao.
@ralfwright3 жыл бұрын
@@activediamond7894 yes definitely java
@Gizmote4 жыл бұрын
I like how even on games I don’t work with you on, you still use my game design concepts. Cool stuff!
@BenBonk4 жыл бұрын
True
@lockop25404 жыл бұрын
I can’t believe your almost at 10k already! Great job 👍! Been here since 2k 🎉
@BenBonk4 жыл бұрын
Thanks dude, getting really close to 10k now.
@djlclopez1283 жыл бұрын
2:42 "WHAT THE FRICK PICO8" 😂🤣 Take my subscription!
@prodbywerty4 жыл бұрын
i love Pico-8. though, the code editor looks quite... zoomed in to say the least!
@bingus10174 жыл бұрын
WERTYYYYYYYYY
@BenBonk4 жыл бұрын
Yeah it is super zoomed in, and kind of a pain. But I guess that is why there are tabs that can help you organize.
@IkeVoodoo4 жыл бұрын
Our leader werty
@mattjclay4 жыл бұрын
You can use an external editor with it
@Dyerrrrrrr4 жыл бұрын
Yeah I use vscode for pico-8. Also, tic-80 is very similar to pico-8 but has an extra wide text editor so there's that too
@thelostnexus5_3 жыл бұрын
As a Lua programmer, this was the first ever video I could genuinely relate to.
@mushroomer563 жыл бұрын
Same
@jjocco13 жыл бұрын
Benbonk: Pico Everyone: oh ok Me as a Chilean: hehe, nice
@guydoesthings75802 жыл бұрын
Me gusta el pico, wn
@throwawaysometime75004 жыл бұрын
Remember it doesn’t matter what u upload to us as long as u are happy doing / making it or interested in it
@thegappleapple77632 жыл бұрын
I love Pico-8
@CubsYT3 жыл бұрын
once you start hearing the lip smack there's no going back
@_mestre3 жыл бұрын
I love how mind boggled and surprised he seems because of the then and end in if statements. Which are very common in some languages such as Pseudocode
@cartermasterson98293 жыл бұрын
And python
@mrocto3293 жыл бұрын
@@cartermasterson9829 Python doesn't have end or then, it uses : and whitespace
@withlessAsbestos3 жыл бұрын
How did I miss this. I love Pico-8. Watch the grid based game tutorial.
@Kai-rg4kb4 жыл бұрын
I remember there was a pico 8 thing in celeste
@kingkyanogd25004 жыл бұрын
Yeah the developer made the pico 8 version for a game jam and because it made him continue it and make Celeste its in the game as a Easter egg
@09developerboy854 жыл бұрын
Make a game with scratch (or you can't do that?)
@BenBonk4 жыл бұрын
:o
@juliang95743 жыл бұрын
Wrong channel
@noizepusher75943 жыл бұрын
I love how he lists using a red color pallet as impossible.
@mushroomer563 жыл бұрын
Well it almost is
@salsichalivre54012 жыл бұрын
By this time you obviously have figured out, but you can mimic collectables by simply checking if the player "collided" with the coffee (its position overlaps the position of the coffee by a certain amount), and then making coffee nil (then it will not be there anymore) and at the same time get more jumps putting 1 plus in the jump var.
@aasermohammed85742 жыл бұрын
Hey benbonk I worked with LUA alot by now and those if statements check if the whatever variable is written before the == has the value written after the == and "end" means that this is the end of the statement, so for example: "If cond == true then print ("cond") elseif cond == false then print ("not cond')" means if the condition cond is true/happened then print in the console the text: "cond" and if it is false/Didn't happen then print the text: "not cond" in the console
@AstroSamDev4 жыл бұрын
Really cool video! I've always wanted to try pico-8.
@BenBonk4 жыл бұрын
Thanks Sam, you make pretty neat videos yourself.
@ninjatintin90743 жыл бұрын
2:08 Request: Make a game in Scratch
@migwuzhere2 жыл бұрын
"though some we're border line impossible or way to complex" he says to "use a red color pallet"
@tunedoesstuff3 жыл бұрын
I remember playing Just One Boss in Pico-8
@destroyer500553 жыл бұрын
As someone with no idea about coding just thought I would say adding office workers that add time to the timer woulda been neat
@mushroomer563 жыл бұрын
I’d be easy to code in Lua, I’ve been using Lua for a year though..
@reenftw2 жыл бұрын
This is the first Benbonk vid where I could actually recreate the game he is making
@janetteareglado45923 жыл бұрын
BenBonk: Makes Spiratites Game: MARIO WORLD
@BakeNeko-San4 ай бұрын
Everybody when mentioning any fantasy computer: pico 8 Tic-80 which is free: _I simply don't exist_
@kevin91203 жыл бұрын
With the coffee issue I would have personally set another variable like "canPickUp" and use an if statement to check if it's already been picked up before deletion. Though I'm not 100% sure if this would work.
@mattjclay4 жыл бұрын
Pro tip: Easy way to add a variable jump is to multiply your velocity by a value lower than 1 when you release the jump button and you have a positive y velocity. That way if you hold the button until you are at your jump apex then release you won't slow down when falling. And if you release it half up your jump you will slow down.
@BenBonk4 жыл бұрын
:o thanks for the tip!
@mattjclay4 жыл бұрын
@@BenBonk No problem. I had the same issue and I almost died when I figured out it was 1 line of code. Rip me.
@TriDeapthBear4 жыл бұрын
I smell 2019 Reddit KZbinr background music lol. Nice video, and btw, was the intern Ian thing a nod to h3?
@BenBonk4 жыл бұрын
Thanks, I didn't actually think about it like that, but I do love h3's old content.
@andresrosales34663 жыл бұрын
Late comment and not sure if someone already mentioned this, but you don't need to do `if var == true` to check boolean values. you can just do `if var then` or `if not var then`. Also having `end` where a block (if/else/loops) ends is very popular syntax for programming languages.
@leftie52052 жыл бұрын
I feel like the smartest move for the coffee jump glitch would have been to bring the numjumps++ and the MSet lines into the same if, so that one couldn’t happen without the other
@ShinyEmeraldGames4 жыл бұрын
The game is cool! I really like the walk animation of the cute little character! It's always good to take a break from big games that you're working on! I love it how you are creating pixel art for the font. Are you creating the pixel font for every sentence by hand or have you created it as a system font, you can then type into your computer?
@BenBonk4 жыл бұрын
Glad you like the game. The font is just a free font called Pixelarri that I like using.
@cheeseburgerinvr3 жыл бұрын
this is what got me into pico-8
@salsichalivre54012 жыл бұрын
Regarding the end and the then, this is from Lua, and Lua was made long time ago in Brazilian university in order for them to coup with technological step back they were facing that time. Turns out Lua got pretty famous over the time and it is the only programming language that have gone that far worldwide from Brazilian community.
@Blackout_3 жыл бұрын
"What is this syntax" "Anyways this is just personal preference" No uhh everyone agrees with you
@mrplus13123 жыл бұрын
0:02 oh you are tired so you give your self a brea- CHALENGE? Yeah makes sense
@KpJoeMatchstyx3 жыл бұрын
“End” is a thing that roblox, Pico 8, etc use to show that the thing your trying to do works or it does something or something I don’t know much about coding
@BenBonk3 жыл бұрын
It just means the end of a function/if statement. Roblox also had “ends” because pico and roblox both use Lua as their programming language.
@CaffeinatedBorb3 жыл бұрын
I like the idea of a game with a boss that has no boss...
@anchovy53253 жыл бұрын
for the coffee pickups you couldve made a true/false variable and then check if the coffee is touched AND the variable is false, set the variable to true and then after a second change it back to false
@WallJumpGames3 жыл бұрын
When making variable jump height, I actually use a different approach, I don’t know if this would work in pico-8, but my approach is just setting vertical speed to zero when you let go of jump.
@activediamond78943 жыл бұрын
Another one is modulating gravity based on whether you're jumping or not.
@soemie3 жыл бұрын
go pico, yeah yeah, go pico, yo
@Nizart3 жыл бұрын
if your coffe is in the tileset you can just do local tilepos = {x=flr(playerpos.x/8), y=flr(playerpos.x/8),} if mget(tilepos.x, tilepos.y, coffee_number) then mset(tilepos.x, tilepos.y, background_number) coffee += 1 end
@dasheiligedonerhuhn3 жыл бұрын
I think the fact, that it's developed for people to go fast, makes the will of people wanting to go fast in this game a Standart, wich destroys speedruning. its about people going fast against the conventions of the game.
@BenBonk3 жыл бұрын
I see what you are saying, but I still think it’s beneficial to speed running. The game was designed in with speed running in mind, so there are tons of opportunities for tiny time saves.
@dasheiligedonerhuhn3 жыл бұрын
@@BenBonk I see, that that's the case, but at least to me the fun thing about it is learning and finding unintended ways of playing a game. if you've got like a set path, this gets less fun. Still a great game to play I think, just not my taste.
@SugarooLM3 жыл бұрын
Damn, pico-8 is such an underrated engine, maybe because ITS PAID! THATS WHY, I DONT HAVE MONEY
@antonmanin35212 жыл бұрын
there is an open source TIC-80
@KolehmainenBeats8 ай бұрын
Damn bro managed to play Blinding Lights chorus while watching this.
@cheezyboi72543 жыл бұрын
This is all leading up to a slimekeep scratch port
@xerozoo3 жыл бұрын
I've been using pico-8 for years, I'm glad to see it get some more popularity
@ScarletEmber643 жыл бұрын
oh so that's where the pico-8 in celeste comes from
@Skeffles4 жыл бұрын
This is an awesome first game with pico8. It's nice to see a unity dev trying out something new! How did you find the console? I can't imagine using that after having used visual studio for so long.
@BenBonk4 жыл бұрын
Thanks, I definetly wasn't that big of a fan of the console. The text was way to large, I wasn't a big fan of the font, and the resolution would sometimes be annoying if I had long lines of code. If I used it again I would probably opt for a different code editor, though it was an interesting experience.
@Simpfey Жыл бұрын
0:16 -Create a simple PLATOFRMER
@notFoxils2 жыл бұрын
The collectibles problem could probably be solved with a debouce
@goosifyed97173 жыл бұрын
2:08 me: laughs in backpack
@CreeperCat04073 жыл бұрын
0:16 PLATOFRMER XD
@cakeyeater73923 жыл бұрын
I’m not a programmer, so excuse me if this is completely wrong, but couldn’t you have the coffee tile apply the jump increase once by making it happen only when it transitions to the background? Since the coffee should only need to change layers once, doing it that way would apply the effect only once, right?
@patrlim3 жыл бұрын
0:16 platofrmer
@randomb_oi87873 жыл бұрын
for your coffee bug thing you can set this thing called a debounce, its a boolean that you see if it is true and if it is then set it to false, then do your code, then after that set it to true
@omeletttte4 жыл бұрын
Hehe, stock images
@BenBonk4 жыл бұрын
yes very funi
@filiptuddy21373 жыл бұрын
GO PICO YEA GO PICO YEA GO PICO
@ComplexityRealster3 жыл бұрын
I totally agree the If statements Are weird
@noiceplayer1443 жыл бұрын
what i learned: if you are feeling frustrated or burnt out on one project, just start a new, more frustrating project that will make you want to return to the original project
@BenBonk3 жыл бұрын
Genius
@snugglebug_833 жыл бұрын
i tried the game, its super fun! but ,just an idea, why not use 'wsad' or 'arrow' keys?
@BenBonk3 жыл бұрын
you cant with pico-8, at least I think
@D30_K3 жыл бұрын
Honestly ive been learning lua in robox for a while so changing to pico would be preaty easy and i challenge you to make a game in roblox
@luan1177 Жыл бұрын
when arrow keys are broken and you need them to run
3 жыл бұрын
for the pickup collisions i imagine you couldve just done a touching check, given a jump, deleted the coffe, and then wait until not touching
@vinsovan97073 жыл бұрын
When he said the engine uses Lua I nearly exploded with excitement. Until he said "What in the world are those-"
@CodingWithBen2 жыл бұрын
I have pico-8 I would recommend looking at tic-80, I'm stuck between the two at the moment
@hollowknightenjoyer3 жыл бұрын
The problem is, i cant jump. but good job!
@Choppy_Z3 жыл бұрын
what a nice *platofrmer*
@orisphera3 жыл бұрын
There is at least one other project similar to Pico-8. I know one called TIC-80
@WannibeManisha4 жыл бұрын
Great little compact game!!
@BenBonk4 жыл бұрын
Thanks!
@Javier-ft5mx3 жыл бұрын
Good work
@goosifyed97173 жыл бұрын
if its not too much trouble, could you make a small platforming engine, but using the character from robot 64? (yes its a roblox game, but NO. ITS NOT BAD.) thanks 4 reading this :)
@mushroomer563 жыл бұрын
Though I do not use PICO-8, I am somewhat good with the Lua programming language. With the coffee, you’d probably need to destroy the collider immediately so it can’t be collided with again and THEN give the benefit. Thanks for reading!
@FabricioKarim2 жыл бұрын
I like Pico-8 toturials of this channel: kzbin.infoplaylists
@jubinjajoria28704 жыл бұрын
Wait.....No Green. Are you really BenBonk? 😂😂
@mushroomer563 жыл бұрын
ohNOOoO
@baronthibault86502 жыл бұрын
I see you discovered what really programming is haha
@ProbablyAxolotl3 жыл бұрын
Whaaa we both followed the same tutorial and both made a nearly identical next level script... weird
@jamescameron92243 жыл бұрын
Dude same! But for some reason, when I load the next level, the player stays frozen in midair. All I am doing is changing the player and cam position whenever the level number increments. It's basically a state machine. Did you run into this problem?
@proudpichu3 жыл бұрын
Wow i remember playing pico 8 games on cool math games
@myh62743 жыл бұрын
0:46 *eze* (also im good at comming up with complex implementations, even if they are crappy)
@fan03 жыл бұрын
2:09 Me when I make gravity in Scratch: Ok. So I will make that vertical velocity is going into minus numbers and horizontal velocity stays the same
@Roader_0213 жыл бұрын
me, uses scratch and can finally see whats happening
@lazergurka-smerlin65613 жыл бұрын
I mean I'd think the way to properly implement a collectable is to make some pseudo class for it that handles the incrementing and deletion of the pseudo object
@blankstudiogamedev63104 жыл бұрын
This video was great! Imma play this later
@BenBonk4 жыл бұрын
Thanks! I hope it doesn't make you rage too much.
@blankstudiogamedev63104 жыл бұрын
@@BenBonk Lets hope so ;)
@theeternal68903 жыл бұрын
*U sound like the fluffy friend in the stranger things.* its cute
@Pop44842 жыл бұрын
I know lua on gmod and roblox so I imma try this one out too
@weezerfan153 жыл бұрын
go pico go go pico
@jucom7563 жыл бұрын
2:25 you're talking about how you have to write then and end manually right? Because it's hard to imagine a programmer who doesn't know what an if-statement is...
@-ferno43334 жыл бұрын
pretty cool
@someaddictedidiot21863 жыл бұрын
OMG PICO-8 YES!
@truestbluu3 жыл бұрын
If Pico-8 has a built in wait function then you can do something called a debounce. This is a Roblox debounce but this might not work. local debounce = false while wait() do if not debounce then debounce = true wait(1) debounce = false end end
@gemanimates3 жыл бұрын
Pico's school in Pico-8
@NecoNGaming3 жыл бұрын
2:11 Oh yeah scratch is like that (i know he was joking but I wanna point it out), you have to MAKE your stuff from *scratch* (haha funny laugh now) and nothing is premade for you. It sucks.