Developing Multiplayer Online Game “KNIGHT FANTASY ONLINE”

—Knights Fantasy Online is a massively multiplayer online game with role-playing game genre. This game was developed using ActionScript 3.0 of Adobe Flash for client and Java for its server, while the design of the game was designed using Adobe Illustrator. This research is intended to make multiplayer online games using Adobe Flash. In this game, Players start their adventure in a world called Edenia as a knight from a kingdom called Aurum, the player is in charge of controlling the population of monsters. Players can take on quests, collect equipment and improve their character's ability. The game was tested by using Blackbox, alpha, beta and stress test. Through the results of a questionnaire distributed to 40 people. The test results show that Knights Fantasy Online has an interesting gameplay, easy to understand and also has enough features as a massively multiplayer online game.


I. INTRODUCTION
Nowadays, the game has grown so rapidly, the game is not only played to remove fatigue, but also become one means of communication.With game, player can virtually interact like in the real world.The type of game that has this element is Massively Multiplayer Online Game (MMOG).With MMOG, the players are required to interact and work together to achieve the targets set in the game [1] MMOG is a game that can be played by many players from various locations by using the internet [2].In general, the famous MMOG is based on fantasy themes, but some MMOGs combine several themes or replace fantasy elements with other elements such as science fiction, sword and magic or crime fiction.These elements are then developed using scenarios such as quests, monsters, and items [1].MMOG is suitable for use as a means of communication, as players can find other players coming from various locations in the real world.In addition, MMOGs usually provide union features better known as Guild or Clan [3].This certainly makes the interaction in the MMOG is not much different from the interactions that occur in the real world.Cooperation between players is also required in MMOGs to achieve the objectives that exist in the game.
Since it first appeared in Indonesia in 2001, MMOG until now still loved by various players [4].This is because the MMOG does not look at age and time so that everyone has a wide opportunity to play it.MMOG also generally allows players to gain freedom to explore themselves [5].
This game is a MMOG with Role Playing element that has the title Knights Fantasy Online [6], this title implies that players will play as a soldier who will crush the monsters in the game world.The game is designed using Adobe Flash for the client part because of the flexibility of the layer and the availability of Socket on Adobe AIR.While on the server is designed by using Java because Java can run on various operating systems with ease Players can adventure in the game world to fight monsters and perform missions to increase the level and ability of the character to the maximum.In addition players can also collect items and weapons gear obtained from the monsters that exist to strengthen the character of the player.
Monsters inside this gaming world will be controlled by Artificial Intelligence so that it can move and respond to attack players or also directly attack the player if the monster is an aggressive monster.In the game there will also be Non-Playable Character (NPC), NPC is a character that cannot be used by the player, NPC will be there to provide information and also give the mission to the player to be completed.The types of missions are diverse, such as fighting monsters or collecting items.The end of the game is achieved when the player character reaches level 50 and has completed all the missions in the game, but the player can still explore the game with his character.

II. THEORITICAL REVIEW
Game design requires the basics of the theory as the foundation to design it.Things that need to be explained is the design method, game genre, environment, artificial intelligence, finite state machine, client / server and some other things related to the design of this game.

A. Design Method
Before a game is created, it is necessary to design a useful method as a benchmark in the process of making games and also determine the scope of the game you want to create.
There are several things that must be considered in the process of game design is as follows [7].
• High Concept is a short description of the game designed.High concept also directs the making of the game so as not to deviate from the existing design.
• Gameplay explains what can be done in the game and how to do it.
• Story is a summary of the storyline of the game being designed.
• Audience contains about the target players of the welldesigned games that target age or gender.
• Hardware & Software explains the minimum specifications of the hardware and also the software needed to play the designed games.
• User Interface Design contains a rough idea of the user interface (UI) of the designed game.

