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が立てて下さい。
立てられない場合は質問を自重して本スレに報告して下さい。
0173名前は開発中のものです。
垢版 |
2018/01/24(水) 00:51:12.06ID:IFixaQ0H
特定のファイル名のピクチャが表示されている時だけ反応するイベントを作りたいのですが
表示しているピクチャのファイル名を文字列変数として取得する方法はありますか?
0174名前は開発中のものです。
垢版 |
2018/01/24(水) 07:23:20.07ID:fVANG6uO
>>172
通常の描画と透過率・色彩変更の処理が被ってるんだろうからディレイ見直すとかかね
まぁ処理内容わからんしデバッグ文使用して自分で探るしかないよ

>>173
特定のピクチャなら表示・消去するときにフラグ管理すればいい
ピクチャ番号指定して一発で取得するようなコマンドはないはず
0175172
垢版 |
2018/01/24(水) 20:49:06.12ID:WnveY5s0
>>174
何とか自己解決しました!どもです
0176名前は開発中のものです。
垢版 |
2018/01/26(金) 01:29:36.56ID:IbWpU2cw
シンボルエンカウトを作ってます

正面、側面、背面で先制攻撃やバックアタックの判定をしたいのですが、
モンスター(マップイベント)や主人公がそれぞれどの方向から接触したかを取得する命令は無いですよね?

無ければイベントの方向とイベントの座標を取得して自作するしかないでしょうか?
こちらだと主人公とモンスターの方向(4×4)と座標の比較(×4)で条件分岐だけで56通りになり大変なので、他に方法がないか悩んでおります
0177名前は開発中のものです。
垢版 |
2018/01/26(金) 03:18:57.90ID:6mk8RX64
・キャラ画像4方向移動方向4方向の場合

マップイベントの方向 + 主人公の方向 が10の場合は正面同士の接触
マップイベントの方向 = 主人公の方向 の場合は正面&背面の接触(バックアタック)
それ以外は正面&側面での接触(サイドアタック)

あとは主人公の座標+向いている方向から、正面1マスの座標を取得。そこに対象のマップイベントがいれば主人公側の↑の処理
いなければマップイベント側の↑の処理


・キャラ画像4方向移動方向8方向の場合

(1) マップイベントに対して主人公がどの方向にいるかを角度で算出する(arctanを使うのが一番簡単)
(2) マップイベントの向いている方向を角度に変換(2の場合は90等。自力で打ち込み作業)

(1)と(2)の角度の差θからマップイベントが主人公に対して前面、背面、側面のどちらを向いているか判断(-45≦θ≦45なら前面など)

前面以外は主人公側からの接触。バックアタックやサイドアタックなど
前面での接触だった場合、主人公側について(1) (2)の作業をして前面、側面、背面のどの方向を向けているか調べる


※ちなみにウディタのマップイベントは起動時に自動的にプレイヤーの方向を向くため、
方向固定解除→1マス移動→方向固定 のルーチンでマップイベントを移動させないと、マップイベントとの接触時の互いの向きによる判定ができない

だけど何故かマップイベントのカスタムルート設定からだとこのルーチンが組めなくて
コモンイベントからのイベント制御だとこのルーチンが組める
そのためマップイベントの移動なんかをコモンイベントで一括で行わないといけない
0178名前は開発中のものです。
垢版 |
2018/01/27(土) 00:45:03.92ID:vvSBp518
>>177
衝突判定はそれでバッチリ行けました!
行数もスッキリして感動です
詳しい説明ありがとうございます

で、次は衝突時にマップイベントが主人公側を向くのを改造するところでつまずきました
解説いただいたように下記の並列処理のコモンを作って動かしたのですが、

---
■動作指定:Ev0 / 向き固定OFF / 主人公に接近 / 向き固定ON
---

今度はマップイベント側の起動条件「イベント接触」が起動しなくなりました
現状では主人公側から接触すると起動するけど、モンスター側からは起動せずずっと主人公の後を付いてくるだけになってます
0179名前は開発中のものです。
垢版 |
2018/01/27(土) 08:21:55.99ID:WaAXN1Lo
【5】イベントに複数のページを設定したんですが、最後のページしか実行されません
マップのイベントは、番号の大きいページを優先して実行しようとします。
そのため、最後のページの起動条件が満たされてしまうと、
小さい番号のページは実行されません。
0181名前は開発中のものです。
垢版 |
2018/01/27(土) 12:24:27.65ID:wBqyuzFu
>>178
あ、ごめん忘れてた
コモンイベントの動作指定の場合、接触範囲拡張+イベント接触以外だとイベント側からの起動ができないんだった

マップイベントのカスタムルートで

