HEROES OF WARLAND-BATTLE PASS SEASON 3 - Database Implementation Erik Råmark Thesis - Theseus
←
→
Page content transcription
If your browser does not render page correctly, please read the page content below
Erik Råmark HEROES OF WARLAND-BATTLE PASS SEASON 3 Database Implementation Thesis Bachelor of Engineering in Information Technology Game Programming 2021
Tutkintonimike Insinööri (AMK) Tekijä/Tekijät Erik Råmark Työn nimi Heroes of Warland-battle pass 3. kauden ohjelmointi tietokantaan Toimeksiantaja Nitro Games Oyj Vuosi 2021 Sivut 40 sivua Työn ohjaaja(t) Niina Mässeli TIIVISTELMÄ Opinnäytetyön tavoitteena oli ohjelmoida Heroes of Warland-mobiilipelin battle pass -ominaisuuteen uusi kausi. Peliin oli tarkoitus luoda ilmainen ja premium- versio battle pass -kaudesta erilaisilla palkinnoilla. Kehitystyötä edeltävä teo- reettinen viitekehys rakennettiin tutkimalla projektin kannalta tärkeitä aiheita. Opinnäytteen teoriaosuuteen hankittu aineisto yhdistelee kvantitatiivista ja kvalitatiivista tutkimusta. Teoriaosuus käsittelee muun muassa mobiilipelien syntyä ja nykytilaa, battle pass -käsitettä, tietokantoja ja kehitystyön työkaluja. Kehitystyön työskentelyn metodina toimi ketterä iteratiivinen ohjelmistokehitys, joka koostui enimmäkseen JSON-tietokantaohjelmoinnista ja pelitestauksesta. JSON-dokumentit lisättiin Nitro Gamesin kehitystietokantaan Heroes of War- land -pelille. Kehitystyön lopullisena tuotteena syntyi pelattava uusi kausi Heroes of War- land -pelin battle pass -ominaisuuteen. Nitro Gamesin henkilöstö oli ohjelmoi- nut pelin ja battle passin front end -puolen. Kehitystyö mahdollisti toisten ohjel- moijien kopioida kolmanen batte pass -kauden pelin kehitysversiosta live -ver- sioon. Lopuksi premium battle pass -tuotteen pystyi ostamaan pelin sisällä iOS App Store- ja Google Play -palveluiden kautta. Asiasanat: mobiilisovellukset, peliohjelmointi, JSON, tietokannat, MongoDB
Degree Bachelor of Engineering Author (authors) Erik Råmark Thesis title Heroes of Warland-battle pass season 3 database implementation Commissioned by Nitro Games Oyj Time 2021 Pages 40 pages Supervisor Niina Mässeli ABSTRACT The objective of the thesis was to implement a new season for the battle pass feature of the mobile game Heroes of Warland. The purpose was to create free and premium versions of the battle pass season with different rewards. The thesis utilized both quantitative and qualitative research methods. The theoretical framework primarily consisted of examining the emergence and current state of mobile games, the battle pass concept, databases, and tools used in the development of online video games. In this study, the develop- ment method was agile iterative software development, consisting mostly of JSON database programming and game testing. The JSON documents were inserted into the development database of Heroes of Warland made by Nitro Games. The final product of this thesis study was a playable new season for the He- roes of Warland-battle pass. The front end of the game and battle pass had been programmed by Nitro Games staff, and the outcome of this study al- lowed other programmers to copy season 3 from the development version to the live version of the game. Also, it made the premium battle pass available for in-game purchase through iOS App Store and Google Play services. Keywords: mobile apps, game programming, JSON, databases, MongoDB
CONTENTS 1 INTRODUCTION .......................................................................................................... 7 1.1 Nitro Games Oyj ..................................................................................................... 7 1.2 Heroes of Warland .................................................................................................. 7 1.3 The battle pass ....................................................................................................... 8 1.4 Thesis motive.......................................................................................................... 9 2 MOBILE GAMES ........................................................................................................ 10 2.1 A brief history ........................................................................................................ 11 2.1.1 Roots of mobile entertainment ........................................................................ 11 2.1.2 First mobile games ......................................................................................... 12 2.1.3 Digital era........................................................................................................ 13 2.2 Mobile games today.............................................................................................. 13 2.2.1 Types of monetization ..................................................................................... 14 2.2.2 Mobile gaming statistics .................................................................................. 15 2.3 Battle passes ........................................................................................................ 16 2.3.1 Shifting F2P monetization ............................................................................... 17 2.3.2 Birth of the battle pass .................................................................................... 18 2.3.3 Reasons behind success ................................................................................ 18 3 DATABASES .............................................................................................................. 19 3.1 Definition of a database ........................................................................................ 20 3.2 Short history.......................................................................................................... 20 3.3 Implementation tools............................................................................................. 20 3.3.1 JSON .............................................................................................................. 21 3.3.2 Robo 3T .......................................................................................................... 22 3.3.3 MongoDB ........................................................................................................ 23 4 DEVELOPMENT WORK ............................................................................................ 26 4.1 Preparation ........................................................................................................... 27 4.2 Design .................................................................................................................. 28
4.3 Programming ........................................................................................................ 29 4.4 Testing .................................................................................................................. 30 5 CONCLUSIONS ......................................................................................................... 33 REFERENCES .................................................................................................................. 35 FIGURES ........................................................................................................................... 39
ABBREVIATIONS App Application BSON Binary JSON DBMS Database management system F2P Free-to-play GUI Graphical user interface IAP In-app purchase JSON JavaScript Object Notation
7 1 INTRODUCTION This thesis begins with introductions of Nitro Games and Heroes of Warland, then continues to study the theoretical framework of mobile games, battle passes, databases, and the tools used in online game development. Finally, the theoretical framework is followed by a description of the actual workflow of the development performed in this thesis study, accompanied by conclusions. The objective was to implement a new battle pass season in a development database for Nitro Games’ mobile game Heroes of Warland. 1.1 Nitro Games Oyj Nitro Games Oyj is a Finnish game developer and publisher focused on free- to-play (F2P) mobile games. The company specializes in the shooter game category and aims to produce high production value mobile games for mid- core audience (Nitro Games 2021). Founded in 2007 in Kotka, Finland, the company initially made PC strategy games such as East India Company, Commander: Conquest of the Americas and Pirates of Black Cove. The com- pany also developed the Windows version of the action-adventure game Alan Wake in collaboration with Remedy Entertainment in 2011 (Yin-Poole 2012). Nitro Games began producing mobile games in 2013 and has since released titles such as Raids of Glory, Medals of War and Heroes of Warland. The new- est addition to the mobile game family is the early access game Lootland. Ni- tro Games was listed in Nasdaq Stockholm First North stock market in 2017 (Nasdaq 2017). Presently the company has offices in Kotka and Helsinki and is working on multiple titles in collaboration with other companies including Hasbro and Snap (Nitro Games 2020; Nitro Games 2021). 1.2 Heroes of Warland Heroes of Warland was announced in 2018 and soft-launched later that year. It is a competitive team-based multiplayer game for mobile devices (Riis 2018). According to Nitro Games’ website (2020), Heroes of Warland is “[The] most epic party shooter game on mobile”. The game is played online and the
8 player is one of the six heroes in a team, trying to score more points than a ri- valling team by killing opponents during a match. Players can team-up with their friends or play with random players through matchmaking. The game can be played from first- or third-person camera, and it allows players to move, aim, shoot, as well as use gear and special attack. Heroes of Warland is a competitive mobile game with local and global leaderboards and seasonal league rewards. The promotional art of the game can be seen in Figure 1. Figure 1. Heroes of Warland promotional art (Nitro Games 2019) 1.3 The battle pass The battle pass is a monetization model in video games that rewards the player with valuable in-game content through a tiered system. It is a subscrip- tion-based model for payment, which is limited to a certain window of play time called a “season”. The model is relatively new, but it is already used across many different genres of video games. The popularity of battle passes in mobile games has grown vastly in few years, due to games for example Fortnite, Clash of Clans and PUBG Mobile.
9 In chapter 2.3 of this thesis, a more detailed examination of the subject is pro- vided. At present time, only very few research articles could be found online about battle passes, and only one such article is referred to in this thesis. Sim- ilarly, the Finnish electronic thesis archive Theseus yielded no results on any battle pass related keywords. Since battle passes are such a new phenome- non, the lack of prior research cannot be considered surprising. 1.4 Thesis motive The incentive to create a new season for the Heroes of Warland-battle pass was initiated in spring 2020. The last battle pass season had winter holiday- themed content and had been online for many months. Plans emerged in the company to create a new spring themed battle pass season with various green outfits and weapon skins as premium rewards. The game design with various outfit and weapon skin rewards for the new season was created by Ni- tro Games’ Senior Product Manager, Kenny Chan. The development objective was to implement the new season from his design document in Figure 2. Figure 2. A reward sheet from battle pass design document Once the motive and task were clear, the planning work began and quickly continued into programming. The objective of this thesis study was to perform and report the implementation of a new battle pass season to the mobile game Heroes of Warland. The implementation was to be completed in JSON syntax, using Robo 3T to create the new season into the game’s MongoDB
10 database. The method chosen for the project was agile iterative software de- velopment. The completion would require a combination of study, planning, programming, and game testing. Figure 3. Heroes of Warland gameplay (Nitro Games 2019) Battle pass season 3 would be a new feature to the game to replace the previ- ous season. Free battle pass would reward the player with occasional in-game currencies and loot boxes. As an example, in Figure 3 the Foxhound character on the left-hand side has an outfit that was acquired from a loot box. The pre- mium battle pass could be purchased in the game store through iOS App Store and Google Play to receive better rewards from playing the battle pass. In this thesis, the aim of the development work was to program different con- figurations and rewards for correct tiers for the new battle pass season in the game’s development database. 2 MOBILE GAMES The mobile game industry has grown vastly since people gained access to smartphones. Mobile games hold a unique position in the video game industry because they are the most accessible form of gaming. The ability to play on mobile devices has quickly democratized gaming worldwide. One does not need expensive gaming computers, controllers, headsets, consoles, or moni-
11 tors to play, but can instead access a game on their phone from almost any- where in the world. This has been the case only from the mid-nineties to pre- sent day. The nearly unlimited access to games quickly formed mobile games to means to battle boredom or give something to do on public transportation. In the pre- sent day, mobile games have become so diversified that there is something for everyone, from small children to professional eSports gamers. Heroes of Warland falls into the mid-core category in that it is easy to learn, but difficult to master. The focus of Nitro Games has been to produce high production value mobile games to mid-core segment (Nitro Games 2021). 2.1 A brief history How did mobile entertainment emerge in the first place? Throughout history, human beings have invented ways to have fun and pass time with friends and family. Within only 30 years, people have gone from holding cards to holding mobile phones in their hands. The Western culture has evolved together with technology to eventually democratize these gadgets to be accessible to al- most everyone around the world. 2.1.1 Roots of mobile entertainment Jussi Parikka and Jaakko Suominen claim (2006) that the roots of mobile games can be traced all the way back to the emergence of media culture in the nineteenth century. In their 2006 paper “Victorian Snakes? Towards A Cul- tural History of Mobile Games and the Experience of Movement”, they state that the emergence of the mobile entertainment culture took place a long time before the first games for mobile phones had been developed in the mid-nine- ties. At that time, mobile entertainment meant very different things compared to today. Mobile entertainment was created in the form of pocketbooks and portable en- tertainment such as dice, card, and board games. Suominen and Parikka ar- gue (2006) that the nineteenth century movement experience had a role in forming the basis for modern mobile entertainment. Since mobile games have been initially used as something fun to fill the gaps of boredom during travel or
12 waiting, it can be concluded that mobile games have their roots in the earliest forms of mobile entertainment. Nevertheless, it would take more than a cen- tury for the first mobile game to be created. 2.1.2 First mobile games Tetris for Hagenuk MT-2000 is regarded as the first mobile game ever cre- ated. This happened in 1994, and the Hagenuk phones came with Tetris pre- installed. It is not a well-known fact because Hagenuk did not do well on the market. (Todorov 2014.) Other early digital mobile games were titles such as Snake (1997), BotFighters (2001), Racing Fever Deluxe (2002), Uncle Roy All Around You (2003) and Playman Summer Games (2004). Then there was Nokia which made the first truly successful attempt to enter the mobile game market. For example, Nokia’s 6110 cellular phone came with pre-installed game Snake and reportedly sold nearly 41 million units in 1998 (Himanshu 2015). Figure 4. Nokia N-Cage (Back to the Gaming 2021) The first handheld device for gaming, Nintendo’s Game Boy (1989), undoubt- edly inspired the making of the first gaming phone N-Cage (2003) by Nokia. Figure 4 illustrates the early 21st century design of the phone. N-Cage allowed two people to play together through Bluetooth, creating the basis for multi- player mobile games. Although Nokia’s N-Cage failed in the market due to high manufacturing price, bad usability, and poor game distribution, it set the foundation for mobile gaming ecosystem (Neo Games 2019, 9). After a long
13 period of relatively slow market growth, digital distribution finally made mobile game development truly profitable. 2.1.3 Digital era Danger, Inc. and Nokia created the first versions of digital stores for mobile applications (apps) between 2002 and 2006 (Wikipedia 2021). Nevertheless, Apple was arguably the first to make a truly profitable mobile app distribution platform. They launched the Apple App Store in July of 2008 (Bonnington 2013) and paved the way for other tech companies to follow. Google released their digital store, Google Play for Android, three months after the Apple App Store launch in 2008 (Wikipedia 2021). Mobile games entered the digital mar- ket quickly among other apps. Among the first companies to reap the benefits of the shifting power, from PC- and console-centric gaming market to mobile, was Rovio (Neo Games 2019, 10). Angry Birds was released 2009 in Apple iOS App Store and gained massive popularity around the world (SymbianFreak 2010; Fandom 2021). Three years later, the first successful implementation of the micropayment model was im- plemented by Supercell in their two mobile games Hay Day and Clash of Clans (Neo Games 2019, 10). Both games were released for iOS in 2012 and a year later for Android (Supercell 2021; Supercell 2021; Koueider 2013; Supercell Community Forums 2013). The explosive success of these free- mium games laid the foundation for other mobile game successors using the same monetization models for years to come. 2.2 Mobile games today In earlier decades, video game developers used to make their profits solely by selling the physical copies of the game to consumers. In the present day, monetization of video games is undergoing an almost constant transformation. The recent monetization techniques have focused on generating income from games beyond the initial point of purchasing the product (Petrovskaya & Zendle 2020). In 2019, the most frequently downloaded mobile game genres were arcade, puzzle, and other casual games, accounting for 87% of global game downloads (App Annie 2020, 14). While the shooter genre of Heroes of
14 Warland had only a 3% share of the downloads, nevertheless, there still exists a relatively large market sector for shooter mobile games. 2.2.1 Types of monetization Mobile games can be considered as hedonic apps that provide emotional at- tachment and an achievement component (Tang 2016). Therefore, mobile game monetization is directly connected to mobile app monetization in gen- eral. Ailie K. Y. Tang divided mobile app business models into four categories in her 2016 paper “Mobile App Monetization: App Business Models in the Digi- tal Era”, published in International Journal of Innovation, Management and Technology. The categories presented in her paper were paid, paidmium, in- app advertising and freemium. The paid business model refers to mobile apps that require direct payment when downloading the product from a digital store. Once the app is paid and downloaded, it is fully usable with no in-app-purchases. These apps make profit at the initial point of purchase and no further. (Tang 2016.) Although this model is the oldest of the four introduced by Tang, it is still widely used with mobile games. According to Tang (2016), the paidmium business model entails that the user is charged upon the app download but can additionally make in-app-pur- chases within the app. This model is used more commonly with apps and is not typical for mobile games. However, it is worth to mention that some video game companies such as EA and Ubisoft have made attempts to apply this model to their triple A games for PC and consoles (Byford 2017; Marks 2017). The in-app advertising revenue model is used in apps and games that earn profit based on advertisement impressions and conversion. Advertisements appear periodically, making the user either wait for them to finish or giving the user optional action to reward them in some way. It is typical in this model to give out the app for free and make revenue solely for the apps. (Tang 2016.) Many F2P games still use this model, especially indie games.
15 Freemium apps make profit solely from in-app-purchases that can upgrade the app and its services, remove advertisements, or enable certain new func- tions in the app (Tang 2016). In the mobile game industry, in-app-purchases can give the user virtual game currency such as gems or coins, unlock new characters or gear, reward the user with various advances over other players and enable totally new features in the game. F2P-games such as Heroes of Warland can be considered as freemium games that are initially given as free products to gather a high number of users to whom enticing content is then sold within the product. It is worthy to note that Heroes of Warland also bene- fits from in-app advertising revenue, and this kind of cross-modeling is com- mon in mobile games. The freemium business model was implemented in various software prior to mobile games. Chris Anderson, the former editor in chief of TechCrunch, has said that the freemium model inherently has different kinds of limitations, for example limited features, time, capacity, seats, and customer class (Kincaid 2009). In his 2009 speech at Y Combinator’s Startup School, Anderson stated that “– free users’ aren’t free loaders, and that it’s okay to let the minority (paid users) subsidize the majority. Because the free users will recommend to friends, it’s a great form of marketing. And for those paid users, many of them are very strong customers –“. The idea in freemium software is to give most of the product for free but charge the users for various advanced properties. 2.2.2 Mobile gaming statistics According to the 2019 “Mobile Gaming Report White Paper” by NPD, there are 210.9 million active mobile gamers in Canada and United States. Active gamers in this context are defined by the usage of mobile or tablet device for gaming in the past 30 days. It is estimated that 80% of North American popu- lation has regular access to smartphones and tablets and 60% of the popula- tion play mobile games. In 2019, mobile games saw a staggering 25% higher consumer spend, than all other forms of gaming combined (App Annie 2020, 13). Figure 5 shows a graph from App Annie’s “The State of Mobile 2020” re- port presenting mobile gaming consumer spend exceeding all other gaming platforms.
16 Figure 5. Global Consumer Spend in Games (App Annie, 2020) According to Sensor Tower’s data from iOS App Store and Google Play mo- bile game revenue in 2018 was $9.37 billion in Canada and United States. As of 2019, the year-over-year revenue has growth has been 17% in Canada and US mobile gaming market. In the examination of year-over-year revenue change from 2018 to 2019, the top three mobile game genres were puzzle, skill & chance, and shooter. Heroes of Warland falls under the shooter genre, so it can be considered as part of this revenue growth. In a 2018 study, the highest rates of platform popularity among Finnish game studios were acquired by Android with 75% and iOS with 71% (Neo Games 2019, 21). The data indicate how massively the market sector for mobile games has grown in recent years. Due to the low bar for starting mobile game development and high accessibility of the target audience, there is no reason to assume that the mobile game industry would shrink in the near future. 2.3 Battle passes Ever since video games became available for online purchase due to the high- speed Internet, their monetization became a continuously evolving process. Digital games became available in online stores where users could buy and download games conveniently from the comfort of their home. The rise of free- mium business models along with accessible digital games brought forth in- app-purchases or microtransactions. These can comprise any content in the
17 game, for example items, costumes, upgrades, and premium features that can be bought after the initial download (Vicente 2019). In-app-purchases quickly appeared in mobile games as well, especially in the F2P games market. In ad- dition, various subscription-based monetization models for games such as the battle pass, emerged. 2.3.1 Shifting F2P monetization Modern F2P mobile game monetization, while still relying mostly on micro- transactions, has shifted more from loot boxes to subscription-based models. One such model is the battle pass. Previously, one of the main monetization mechanics had been loot boxes, but they became controversial after a large study suggested a link between loot boxes and problem gambling (BBC 2018). Belgium even went so far that they ended up banning loot boxes com- pletely (BBC 2019). Since loot boxes have been taken under serious legal scrutiny, mobile game developers have had to find new ways to make money from their games. Figure 6. The Fortnite season 2 Battle Pass (Epic Games 2018) The basic idea behind the battle pass is that the player progresses by reach- ing certain milestones which reward them with various loot or currencies. Bat- tle passes have different seasons with changing themes and rewards that last a limited amount of time. Often, there is a free version and a premium version which includes more valuable rewards. In Figure 6 it can be seen that Fort-
18 nite’s battle pass season 2 had free and premium versions with different re- wards. Epic Games’ video game Fortnite was the pioneer of the battle pass, but the original concept was first introduced in Valve’s Dota 2. 2.3.2 Birth of the battle pass The first battle pass took form in Valve’s Dota 2 in 2013 and was called the “Compendium” (Van Allen 2017). Valve has since changed the name from Compendium to battle pass. Although Valve was the first company to utilize the idea, Epic Games took the battle pass to a whole new level in 2017 with their battle royal game Fortnite. Battle royal is a genre or game mode in video games that is characterized by one large map that shrinks over time, large pool of players and randomized gear. The goal of battle royal is to survive in the free-for-all deathmatch as long as possible (Fillari 2019). Epic Games cre- ated the battle pass in Fortnite’s season 2, combining time and progression for maximum addiction and capitalizing on a fear of missing out to capture their players attention (Kiiski 2018). So why did this new monetization model stick and spread across video games like a wildfire? On February 22nd, 2018, the third season of Fortnite’s battle pass sold 5 million units on the first day of its release. Epic Games generated 126 million US Dollars in revenue over the entire month. (Valentine 2018.) This was a revolutionary event in the video game industry and immediately grabbed the attention of game developers around the world. 2.3.3 Reasons behind success During 2019, the popularity of using battle passes in mobile games as moneti- zation mechanics experienced a significant growth. The share of 100 top- grossing iOS mobile games in US utilizing battle passes grew from a few per- cent to 21% by the end of the year. The use of battle passes spread from the battle royal genre to include other genres such as match 3, idle and racing games (Kiiski 2019). This is not a coincidence and raises the question about factors that make battle passes so popular. Rocket League’s director Scott Rudi’s statement in an interview given for Variety.com sheds some light on the question: “…I’m a big believer in the one-more-turn compulsion – this idea
19 that, well, I’m only one game away from getting my next tier, so let’s go again” (Wright 2018). Battle passes are hoped to increase player retention and give a long-term ob- jective to the player. One of the driving forces for buying battle passes that re- ward players with exclusive rewards seems to be the fear of missing out. As Kiiski (2018) puts it, a strong psychological driver, the feeling of missing out, has proven to be an effective retention mechanic and incentive to play in cer- tain types of video games. Cosmetic items typically become rare commodities in the game world as they are often available during one season exclusively. Even entire game modes can be locked behind the battle pass paywall, as in the case with Mario Kart Tour (Kiiski 2019). Diehard game fans would never risk missing out features like these. The battle pass can give a player an addictive sense of progression between core play sessions (Kiiski 2018). Free-to-play mobile games often heavily rely on in-app-purchases for their monetization. Polygon’s Clayton Ashley (2018) claims that the battle pass is seen as more consumer-friendly monetization option than loot boxes and ga- chas. It does not rely on randomized rewards given in return to spending money but rather communicates precisely what rewards the player can re- ceive upon purchase (Ashley 2018). This nuance is crucial in building trust and transparency between the consumer and the developer. In addition, battle passes have not faced legal action against them like the loot boxes and ga- chas have. Because of the transparency considering rewards, they cannot be likened to gambling. 3 DATABASES The object of development in this thesis, the third season of Heroes of War- land-battle pass, was built in MongoDB development database dedicated to the game. This chapter provides general information on databases and the tools that were used to implement the said development work. The chosen methods are introduced, and their benefits are examined.
20 3.1 Definition of a database A database can be simply defined as a collection of structured information that is organized and can be stored or accessed in a computer system. Databases are typically controlled with an interface between the database and its end us- ers, more commonly known as the database management system (DBMS). The data, DBMS and associated applications together form the database sys- tem, that is more commonly referred simply as database. There exists a vari- ety of database types such as hierarchical databases, network databases, ob- ject-oriented databases, relational databases, and NoSQL databases. (Oracle 2021.) 3.2 Short history The first databases emerged in the early 1960s as navigational databases re- lying on tree-like hierarchies and network databases allowing more flexible data relationships. These simple models were sufficient to manipulate and store data at the time, but they lacked true flexibility. In the 1980s, relational databases gained popularity for their efficiency and flexibility in accessing data. Object-oriented databases became widely used in the 1990s and intro- duced a way of clustering data in the form of objects. As the Internet evolved the need for faster processing speed of unstructured data resulted in the de- velopment of NoSQL databases. Finally, today the new ways of data collec- tion, management, storage, and utilization have resulted in developments such as cloud databases and self-driving databases. (Oracle 2021.) 3.3 Implementation tools Before the actual implementation of the development work within the frame- work of this thesis, the programming syntax, DBMS, and database had to be chosen. While the choices were quite straightforward due to the company standards of the commissioner, the following chapters will highlight the various benefits of using each tool for the implementation.
21 3.3.1 JSON JSON stands for JavaScript Object Notation and is used for storing and ex- changing data. It is a lightweight, text-only format that uses JavaScript syntax. JSON is self-describing, it is easy to understand, and it is often used, for ex- ample, when data is sent from a server to a web page (W3schools 2020). It can be written and read with ease, by both humans and computers. JSON is built on two structures: a collection of name and value pairs and an ordered list of values (Ecma International 2017). It works purely as a string with a specified data format and contains only properties. JSON requires double quotes around each property name (Mozilla 2020). Typical JSON syntax can be seen in Figure 7. Figure 7. Example of JSON syntax (Ekunola 2020) While sharing some familiar conventions with the C-family of programming languages, in the end JSON stands as a language-independent text format. Relevant concepts in JSON are arrays, objects, and values. Arrays are or- dered collections of values that begin and end with square brackets and are separated with commas. Objects, on the other hand, consist of unordered sets of name/value pairs, and begin and end with curly brackets. Every object name is followed by a colon and their name/value pairs are separated with commas. Lastly, values can be strings, numbers, Booleans, nulls, or even ob- jects or arrays (Ecma International 2017).
22 In game development, JSON is useful for storing and exchanging data with the game server. It can be used to store various types of data ranging from game states to player inventory. Online multiplayer games can have infor- mation stored in JSON that can be changed on the fly when testing and updat- ing the game. For example, a database could hold JSON vales for a certain weapon’s fire rate, damage and reload speed. Tweaking a fire rate’s number value from 0.9 to 1.1 would make the weapon fire more frequently. This exam- ple demonstrates the easy usability of JSON for game development. Before implementing the development work of this thesis study, a program- ming language and software had to be chosen. It was natural to use JSON as the backend implementation language because of the author’s prior experi- ence and the fact that Nitro Games uses it widely in their databases. JSON is also extremely compatible with MongoDB database that was used in the de- velopment. 3.3.2 Robo 3T Formerly known as Robomongo, Robo 3T is a native cross-platform MongoDB manager client (3T Software Labs 2020). It is a desktop graphical user inter- face (GUI) for MongoDB hosting deployments that allows the user to control data with visual rather than text-based interface (Simsek 2017). Since its launch, Robo 3T client has provided an open-source MongoDB tool for shell embedding. The client is free to download, regularly developed, open-source and community driven. Robo 3T exists in the top 0.008% of all GitHub reposi- tories and is the number 34 C++ repository in GitHub (3T Software Labs 2020). It is used by many widely known companies such as eBay, Adobe, Google, Sega, and EA.
23 Figure 8. Example MongoDB 3.4 cluster view on Robo 3T (Simsek 2017) The client is very handy for making queries in datasets and allows the user to edit, insert, and remove contents with ease. With reference to Heroes of War- land, live operations such as the battle pass could be configured in a handful of different documents in the game database. Figure 8 shows what typical Robo 3T interface looks like. It has three different view modes: tree mode, ta- ble mode and text mode. Collections can be browsed from the left-hand side directories, and queries can be made by typing into the dark text field at the top. Query results are displayed on a list in the center where files can be cre- ated, edited, and removed. In this thesis, Robo 3T was chosen as DBMS for the development work. JSON syntax communicates with Robo 3T very well. The staff of Nitro Games was very well versed in using JSON with Robo 3T, and, therefore, it was easy to acquire informed support for any task at hand. The author also had solid ex- perience of using Robo 3T with JSON prior to this development work. Robo 3T has a wide community-driven documentation online and is constantly up- dated. Therefore, any problems occurring with the client could be very likely resolved easily. 3.3.3 MongoDB According to MongoDB website (2021), MongoDB is “-- a general purpose, document-based, distributed database built for modern application developers
24 and for the cloud era”. This cross-platform open-source document store model was released in 2009 by MondoBD Inc (solid IT 2021). MongoDB is character- ized with high scalability and flexibility and aims to meet the querying and in- dexing need of database developers. It is described as simple document model to learn and use and has available versions for both cloud and server environments. (MongoDB, Inc. 2021.) In MongoDB, data records are stored as binary representations of JSON doc- uments (BSON). In the database, the documents exist in collections, of which there must be at least one (MongoDB, Inc. 2021). The document structure consists of field-and-value pairs, where the field can be any BSON data type. These data types can be for example an ObjectId, embedded document, date or NumberLong (MongoDB, Inc. 2021). In this thesis study, the used data types were mostly strings, integers, dates, and Booleans. Figure 9 shows a typical example of MongoDB document structure. Figure 9. The document structure in MongoDB (MongoDB, Inc. 2021) In MongoDB, data can be modeled in a few different ways by using JSON. The embedded data model is commonly used when there are one-to-many re- lationships between entities and relationships that contain other entities. The benefit of using this data model is data update with single write operations and better performance in read operations. This data model can reduce the num- ber of queries and updates for common application operations. (MongoDB, Inc. 2021.) The embedded data model was used in many cases in Heroes of Warland database, which resulted in better readability, less document frag- mentation and more pragmatic database architecture. Figure 10 represent an example use-case of the embedded data model.
25 Figure 10. Example of embedded data model in MongoDB (MongoDB, Inc. 2021) The example in Figure 10 shows how certain information has been embedded within “contact” and “access” objects. This model makes the document easy to understand without a need for multiple references across different directories. On the other hand, Figure 11 represents an example use-case for database relationships using references between different documents. This is known as normalized data model in MongoDB. The documents are in JSON syntax and contain many-to-many relations visualized with arrows. This normalized Mon- goDB data model is pivotal for game databases where complex relationships are required between multiple documents. The same model was also used in the actual database of Heroes of Warland in addition to the embedded data model. Figure 11. Example of normalized data model in MongoDB (MongoDB, Inc. 2021)
26 Like all databases, MongoDB has various advantages and disadvantages in terms of suitability for an online game database. Why would this document-ori- ented NoSQL database be a strong candidate for Heroes of Warland? Mon- goDB is distributed and geographically highly scalable. It uses shards for hori- zontal scalability, which helps in increasing storage capacity (MongoDB, Inc. 2021). These are significant advantages when the player base is predicted to grow in multiple locations across the globe. Therefore, MongoDB improves the performance of the online game worldwide. In addition, MongoDB is simple to learn, use, and teach to others. It has great online documentation and is being developed constantly. These characteris- tics are ideal in the fast-moving game industry. The downsides of MongoDB are issues with transactions, document joins, indexing and duplicate data. Luckily, these issues are being worked on by developers and communities. MongoDB uses binary serialized JSON for document storage and is a great fit for modern JavaScript frameworks. It uses JSON implementation to offer addi- tional datatypes such as arrays and provides data validation based on JSON schema standard. These features make JSON an excellent choice to be used in the database programming together with MongoDB. 4 DEVELOPMENT WORK This chapter explains in detail how the development work in this thesis study was executed. First, it had to be investigated how the battle pass seasons worked in the game database by examining the mechanics of previous battle pass seasons. There were two previous seasons of the battle pass to exam- ine, seasons 1 and 2. The documentation of the previous seasons revealed valuable information about the way the new season should be configured. With the new season, new assets had to be created by the company staff. Ni- tro Games’ artists created new art for the battle pass season 3, as can be seen in Figure 12.
27 Figure 12. Game art for the new battle pass season (Nitro Games 2020) 4.1 Preparation Nitro Games’ Senior Product Manager Kenny Chan began creating the design for the new season. His objective was to plan and document the new battle pass rewards so they could be implemented into the game’s development ver- sion. There were two tiers of the battle pass with different rewards: free and premium. Chan linked the design sheet with progression stats and correlated rewards to be coded into JSON. The values had to be put into Heroes of War- land development database from the game design sheets. Eventually, the JSON functionality would be tested in-game. The database research consisted of examining different directories in the de- velopment database, opening related documents, and listing necessary data- base relations. Game programmers Jani Ahde and Eetu Arvilommi instructed in the process since they had knowledge from the previous battle pass sea- sons. A diagram was created for necessary database relations to understand
28 the overall structure needed for the complete implementation. The complex re- lationships between name-value pairs, when used as normalized data model using references, were visualized in the form of a diagram seen in Figure 13. Figure 13. Database relations visualized (dbdiagram.io 2020) In the diagram, the headers represent different documents, and their name- value pairs are listed below them. The documents had specific key references to one another, not all of which are displayed here. The data types used in these documents were mostly ObjectIds, strings, integers, dates, and Boole- ans. Visualizing the key references helped to comprehend the battle pass sea- son as a complete system, instead of many different fragmented parts in vari- ous directories. 4.2 Design Seven days were used for the design of the battle pass. Code designs were written in a text editor and compared to the pre-existing codes in the game da- tabase. Comments were inserted into the code designs for a better under- standing of different name-value pairs. Designs were stored in text format to be used later in Robo 3T in the actual implementation. A single code design with personal comments can be seen in Figure 14. This particular document used both the normative and embedded data models. Most of the name-value pairs used references, but the “settings” is an object with an embedded name- value pair in it.
29 Figure 14. JSON code for the new battle pass season In the actual programming phase, comments were not supported. In order to prevent fatal errors in the functioning of the database, Robo 3T does not sup- port any comments, and only clean code can be saved into the database doc- uments. Although Robo 3T prevented the saving of basic syntax errors in the codes, one had to be careful so as not to cause any conflicts with faulty code in the database. This fact highlighted the importance of design before execu- tion. The design process allowed commenting for every part of the code, which made it easier to show dependencies between documents and the need for each name-value pair and object. 4.3 Programming The programming was done in JSON, in the Robo 3T software. The pre-made code designs were ported as new documents in the MongoDB development database. As was mentioned earlier, all comments had to be removed from the codes before the software allowed them to be saved. The study of the al- ready existing directories allowed for an agile development of the third battle pass season. The reward document seen in Figure 15 combined the embed- ded and normalized data models, using references together with an embed- ded “content” object. Figure 15. Code for a premium battle pass reward All the free and premium rewards were implemented in the development data- base, as seen in Figure 15. Every reward item was programmed as a different
30 document and included a reference to the correct battle pass season id. For the rewards to function properly, their correct types had to be acquired from the database item directory. The reward types are not capable of tolerating a single spelling error. Figure 16. Item file configuration for the battle pass product As seen in Figure 16, a new item file for the season was configured. The aim was to include name-value pairs for features such as season name, duration, and key art path. A premium battle pass was configured as a product to be purchased inside the game. Finally, localizations for the battle pass rewards were added to a localization sheet online, as seen in Figure 17. Figure 17. Updating the development localization sheet Testing was executed throughout the programming process. Iterative pro- gramming and a routine of verifying the results in-game created an effective workflow. The purpose of performing programming and testing simultaneously was the desire to obtain visual feedback on the programming and a deeper understanding of the technology behind the game. 4.4 Testing Enormous emphasis was put on testing throughout the thesis study. It was crucial to test the product continually whenever a change was made to confirm
31 the quality of the code. A usual test case involved inserting or editing a docu- ment in the database, launching the development version of the game, and completing the necessary steps to observe the results in-game. Figure 18. Premium battle pass purchase dialog in the development environment Various placeholders were often used in the development environment, as presented in Figure 18. It can be seen from the picture that the key art, offer duration and purchase price are not final. This highlights that functionality test- ing does not require any final values in-game. The live environment of the game was intended to display a price in real currency in the green purchase button. The aspects that underwent testing were the user interface, player’s progres- sion, and rewards. The user interface was the easiest area to test since the results were visible almost immediately after the changes were made in the database. The user interface consisted of the battle pass view, battle pass purchase dialog and reward view. The testing of the reward view with unfin- ished type localization can be seen in Figure 19.
32 Figure 19. Reward view in the development game version Once the localizations had been updated, the type names would become fixed. The battle pass view during testing can be seen in Figure 20. The most complicated area to test was player’s progression since it required either a great amount of time to play the game or changing the configuration from the database and reloading the game. Figure 20. Battle pass view in the development game version The testing of the player’s progression and rewards was interdependent since rewards were received through battle points which, in turn, were received from scoring in actual matches. Testing both areas required playing the develop- ment version of the game. When necessary, it was possible to alter player’s progression from the database to test higher tiers more quickly. Although da- tabase changes were much quicker to make, progress made by playing was always a more reliable way to test the battle pass.
33 5 CONCLUSIONS Since battle passes have proven to be effective monetization models for F2P mobile games, it was a natural step for Heroes of Warland to adopt this ap- proach. Instead of separate short-term goals of scoring in matches, it gave the players a long-term goal to pursue. This long-term goal serves as a psycho- logical driver for players increasing retention and the number of matches played. The result of the game development process conducted in this thesis study in cooperation with other Nitro Games staff was a new battle pass product for Heroes of Warland. The battle pass was released in May 2020, together with the 1.8.0 game update. The product consisted of free and premium versions of season 3 and generated additional revenue for Nitro Games through the game’s in-app-purchases. Furthermore, new in-game content was presented for the players of Heroes of Warland. The final image of the battle pass in- game can be seen in Figure 21. Figure 21. Battle pass view in the live game version (Nitro Games 2020) Challenges in this thesis study were mainly due to unclear communication with the development team, the amount of testing required for the battle pass and purchasing issues with some players. Although the battle pass backend implementation was relatively easy to do, it was difficult to investigate various frontend problems because of limited access or competence. These problems emerged from technical aspects that were unknown to the author and required assistance from colleagues.
34 There were times where some tasks could have been done as part of this the- sis study, but were instead done by another party, without clear communica- tion between staff members. The company’s channels of communications could have been utilized in a more transparent manner to make everyone’s role in the work clear. No game can ever be tested completely, and in this study some parts of the testing had to be omitted due to other work responsi- bilities. The testing of the battle pass could have been externalized or per- formed more systematically. Some players contacted the support team about not receiving the premium pass upon purchase and had to be helped individu- ally through the live database. These issues were not directly tied to the new implementation but, nonetheless, resulted in some additional work. The framework of the thesis helped to clarify the history and monetization models of mobile games for other game programming students. In general terms, the process of game development is likely to improve one’s program- ming skills and knowledge of databases. In addition, implementation proce- dures help to understand how the development projects for new products are organized in the mobile game industry. In the future, the experience gained from this thesis study can be beneficial for anyone working with game databases and any possible live operations. The theoretical framework of the thesis might be useful in general when designing and implementing new battle passes. Also, the theoretical study on battle passes may benefit game programming students in their future projects.
35 REFERENCES 3T Software Labs. 2020. Robo3T. WWW-document. Available: https://ro- bomongo.org/ [accessed 26 December 2020]. App Annie. 2020. The State of Mobile 2020. PDF-document. Available: https://www.appannie.com/en/go/state-of-mobile-2020/ [accessed 2 April 2021]. Ashley, C. 2018. What Fortnite’s Battle Pass gets right. WWW-document. Available: https://www.polygon.com/fortnite/2018/5/21/17376178/fortnite-sea- son-4-battle-pass-skins-loot-boxes [accessed 26 December 2020]. BBC. 2018. Loot boxes 'link to problem gambling'. WWW-document. Availa- ble: https://www.bbc.com/news/av/uk-england-46295317 [accessed 5 January 2020]. BBC. 2019. Gaming loot boxes: What happened when Belgium banned them?. WWW-document. Available: https://www.bbc.com/news/newsbeat- 49674333 [accessed 5 January 2020]. Bonnington, C. 2013. 5 Years On, the App Store Has Forever Changed the Face of Software. WWW-document. Available https://www.wired.com/2013/07/five-years-of-the-app-store/ [accessed 27 May 2021]. Byford, S. 2017. EA reverses course on Star Wars Battlefront II loot box con- troversy. WWW-document. Available: https://www.thev- erge.com/2017/11/16/16668234/battlefront-2-loot-boxes-crystal-microtransac- tions-removed-ea [accessed 27 May 2021]. Ecma International. 2017. The JSON Data Interchange Syntax. PDF-docu- ment. Available: https://www.ecma-international.org/publications/files/ECMA- ST/ECMA-404.pdf [accessed 8 January 2021]. Fandom. 2021. Angry Birds. WWW-document. Available: https://an- grybirds.fandom.com/wiki/Angry_Birds_(series) [accessed 27 May 2021]. Fillari, A. 2019. Battle Royale Games Explained: Fortnite, PUBG, And What Could Be The Next Big Hit. WWW-document. Available: https://www.gamespot.com/articles/battle-royale-games-explained-fortnite- pubg-and-wh/1100-6459225/ [accessed 15 February 2021]. Himanshu. 2015. The rise, dominance, and epic fall - a brief look at Nokia's history. WWW-document. Available: https://www.gsma- rena.com/the_rise_dominance_and_epic_fall__a_brief_look_at_nokias_his- tory-blog-13460.php [accessed 27 May 2021]. Kiiski, E. 2018. What’s the big deal with Battle Pass?. WWW-document. Avail- able: https://www.gamerefinery.com/whats-the-big-deal-with-battle-pass/ [ac- cessed 28 May 2021].
36 Kiiski, E. 2019. Battle Pass is a hot trend in mobile games – like it or not. WWW-document. Available: https://www.gamerefinery.com/battle-pass-trend- mobile-games/ [accessed 28 May 2021]. Kincaid, J. 2009. Startup School: Wired Editor Chris Anderson On Freemium Business Models. WWW-document. Available: https://techcrunch.com/2009/10/24/startup-school-wired-editor-chris-ander- son-on-freemium-business-models/ [accessed 17 February 2021]. Koueider, A. 2013. SuperCell's Clash of Clans finally hits the Google Play Store. WWW-document. Available: https://www.androidauthority.com/clash-of- clans-hits-the-play-store-281354/ [accessed 27.5.2021]. Marks, T. 2017. Assassin's Creed Origins Microtransactions: Everything You Need To Know. WWW-document. Available: https://www.ign.com/arti- cles/2017/10/28/assassins-creed-origins-microtransactions-everything-you- need-to-know [accessed 27 May 2021]. MongoDB, Inc. 2021. The database for modern applications. WWW-docu- ment. Available: https://www.mongodb.com/ [accessed 15 February 2021]. MongoDB, Inc. 2021. What Is MongoDB?. WWW-document. Available: https://www.mongodb.com/what-is-mongodb [accessed 17 February 2021]. MongoDB, Inc. 2021. Documents. WWW-document. Available: https://docs.mongodb.com/manual/core/document/ [accessed 25 March 2021]. MongoDB, Inc. 2021. Databases and Collections. WWW-document. Available: https://docs.mongodb.com/manual/core/databases-and-collections/ [accessed 25 March 2021]. MongoDB, Inc. 2021. Data Model Design. WWW-document. Available: https://docs.mongodb.com/manual/core/data-model-design/ [accessed 25 March 2021]. Mozilla and individual contributors. 2020. Working with JSON. WWW-docu- ment. Available: https://developer.mozilla.org/en-US/docs/Learn/JavaS- cript/Objects/JSON [accessed 11 July 2020]. Nasdaq. 2017. Nasdaq Stockholm Welcomes Nitro Games to First North. WWW-document. Available: https://www.nasdaq.com/about/press-cen- ter/nasdaq-stockholm-welcomes-nitro-games-first-north [accessed 11 Febru- ary 2021]. Neo Games Finland ry. 2019. The game industry of Finland Report 2018. PDF-document. Available: https://neogames.fi/wp-content/up- loads/2020/07/FGIR-2018-Report.pdf [accessed 2 April 2021]. Nitro Games. 2018. Heroes of Warland – Mobile shooter!. WWW-document. Available: https://www.heroesofwarland.com [accessed 19 May 2021].
You can also read