ふたくちおとこ

クチート大好きな私が、主にポケモンやボドゲに関して書くブログ

ポケモンのデータセットを公開しました。

みなさんこんにちは。さっちんです。

最近はモンスターハンターワールドやっていました。初めてのモンハンでしたが、めちゃくちゃ良かったです。シリーズで数千時間やる人がいるのも頷けます。

さて、今回は第7世代までのポケモンのデータを分析に使いやすい形に整形しました。下記のレポジトリで公開していますので、必要な方はどうぞ。

github.com

[2018/5/08 追記] Kaggleに投稿しました。

Pokemon with stats. Generation 7 | Kaggle

データ定義

列名 詳細
No 図鑑番号です。
Japanese 日本語名です。
English 英語名です。
German ドイツ語名です。
French フランス語名です。
Korean 韓国語名です。
Simplified Chinese 中国語の簡体字での名前です。
Traditional Chinese 中国語の繁体字での名前です。
Generation 初登場した世代です。
Form フォルムチェンジ、メガシンカゲンシカイキなどの名前です。
H HPの種族値です。
A 物理攻撃の種族値です。
B 物理防御の種族値です。
C 特殊攻撃の種族値です。
D 特殊防御の種族値です。
S すばやさの種族値です。
Ability1 1つ目の特性です。
Ability2 2つ目の特性です。
Ability3 隠れ(夢)特性です。
Type1 1つ目のタイプです。
Type2 2つ目のタイプです。
Weight 体重です。
Evolve Flag 最終進化系である場合1を、そうでない場合0を割り当てています。

利用例

下記のように、いくつかお試しで分析して見ました。参考にして頂ければ幸いです。

まとめ

簡単になりましたが、分析しやすいポケモンのデータセットとお試し分析について記載しました。 暇を見つけてKaggleにもあげたいと思います。

p.s. Switch版のポケモンの期待が高まる…。

ビビリS+が実践している、ガチアサリで勝てるようになる方法

みなさんこんにちは、さっちんです。

年末も近いですが、まだまだスプラトゥーンを楽しみたいと思ってる今日この頃です。さて、今回はスプラトゥーン2の201712月時点のガチアサリの基本的な戦略について書いていこうと思います。

私自身が敗北を極力減らすことで勝率を上げるタイプなので、消極的な戦略と感じる方も多いと思います。また、ガチパワーが1800~1900で実践している戦略なので、それ以外では通用しないかもしれないということを前置きとさせて頂きます。

(ちなみに今は、A帯1800~1900, A-帯1700~1800, C帯1300くらいの感じです。)

全ルール共通の考え方

まず、FPSでよく言われる「オブジェクトに絡む行動」が防衛につながります。 ガチエリアであればエリア(床)、ガチヤグラであればヤグラ、ガチホコであればホコ、ガチアサリであればアサリとゴールがオブジェクトです。 スプラトゥーンにおける「オブジェクトに絡む行動」とは、

  • これらを塗る
  • これらのカウントを進める
  • これらをキープする
  • 相手からこれらを奪う

ことだと考えてください。 裏取りを嫌う人がいるのは、裏取りをするとオブジェクトに絡む行動ができなくなるためです。 (私もあまり裏取りしない派です。)

ガチアサリ

まずは、逆転負けを減らす

今日までプレイしていて一番気になったのは、逆転で勝敗が決まることが多いことです。 勝つにせよ負けるにせよ、逆転の発生する率が他のルールよりも非常に多いです。 これは、防衛方法が確立されていないことが原因だと思われます。

他のルールであれば、ゲームの終了間際に優位チームが負けないためにする行動が概ね固まってきています。

  • ガチエリア
    • エリアと相手チームのリスポーン地点の間まで前線を進めて、そもそも相手をエリアに到達させないように戦う
  • ガチヤグラ
    • 相手がヤグラから降りざるを得ない状況を作り、その間にヤグラを奪う。例えば、ボムをヤグラに載せる、ハイパープレッサー、マルチミサイル、スーパーチャクチ、イカスフィアを使うなど
  • ガチホコ
    • ホコを持って自陣に引きこもる

しかし、現時点のガチアサリにおいて、終了間近にこれをすればゲームを終わらせることができるという行動が確立されていません。 これにより、逆転という状況が生まれやすくなっていると思います。

