記事No | : 21591 [関連記事] |
タイトル | : Re: 50%の確率で行動不能など、確率を参照した状態異常の作成 |
投稿日 | : 2024/01/10 21:25 |
投稿者 | : YADO [LerLWW459] |
> 新しい状態異常「怠惰」の作成を目指しています。
>
> 「怠惰」の仕様について
>
> ・通常攻撃、特殊技能、アイテムのコマンド選択はできる。
> ・50%の確率でプレイヤーが選択したコマンドを無視して「何もしない」と同様の処理をする。
> ・コマンドを無視して「何もしない」の処理になった場合、「行動制限時文章(空欄:ナシ」で予め設定した表示を行う(ゲーム中では、○○は怠けている!の表示となる)。
> ・プレイヤーが自ら「何もしない」を選択していた場合はコマンドを無視する確率を問わず「行動制限時文章(空欄:ナシ」の表示を行わない。
>
>
> 前準備としてUDBのタイプ8:状態設定の47番目に新しく「行動しなくなる確率」という欄を作成しました。既存のタイプ16:行動制限で処理するとコマンド選択すらできなくなるので、
> 可変DBのタイプ10:×┏戦闘一時ステータスも78番目に「何もしない確率」を設定しました。
>
> ですが、コモンイベントで可変DBのタイプ10を書きこみしている箇所が不明で、「何もしない確率」の設定を組むことができません。
> もしここが設定できれば、あとはコモンEv196:X┃┣◆行動可能判定の254行目に「怠惰のチェック」を追加して確率の計算と確率の条件を満たしたらイベント処理中断で組もうと思っているのですが、そもそもこれで仕様通りの状態異常ができるのかもわかりません。
> 何かアドバイス等いただければ幸いです。
ユーザーDB[8:状態設定]に状態「怠惰」の準備は必要ですが、
確率の設定(50%)はコモンイベントの方で設定する事ができるので、
ユーザーDB[8:状態設定]に項目「行動しなくなる確率」を準備する必要はありません。
また可変DB[10:×┏ 戦闘一時ステータス[基]]の項目「何もしない確率」の準備も必要ありません。
但し装備によって確率を変化させる場合は、可変DB[10:×┏ 戦闘一時ステータス[基]]に新規項目が必要です。
下記の設定例では、ユーザーDB[8:状態設定]に項目「行動しなくなる確率」を設定せず、
可変DB[10:×┏ 戦闘一時ステータス[基]]に項目「何もしない確率」を設定しないシンプルバージョンで記載しておきます。
ユーザーDB[8:状態設定]に以下の状態異常を準備。
項目0[状態名] = 怠惰
項目13[行動制限時文章(空欄:ナシ] = は怠けている!
※項目4などの他の項目の設定はご自由にどうぞ。
※データIDは空いているIDの所に自由に設定してください。
コモンイベント[196:X┃┣◆行動可能判定]の15行目に
■DB読込(可変): CSelf16[発動スロット] = 可変DB[ ×┣ コマンド処理リスト : CSelf0[行動リスト番号] : 発動者番号 ] (14 : - : 0)
がありますが、この設定の下(16行目)に以下のイベントを追加。
■DB読込(ユーザ): CSelf10[一時変数A] = ユーザDB[タイプ状態設定(8) データ怠惰(23)のデータ番号]
■DB読込(可変): CSelf11[一時変数B] = 可変DB[ 13 : CSelf16[発動スロット] : CSelf10[一時変数A] ] (×┣ 状態リスト : - : -)
■条件分岐(変数): 【1】 CSelf11[一時変数B] が 1 以上
-◇分岐: 【1】 [ CSelf11[一時変数B] が 1 以上 ]の場合↓
|■変数操作: CSelf12[一時変数C] = 0 〜 99
|■条件分岐(変数): 【1】 CSelf12[一時変数C] が 50 以上
|-◇分岐: 【1】 [ CSelf12[一時変数C] が 50 以上 ]の場合↓
| |■イベントの挿入[名]: ["X[共]システムSE再生"] <コモンEv 49> / 50:行動前
| |■条件分岐(変数): 【1】 CSelf16[発動スロット] が 10 未満 【2】 CSelf16[発動スロット] が 10 以上
| |-◇分岐: 【1】 [ CSelf16[発動スロット] が 10 未満 ]の場合↓
| | |■イベントの挿入[名]: ["X[戦]味方欄_単体描画"] <コモンEv 178> / 40:フラッシュエフェクト / CSelf16[発動スロット] / CSelf16[発動スロット]
| | |■
| |-◇分岐: 【2】 [ CSelf16[発動スロット] が 10 以上 ]の場合↓
| | |■イベントの挿入[名]: ["X[戦]敵キャラ_単体描画"] <コモンEv 179> / 40:フラッシュエフェクト / CSelf16[発動スロット]
| | |■
| |◇分岐終了◇
| |■DB読込(可変): CSelf9[一時項目名] = 可変DB[ 10 : CSelf16[発動スロット] : キャラ名 ] (×┏ 戦闘一時ステータス[基] : - : 0)
| |■DB読込(ユーザ): CSelf9[一時項目名] += ユーザDB[ 8 : CSelf10[一時変数A] : 13 ] (状態設定 : - : 行動制限時文章(空欄:ナシ)
| |■イベントの挿入[名]: ["X[戦]戦闘メッセージ表示"] <コモンEv 182> / 0:表示→自動削除 / CSelf9[一時項目名]
| |■イベント処理中断
| |■
|◇分岐終了◇
|■
◇分岐終了◇
WoditorEvCOMMAND_START
[250][5,4]<0>(8,23,-3,201216,1600010)("","状態設定","怠惰","")
[250][5,4]<0>(13,1600016,1600010,4096,1600011)("","","","")
[111][4,0]<0>(1,1600011,1,1)()
[401][1,0]<0>(1)()
[121][4,0]<1>(1600012,0,99,24576)()
[111][4,0]<1>(1,1600012,50,1)()
[401][1,0]<1>(1)()
[300][3,1]<2>(0,1,50)("X[共]システムSE再生")
[111][7,0]<2>(2,1600016,10,4,1600016,10,1)()
[401][1,0]<2>(1)()
[300][5,1]<3>(0,3,40,1600016,1600016)("X[戦]味方欄_単体描画")
[0][0,0]<3>()()
[401][1,0]<2>(2)()
[300][4,1]<3>(0,2,40,1600016)("X[戦]敵キャラ_単体描画")
[0][0,0]<3>()()
[499][0,0]<2>()()
[250][5,4]<2>(10,1600016,0,266240,1600009)("","","","キャラ名")
[250][5,4]<2>(8,1600010,13,4624,1600009)("","","","")
[300][4,1]<2>(0,17,0,1600009)("X[戦]戦闘メッセージ表示")
[172][0,0]<2>()()
[0][0,0]<2>()()
[499][0,0]<1>()()
[0][0,0]<1>()()
[499][0,0]<0>()()
WoditorEvCOMMAND_END