X



WOLF RPGエディター 質問スレ 其の11 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
垢版 |
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が立てて下さい。
立てられない場合は質問を自重して本スレに報告して下さい。
0203名前は開発中のものです。
垢版 |
2018/02/11(日) 06:22:36.85ID:USXLuTCU
jrpg作るのってunityとかだと厳しいんですか
0204名前は開発中のものです。
垢版 |
2018/02/11(日) 12:56:58.06ID:MFzV6o15
全く中身の伴わない質問はするだけ時間の無駄だぞ
unityの質問はunityのコミュニティでやれと言いたいが、あっちでも邪険に扱われそう
0205名前は開発中のものです。
垢版 |
2018/02/12(月) 14:08:08.70ID:Bc5EV0SO
並んでる箱に1〜9までの数値を番号の重複無しでランダムで入れたいんだけど簡単に入れていく方法ありますかね?
今やってるのだと20行くらいは使ってます
0206名前は開発中のものです。
垢版 |
2018/02/12(月) 15:55:39.18ID:L+vp/Ay0
簡単にやる方法ねぇぞ。やっていると思うけど、やるとしたら、こんな感じじゃあない?
WoditorEvCOMMAND_START
[121][4,0]<0>(1600010,1600020,0,4)()
[179][1,0]<0>(9)()
[170][0,0]<1>()()
[121][4,0]<2>(1600010,1,9,24592)()
[121][4,0]<2>(1600016,1600010,0,32)()
[121][4,0]<2>(1600011,1600010,1600020,4104)()
[121][4,0]<2>(1600012,0,0,0)()
[121][4,0]<2>(1600015,0,0,0)()
[179][1,0]<2>(1600011)()
[121][4,0]<3>(1600013,1600020,1600012,4)()
[121][4,0]<3>(1600014,1600013,0,32)()
[111][4,0]<3>(1,1600014,1600016,2)()
[401][1,0]<3>(1)()
[121][4,0]<4>(1600015,1,0,0)()
[499][0,0]<3>()()
[121][4,0]<3>(1600012,1,0,256)()
[498][0,0]<2>()()
[111][4,0]<2>(1,1600015,0,2)()
[401][1,0]<2>(1)()
[171][0,0]<3>()()
[499][0,0]<2>()()
[498][0,0]<1>()()
[121][4,0]<1>(1600010,1,0,256)()
[498][0,0]<0>()()
[106][0,1]<0>()("\cself[20] \cself[21] \cself[22] \cself[23] \cself[24] \cself[25] \cself[26] \cself[27] \cself[28]")
WoditorEvCOMMAND_END
0207名前は開発中のものです。
垢版 |
2018/02/12(月) 16:14:10.17ID:YFoiOVmL
WoditorEvCOMMAND_START
[121][4,0]<0>(1600010,1600020,0,4)()
[121][4,0]<0>(1600011,1,0,0)()
[179][1,0]<0>(9)()
[121][4,0]<1>(1600010,1600011,0,16)()
[121][5,0]<1>(1600010,1,0,65792,1)()
[498][0,0]<0>()()
[179][1,0]<0>(50)()
[121][5,0]<1>(1600012,1600020,1600028,90124,1)()
[121][4,0]<1>(1600014,1600012,0,32)()
[121][4,0]<1>(1600012,1600013,0,48)()
[121][4,0]<1>(1600013,1600014,0,16)()
[0][0,0]<1>()()
[498][0,0]<0>()()
[106][0,1]<0>()("\cself[20] \cself[21] \cself[22] \cself[23] \cself[24] \cself[25] \cself[26] \cself[27] \cself[28]")
WoditorEvCOMMAND_END
0208名前は開発中のものです。
垢版 |
2018/02/12(月) 16:43:53.35ID:YlGMwymp
▼ 初期設定
■変数操作: CSelf10[配列数] = 9 + 0
■変数操作: CSelf11[配列先頭[vPtr]] = 1600050 + 0
▼ 配列に1〜9の値を順番に入れておく
■変数操作: CSelf20[i] = 0 + 0
■回数付きループ [ CSelf10[配列数] ]回
|■変数操作: CSelf30[tmp] = CSelf11[配列先頭[vPtr]] + CSelf20[i]
|■変数操作: V[CSelf30[tmp]] = CSelf20[i] + 1
|■変数操作: CSelf20[i] += 1 + 0
◇ループここまで◇◇
▼ fisher-yatesによるシャッフル
■変数操作: CSelf20[i] -= 1 + 0
■回数付きループ [ CSelf10[配列数] ]回
|■変数操作: CSelf30[tmp] = 0 〜 CSelf20[i]
|■変数操作: CSelf37[配列1[vPtr]] = CSelf11[配列先頭[vPtr]] + CSelf20[i]
|■変数操作: CSelf38[配列2[vPtr]] = CSelf11[配列先頭[vPtr]] + CSelf30[tmp]
|■変数操作: CSelf39[HOLD] = V[CSelf37[配列1[vPtr]]] + 0
|■変数操作: V[CSelf37[配列1[vPtr]]] = V[CSelf38[配列2[vPtr]]] + 0
|■変数操作: V[CSelf38[配列2[vPtr]]] = CSelf39[HOLD] + 0
|■変数操作: CSelf20[i] -= 1 + 0
◇ループここまで◇◇
▼ 確認
■変数操作: CSelf20[i] = 0 + 0
■回数付きループ [ CSelf10[配列数] ]回
|■変数操作: CSelf30[tmp] = CSelf11[配列先頭[vPtr]] + CSelf20[i]
|■変数操作: CSelf30[tmp] = V[CSelf30[tmp]] + 0
|■デバッグ文:cself[\cself[20]] = [\cself[30]]
|■変数操作: CSelf20[i] += 1 + 0
◇ループここまで◇◇
■デバッグ文:------------------------
0210名前は開発中のものです。
垢版 |
2018/02/12(月) 17:14:53.60ID:y6I7WH6v
>>207が簡潔でいいね 11行か
運任せな16行が限界だったわ
WoditorEvCOMMAND_START
[122][2,1]<0>(1600005,0)("1,2,3,4,5,6,7,8,9")
[170][0,0]<0>()()
[121][4,0]<1>(1600011,1600020,8000008,4)()
[121][4,0]<1>(1600010,1600011,0,32)()
[111][4,0]<1>(1,1600010,0,2)()
[401][1,0]<1>(1)()
[121][4,0]<2>(1600011,1600005,0,16)()
[122][2,1]<2>(1600005,2816)(",")
[112][2,4]<2>(1,1600005)("<<NotFound>>","","","")
[401][1,0]<2>(1)()
[171][0,0]<3>()()
[0][0,0]<3>()()
[499][0,0]<2>()()
[0][0,0]<2>()()
[499][0,0]<1>()()
[0][0,0]<1>()()
[498][0,0]<0>()()
[106][0,1]<0>()("\cself[20] \cself[21] \cself[22] \cself[23] \cself[24] \cself[25] \cself[26] \cself[27] \cself[28]")
WoditorEvCOMMAND_END
0211名前は開発中のものです。
垢版 |
2018/02/12(月) 17:51:23.28ID:C3neVWcI
なんか大喜利みたいになってんな
とりあえず簡単に解説しとくと

