WOLF RPGエディター 質問スレ 其の11 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
2017/08/20(日) 23:40:24.37ID:tptsJ3q3
フリーソフトのRPG製作ソフトWOLF RPGエディターの質問者のためのスレッドです。
教えられる方はできる範囲で教えてあげてください。

・ここは質問スレです。質問者や回答者を煽るようなレスは禁止です。
・もしあなたが憤りを感じたり荒らしだと思っても、放置もしくは>>1とだけレスしてください。
 それ以上のことを書くと、それ自体が『荒らし行為となります』。ご注意ください。
・質問者もマナーを守り、回答がつきやすい質問の仕方をしましょう。

【良い質問の例】
・〜がやりたくて・・・までしたのですが、〇〇がうまくいきません。

【悪い質問の例】
・〜できますか → 大概できます。問題は「どうすればできるか」のはずです。実のない質問はやめましょう。
・〜のようなことがやりたい → 丸投げはやめましょう。1から全部教えてくれる人はまずいません。
 何が分からないか分かるまで努力しましょう。全部分からないのなら、まずは講座サイトで勉強しましょう。
・コモンイベント集から○○のコモンイベントをダウンロードしましたがエラーが出ますor使い方が分かりませんor動きません等
 →まずはそのコモンイベントの作者と連絡を取って下さい。ここにはそのコモンイベントの内容を詳しく理解している人が居ないため、あなたが望むような回答はできません。


◆WOLF RPGエディター公式サイト
http://www.silversecond.com/WolfRPGEditor/

◇本スレ
【ウディタ】WOLF RPGエディター 其の65 [無断転載禁止]©2ch.net
http://mevius.2ch.net/test/read.cgi/gamedev/1502397455/

◇前スレ
WOLF RPGエディター 質問スレ 其の10 [無断転載禁止]©2ch.net
http://mevius.2ch.net/test/read.cgi/gamedev/1463812471/

次スレは>>980が立てて下さい。
立てられない場合は質問を自重して本スレに報告して下さい。
2017/10/02(月) 19:57:53.03ID:4wGbKTVQ
質問です

DB操作の「タイプ番号、データ番号、項目番号」の取得方法に「変数」と「名前」がありますが、これまで絶対値や変数呼び出し値でしか使ったことがありません

そこで「名前」で使う場合なのですが、これはコモンイベントを呼び出す際に「コモン名」で呼び出すを選んだのと同じようなものだと認識しておく程度でいいでしょうか
(タイプ番号位置を変えても名前が同じなら大丈夫みたいな)
2017/10/02(月) 21:28:59.51ID:ZNwOXtRQ
ええよ
ただDBは昇順、コモンは降順に調べていくから
例えばコモンイベント番号、もしくはDBタイプ番号の1番と2番に同じAという名前をつけていた場合
コモンイベントの場合は2番のAが実行されて、DBの場合は1番のAが実行される
2017/10/03(火) 02:37:22.46ID:HqpMBjgK
>>20
ありがとうでゴンス
今のところDBでもコモンでも同じ名前で使うことはないんで心配なさそうだけど、DBは逆ってのは知らなかったです
聞いてよかった
2017/10/09(月) 21:21:48.29ID:zsIhKPVY
自作のデバッグシステムを作ってて質問です

DBの名前取得のように通常変数やコモンセルフ変数に付けた名前を文字列変数として取得することはできるか?

現在いるコモンイベントの名前を取得することはできるか?(コモンナンバーでも可)
2017/10/09(月) 21:46:48.21ID:l4Tnn4Bz
できない
できる
2017/10/09(月) 22:12:06.67ID:yxI6bNmo
前者は通常変数名のデータベース作って管理すれば疑似的に可能、コモンセルフは無理

後者はイベントコマンド:変数操作+→その他→「このコモンイベントID」あるいはデバッグ文
2017/10/09(月) 23:44:16.47ID:zsIhKPVY
>>24
やっぱり変数名は無理だったか
でもコモンIDが取れるだけでも十分なんで助かりました!
2017/10/10(火) 03:45:47.77ID:+tOndh3q
通常変数と予備変数は普通にDB操作で名前取れると思うけど
2017/10/10(火) 12:06:53.33ID:iszfWs9g
>>26
操作手順よろ
2017/10/11(水) 02:42:28.80ID:Zx3+P1vU
>>26
ほんとだウッカリ