私が実践している方法としては、

  • 相手のガチアサリ持ちを倒す
    • 倒した後に、そのガチアサリが消滅するのを見守るまでが大事です
  • フィールド上のアサリを専有する
    • アサリ拾い、自チームのガチアサリを作り、自陣に投げる。またアサリを拾って…を繰り替えすことで専有できます

これらを実施することで、逆転されることが少なくなります。

相手の「追いアサリ」を止める

ガチアサリでバリアを破った後に、アサリを投げ入れることを「追いアサリ」と個人的に呼んでいます。 この追いアサリこそ、ガチアサリで最も注意するべき行動です。

破ったバリアは一定時間経過すると復活しますが、「追いアサリ」をされると、その時間が延長されます。 一度バリアを破られた後、何度も「追いアサリ」をされて、そのまま負ける…。ということを、みなさんも経験したことがあると思います。

ガチアサリを止めるのも大事ですが、この「追いアサリ」がなくなるまでバリアを守り続けることが重要です。

自陣のアサリは回収する

当たり前のように思う方もいると思いますが、非常に重要なことです。 自陣にアサリが残っていると、以下のようなリスクが発生します。

  • ゴール近くで相手がガチアサリを作ることができる
  • 追いアサリの数が飛躍的に増える

アサリを2つしか持っていない敵に、アサリを4つ以上持っている味方が倒され、落とした4つと自然湧きした4つを拾われ、そのままシュートとなる場面すら発生してしまいます。

このようなことにならないように、自陣のアサリはできるだけ拾いましょう。

まとめ

今回は、現時点で私が考えるガチアサリの勝ち方をご紹介しました。 ガチホコが初登場したときも、ガチヤグラに比べて非常に戦略を求められるルールが来たなぁと思っていましたが、 まさか、それを遥かに上回るガチアサリというルールが登場するとは…。驚きましたが、非常に研究しがいのあるルールだなと感じています。

以上、Splatoon Advent Calendar 2017の23日目の記事でした。

adventar.org

p.s. パブロがガチアサリに適正あることは間違いないですが、ただ使うだけでは勝てないのでご注意を。

甘党が考える、コーヒーと最高に相性が良いお菓子

みなさんこんにちは。さっちんです。

みなさん、コーヒーはお好きでしょうか?インスタント派、缶コーヒー派、スタバ派、自宅で豆挽いて淹れる派など多くの流派があるように、コーヒーを飲む方は多いと思います。かくなる私も、自宅で豆挽いて淹れる派のコーヒー党です。今日は、そんな自宅で豆挽いて淹れる派向けに美味しいお菓子を紹介していきましょう。

コーヒーのお供としてのお菓子

多くの場合、お菓子が主役でそれに合わせてコーヒーが選ばれます。例えば、「コース料理のデザートにケーキを食べるからコーヒーにしようかな…」というのがそれです。しかし、「このコーヒーを飲みたいから、このお菓子を用意しよう。」というコーヒー主役の選び方もあるでしょう。そこで、私が日頃「このコーヒーのお供にはこのお菓子を食べる!」と考えていることをご紹介します。

(※コーヒーはブラックで飲むことを前提としています。)

あっさり酸味があるコーヒを飲む時

あっさり酸味がある豆のコーヒーの場合、甘みが強いお菓子が良いです。

Lotus

まずは、コーヒーのお供で有名なLotusです。

カルディコーヒーファームなどで売っているため比較的手に入れやすく、個別包装されてるのもGood。 硬めのビスケットがホロホロ崩れる感じの食感です。

MOOMLIGHT

次に、森永のMOOMLIGHTです。

森永製菓 ムーンライト14枚×5箱

森永製菓 ムーンライト14枚×5箱

スーパーやコンビニで売ってるので、いつでも手に入ります。 王道のバタークッキーという感じで、甘みが強く、あっさりコーヒーと良く合います。 机の上に常備しておきたいものです。

極細Pocky

最後は、グリコの極細Pockyです。普通のPockyではダメです。

これもスーパーやコンビニで売ってるので、いつでも手に入ります。 普通のPockyがダメと言うのは冗談ですが、極細Pockyのほうが1本あたりが少量なので食べやすく、コーヒーが良く進みます。 また手が汚れないので、PC作業中のコーヒーのお供としても優秀です。

コクあり苦味があるコーヒーを飲む時

コクあり苦味がある豆のコーヒーの場合、甘み控えめのお菓子が良いです。

MARIE

またしても森永のビスケットです。

森永製菓 マリー21枚×5箱

森永製菓 マリー21枚×5箱