>>206
変数に1~9のランダムな数を入れる
今まで入れた変数と中身が被ったらもう一度ランダムな数を入れ直す
被らなかったら次の変数へ

>>207
9つの変数に1~9の数を順番に入れておく
無作為に選出した変数同士の中身を入れ替える。十分な回数シャッフルすればきちんと混ざるだろうという理屈

>>208
基本的な考え方は207と同じ
順番に選ばれた変数と無作為に選ばれた変数を入れ替える。必ず全ての変数がシャッフル対象に選ばれるのが特徴

>>210
変数を基準に数字を無作為に選ぶ207と逆に、数字を基準に変数を無作為に選ぶ。既に選出された変数を選んだ場合はもう一度変数を選び直す
ただこれは変数を初期化していないので、初回以外はループを抜け出せない。実際に使う場合は変数を初期化する処理を追加しておくように
0215名前は開発中のものです。
垢版 |
2018/02/12(月) 23:26:45.42ID:Bc5EV0SO
まさに206〜の同じ流れで208に辿り着いたとこでしたw
どうしてもループ回数を最小限に抑えたい病なのと他の処理も噛ませるので大元のソースは出来るだけシンプルなのが良いので208方式で行こうと思います

210は発想に無かったので参考になりました
解説も助かりました

とりあえず自分の考えた処理がそこまでみんなと逸脱してないと確認できただけで収穫ですありがとでした!
0216名前は開発中のものです。
垢版 |
2018/02/13(火) 02:08:09.53ID:y+ijb5eg
文字列変数に値一覧入れて、ランダムで行を引っこ抜くというのも、思いついたけど、
これ、ウディタのデフォだけの文字列操作だけだと、行が長くなるだよなぁ

というか、正規表現を使った置換欲しいなぁ・・・
0217名前は開発中のものです。
垢版 |
2018/02/13(火) 18:28:59.08ID:6Dr4S9EC
・箱に順番にランダム値を被りなしで入れていく方法
・箱に1〜から順番に値を入れて行き無作為にシャッフルする方法
・箱に1〜から順番に値を入れて箱の順番で総当たりして交換先を無作為に選んでシャッフルする方法(ループは箱の数だけで済む)
・文字列変数に値を入れ無作為に箱に入れていく方法

