Online Game Application
By Sudarsan Kaphle,
Ujjwal kharel
1
Introduction
• Involving or intended for more than one player can play in the same
game environment at the same time.
• Players are Connected to a game server over the internet, data
packets travel between the player`s device(client) and the server.
• 3D games is rapidly growing up by replacing the 2D games with
stunning graphics, realistic physics and engaging gameplay with
traditional and additional character, features were added.
• Players can take their role of character against virtual combat and acts
in game with different types of weapon and gun by increasing the
score.
2
Problem Statement
• Different client game object must be control by them.
• Creating multiplayer first-person games is smooth and responsive
player movement and interactions.
3
Objectives
• To establish real-time server communication using Photon.
• To develop create or join room system.
• To develop scoreboard system which player can see kill and death of a
player
• To develop ranking system of a player.
• To develop level up system of a player.
4
Scope and Limitation
Scope
• Develop a user-friendly online multiplayer game application.
• Implementing user registration and login functionalities.
• Storing user data, such as profiles and game progress.
Limitation
• The game will support a limited number of game modes and features.
• The project's focus is on functionality and may not prioritize complex
graphics or design.
• In ranking mode, only the limited person can challenge each other in
one game room.
5
Requirement Analysis
Functional Requirement
Figure 3.1: Use Case Diagram of user
6
• Functional requirements are system’s features that the system must
implement to enable users to achieve their goals.
• Use case diagram is used in system analysis to identify, clarify and
organize system requirements.
• In our built up system , use case diagram of user is associated and the
player’s or client can register/login to the system(Gaming Application)
1) Client can connect to the server(PUN)
2) Client can create or join the lobby
7
Non-Functional Requirement
• Performance: The system should be able to handle a large amount
of data and process it efficiently.
• Security: The system should be highly secure to ensure that
sensitive information is protected from unauthorized access.
• Usability: The system should be user-friendly, and the interface
should be intuitive and easy to use.
• Accessibility: The system should be accessible to all users,
regardless of their location or device.
• Maintainability: The system should be easy to maintain, and
updates should be easy to install.
8
Feasibility Analysis
• Technical Feasibility: All the tools and technologies required to construct this
project is easily available. Unity, Photon, Playfab are tools and game engine
to develop game application.
• Operational Feasibility: It’s measure the how well a proper system solves the
problem and take advantage of the opportunities identified during scope also
examines the practicality of running and maintaining the game application.
• Economic Feasibility: In this system development process, the technology
used to store player data from the development tools, the server and
development tools are free
9
• Schedule Feasibility
Fig. 3.2: Gantt Chart for overall project
10
System Flow Chart
Fig: 3.3: System Flow Chart of Online Game Application
11
Class Diagram
12
Fig: 3.5: Class Diagram of Online Game Application 13
Object Modeling Diagram
14
Fig: 3.6: object modelling Diagram of the system
Sequence Diagram
Fig: 3.7: Sequence Diagram of online game application
15
Data Schema Diagram
Fig 3.8: Data Schema Diagram of online game application
16
Working Mechanism of Algorithms.
Step1. Initialization:
• Initialize your Unity project with the Photon PUN package.
• Create a script or component to handle room management.
Step2. Connect To Photon:
• Connect to the Photon server using Photon Network. Connect Using Settings ().
Step3. Create Room:
• Allow a player to create a room and specify its properties, such as room name
and maximum players.
• Use Photon Network. Create Room () to create the room on the server.
Step4. Join a Room:
• Enable players to browse and join existing rooms.
• Use Photon Network. Join Room () to join a specific room by its name. 17
Step5. On Room Creation:
• Implement logic to handle what happens when a room is successfully created.
Step6. On Room Join:
• Check if the current player is the master client (the player who created the room).
• If the player is the master client, load the game scene using Photon. Network. Load
Level ()
Step7. Handle Player Leaving and Not Used Room:
• Implement the callback for when a player leaves the room using On Player Left Room ().
• Check if the master client left the room then destroy the room using Photon Network.
Destroy Room ().
• If any room there is no master client then destroy room.
Step8: Game Scene Transition:
• When the master client loads the game scene, transition the players to the actual
gameplay scene.
18
Implementation and System Testing
• After all the phase have been completely works , the system has been
implemented to the server and the system has used.
• For online Game Application, testing is done by testing unit and it`s
modules. Various sets of tests were run to perform unit and system
testing.
Unit Testing
System Testing
19
Conclusion AND FUTURE
RECOMMENDATION
Conclusion
• All the system working properly in a ranking system, create and
joining room level up, scoreboard and real time communication are
working properly.
Future Recommendation
• New gaming mode and more number of player can join or challenge
room and also graphic design can be added.
• Additional gameplay features, improved match making, player data
management and Inventory system for player purchase items can be
include.
20