B. Game Genre
Each game must be different from each other and goes into a certain category.Game genres categorize a game based on game interaction [8] Here are some classifications of games by genre [9] • Adventure Genre begins with text-based games such as Collosal Cave Adventure.However, along with the development of gaming system, the developers try to insert the visual into it.The genre of this game is in great demand because of the challenges of puzzle solving and low levels of violence.Some examples of games with the adventure genre are the Indiana Jones series, King's Quest and The Walking Dead.
• Role Playing Games (RPG) Growing from pen-andpaper games like Dungeon and Dragons, RPG is a special type of adventure game that usually incorporates three main elements of a specific mission, a process of character evolution through experience to enhance its ability against stronger enemies as well as acquisitions and management of goods and inventory for missions (eg weapons, food and tools).However, RPG games still have a lot of variety and look.Examples of games with the RPG genre are Final Fantasy, Suikoden, The Elder Scrolls and Diablo.

C. Client/Server
Basically, a network-based system consists of servers, clients and media for communication.A computer running a program that makes a request is called a client.A computer running a program that provides the requested service is called a server.Communication media used can be either wired or wireless network.
In general, programs running on the client make requests to programs running on the server.This involves network services provided by the transport layer, which is part of the internet software pile, commonly referred to as Transport Control Protocol / Internet Protocol (TCP / IP) layer and the transport layer itself is divided into two types of protocols, namely Transmission Control Protocol (TCP) and User Datagram Protocol (UDP) [10].

D. Transmission Control Protocol (TCP) and User Datagram Protocol (UDP)
Transmission Control Protocol (TCP) is a protocol that resides in the transport layer (either in the seven layers of the reference model or connection-oriented) and reliable (reliable) [11].TCP is commonly used when the application layer protocol requires a reliable data transfer service, which the service is not owned by the application layer protocol.Examples of protocols that use TCP are HTTP and FTP.UDP, stands for User Datagram Protocol, is one of the TCP / IP transport layer protocols that supports unreliable, unrelated communications between hosts in networks using TCP / IP [12].UDP is often used on the "lightweight" protocol, to save memory and processor resources.

E. Finite State Machine
Finite State Machine (FSA) also known as Finite State Automation (FSA) is a tool, or model of a tool, which has a number of states (state) at a time and can operate against inputs to make transitions from one state to another or create output or action.
An FSM can only be in one state at a time.The FSM itself was originally used by mathematicians to solve mathematical problems.One of the most famous FSM is the Turing Machine made by Alan Turing [13] In Figure 1 is one example of the use of FSM in games is the ghost in the Pac-Man game, where the ghost has two states: evade and chase.The input of a player when consuming a power pill is a condition that changes the ghost state from a chase to an evade and when the time of use of the pill is exhausted, the existing ghost state changes back from evade to chase [13]

III. GAME MECHANICS
In Game Knights Fantasy Online the game starts after the player enters account information and chooses the character to be used to play.Players can also create new characters if they do not already have characters as seen on Figure 2. The player's character has a level or so-called level and to increase the level, the character can accumulate the experience point earned by defeating the monster or doing the mission.The player's character also has the ability to be measured by character status divided into the base status consisting of STR (Strength), AGI (Agility), VIT (Vitality), DEX (Dexterity), and LUK (Lucky), the base status can be improved by status points obtained each time the character is level and level of combat which is the result of calculation of the basic status consisting of Health Point, Stamina Point, Attack, Defense, Evasion, Accuracy, Critical and Attack Speed.In addition to the status, the character of the player also has a move that is also called skill.Skill can be increased with the skill point that is obtained each time the character level up.Skill itself is divided into passive skills that increase the ability of players permanently and also active skills that can be used to fight the monster in the game world or provide additional status according to the duration of the skill.In the game, the player moves his character in a folder that is part of the game world that is connected by the portal warp.The existing folder is divided into three types namely city, field and dungeon.Example of In Game map is shown in Figure 3.In each folder there is a Non-Playable Character (NPC) shown in Figure 4, which is a character that is not driven by a player or a monster that can be resisted by a player's character.Players can interact with NPCs to take missions and when the missions are completed players will be rewarded with money, goods and experience points.The items in this game consist of useable items, equipment and miscellaneous.Useable items are items that can be used by player characters, equipment are items that can be worn by player characters, equipment also changes the appearance of player characters and miscellaneous are items that can be collected and needed for multiple missions just as shown in Figure 8.In this game, players can meet each other and also interact with each other with the chat feature.Players can also create a group called party.The party leader can invite other players to join the party that has been created and the party leader can also change the party settings to share the experience point evenly to party members and make falling items can be taken by all members freely.Members who joined in a party can together adventure against monsters and also do missions.Monsters will be more easily defeated if they are fought together and missions can be completed more quickly.

