カロリーメイトください

Barbaroi Ware(バルバロイ・ウェア)という名前でアプリ開発してます

【Unity】UnityでGoogle Playの64bit対応する手順【Google Play】

概要

Google Playでは現在64bitアプリへの移行を進めており、2021年8月1日からは64bit版が含まれていないアプリはGoogle Playで提供されなくなることが発表されており、現時点でも64bit版が含まれていないビルドを新規に登録したり、64bit版が含まれていないビルドに更新することはできません。

その割にUnityでは初期設定で64bitアプリに対応しておらず、何も考えずにアップロードしようとすると以下のようなエラーが出ます。

このリリースは Google Play の 64 ビット要件に準拠していません

f:id:yjkym:20200110191613p:plain

以下で64bitアプリへ移行する手順を書き留めておきます。

環境

  • Unity 2018.4.1f1 Personal

手順

まずツールバーから「File > Build Settings」を選択し、Build Settingsウィンドウを開く。
f:id:yjkym:20200110192247p:plain

次に(ターゲットとするPlatformがAndroidになっていなければ、AndroidにSwitch Platformしてから)Build Settingsウィンドウの左下の「Player Settings」をクリックしてPlayer Settingsパネルを開く。
f:id:yjkym:20200110192951p:plain

InspectorにPlayer Settingsパネルが開くので、その中から「Other Settings」をクリックして開き、その中の「Configuration > Scriptingbackend」を「IL2CPP」に変更する。
f:id:yjkym:20200110193459p:plain:w250

すると「Configuration > Target Architectures > ARM64」がチェックできるようになるのでチェックを入れ、x86のチェックは外す。(ARM64にチェックを入れるだけでは64bit対応できていないので注意)

f:id:yjkym:20200110193905p:plain:w250

あとは通常通りビルドしてやればOK。

と思ったらバージョンエラーが出てしまいました。
ちゃんとバージョンコードもインクリメントしておきましょう。

f:id:yjkym:20200110194248p:plain

無事アップロードできました。

f:id:yjkym:20200110194555p:plain

誰かの参考になれば幸いです。カロリーメイトください。

Android+iPhone/iPadアプリ「麻雀点数計算練習 超 実践問題集」を公開しました

f:id:yjkym:20200109182545p:plain
麻雀点数計算練習超実践問題集

お知らせ

play.google.com

麻雀点数計算 超 実践問題集

麻雀点数計算 超 実践問題集

  • Kentaro Hosokawa
  • ゲーム
  • 無料
apps.apple.com

Barbaroi Ware第6弾アプリ「麻雀点数計算練習 超 実践問題集」を昨年末から年初にかけてリリースしました。

今回は新しい試みとして、アプリ紹介の専用サイトを作ってみたのでアプリの詳しい内容とかはそっちを見てね。

kankeli.net

一応ウェブ版もあります。

unityroom.com

毎回、これイケんじゃね?と思いながら大ゴケしているので、特にコメントはしないことにします。笑

カロリーメイトください。

あけましておめでとうございます と 新ロゴの紹介

ごあいさつ

すでに1記事投稿してしまいましたが、あけましておめでとうございます。

特に2019年を振り返る暇もなく2020年を迎え、そのままなんとなく余裕のない日々を過ごしています。

おかげさまで昨年はBarbaroi Ware(バルバロイ・ウェア)という名前で5つのスマホ向けアプリをリリースすることができました。

残念ながら大きくヒットしたといえるアプリはなく、アプリ収入的には一昨年公開し、昨年アップデートをした「麻雀点数計算練習 Ver.2」に頼りっぱなしといった状況ですが、それでも自分なりに少しずつ手応えを感じ始めてきているところではあります。

・公開中アプリ一覧

https://kankeli.net/barbaroiware/

・麻雀点数計算練習

play.google.com

麻雀点数計算練習 Ver.2

麻雀点数計算練習 Ver.2

  • Kentaro Hosokawa
  • ゲーム
  • 無料
apps.apple.com

新ロゴ紹介

そんなところで(どう見てもレッドオーシャンではありますが)もう少しアプリ開発を続けてみてもいいだろうという結論になりましたので、今年も引き続き挑戦してみたいと思います。

去年はどちらかというと質よりも量という感じで、とにかくリリースすることを優先していたのですが、今年は少し質にもこだわってみたいと思います。

そして、気合を入れるために!ずっと欲しかったアプリ開発者としてのロゴを作りました!

f:id:yjkym:20200108183312p:plain

