Pokémon Auto Chessのボットを作る
満員にならなかったPokémon Auto Chessのロビーには、ボットが補充される——開発者ではなく、プレイヤーがクライアント内蔵の Bot Builderというツールを使って作った、AI操作の対戦相手だ。驚くほどよく組まれたAIボードと対戦して、誰が作ったのか 気になったことがあるなら、それはこういうことだ。誰かがステージごとに設計し、投稿し、ボランティアの審査担当者が 承認したことで、あらゆるプレイヤーがマッチングされうるプールに加わったのだ。
このページでは、実際に承認されるボットの作り方——ツールそのものの使い方と、明らかに作られた筋書きではなく 現実的な人間のプレイに見えるために投稿が従うべきルールを説明する。
Bot Builderとは実際には何か
これは別サイトではなく、ゲームクライアント自体に組み込まれている——メインメニューから開くことができる。 ボットが到達する各ステージの盤面を、実際の対戦中と全く同じようにユニット・配置・アイテムを選んで組み立てていく。 ツールは現在の相乗効果、盤面全体の難易度/レートの推定値、そして現在のステージに対してこれまでに使った アイテムパーツの数など、作成中の内容をリアルタイムで表示してくれる。
作業はこまめにファイルへ保存すること——自動保存はなく、未完成のボットは投稿できない。満足できたら、 送信ボタンを押すとボットはDiscordの#bot-creationチャンネルに送られ、Bot Adminが チェックして、承認(実際にプレイヤーがマッチングされるプールに加わる)するか、修正点とともに差し戻すかを決める。
他のすべての元になっているたった一つのルール
ボットは、実際のプレイヤーが本当に成し遂げられたはずのことを表していなければならない。近道としての 金の使用はなく、そのステージで実際の対戦では作れないはずのアイテムやユニットもなく、プレイヤーに 適用されるゲームのルールを破る動作もない。以下の個別のガイドラインはすべて、この同じルールを ツールの各部分に当てはめたものにすぎない。
ボットが却下される理由
- アイテムパーツは禁止。完成したアイテムだけを装備させること。ゲームのレシピは バージョンごとに変わるため、完成品ではなくパーツを持ったボットは、レシピが変わった瞬間に壊れてしまう。
- 実際のアバターと名前を設定すること。デフォルトのメタモンアイコンは問答無用で 却下される——チームの中から(できればエースか、主要な相乗効果をカバーするポケモンを)選び、 プレイヤーが一目で何と戦うのか分かるようにする。既に承認済みのボットを更新する必要がある場合は、 同じアバターと名前を維持すること。どちらかを変えると、上書きではなく全く新しいボットとして 投稿されてしまう。
- レートを誠実に保つこと。承認の目安は初心者(850未満)、簡単(850〜999)、 普通(1000〜1149)、難しい(1150〜1299)、超難(1300〜1449)、達人(1450以上)だが、実際には 1100〜1200を大きく超えるボットが承認されることはまれで、1300以上はほぼ確実に却下される。 そこまで強いチームはもはや現実的な一戦ではなく、最高のシナリオを継ぎ合わせたものになってしまうからだ。
- 盤面が実際に得たものだけを使うこと。シャイニーアイテムとシャイニーチャームの 入手には、複数ステージにわたって実際にベビーの相乗効果を積み重ねるラインを使う必要があり、 人工物の相乗効果のツールやノーマルの相乗効果のスカーフ系統も同じ理屈に従う——盤面自身の 相乗効果が実際の対戦でそれらを解放していたはずの場合以外は装備させないこと。特別なカルーセルや イベントに紐づくものすべてに同じ論理が当てはまる。毎回の対戦で保証されていないものには、 ボットも頼ることができない。
- ステージ間で一貫性を保つこと。ユニットのシャイニー状態、感情アイコン、 装備アイテムは、ステージ間で恣意的に変わるべきではない——実際の対戦では、理由がある場合 (実際にアイテムが渡された、実際にユニットが売却された)にのみ変化する。アイテムを別の ユニットへ移す必要がある場合、実際の対戦と同じく、元の持ち主を先に売却した場合にのみ それは合法となる。
- 地方限定性を尊重すること。地方フォルム(アローラ、ガラル、ヒスイ、パルデア)は、 基本フォルムと同じ地方の出現プールに現れることはできない——ポケモンを配置する前に、 そのステージがどの地方に属するか確認すること。
表計算ではなくプレイヤーとして考える
このツールは金を追跡しないため、現実性のチェックは完全に自分の責任になる。このステージで、 この盤面のレベル、アイテム数、進化の進み具合は本当に無理なく賄えるものか?互いにトレードオフの 関係にあるのはレベルとロール(再抽選)だ——超レベル上げをした ボットは進化したユニットが少なくなり、2・3進化段階への速い進化を狙って激しくロールするボットは レベルで遅れる。自分自身の対戦を現実性のチェックとして使うこと。2つ星(3枚)は、良いショップ確率 であれば数ターンで現実的だが、3つ星(9枚)はそれよりもかなり時間がかかる。
| プレイスタイル | ステージ10 | ステージ13〜15 | ステージ17〜20 | ステージ22〜25 | ステージ27以降 |
|---|---|---|---|---|---|
| 標準的なペース 均等なレベル上げ、控えめなロール | レベル5 | レベル6〜7 | レベル7〜8 | レベル8〜9 | レベル9、経済はおそらく枯渇 |
| ロール重視 速い・高い進化を狙う | レベル5 | レベル6 | レベル7 | レベル8、枯渇している可能性 | 到達できればレベル9 |
これは厳密にコピーするテンプレートではなく、常識的なチェックとして扱うこと——激しいロールで 3つ星のエースを作った盤面は、進化を犠牲にして超レベル上げをした盤面に比べ、明らかにレベルで 遅れているように見えるはずだ。「経済崩壊」(レベルや進化を押し上げるためにほぼ0まで金を 使い切ること)は実際の対戦ではごく普通で想定内のことだ。すべてのステージで最大レベルかつ 完全進化、さらに完璧なアイテムまで揃っているボットは、強いのではなく不可能に見えてしまう。
覚えておくと良い細かい点がいくつかある。すべてを進化させる必要はない——意図的に2つ星で 止めておくユニットは、実際の対戦ではごく普通の結果だ。アイテムも理論上最適である必要はない。 実際の対戦では、欲しかったものではなく次善の選択肢で終わることがよくある。
助けを求める・投稿する
クライアント内の送信ボタンを押すと、ボットは審査のために直接#bot-creationへ送られる。 質問や、作成中のボットへのフィードバック、ボット作成全般についての議論は#bot-builders で行われている。どちらのチャンネルも公式Discordサーバーにある。