こちらはMOONLIGHTに比べて甘さ控え目であるため、そのまま食べると甘党には物足りなく感じます。 しかし!濃いコーヒーを飲んだ後に食べると甘さが際立ち、お口もリセットされるためコーヒーが進み、またビスケットを食べ…と良い感じのループになります。1箱に入っている枚数が多いのも良し。

MAUNALOA

最後はマカダミアナッツの塩味です。

基本的にコーヒーのお供には甘いものを選ぶのですが、このナッツは例外です。 コーヒーに合うしょっぱさを持ったお菓子は珍しいので、一度は食べてみることをオススメします!

まとめ

今日は、コーヒーを主役としたときに、どのようなお菓子を選ぶかをご紹介しました。 コーヒーのお供を真剣に考えることで、コーヒーをより楽しめるようになると思いますので、色々試していきましょう!

以上、8日目の記事でした。 adventar.org

p.s. 普段はポケモンの記事を書いているので、クチート好きな方は是非に~。

かえんほうしゃ - ほのお + みず = ハイドロポンプになるか?

みなさんこんにちは。さっちんです。

ポケモンに関する文章を使ってword2vecをやってみたので、今回はその結果をお見せしたいと思います。 ソースコードと学習データは以下に置いています。 github.com

最近の流行?!、「単語と単語での計算」

タイトルを見て興味を持った方は、word2vecってなんだ???となると思いますので、簡単にご説明します。 最近、AIや人工知能という単語がニュースなどで取り上げられるように、IT業界ではAIや人工知能が非常にホットな話題となっています。 その文脈の中で、文章も人工知能で分析してやるぜ!という試みが流行しており、word2vecはその中の一つの手法です。

word2vecのイメージを具体的にするために、非常に有名な例を挙げたいと思います。 それは…

王様 - 男 + 女 = 女王様

です。

つまり、文章で「王様は男性における地位の名称ですが、王様と同様の意味を持つ女性における地位の名称は何でしょうか?」と表現される質問を計算式で表したものになります。このように、「単語同士で計算ができるようになったら、人工知能に文章を理解させる手助けになるんじゃね?」という発想で生まれた手法です。

ポケモンでword2vecしたい

難しい話はこのくらいにして、本題に移りたいと思います。 単語同士が計算できるとなると、ポケモン好きな皆様におかれましてはポケモン用語でもやってみたいと思うのではないでしょうか? それが今回のタイトルである「かえんほうしゃ - ほのお + みず = ハイドロポンプになるのか?」に帰着するわけです。

そこで今回は、ポケモンWiki*1ポケモン対戦考察まとめWiki*2の記事を学習させてみました。それでは結果を見ていきましょう。

単語自体の計算結果

まずは単語そのものを見ていきましょう。指定した単語と関連の強い単語のトップ10が表示されます。 横にある数値は関連度になります。

さっそく、我らがメガクチートを計算してみましょう。

calc("メガクチート")

  1. バンギラス 0.9744253754615784
  2. テッカグヤ 0.9737641215324402
  3. 一      0.9579521417617798
  4. メガギャラドス 0.9565474987030029
  5. 喰らう     0.9561516046524048
  6. カイリュー   0.9555752277374268
  7. マンムー    0.9530206918716431
  8. 舞       0.9496548175811768
  9. メガハッサム  0.949008584022522
  10. てる      0.9439014792442322

クチート一緒にパーティへ入ることの多いカイリューマンムーがトップ10に入っています。 舞は「つるぎのまい」のことですね。


続いてパーティの名称である雨パを計算しました。

calc("雨パ")

  1. 独自 0.9668172597885132
  2. ペリッパー 0.9622671604156494
  3. 個性 0.9604281783103943
  4. 化す 0.9601962566375732
  5. 充実 0.9588289260864258
  6. 使い 0.9584391117095947
  7. あめふらし 0.9568397998809814
  8. あくタイプ 0.9563978314399719
  9. 多芸 0.9530139565467834
  10. 無類 0.9518377184867859

7世代で雨パで採用されることが多いペリッパーや、雨パに欠かせない特性のあめふらしが入っていますね。


続いてタイプのフェアリーを計算。

calc("フェアリー")

  1. 倍 0.9322121143341064
  2. 一貫性 0.922793984413147
  3. 格闘 0.9219501614570618
  4. ゴースト 0.9165294170379639
  5. 相性補完 0.9136119484901428
  6. ドラゴンタイプ 0.9095576405525208
  7. 地面 0.9079031944274902
  8. 4倍弱点 0.9013127088546753
  9. 4倍 0.8987537622451782
  10. 強い 0.8973758220672607

