[過去ログ] 【ダンジョン】 自動生成 2 【地形】 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
492: 2009/10/03(土)08:50 ID:KqYfsr+p(1) AAS
隆起と侵食についてパラメータ調整すればいいのかな
493
(1): 2009/10/03(土)12:35 ID:UlO+O8O5(1) AAS
外部リンク:ja.wikipedia.orgフラクタル地形
とか読んでて思ったんだけど、
491や492、470あたりでで言ってるような大陸プレートとか川の3作用、侵食なんかのシミュレートって必要なのかな?
中点変位法ってやつだけでも意外なほど自然な地形ができるみたいだけど。
494: 2009/10/04(日)19:43 ID:x18DstRC(1) AAS
必要かどうかは「やってみて」ってことじゃないかなあ
机上で「必要だ」「いや必要ない」とか言っても意味がないと思う
495: 2009/10/04(日)20:06 ID:9UzeKwvu(1) AAS
>>493
中点変異法だと自然な山岳地形しかできないよ
河川のネットワークとかは表現しきれない
496: 2009/10/05(月)05:25 ID:3VNPBo3Y(1) AAS
外部リンク[php]:roguebasin.roguelikedevelopment.org

Roguelikeの基本的な作り方が一通り載っているのでメモ。
497
(2): 2009/10/06(火)01:12 ID:xuZzk/rj(1) AAS
Rogueと[V]bandは昔ソース読んだわ。
498: 2009/10/06(火)02:22 ID:aF0V8M1Q(1) AAS
そうすか
499: 2009/10/06(火)09:13 ID:WzvZ4ars(1) AAS
>>497
だから何?
500
(1): 2009/10/06(火)23:03 ID:QnmMHWRM(1) AAS
>>497
何か技術的な感想とかないと話題が広がらんね。

俺はへんぐばんど(←なぜか変換できない)のコードを読んでみたんだけど、
ダンジョンのひと区画を表す構造体の名前が cave_type だった…
なんかもう少しマシな名前はなかったのかな。
496のページでは tile と呼んでたけど、普通はなんて呼ぶんだろ?
501
(1): 2009/10/07(水)09:11 ID:Odiq5ORG(1) AAS
>>500
>なんかもう少しマシな名前はなかったのかな。
完成品を仕上げることの出来ないヘタレPGの癖に
重箱の隅を突付く様なマネは止めなさい
502
(1): 2009/10/07(水)09:46 ID:zTt+885V(1/2) AAS
cave_type ってなんで駄目なの? 洞窟の型式 ってことでしょ?
503
(2): 2009/10/07(水)09:58 ID:n0Xf2gG4(1) AAS
500は壁タイプと読んだに一票
504: 2009/10/07(水)10:16 ID:Iz7zKYBR(1) AAS
>>503
なるほど。だからtileと対応させてたのかw
505: 2009/10/07(水)10:40 ID:zTt+885V(2/2) AAS
ちょww
506: 2009/10/07(水)13:44 ID:PBq5/QZ5(1) AAS
えっ
ちょっとまって
これ面白いw
507
(1): 2009/10/07(水)17:37 ID:bcMEzKz6(1) AAS
よかったな話が広がって
508: 2009/10/07(水)21:00 ID:jFON4MzC(1) AAS
噴いたw
なんかありがとうw
509
(1): 2009/10/08(木)00:18 ID:qdPyyc4O(1/3) AAS
>>501
そりゃ誰だって最初はいい加減な名前つけることもあると思うけど
ヘタレPGの俺でも開発の過程でリファクタリングくらいするよってことだよ。
重箱の隅どころか、ソース全体で頻繁に使われる構造体だよ?

>>503
ちょwwそんなわけあるかwwww
510: 2009/10/08(木)00:25 ID:ML9JLptD(1/2) AAS
>>509
マジでわからん
cave_typeで何が問題と思うのか教えて
511: 2009/10/08(木)00:45 ID:qdPyyc4O(2/3) AAS
>>502
洞窟内に洞窟が並んでいるんだぞ?地表でも洞窟なんだぞ?
まあこのわかりづらさはソースを実際見て感じて頂くのが一番かも。

他にも名前の酷さでいえば object_type なんて構造体もあるよ。
grepしたらこれも全体の半数くらいのソースファイルで名前が出てくる、
ゲームのシステム上でも重要な構造体なんだけど、
さていったい何の構造体でしょうか?
省2
512
(1): 2009/10/08(木)00:47 ID:Kxn3wCkJ(1/3) AAS
caveって穴っていうかリアルの洞窟において一個一個の膨らんでる箇所のことだろ
「洞窟」っていう訳語にとらわれて日本語思考をしているから変に感じるんだろう
513
(1): 2009/10/08(木)00:51 ID:qdPyyc4O(3/3) AAS
>>512
俺愛用の辞書だとこんな感じだなあ。膨らんでる箇所って?

cave ke?iv
【1-名-1】洞くつ、ほら穴、横穴洞穴◆開口部が地上にあるものを指す。
【1-名-2】〔ワインの〕地下蔵、セラー
・One of the advantages of storing and aging wine in a cave is the constant, cool temperature. 地下蔵でワインを貯蔵して熟成させる利点の一つが安定した冷たい温度にある。
【1-名-3】洞くつに似た場所、窓のない部屋
省1
514: 2009/10/08(木)01:10 ID:Kxn3wCkJ(2/3) AAS
caveってconcaveとかも言うように
えぐられたり掘られたり等によって空洞ができてる箇所、
洞(どう)っていうか
まあ俺も英語のネイティブってわけじゃないから
ニュアンスを強く主張するつもりはないけど

そしてあんまやるとスレ違いになるしな
515
(1): 2009/10/08(木)01:18 ID:ML9JLptD(2/2) AAS
>>ID:qdPyyc4O
変愚はAngbandっていうダンジョンしかないゲームから大改造されてZangbandってのがつくられ、そのZangbandを更に大改造した物
だから地形の構造待命が cave_type なのはダンジョンしかなかったソースを引き継いでる歴史的経緯
いい加減な名前を付けたって話とは全然違う

リファクタリングしろって言うかもしれんが何年間も複数人が関わってるプロジェクトだと伝統的に使われてる構造体名は変えない方が普通だと思う
半端に変えると変愚で書いたコードを他のヴァリアントに移植などしたい時も不便しか起こらない
516
(1): 2009/10/08(木)11:25 ID:1w52envF(1/4) AAS
>>515
地上なのに cave なのはそのとおり歴史的経緯だと思う。俺は言いすぎかw

>リファクタリングしろって言うかもしれんが
俺はたまたま読んだ変愚の名前を出したけど、
リファクタリングしとけばよかったのにね、っていうのは
変愚の今のソースコードについてというより、Angband や、さらにその前の Moria についてかな。
そして俺の指摘の主旨はむしろ、新しく Roguelike を書くならみんな名前に気をつけろ、
省9
517: 2009/10/08(木)11:46 ID:CTuVKFiV(1/2) AAS
>>516
>変愚の今のソースコードについてというより、Angband や、さらにその前の Moria についてかな。
ダンジョンだけのゲームでリファクタリングする理由がないだろう
改造プロジェクトに合わせてリファクタリングもありえない
だいたい構造体名がお前の気に入らなくても開発は難しくならないだろw
518
(1): 2009/10/08(木)13:20 ID:k3PR24xN(1) AAS
>>513
>俺愛用の辞書だとこんな
つまり、お前の辞書に無いと駄目な訳?