色々な方法があるなぁ
0218名前は開発中のものです。
垢版 |
2018/02/16(金) 23:57:40.43ID:5J/5kY23
>>115
これ、セーブしてからテストプレイになるってウディタマニュアルのイベントマップのところにはっきり書いてあるわ
0219名前は開発中のものです。
垢版 |
2018/02/27(火) 07:58:39.12ID:AkU2Og6b
3dモデルって使えないんですよね?
0221名前は開発中のものです。
垢版 |
2018/02/27(火) 23:22:35.23ID:wb3FzUIW
質問です。
並列処理にてキー入力の連打を阻止して長押しに対応するコモンを作ったのですが、
キャンセルキーの方は機能するのですが、決定キー(下記参照)の方が機能してくれません。
どのようにしたら機能するでしょうか。
(キャンセルキーの方は長押し対応させてるので別コモンでの処理にしています)
決定キーでは長押しじゃなく連打処理をさせないような形にしたいです。
| | | |▼ キー入力判定
| | | |■キー入力:変数V40[キー入力A] / 決定(10) キャンセル(11)
| | | |■条件分岐(変数): 【1】 V40[キー入力A] が 0 と同じ
| | | |-◇分岐: 【1】 [ V40[キー入力A] が 0 と同じ ]の場合↓
| | | | |■変数操作: V41[キー入力確認B ] = 0 + 0
| | | |◇分岐終了◇
| | | |▼ Bが0ならばキー入力確認
| | | |■条件分岐(変数): 【1】 V41[キー入力確認B ] が 0 と同じ 【2】 V41[キー入力確認B ] が 1 と同じ 【3】 V41[キー入力確認B ] が 2 と同じ
| | | |-◇分岐: 【1】 [ V41[キー入力確認B ] が 0 と同じ ]の場合↓
| | | | |
| | | | |■条件分岐(変数): 【1】 V40[キー入力A] が 10 と同じ 【2】 V40[キー入力A] が 11 と同じ
| | | | |-◇分岐: 【1】 [ V40[キー入力A] が 10 と同じ ]の場合↓
| | | | | |■変数操作: V41[キー入力確認B ] = 2 + 0
| | | | | |■イベントの挿入: コモン99:[ 攻撃 ]
| | | | | |■ウェイト:10 フレーム
| | | | |-◇分岐: 【2】 [ V40[キー入力A] が 11 と同じ ]の場合↓
| | | | | |■変数操作: V41[キー入力確認B ] = 1 + 0
| | | | | |■
| | | | |◇分岐終了◇
| | | | |■
| | | |-◇分岐: 【2】 [ V41[キー入力確認B ] が 1 と同じ ]の場合↓
| | | | |■
| | | |-◇分岐: 【3】 [ V41[キー入力確認B ] が 2 と同じ ]の場合↓
| | | | |■
| | | |◇分岐終了◇
0222名前は開発中のものです。
垢版 |
2018/02/27(火) 23:34:40.65ID:DkFBB0WI
パッと見だと特に問題ないけど
V41って通常変数だっけ? 別のコモンで書き換えている可能性あるんじゃない?
0223221
垢版 |
2018/02/27(火) 23:46:34.71ID:wb3FzUIW
回答どうもです。
v41は通常変数ですね。
別コモンでも動作させる為にわざと通常変数使用してます。
攻撃のコモンだけ決定キーを押しっぱなしだと
勝手に二段三段と攻撃してしまうのでそこを何とか改善したいのです。
改善出来る箇所があったら教えて頂けたらと思ってます。
0224名前は開発中のものです。
垢版 |
2018/02/28(水) 00:00:42.41ID:Y/h7+CwL
いや、だから別のコモンでV41を0に書き換えているんじゃない?
提示された範囲に限って言えば問題ないよ
0225221
垢版 |
2018/02/28(水) 00:39:10.49ID:YWMwfcSU
確認してみましたが0にするような処理も見当たらなかったです
並列処理だからなんでしょうか
0226名前は開発中のものです。
垢版 |
2018/02/28(水) 01:30:42.10ID:Y/h7+CwL
同じように作ってもやっぱり問題ないし、別の部分が悪さしてるよ

デバッグ文使って、値を見て自分で調べるか
他人にデバッグして欲しいならゲームデータ丸ごとアップロードした方が早い

並列処理だからとかは全く関係ない
0227221
垢版 |
2018/02/28(水) 02:15:53.46ID:YWMwfcSU
すみません、別コモンで操作を受付無いようにしていた事が原因でした。
無事解決です。
親切に回答ありがとうございました。
0228名前は開発中のものです。
垢版 |
2018/03/12(月) 23:48:19.01ID:9jG5nPgF
質問です。
マップチップの通行設定で困っています。
「▲」チップ座標より後ろに行くとキャラがマップチップの裏側に入るについて

階段の手すりを作ろうと
チップより手前側に居る時はキャラクターより後ろ、
チップより奥側にいる時はキャラクターより手前に表示されるようにしたのですが
▲でもつねにチップがキャラクターの後ろ側に表示されるようになってしまい
反映がなされていないように見えます。
(MAP遷移して確認したり
ゲームを起動しなおして最初から確認しても直りません)
過去このような事象が起きた方、解決法など教えていただけると嬉しいです。
0229名前は開発中のものです。
垢版 |
2018/03/13(火) 00:43:43.70ID:E1jv6+/a
すみません!!
チップの前面判定なんていじった覚えもないのに変だと思い
上から全イベント洗っていたらキャラクターの動作指定させた時に誤クリックしたのか
表示が最前面ONになってました……自己解決しました……
0230名前は開発中のものです。
垢版 |
2018/03/17(土) 16:42:43.06ID:zVfXXTmt
基本的な質問で悪いんだけど
AIのアクションを判定ってどういうこと?

アクション12を判定にしたら12の後に必ずやるってことなの?
0231名前は開発中のものです。
垢版 |
2018/03/17(土) 17:37:08.31ID:Up2en/Vt
アクション12 を判定にしたら、そらその通り、アクション12を判定するんでしょ
アクション12の条件(5%の確率で実行とか)を満たしているかどうかの判定を行うってこと
んで満たしていた場合はアクション12に設定されている行動を行って、満たしていない場合は、次に設定されているアクションの判定を行う
0232名前は開発中のものです。
垢版 |
2018/03/29(木) 08:01:54.43ID:zfd7iL0I
初心者ですが質問です
現在マップのBGMをコモンセルフに格納しようと試行錯誤したのですがやり方が分かりません…
現在再生中のBGMではなく現在マップのBGMを取得するにはどうしたらいいのでしょうか?
0233名前は開発中のものです。
垢版 |
2018/03/29(木) 11:09:10.53ID:14Cfn6ho
今確認できる状況じゃないからあやふやだけど

