WOLF RPGエディター(ウディタ)[3.394]/イベントコマンド【サイトトップへ戻る】
■DB操作
(更新:2024/09/06)


イベントコマンド【DB操作】について説明します。



ショートカット
■イベントコマンド【DB操作】とは?
■設定画面の説明:データベースの切り替え
■設定画面の説明:[DBへ代入↑]
■設定画面の説明:[変数に代入→]
■設定画面の説明:数値または代入先
■設定画面の説明:データ操作
■設定画面の説明:CSV入出力
■補足

「データベース」に関する説明は、別ページに記載しています。
【データベースの説明を開く】


  
■イベントコマンド【DB操作】とは?

【DB操作】は「システムDB」「ユーザーDB」「可変DB」の値を取得したり、
データを削除したり、CSV形式のファイルに入出力したりする時に使います。



可変DBは値の取得と変更が可能ですが、
ユーザーDBシステムDB読み取り専用であり、値の取得のみが可能です。

システムDBの一部の値は、別のイベントコマンドを使う事で値の変更ができます。

タイプ名 値が変更できるイベントコマンド
4:文字列変数名
5:システム文字列
イベントコマンド【文字列操作】
6:システム変数名
14:通常変数名
15:予備変数1
16:予備変数2
17:予備変数3
18:予備変数4
19:予備変数5
20:予備変数6
21:予備変数7
22:予備変数8
23:予備変数9
イベントコマンド【変数操作】

上記以外のシステムDBのタイプは読み取り専用になります。



なお、CSV形式の読み込みや「変数呼び出し値」を使ってユーザーDBなどの値を変更する事はできますが、
値を変更してもセーブデータには保存されず、セーブデータをロードすると初期の値に戻ります。
【「変数呼び出し値」についての説明を見る】


▲トップへ戻る▲


   
■設定画面の説明:データベースの切り替え



処理するデータベースを選択します。


▲トップへ戻る▲


  
■設定画面の説明:[DBへ代入↑]



データベースに値を設定するモードです。
可変DBのみで選択できます。

値を設定するデータベースを「DBタイプ番号」「データ番号」「項目番号」で選択してください。





[変数]にチェックを入れると、変数で各番号を設定する事ができます。





[名前]にチェックを入れると、名前を指定して設定する事ができます。



なお、文字列変数で名前を指定する事はできません。



チェックボックス 説明
全データ初期化 全データを初期化します。
全項目初期化 指定したデータ番号の項目情報を全て初期化します。

この初期化は、ゲーム開始時の状態に戻すのではなく、新規でデータを作成した時の状態になります。



もしもゲーム開始時の状態に戻したい時には、
画面左下にある[データ[複数・CSV形式]]でゲーム開始時のデータベースの状態を出力し、
ゲームの途中でゲーム開始時の状態に戻したい時には、
その出力したCSV形式のファイルを読み込んで、ゲーム開始時の状態に戻してください。


▲トップへ戻る▲


  
■設定画面の説明:[変数に代入→]



データベースの値を出力します。

値を出力するデータベースを「DBタイプ番号」「データ番号」「項目番号」で選択してください。



