DOWNHILL SKIER GAME CODING CHALLENGE
The Challenge
Your mission is to create a downhill skiing game.
The skier stays near the top of the screen while the world moves toward them.
Goal:
Avoid obstacles for as long as possible.
This game uses a classic trick in game design:
If the environment moves, it feels like the player is moving.

The Big Idea
Even though it looks like the skier is racing downhill:
- The skier only moves left and right
- The obstacles move upward toward the skier
- The player survives by dodging obstacles
Obstacles can include:
- Flags
- Rocks
- Trees
Play our html version of the game.
Step 1: Create Your Skier (Player Sprite)
Start with your skier — this is your avatar.
Requirements:
- Place the skier near the top of the screen
- Allow the skier to move left and right
Tip #1: Player Movement
Think carefully about how the skier should move.
You might:
- Use the left and right arrow keys
- Make the skier move toward the mouse
There is no single correct solution — choose what feels best for your game.

Step 2: Add Your First Obstacle
Obstacles create the challenge.
Start simple:
- Create one obstacle
- Spawn it at the bottom of the screen
- Move it up the screen toward the skier
- When it goes off screen, reset it to the bottom
Tip #2: One Obstacle First
Do not add everything at once.
- Get one obstacle working
- Make sure it moves correctly
- Then add more obstacle types

Step 3: Create the Downhill Illusion
The skier does not move downhill — the obstacles do.
Obstacle Rules:
- Move at a constant speed
- Only move on the Y-axis
- No left or right movement
Tip #3: Keep the Physics Simple
Simple movement makes debugging easier.
- No X movement
- Only Y movement
- Smooth, steady speed
This keeps the focus on gameplay, not complex math.
Step 4: The Game Loop
Every frame, your game should:
- Move the skier left or right
- Move obstacles upward
- Check for collisions
- Repeat
This loop continues until the skier hits an obstacle.
Check out our MakeCode Arcade Version of the Game!

Game Over
When the skier touches an obstacle:
- End the game, or
- Display a Game Over message
Extension Challenges (Optional)
Want to take your game further?
Try adding:
- A score based on time survived
- Faster obstacles over time
- Sound effects
- Multiple levels or difficulty modes
Final Thought
Start small. Test often.
Every great game begins with something simple.
Happy coding.