フェアリーに弱点を突かれる格闘やドラゴンという単語が入っています。 4倍弱点はサザンドラやジャララガン、ズルズキンゴロンダあたりの記事が効いてるのでしょうか?


次は性格のおくびょう。

calc("おくびょう")

  1. ひかえめ 0.9599519371986389
  2. CS 0.9132525324821472
  3. こだわりメガネ 0.9035917520523071
  4. 基 0.8862846493721008
  5. 冷静 0.8780158758163452
  6. 性格 0.8219131231307983
  7. せっかち 0.8143517374992371
  8. 努力値 0.8130760192871094
  9. ハイドロポンプ 0.8049198389053345
  10. ムーンフォース 0.8013639450073242

これは素晴らしいですね。おくびょうと同じように特殊アタッカーに採用されるひかえめ、冷静がランクインしています。 また、努力値の振り方であるCSという単語や持ち物であるこだわりメガネも入っています。


calc("きあいのタスキ")

  1. カムラ 0.9162214398384094
  2. 持ち物 0.8896895051002502
  3. ラム 0.8842946290969849
  4. 蜻蛉返り 0.8831953406333923
  5. クリスタル 0.8821411728858948
  6. 優先 0.8816790580749512
  7. ジュエル 0.8660957217216492
  8. 選択 0.8502988219261169
  9. がんせきふうじ 0.8499913811683655
  10. なげつける 0.8491314649581909

きあいのタスキだと、同じ持ち物であるカムラのみやラムのみ、Zクリスタル、ジュエルが関連の強い単語として挙げられています。 とんぼがえりはタスキ潰しによく使われるからでしょうか?


さて、それでは技を見ていきたいと思います。

calc("じしん")

  1. ストーンエッジ 0.9791466593742371
  2. ぢ 0.9695087671279907
  3. いわなだれ 0.9539787173271179
  4. れいとうパンチ 0.9350066184997559
  5. すてみタックル 0.9336516261100769
  6. かみくだく 0.9321756958961487
  7. アームハンマー 0.9284919500350952
  8. アイアンヘッド 0.9270839095115662
  9. かみなりパンチ 0.9270591139793396
  10. どくづく 0.9257274270057678

じしんを計算すると、物理技ばかりが列挙されました。 また、じしんと同時に採用されやすいストーンエッジいわなだれが上位に入っています。


最後にかえんほうしゃを見たいと思います。

calc("かえんほうしゃ")

  1. あくのはどう 0.9866007566452026
  2. れいとうビーム 0.9813727140426636
  3. りゅうのはどう 0.978251576423645
  4. なみのり 0.9763879776000977
  5. だいもんじ 0.9738233685493469
  6. ラスターカノン 0.9735146760940552
  7. ソーラービーム 0.9731917977333069
  8. きあいだま 0.973129391670227
  9. かみなり 0.9693619012832642
  10. だいちのちから 0.9692765474319458

こちらは完全に特殊技ばかりが並んでいます。これは期待が膨らみますね。

単語と単語の計算結果

では、かえんほうしゃ - ほのお + みず を計算してみましょう。

calc("かえんほうしゃ-ほのお+みず")

  1. 特殊技 0.9034083485603333
  2. はどうだん 0.8909361958503723
  3. サブ 0.8858975172042847
  4. りゅうのはどう 0.8845259547233582
  5. ふぶき 0.8783226013183594
  6. ハイドロポンプ 0.8712683916091919
  7. 電 0.8656661510467529
  8. だいもんじ 0.8648360371589661
  9. 軸 0.8628724813461304
  10. メイン 0.8532931804656982

・・・やりました。かえんほうしゃからほのおタイプを引いてみずタイプを足すと、ちゃんとハイドロポンプになります。 (※それ以外の技が上位に来ているのは気のせいです。) せっかくなので、他の計算もしてみましょう。


calc("ぜったいれいど-氷+地")

  1. 地割れ 0.9815039038658142
  2. とんぼがえり 0.976150631904602
  3. あやしいひかり 0.967402458190918
  4. ちから 0.9479234218597412
  5. ドリル 0.9468713998794556
  6. じこさいせい 0.9343216419219971
  7. 叩き台 0.9340541958808899
  8. あまごい 0.9317256212234497
  9. きゅうけつ 0.9308851361274719
  10. パンチ 0.9303572773933411

