トップ «前の日記(2013/10/18) 最新 次の日記(2013/10/20)» 編集

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/10/19

[変愚蛮怒/開発]ハードコーディング処理による各職業の別ゲー度(変愚蛮怒 Ver2.1.4 rev3495)

Twitterの #hengband クラスタにて狂戦士の仕様の話題が上り、うっかり見逃していた仕様などにまたいくつも気づかされたのでこんなネタを上げてみる。

C言語の#defineプリプロセッサで定義された各職業のマクロが何件出るかを基準に、各職業がどの程度ハードコーディングで特別処理されているかを探る。無論明確な統計的基準にはなりえないが「各職業がどの程度、暗黙的な特別ルールを課されているか」の一定の指数にはなるだろう。

探った方法は以下の通り、

  • VC++Express2008のシンボル検索で()内のキーワードを探る
    • シンボルで#define定義、ならびに#ifdef JPによる、ロケール記述で重複している部分は除外
    • #defineで多重マクロ定義されているものは1件と扱う。(これにより吟遊詩人のみは実際より簡略化されて件数が減っている可能性大)

結果は以下の通りである。

バーサーカー(CLASS_BERSERKER)60
スペルマスター(CLASS_SORCERER)59
忍者(CLASS_NINJA)58
練気術師(CLASS_FORCETRAINER)42
赤魔道師(CLASS_RED_MAGE)37
修行僧(CLASS_MONK)33
鏡使い(CLASS_MIRROR_MASTER)31
超能力者(CLASS_MINDCRAFTER)30
剣術家(CLASS_SAMURAI)28
魔道具術師(CLASS_MAGIC_EATER)23
ハイ=メイジ(CLASS_HIGH_MAGE)23
魔獣使い(CLASS_BEASTMASTER)23
騎兵(CLASS_CAVALRY)23
戦士(CLASS_WARRIOR)22
メイジ(CLASS_MAGE)21
吟遊詩人(CLASS_BARD)21
プリースト(CLASS_PRIEST)20
青魔道師(CLASS_BLUE_MAGE)20
ものまね師(CLASS_IMITATOR)19
スナイパー(CLASS_SNIPER)19
アーチャー(CLASS_ARCHAR)19
混沌の戦士(CLASS_WARRIOR_MAGE)17
盗賊(CLASS_ROGUE)17
鍛冶師(CLASS_SMITH)17
レンジャー(CLASS_RANGER)15
パラディン(CLASS_PARADIN)14
観光客(CLASS_TOURIST)13
魔法戦士(CLASS_WARRIOR_MAGE)11

ああ、やっぱり、というべきか。特別な打撃処理、技能体系が与えられている職業は極めて多く、逆にAngband以来の標準的なシステムを中心に実装されている、ごく普通のデュアル職は特に少ない。

吟遊詩人は、先に述べた通り特別処理を別個マクロ化している箇所が多いので、実際はより複雑である可能性は大きい。あと、青魔道師とものまね師はそれぞれに処理を丸ごと重複し実装するというかなりどぎついことやってるせいで、却ってこの基準では低位にある可能性が巨粒子レベルで存在している。成し遂げたぜ。

[ヴィーヤウトゥムノ] 森蜘蛛/Wood spider (L.Umber 'S')

=== Num:127  Lev:7  Rar:3  Spd:+10  Hp:3d6  Ac:16  Exp:15
それは一目散に冒険者に向かってくる。
それは通常地下 7 階で出現し、素早く動いている。この自然界のモンスターを倒
すことは 50 レベルのキャラクタにとって 約2.02 ポイントの経験となる。それ
は通常集団で現れる。それは AC16 の防御力と 3d6 の体力がある。それはドアを
打ち破ることができる。それはまれにテレパシーで感知できる。それは毒の耐性
を持っている。それは経験を積むと、闇の森蜘蛛に進化する。それは侵入者に対
してあまり注意を払わないが、 80 フィート先から侵入者に気付くことがある。
それは 1d4 のダメージで噛んで攻撃し、 1d5 のダメージで刺して毒をくらわす。

0

Romunqualy

鬼畜大佐『ロムンクァリィ』
おう、MBLVのMRMちゃんやめろや。

Urwen

アッキ=ニンジャ『ウルウェン』
いやこんな所でま○もちゃんやってるんじゃ、
*勝利*の見込みないだろ、常考。