<?xml version="1.0" encoding="UTF-8" ?><rdf:RDF 
  xmlns="http://purl.org/rss/1.0/"
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:atom="http://www.w3.org/2005/Atom"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xml:lang="ja">
  <channel rdf:about="http://w.atwiki.jp/teravit_commando/">
    <title>テラビット~みんなで作るサンドボックスゲーム~非公式wiki</title>
    <link>http://w.atwiki.jp/teravit_commando/</link>
    <atom:link href="https://w.atwiki.jp/teravit_commando/rss10.xml" rel="self" type="application/rss+xml" />
    <atom:link rel="hub" href="https://pubsubhubbub.appspot.com" />
    <description>テラビット~みんなで作るサンドボックスゲーム~非公式wiki</description>

    <dc:language>ja</dc:language>
    <dc:date>2026-04-24T16:38:54+09:00</dc:date>
    <utime>1777016334</utime>

    <items>
      <rdf:Seq>
                <rdf:li rdf:resource="https://w.atwiki.jp/teravit_commando/pages/25.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/teravit_commando/pages/24.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/teravit_commando/pages/23.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/teravit_commando/pages/22.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/teravit_commando/pages/21.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/teravit_commando/pages/20.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/teravit_commando/pages/19.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/teravit_commando/pages/18.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/teravit_commando/pages/16.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/teravit_commando/pages/17.html" />
              </rdf:Seq>
    </items>
	
		
    
  </channel>
    <item rdf:about="https://w.atwiki.jp/teravit_commando/pages/25.html">
    <title>マクロを作ってみよう</title>
    <link>https://w.atwiki.jp/teravit_commando/pages/25.html</link>
    <description>
      **マクロって？
複数の動作をあらかじめ入力しておき、必要に応じて呼び出すことができるようにしたプログラムを、マクロと呼びます。
テラビット上では、イベントエディタと同様にコマンドを組み合わせたものをさまざまな条件と組み合わせて実行させることができます。
----
**どうやって作るの？
設置したイベントNPCにアクセスし、「イベント」タブの右隣にある「マクロ」タブを押します。
&amp;image(1743650_698.jpg)
あるいは、ゲーム画面右上のアイコンから、「{・}」マークを押します。
&amp;image(1743650_702.jpg)
すると、マクロ編集画面に移行します。
&amp;image(1743650_699.jpg)
画面左のリストが、このワールドに設定されているマクロのリストになります。
マクロはM00～M99まで、&amp;bold(){全100個}まで作成することができます。

また、一覧から選択中のマクロの名前の横にあるペンのマークを押すと、起動条件などの編集を行うウィンドウが現れます。
&amp;image(1743650_701.jpg)
「マクロの自動実行」の欄を押すと、このマクロをどのタイミングで実行するか決めることができます。
&amp;image(1743650_700.jpg)

***なし
基本的に「[[マクロの実行]]」を使って呼び出すマクロは、常に起動することが無いようこれに設定します。
***自動実行
与えられた起動条件を満たしている場合、常に起動し続ける設定です。
***初回実行
与えられた起動条件を満たした最初の1回だけ起動する設定です。
ルームに入りなおすと回数制限はリセットされます。

また、マクロには3つまで起動条件を設定することができます。
画像の場合は、イベント変数AがONになった時だけ起動するようになります。
----
**作ってみよう
例として作成したマクロです。
特定の座標にプレイヤーが立ったときに、そのプレイヤーの名前をチャットログに表示するマクロです。
起動条件を持たない自動マクロなので、常にチェックを行い続けます。
&amp;image(1743650_705.jpg)    </description>
    <dc:date>2026-04-24T16:38:54+09:00</dc:date>
    <utime>1777016334</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/teravit_commando/pages/24.html">
    <title>ギミック起動</title>
    <link>https://w.atwiki.jp/teravit_commando/pages/24.html</link>
    <description>
      **ギミックって？
モンスタースポナーや無線など、見えないところでゲームにさまざまな影響を及ぼす要素です。
これらをイベントによって一斉に起動させたりするのがこのコマンドです。
----
使い方
コマンドを使用すると、このようなウィンドウが出現します。
ギミックのタイプごとに出てくるタブの種類や数が異なります。

