FreelyApps

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


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

    タグ:トランプ

      このエントリーをはてなブックマークに追加 Clip to Evernote
    2/6に『トランプ・ゲスイット』を公開しました。
    tgi-title

    トランプゲームの「ゲスイット」を遊ぶことのできるアプリです。
    プレイヤー数は2人でA~Kまでの13枚のトランプを使います。6枚ずつの手札が配られ、配られなかった残り1枚のカードが何かを当てるゲームです。推理と嘘の駆け引きを楽しむことができます。

    本アプリでは学習するAIが搭載されています。はじめは何のデータも存在しないので、場当たり的に行動を起こしますが、ゲームを繰り返していくとそれなりに強くなります。10回程度同じように行動すると、それに適応するように感じます。

    ゲスイットとはGuess itから来ています。おわかりでしょうが念のため。

      このエントリーをはてなブックマークに追加 Clip to Evernote
    開発中のアプリの紹介動画を作ってみました。
    ゲスイットというトランプゲームはマイナーなゲームだと思います。そんなわけでどういう風にゲームが進んでいくのかイメージしにくいでしょう。現時点で完成している対戦画面を動画にしたので、興味ある方はどういうゲームなのか見てください。

    YouTubeとニコニコ動画にアップした紹介動画を載せておきます。内容は同じですので、お好きな方をどうぞ。




    作っていると何百回も対戦することになるので、私は感覚がマヒしてきています。面白いかどうかはもはや判断しにくいので、細かいところの作り込みをして仕上げているところです。
    AIが学習するというのが挑戦的な今作なのですが、AIの学習方法がばれるとひっかけることができてしまいます。ルールに基づいて判断する固定的なAIの方がやはり良いのではないかと思う最近ですが、学習型のAIと固定的なAIの組み合わせが最適なのかもしれないとも思っています。

      このエントリーをはてなブックマークに追加 Clip to Evernote
    次のアプリはゲスイットというトランプゲームを題材にしたアプリにする予定です。
    ゲスイットはあまり馴染みがない人が多いと思いますが、単純なルールですぐに覚えられます。2人で遊ぶためのゲームで読み合いや騙し合いの駆け引きが面白いゲームです。

    ちょっと紹介すると、A~Kまでのスートの一揃い13枚のカードを使います。6枚ずつ配り、余った1枚のカードが何かを当てるのが目的です。自分の手札がヒントになりますが、それだけだと1/7で当たるだけのゲームになってしまうので、順番に特定の行動ができるようになっています。
    自分の番には質問か解答のいずれかのみができます。質問はA~Kまでのどれか1枚について相手に持っているかを聞くことができ、相手はそれに対し正しいことを教えなければなりません。またあるカードについてした質問は自分も相手もできなくなります。解答は余った1枚のカードが何かを当てることです。当たれば勝ちですが、外れれば負けになります。解答したらゲームは必ず終わります。
    勝つ方法は自分で余った1枚のカードを当てるか、相手に外させるかのいずれかです。
    要は自分の持っていないカードを質問して当てる確率を高めたり、自分の持っているカードをわざと質問して相手を混乱させたりするということになります。

    表情などから駆け引きしたりするのが面白かったりするので、対人が面白いのは言うまでもないです。ただ質問に制限があるので、どの質問がされたかをメモしておくなどが必要です。ちょっとした暇つぶしにはやはりアプリに分があります。手軽さと練習にはアプリがよく、知っている人とは対人戦が面白いというのがトランプの特徴だと思います。

    Unity 5.3.1で作っているのですが、PlayerPrefsのファイルが見当たらなくなったりと色々変わっていて困っていることが多いです。もしかしたらバージョンを下げてUnity 5.2にしてリリースするかもしれません。
    Unity 5.3を使う理由が今のところないので、安定性の方が大事だからです。

    今後はしばらくトランプのアプリを作っていく予定です。
    ゲスイットができたら、ポーカーを作ろうと考えています。ふつうのポーカーと思われている5カードドローも良いですし、他の変わったものも良いです。 

      このエントリーをはてなブックマークに追加 Clip to Evernote
    Google Playのカテゴリーで言うとトランプはゲームのカードというカテゴリに属します。主にトランプとトレーディングカードゲームが集まっています。
    カードのカテゴリはそれほど活発ではないという特徴があります。新着無料トップという新しいアプリの中でのランキングがありますが、そこに載っているアプリは50くらいです。
    新着無料のアプリのランキングが少ないということは、新しく作られているアプリの数が少ないということです。新着有料トップというランキングもありますが、この記事を書いているときは1件も登録されていませんでした。つまりカードでは新しい有料のアプリがかなり少ないということです。

    トランプは色々なゲームがありますが、知られているようなゲームはごく一部です。日本では大富豪、ポーカー、7並べ、ババ抜き、神経衰弱、ダウトといったものがよく知られているように思います。これらは基本的に2~7人くらいで遊ぶものです。おそらくは家庭や友達の間で遊ばれるものが好まれているのでしょう。
    こういった人気のあるゲームを題材としたアプリは既にリリースされています。特に大富豪はよく見かけます。大富豪は最も人気が高い気がするし、知っている人も多いと思います。そのため大富豪のアプリはたくさんあるのでしょう。
    実のところトランプのアプリのほとんどは複数人でやるゲームではなく、1人用のゲーム―ソリティアです。特に有名なのがフリーセルとクロンダイクです。パソコンに付属していたりするのでなんとなく知っているかもしれません。暇つぶしとしても良いし、じっくり考えるゲームなのでそういうのが好きな人には良いゲームです。
    ルール自体はそれほどバリエーションがある方ではないので、いくつもアプリが出ても意味がないような気はします。いくつもあるのはそれだけ需要があるということと作りやすいということがあると思います。ソリティアのプレイヤーは当然一人なので、ゲームのルールをきちんと処理すれば作れます。難しいのはルールの処理とUIです。

    ソリティアを作るのが難しいといっても複数人で遊ぶ大富豪や7並べほどは難しくありません。複数人で遊ぶゲームを作るのが難しい最大の原因はAIです。人間であるプレイヤー以外の対戦相手をどのようにプログラミングするかが非常に困難です。強すぎても駄目ですが、弱すぎるよりは強い方が良いです。強い理由が相手のカードを盗み見るといったイカサマでは困ります。イカサマしていると遊んでいる人が感じてしまったら、とたんにつまらなくなってしまうからです。
    自分の手札や相手のカードの出し方、今までの流れといったことから判断してAIを作る必要があります。これがどうして難しいかというのは、どんな状況に対しても判断をしなければいけなくてしかも強いということが求められるからです。(一番簡単なのは出せるカードをランダムで出すという方法です。)
    自分が大富豪をやっていることを想像してみてください。自分が出すカードをどうしてそう選んだのかを論理的に説明できるでしょうか?どっちでもいいやという場面もあるでしょうけど、AIがどっちでもいいやというように結論づけるまではどういったことから判断すればいいでしょう?
    トランプのAIとは、ゲームのルールの知らない人にマニュアルを渡して、その通りに遊んだら勝てるようなっているマニュアルを作ることです。

    ソリティアがいっぱいあるのは人気だからということと作るのが比較的簡単だからだと思います。

    複数人で遊ぶゲームにも需要があるのは間違いないので、作ればそれなりに遊ばれるはずです。
    ゲームを作りたいけれど、アイディアがない。でもプログラミングはそこそこできるという人はトランプゲームを作るというのが向いているのではないでしょうか。素材の用意もカードの絵くらいで十分なので、非常に楽です。

    私は今後トランプのアプリをいろいろ作っていくのも良いと思っています。 

      このエントリーをはてなブックマークに追加 Clip to Evernote
    9/26に『トランプ・ナポレオン』を公開しました。
    Screenshot_2015-09-17-23-42-44

    トランプゲームの「ナポレオン」を遊ぶことのできるアプリです。
    本来、5人プレイヤーがいないと遊べないゲームですが、『トランプ・ナポレオン』ではコンピュータとの対戦により1人で遊ぶ用のゲームになっています。
    1回あたり長くても5分程度で終わりますので、ちょっとしたときに遊ぶにも適しています。

    ルールが複雑なため、ゲームのルールについてはこの記事で公開しています。説明を見ずに遊ぶこともできますが、ルールを知ってから遊んだ方が楽しめますので一読をお勧めします。

    ユーザーが増えたら、通信対戦を作りたいと思っています。技術的にはUnity Multiplayerを使って実現可能ですが、ユーザーがある程度いないと対戦ができないのです。最大5人同時対戦で2人から対戦できるように作ろうかと思っています。
    通信対戦実装のためにもアプリ『トランプ・ナポレオン』の拡散をお願いします。

    YouTubeとニコニコ動画にアップした紹介動画を載せておきます。内容は同じですので、お好きな方をどうぞ。
     


      このエントリーをはてなブックマークに追加 Clip to Evernote
    アプリ『トランプ・ナポレオン』のルール説明です。ナポレオンには色々なルールがあるようなので、このアプリで採用しているルールを説明します。

    1. 概要
    2. ゲームの流れ
    3. カードの強さ
    4. 特殊なルール
    5. 操作方法
    6. 参考

    1.概要
    プレイヤー数は5人。
    使用するカードは各スートの1~13とJokerの計53枚です。

    ナポレオン副官からなる「ナポレオン軍」と残りのプレイヤーからなる「連合軍」の2チームに分かれ、絵札を取り合うゲームです。このゲームにおける絵札とは各スートのA、K、Q、J、10の全部で20枚です。
    ナポレオン軍は取ると宣言した枚数以上の絵札を取得できればナポレオン軍の勝ちです。連合軍は逆にナポレオン軍を勝たせないようにすれば、勝利です。必ずどちらかの軍が勝ちます。

    プレイヤーに10枚ずつ手札を配り、ナポレオンを決めるために宣言を行います。宣言はナポレオン軍が取る枚数と切り札のスートの指定をします。(スペードで13枚、ハートで15枚といった宣言になります。)最も強い宣言をしたプレイヤーがナポレオンになります。
    ナポレオンが決まったら副官の指定を行います。ナポレオンは53枚のトランプの中から1枚を指定し、そのカードを持っている人が強制的に副官になります。
    副官の指定後、ナポレオンはカード交換を行います。配ったときに余った3枚のカードを渡し、13枚の手札から自由に3枚を選んで捨てます。捨てられたカードはゲームで使わないことになります。

    以上の準備が整ったら、トリックと呼ばれるゲームを手札がなくなるまで行います。すべてのトリックが終了した時点で勝敗を決めることになります。

    2.ゲームの流れ
    <配札>
    はじめに53枚のカードをシャッフルし、プレイヤーに10枚ずつ配ります。余った3枚のカードは後で使うので、場に裏向きに置いておきます。

    <宣言>
    ナポレオンを決めるために宣言を行います。
    ディーラーから時計回りに宣言をするかパスをするかしていきます。宣言は切り札のスートと取る枚数の組で行います。取る枚数は13枚以上です。宣言するときは既にされている宣言よりも強いもので行わなければなりません。
    宣言の強さは取る枚数が多いほど強く、同じ枚数の宣言であれば切り札のスートがスペード>ハート>ダイヤ>クラブの順で強くなります。スペードで20枚が最も強いのでそれが宣言された場合はパスするしかありません。
    あるプレイヤーが宣言してから、他のプレイヤーがパスを続け宣言したプレイヤーまで回ったらその人の宣言に決定しナポレオンになります。宣言が通った場合ナポレオンを降りるということはできません。
    自分の番が回ってくるたびに自由にパス、宣言のどちらかを行います。
    全員がパスして一周してしまった場合は配札からやり直しになります。

    一般的にはナポレオンになる気がないなら、宣言しない方が無難です。宣言すると、その切り札を多く持っているだろうと予想されますし何らかの役札を持っているのではないかと周りのプレイヤーに勘ぐられます。宣言によって自身の勝敗が決すると言ってもいいくらい重要なことなのです。ナポレオンの宣言枚数をつり上げるためや撹乱のために宣言しても構いませんが、それが通ってしまうとナポレオンにならなくてはなりません。

    <副官指定>
    ナポレオンが決まったら、ナポレオンは副官を指定します。
    ナポレオンは53枚のトランプの中から1枚を指定します。そのカードを持っている人が強制的に副官になります。
    後述するカード交換時に受け取るカードに指定したカードが入っていることがあります。その場合はナポレオンが副官を兼ねることになります。予想外に副官を兼ねることになっても副官指定を変更することはできません。

    一般的には自分の持っていない強いカードを指定します。自分の持っているカードを指定するのは、自分の手札がよほど強く勝利を独占する場合くらいでしょう。

    <カード交換>
    副官指定が終わったら、ナポレオンは配札時に余った裏向きに置かれている3枚のカードを受け取ります。13枚になった手札から任意に3枚を選び、それを捨てます。捨てた3枚のカードはゲーム中で使われなくなります。
    絵札を捨てた場合はその得点がなくなります。捨てる枚数によっては絶対に宣言を満たすことができなくなるのでご注意ください。
    副官指定のカードを捨てた場合、ゲーム中は副官が判明しませんが終了時にナポレオンが副官を兼ねていたことが判明します。

    一般的には弱いカードを捨てます。絵札を捨てると取得できる得点が減ってしまうので基本的に捨てない方が無難です。切り札の比率を高めるために絵札を捨てるとか副官をわからなくするために副官指定のカードを捨てるという戦略もあります。

    <トリック>
    カード交換が終わったら、トリックと呼ばれるゲームを手札がなくなるまで繰り返します。

    トリックでは決められたプレイヤーから時計回りに1人1枚ずつ手札からカードを出していきます。トリックの最初のプレイヤーは任意のカードを出すことができます。2番目以降のプレイヤーは最初のプレイヤーが出したカード(トリックの初めに出されたカードを台札という)と同じスートのカードを出さなければいけません。台札と同じスートのカードを持っていなければ、任意のカードを出すことができます。全員が出し終えたら、後述するカードの強さからトリックの勝者を決めます。
    トリックで出されたカードはこの後のゲームでは使えなくなります。トリックに出されたカードに絵札が含まれていた場合は、トリックの勝者がすべて取得します。絵札以外のカードはゲームから取り除いておきます。

    1回目のトリックではナポレオンがトリックの最初のプレイヤーになります。2回目以降のトリックでは前のトリックの勝者がそのトリックの最初のプレイヤーとなります。

    各トリックで勝者を決めますが、あくまでそれはトリックでの勝者でありゲームの勝敗には関係ありません。絵札を取得するためにトリックの勝者が決まるだけなので、トリックに勝つことは絵札を得るための手段にすぎません。

    トリックの途中で副官指定のカードが出ることがあるかも知れません。そのときは全員が副官を知ることになります。副官がわかるかどうかでゲームの流れが変わりますので、副官が誰なのかということには注意を払ってください。

    一般的にはナポレオンはトリックを勝ち続けるのが理想です。副官はナポレオンが勝てなかったトリックを勝ったり、ナポレオンに絵札が行くようにしたりすることになるでしょう。連合軍はナポレオンに絵札を取らせないように自分が勝ったり、まとめて絵札がトリックに出ないよう少しずつ絵札が出るように調整したりすることになります。
    トリックにおいてどのようにカードを出していくかというのは副官が最も難しく、次にナポレオン、連合軍が難しくなります。

    <勝敗決定>
    10回のトリックを終え、手札がなくなった時点でゲーム終了です。トリックが終わっても副官が判明していない場合はナポレオンが捨てたカードに副官指定のカードが含まれているはずなので、ナポレオンが副官を兼ねていたことになります。
    ナポレオンと副官の取得した絵札の枚数の合計がナポレオンの宣言した枚数以上であればナポレオン軍の勝利です。そうでなければ連合軍の勝利です。

    3.カードの強さ
    強い順に以下の順になります。
    1. よろめき
    2. オールマイティ
    3. 台札のJoker
    4. 正ジャック
    5. 裏ジャック
    6. セイム2
    7. 切り札
    8. 台札と同じスートのカード
    9. その他
    オールマイティはスペードのAのことです。

    台札のJokerはトリックの初めに出たJokerのことです。詳しくは特殊ルールで説明します。

    正ジャックは切り札のJのことです。切り札とはナポレオンが決まったときに宣言されているスートのカードのことです。

    裏ジャックは切り札のスートと同じ色の別スートのJのことです。(例えば正ジャックがハートのJなら、裏ジャックはダイヤのJ。)

    オールマイティ、正ジャック、裏ジャックの3つは役札とも呼ばれます。

    セイム2は2のことですが、全員が同じスートを出したときのみ有効です。詳しくは特殊ルールで説明します。

    切り札はナポレオンが宣言したスートのカードです。1~13の13枚があります。(オールマイティ、正ジャック、セイム2と被ることがあります。被った場合はより強い方を採用します。)切り札どうしでのカードの強さはA、K、Q、・・・、4、3、2という順です。

    台札はトリックの初めに出されたカードのことであり、その台札のスートと同じスートのカードは他のスートよりも強くなります。1~13の13枚があります。(オールマイティ、正ジャック、裏ジャック、セイム2、切り札と被ることがあります。被った場合はより強い方を採用します。)台札と同じスートのカード同士での強さは切り札同様A、K、Q、・・・、4、3、2という順です。

    その他は上記以外のカードのことになります。台札が必ず存在するため、その他のカードが勝つことはありません。

    4.特殊ルール
    <よろめき>
    オールマイティとハートのQが同じトリックに出た場合、よろめきが成立します。よろめきが発生したときはハートのQを出したプレイヤーが勝ちます。
     
    <セイム2>
    トリックで出されたカードのスートが全て同じ(Jokerを含んで良い)場合、誰かが2を出していればセイム2が成立します。
    オールマイティ、台札のJoker、正ジャック、裏ジャックに次いでセイム2が強くなります。セイム2が成立した場合、最弱である2で勝つ可能性があります。

    <Joker>
    Jokerはいつでも好きな時に出すことができるカードです。

    台札として出されたときのJokerはオールマイティに次いで2番目に強いカードとなります。またこのときJokerのスートは切り札のスートとして扱います。後続のプレイヤーは切り札を出さなければならなくなります。

    台札以外で出されたJokerは最弱カードになります。またスートはないものとして扱います。

    Jokerが出されていても他の4枚が同じスートであればセイム2が成立します。

    <Joker請求>
    ゲーム中Jokerがまだ出ていない場合でクラブの3が台札で出されると、Joker請求が成立します。Joker請求時にはJokerを持っている場合は出さなければなりません。
    Joker請求を行った人がJokerを持っていたり、カード交換時にJokerが捨てられていたりすると、Joker請求が発生してもJokerを誰も出さないことがあります。

    5.操作方法
    『トランプ・ナポレオン』での実際の操作方法について説明します。

    操作は大きく分けて、宣言、副官指定、カード交換、トリックでのカード選択の4つです。宣言とトリックでのカード選択は全てのプレイヤーが行いますが、副官指定とカード交換はナポレオンのみが行います。

    <宣言>
    d

    宣言するときは上の画面でスートと枚数を選んで宣言かパスを選びます。順番が回ってくるたびにこのウィンドウが表示されます。

    <副官指定>
    a

    宣言が通りナポレオンになった場合、副官指定を行います。上の画面でスートと数字を選ぶことで1枚のトランプを指定します。画面上部にショートカットキーが用意されています。Jokerを指定するにはショートカットキーを押してください。
    下部にあるボタンを押すことで決定します。

    <カード交換>
    c1 c2 c3

    副官指定をしたら場に置いてある3枚のカードを手札に加え、左の図のように13枚の手札になります。最上段の3枚が追加されたカードです。この中から不要な3枚のカードをタップして選択してください。選択状態になると色が変わり、選択状態のものを再度タップすると非選択状態になります。
    捨てたいカードを3枚選ぶと真ん中の図のように問われるので、「はい」と答えると次に進みます。「いいえ」の場合は選び直しになります。
    右の図は「はい」と答えた後の手札です。

    <トリックでのカード選択>
    t1 t2

    左の図のように出せるカードは明るく表示されています。出せないカードは暗く表示されていて押しても選択することができません。
    出せるカードを一度タップすると、右の図のように色が変わり選択状態になります。選択状態のカードをもう一度タップするとそのカードを出します。出せる非選択状態のカードをタップした場合はそれが選択状態に切り替わります。

    6.参考
    トランプの用語を解説したサイトやナポレオンのルールを解説したサイトを載せておきます。「トランプ・ナポレオン」を作るときに参考にしました。違ったルールのナポレオンがあるということも知ってほしいのでリンクを列挙します。

    【ナポレオン】
    Wikipedia
    トランプスタジアム
    ニコニコ大百科
    コウタロウのナポレオン譜

    【用語】 
    Wikipedia
    Trump House

    このページのトップヘ