チェックボックス 説明
タイプ名取得[文字] 指定したタイプ番号のタイプ名を出力します。
可変DB[0]を設定した場合は「主人公ステータス」が出力されます。
タイプ名取得[数値] [名前]にチェックが入っている場合、設定した名前のタイプ番号を出力します。
可変DB[主人公ステータス」を設定した場合は「0」が出力されます。
データ数取得[数値] データ数を出力します。
可変DB[0]の場合は「17」が出力されます。
データ名取得[文字] 指定したデータ番号に設定されているデータ名を出力します。
可変DB[0]データ番号[12]の場合は「ウルファール」が出力されます。
データ番号取得[数] [名前]にチェックが入っている場合、設定した名前のデータ番号を出力します。
可変DB[0]データ名[ウルファール]の場合は「12」が出力されます。
項目数取得[数値] 項目数を出力します。
可変DB[0]の場合は「59」が出力されます。
項目名取得[文字] 指定した項目番号に設定されている項目名を出力します。
可変DB[0]項目番号[5]の場合は「限界レベル」が出力されます。
項目番号取得[数] [名前]にチェックが入っている場合、設定した名前の項目番号を出力します。
可変DB[0]項目名[限界レベル]の場合は「5」が出力されます。


▲トップへ戻る▲


  
■設定画面の説明:数値または代入先



データベースに設定する値、またはデータベースから取得する値を受け取る場所(変数)の設定を行います。



「=」や「引き上げ」などの演算子については、別ページをご覧ください。
【演算子に関するページを開く】

また「X番の変数呼出」についても、別ページをご覧ください。
【「X番の変数呼出」に関するページを開く】



変数の設定は、「このイベントのセルフ変数」「通常変数」「予備変数」「文字列変数」の設定ができますが、
変数呼び出し値」を設定すれば上記以外の変数の設定も可能です。

▼マップイベントのイベントID[2]のセルフ変数[5]に代入する場合




データベースに値を代入する場合、またはデータベースの値を取得する場合は、
数値データには数値を、文字列データには文字列を設定してください。

例えば…
■DB読込(可変): このEvのSelf0 = 可変DB[ 0 : ウルファール : 0 ] (主人公ステータス : 12 : キャラ名)
と言ったように、文字列データである「主人公の名前」を数値タイプの変数に設定しようとすると、
変数を収納すべき場所に文字列を代入しようとしました」のエラーが発生します。


▲トップへ戻る▲


  
■設定画面の説明:データ操作



可変DBのデータを追加したり、削除したりする時に使います。

新規データ挿入↑ 指定したタイプ番号、指定したデータ番号の位置に、
指定した個数の新規データを挿入します。
DBタイプ番号「0」 データ番号「2」
上記データ位置の前「3」個の新データを挿入

0:ヒーローさん
1:ファイターさん
2:ウィッチさん
3:プリーストさん
4:パイレーツさん
5:シーフさん


0:ヒーローさん
1:ファイターさん
2:
3:
4:
5:ウィッチさん
6:プリーストさん
7:パイレーツさん
8:シーフさん
挿入できる限界はデータ数が「10000」になる所までです。
例えばデータ数が「9997」の場合で「6」個の挿入を実行しても、
挿入されるのは「3」個のみです。
データ抜き取り↑ 指定したタイプ番号、指定したデータ番号の位置に、
指定した個数のデータを抜き取ります。
DBタイプ番号「0」 データ番号「2」
上記データ位置の含「3」個のデータを抜き取り

0:ヒーローさん
1:ファイターさん
2:ウィッチさん
3:プリーストさん
4:パイレーツさん
5:シーフさん


0:ヒーローさん
1:ファイターさん
2:シーフさん
DBタイプ番号「0」 データ番号「0」
上記データ位置の含「10000」個のデータを抜き取り

0:ヒーローさん
1:ファイターさん
2:ウィッチさん
3:プリーストさん
4:パイレーツさん
5:シーフさん


0:       
この場合は、データ番号[0]は初期化した状態になります。
データコピー↑ 指定したタイプ番号、指定したデータ番号の位置に、
指定したデータの設定をコピーします。
DBタイプ番号「0」 データ番号「2」
上記データ位置に「4」番のデータをコピー

0:ヒーローさん
1:ファイターさん
2:ウィッチさん
3:プリーストさん
4:パイレーツさん
5:シーフさん


0:ヒーローさん
1:ファイターさん
2:パイレーツさん
3:プリーストさん
4:パイレーツさん
5:シーフさん
コピー先は上書きになるため、
上書きせずに挿入する形でコピーしたい時には、
新規データ挿入↑」でコピー先に空きを作ってから、
データコピー↑」でコピーを実行してください。
0:ヒーローさん
1:ファイターさん
2:ウィッチさん
3:プリーストさん
4:パイレーツさん
5:シーフさん


0:ヒーローさん
1:ファイターさん
2:
3:ウィッチさん
4:プリーストさん
5:パイレーツさん
6:シーフさん


0:ヒーローさん
1:ファイターさん
2:パイレーツさん
3:ウィッチさん
4:プリーストさん
5:パイレーツさん
6:シーフさん


▲トップへ戻る▲


  
■設定画面の説明:CSV入出力



CSV形式のファイルを入出力する時に使います。

DBへ入力↑ 指定したタイプ番号、指定したデータ番号の位置に、
CSVのデータを読み込みます。
DBタイプ番号「0」 データ番号「2」
上記データ位置の最「3」個分のデータを入力

0:ヒーローさん
1:ファイターさん
2:ウィッチさん
3:プリーストさん
4:パイレーツさん
5:シーフさん


0:ヒーローさん
1:ファイターさん
2:CSV01
3:CSV02
4:CSV03

5:シーフさん
入力先は上書きになるため、上書きせずに挿入する形でコピーしたい時には、
新規データ挿入↑」で入力先に空きを作ってから、
DBへ入力」を実行してください。
0:ヒーローさん
1:ファイターさん
2:ウィッチさん
3:プリーストさん
4:パイレーツさん
5:シーフさん


0:ヒーローさん
1:ファイターさん
2:
3:
4:
5:ウィッチさん
6:プリーストさん
7:パイレーツさん
8:シーフさん


0:ヒーローさん
1:ファイターさん
2:CSV01
3:CSV02
4:CSV03

5:ウィッチさん
6:プリーストさん
7:パイレーツさん
8:シーフさん
CSVへ保存→ 指定したタイプ番号、指定したデータ番号の位置から指定した数のデータを
CSVファイルに保存します。
DBタイプ番号「0」 データ番号「2」
上記データ位置から「3」個分のデータを保存

0:ヒーローさん
1:ファイターさん
2:ウィッチさん
3:プリーストさん
4:パイレーツさん
5:シーフさん


▼この3つを保存
ウィッチさん
プリーストさん
パイレーツさん
読込ファイル
出力ファイル
ファイルのアドレスを設定。
ファイル名の最後にCSV形式の拡張子「.csv」を付けてください。
拡張子を「.txt」にすると、テキストファイルの入出力になります。
なお、拡張子を付けなくても入出力は可能です。
[File]のボタンを押すとフォルダー「Data」が開き、ファイルの選択ができます。
フォルダーを指定してそのフォルダーが存在しない場合は、
自動的にフォルダーが作成されます。
例えば出力ファイルの設定にて…
Data/DB/初期データ.csv
と言った設定を行った場合、
フォルダー「Data」の中にフォルダー「DB」が無い場合は自動的に作成されて、
作成されたフォルダー「DB」の中にファイル「初期データ.csv」が保存されます。

▼可変DB[0:主人公ステータス]を「.csv」で出力して「Excel」で開いた時の表示例


▼可変DB[0:主人公ステータス]を「.txt」で出力してWindowsの「メモ帳」で開いた時の表示例




以下はCSV入出力の使用例です。

可変DBの現在の値を確認したい時に、CSV形式で出力して、ファイルを開く事で確認する事ができます。
周回プレイなどで可変DB[0:主人公ステータス]などを初期化したい時に初期状態を出力しておき、
2周目が始まる時に出力したファイルを読み込んで、主人公の能力値などを初期化する時に使います。
YADO作品「病原体」では、ステージデータ(細胞の初期位置など)をCSV形式のファイルに保存しておき、
ステージ開始時にCSV形式のファイルを読み込んでゲームを開始していました。
YADO作品「ニナと会話」では、各ステージのリプレイデータの保存にCSV入出力を使用していました。


▲トップへ戻る▲


  
■補足

変数呼び出し値」を使う事で、
【DB操作】以外のイベントコマンドでもデータベースの値を設定&出力が可能です。

▼可変DB[0:主人公ステータス]のデータID[12:ウルファール]の項目[6:HP]を出力する設定


▼設定結果
■変数操作: このEvのSelf0 = 可変DB(0,12,6)[ウルファール HP ] + 0



また「変数呼び出し値」と「X番の変数呼出」を利用して、
【DB操作】では設定する事ができないユーザーDBの値を変える設定も可能です。

▼ユーザーDB[9:敵キャラ個体データ]のデータID[11:オーク]の項目[2:最大HP]の変数呼び出し値を設定


▼「X番の変数呼出」でユーザーDBの設定を「500」に変更


▼設定結果
■変数操作: このEvのSelf0 = 1009001102 + 0
■変数操作: V[このEvのSelf0] = 500 + 0

なお、変更したユーザーDBの値はセーブデータに保存されません。
そのため、上記の方法でユーザーDBの値を変更した場合、
セーブデータをロードした時に再び設定し直す必要があります。



10000以上」のデータ番号を設定した場合は、次のタイプIDのデータを取得します。

そのため、下図のように設定した場合は、可変DB[1]データ番号[0]を取得します。



以下のように設定した場合も可変DB[1]データ番号[0]の値を表示します。
■文章:\cdb[0:10000:0]


▲トップへ戻る▲



◎関連ページ

◆「システムDB」「ユーザーDB」「可変DB」の説明

◆「イベントコマンド」って何?
┣◆文章の表示
┃┗◆特殊文字
┣◆選択肢
┃┗◆【使用例】選択肢
┣◆変数操作
┃┗◆演算子について
┣◆DB操作
┣◆文字列操作
┃┗◆【使用例】文字列操作
┣◆変数操作+
┃┣◆「X座標・Y座標」と「画面X座標・画面Y座標」の違い
┃┣◆【使用例】変数操作+の「キャラ」と「位置」
┃┗◆【使用例】変数操作+の「ピクチャ」と「その他」
┣◆条件(変数)
┣◆条件(文字列)
┣◆キー入力
┃┗◆【使用例】キー入力
┣◆ピクチャ
┃┗◆表示形式(通常・加算・減算・乗算)について
┣◆エフェクト
┃┣◆「Zオーダー」について
┃┗◆【使用例】エフェクト
┣◆サウンド
┣◆セーブ・ロード操作
┣◆パーティ画像
┣◆チップ処理
┃┗◆【使用例】チップ処理
┣◆場所移動
┣◆イベント制御
┃┣◆キャラクターの動作指定
┃┗◆【使用例】イベント制御
┣◆コモンイベント
┣◆ダウンロード
┗◆プロ版機能
 ┗◆起動時の引数について

YADOT-WOLFトップ  気紛れな空間へ戻る  メール