Semester Project Report
Semester Project Report
TECHNOLOGIES
Semester Project: Tetris Game
Course Code: BSSE-F-24-B
Subject: Programming Fundamentals
Instructor: Sir Zain Abu Bakr
Date of Submission: January 3,2025
GROUP MEMBERS
NAME REG ID
AYESHA ALI 242232
BURHAN HAIDER 242228
1
2
TITLE OF PROJECT
TETRIS GAME
KEY OBJECTIVES OF
TETRIS GAME
1. Arrange Tetrominoes: Players aim to position and stack
tetrominoes efficiently on the game grid.
2. Clear Lines: Form complete horizontal lines to remove them from
the grid and earn points.
3. Score Points: Maximize the score by clearing multiple lines at
once or performing advanced moves like "Tetrises."
4. Progress Through Levels: Survive longer to advance to higher
levels with faster tetromino fall speeds.
5. Avoid Game Over: Prevent the tetromino stack from reaching the
top of the grid.
6. Plan Strategically: Use the "next piece" preview to anticipate and
plan placements effectively.
3
7. Enhance Gameplay (Optional): Incorporate features like sound
effects, leaderboards, or multiplayer modes to boost engagement.
8. Challenge Players: Provide increasing difficulty to test player
reflexes and decision-making skills.
FUNCTIONAL
REQUIREMENTS OF
TETRIS GAME
1. Core Gameplay Requirements
Tetromino Movement
Grid Mechanics
Line Clearing
Tetromino Generation
4
Randomly generate one of the seven tetromino shapes (I, O, T, S,
Z, J, L) for each drop.
Display the next tetromino to appear in a "preview" area.
The game ends when the stack of tetrominoes reaches the top of
the grid, and no more pieces can be placed.
2. Game Progression
Level Progression
Scoring System
Display the current score, level, and number of lines cleared during
gameplay.
Show the next tetromino in a designated preview area.
5
Provide options to start a new game, pause/resume gameplay, and
restart from the beginning.
Display a "Game Over" message with the player's final score and
an option to restart.
4. Optional Enhancements
Sound and Visual Effects
Add sound effects for line clears, tetromino rotations, and game-
over events.
Include visual animations for cleared lines and falling pieces.
Customization Options
Multiplayer Mode
Power-Ups (Optional)
6
5. Technical Requirements
Input Handling
Graphics
Performance
Data Persistence
1. Overcoming Challenges
Helps tackle constant distractions by promoting sustained focus.
Improves attention span by requiring continuous engagement.
7
Encourages self-reliance instead of overusing AI tools for quick
solutions.
2. Skill Development
Builds focus through step-by-step development of game
mechanics.
Enhances the ability to break down problems into smaller,
manageable tasks.
Strengthens problem-solving skills by addressing issues like
collision detection, scoring, and level progression.
4. Sense of Achievement
Provides immense satisfaction upon completing a fully functional
game.
Delivers a tangible and rewarding outcome that showcases
creativity and technical skills.
8
SCREENSHOTS
GAME START
GAME PROGRESSION
9
GAME OVER
10
GRAPHICS AND GAME LOOP
MANAGEMENT LIBRARY
11
DIAGRAMS
FLOW CHART
12
CLASS DIAGRAM
13