FreelyApps

個人によるアプリ開発の日記です。アプリの収入だけで生活できるようになるのが目標です。UnityでAndroid向けのゲームアプリを作成しています。


    アプリ『トランプ・7並べ』を公開しました。
    Android/iOS https://goo.gl/zsFces

    2016年11月

      このエントリーをはてなブックマークに追加 Clip to Evernote
    11/21にiOS版の「ゆにてく」をリリースしました。
    ゲームの内容としては赤い宝石を集めてゴールに行くというものです。一筆書きのゲームに近いと思います。
    0605


    本来は9月の末にはリリースしていた予定だったため、予約などしていただいた方にはお待たせして申し訳なく思っています。原因としてはリジェクトを受けていてその解決がうまくいかなかったためです。

    ユニティちゃん
    というキャラクターがいまして、ユニティ・テクノロジーズ・ジャパンより二次創作が許されたキャラクターです。このユニティちゃんがゲームのプレイヤーなので、スクリーンショットやアイコンに載せていました。それをAppleから公式のものと誤解されるためダメというリジェクトを受けました。何回かやり取りをしたところ「ユニティちゃんを載せたらダメ」というのが向こう側の結論でした。(海外から電話がかかってきて驚きました。日本語だったので会話できましたが。)

    「いやいや、これはちゃんとユニティちゃんライセンスに従っていて、権利的に問題ないから認めてくれ」という内容で返事をしたのですが、ライセンスの提出を求められました。これには「ユニティちゃんライセンス 2.0 ドキュメントアーカイブ」を送ったところ、ライセンスには納得してくれたようでした……
    とはいえ、それで簡単に通すとはいかなかったのです。

    「個別の契約書ある?」と……
    ユニティちゃん自体が広く使ってという趣旨なわけで当然個別の許諾などないわけですが、それを要求されたので、もうどうしようもないということになりました。ユニティ・テクノロジーズ・ジャパンの方にどうすればいいでしょうと尋ねたところ、個別の許可の文書を作る仕組みを用意するというような返事をいただきました。(10月の初旬ですね。)
    私以外にもユニティちゃんのゲームを作っている人はいて、その人たちも同じような問題に遭う可能性があります。その対応をいちいちやっていたらきりがないはずで、そのための仕組みを用意するということになったのでしょう。話が大きくなってしまって何というか大変だと思いました。

    この仕組みを作るのは非常に時間がかかるのだと思います。他のAndroid版のアプリの移植もあったので、それを先にやって待っていました。先日それを終えたのですが、それでも対応中のようでした。ずっと「ゆにてく」を出さないで放置している(待つのも重要なことですが、傍目にはわからないでしょう。)のもまずいですから、個別の契約書をもらってAppleに送ることはあきらめました。

    結局のところApple側から指摘された通りに修正したのですが、この修正方法がなかなか厳しいものでした。とりあえずユニティちゃんが載っているところをなくし、スクリーンショットはタイトル画面だけにしてみました。
    これはアプリの内容がわからないという内容のリジェクトを受けました。仕方がないので遊んでいる場面のスクリーンショットを撮り、プレイヤーを消すという編集をして提出したところ通りました。(プレイヤーいないのって良いの? という疑問はあります。)
    move

    アイコンも内容がわからないですね……
    appstore-uniteku

    ゆにてくはリジェクトが多かったです。10回は提出してリジェクトされるを繰り返しました。iOSはリジェクトされるということを聞いてはいたのですが、実際に受けてみると非常に疲れたという感想です。 フリー素材とかは全然聞かれることがなかったのに不思議です。 

    Appleの指示通り直すとリリースはできるということがわかりました。

      このエントリーをはてなブックマークに追加 Clip to Evernote
    11/15に『トランプ・ナポレオン』のiOS版をリリースしました。
    appstore-tn

    また今回のiOS版のリリースではAndroid版も4.0へとアップデートを行っています。 (iOS版も4.0となっています。) 
    4.0では「よろめき」の対応が一番大きいところでしょう。ローカルルールの中で「よろめき」というのはそれなりに知名度が高いようです。オールマイティが出ているトリックでハートのQを出すと、それが必ず勝つというルールです。
    yoromeki
    「よろめき」がないときは常に最強であったオールマイティが負けるルールであるので、ナポレオン軍に不利になります。連合軍でありハートのQを持っているときはよろめきを起こせるチャンスなので、ナポレオン軍に逆転する可能性があります。より勝敗が決まりづらくなり、最後まで楽しめるかもしれません。
    iOS版を出したことにより、それとAndroid版との通信対戦を対応することになりました。Unityの更新をしておくことと古いアプリが新しいものとマッチングしないように対応しました。またローカルルール「よろめき」のありなしをホストの設定から取得し、通信対戦のルールにそれを反映するようにしました。
    onlinesetting-yoromeki

    以前、『トランプ・ナポレオン』のルールという記事にナポレオンのルールを説明していました。 「よろめき」が追加されたので、これも更新しました。
    ルールを増やすと、そのありなしを判定してある場合はどうすればいいというようにAIの変更が必要になります。その対応が一番大変だと思います。 

    よろめきを追加したことで更にルールが複雑になりました。ナポレオンは非常に面白いゲームですが、バランス上5人専用ゲームでありルールを守れないと面白くならないという遊ぶにはハードルが高いものです。実際知っている人も少ないですし、遊んだことがあるという人はさらに少ないでしょう。ただナポレオンを遊んだことがある人は必ず面白いと言うくらい素晴らしいゲームです。
    30分くらいでルールが覚えられれば優秀だと思うほどの難易度ですが、はまれば人に薦めたいと思うはずです。

      このエントリーをはてなブックマークに追加 Clip to Evernote
    Unity5.3から5.4になったときにNetworkMatchつまりマッチメイキングの処理の呼び出し方法が変更されました。5.3以前の処理を書いている場合は多少修正が必要になると思います。
    書き直すのは面倒ですが、修正されているところ(マッチングのフィルタリング)があるのでやってみる価値があります。
    34
    左が5.3で右が5.4のUnityEngine.Networking.Matchのクラスの一覧です。5.3では~Requestと~Responseがたくさんあります。これらはマッチングを行うときのメソッド(NetworkMatch.CreateMatchなど)に渡す情報とマッチング処理を行ったときの結果を返すためのものです。
    5.4ではマッチングを行うときのメソッドに直接値を渡す方式のみになったため、~Requestがなくなったようです。(5.3では~Requestを渡す方法と直接値を渡す方式がありました。値を渡す方式だけ生き残ったということです。)
    ~Responseは元々冗長なクラスでした。~Responseは成功したかどうかとサーバーでのエラーについての情報とそれぞれのマッチング処理の情報という形式です。3つのメンバーしかないので、わざわざクラス化しなくても良いという判断で5.4でなくなったのではないかと思います。5.3のCreateMatchResponseJoinMatchResponseは同じ情報を持つのに違うクラスでしたし、メンバーもわざわざ基本型で書いてありました。5.4では整理されてきれいにまとまった感じです。
    あとはMatchDescMatchInfoSnapshotに変わりました。なぜ……

    5.3でCreateMatchなどを使っていた場合は、5.4のCreateMatchに合わせる必要があります。呼び出し引数が変わっているのでその対応をすれば動くはずです。いくつかのパラメータは空文字や0で無効にして呼ぶことが多いでしょう。
    requestDomainという値が重要でこれが同じ値のものとマッチングするようになっています。この値が違うとマッチングしないようになっているので、通信する内容が変わった場合は値を変えておくと問題が起きません。アプリのバージョンとかと同じように通信のバージョンを管理しておくと良いと思います。

    以前はrequestDomainに対応しているような機能があったのですが、うまく機能してなくて互換性がない状態でマッチングが起こっていました。当然、通信が発生したときに情報が解釈できずエラーになって失敗します。5.4からはこれが動いているというのを確認しました。(Windows、Mac、Android、iOSにて)
    これがあるとUnity Multiplayerに変更のあるアプリのバージョンアップを行うことができます。バージョン違いのものを住み分けることで共存できます。 

      このエントリーをはてなブックマークに追加 Clip to Evernote
    11/3に『トランプ・ゲスイット』のiOS版をリリースしました。
    tgi-appstore

    以前作ったAndroid版の移植になります。
    ゲスイットというカード当てゲームのアプリです。ゲスイット自体はあまり馴染みのないトランプゲームだと思います。A~Kまでの13枚のカードを使って、6枚ずつ自分と相手に配り残った1枚が何かを当てるものです。質問をして正解を絞っていくことと相手を混乱させる質問をすることがゲームの本質だと思います。

    強化学習という方法で大量のデータを保存していて、AIは行動を変えるというものになっています。学習するAIを作るということで最も進んだAIを作ったつもりでしたが、弱かったり強くなりすぎたりするので、ゲームとしては微妙かもしれません。
    バランスの調整が必要ないが、調整できないということです。(サーバーにAIを用意して、そこに問い合わせる方式なら多少はバランスをとれるかもしれません。それをやるのは大変だと思います。)
     

    このページのトップヘ