Themes

Theme 2025: Save the Planet – Collect trash, plant trees, and beat pollution villains!

The International Python Olympiad invites submissions from kids worldwide for this Game Coding Competition on the Theme ‘Save the Planet – Collect trash, plant trees, and beat pollution villains!’ . The competition is open till 30th June 2025. Register your interest below, read the below qualification rules, and get your submission ready accordingly. You can submit the final submission in this same page at the end as soon as the child is ready with the submission requirements.

Summary Table

The International Python Olympiad invites submissions from young coders worldwide for the upcoming Game Coding Competition! Children are encouraged to showcase their creativity and programming skills by designing engaging and original games. The competition is open until 30th June 2025.

Category
Age
Theme
Key Concepts
Beginner
8-10 years
Mad Libs Game
String Input, Concatenation, Print, Creativity
Junior
11–13 years
Calculator
Variables, Input/Output, Conditionals, Arithmetic
Middle
14-16 years
Password Generator
Random Library, Loops, String Handling
Senior
17-18 years
Interactive Quiz
Conditional Logic, Score Tracking, User Flow

🧒 Beginner (Ages 8–10)

Theme: Mad Libs Game

What Students Are Expected to Create:

Students in the Beginner category should create a simple interactive story generator. The program will ask the user for different types of words (such as nouns, verbs, and adjectives), and then insert those words into a pre-written story template to create a funny or creative outcome. This project showcases the student’s use of variables, user input, and string manipulation.

Python Skills Needed:

  • User Input: Gathering multiple word types from the user
  • String Manipulation: Inserting user input into a story using string concatenation or f-strings
  • Variables: Storing input words for reuse
  • Print Statements: Displaying the final story in a fun format

Example Concept:
noun = input(“Enter a noun: “)
verb = input(“Enter a verb: “)
adj = input(“Enter an adjective: “)

story = f”Today I saw a {adj} {noun} trying to {verb} at the park!”
print(story)

🐣 Junior (Ages 11–13)

Theme: Simple Calculator

What Students Are Expected to Create:

Participants in this category are expected to build a basic calculator program using Python. The calculator should allow the user to enter two numbers and choose an operation—addition, subtraction, multiplication, or division. The program should then display the correct result. This project will demonstrate the student’s understanding of input/output, arithmetic operations, and conditionals.

Python Skills Needed:

  • Variables: Storing numbers entered by the user
  • Input & Output: Using input() to get numbers and the operation from the user
  • Data Types: Converting string input to integers or floats using int() or float()
  • Conditionals: Using if, elif, and else to determine which operation to perform
  • Basic Operators: +, , *, / for arithmetic

Example Concept:

num1 = float(input(“Enter first number: “))
operation = input(“Enter operation (+, -, *, /): “)
num2 = float(input(“Enter second number: “))

if operation == “+”:   
      print(num1 + num2)
elif operation == “-“:
     print(num1 – num2)
elif operation == “*”:
     print(num1 * num2)
elif operation == “/”:
     print(num1 / num2)
else:
    print(“Invalid operation”)

🧑‍💻 Middle (Ages 14–16)

Theme: Password Generator

What Students Are Expected to Create:

Participants in this category should develop a password generator program that creates strong and random passwords based on user input. The user should be able to choose the password length, and the program should randomly combine letters, numbers, and symbols to generate a secure password. This project highlights skills in using Python libraries, loops, strings, and randomness.

Python Skills Needed:

  • Random Library: Using random.choice() or random.sample()
  • String Operations: Combining letters, numbers, and symbols into one password
  • Loops: Generating multiple characters in a password
  • Functions (optional): Organizing code into reusable blocks
  • Lists & Strings: Storing and accessing character sets

Example Concept:

import random
import string

length = int(input(“Enter desired password length: “))
characters = string.ascii_letters + string.digits + string.punctuation
password = ”.join(random.choice(characters) for _ in
range(length))
print(“Your password is:”, password)

🎓 Senior (Ages 17–18)

Theme: Interactive Quiz with Personality Result

What Students Are Expected to Create:

