Important Note

When setting up your .py file, this should be the structure:

from turtle import *

#all of your code goes here

mainloop()

Make sure you include the call to mainloop(). This is a built-in function and helps manage the window.

Jeep Sheep!

Game designers are designing characters for a new online game they hope is going to go viral - Jeep Sheep!

An array of 3 sheep race their jeeps 1000m. The first jeep to reach the finish line is the winner. Before the race starts, the player predicts which sheep will win. If the prediction is correct, the player wins!

While the Graphic Designers are working on the look of the game, the programming team has decided to use Python's Turtle environment to code a of the game.

The following series of short videos introduces some intro Turtle concepts.

  MMV
  MMV
  MMV
  MMV
  MMV

Submission 1 - Prototype

The game:

  1. There are 3 sheeps in jeeps.
  2. There is 1 human player.
  3. The sheep race 1000m.
  4. The player predicts the winner.
  5. The result is displayed.

Using Python's Turtle environment, can you get this initial prototype working?

The above series of short videos are intended to help you get started. They are optional. The exemplar below will show you what you are attempting to make.

Your solution must process an array of Turtle objects in order to achieve a grade A.

Submission 2 - Adaptation

Adapt the program to make it more game like.

For example, incorporate some instructions onto the screen before the game starts. Include a start button.

Can you make the screen look more like a race-track with a start and finish line?

Using your own ingenuity, can you make the race more challenging for the drivers in some way? For example, there might be some random obstacles that they need to avoid during the race.

Is it possible to include sound in the game? Or a running commentary?

Perhaps a random spaceship appears and takes away one of the racers!

Be creative! It's just a game!

But remember, the game concept doesn't change - there are still 3 Sheep racing in Jeeps!

KEEP YOUR SOLUTION MODULAR!

Submission 3 - Code Reflection

Along with your Python file, please choose one of the following options to show your understanding of how your race game works. Pick the format that works best for you!

Option 1: Written Code Explanation ("Behind the Code")

Write a short document explaining your code and thought process. Suggested sections:

  • Overview: What does your game do?
  • New Features: What did you add to make it unique?
  • Code Breakdown: Explain how key parts work (e.g. car movement, race logic), include code screenshots to help your explanation.
  • Challenges: Something that didn't work at first and how you solved it.
  • Discuss briefly what you learned: One or two things you learned from this project.

This should include between 300 and 500 words of written reflection (not including code screenshots etc)

Option 2: Video Walkthrough

Record a short screen capture video (3–5 minutes) where you:

  • Overview: What does your game do? Show it in the video in full.
  • New Features: Highlight what did you add to make it unique?
  • Code Breakdown: Display some code blocks and explain how key parts work (e.g. car movement, race logic).
  • Challenges: Explain something that didn't work at first and how you solved it.
  • Discuss briefly what you learned: one or two things you learned from this project.

is a good resource for screencasting, but you can choose your own tool to do this.

FINAL SUBMISSION - RUBRIC

GRADE Description
A
  • The prototype was submitted by the deadline and works as expected, with or without comments.
  • The adaptation goes beyond the prototype with a computational adaptation, well beyond merely adding additional visual elements.
  • The adaptation is significantly different to other student submissions for this project.
  • The program has retained its modular nature with additional functions being called with/without parameters, some of which may return data.
  • The code processes at least an array of 3 Turtle objects.
  • Exception handling means that user input is always valid.
  • Every function has an accompanying comment explaining the purpose of the function.
  • The use of AI is limited to idea generation, guidance, and adding meaningful value to the student's own programming expertise. All AI-assisted elements are well-understood, documented, and clearly show the student's original contribution.
B
  • The student may not have submitted the prototype.
  • The program goes beyond the prototype with a basic computational adaptation, not simply additional visual elements.
  • The program has retained its modular nature with functions being called with/without parameters, some of which may return data.
  • The code processes at least an array of 3 Turtle objects.
  • Most functions have accompanying comments explaining the purpose of the function.
  • AI is used to suggest improvements, troubleshoot code, or explore design options. The student shows a good level of understanding of AI-generated content, though (minor) reliance on AI may exist.
C
  • The submitted program is generally the same as the prototype, with or without additional images on the screen.
  • There is dependency on AI-generated content, with limited evidence of critical engagement or understanding.
D A program has been submitted but it does not match the prototype. If no code is submitted or submitted code is obviously the result of complete reliance on AI, the teacher can award a D at his or her discretion if it is clear the student participated during the project period.

CODE REFLECTION - RUBRIC

GRADE Description
A
  • Each of the 5 reflection sections are covered in appropriate detail (see word count and video length expectations)
  • The reflection artefact was submitted by the deadline
  • Either form of submission meet the requirements described above.
B
  • At least 4 of the reflection sections are covered in appropriate detail (see word count and video length expectations)
  • The reflection artefact was submitted by the deadline
  • Either form of submission meet most of the requirements described above.
C
  • A good attempt at a reflection artefact was submitted by the deadline but does not meet the B band criteria.
D No reflection was submitted and the teacher can award a D at his or her discretion if it is clear the student participated during the project period.

Exemplars

  MMV
  MMV

Testing

Make sure you are thoughtful when testing your solution.

If your code has a validation check, test your code with acceptable/valid data and unacceptable/invalid data.