Cutscene - How to Make a 2D Game in Java #56

In this video, we create a cutscene manager class and create a little boss event.
We move the camera without following the player and let the boss speak some dialogue.
Guidelines for using Blue Boy Adventure's code and assets:
docs.google.com/document/d/1q...
Thanks for watching.
Timestamps:
0:00 Introduction
0:29 Putting the boss to sleep
1:23 Setting the boss dialogues
2:54 Setting up the CutsceneManager
4:42 Triggering the cutscene
7:11 Summary of the cutscene
8:20 Phase 0: Placing iron doors
14:01 Phase 1: Moving the camera
19:25 Phase 2: Waking up the boss
20:50 Phase 3: Letting the boss speak
24:38 Phase 4: Returning to the player
27:35 The effect after the boss is defeated
30:05 Recording the game progress
31:40 FINAL RESULT
#javagamedevelopment #javatutorial #gameprogramming

Пікірлер: 61

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

    man this guy is crazy, to keep updating till this day takes some serious effort, two whole years. I really appreciate you, keep up the good job king🗿

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

    Been waiting for cutscenes. Thank you so much! Love this series

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

    Great video. Thanks for your work!

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

    This should get way more views love the vids!

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

    Youre so amazing just when i thought you were finish you bring something else

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

    Hey Ryi, great video as always. I love the videos and was wondering what’s next for this project. Thanks 😊

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

    Nice tutorial, like always

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

    My friend thank you very much.

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

    Thanks!

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

    Thank you very much for making this series of videos, they are really very useful and entertaining. Could you teach us how to rank the top 10 players in persistent support? i mean file or database

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

    awesome

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

    LETSGOO JUST LIKE I REQUESTED TYSM

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

    Thank you again for running this series :) Great video :) How many more parts are you planning to record for this series?

  • @RyiSnow

    @RyiSnow

    Жыл бұрын

    One more video!

  • @michajurkiewicz5471

    @michajurkiewicz5471

    Жыл бұрын

    @@RyiSnow You don't plan to add quests? Overall, it's a real shame that this series is ending. It was supposed to be a zelda clone, and almost another game came out, but you can't do this series forever either :) I'm counting on some extra video for this series, like choosing a character class (in the menu we can choose a character, but it's not developed), quests, dialogue options, etc. Anyway, you did a great job :)

  • @nicholasbrooks7349

    @nicholasbrooks7349

    Жыл бұрын

    @@michajurkiewicz5471 quests though the original Zelda really didn’t have them minus kill bosses

  • @michajurkiewicz5471

    @michajurkiewicz5471

    Жыл бұрын

    @@nicholasbrooks7349 This tutorial is better than Zelda :D

  • @metalstraw6700

    @metalstraw6700

    Жыл бұрын

    Goat RyiSnow

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

    Thank you for creating a good and easy to understand tutorial❤. Can you tell or give an example of the design pattern that you have used about what kind of pattern it is?

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

    NICE!!

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

    keep going

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

    Another master class. Thank you as always! I've been thinking about the data you store in the code. In the case of dialogues, it may result in thousands of lines of text in between methods and classes. Wouldn't be better to store that text in a separate text file and load it through BufferedReader or similar? Cheers

  • @RyiSnow

    @RyiSnow

    Жыл бұрын

    Yup, if you have a lot of dialogues handling them with an external file would be easier. Using text files is fine but I usually use an excel file or google spreadsheet because it's easy to add other information (speaker names, IDs, etc.)

  • @dylanolson1934

    @dylanolson1934

    Жыл бұрын

    Can you do a tutorial on how to add the text in that way?

  • @sorcerian_bootleg7112

    @sorcerian_bootleg7112

    Жыл бұрын

    @@dylanolson1934 totally support this. I woudln't mind another video of optimizations and refactorizations or two :)

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

    I tried adding my own song but it would not play. I think this was because the song file was too big/long, after clipping it down it worked. But it got me thinking how would I add a longer song if I wanted too? Im guessing I would have to change things aroudn in setFile and play() or just make a new function to play longer songs. I am going to give that a try now and report back!

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

    Bro. HI. I'd like to ask you. In this course do you use OOP principles and OOP patterns or makes usual game without OOP pri... and patterns? Just i need to know before i will start watch so long course. Thank u in advance :))

  • @metalstraw6700

    @metalstraw6700

    Жыл бұрын

    Yea the whole series is oop

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

    Good video as always. I have a question, is it possible to run the enemies in a certain area, that the enemies do not run around everywhere?

  • @RyiSnow

    @RyiSnow

    Жыл бұрын

    It is possible. The easiest way would be to specify the boundary when you instantiate a monster. If the monster tries to go beyond the boundary, force it to change direction.

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

    It would be great to add the ability to eat, drink, sleep, cook food from drop monsters. Get tired of moving and get five times more tired of fighting. I was dreaming. Thanks for the video

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

    Hey! I have a problem with the map not loading on the 5th part of this series. the code is perfect, even eclipse doesn't show any errors, but my screen remains completely grass no matter what I do. Can Someone here help? I think that its something in the loadmap function as I tried to print the line after br.readline and it didn't work Edit: Fixed it! turns out I misplaced on 'greater than sign'...

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

    I have a bug in my code. When the 3rd phase of the cutscene starts, the dialogue isn't appearing but the sound effects are playing. Idk what the problem is.

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

    Excellent video Ryi!! I can't find the FinalBattle.wav file on the drive

  • @RyiSnow

    @RyiSnow

    Жыл бұрын

    Sorry, I forgot about it. Just uploaded it!

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

    How easy would it be to add more dungeons.

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

    i hope you become famous

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

    When I die during the boss battle, it respawns outside the dungeon but continues the boss battle music, does yours do this as well ?

  • @RyiSnow

    @RyiSnow

    Жыл бұрын

    Nope. The boss music stops when the game over screen shows up and the field music starts when you click Retry. I remember I addressed that at some point. That said, I've noticed that the music still continues when you end the game from the options menu. I will fix that in the next video.

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

    After this series, what are you going to make? 3D?

  • @nicholasbrooks7349

    @nicholasbrooks7349

    Жыл бұрын

    I hope so.

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

    Hi your videos are very good please do a 2d survival game in unity

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

    Can you make a video on how to export it to an executable file?

  • @RyiSnow

    @RyiSnow

    Жыл бұрын

    I've already done that! kzread.info/dash/bejne/mmpsuc56nsK8lso.html

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

    will you ever release the game?

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

    Hey guys! Do I the one who have the problem with a dialogue window? It works, but didn' t appear....

  • @Mrtargi

    @Mrtargi

    Жыл бұрын

    Hmm... it solved by changing places the UI and Cutscene classes in the game panel draw method...😂

  • @Loggog

    @Loggog

    Жыл бұрын

    @@Mrtargi had the same issue... thanks for bothering to answer how to fix it, without you it would have taken me way longer...

  • @current_goliath

    @current_goliath

    8 ай бұрын

    @@Mrtargi Thank you, I had this issue as well and changing the draw order worked. Not entirely sure if this will cause issues later but for now it seems to be fine.

  • @Josuke-eu7ev

    @Josuke-eu7ev

    6 ай бұрын

    ​@@current_goliathSorry to bother, but did you ever manage to find a different way to fix it? Changing the draw order seems to bug my game out whenever I try to respawn.

  • @current_goliath

    @current_goliath

    6 ай бұрын

    ​@@Josuke-eu7ev Hi, changing the order of the method calls fixed the issue for me so I didn't try any other solutions. You'll need to provide much more detail though. What exactly is happening when you try to respawn? Is the cutscene executing correctly up until you respawn, or does the bug start somewhere before then? Also, I'm still very much a beginner at Java so I likely won't be much help. I would suggest contacting Ryi directly since he would probably be able to debug your issue much faster. You can also link a pastebin of the relevant parts of your code (just google "pastebin" if you don't know what that is), such as your CutsceneManager, GamePanel, and UI classes. Myself or others in the comments may look at your code and be able to fix the issue. If all else fails, undo everything you've added to your code until it works as expected and then go through the tutorial again.

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

    Could you upload the sounds?

  • @RyiSnow

    @RyiSnow

    Жыл бұрын

    Just uploaded it!

  • @SvsJFaceoff

    @SvsJFaceoff

    Жыл бұрын

    @@RyiSnow Thanks!

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

    🥰🥰🥰

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

    Please make the game multiplayer with sockets

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

    wow its still going?????????????

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

    This guy sounds like Leslie Chow from The Hangover movie.

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

    I am currently on part 11 of the tutorial but I keep getting the same error : Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException

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

    Thank you for this series! I've been referring it for my school project and it helps alot!! It literally saved me🥲

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

    Hey, Im again. Im just wanted to say that I send you my code as a zip to your email