これまたすごい結果になりました。ぜったいれいどから氷タイプを引いて地面タイプを足すと、ちゃんと地割れになります。


次は、ポケモンのタイプを引いたり足したりしてみましょう。

calc("リザードン-ほのお+みず")

  1. すべて 0.9639962911605835
  2. 近く 0.9628123641014099
  3. ソルガレオ 0.9590645432472229
  4. ざら 0.9563183784484863
  5. ボスゴドラ 0.949439525604248
  6. 一般 0.9466379284858704
  7. 本来 0.9451665878295898
  8. ケース 0.9429201483726501
  9. 呼称 0.9397175312042236
  10. おろか 0.938876211643219

このように、リザードンからほのおタイプを引いてみずタイプを足すと、ちゃんと御三家のカメックスに…、 ソルガレオになるそうです。


アローラの守り神でみんなのアイドルでもあるカプ・テテフちゃんも、エスパータイプを引いてでんきタイプを足すと、しっかりカプ・コケコに…、

calc("カプ・テテフ-エスパー+でんき")

  1. てる 0.9460397362709045
  2. テッカグヤ 0.9357684850692749
  3. 勝てる 0.9340535402297974
  4. 取れる 0.9280171990394592
  5. ヒードラン 0.9266940951347351
  6. 切る 0.9233332276344299
  7. ボーマンダ 0.9210865497589111
  8. ギルガルド 0.9198833703994751
  9. 処理 0.9168146848678589
  10. 読みで 0.9078798890113831

UBのテッカグヤになるそうです。


最後は気持ちよく終わりましょう。クチートにメガストーンを加えると…

calc("クチート+メガストーン")

  1. 飛ぶ 0.9863591194152832
  2. 違える 0.9835994243621826
  3. 小さい 0.9808191657066345
  4. 上書き 0.9792056083679199
  5. 伴う 0.9779235124588013
  6. 裏 0.9774397015571594
  7. 返す 0.9748541116714478
  8. 見せる 0.9745727777481079
  9. 針 0.9743210077285767
  10. バグ 0.9740380048751831

はい。飛び立つそうです。

計算結果の考察

みなさん、お気づきだとは思いますが、今回の精度はいまいちな結果となってしまいました。 実は上記の結果は、100ケース以上の計算をして、見栄えの良いものを並べたものです。 10まんボルトから電気を引いて炎を足してもかえんほうしゃにはなりませんでした。

今回のケースでは、学習データに難アリという印象です。 Wikiという媒体の性質上、言葉のゆらぎがあり、略語(トリックルームパーティーがトリパとなっている)も多用されて非常にデータ加工が困難でした。 また素直に処理をすると、オボンのみが「お盆」と「のみ」に分割されてしまい、固有名詞も拾えませんでした。 かなり丁寧に言葉のゆらぎを直し、略語を正式な単語に復元し、技や持ち物の名前などの固有名詞が残るように手作業で加工したのですが、 上記のような精度に落ち着きました。

また、データ量も少なく、高精度に学習できなかったとも感じています。 2つのwikiだけではなく、ポケモンに関するまとめサイトもクローリングして、もっと文章を集めたほうが良かったです。

人工知能も、適切なデータを使い、適切な手順を踏まないと賢くならないという良い例になったと思います。

まとめ

今回は、word2vecを使って「かえんほうしゃ - ほのお + みず = ハイドロポンプ」を計算しました。 たくさんの計算をしましたが、上記くらいしか見栄えのいいものがありませんでした。 とは言え、「かえんほうしゃ - ほのお + みず」を計算した結果の中にハイドロポンプを見つけたときは、めちゃめちゃ嬉しかったです。 また、技に関しては精度がよく、物理技と特殊技はしっかり見分けられるようです。 きれいに加工されたもっと大量のデータを利用することで、まだまだ賢くなるなと思いました。

p.s. メガクチート - メガストーン = マグカルゴになるそうです。なんでや…。

クチートの性格の選び方について

みなさんこんにちは。さっちんです。

今回はクチート努力値配分について書いていきたいと思います。

昔とある記事で、「いじっぱり」のS振りと「ようき」のA振りでは、ステータスの実数値に差が出ると見たことがありました。 それまでは「いじっぱり」のクチートばかり育成していたのですが、場合によっては「ようき」もありなんじゃ?と考えるようになり、もやもやするようになりました。

