Flappy Bird Documentation [PDF]

  • Author / Uploaded
  • muji
  • 0 0 0
  • Gefällt Ihnen dieses papier und der download? Sie können Ihre eigene PDF-Datei in wenigen Minuten kostenlos online veröffentlichen! Anmelden
Datei wird geladen, bitte warten...
Zitiervorschau

Flappy Bird

SESSION (2019/21) Submitted By Name: Muhammad Fahad

ID: F2019346089

Supervised By Mr. Gulfraz Naqvi

SCHOOL OF COMMERCE AND ACCOUNTANCY UNIVERSITY OF MANAGEMENT & TECHNOLOGY, LAHORE

Flappy Bird A Report Submitted to the School of Commerce & Accountancy In Partial Fulfillment of the Requirements for the Associate Degree In Computer Science By Name: Muhammad Fahad ID: F201934608

Internal Examiner (Supervisor) Gulfraz Naqvi

---------------------------------------

External Examiner ---------------------------------------

Director Mr. Muhammad AzeemNaz School of Commerce & Accountancy University of Management & Technology (UMT), Lahore

----------------------------------------

I

DEDICATION DEDICATED

TO MY RESPECTED PARENTS AND FAMILY WHOSE UTMOST LOVE , CARE AND

STRUGGLE AGAINST ALL ODDS BROUGHT ME TO THIS HEIGHT OF KNOWLEDGE AND ENCOURAGED ME TO COMPLETE THIS

DEGREE

WITH THE BLESSINGS OF

ALMIGHTY ALLAH

AND WERE MAJOR DRIVING FORCE BEHIND MY ALL EFFORTS

II

ACKNOWLEDGEMENT I am thankful to ALMIGHTY ALLAH who gave me courage and passion and prayers of my parents and teachers to achieve the goal that was necessary for the degree. Although it was not an easy task, with the useful direction, kind supervision and co-operation of Mr. Gulfraz Naqvi, it became easy for me to complete the research work. I am really grateful to my Project Supervisor because of his profound interest and encouragement throughout the project work. I would like to acknowledge Mr. Muhammad AzeemNaz Director, School of Commerce Accountancy, UMT Lahore, for encouraging and providing me all the facilities throughout the project. Last but not least, I extend my sincere appreciativeness and thankfulness to my Family for their incredible encouragement. Their love and support means a lot to me.

III

UNDERTAKING

FYP TITLE SESSION (2019-2021) This project is submitted to the School of Commerce Accountancy, University of Management & Technology Lahore, for the partial fulfillment of the requirement for Master Degree in Information Technology.

Approved on: _________________ Submitted By: Muhammad Fahad Name: (ID) : F2019346074

Gulfraz Naqvi

S.C.A UMT, Lahore Project Supervisor

SCHOOL OF COMMERCE AND ACCOUNTANCY UNIVERSITY OF MANAGEMENT & TECHNOLOGY, LAHORE

IV

ABSTRACT This report describes the processesinvolved in making a 2-D game, which is currently in development. This game is developed for Desktop devices. It consist of generic based approaches design with a score terminology and after every hurdle, score will be incremented by one. Although this game is not properly ready for release but a perfect working model has been developed for use.

V

Contents DEDICATION..........................................................................................................................................II ACKNOWLEDGEMENT......................................................................................................................III UNDERTAKING....................................................................................................................................IV ABSTRACT..............................................................................................................................................V 1.

INTRODUCTION.............................................................................................................................3 1.1 PROJECT OVERVIEW......................................................................................................................................3 1.1.1 Problem Statement................................................................................................................................3 1.1.2 Back Ground.........................................................................................................................................3 1.1.3 Proposed Solution.................................................................................................................................3 1.1.4 Customer...............................................................................................................................................3 1.1.5 Goals and Objectives............................................................................................................................4 1.1.6 Assumptions.........................................................................................................................................4

2.

SYSTEM REQUIREMENT SPECIFICATION.............................................................................6 2.1 

REQUIREMENTS..............................................................................................................................................6 GOOD KNOWLEDGE OF USER INTERFACE IS PREFERRED AS THE MAIN CONCERN OF EVERY GAME IS TO

GRAB AND STAY THE USER TO PLAY GAME MAXIMUM TIME SO WE CAN GENERATE LEA FROM THESE POTENTIAL USERS. 6 2.2 USE CASE MODELS........................................................................................................................................6

