Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Development Tools No-Code Development
Business
Entrepreneurship Communications Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certification Network & Security Hardware Operating Systems Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design Design Thinking 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition Yoga Mental Health Dieting Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Teacher Training Test Prep Other Teaching & Academics
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Cisco CCNA Amazon AWS CompTIA Security+ AWS Certified Developer - Associate
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting InDesign Character Design Canva Figure Drawing
Life Coach Training Neuro-Linguistic Programming Personal Development Mindfulness Meditation Personal Transformation Life Purpose Emotional Intelligence Neuroscience
Web Development JavaScript React CSS Angular PHP WordPress Node.Js Python
Google Flutter Android Development iOS Development Swift React Native Dart Programming Language Mobile Development Kotlin SwiftUI
Digital Marketing Google Ads (Adwords) Social Media Marketing Google Ads (AdWords) Certification Marketing Strategy Internet Marketing YouTube Marketing Email Marketing Google Analytics
SQL Microsoft Power BI Tableau Business Analysis Business Intelligence MySQL Data Modeling Data Analysis Big Data
Business Fundamentals Entrepreneurship Fundamentals Business Strategy Online Business Business Plan Startup Blogging Freelancing Home Business
Unity Game Development Fundamentals Unreal Engine C# 3D Game Development C++ 2D Game Development Unreal Engine Blueprints Blender
30-Day Money-Back Guarantee
Design Game Design

Coding Games in Python

Learn how to code Arcade games in Python!
Rating: 4.5 out of 54.5 (23 ratings)
1,934 students
Created by Long Nguyen
Last updated 4/2020
English
English [Auto]
30-Day Money-Back Guarantee

What you'll learn

  • Learn the fundamentals of writing 2D Arcade games in Python
  • Understand basic collision detection, collision resolution for top-down, ball-bouncing, and platformer games
  • Write games such as Tank Attacks, Brick-Breaker, Platformer Game(like Super Mario), Tetris

Requirements

  • Basic Knowledge of Python(Crash Course Python notes available)

Description

Learn how to code Arcade games in Python! We will use the Python Arcade Library to code games. Arcade is a very easy to use library. It is more intuitive, requires less boiler-plate code and more Pythonic than Pygame. The library has many contributors on Github and is actively maintained with almost daily updates.


Learn to code the following games:

1) Tank Attacks: A top-down tank shooting game.

2) Brick Breaker: Classic brick breaker game.

3) Platformer Game: A Mario-like side-scrolling platformer game(side scrolling, with climbing ladders and moving platforms). This game is written from scratch; we implement all of the platformer collisions and resolution without using any physics library.

4) Tetris.

And more to come soon!   


We will learn the fundamentals of writing arcade games including:

1) Drawing basic shapes

2) Basic Animation

3) Keyboard and Mouse inputs

4) Working with Images and Sprites

5) Animating Characters/Sprites

6) Basic Collision Detection

7) Resolving Wall Collisions for Top-Down Games

8) Shoot Bullets, Aim and Shoot at Angle.

9) Scrolling   

10) Simulating Explosions

11) Adding Sounds

12) Using Tiled Map Editor to Create Game Maps/Worlds

13) Implementing from scratch Ball-Brick Collisions for Brick-Breaker Game

14)  Write a Platformer Game like Super Mario from Scratch(side scrolling, with climbing ladders and moving platforms)

15) Learn how to write Tetris from scratch!


Who this course is for:

  • Any level Python students who would like to learn how to write Arcade games.

Course content

