コンテンツに移動
Google Cloud for Games

株式会社 SNK:全世界にファンを持つ THE KING OF FIGHTERS (KOF)の完全新作「KOFクロニクル」を GKE で構築

2019年11月18日
https://storage.googleapis.com/gweb-cloudblog-publish/images/Hero-image-SNK.max-2600x2600.png
Google Cloud Japan Gaming Team

日本のみならず、世界中にファンを持つ『THE KING OF FIGHTERS (KOF)』や『サムライスピリッツ』といった人気ゲームを展開する株式会社SNK(以下、SNK)。人気格闘ゲーム『THE KING OF FIGHTERS(KOF)』シリーズを原作とした完全新作のスマートフォン向けゲームアプリ『KOFクロニクル』をリリースしました。『KOFクロニクル』のエンジニア 、ゲーム開発本部の中村 裕也氏と泊 久信氏に、GKE を活用した開発について伺いました。

利用している Google Cloud Platform サービス

Google Kubernetes EngineGoogle Cloud Load BalancingContainer RegistryStackdriver LoggingBigQueryCloud SQLCloud StorageCloud Memorystore

https://storage.googleapis.com/gweb-cloudblog-publish/images/kofc_googleplay_190408.max-1100x1100.jpg

モダンなインフラへのチャレンジとして GKE を採用

SNK では、歴代の KOF ファイターたちが登場するタワーディフェンス RPG である『KOFクロニクル』をリリースしました。これまでに語られることのなかった完全新規のオリジナルストーリーが展開する「クロニクルモード」や、高い人気を誇る歴代 KOF シリーズの原作ストーリーがリメイク収録されている「ストーリーモード」など、格闘ゲームの枠を超えた壮大な物語を楽しむことができます。

最大の特徴は、2D ドットで綿密に描かれた KOF ファイターのグラフィック。おなじみの必殺技や決めポーズも忠実に再現されており、そのクオリティはファンならずとも必見です。

https://storage.googleapis.com/gweb-cloudblog-publish/images/06.max-1300x1300.jpg

アーキテクチャとして、 VM である Google Compute Engine と、コンテナベースの Google Kubernetes Engine を検討。

「私たちは、従来のゲームについてもクラウドで運用を行っていました。Chef を用いて管理し、VM を並べる形での運用は、数々の工夫が注ぎ込まれたもので、再現性も高く安定していましたが、同時に、私たちインフラ エンジニアは新しいものも冒険も好き、新たな技術をチャレンジしたいという思いを持っていました。」(ゲーム開発本部 泊 久信さん)

「そんな中、新しいタイトルの開発を行うことになり、機能面や先進性から Kubernetes の導入にチャレンジすることを決めました。Kubernetes が利用可能なクラウド ベンダーは検討時点でも複数ありましたが、運用実績やネットワーク面での親和性等を慎重に検討し、コンテナ運用の実績が長いこと、HTTP ロードバランサとの親和性が高いことを評価して、Google Kubernetes Engine(GKE)を利用することになりました。(泊さん)

GKE は、Kubernetes クラスタを効率的かつ安全に実行するためのマネージド サービスです。GCP の様々なプロダクト、機能、サービスとシームレスに連携して利用することができます。特に、ロギングやモニタリングの統合により、アプリケーションのログを自動的に取得できたり、動作環境を簡単に把握することができます。

また、Cloud SQL、Cloud Memorystoreといったマネージド サービスを利用することで、インフラ管理の工数が削減され、エンジニアはよりゲーム開発に注力することができます。

『KOFクロニクル』では、中村さん、泊さんの 2 名で、約 3 ヵ月で開発を進めました。

「はじめての Kubernetes で新しく学ぶことが多い中、まずやってみるの姿勢で部品単位での開発を進めていきました。今でこそ構成の全体像が見えるようになりましたが、開発当時はひとつの設定変更のために大きく手戻りするようなこともあり苦労しました。技術面での課題に直面した際は、充実したドキュメントを読み込んだり、Google Cloud のサポートの方に協力していただく事でひとつずつ解決していきました。あわせて、Cloud SQL や Cloud Memorystore、 Cloud Build や Cloud Functions 等のマネージド サービスを積極的に活用することで、少ない人数で運用をまかなえています。」(泊さん)

https://storage.googleapis.com/gweb-cloudblog-publish/images/architecture_8Od1dme.max-1000x1000.png

『KOFクロニクル』は開発環境から、クローズドベータ・オープンベータを経て、2019 年 10 月にグランド オープンしました。「本稼働直後は、本番のトラフィックに対してうまくスケールしないというトラブルもありましたが、ノードやポッドを調整することで解決し、その後は安定した動作になっています。」(中村さん)

今後は GCP の機械学習 や Cloud Spanner の活用にも期待

また、Stackdriver と BigQuery の導入は、ログ収集とその後の分析に大きな効果を発揮しているといいます。「ログ収集において、Stackdriver と BigQuery を活用することで、分析にかかる時間と手間を大幅に短縮することができました。せっかく BigQuery までデータが入っているので、今後は機械学習のサービスを用いることで、従来は経験と勘の組み合わせが幅を利かせていたゲームの運用を、定量的に支援できるような仕組みを構築していきたいと思っています。」(中村さん)

 さらに、将来的には、Cloud Spanner の活用も視野に入れたいと語ります。Cloud Spannerは、グローバルに分散され、スケーラビリティと強整合性を備えたフルマネージドなリレーショナル データベースです。デフォルトで 3 ゾーンでデータがレプリケーションされる仕組みとなっており、高可用性、計画ダウンタイムの排除といった特徴を持っています。特に、インスタンスを追加することでパフォーマンスを増減させることが可能であるため、書き込みの多いゲームインフラにおいてよく実施されるシャーディングが一切不要で、必要なタイミングで、必要なパフォーマンスを得ることができます。

「長期的には、現在 Cloud SQL を用いているデータについて、メンテナンスによる計画停止がなくグローバルに分散された Cloud Spanner を利用することで、可用性や柔軟性を改善し、世界中のプレーヤーへ高品質なゲームを届けられる基盤づくりに励みたいと考えています。また、新しい技術は品質を高めるための必要な要素と信じて今後も積極的にチャレンジしていきます。」(泊さん)


https://storage.googleapis.com/gweb-cloudblog-publish/images/snk_logo.max-1100x1100.png

株式会社SNK

2001 年 8 月設立。代表取締役社長は外山 公一氏。『THE KING OF FIGHTERS (KOF)』や『サムライスピリッツ』など自社開発のコンテンツをコンシューマ・スマートフォン共に日本だけでなく、アジア・北米・ヨーロッパなど全世界のファンにゲームを提供。また、スマートフォン アプリでは『METAL SLUG ATTACK』が全世界でダウンロード数 1,100 万を超える人気タイトルとなった。グッズ販売やアニメーション配信などゲーム以外にもコンテンツを展開。


その他の導入事例はこちらをご覧ください。
投稿先