確かsysDB0のマップ設定に、使用するBGM番号を格納している所がある
現在いるマップ番号は変数操作+のその他から取得できる
0234名前は開発中のものです。
垢版 |
2018/03/29(木) 22:13:50.75ID:kODKb9nI
初心者ですが質問です。
ロード後に同じ場所で敵が出るのを回避するために並列のコモンにcself0〜0を入れて乱数を無駄遣いしてみたのですが
それでも同じ位置が敵がでます・・・
ロード直後に同じところで敵がでないようにするためにはどこを変更するべきでしょうか
0235名前は開発中のものです。
垢版 |
2018/03/29(木) 23:44:14.42ID:14Cfn6ho
同じ場所? 同じ歩数ってこと?
コモン37のことだと仮定して話すと、乱数が介入するのはエンカウントした後に初期化するときだから、エンカウントするまでは乱数進めても意味ないよ
累積値が一定以上溜まった場合にエンカウントする仕組みだから、ロードから復帰した時にこれに乱数代入すれば良いんじゃね。累積値はCDB18のID65
0236名前は開発中のものです。
垢版 |
2018/03/29(木) 23:53:19.12ID:kODKb9nI
コモン37です。説明が欠けてました、すみません
ロード後のエンカウント値に乱数を入れればよかったんですね。
ありがとうございます
0237名前は開発中のものです。
垢版 |
2018/03/30(金) 16:14:06.22ID:x6pt+5f0
たびたびすみません。コモン37の続きです。
ロード直後の処理はコモン131のセーブ欄実行で行われてると思い、
コモン131のデータのロードCself12[対象のセーブデータ]の後にエンカウント値に乱数を入れてみました。
でも反映されてないみたいで・・・ロード処理の場所はここではないのでしょうか
0238名前は開発中のものです。
垢版 |
2018/03/30(金) 16:46:58.96ID:USYaeVUj
なぜ反映されてないのかを突き止めよう
エンカウント値を可視化して
毎回同じ値になるのか
ロード直後に乱数入れるまではうまくいってるのか
どこかでミスをしてないか、何が悪さしてるのか考えよう
0239名前は開発中のものです。
垢版 |
2018/03/30(金) 17:28:08.32ID:x6pt+5f0
ロード後に見てみると毎回同じ値になってますね・・
マップ内で乱数を取るイベント置いて、値を呼び出してみるとエンカウント累積値が変化してるので、
ロード時に乱数を挟む位置が違うみたいです。
ありがとうございます。もう少し調べてみますね
0240名前は開発中のものです。
垢版 |
2018/03/30(金) 19:53:32.51ID:ehZLemNf
ロード直後のみに実行されるコモンイベントつくりゃええねん
udbはセーブデータに反映されないから、それ専用の項目作って、そのudbの初期値の値の場合に実行されるようにすりゃいい
udb書き換える時に必須の変数呼び出し値については公式見て.イベントコード書き換えでもいいけど

例)udb[18: 0: 0]が0の場合に実行

■変数操作: CSelf10[呼び出し値] = 1018000000 + 0
■変数操作: CSelf11[判断] = V[CSelf10[呼び出し値]] + 0
■条件分岐(変数): 【1】 CSelf11[判断] が 0 と同じ
-◇分岐: 【1】 [ CSelf11[判断] が 0 と同じ ]の場合↓
|▼ ロード直後実行のなんか
|■変数操作: V[CSelf10[呼び出し値]] = 1 + 0
|■
-◇上記以外
|■ウェイト:999999 フレーム
|■
◇分岐終了◇
0242名前は開発中のものです。
垢版 |
2018/03/30(金) 21:24:49.10ID:x6pt+5f0
ロード直後に呼び出すコモンを作る必要があったんですね。
長時間いじりまわしてできなかったので助かりました。
ここで質問してよかった・・ありがとう
0243名前は開発中のものです。
垢版 |
2018/04/04(水) 15:49:38.17ID:yvXknPdJ
初心者です
基本システム使ってます

顔グラを1倍の大きさにして左下に移すことはできたのですが、画面の一番下から少し上にずらすことができません
コモン63の数値をいじったりしてるのですが、全く変化しなかったり顔グラが消えたり上から下に落ちてきたりで上手くいきません
0244名前は開発中のものです。
垢版 |
2018/04/04(水) 18:03:00.84ID:HRxRMH4U
161〜163行目のX座標とY座標が最終的に表示される座標
どんな処理してんの? ってのは前スレ>>56辺りから見たらわかる。以前のverの説明だから、ちょい行数はズレてるけど
0245名前は開発中のものです。
垢版 |
2018/04/04(水) 18:09:09.49ID:HRxRMH4U
ん?
左下に移すことができたなら、そこから更に位置をずらすことぐらい造作もないような気がするけど
0246名前は開発中のものです。
垢版 |
2018/04/04(水) 21:54:35.03ID:yvXknPdJ
左下に移すのはわかりやすいサイトがあったのでその通りやったらできました
だから根本はあんまりわかってないです