2.2.1 2.2.2 2.2.3 2.2.4

3.

SYSTEM DESIGN..........................................................................................................................10 3.1 3.2 3.3

4.

TEST CASES.................................................................................................................................................20

RESULTS/OUTPUT/STATISTICS...............................................................................................22 6.1 6.2 6.3

7.

TOOLS........................................................................................................................................................14 LANGUAGES............................................................................................................................................14 TRACEABILITY MATRIX...............................................................................................................................14 SNAPSHOTS OF FROND END.........................................................................................................................15

TESTING.........................................................................................................................................20 5.1

6.

SYSTEM ARCHITECTURE..............................................................................................................................10 CLASS DIAGRAM..........................................................................................................................................11 DATA FLOW DIAGRAM................................................................................................................................12

IMPLEMENTATION.....................................................................................................................14 4.1 4.2 4.3 4.4

5.

List of Actors........................................................................................................................................6 List of Use Cases..................................................................................................................................6 Use Case Diagram................................................................................................................................7 Usage Scenario.....................................................................................................................................7

90%COMPLETION.........................................................................................................................................22 90%ACCURACY............................................................................................................................................22 90%CORRECTNESS.......................................................................................................................................22

CONCLUSION AND SUMMARY.................................................................................................24 7.1 7.2

CONCLUSION...........................................................................................................................................24 SUMMARY................................................................................................................................................24

8.

FUTURE WORK.............................................................................................................................27

9.

REFERENCES................................................................................................................................30

1 INTRODUCTION

1.

INTRODUCTION

1.1 Project Overview I had seen videos of genetic algorithm based approaches applied to solving optimization problems, mostly games like Mario, Attari Deep Mind, etc. were quite influenced by these approaches and hence we decided to implement a similar thing on thisgame Flappy Bird, as it is not much of a complicated game, and hence a good approach for beginners like us. Hence, I decided to make a desktop application for this game using main concepts of genetic algorithms

1.1.1 Problem Statement Now days many of the developers and programmers are making many games and it may provide a lot of features to but it is not that much easy to develop a full fledge feature game as a new developer or a programmer. I faced these problems, when I was creating this game.

1.1.2 Back Ground 1.1.2.1

Existing Systems

As the project (game) is developed in the operating system i.e. windows, environment so at that time it could not be playable on those operating systems which are android-based or any other operating system based devices except windows. 1.1.2.2

Drawbacks

As above mentioned this game is restricted for any other operating system only playable on PC having a windows operating system as it is built for the only use of windows.

1.1.3 Proposed Solution Flappy Bird is a game where the player tries to make the bird cross the maximum number of pillars while it is alive. If the bird hitto any pillar, or to the ground, it will dies and the game will be over (ends). Pillar’s height come up randomly and can come in variable velocity. The player tries to navigate the bird safely through the maximum possible number of hurdles. Each hurdle crossed successfully adds one to the score.

1.1.4 Customer As this is a desktop application game for the only use of desktop and operating system devices so all the active users or those who will download it will be the direct customers of this game developers and it is the developer’s utmost duty to fulfill the customers with their requirement. .

1.1.4.1

Affected Groups

Affected people are as follows:   

Children Teenage Youth Old age people

These above-mentioned people will be affected by this game, as it is the purpose or main objective of the game to be downloaded and played by these mentioned groups of people.

1.1.5 Goals and Objectives 

This game is a very good game having all the basic features and basic functionalities require to make a game so, these functionalities make it a very good user experience which is the main purpose for any of the game



Have a good user interface for better user engagement.



Full fledge functional game that user would like to play.

1.1.6 Assumptions Following are the assumptions when the project was being under development: 

Flappy bird game will be an addictive game It will be the way of entertainment for everyone especially for children and teenagers



It loses stress.

2 SYSTEM REQUIREMENT SPECIFICATION

2.

SYSTEM REQUIREMENT SPECIFICATION

2.1 Requirements 

The basic concept of the game that should be the look proper and feel of the game.



Visual studio Engine should have the appropriate knowledge of this engine how it works and how things are related or interconnected with each other means prefers, script, game management, scenes UI elements, assets and the integration of elements.



C# is the main language used in scripting in Windows Application Form (WAF) so a comprehensive knowledge of this language is mandatory that is how classes and objects are made in C# with using Windows Application Form (WAF).

 Good knowledge of user interface is preferred as the main concern of every game is to grab and stay the user to play game maximum time so we can generate lea from these potential Users.