IV. TESTING RESULT
After the design process and creation process, then performed testing on the game Knights Fantasy Online.Testing is done with the aim of ensuring that the game is made.

A. Blackbox Testing
Blackbox testing is done against existing modules to ensure that each module works properly.The following are the tests performed on the module of the Knights Fantasy Online game.
1) Login Module in Figure 9.In the login module there are two text boxes for charging the player data and three buttons are the login button to proceed to the character selection module if the player has filled the data, register button to register and quit button to exit the game.The test results show that the login module has been working properly, the existing text box was in accordance with the expectations, where if the player fills the password in the password box password then the asterisk sign will appear.10.The player will be taken to the character selection module after login.In this module there are three player character slots, information about name and character level, as well as two buttons cancel and let's play / new char.The test results show that the character selection module has been working properly.
3) Character Creation Module in Figure 11.If the player chooses to create a new character, then the character creation module will appear.In this module there are images of characters created by players, two color pickers, one text box and six buttons.The test results show that the character module has been working properly.

4)
In-Game Module in Figure 12.After a player chooses a character to play with, a game module will appear.In this module there is character information in the upper left corner which contains the level, character name, health point, stamina point and experience point.Then in the bottom left corner there is a chat box and also buttons to open the window inventory, window equipment, window status, window skill, window party, window options and window quit, while in the bottom right corner there is a hotkey slot and mission list.Testing indicates that the game module is working properly.13.In the inventory window there are three tabs and each tab contains thirty-six slots showing items belonging to the player character, the player can also see the description of the item by hovering the cursor on the desired item and also the player can drag on the item to put into the hotkey slot. in this window there is also the amount of money the character has.The inventory window also has a close button to close this window.Tests show that the inventory window is working properly.15.The status window shows the base status and fight status of the player character.Players can also improve the basic status of their characters if they have a status point, players can also see the usefulness of the base status by hovering over the status you want to see.In this window there is also a close button to close the status window.Testing indicates that the status window has been working properly.17.The party window displays information about groups owned by players, including group name, group members, and group settings.Players can also change group settings when player characters are group leaders.In this window there are also five buttons are the create button, disband, leave, apply and close.The create, disband and leave buttons are one button that changes according to circumstances, if the player character does not have a group, then the create button will appear, whereas if the player character is the group leader, the button turns into the disband button and if the player character is a member of the group, then the button turns into the leave button, the apply button is the button used to store group settings that can only be used by the group leader and the close button is used to close this window.Testing shows that the window party has been working properly.19.In the quit window there are three buttons that are quit, to title and cancel.The quit button is useful for exiting the game, button to title beguna to return to the login module, and the cancel button closes the quit window.Testing indicates that window quit is working properly.