>>27
イベントコマンド:DB操作→システムDB→DBタイプ番号の「名前」にチェック入れてプルダウンから「通常変数名」選ぶ
「データ名取得[文字]」にチェック入れる
2017/10/12(木) 19:43:23.94ID:+5U4oDu5
>>28
GJ
2017/10/14(土) 18:33:22.03ID:w+z+PFzU
質問です
キャラでは無くピクチャを用いたオリジナルのアクションゲーのシステムを作ってるのですが
並列処理で一時的に敵のアニメを停止させる為の条件分岐などを実行すると停止はするのですが
後に一時停止した条件を解除して再開させるとアニメが最初からやり直しになってしまいます
そう言った場合どうしたら良いのでしょうか?

呼び出し処理だと画像だけ残ると言う状態になる為に並列処理にしてました
2017/10/14(土) 19:17:31.52ID:YGH6tqVV
アニメーションパターンを保持しておくだけじゃないの
2017/10/14(土) 19:19:37.37ID:w+z+PFzU
そのやり方が分からなくて…教えて頂けたら幸いです
2017/10/14(土) 20:28:35.42ID:YGH6tqVV
中身が分からんから何とも言えんけど、普通はピクチャ使ってアニメーションを作っているなら、アニメーションのパターンをどっかの変数で管理してるよね?
停止させた時にその変数への代入も止めるか、もしくは停止させた時にその変数の中身を別の変数に代入しておいて、再開した時に引っ張ってくれば良い
2017/10/14(土) 20:33:33.82ID:w+z+PFzU
ありがとうございます
エフェクトのパターン変更使ってやってました
参考に頑張ってやってみます
2017/10/14(土) 20:57:07.22ID:YGH6tqVV
あー、それ使ってるのか
エフェクトの自動変更だと現在のパターンが何か分からんから、それ使わずにピクチャのパターンを切り替えたほうが良いよ
演算で処理重くなるけど、キャラクター100体同時にアニメーションとかしない限りは問題ない
2017/10/15(日) 21:29:38.35ID:s7pWkUB4
回答ありがとうございます

更に質問なのですが、変数をスイッチのようにして
ループが途切れたら並列でアニメの呼び出しコモンを呼んで
再度止まった所からアニメを再生する事には成功したのですが
呼出し後のアニメがガタガタになるのですがこの場合はどうしたらよいのでしょうか?

並列処理だから何度も呼ばれてアニメもガタガタになってしまうと言う事なのだと思うのですが
対処法が分かりません
2017/10/16(月) 00:03:25.80ID:h4EJ0T6L
これだけの情報だとどうしようもないのう
問題をもうちょい整理してほしい

「並列処理だから何度も呼ばれて」がいまいちわかんなかったんだが、「何度も呼ばれない」ような条件分岐を入れるんじゃだめなん?
並列実行コモンを複数動かしてるとかじゃないよね?
3834
垢版 |
2017/10/16(月) 00:22:09.33ID:HXLvX2R8
説明だと分かり辛いと思ったので画像でこんな感じです
https://light.dotup.org/uploda/light.dotup.org486658.jpg
https://light.dotup.org/uploda/light.dotup.org486659.jpg
https://light.dotup.org/uploda/light.dotup.org486661.jpg
位置によって番号使い分けてるのでループもすっきりしてませんが
これで一応目的のアニメは動きます

一時停止フラグがONの時に
一時保持パターンをパターン変数に格納してアニメが動くようにしました
問題は3枚目のもので停止した後に起動するイベントなのですがそれが起動しても
アニメが続きからではあるけれどカクカクで見れたものにならないんです
そのカクカクの解消の仕方が分かる方が居ましたら教えて欲しいです
3934
垢版 |
2017/10/16(月) 00:24:04.20ID:HXLvX2R8
情報が足りないと思ったので連投すみません
コモンの種類は1枚目が呼び出し、2枚目が並列(一時停止中)
3枚目が並列にしたらいいのか呼び出しにしたらいいのか分からずに居ます
2017/10/16(月) 00:57:27.16ID:h4EJ0T6L
一枚目の呼び出しコモンがアニメーションさせる処理、停止中に二枚目が並列で動いてて
三枚目がアニメーションを再開するコモンと

