[過去ログ]
【ウディタ】WOLF RPGエディター 其の71 (1002レス)
【ウディタ】WOLF RPGエディター 其の71 http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
472: 名前は開発中のものです。 [sage] 2022/11/27(日) 09:02:09.86 ID:rql/XECy >>470 いや、マルチポストではないぞ? >>446 で言った通り別所で助っ人にテストしてもらっただけで、 このスレでの質問と全く同じ質問はしてない。 http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/472
473: 名前は開発中のものです。 [sage] 2022/11/27(日) 11:30:25.26 ID:ssUaNl7O 複数の変数を選んで「格納されている数字の順に命令を実行する」方法を教えてください 「仲間の並び順を常にキャラID順にする」というコモンを作ろうとしたのですが一晩作業しても無理でした http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/473
474: 名前は開発中のものです。 [sage] 2022/11/27(日) 12:22:09.08 ID:BnLaP0T+ ・別のDBにパーティ情報をコピーしてそれをバブルソートする ・別のDB(初期値0)の項目番号:パーティキャラの主人公ID番を1にする。最後にそのDBを項目番号順に調べて値が1のやつだけ処理する 好きな方どぞ http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/474
475: 名前は開発中のものです。 [sage] 2022/11/27(日) 12:25:23.04 ID:Lz3W71eC ソート用のDBを用意して0に本DBのID、1にソート用の数字を格納するという方法をよくやってたけど 3.0でDB操作ができたから直接ソートするのもありよね http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/475
476: 名前は開発中のものです。 [sage] 2022/11/27(日) 14:03:45.47 ID:E9q8qygY 基本システムの「X┣◆行動順の計算」でバブルソートをやってるから ソート初心者なら一度それを読んだ方がいいかも http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/476
477: 473 [sage] 2022/11/27(日) 14:10:24.59 ID:ssUaNl7O IDの正確な数字ではなく「そのIDは全体(現パーティ)の中で上から何番目か」を割り出してその順番にパーティに再編入させるという形にしたいという意味なのですが そのような判別方法は用意されていないのでしょうか http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/477
478: 名前は開発中のものです。 [sage] 2022/11/27(日) 14:44:39.89 ID:Lz3W71eC 全体のID数を把握する方法は二通り 一つはDB操作でDBに格納されたデータ数を取得する もう一つはDBのデータ数>実際のデータ数の場合のときには、ループでカウンターを0から1つずつ増やし、DBのデータを上から順に参照していく 例えば名前が空欄のデータを見つけたらそこでループ中断する、とか すると、ループが中断した時のカウンター数が全体のID数になる その前提で質問に戻ると「上から何番目」が能力値とかだとすると、対象の能力値をループで上から参照し、条件(変数)でカウンターn番目に来たときに任意の処理を入れればいい http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/478
479: 名前は開発中のものです。 [sage] 2022/11/27(日) 14:56:19.96 ID:00dBib9q 3.081 https://pbs.twimg.com/media/Fii_kPNUoAAh7vr.png http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/479
480: 名前は開発中のものです。 [sage] 2022/11/27(日) 15:38:02.89 ID:fferOYec パーティ内の順番調べたいなら可変DB見れば一発だが やりたい事がいまいち分からん http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/480
481: 473 [sage] 2022/11/27(日) 16:01:00.09 ID:ssUaNl7O >>480 目的は「パーティ内のキャラの並び順をID番号の小さい順にする」こと その為に必要なのは「そのキャラのIDは現パーティ内で何番目かを把握する」こと その為に必要なのは「IDの数字を「順位」に直す」こと 例えばIDが 2 4 12 8 6 7 だったら 2 4 6 7 8 12 の順に並べ直した上で1~6までの数字に直してコモンセルフ変21~26にそれぞれ記録 一度仲間を全員外した後でそれを条件にして順番に再加入させる これができれば「パーティ内のキャラの並び順をID番号の小さい順にする」というのができるんだけど、どうやら「複数の変数同士の数値を比べて順位付けする」という機能はないようです http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/481
482: 473 [sage] 2022/11/27(日) 16:04:01.72 ID:ssUaNl7O ×2 4 6 7 8 12 の順に並べ直した上で1~6までの数字に直してコモンセルフ変21~26にそれぞれ記録 〇2 4 6 7 8 12 の順に並べ直した上で1~6位までの順位に対応したコモンセルフ変数21~26にそれぞれ記録 http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/482
483: 名前は開発中のものです。 [sage] 2022/11/27(日) 16:22:17.48 ID:XNmcUDKt >>481 複数変数内での順位を調べる関数的なのは無い ただその目的であれば順位が分からなくてもバブルソートで行ける http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/483
484: 名前は開発中のものです。 [sage] 2022/11/27(日) 16:26:13.21 ID:rql/XECy あぁ、なるほど! 噛み砕いて説明すると、並び替えのことをソートっていうんだよね。 並び替えの方法の1つのバブルソートっていう方法があるんだ。 基本システム2の戦闘の行動順も実は、素早さの大きい順にバブルソートしてて、 バブルソートっていうのは、値を比較して大きい方が手前、又は小さい方が手前に来るように、 ループ内で何度も交換して、並び替える方法なんだ。 だから、バブルソートってさっき言っていた人は正解! 初心者は、専門用語急に言われてもわかんないよね……。 ただ、明確な定義が必要な場合って結構あるから、 どうしても専門用語できちゃうんだよね! http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/484
485: 名前は開発中のものです。 [sage] 2022/11/27(日) 16:29:47.57 ID:rql/XECy あ、ごめん、レス番号付けてない中、タイミング被っちゃったね……。 >>484 は >>481 に対するレスね。 紛らわしくてすまん。 http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/485
486: 名前は開発中のものです。 [] 2022/11/27(日) 16:47:32.10 ID:IXoV13Jw なんでバブルソートなの? クイックソートやマージソートではダメなの? ソートできりゃ何でもいいと思うんだが 効率ガーとか言うならバブルソートは一番効率的なソート方法ではないでしょ http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/486
487: 名前は開発中のものです。 [] 2022/11/27(日) 16:47:42.32 ID:IXoV13Jw なんでバブルソートなの? クイックソートやマージソートではダメなの? ソートできりゃ何でもいいと思うんだが 効率ガーとか言うならバブルソートは一番効率的なソート方法ではないでしょ http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/487
488: 473 [sage] 2022/11/27(日) 16:48:42.06 ID:ssUaNl7O どうにもならなそうなんで 「パーティメンバーを0にする」コモンを作ってメンバーチェンジのイベント時にコモン005の直前に使う 並び順はその時に記述して指定するというダサい方法で妥協します 制作者の方にはぜひ複数の変数を順位付けして扱える機能の実装を求めます http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/488
489: 名前は開発中のものです。 [sage] 2022/11/27(日) 17:00:05.69 ID:iMvCzC53 普通に仲間DBの1から順に在籍判定していけよ…… んで、引っかかった奴から順に変数格納していくと。 CDB用意してバリアブルした後に「何番目か」決めるなんて可読性低いやろ。 http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/489
490: 名前は開発中のものです。 [sage] 2022/11/27(日) 17:08:30.26 ID:Lz3W71eC バブルソート機能くらい自分で作ればいい 2,4,12,8,6,7なら、2と4、4と12…って比較・入れ替えしていってだんだんゴール地点を前にしていけばいい ちなみにこのID数だとバブルソートの計算量が一番少ないと思う https://upload.wikimedia.org/wikipedia/commons/thumb/c/c8/Bubble-sort-example-300px.gif/220px-Bubble-sort-example-300px.gif http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/490
491: 名前は開発中のものです。 [sage] 2022/11/27(日) 17:22:51.53 ID:rql/XECy >>473 元も子もないこと言うとプレイヤーが並び順を変えられるようにした方が、 プレイヤー側も使いやすいし、工数も減るから、ID順に並び替えちゃうのは勿体ない。 ソート機能入れるなら、ソート用の能力値を選べるようにして、 その能力値順に並び替えるくらいした方が喜ばれる。 >>486 バブルソートは、実装が簡単で、コムソートへの強化も容易だし、 他のソートを学ぶ良い練習になるから、基本システム2に入っているんだろうけど、 クイックソートやマージソートを選ぶ辺りガチ勢で草 >>490 計算量の程度がなんとなくでわかるくらい感覚が身に付いていて草 仕事でも日常的に使ってそう http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/491
492: 名前は開発中のものです。 [sage] 2022/11/27(日) 17:57:37.75 ID:rql/XECy (誉め言葉のつもりでございやしたけど、 絡まれるの嫌でしたらすいやせん……、自信失くしたんでROMりやす……) http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/492
493: 名前は開発中のものです。 [sage] 2022/11/27(日) 18:34:45.05 ID:/CcSyHBt ウディタは配列構造を持ってないから、デフォルトで適切なソート機能が無いのは仕方ない 大変かもしれんけど、自分で目的に合わせて作るのが一番良い http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/493
494: 名前は開発中のものです。 [sage] 2022/11/27(日) 19:00:06.98 ID:uX30wO11 素早さで順番変えるソートのやり方がわからんから 変数を1ずつ減らしていってゼロになったら行動開始みたいな戦闘作ってた思ひ出 http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/494
495: 名前は開発中のものです。 [sage] 2022/11/27(日) 20:05:34.72 ID:E9q8qygY そういう戦闘も面白いんだけどな ターン制ではなくなるが http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/495
496: 名前は開発中のものです。 [sage] 2022/11/27(日) 20:52:40.37 ID:BPuKCYxM >>489 の案は設計が安定すぎる パーティメンバーが有限なら、内部変数として重複しない裏IDを設定しておき、別項の有効/無効でスキップする 並べかえる場合も参照用DBを用意すればいいわけで、プレイ上の動作と内部処理を同じにする理由はない データ型に極度の最適化を求めると、プレイ中のソート画面のUIデザインまで関係してくるから面倒よね >>488 複数の変数を順位付けって、評価関数でまとめて出力できるよね? ウディタには変数の変数呼び出しが実装されているわけだし、"体力x10^6 + 攻撃力x10^2 + ID"やら、好きに作れる タイプ番号は固定なわけだから、比較する項目(変数)番号を改行込みの文字列につっこんでコモン呼び出し、 戻り値を保存。これをソートすればいい http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/496
497: 名前は開発中のものです。 [sage] 2022/11/27(日) 22:53:29.97 ID:qzO1ulMA 変わり種で解こうとピクチャ使ってみた。計算量は知らん WoditorEvCOMMAND_START [121][4,0]<0>(1600012,-1,0,0)() [179][1,0]<0>(6)() [250][5,4]<1>(6,0,1,4096,1600011)("","","","") [121][4,0]<1>(1600012,1600011,1,1536)() [111][4,0]<1>(1,1600011,0,1)() [401][1,0]<1>(1)() [150][11,1]<2>(32,1600011,0,1,1,1,255,0,0,100,0)("") [300][4,1]<2>(0,2,1,1600011)("○メンバーの増減") [499][0,0]<1>()() [498][0,0]<0>()() [121][4,0]<0>(1600011,0,0,0)() [179][1,0]<0>(1600012)() [124][4,0]<1>(1600013,16384,1600011,9)() [111][4,0]<1>(1,1600013,1,2)() [401][1,0]<1>(1)() [300][4,1]<2>(0,2,0,1600011)("○メンバーの増減") [150][3,0]<2>(34,1600011,0)() [499][0,0]<1>()() [121][4,0]<1>(1600011,1,0,256)() [498][0,0]<0>()() WoditorEvCOMMAND_END http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/497
498: 名前は開発中のものです。 [sage] 2022/11/27(日) 23:11:43.05 ID:36D3lPOa 要素数少なければバブルソートで十分高速 たかが数十や数百なら前準備の必要なクイックソートよりも速いだろ http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/498
499: 名前は開発中のものです。 [sage] 2022/11/27(日) 23:29:04.64 ID:E9q8qygY ってか基本システムにバブルソートあるって言ったじゃんよ アレ戦闘でしか使わんし、適当に書き込んで使えば良くね? ちょっと読めば0番はソートしないことも データ数をどこに書き込めばいいかも分かるじゃん ついでに言えば3つ以上の実数の大小を判定するには 結局2つの実数の大小の判定が必要なわけで ソート機能がデフォであるかどうかに大層な意味なんて無いよ http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/499
500: 名前は開発中のものです。 [sage] 2022/11/28(月) 01:00:52.83 ID:aHbDfZFH 説明してもガン無視だと正直教えようがない 分からなくて聞きに来たんだから理解に苦しむ部分があるなら徹底的に聞いて良いんよ http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/500
501: 名前は開発中のものです。 [sage] 2022/11/28(月) 01:42:28.92 ID:ignY9oVm お前ら将来的なブラウザ実装も見据えとけよ? カッケー高速処理に変数やらCDBやら無駄に使って セーブ容量増やす方が悪手だと思うぜ! http://mevius.5ch.net/test/read.cgi/gamedev/1662961918/501
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 501 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.016s