9 sections • 69 lectures • 9h 13m total length

  • Preview01:08

  • Installing the Arcade Library and Setting Up Visual Studio Code
    05:27

  • Drawing Basic Shapes
    16:26
  • Basic Animation
    05:19
  • Bouncing Ball
    07:02
  • Keyboard Inputs
    10:27
  • Mouse Inputs
    07:05
  • Sprites: The Sprite Class
    13:00
  • Animated Sprites: Sprite Faces Left And Right
    11:34
  • Sprites and Images: The SpriteList Class
    10:56
  • Animated Time Sprites: How to create explosions!
    12:54
  • (Optional) Animated Walking Sprites
    14:29
  • YOU TRY!! LABS: Sprites/SpriteLists
    03:09

  • Point-Rectangle Collision Detection
    06:27
  • Rectangle-Rectangle Collision Detection
    14:26
  • YOU TRY!! LABS: Collision Detection
    04:02
  • Preview12:12
  • Resolving Wall Collisions Part II
    14:45
  • YOU TRY!! LABS: Wall Collisions
    01:33

  • Preview of Our First Game: Tank Attacks
    01:54
  • Code Template and Initial Setup: Create Player Object
    06:39
  • Creating a Game Map Using CSV(comma separated values)
    18:36
  • Scrolling
    12:36
  • Shooting Bullets
    05:14
  • YOU TRY!! LABS: Tank Shoots Crates
    01:28
  • Create Enemies Who Shoot At Random Intervals
    16:15
  • Preview16:37
  • YOU TRY!! LABS: Rotate and Shoot
    00:49
  • YOU TRY!! LABS: Enemies Shoots Randomly, Equal Intervals
    00:59
  • Sprite Collisions(e.g. Bullet Hitting Target)
    11:52
  • Explosions
    10:11
  • Character Respawning
    08:03
  • Game Screens(Full Game Code)
    13:01

  • Preview07:11
  • Ball-Brick Collisions Part 2
    10:14
  • YOU TRY!! LABS: Ball-Brick Collision Lab
    00:54

  • Brick Breaker Preview
    01:54
  • Creating the Bricks
    13:07
  • Paddle and Ball Object
    22:30
  • Bounce Off Bricks
    08:01
  • Power Ups: Big Paddle
    17:58
  • Power Ups: Fire Ball
    10:59
  • Arcade Scaling Bug
    02:29
  • Finish Game, Controlled Bouncing(Full Game Code)
    06:48

  • Platformer Preview
    02:52
  • Using Tiled Map Editor
    09:14
  • Creating Platformer Player
    09:33
  • Resolving Platform Collisions Part I
    09:41
  • Resolving Platform Collisions Part II
    05:36
  • YOU TRY!! LABS: Platform Collisions
    01:50
  • Add Jumping
    06:19
  • YOU TRY!! LABS: Add Jumping to Platformer
    00:50
  • Animating the Character
    09:41
  • YOU TRY!! LABS: Animating the Platformer
    01:11
  • Load New Map and Add Scrolling
    05:27
  • Add Moving Platforms
    17:14
  • Climbing Ladders
    04:08
  • Adding Enemies
    08:56
  • Finish Up Game(Full Game Code)
    03:22

  • Tetris: Preview
    01:21
  • Setting Up the Game
    08:33
  • Blocks and Tetris Pieces Classes
    09:22
  • Move Pieces Down, Add Pieces to Board
    10:45
  • Math Behind Piece Rotations
    09:08
  • YOU TRY!! LABS: Rotating a Piece
    01:22
  • Remove Complete Rows
    09:32
  • YOU TRY!! LABS: Remove Complete Rows
    01:34
  • YOU TRY!! LABS: Hard Drop
    01:21
  • Finish Up Tetris Game(Full Game Code)
    05:45

Instructor

Long Nguyen
Faculty
Long Nguyen
  • 4.4 Instructor Rating
  • 276 Reviews
  • 14,713 Students
  • 3 Courses

I am currently a faculty at Boston Latin School and a lecturer at the University of Massachusetts Boston(Umass Boston). I received both my Masters and Ph.D. in Mathematics at Brigham Young University. I am passionate about teaching and my interest is to bring interesting ideas in math and computer science accessible to a wide audience.

  • Udemy for Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Impressum Kontakt
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Featured courses
Udemy
© 2021 Udemy, Inc.