>>244
アドバイスありがとうございました
おかげで上手くいきました!
0248名前は開発中のものです。
垢版 |
2018/04/09(月) 10:13:33.28ID:HKXRmhg3
ウディタのメッセージ欄の記号の質問なんですが、
&#9825;のように、白抜きハートってどうやったらだせますか?
アイコンはうまく作れず、フォントはいいのが見つからず…
0249名前は開発中のものです。
垢版 |
2018/04/09(月) 15:43:31.37ID:ApWY4it3
ウディタはunicodeに対応していないから、普通にフォントで出そうとしても無理でしょ
数値参照文字はHTMLだけで使えるものだし
素直にアイコン描くか、絵文字用のフォント入れた方がいいよ
0250名前は開発中のものです。
垢版 |
2018/04/09(月) 19:54:51.33ID:xOsuGnoy
誰かいたら聞きたいんだけど
イベントが主人公から逃げるコモンを自分で作ろうとしてたんだけど、
壁に当たって動けなかったら指定した動きをするってシステムにしようとして、

1イベントの座標をCSelfに入れる
2キャラクターの動作指定でイベントを主人公から離れさせる
3もう一度別のCSelfにイベントの座標を入れる
4「1」の座標と「3」の座標が同じなら決めた動きをする

っていう風にしたら、なぜか壁に当たった時に主人公から離れて、
動けるときに決めた動きをするようになったんだけど、どうしてかわかる?
0251名前は開発中のものです。
垢版 |
2018/04/09(月) 20:04:48.88ID:xOsuGnoy
2の動作指定の時に動作完了までウェイトにチェックを入れれば普通に動くんだけど、
一つのコモンで大量のイベントを動かすために回数付きループを使ってて、
それでウェイトを入れちゃうとイベントが順番にしか動かないから
何とかしようとしてたら気づいたんだけど、なんでこうなってるのか理解できない。
一応このままでも動きを逆にすれば機能しそうだけど、できれば理解したい。
0252名前は開発中のものです。
垢版 |
2018/04/09(月) 20:51:46.09ID:0/SUIoDS
>>249
了解しました…できるだけ粘ってみます。
0253名前は開発中のものです。
垢版 |
2018/04/09(月) 20:56:10.12ID:ApWY4it3
>>251
ウディタの仕様からの予想と俺なりの解釈なんで、間違っていたらすまん。と最初に言っておく
間違ってたら誰か修正してくれ

ウディタの動作指定の仕様は、【一次予約】と【二次予約】から成り立っているんや。

(A) キャラクターが動いていない(チップの間にいない)状況の場合(移動中?の変数が0の場合)
 1. 移動処理が当たるまで処理を実行する
 2. 移動処理が入っていた場合は移動先のマスが空いているかの確認
 3. 移動先のマスが空いていた場合、Evの座標をそこへ移して、Evの移動処理を【一次予約】に書き込む。変数操作+の、対象Evの移動中?の変数を1にする
 4. まだ行が残っていた場合、【二次予約】へ書き込む
 ※これはコモンEvの場合の処理。マップEvの場合、移動以外の処理にも頻度が影響するため、一番最初の行以外は【二次予約】行き(のハズ)

(B) キャラクターが動いている(チップの間にいる)状況の場合(移動中?の変数が1の場合)
 1. 既に【二次予約】が存在していた場合は、全て消去
 2. 全ての新しい動作指定を【二次予約】へ書き込む

んでウディタの処理順番は大雑把に言うと

マップ並列実行→自動実行→コモン並列実行→ウディタ側の処理→画面更新

って感じ。んでキャラクターを実際に画面上で移動させたりしているのが、このウディタ側の処理なのよ。
このウディタ側の処理がどんな感じで動いているかと言うと

1. 【一次予約】が残っていた場合は処理を行う
2. 【一次予約】の処理分が、この処理で終わった場合、【二次予約】から(A)の処理を行う
3. 既に何も残っていない場合、対象Evの移動中?の変数を0にする

ここで【二次予約】から【一次予約】への移し替えがあるわけ。しかも動作完了と同時に行われる。この処理が、全ての処理が終わった後に行われるっていうのがミソでな。
並列実行や自動実行、呼び出しなんかでは、【一次予約】は書き換えられないんだけど、【二次予約】は書き換えられるので、
キャラクターが動いていない場合は、最初の動作は一次予約に書き込まれるので、「先に実行された処理が優先」されて、キャラクターが動いている場合には「後に実行された処理が優先」される
ように見えるんや
0254名前は開発中のものです。
垢版 |
2018/04/09(月) 21:08:49.66ID:ApWY4it3
だから、250の処理を簡単のために
(I)逃げる処理、(II)行き止まり処理と割り振って説明すると


(A)の状況では、動けるために(I)の処理が【一次予約】に入れられる
(B)の状況では、(I)の処理が【二次予約】に入れられるが、(移動中で動けないために)同じ座標に存在するため(II)が【二次予約】に上書きされる

って感じで、最初の一歩は(I)の処理が実行されるけど、それ以降は(II)の処理が実行され続ける って感じになる