2.2 Use Case Models 2.2.1 List of Actors 

User (Payer): can play the game and use the difficult options and features within the game for the user.

2.3.2 List of Use Cases  Menu bar In the Menu bar the player will get the options through which the player can start a new game, exit the game, check out the rules, regulation of it and lastly about this game.  New game By clicking the New game user will get the user interface and run it as a .exe file. This how the user will get interaction to the game and play it. 

About game By clicking this option user will be informed by information about the game and its versions

 Rules On clicking the option of Rules it will show the rules of the game that how user can play it.

 Jump On pressing space bar the bird will jump across the barriers which are trees and hurdles. 

Barrier cross There will be two barriers i.e. trees and hurdles the User have to jump across these barriers.

 Score User will display about the score and increment of it as user will pass the barriers.

 Exit The exit button will exit the application.

2.2.2 Use Case Diagram

2.2.3 Usage Scenario Actors

In this phenomena, we have an actorwhich is normal user (player) and he/she will interact with all the basic functionalities like play game, about, rules, and lastly, the exit option perform by him/her

Description

Trigger

Pre-Condition

Post-Conditions

This use case diagram describes the basic flow working of different units and their combined working. Also describes the different actors and their corresponding task as well, which gives us a brief and comprehensive understanding of all the flow After opening the app by clicking the app icon user face the main screen (interface) to interacts within which if user make first selection “New game” from the rest it will targetto gameplay window  User must have to open the app to interact with  User has to make some option in the main screen to do any action  

Normal Flow

    

The screen should be changed if the user makes any selection The user would be able to interact further after first selection have been made User can able to start a new game and able to exit User launch the app then face the main interface Selection the new game option Go into playing environment Lastly, select the exit option to quit the game

SYSTEM DESIGN

School of Commerce and Accountancy (SCA)

3.

SYSTEM DESIGN

3.1 System Architecture

10 | P a g e

School of Commerce and Accountancy (SCA)

3.2 Class Diagram

11 | P a g e

School of Commerce and Accountancy (SCA)

3.3 Data flow Diagram

12 | P a g e

4 IMPLEMENTATION

School of Commerce and Accountancy(SCA)

4.

IMPLEMENTATION

4.1 TOOLS Tools / Techniques

Purpose

Visual Studio Hurdles Timer

It is a game engine and used in this project for making all the basic functionalities required to develop a game and provide the environment to develop an easy game. Creates multiple hurdles object of same nature

Tree Timer

Creates multiple of trees object of same nature

Scripts

Use to make the objects functional and controllable to integrate and embed some basic functionality.

C#

A programming language,this language is employed in this project due to high capacity with our visual studio engine and due to its object-oriented nature, use basically to write scripts This is an IDE (Integrated development Environment) used to make a Windows form to create the script to control and integrate the components

Visual Studio

4.2 LANGUAGES 

C# C# (pronounced "C-sharp") is an object-oriented programming language from Microsoft that aims to combine the computing power of C++ with the programming ease of Visual Basic. C# is based on C++ and contains features similar to those of Java. We have used c# in our web application



SQL SQL stands for Structured Query Language. It is a domain-specific language used in programming and designed for managing data held in a relational database management system (RDBMS), or for stream processing in a relational data stream management system (RDSMS). We have used SQL programming language in our database.

4.3 Traceability Matrix 4.3.1.1

UCID/RID

RID vs UCID (requirements vs use cases)

R

R

R

R

R

R

R

R

1

2

3

4

5

6

7

8 14 | P a g e

School of Commerce and Accountancy(SCA)



UC 1

 

UC 2 UC 3



UC 4





UC 5





UC 6







 



4.4 Snapshots of Frond End Form Title: Menue Interface Id: Description:

UI –01

Menu dialogue box, in which we can Start a new game and exit the game

Snapshot:

Form Title: About Interface Id: Description:

UI –02

About dialogue box will show the details of the game as shown in the figure:

Snapshot:

15 | P a g e

School of Commerce and Accountancy(SCA)

Form Title: Rules Interface Id: Description:

UI –03

Rules dialogue box will show the user, the rules that how to play the game as shown in the figure3:-

Snapshot:

16 | P a g e

Form Title: Obstacles Interface Id: Description:

UI –04

The game will over, if the bird will hit these obstacles as shown in the figures:-

