Professional Documents
Culture Documents
An Esports Tournament Platform Final
An Esports Tournament Platform Final
BACHELOR OF TECHNOLOGY
IN
Submitted By
1
RAMGARH ENGINEERING COLLEGE
CERTIFICATE OF RECOMMENDATION
Countersigned by,
2
RAMGARH ENGINEERING COLLEGE
CERTIFICATE OF RECOMMENDATION
Countersigned by,
3
RAMGARH ENGINEERING COLLEGE
CERTIFICATE OF RECOMMENDATION
Countersigned by,
4
RAMGARH ENGINEERING COLLEGE
CERTIFICATE OF RECOMMENDATION
Countersigned by,
5
RAMGARH ENGINEERING COLLEGE
CERTIFICATE OF APPROVAL
Board of Examiners,
1. _______________
2. _______________
______________
Project Supervisor
6
RAMGARH ENGINEERING COLLEGE
UNDERTAKING
7
RAMGARH ENGINEERING COLLEGE
UNDERTAKING
Deepak Kumar
8
RAMGARH ENGINEERING COLLEGE
UNDERTAKING
Neha Kumari
9
RAMGARH ENGINEERING COLLEGE
UNDERTAKING
Deepmala Kumari
10
ACKNOWLEDGMENT
We pray our deep sense of gratitude to Mr Bhaskar Das (HOD) of CSE
department to encourage us to the highest peak and to provide us the
opportunity to prepare the project. We are immensely obliged to our
friends for their elevating inspiration,encouraging guidance and kind
supervision in the completion of our project.
Last but not the least our parents are also an important inspiration for us.
So with due regards, We express our gratitudes to them.
11
Table of Contents
1. Introduction 13
5. Conclusion 39
6. Reference 39
12
Abstract
1. Introduction
There are many different latest technologies used in the digital world to
reduce human effort. The project ‘An eSports Tournament Platform App’
will do the same. It will reduce the human effort, time and cost and help
the tournament organisers and the gamers. It will maintain all gamer’s
rank , latest tournaments result and many more.
To provide quick payment for paid tournaments, security and central
access, we are going to use many different technologies like Android
(using JAVA,XML),PHP(for backend),JWT(JSON Web Token) to provide
security and give access to authorized users,Paytm Payment Gateway
which we have enabled etc. It will consist of a server and database to
store the users and game organisers data to provide services to the
users.
First section is Home section contains the different available leagues in
which users can participate,once the league slot gets full no more users
will be able to register for that league.Second section is the Leaderboard
section which contains top 50 gamer’s rank and the latest league
results.Third section is the More section where users can manage their
13
accounts. We are using Bigrock cloud hosting to store the users data
and fetch the response using api.
14
● Portable − Being architecture-neutral and having no
implementation dependent aspects of the specification makes
Java portable.
● Robust − Java makes an effort to eliminate error prone situations
by emphasizing mainly on compile time error checking and runtime
checking.
● Multithreaded − With Java's multithreaded feature it is possible to
write programs that can perform many tasks simultaneously. This
design feature allows the developers to construct interactive
applications that can run smoothly.
● Interpreted − Java byte code is translated on the fly to native
machine instructions and is not stored anywhere. The
development process is more rapid and analytical since the linking
is an incremental and light-weight process.
● High Performance − With the use of Just-In-Time compilers, Java
enables high performance.
● Distributed − Java is designed for the distributed environment of
the internet.
● Dynamic − Java is considered to be more dynamic than C or C++
since it is designed to adapt to an evolving environment. Java
programs can carry extensive amount of run-time information that
can be used to verify and resolve accesses to objects on run-time.
Java is easy to learn, the language has fluent English-like syntax and
less mysterious characters. Java has rich API, xml parsing, database
15
connection, networking, utilities and provides almost everything that a
developer can expect. It is also open source and available free.
.0.
16
Every type of layout has attributes that define the way its elements appear.
There are both common attributes that all layouts share. The following are
attributes that apply to all layouts:
● android:id: A unique ID that corresponds to the view.
● android:layout_width: The width of the layout. (required for every
view)
● android:layout_height: The height of the layout. (required for
every view)
● android:layout_marginTop: Extra space on the top of the layout.
● android:layout_marginBottom: Extra space on the bottom of the
layout.
● android:layout_marginLeft: Extra space to the left of the layout.
● android:layout_marginRight: Extra space to the right of the layout.
● android:layout_weight: Specifies how much of the extra space in
the layout should be allocated to the view.
● android:paddingLeft: Padding to the left of the view.
● android:paddingRight: Padding to the right of the view.
● android:paddingTop: Padding at the top of the view.
● android:paddingBottom: Padding at the bottom of the view.
17
android:id="@+id/search_button"
Here, the @+id/ portion indicates that the name following is a string
containing this element's ID, and that it is a new resource that should be
created and added to our resources.
For instance, the following XML will create a Button with the id
search_button:
<Button android:id="@+id/search_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/my_button_text"/>
The findViewById() method can locate both Views and root views.
2.3 PHP
● PHP is an acronym for "PHP: Hypertext Preprocessor"
18
● PHP is a widely-used, open source scripting language
● PHP scripts are executed on the server
● PHP is free to download and use
19
It executes code in sequence. This helps the user to be in order
and perform a task in a structured manner.
● Wide Platform - Content management systems such as
WordPress are designed in such a way that they can be used
by non-technical people as well. Android app development
services are proficient with languages used for the back-end.
According to statistics, 78.9% are using PHP as a server-side
programming language.
● Database - PHP connects the site’s database to the browser,
creating a smooth, user-friendly experience. The database
being an integral component of the back-end, needs to work
well. PHP is traditional so it works well with MYSQL,
PostgreSQL, and MariaDB.
● Framework - PHP is the world’s most popular back-end for
android applications, with its framework being one of the main
reasons behind its success. PHP provides a basic structure to
build web applications.It makes PHP easy and rapid to use.
There are many different frameworks available in PHP to
choose from. Some of them are CakePHP, FuelPHP, and
Codeigniter.PHP makes deployment and hosting easier. PHP is
user–friendly, old, and in demand.
2.4 JWT
JSON Web Token (JWT) is a compact, URL-safe means of representing
claims to be transferred between two parties. The claims in a JWT
are encoded as a JSON object that is used as the payload of a JSON
Web Signature (JWS) structure or as the plaintext of a JSON Web
Encryption (JWE) structure, enabling the claims to be digitally
signed or integrity protected with a Message Authentication Code
(MAC) and/or encrypted.
20
2.4.1 When should we use JSON WEB Token?
Here are some scenarios where JSON Web Tokens are useful:
JSON Web Tokens consist of three parts separated by dots (.), which
are:
● Header
● Payload
● Signature
If any part is tempered, the signature will not get verified. It can only be
verified by the private key.
21
22
3.PROPOSED WORK
Flowing is the desired project flow chart which represents the project An
eSports Tournament Platform App.
The app first sends the JWT Token from android activity to Authorization
Server(Firebase) to verify the token whether it is valid or invalid.
If the token is invalid then the client can not fetch any data from the
database.Hence it provides security to api requests for unauthorized
access.
23
3.1 MAJOR ACTIVITY OF THE APP
The various major activity of the App is explained below
24
In this activity token and the version of the app is checked ,if a new
version i.e update is available then first users have to update the app to
proceed.
From this activity users can login into their account if an account already
exists.New users can register by clicking on “Create Account”.
25
3.1.3 CREATE ACCOUNT ACTIVITY
New users can register from this activity.After clicking on next users
have to enter the otp sent to email.Once that is validated ,users have to
enter a new password and have to accept the term and condition.After
26
successful registration users will be redirected to Login Activity and
hence can access the features of the app.
27
From home activity users can select the available leagues and can
register for the upcoming league.
From this activity users can add the league to the cart if the league is not
full.
28
3.1.6 CART ACTIVITY
In the activity the league in the users cart can be registered,if the slot is
not full.On clicking “Register”, users will get the payment option.
29
3.1.7 CART ACTIVITY PAYMENT OPTIONS
Users can either pay using UPI or using referral credit earned by inviting
friends.
30
3.1.8 PAYTM PAYTM GATEWAY
31
3.1.9 LEADERBOARD FRAGMENT
32
3.1.10 LAST SOLO RESULT ACTIVITY
33
3.1.11 MORE FRAGMENT
From More fragment users get lots of features.At the left top users can
check the number of coins earned.At the top right user can access the
cart.
34
● By clicking on Edit users can change the account details.
● From My League users can check the booked league details.
● From Players Details save the player details which will be used
during registration.
● From My League users can check the booked league details.
● From Transaction History users can check all the transactions
done in the app.
● From Refer & Earn users can get the referral code.By sharing this
users can earn free credit.
● From Guide & Rules users will be guided how to participate in the
league and also one can check the rules.
● From Support users can send an email or can live chat with us in
case of any query.
● From Change Password users can change their password.
● From About Us users will get to know about us.
● From Connect With Us users can find various social media links
using which they can connect with us on social media.
● From Legal read the term and condition,privacy policy and faq.
● From Sign Out users can log out from the app.
● At the bottom one can check the app current version.
35
3.1.12 MY LEAGUE ACTIVITY
From this activity users can check the details of the booked leagues and
even they can edit the details.
36
3.1.13 TRANSACTION ACTIVITY
In this section users can check all the transactions done in the app.
37
3.1.14 CHAT SUPPORT ACTIVITY
In this activity users can directly chat with us in case of any query.
38
4. Result and Discussion
After compiling all the activity the release version of the app was
generated from Android Studio and the beta version of the app was
published in Play Store and after successful testing, the app was rolled
for production mode and now the app is live for all Indian users.The app
can be downloaded from url- https://app.gplbharat.in
5. Conclusion
This app provides both the gamers and the organisers a great platform
for eSports tournaments.There are approx 300 million online eSports
gamers in India and this app is going to be very beneficial to them.In
upcoming updates we will add almost all the popular eSports games.
6. Reference
As any development project we mostly use the official Android
documentation.
http://developer.android.com/index.html
http://www.stackoverflow.com
https://jwt.io/introduction/
https://www.w3schools.com/
https://www.tutorialspoint.com/index.htm
39
40