そこで今回は、網羅的にステータスを計算することで、性格を選択する指針にしたいなと考えています。

前提

細かい話になりますが、前提を書いていきます。

  • シングル向け
  • 個体値は6V
  • H252, C0は固定*1
  • 性格は、いじっぱり、ようき、わんぱく、しんちょうの4つ
  • ステータス実数値はメガクチートもの
  • 努力値の一覧は前回の記事で生成したものを利用

sacchin13.hatenablog.com

ステータスの計算結果はGoogleSpreadsheetsにまとめました。 https://docs.google.com/spreadsheets/d/1TX2p3nLwo3bei823fiM3xuiDtgRsu8yAMHPFiIUojVI/edit?usp=sharing

ここからデータを抜粋しつつ、S調整・耐久調整の2つの観点で見ていきます。

Sを調整する場合の性格の選び方

「いじっぱり」と「ようき」をどう選択すればいいか、「S考察」シートから1行を抜き出して見ていきます。

仮想敵実数値 クチートS実数値 S努力値 A努力値 A実数値 実数値合計 S努力値 A努力値 A実数値 実数値合計
77 78 60 196 165 243 4 252 157 235

表の詳しい見方は下記に記載します。*2

すばやさの実数値を78にしたい場合、6列目と10列目の差が「いじっぱり」と「ようき」のステータスの差(243-235=8)になります。 つまり、すばやさの実数値を78にしたい場合は「いじっぱり」を選択したほうが、全体のステータスが高くなるということになります。

それでは「S考察」シートに戻り全体を見ていきます。 結論としては、すばやさ実数値103以上を求める場合は「ようき」が必須となり、それ以外は「いじっぱり」を選択した方が良いということになりました。 80族無振り~84振りに先手を取りたい場合にのみ、「ようき」を選択するようにしましょう。

物理耐久を調整する場合の性格の選び方

「いじっぱり」と「わんぱく」をどう選択すればいいか、「B考察」シートから1行を抜き出して見ていきます。

クチートB実数値 B努力値 A努力値 A実数値 実数値合計 B努力値 A努力値 A実数値 実数値合計
160 116 140 157 317 4 252 157 317

表の見方はすばやさと同じく下記に記載します。*3

ぼうぎょの実数値を160にしたい場合、5列目と9列目の差が「いじっぱり」と「わんぱく」のステータスの差(317-317=0)になります。 この場合は「いじっぱり」と「わんぱく」のどちらを選んでも一緒のステータスになるということになります。

それでは「B考察」シートに戻り全体を見ていきます。 結論としては、B実数値178以上を得るためには「わんぱく」が必須となります。 B実数値165-177では、「わんぱく」のほうが僅かにステータスの合計が高くなります。 B実数値159以下は「いじっぱり」が推奨です。

特殊耐久を調整する場合の性格の選び方

「いじっぱり」と「しんちょう」をどう選択すればいいか、「D考察」シートから1行を抜き出して見ていきます。

クチートD実数値 D努力値 A努力値 A実数値 実数値合計 D努力値 A努力値 A実数値 実数値合計
147 252 4 138 285 148 108 139 286

表の見方は、物理耐久とまったく同じです。

とくしゅぼうぎょの実数値を147にしたい場合、5列目と9列目の差が「いじっぱり」と「しんちょう」のステータスの差(138-139=-1)になります。 この場合は「しんちょう」を選択したほうが、全体のステータスが高くなるということになります。 (※たった1だけですが…)

それでは「D考察」シートに戻り全体を見ていきます。 結論としては、D実数値148以上を得るためには「しんちょう」が必須となります。 D実数値145-148では、「しんちょう」のほうが1だけステータスの合計が高くなります。 D実数値141以下は「いじっぱり」が推奨です。

まとめ

今回は性格の違いでどれだけステータスに差が出るかを検証しました。 検証の結果、「ようき」や「わんぱく」「しんちょう」を選択する基準が明確になりました。 カプ・テテフやカプ・コケコと対面した時の選択肢を増やすため、 最近は耐久に振ることが多いと思いますので、ご参考になれば幸いです。

p.s. かわいさを求めて性格を選ぶときは、「きまぐれ」がいいと思います!

*1:第6世代の構築記事では、ほとんどがHA全振りという状況でした。そのため、H252を基本にS振りや耐久調整などを考えていきます。