Snapshot:

Form Title: Bird Interface Id: Description:

UI –05

This is the bird, which will jump over the obstacles i.e. trees, and hurdles:-

Snapshot:

Form Title: Scored over game Interface Id: Description:

Snapshot:

UI –06

This picture clearly shows the score. As the bird will jump over the hurdles, the score will increment one after every hurdle as shown in the figure:-

5 TESTING

4.5

School of Commerce and Accountancy(SCA)

5.

TESTING

5.1 Test Cases 5.1.1.1

  

Black box testing

As black box testing is done by whom who do not know of internal working means coding for the data flow So I test this project by my younger brother who is not familiar to coding and this field This project meets all the functional requirements

5.1.1.2 Grey Box Testing  In this testing diagrams of the software are provided to the tester have to make sure that all the functional working respectively  So for the purpose, my supervisor has done grey box testing and make it sure that the flow follows to the provided UML diagrams and all components are unifiedcorrectly 5.1.1.3



White Box Testing

In this testing phase tester have each and every know how of the project, access to the source code or algorithms, other supporting records and UML diagrams which are useful to comprehendand describe the building design and flow of data. So I have done the all the phases of white box testing to make sure that every modulesubmersein one place and do work properly, according to the details and requirements

20 | P a g e

6 RESULTS/OUTPUT/STATISTICS

School of Commerce and Accountancy(SCA)

6.

RESULTS/OUTPUT/STATISTICS

6.1 90%completion 

According to the requirements, this project is completed fully and settled respectively to the briefs of the project.

6.2 90%accuracy  

As this project depends on non-identical modules, so it is too much important that every aspect of the modules must work properly. Therefore, accuracy is bent-on by three different phases(Black box, Grey box, and white box testing) and the project consummatethe required and produces the crave outputs.

6.3 90%correctness 

This is also uniformed and analyzed through a software testing which is done in a genuine and perfectly completed. Therefore, the project is correct and almost meet the fruit-full results as required

22 | P a g e

7 CONCLUSION &SUMMARY

School of Commerce and Accountancy (SCA)

7.

CONCLUSION AND SUMMARY

7.1 CONCLUSION As this report covers almost all the aspects of this project and describes everyattribute of the project briefly, comprehensively and clearly to make it understandable for each reader and anybody who wants to get a knowledge of how different modules unified together means the architectural building of the game. Each module stands almost individual but anybody who needs to understand the whole flowing and working of the project should consider this documentation seriously.

7.2 SUMMARY As this documentation describes the Introduction, Project overview (features),Motivation Scope Requirements all UML diagrams i.e. use case, class diagram and all the levels of Data Flow Diagrams. Testing and the accuracy of the project as stated to the testing of it, so one who examine this documentation get good knowledge of this project and able to perceive each module and its features individually as adaptively collective too.

24 | P a g e

School of Commerce and Accountancy (SCA)

25 | P a g e

8 FUTURE WORK

School of Commerce and Accountancy(SCA)

8.

FUTURE WORK

It is summarized that the future scope of this project circles around maintaining information regarding:   

I will surely do some work on machine learning as many of the people had been done on many games as there domain i.e. Python, JAVA, etc. I can add advance 3D Game for Flappy Bird with more facilities. I will host this game for online players to make it accessible world-wide unified multiple load balancers to dispense loads of the system.

I will also develop and create more interesting and more delightful games as I made this game for the purpose of entertaining most of the people.

27 | P a g e

School of Commerce and Accountancy(SCA)

28 | P a g e

9 REFERENCES

School of Commerce and Accountancy(SCA)

9.

REFERENCES  

https://docs.microsoft.com/en-us/dotnet/csharp/ https://www.udemy.com/course/coding-for-actual-beginners-c-unity-gamedevelopment/? utm_source=adwords&utm_medium=udemyads&utm_campaign=Unity_v.PROF_la.EN _cc.ROW_ti.8154&utm_content=deal4584&utm_term=_._ag_81264460785_._ad_3940 28037724_._kw__._de_c_._dm__._pl__._ti_dsa774930040729_._li_1011082_._pd__._&matchtype=b&gclid=CjwKCAiAmNbwBRBO EiwAqcwwpc5f4sM7Jl8flW2PvkyzWsns9LIGVabz6W9LRJnAcgX46fNPpwBeBoCgTIQAvD_BwE

30 | P a g e