移動頻度を設定 => 0 (以降の処理を毎フレーム処理)
向き固定OFF
主人公に接近
向き固定ON
移動頻度を設定 => 3 (任意の移動速度に戻す)

でできるはず
と思ったけど、半歩移動の設定の時に、イベントが上側から接触した場合は起動しないバグって治ってないんだな
0182名前は開発中のものです。
垢版 |
2018/01/27(土) 12:50:18.68ID:wBqyuzFu
軽く作っただけだから想定通りの動作するかわからんけど
テストした感じでは多分問題なく動くので、後は自分で汎用性高めてやってみて。これだと1マップイベントしか動かないし、プレイヤーを発見している状態での動きだけだから
一応このコモンイベントの動作で起動する場合は敵側からの接敵判定、 マップイベントのプレイヤー接触からの起動の場合はプレイヤー側からの接敵判定 って分けられるはず。


コモンイベント(並列実行)

■条件分岐(変数): 【1】 Sys13:イベント実行中?(1=ON) が 0 と同じ
-◇分岐: 【1】 [ Sys13:イベント実行中?(1=ON) が 0 と同じ ]の場合↓
|■変数操作: CSelf10 = 23 + 0
|■変数操作+: CSelf11 = キャラ[CSelf10] の 現在の起動ページ 0=ナシ 1〜=起動ページ
|■条件分岐(変数): 【1】 CSelf11 が 1 以上
|-◇分岐: 【1】 [ CSelf11 が 1 以上 ]の場合↓
| |■動作指定:キャラ[CSelf10] / 向き固定OFF / 主人公に接近 / 向き固定ON
| |■変数操作+: CSelf12 = キャラ[CSelf10] の 移動中?[1=YES 0=NO / ※主人公のみ1フレ以上停止時のみ0]
| |■条件分岐(変数): 【1】 CSelf12 が 0 と同じ
| |-◇分岐: 【1】 [ CSelf12 が 0 と同じ ]の場合↓
| | |■デバッグ文:停止中(進行方向に障害物有り)
| | |▼ 障害物有りで進行不可 = 移動先に主人公が存在する可能性有
| | |▼ 後は移動先に主人公が存在するか調べる
| | |▼ 主人公が存在する場合は接敵判定に移行
| | |■
| |◇分岐終了◇
| |■
|◇分岐終了◇
|■ウェイト:20 フレーム (移動頻度に合わせてウェイトを設定する)
|■
◇分岐終了◇
0183名前は開発中のものです。
垢版 |
2018/01/27(土) 12:52:39.90ID:wBqyuzFu
|■変数操作: CSelf10 = 23 + 0

ああそうだ、この処理は、単に俺がマップイベント23をテストに用いただけ
0185名前は開発中のものです。
垢版 |
2018/01/28(日) 01:31:07.92ID:OKXGhkLN
>>181
行けました!
つまりこれはモンスターに移動命令を出したのに移動してないということは障害物があるんだから接触判定をしろってことですね
汎用性もあるのでこれを元に組んで行こうと思います

マップイベント内での処理だと後々に仕様変更したときにメンテナンスが大変なので、これだとコモン側で処理をコントロールできるのも素晴らしいです

加えてデバッグ文の使い方もこれで分かったので感謝感謝です!
0186名前は開発中のものです。
垢版 |
2018/01/30(火) 18:33:38.72ID:s1bO8JEq
質問です
ウディタのピクチャ番号の割り当てについてです

各コモンの処理時にいくつかのピクチャ番号をバラバラに割り当てたいのですが
(例:STGの各弾それぞれに加えて同時にレーザーやボムも複数放てるような感じのもの)
こういったときはピクチャ表示がされているか判定して
そこから通常変数にピクチャ番号割り当てて
各イベント\cself[a番]で取り出して使用、と言う方法を考えついたものの
実際やってみるとどうも上手く行きません

方法としてもう少し分かり易いもの、参考になるやり方などあったら教えて頂けたら幸いです
0187名前は開発中のものです。
垢版 |
2018/01/30(火) 20:39:00.60ID:mtiabDIk
ぱっと見だと問題ないように見えるけど(通常変数に割り当てているのに、コモンセルフ変数で取り出しているっぽい説明なのはよくわからんが)

何が上手く行かんの
処理が重いの? ピクチャが表示されないの? ピクチャの移動が上手く行かないの? 割り当てた通常変数を初期化した際に挙動がおかしくなるの?
0188名前は開発中のものです。
垢版 |
2018/01/30(火) 21:24:45.42ID:vxcnSMas
ピクチャの空き番号調べる処理と空いてる番号にピクチャ表示させる処理が別のコモンで
空きピクチャ番号のやり取りに通常変数挟んでるのかな?
コモンの返り値でやってみては

