トップ «前の日記(2013/02/11) 最新 次の日記(2013/02/13)» 編集

SikabaneWorksが関係するコンテンツ(主に*band系ローグライク)の開発近況・補足から全く個人的な雑記まで。

[WEB:屍の見える丘公園]| [RSS]

Angband | Badiashimshe | C# | CRAUZEL | D'angband/小説草稿 | D'angband/開発 | DarkSouls | Demon'sSouls | DungeonCrawl | ElvenUteruses | Haskell | Hengband | J9シリーズ | LEGO | LineDrawing | MISC | MTG | Mac | Math | Moria | R-18 | Roguelike | Rough | RoughSketch | Ruby | SDL | UNIX | VMware | WarHammer | Zangband | アタシラヂョウヲウ | イラスト | ガジェット | ゲーム | ゲーム紹介 | ゲーム製作技術 | ゲーム論 | スケッチ | ツクール | テクノロジー | ニコニコ動画 | ファルコム | ファンタジー | ヴィーヤウトゥムノ | 別記事追加予定 | 変愚蛮怒 | 変愚蛮怒/スポイラー | 変愚蛮怒/元ネタ探訪 | 変愚蛮怒/攻略 | 変愚蛮怒/開発 | 宗教 | 情報 | 政治 | 文字コード | 日ペ昔話 | 東方ワンドロ | 東方外法漢女 | 歴史 | 漫画製作 | 版権絵 | 画像処理 | 翻訳 | 自然言語 | 艦隊これくしょん | 落書き | 言語解析 | 読書 | 超人ロック | 軍事 | 追記予定 | 通信 | 阿片窟 | 馬鹿馬鹿蛮怒/開発 | 魔法少女まどか☆マギカ | 魚類版深夜の真剣お絵描き60分一本勝負


2013/02/12

[別記事追加予定][変愚蛮怒/スポイラー]cave_gen()関数による部屋間の生成処理(変愚蛮怒 Ver2.1.1 rev3274)

cave_gen()関数の処理中、generate_rooms()関数で生成された部屋の中央部分を基準に生成を行う。部屋中央座標は生成した順に配列に保管されているが、これを予めシャッフルする。

  • 部屋間のドア数カウントを0にリセットする(各部屋の内部として生成されたドアはこれに含めない)
  • 部屋の中でも最後のIDの中央座標を起点に生成開始。
  • どの部屋も必ず繋がるよう、起点からIDの若い順に繋いでいく。ダンジョン毎に定義された確率に応じて、天然の洞窟らしい入り組んだ通路になるか、人工的な最短距離を通るものになるかが決まる。(build_tunnel2()/build_tunnel())この関数を一回行う毎に、配列に両部屋を結ぶ通路の座標が収められる。
    • build_tunnel2()/build_tunnel()の違いは、再帰構造があってクランク状の数が増えやすいがそうでないかの違い。
    • 途中に部屋があっても、普通に貫通する。これにより実質の通路数は処理を繰り返す回数(=部屋数)よりずっと多くなる。
    • 通路生成経路が部屋の外壁であった場合、後でドア生成を行う地点として記憶する。
    • 通路生成経路が既に通路を生成した場所であった場合、その周囲1マスに後でドアの生成を試みる。
  • 通路配列をなぞる順に、通路を敷き詰めていく。
    • 通路を敷き詰める地形が、移動可能地形(FF_MOVE)(=既に部屋が生成されている地形)でないか、水地形、溶岩地形(FF_WATER/FF_LAVA)でない場合のみ床にする。
  • ダンジョンにNO_DOORフラグがない場合前述に記憶したドア生成地点に、確率に応じてドアを生成する。(詳細は別記事)

[落書き]クッキー☆レイプ!レズホモと化した平野店長

レズはホモ