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 |
|
||
Loops | 45-60 min |
|
||
Functions | 45-60 min |
|
||
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:
|
||
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 |