*2:仮想敵のすばやさ実数値77(1列目)に対して、クチートが先手を取るためのすばやさ実数値78(2列目)があり、性格が「いじっぱり」の場合に必要な努力値60(3列目)を記載しています。 余った努力値196(4列目)をこうげきに振った場合のこうげき実数値165(5列目)があり、すばやさ実数値とこうげき実数値の合計243(6列目)を記載しています。 続いて、性格が「ようき」の場合の必要な努力値4(7列目)、こうげきに振る努力値252(8列目)、こうげき実数値157(9列目)、すばやさ実数値とこうげき実数値の合計235(10列目)を記載しています。

*3:ぼうぎょ実数値160(1列目)、性格が「いじっぱり」の場合に必要な努力値116(2列目)、こうげきに振る努力値140(3列目)、こうげき実数値157(4列目)、ぼうぎょ実数値とこうげき実数値の合計317(5列目)、性格が「わんぱく」の場合の必要な努力値4(6列目)、こうげきに振る努力値252(7列目)、こうげき実数値157(8列目)、ぼうぎょ実数値とこうげき実数値の合計317(9列目)を記載しています。

努力値の組み合わせを1行コードで生成する

みなさまこんにちは。さっちんです。

最近ハイラルを散策するのに夢中になりすぎて、ポケモンから離れてしまいました。 しかし、2月末にはクチートのメガストーンをちゃんと手に入れ、 さらにシーズン3になったので、ポケモン熱が再び増してきました。

そこで久々にクチートを育成しようと色々調べていたら、こんな記事が。

http://okido117117.hatenadiary.com/entry/2017/03/22/085740okido117117.hatenadiary.com

ふむふむ。と読ませて頂くなかで、こんな言葉を思い出しました。

努力値効率」

例えば「いじっぱり」のAS252振りと「ようき」のAS252振りでは実数値が変わるんだよなぁと、今更ながら考えてしまいました。 しかし、努力値効率についてあまり考えたことがない私にはハードルが高く、 この振り方がベストであると確信が持てませんでした。

そこで、ふと

「確信が持てないなら、努力値の組み合わせ全部でステータスを計算してみればいいじゃないか。」

と思いつきました。

そこで今回は、努力値の組み合わせを生成してみたいと思います。

努力値の仕様

ご存知の方が多いと思いますが、ポケモンのステータスは、 種族値個体値努力値によって決まります。(ポケモン3値とも呼ばれます)。 この中の努力値(Effort Value, 略してev)は以下のような仕様になっています。

  • 仕様
    • HP、攻撃、防御、特殊攻撃、特殊防御、素早さの6種類のステータスに自由に割り振れる
    • 4を振るとステータスが1上がり、以後8振るたびにステータスが1上がる
      • よく、ev = 4 + 8nとなるように振るのが良いと表現される
    • 1つのステータスに割り振れる最大値は252
      • 先程の数式で表現すると、252 = 4 + 8 * 31
    • 全体の最大値は510
      • 先程の数式で表現すると、510 = 4 + 8 * 63 + 2
      • このように必ず2が余るため、最大値は508といっても差し支えない
  • よい例
    • HP=252、攻撃=252、防御=0、特殊攻撃=0、特殊防御=0、素早さ=6
  • 無駄がある例
    • HP=85、攻撃=85、防御=85、特殊攻撃=85、特殊防御=85、素早さ=85

だいたいこんな感じです。

努力値の組み合わせ

上述した数式のnの値を変化させると、あるステータスに振ることができる値が求まります。

n = 0 のとき、 ev = 4 + 8 * 0 = 4
n = 1 のとき、 ev = 4 + 8 * 1 = 12
n = 2 のとき、 ev = 4 + 8 * 2 = 20
…

n = 31 のとき、 ev = 4 + 8 * 31 = 252

全く振らない0を合わせると、あるステータスに振ることができる努力値は以下の33個になります。

0,4,12,20,28,36,44,52,60,68,76,84,92,100,
108,116,124,132,140,148,156,164,172,180,188,
196,204,212,220,228,236,244,252

つまり以下のような組み合わせを生成できるといいのです。

HP 攻撃 防御 特殊攻撃 特殊防御 素早さ 合計
0 0 0 4 252 252 508
0 0 0 12 244 252 508
84 84 84 84 84 92 508
84 84 84 84 92 84 508
252 244 12 0 0 0 508
252 252 4 0 0 0 508

ということで、Kotlinでやってみました。

