設計を見直そう16、そして〇〇ドルを払い振り出しに戻る。

そいえば、キーボードのEnterボタンが戻らなくなって久しい。
「たのむぞ!エンター!」って、ターンすると「むり」って感じでそのままへっこんで戻ってこない。
あー。
うん。そういうことあるよね。
無理なものは無理なんだよ。
気持ちの持ち方変えても、考え方変えても、世界がどんだけの速度で変化しても。
みんながどれだけ幸せそうでも、たのしいって誰かがいうそれを手にしていても。
じぶんだけがヘコんで戻れないことってある。

そのうちキーボード、買わないとねって。
何のオチも付かないまま、このお話はおしまい。

ゲームつくるよー。
 
 
前回コマンドのことをまとめてみて、よーし。何か揃ってきた気がするよね!という感じがしてきて。
そろそろ「今用意している仕組みでゲームが動くのか」の検証に戻ろうかなってお話に。

んー。
流石にちょっと日が空いているので、ここまでの流れみたいな回想を挟んでみよう。

設計を見直そう1では。
各機能モジュールと、データのつながりを見直し。
ゲームの内容を記述する媒体のことをルール・シート、シート生成前の中間情報をソースと定義。

設計を見直そう2では。
起動モードを定義。
セーブ・データが出力シートに含まれること、パースを役割ごとに持つことなどの検討。
データの形態として「保存データ(セーブ・データ)」「可変データ」「固定データ」の3つがあると定義。
※ここで「ストーリー・データ」という名前があがりますが、そいえばここで立ち消えているような?

設計を見直そう3では。
フラグとは何だろう?という検証と、ONとOFFの2つの状態を持つフラグと、上昇する数値を表現するレベル値的なものがあればゲームを実現できないかな?の考察。
※のちのイベント・フラグとイベント・レベルの事前検討的なお話。

設計を見直そう4では。
前回から引き続きフラグとフラグ以外を使ったゲーム構築の検討。
記録される4つの要素を定義。
・イベント・フラグ … 2つの状態を持つ「名前」を持った状態値
・イベント・レベル … 加算方向にのみ変化する「名前」を持った進捗値
・デート・タイム … 世界に1つの時間を指す日時情報
・チャプター … 日時とは別に世界の流れを刻む値
※このあたりから戦闘パートどしよ・・みたいな話題をチラチラはさみはじめる。

設計を見直そう5では。
今を表す情報(章・日時・進捗・状態・場所)を使って、RPGが組み立てられるか。
いま検討しているルールで問題がないかを確認することに。
イベント・ハンドラには4つの種類があると定義。
・Chapter初期ハンドラ … Chapterの切り替え時に記録情報を更新する
・Chapter更新ハンドラ … アクション実行時にChapterを更新する
・Location更新ハンドラ … アクション実行時に記録情報を更新する
・DateTime更新ハンドラ … アクション実行時に日時時刻情報を更新する
※この頃のイベント・ハンドラはアクション向け、場所向け、日時時刻向けにわかれてた。

設計を見直そう6では。
想定されるシナリオ用意して、それがどのように実現できるかを書いてみることに。
「新規スタートができる」事に関して検証。
どこからデータを引っ張ってくるかしかわからない問題から、条件判定の定義、アイテムの仕様、ステータスの更新の話題。
※ちなみに今回戻ろうとしているのはここの検証作業。

設計を見直そう7では。
前回の作業から気になった「移動」に関して。
共通アクションでの施設を使った移動と、マルチ・キャラクタによるプレイ、パーティー向けルールの検討。
ゲーム性の検討。
※マルチ・キャラクタによるプレイ、パーティー向けのシステム検討はその後まとめページで進めてる。

設計を見直そう8では。
データの置き場所に関する検討。
ゲーム・エンジンとプレイ・メモリ、ライブラリ、ルール・シート間の関係の検討。
データ形式などは以下のように定義。
・データ・フォーマット … ある要素を構成するデータの定義の集まりのこと(入れ物)
・データ・セット … データ・フォーマットに合わせたデータ集合体(中身の詰合せ)
・ライブラリの領域 … 読み取り専用のデータが格納されている領域
・プレイ・メモリ … ゲームの実行中に使用する作業領域
※プレイ・メモリ上の内容がセーブ・データに使われる

設計を見直そう9では。
プレイ・メモリに関する定義。
入力シートをゲーム・エンジンに入力し、出力シートを生成するまでのフローを「主に記録領域間のやり取りをイメージした形」で検討。

設計を見直そう10では。
イベント・ハンドラも含めた出力シートの生成フローを検討。
フロー内であがった各定義に関して再度定義。

設計を見直そう11では。
ルール・シートの構造に関して検討。
ルール・シートでは以下を目指したい。
・全体像が見渡せること
・完成前に実行が出来ること
・言語に依存しないこと
・ミスをプログラムで見つけられること
※この時点でイベント・ハンドラの定義が当初の内容と少しズレてきた・・。

設計を見直そう12では。
コアとなる「場所」という要素のつながりを視覚しやする要素として「地図」の検討。

