He didn't cover A L L the mechanics, nonononoononoooo. you may not know yet but there is (*does math in the head*) at least 10 more (read my comment lmao)
@@Mushroom38294 I understand that you're very excited about Celeste but I was talking generally about 2D Platformer movement mechanics for beginners. Im sure someone will come along with more in depth applications of her advanced mechanics thanks to the dev's release of the source code.
@@jv9ufxcy yeah but it probably wont be on youtube, as i literally could't find Madeline's sneeze animation. All i found was gameplay and (good) critiques. And this... Still not likely
that's great! Getting the movement of your character is always REALLY hard! Also, Please, do the Witch time from Bayonetta next.... or Blade mode from Metal Gear Rising.
... he did only the CORE mechanics (and even then he forgot about stamina) , he *clearly* didn't know about: Super jump: helo Reversed Super jump: oleh Extended Super jump: nice to meet you Ultra jump: hello there Reversed Ultra jump: ereht olleh Extended Ultra jump: you joump loooong in celeste y cant you inyourgame!? O_o WAVEDASH: Wanna pain, aye? REVERSED WAVEDASH: i will make your life a living nightmare. WALLBOUNCE: REEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
One of the creators of Celeste actually released the source code for the class that handles the everything regarding the player, including movement! It might not be the most beautiful code out there, but it's a really good resource for anyone wanting to create similar movement. github.com/NoelFB/Celeste/blob/master/Source/Player/Player.cs
This is easily one of the best channels I've come across. I've always had trouble finding tutorials that cover more advanced topics about game development. The fact that your videos are short makes them more engaging
Cool but to be honest there is still a lot to be done to replicate the movement of Celeste like adjust the gravity and stuff, but that is just changing the digits and it also depends on the game but somehow the devs of Celeste Managed to get just the right numbers
Wow. Great job. I'm actually not 100% sold on the idea to use actual physics for the movements, I'd probably do it in the Update, but what can I say... your result looks great!
Hey could you please do a video on making an advanced character controller? Maybe something that has the functionality like Hollow Night? Please and thanks.
If you download the repo - you can see that there are 3 images that are childs of the main character. When the dash is activated - there is a Coroutine that places the copies on the character position at different times! And then those images fade away! Hope it helps!
Using a dynamic rigidbody isn’t a great idea when making a platformer. It gives you bad results when you want tighter controls as it uses physics to move your character around (which can make your jumping feel bad or interacting with enemies), you can get way better results by using a kinematic rigidbody or building one from scratch. Unity has made a tutorial series on kinematic rigidbody movement and the scripts give you the ground angle for slope detection, gravity modifying, and ground and air acceleration. *Also, you can use it on other objects that aren’t your character
that's true but make your own character controller create much more problems than benefits i made a full controlled 2D Rigibody controller and i have so many problems that can't be easy solved i think that for a beginner use the unity physics it's better than create a new one from scratch.
@@yuriaugusto1084 Depends on how you set it up, once you solve all those problems (depending if you use a kinematic rigidbody or from scratch), you get much more control over your character and as a result, much tighter movement.
This is because the ripple is a screen space effect, meaning it appears at a position in the viewport. It doesn't happen in the world. In order to position it properly he's taking the world position he wants it to appear and translating it into screen space.
Wow. I only recently found this channel the other day but the consistency in quality is amazing, the explanation is amazing yet also very entertaining. You deserve more subscribers, this quality is super rare to find on youtube. Perhaps for a video, you could do 2d sonics movement on loop the loops or maybe the crystal heart ability from hollow knight. Keep up the great work dude! :D
I love the video, but... Well... Y’know... HER NAME ISN’T CELESTE CELESTE IS THE NAME OF THE MOUNTAIN Enough unnecessary caps lock rage. Good job on this. It’ll help me a lot with my own 2D playformers.
4:10 did you call Madeline "Celeste"? HER NAME IS MADELINE, NOT CELESTE. CELESTE IS A MOUNTIAN SHE's CLIMBING, NOT THE PLAYER. Also Mt. Celeste is a real place btw. And also here's a meme, which says "MAKE AN F*****G V.2" : This guy: phew, i guess i did it? Stamina: Let us introduce ourselves Super jump: helo Reversed Super jump: oleh Extended Super jump: nice to meet you Ultra jump: hello there Reversed Ultra jump: ereht olleh Extended Ultra jump: you joump loooong in celeste y cant you inyourgame!? O_o WAVEDASH: Wanna pain, aye? REVERSED WAVEDASH: i will make your life a living nightmare. WALLBOUNCE: REEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
Hello! Thanks for the video. Do you know how to make the ripple effect work with URP? When using URP, the script doesn't work. Maybe someone more advanced than me can help me. Thanks!
I wonder, when you have a tilemap, how you diffirentiate ground from the walls? What if the same tile (i.e. corner tile) is both the ground and the wall? How can you let player jump from the ground yet prevent them from jumping from walls?
Hey y'all! I was wondering if I can use some of this movement code in my unity project or how to insert the movement into my test project. I am running into the type NameSpace error for Private AnimationScript Anim;
Hello guy! I just want to get a doubt. Have you seen this game: "A Plague Tale: Innocence"? It was not made on Unreal Engine. It seems like it was something proprietary. From what I understand, the reason for not choosing Unreal was the "organic movement of rats". * My question: is it possible to do this at Unity? Note: The rats: ua-cam.com/video/mcljDHHfc5o/v-deo.html
I think that the dash is wrong but I am unsure, this is because at 5:04 I see the dash going downwards, and I dont think the dash chooses the direction of the current input with the code that is there, I very well might be wrong, I am a noob dev. Thanks for the content, this is really awesome.
hi new to unity here. Just a quick question, I was told that anything regarding physics (such as a rigidbody) should be placed in fixedUpdate. You put everything in update how does that work?
Why did you choose to use overlapCircle though? Wouldn't one simple circle collider with ontrigger suffice? It would return a handle to the colliding object, so you would be able to grab hold of each respective wall... I've been thinking about it and couldn't find an answer. Please, if you can, I'd love to hear the explanation, I feel like I could learn something super valuable from this.
Hey did you know about this script? github.com/NoelFB/Celeste/blob/master/Source/Player/Player.cs It's the actual character controller in the game, that the developers made public. I haven't found a way to make it work with Unity, but maybe you could!
how could i make it to where it disables wallSlide if the player was touching the ground and wall when they jumped? I don''t like how the character instantly starts grabbing the wall if you jump right next to it.
Thanks for the video! I've been trying to slowly understand each part of the movement script(total beginner here),when I try to apply the dashing it seems like dashing on the X axis has barely any effect,while dashing up and down seems to work fine. Any ideas on what might be missing? =o
Teaching how to do various awesome things seen in other video games? Sign me up. This one in particular helps with a very good 2D character controller that feels more natural (which i needed). Looking forward to learning and experimenting! (God of War Axe throwing in 2D for example)
Awesome video, btw Matt did a writeup on how physics works in celeste and towerfall and celeste's character controller code is also open source: - mattmakesgames.tumblr.com/post/127890619821/towerfall-physics - github.com/NoelFB/Celeste/ There is something to be said about not using a physics engine, the way towerfall and celeste's physics work is much more rigid by only using discrete math (ints vs floats).
How about ff12 Gambit system or the victory screen when you defeat big bosses, or license system. I always wondered how that would work. I know the Gambit is letting the players mess with code. But how exactly would you do so.
This is exactly what im trying to do mate, amazing video and super helpful to give me some decent places to look for the right effects etc! Love the use of the 2dparticles for the wind and snow, amazing.
Looks really cool. I`d just suggest toning down a bit the ripple effect and the camerashake on the dashes. Other than that, wonderful. How long did you take to do it all?
I am usually against using rigidbody physics to handle player gravity and stuff because you don't often get the level of control and "tightness" that is needed for precise platforming, but you really did a great job making it all come together! :D
But did you typed Time.deltaTime? I mean, what if somebody has a better computer? You don't want to have the guy with a better computer have an advantage over the others when it comes to speed. But still, great tutorial, this is the best unity movement I've seen in a while!
why can't i do that? usually these videos are inspiring, but i know pretty much everything you used here and yet i couldn't do it myself, this is depressing.
the only thing is that the gravity sould be heavier. Also the downward dash shoudn't have the pause at the end, whic is also what allows for so many moves in celeste.
How did you make her stay still on the wall while grabbing? I've tried doing it the same way as you show but she still slides down just a but slower than the wall slide
you can teach us in 2d to make a game of police and thieves where we are the police it would be very interesting to learn to do the artificial intelligence of the thief escaping from us we can go taking some item to increase the speed until we catch the thief.
Wow!!!!!........ Whatever you do that's jaw dropping. I don't know how many it took you to work with this project but the final video you compiled is so exciting and encouraging. Please do what you do I'll constantly support you😎💓
The robot shall now be known as jammo
That means the robot will need a companion called Mixmo!
Perhaps like Cave Story!
How bout jammixmo?
Correct
cool to see a 2D game done, still loving all of these so much
Thanks Cyranek!
Means a lot coming from someone with such a cool channel!!
Maybe the best episode yet! This is so great, the little cube guy should be the new mascot for the channel!
YES PLEASE, i could see him used in every 2D project
@@J33zas Yeah or like a little easter egg to spot in every video, that would be awesome
Seriously, amazing result, thank you as always for your video!
Fantastic video :) ! Keep it up :D
Ayyy! Thanks Blackthorn!
I’m such a big fan of your work! Means a lot to me that such a talented person enjoys the content! ♥️
Fan
hello there
This video is going to be the best comprehensive 2D platformer controller reference now with all the mechanics you covered. Great job.
Just remember using Rigidbody movement might be the fastest solution, but it also comes with a lot of problems
He didn't cover A L L the mechanics, nonononoononoooo. you may not know yet but there is (*does math in the head*) at least 10 more (read my comment lmao)
@@Mushroom38294 I understand that you're very excited about Celeste but I was talking generally about 2D Platformer movement mechanics for beginners. Im sure someone will come along with more in depth applications of her advanced mechanics thanks to the dev's release of the source code.
@@jv9ufxcy yeah but it probably wont be on youtube, as i literally could't find Madeline's sneeze animation. All i found was gameplay and (good) critiques. And this... Still not likely
This controller suck ass. If you want to do a decent one, you need to use Raycast to check for collisions.
Yet another great video good job pal! :D
Thank you MortMort!
Means a lot coming from you! I love your videos!
It is he
The developers of Celeste actually released the source code for the player movement
Wait, really?
@@ShadicTheChosenOne github.com/NoelFB/Celeste/tree/master/Source/Player
Yeah and it's like 5500 lines of code that no one can understand. Not very useful.
@@beri4138 i guess you're the only one who can't understand it lol neither you're dumb or i am smart, with all my respects.
Rasem >neither your dumb
*NEITHER*
that's great! Getting the movement of your character is always REALLY hard!
Also, Please, do the Witch time from Bayonetta next.... or Blade mode from Metal Gear Rising.
Gui G Dias I was just about to comment this
...
he did only the CORE mechanics (and even then he forgot about stamina) , he *clearly* didn't know about:
Super jump: helo
Reversed Super jump: oleh
Extended Super jump: nice to meet you
Ultra jump: hello there
Reversed Ultra jump: ereht olleh
Extended Ultra jump: you joump loooong in celeste y cant you inyourgame!? O_o
WAVEDASH: Wanna pain, aye?
REVERSED WAVEDASH: i will make your life a living nightmare.
WALLBOUNCE: REEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
One of the creators of Celeste actually released the source code for the class that handles the everything regarding the player, including movement! It might not be the most beautiful code out there, but it's a really good resource for anyone wanting to create similar movement.
github.com/NoelFB/Celeste/blob/master/Source/Player/Player.cs
he is using mono/xna, hence the code look more loaded than usual without use of engines component like Unity.
This is easily one of the best channels I've come across. I've always had trouble finding tutorials that cover more advanced topics about game development. The fact that your videos are short makes them more engaging
this was very vague of a tutorial =( was more of a brief presentation
Hey guys, someone here knows how to use this ripple effect with the URP?
EU NÃO ACREDITO QUE VC É BRASILEIRO, que legal!
É nois!!!
Manda os brasileiros que te assistem pra cá poxa 🥹
M&J: Hey, can I borrow your Celeste??
Classmate: Yea, Just don't make it so obvious
M&J: *this*
can you explain how to use the ripple effect?
Which version of unity are you using
Anyway nice work pal 👍
Muhammed ASHIQ For this project I’m using 2019.1.0f2
Why doesnt the shader work with urp
That moment when you called Madeline "Celeste"= *internal screaming*
timestamp???
@@5daydreams 4:12
I love how you make everything just seem so seemless while coding. If it were me i'd have a bug trying to code movement and never get past it xD
Hey,does anyone got the ripple effect working in their projects? i cant get it working in mine
Cool but to be honest there is still a lot to be done to replicate the movement of Celeste like adjust the gravity and stuff, but that is just changing the digits and it also depends on the game but somehow the devs of Celeste Managed to get just the right numbers
This is absolutely amazing. Do you think you could cover Hyper Light Drifter's movements & platforming?
Wow. Great job.
I'm actually not 100% sold on the idea to use actual physics for the movements, I'd probably do it in the Update, but what can I say... your result looks great!
Really awesome job ! Small detail though... the main character isn't called Celeste but Madeline x)
pin this^
Please create the night vision shader from Call of duty Modern Warfare 2019
The smoothness, the art, everything... It's so so good! Thanks for this good content and also to Nate for helping ya!
Hey could you please do a video on making an advanced character controller?
Maybe something that has the functionality like Hollow Night?
Please and thanks.
Great video! Would you be able to point me to a reference on how to set up that "sequence of 3 images that moved on the character's position"?
If you download the repo - you can see that there are 3 images that are childs of the main character. When the dash is activated - there is a Coroutine that places the copies on the character position at different times! And then those images fade away! Hope it helps!
@@mixandjam Great! I didn't see there was a link to the repo at first :D
@@CowmasterStudios Where is the repo link?
Jason Wiser In this videos description, might have to click a drop down arrow to see it if on mobile.
This is an amazing explanation without extra time. It's just perfect.
Using a dynamic rigidbody isn’t a great idea when making a platformer. It gives you bad results when you want tighter controls as it uses physics to move your character around (which can make your jumping feel bad or interacting with enemies), you can get way better results by using a kinematic rigidbody or building one from scratch. Unity has made a tutorial series on kinematic rigidbody movement and the scripts give you the ground angle for slope detection, gravity modifying, and ground and air acceleration.
*Also, you can use it on other objects that aren’t your character
that's true but make your own character controller create much more problems than benefits i made a full controlled 2D Rigibody controller and i have so many problems that can't be easy solved i think that for a beginner use the unity physics it's better than create a new one from scratch.
@@yuriaugusto1084 Depends on how you set it up, once you solve all those problems (depending if you use a kinematic rigidbody or from scratch), you get much more control over your character and as a result, much tighter movement.
"to recreate the ghost trail _Celeste_ leaves behind when dashing"
Her name's Madeline, yo.
This is like they guy in the green hat ”Zelda” all over again.
So you shame him? I don't think so
Damn great recreation. The pixel art looks amazing as well.
Oh damn , Celeste, I remember dunkeys whole review on the game. Great recreation , keep it up!
Hi M&J, there is 1 thing that I don't understand. you the ripple fx spawn point with Camera.main.WorldToViewportPoint. Why World->Viewport sir?
This is because the ripple is a screen space effect, meaning it appears at a position in the viewport. It doesn't happen in the world. In order to position it properly he's taking the world position he wants it to appear and translating it into screen space.
Your video is great and cool asset.
Wow, really amazing bro. Keep 0 dislike.
I cannot express it in words. But keep onfire, I will always support you. 👍👍👍 😆😆
there's also exhaustion when climbing in celeste but that's just for fair gameplay, also great video!
I am a simple man. I see Celeste, I click
How many hours did it take for you to finish this project? The result is awesome!
Hey Simon!
Took me around 2-3 days to build this project!
Damn, the pixel art is what really sells it. Good job!!!
All thanks to this beautiful soul! ♥️
twitter.com/NateKling
Wow. I only recently found this channel the other day but the consistency in quality is amazing, the explanation is amazing yet also very entertaining. You deserve more subscribers, this quality is super rare to find on youtube.
Perhaps for a video, you could do 2d sonics movement on loop the loops or maybe the crystal heart ability from hollow knight.
Keep up the great work dude! :D
I love the video, but...
Well...
Y’know...
HER NAME ISN’T CELESTE
CELESTE IS THE NAME OF THE MOUNTAIN
Enough unnecessary caps lock rage.
Good job on this. It’ll help me a lot with my own 2D playformers.
You’re right! Oops my bad!!!
Let’s hope I don’t call Link Zelda on a future project! 😅
This is one of my favorite channels. Quick content and highly entertaining. Thanks for making these.
have you ever thought of giving Titanfall's fps wallrunning and double jumping a go on unity?
Ideal tutorial: cool explaining, music (Reach for the Summit 8-bit remix), Celeste (my favorite game), Unity (my deleloping engine)!
What's your patreon? I'm willing to give that extra cash that i waste on booze to keep you going
Aw!! Haha that so sweet of you! Here ya go
www.patreon.com/mixandjam
4:10 did you call Madeline "Celeste"? HER NAME IS MADELINE, NOT CELESTE. CELESTE IS A MOUNTIAN SHE's CLIMBING, NOT THE PLAYER. Also Mt. Celeste is a real place btw.
And also here's a meme, which says "MAKE AN F*****G V.2" :
This guy: phew, i guess i did it?
Stamina: Let us introduce ourselves
Super jump: helo
Reversed Super jump: oleh
Extended Super jump: nice to meet you
Ultra jump: hello there
Reversed Ultra jump: ereht olleh
Extended Ultra jump: you joump loooong in celeste y cant you inyourgame!? O_o
WAVEDASH: Wanna pain, aye?
REVERSED WAVEDASH: i will make your life a living nightmare.
WALLBOUNCE: REEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
I thought Celeste was going to get a DLC but it never came. This game is one of my favorite games but I'm sad that it never got its DLC.
Why do you change the velocity for the jump and dash instead of using addforce?
Hello! Thanks for the video. Do you know how to make the ripple effect work with URP? When using URP, the script doesn't work. Maybe someone more advanced than me can help me.
Thanks!
I wonder, when you have a tilemap, how you diffirentiate ground from the walls? What if the same tile (i.e. corner tile) is both the ground and the wall? How can you let player jump from the ground yet prevent them from jumping from walls?
The one thing that you missed that adds so much to Celeste is squash and stretch. That makes any jump feel good.
Hey y'all! I was wondering if I can use some of this movement code in my unity project or how to insert the movement into my test project. I am running into the type NameSpace error for Private AnimationScript Anim;
Hello guy! I just want to get a doubt.
Have you seen this game: "A Plague Tale: Innocence"?
It was not made on Unreal Engine.
It seems like it was something proprietary.
From what I understand, the reason for not choosing Unreal
was the "organic movement of rats".
* My question: is it possible to do this at Unity?
Note: The rats: ua-cam.com/video/mcljDHHfc5o/v-deo.html
Cara, parabéns pelo trabalho, sério mesmo! Me dá um quentinho no coração ver brasileiros tendo sucesso pelo mundo.
I think that the dash is wrong but I am unsure, this is because at 5:04 I see the dash going downwards, and I dont think the dash chooses the direction of the current input with the code that is there, I very well might be wrong, I am a noob dev. Thanks for the content, this is really awesome.
no hyperdashes though
close enough
Hey, ghost trail only work with animation by sprite?? how can i do with animation by bone (like anima2d or animation2d unity) ?
Ripple Effect doesn't seem to work with the lightweight renderer (used for lighting). Anyone got it to work?
hi new to unity here. Just a quick question, I was told that anything regarding physics (such as a rigidbody) should be placed in fixedUpdate. You put everything in update how does that work?
I also vote for Jammo: new mascot of the channel! Also, I am here to always ask to please make Arkham Combat system, I would love it!
friend, could you teach me how to climb the ledge? because it crashes when it gets to the top corners
Why did you choose to use overlapCircle though? Wouldn't one simple circle collider with ontrigger suffice? It would return a handle to the colliding object, so you would be able to grab hold of each respective wall...
I've been thinking about it and couldn't find an answer. Please, if you can, I'd love to hear the explanation, I feel like I could learn something super valuable from this.
Hey did you know about this script? github.com/NoelFB/Celeste/blob/master/Source/Player/Player.cs
It's the actual character controller in the game, that the developers made public. I haven't found a way to make it work with Unity, but maybe you could!
how could i make it to where it disables wallSlide if the player was touching the ground and wall when they jumped? I don''t like how the character instantly starts grabbing the wall if you jump right next to it.
Thanks for the video! I've been trying to slowly understand each part of the movement script(total beginner here),when I try to apply the dashing it seems like dashing on the X axis has barely any effect,while dashing up and down seems to work fine. Any ideas on what might be missing? =o
Teaching how to do various awesome things seen in other video games? Sign me up. This one in particular helps with a very good 2D character controller that feels more natural (which i needed).
Looking forward to learning and experimenting! (God of War Axe throwing in 2D for example)
Awesome video, btw Matt did a writeup on how physics works in celeste and towerfall and celeste's character controller code is also open source:
- mattmakesgames.tumblr.com/post/127890619821/towerfall-physics
- github.com/NoelFB/Celeste/
There is something to be said about not using a physics engine, the way towerfall and celeste's physics work is much more rigid by only using discrete math (ints vs floats).
How about ff12 Gambit system or the victory screen when you defeat big bosses, or license system. I always wondered how that would work. I know the Gambit is letting the players mess with code. But how exactly would you do so.
This is exactly what im trying to do mate, amazing video and super helpful to give me some decent places to look for the right effects etc! Love the use of the 2dparticles for the wind and snow, amazing.
Looks really cool. I`d just suggest toning down a bit the ripple effect and the camerashake on the dashes. Other than that, wonderful. How long did you take to do it all?
I am usually against using rigidbody physics to handle player gravity and stuff because you don't often get the level of control and "tightness" that is needed for precise platforming, but you really did a great job making it all come together! :D
But did you typed Time.deltaTime? I mean, what if somebody has a better computer? You don't want to have the guy with a better computer have an advantage over the others when it comes to speed.
But still, great tutorial, this is the best unity movement I've seen in a while!
why can't i do that? usually these videos are inspiring, but i know pretty much everything you used here and yet i couldn't do it myself, this is depressing.
Thank you for sharing all these.And excellent Unity tech video.
You should try and recreate Spider-Man’s swinging in Spider-Man ps4
I love your videos. Interesting concepts done in a fun, entertaining, and informative way. It's very rare, please keep it up.
Perfect as always!
but ....
can you make a full tutorial of this kind of vidios?
slow ones
I still don't understand how walljump works is it not lerping between the exact same values? When I use that bit of code it does nothing
THANKS!
What do you think about using raycasts for movement, collision detection, etc comparing to this method?
Why all the physics related movement isn't managed in the FixedUpdate?
If you can't do a reverse extended hyperdash this isn't Celeste.
why do you automatically has a ground when you start the project?
the only thing is that the gravity sould be heavier. Also the downward dash shoudn't have the pause at the end, whic is also what allows for so many moves in celeste.
I am using the tileset right now for a prototype. Unfortunately, I have noticed that the title set is slightly warped to the upper right corner ☹
How did you make her stay still on the wall while grabbing? I've tried doing it the same way as you show but she still slides down just a but slower than the wall slide
for some reason... the dash only works in vertical for me...
This is great. Can you do one on Playdeads INSIDE?
I can't make it to dash horizontally.
But good video man!
if you didn't know Matt and Noel put up the Player class for Celeste if you want to see how they did it github.com/NoelFB/Celeste
you can teach us in 2d to make a game of police and thieves where we are the police it would be very interesting to learn to do the artificial intelligence of the thief escaping from us we can go taking some item to increase the speed until we catch the thief.
Next challenge should be you moving while on an enemy, like the shadow of the colossus
Short and simple, video tutorial.
With lots of mechanic.
Thank you soo much.
Wow!!!!!........ Whatever you do that's jaw dropping. I don't know how many it took you to work with this project but the final video you compiled is so exciting and encouraging. Please do what you do I'll constantly support you😎💓
Haven't watched it yet, but boy am i excited for this episode!
Like if you've played Celeste on SmileBasic!
Crazy 875 likes and not a snigel dislike, that is spmething new
hey, Can you say how you flip the character pls
How you make the snow effect in the background ?