val ev = mutableListOf<Array<Int>>().also{ result -> (4..252 step 8).toMutableList().apply { add(0) }.let{list -> list.forEach { h -> list.forEach { a -> list.forEach { b -> list.forEach { c -> list.forEach { d -> list.forEach { list.mapTo(result) { arrayOf(h, a, b, c, d, it) } } } } } } } } }

3月1日にリリースされたKotlin 1.1.0に含まれる、alsoを利用しているところがポイントです!

まとめ

今回は、努力値の組み合わせをたったの一行で表現する手法についてまとめました。 全く需要はないと思いますが、著作権はありませんのでご自由にご利用下さい。

p.s. 次回はクチートのステータスを計算するぞー。

【ポケモンSM】ドヒドイデ 定数ダメージ型【シーズン1】

みなさんこんにちは。

ポケモンバンクが解禁されましたね。 メガストーンがないもののクチートも使えるようになったので、メガストーンなしで今どんな感じなのか使ってみたいと思います。

さて、今回はシーズン1において私が使っていたドヒドイデの育成論について紹介したいと思います。

やればできる子 ドヒドイデ

紹介

  • 特性:さいせいりょく
  • 性格:ずぶとい
  • 持ち物:たべのこし
  • 努力値:H252 B252 D4
  • 実数値:157-x-204-x-163-x
  • 技構成:どくどく/まとわりつく/トーチカ/ワイドガード

有利な相手に繰り出し、「まとわりつく」と「どくどく」で相手のパーティーの体力を削る型です。 後ろに控えている抜き性能の高いポケモンをより有利に立ち回れるようにします。

立ち回り

  • 有利な相手にドヒドイデを受け出しする
  • こちらは「まとわりつく」を選択する
  • 相手が居座った場合、交代できない相手を定数ダメージで倒し切る
  • 相手が交代した場合
    • はがねタイプ、どくタイプやタイプ一致で弱点をついてくる相手の場合、素直に他のポケモンに交代する
    • 相手が「どくどく」の通る「じしん」持ちのポケモンの場合、「どくどく」を入れる
      • 攻撃特化のいじっぱりガブリアスの「じしん」であっても耐える(ドヒドイデちゃんさすが!)
        • 次のターン「トーチカ」で様子を見る
          • 相手が「じしん」を連打しているなら「ワイドガード」を選択する
          • 「じしん」以外の技で押してくる場合、素直に交代する
  • 「さいせいりょく」を最大限に活かして、相手のパーティのHPを削っていく

定数ダメージの目安

以下が定数ダメージの目安となります。 最もターン数を稼いだ場合に相手のポケモンを倒すことができます。 また「まとわりつく」自体のダメージも加わります。

ターン しめつける状態 どく状態 累計
1 まとわりつくを使ったターン 1/8 0 1/8
2 どくどくを使ったターン 1/8 1/16 5/16
3 トーチカを使ったターン 1/8 2/16 9/16
4 ワイドガードを使ったターン 1/8 3/16 14/16
5 ドヒドイデを戻したターン 0 4/16 18/16

シーズン1においての使用感

  • 相手のパーティに「テッカグヤ」「ギルガルド」「カプ・コケコ」がいるとほぼ必ず選出されました
    • こちら側はそれらに強いポケモンを選出することで対応しています
  • 対戦中ドヒドイデに対して、上記のポケモンに加えて「ガブリアス」「メガギャラドス」「マンムー」がよく交代出しされました
    • 上述の「じしん」を連打して来ることが多いため、ワイドガードを用いて対応します
  • 「くろいヘドロ」ではなく「たべのこし」を採用した理由
    • ナマコブシと対面して「みずびたし」をされたトラウマによるものです。ご自身のパーティと相談して下さい
  • 「じしん」連打と同様に積みの起点にされることも多いです
    • こればっかりは宿命ですね。「トーチカ」のタイミングをうまく見極めることで対応していました。
  • ドヒドイデちゃんかわいい!

まとめ

シーズン1はドヒドイデを主軸にパーティを組もう!と考えて育てた型です。 ただ、使用率の高いポケモンが軒並みドヒドイデが刺さらないポケモンだったので、はっきりいってシーズン1では辛かったです。 私のレートが低いため活躍しましたが、高レベルになると厳しいかもしれません。

一方で、シーズン1を戦っていく中でドヒドイデをかなり好きになりました。 そのためシーズン2以降も積極的に使っていきたいと考えています。

以上、ドヒドイデ 定数ダメージ型の紹介でした。

p.s. ひとでなし型もがんばります!