じゃん!(でかい)

coconalaでこころもり様に作っていただきましたよ。

coconala.com

モチーフは黒ヤギです。由来というほどでもないんですが、一応バルバロイ古代ギリシャ人から見た他民族)の信仰対象のひとつだったりするらしいですよ。

あんまりITっぽい感じを出したくなかったので、イメージどおりのものを作っていただきました。
せっかくすてきなロゴを作っていただきましたので、恥ずかしくない作品を作っていけるよう精進したいと思います。

本年もよろしくお願いいたします。

カロリーメイトください。

天鳳の牌譜ログの<AGARI>タグを解析してみる④

概要

前回の記事の続きです。

www.barbaroiware.net

前回は<AGARI>タグ内のm属性が刻子および加槓を示している場合のデータにについて解説しました。

今回は暗槓、および大明槓の場合のデータについて解説します。

暗槓および大明槓

これまでに説明してきたとおり、m属性の値はデータが格納されている16bitの2進数ビットフィールドを10進数に変換したものです。

具体的には

<AGARI ... m="42367,50251" ... >

というようなXML形式で天鳳のログファイルに記録されています。

たとえば10進数の"42367"は2進数で表すと"1010010101111111"となり、これが副露した1メンツのデータを表しています。

右から数えて3番目のbit(以下3ビット目)から5番目のbitまでがすべて0の場合、そのメンツは暗槓、もしくは大明槓であることが確定します。

この場合、各bitの意味は以下の通りになります。

ビット目
1-2ビット目 誰から鳴いたか(00の場合、暗槓であることを示す)
3ビット目 必ず0(順子でないことを示す)
4ビット目 必ず0(刻子ないことを示す)
5ビット目 必ず0(加槓でないことを示す)
6ビット目 1の場合は三人麻雀の抜きドラを示す
7-8ビット目 (未使用)
9-16ビット目 槓子のパターンを示す

まず1-2ビット目は他のメンツ同様誰から鳴いたかを示します。
ビットフィールドとの対応は前々回の記事内の順子の場合を参照してください。
ここが0x00の場合、自分から鳴いたという情報になりますので、槓子なら暗槓であることを示します。

3-5ビット目が「0x000」であれば、このメンツが暗槓もしくは大明槓であることを示します。
他のメンツと異なり、暗槓や大明槓であることを示す特定のフラグはなく、
「順子、刻子、加槓であるフラグがない」という情報をもって、このメンツは暗槓、もしくは大明槓であることが確定されます。

6ビット目は三人麻雀(三麻)の場合に使用されるらしいですが、よくわかってないので省略。

9-16ビット目は槓子のパターンを表します。
槓子のパターンとはたとえば、「字牌の西の槓で1枚目の西をカンした暗槓、もしくは大明槓」といった情報のことです。

刻子や加槓の場合と異なり、同種牌の中での組み合わせを考える必要はないことに注意してください。

ビット情報との対応は以下の通りです。(ビット情報の0xは2進数であることを示す)

ビット情報 順子パターン
0(0x00000000) 一一一一(1枚目の一をカン)
1(0x00000001) 一一一一(2枚目の一をカン)
2(0x00000010) 一一一一(3枚目の一をカン)
3(0x00000011) 一一一一(4枚目の一をカン)
4(0x00000100) 二二二二(1枚目の二をカン)
5(0x00000101) 二二二二(2枚目の二をカン)
34(0x00100010) 九九九九(3枚目の九をカン)
35(0x00100011) 九九九九(4枚目の九をカン)
36(0x00100100) ①①①①(1枚目の①をカン)
37(0x00100101) ①①①①(2枚目の①をカン)
70(0x01000110) ⑨⑨⑨⑨(3枚目の⑨をカン)
71(0x01000111) ⑨⑨⑨⑨(4枚目の⑨をカン)
72(0x01001000) ⅠⅠⅠⅠ(1枚目のⅠをカン)
73(0x01001001) ⅠⅠⅠⅠ(2枚目のⅠをカン)
106(0x01101010) ⅨⅨⅨⅨ(3枚目のⅨをカン)
107(0x01101011) ⅨⅨⅨⅨ(4枚目のⅨをカン)
108(0x01101100) 東東東東(1枚目の東をカン)
109(0x01101101) 東東東東(2枚目の東をカン)
134(0x10000110) 中中中中(3番目の中をカン)
135(0x10000111) 中中中中(4番目の中をカン)