頼むからお前はソース見ないでくれないか?
519: 2009/10/08(木)13:43 ID:1w52envF(2/4) AAS
俺の言ってるのは、変愚では cave_type という名前は変、ということではなくて、
Angband や Moria の時点で cave_type という名前はすでに変だろう、ということ。
variantのために名前を変えろ、ということじゃないよ。変愚の名前を出したのがマズかったな。
あと地上が…とかいったのも俺のミス。

>ダンジョンだけのゲームでリファクタリングする理由がないだろう
俺はリファクタリングする理由がないのは書き捨てのプログラムだけだと思うな。
(名前が適切だという理由以外で)ホントにリファクタリングする理由はないと思うなら、
省6
520: 2009/10/08(木)14:12 ID:1w52envF(3/4) AAS
>>518
それは、不適切な名前だと思ったのは俺の知識では cave にそんな意味はないから、ってこと。
名前って単なる記号だけじゃなくて、役割を伝えるためにもあるからさ。
俺の辞書にないから他の奴もわからんだろ、とまでは思いあがってはいないよ。
cave という単語はもちろん洞窟を格子に切り分けてた一部のことだろ、
ってみんなが一発でわかるなら、この名前は適切で俺が間違ってるな。

で、511 でも言ったけど object_type が何の構造体か一発でわかるか?
省4
521
(1): 2009/10/08(木)14:14 ID:J/n9BQmy(1/6) AAS
プログラマーのローカルルールの話なら他所でやろうか、そろそろ
522
(2): 2009/10/08(木)14:16 ID:CTuVKFiV(2/2) AAS
>ツール使えば10秒もかからないのに、どうしてこんなになるまで放っておいたんだ!ということ。
変えてもデメリットしかない上に誰も困らないからに決まってるのに、非常に悪いことでも放置してるように言うなよ
お前が言うobject_typeの方が被りやすい上に曖昧で駄目だろw

大体、ちゃんと動いてるプログラムをやたらリファクタリングしたがるのは
お前が優秀なんじゃなく、落ち着きがないだけだってw
523: 2009/10/08(木)14:23 ID:ReLVhyES(1) AAS
オープンソースのゲームにつきものの話だな
面白くなければ誰もソースを読もうとしないし、面白いとわかった後では手遅れ

そういう事は作った本人に言ってくれ
本人なら「そっちの方がわかりやすかったな」と受け入れられても、
第三者にしてみれば「あいつDQNネームだよなwww」と言ってるのと同じ
524: 2009/10/08(木)14:23 ID:1w52envF(4/4) AAS
>>521
ごめんなさいwww

>>522
というわけで返事したいけどごめんwww
525: 2009/10/08(木)14:38 ID:EcPSYSNi(1) AAS
スレが進んでるなと思ったらこれだよ・・・
526
(1): 2009/10/08(木)14:50 ID:J/n9BQmy(2/6) AAS
ベナール対流って奴の考えを応用してプレートテクトニクスを再現できるかもしらんので、ちょっとやってみるわ。
オイラー方程式とかはちょっと手に負えないので、
セルオートマトンで近似してみようと思う
基本的にセル毎にランダムな熱勾配の分布が温度が高いほうから低いほうに向かって移動することによって
プレートを自己組織化すればいいわけだからいけそうだぞ
527
(1): 2009/10/08(木)14:55 ID:GkxaPLmK(1/2) AAS
>>526
単に魚の鱗みたいな図形が出現して絶望しそうな予感
528
(1): 2009/10/08(木)15:09 ID:J/n9BQmy(3/6) AAS
>>527
それでおkなんだよ
実際のプレートもでっかい六角形してるし(ベナール対流の特徴)
その六角形のプレートの対流に従って、
別途用意した(この前うpしたようなやつ)地形を移動・変形させれば、
なんかかなりちゃんとしたものになりそう
529: 2009/10/08(木)15:13 ID:GkxaPLmK(2/2) AAS
>>528
ああ、ランダム生成した地形をベナール対流で動かして幾らか自然に見えるようにしたいってことか
530: 2009/10/08(木)15:25 ID:J/n9BQmy(4/6) AAS
この前の手法でランダムに生成した地形は自己相似性があるから、だいぶ自然なんだけど、
プレートテクトニクスを組み込むことにより地形に「地球っぽさ」を表現できるんじゃないかと思うんだよね
気候の処理組み込んでないからまだまだだけど、
気候も地形(と緯度)にある程度依存しているものだし、これは後からでもいいかな
大域的な気候もなんだかベナール対流しているみたいだしね(地球の大気が地域ごとに別々に対流しているのはそのためだとか)
531
(1): 2009/10/08(木)15:34 ID:kvGNk1Qo(1) AAS
ここってRPGのシナリオ自動生成の話はスレ違い?
532: 2009/10/08(木)16:01 ID:B/qsG0o7(1/2) AAS
>>531つ【>>108-163】別にいいんじゃね?
533: 2009/10/08(木)16:16 ID:J/n9BQmy(5/6) AAS
話しようよ〜

