SNK CORPORATION

SNK’s popular game series converted to PC! Azure PlayFab improves play- ers’ game experience Customer SNK CORPORATION Based in City, , SNK Corporation is a game manufacturer that owns the intellectual property rights of many popular titles, including fighting games. SNK Customer Website develops these games for a variety of platforms and conducts its licensing business. https://www.snk-corp.co.jp/us/

In June 2019, the latest series of Samurai Shodown, known in Japan as Samurai Global Site English-US Spirits̶one of SNK’s most popular games̶was released for both PS4 and One, and then for multiple platforms such as arcades, Google Stadia, and Industry Switch. SNK decided to convert the game to Windows so that more users could Game software development enjoy it, and the game was developed in a short period of three months, which led to the start of sales at Epic Games Store in June 2020. Microsoft Azure PlayFab was Products used as the back-end platform for this PC version of Samurai Shodown. For SNK, Azure Azure PlayFab the introduction of the PlayFab platform not only provided strong support for cre- Azure Blob Storage ating an entertaining environment for players, but it also greatly contributed to shortening development time. Organization Size Medium-sized (No. of employees: 161 * As of Aug. 2019) Azure PlayFab: Introducing a leaderboard Country Japan (score ranking) feature for PC

Published in October 2020 In converting Samurai Shodown for Windows for PS4, , and , SNK select- ed Microsoft Azure PlayFab̶a back-end platform that can creates an environment for multiplayer SNK CORPORATION

game play over a communication network. PlayFab supports multiple Azure Blob Storage and PlayFab functions to solve issues of game developers, including establishing a multiplayer-game environment and analyzing game data, which can im- CloudScript: Enabling highly secure prove players’ game experience. use of game data

Takeaki Yamamoto, a programmer at SNK who was in charge of pro- The leaderboard feature of the PC version of Samurai Shodown was im- gramming around the network for the consumer version of Samurai plemented using PlayFab functions while other functions supported by Shodown, and used PlayFab for the PC version, talks about the purpose PlayFab were also used in this conversion. One of those functions is Mi- and background of introducing PlayFab. crosoft Azure Blob Storage, a cloud-based object storage service used for linkage, as illustrated in the following figure.

“While looking for a back-end platform with a leaderboard (score rank- ing) feature, we found that PlayFab, which had been verified in another System overview diagram project, was already ready in the stage where plug-ins can be used,” ex- Game Program plains Yamamoto. “[We] determined that it was well worth introducing Azure PlayFab

PlayFab from the perspective of cost-effectiveness.” Scoreboard Online ranking

SNK’s development team members became interested in PlayFab when Upload they participated in an Xbox event. “We asked the Microsoft product Download team a question on what we need to do to do cross-play on Xbox, and Azure Blob Storage learned about a service called Azure PlayFab,” says Hisaya Nakata. Na- Data shared kata is a programmer at SNK who was the main developer of the PC with other users version of Samurai Shodown.

Figure 1. System overview diagram for leaderboard feature, Samurai Shodown In late 2019, a variety of services were tested to confirm the availability of the cross-play feature̶, including PlayFab. During the test process, the superiority of PlayFab was confirmed, which has a number of fea- According to Yamamoto, “In Samurai Shodown, players can create their tures and is compatible with different development tools. According to clone called ‘Ghost’ with their win-loss record analyzed/learned, and can Kohtaro Morimoto, a programmer at SNK who was responsible for re- upload this ghost data to Blob Storage to share it with other players. search, PlayFab is equipped with a wide variety of add-ins available to Direct write to/read from the PC may allow data to be analyzed by users; other game development tools and services, which contributed to the therefore the PlayFab CloudScript function is used to write/read data on reasons to using it for this project. a server, but not on a PC.”

“For this project, PlayFab was selected because of its multiple add-ons available that will enable easy introduction of other services in the fu- ture,” notes Morimoto. SNK CORPORATION

Create AuthKey upon login to Azure PlayFab Creating an environment for

PlayerID obtained matches, regardless of platform, using CloudScript PlayFab Cloud provides users with added value Game Script Azure Program Auth Key Auth Key Functions The PC version of Samurai Shodown, which achieved short-term de- velopment by solving network match game-related issues by means of Uploading data to Azure Blob PlayFab, has continued to offer an amazing game experience to many

PlayerID players. According to Tsuji, PlayFab has been used more effectively even Auth Key PlayerID Data Data after the PC version was released. Azure Game Azure Blob Program Functions Storage “After the release in June 2020, we have received a wide variety of opin- *Azure Functions are used to check the validity of PlayerID and data size ions including failure information,” explains Tsuji. “We have continued

