« Back to Main Page

Python Game Developer Level 1 - Activities

From Bold Idea Knowledgebase

Activities

The time estimates given here are approximate, and are meant to help you establish a reasonable learning timeline with your students.

Depending on the total number of session hours at your site, you may not be able to complete all activities in one semester. If your site has fewer than 21 total session hours (# of sessions × hours per session), we recommended your students end the semester by completing the Guided Project. Students may attend the following semester to complete their Creative Project.

Materials

Syllabus

Click an activity below to view the PDF

Starter Activities
Activity name Est time Activity Description
online pre-survey
https://boldidea.org/pre-survey
5 min At any point during the first or second session , have students complete the pre-survey at https://boldidea.org/pre-survey . Bold Idea uses this data to ensure we are meeting our overall impact goals.
Semester Intro & Icebreaker 10-20 min As a group, Introduce yourself to students and briefly describe what you will be doing this semester. Choose an Icebreaker activity to get everyone warmed up and comfortable around each other.
Intro to Python 10-20 min Students are introduced to their Python IDE and learn how to use the Python shell to evaluate expressions, create a script, and recognize errors.
Expressions, Variables, and Strings 30-45 min
Booleans and if-statements 30-45 min
  • Students follow the tutorials in the Pyhton Guide to learn about Boolean (True/False) expressions, and how to change the flow of control with if-statements.
  • Students complete coding challenge #3: "Pets" .
Loops 45-60 min
Functions 45-60 min
  • Students follow the tutorial in the Python Guide to learn about Functions.
  • Students complete the "Stick House Neighborhood" activity and complete at least two challenges from the end of that activity.
Guided Project ( View Online )
Steps 1-6: Bouncing off the walls 60-90 min Students create an animated "ball" that bounces off the edges of the screen
Skill Boost: Learn about Object-Oriented programming 45-60 min Students follow the tutorials in the Python Guide to learn about Objects, Attributes, Methods, and Classes.
Step 7 - Refactoring using OO 45-60 min Students apply what they learned about Classes to refactor their game sprites, making the code easier to manage.
Step 8 - Add the Paddle 30-45 min Students create another sprite class for the paddle using what their ball sprite as a reference. Students then postion the paddle and change the rect size of both sprites to a preferred size.
Steps 9-10 Controls 30-45 min Students use keyboard state variables to control the paddle and keep it within the bounds of the screen.
Step 11: Images 30-45 min Students download images from free-to-use game asset website. Code is then added to replace the colored blocks in the game with images.
Steps 13-14: Ball mechanics 45-60 min Students update the game to allow the ball to fall through the bottom of the screen, and use collision detection to bounce it off the paddle. Code is then added to re-set the ball in a random direction after it has fallen through.
Step 15: Sound 30-45 min Students use a free sound generator app to create retro-sounding effects for their game. A "bounce" sound is added for when the ball bounces.
Steps 16-18: Laying bricks 45-60 min Students create another Sprite class called Brick. They then use a nested counting loop to generate bricks with a specific number of rows and columns.
Steps 19-20: Collosion detection / keeping score 45-60 min Students use a variable to keep score every time the ball hits a brick. Next they learn how to draw text on the screen to display the variable.
Step 21: Add a game-over screen 45-60 min Students use a variable to control the state of the game, and wrap their game code in an if-statement to show a game_over screen.
Extra challenges 45-60 min Students do one or more of the extra challenges:
  • Add theme music
  • Add a start screen
  • Multi-colored bricks
  • Increase difficulty by making the ball bounce at varying angles
Creative Project
Brainstorming, Planning, & Prototyping 1½ - 2 hrs Students team up to ideate and brainstorm, ideate, & plan a 2D game of their choosing. Students will learn about "MVP" and prototype development.
Iteration 1 1½ - 2 hrs Students pick out tasks planned from previous session. Students working on larger teams can learn how to use "modules" to organize their code.
Iteration 2 1½ - 2 hrs Students continue their basic prototype.
Iteration 3 1½ - 2 hrs Students continue the next iteration of their project, also beginning to implement artwork into their game.
Iteration 4 1½ - 2 hrs Students continue the next iteration of their project
Iteration 5 1½ - 2 hrs Students continue the next iteration of their project
Iteration 6 / Demo Day Prep 1½ - 2 hrs Students finish work on their projects and prepare for Demo Day.
Demo Day 1½ - 2 hrs