これを回避するために用いるのが変数操作+の移動中?って変数なんよ
だから、座標が同じ = 壁際 じゃなくて、 対象のEv移動中?の変数が0 = 壁際 って考えて処理するのが良い
もしくは移動中?の変数が0の場合のみ250の処理をするか のどちらか
0255名前は開発中のものです。
垢版 |
2018/04/09(月) 21:38:05.90ID:xOsuGnoy
すぐ答えられなくてごめん
丁寧に説明してくれたおかげでかなり理解できたと思う。
移動中?の変数を使ったらうまく動かせたよ!
親身に対応してくれてありがとう!
ゲーム作りがんばるよ!
0256名前は開発中のものです。
垢版 |
2018/04/09(月) 21:44:21.29ID:xOsuGnoy
>>253
こうすればレスを指定できるのか
本当にありがとう!
メモに残して似たようなことがあったら見れるようにしておくよ
0257名前は開発中のものです。
垢版 |
2018/04/10(火) 20:51:16.39ID:dGhi4Sx7
質問です

基本システムのメニュー画面に新しく文字画像を追加したいのですが、
何故か追加した画像が背景の後ろに表示されてしまいます
これはどうやらコモンイベントで呼び出した際に起こる現象のようで、
直接(コモンEv88に)書き込んだ場合はそのような不具合は起こりませんでした
ですが、コモンEv88に書き込むと今度はメニューカーソルが正しく表示されなくなってしまいます
(キー入力の有無に関わらずずっと追加した画像に焦点を当て続けている)

どうにかしていずれかの不具合をなくしたいのですが、正直お手上げ状態です
誰か分かる方いたらお願いします
バージョンは2.21です
0258名前は開発中のものです。
垢版 |
2018/04/10(火) 21:25:07.05ID:NsjlNzWk
ピクチャ番号が被ってんだろ
基本システム2 ピクチャ番号 で検索したら基本システムで使用しているピクチャ番号載せているブログとかあるから、そこ見て被らないように番号調整しろ
0259名前は開発中のものです。
垢版 |
2018/04/10(火) 21:30:22.17ID:NsjlNzWk
一応コモン88の最初の方のコメント文で使っている番号が説明されているから、それ見てもいいぞ。メニューのだけだけど
カーソルは基本ピクチャ番号+2って書いてあるから、多分10002のピクチャ番号使ってたんだろうな
0261名前は開発中のものです。
垢版 |
2018/04/10(火) 23:56:28.66ID:NsjlNzWk
物事はえてしてそんなもんだよ
論理だてて推測しよう、という姿勢は凄く良いから頑張れ
0262名前は開発中のものです。
垢版 |
2018/04/13(金) 21:59:26.40ID:AdhWpzJy
質問です
変数の中身によって呼びだす変数を変えたいのですがうまくいきません
例えば変数0が11ならば変数11の値を表示するという処理の場合です
変数0=2000000+変数0としても22にしかならないです
変数0は0〜99の値をとる予定です
変数0によって分岐、呼びだす変数を指定する以外にどういったものがあるでしょうか?
0265名前は開発中のものです。
垢版 |
2018/04/14(土) 00:34:49.83ID:75eE80ly
そもそも変数100個も使うなら可変DB使ったほうがいい
呼び出し値使わなくてもDB操作けで値持ってこれるし

あと値取らなくてもよくて表示するだけなら特殊文字でいける
\v1[\v[0]]とか、\cdb[0:0:\v[0]]とか
0267262
垢版 |
2018/04/14(土) 16:51:58.87ID:MM2DHo2H
実は表示だけじゃなくて変数によって処理を変えたいんです
262の例とは数字が異なってしまうのですが以下のような処理を試しました

V0[]=2+0
V1[]=2000000+V0[]

右辺の2000000の部分で『データを呼ばない』にチェックを入れると2000002が、入れないとV0[]+V0[]となってしまい4が表示されます
実際はV2[]を表示したいのです
この後V2[]の値によって処理を変える予定です

可変DBは使ったことがなかったので思いつきませんでした
これを機に使い方を勉強してみます
0268名前は開発中のものです。
垢版 |
2018/04/14(土) 17:31:14.93ID:75eE80ly
>>267
データを呼ばないで変数呼出値を変数に入れてから、その呼出値の入った変数でX番の変数呼出をする必要がある

V0[]=2+0
V1[]=2000000+V0[] データを呼ばないにチェック
V1[]=V[V1[]] X番の変数呼出にチェック

これで通常変数1番に通常変数2番の中身の値が入る
と、まぁこんな感じでややこしいから基本的にDB使ったほうがいい
0270262
垢版 |
2018/04/15(日) 01:49:29.88ID:fD5kNak8
お二人とも詳しくありがとうございます
私が想定していた処理は>>268で書いていただいたものでした!
また、X番の変数呼出についても勘違いしていたようです
>>269の画像のおかげで少しわかったような気がします

