Skip to content

A Breakout game built in Lua with the LÖVE2D framework as part of CS50’s Introduction to Game Development. Features ball powerups, paddle resizing, and locked bricks with keys.

License

Notifications You must be signed in to change notification settings

huzaifa-gamedev/cs50-breakout

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🧱 CS50 — Breakout

LÖVE2D Language Course License

Course: CS50's Introduction to Game Development
Assignment: Breakout
Engine / Language: LÖVE2D (Lua)


📋 Project Overview

This repository contains my implementation of the Breakout assignment from CS50's Introduction to Game Development.
📺 You can also watch my gameplay demo on YouTube.


What I implemented:

  • ✔️ Added a Powerup that spawns two extra Balls.
  • ✔️ Implemented Paddle growth/shrink mechanics:
    • Paddle shrinks when losing a life.
    • Paddle grows when reaching certain score thresholds.
  • ✔️ Introduced a Locked Brick:
    • Can only be broken by collecting the Key Powerup.
    • Key spawns randomly when locked bricks exist, similar to Ball Powerup.
  • ✔️ Balanced gameplay by resetting balls upon entering the Victory State.

🎬 Gameplay Preview

Gameplay Preview


🚀 How to Run

  1. Install LÖVE2D.

  2. Clone this repository:

    git clone https://github.com/huzaifa-gamedev/cs50-breakout.git
    cd cs50-breakout
  3. Run the game:

    love .

🎯 Controls

  • Enter — Start the game / Serve the ball
  • ← / → (Arrow Keys) — Move Paddle
  • Escape — Quit game

✨ Credits

  • Original skeleton code & assets: CS50's Introduction to Game Development (Harvard). Licensed under CC BY-NC-SA 4.0.

📄 License

  • This implementation: © 2025 Muhammad Huzaifa Karim. Licensed under the MIT License.

For more details, see ATTRIBUTION.md.


✍️ Author

Muhammad Huzaifa Karim
GitHub Profile


📬 Contact

For ideas, feedback, or collaboration, feel free to reach out via GitHub.


© 2025 Muhammad Huzaifa Karim. All rights reserved.

About

A Breakout game built in Lua with the LÖVE2D framework as part of CS50’s Introduction to Game Development. Features ball powerups, paddle resizing, and locked bricks with keys.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages