ダンジョン自動生成
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
02/07/19 22:06ID:o6Bp.wT2どうやるんですか
0324名前は開発中のものです。
04/10/22 07:52:24ID:mUi+pZkQおー。すごいなコレ。アルゴリズム教えれ
0325名前は開発中のものです。
04/10/22 14:36:32ID:mA1KySzl0326名前は開発中のものです。
04/10/22 22:44:13ID:VMSWGRgR0327309
04/10/22 22:50:19ID:CFKkD0NFスマン、シレンはやったことないから救助の意味がわからん・・・
クネクネと一本道回避かぁ。
修行してきまふ
0328名前は開発中のものです。
04/10/23 00:03:43ID:L29asmXm「シレン 救助」でぐぐるといろいろ出てくる
このスレの場合はそれだけでなく
A いいダンジョンできたよー
B 俺もそのダンジョン見たい
A ほれ乱数種
B 見られたーありがとー
というような用途から有効
0329309
04/10/23 22:33:14ID:PdomheLFシレンの救助の件、サンクス
今後の開発に活かしますね
以後、自ページに潜伏します。みなさんありがとん!
0330名前は開発中のものです。
04/10/24 14:27:49ID:BuMdqiGY【開発】ヾ(゚∀゚ )ノ=3 ヽ(´Д`;)ノ〜マッテー、仕組みオシエテー
0331名前は開発中のものです。
04/11/03 22:28:15ID:95Rp/siN0332名前は開発中のものです。
04/11/03 23:21:17ID:HyRaP3meそれまではこのスレのを全部試して
トルネコやシレンに似てない点の報告と
どうやれば似るかの案を出してみたりするとよいか
0333名前は開発中のものです。
04/11/04 22:24:51ID:wvxk1hpD自動的に似てる似てないを判断して係数を調整して
見本(シレンとかトルネコ?)に似たダンジョンが作れるようにするとか…。
まあ、そもそもアルゴリズム的に対応できなかったら、意味ないけど。
0334名前は開発中のものです。
04/11/14 12:06:02ID:zwJU6Kfx部屋の配置まではすんなりできたけど、
部屋同士をどうやってうまいこと繋げようかと。
とても悩ましい秋です。
0335名前は開発中のものです。
04/11/14 16:40:15ID:kcTR4H2p○y一~~
(|,へ
」 ○| ̄|_
0336名前は開発中のものです。
04/11/14 17:03:35ID:zwJU6Kfxでは春までにいっちょまえなダンジョンを目指します。
0337名前は開発中のものです。
04/11/14 22:46:02ID:kcTR4H2p最初はドルアーガみたいな棒倒し系にしようかとも思ったけど
面白みに欠けるのでローグライク(シレン系?)っぽい感じに決定。
試行錯誤するがうまく行かないうちに、そろそろ中華マンが恋しい季節になりましたOTL
0338名前は開発中のものです。
04/11/14 22:51:00ID:kcTR4H2pダンジョンが成長するってのはどうだろう?最初は単純で部屋数も少ないが
クリアされるごとにより広大になったりトラップが増加したり
モンスターの強さがクリア回数によって変わっていったり…
最終的に面倒なだけのダンジョンになりそうな悪寒…○| ̄|_
もしかしてこういう系のゲームって既出かな?
0339名前は開発中のものです。
04/11/15 00:02:32ID:NDaBfp6iこちらもローグライク系で頑張ってるのですが、
なにせシレンすらしたことがないもんで。うふ。
EZアプリでシレンありましたっけ?
最初のうちは簡単なダンジョンで
徐々に複雑になっていくってのはいいですね。
1ブロックを16x16でdefineして、自動生成関数の引き数に
縦横のブロック数と配置する部屋の数を渡すようにしているんですが、
あまり広くしすぎるとほんのりバランスが悪くなりそうな予感です。
まーお互いちまちま頑張りましょう。
0340名前は開発中のものです。
04/11/15 00:17:07ID:ZN/ZipLxダンジョン育成ゲームか。
・厳しく進化するタイプ
足踏みで体力回復してる時間が長いと、次のフロアでは足踏みが不利になるように進化。
それでも頑張って足踏みするとさらに進化。カモった敵は次のフロアでは減ってたりレベルupしてたり。
・無関係に進化するタイプ
ランダムその他で
・甘く進化するタイプ
次のフロアで食料や強い武器が出るような行動がある
どれがいいのかな。というよりバランス良く混ぜるのがいいのか。
0341名前は開発中のものです。
04/11/15 00:29:19ID:rJ8prcLE>足踏みで体力回復してる時間が長いと、次のフロアでは足踏みが不利になるように進化。
>それでも頑張って足踏みするとさらに進化。カモった敵は次のフロアでは減ってたりレベルupしてたり。
これ面白いですね。構造以外にも環境に変化をつけるわけですね。
シレンで例えるならば風の吹くまでのターン数が減少してみたり
敵の初期配置数や出現するまでのターンが変化したり…
ダンジョンの進化の仕方によってはバランスの調整が難しいですね…
あんまり緩い進化だと長く単調になるし、急激すぎると詰まる可能性もあるし
0342名前は開発中のものです。
04/11/15 00:37:38ID:cKIxt0Ruでも空腹時の食料放出をしないと初心者が苦しいし。難しいところだ。
0343名前は開発中のものです。
04/11/15 13:38:14ID:o1Vlbcad段階的学習みたいに一番小さいものから順に発展させていくか?
0344名前は開発中のものです。
04/11/16 01:34:57ID:ipRZtLX5あったはずだ
0345名前は開発中のものです。
04/11/16 19:54:46ID:CI9NO0tG親切にありがとう。ゲットしましたー。
が、近々BREW端末に機種変する予定なのです(p_q)
auがJAVA ON BREW機を出してくれることを祈りつつ、
ダンジョン自動生成の実現に精進しまっす。
0346名前は開発中のものです。
04/11/16 21:57:42ID:P9enDA5fみんなで作るつもりなのか?ただ、順序を示すだけ?
0347名前は開発中のものです。
04/11/17 14:34:04ID:IMseoB+WBREWで開発しちゃったら勝手アプリは作れないんでないの?
Java on brewなんてもし開発されても配布元がKDDIのCPじゃないとアカンし
開発予定にもあがってないモン期待するんか?
作っても配布出来ないモン作ってどーするねん?あぁ売るのかw
0348名前は開発中のものです。
04/11/17 18:40:58ID:rA9IV7Dv言葉足らずでした。
Java on BREWを望んだのは、
アプリを作ったり売ったりの話ではなく、
Javaアプリで遊びたいってことです。
mobile rogue likeをゲットしたのも束の間、
BREW機に機種変してしまうんで。
あくまで淡い希望です。
最後の1行を前の文とくっつけたんでややこしかったですね。
誤解招いてごめんなさいです。
0349347
04/11/17 23:37:37ID:UoSgUdN/しかし、互換性がまるで無いっつーのもアレだよな。
お詫びにネタ投下。
ttp://www.doblog.com/weblog/myblog/26733
0351名前は開発中のものです。
04/11/20 19:25:46ID:qm4OblSH旧端末も手元に残ったんで一応mobile rogue likeできるっちゃできます。
0352名前は開発中のものです。
04/11/22 15:24:30ID:YKE/U/zAというわけでBREW版トル●コ担当よろりん。
0353名前は開発中のものです。
04/11/22 19:28:33ID:ZU3vvTqDBREWどころか、まだアルゴリズムの模索中なんで、
ゲームの体裁すら取ってないっす。
アルゴリズム完成したらEZアプリ(JAVA)でゲームにしよーかなーと。
できるのかな…
0354名前は開発中のものです。
04/11/22 20:11:16ID:bYbj4rLe0355名前は開発中のものです。
04/11/22 20:35:27ID:IGs/J4HR0356名前は開発中のものです。
04/11/22 21:30:17ID:Q0i9cxFu0357名前は開発中のものです。
04/11/23 01:10:55ID:uQgOaJX3そうやって人間育っていくのですよw
0358名前は開発中のものです。
04/11/23 18:21:14ID:r5d0JSDLおしいな。
最初はトロルじゃなくて巨人、そしてオークとレイスの間に幽霊が居る。
0359名前は開発中のものです。
04/11/25 16:53:11ID:eemIdysM風潮があるような気がしますがそれが一番望まれてるって事なんでしょうか?
それとも難しいからでしょうか?
0360名前は開発中のものです。
04/11/25 19:04:45ID:bNN/YI6jroguelikeをここまで遊びやすく換骨奪胎したかー、とシレンに衝撃を受けた俺の場合
シレン以外はあまり記憶にないけど。
0361名前は開発中のものです。
04/12/03 14:21:55ID:Qyr4NTOJ0362名前は開発中のものです。
04/12/05 00:24:43ID:zmFRbU8M0363名前は開発中のものです。
04/12/06 12:45:09ID:XGqr52Q8ダンジョン自動生成のところのコーディングを終えたところ。
こんな感じ。
ttp://www.geocities.jp/trashmexyz/roguex93/play.htm
開発報告スレに載せましたが、こっちのスレの方があってるかなと思って...。
このゲームで使ってるダンジョン生成のアルゴリズムは簡単に説明すると
下記の通り。
1) 2次元配列に適当に部屋を作る
2) 部屋を通路(Path)でつなげる
3) 通路が変になってないかを確認。変なところがあれば直す(例えば通路が
太くなって部屋くらいの大きさになったりしてるところ)
4) つながってない部屋がないかを、Recursive で確認。もしあれば最初から
作り直す
動作確認をしたブラウザは Winows XP の IE のみ。
JVMのバージョンは 1.4.2-b28。
テンキーで移動。斜め移動も可能。デバッグの情報が表示されてるけど
無視しちゃってください。絵は描けないんで、ネットで拾ったやつを使って
ます。
行き止まりの通路は作ってません。リリース版には入れるかも。リリース
予定は早くて2006年の年末くらい。
0364363
04/12/06 13:00:13ID:XGqr52Q82006年の年末 -> 2005年の年末
0365名前は開発中のものです。
04/12/06 14:18:10ID:/tS/nbd7Opera 7.5 + Sun Java Runtime Environment version 1.4 では
「Invalid Bytecode」のエラーになりますね。
0366363
04/12/07 11:56:57ID:NaF5wHrT訂正版を今アップしました。Opera 7.5 の環境は持ってない
ので確認はできませんでしたが。
0367名前は開発中のものです。
04/12/07 12:21:39ID:pHcKCsp7ttp://www.geocities.co.jp/Playtown-Queen/2574/down.html
0368名前は開発中のものです。
04/12/07 13:50:54ID:TS7A5yv3Opera 7.5 で見ました。ちゃんと動いてる様子。
0369名前は開発中のものです。
04/12/07 22:06:04ID:RerrmthA0370名前は開発中のものです。
04/12/10 08:53:30ID:9nn+RPio斬新な生成法ならともかく、棒倒し法なんて迷路生成アルゴリズムの中でも
広く認知されてる方だし、再帰処理無しで実現できるし、ガイシュツだし、
このスレで求められてるのは不思議なダンジョン系の
生成アルゴリズムだし今更ここにそれを貼る意図が判らん。
0371名前は開発中のものです。
04/12/10 08:55:39ID:oAhBbrDgここ以外は同意
0372名前は開発中のものです。
04/12/10 10:34:07ID:xXQCTLgmなんなら俺がローグ系のアルゴリズムを説明しようか?
0373名前は開発中のものです。
04/12/10 10:39:09ID:YvKdmYqn0374名前は開発中のものです。
04/12/12 15:35:10ID:wBr93c4Eこの際ぜひ熱く語ってください
0375名前は開発中のものです。
04/12/12 16:07:27ID:AcpQbbvN頼む
0376372
04/12/13 22:09:33ID:Rb5wRHewこのままじゃ年越せない香具師の為に希望者10人集まったらやったるよ。
あと8人な。
その前に何がわからんのか、解りやすく述べるよーに。
そこ詳しく解説したる。
0377名前は開発中のものです。
04/12/13 23:11:20ID:ZvpPKfOHトルネコやシレンにみられる、「rogueアルゴリズムだけでは作れないようなダンジョン」
の具体的な内容と、その作成方法、あたりが求められてた時期があったような。
でもrogueダンジョンをちゃんと作るのでもけっこう骨だし、作る途中で壁にぶつかった人のための
rogue解説が非常に有難いのはいうまでもない。
0378名前は開発中のものです。
04/12/14 07:28:23ID:poGq8Mnc・通路は部屋と枝分かれした通路を持つ。
以上の 2 ルールを再帰で書きましょう。
んで、部屋を1つ作れば勝手にニョキニョキっとローグダンジョン完成。
0379名前は開発中のものです。
04/12/15 22:31:04ID:lyT8gy6+解悦キボンヌ
0380名前は開発中のものです。
04/12/15 22:57:06ID:axE7iVzD解説を是非
0381名前は開発中のものです。
04/12/15 23:01:00ID:QSBnkci9解説キボン
0382名前は開発中のものです。
04/12/16 00:44:06ID:qi/2VfrX解説お願い
あと4人か
0383名前は開発中のものです。
04/12/16 01:09:17ID:vb9l5MzD解説を所望いたす
0384名前は開発中のものです。
04/12/16 04:45:02ID:0Jr2pFyq解説すればミンナ幸せというわけでキボン
0385名前は開発中のものです。
04/12/16 06:12:29ID:i5AsAUvc解説気盆ぬ
0386名前は開発中のものです。
04/12/16 07:14:41ID:I5NiXAvz0387372
04/12/16 13:38:02ID:Fe46NDmlどーもオマエらが解らないで困ってる部分が俺には解らないので掻い摘んで書く
まず、考え方から。
頭の中に方眼を用意しる!これが、マップの全体だ。
15x15ぐらいのな。
つまり、225部屋のマスが有るわけだ
もちろん通路もこの中にしまう。
視覚的に部屋なのか通路なのかは捉える方の錯覚にしかすぎない。
これが通路に見えるタイプ(この場合は縦方向)
■■□■■
■■□■■
■■□■■
■■□■■
■■□■■
部屋(と錯覚してるのは)こんなタイプ
■■□■■
■□□□■
■□□□■
■□□□■
■■□■■
こういう風に5x5とかでテキトーに部屋のパーツを作れ
通路タイプで曲げた時はちゃんと接続できるようなパーツも作れ
複雑なダンジョンつくりたきゃ沢山つくれもちろん7x7や9x9の方がいいぞ
0388372
04/12/16 13:42:25ID:Fe46NDml次に繋ぎ方。
まず最初に、全体マップにスタート位置を決めれ
そしたら、そこに部屋を置く
このとき次に通路タイプを置く向きを決めてそれにあったタイプを
となりに置いてやる
0389372
04/12/16 13:46:17ID:Fe46NDmlそしたら次は通路タイプに繋がる部屋を置いてやる
このとき選んだタイプの繋がる方にまた通路タイプを置いてやる
長い通路にしたいときは通路タイプを2回置いてやれ
以下、これの繰り返し。
ぶっちゃけ通路をどっちに延ばすのかはランダムできめれ
0390372
04/12/16 13:52:07ID:Fe46NDmlローグ系とは作り方が全然違う。
もちろん、7x7の部屋もあり、15x15の部屋もありと混ぜてやれば
大部屋とか入り組んだのとか自由に作れる。
気が向いたら他の方法も教えてやるよ
これ読んで意味わかんなかったらあきらめれ
中古屋にトルネコ買いにいって観察しる!
0391372
04/12/16 13:57:00ID:Fe46NDml通路タイプを置くときに1回置いたとこにまた置くと行けない部屋ができるから
交わる時にはちゃんと交差点タイプに置き換えること
もしくは、交差点が出来ないよーに通路を延ばす方向を選べ
大本になる全体マップをみればぶつかるかどーかはすぐわかるはず
0392名前は開発中のものです。
04/12/16 16:05:27ID:FUU0Kk700393名前は開発中のものです。
04/12/16 16:28:52ID:UoUSh1EMCかJavaで実装例見せてください。もしくはもう少し具体的な擬似コードお願いします。
0394名前は開発中のものです。
04/12/16 16:41:54ID:FMzVG2qN0395名前は開発中のものです。
04/12/16 18:22:24ID:2Rv9bxWb0396名前は開発中のものです。
04/12/16 20:40:25ID:0BfwHw88内壁の厚さをランダムで変化させて、
平行に並ぶ通路と通路の間の距離を広くして、
その上に部屋を置いていくと少し簡単にならないだろうか?
分かりにくくてスンマソ
0397372
04/12/17 01:59:17ID:/jyWbHRK指定階数になったらあらかじめつくっておいた配列マップを
マップ配列にぶち込めばイベント起こしやすい
だから、トルネコもこの方式になったんでないか
トルネコは大きい輪っか(口みたいなの)もデータでもってるけどな
393
自分でトルネコ作るなら俺はこの方法とらないけど作り込めば
かなり良いマップは作れるよ バイトコードでデータもってくれば
自動生成以外にもそのまま使えるしな
大本のマップを作ってって概念とメリットが把握できないなら
でっかい配列作ってもいいよ[100][100]とかな
その中に等長サイズのパターンデータを入れるか、倍数のデータなら解りやすいだろ
晒した方法観てピンとこないならこの方が簡単かもな
地図をゲーム内で表示する際とか、部屋の数とかの事もこの時点から考えておけ
実際のソースを晒すにはこの板は狭すぎ
395
わかってるならやってみれ
やった上でデメリット、メリット語ってみれ
396
その方法で出来たマップをよくみてみろ
どーせRPGで使うんだろうが、ゲームとして面白味は皆無だ
パズルゲーならアリだけどな
RPG作るんなら、実際にリアルの洞窟なり鍾乳洞なりを妄想するか
実際に行ってこい
別なロジックもまだまだあるが、まだ晒す気にはならん
393,396 ガンガレ
0398名前は開発中のものです。
04/12/17 09:48:20ID:FugbEZQk0399372
04/12/17 11:28:08ID:UZmelf3Mだって、読んでもまだ解らないヤツがいるからこのスレがあるんだろ?
それとも、オリジナルのルーチン晒せってスレか?ここはw
0400名前は開発中のものです。
04/12/17 11:32:14ID:s337jfOVnethackのダンジョン生成を説明して欲しいな。
rogueなんかよりは遥かに高度なダンジョンを生成してくれてる。
0401名前は開発中のものです。
04/12/17 11:50:06ID:cLS59+MC目が肥えたせいかローグのダンジョンはなんか無味乾燥に見えてしまう。
0402372
04/12/17 13:44:18ID:N3mlXMLX0403名前は開発中のものです。
04/12/17 17:00:28ID:cLS59+MC0404名前は開発中のものです。
04/12/17 19:48:15ID:W+xg7vzEせめてこのスレに書かれているようなローグ解析&解説ぐらいのことは
してからエラそうなことをいってくださいよ。
0405名前は開発中のものです。
04/12/17 20:03:23ID:x2PDKPqIttp://www.hexatron.com/rogue/
0406名前は開発中のものです。
04/12/17 22:52:45ID:cLS59+MCいや自分で実装したいんです。図入りで解説するんでそのときは見てください。
0407名前は開発中のものです。
04/12/18 04:26:54ID:Wo0srhjV気にするな。彼はチェンSoftのProgrammerなんだ。それだけが彼の生きている印なのだから。
0408名前は開発中のものです。
04/12/18 07:28:19ID:VS/g54MY0409名前は開発中のものです。
04/12/18 17:07:08ID:6wvucy9y0410名前は開発中のものです。
04/12/18 17:35:23ID:NINQi9jkローグライクの開発(解説)しているサイトでおすすめなのあったら教えてくだあい。英語でいいです。
0411名前は開発中のものです。
04/12/18 17:36:20ID:NINQi9jkRoguelike News
ttp://web.archive.org/web/20010405204554/www.skoardy.demon.co.uk/rlnews/devmain.html
は知ってます。
0412名前は開発中のものです。
04/12/18 18:18:12ID:brPxtXDU脳内シミュレートしたけど、簡単にできそうだぞ
部屋を作って、部屋同士を通路でつないで
通路の長さと曲がり具合は、係数で制御して、それかr
0413名前は開発中のものです。
04/12/18 20:35:48ID:vqBa0na6どこらへんの、なにがわからないのか、わかってる?
C言語がわからんというのはナシで
0414名前は開発中のものです。
04/12/18 20:57:46ID:NINQi9jkソース見ても細かいところで何やってるかわからないんですが。その大雑把にはわかります。
>>413
9つの領域に分けてランダムな大きさの部屋作るところまではできたんですが。
ドアつけて道でつなぐとこがよく分からない。ローグのソースコメントまったくないし・・・
0415名前は開発中のものです。
04/12/18 21:20:41ID:vqBa0na6通路については>>203あたりから。
0416名前は開発中のものです。
04/12/18 21:24:54ID:NINQi9jkd
一応このスレ全部読んだんだけどね・・・
もう一回読み直して1日中考えてみます。いつかあっそうかってわかるときがあるかも
0417名前は開発中のものです。
04/12/19 02:06:47ID:cKlDBmlQ□ 空間
■ 土
■■■■■■■■■■■■■■■
■□■□■□■□■□■□■□■
■■■■■■■■■■■■■■■
■□■□■□■□■□■□■□■
■■■■■■■■■■■■■■■
1個飛ばしで空間を配列←初期状態
スタート地点の空間を決めて、隣(ランダム)とつなげる(=土を掘る)
ただし、つなげる先が4方を土で囲まれていなければならない
どこも掘れなくなったら、掘れる場所まで通路を戻っていく
(戻るために、掘るために通っていった通路の全座標を覚えておくこと)
戻るための座標の覚え方はスタックの概念を知らないと厳しいかも
スタート地点まで戻ってしまったら、それは掘れる場所は全部掘った場合のみなので終了
これで最初に1個飛ばしで存在した全空間がつながる
わかってもらえたかな?
0418生徒α
04/12/19 03:05:58ID:mkdjQU320419名前は開発中のものです。
04/12/19 03:47:15ID:kGW+p0Ldローグ風なら
●部屋や通路や壁
■通路や壁
□壁
●■●■●
■□■□■
●■●■●
■□■□■
●■●■●
これを穴掘りで通路つくる(=全部の部屋がつながっている)。
行き止まりばかりになるので、通路をつけたす。
これを元に部屋を置いて通路をつなげて完成。
さらに簡単な棒倒しでもいけるっぽい
ttp://www.asahi-net.or.jp/~kh4s-smz/midp/roguelike/random.html
0420名前は開発中のものです。
04/12/19 12:18:39ID:ffh3rjeg単純に、2つの部屋をつなげるだけ。
それぞれの部屋の壁のランダムな位置に扉をつける。
その扉を通路でつなげる。
どの部屋&扉の組み合わせでも、クネクネと2回曲がればたどり着ける。それだけ。
だからローグの場合、基本的な通路にクネクネクネクネ...したものがない。
0421名前は開発中のものです。
04/12/19 15:00:58ID:P175sgFg洞窟のようなものもあるし、結構バリエーション豊富だ。
0422名前は開発中のものです。
04/12/19 18:13:08ID:cKlDBmlQなんか遊べるものウプしてくれるの?
0423名前は開発中のものです。
04/12/19 18:25:40ID:99IBDRAn■ このスレッドは過去ログ倉庫に格納されています