設計を見直そう13では。
地図を持つことから懸念される、重複するデータの最適化の検討。
Play領域、Active領域、Library領域などの検討。
※あと、プリーズ・ドリンク!ア、ロット・オブ・ビネガー!!だって。

設計を見直そう14では。
管理構造の検討。
Active領域内の構成、Chapterに付随するデータ構造の検討。
イベント・ハンドラの構造の検討。
ここで検討されたイベント・ハンドラは以下の5種類。
・提案アクション用のイベント・ハンドラ
・共通アクション用のイベント・ハンドラ
・戦闘アクション用のイベント・ハンドラ
・チャプター初期化イベント・ハンドラ
・チャプター更新イベント・ハンドラ

設計を見直そう15では。
イベント・ハンドラ内はコマンドで記述すると定義。
コマンドの構成を検討。
※あと、スイス銀行に口座つくるといいんだって。
 
 
ぜーぜー。
ダイジェスト版のまとめで疲れた・・。

とりあえず、イベント・ハンドラがふらふらしていることと、設計を見直そう6の作業に戻る感じだということはわかったぞ。
さて、それじゃあ設計を見直そう6の作業に・・の前に。

うーんとですね。
シャドウランというTRPGがあるでないですか。
唐突なのですが。
まぁ、いつもこんな感じなので適当にヌルーしておいて下さい。

で。シャドウラン。
ここで作っているTRPGとかいうパチものではなく、由緒正しいテーブル・トーク・ロールプレイングゲームの方。
荷物を整理していたら、シャドウランのデータブックとか、リプレイ集とか出てきたので「なつかしいなー」ってチラ読みしてたところ、あ、そいえばアクションのパラメータって、参照パラメータとか指定があって、サイコロふった方がよいのかなって。

ええと。

ここでいうアクションは提案アクションの方で、場所に依存したアクションのこと。
「何をする」という選択をプレイヤーが選んだ際に何が起こるのかの部分。
例えばそこにアクションが成功するか失敗するかの部分があったらどうだろうって。
成功と失敗の判定を行ってから、成功であったら「成功時のルート」へ進み、失敗であったら「失敗時のルート」へ進む。
という方がゲームとしてわかりやすいのかな?って。
このあたりはイベント・ハンドラ内でコマンドを使うことで実現できるので、そこでスキにやればよいかなって想像していたのですが。

んー。
例えばです。
「背後から誰かが近づいてくる」というシーンがあったとして。
提案アクションを用意するとすると、えーっと。
「隠れてやり過ごす」であったり、「待ち伏せして捕まえる」であったり、いくつかアクションを用意するとします。
その時に、プレイヤーは考えるじゃないですか。
どっちがいいかなー?って。
その時に参照パラメータの記述があったら、ちょっと分かり易いかなって。思ったのです。
「隠れてやり過ごす(参照パラメータ:敏捷性)」とか「待ち伏せして捕まえる(参照パラメータ:筋力)」みたいな。
そのアクションが成功するかどうかの判定に使われるパラメータが選択前にわかる感じ。

あ、ダイス数とかあるとちょっと本家っぽい?
「隠れてやり過ごす(参照パラメータ:敏捷性+ダイス2)」とか「待ち伏せして捕まえる(参照パラメータ:筋力+ダイス1)」みたいな感じかな?
ダイスの数は乱数の幅を表して、そのアクションの運要素の強さの判断基準になる・・かな?
参照パラメータとキャラクタのステータス値を比べ、値が高い方が成功率が高いプランという考えもできるよね。
できればクリアの基準値も表示に出せるとよりよいのかも。

本家のTRPGって、ゲームマスターとプレイヤーの関係がフェアだから成り立つゲームで。
こじん的には。
それに類するものだからという訳でもないけれど(そもそもTの文字が持つ意味が違うし)、ゲームって、プレイヤーに対してフェアであって欲しいなって。
プレイヤーがゲームを嫌いになったり、ゲームのクリアを前に投げ出してしまうのは、ゲームがプレイヤーに対してフェアではないとプレイヤーが気づいてしまうからなのではないかなって。

クソゲーは除いて。

クソゲーは誰にでも等しくやめる権利があるんだよ。
もちろん、一生を捧げる権利もね。

意味わからないけれど。

システム側でちょっとだけ、相互の信頼関係が持てるような仕組みにしたいなって思ったよというお話。
あとシャドウランかっこいい。

ええと・・、何か検証進んでなくない?
うへあ。
じ、次回こそ。
 
・・・。
 
秋といえば月見。
月見ってなんだっけって。
いやお空のムーンとかガン見すれば、それだけで世間一般的には月見のような気もする。
十五夜と十三夜?とかあるのでしたっけ。

学術的にはラビットの秘密基地があって、アースの社会を監視しているそうです。
どこの学術かは盗聴の危険があって書けないけれど。
たぶん大変。なので雪見大福とか食べながら、人類の存亡をかけて生き延びて下さい。
主にロッテさんが助かります。(確か元々のコンセプトは月を見ながらたのしむアイスなんですよね)

大丈夫。
内緒でよいので、はっぴーでいて下さい。

よい週末をね。