Professional Documents
Culture Documents
3D Block Blaster
Ammar Tariq
Salman Shafiq
SESSION 2018-2022
1
Undergraduate Final Year Project Handbook
3D Block Runner
Undertaken By:
Ammar Tariq
REG. NO. CIIT/SP18-BCS-093/VHR
Salman Shafiq
REG. NO. CIIT/SP18-BCS-106/VHR
Supervised By:
SESSION 2018-2022
2
Undergraduate Final Year Project Handbook
CERTIFICATE OF APPROVAL
It is to certify that the final year project of BS (CS) “3D Block Runner” was
developed by M. Ammar Tariq (CIIT/SP18-BCS/093) and Salman Shafiq
(CIIT/SP18 -BCS/106) under the supervision of “Dr. Ali Shahid” and that in
(their/his/her) opinion; it is fully adequate, in scope and quality for the degree of
Bachelors of Science in Computer Sciences.
---------------------------------------
Supervisor
---------------------------------------
External Examiner
---------------------------------------
Head of Department
(Department of Computer Science)
3
Undergraduate Final Year Project Handbook
PROJECT BRIEF
4
Undergraduate Final Year Project Handbook
ABSTRACT
In our daily life we play multiple types of games on our smartphones. One of the
most popular and lucrative game categories currently for developers and users are
hyper causal games. So, Block Blast is a 3D Arcade Hyper causal game in which
the player swipes the character in order to avoid the multiple obstacles and shoot
enemies with varying amounts of health. There are multiple levels, boss fights,
power ups, characters and a leveling system for the characters. The game is having
ads integrated into it and an in-game store for the buying of upgrades and new
skins for characters. The game is available for both Android. The second part of
this project is the marketing of the game in order to increase downloads and
rankings in the app stores.
5
Undergraduate Final Year Project Handbook
1 Contents
1 CONTENTS..........................................................................................................................................................6
2 INTRODUCTION................................................................................................................................................7
2.1 SYSTEM INTRODUCTION..................................................................................................................................7
2.2 BACKGROUND OF THE SYSTEM.......................................................................................................................7
2.3 OBJECTIVES OF THE SYSTEM..........................................................................................................................7
2.4 SIGNIFICANCE OF THE SYSTEM.......................................................................................................................7
3 OVERALL DESCRIPTION................................................................................................................................8
3.1 PRODUCT PERSPECTIVE...................................................................................................................................8
3.2 PRODUCT SCOPE.............................................................................................................................................8
3.3 PRODUCT FUNCTIONALITY..............................................................................................................................8
3.4 GAME MODES.................................................................................................................................................8
3.4.1 Normal...................................................................................................................................................8
3.4.2 Infinite...................................................................................................................................................8
3.4.3 Hardcore...............................................................................................................................................9
3.5 USERS AND CHARACTERISTICS.......................................................................................................................9
3.6 OPERATING ENVIRONMENT............................................................................................................................9
4 SPECIFIC REQUIREMENTS..........................................................................................................................10
4.1 FUNCTIONAL REQUIREMENTS.......................................................................................................................10
4.1.1 Use Case Diagram..............................................................................................................................10
4.1.2 Use Case Descriptions........................................................................................................................11
4.1.3 System Sequence Diagram..................................................................................................................12
4.1.4 Class Diagram.....................................................................................................................................13
4.1.5 Data Flow Diagram............................................................................................................................14
NON-FUNCTIONAL REQUIREMENTS.................................................................................................................15
4.2 PERFORMANCE REQUIREMENTS....................................................................................................................15
4.3 SAFETY AND SECURITY REQUIREMENTS......................................................................................................15
4.3.1 Reliability............................................................................................................................................15
4.3.2 Interoperability....................................................................................................................................15
4.3.3 Portability............................................................................................................................................15
5 DESIGN DESCRIPTION..................................................................................................................................16
5.1 LOGICAL VIEWPOINT....................................................................................................................................16
5.2 MOCKUP DESIGN..........................................................................................................................................18
5.2.1 Main Menu..........................................................................................................................................18
5.2.2 Game Mode Design...............................................................................Error! Bookmark not defined.
5.2.3 Game Play Design...............................................................................................................................20
6
Undergraduate Final Year Project Handbook
2 Introduction
7
Undergraduate Final Year Project Handbook
3 Overall Description
8
Undergraduate Final Year Project Handbook
3.4.3 Hardcore
o Similar to Normal Mode.
o When player dies, they have to start from level 1.
o High risk high reward game play
o In this game mode coin can be worth more than both Normal and Infinite mode.
9
Undergraduate Final Year Project Handbook
4 Specific Requirements
End Scene This contains methods to gain extra live, share high
score, take screenshot, restart the game and obtain
coins/gems.
In the main scene player has to avoid obstacles. Player can collect coins and player will be able
to exit the scene pressing the exit button.
Figure
4.1.1
Use Case
Diagram
10
Undergraduate Final Year Project Handbook
The player character is summoned from a prefab at very start of the game see figure 4.1.3
which can be controlled by touch for android and arrow keys for windows button.
The Block Blast 3d starts from a minimalistic style main menu which includes interactive
background. As shown in figure
Enemies are summoned using the function which is governed by the method used to
control enemy behavior. The player enemy interaction will calculate the price
incrementation and vice versa.
In the main menu as shown in figure 4.1.1 the player is allowed to check their high score
which is directly connected with firebase API.
The exit button is overlayed on top of the main menu screen its functionality is to exit the
game save the score prior to exit.
Obstacle blocks are generated at random showed in figure 4.1.3 controlled by the XYZ
coordinates of player.
11
Undergraduate Final Year Project Handbook
12
Undergraduate Final Year Project Handbook
The Game Level class changes the level number it governs the Enemy class which is used
to set the enemy level and power according to corresponding level.
The Characters class create the player characteristics in the shop and in the main world of
the game based on this the player can select or buy the character and play the game
accordingly.
Score and Coins class are used to calculate and store your points and money respectively
in the in-game data variables and playerfab data storage.
Figure 4.1.4
13
Undergraduate Final Year Project Handbook
As shown in the figure 4.1.5 The player starts from home screen will have the ability to
open shop, share our game, open settings or play game
In the shop section player is be able to buy coins from irl money or buy/change/upgrade
the characters.
In the sharing option the popup will appear giving you the ability to share your game links
on your social media.
During game play user is able to Pause the game and exit after which the death screen will
appear.
In death screen user is able to see the score and replay the game will move you to home
screen represented in figure 4.1.5.
14
Undergraduate Final Year Project Handbook
Non-Functional Requirements
4.3.1 Reliability
As this game is built in Unity therefore, we will be able to build game for its
corresponding platform according to the user requirements without downgrading the in-
game performance and not compromising so much on the quality constraint.
Our game will have different variation simultaneously working on low end mid end and
high-end devices.
4.3.2 Interoperability
Our game will be able to run smoothly without dropping any performance on potentially
all operating systems.
4.3.3 Portability
Our game will run on different platforms such as Android, Windows, Linux, IOS and
PlayStation as well which represents the portability of our game.
Our Game uses game data to work therefore it will function just fine offline therefore it is
portable and will instantly reconnect to google services when internet is available.
15
Undergraduate Final Year Project Handbook
5 Design Description
The shop menu class contains the buying selling perspective of the game whereas perspective
controls the basic buttons such as play exit and open leaderboard etc.
The Game controller will control the movement of the player and enemy movement will be
governed by this class along with it. The procedural obstacle generation is also covered by this
part of the instance.
Other perspective will count get and save the score and reward based on the total points earned
the player will be able to run ads from this scene as well to earn extra incentives based on the
game play scenario.
16
Undergraduate Final Year Project Handbook
17
Undergraduate Final Year Project Handbook
This is a basic main-menu design further improvements are yet to be expected our main menu
shows high score game title, game mode and start button. Other functionality such as shop and
get reward buttons are yet to be added in the production release.
18
Undergraduate Final Year Project Handbook
5.2.2 Shop
In shop design pre-made prototype there are three type of game play modes in Normal mode you
have to earn a specific number of points to unlock your abilities with added abilities and features.
In game map the procedural obstacles are generated and game goes infinitely long unless your
player collides with any obstacle or you intentionally exit the game from there on forward you
will earn set points according to your performance
This is an upcoming feature. Will be added on 70% completion of game along with other
features.
Figure 6.4.2
19
Undergraduate Final Year Project Handbook
20
Undergraduate Final Year Project Handbook
DEDICATION
ACKNOWLEDGEMENT
I would like to sincerely express my gratitude to several individuals and organizations for their
support throughout my graduate studies. First, I would like to express my gratitude to my
supervisor, Dr Ali Shahid, for all his enthusiasm, patience, helpful information, practical
guidance and continuous insight into the times, to a large extent, has helped me in my research
and writing of this article. His extensive knowledge, vast experience and professional expertise in
the field of quality control have made it possible for me to accomplish this research work.
Without his support and guidance, this project would not have been possible. I never would have
thought it would be a better supervisor in my university career.
21