停止→再開でカクカクするんならウェイトかな
並列でアニメ処理呼び出してるせいで二重にウェイトがかかってるか
どっかでV162自体の設定をいじってるかくらいしか思いつかない
4134
垢版 |
2017/10/16(月) 02:24:42.40ID:HXLvX2R8
ありがとうございます
たぶんその二重ウェイトだと思います
V162自体は先に設定してそこから一切変化は無いので
そのウェイトは具体的にどういった場所に多いんでしょう?
4234
垢版 |
2017/10/16(月) 02:58:54.11ID:WExZbfg2
無事解決しました!
親切丁寧にありがとうございました
2017/10/22(日) 01:26:48.49ID:iERc+/n4
ピクチャを遠景のようにマップと位置連動させたいです(キャラクターの移動幅は0.5マス)
ピクチャをスクロールとリンク、座標を対照モードでXY座標を0にして表示したのですが
うまく連動してくれません。もしいい方法があれば教えて頂けないでしょうか
2017/10/22(日) 09:03:52.73ID:Ubb38/PY
スクロールとリンクにチェック入れて表示させたら、後はピクチャの位置を自分で動かさない限り、マップと位置連動するでしょ
対照モードってのが何のことかは分からんけど、相対モードのことならチェック入れんでええぞ
2017/10/23(月) 20:54:40.65ID:EH9jQ610
>>44 対照←誤字でしたすいません。ありがとうございます!うまく動作できました
教えて頂いたようにいかないと試行錯誤していたらそもそもピクチャ表示を
並列実行で表示させ続けていたことに気づけました…
4634
垢版 |
2017/10/28(土) 23:46:19.93ID:p25YBVNK
>>34で質問していた者です
無事、1つのアニメ動作は上手く行くようになったのですが、同時に2つ3つとアニメを動かしたいと場面があり
そこでまたポーズ画面のような一時停止ON/OFF処理をしたいのですが
複数同時にその各アニメの為にコモンを呼び出して動かす方法が分かりません

並列処理で2枚目以降を呼び出してやってしまうと2枚目以降のパターンが停止してくれません
一括してその最初に作ったアニメコモンのループ内で処理しようとすると
当然2重ループだったりウェイトで1枚目のアニメに影響を及ぼしてしまいます

どのようにしたら上手く行くでしょうか?
教えて頂けたら大変助かります!
2017/10/29(日) 00:59:04.22ID:TMZJDJll
うまくいくかわからんが、と前置きしとくよ!

まずアニメパターンを管理してるデータベースに動作中か停止中かの項目を用意

次に「アニメ動かすコモン」の中身
1つのアニメに対して
 ・動作/停止の情報をデータベースに拾いに行く
 ・動作中なら次のパターンに更新、停止中なら更新しない
ざっくりこの二つの処理を動かすアニメの分だけループで実行
ウェイト挟む

んで、この「アニメ動かすコモン」を文字通りアニメを動かしてる間はずっと並列実行させておく

これで上手いこといけばコモンは一つで済んで、全アニメ停止、あるアニメは動かし続けてあるアニメは停止、とかもできるんじゃないかな
2017/10/29(日) 01:09:18.20ID:TMZJDJll
念のため補足
データベースは、1データにつき1つのアニメの情報を管理してる前提で書いてるよ!
2017/10/29(日) 18:35:20.93ID:ADZ4P52+
ウディタでアクションゲームを作るならピクチャごとにDB管理しないと無理だよね
50名前は開発中のものです。
垢版 |
2017/10/29(日) 22:35:52.58ID:gPuFfnfD
http://seosearch.php.xdomain.jp/seo/main/seoindex.html
5134
垢版 |
2017/10/30(月) 16:48:28.44ID:hMAAabU8
回答貰えて助かりました
無事問題だった部分も解決できました!

ループ内で変数切り替わりも出来るようにすれば
各アニメ1つにつきコモン1つずつで解決するみたいです

ありがとうございました
2017/11/01(水) 10:13:46.03ID:nK0CZH5j
今の(それかセーブデータの)可変データベースの内容を
csvやテキストなどで、あるいは画面やログに、出力させる機能ってありますか?
それとも自分でコモン書いて走査させなきゃできませんか?
2017/11/01(水) 10:36:44.57ID:80WjE/+r
http://www.silversecond.com/WolfRPGEditor/Help/04ev_db.html
2017/11/02(木) 01:46:19.95ID:OAQljnVX
マウス操作を作り始めたんだけど、マウスポインタ(Windowsのほう)を消すのはどうするんだっけ
2017/11/02(木) 01:57:32.82ID:xrH+Ndr7
システム変数74
2017/11/02(木) 14:14:41.53ID:OAQljnVX
無事視界がスッキリしました
ありがと!
2017/11/03(金) 00:11:40.42ID:LI9KA0HP
現在表示されてるピクチャが何枚あるか調べるデバック用のコモン作ってます

