解析/自然回復
の編集
http://mars.kmc.gr.jp/%7Edis/heng_wiki/?%E8%A7%A3%E6%9E%90/%E8%87%AA%E7%84%B6%E5%9B%9E%E5%BE%A9
[
トップ
] [
編集
|
差分
|
バックアップ
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
Template/アーティファクト
Template/モンスター
Template/攻撃属性
[[解析]] #contents *概要 [#f367c583] 自然回復処理等を行なっている、process_world_aux_hp_and_spについて簡単にまとめる。~ この処理は上からこの順番で10ゲームターン毎に行う。~ 加速が高い場合、数回行動につき1度だけ発生する、ということに留意すべきである。~ なお、ダメージの類は全てNOESCAPE属性だが、この属性で特別なことは起こらないようだ。 *毒ダメージ [#pfe8d520] 毒状態であり、無敵でなければ1点のダメージを受ける。~ また、HPの自然回復が0になる。 *切り傷ダメージ [#i3ef95ec] 無敵でなければ、傷の深さによって以下のダメージを受ける。~ また、HPの自然回復が0になる。 |傷の深さ|ダメージ|名称|h |1000|200|致命傷| |200|80|ひどい深手| |100|32|重傷| |50|16|大変な傷| |25|7|ひどい傷| |10|3|軽傷| |10未満|1|かすり傷| *日光ダメージ [#kaa64e8c] 種族が吸血鬼であるか吸血鬼変化中のときのチェック。 -閃光耐性を持たず -日中 -地上の -明るいところにいるか、暗闇エゴでなく燃料切れでない光源を装備している -無敵でない 以上を満たすとき、1点の不可避ダメージを受ける。 また、HPの自然回復が0になる。 *溶岩ダメージ [#y708da80] 溶岩の上に居るとき、無敵でなく、火の免疫を持たないならばダメージを受ける。 **基本ダメージ [#fff3be4b] -深い溶岩の上に居るとき --damage = 6000+d4000-1 --HPの自然回復が0になる -浅い溶岩の上に居て浮遊がないとき --damage = 3000+d2000-1 --HPの自然回復が0になる **耐性による増減 [#p3ad9ea9] -エントの場合、damage += damage / 3 -火の耐性がある場合、 damage = damage / 3 -火の一時的耐性がある場合、damage = damage / 3 -浮遊しているとき、damage = damage / 5 **最終ダメージ [#w4c2f8e7] -damage /100(切り捨て)のNOESCAPE属性ダメージ -(1d100-1< damage%100)のとき1点加算される。 *深い水の処理 [#o6ddbd6d] 深い水の上にいて、浮遊しておらず、水泳可能フラグを持っていないとき 総重量が重量限界を越えているならば、1d(レベル)のダメージを受ける。 *乗馬のオーラダメージ [#pca06797] 免疫を所持していなければ、乗馬のオーラダメージを受ける。~ ダメージは(乗馬のレベル/2)で、エントは火のダメージ4/3倍、アンドロイドは電撃のダメージ4/3倍である。~ 耐性で1/3、一時耐性で1/3になる。 *壁のなかにいるとき [#t7ec0373] 壁抜け、幽体化をしていないとき、無敵でなければ1+(レベル/5)点のダメージを受け、HPの自然回復が0になる。~ 種族が幽霊の場合、このダメージでHPが0未満になることはない。 *regen_amount [#b051c986] 通常はregen_amount=197だが、餓死寸前では回復量が減る。~ 空腹の度合いにより、98、33、0と減っていく。 さらに、以下の影響を受ける -急速回復があるとき、regen_amount *= 2 -型や構えを使用しているとき、regen_amount /= 2 -回復速度減少の呪いがかかっているとき、regen_amount /= 5 -休憩または探索状態のとき、regen_amount *= 2 *パターンの処理 [#wbcd5534] いずれの場合もHPの自然回復が0になる。 **パターンの崩壊 [#o8da38f8] 種族がアンバライトで出血中のとき、1/10でパターンの崩壊を引き起こす。 -既に足元がPATTERN_TILE_WRECKEDならば、既にパターンは崩壊しているのでこの処理を終了する -10d8のダメージを受ける -半径4の範囲からランダムに床を選び、パターンであればPATTERN_TILE_WRECKEDに置換する作業を35+d45回行なう。 -プレイヤーの足元をPATTERN_TILE_WRECKEDに置換する。 崩壊処理の後、足元のパターンの種類により効果が発生する。 **PATTERN_TILE_END [#i09b8c6c] パターンの終端にいるとき、以下の効果が起きる。 -毒、幻覚、朦朧、切り傷、盲目、恐怖が治療される。 -ステータスと経験値の一時的減少が回復する。 -1000ポイントHPを回復する。 **PATTERN_TILE_OLD [#d8c519c9] なにも起きない。 **PATTERN_TILE_TELEPORT [#z758839f] 階を指定したテレポート、通常テレポート、何もしない、のどれかを選べる。 **PATTERN_TILE_WRECKED [#qfd6f7e1] 壊れたパターンを歩いたことにより、ダメージ200点を受ける。 **その他 [#f8af8ee5] 種族がアンバライトなら1/2で無傷。~ そうでなければ、無敵でないとき1d3のダメージを受ける。 *upkeep_factorの計算 [#o9627c0c] ペット維持費を計算し、upkeep_factorに加算する。これはMP回復ペナルティで、上限は1000。 **ペット維持費 [#kc8ed8a7] TO DO **特殊な行動中のupkeep_factor [#k0999b5e] 青魔の学習中、忍者の早駆け、剣術家の降鬼陣のときはupkeep_factorに100を加算する。 *魔力の回復 [#z0a64086] 回復量 = regen_amount - upkeep_factor * PY_REGEN_NORMAL / 100~ この数値は、急回復等考慮した回復率 - ペット維持比*通常時回復率である。 **現MP > 最大MPのとき(剣術家) [#i4234438] decay_frac = 最大MP * 32 * 197 + 524~ 実際の減少量はこれを65536で割った値となる。~ なお、現MPが最大MP未満まで減った場合、現MP=最大MPとなる。 **現MP < 最大MPかつ 回復量 > 0のとき(MP回復処理) [#fa465619] new_mana_frac = 最大MP * 回復量 + 524~ 実際の回復量はこれを65536で割った値となる。~ なお、現MPが最大MPを越えた場合、現MP=最大MPとなる。 **回復量 < 0のとき(MP減衰処理) [#tc000e9a] reduce_mana_frac = 最大MP * 回復量 + 524~ この値は通常時の@のMP自然回復量に等しい。~ 実際の減少量はこれを65536で割った値となる。~ なお、現MPが0未満になる場合、現MP=0となる。 *魔道具術師の取り込み魔力回復 [#p706d10d] 回復倍率 = (30 + 知能ボーナス) / 30~ ちなみに、知能ボーナスはMAX30である。 **杖/魔法棒 [#a1ffc5c0] new_mana = (regen_amount * 回復倍率 * (最大使用回数+13) ) / 8~ この値だけ充填される。なお、65536点充填されると使用回数が1回復する。 **ロッド [#q5ffd81d] new_mana = (regen_amount / 197) * (回復倍率 * (最大使用回数+10) * 10 ) / 16 ~ この値だけ充填される。なお、pval*10点充填されると使用回数が1回復する。 *ペット制御 [#y04958c8] ペット維持費が100を越えていてMPが0のとき、ペット維持費が100以下になるまでペットの開放が要求され続ける。 *突然変異 [#ac3f0f26] 回復量の減少がある。 TO DO *体力の回復 [#o7789d58] 降鬼陣の型(剣術家)、早駆け(忍者)の使用中はHPが回復しない。~ 回復量 = (最大HP * regen_amount + 1442) / 65536~ 回復後最大HPを越えた場合、現HP=最大HPとする
タイムスタンプを変更しない
[[解析]] #contents *概要 [#f367c583] 自然回復処理等を行なっている、process_world_aux_hp_and_spについて簡単にまとめる。~ この処理は上からこの順番で10ゲームターン毎に行う。~ 加速が高い場合、数回行動につき1度だけ発生する、ということに留意すべきである。~ なお、ダメージの類は全てNOESCAPE属性だが、この属性で特別なことは起こらないようだ。 *毒ダメージ [#pfe8d520] 毒状態であり、無敵でなければ1点のダメージを受ける。~ また、HPの自然回復が0になる。 *切り傷ダメージ [#i3ef95ec] 無敵でなければ、傷の深さによって以下のダメージを受ける。~ また、HPの自然回復が0になる。 |傷の深さ|ダメージ|名称|h |1000|200|致命傷| |200|80|ひどい深手| |100|32|重傷| |50|16|大変な傷| |25|7|ひどい傷| |10|3|軽傷| |10未満|1|かすり傷| *日光ダメージ [#kaa64e8c] 種族が吸血鬼であるか吸血鬼変化中のときのチェック。 -閃光耐性を持たず -日中 -地上の -明るいところにいるか、暗闇エゴでなく燃料切れでない光源を装備している -無敵でない 以上を満たすとき、1点の不可避ダメージを受ける。 また、HPの自然回復が0になる。 *溶岩ダメージ [#y708da80] 溶岩の上に居るとき、無敵でなく、火の免疫を持たないならばダメージを受ける。 **基本ダメージ [#fff3be4b] -深い溶岩の上に居るとき --damage = 6000+d4000-1 --HPの自然回復が0になる -浅い溶岩の上に居て浮遊がないとき --damage = 3000+d2000-1 --HPの自然回復が0になる **耐性による増減 [#p3ad9ea9] -エントの場合、damage += damage / 3 -火の耐性がある場合、 damage = damage / 3 -火の一時的耐性がある場合、damage = damage / 3 -浮遊しているとき、damage = damage / 5 **最終ダメージ [#w4c2f8e7] -damage /100(切り捨て)のNOESCAPE属性ダメージ -(1d100-1< damage%100)のとき1点加算される。 *深い水の処理 [#o6ddbd6d] 深い水の上にいて、浮遊しておらず、水泳可能フラグを持っていないとき 総重量が重量限界を越えているならば、1d(レベル)のダメージを受ける。 *乗馬のオーラダメージ [#pca06797] 免疫を所持していなければ、乗馬のオーラダメージを受ける。~ ダメージは(乗馬のレベル/2)で、エントは火のダメージ4/3倍、アンドロイドは電撃のダメージ4/3倍である。~ 耐性で1/3、一時耐性で1/3になる。 *壁のなかにいるとき [#t7ec0373] 壁抜け、幽体化をしていないとき、無敵でなければ1+(レベル/5)点のダメージを受け、HPの自然回復が0になる。~ 種族が幽霊の場合、このダメージでHPが0未満になることはない。 *regen_amount [#b051c986] 通常はregen_amount=197だが、餓死寸前では回復量が減る。~ 空腹の度合いにより、98、33、0と減っていく。 さらに、以下の影響を受ける -急速回復があるとき、regen_amount *= 2 -型や構えを使用しているとき、regen_amount /= 2 -回復速度減少の呪いがかかっているとき、regen_amount /= 5 -休憩または探索状態のとき、regen_amount *= 2 *パターンの処理 [#wbcd5534] いずれの場合もHPの自然回復が0になる。 **パターンの崩壊 [#o8da38f8] 種族がアンバライトで出血中のとき、1/10でパターンの崩壊を引き起こす。 -既に足元がPATTERN_TILE_WRECKEDならば、既にパターンは崩壊しているのでこの処理を終了する -10d8のダメージを受ける -半径4の範囲からランダムに床を選び、パターンであればPATTERN_TILE_WRECKEDに置換する作業を35+d45回行なう。 -プレイヤーの足元をPATTERN_TILE_WRECKEDに置換する。 崩壊処理の後、足元のパターンの種類により効果が発生する。 **PATTERN_TILE_END [#i09b8c6c] パターンの終端にいるとき、以下の効果が起きる。 -毒、幻覚、朦朧、切り傷、盲目、恐怖が治療される。 -ステータスと経験値の一時的減少が回復する。 -1000ポイントHPを回復する。 **PATTERN_TILE_OLD [#d8c519c9] なにも起きない。 **PATTERN_TILE_TELEPORT [#z758839f] 階を指定したテレポート、通常テレポート、何もしない、のどれかを選べる。 **PATTERN_TILE_WRECKED [#qfd6f7e1] 壊れたパターンを歩いたことにより、ダメージ200点を受ける。 **その他 [#f8af8ee5] 種族がアンバライトなら1/2で無傷。~ そうでなければ、無敵でないとき1d3のダメージを受ける。 *upkeep_factorの計算 [#o9627c0c] ペット維持費を計算し、upkeep_factorに加算する。これはMP回復ペナルティで、上限は1000。 **ペット維持費 [#kc8ed8a7] TO DO **特殊な行動中のupkeep_factor [#k0999b5e] 青魔の学習中、忍者の早駆け、剣術家の降鬼陣のときはupkeep_factorに100を加算する。 *魔力の回復 [#z0a64086] 回復量 = regen_amount - upkeep_factor * PY_REGEN_NORMAL / 100~ この数値は、急回復等考慮した回復率 - ペット維持比*通常時回復率である。 **現MP > 最大MPのとき(剣術家) [#i4234438] decay_frac = 最大MP * 32 * 197 + 524~ 実際の減少量はこれを65536で割った値となる。~ なお、現MPが最大MP未満まで減った場合、現MP=最大MPとなる。 **現MP < 最大MPかつ 回復量 > 0のとき(MP回復処理) [#fa465619] new_mana_frac = 最大MP * 回復量 + 524~ 実際の回復量はこれを65536で割った値となる。~ なお、現MPが最大MPを越えた場合、現MP=最大MPとなる。 **回復量 < 0のとき(MP減衰処理) [#tc000e9a] reduce_mana_frac = 最大MP * 回復量 + 524~ この値は通常時の@のMP自然回復量に等しい。~ 実際の減少量はこれを65536で割った値となる。~ なお、現MPが0未満になる場合、現MP=0となる。 *魔道具術師の取り込み魔力回復 [#p706d10d] 回復倍率 = (30 + 知能ボーナス) / 30~ ちなみに、知能ボーナスはMAX30である。 **杖/魔法棒 [#a1ffc5c0] new_mana = (regen_amount * 回復倍率 * (最大使用回数+13) ) / 8~ この値だけ充填される。なお、65536点充填されると使用回数が1回復する。 **ロッド [#q5ffd81d] new_mana = (regen_amount / 197) * (回復倍率 * (最大使用回数+10) * 10 ) / 16 ~ この値だけ充填される。なお、pval*10点充填されると使用回数が1回復する。 *ペット制御 [#y04958c8] ペット維持費が100を越えていてMPが0のとき、ペット維持費が100以下になるまでペットの開放が要求され続ける。 *突然変異 [#ac3f0f26] 回復量の減少がある。 TO DO *体力の回復 [#o7789d58] 降鬼陣の型(剣術家)、早駆け(忍者)の使用中はHPが回復しない。~ 回復量 = (最大HP * regen_amount + 1442) / 65536~ 回復後最大HPを越えた場合、現HP=最大HPとする
テキスト整形のルールを表示する