&amp;bold(){「宝箱」}は、普段見えないか、開けられない設定にしている宝箱を出現させたり、開けられるようにします。
このコマンドを使用する前に、宝箱の設定を「イベントで有効化」に変更する必要があります。
&amp;image(1743650_672.jpg)
&amp;bold(){「ワープポータル」}は、つながった2つの地点を移動するワープポータルを使用できるように出現させます。
このコマンドを使用する前に、ポータルを「イベントで有効化」に設定する必要があります。
&amp;image(1743650_675.jpg)
&amp;bold(){「無線チャンネル」}は、全部で16ある「無線」と呼ばれるプレイヤー間で共有できる通信手段をONにできます。
無線は基本的に一度ONにすると、ワールド内のすべてのプレイヤーに届きます。
&amp;image(1743650_676.jpg)
&amp;bold(){「モンスタースポナー」}は、配置したモンスターを一斉に出現させることができます。
通常&amp;bold(){「女神像」や「ホーリーライト」}が近くにあるとスポナーは機能しなくなりますが、これを無視して作動させることができます。
また、「レベル調整」でスポナー側で設定したモンスターのレベルを設定させた数だけ上昇させた状態で出現させることもできます。
このコマンドを使用する前に、対象にしたいスポナーを「イベントで有効化」にする必要があります。
&amp;image(1743650_677.jpg)
&amp;bold(){「アニマルスポナー」}は、配置した動物NPCを一斉に出現させることができます。
このコマンドを使用する前に、対象にしたいスポナーを「イベントで有効化」にする必要があります。
&amp;image(1743650_678.jpg)
&amp;bold(){「乗り物スポナー」}は、配置した乗り物を出現させることができます。
このコマンドを使用する前に、対象にしたいスポナーを「イベントで有効化」にする必要があります。
「乗り物オプション」では、これで出現させた乗り物に乗ってから、降りることで乗り物が消滅するかしないかを選ぶことができます。
&amp;image(1743650_679.jpg)
&amp;bold(){「ワールドポータル」}は、別のワールドに移動するワールドポータルを使用できるように出現させます。
同時に対象のワールドに設定しているサムネイルも出現するため、任意の画像を登場させるために使えないこともありません。
このコマンドを使用する前に、ポータルを「イベントで有効化」に設定する必要があります。
&amp;image(1743650_680.jpg)
&amp;bold(){「アイテムスポナー」}は、近づくとアイテムを取得できるスポナーを出現させます。
このコマンドを使用する前に、対象にしたいスポナーを「イベントで有効化」にする必要があります。
&amp;image(1743650_681.jpg)
***「停止する条件」について
全てのギミック設定についてくる「停止する条件」には、「イベントの終了」「その場を離れる」「なし」がありますが、
「イベントの終了」「その場を離れる」は癖が強く扱いにくいので、基本的には「なし」にして[[ギミック停止]]でしっかり停止させる構成が安定します。
また、&amp;bold(){ギミックを起動させたイベントNPCやマクロのコマンド欄でギミックを停止させないと、正常に終了しない}場合があります。

例：あるイベントNPCで&amp;bold(){ギミック起動}→「[[マクロの実行]]」でマクロを呼び出しこのマクロ内で&amp;bold(){ギミックを停止}→&amp;bold(){正常に停止しない}
　　あるイベントNPCで&amp;bold(){ギミック起動}→「[[マクロの実行]]」でマクロを呼び出し処理を終える→イベントNPCのコマンド欄に戻りここで&amp;bold(){ギミックを停止}→&amp;bold(){正常に停止する}

&amp;bold(){「ギミックは開けた奴が閉める」}を標語にしていきましょう。    </description>
    <dc:date>2026-04-10T08:45:58+09:00</dc:date>
    <utime>1775778358</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/teravit_commando/pages/23.html">
    <title>イテレーション</title>
    <link>https://w.atwiki.jp/teravit_commando/pages/23.html</link>
    <description>
      **イテレーションって？
