# Game Development 🎮

> Building games and interactive worlds — from simple mobile puzzles to giant 3D adventures.
> One of the most fun ways to learn programming.

[← Back to all career paths](README.md)

---

## What is it?

Game developers build the games people play on phones, computers, and consoles. It combines
**code, art, storytelling, and sound** into one experience.

A game team can include:

- **Game programmers** — write the code that makes the game work
- **Game designers** — decide the rules, levels, and how it feels to play
- **Artists & animators** — create the characters and worlds
- **Sound designers** — make the music and effects

You can start by doing a bit of **everything** yourself — that's how most indie developers begin.

---

## What would I actually do?

- Turn an idea ("a game where you catch falling mangoes") into working rules
- Write code so the character moves, jumps, and scores points
- Design levels that are fun and fair — not too easy, not too hard
- Add art, animation, and sound to bring it alive
- Test it, watch people play, and fix what's frustrating

---

## Is this me? ✅

You might love game development if you:

- Love playing games and imagine your own
- Enjoy a mix of **creativity, storytelling, and logic**
- Like building worlds and seeing your ideas come to life
- Are happy to experiment and keep improving

---

## Skills to build (in order)

1. **Logic & problem-solving** — start with **Scratch** (drag-and-drop, no typing!)
2. **A programming language** — **Python** (with Pygame) or **C#** (with Unity)
3. **A game engine** — **Scratch** → **Godot** (free & open source) or **Unity**
4. **Basic maths** — movement, gravity, and collisions (learn as you build)
5. **Game design** — what makes a game *fun*?
6. **A little art & sound** — free tools can help you here

> 🐢 Start with **Scratch**, then move to **Godot** or **Unity** when you're ready for more.

---

## Free resources

- **[Scratch](https://scratch.mit.edu/)** — build playable games by dragging blocks (perfect first step!)
- **[Godot Engine](https://godotengine.org/)** — free, powerful, beginner-friendly game engine
- **[Unity Learn](https://learn.unity.com/)** — free official courses (uses C#)
- **[Pygame tutorials](https://www.pygame.org/wiki/tutorials)** — make games with Python
- **[Brackeys on YouTube](https://www.youtube.com/@Brackeys)** — beloved beginner game-dev tutorials
- **[Pixilart](https://www.pixilart.com/)** — make game art (pixel art) for free

---

## Starter projects 🚀

1. **Catch the falling object** — move a basket to catch fruit, score points (great in Scratch).
2. **A maze game** — guide a character to the exit.
3. **A quiz game** — answer questions to level up.
4. **Pong** — the classic bouncing-ball game (a perfect first game to finish).
5. **A choose-your-own-adventure story** — decisions change what happens next.

---

## Your first steps (do these this week)

- [ ] Open [Scratch](https://scratch.mit.edu/) and make a sprite move with the arrow keys
- [ ] Add a score that goes up when something is caught
- [ ] Play 3 simple games and note *what makes them fun*
- [ ] Sketch your dream game on paper — what's the goal?
- [ ] Watch one beginner Godot or Unity intro video
- [ ] Share your Scratch game link with a friend and get feedback

---

## Roles this can grow into

Game Programmer • Game Designer • Level Designer • Gameplay Engineer •
Technical Artist • Indie Game Developer

> 💡 Game development teaches you programming *while having fun*. Many professional developers
> started by making small games as teenagers — exactly where you are now.