Downloading data from Azure Blob to reflect them in the update and make improvements so that players can enjoy our game. In addition, PlayFab has various analysis functions

PlayerID PlayerID that send us analysis data on a daily basis. Typically, we have to measure PlayFab Cloud and confirm various necessary values on our own, but the functions take Script Azure Game care of them to some extent on our behalf, which is extremely helpful.” Program Download URL Download URL Functions

Due to the success of this project, SNK feels confident about the intro- Download URL duction of PlayFab. According to Tsuji, the introduction of PlayFab will Azure Game Blob be studied for potential future projects in which PlayFab can be used Program Data Storage effectively. In complying with the requirements of these projects, Tsuji will select the best tool and service for each project respectively.

Figure 2. Uploading and downloading data from Azure Blob Storage

In response to the question about “PlayFab functions that the develop- Besides this process, the win-loss record for online multiplayer matches ment members want to use if the occasion arises,” Nakata answers, “I is stored in PlayFab, not saved by users on their own. “Allowing users to have an interest in the “PlayFab Party“ feature to provide voice chat and have the win-loss record may lead to data rewriting,” says Yamamoto. peer to peer (P2P) services” Morimoto adds, “While in the verification He also says that this data analysis/rewriting issue is specific to the PC process for cross-play, I wanted to create a game using the match-mak- version, which rarely occurs on console versions. With the use of PlayFab ing feature.” functions, these issues with conversion to the PC version were solved, leading to speedy development. According to Tsuji, the team wants to provide a service with improved cross-play experiences in which anyone can freely participate in multi- Masanori Tsuji, a lead programmer and R&D lead programmer at SNK, player games regardless of platform. “We could use only a small fraction who was involved in this project for management, has now realized that of the PlayFab functions in this conversion project, and haven’t been introducing PlayFab played a major role in this conversion project. “Ac- able to use all services yet. We want to take a little bit more time to ver- tually, there is almost no other back-end platform with as many excellent ify the functions, and find future applications that can provide a higher features as PlayFab, including those for the consumer version develop- value-added service to users and increase development efficiency,” says ment,” explains Tsuji. Tsuji. He expects PlayFab to encourage successful development of a flex- ible environment for playing games. Yamamoto also talks about the user-friendliness of PlayFab, saying, “I felt uneasy about web-based programming because of my [lack of] experi- Microsoft has provided enhanced support in Japan, including translat- ence; after actually using it, however, a smooth operation was ensured.” ing documents into Japanese, publishing case studies, and running a Some questions could be resolved by translating and checking the En- customer support blog and community support, which promotes the glish version forum, which reveals that effective use has been made of creation of an environment that ensures comfortable use of PlayFab. PlayFab without relying on support. SNK CORPORATION

The knowledge SNK has gained using PlayFab obtained in this project “I felt uneasy about web-based is proving to be valuable for Japanese game manufacturers, who look programming because of my to SNK’s future developments and application of Microsoft solutions, [lack of] experience; after actu- including PlayFab. ally using it, however, a smooth operation was ensured.”

̶Takeaki Yamamoto Programmer SNK Corporation

“We could use only a small frac- tion of the PlayFab functions in this conversion project, and hav- en’t been able to use all services yet. We want to take a little bit more time to verify the functions, The Programmer team at SNK Corporation and find future applications that can provide a higher value-add- “While looking for a back-end ed service to users and increase platform with a leaderboard development efficiency.” (score ranking) feature, we found ̶Masanori Tsuji that PlayFab, which had been Lead Programmer and R&D Lead Programmer SNK Corporation verified in another project, was already ready in the stage where plug-ins can be used. [We] deter- mined that it was well worth in- troducing PlayFab from the per- spective of cost-effectiveness.”

̶Takeaki Yamamoto Programmer SNK Corporation

For more information about the customer stories This customer story can also be found online at the following address: https://customers.microsoft.com/en-us/ Note that the information presented in this customer story was compiled in September 2020 and may be changed before you view it. The information provided herein is for informational purposes only. Microsoft makes no warranties, express or implied, as to the information in this document. Please refer to the following for more information about the products: ■ Website: https://www.microsoft.com/ja-jp/ ■ Microsoft Customer Information Center: 0120-41-6755 (9:00 a.m. to 5:30 p.m. except weekends, holidays and company-designated holidays). *Please make sure to dial the correct number. *Other company names, product names, logos, and so forth listed here are the trademarks or registered trademarks of their respective companies. *Please note that the specifications of the products are subject to change without prior notice. Microsoft Japan Shinagawa Grand Central Tower, 2-16-3 Konan, Minato-ku, Tokyo 108-0075, Japan

MN