十、ポケコンとルーズリーフ(1)
関西から帰ってくると、やっぱり東北の夏は涼しいんだな、というのを肌身で実感する。
ベランダで夜風に当たりつつ、私は星空を見上げて伸びをした。
盆休みの両親の里帰りは、私たち兄弟にとっては関西の親戚筋と交流できる貴重な機会だ。父方の祖母や祖父の元気な顔を見るのは安心するし、母方の親戚筋には年齢の近い従妹たちがいて、向こうも私たちが来るのを楽しみにしてくれているみたいだった。
特に篤志は、自分より年下の従妹たちに対して数日間だけでも兄貴風を吹かすことができたようで、すこぶる満足そうだった。本山家では末っ子であるがゆえに、何かと兄や姉のおもちゃにされることも多いのだ。
しかし関西の夏の暑さは尋常ではなかった。
叔父さんたちからは「外に出て元気に遊ぼう」とけしかけられるのだけど、従妹たちともどもクーラーの効いた日陰の部屋で、ボードゲームで遊んだり、お話をして過ごす時間の方が長かったように思う。
帰り着いたのが夜ということもあって、こうして正味三日ぶりの我が家のベランダで、ひんやりとした空気を体にあてて涼むのは心地よかった。
「朔子、ちょっといいか?」
子供部屋からベランダにつながるサッシを引いて、理博が顔を出し手招きした。
「なに?」
「頼まれていたプログラム、とりあえず書いてみたからテストしたい」
「できたの? 見せて!」
来るべき航ちゃんとの対面に備えて、私が理博に依頼していたものだ。さすがに仕事が早い。
ベランダから子供部屋に戻ると、崇一郎と篤志はすでに寝室で寝息を立てていて、起きているのは理博だけだった。
古い勉強机の前で、次兄はすでに「それ」の電源を入れて用意していた。
カシオ製ポケットコンピューター・PB―700。
いわゆるポケコンだ。新書本の版型より少し大きいぐらいのサイズで、厚みもあって、ポケットコンピューターと言いつつ普通のポケットに入る大きさではないけど、そこは別にいいだろう。ポケット戦艦だって入らないんだから。
理博がバイト代やお小遣いをためて昨年購入したもので、パッと見はちょっと豪華な関数電卓のようだが、BASIC言語でのプログラミングも可能な歴としたパソコンの一種である。
液晶ディスプレイも広くて、テキストで二十桁四行、フルグラフィックで百六十かける三十二ドットの表示が可能。理博の手にかかれば、ちょっとしたゲームだって作れてしまう。
私は、航ちゃんと電話で話した翌日、関西に向かう車の中で理博に事情を説明し、その上で、とあるプログラムの製作を依頼していた。墓参り帰省の期間を使って開発してもらい、それがいま動かせるところまでできた、という事だろう。
「ありがとう、理博」
「いや、まだだ。ちゃんと動いて、お前のイメージしてる「ルールのあるブンドド」とやらに使えるか、実際に試してみよう」
そう。それは以前に航ちゃんと話した「ルールのあるブンドド」を実現するためのプログラムだった。
具体的に言うと、例のウォーゲーム・エレクトロニクスのピコピコする部分の役目をポケコンにやってもらうのだ。
航ちゃんに私の言うことを真剣に聞いてもらうにはどうすればいいか。
いろいろ考えた末、私のだした結論は、「とりあえずブンドドをして負かす」だった。
というか、それしか思いつかなかった。
何かちょっとした勝負をしかけて勝利し、一時的に優位に立って、こちらの要求を吞まざるを得ない状況を作る。
その方法論自体は、そもそも信介さんがあの日ファミレスで提案してくれたアイディアのうちの一つだったが、具体的にどういう勝負を仕掛ければいいのかまでは詰め切れていなかった。
モデラ―としてはプラモシミュレーションで勝負! といきたいところだけど、生憎と現実世界にそんなものはないのだ。
そのあと航ちゃんと電話して話す中で、「ルールのあるブンドド」のことを思い出し、電話を切った後で少し考えた。技術的なところを理博に頼めば実現できるのではないか。そして、もしブンドドをただの手遊びから公平なルールのある「ゲーム」に変えられるのであれば、それをもって「勝負」を仕掛けられるのではないか。
そう思い至った時、一縷の光明が見えた気がしたのだ。
理博から現時点での実装仕様の説明を聞きながら、ポケコンを操作してみる。
「基本的に、処理できるのは一対一の戦いの勝敗だけだ。最初はプラモの能力値を、スケールに応じて割り振る。大きなスケールのものほど、多くのポイントを割り振ることができるようになっている」
「つまり、七十二分の一より三十五分の一の方が総合的に強いってことね」
「そうだ。数値の割り振り方については、合計値が合っている限りまったくの任意だが、プラモデルのもとになった実機のイメージに合わせて割り振る方がブンドドとして面白いと思う」
ブンドドを面白くするのはイメージの力だ、というのは大いに賛成したいところだ。
能力値は機動力・攻撃力・防御力・耐久力と四種類あるが、たとえば戦車なら防御や耐久が高め、飛行機なら機動力が高い、という具合だろうか。
「先手と後手の両者が能力値を入力し終えたら、戦闘を開始するか訊いてくる。開始すると、機動力や攻撃力に割り振った値に乱数が足された上で、所定の計算処理を行い、攻撃が成功したか、相手に幾らのダメージを与えたかが順次表示される。攻守を交代しつつこれが繰り返され、累積したダメージの合計が相手の耐久力を越えた時点で破壊したと判定され、勝敗を表示したうえでゲームは最初の画面に戻る。――とまあ、そんな感じだな」
一通りの操作方法を確認した後、何度かパラメータを変えて試してみたが、特に致命的なバグやループ処理などは無いようだ。




