imog

主にUnityとかの事を書いています

モノビットエンジンを触ってみた

Unite2015の時に、モノビットエンジンというネットワークSDKがもうすぐ公開されるという情報が入って二ヶ月ほど、 ついにリリースされた www.monobitengine.com

城とドラゴンとか結構なソシャゲのバックエンドとして使われていて実績は良いらしい。

UnityでサーバサイドのネットワークSDKといえばPhotonが非常に有名だけど、 PhotonサーバのSDKwindowsサーバでしか動かないので個人的には使えなかった。 試しに AWSWindowsサーバ立ち上げてみたけど、あまりの遅さとマネージャーなんたらの面倒さに 2時間くらいでTerminateしてしまった。

一方モノビットエンジンはlinuxサーバで動作するとのことなので使ってみようという気になった。

とりあえず公式ドキュメントを元に触ってみた MONOBIT Engine official document

環境

マニュアル通りに進めて行ったら、ほとんど詰まることなくできたから特別書くこともなかった。

ただ、マニュアルだとVMwareを使っており、WinSCPを使ってファイルを転送したりifconfig叩いてIP確認などの工程があるけど vagrantで作ったらフォルダをマウントしてくれるから転送しなくていいし、 Vagrantfileに config.vm.network "private_network", ip: "127.0.0.1" とかで任意のIP振ってくれるから素直にvagrant使うと良さそう。

とりあえずエコーサーバの出来上がり(echo_sample) gyazo.com

サーバのセットアップはシェルスクリプトで、サーバはC++で書かれている。 C++全然読んだことないからここで苦戦している・・。

MainExecute.cpp が受け口になっているっぽく、ここに { id, message } の形式で送信し、idでイベント内容を 判別してそこにメッセージを流すっぽい。 ちなみにログは echo_sample.log に書き込まれていく。

正直読むの辛いんだけど、多分C++では簡単な部類なんだろうなー・・。 まだまだ入門部分なんでここからが本気っぽい。

C++詳しい人とかと一緒に読みたい