可変DBも含めて色々試してみたいと思います
ありがとうございました
0271名前は開発中のものです。
垢版 |
2018/04/22(日) 18:00:00.05ID:8mvDaRqP
質問です。
ピクチャAを用いてピクチャ番号x〜yのいくつかを表示し
それぞれを時間差だったりでパターン変更(アニメーション)させながら表示したいのですが、やり方がなかなか思いつきません。
何か上手い方法無いでしょうか?
教えて頂けたら幸いです。
0272名前は開発中のものです。
垢版 |
2018/04/22(日) 22:06:07.59ID:jWTBBieP
言ってることの意味がよくわからなくて何がしたいのか全く伝わってこないけど、
ピクチャを表示するときに発動ディレイを入れたら表示を遅らせることができるし、
イベントコマンドのエフェクトのとこにピクチャの自動パターン切替っていうのがある
0273271
垢版 |
2018/04/23(月) 20:26:05.13ID:jLW8q5IR
すみません、自己解決しました!
回答して貰ったのに申し訳ないです
0276名前は開発中のものです。
垢版 |
2018/04/27(金) 23:30:51.86ID:6CRk/h9b
片道勇者か?
動画見たけど、左に透過していってはいないぞ
単に黒-赤のグラデに不透明度170〜200ぐらいのゲージなだけじゃね?
0280名前は開発中のものです。
垢版 |
2018/05/16(水) 21:54:28.75ID:JQYmM8Ku
初歩すぎる質問で恐縮ですが教えて頂けると幸いです

はじめてのウディタ2を参考に基本システム入の空dataでマップから作ってみようとしたのですが
サンプルゲームの履歴が残っていてマップ選択のツリーの中にサンプルマップA等の名前だけがある状態になっています
これらを消したくて「ツリーの変更を許可する」にチェックを入れて更新したり
エディタを再起動したりなどもやってみましたが変わりありません

どういった操作をすればこのマップツリー内の履歴を消せるかご教示頂ければと思います
0282名前は開発中のものです。
垢版 |
2018/05/16(水) 23:24:19.36ID:JQYmM8Ku
>>281
素早いご回答ありがとうございます
思いつく限りのキーワードで検索しても全く解らなかったので大変助かりました
ウディタ初心者というものにようやくなれそうです…本当にありがとうございました
0283名前は開発中のものです。
垢版 |
2018/05/19(土) 17:20:19.97ID:aGXiE49w
質問です
ウディタで作ったゲームの更新を考えておりましたが
セーブデータを保持したままDBとかを弄っても大丈夫なのでしょうか?

もう1つ
アップデート特典としてアイテムなどを増やす、という事を
考えていたのですがそれは可能でしょうか?
分かる方、教えて頂けたら幸いです
0284名前は開発中のものです。
垢版 |
2018/05/19(土) 18:21:24.82ID:OJPUIyhV
何も考えず弄って大丈夫なもの:ユーザーデーターベース
弄れるけど注意が必要なもの:カスタムデーターベース・マップイベント

アップデート特典
→リリースする度に自分で設定するゲームバージョンのデータ(I)と、セーブ時のゲームバージョンのデータ(II)を保存しておく通常変数かカスタムDBを用意。
→2つを比べて違った場合(アップデートなら>や<で比較演算)はアップデート特典を付与して、(I)で(II)を上書き。一番手っ取り早いのはアップデート特典をくれるNPCを用意するなど


以下補足説明
セーブデータに保存されるデータは下記の通り
・カスタムデータベース
・コモンセルフ
・マップセルフ
・通常変数/予備変数/通常文字列
・表示中のピクチャ/マップエフェクト/画面エフェクト/色調変更等
・主人公の位置

まだ細かくあるかもしれないけど、ざっくりこんぐらいのものがセーブデータに保存される
そういうわけで、ユーザーデータベースはセーブデータに依存しないため、いくらでも弄って良い。

カスタムデータベースは弄ってもセーブデータの値が優先される。ただ、数を減らしても呼び出さなければエラーは起こらない(データ数であれば確か設定数以上を呼び出してもエラーにならない。項目番号はエラーになる)
セーブした時に存在しない項目番号があった場合、初期設定値ではなく初期値(タイプ内容を設定する画面で指定するもの)が用いられる

マップセルフはイベントIDに紐付けされている。だからマップIDを入れ替えたりすると、情報も一緒に入れ替わるので注意。
また、マップイベントとキャラチップのヒモ付けはセーブからの復帰時ではなく、マップ読み込み時に行われるため、セーブからの復帰時は想定と違うキャラチップになっていることがある。
増やすだけなら特に問題ない.存在しないマップイベントがあった場合、セーブ復帰時でもキャラチップとのヒモ付けが行われる
0286名前は開発中のものです。
垢版 |
2018/05/19(土) 19:47:21.64ID:rjYjWpqv
どうでも良いけど可変データベースなんだからチェンジャブルかコンバーチブルあたりでしょ
0287名前は開発中のものです。
垢版 |
2018/05/19(土) 21:34:28.73ID:OJPUIyhV
すまん、言われて気づいたわ。なんでカスタムだと思っとったんやろな。多分言いやすいからだと思うけど
0289名前は開発中のものです。
垢版 |
2018/05/20(日) 23:18:35.04ID:bXLzVVqB
質問
アイテム表示で縦にスクロールバーを作りたい
最大表示数が10個だとして手持ちが30個ある場合どのようにしたら作りやすいのでしょうか?
初歩的かもしれませんが、分からなかったので分かる人いたらお願いします
0290名前は開発中のものです。
垢版 |
2018/05/21(月) 11:26:47.93ID:BD0hLtpQ
作りやすいってのはよくわからんけど