B. Alpha Testing
Alpha test in the game Knights Fantasy Online is done by players who have experience playing online games before.Testers consist of 20 selected people and testing is done online on December 29, 2017 at 20:00 to 22:00.Internet providers used to run servers are First Media with FastNet Commerce packages.Player interaction can be shown in Figure 21 The testers play games from different locations with different internet providers simultaneously.After playing the Knights Fantasy Online game, the testers were given a questionnaire containing 5 questions about the game's ability to connect to the server through a wide area network network, the testers were also asked to fill out a questionnaire about the Knights Fantasy Online game which contains 12 questions about Knights Fantasy Online.Test Beta Test is done to test whether the game can attract people to play it.Beta test is done not limited to people who understand about programming but also layman in programming, therefore beta testers consist of people who have various background.Beta testing is done online on December 29, 2017 until December 31, 2017.
After players in beta test play this game, the players also filled out a questionnaire containing 12 questions about Knights Fantasy Online game.

D. Stress Testing
Stress Testing is done to test the ability of the server to accommodate the number of players.In stress test testing, a program is created that simulates a number of players who walk in folders simultaneously to provide load to the server shown in Figure 22.The program is created with Java programming language.The number of simulated players can also be set so that it can be tested how many maximum players can be accommodated by the server.• From 20 respondents, 16 respondents stated that they can play Knights Fantasy Online games well and the rest can not play Knights Fantasy Online games properly.
• A total of 13 respondents said they experienced lagging at the time of play with the highest level of disturbance is 7 points.While 7 other respondents stated no lagging.
• As many as 85% or 17 respondents stated that they did not have problems associated with connections while playing and the rest experienced problems related to the connection.
While the results of beta testing of 40 respondents are as follows: • 75% or 30 respondents had played the game with the genre of Massively Multiplayer Online Game (MMOG).The rest of the respondents stated never playing the game with the MMOG genre.
• From 40 respondents, 20 respondents stated that the look and menu of the Knights Fantasy Online game is easy to understand, the other 19 respondents stated normal and 1 respondent stated difficult to understand.
• A total of 32 (80%) respondents stated that they had felt the atmosphere described by Game Knights Fantasy Online and other respondents stated they did not feel the atmosphere.
• The respondents opinion on the appearance of the game Knights Fantasy Online is 6 respondents said that the display is very interesting, 29 respondents said that the view is quite interesting and 5 other respondents said that the display is just.
• Rating of respondents to the level of difficulty Knights Fantasy Online game is 4 respondents considered that the game Knights Fantasy Online is very easy, 18 respondents considered normal, 17 other respondents considered quite difficult and 1 respondents rate very difficult.
• Respondents who said that the gameplay of the game Knights Fantasy Online is very interesting there are as many as 9 respondents, 30 respondents argue that the gameplay is quite interesting and 1 respondents argue that the gameplay is less interesting.
• Assessment of the level of difficulty of the mission given by respondents is as much as 3 respondents considered that the level of difficulty given the mission is very easy, 24 respondents rate is normal and the rest rate is quite difficult.
• A total of 25% or 10 respondents considered that the explanation of the given mission is very clear, 72.5% or 29 respondents considered quite clear and 1 respondent rate is not clear.
• A total of 7 respondents said that the rewards given after completing the mission is good, while 27 respondents said that the rewards given enough and 6 respondents stated that the rewards given less.
• Of all respondents, 6 respondents rate the features provided by the game Knights Fantasy Online is very broad, 32 respondents others assess the features provided enough and 2 respondents rate less.
• Opinions given to the use of mouse and keyboard to play the game Knights Fantasy Online is as much as 10 respondents said that its use is very easy, while 28 other respondents said that its use is quite easy and 2 respondents said that its use makes it difficult.
• Respondents who stated that they will play Knights Fantasy Online game when entering the market there are as many as 18 respondents, 21 respondents stated yes and 1 respondent stated no.
Stress test with the program that has been made through Local Area Network (LAN) network with 2 computers and done gradually starting from 10 players.In this test the server becomes less responsive with a total of 30 players.Through the results of the stress test, the maximum recommended number of players for the server with the hardware specifications used in this test is as many as 20 players.

