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

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/16

[変愚蛮怒/スポイラー]*破壊*の発動ケースとその処理の流れ(変愚蛮怒 Ver2.1.2 rev3303)

*破壊*の処理はdestroy_area()関数で行われる。

bool destroy_area(int y1, int x1, int r, bool in_generate)

この関数は以下のケースの時にそれぞれの引数を伴って呼び出される。

  • *破壊*の巻物を読んだ時、プレイヤー中心に半径12+d5, ingenerate=FALSE
  • *破壊*の杖を使った時、プレイヤー中心に半径12+d5(強力発動時17+d5), ingenerate=FALSE
  • カオス魔法の「ワンダー」の魔法のランダム発動で*破壊*が選ばれた時、プレイヤー中心に半径12+d5, ingenerate=FALSE
  • 暗黒魔法の「悪霊召喚」の魔法のランダム発動で*破壊*が選ばれた時、プレイヤー中心に半径12+d5, ingenerate=FALSE
  • カオス魔法の「破壊の言葉」が発動した時、半径12+d4, ingenerate=FALSE
  • 破邪魔法の「ハルマゲドン」が発動した時、半径12+d4, ingenerate=FALSE
  • カオス魔法の「虚無招来」を壁に接触した状態で発動した時、665/666の確立で半径14+@レベル+d11,ingenerate=FALSE
  • フロア生成処理中に、*破壊*の痕跡を作成するフラグが立った時、半径15, ingenerate=TRUE
  • カオスパトロンの報酬で*破壊*が発動した場合、半径25, ingenerate=FALSE

bool destroy_area(int y1, int x1, int r, bool in_generate)

  • 固定クエストか地上の場合はFALSEを返して終了。
  • in_generate=TRUEなら、モンスターの光源一旦全て消す。
  • 射程内かつ、フロア内の各マスについて以下の処理を施す。
    • 該当のマスはCAVE_ROOM/CAVE_ICKY/CAVE_MARK/CAVE_GLOW/CAVE_KNOWNのフラグを失う。
    • in_generate=FALSEならば該当のマスもCAVE_UNSAFEフラグを除く、@さんのある地点上では*破壊処理*をスキップする代わりに、プレイヤーが盲目になるフラグを立てる。
    • 該当のマスに敵がいた場合、
      • in_generate=TRUEなら無条件にその敵をdelete_monster()関数で消す。
      • そうでなく、そのモンスターがクエストモンスターなら、HPを最大まで回復させた上で、*破壊*半径*2+1だけ、テレポートアウェイさせる。
      • そうでない場合、delete_monster()関数で消す。ペットは消滅した旨を日記に記録される。
    • ゲームオプションでアーティファクトの保存モードがオンになっているか、in_generate=TRUEの場合、フロア生成時の自然ドロップで配置されていた固定アーティファクトを救済し、また再生成されるチャンスを残す。
    • 該当のマスのオブジェクトを全て消滅させる。
    • 該当のマスが永久地形出ない場合、地形が変化する。
      • in_generate=FALSEの場合、20/200で花崗岩の壁、50/200で石英の壁、30/200で溶岩の壁、100/200でダンジョン標準の床に変化する。
      • in_generate=TRUEの場合、20/200で花崗岩の壁、30/200で石英の壁、50/200で溶岩の壁、100/200でダンジョン標準の床に変化する。
    • in_generate=FALSEの場合、ダンジョンの明暗関係を更新する。
    • @さんに盲目耐性か閃光耐性が内場合、10+d10ターンの盲目状態が追加される。

[ヴィーヤウトゥムノ]鬼畜大佐『ロムンクァリィ』 'U' (釣り用アヴァター)

ロムンクァリィ