Students in the Senior category are expected to design an interactive quiz application that asks the user a series of questions. Based on the user’s responses, the program should determine and display a personalized result (e.g., a character, personality type, or recommendation). The quiz should include logical branching, user input, and a final output message based on conditions. This project demonstrates deeper understanding of program flow, decision-making, and user experience design.

Python Skills Needed:

  • User Input: Gathering user preferences or opinions
  • Conditionals & Logic: Using if-else to decide results based on user responses
  • Lists or Dictionaries: Optional use for organizing questions and answers
  • String Formatting: Displaying results clearly
  • Nested Conditions / Score Tracking: To manage more complex quiz logic

Example Concept:

name = input(“What is your name? “)

score = 0
q1 = input(“Fight Thanos (1) or Negotiate (2): “)
if q1 == “1”:
     score += 1
q2 = input(“Is Loki a villain (1) or not (2): “)

if q2 == “2”: 
    score += 1
if score == 2:
     result = “THOR”
elif score == 1:
     result = “IRON MAN”
else:
     result = “LOKI”

print(f”{name}, you are: {result}”)

🎮 Qualification Rules

Below are the qualification rules that the submissions have to meet to qualify for this contest.

  • Develop a single or multiplayer game with the theme “Save the Planet” with at least two levels in the game.
  • The theme for the game should be “Save the Planet”, which means your game should’ve an element of nature in it. For example, your game can have elements of trees, global warming, saving natural resources, animal kingdom, save the hippo, etc.
  • Anyone who is up to 18 years of age is eligible to participate in this contest.
  • You can make your game by using Python. Please send the code in .py file directly. 
  • Create a short video describing your game, the characters in the game, game levels, and how it has to be played. Upload the video and submit your submission.
  • Only Completed Games will be informed about the schedule for Jury Round.
  • Only one Game Submission Is allowed per team.
  • Game must be self-made, Students will need to showcase their game to the jury.
  • Your entry should be submitted before the submission deadline.
  • Your entry should not violate any terms and conditions of copyright issue.
  • If any copyrighted content is used, specifying credits are compulsory.
  • We’re excited to see your submissions. All the best!

🎥 Short Game Video Script Template

🎬 1. Introduction (10–15 seconds)

“Hi, I’m [Your Name], a student of Grade [Your Grade] from [Your School / Country].
This is my Python game project for the International Python Olympiad 2025, based on the theme ‘Save the Planet.’”

👾 2. Game Title & Concept (15–20 seconds)

“My game is called [Game Title].
It’s an environmental adventure where the player helps save the Earth by solving eco-challenges, collecting green items, and avoiding pollution hazards.”

🧑‍🚀 3. Characters in the Game (15–20 seconds)

“The main character is [Hero Name], a young eco-warrior.
Other characters include:

  • Trash Monsters – enemies made of plastic and waste.
  • Eco Friends – animals or allies that give hints and power-ups.
  • The Polluter Boss – the final challenge at the end of the game”.
🗺️ 4. Game Levels (20–30 seconds)

“There are 3 levels in the game:

  • Level 1: Clean the Park – collect trash and recycle items.
  • Level 2: Save the River – jump across platforms and avoid oil spills.
  • Level 3: Forest Rescue – plant trees and defeat the Polluter Boss”.
🎮 5. How to Play (20–30 seconds)

“Players use the arrow keys to move and jump, and press spacebar to collect or clean items.
You win points for cleaning the environment and lose points if you touch a Trash Monster or pollution zone.
To complete a level, the player must collect all green items and reach the exit safely.”

💻 6. How It Works (45–60 seconds)

“In this project, I used Python to create [briefly describe your interface or main gameplay].
Some of the coding features I used include:

  • Loops for repeating actions.
  • If-else statements for decision making.
  • Functions to organize my code.
  • [Optional: “I also used libraries like turtle / pygame / tkinter / random…”]
    Let me show you how it works.”
[🎥 Now show a quick demo of the project running – explain what the user sees or needs to do.]
🌟 7. Final Words (10–15 seconds)

“I really enjoyed making this game to spread awareness about saving the planet.
I hope you enjoy playing it and feel inspired to protect our environment!”

By participating in this International Python Olympiad 2025, students can learn programming, enhance their skills, and celebrate the spirit of sports in a fun and interactive way. 🚀⚽🏀🏅