Mario Game Tutorial with JavaScript and HTML Canvas

แชร์
ฝัง
  • เผยแพร่เมื่อ 9 มิ.ย. 2024
  • Get the rest of the game early at: chriscourses.com/mario-game-c...
    Make your own animations with the Deekay Tool: aescripts.com/deekay-tool/
    Creating a sidescroller type Mario game requires a bit of knowledge related to physics, collision detection, and sprite animation. It can be quite tricky at first, but once you understand the basics, you can set up some full-fledged levels which anyone can play.
    This tutorial will teach you everything you need to know in regards to developing a fully functional Mario-type game with just HTML5 canvas and vanilla JS.
    Canvas Boilerplate: github.com/christopher4lis/ca...
    Image Assets: drive.google.com/drive/folder...
    0:00 - Project setup
    5:49 - Player creation
    12:20 - Gravity
    20:40 - Player movement
    35:43 - Platforms
    43:42 - Scroll the background
    53:46 - Win scenario
    56:38 - Image platforms
    1:14:09 - Parallax scroll
    1:24:12 - Death Pits
    1:29:46 - Level creation
    1:40:49 - Fine tuning
    1:42:56 - Sprite creation

ความคิดเห็น • 395

  • @amaldash3394
    @amaldash3394 2 ปีที่แล้ว +9

    Excellent way to learn how to download the game without any inconvenience, very easy to follow the steps you indicate 👍

  • @yaseenahmad6170
    @yaseenahmad6170 2 ปีที่แล้ว +52

    Chris! your voice is so relaxing when I wasn't falling asleep I just watched your tutorial and in the next 5 mins, I fell asleep lol. anyway, good job I really love the way you teach.

    • @ChrisCourses
      @ChrisCourses  2 ปีที่แล้ว +25

      Hahah thanks man, I remember my first few vids I released I actually had a few people complaining about my voice. Glad to hear perception has changed over the past few years 😆

    • @XILikeTrainsX
      @XILikeTrainsX 2 ปีที่แล้ว +3

      @@ChrisCourses your voice is strange.
      JK. As a rather good
      programmer this is still informative because we can see some techniques which are not learned yet or spot an improvement of our own code. Thanks for that! :)

    • @Solomonwo
      @Solomonwo 2 ปีที่แล้ว +1

      No

    • @Solomonwo
      @Solomonwo 2 ปีที่แล้ว

      @@XILikeTrainsX yss

    • @hilairesevn9499
      @hilairesevn9499 2 ปีที่แล้ว

      You have financial worries and you want to make a loan. Contact We offer financial loan from 4000 € to 100000 € with an interest rate of 1.5%. The hard for reimbursement of the maximum loan is 160months. Interested contact us

  • @TheLegendOfNiko
    @TheLegendOfNiko ปีที่แล้ว +1

    Purchasing your course now brother. There is literally nowhere else that teaches you how to do this. Thanks man!

  • @franciscobarbosa956
    @franciscobarbosa956 2 ปีที่แล้ว +11

    Was looking to do something like this in this weekend, thank you Chris!

  • @ricomclellanjr4042
    @ricomclellanjr4042 2 ปีที่แล้ว +27

    You've definitely made coding fun for me. Please keep making these games and you're a great instructor.

  • @adeyemiadeyanju2247
    @adeyemiadeyanju2247 ปีที่แล้ว +1

    I have been following and watching the playlist you created for HTML 5 canvas and I just pause here and say a big Thank you for this content Chris, I’m learning soo much ❤
    Even tho I know ThreeJs, learning concepts like collision detection was a real step up for me, God bless you man

  • @ireenehabeeb2223
    @ireenehabeeb2223 2 ปีที่แล้ว +56

    Didn't know there is so much you can do with HTML5 Canvas + JS. Its powerful. Thanks for the video Chris

    • @vincentgallagher_
      @vincentgallagher_ 2 ปีที่แล้ว +1

      Can we fill in love?

    • @tonywu3554
      @tonywu3554 2 ปีที่แล้ว

      @@vincentgallagher_ I must say Chris deserves way more subscribers his videos are super helpful.

  • @TheLightofScience
    @TheLightofScience 2 ปีที่แล้ว +3

    This is one of the best tutorial I've ever seen, thank you so much for your hard work

  • @losrobbosful
    @losrobbosful ปีที่แล้ว +12

    I reaaaally love how you scale up the complexity of the game very very cautious and carefully, introducing concepts with as much depth as necessary instead of just dropping concepts in randomly.
    That makes your tuts really outstanding.
    Hope you will also do more on BabylonJS again :D

  • @muhzungoo5963
    @muhzungoo5963 2 ปีที่แล้ว +1

    Oh maaan, I've been waiting for this!! Thanks Chris, looks dope

  • @minfoodtravels
    @minfoodtravels ปีที่แล้ว

    chris is a great teacher, I learned so much from how to use the things ive learned from courses and such in objects and functions etc

  • @lukashenrique4295
    @lukashenrique4295 2 ปีที่แล้ว +7

    thx for yet another excelent tutorial! I'm loving your lessons, programming has been fun once again ^^ tip, for death pits u could just reset player Y and X position back to 0, 20 to get back where u started on the screen. and reset objects to their positions so the entire screen gets realocated to their original position, too. reset objects first, or else your player could land on another death pit and fall into a loop depending how u designed the level. it fits all kinds of levels this way.

  • @thegeos568
    @thegeos568 7 หลายเดือนก่อน +1

    I've just found your channel and love it and your tutorials. Big thank you for making this content 🙂

  • @muhammadasyrafi9550
    @muhammadasyrafi9550 2 ปีที่แล้ว +21

    Great tutorial! Thank you so much! It helps me kickstart my Javascript learning journey. Just want to add a little tweak I did on my attempt.
    If you hold the "UP" key, it will make your "player" kind of flying.
    I added *if (event.repeat) { return }* to prevent holding the *UP* key sending the player flying.
    It goes something like this:
    addEventListener('keyDown', ({ keyCode }) => {
    switch (keyCode) {
    case 38:
    if (event.repeat) { return }
    player.velocity.y += -20
    break
    }
    })
    note: I bind the key *UP* instead of *W* hence the *case 38*

    • @filbertlimm
      @filbertlimm 2 ปีที่แล้ว

      thankyou!! This was really helpful, I also realized that mistake!! salam dari indo juga :)

    • @MuskyDoge
      @MuskyDoge 2 ปีที่แล้ว +2

      That fixed the problem for holding UP but what about for tapping up? Must be something with setTimeout?

    • @ruairidhgrass3479
      @ruairidhgrass3479 ปีที่แล้ว

      @@MuskyDoge did you find a fix for this?

    • @ruairidhgrass3479
      @ruairidhgrass3479 ปีที่แล้ว +1

      Found a fix for the double, triple quadruple jump issue!
      I created a new condition on the Player class called 'onPlatform' and set it to true by default. This condition will return true if the player is touching a platform and false if the player if not touching a platform. To do this I wrote a small conditional within the player.update() function which goes like this:
      this.velocity.y !== 0 ? this.onPlatform = false : this.onPlatform = true
      Then in the addEventListener case statement for "keyDown" I amended the "w" case like so:
      case "w":
      case " ":
      case "ArrowUp":
      player.onPlatform === true ?
      player.velocity.y -= 15
      : null
      break;
      No the player wont be allowed to take more than one jump :D

    • @MuskyDoge
      @MuskyDoge ปีที่แล้ว

      @@ruairidhgrass3479 if (player.velocity.y === 0) {
      player.velocity.y -= 25
      }
      spent hours trying to solve that lol

  • @alzaresh
    @alzaresh 7 หลายเดือนก่อน

    You're fast and you're informative. Really enjoying your content.

  • @ravarador
    @ravarador ปีที่แล้ว +11

    The only programming tutorial I've watched from start to finish without taking a break! Very fun tutorial!

  • @AirRifleRangeReport
    @AirRifleRangeReport 2 ปีที่แล้ว +48

    Little tweak to add the effect of 'friction' to the player:
    if(keys.right.pressed) {
    player.velocity.x = 5;
    } else if(keys.left.pressed) {
    player.velocity.x = -5;
    } else {
    player.velocity.x *= 0.9;
    }

    • @ruairidhgrass3479
      @ruairidhgrass3479 ปีที่แล้ว +3

      My player just runs off the screen if you do this!

    • @Dev-PauloEd
      @Dev-PauloEd ปีที่แล้ว

      Dude, that was a really good one! Thanks, i was trying to do this but i couldn't... Awesome! 😄

  • @wilwad
    @wilwad 2 ปีที่แล้ว

    Have been following your canvas game tutorials so I can make games for my daughter and also get her interested in programming. Thank you Chris

    • @yoguy515
      @yoguy515 2 ปีที่แล้ว

      do u how to deploy it?

  • @frodion
    @frodion 9 หลายเดือนก่อน

    One of the best tutorials for javascript game development. It's a lot of fun to follow along your tutorials.

  • @glaisonlimadospassos5581
    @glaisonlimadospassos5581 2 ปีที่แล้ว +7

    Seus vídeos me ajudaram muito, obrigado pelo excelente trabalho!

  • @kimrosvol6205
    @kimrosvol6205 ปีที่แล้ว +7

    not sure if this is mentioned but "keyCode" is deprecated. New solution:
    document.addEventListener('keydown', (event) => {
    console.log(event.key)
    switch (event.key){
    case 'a' :
    break
    case 's':
    break
    case 'd':
    player.velocity.x += 1
    break
    case 'w':
    player.velocity.y -= 20
    break
    case 'ArrowLeft' :
    break
    case 'ArrowDown':
    break
    case 'ArrowRight':
    player.velocity.x += 1
    break
    case 'ArrowUp':
    player.velocity.y -= 20
    break
    }
    })

  • @Cho1279624
    @Cho1279624 2 ปีที่แล้ว +1

    I am waiting for this kind of video, thank you!

  • @andersoncdz1
    @andersoncdz1 2 ปีที่แล้ว +6

    Your videos are amazing. I loved your channel's content, the game videos in special. Please don't stop making videos, please (:

    • @ChrisCourses
      @ChrisCourses  2 ปีที่แล้ว +6

      Thanks Anderson, that means a lot to me. Have more game videos on the way, thinking about doing Pacman next. Really appreciate your support 🙌

    • @andersoncdz1
      @andersoncdz1 2 ปีที่แล้ว

      @@ChrisCourses , pacman would be an amazing tutorial, it was a game that I loved playing when I was a child. How about a side scrolling space ship game? I like the background moving effect, or a top down view game like pokemon or the old RPG games from super famicon. Thanks a lot for your reply.

  • @sheikhyawar2628
    @sheikhyawar2628 2 ปีที่แล้ว +1

    A great tutorial from a great instructor.

  • @idukpayealex
    @idukpayealex 2 ปีที่แล้ว +5

    wow, you really put a lot of work in your videos I hope you have more subscriber

  • @ItsVeronikaBeezy
    @ItsVeronikaBeezy 2 ปีที่แล้ว

    i appreciate this , best canvas tutorial out there!

  • @differenceParsley
    @differenceParsley 2 ปีที่แล้ว +2

    Great tutorial, including refactoring as a part of the process instead of skipping through made this whole project doable for a web dev noob like me. All of my previous experience was in hardware oriented projects using Arduino/C++ or RPi/python. This was a perfect introduction to JS.
    Almost finished re-skinning the game with my own image assets but got hung up working with Deekay Tool, I'll get there eventually, zero experience with AE probably isn't helping.
    Subbed! Link to your courses?

  • @naveenpisher6928
    @naveenpisher6928 2 ปีที่แล้ว +1

    Hey You Man, Just Stunning. How you are explaining like a machine!!!!!!!! AWESOMEEEE Thank you!

  • @erwinyulianto5407
    @erwinyulianto5407 2 ปีที่แล้ว +7

    Now I can teach my son a fun programming, thank you Chris!

    • @mahaali89
      @mahaali89 2 ปีที่แล้ว +2

      You are a great dad!

  • @brendanmulligan8640
    @brendanmulligan8640 2 ปีที่แล้ว

    How in the world do people know how to fix this stuff!? Legends, you're all legends

  • @85vaska
    @85vaska 2 ปีที่แล้ว

    Hey Chris. I think this is more that good tutorial. Thanks.

  • @milena9356
    @milena9356 10 หลายเดือนก่อน +4

    for anyone who had problems when he starts the server
    at first you have to know that he runs the code on git bash, that was my first mistake. After that I had several errors after "npm start", but to you solve it (if it's the same as mine) i had to run ' export NODE_OPTIONS="--openssl-legacy-provider" ' and to make sure that the environment variable has been set, you can run ' echo $NODE_OPTIONS ' , if you see ' --openssl-legacy-provider ' its ok and you can run 'npm start' again
    *dont forget that you have to run all these codes in mario-game-server folder, and they're valid for windows

  • @codingaddiction5224
    @codingaddiction5224 ปีที่แล้ว

    A video from TOTAL scratch on the subject... Just a A-WE-SOME idea ! I subscribe, this video is a masterpiece :)

  • @josephcieplak8920
    @josephcieplak8920 2 ปีที่แล้ว +1

    We're waiting for the 2 part!

  • @user-px4fg9ow8j
    @user-px4fg9ow8j 8 หลายเดือนก่อน

    this design concept help a lot THX!!

  • @babyman8046
    @babyman8046 2 ปีที่แล้ว

    My brother we are very thank for you because you are a good coder and voluntarism

  • @jgvlc
    @jgvlc 2 ปีที่แล้ว

    Thank you very much, excellent content, I wish you much success!

  • @anand_dudi
    @anand_dudi 2 ปีที่แล้ว

    Only youtube where i started my three js journey so thankyou ..and thanks for this one too

  • @squeegeul2.033
    @squeegeul2.033 2 ปีที่แล้ว +3

    i want more of these video they make me learn so much its amazing

    • @ChrisCourses
      @ChrisCourses  2 ปีที่แล้ว +3

      I got another coming this week, will be teaching how to make a dope version of Space Invaders

    • @ikdamagnificent8387
      @ikdamagnificent8387 2 ปีที่แล้ว

      @@ChrisCourses how much for a game like this?

  • @cardo720
    @cardo720 6 หลายเดือนก่อน

    You are amazing Bro. You have done it all. Thank you soo much

  • @SandeepKumar-my7pk
    @SandeepKumar-my7pk ปีที่แล้ว +1

    great work brother ❤

  • @grzegorzlorenc1762
    @grzegorzlorenc1762 3 หลายเดือนก่อน

    Great course :) Thanks very much :)

  • @Sleet-user
    @Sleet-user 2 ปีที่แล้ว

    I know (almost) no html and no javascript, this helped me a lot

  • @lioramar8465
    @lioramar8465 2 ปีที่แล้ว

    Thanks a lot! very informative🤓

  • @aryapatni6252
    @aryapatni6252 2 ปีที่แล้ว

    Hey dude your voice is great and relaxing

  • @Mind--Blow
    @Mind--Blow ปีที่แล้ว

    hey Chris thanks for the video i have made it very good one

  • @user-uv5py8zi1w
    @user-uv5py8zi1w 2 ปีที่แล้ว

    Amazing. Thank you a million

  • @killroy1986
    @killroy1986 2 ปีที่แล้ว +4

    Hey Chris! Great content, thank you so much, I learned a lot. A question... I'm wondering, even though it's just a 2d platformer, ideally, would it make sense to implement a game like this in webgl using matrices? Or it's just simply overkill? Not for learning purposes, I'm just wondering if that would be the best way since as you improve as a game dev, you might want to add a lot of special effects, particles stuff like that.
    Alright, I know it's always "it depends" so I'd rephrase my question... If you were about to write a very modern 2d platformer with lots of moving stuff on the screen, would you use three.js or, unless it's 3d, the 2d rendering context is totally fine.
    Thank you in advance!

  • @liLi-lg8xv
    @liLi-lg8xv 2 ปีที่แล้ว +1

    Great stuff!!!

  • @mrnabby4178
    @mrnabby4178 8 หลายเดือนก่อน

    Gonna build this soon

  • @mallawahirosh8920
    @mallawahirosh8920 2 ปีที่แล้ว +1

    great tutorial

  • @MightyKingKala
    @MightyKingKala 2 ปีที่แล้ว +1

    Thank you for this video

  • @strizelentwickler9451
    @strizelentwickler9451 2 ปีที่แล้ว

    Thank you very much. Great job!!!!!!

  • @GameVideos159
    @GameVideos159 2 ปีที่แล้ว

    Amazing video!!! ;) Really good job...I enjoy as will be write code and learn development a games :)

  • @CallousCoder
    @CallousCoder ปีที่แล้ว

    I wrote this in assembly in the C64 last year. As a round up to my C64 assembly course. But I still need to make the video.

  • @anmogashoa
    @anmogashoa 2 ปีที่แล้ว

    loved this one Chris. Found the collisions code extremely helpful for the game I am working on. Have one question though, after calling the init restart game function when an enemy gobbles the player, how do I make sure it isn't called over and over when a player powers up and supposed to go through an enemy?.. Thanks again

  • @sejieinzbern1596
    @sejieinzbern1596 2 ปีที่แล้ว

    this channel is awesome

  • @brayanlima3108
    @brayanlima3108 ปีที่แล้ว

    production. Thanks again!

  • @imthekingiam4506
    @imthekingiam4506 ปีที่แล้ว

    LOVE U FOR TUTORIAL VERY VERY GOODDDD
    💫❤

  • @the_kid777
    @the_kid777 6 หลายเดือนก่อน

    Just thank you. Thank you.

  • @elClubdelas7Cifras
    @elClubdelas7Cifras 2 ปีที่แล้ว

    wow, just finished the video and did it my self following your instruction.
    Quick recommendation: please use more than 1-2 sheets. Its much more organized if you use a separate sheet for classes, another for global variables and another for the game code.

    • @Ttlwar
      @Ttlwar 2 ปีที่แล้ว

      could do, but that in a example like this, will make this more complicated

  • @muderer6029
    @muderer6029 2 ปีที่แล้ว +6

    hey @Chris Courses at 24:20 - you destructured the keydown event into "keyCode" such as addEventListener('keydown', ({keyCode}) => { console.log(keyCode)}. But the warning says, "KeyCode was deprecated ". I searched for it and then found they recommend 'key' or 'code' instead of 'keyCode'. How can you use the 'keyCode' in your text editor?

    • @tejageddam3283
      @tejageddam3283 ปีที่แล้ว

      Same issue was found by me 🥲🥲 i want another solution which is working for wasd keycodes 👍

    • @Fishamble
      @Fishamble ปีที่แล้ว

      @@tejageddam3283 Just use key in place of keycode
      addEventListener('keydown',({key})=>{
      then
      case 'a' instead of case 65 etc

  • @dbroche
    @dbroche 2 ปีที่แล้ว

    Super great tut for beginners Chris! I learned a lot - - however - - definitely not production ready. I'm sure you get into all of that during the paid course though. Great job!

    • @yoguy515
      @yoguy515 2 ปีที่แล้ว

      do u know how to deploy it?

    • @dbroche
      @dbroche 2 ปีที่แล้ว

      @@yoguy515 watch until the end and you’ll learn how to deploy to #Netlify

    • @yoguy515
      @yoguy515 2 ปีที่แล้ว

      @@dbroche bro there is nothing..can u add timestamp?

    • @MuskyDoge
      @MuskyDoge 2 ปีที่แล้ว

      @@yoguy515 You build. "npx webpack --config webpack.config.js" will make a dist folder. If you upload everything from the dist to a host it will allow it to run.

  • @kemokemo9914
    @kemokemo9914 2 ปีที่แล้ว

    Amazing video

  • @siddhantkhare2775
    @siddhantkhare2775 2 ปีที่แล้ว +1

    Really very great explaination.....
    Btw, Love from India Bro.....🇮🇳🇮🇳🇮🇳

  • @charlesvu8019
    @charlesvu8019 2 ปีที่แล้ว

    So amzing, Make more games pls

  • @nini-ic7is
    @nini-ic7is 2 ปีที่แล้ว

    amazing stuff

  • @Coding_Asmr_PraDev
    @Coding_Asmr_PraDev 2 ปีที่แล้ว +18

    Your videos are delayed but the quality of content is just like never seen before on entire youtoob

  • @mydevcarrer6003
    @mydevcarrer6003 2 ปีที่แล้ว

    Your course is so excited. But only one thing I really wonder that how to create a control flow to code step by step? Can you share you experience ?

  • @mohamedlamhamdi5244
    @mohamedlamhamdi5244 2 ปีที่แล้ว

    thank you for the content

  • @Bartnick81
    @Bartnick81 ปีที่แล้ว

    Awesome, thanks

  • @user-ku3pg9bt1t
    @user-ku3pg9bt1t 3 หลายเดือนก่อน

    Thanks very much :)

  • @alexandretodorovic5950
    @alexandretodorovic5950 2 ปีที่แล้ว +2

    Did it from the start, but i wish you could show us a another way to use the canvas, without local serveur. Great video

    • @bennydaniel93
      @bennydaniel93 2 ปีที่แล้ว

      @yammo yam man i'm struggling whit this 🤣 i have Visual Studio Code and Live Server installed but the "import" statement doesn't work, please if you see this give me a hand whit the CreateImage() function 🙏

    • @bennydaniel93
      @bennydaniel93 2 ปีที่แล้ว

      @yammo yam thank you for time bro! i'll try that function now. To follow the video i was copying one after other to make it run haha
      edit: IT REALLY WORKS!

    • @TiagoMSantos28
      @TiagoMSantos28 ปีที่แล้ว

      @@bennydaniel93 hey! i´m having the same problem. can you help me? i'd be extremely grateful :)

  • @bowler28
    @bowler28 2 ปีที่แล้ว +2

    23:49 Why do we look for the keyCode? Can't we just use the key or the code property? It would be clearer to read, that's for sure. I don't mean to call you out or anything. This is my first time programming any website so I just want to know why. Is it faster to compare ints than strings?

  • @gektorix
    @gektorix 2 ปีที่แล้ว +18

    Working with collisions was interesting and allowed me to play around with the values. But the topic of using sprites was a bit confusing and requires a separate theoretical breakdown. You need to put theoretical elements and a bit of history into courses as you did before.
    The main problem for beginners is the inability to set up a local server. An up-to-date guide is needed.

    • @bryanpotts3602
      @bryanpotts3602 11 หลายเดือนก่อน

      You don’t need that you can just do the new Image() and put the source

  • @RyderYeh
    @RyderYeh ปีที่แล้ว

    Hi Chris! Do you know how to download the git? I didn't get that right. Thank you! Awesome amazing tutorial btw!

  •  2 ปีที่แล้ว

    congratulations for the tutorial. in the full video do you provide subtitles in Portuguese? I am Brazilian. Thank's

  • @NotoriousGarbagePerson
    @NotoriousGarbagePerson ปีที่แล้ว

    im a bit of a begginner, so i have some questions. in 13:50 he creates the update function. is it a function or something else? its not stored as a var/const and doesnt have the word function in the declartation. is it something else or just a way of writing functions i havenst seen before. also the html page had nothing but a canvas tag and it still functioned propperly. do you not need the html/head/body tags?

  • @Murdermurcox
    @Murdermurcox ปีที่แล้ว +1

    opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
    library: 'digital envelope routines',
    reason: 'unsupported',
    code: 'ERR_OSSL_EVP_UNSUPPORTED'
    Getting this error code when i try to do npm start

  • @patrickconrad2874
    @patrickconrad2874 2 ปีที่แล้ว

    So keyCode is depricated. Not sure if he mentions this in the video later on. Will there be any weird side effects if I just use the code property? I guess I'll need to account for other language keyboards but idk if that is an issue with keyCode still too.

  • @dotgaepark5206
    @dotgaepark5206 ปีที่แล้ว

    Love ur vid and checkList 🤟🏼🤟🏼

  • @yoguy515
    @yoguy515 2 ปีที่แล้ว +1

    when i run game on my localhost it runs perfectly but when i de[ploy it ,it throws just a black screen,,,plzzz someeone help meeeeeeeeeeee

  • @tobarbaro
    @tobarbaro 2 ปีที่แล้ว

    Thanks for this tutorial, I loved it. I have a question. How many objects I can process and render on screen before it starts to lag?

    • @Ttlwar
      @Ttlwar 2 ปีที่แล้ว

      that depends on how powerful the machine is that is running the code

  • @forkets86
    @forkets86 ปีที่แล้ว +2

    Starts out great but gets frustrating once you start adding images in. I use VS Code, so your method of adding images doesn't work (nor is it necessary) for me. So then trying to add further images becomes complicated and I don't know how to do it.

    • @TiagoMSantos28
      @TiagoMSantos28 ปีที่แล้ว

      i´m having the same problem. did you find a solution?

    • @forkets86
      @forkets86 ปีที่แล้ว

      @@TiagoMSantos28 nope, had to abandon the project.

  • @benjamineng6047
    @benjamineng6047 2 ปีที่แล้ว +5

    At 59:14, Chris talks about it being much easier with the live server-extension in vs code, but he doesn't say how to use it. Could anyone help me with a link to a tutorial perhaps or any tip whatsover? Thanks! By the way, great video!

    • @gektorix
      @gektorix 2 ปีที่แล้ว

      The best solution is to configure WebPack and implement projects on a local server.
      Here is a link to a great channel video. The author is very detailed and shows all the installation and configuration steps.
      th-cam.com/video/9c3dBhvtt6o/w-d-xo.html&ab_channel=SteveGriffith-Prof3ssorSt3v3
      There is also a guide on Chris's channel, but it is very outdated and not suitable for WebPack 5

    • @gauribanga6885
      @gauribanga6885 ปีที่แล้ว

      Just download the live server extension in vs code. Then you can go to your page and click on start live server.

    • @tejageddam3283
      @tejageddam3283 ปีที่แล้ว

      Same issue is here if you get any video or idea please share with me also 🙂🙂

    • @tejageddam3283
      @tejageddam3283 ปีที่แล้ว

      I did the same thing I just click on go live button and it created localhost server but nothing is rendering the page gone blank

    • @tejageddam3283
      @tejageddam3283 ปีที่แล้ว

      In console it shows only"live reload enabled"and nothing happens

  • @Cho1279624
    @Cho1279624 2 ปีที่แล้ว +1

    24:20 - you destructured the keydown event into "keyCode" such as addEventListener('keydown', ({keyCode}) => { console.log(keyCode)}. But the warning says, "KeyCode was deprecated ". I searched for it and then found they recommend 'key' or 'code' instead of 'keyCode'. How can you use the 'keyCode' in your text editor?

    • @andricode
      @andricode 2 ปีที่แล้ว +1

      Deprecated means still available but has stopped recieving support, if it has any error it wont be fixed

  • @GravyyTrain
    @GravyyTrain ปีที่แล้ว +1

    When setting a lose condition why not just do a if(player.position.y > X) { location.reload() } to refresh the whole website

  • @bhuku1250
    @bhuku1250 2 ปีที่แล้ว

    Thanks bro

  • @KingKakashi45
    @KingKakashi45 2 ปีที่แล้ว +1

    You are the best

  • @zettkusanagi6322
    @zettkusanagi6322 5 หลายเดือนก่อน +1

    biggest problem was importing those images. Once we moved everything to npm or other server, it got fixed. Might as well start the whole project installing node

  • @yoguy515
    @yoguy515 2 ปีที่แล้ว +1

    bro !! i deployed this game on nelify only black screen is showing there is no game to accesss

  • @tejageddam3283
    @tejageddam3283 ปีที่แล้ว +2

    I'm unable to add platform image in vscode using import method how to give platforms a image in vscode can anyone help me please

    • @TiagoMSantos28
      @TiagoMSantos28 ปีที่แล้ว

      i´m having the same problem. did you find a solution?

  • @kaushiknagella06
    @kaushiknagella06 ปีที่แล้ว

    @chris courses so I tried they same method for the images and for some weird reason if I set the height and width equal to the image height and width and collision detection goes off and I can’t stand on the platform

  • @caiomalheiros4996
    @caiomalheiros4996 2 ปีที่แล้ว

    Obrigado pelo vídeo

  • @daveb7596
    @daveb7596 2 ปีที่แล้ว

    my animation moves so quickly i have a 6 frame animation and its just strobing its flipping through so quick. any pointers?

  • @arunbohra4346
    @arunbohra4346 ปีที่แล้ว

    Instead of using that boilerplate for server we can also use live-server from npm

  • @wolverinemacabeo1224
    @wolverinemacabeo1224 ปีที่แล้ว

    Cool, you are helping us to defeat you mr defeated.

    • @wolverinemacabeo1224
      @wolverinemacabeo1224 ปีที่แล้ว

      Is a good tangent return say something in defense of being defeated about this isnt my canvas.

  • @yoguy515
    @yoguy515 2 ปีที่แล้ว +1

    anyone know how to deploy it? i did some changes i gotta deploy this

  • @bryanpotts3602
    @bryanpotts3602 11 หลายเดือนก่อน

    I am trying to fix the issue where you can infinitely jump by detecting the velocity of the player. However, when the jump is at its peak, it is also 0. Is there a way to solve this while only using the velocity

  • @EphemeralRecursion
    @EphemeralRecursion 11 หลายเดือนก่อน

    It seems as if this import function for the sprites doesn't work on windows.
    I've seen a stack exchange article referencing this video having the same problem ("the server responded with a MIME type if "image/png" - HTML / javaScript")
    Has anyone else encountered or solved this?