返り値ってのはコモンイベントの設定のトコの「結果を返す」で指定する値のことね
見当違いのこと言ってたらごめんね
詳しいやり方はヘルプ見てちょ
0189名前は開発中のものです。
垢版 |
2018/01/31(水) 02:08:51.44ID:IllwidwC
質問内容だとワイの頭では回答できないのでワイのピクチャの管理方法

自機や敵やシンボルなどメインで扱うピクチャは、基本値に追加ピクチャ番号を足した絶対値
例)自機基本値(1000)+バリア(100)+ポッド(10)等々

弾やエフェクトなど一定後に消えるものは、弾を追加する際にそのピクチャ番号が使用されてるか判定して若い番号から埋めていく
例)弾基本値(2000)+弾追加値(1)→ピクチャ2001が空いていれば描画、空いていなければ更に+弾追加値(1)を繰り返してサーチ

参考にもならなかったらごめん
0190名前は開発中のものです。
垢版 |
2018/01/31(水) 18:28:11.99ID:74y0KjuV
回答ありがとうございます
>>188
返り値、まだ若干使い方を理解していないのでこの機会に調べてやってみますね
>>189
ちゃんと絶対値で設定しておいた方が確実そうで良いですね
0191名前は開発中のものです。
垢版 |
2018/01/31(水) 19:15:43.69ID:E/nXFeLY
公式のコモンでちょくちょくあるテキストファイル読み込みからのスクリプトコモンが起動方法がわかりません。
りどみに書いてるとおりに導入してるつもりなんですけどもどうやってもエラーすら起こらずに無反応。
とりあえず適当なマップイベに起動条件決定キーで目的のコモン挿入して、コモンEv入力(文の項目にパス入力しても無反応。
とにかくのれんに腕押しって感じの手詰まり感で困ってます。
このスクリプト読み込み系のコモンはどうすれば導入できるのでしょうか。
ちなみにウディタのバージョンは1番新しいヤツです。
0192名前は開発中のものです。
垢版 |
2018/01/31(水) 20:52:39.05ID:74y0KjuV
>>187
見逃してましたすみません!
回答どうもです
連打する事で一定番号に至ったらピクチャ自体が消えたりとかしないかなと
でも今の所無事に機能するようになったので大丈夫だと思います
0193名前は開発中のものです。
垢版 |
2018/02/01(木) 04:42:12.02ID:EeNLrLI5
>>190
ワイも最初は返り値スルーしてコモン組んでたけどこれ覚えると便利だよ
プログミングでもGET関数とかで当たり前に使われるし、通常変数をあまり使わずにcselfで組むようにすれば変数の管理もしやすくなる
0194名前は開発中のものです。
垢版 |
2018/02/01(木) 04:52:55.10ID:EeNLrLI5
>>191
他作コモンについては基本>>1

どうしても誰かに検証してもらいたいならエスパーしなくて済むように他作コモンやソースを貼るなりしないと解答は出来ないと思う
ちなみに俺は他作コモンの使い方の時点で無理ごめん
0195191
垢版 |
2018/02/01(木) 17:47:15.68ID:X3mnig/B
>>194
スクリプトは諦めることにします
ありがとうございました
0197名前は開発中のものです。
垢版 |
2018/02/03(土) 23:56:28.26ID:AgOem77x
> テキストファイル読み込みからのスクリプトコモン
これって会話文とかをテキストファイルで作ってウディタで実行するってことだろ?
自分で作った方が使いやすいだろ
0198名前は開発中のものです。
垢版 |
2018/02/04(日) 14:01:06.09ID:cd+0DwEP
マシナリウムみたいなの作るのは厳しいですか?
unityでもいいんですが
0199名前は開発中のものです。
垢版 |
2018/02/04(日) 15:17:42.90ID:6+6amcou
厳しくはないけどunityでいいならunityにした方が良いんじゃない?
確か画面見ながら仮置きとかできたはずだから、一枚絵の背景でキャラクターを動かす形なら、そっちの方が楽だと思う
0200名前は開発中のものです。
垢版 |
2018/02/04(日) 23:31:01.16ID:TUf5GF1V
>>197
データ系の他人が作ったコモンなんて解読、利用コストが高すぎて実用性ないよな
ここで聞きながら作ったほうが早いまである

れっつ自作ワールド
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
言ってることの意味がよくわからなくて何がしたいのか全く伝わってこないけど、
ピクチャを表示するときに発動ディレイを入れたら表示を遅らせることができるし、
イベントコマンドのエフェクトのとこにピクチャの自動パターン切替っていうのがある
■ このスレッドは過去ログ倉庫に格納されています

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