天地を喰らうの能力値の考察

ああそうですよ。どうせ暇ですよ。冬の夜長に暇ですよ。

ファミコン版「天地を喰らう」って知ってます?
ご存知で無い方は↓をご覧下さい。興味無い方はごめんなさい。

何が言いたいかと言うとこのゲームって能力値の上限が255なんですよ。100とかじゃなくて。
幼心に「光栄のゲームは上限100なのに何で天地を喰らうは255なんだろうか?」と思ったのを今思い出して考えてみました。
で、ファミコンって8ビットだったから上限まで使い切ってたのか。という結論。

そして脱線
そして例によって脱線。上限を100にしたらどんな感じになるんべか?と思い立ちここのデータを参照させていただきまして変換してみました。

脱線の果ての結果
以下が結果。折角なのでリンクも貼ってみた。速さってのは天地を喰らう独特のパラメータですな。ドラクエで言ったらすばやさか。

名前 武力 知力 速さ
劉備 51 78 33
関羽 96 71 63
張飛 100 24 47
陳登 20 63 12
周倉 65 31 29
趙雲 94 78 71
関平 63 43 39
諸葛亮 31 100 61
伊籍 16 73 18
魏延 94 35 51
黄忠 86 69 59
馬良 18 92 35
馬謖 67 82 43
廖化 67 39 33
龐統 59 96 49
孟達 71 61 73
法正 43 80 29
馬超 94 55 69
馬岱 90 67 53
呉蘭 76 41 43
厳顔 78 63 53
雷銅 80 37 37
蒋琬 55 76 7
呉懿 69 55 29
張苞 94 35 57
関興 92 69 59
姜維 82 94 96
関索 98 63 53

概ね光栄と似た感じですが。養子と実子に大きな能力の開きが!
後、蒋琬がドン臭過ぎるとww

変換コード

ま、だからどうした感満載ですが、きっといつか誰かの役に立つ筈!!

use strict;
use utf8;

use Encode;
use JSON::Syck;
use Math::Round qw(nearest);
use URI::Escape qw(uri_escape_utf8);

local $/ = '';
my $peson = JSON::Syck::Load(<DATA>);
my $table = "|*名前|*武力|*知力|*速さ|\n";

for my $p (@$peson) {
    my @values =  map { nearest(1, $_ * (100 / 255)) } @{$p->{skill}};
    my $name = $p->{name};
    Encode::_utf8_on($name);
    unshift @values, sprintf("[http://my3594.net/pedia/view/%s:title=%s]", uri_escape_utf8($name), $name);
    $table .= sprintf "|%s|\n", join("|", @values);
}

print $table;

__DATA__
[
  { name: "劉備", skill : [ 130, 200, 85 ] },
  { name: "関羽", skill : [ 245, 180, 160 ] },
  { name: "張飛", skill : [ 255, 60, 120 ] },
  { name: "陳登", skill : [ 50, 160, 30 ] },
  { name: "周倉", skill : [ 165, 80, 75 ] },
  { name: "趙雲", skill : [ 240, 200, 180 ] },
  { name: "関平", skill : [ 160, 110, 100 ] },
  { name: "諸葛亮", skill : [ 80, 255, 155 ] },
  { name: "伊籍", skill : [ 40, 185, 45 ] },
  { name: "魏延", skill : [ 240, 90, 130 ] },
  { name: "黄忠", skill : [ 220, 175, 150 ] },
  { name: "馬良", skill : [ 45, 235, 90 ] },
  { name: "馬謖", skill : [ 170, 210, 110 ] },
  { name: "廖化", skill : [ 170, 100, 85 ] },
  { name: "龐統", skill : [ 150, 245, 125 ] },
  { name: "孟達", skill : [ 180, 155, 185 ] },
  { name: "法正", skill : [ 110, 205, 75 ] },
  { name: "馬超", skill : [ 240, 140, 175 ] },
  { name: "馬岱", skill : [ 230, 170, 135 ] },
  { name: "呉蘭", skill : [ 195, 105, 110 ] },
  { name: "厳顔", skill : [ 200, 160, 135 ] },
  { name: "雷銅", skill : [ 205, 95, 95 ] },
  { name: "蒋琬", skill : [ 140, 195, 18 ] },
  { name: "呉懿", skill : [ 175, 140, 75 ] },
  { name: "張苞", skill : [ 240, 90, 145 ] },
  { name: "関興", skill : [ 235, 175, 150 ] },
  { name: "姜維", skill : [ 210, 240, 245 ] },
  { name: "関索", skill : [ 250, 160, 135 ] }
]