自分はちんぷんかんぷんですけど
534: 2009/10/08(木)16:23 ID:FPzMir1S(1) AAS
シナリオの話も面白そうだがスレ分けた方が良くない?
共通する手法が少ないし
535: 2009/10/08(木)16:39 ID:J/n9BQmy(6/6) AAS
河川の生成でちょっと調べたんだけど、個人における人間同士のネットワークコネクタ(誰と誰が知り合いかとか)の数も
河川の大小の分布と同じく正規分布ではなく対数分布になっているらしいよ。
まぁ、あまり関係ないか
536: 2009/10/08(木)16:47 ID:DtrxF0ep(1) AAS
何年か前に流行ったスモールワールドだな
537
(1): 2009/10/08(木)22:48 ID:Kxn3wCkJ(3/3) AAS
世界がもし100人の村だったらっていうやつ?
538
(1): 2009/10/08(木)23:00 ID:7+fuvlU+(1/3) AAS
>>537
違う違う
60億の人間は平均6回くらい知り合いを辿ればつながってて
これは極端に知り合いが多い人間が多数への中継点になってるのがキモであるとか、そんな話
興味があったら グラフ理論 知り合い の2単語でぐぐってみて
539
(1): 2009/10/08(木)23:13 ID:B/qsG0o7(2/2) AAS
>>538確か二十年ぐらい前にアメリカで
任意の二人のそれぞれの知り合いが互いに知り合い同士である確率が約1/3である
とかいう研究発表があったそうだが、それのことかな。
他にも、よくある名前の人の方が珍しい名前の人に比べて倍以上成功者になり易いとかの統計発表もあったな。
これは多い順に並べただけだから対数分布じゃなかったが・・・
540: 2009/10/08(木)23:30 ID:7+fuvlU+(2/3) AAS
>>539
>任意の二人のそれぞれの知り合いが互いに知り合い同士である確率が約1/3である
うん これも無関係じゃない
こういう話自体は1960年代後半あたりから論文があったんだが、
たしかインターネットのネットワーク構造との絡みで、グラフ理論が何年か前にちょっと流行したんだよ
541: 2009/10/08(木)23:34 ID:7+fuvlU+(3/3) AAS
あ、念のためグラフ理論自体は二百数十年の歴史がある
最近ってのはインターネットのネットワークとの対比などね
542: 2009/10/08(木)23:41 ID:rEy9hqkI(1) AAS
60年代のはミルグラムの実証的な実験で、原因は不明ってことで注目されなかった
(ランダムな人間から自分(ミルグラム)に手紙を知り合いを通して送ってもらう実験 わずか6ステップで届いた)

90年代後半にワッツとストロガッツによってグラフ理論によりこれが数学的に証明されて研究が盛んになった
543: 2009/10/25(日)01:41 ID:0WNaNnJF(1/2) AAS
島の自動生成をした後のことだが、街を作るのも
不自然な場所にあるよりは、ここならできると思える場所はあると思うんだ。