暗槓、もしくは大明槓の場合、萬子・筒子・索子で各9パターン、字牌で東~中の7パターンの組み合わせが考えられ、さらにどの牌を鳴いたかの情報が加わりますので、刻子のパターンとしては(3×9+7)×4=136とおりの組み合わせが考えられます。

そんなとこで天鳳解析シリーズは以上です。
まぁ自分で実際にやってみないとわかんないですね!

カロリーメイトください。

PR

そんなことを考えながら作ったアプリがこちらです
kankeli.netAndroid
https://play.google.com/store/apps/details?id=com.BarbaroiWare.MahjongScoreDrilliOS
https://apps.apple.com/jp/app/id1493166793

【麻雀点数計算 超 実践問題集】バグ報告・改善要望

kankeli.net
Android
https://play.google.com/store/apps/details?id=com.BarbaroiWare.MahjongScoreDrill
iOS
https://apps.apple.com/jp/app/id1493166793

 

【麻雀点数計算 超 実践問題集】のバグ報告や改善要望はこちらのコメント欄、もしくは開発者Twitter↓へお願いします。

ブログのほうが早く気がつく可能性が高いです。

twitter.com

個別問題に対する疑問は画面左上の問題番号を、不具合の場合はAndroidiOSのバージョンおよびバグ発生時の操作など状況を添えていただけると有り難いです。

f:id:yjkym:20191228230535p:plain

よろしくお願いいたします。

「麻雀点数計算 超 実践問題集」プライバシーポリシー

kankeli.netAndroid
https://play.google.com/store/apps/details?id=com.BarbaroiWare.MahjongScoreDrill

iOS
https://apps.apple.com/jp/app/id1493166793 

広告について

本アプリでは、広告配信ツールとしてAdMob(Google Inc.)を使用しており、AdMobがご利用者の情報を自動取得する場合がございます。取得する情報、利用目的、第三者への提供等につきましては、以下の広告配信事業者のアプリケーション・プライバシーポリシーのリンクよりご確認ください。

Google 広告に関するポリシー
https://policies.google.com/technologies/ads?hl=ja

開発者連絡先

Twitter : Yuji Koyama (@yjkym_gmc) | Twitter

Mail : gekirinsoftware☆gmail.com(☆→@、gを半角文字に置き換えてください)

公開されても問題のない連絡であれば、この記事にコメントしていただくのが一番手軽だと思います。

 

Privacy Policy

・This application uses the advertising distribution tool AdMob (Google Inc.) and there may be cases where AdMob may automatically acquire user information. Please confirm the link below for the application privacy policy for the advertisement distribution company for details about the information to be obtained, the purpose of use and provision to third parties etc.

https://policies.google.com/technologies/ads?hl=en

天鳳の牌譜ログの<AGARI>タグを解析してみる③

概要

前回の記事の続きです。

www.barbaroiware.net

前回は<AGARI>タグ内のm属性の意味と、順子の場合のデータにについて解説しました。

今回は刻子、および槓子の場合のデータについて解説します。

刻子

前回、m属性の値はデータが格納されている16bitの2進数ビットフィールドを10進数に変換したものであるということを説明しました。

たとえば、10進数の"42367"は2進数で表すと"1010010101111111"となり、これが副露した1メンツのデータを表しています。

右から数えて3番目のbit(以下3ビット目)が0かつ、4ビット目が1の場合、そのメンツは刻子であることが確定します。

この場合、各bitの意味は以下の通りになります。

ビット目
1-2ビット目 誰から鳴いたか
3ビット目 必ず0(順子でないことを示す)
4ビット目 必ず1(刻子であることを示す)
5ビット目 (未使用)
6-7ビット目 刻子含まれない牌を同種牌4枚の中から特定する
8-9ビット目 (未使用)
10-16ビット目 刻子のパターンを示す

まず1-2ビット目は順子同様誰から鳴いたかを示します。
対応は順子の場合と同じですので省略します。

3-4ビット目が「0x10」(4ビット目を先に読む)であれば、このメンツが刻子であることを示します。

6-7ビット目は刻子含まれない牌を特定する情報です。
順子のところでも解説したとおり、天鳳では同じ種類の4枚の牌(同種牌)をそれぞれ別のものとして管理しています。
この2ビットを使ってどの牌が使われていないかという情報を示しています。
少しややこしいので具体例を後ほど解説します。

10-16ビット目は刻子のパターンを表します。
刻子のパターンとはたとえば、「字牌の西西西の組み合わせで1番目(左側)の西をポンした順子」といった情報のことです。