イテレーションとは、「反復」「繰り返し」などを意味する単語で、
指定したカテゴリに属する複数のものを対象にし、処理を繰り返すコマンドです。
----
***使い方
使用すると、このようなウィンドウが現れます。
&amp;image(1743650_666.jpg)
イテレーションの対象にするものを「イテレーション対象」から、
コマンドを行っているプレイヤーからみてどのくらいの距離にいるものまでを対象にするかを「検索範囲」で切り替えます。
検索範囲は、「2m以内」から「40m以内」まであります。
&amp;image(1743650_667.jpg)
&amp;image(1743650_668.jpg)
***周りのプレイヤー
自分から見た検索範囲内にいる、&amp;bold(){自分を含めた}すべてのプレイヤーを対象にします。
通常は自分のみが対象になる、プレイヤーステータス系のシステム変数を範囲内すべてのプレイヤーに適用します。
***周りのモンスター
自分から見た検索範囲内にいる、敵対MOBすべてを対象にします。
NPCキャラクターIDなどのシステム変数を使った比較は、イテレーションとセットで使われることが多いです。
***周りの動物
自分から見た検索範囲内にいる、友好MOBすべてを対象にします。
友好MOBには、ツール「会話NPC」「クラフトNPC」などで設置したNPCも含まれます。
***周りのドロップアイテム
自分から見た検索範囲内にいる、自分で捨てた、あるいはMOBを倒してドロップした等で地面に落ちているアイテムすべてを対象にします。
***所持アイテム
自分が持っているアイテムを対象にします。
アイテムの置かれている箇所、持っているアイテムの種類などを検知するようになります。
***全てのプレイヤー
現在ワールドにいる全てのプレイヤーを対象にします。
「全てのプレイヤー」なので「周りのプレイヤー」と違い範囲に制限がありません。
***クエスト一覧
「ワールド」タブの「クエストの設定」で作成したメインクエスト・サブクエストを対象にします。
ログ出力やメッセージなどでクエスト関連のシステム変数を指定するタグを挿入することで、クエストの情報を取得することができます。
***討伐モンスターリスト
撃破したモンスターの種類、数などを対象にします。
***クラフトレシピ
「クラフト台」や「クラフトNPC」で作るアイテムの内容を対象にします。
クラフトした回数などのカウントも行われます。

決定を押すと、コマンド欄にこのような囲いが出現します。
&amp;image(1743650_669.jpg)
この囲い内に検索したいものを入れることで、指定した範囲内のすべて
のものから探し出してきます。
例１：イテレーション「周りのプレイヤー・30m以内」内に条件分岐「攻撃力＝１５」を入れることで、
　　自分が立っている位置から30m以内にいる「&amp;bold(){攻撃力が１５のプレイヤー}」を検索し、
　　存在した場合のみ分岐内のコマンドを処理します。
&amp;image(1743650_671.jpg)
例２：イテレーション「クエスト一覧」からサブクエストのひとつを指定し、
　　　クエストの状態が「クエスト完了」になった時、「実績」のグローバル変数をONにするマクロです。
&amp;image(1743650_670.jpg)    </description>
    <dc:date>2026-04-09T20:17:40+09:00</dc:date>
    <utime>1775733460</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/teravit_commando/pages/22.html">
    <title>コメント</title>
    <link>https://w.atwiki.jp/teravit_commando/pages/22.html</link>
    <description>
      **コメントって？
コマンド欄にコメントを挿入する機能です。
コメントはコマンドとして読み込まれることはありません。
----
**使い方
コマンドを選ぶとこのようなウィンドウが出現します。
&amp;image(1743650_663.jpg)
任意のコメントを入力し、決定を押すと
&amp;image(1743650_664.jpg)
コメントが挿し込まれます。
直後のコマンドが何を意味しているかの説明や、複数個分岐が並んでいる時の分類、
コマンドを他のワールドに移植する際の変数の名前など、入力するごとに複雑化するコマンドを整理していくために便利なものとなります。    </description>
    <dc:date>2026-04-08T18:23:13+09:00</dc:date>
    <utime>1775640193</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/teravit_commando/pages/21.html">
    <title>処理終了</title>
    <link>https://w.atwiki.jp/teravit_commando/pages/21.html</link>
    <description>
      **処理終了って？
