Jewel-mmo開発日記

RubyでMMORPGを作る過程を記録する日記。 Yokohama.rb 発起人。
2005-04-17

[アイデア]最大 HP が低いほど強い

いままで HP と呼んでいたものは仮に耐久力と呼ぶことにする。

新しい HP は 1 〜 10 の数値になる。 レベルアップ等によってこの HP パラメータは成長しない。 そしてダメージの計算は……うーむこれはコードで書いたほうが早い。

hp_max = 5
hp = hp_max
old_hp_max = 75

として、ダメージ計算は

hp -= damage / (old_hp_max / hp_max)

とする。

hp_max が低いほうが切り捨てるダメージ量が多くなるので有利。 hp_max が 1 なら従来の最大 HP 以上のダメージを一度に与えない限りダメージは 0 になるわけだ。

たとえばボス戦などではいかにダメージ 1 を与えるかが重要になる(ボスの HP が 10 しかないのだから。魔法剣のサンダガでためる× 10 とバイキルトした最強のジョブアビを 200% 連携でヒットさせてやっとダメージが 0 から 1 になるわけだ。もちろんこの連携を成功させるまでの準備時間がすごく長いので、最強レベルのアーマーナイトを先頭に配置し、魔法使い達はそいつに何重ものバリアを被せてボスの攻撃をしのぎ続けなければならないのだ……)。

昔から キャラの最大 HP は 10 くらいでいいんじゃないかと思っていたので、これは非常にいいアイデアだ。