ビットフィールドとの対応は以下の通りです。(ビット情報の0xは2進数であることを示す)

ビット情報 順子パターン
0(0x0000000) 一一一(1番目の一をポン)
1(0x0000001) 一一一(2番目の一をポン)
2(0x0000010) 一一一(3番目の一をポン)
3(0x0000011) 二二二(1番目の二をポン)
4(0x0000100) 二二二(2番目の二をポン)
5(0x0000101) 二二二(3番目の二をポン)
24(0x0011000) 九九九(1番目の九をポン)
25(0x0011001) 九九九(2番目の九をポン)
26(0x0011010) 九九九(3番目の九をポン)
27(0x0011011) ①①①(1番目の①をポン)
28(0x0011100) ①①①(2番目の①をポン)
29(0x0011101) ①①①(3番目の①をポン)
51(0x0110011) ⑨⑨⑨(1番目の⑨をポン)
52(0x0101000) ⑨⑨⑨(2番目の⑨をポン)
53(0x0101001) ⑨⑨⑨(3番目の⑨をポン)
54(0x0101010) ⅠⅠⅠ(1番目のⅠをポン)
55(0x0101011) ⅠⅠⅠ(2番目のⅠをポン)
56(0x0101100) ⅠⅠⅠ(3番目のⅠをポン)
78(0x1001110) ⅨⅨⅨ(1番目のⅨをポン)
79(0x0101000) ⅨⅨⅨ(2番目のⅨをポン)
80(0x0101001) ⅨⅨⅨ(3番目のⅨをポン)
81(0x0101010) 東東東(1番目の東をポン)
82(0x0101011) 東東東(2番目の東をポン)
83(0x0101100) 東東東(3番目の東をポン)
99(0x1100011) 中中中(1番目の中をポン)
100(0x1100100) 中中中(2番目の中をポン)
101(0x1100101) 中中中(3番目の中をポン)

刻子の場合、萬子・筒子・索子で各9パターン、字牌で東~中の7パターンの組み合わせが考えられ、さらにどの牌を鳴いたかの情報が加わりますので、刻子のパターンとしては(3×9+7)×3=102とおりの組み合わせが考えられます。

具体例で説明します。
たとえば6-7ビット目の情報が「0x10」で10-16ビット目の情報が「0x1100101」だったとします。

6-7ビット目の情報「0x10」は「0x00」から数えて3番目のビットですので、「この刻子には3枚目の同種牌が使われていない」という情報になります。
10-16ビット目の情報「0x1100101」は上の対応表を参考にすると「中の刻子(明刻)で3番目の中をポンしたもの」ということがわかります。
これらの情報をあわせて考えると、この刻子は「1枚目の中、2枚目の中、4枚目の中で構成されている刻子で、3番目の『4枚目の中』をポンした明刻である」ということがわかります。

加槓

刻子と重複する部分が多いので、加槓の場合を先に説明します。

加槓の場合の各ビットの意味は以下のとおりです。

ビット目
1-2ビット目 明刻を誰から鳴いたか
3ビット目 必ず0(順子でないことを示す)
4ビット目 必ず0(刻子ないことを示す)
5ビット目 必ず1(加槓であることを示す)
6-7ビット目 加槓した牌(刻子に含まれていない牌)を同種牌4枚の中から特定する
8-9ビット目 (未使用)
10-16ビット目 刻子のパターンを示す

刻子との違いは事実上、4-5ビット目のフラグのみです。

3-5ビット目が「0x100」(5ビット目から読む)であれば、このメンツが加槓であることを示します。
加槓であることを示すフラグは5ビット目の情報ですが、順子の場合5ビット目は別の情報(「順子の1枚目の牌を同種牌4枚の中から特定する」)に当てられていますので、5ビット目を見ただけでは加槓であると判定できないことに注意してください。

6-7ビット目は加槓した牌を同種牌4枚の中から特定する情報ですが、加槓した牌というのはすなわち明刻に含まれていない牌ということになりますので、事実上明刻と同じ情報になります。

1-2ビット目、10-16ビット目も明刻と同様に、加槓する前の刻子(明刻)についての情報を示しています。

残りの暗槓、明槓のメンツについては次の記事に分けます。

カロリーメイトください。

PR

そんなことを考えながら作ったアプリがこちらです
kankeli.netAndroid
https://play.google.com/store/apps/details?id=com.BarbaroiWare.MahjongScoreDrilliOS
https://apps.apple.com/jp/app/id1493166793