Boss - How to Make a 2D Game in Java #54

In this video, we create this game's final boss and edit our code so it can handle large-sized entities.
If you want to use my assets (images/maps/sound) that are used in this tutorial, here's the link:
drive.google.com/drive/folder...
Guidelines for using Blue Boy Adventure's code and assets:
docs.google.com/document/d/1q...
Timestamps:
0:00 Bug Fix
3:40 Adding the Bat Monster
8:20 Fixing the Respawn Location
10:27 Creating the Boss Class
14:56 How to Handle Large Entities
21:30 Implementing a God Mode
24:00 Fixing the Drawing Area
25:00 Boss AI
30:25 Rage State/Boss Phase 2
35:00 FINAL RESULT
#javagamedevelopment #javatutorial #gameprogramming

Пікірлер: 70

  • @zacknelson1930
    @zacknelson1930 Жыл бұрын

    Absolute legend for this series please keep them coming! Really appreciate the time and effort you put in I’ve learned so much from your videos

  • @mohamedhumam3813
    @mohamedhumam3813 Жыл бұрын

    Thank you so much, I have learned so much from this series

  • @renatomoreira8587
    @renatomoreira8587 Жыл бұрын

    THANKS SO MUCH, PLEASE DON'T GIVE UP FROM THIS SERIE

  • @dutianze
    @dutianze Жыл бұрын

    thank you so much, this series is awesome👍 and i arrived here finally !

  • @RyiSnow

    @RyiSnow

    Жыл бұрын

    Congratz! I'm glad you were able to catch up :D

  • @jkuzevich
    @jkuzevich Жыл бұрын

    very useful video, thank you so much for the tutorial!

  • @TORMENTUMM
    @TORMENTUMM9 ай бұрын

    Great video! Thanks!

  • @user-hr3wf9rn9o
    @user-hr3wf9rn9o Жыл бұрын

    insane game dude !

  • @DYNAMAX_D
    @DYNAMAX_D Жыл бұрын

    I'm so grateful for these useful videos , although I can't watch them rn , because of high school examinations but , I will surely be watching them after I get to college ✌✌✌

  • @E7YSIAN
    @E7YSIAN Жыл бұрын

    Absolutely amazing!

  • @augustinegeorge633
    @augustinegeorge633 Жыл бұрын

    Bro i just found this series. This is awesome

  • @RyiSnow

    @RyiSnow

    Жыл бұрын

    Welcome!

  • @blank7051
    @blank705119 күн бұрын

    I was tortured by this chest bug for several days and gave up debugging and continued learning until I saw this video😭

  • @darkpaladin.
    @darkpaladin. Жыл бұрын

    This is brilliant

  • @d1legends157
    @d1legends157 Жыл бұрын

    Hey! Idk if you remember me or not but the last few weeks I’ve been learning 3D graphics with WebGL and JavaScript. I remember asking you if you would do a tutorial on a MineCraft clone and you were hesitant. I know understand why hahaha 3D graphics is a massive undertaking. I still really enjoy your content! Thank you for dedicating so much time to teaching us :)

  • @orangomango
    @orangomango Жыл бұрын

    Great work

  • @falongor6836
    @falongor6836 Жыл бұрын

    Hi! I am from channel "Железная Борода". Your videos is best! You best than he.

  • @RyiSnow

    @RyiSnow

    Жыл бұрын

    Thank you :) He blocked me from his channel. He deleted all my comments in his video and I cannot comment anymore 😓 I think he doesn't want people to know that he is stealing tutorials from me. Anyways, welcome to my channel. I hope you enjoy it!

  • @michajurkiewicz5471
    @michajurkiewicz5471 Жыл бұрын

    This is amazing :D

  • @dezik5535
    @dezik5535 Жыл бұрын

    WOW!!! That's so nice👍👍👍

  • @BinaryDuo
    @BinaryDuo Жыл бұрын

    Idea: Objectives UI (Whenever you complete a objective you get xp, Gifts ETC.) Oh and also love your videos! Keep making them.

  • @nikkovach6861
    @nikkovach6861 Жыл бұрын

    You are the best!

  • @MrLoser-ks2xn
    @MrLoser-ks2xn Жыл бұрын

    Thanks!

  • @reo8763
    @reo8763 Жыл бұрын

    Hello Ryi, i want to thank you so much for this wonderful series, it has help me so much. right now i'm only at the end of phase 1. I want to ask if I could import an object from gif file instead of png file?

  • @sergiosiclari3440
    @sergiosiclari3440 Жыл бұрын

    Nice series, I've followed every video you published and I'm sorry about the fact someone is stealing your work. Anyway, going back to Java topic, and more precisely to OOP principles, it would be better if you revisit your code by implementing those principles like Abstraction, Information Hiding, Polymorphism etc. A simple example would be implementing the Entity class as abstract and every field as private

  • @rostyslavlevder6821
    @rostyslavlevder6821 Жыл бұрын

    Thank you for the tutorial. What about the localisation in the game?

  • @realzguardian
    @realzguardian Жыл бұрын

    How does this not get more views

  • @user-gl4cv3pl2g
    @user-gl4cv3pl2g Жыл бұрын

    Hi! Are you going to add roof for buildings and hide this roof when you are inside?

  • @momagi6039
    @momagi6039 Жыл бұрын

    NICE!

  • @MattListor
    @MattListor Жыл бұрын

    I would really love it if you could add an update where the player isn't always at the center of the screen. Instead, there is a small window/borders the player can move (screenX, and screenY) in freely. The game shifts the map with its movement only when the player hits the border of this movement window. That way when you move only a little bit, the whole map doesnt have to shift every time. What do you think? Thanks so much. Ive learned so much from this tutorial but cant seem to figure this game camera adjustment out for myself

  • @markmcneill9566
    @markmcneill9566 Жыл бұрын

    So after all the tutorials are done can you do one for a sims 1 stile of game but it might be to long or hard there might be 1,000 episodes

  • @michaelharrington5860
    @michaelharrington58609 ай бұрын

    I have a killer bug that's throwing me for a loop. Similarly to the chest bug mentioned at the beginning of the video, when I start a new game, save at the healing pool, quit to title screen, load game, then visit the merchant, player life and mana disappear as if going into the dialogue state, but no dialogue pops up and the game freezes. This one has persisted for the past couple days and I haven't been able to pinpoint the issue yet.

  • @jo-de-uz
    @jo-de-uz Жыл бұрын

    nice

  • @raghunaths5230
    @raghunaths5230 Жыл бұрын

    Dear Sir, Immediately after entering dungeon 2, if i try to move left or right from the stairs tile it is not moving even though there is a earth tile. I can move in up direction only. MY FPS keeps fluctuating very randomly. please tell me why this is happening and how to correct.

  • @extrem2497
    @extrem2497 Жыл бұрын

    ありがとう

  • @ericthebattletechengineer9899
    @ericthebattletechengineer9899 Жыл бұрын

    These are amazing, did them all. I did find a bug tho. If you put a stone or two on a pressure plate, then exit and come back, the stones are still there, and when you set off the 3rd plate it no longer opens the door. Also, I have been knocked back into trees a couple times, not sure if that was me making a typo or not. It'd be amazing to have the code done for each of the 54 classes. Bit too late now, wish I would have done it, but it would help with typos.

  • @NikitaBomba112
    @NikitaBomba112 Жыл бұрын

    Can i add video to my game using java??

  • @Eevvsislluft
    @Eevvsislluft Жыл бұрын

    Can someone post a link to download the java files as I lost mine & don't fancy re-doing it all :)

  • @abcd-pr6tw
    @abcd-pr6tw Жыл бұрын

    Hello, first thank you for your videos. I wanted to add a JButton to gamePanel but for some reasons its does not appear above everything I draw (the character, tiles, etc...) Do you know how to fix this problem?

  • @RyiSnow

    @RyiSnow

    Жыл бұрын

    That's because the program updates/re-draws everything on the panel in every loop. Add a JPanel first on the gamePanel then place a button on it then you can see the button.

  • @abcd-pr6tw

    @abcd-pr6tw

    Жыл бұрын

    @@RyiSnow Thank you for your answer!

  • @thornadotrigger3073
    @thornadotrigger3073 Жыл бұрын

    Ryi snow how do you create a health bar for the boss that works ? You should have a dialogue box to challege the player and the boss.

  • @RyiSnow

    @RyiSnow

    Жыл бұрын

    Yeah, I know the boss's health bar is a bit hard to see in the darkness. I might try displaying it differently. Thanks for the suggestion.

  • @greatvast2143
    @greatvast2143 Жыл бұрын

    Hi RyiSnow, thank you so much for this series. This series has taught me more than anything else could. Recently, I implemented a storage chest into my game, so I can store items in it. However, I am experiencing an issue. For example, you have a chest and put stuff in it. Then, you place another chest, but the things in that chest are the same as the first. This is because there is only one "chest" arraylist for all of the chests. If you have time, could you please let me know how to fix this bug. Thank you in advance, and sorry if I didn't make much sense.

  • @michajurkiewicz5471

    @michajurkiewicz5471

    Жыл бұрын

    I'm not an expert but use a few boards :)

  • @RyiSnow

    @RyiSnow

    Жыл бұрын

    You can create an array for each chest!

  • @greatvast2143

    @greatvast2143

    Жыл бұрын

    @@RyiSnow Thank you SO much for the response, RyiSnow! I fixed the issue!

  • @paul7408
    @paul7408 Жыл бұрын

    I have an issue where my respawn still respawns me in the dungeon vs outside where it should be. Any guess on where to look? Thanks again!!

  • @RyiSnow

    @RyiSnow

    Жыл бұрын

    Did you watch this part? 8:21

  • @paul7408

    @paul7408

    Жыл бұрын

    @@RyiSnow Thank you!!! Yes This was the part i missed! Had left out 'gp.currentMap = 0;'

  • @SvsJFaceoff
    @SvsJFaceoff Жыл бұрын

    Hi! One bug, but when you keep pressing enter with your pickaxe, you can actually destroy your own projectile. Just keep pressing enter with your pickaxe as your main weapon, and then shoot a fireball while doing that. You can destroy your own projectile!

  • @RyiSnow

    @RyiSnow

    Жыл бұрын

    Actually, that's not a bug. We implemented the function in Part 41 so you can destroy projectiles with your weapon (it doesn't need to be the pickaxe. Any weapon can do it). So it's an intended physics.

  • @SvsJFaceoff

    @SvsJFaceoff

    Жыл бұрын

    @@RyiSnow Hi! This might be a bug that is only for me, but when I load my game and open a chest I did not open, it gives me an error saying: Exception in thread "Thread-0" java.lang.NullPointerException: Cannot read field "name" because "item" is null I don't know why this is happening, but I think that for some reason, objects in the chest are not being saved as they are in there. Either I didn't write a piece of code from a video, or it's a mistake that is also happening for others. Also, if that error doesn't happen, when I open a chest I didn't open after loading, I can see the dialogue screen for a split second, and it disappears. It's quite strange.

  • @SvsJFaceoff

    @SvsJFaceoff

    Жыл бұрын

    Nope, nevermind.

  • @austin4694
    @austin4694 Жыл бұрын

    I created a second map so that I can place a lot of interactable trees and I scaled the trees up to 3 tiles by 3 tiles. Do you know how to detect when the player collides with a tree?

  • @RyiSnow

    @RyiSnow

    Жыл бұрын

    You can set a solidArea according to the tree size.

  • @austin4694

    @austin4694

    Жыл бұрын

    @@RyiSnow how would i make it so that a solid area is generated everytime a tree is placed. i currently have like a second map that is only tree tiles so that trees aren’t objects.

  • @RyiSnow

    @RyiSnow

    Жыл бұрын

    @@austin4694 Just like we did for the dry tree.

  • @austin4694

    @austin4694

    Жыл бұрын

    @@RyiSnow okay thank you

  • @m4to_016
    @m4to_016 Жыл бұрын

    Can someone help me ? I want to increase the size of the Boss like in the video but when i give the (for ex.) int i = 5; gp.tileSize*i, The Boss doesnt become bigger on screen if you know what i mean but when i do the same with my Player image it becomes bigger. Where could be the problem ? It also doesnt work on any other monstes if i try to make them look bigger. Only on player ...

  • @RyiSnow

    @RyiSnow

    Жыл бұрын

    Maybe you are still passing gp.tileSize to the Entity's drawImage method as width and height?

  • @m4to_016

    @m4to_016

    Жыл бұрын

    @@RyiSnow Oh, you are right, did you fix it in any previous videos ? Or do you have any suggestion how to fix it ?

  • @m4to_016

    @m4to_016

    Жыл бұрын

    I fixed it by creating new BufferedImage image2 and new up1Boss up2Boss ... not the best way to fix it but at least its working now :D

  • @MrLoser-ks2xn
    @MrLoser-ks2xn6 ай бұрын

    🥰🥰🥰

  • @hydrogennetwork
    @hydrogennetwork5 ай бұрын

    what is god mode

  • @testtestt-jf9gd
    @testtestt-jf9gd Жыл бұрын

    instead of saying ==true you can leave it like this if (inRage) // same for the == false if(!inRage) || it's cleaner

  • @user-wp5wg7io3c

    @user-wp5wg7io3c

    2 ай бұрын

    He just writes code that everyone can understand

  • @kareemfarrag9713
    @kareemfarrag9713 Жыл бұрын

    How to make a game like Gameloft mobile games (nokia java) Assassin's Creed Prince of Persia Men in black 3

  • @raghunaths5230
    @raghunaths5230 Жыл бұрын

    Dear Sir, Please help me.

  • @Langostaz
    @Langostaz Жыл бұрын

    Great work as always! Is it possible to make it an online game to play with some friends