水辺、農業できる平坦な土地、木材の取れる森、鉱物の取れる山岳
ぐらいかと思うが、他に何か条件はあるかな?

・・・書き出して思ったが、カタンのルールっぽいwww
544: 2009/10/25(日)19:21 ID:SXpDEseg(1) AAS
シチュエーションによるでしょ
ある程度の技術を持った入植者が殖民するのか、
原始的な人類がそこで文明を発達させるのかでも
随分と経緯が異なってくると思う

前者の場合、その文明の技術レベルと、その土地の資源価値によって
開発される入植地は異なってくるし、
後者の場合は食糧生産に不可欠な河川と平野と周囲に家畜化・栽培のための品種改良が可能な
省2
545: 2009/10/25(日)21:09 ID:0WNaNnJF(2/2) AAS
なるほど、そういう観点から見ると、今度は例の文明発展ゲームっぽい感じになるな。
どういうゲームを作るかで変わってくるわけだ。
546: 2009/10/30(金)13:22 ID:+t0CBskY(1) AAS
おっぱいも自動生成して下さい
547: 2009/11/09(月)10:57 ID:+dLWphZ6(1/2) AAS
リファクタリングの話が出てたのか。基本的にリファクタリングはテスト書かないだやるもんじゃないぞ。スレ違いだがこれだけはいいたくて
548: 2009/11/09(月)11:00 ID:+dLWphZ6(2/2) AAS
Tortchlightなる$20のangbandみたいに町1個メインダンジョンのゲームが出たんだが、
(クリア後に無限階のダンジョンが増える)
道中、パーツの組み合わせのランダムマップが多々あるんだが、
似たようなところばっか、行き来させられたw

