![]()
![]()
とは、2019年3月に発売されたオブジェクト指向型倉庫番パズルゲームである。
概要 IS 説明
| Baba Is You (バーバイズユー) |
|
| 基本情報 | |
|---|---|
| ジャンル | パズルゲーム |
| 対応機種 | PC(Win/Mac/Linux) Nintendo Switch iOS Android |
| 開発/発売 | Hempuli |
| 配信日 | PC …2019年3月13日 Switch …2019年12月16日 iOS/Android …2021年6月23日 |
| 価格 | PC …1520円/$14.99 Switch …1500円/$15.00 iOS …860円/$6.99 Android …770円/$6.99 |
| その他 | |
| ゲームソフトテンプレート | |
プレイヤーであるあなた
は主に四足歩行の可愛い生き物BABA
を操り、数多のテキスト・ルールに翻弄されつつ、数多のオブジェクトの性質と位置を操ることで道を切り開き、勝利
を掴む。
このゲームの特徴はステージ上に置かれた「テキスト」でパズルのルールが支配されている点であろう。例えばこの記事の冒頭に挙げた、ゲーム初起動時に出てくるチュートリアルステージには下記のルールが存在する。
このルールは「テキスト」を倉庫番の要領で押し、その並びを崩す・
の前後の「テキスト」を入れ替えることで無効化または変更することが出来る。例えば…
といった具合である。
2017年のノルディックゲームジャムでプロトタイプが作られた本ゲームはその斬新さが評価されて見事優勝を飾り、2018年~2019年にかけて数々の賞を受賞もしくはノミネート、さらにNintendo Switch・iOS・Androidへの移植も行われた本作は2019年で最も優れたパズルゲームの一つと言っても過言ではないだろう。
一方で人によっては序盤から数十分~数時間は考え込むであろう緻密かつ難解な問題が200問以上も押し寄せてくる、非常に歯ごたえのある内容となっている。パズルゲームが得意な人・発想の柔軟さに自信のある人には間違いなくオススメの逸品だが、頭の固い人・常識に囚われがちな人はかなりの覚悟が必要であろう。[1]
余談となるがBaba Is Youはチューリング完全であり、レベルエディタによってインベーダーゲーム・1次元セルオートマトン・ライフゲーム等が再現されている。
「属性」と「型」の説明 IS 種類の説明
テキスト属性
文字
- キャラ名型:「
」や「
」と言った文字はこれ。役割を持つことができる。 - 概念型:存在自体がネタバレになりうるヤバい文字。
- 指示型:最上級指示「
」と接続指示「
」「
」等がこれにあたる - 役割型:四角で囲まれたテキスト全般(
![YOU]()
![WIN]()
![STOP]()
)のこと。目的だったり、動作だったり、いろいろ
オブジェクト属性
キャラ
とテキスト属性絶対ルール
基本ルール
まず「![]()
![]()
」と定義されている間は
に対応するオブジェクトを上下左右に動かすことができる。普段のゲームで言う自キャラ操作である。「![]()
![]()
」と定義されている間は
に対応するオブジェクトと
に対応するオブジェクトが重なることでステージクリアになるが、重なることができないものにWIN指定をしても触れられないので意味がない。[2]
キャラ名型、指示型、そして役割型はすべてテキストで構成されており、動いているものが必ず押すことができる。「自分で押すこと」も「動いているものが動かすこと」も可能。倉庫番と少し違うのは「横に並んだテキストで構成されたもの」を押すとまとめて動く点。ただし遮るオブジェクトを通り抜けることができないので、ほとんどのステージでは決められた指示を動かして組み替えることはできなくなっている。
が、逆に言うと「動かして組み替えられる指示」がゴールへのカギということである。それは指示の為に動かす必要があるもの、オブジェクトの性質を利用して打ち消さないといけないもの、どかさないといけないもの、あえてオブジェクトを押すために使うもの、いろいろあるがどう活用するかはステージによって変わる。
キャラ名:キャラ説明
登場オブジェクトの説明
(
):だいたい主人公 しかしステージ上においてはひとつのオブジェクトに過ぎない。
(
):だいたい相棒 しかしステージ上においては指示で気ままに動き回ってることもある。
(
):だいたいゴール しかしゴールとしての役割を奪われるとただの旗である。
(
):だいたい押せる しかし押せる指示が無くなると上に乗っかられるだけの背景と化す。
(
):だいたいカベ しかし通行を遮る指示がないとただの背景と化す。
(
):だいたいおじゃま しかしおじゃま要素の指示をどかされると途端に無力になる。
この「だいたい」という表現に違和感を覚えた人も多かろう。ステージ上においてテキストの指示がないものはすべて背景である、というオブジェクト属性の絶対ルールがある。それがBABA IS YOU。
指示型の使い方
パズルのルールの説明
:すべての指示の基本
は「キャラ名型」と「役割型」の間に入ることで効力を発揮する文字。例えば「![]()
![]()
」ならあなたはBABA
です、ということでBABA
を上下左右に自在に動かせる。
ちなみに「
」の効果範囲は"上下"と"左右"の2方向。次のように1つの「
」で2つの指示ができる。「キャラ名型」と「役割型」の順番が逆だと効果を発揮しない。
:役割を複数に担わせる または 複数の役割を担わせる
は「キャラ名型」と「キャラ名型」の間に置くことによってその後の「役割型」の対象を二つにする効果がある。例えば「![]()
![]()
![]()
![]()
」ならBABA
とKEKE
を同時に操作することが可能。
また、
は「役割型」と「役割型」の間に入ることによってその手前の「キャラ名型」に複数の役割を持たせることができる。「![]()
![]()
![]()
![]()
」ならあなたはBABA
であり、熱いものに触れると消えてしまいます、という意味になる。
ただし、使い方によっては役立たずになる(後述)。
:役割を打ち消す または 対象以外のすべてを指定する
には2つの使い方がある。「キャラ名型」「
」「役割型」の「
と役割型の間に入れる」のが一つ目の使い方。例えば「![]()
![]()
![]()
」とすると壁は遮る効果を失う。しかしそもそもの「![]()
![]()
」の並びを崩してしまえば効果を失う。ではどういう時にこの
が使われるのだろうか?
このゲームには「『~でない』は『~である』より優先される」という原則がある。例えば「![]()
![]()
」と「![]()
![]()
![]()
」が同時に存在しているなら、
という性質を否定する後者が優先され、BABA
を操作できなくなる。「![]()
![]()
![]()
」という形のルールが最初から存在しており安易な解き方が封じられているステージは少なくない。
のもう一つの使い方としては、「キャラ名型」「
」「役割型」の「キャラ名型の手前に持っていく」使い方。「![]()
![]()
![]()
」とするとなんとBABA
以外のすべてを操作することができる。意味としては「BABA
以外のすべて」があなたです、ということである。
以下ネタバレ注意。
↓
↓
↓
↓
↓
↓
キャラ名型の前に
を付けると主語が変わることに気づいただろうか。「![]()
![]()
![]()
![]()
」の主語はあくまでも「BABA
以外のすべて」であるので、主語がBABA
である「![]()
![]()
」には干渉しない。
また、
が2つ連続すると前の
が後ろの
を打ち消し、結果としてそれらの
を読み飛ばしたものと同じルールになる。「![]()
![]()
![]()
![]()
」は「BABA
は『あなたではない』ではない」ということで「![]()
![]()
」と同等のルールになる。
:オブジェクト型の書き換え または オブジェクト型の絶対指定
にはもう一つ面白い効果がある。「![]()
![]()
」と並べるとKEKE
がBABA
になる。
KEKE
がBABA
になる。大事なことなので二回言いました。
また予め「![]()
![]()
」と並べられているときに「![]()
![]()
」と並べても岩
は岩
です、と既に指定されているため岩
は旗
に変化しないという特徴がある。この場合は![]()
![]()
の指示を崩す必要がある。「![]()
![]()
![]()
」みたいなわけのわからないものを作ってしまうと…!
そして非常にややこしいのだが「![]()
![]()
![]()
![]()
」と指定してしまうとあなたはBABA
です、同時にBABA
は壁
ですという命令が成立してしまいBABA
が壁
となってしまう。この場合BABA
がステージから消えてしまうので操作続行不能となる。
:消滅したオブジェクトが指定したオブジェクトに変化する
「キャラ名型」と「キャラ名型」の間に
を置くと、前者が消滅した後に後者のオブジェクトが出てくるという指示になる。例えば「![]()
![]()
」かつ「![]()
![]()
」だと箱
にぶつかった後、鍵
が出てくる。
これを応用して「![]()
![]()
」かつ「![]()
![]()
」とすると箱
から箱
が出てきて実質消滅しない物質が出来上がる。また「![]()
![]()
」「![]()
![]()
![]()
![]()
」で箱
が壊れるとBABA
とKEKE
が出てくる、のような複数出現指定も可能。
以下ネタバレ注意。
↓
↓
↓
↓
↓
↓
↓
↓
↓
↓
↓
↓
↓
↓
、
:その場のオブジェクトの有無で指示の許可を切り替える
は「~の上にある」を意味し、あるオブジェクトがあるオブジェクトを重なっているときのみという条件を付けることが可能。「![]()
![]()
![]()
![]()
」とするとBABA
が溶岩
と重なっているときのみ熱くなる特性を持たせられる。
対して、
はあるオブジェクト以外何も重なってない時のみ指示の許可が発生する。「![]()
![]()
![]()
」ならBABA
が何かに重なっていないときのみ浮く特性を持つようになる。
、
:オブジェクトとの位置関係で指示の許可を切り替える
この指示の注意点は「![]()
![]()
」の場合
の方が主語になる点である。
に当たる部分はあくまでそのオブジェクトとの位置関係であるという意味で、それに変化は起きない。取り扱いはともかく、動かして指示を完成させるときには用心しよう。
でも同様。
はあるオブジェクトがあるオブジェクトの近くにあるとき指示が有効になる、という接続指示。「![]()
![]()
」で「![]()
![]()
![]()
![]()
」だとKEKE
がBABA
の近くにある限りKEKE
はあなたです、となる。この時前者の指示がない(BABA
があなたでない)とKEKE
がBABA
の近くから離れてしまったときに操作続行不能になる。
は指定したオブジェクトの向きが関係しており、「![]()
![]()
![]()
![]()
」だとKEKE
の向いている目の前に壁
がある限りは遮る特性を持ちます、となる。
:どんどんオブジェクトを生成する
の場合は「持っている」なのでオブジェクトを一度消滅させる必要があったが、この
はその必要がなくどんどんあふれ出てくる。「![]()
![]()
」かつ「![]()
![]()
」は移動するたびに
がどんどん増える。
役割型の使い方
役割型リファレンス
、
:指示を受けたオブジェクトは押される、引っ張られる
指示を得たオブジェクトはテキスト型のように押される動きをする。
指示を得た場合は逆に引っ張られるような動きをする。
は
と同じように指示を受けたオブジェクトが複数並んでいるとまとめて引っ張られるようになる。
この指示を受けていると「あなた(
)」の指示を受けている物体とは重ならない。前述したとおり、テキスト型は無条件で
指示を得ている。
:遮り特性を持つ
の指示があると「あなた(
)」「
、
指示」「
指示」の3通りのオブジェクトの動きを遮るようになる。ただし指示に「
」も追加されていると「
」指示に逆らえない。また「
、
指示」を自分も受けている場合はその指示に従う。
:指示を受けたオブジェクトはあなたを打ち負かす
特性を持ったオブジェクトは「あなた(
)」にのみ作用し、指示が入っているオブジェクトが重なったら一方的に消滅させる。特性を持った方は消えない。逆に言うと「
、
指示」「
指示」のオブジェクトは重なることができる。
:オブジェクトが重なると重なった物ごと消える
特性を持ったオブジェクトは「あなた(
)」「
、
指示」「
指示」のどれでも重なった瞬間に指示を受けたオブジェクトごと消し飛ぶ。
、
:SHUT指示を受けたものがOPEN指示のものと重なると一緒に消える
「![]()
![]()
」で「![]()
![]()
」が一般的な使い方。「![]()
![]()
」と「![]()
![]()
」が同時指定されると揃った瞬間に扉
が消える。また
自体は遮り特性を持っているわけではありません。
、
:MELT指示を受けたものがHOT指示のものと重なると消される
:1マスずつ動く
の指示があるとあなたの移動、WAIT操作などで指示を受けたオブジェクトが一歩前進する。方向転換には
での向き調整などが必要になる。
:浮き特性を持つ
この指示があると通常の「あなた(
)」「
指示」オブジェクトに対しては浮いて重ならなくなる。影響が出てくる指示は「
」「
」などなど。ただし「
、
指示」は効く。
その他
他にもまあ、いろいろある。それがBABA IS YOU。
概念型
世界の構成要素
このタイプの並びを制御することはステージ全体に影響を及ぼすことと同義である。
以下重大なネタバレ注意。
↓
↓
↓
↓
↓
↓
↓
↓
↓
↓
↓
↓
↓
↓
:その対象はテキスト属性のすべて
テキスト属性の王、
。その力はキャラ名型、概念型、指示型、役割型のすべてに役割を持たせることができる恐ろしい力を持っている。そしてそれは当然ながら、
そのものも影響を受けている。
"![TEXT]()
役割型"の例
「![]()
![]()
」でテキスト属性が全部浮くようになる。この時も押すことは可能なのでその指示の解除もできる。「![]()
![]()
」とするとテキスト属性のものがすべてあなたとして動かせるようになる。
"キャラ名型 ![IS]()
"の例
「![]()
![]()
」とすると只今ステージ上にいるKEKE
が「
」に代わってしまう。逆に「![]()
![]()
」とするとテキスト属性全部KEKE
に変わって「![]()
![]()
」の指示まで崩れて操作続行不能になる。
:それ即ちオブジェクトの存在しない空間
理解がとてつもなく難しい概念、
は言うなれば空虚(
)のこと。何もないところからキャラを沸かせることもできれば、無と帰すこともできる恐ろしい文字である。
"![EMPTY]()
役割型"の例
「![]()
![]()
」にすると空虚な何か(
)を動かすことができるのだが挙動を理解することができない。「![]()
![]()
」だと一応空虚(
)からは阻まれて進めなくなる。
"![EMPTY]()
キャラ名型"の例
「![]()
![]()
」と並べると空虚(
)全部が星マーク
で埋まり、「![]()
![]()
」と並べると逆に星マーク
は無(
)へと消える。前者は「![]()
![]()
」と絡んでいると空虚(
)からどんどん星
が沸いてくる。「![]()
![]()
」でどうなるかは言うまでもない。
:その対象はオブジェクト属性のすべて
オブジェクトのすべてを制御する者、それが
。テキスト属性の王「
」と役割は似通っているが対象はBABA自身
やKEKE自身
などのオブジェクト属性のみである。よって指示を並べても
そのものに変化が現れることは無いし、指示によって「![]()
![]()
」を遠隔で崩すこともめったにない。
"![ALL]()
役割型"の例
「![]()
![]()
」とするとオブジェクト型すべてがあなたになる。対象外はもちろんテキスト型と空虚なので通行の妨げになる要素は比較的少ない。「![]()
![]()
」とか指示されているとその指示を崩さない限り
が何かのオブジェクトにぶつかっただけで操作続行不能になる恐れがある点は注意しよう。テキストとか空虚とかが
に指定されている限りはセーフである。
"![ALL]()
キャラ名型"の例
「![]()
![]()
」ならもちろんオブジェクトがもれなく全部BABA
となる。では「![]()
![]()
」だとどうなるかというと、BABA
のある地点に「ステージ上にある全部のオブジェクト」が置かれる。応用で「![]()
![]()
」とすると空虚(
)がオブジェクトまみれになる。逆は? 説明するまでもない。
:その対象は「ステージそのもの」
この文字に影響を与えるのはなんとステージ自体である。今まではステージの中にある「テキスト属性」「空虚」「オブジェクト属性」と取り扱い注意程度だったのだがこの文字はマジでヤバい。ステージそのものに役割を与えるということ、そしてステージそのものをオブジェクト属性化してしまうということがどういうことなのか、この項で確認してほしい。
"![LEVEL]()
役割型"の例
まず「![]()
![]()
」と指定されていると
を一歩動かすごとに画面が一つずつ下にズレる。「![]()
![]()
」は揃えた瞬間にテキスト属性とオブジェクト属性が全部ぶっ壊れる。「![]()
」だったら当然揃えた瞬間にステージクリア。
いかに滅茶苦茶な概念を動かしていることがおわかりいただけただろうか。
また、位置関係を見ている「
」「
」「
」等との併用だと位置関係を見ている対象がステージの外になってしまう。
"![LEVEL]()
キャラ名"の例
"![]()
![]()
"とするとステージのアイコンが鍵
になり、"![]()
![]()
"とするとステージのアイコンが扉
になる。では"![]()
![]()
"とすると当然アイコンはBABA
になるのだが、ワールドマップ画面に着目してほしい。定義されているのは「![]()
![]()
」で「![]()
![]()
」である。
"![]()
![]()
"なら当然ステージのアイコンはKEKE
になり、"![]()
![]()
"ならもちろんステージのアイコンは旗
になる。
ここまで説明された「あなた」が試してみたいことは恐らく「BABA
と化したステージアイコン」が「旗
と化したステージアイコン」に触れるとどうなるか、であろう…やってみるといい。
また、逆の「![]()
![]()
」とかでも面白いことが起きる。「扉
がステージアイコンというオブジェクトになる」のだ。ステージアイコンのオブジェクトに用意された役割とは…?
:オブジェクト属性がテキスト属性の役割を持つことができる
テキストのBABAという文字(
)とオブジェクトとしてのBABA(
)は本来別物であるが、
で指定されたテキストに対応するオブジェクトは、そのオブジェクトが対応するテキストの文字としても機能するようになる。
例えば「![]()
![]()
」が成立している時に「![]()
![]()
」とすると、後者の指示が「![]()
![]()
」とみなされBABA(
)が浮遊する。
例外としてテキスト属性の王「
」やステージの概念そのものである「
」はこの文字に反応しない(むしろすると困る)が、
に対応するあるオブジェクトは反応する。
「あなた」の指示が無くてもできること IS トラブルシューティング
仮にあなたが「![]()
![]()
」の指示を崩してしまって操作続行不能になっても心配ご無用。このゲームでは貴方が許されている操作は他にもある。
- WAIT操作:
のオブジェクトを一歩前進させることができる。
の状況は変化しない - UNDO操作:やっちまった!と思ったらこの操作で一手ずつ戻れる。可能な限りどこまでも
- RESTART操作:ステージ最初からやり直せる。考えがこんがらがった時はこれ
- PAUSE操作:ポーズメニューを表示できる。今あるルールの確認やマップ画面、タイトル画面に即行ける
何より、考えすぎて頭が疲れたら解けるパズルも解けません。休憩はこまめに取り、しばらく別のことをしているとひらめくかも。
パズルの解き方のコツ IS ややネタバレ
以下ネタバレ注意。
↓
↓
↓
↓
↓
↓
↓
↓
関連動画 IS 実況動画
関連リンク IS 外部リンク
関連項目 IS 関連記事
脚注
- *Steamでの通常クリア実績(≠完全クリア)の取得率はSwitch版が配信された2019年12月時点で7.3%、iOS・Android版が配信された2021年6月23日時点でも7.9%。アクション要素が全くない純粋なパズルゲームであることを考えると、かなりの高難度ゲームと言えるだろう。
- *ここでは便宜上「A」「B」を任意のキャラ名型または概念型を表すものとする。
- 46
- 0pt