V. CONCLUSION AND SUGGESTION
After testing of the game Knights Fantasy Online is done, the conclusions can be drawn from the test results are as follows: • Internet connection greatly affects the smooth relationship between server and client • The gameplay and appearance of the Knights Fantasy Online game is considered attractive by most players • User Interface and mission description can be understood by most players without having any significant difficulties.
• The environment that the player wants to convey is that a soldier of a kingdom has been sufficiently perceived by the player.
• Game difficulty level and also the mission is felt differently depending on the experience of players in playing MMOG.The rewards given after completing the mission are also considered to be enough for most players.
• The features provided by the Knights Fantasy Online game are considered to be enough by most players.
And there are some suggestions for further development that is as follows: • It is necessary to add a system to perform account activation via email so email can be verified that the email used is the original email.With the original email, it can be added also forgot password system so that players do not need to create a new account if the player forgot his password • Add a website to register account.So players no longer need to register through game client.
• Game resolutions can be made widescreen resolution.
• Add cutscenes video and placing a story into an existing mission to emphasize the storyline.
• Implement better server by using hardware that has specifications for a good server in order to get better results.
• Implementation of the class system or job and also the variation of weapons to make the game more interesting..

Fig 2 .
Fig 2. State Transition DiagramIn the game, the player moves his character in a folder that is part of the game world that is connected by the portal warp.The existing folder is divided into three types namely city, field and dungeon.Example of In Game map is shown in Figure3.In each folder there is a Non-Playable Character (NPC) shown in Figure4, which is a character that is not driven by a player or a monster that can be resisted by a player's character.Players can interact with NPCs to take missions and when the missions are completed players will be rewarded with money, goods and experience points.

Fig 3 .
Fig 3. one of the in-game map

Fig 4 .
Fig 4. NPC DesignWhile the monster is an opponent that can be defeated by the player to gain experience points and goods.Monsters only appear in fields and dungeons and each monster moves freely and can chase and attack the player's character when the monster is attacked or immediately chases and attacks the

Fig 8 .
Fig 8. Example of player character display after wearing equipment

Fig 12 .
Fig 12.  In-Game Screen a) Inventory Window in Figure13.In the inventory window there are three tabs and each tab contains thirty-six slots showing items belonging to the player character, the player can also see the description of the item by hovering the cursor on the desired item and also the player can drag on the item to put into the hotkey slot. in this window there is also the amount of money the character has.The inventory window also has a close button to close this window.Tests show that the inventory window is working properly.

Fig 13 .
Fig 13.Inventory Window Screen b) Equipment Window in Figure 14.Window equipment displays the weapon equipment worn by the player's character and also the player character with the weapon's equipment.Players can view descriptions of weapons by pointing the cursor at the desired weapon.In this window there is also a close button to close the window equipment.Testing indicates that the window equipment has been working properly.

Fig 14 .
Fig 14.Equipment Window Screen c) Status Window in Figure15.The status window shows the base status and fight status of the player character.Players can also improve the basic status of their characters if they have a status point, players can also see the usefulness of the base status by hovering over the status you want to see.In this window there is also a close button to close the status window.Testing indicates that the status window has been working properly.

Fig 15 .
Fig 15.Status Window Screen d) Skill Window in Figure 16.The skill window displays a list of skills that the player character possesses.Players can see the description of the skill by hovering the cursor on the desired skill, besides the player can also drag on the desired stance to be

Fig 17 .
Fig 17.Party Window Screen f) Option Window in Figure 18.Window option allows you to adjust the background sound volume and effect sound.In the options window there are two sliders to adjust the volume and one button to exit the window.Testing indicates that the window option has been working properly.

Fig 19 .
Fig 19.Quit Screen Window h) Respawn Window in Figure20.The respawn window only appears when the health point of the player character reaches zero.This window also replaces window quit when the player presses the quit button in the game module.The respawn window is used to animate the player character but the player character is brought back to the place where the character is stored in position.Tests show that the respawn window is working properly.

Fig
Fig 21.Player Interaction