maxNumOfRow = 最大表示行数(Y方向)・1以上の定数
maxNumOfCol = 最大表示列数(X方向)・1以上の定数

numOfItem = アイテム所持数
numOfItemRow = アイテムを全て表示するために必要な行数(Y方向)

sizeOfAreaY = 縦方向のスクロールバー移動可能エリア・0以上の定数
sizeOfBarY = 縦方向のスクロールバーの大きさ

relativePosOfRow = 初期表示(全アイテム行数の一番上端にいる状態)における上端の行の位置を0とした場合の、現在表示している上端の行の位置(基本システムだと万能ウィンドウ縦スクロール位置とかそんな名前)
relativePosOfBarY = 移動可能エリア上端を0とした場合のスクロールバーの縦方向の相対画面座標

absPosOfAreaY = 移動可能エリア上端の画面座標(Y)・定数
barY = スクロールバーの上端の画面座標(Y)

として計算すると、
----------------------------------------

numOfItemRow = numOfItem / maxNumOfCol + (numOfItem % maxNumOfCol)
numOfItemRowはmaxNumOfRow未満の場合、maxNumOfRowまで引き上げる

sizeOfBarY = sizeOfAreaY * maxNumOfRow / numOfItemRow

relativePosOfBarY = relativePosOfRow * (sizeOfAreaY - sizeOfBarY) / (numOfItemRow - maxNumOfRow)
ウディタでは0除算は1除算として計算されるため、0除算の回避はしない

barY = relativePosOfBar + absPosOfAreaY

----------------------------------------
だいたいこんな感じで計算できる
0291名前は開発中のものです。
垢版 |
2018/05/21(月) 20:50:29.82ID:R0jocaE+
日本語を変数名に使用できるウディタで他の言語仕様に従った変数の命名する人ってもはや癖なのそれ?
それともなにかメリットがあるの?
0292名前は開発中のものです。
垢版 |
2018/05/21(月) 21:35:31.31ID:BD0hLtpQ
数式なら英数字のほうがいいかなー
からの
書いてみたら日本語名とあんまり変わらないけど、日本語名に直すの面倒だしこのまま書き込もう

ウディタで使うのは日本語と英語半々。よくある使用目的の変数とかは共通の名前つけるよ。日本語とか英語とかじゃなくて、そういう名前として認識している。むしろ使用するツール毎に頻繁に名前を変えると混乱する
0293名前は開発中のものです。
垢版 |
2018/06/02(土) 18:47:33.28ID:Ir0hon04
初歩的かも知れないけど分からなかったので。

今、自作アイテムメニューを作ってて
縦スクロールで一覧を参照出来るように作っているんだが、
カーソルが1番下、1番上に来た時に
事前にピクチャ画面外に表示して隠れているピクチャを表示させたいのに上手くいかない。
相対座標で-yや+yとやっても何故か1行間が空いたりする。
そして1番上に項目が来てカーソルを動かすとそいつが隠れる、というのも上手くいかない。
一応、ピクチャ番号は可変DBに取得している。

良いやり方あったら教えて下さい。
0294名前は開発中のものです。
垢版 |
2018/06/02(土) 20:19:06.66ID:MgoKgLmc
何がしたいのかよくわからないし、中身でどんな処理して上手くいっていないのかもわからん

詳細な説明か仕様の説明、もしくは作っている中身の公開がないと答えられないわ

今の状況だと、どっか処理を間違えているだけとしか言えん
0296名前は開発中のものです。
垢版 |
2018/06/03(日) 18:44:46.15ID:eMHuDR6p
ドット絵って全部自作するもんですか?
0297名前は開発中のものです。
垢版 |
2018/06/03(日) 18:52:26.86ID:0A2HJwIQ
全部自作したいなら全部自作すればいいし、全部フリー素材でいいなら全部フリー素材でいいし、必要に応じて自作するなら必要に応じて自作すればいい
0298名前は開発中のものです。
垢版 |
2018/06/03(日) 19:34:46.55ID:eMHuDR6p
セオリーはあります?
0299293
垢版 |
2018/06/03(日) 21:01:37.20ID:cxQibUuc
落ちている間に自己解決しました。
透過させたまままとめて画面外のピクチャを先に動かして
その後に対象のピクチャだけ透過の値を255にするだけで何とかなったよ。
スレ汚し失礼しました。
0300名前は開発中のものです。
垢版 |
2018/06/04(月) 04:23:51.23ID:RcO803nN
ピクチャをフェードさせる方法に変えたのか
解決したんなら良かった

ちなみに、中身の処理が分からんかったから言わなかったが
ズレるのは恐らくウディタの基本システムでよくある慣性移動をさせようとしていたからだと思う
相対座標でディレイかけた場合の座標計算は、指示が出た瞬間じゃなくてディレイが終了した瞬間だから、それ理由でズレる
0301名前は開発中のものです。
垢版 |
2018/06/06(水) 17:29:08.74ID:+usZmrXl
すみません
通常変数なんですが、セーブしたときは数値が維持されているのに、ゲーム終了してタイトルに戻ると0になってしまうんですが原因が分かりません

例えばhpに応じてキャラの立ち絵が変わるとかがやりたいです
DBとか使ったほうがいいんでしょうか‥
■ このスレッドは過去ログ倉庫に格納されています

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