+変数操作でそのピクチャ番号にピクチャが表示されていれば「枚数」に+1して99999回(ピクチャ最大数)繰り返す、
というものですが50万回エラーが出てしまいます

繰り返し回数を分割してウェイトを入れるしかないでしょうか?
2017/11/03(金) 00:39:22.62ID:RWh+ltrg
繰り返し回数を分割しなくても
ピクチャ番号一緒にカウントして2〜30000おきに1フレームウェイトすれば大丈夫と思う
ぶっちゃけあのエラーでても無限ループさせてなけりゃ動くけどね
2017/11/03(金) 01:05:11.99ID:KFmT+s1g
2万以上だとエラーはでなくても処理落ちすっから1万で1ウェイトのほうがいいと思う

ところでF8じゃあかんの?
2017/11/03(金) 02:21:44.20ID:LI9KA0HP
助言をいただけたので該当のコモンが作れました
感謝!

>>58
一定カウント毎にウェイト入れるので行けました

ピクチャ番号と該当ピクチャを一覧に表示して、自分的にわかりやすいように確認できるコモンを作ってたんで、エラーで一度止まるのをどうにかしたかったんです

>>59
F8だけだとどれがどれだかわかりにくくて(汗

あと、2万以上だと処理落ちってのはCPUよりもウディタの仕様なんですかね?
今回ので初めて処理落ちを経験したんで普段の自作コモン(まぁまぁアニメーションとか計算とかやったり)作りには影響ないと思うんですが、一応気に留めておきたいと思います
以前ツクールXPで自作システム作ってたときにCPU良くしても重さが変わらなかったんで、それに似てるのかなぁと
2017/11/03(金) 02:40:38.80ID:KFmT+s1g
ウディタの仕様
今のバージョンになってから簡単なコマンド文の処理時間を自分で計測してみたけど、
ウディタ 処理時間 で検索するとでてくるサイトのデータとほぼ同じだったし多分変わらんと思う
実際に計算して処理落ちするように組んだら、しっかり処理落ちするし

ちなみにウディタは60Fだから1Fのコマンド処理時間を約16.6ms以内に抑えないと処理落ちする
2万以上だと処理落ちするってのは、条件分岐(最も軽い処理で6.6ms * 2)+書き換え(1.7ms * 2)で既に16.6msに達しているから.これに変数操作+の処理とループ処理の分足したら確実に超える

一応処理落ちしててもスキップ×2とか×3にして30Fとか20Fにすれば大丈夫だけどね
2017/11/03(金) 03:00:23.48ID:LI9KA0HP
詳しい解説ありがとです!
今まであまり気にしないことにして後回しにしてた問題がいろいろ腑に落ちました
これでメインコモン作成が捗りそうです
2017/11/03(金) 03:02:14.94ID:KFmT+s1g
あっでも俺のPCくっそ古いやつだからそこまで処理速度変わらんの当たり前だわ
CPUも i5 3550 3.30GHzの第三世代だし
2017/11/03(金) 17:32:47.95ID:uREFLT5A
某袋怪物のように場所を移動した時に特定の画像を表示するということをやりたいのですが上手く出来ないです…
トランジションの合間に挿入すればと思って
実行→画像表示→再度トランジション実行して画像削除
とやってみたのですがそもそも2回目のトランジションが発動しないです
どのように組めばあれの再現ができるでしょうか?
2017/11/03(金) 18:15:23.44ID:uREFLT5A
すいません自決しました
普通に場所移動の前に画像を挿入したらそれっぽいのができました
2017/11/03(金) 23:26:42.30ID:RPQLXyWk
死んだか…
2017/11/05(日) 22:22:55.88ID:vKS5F3HN
基本システム2の181X[戦]ダメージ・回復ポップアップのCself3[表示タイプ]の数値はどこから取得されているのでしょうか?
2017/11/05(日) 23:03:38.34ID:iCj/cYtE
引数だよ
コモンイベントを呼び出す際に任意に入力される値

コモンイベント → イベントの挿入 でコモン181を選択すると選べるようになる、【コモンEv入力(数値)】の欄のがそれ

コモンイベント全体から、コモン181を呼び出している部分を検索すれば、何が入れられているか分かるよ
2017/11/06(月) 19:56:15.86ID:tyN/WOda
>>68
遅れましたがありがとうございました
2017/11/08(水) 16:56:03.80ID:uP0YdiyS
質問です

ウディタで加速度などは関係無く何かしらの物を投げて
ループ内で放物線を描いてターゲットに当てるようにしたいのですが
どのようにして作ったら良いか分からなくて詰んでます
ヒントなど頂けたら助かります
2017/11/08(水) 17:54:07.40ID:WQUOsR5d
オイラー法で求めちゃえば?
2017/11/08(水) 20:50:16.10ID:qxC5eXFt
オイラー法ってのは、ざっくり説明すると
xn+1 = xn + dx/dt * dt
yn+1 = yn + dy/dt * dt
で常微分方程式を求める方法や

これを物理演算でわかりやすく解説するなら
[次のx座標] = [今のx座標] + [水平方向の速度] × [時間間隔]
[次のy座標] = [今のy座標] + [今の鉛直方向の速度] × [時間間隔]
ってことになる。

じゃあ[水平方向の速度]と[鉛直方向の速度]はどうなるのっていうと、これは採用する式で異なるんだけど、今回は簡単のために空気抵抗が発生しないことを仮定すると
[水平方向の速度] = [初速] × [cosθ]
[今の鉛直方向の速度] = [前回の鉛直方向の速度] - [加速度] × [時間間隔]
ってことになる。
注意事項だけど、座標系は画面右方向をx軸正、画面上方向をy軸正として考えている。
また、θはx軸からの左回りの角度を表す。

そんで式を整理すると
[次のx座標] = [今のx座標] + ([初速]×[cosθ]) × [時間間隔]
[次のy座標] = [今のy座標] + ([前回の鉛直方向の速度] - [加速度] × [時間経過]) × [時間経過]

ここから簡単のために[時間経過] を 1 として省略することで次式として纏められる
[次のx座標] = [今のx座標] + ([初速]×[cosθ])
[次のy座標] = [今のy座標] + ([前回の鉛直方向の速度] - [加速度])   ※(初期の鉛直方向の速度 = [初速] × [sinθ])

んであとは座標系をウディタ用に治すと、y軸方向は反転して、θはx軸から右回りであるため次式で表される
[次のx座標] = [今のx座標] + ([初速]×[cos-θ]) = [今のx座標] + ([初速]×[cosθ])
[次のy座標] = [今のy座標] + ([前回の鉛直方向の速度] + [加速度])  ※初期の鉛直方向の速度 = [初速] × [sin-θ] = - [初速] × [sinθ]
2017/11/09(木) 03:27:01.85ID:221263y4
今見直したけど[時間経過]のところは[時間間隔]の間違いだわ
2017/11/09(木) 10:16:54.78ID:cdLtJfAN
それっぽく見せたいだけならyの減算値を1ずつマイナスして頂点で反転とかでもアリ
2017/11/09(木) 11:25:21.45ID:AkGqjVCn
それもやっていること自体は二つ上の話と同じだな。速度から加速度1を引いている
というか加速度使わずに多様な放物線運動を描くのって、かなり面倒じゃない?
2017/11/09(木) 18:27:00.34ID:9buPIUr9
皆様ヒントありがとうございます!
参考に作ってみます
2017/11/11(土) 15:05:33.60ID:0VSus3te
自作コモンのみでコマンドRPG作ってて、ふとこんな楽な機能あったんだ!と思うことがあります
例えば、表示中のピクチャー番号を取得するコモン作ってたけど、変数+使ったら簡単に取得できたとか

そこで質問ですが、
コモンイベントの予約ってどういう時に使えるんでしょうか
(マップイベントは使ってないです)

こう使うと便利だよ、とかあれば教えて欲しいです
2017/11/11(土) 15:18:20.77ID:fVQGIoXQ
1度限りの自動実行
2017/11/11(土) 20:07:45.84ID:0VSus3te
その1度限りの自動実行は具体的にどういう処理で使えます?
ゲームのシステムで例えて貰えるとありがたい
2017/11/11(土) 22:20:32.48ID:fVQGIoXQ
並列実行から自動実行で呼び出したい場合に通常変数使わずに出来る
他の使い方としては、入れ子にしたくない時に使うぐらい。実行イベントを最後まで処理してから呼び出したい状況とか

前者の実例は基本システムのコモン126のような場合
後者の実例は前スレ948のような場合かな
81名前は開発中のものです。
垢版 |
2017/11/22(水) 22:16:03.47ID:8JvvIu/j
WOLF RPGエディター製のゲームを仮想フルスクリーンで表示出来るようにするツール等って無いでしょうか?
Borderless Gaming、FullScreenwin、Sizerのみっつを試してみましたがどれもダメでした・・・orz
F4で画面サイズを切り替えると、小中大のみっつしかなく擬似フルスクリーンにならないのです・・・
82名前は開発中のものです。
垢版 |
2017/11/23(木) 18:52:32.73ID:6pil6cPW
技能の使用回数を制限するにはどうしたらいいですか?
2017/11/27(月) 16:43:39.97ID:75csviHP
>>81
ツールは知らん
borderlessじゃなければF11でフルスク、2.20以降であればF4なりでborder有り最大化できるけど

>>82
前スレ806
全部の技能に制限つけたいなら根本的に改造
84名前は開発中のものです。
垢版 |
2017/11/27(月) 21:20:26.99ID:PxV5Tvsb
>>83
プレイする側なのですが、こちらでバージョンを上げる等の作業って出来るのでしょうか?
無知ですみません、よろしくお願いしますorz
2017/11/28(火) 01:14:56.36ID:1PYMS7tN
エラーが発生する可能性もあるけど
ウディタ公式で2.21のエディタをダウンロードして、解凍して中にあるGame.exeを使って、変更したいゲームのフォルダにあるGame.exeを入れ替える
ダメだった場合、もとに戻すために、元々あったGame.exeはGame.exe.oldとか適当な名前を付けて残しておくこと
86名前は開発中のものです。
垢版 |
2017/11/28(火) 04:32:35.32ID:HCPUYc76
青鬼作れるエディタとかないですか
2017/11/28(火) 04:38:34.29ID:lp+NQi+h
青鬼はツクールXP製だからツクールXP買えば
88>>82
垢版 |
2017/11/28(火) 13:49:57.31ID:d9pBZh9z
>>83
ありがとうございます。
でもこの方法だとアイテム欄に技能発動アイテムが表示されちゃいますね
2017/11/28(火) 15:29:48.93ID:YObfjvFQ
青鬼なら一部マップに自分がどこのマスなら起動みたいなフラグ作っておいて
自分を追尾してくるようなコモンを作ったら作れると思うよ
システムは1から作るとしてメニュー画面より先にそこを作ってしまって
それからはローグライク系ゲームのコモンもしくはプログラムを探して処理を参考にしてみると良いかもね
2017/11/28(火) 19:11:46.06ID:1PYMS7tN
>>88
アイテム一覧算出のコモンで対象のアイテムの場合だけ表示しないようにすれば
技能が20〜30個程度ならアイテム消費する形のほうがそのまま利用できるから楽だよ

技能が100個近くあるなら戦闘システム改造したほうが楽だと思うけど
91>>82
垢版 |
2017/11/28(火) 19:32:05.61ID:d9pBZh9z
>>90
技能そのものは30も使わないと思いますが
アイテム一覧算出コモンを見ても、どこをどう弄ればアイテムを非表示にできるか
自分にはちょっと難しくてわからないです。
2017/11/28(火) 20:40:16.38ID:1PYMS7tN
戦闘外の場合はコモン110、戦闘中の場合はコモン153がアイテム一覧算出

とりあえずコモン153に限って説明すると

16行目〜86行目のループの中で、全部のアイテムを調べて、【1個以上存在する場合】に万能ウィンドウにアイテム名と個数を表示するって処理になっている
この【1個以上存在する場合】の条件分岐処理が19行目〜84行目に存在するんだけど、
この条件分岐を、【特定のアイテム以外】且つ【1個以上存在する場合】に書き換えればいい

特定のアイテムってのをどうやって設定するかだけど、
例えば1個だけの場合は、(あまり褒められた作りじゃないけど) 【Cself30の値が特定の値以外】で設定すればいい
このループ中におけるCself30の値は、UDB2のアイテムのデータ番号に対応するんだけれども、
例えばサンプルゲームにおける薬ビンを表示させたくない場合は、薬ビンがデータ番号14なので、【Cself30の値が14以外】って設定すればいい
【Cself30の値が14以外】の条件分岐を作って、【一個以上存在する場合】の条件分岐を、その作った条件分岐の中に入れればいい

例えば、アイテムのデータ0〜30までが技能発動アイテムだとすれば、【Cself30の値が31以上】の条件分岐を作って、【一個以上存在する場合】の条件分岐を、その条件分岐の中に入れればいい


発動アイテムは連番で作るつもり無いから、ユーザDBでアイテム一覧に表示するかどうか設定したい って場合は
UDB2のタイプ内容を書き換えて.
例えば項目21番をアイテム一覧に表示するかどうかの変数(1 = 表示しない)と設定して
コモン153の19行目の前でDB操作でユーザDB DBタイプ番号2 データ番号Cself30 項目番号21番の値をCself13とかに代入して
【Cself13の値が1以外の場合】って条件分岐を作って、【一個以上存在する場合】の条件分岐を、その条件分岐の中に入れればいい
93>>82
垢版 |
2017/11/29(水) 00:02:06.24ID:mLc/QTyN
>>92
説明ありがとうございます。
94名前は開発中のものです。
垢版 |
2017/11/30(木) 03:27:27.17ID:DSSmuT2Y
アクションRPG作れる無料エディタってあります?
2017/11/30(木) 05:54:40.96ID:etvkm9os
うにてぃ
2017/11/30(木) 22:31:45.74ID:OX0MMTWz
同じデータを読み出すとき、可変データベースから読み出すのと
文字列から一行切り出しで読み出すのとではどんな違いがあるでしょうか
基本的なことなのかもしれませんが、検索してもうまく見つからなくて・・・
2017/11/30(木) 23:00:41.93ID:D/mhY9O2
すまんがなんで可変データベースなんだ?
そもそもの役割が違うから、その辺ケアして説明すると長ったらしくなるんで理由聞きたいんだけど
2017/11/30(木) 23:52:32.67ID:C4LW+MSB
何か根本的な部分で勘違いをしてる気配がする
2017/12/01(金) 00:11:11.47ID:oNj+5j1A
どうでもいいがどう検索したんだろう
2017/12/01(金) 18:31:46.23ID:odww3+yY
ああ、何となく聞きたいことが分かったわ
可変データベースに入力しているデータと、同様に適当なデータ形式で文字列として羅列したデータ(txtやらdataやらのデータ形式で保存したもの)
それぞれを読み取る場合にどんな違いがあるのかってことか

ぶっちゃけて言えばやること自体はほとんど変わらない。
どちらも大雑把なプロセスとしては下のような形で使用する

1. HDD(もしくはSSD)に保存されているデータを読み取る
2. 読み取ったデータから、記載されている数値等をラベル付けしてメモリに格納
3. 各々のコマンドでメモリに格納したデータを呼び出して利用

この処理の中で一番時間を食う部分が1〜2の部分で、最近はかなり早くなっているけど、未だにHDDやSSDに対するアクセス速度はメモリに対するアクセス速度と比べてとにかく時間を食う。(環境によるが、HDDだとだいたい速度が100〜1000倍程度違う)
サウンドに【メモリに先読みロード】って項目がある理由がこれ。HDDからの読み込みの場合に、時間がかかってズレてしまうことがあるから。

なので可変データベースやユーザデータベースは、ウディタを起動した時点で1〜2の処理を行って、数値をメモリに格納している。
データベースを肥大化させすぎた場合にウディタの起動が遅くなる理由がこれ。


そういったことで、そこまで大きな違いは無いけれども、あえて言えば
可変データベースに入力しているデータは、ウディタを起動した時点でHDD(もしくはSSD)からの読込処理が終わっている
txtやらdataやらの外部に保存してあるデータは、ウディタを起動した時点ではHDD(もしくはSSD)からの読込処理が終わっていない
って違いがある
2017/12/01(金) 19:13:24.94ID:5GLsTfo0
96です。理解不足なうえにレスが遅れてすみません
質問の意味は、>>100のかたが推測してくださった内容で合ってます
似たプロセスので何か違いがあるのか気になっての質問でした
こんなに詳しく解説してくださってありがとうございました

ちなみに、たとえば1つのアイテムに対して5つの情報があって
可変データベースのタイプ、データ、項目の「項目」に数値や文字列を入れる場合、

・項目数5(1つずつデータ格納) → 1つずつ(Cselfなどに)読込
・項目数1(コンマ区切りや改行区切り) → 切り出しして(Cselfなどに)読込

というプロセスがあって結果は同じだと思うのですが、
何か違い(使い分ける場面など)はありますか
わかりづらい質問になっていたらすみません
2017/12/01(金) 19:15:55.00ID:5GLsTfo0
> 項目数1(コンマ区切りや改行区切り)
aa,bb,cc,dd,ee のようにデータ5つを1つの項目に羅列して格納という意味です
2017/12/01(金) 19:41:05.74ID:Xk/T9USf
タイプあたりのデータ数を増やしたくないけど
1データに100項目じゃ足りないとなったら
文字列操作前提で複数の情報をひとつの項目に圧縮して書きこめるのは確か
でもバグが増えそう

基本システムなら、例えばタイプ1の技能習得lv
デフォルト仕様だと項目数の制限で技能を50個までしか習得できないんだよね
例えばこれをもっと増やしたいって時なんかに
レベル1で覚える複数の技能を一つの項目にまとめて書き込むみたいな荒技が一応できる
できるけどたぶんイチからスキルシステム組むのとそこまで変わらないくらいには面倒くさい
2017/12/01(金) 22:03:36.39ID:odww3+yY
そもそもデータベースの入力用UIが、改行とかコンマ区切りで1項目に複数入力するのに適したものじゃない
データ数が多いなら素直にタイプ数を1つ増やして拡張するか、外部にデータを用意したほうがいい
コンマ区切りで手打ちするぐらいなら、表計算ソフト使ってcsv形式で保存したほうがマシ。こっちのほうが目視確認しやすいから入力ミスによるバグも発生しにくい

基本的に変数纏めるのは悪手なことが多い
ビット積使って纏めて条件分岐に掛けたい時や通信のパケット減らしたい時以外は辞めた方がいい
2017/12/01(金) 22:11:33.23ID:Nln7J1zY
ありがとうございます
データ数次第で選択の余地があるにはあるということですね
片道勇者やワールドフロンティアがアイテムを文字列(=データ番号?)で
管理しているらしいので、
慣れた人が文字列を選択するだけの利点があるのか気になっていました
コモンイベントの中で読出・書出するなら便利なんですかね・・・
2017/12/01(金) 22:44:13.00ID:odww3+yY
片道勇者が具体的にどんなアイテム管理をしているか分からんけど、
ワールドフロンティアの方は見た感じ汎用性の高さかな

明確な上限を定めたくないって場合には有用。これなら理論上PCがクラッシュするまでアイテムを持つことが出来る。
ウディタで唯一使える、動的にメモリを確保する変数って使い方
2017/12/04(月) 12:34:26.77ID:YtU5gjPY
俺は所持品データは書式を決めて1つの文字列変数に格納してる

[1]id26,数37,質100
[2]id3,数6,質80 みたいな

idがx番のアイテムのデータが知りたい場合は
@idx,以降を切り出し
A知りたい情報の見出し以降を切り出し
B変数に代入(ウディタの仕様で代入時に,以下自動切捨)
の手順でできる
なにより仕様変更に強くてオススメ
2017/12/05(火) 15:02:44.37ID:fIfObdfc
エディターのテストプレイ選んだらそこまでのデータって保存されるの?
電気ポットと電子レンジ同時に使うとブレーカー落ちて怖いんや
2017/12/05(火) 15:04:48.66ID:ebdhpGV1
試せばいいじゃない
2017/12/05(火) 16:01:41.03ID:fIfObdfc
>>109
仕様かどうかを聞いている
知らねーならでしゃばんな
2017/12/05(火) 16:20:37.29ID:ALhjE8X8
聞いてなくてワラタ
2017/12/05(火) 16:25:04.45ID:fIfObdfc
>>111
ぼく質問スレで答えたい→ぼく答え知らない→ぼく何か煽れる文言を見つけて書き込む→回答者になった気分www
2017/12/05(火) 16:53:55.03ID:8c3xZSgq
電気ポットと電子レンジ同時に使うとブレーカーが落ちるのは仕様や
ドライヤーでもなるぞ
2017/12/05(火) 17:39:25.18ID:fIfObdfc
>>113
せめてウディタの回答が出てからにしようねw
荒ぶる承認欲求かよw
2017/12/05(火) 19:26:34.08ID:OKXHwPw1
されるよって言われて信用できるのか?なんの責任もない馬の骨の言葉を?
素直に逐一セーブしたほうがいいんでない?
まあされてるっぽいけど
2017/12/06(水) 00:11:50.09ID:SOstUHMm
>>115
基本的に動作確認する度に保存はしてるんだけどね
回答ありがとー
2017/12/14(木) 11:10:18.69ID:pnZ5UTVa
ウディタは1フレームに50万行読むと動作が止まるようですが
この行数に「条件分岐で条件が適合せず実行されなかった」行は含まれますか?
2017/12/15(金) 17:21:42.85ID:BBi0h1XI
本スレからリンクされてないからか過疎ってるね
転載しとくわ
2017/12/15(金) 17:24:22.96ID:BBi0h1XI
つーか落ちてたのかw
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況