形容詞
Property(性質)
形容詞的な働きをするテキスト。
BABAなどの名詞 と
IS で接続されることにより、名詞にルールを追加する。
色つき背景の上に透明なテキストで書かれている(名詞と反対)
なお、このページが扱うのは BABA IS
YOU タイプの後置型の形容詞のみ。
形容詞の英単語であっても他のタイプの単語は
文頭修飾語 のページにまとめてある。
以下の説明において
固体…STOP,PUSH,PULL属性によって付与される、その物体に重なれなくなる性質
進入禁止…STOP,PULL,STOPにつっかえたPUSH属性によって付与される、そのマスに侵入できなくなる性質
とする
また、特に記述がない限り、FLOAT, PHANTOM, SAFE, STILL, LOCKED, BROKENの効果は考えないものとする。
移動に関するもの
YOU(あなた)
- YOUである物体は(PCのデフォルト設定では)矢印キーとWASDキーで上下左右に動かせる
- YOU物体が画面内に1つも存在しないと、BGMが変化する。ここで待機できる場合、全てのキーが待機ボタン扱いとなる。
- 待機した結果、YOU物体が再び出現すれば操作を再開できる
- (これはYOUの性質ではないが)待機してステージの状況が変わる場合、待機できる。待機できない場合、キー入力時のボッという音がならない。
- ただし、BELTなど待機することでアニメーションが変化する物体は、待機できなくてもキー入力によりアニメーションが変化する
MOVE(動く)
- 向いている方向に1マス移動する
- STOPなどの進入禁止マスにぶつかると跳ね返って移動する
- この効果は重複する
- 詳細な処理は、CHILLの詳細を参照
バグ?
+
|
... |
- Aが2つ以上のMOVE効果を受けているとき、下記条件では反転しない
- 以下の例では、2*「A IS MOVE」「ROCK IS PUSH」「WALL IS STOP」、Aは初め右向きとする
- 例. 「壁 A 壁」という配置のとき
- 例. 「壁 無 A 壁」という配置のとき
- 例. 「A 岩 無 壁」という配置のとき
- 例. 「A 無 岩 壁」という配置のとき
|
SHIFT(移す)
- 自身と重なっている物体を、自身の向いている方向に1マス移動させる
- この効果は重複する
詳細
+
|
... |
- 「A IS SHIFT」のとき、Aは1ターン内に次の2つの処理を行う
- 通常移動時効果:Aは、自身と重なっている物体を、自身と同じ向きにし、その方向に1マス移動させる
- 特殊移動時効果:Aは、自身と重なっている物体を、自身と同じ向きにする(移動はしない)
- 前者の処理は、内部IDによらず同時に行われる
- 後者の処理は、内部ID順で行われる
- この処理のタイミングは、大雑把には次の通りである。詳細は「仕様・バグ関連」を参照
- YOU→MOVE→前者SHIFT→ルール解析→変化処理→TELE→後者SHIFT→FALL
|
TELE(テレポート)
- TELE状態のAに重なったAでない物体を、別のTELE状態のAへ瞬間移動させる
詳細
+
|
... |
- TELE状態のAが1つだけなら効果はなく、3つ以上あるなら移動先がランダムになる
- A AND B IS TELEの場合、A同士とB同士で瞬間移動を行い、AB間で瞬間移動を行うことはない
- A AND B IS TELEのような状況で、1つのAと1つのBが重なっているとき、どちらのTELEが先に発動するかはルールが解釈される順番によって決まる
バグ?
+
|
... |
- TELEオブジェクトAが特定の条件を満たす場合、その上のオブジェクトはTELEしない
- 特定の条件とは、TELE直前のタイミングで、TELE移動・FALL移動・TELE以下の効果によって変更されるルール解釈を無視した場合に、A自身がSINK状態であることに伴う破壊以外の処理によってAが破壊される、という条件
- 製作者は、このバグを修正するにはTELEを1から作り直さねばならないため修正する予定はない、と述べている
- 下記の例では、本来TELEは破壊処理より前に実行されるが、それが実行されないことが確認できる
- 例1. 「ICE IS TELE AND WEAK」の場合
- このとき、iceに重なると、TELEされずその場のiceが破壊される
- 例2. 「BABA IS YOU AND TELE」「SKULL IS DEFEAT」で、2体のbabaがいる場合
- このとき、一方のbabaがskullに重なると、skullに重なった側のbabaが破壊される
- 例3. 例2の条件下で、babaがiceに重なるタイミングでTELE効果によって「BABA IS SAFE」が完成した場合
- このとき、一方のbabaがskullに重なってもTELE効果は発動されず、その後babaが破壊されることもない
- 例4. 例2の条件下に加えて「BABA IS SAFE」が完成しており、babaがiceに重なるタイミングでTELE効果によって「BABA IS SAFE」が破壊される場合
- このとき、一方のbabaがskullに重なると、TELE効果が発動し、その後他方のbabaが破壊される
|
|
SWAP(入れ替える)
- SWAP物体との移動は入れ替え移動となり、進入禁止の影響を受けない
詳細
+
|
... |
- SWAPによる移動はSWAP移動となり、以下の特徴を持つ
- 移動した/された物体と位置が入れ替わる
- STOP, PUSH, PULLの影響を受けずに移動する
- TELE, FALL等の特殊な移動では発動しない
- SWAP物体のAが非SWAP物体の(複数の)Bsに移動するとき、AとBsはSWAP移動となる
- SWAP物体のAに非SWAP物体のBが移動するとき、AだけがSWAP移動となる(Aのマスに存在する他のオブジェクトはSWAP移動しない)
- SWAP属性は自身の固体/PUSH属性を無効化する
|
FALL(落ちる)
詳細
+
|
... |
- FALL移動では、PUSH物体を押さず、進入禁止として扱う
- FALL移動では、PULL物体を引かない(もちろん進入禁止として扱う)
- FALL移動では、SWAPの効果が固体属性無効化のみとなり、SWAP移動の効果が発生しない
- ただし、STILLによって固体属性無効化の効果を無効化できる
- FALL移動時の移動時破壊効果に伴う移動結果は、下記のように扱う
- FALL状態のAに対し、OPEN/SHUT, EAT, WEAKの対象Bが落下途中にあるBのあるマスへ通常の移動によって移動した(ただしSWAPは上記効果のみに制限して考える)場合を考える
- AがBを破壊する(重なってからでもよい)場合、Bを破壊して下まで落下する
- AがBを破壊せず、Bを押さずに重なる場合、Bを通り抜けて下まで落下する
- AがBを破壊せず、Bを押してしまうか、Bのあるマスに移動できない場合、Bの上で止まる
例.
- FALL移動では、1マス毎に条件の更新を、落下しきった際はルールの再解析を行い、再解析後に新たにFALL可能な物体が存在する場合、再度FALL処理を行う
- ただし、この処理は1度までであり、2回目のFALL移動により新たにFALL物体が登場しても、その物体はこのターンFALL移動しない
- 200回を越えてルールが解析された場合、特殊演出が発生する
- FALL移動は内部ID順に行われ、また全てのFALL物体がFALLできなくなるまで繰り返し行われる
- もし固体の物体が重なっている場合、それらを同時にFALLにさせて分離することができる
- エディタでは向き付きFALLが存在する
- 反対方向のFALLが共に適用されている場合、適用数の多い方向にFALL移動する
- 反対方向のFALLが共に同数適用されている場合、どちらの方向にもFALL移動しない
- FALL方向の打消し処理後、DOWN, RIGHT, UP, LEFTの優先度でFALL移動を行う
- この処理は、適用方向にFALL移動できなくなるまで、繰り返し行われる
- 例.(以下、KeyとDoorはFALLの落下途中にあるとする)
- KEY IS FALL、KEY NEAR DOOR IS OPEN、DOOR IS SHUT
- KEY IS FALL、KEY NEAR DOOR IS WORD、[Key] IS OPEN、DOOR IS SHUT
- KEY IS FALL、KEY NEAR DOOR IS POWER、POWERED KEY IS OPEN、DOOR IS SHUT
- KEY IS FALL、KEY IS OPEN、DOOR NEAR KEY IS SHUT
|
STOP(止まる)
- その物体は固体となり、STOP物体と同じマスに移動して進入できなくなる
- 以下の形容詞によって、その効果を失う
+
|
... |
- STOP物体がPUSHでもあるとき(PUSH効果が優先される)
- STOP物体がSWAPでもあるとき(SWAP効果が優先される)
- OPEN/SHUTで、一方が他方(STOP)に移動し、その効果が発動するとき
- EATで、捕食者が被食者(STOP)に移動し、その効果が発動するとき
- 他の物体がWEAKを持つSTOP物体に移動し、その効果が発動するとき
|
PUSH(押す)
- その物体は固体となり、PUSH物体と同じマスに移動して進入できなくなる
- PUSH物体と同じマスに他の物体が移動して進入した場合、PUSH物体は進入してきた物体が動いた方向と同じ方向に移動する
- 複数のPUSH物体が進行方向の一直線上に並んでいる場合、同時に押すことができる
- PUSH物体が押せない場合はSTOP物体として振る舞う
詳細
+
|
... |
- PUSH物体を押したときの移動タイミングは、押した物体が移動するタイミングと同じである
- PUSHとSTOPが適用される場合、PUSHとして振る舞う
- PUSHとSWAPが適用される場合、SWAPとして振る舞う
- PUSHとWEAKを同時に適用した場合
- PUSH物体が押せる場合はPUSHとして、それが移動できない場合はWEAKとして振る舞う
|
PULL(引っ張る)
- その物体は固体となり、PULL物体と同じマスに移動して進入できなくなる
- 他の物体がPULL物体と隣接した状態で隣接面の反対方向に移動したとき、追随して移動する
- 複数のPULL物体が進行方向の反対方向に一直線上に並んでいる場合、同時に引くことができる
詳細&バグ?
+
|
... |
- PULL物体を引いたときの移動タイミングは、引いた物体が移動するタイミングと同じである
- PULL物体の移動先が固体のとき
- そのPULL物体が連続したPULL物体の先頭である場合、それがたとえSWAP属性を持っていたとしても移動しない(WEAK効果を発揮しない)
- そのPULL物体が連続したPULL物体の2つ目以降である場合、移動先が固体かどうかによらず移動する
- 1ターンに同方向に複数マス移動する場合(形容詞が異なってもよい)、連続したPULL物体の3つ目以降の物体は、1マスしか移動しない
- PULL物体を挟むようにして移動し、かつ移動時の破壊が起こりそうな状況である場合、正常な挙動をしない
|
本編未使用語句
+
|
... |
SELECT(選ぶ)
- PATH設定されているオブジェクト(通常はLINEやLEVEL)の上を移動キーによって移動する
- レベルメタデータの存在するレベルの上で決定キーを押すことで、そのレベルに侵入する
- 固体のオブジェクトの上でも通ることができる
- この移動が他のオブジェクトに影響を及ぼすことはない
- ちなみにPATH設定は、各マスのこのオブジェクトに設定する、という形をとっている
- そのため同じオブジェクトでPATHの設定/非設定を混在させたり、複数のオブジェクトに設定をしたりすることが可能
- やろうと思えば、レベルをクリアするとルールが表れる、ということも可能
YOU2
- 操作設定で設定されている2番目の移動キーによって移動する
- このとき、YOU物体は2番目の移動キーでは移動できなくなる
- 他の処理はYOUと同様
- レベルが自動で進行する場合、YOUと同時に動かせる
- そうでない場合、たとえ1番目と2番目の移動キーを同一に設定しても、同時に移動はしない
AUTO (自動で)
- 向いている方向に1マス移動する
- MOVEと違い、進入禁止にぶつかっても跳ね返らずに移動しようとする
- その性質上、進行方向が壁の場合、WEAK物体は破壊される
- 詳細な処理は、CHILLの詳細を参照
CHILL(怖気づく)
- 方向をランダムに決めた後、MOVE移動を1マス行う(跳ね返りが存在する)
- 上記性質上、ルールを重ねても斜めには移動しない
詳細
+
|
... |
MOVE, AUTO, CHILLを同時に適用したときは、以下のように処理される
- これらは同一移動タイミングで処理され、1つの「移動方向」と1つの「移動量」しか持たない
- 「移動方向」は、CHILLに依存する。CHILLが適用されていなければ、自身と同じ向きである
- 「移動量」は、適用されている合計の個数である
- 「反転可否」は、MOVE > AUTO > CHILLの優先度で決定される。すなわち
- MOVEが適用されているとき、またはAUTOが適用されていないときは壁で跳ね返る
- MOVEが適用されておらず、AUTOが適用されているときは、壁で跳ね返らない
LOCKEDと共に使用した場合は不思議な挙動をする。詳細はLOCKEDを参照
|
NUDGE UP/DOWN/LEFT/RIGHT(小突く ↑/↓/←/→)
- 向きを変えずにその方向に1マス移動する
- 異なる方向を同時に適用した場合、RIGHT, UP, LEFT, DOWNの優先度で移動する
REVERSE (反転する)
詳細
+
|
... |
- その物体のYOUs, MOVE, SHIFT, AUTO, CHILL, NUDGEs, FEAR, FALLsによる移動を、向きはそのままに反転させる
- この効果は重複し、ちょうどNOTと似たような挙動をとる
- 偶数個適用されている場合は通常と同様、奇数個適用されている場合は反転移動となる
- PUSH, PULL, SWAPによって引き起こされた移動に対しては作用しない
- LOCKEDsは、反転後の移動に対して判定を行う
例.
+
|
... |
- BABA IS MOVE, BABA FACING UP IS REVERSE, BABAは上向き
- BABAは上を向いたまま、壁にぶつかるまで下に移動する
- 壁にぶつかると、それ以上移動せずに上と下を交互に向く
これは以下の挙動に基づくと推測される
- BABAが下向きで壁に隣接しているとき
- MOVE移動の反転処理を行う
- babaが上を向き、反転済みフラグがtrueになる
- REVERSE文が成立し、前進方向が逆転する
- MOVE移動の前進処理を行う
- babaは上を向いたまま下に移動しようとするが、下方向は壁でかつ反転済みフラグがtrueのため、反転もせずその場に留まる
- BABAが上向きで壁に隣接しているとき
- REVERSE文が成立し、前進方向が逆転する
- MOVE移動の反転処理を行う
- babaは反転して下を向き、反転済みフラグがtrueになる
- REVERSE文が未成立となり、前進方向が正常に戻る
- MOVE移動の前進処理を行う
- babaは下を向いており下に移動しようとするが、下方向は壁でかつ反転済みフラグがtrueのため、反転もせずその場に留まる
|
|
STILL(静止した)
- その物体のBACK以外の全ての移動を無効化する
- 向きは変化する
- その性質上、PUSHやPULLはSTOPとして振る舞う
- SWAPの進入禁止無効化を無効化する
- これによって移動を禁止した場合、MOVEの反転効果やWEAK効果は発生しない
LOCKED UP/DOWN/LEFT/RIGHT(制限された ↑/↓/←/→)
- STILLを特定の方向に制限した形容詞
- STILLと異なり、SWAP, TELE, SELECTの移動は無効化しないが、SWAPの進入禁止無効化は無効化する
バグ?
+
|
... |
重ね掛けしたCHILLは、LOCKEDに対して反直感的な挙動をする
CHILLの処理は、以下のようになっている。
- CHILLの個数だけ、次の処理を繰り返す
- 「移動方向」をランダムに決める
- 「移動方向」と「LOCKED方向」が異なる場合、次の処理を行う
という処理を行う
よって、移動量が増加せずとも、移動方向が更新される場合があるため、LOCKED方向に移動する場合が存在する
例.
+
|
... |
「KEKE IS CHILL AND CHILL AND CHILL AND LOCKEDRIGHT」のとき
- kekeが始め右を向いているとき
- 上、左、下のいずれかの方向に1~3マス、右の方向に1~2マス移動する
- kekeが始め右以外を向いているとき
- 上、左、下のいずれかの方向に2~3マス、右の方向に0~2マス移動する
|
固体のSWAPは、LOCKEDに対して反直感的な挙動をする
- 「A IS LOCKEDRIGHT AND SWAP AND (PUSH or PULL)」のとき
- 左方向からAに侵入することができない
- 右・上・下方向からAに侵入することができる
- 右方向からAに侵入すると、Aは右方向にSWAP移動する
LOCKEDのレベル全体はLOCKEDのオブジェクトと一部異なる挙動をとる
- PUSH, PULLによる移動を防がない
- YOU, YOU2に対して、向きの変化も防ぐ
- レベルがLOCKED方向を向いているとき、全ての方向のNUDGEとFALLが防がれる
|
BACK(戻る)
- A IS BACKが完成した次のターンから、そのターンを基準に、Aの位置、向き、変化を逆再生する
詳細
+
|
... |
- 参照する過去について
- Aが既に存在するとき、n-1ターン目にA IS BACKを完成させると、n+kターン目にn-kターン目の過去を参照する(k≧0)
- 「A IS BACK」成立中にAが変化・生成されたとき、そのターンをn-1ターン目として、n+kターン目にn-kターン目の過去を参照する(k≧0)
- 上記特性により、参照する過去のターンはオブジェクト依存である
- A IS BACKを完成させたターンにはBACKの効果は発生しない
以下、BACKで参照されるターンがkターン目であり、AがBACK状態であるとする。
- 位置の逆再生
- k-1ターン目とkターン目のAの位置が異なるとき、Aはkターン目の位置にワープする
- これによる移動は、移動に付随する効果を起こさない
- これによる移動は、STILL, LOCKEDsによって無効化されない
- 向きの逆再生
- k-1ターン目とkターン目のAの向きが異なるとき、Aはkターン目の向きに変化する
- 変化の逆再生
- k-1ターン目からkターン目にかけて「B IS A」等で新しくAに変化する物体が存在するとき、そのAは元の物体に戻る
- この処理は、「A IS A」や「A IS NOT B」の効果を受けない
- 生成の逆再生
- k-1ターン目からkターン目にかけて「B HAS/MAKE A」等で新しくAが生成されたとき、そのAは消える
- この処理は、「A IS NOT EMPTY」の効果を受けない
- エフェクトの発生
- BACK可能なターンが残っている(k≧0)場合、?エフェクトをだす
例
+
|
... |
1ターン目に座標(1,1)、2から7ターン目に座標(1,2)、8ターン目に座標(1,3)の履歴を持つkekeに対し、9ターン目に「KEKE IS BACK」を成立させた。
また、5ターン目に「KEKE IS DOWN」を成立させ、kekeの向きを右向きから下向きに変化させた。
- 9ターン目はBACK効果は発生しない
- 10ターン目は10ターン目に対しBACK効果が発動する
- このターンにkekeを動かすと、そのターンのBACK効果が発動し、元の位置に戻る
- 11ターン目は、9ターン目に対しBACK効果が発動する
- このターンkekeは動いていないため「位置の逆再生」が発生しない
- そのためkekeを自由に動かすことができ、動かしても座標(1,3)にワープしない
- 12ターン目は、8ターン目に対しBACK効果が発動する
- このターンにkekeを動かしても、移動後に座標(1,3)にワープする
- 13ターンから17ターン目は、7ターンから3ターン目に対しBACK効果が発動する
- このターンの間kekeは動いていないため「位置の逆再生」が発生しない
- そのためkekeを自由に動かすことができ、この6ターンの間kekeは座標(1,2)にワープしない
- 15ターン目のみkekeの向きが変化しているため「向きの逆再生」が発生する
- これは、位置に影響は与えず、向きのみを右向きにする
|
何故このような不可思議な挙動になるか
+
|
... |
BACKはUNDOリストを元に作られている。
このUNDOリストは、負荷軽減のため、今までのターンの全てのオブジェクトの履歴を保存してはいない。
大雑把に言って、次の4パターンで保存している。(レベル等例外あり)
- 位置が変化したオブジェクトに対して、組(種類:位置,変化前の位置:(x,y))
- 向きが変化したオブジェクトに対して、組(種類:向き,変化前の向き:dir)
- 新しく変化したオブジェクトに対して、組(種類:変化,変化前の物体:xxxx)
- 新しく生成されたオブジェクトに対して、(種類:生成)
そのため、ターン前後で変化のないオブジェクトはそもそもUNDOリストに記録されていないため、BACK効果が発動しない
(そのようなオブジェクトに対してはUNDOではなくBACKの処理として前ターンの位置等を参照してワープさせるようにすればいいと思うがなされていない
他のバグを誘発してしまうのかもしれない)
|
|
PHANTOM
- 「A IS PHANTOM」でAが移動するとき、移動方向の相手との処理を無効化する
- Aは進入禁止マスやレベル境界に侵入できる
- Aは移動方向の相手を移動させない
- Aは移動方向の相手と移動時の破壊が行われない
詳細
+
|
... |
- AはPUSH状態の物体を押さないが、PULL状態の物体を引くことができる
- AがSWAP状態の物体に侵入するとき、SWAP移動は行われる
- AがSTOP, PUSH, PULL状態であるとき、それらの効果は発揮される
- AがSWAP状態であるとき、移動時の位置入れ替え効果は発揮されないが、自身の固体属性を無効化する効果は発揮される
- Aが移動するとき、OPEN/SHUT, EATによる移動時の破壊は起こらない
|
HOLD(抱える)
- 没単語、エディターで使用不可
- ヘルプからネタバレ単語表示をONにしても表示されず、拡張機能で名前を「text_hold」にしても効果が出ない。
- プログラムはmuseum内のluaファイルに存在するためレベルパックでなら実装できるだろうが、UNDO絡みでバグがあるため改修が必要。
- HOLD状態のオブジェクトに重なっている全てのオブジェクトは、HOLD状態が移動しないときSTILL状態となる
- HOLD状態のオブジェクトに重なっている全てのオブジェクトは、HOLD状態が移動するとき共に移動する
例.
「ICE IS TELE」「HAND IS HOLD」のとき、holdに重なっている一方のiceは、holdがTELEされると共にiceも移動し、他方のiceに重なる
|
破壊に関するもの
WIN(勝つ)
- YOU物体がWIN物体と重なると、レベルをクリアする
- YOUかつWINである物体が存在する場合、レベルをクリアする
DEFEAT(負ける)
- YOU物体がDEFEAT物体と重なると、YOU側だけ破壊される
- YOUかつDEFEATである物体は破壊される
- DEFEAT処理はWIN処理の前に行われる
SINK(沈む)
- SINK物体に1つ以上の物体が重なると、そのマスに重なっている全ての物体が破壊される
HOT(温かい)・MELT(溶ける)
- HOT物体とMELT物体が重なると、MELT側だけ破壊される
- HOTかつMELTである物体は破壊される
OPEN(開ける)・SHUT(閉じる)
- OPEN物体とSHUT物体が重なろうとすると、共に破壊される
- OPEN物体とSHUT物体が重なると、共に破壊される
- OPENかつSHUTである物体は破壊される
詳細
+
|
... |
A IS OPEN AND STOP, B IS SHUT AND STOPとする
- AとBが重なろうとする場合
- AがBに向かって移動すると、移動する前に破壊処理が行われ、AはBの位置に移動する
- 以下の場合は、移動することができず、破壊処理も発生しない
- A,BのFLOAT状態が異なる
- A,B以外の物体によって移動先のマスに進入禁止効果がある
- A,Bの両方がSAFE状態
- AとBが複数重なっている場合、どちらかがなくなるまで繰り返し行われる
- この処理はOPENとSHUTを入れ替えても成り立つ
- AとBが重なっている場合
- A IS OPEN、EMPTY IS SHUT、A HAS Bの場合
- 重なったAsが無に移動すると、全てのAが破壊され、1つのBを生成する
|
WEAK(弱い)
- 自身の固体属性を無効化する
- 他の物体と重なる、もしくは進入禁止マスに向かって移動すると破壊される
詳細
+
|
... |
- MOVEによる反転では、WEAK効果は発生しない
- PULLの固体による分離では、WEAK効果は発生しない
- PUSHかつWEAK状態の物体は
- 別のマスに押せる場合は、WEAK効果は発生せずに押せる
- STOP物体に押し当てた場合、FLOAT状態に関わらず破壊される
- STOPかつWEAK状態の物体は
- FLOAT状態が等しい場合、自身への進入を許すが、移動時には破壊されない
- FLOAT状態が異なる場合、移動できず、破壊されない
|
FLOAT(浮く)
- FLOAT状態の異なる物体同士は、同じマスにあっても重なったとみなされない
- FLOAT状態の等しい物体同士は、同じ高さにあると見なされ影響する
- OPEN/SHUT, EATは、移動時の処理もFLOATの影響を受ける
- STOP, PUSH, PULL, SWAPは、FLOATの影響を受けない
- ON, LONELY等の前置詞や文頭修飾語の判定は、FLOATの影響を受けない
- 1つのルールの中にFLOAT状態の異なるテキストが存在しても、ルールの解釈に影響を与えない
本編未使用語句
+
|
... |
BOOM(ドーン(爆発音))
- この形容詞を受けている物体は破壊される
- その際、この形容詞がn個重ね掛けされているとき、BOOM物体からx座標とy座標の差が共にn-1以下の正方形領域内の(FLOATやSAFEでない)全ての物体を破壊する
- 言い換えれば、自身を中心とする、一辺(2n-1)マスの正方形領域である
SAFE(安全である)
- 物体が破壊される動作が起きた場合でも破壊されなくなる
詳細
+
|
... |
- A IS SINKで、AとBが重なるとき
- AだけがSAFE状態のとき、SINK効果は発生し、Aが残る
- BだけがSAFE状態のとき、SINK効果は発生し、Bが残る
- 共にSAFE状態のとき、SINK効果は発生しない
- 共にSAFE状態でさらに別の物体Cが重なるとき、SINK効果は発生し、AとBが残る
- A IS OPEN, B IS SHUTのとき
- 一方がSAFE状態のとき、SAFEでない方が一方的に消える
- 両方がSAFE状態のとき、お互いへの移動はOPEN/SHUTがないものとして振る舞う
- A IS WEAKのとき
- AがSAFE状態のとき、重なったときの処理はWEAKがないものとして振る舞う
- 移動時の処理は特殊
- PUSH処理、PUSHできずにつっかえる処理は残る
- PULLやSTOP、PUSH AND STILLによる進入禁止の処理は消える
- A IS BOOMのとき
- AがSAFE状態のとき、毎ターン爆発し続ける
- SINKと違い、そのマスにある全ての物体がSAFEであっても、BOOM効果は発生する(全て残る)
- A EAT Bのとき
- BがSAFE状態のとき、A EAT Bがないものとして振る舞う
- MELTやDEFEATのとき
- DONEやBONUSに対して
- この効果で生き残っても、それはA HAS Aで生き残った場合とは異なる
|
|
エフェクト・色・向き
BEST(最高)
- 光るエフェクトを出す。実はWINよりも光っている
- 光り方がWINと紛らわしいが意味は無い
SLEEP(眠る)
- 静止する。一部の物体には特殊グラフィックが用意されている
- ベルトのようにアニメーションが存在する物体は、そのアニメーションを止める
- YOU, MOVE, AUTO, CHILL, NUDGE, FEAR、FOLLOWの向き変化と移動効果を無効化する
RED(赤い)・BLUE(青い)
- オブジェクトの色を変える
- 赤は通常KEKEの色と同じ
UP(↑)・DOWN(↓)・LEFT(←)・RIGHT(→)
詳細
+
|
... |
- このルールを適用したまま移動すると、外見上向きを変えずに移動しているように見えるが、内部的には移動直後からこのルールの適用タイミングまでは向きが変わっている
- このルールを複数適用すると、ルール数が最も多い方向を向く
- ルール数が最も多い方向が複数ある場合、Aの右手、後方、左手、正面を順に調べ、最初に合致した方向を向く
- この仕様上、全方向を適用すると、毎ターン90°時計回りに回転する(TURN RIGHTと同じ処理)
|
本編未使用語句
+
|
... |
TURN RIGHT/LEFT(回転する ←/→)
- 今向いている方向から90°右/左を向く
- この効果は重複する / 打ち消し合う
SAD(泣く)・WONDER(考え始める)・PET(ペット)・PARTY(パーティ)
- BEST同様、エフェクトを出す。ただそれだけ
- SAD:涙が飛び散る
- WONDER:?マークが出る
- PET:物体を撫でる手が出る
- PARTY:紙吹雪が散る
(RED), ORANGE, YELLOW, LIME, GREEN, CYAN, (BLUE), PURPLE, PINK, ROSY, BLACK, GRAY, SILVER, WHITE, BLOWN
- RED, BLUE同様、オブジェクトの色を変える
- 紫は通常MEの色と同じ
- ローズは通常GHOSTの色と同じ
- 複数の色を指定すると、上記の順番で周期的に変化する
- RED, BLUE以外は本編では未使用
|
その他
MORE(もっと多く)
- 毎ターン、自身と上下左右に隣接するマスに、自身と同じ物体を生成する
- 固体(PUSH, PULL, STOP)の物体が存在しているマスには生成しない
- 固体の物体がSWAP, WEAK等で固体属性無効化効果を受けていても生成されない
- 既に自身が存在しているマスには生成しない
- 移動しているわけではないので、生成時にPUSH物体を押すことはできない
WORD(単語)
- 物体をルール上で名詞として使用できるようになる
- 先に「(物体を示す名詞) IS WORD」で定義する必要があるため、物体 IS WORDのみでは機能しない
バグ?
+
|
... |
- 「X IS WORD」の条件に向きが関わるとき、正しく機能しない
- 例として、FACINGを用いる場合、GROUP/POWEREDに対応する物体がFACING条件を持つ場合がある
- WORD物体が連鎖してWORD状態になるとき、正しく機能しない
- 例として、「BABA AND keke IS WORD」「KEKE AND me IS WORD」「ME AND baba IS WORD」のような構成のときである
|
本編未使用語句
+
|
... |
POWER(電力を送る)
- レベル内にPOWER状態のものが存在するとき、文頭条件POWEREDが真になる
- POWER2、POWER3は、それぞれレベル内にPOWER2、POWER3状態のものが存在するとき、文頭条件POWERED2、POWERED3が真になる
BROKEN(壊れている)
A IS BROKEN
- Aが主語となっているBROKENとMIMIC以外の全てのルールを無効化する
- Aが補語となっている下記のルールを無効化する
- X EAT A
- X FEAR A
- X FOLLOW A
REVERT(元に戻す)
- その物体を初期状態(生成時の物体)に戻す
- この効果は重複しない
- この効果は変化処理「A IS B」「A WRITE B」より優先される
詳細
+
|
... |
A IS REVERT
- Aは、自身の内部IDを参照し、内部IDに固有に割り振られた「REVERT先:B」に変化する
- この変化は、AがB自身であるとき、または「A IS A」で無効化される
- 「A IS A」で無効化した場合、「A IS NOT A」で再有効化される
- この変化は、「A IS NOT B」では無効化されない
- この効果は重複しない
- 「A IS B AND REVERT」のようにIS変化とREVERT変化が同時に適用された場合
- REVERT変化が発生する場合は、IS変化は行われない
- REVERT変化が発生しない場合は、IS変化を行う
- 上記のIS変化には、「A IS NOT A」による消失処理を含む
- 正確には、毎ターン各オブジェクトについて「変化リスト」が構成されるのだが、REVERTは常にこのリストの先頭に代入され、変化リストを参照する際に、REVERT処理が見つかった時点でループを終了する処理をしている。このため、上記のようなIS変化の無効化やREVERTの重複しない仕様が発生する。
- 「REVERT先」の設定
- Aがステージ開始時に存在する場合、自身のREVERT先にAを設定する
- 「X HAS A」や「X MAKE A」によって生成されたAは、自身のREVERT先にAを設定する
- 「A IS MORE」によって生成されたAは、自身のREVERT先にAを設定する
- 「EMPTY IS A」によって生成されたAは、自身のREVERT先に無を設定する
- 「REVERT先」の引継ぎ
- Aが「A IS B AND C」や「A IS ALL」等によって別の物体に変化しても、REVERT先はAと同一である
- Aが「A IS REVERT」や「A IS BACK」等によって別の物体に変化しても、REVERT先はAと同一である
以下、A1, B1のREVERT先をB2とし、A1はB2と異なる種類の物体、B1はB2と同じ種類の物体とする
- 例. 「A IS C AND REVERT AND REVERT」
- A1にREVERT処理が発生し、A1は1つのB2に変化する
- 例. 「B IS C AND C AND REVERT」
- B1にはREVERT処理が発生せず、B1は2つのCに変化する
- 例. 「B IS REVERT」、B1=テキストの"BABA"、B2=テキストの"KEKE"
- この場合異なる種類の物体と解析され、B1はB2に変化する
|
詳細(v433dでの仕様、現在は修正済み)
+
|
... |
結論
- 怪しい処理の挙動を大雑把に述べると
- 多重変換してできるオブジェクトの一方は、REVERTが適用されると、自身が「多重変換元のオブジェクト」でないとき、「多重変換元の確認対象オブジェクト」に変化する
- ここでいう「多重変換元の確認対象オブジェクト」とは、多重変換元のオブジェクトが「自身が『◯◯』でないとき『××』に戻る」というREVERT処理を行うときの、「◯◯」にあたるオブジェクト
- 以下、その詳細な処理を述べる
内部IDの割り振られ方
- 「A IS B」のように1:1の変化では、内部IDは引き継がれる
- 「A IS B AND C」のように複数に変化する処理では、1つが元の内部IDを引継ぎ、残りは新しく割り振られる
- 新たに生成された物体に対しては、内部IDは新しく割り振られる
- 「HAS」・「MAKE」・「IS ALL」・「IS MORE」・無の変化等が該当する
- 「A IS B AND REVERT」のようなIS変化とREVERT変化を同時に適用すると、REVERTを優先して処理する
- もしREVERTが無効だった場合、AからBへは見た目上1:1の変化だが、内部IDは新しく割り振られる
- UNDOでも内部IDは変わるが、revert情報は問題なく復元される(恐らく)
revert情報について
- 全ての物体は、内部ID:idに応じたrevert情報、rootとparentを持つ
- ここでのroot・parentには、オブジェクト名が入る
- 一度設定されたrevert情報が、後で変わることはない(内部IDが変われば変わる場合はある)
- 内部的にはそれぞれname、fromという名で保持されているが、オブジェクト名自体を指す場合との混同を恐れ、名称を変更した
revert情報の割り振られ方
- レベル開始時に存在するか、HAS、MAKE、MOREで生成された物体は、revert情報rootとparentに、共に自分自身を設定する
- 無から変化・生成した物体は、revert情報rootとparentに、共に無を設定する
- 「A(通常名詞) IS ALL」により生成された各物体は、Aのrevert情報を引き継ぐ
- 「TEXT/LEVEL IS ALL」により生成された各物体は、revert情報rootとparentに、共に自分自身を設定する
- 「A IS B」の変化でかつ内部IDを引き継がない場合は次のように設定する
- id.root = oldid.parent
- id.parent = A
- ただし、Aの内部IDをoldid、Bの内部IDをidとする
処理
- 内部ID:idの物体Xは、自身がid.parentでないとき、REVERTにより、id.rootに変化する
- idの物体Xは、自身がid.parentでなく、id.rootであるとき、同じ物体にREVERTする。すなわち「X IS Y」や「X IS NOT X」の変化・消失処理を無効化する。
- idの物体Xは、自身がid.parentでなく、「X IS NOT id.root」によってid.rootへの変化を禁止されているとき、REVERTしようとして失敗する。すなわち「X IS Y」や「X IS NOT X」の変化・消失処理を無効化する。
- これは、プログラムがREVERT処理を実行すると決めつけ変化処理を切り捨てた後に「X IS NOT id.root」のチェックで変化するかどうかの確認をしているため。「X IS NOT REVERT」や「X IS X」の場合は、そもそもREVERT実行ルートに入らないので、変化・消失処理の無効化は行われない。
例1.
IS変換で、A→B→C→D/E→F/FとIS変化させた後に
「F IS REVERT」「A IS C」「C IS B AND REVERT」「A AND B IS F」「F IS REVERT」
と順にルールを適用すると
F/F→A/A→C/C→A/B→F/F→A/C
と変遷する。
内部IDが変化している側のオブジェクト、すなわち
A→B→C→E→F→A→C→B→F→C
と変遷しているオブジェクトのrevert情報を追うと
(root, parent)
- A:(A, A) "A IS B"
- B:(A, A) "B IS C"
- C:(A, A) "C IS D AND E" 内部IDが新しく割り振られ、revert情報が変化
- E:(A, C) "E IS F"
- F:(A, C) "F IS REVERT" F≠Cのため、REVERTが適用され、Aに変化する
- A:(A, C) "A IS C"
- C:(A, C) "C IS B AND REVERT" C=Cのため、REVERTが適用されず、Bに変化。このとき内部IDが新しく割り振られ、revert情報が変化
- B:(C, C) "B IS F"
- F:(C, C) "F IS REVERT" F≠Cのため、REVERTが適用されて、FはCに変化
- C:(C, C)
例2.
- A:(A, A) "A IS B AND C"
- C:(A, C) "C IS D AND E"
- E:(C, E) "E IS C"
- C:(C, E) "C IS REVERT AND NOT C"
- C:(C, E)
最後の処理では、C≠Eのため、REVERTが適用されて、CはCに変化する
REVERT処理が行われるとき、他のIS変化処理は無効化されるため、C IS NOT Cが無効化される
|
|
特殊
ネタバレ注意
+
|
... |
HIDE(隠す)
- 見えなくなる
- TEXTがHIDE物体になっている場合、ポーズ画面でも定義が見えなくなる
- TEXT ON X IS HIDEなどで一部の文章だけが見える場合、ルール画面でもそのルールのみ見える
- 完全にルールがない場合はポーズ画面では何も表示されないが、HIDEで見えなくなっている場合はRULES:と表示されている
- レベルアイコンとSELECT物体はHIDEの影響を受けない
- PATH設定されたオブジェクトがHIDE状態の場合、SELECT物体がその上に移動することはできない
BONUS(ボーナス)
- BONUS物体がYOU物体と重なるとBONUS物体が破壊され、ボーナスを仮取得する
- BONUS物体がYOU物体でもあるとき、その物体は破壊され、ボーナスを仮取得する
- ボーナスを仮取得した状態でレベルをクリアすると、ボーナスを正式に取得する
- ボーナスを仮取得した状態でレベルをクリア以外の手段で脱出すると、仮取得したボーナスは削除される
- ボーナスを仮取得した状態でボーナスを仮取得したターンをUNDOすると、仮取得したボーナスは削除される
- セーブデータにORBのアイコンが表示される(カスタムレベル)
END(終了)
- ゲームエンド
- カスタムレベルパックでは、同時にクリア扱い
- セーブデータにBABAのアイコンが表示される(カスタムレベル/カスタムレベルパック)
DONE(完了・用済み)
- 物体を削除する
- ALL IS DONEで裏END
- カスタムレベルパックでは、同時にクリア扱い
- セーブデータにFLAGのアイコンが表示される(カスタムレベル/カスタムレベルパック)
本編未使用語句
+
|
... |
3D
- 80年代の3DダンジョンRPG風視点になる
- 3D単体でYOUと似た効果を持つ
- 上キーで前進、左右キーで方向転換
- 複数のオブジェクトが3D属性を持っている場合、下キーで操作対象を変更できる。同時に操作できるのは1キャラのみ
- オブジェクトのZレベルによって、3Dビュー上での表示が変化する
- 0~10:床として平面状に表示される
- 11~20:壁として立体的に表示される
- 21~30:非3D時と同じく、画面上に常に表示される。3Dビュー上では非表示になるが干渉はできる
- 「YOU」と「3D」を同時に適用すると、不思議な挙動をとる
- YOUの向き変化→3Dの向き変化(回転)→YOU/3Dによる移動(最大1マス)、という挙動にも見えるが、他にもおかしい点が多々ある
- この関係上、左/右/下キーは全て下に移動する(左を向いて左回転し前進、右を向いて右回転し前進、下を向いて前進しキャラ変更?)
|
|
最終更新:2024年06月11日 18:35