learn and have fun developing 2D retro games using python and pygame

Overview

Retro 2D Game Development Using Python + PyGame

game

Skill up your programming skills with a walk down the memory lane. Learn how to create a retro 2D game using Python and PyGame. As part of the training, we will be creating an interactive classic 2D games to apply the different topics discussed in each lesson.


Must Haves

  • Laptop or computer powerful enough to run Visual Studio Code, and then some.
  • Internet connection, of course.
  • GitHub account. Its free! Here's a link to GitHub to create one.
  • Python. Download the latest version HERE
  • Visual Studio Code. Dowload the latest version HERE
  • The will to spend extra time and effort to learn
  • Programming knowledge ? Zero :) Yes!

Lessons and Schedules

  • Day 1 : Introduction to Python, Visual Studio Code, and GitHub.

    An introductiion to the Python programming language, virtual environments, the Visual Studio Code editor and GitHub.

  • Day 2 : Crash course in Python

    Quick discussion on the basic operations, conditional statements, loop statements, list, methods and OOP in Python.

  • Day 3 : Introduction to PyGame

    An introduction on the basics of PyGame and how to get started. Also, in this section, you will learn other tools you can use to begin your game creation journey.

  • Day 4 : Object movements and event handling

    Learn the basics of moving objects on the game screen as well as handling inputs from the user via the mouse and the keyboard.

  • Day 5 : Understanding basic game essentials

    Learn the concepts of collision detection and game architecture. We will revisit OOP as part of our game design.

  • Day 6 : Creating game objects

    Create game objects by implementing object oriented programming.

  • Day 7 : Implementing game logics and sounds

    Start incorporating logic in your game and make your game alive by adding sound effects.

  • Day 8 : Implementing game levels and special actions

    Spice up your game by adding different levels and special actions.

  • Day 9 : Game data, application logs and the cloud.

    Game data is everything. Learn how to store game data, record game logs and use cloud storage for tracking scores from your users accross the world.

  • Day 10: Finalizing and packaging your game.

    Start distributing your game. Learn how to package your games for easy installation and distribution. Bonus lesson : adding CI/CD to your GitHub repo.


Setting up your dev environment.

We will be using virtual environment in Python. The instruction to setup your working dev environment is discussed in this LINK


Follow me on twitter : @m3lles

Owner
Marvin Trilles
Engineer / Developer / Enthusiast / Blogger
Marvin Trilles
Frets on Fire X: a fork of Frets on Fire with many added features and capabilities

Frets on Fire X - FoFiX This is Frets on Fire X, a highly customizable rhythm game supporting many modes of guitar, bass, drum, and vocal gameplay for

FoFiX 377 Jan 02, 2023
Multi minecraft server helper for python

呐 Yuki 您的群组服操作小助手。 使用Python3编写。使用 .yaml 配置文件记录子服,配合Screen管理Linux系统上的Minecraft子服,支持MCDR子服与非MCDR子服。 功能: 开启所有子服 关闭所有子服 重载所有子服MCDR 重载所有子服ChatBridge 使用方法:

3 Mar 17, 2022
An optimal solution finder for the game Wordle, written in Python

wordle-solver: a nearly-optimal computer player for Wordle Wordle is an interesting word guessing game. This program plays it very well, taking only 3

4 Jun 13, 2022
AI plays games with python

AI-plays-games- To use it, you first need to create an img file and save the pic

Murat Ali Avcu 7 Oct 16, 2022
The original Tetris tile-matching game as adopted by IBM PC.

🕹️ Tetris Game The original Tetris tile-matching game as adopted by IBM PC. Game developed purely on python using the Dear PyGui Framework. 📖 Instru

14 Nov 12, 2022
Chess - A python gui application

Chess Python version 3.10 or greater is required to play. Note This is a gui application, and as such will not run inside WSL.

Jonxslays 1 Dec 16, 2021
Useful tools for Minecraft worlds such as remove unused chunks, find blocks or entities.

Useful tools for Minecraft worlds such as removing unused chunks and finding blocks, command blocks or entities.

Rapha149 1 Feb 17, 2022
Easily manage wine prefixes in a new way. Run Windows software and games on Linux

Bottles Easily manage wineprefix using environments Documentation · Forums · Telegram group · Funding 📚 Documentation Before opening a new issue, che

Bottles 4.1k Jan 09, 2023
Pygame for humans (pip install hooman) (25k+ downloads)

hooman ~ pygame for humans pip install hooman join discord: https://discord.gg/Q23ATve The package for clearer, shorter and cleaner PyGame codebases!

Abdur-Rahmaan Janhangeer 31 Nov 08, 2022
PingPong - Simple Ping Pong Game Made In Python

PingPong Basic Ping Pong Game Made In Python

ʀᴇxɪɴᴀᴢᴏʀ 1 Jan 01, 2022
This is text based adventure game

CHOOSE-YOUR-OWN-ADVENTURE This is text based adventure game CONTRIBUTORS Aditya binukumar Srishti Sharma Shiva Tripathi Tanishq Tanwar ABOUT Theme: Ho

Tanishq Tanwar 3 May 31, 2022
Useful guides, tutorials, and FAQs related to LEGO Universe and Darkflame Universe.

Awesome Lego Universe A curated list of awesome things related to LEGO Universe. LEGO Universe was a kid-friendly massively-multiplayer online role pl

Eric Myllyoja 33 Dec 12, 2022
A simple pygame implementation of the LOGO programming language.

LOGO-py A simple pygame implementation of the LOGO programming language. Latest Version Notes Fixed a bug where penup/pendown would not work properly.

Ethan Evans 1 Dec 05, 2021
Minesweeper clone with 3 modes of difficulty, UI scaling and custom games feature.

Insect Sweeper Minesweeper clone with 3 modes of difficulty, UI scaling and custom games feature. Mines are replaced with random insects that a player

Piotr Data 1 Nov 05, 2021
A python3 project for generating WorldEdit shematics for the MineClone2 game for Minetest from images.

MineClone2 MapArt This is a python3 project you can use with the MineClone2 game for Minetest. This project take an image and output a WorldEdit shema

3 Jan 06, 2023
My first Minecraft CPU. Created in collaboration with Peer Carnes as a final project in CS 281: Architecture and Assembly at the University of Puget Sound

Minecraft CPU This is my first ever Minecraft CPU, created in collaboration with Peer Carnes. We created a custom assembly language, including an asse

Andy Chamberlain 4 Oct 10, 2022
A converter for the .BMR / .RLE bitmap files used in some Neversoft PS1 games.

Requirements python3 pyqt5 - can be installed with pip install PyQt5 pypng - Included Usage Instructions This program can be running py main.py in the

4 Jul 30, 2022
3D online shooter written on Panda3D 1.10.10 and Python 3.10.1

на русском itch.io page Droid Game 3D This is a fresh game that was developed using the Panda3D game engine and Python language in the PyCharm IDE (I

Marcus Kemaul 5 Jun 04, 2022
A set of tools to help you with running a Project Zomboid game server (Linux only)

Project Zomboid Server Tools A set of tools to help you with running a Project Zomboid game server (Linux only). Features Install Project Zomboid Dedi

24 Dec 25, 2022
KBYD - Simple Bulls and Cows Game

KBYD KBYD - Simple Bulls and Cows Game How to Play KBYD is a simple Bulls and Cows Game. When the game starts, the computer randomly generates 3 to 5

1 Dec 04, 2021