入り口から次の階段までの出口を探索したら次の階は、
同じような構造の出口から入り口までを探索させられた、
何を言っているかわからねーだろうが(ry
省1
549: 2009/11/14(土)22:12 ID:N5rSyfmV(1) AAS
個人的な意見だが、3Dのランダムマップは全体が把握しにくいので、2Dのランダムマップよりも
「どれも似たような構造だと思ってしまう感」が強くなる気がする
550: 2009/11/14(土)23:28 ID:EXwOWxll(1) AAS
把握しにくいからそれほど広げられなくて
広さがないから似たようなのしかできなくて

という理由もありそうだ。
551: 2009/11/17(火)22:56 ID:tJpYOa5Y(1) AAS
このスレの住人はDungeonCrawlをやってみた方が良い。
外部リンク:crawlj.sourceforge.jp
まず部屋の概念が無い。
そして、ダンジョンが繋がっていないことが多々ある。
自動生成パターンは8つ程度だがそれぞれ異なった地形になり大変参考になるぞ。
552
(2): 2009/11/20(金)07:35 ID:oJbkYetX(1) AAS
外部リンク:www3.wind.ne.jp  (DENZI部屋)

ここのドット絵はかなりオススメ。
幼稚くさくないのがいい。
現代や未来的なものが無いから抗議する必要があるけども。
553: 2009/11/20(金)18:22 ID:1X3IYluW(1) AAS
>>552
それって宣伝乙なの?晒しageなの?
554: 2009/11/21(土)00:07 ID:9SOG5ms9(1) AAS
晒しage宣伝乙だろ
555: 2009/11/21(土)08:12 ID:5tBT/R6Y(1) AAS
プログラミングのうち3割ほどは、関数や変数などの名前を考えている時間と言われています
もし適切な名前をつけることが出来たのなら、適切に機能分散できたということです
556: 2009/11/21(土)09:58 ID:6QZ3OLsn(1) AAS
>>552
Roguelikeにつかえんこともないが・・・
557
(1): 2009/11/21(土)13:12 ID:tWOuRZ7c(1) AAS
RTSの自動マップ生成機構を作ってる最中なんだが
・全マップチップを移動可能地形で塗る
・ランダムな位置に10個くらい円形の移動不可地形を置く
・スタート地点を2箇所決める
・一方から出て、もう一方への方向±乱数の角度をとって一定距離進む、をもう一方に着くまで続ける
・↑の1ステップごとに座標を記録
・スタートとゴールを逆にしてもう1回やる
省2
558: 2009/11/22(日)11:08 ID:YPy55NRa(1) AAS
>>522
DangeonCrawlやSlashEMのタイルのサイトがどうかしたの?
自動生成とは無縁だが。
559: 2009/11/22(日)12:19 ID:mrurC8+Q(1) AAS
本人の宣伝だろ
スレチな場所に貼るなよ
560: 2009/11/22(日)15:04 ID:2O0i1/xt(1) AAS
そっち方面では名の知れてる人だし
たぶん自演というよりはにわか信者の宣伝だろう
561: 2009/11/22(日)16:05 ID:uCc0sMJO(1) AAS
本人も目立ちたがりみたいだし微妙ね
562: 2009/11/22(日)16:20 ID:2J0cOPcD(1) AAS
>>557
RTSだと人が作ったマップの方が面白くない?
スタート地点を数ケ所あらかじめ決めておいて離れた位置同士になるようにランダムに選択がベストな気がするなー
特に対人だとプレイしてくにつれて糞マップのが全貌が明らかになったショックは異常
563: 2009/11/25(水)12:22 ID:zeLFFAd+(1) AAS
人が作ったmapの面白さに自動生成でどれだけ近づけられるかってことじゃないか?
人が作ったmapだと数に限りがあるので、地形をすでに知ってるmapでプレイすることが避けられないので、
探索の意味がかなり薄れるからね
564: 2009/11/27(金)12:40 ID:VTMd4JWw(1) AAS
RTSのRise of Nationsは基本的な構造を指定して、実際の細かい地形はランダムだったな。確か。

参考:Rise of Nations Garden - データ:マップ
外部リンク[html]:frogman.s20.xrea.com
565: 2009/12/28(月)23:51 ID:CA9PKXga(1/2) AAS
追記
C言語かC++でお願いします。
566: 2009/12/28(月)23:52 ID:CA9PKXga(2/2) AAS
↑すみません誤爆
567: 2009/12/31(木)08:34 ID:QBEbvaiT(1) AAS
どうやったら追記を誤爆するのだw
568: 2009/12/31(木)15:43 ID:qeuWXmxV(1) AAS
誤爆警報のない専ブラもある
569: 2010/01/07(木)02:52 ID:rJ8NDAiL(1) AAS
自動生成弾幕もある意味、自動生成の迷路になるが
ABAさんとこでほぼ完成されちゃってるんだよなぁ。
570: 2010/01/07(木)03:01 ID:E2lEALBB(1/3) AAS
なんか、逆の発想で、自動生成を手動で生成することを楽しむゲーム
のようなものはできないだろうかね
パラメータをうまく調整することで、よりよいダンジョンやら地形やらができるとか

あ、それってシムアースか…
571: 2010/01/07(木)13:27 ID:AtBPbJA2(1/2) AAS
自動生成弾幕やBulletMLは、ある程度の目標は達成できてるね
課題は、ある水準以上の高品質の難度バランスを実現できないことだけど、
そこはもう手でやるしかないところだろうね
そして、ABA gamesではそこは割り切って切り捨てているところ

原因として、
rogue系なら一見無茶くさい高難度の局面においてもじっくり考えれば多様な正答のなかのどれかが見つかるが、
STGなどアクション性の高いものにおいてはそれが難しく、ついてゆけるプレイヤーが減る(間口が狭くなる)
省3
572: 2010/01/07(木)17:02 ID:9Fnj1yCo(1/2) AAS
手で剪定する部分は、遺伝的アルゴリズムの技法を応用して何とか出来ないものだろうか。
1-
あと 430 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.022s