名前から能力値を作るゲームをExcelで試してみた
昔のパソコン雑誌に載っていた投稿プログラム作品で、「入力された名前から体力・攻撃力などのパラメータを算出し、その能力で戦わせるゲーム」というものがあったのを思い出しました。
1990年ごろにあったバーコードバトラーのようなものですね。ほかにも、入力した文字などから能力値を作り出すタイプのゲームがあり、メーカーから発売されたPCゲームでも似たような仕組みを見た記憶があります。
仕組みそのものは、意外と単純です。
名前から能力値を作るのであれば、まず文字ごとに「文字コード」を求めます。そして、その数値をいろいろ組み合わせたり計算したりして、体力や攻撃力などのパラメータに変換します。
文字を取り出したり、文字コードを調べたりする機能は、昔のプログラミング言語にも用意されていたので、実現自体はそれほど難しくありません。
というわけで、今回はこれをサクッとExcelで試してみました。

競走馬名を想定して、日本式のカタカナ9文字までを入力できるようにし、そこから文字コードを取り出します。
さらに文字コードを「上位」と「下位」に分けています。ざっくり言えば、256で割ったときの商(上位)と余り(下位)です。
今回は下位の数値だけを使い、それらを組み合わせて4つのパラメータA~Dを作ってみました。
下位だけを使ったのには理由があります。
カタカナの文字コードは上位の部分がほとんど同じなので、上位だけを使っても文字ごとの差があまり出ません。そこで、違いの出やすい下位の数値を使ってみたわけです。
(上の画像の場合、すべての文字の「上位」が37になっています)
やっていることはかなり単純ですが、こういう「名前を入力すると、その名前そのものが能力値に変換される」という仕組みは、ゲームにすると結構面白そうです。
たとえば競走馬だけでなく、人名やチーム名、武器名など、何でも能力値に変換できます。
単純な文字コード計算だけでも、ゲームのアイデアの種にはなる。
こういう小さな仕組みから、いろいろゲームを考えてみるのも面白そうです。