その名の通り、このコマンドを読み取るとイベント処理が終了するコマンドです。
**使い方
使用すると、曲がった矢印のマークが出てきます。
画像では、「いいえ」を押し続ける限り無限に選択肢が出てくる[[ループ]]になっており、「はい」を押すと終了するイベントになっています。
&amp;image(1743650_662.jpg)
&amp;youtube(https://youtu.be/j2xvhjT9HaQ)
このように、処理をこれ以上行わせないために使用されるのが主となります。    </description>
    <dc:date>2026-04-07T22:37:39+09:00</dc:date>
    <utime>1775569059</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/teravit_commando/pages/20.html">
    <title>変数の計算</title>
    <link>https://w.atwiki.jp/teravit_commando/pages/20.html</link>
    <description>
      **変数って？
数学においては、数を示すときにどの値にもなりうるように文字に置き換えることを言います。
プログラミングにおいては、入力した数字などのデータを保持するための仕組みのことを言います。
また、変数の反対として、特定の決まった値を指す「定数」があります。
**どんな変数・定数があるの？
テラビット内で使用できる変数・定数にはさまざまな種類があり、
それぞれ適用される範囲の違いで分けられています。
***ワーク変数
イベントNPC・マクロ内でのみ適用される変数で、この数値は操作中のイベントNPC・マクロ以外のものには影響を及ぼしません。
この変数は任意の数を代入し、イベントが続く限り保持しておくことができます。
&amp;bold(){イベントが終了すると忘れ去られてしまいます。}（OFFに戻る）
ワーク変数には「&amp;bold(){Ｗ・Ｘ・Ｙ・Ｚ}」の4つの枠が用意されています。イベント終了後に忘れ去られてもかまわないデータの代入に使用しましょう。
***イベント変数
ワーク変数と同じく、イベントNPC・マクロ内でのみ適用される変数で、操作中のイベントNPC・マクロ以外のものには影響を及ぼしません。
ワーク変数との違いとして、この変数は代入した数字を&amp;bold(){イベントが終了しても保持することができます。}
NPCに一度話しかけた後、再び話しかけると会話内容が変化する、等イベントNPC内でのフラグの管理として使用できます。
フラグだけでなく、使用枠の数だけ数値を保存しておけるので、データのセーブを行うような使い方も可能です。
イベント変数には「Ａ・Ｂ・Ｃ・Ｄ」の4つの枠が用意されています。データの保存が必要ないときもワーク変数と同じ使い方が可能です。
***グローバル変数
ワーク変数、イベント変数と同じく、イベントNPCで代入が可能な変数ですが、上記の2つと違い
&amp;bold(){すべてのイベントNPC・マクロで}適用される変数です。つまり、操作中以外の他のイベントNPCやマクロにも影響を及ぼします。
町を脅かすボスをやっつけて町に戻ると、町人みんなが感謝の言葉を述べてくれる、といったイベントなどを作る際に利用することができます。
グローバル変数はそのワールドで遊んでいるプレイヤーごとに保持する変数であり、他のプレイヤーには影響を及ぼしません。
あるプレイヤーが一人でボスをやっつけても、他のプレイヤーがその状態を共有することはできない、ということになります。
グローバル変数は、「G000～G099」の&amp;bold(){100枠}が用意されています。また、変数に名前を付けることができ、どの変数を使っているか見分けられるようになります。
ゲーム作りに極めて高い汎用性を持つ変数なので、ここぞというときに使用していきましょう。
***システム変数
プレイヤーのステータス、敵のステータス等、その名の通りゲーム内のシステムをつかさどる変数です。
この変数は上記３つの変数と違い、&amp;bold(){「変数の計算」で操作することができません。}
また、システム変数は&amp;bold(){全てのプレイヤー間で共有されます。}
これを利用してプレイヤー間の情報共有を行うような使い方も可能となります。
***システム定数
システム変数が特定の状態の時に、この数値を示すという目安となる定数です。
[[条件分岐]]や[[ループ]]などの数値比較時にオペランドに適用することで、手入力を行わなくても確実に比較することができます。
***ユーザー定数
プレイヤー間で共有できる定数です。
定数であるため「変数の計算」で操作を行うことができませんが、「変数の一覧」などで定数の名前、示す値を変更することができます。
&amp;bold(){頻繁に入力する、且つ後で調整するかもしれない}数値を入力し、適用することで、変数の一覧で数値を変えるだけでオペランドに適用した定数全てを変更することができます。
ユーザー定数は「C000～C099」の100枠用意されています。ゲームのパラメータなど調整可能な柔軟性を活かして使用しましょう。
----
**使い方
***簡単設定
「変数の計算」を使用すると、このようなウィンドウが出現します。
&amp;image(1743650_659.jpg)
「対象の変数」には、好きな操作可能な変数（ワーク変数・イベント変数・グローバル変数）を一つ入れられます。
「オペランド」には、さらにシステム変数・システム定数・ユーザー定数・直接入力・フラグのON/OFFが加わります。
最後に、中央の「操作」部分にどのような計算を行うか入力します。
&amp;image(1743650_661.jpg)
***＝（代入）
「対象の変数」を「オペランド」と同じ値にします。
***＋（加算）
「対象の変数」に「オペランド」の値を加えます。
***ー（減算）
「対象の変数」から「オペランド」の値を引きます。
***×（乗算）
「対象の変数」を「オペランド」の値だけ倍にした値にします。
***÷（除算）
「対象の変数」を「オペランド」の値で割った値にします。
***％（剰余）
「対象の変数」を「オペランド」の値で割ったのち、割り切れなかった（余った）値を代入します。
&amp;bold(){記号が記号なので誤解しがちですが「オペランド」の値の割合を示すわけではないので注意してください。}

***スクリプト
「簡単設定」の隣にある「スクリプト」を押すとこのようなウィンドウになります。
&amp;image(1743650_660.jpg)
「対象の変数」「操作」までは同じですが、「オペランド」の代わりに「スクリプト」という欄があります。
「スクリプト」欄内では、複数の変数・定数を組み合わせた計算を事前に行ったり、ランダム入力を行うこともできます。
***ランダム入力
RND（〇,△）で表記される、簡単な乱数です。
〇の部分に出力される数の下限（出る中で一番小さい数）を入れ、△に出力される数の範囲（&amp;bold(){０を含める}）を入れます。
&amp;bold(){RND（1,4）}と入れることで、「０を含めた４つの数のうち最低１以上」つまり&amp;bold(){１～３}の数字をランダムで出すようになります。
***スクリプトに使用できる計算記号
「+」「ｰ」「%」の記号はそのまま使用できますが、「×」「÷」の記号をスクリプト上で使用することはできません。
「×」の代わりに「&amp;bold(){*（アスタリスク）}」、「÷」の代わりに「&amp;bold(){/(スラッシュ)}」を使用して計算を行います。
***タグ挿入
「スクリプト」欄内に複数の変数を入れて計算を行うことができます。
変数を入れるためには、使用したい数値が代入されている変数を指す文字列を入力します。
例：ワーク変数「W」にイベント変数「Y」とグローバル変数「G055」を足したものを代入する。
　　→&amp;bold(){W＝Y＋G055}
スクリプトの計算順は、学校で習う計算と同じく、乗算と除算を優先して行います。
例：W＝1+1*3の結果をチャットログで出力すると、「４」が出力される
***タグ挿入の注意点
タグ挿入はスクリプトだけでなく、[[メッセージ]]などにも挿入することができます。
任意の変数を[　]で囲むことにより、代入されている数値を文章上に表記することができます。
ただし、すべての変数は&amp;bold(){デフォルトでは「OFF」の状態になっています。}
変数が「OFF」や「ON」の状態で文字列にタグ挿入すると、それぞれ数値ではなく&amp;bold(){「false」「true」}と表記されます。
ハイスコアなどを代入する前にハイスコアを知るメッセージなどを読むときに「０」でなく「false」が出てくると非常に違和感があるので、
こういうケースがあるときは事前に該当の変数に「０」を代入しておきましょう。    </description>
    <dc:date>2026-04-07T21:29:42+09:00</dc:date>
    <utime>1775564982</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/teravit_commando/pages/19.html">
    <title>フラグの設定</title>
    <link>https://w.atwiki.jp/teravit_commando/pages/19.html</link>
    <description>
      **フラグって？
イベントの分岐を決定するための目印となるものを、「旗」になぞらえてこう呼びます。
インターネットでも「死亡フラグ」などとよく使われたりしますね。
**使い方
使用すると、このようなウィンドウが出現します。
&amp;image(1743650_655.jpg)
「対象の変数」でフラグを立てたい変数を決定し、
「OFF」か「ON」にチェックを入れることで、イベントを起こすとフラグを切り替えるコマンドとして使用できます。
**使用例
&amp;image(1743650_658.jpg)
1回目の会話でフラグＡをＯＮに切り替え、2回目の会話でフラグＡがＯＮになっているのを確認すると、違うメッセージとともにワープを行うコマンドです。
&amp;youtube(https://youtu.be/mLJzLwHGiic)

**実は・・・
[[変数の計算]]でも同様のことができるため、この「フラグの設定」は実質的な機能縮小版となります。
一応、ON/OFFの切り替えをするだけならば、わずかにこっちの方が入力スピードが速いというくらいです。
ON/OFFの切り替えにのみこれを使い、システマチックぶりましょう。    </description>
    <dc:date>2026-04-07T17:16:13+09:00</dc:date>
    <utime>1775549773</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/teravit_commando/pages/18.html">
    <title>ビット操作</title>
    <link>https://w.atwiki.jp/teravit_commando/pages/18.html</link>
    <description>
      **ビット操作って？
指定した変数を0と1のみで構成された&amp;bold(){「二進数」}と呼ばれる数え方に変換し、
最大32桁の0か1が記された数字の羅列にするコマンドです。
**二進数って？
使用する数字は「０」と「１」のみで、
十進法（普段使われる数え方）に直して数が「２」上がるごとにその桁が増えていく数字の方法です。
例：数字の「０」を示すときは「０」、「１」を示すときは「１」、「２」を示すときに&amp;bold(){桁が上がり}、「１０（ｲﾁｾﾞﾛ）」と表記します。
桁の数字がすべて1で埋まった次の数で新しく桁が増え、下の桁はすべて0に戻ります。そうして下桁を1で埋めては新たに桁が増えてを繰り返して
0と1の羅列が形成されます。
----
**どうやって使うの？
二進数が「０」と「１」の二つの数の羅列であることを利用し、
特定の桁の数字が0か1どちらを示しているかによって、ゲームのフラグ管理として使うことができます。
先述の通り最大32桁まで操作することができるため、１つの変数を使って32個ものフラグを管理することができます。

コマンドを使用すると、このようなウィンドウが出現します。
&amp;image(1743650_644.jpg)
**①操作前の変数
選択した変数の数値を二進数に変換します。0と1の羅列に変換される様子を見ることはできません。
**②操作する場所
二進数に変換した変数の全32桁のうちから、操作を行う桁を選びます。
**③ビット操作
②で選んだ桁をどのように操作するかを選択します。
操作内容は全部で4種類あります。
&amp;image(1743650_647.jpg)
***立ち上げ
「０」になっている指定した桁を「１」にします。既に１のときは変化がありません。
***立ち下げ
「１」になっている指定した桁を「０」にします。既に０のときは変化がありません。
***反転
指定した桁の「０」を「１」に、「１」を「０」にします。
***抜き取り
指定した桁が「１」なのか「０」なのかチェックします。
**④結果を入れる変数
「&amp;bold(){立ち上げ・立ち下げ・反転}」のいずれかを行った場合、行った後の二進数を十進数へと直し、指定した変数に書き込みます。
「&amp;bold(){抜き取り}」を行った場合、行った桁が「０」か「１」、それ以外が全て「０」になっている二進数を生成、
それを十進数に直して指定した変数へ書き込みます。

**使用例
整数「１５」が書き込まれた変数Ａと、ビット操作の結果を書き込む変数Ｂを用意します。
***反転（立ち上げ・立ち下げ）の場合
&amp;image(1743650_648.jpg)
この画像で行われる処理は、
・変数Ａを二進数に変換し、全32桁のうち下4桁を1で埋めた数字「０００００...（中略）...１１１１」を生成する
・ビット操作を行い、二進数3桁目の「１」を「０」に反転させる
・この操作を行った二進数「０００００...（中略）...&amp;bold(){１０１１}」を再び十進数に戻す
・十進数に戻った数字を結果として変数Ｂに書き込む

という処理になります。
このイベントNPCを調べると、変数Ｂに書き込まれた数字をチャットログに出力するよう出来ています。
二進数「１０１１」を十進数に直すと整数「１１」を示し、チャットログにも「１１」が出力されます。
***抜き取りの場合
&amp;image(1743650_650.jpg)
この画像で行われる処理は、
・変数Ａを二進数に変換し、全32桁のうち下4桁を1で埋めた数字「０００００...（中略）...１１１１」を生成する（ここまではさっきと同じ）
・ビット操作を行い、二進数3桁目の数字が「０」か「１」かチェックする
・変数Ａの3桁目は「１」であるため、この3桁目のみが１になっている二進数「０００００...（中略）...&amp;bold(){０１００}」を生成する
・生成した二進数を再び十進数に戻し、整数として変数Ｂに書き込む

という処理になります。
二進数「０１００」を十進数に戻すと「４」となるため、
このイベントNPCを調べるとチャットログに「４」が出力されます。

「立ち上げ・立ち下げ・反転」を使用すると、32桁ぶん、つまり全32個あるフラグの書き込みや削除を行うことができます。
「抜き取り」を使用すると、指定した桁が「０」であるときは必ず「０」が、「１」であるときは必ず何かしらの整数が生成されるため、
指定したフラグが立っているかどうかを判別することができます。
１つの変数内に32個までフラグを納めることができるため、
アイテムの所持状況などを順不同にフラグとして立てることなどができます。
1個丸ごと「ＯＮ」「ＯＦＦ」のみに使うよりも、数に限りのある（最大100個）グローバル変数を節約することもできます。    </description>
    <dc:date>2026-04-06T19:46:15+09:00</dc:date>
    <utime>1775472375</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/teravit_commando/pages/16.html">
    <title>条件分岐</title>
    <link>https://w.atwiki.jp/teravit_commando/pages/16.html</link>
    <description>
      **条件分岐って？
コマンドを行うときに、様々な「変数」が条件に合っているかチェックし、
合っている時のみそのコマンドを行うようにする「条件付け」を行います。
（例：自分のHPが0になった時、モンスターのHPが0になった時、など）
----
**どうやって使うの？
条件分岐を使用すると、次のようなウィンドウが出てきます。
&amp;image(1743650_626.jpg)
灰色の四角で3つ囲われている部分が条件を示す3要素となります。
画像の場合だと、「イベント変数Ａ」が「ＯＮ」になっている時に条件を満たします。
また、「＋」「ー」の2つのボタンでチェックする条件を追加することができ、最大３つまで増やすことができます。

「&amp;bold(){条件の変数}」には「[[変数の計算]]」で操作できる「Ｗ･Ｘ･Ｙ･Ｚのワーク変数」、
「Ａ･Ｂ･Ｃ･Ｄのイベント変数」、「グローバル変数」、
「[[変数の計算]]」で操作できない「システム変数」などを入力できます。

「&amp;bold(){オペランド}」には、先述の変数のほかに「システム定数」、「ユーザー定数」、
「数値の直接入力」が加わり、これらを入力できます。

最後に中央の「&amp;bold(){比較}」で、「条件の変数」と「オペランド」を比較した結果どのような状態になっているかをチェックします。
条件が合っていれば、条件分岐コマンドに囲われているコマンドを実行します。
&amp;image(1743650_630.jpg)

***&amp;bold(){＝（等しい）}
比較した結果、&amp;bold(){数値が等しい}場合条件に合致します。
***&amp;bold(){≠（等しくない）}
比較した結果、&amp;bold(){数値が一致していない}場合条件に合致します。
***&amp;bold(){≧（以上）}
「条件の変数」が「オペランド」と&amp;bold(){同じか、それより大きい}場合条件に合致します。
***&amp;bold(){＞（大きい）}
「条件の変数」が「オペランド」より&amp;bold(){大きい}場合条件に合致します。
***&amp;bold(){≦（以下）}
「条件の変数」が「オペランド」と&amp;bold(){同じか、それより小さい}場合条件に合致します。
***&amp;bold(){＜（小さい）}
「条件の変数」が「オペランド」より&amp;bold(){小さい}場合条件に合致します。
***&amp;bold(){∧（AND）}
「条件の変数」と「オペランド」を比較し、&amp;bold(){「どちらも０ではない」且つ「数値が等しい」}場合条件に合致します。
***&amp;bold(){!∧（NAND）}
「条件の変数」と「オペランド」を比較し、&amp;bold(){「どちらも０である」または「数値が等しくない」}場合条件に合致します。
***&amp;bold(){∨（OR）}
「条件の変数」と「オペランド」を比較し、&amp;bold(){「どちらも０ではない」}場合条件に合致します。
***&amp;bold(){!∨（NOR）}
「条件の変数」と「オペランド」を比較し、&amp;bold(){「どちらも０である」}場合条件に合致します。
***&amp;bold(){⊕（XOR）}
「条件の変数」と「オペランド」を比較し、&amp;bold(){「数値が等しくない」}場合条件に合致します。

***&amp;bold(){「それ以外の処理」とは}
示した条件に&amp;bold(){合致していない場合}に別のコマンドを実行する分岐を加えます。
例：条件「Ａ≧２」以外の分岐＝&amp;bold(){Ａ＜１の時に}条件が合致した時とは別のコマンドを実行する

実行すると、コマンド欄内に◆2つの囲いが出現します。
この囲い内に条件を満たした時に実行したいコマンドを入力します。
また、「それ以外の処理」にチェックを入れた場合、「それ以外の分岐」が出現します。
満たさない場合に実行したいコマンドはこれのすぐ下に入れてください。
----
**使用例
①最初に１～７の変数（W）を計算し、計算結果によって違うメッセージを出すイベントです。
&amp;image(1743650_631.jpg)
&amp;youtube(https://www.youtube.com/watch?v=ijMMqY16mk0&amp;list=PLuXgJOyuDMKx5eYaSwyH1gUSQ_RZvmBWf)
②最初にチェックすると１～４の変数（W）を計算し、計算結果によってAB２つのフラグがランダムでONかOFFになり、
2回目のチェックではフラグABの状態を比較して違うメッセージを出すイベントです。
&amp;image(1743650_632.jpg)
&amp;youtube(https://www.youtube.com/watch?v=5DAq4etK1uk&amp;list=PLuXgJOyuDMKx5eYaSwyH1gUSQ_RZvmBWf&amp;index=2)    </description>
    <dc:date>2026-04-06T07:30:55+09:00</dc:date>
    <utime>1775428255</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/teravit_commando/pages/17.html">
    <title>ループ</title>
    <link>https://w.atwiki.jp/teravit_commando/pages/17.html</link>
    <description>
      **ループって？
指定された条件を&amp;bold(){満たし続ける限り}、囲ってある内部のコマンドを繰り返し行うよう処理するコマンドです。
----
**どうやって使うの？
ループを使用するとこのようなウィンドウが表示されます。
見た目は[[条件分岐]]と似ていますが、ほぼ同様な設定を行えます。
ただし、「それ以外の処理」はありません。
&amp;image(1743650_635.jpg)
変数の入力・比較に関しては[[条件分岐]]を参照してください。

条件を入力すると、２行の●で囲うコマンドが出現します。
条件を満たした状態でループ分に差し掛かるとループに突入し、条件を満たし続ける限り囲い内のコマンドを実行し続けます。
また、入力した条件を&amp;bold(){満たしていない状態}で実行する箇所に差し掛かると、ループ部分は読み飛ばされ、実行されません。
何も入力されていないときも条件から外れるまで処理が停滞します。
つまり、&amp;bold(){終了条件を何かしら作らないと}ループから抜け出せず、スタートに戻るなどのリスタートを行わなくてはいけなくなります。
&amp;image(1743650_636.jpg)
この画像では、ループ突入前にタイマーを設定し、タイマーが0にならない限りループ処理を続け、タイマーが切れると条件から外れ、ループを突破します。
&amp;youtube(https://youtu.be/pz9gE3LGWMA)

他には複数のイベントNPCやマクロを扱う際、ループを使ってコマンド処理の足並みを揃える、という使い方もできます。    </description>
    <dc:date>2026-04-06T07:26:43+09:00</dc:date>
    <utime>1775428003</utime>
  </item>
  </rdf:RDF>
