Game Dev: Bomberman With Python, Pygame And Oop!
Published 3/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 8.60 GB | Duration: 11h 46m
Published 3/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 8.60 GB | Duration: 11h 46m
Develop a game using Python and Object oriented programming
What you'll learn
Expand your understanding and use of variables, lists, dictionaries, for loops and while loops.
Expand your understanding and use of object oriented programming
Conceptualize programming challenges and discover solutions and methods for implementing these solutions to those challenges
Progress your python learning beyond learning the basics to a more advanced beginner project, gain confidence in tackling bigger projects.
Work on importing various modules into your program, as well as importing data between various python files
Sharing and updating data between the various objects within your program, updating the different objects when required, also updating the game stage
Implementing various solutions to typical game development challenges, such as collision detection, animations, power-ups etc.
Creating a Start Screen, a Menu Screen, a Game Screen, A Level Editor screen, allowing for user level development.
Requirements
Basic understanding of Python Programming, ie- variables, lists, dictionaries, classes.
Basic understanding of importing modules, such as the pygame module
Already have the pygame module installed (comes with python)
Description
I have done so many of the regular projects out there, such as a tic tac toe, chess, hangman, asteroids, connect 4, but all of these projects felt small and I found there to not be much variety when it comes to game tutorials. Most tutorials all cover the same games, with only variations in how they are coded. I also found that most tutorials, do not go through every element of a game, such as the start screen, all of the power ups, the score screens, etc.They usually only take you as far as the basic building blocks, and then leave you to create the rest, should you wish to continue.Most of these tutorials, have left me with a directory filled with what would be deemed as unfinished games.Hence I thought it would be great to put together a course on creating a game, with all of the game elements created and implemented in a step by step process, that leaves you at the end of the course, with a fully functional, and complete game. My hope is that you are able to understand how each element of this game is created and implemented, so that you gain further insight when deciding to tackle a challenge of your own. I also find the old games from the 80's and 90's as fantastic coding challenges, in particular when it comes to trying to understand how something may have been implemented.
Overview
Section 1: Introduction
Lecture 1 Introduction
Lecture 2 BomberMan Class
Lecture 3 Assets Class
Lecture 4 Game Class
Section 2: Creating the Player Character
Lecture 5 Creating the Player Class
Lecture 6 Moving the Player Character
Lecture 7 Getting the Player Images
Lecture 8 Animating the Player Character
Section 3: Creating the Level
Lecture 9 Creating the Level Matrix
Lecture 10 Creating the Block and Hard Block Class
Lecture 11 Creating the Soft block Class.
Lecture 12 Filling in the background, and Refactoring
Section 4: Player Movement Restrictions and Camera Movement
Lecture 13 Performing Collision Detection
Lecture 14 Easier Navigation through the Game Area
Lecture 15 Creating the "Camera" and scrolling around the screen
Section 5: Setting the Bombs, Bomb Animations, Explosions, Explosion animations.
Lecture 16 Creating the Bombs
Lecture 17 Inserting the Bombs into the level matrix, and Animating the Bombs
Lecture 18 Updating the Bomb Timer, exploding the Bomb, Updating the Player bomb count
Lecture 19 Limitng the Bomb Count, and Detonating the bomb at will
Section 6: Creating the Explosions and Fireballs
Lecture 20 The Explosions
Lecture 21 Creating and Animating the Explosion
Lecture 22 Calculating the Flame Path 1
Lecture 23 Calculating the Flame Path 2
Lecture 24 Calculating the Flame Path 3
Lecture 25 Creating the Fireball Element
Lecture 26 Destroying the Soft Blocks in Game
Section 7: Creating Enemies, Enemy animation, Enemy Movement, Enemy Destruction
Lecture 27 Creating the First Enemy - Ballom
Lecture 28 Moving the Enemy Character
Lecture 29 Changing Movement Direction after a Collision Detection
Lecture 30 Incorporating random Direction changes
Lecture 31 Animating the Enemy
Lecture 32 Populating the stage with Enemies
Section 8: Creating the More Advanced Enemies, Player Death and Respawn
Lecture 33 Creating the Line Of Sight for Enemy Characters
Lecture 34 Refactoring the Enemy Class, loading in the Onil Enemy Character
Lecture 35 Chasing the Player Character
Lecture 36 Loading in the Remaining Enemies, adding the Enemy Specials
Lecture 37 Refactoring the Player Code
Lecture 38 Regenerating the Stage, Structuring the Enemy Load order
Section 9: Creating and Implementing the Special Power Up Items
Lecture 39 Creating the Power Up Class
Lecture 40 Creating the Special Soft Blocks, Inserting them into the level matrix
Lecture 41 Creating each of the Special Power Up Methods, and calling them when needed.
Lecture 42 Ensuring all of the Power Abilities Work.
Lecture 43 Making the Invincibility Power up work, and Additional Collision detection.
Lecture 44 Implementing the Stage Exit item, and generating a New Stage
Lecture 45 Spawning new Enemies if exploding the special Items
Section 10: Creating the Information Panel
Lecture 46 Importing the necessary images for the Info Panel
Lecture 47 Creating and Updating the Level Timer, and ensuring the countdown takes place
Lecture 48 Creating and updating the Player Lives info, and the player Score info
Lecture 49 Implementing Scoring into the game
Section 11: Setting up the Start Screen, Creating the Level Transitions, and Sounds
Lecture 50 Implementing the Game Start Screen
Lecture 51 Implementing the Level Transition Screen
Lecture 52 Implementing Sounds and Background Music
Lecture 53 Implementing Character Sounds and Sound Effects
Lecture 54 Implementing Explosion and Power Up Sound Effects, Implementing the Top Score
Lecture 55 Finishing Up
Beginner Python Developers and enthusiasts,Game Developers, Beginners and Hobbyists.