アーティファクト > 固定アーティファクトの希少度


概要

アイテムの生成処理、および★アーティファクトの生成難度について

バージョン

ver1.1.95(object2.c)


結論を先に教えて!

  • 地上では★は生成されない(モンスターの固定ドロップアイテム除く)
  • 現在の階層がアイテムレベル(階層)を下回ると極端に生成確率が落ちる(レアリティ数倍以上)
  • 個別★のページに書かれてある希少度は、そのベースアイテムの★判定の際に1/希少度の確率で生成されるということ。
  • アイテムは生成レベル付近のアイテムが生成されやすい。逆に言えば深層では低ベースレべルの★はやや生成されづらい。
  • ★の生成されやすさは60階あたりで一旦カンストし、混沌の領域でまた上昇する
  • INSTA_ARTは常に生成判定が行われるのでレアリティの割に出やすい


大まかな流れ

  • アイテム生成はmake_object()から行う
  • make_artifact_special()でINSTA_ART★の作成判定を行う。作成されたら終了
  • get_obj_num()でベースアイテムを決める
  • apply_magic()でアイテムランクを決める
  • make_artifact()で★作成判定を行う
  • a_m_aux_?()でエゴアイテム作成を行う


make_object()

アイテム生成開始関数。生成レベルと共に開始。
生成レベルはダンジョンの階層や敵のレベルで決定する。



上質なら生成レベル+10する。

上質なら1/10、並なら1/1000でmake_artifact_special()を行う。
Extraモードであれば上質は1/8、並なら1/400。

上質なら生成アイテムリストから並以下のアイテムを削除する。
get_obj_num()でベースアイテムを決める。
apply_magic()でアーティファクト、エゴアイテムの判定、作成を行う。

矢が生成された場合複数生成する。
Extraの場合、かつ一部消耗品の場合は複数生成する。


get_obj_num()

ベースアイテムの生成。薬など消耗品や一部珍品を含む。

生成レベルにブースト判定を行う。
  • 初心者ダンジョンでなければ1/10の確率でlevel = 1 + (level * 128 / 1d(128))する。
  • 上記ブーストが無く、Extraモードかつ1/3の確率でlevel += 1d(50 - level / 4)する。
  • 無縁塚かつweird_luckが通れば上記に加えてlevel += 1d(40)する(最大128)

生成レベル以下のアイテムすべてのチャンスを合算し(total)、チャンステーブルとする。
  • 各アイテムのチャンスは100/レアレティ(端数切捨て)。
  • 「銃が出ない」オプションなど除外指定されてるアイテムは除外する。
  • Extraモードであれば帰還アイテムは除外する。妖魔本はチャンス2倍

value = 1d(total)とし、チャンステーブルのvalue番目のアイテムIDを取得する。
 例:3つしかアイテムが無いとして、各チャンスが100,50,50のときtotalは200。
   valueが50の時1番目のアイテムが、valueが175のとき3番目のアイテムが選択される。
50%で1回、10%で2回、上記の処理を追加で行い(つまり最大3回)、最もアイテムレベルが高いアイテムを生成する。


apply_magic()

生成レベルによってアイテムをランクアップ(並や上質→上質や高級品)させる。

いかさまの場合 生成レベルに 1d(プレイヤーのLv/2+10)を加える
ただし生成レベルは127を超えない

上質レベルを生成レベル+10とする。ただしダンジョン上質上限を超えない
高級レベルを上質レベル*2/3とする。ただしダンジョン高級上限を超えない

※ダンジョン上限は各ダンジョンで定義されている。
上質上限 高級上限 ダンジョン
90 70 混沌の領域
85 40 無縁塚
80 25 虹龍洞
75 25 旧灼熱地獄、地獄
75 20 荒野、鉄獄、魔法の森、紅魔館、地獄谷、竜の住みか、夢の世界
70 20 玄武の沢
60 15 夢殿大祀廟、逆さ城、仙界

ここから条件で増加。
  • 幸運状態か霊夢(賽銭6以上)であれば上質+10、高級+5
 ・上記でなく白いオーラか霊夢(賽銭4以上)であれば上質+5、高級+2
 ・上記でなく黒いオーラや占いで不調であれば上質-5、高級-2
  • 占いで好調であれば上質+5、高級+2
  • 無縁塚であれば上質+5、高級+5
  • Extraモードであればそれぞれ2倍。ただし最低でも上質30、高級20
ここまでで上質99、高級75を超えていれば左記の値にする。

powerを決める。初期値は0として以下の順の処理を行う。
上質アイテムか1d99<上質レベルであればpower=1
power=1であり、高級アイテムか1d99<高級レベルであればpower=2
power=0であり、1d99<上質レベルであればpower=-1
power=-1であり、1d99<高級レベルであればpower=-2
上記後、紫苑の場合は1/13でpower=-2、1/6でpower=-1に変更する。

power>=2であれば1回、さらに無縁塚であれば+1回アーティファクト生成に挑戦する(make_artifact)
失敗時、白いオーラかつ1/77の確率でもう一度アーティファクト生成に挑戦する。
アーティファクト生成されたら情報を格納して終了。

ここからベースアイテム分類に従いエゴ、☆、その他パラメータ処理を行う。
武器→ a_m_aux_1
防具→ a_m_aux_2
指輪、アミュレット→ a_m_aux_3
リボン→ a_m_aux_5
その他→ a_m_aux_4

make_artifact() make_artifact_special()

★を作成判定を行う。
make_artifactとmake_artifact_specialとの差はベースアイテムが決まってるかどうかぐらい

地上では生成しない
アーティファクトリストを上からチェックしていく。
  • 既に生成済みの★は出ない
  • クエストアイテムフラグの★は出ない
  • 銃が出現しないオプションなら★銃は出ない
  • make_artifact_specialであればINSTA_ART以外は出ない
  • make_artifactなら同じベースアイテム以外は出ない
  • 現在階レベル以上のアーティファクトは 1/((アーティファクトレベル-階レベル)*2)のチェックを通らないと生成されない
  • 生成レベル以上のベースアイテムのINSTA_ARTは 1/((ベースレベル-生成レベル)*5)のチェックを通らないと生成されない
  • 1/アーティファクトのレアリティ(希少度)を通らないと生成されない
これらの条件をすべて通れば確定。追加耐性フラグがあれば付与して終了。

余談

並ベースの★の出にくさ

★アルハザードや★ナルシスがやたら出にくいのは以下のせい
  • 並のアイテムとして生成
  • 消耗品を含めた大量のアイテムから選択される(さらに折れ剣は高レア)
  • 選択されてもベースが低レベルなの60%でまずキャンセルされる
  • apply_magicで並みから高級品までブーストされる必要がある

力の指輪の出にくさ

make_artifact_special()においてベースアイテムの生成判定を行っているが、
大抵のINSTA_ARTは★レベル>=ベースレベルなので気にする必要はあまりない。
が、★ナルヤ、★ネンヤ、★ヴィルヤ、そして★一つの指輪のベースアイテムレベルは★レベル+10と逆転しており出づらい。
特に★ヴィルヤはベースレベル100のためオベロン打倒前に手に入れることは困難になっている。

本家変愚蛮怒より出にくくなっているアーティファクト

本家よりベースアイテムが変更となると生成難度が上がる傾向にある。
★ナインの戦闘つるはしはベースアイテムが戦闘つるはし(Lv50/レア1)からつるはし(Lv5/レア2)に変更されている。
そのためget_obj_num()でベースアイテムが選択がされづらくなっており、結果的に生成されづらくなっている。
同じ理由に★炎の鉄下駄などもある

また★太公望の釣り竿はINSTA_ARTから釣り竿がベースアイテムに変えられており、これもまた生成難度は上昇している。





名前:
コメント:

タグ:

+ タグ編集
  • タグ:
最終更新:2022年08月11日 13:26