#1
by 矢沢 » 8年前
特に該当するファミコンのゲームをプレイしたことある方
どうかご教授をお願いさせて下さい。長文すみません。
昔懐かしいタイプのあどべんちゃーゲーム(以下AVG)を制作しようとしています。
私にはAVGを作った経験がありませんが
勉強も兼ねてDXライブラリを使って1から作りたいと思っています。
完成系のイメージ(参考にしているのは)ですが、
ファミコンでいうところの「オホーツクに消ゆ」「FC探偵クラブ」や「神宮寺三郎」みたいなゲームです。
(簡単な選択肢でルートが変わるだけの
「弟切草」や「かまいたちの夜」などのノベルゲームではありませんので注意してください)
で、AVG制作にトライするのは初めてということで、
今は実際に既存のAVGをいくつかプレイしながらプログラミングの設計を熟考しているのですが
現在自分が構築しようとしている設計が、大外れだと怖いので
知識や経験が豊富な先輩方からアドバイスや参考となるご意見を頂きたく
こちらに投稿させて頂いています。
ストーリーの進行具合を記録するフラグorカウンターがいくつか必須だと思うんですが
それがどれくらい必要なのかで、今パニクっています。
というのも、大筋の進行状況カウンターは当然として、各登場人物に対する尋問(聞込み)シーンにおいては、
各項目ごとのセリフをあてがうカウンターが必要なのではないか?という結論に至りました。
例えば、
主人公が「太郎」という人物に対して聞込みをするシーンだとします。
「聞く」の項目を選択後、さらに「名前」と「アリバイ」があるとします(実際はもっとありますよね)。
各項目を選択すると、それぞれ配列に格納していたセリフが表示されるとします。
この時に、二度同じ項目を選択した時に、セリフが変わる状況はよくあると思います。
例)「聞く」→「名前」→「俺は太郎だ」、もう一度選択「聞く」→「名前」→「太郎だつってんじゃん」
この「二度目」というのを認識させるために、カウンターが必要ですよね?
(三回、四回変化する場合も考慮して、ここはフラグじゃ無く、カウンターが妥当ですよね)
しかし、「アリバイ」という項目も実は二度目に変化する項目だった場合はどうでしょう?
例)「アリバイ」→「その時間は二郎といた」、もう一度選択「アリバイ」→「二郎に聞いてみなよ」
と。ここでも「アリバイ」の項目のカウンターが必要ですよね?
そして問題は、プレイヤーは必ず連続で聞くとは限りません。
「聞く」→「名前」のあとに、「聞く」→「アリバイ」を選択する可能性もあるわけで、
そのあとでまた「聞く」→「名前」を選ぶかもしれない。
別の項目をまたいだあとでも二度目だということを認識させるためには
ひとつのカウンターを使い回すわけにはいかないはずです。
なので、完全に独立したカウンターが必要ですよね?
もっと言えば、その話の途中で(つまり1度目の選択のあとに)プレイヤーが別の場所に
移動する可能性も考慮しなければなりません。
で、舞い戻ってきてから、太郎に対して二度目の「聞く」→「名前」を選択する、という可能性。
なので、つまりは各人物の各項目用のカウンターの変数はいちいちリセットできないわけです。
その変数は他の項目や人物とは使いまわせないわけです。
例)シングルトンで作ったクラスに、全登場人物の全項目に対するカウンターを作るのか、とか今は想像してます。
正直、こんな項目ごとにカウンター(何度目の選択か)を作っていたら
ものすごいカウンターの変数を作ることになりますよね?
この考え方だと今までの規模では無いな、と非常に恐ろしく感じているのですが、
でも、これがAVGを作る上では、定石というか、普通な考え方なのでしょうか?
今まではアクションやシューティングゲームを作った経験しかないので
非常に不安です。
「そうです、そんなもんです」という回答があれば
そういうものなのか、と根気よくがんばりますが、、、、
「お前のやり方、恐ろしいほど手間だぞ。そーいうのはこういう考え方で構築しろ」みたいな
メカラウロコみたいなテクニック、ありますか?どうぞよろしくお願いします。
(ちなみにツール(吉里吉里等)を使うのは考えておりません)
特に該当するファミコンのゲームをプレイしたことある方
どうかご教授をお願いさせて下さい。長文すみません。
昔懐かしいタイプのあどべんちゃーゲーム(以下AVG)を制作しようとしています。
私にはAVGを作った経験がありませんが
勉強も兼ねてDXライブラリを使って1から作りたいと思っています。
完成系のイメージ(参考にしているのは)ですが、
ファミコンでいうところの「オホーツクに消ゆ」「FC探偵クラブ」や「神宮寺三郎」みたいなゲームです。
(簡単な選択肢でルートが変わるだけの
「弟切草」や「かまいたちの夜」などのノベルゲームではありませんので注意してください)
で、AVG制作にトライするのは初めてということで、
今は実際に既存のAVGをいくつかプレイしながらプログラミングの設計を熟考しているのですが
現在自分が構築しようとしている設計が、大外れだと怖いので
知識や経験が豊富な先輩方からアドバイスや参考となるご意見を頂きたく
こちらに投稿させて頂いています。
ストーリーの進行具合を記録するフラグorカウンターがいくつか必須だと思うんですが
それがどれくらい必要なのかで、今パニクっています。
というのも、大筋の進行状況カウンターは当然として、各登場人物に対する尋問(聞込み)シーンにおいては、
各項目ごとのセリフをあてがうカウンターが必要なのではないか?という結論に至りました。
例えば、
主人公が「太郎」という人物に対して聞込みをするシーンだとします。
「聞く」の項目を選択後、さらに「名前」と「アリバイ」があるとします(実際はもっとありますよね)。
各項目を選択すると、それぞれ配列に格納していたセリフが表示されるとします。
この時に、二度同じ項目を選択した時に、セリフが変わる状況はよくあると思います。
例)「聞く」→「名前」→「俺は太郎だ」、もう一度選択「聞く」→「名前」→「太郎だつってんじゃん」
この「二度目」というのを認識させるために、カウンターが必要ですよね?
(三回、四回変化する場合も考慮して、ここはフラグじゃ無く、カウンターが妥当ですよね)
しかし、「アリバイ」という項目も実は二度目に変化する項目だった場合はどうでしょう?
例)「アリバイ」→「その時間は二郎といた」、もう一度選択「アリバイ」→「二郎に聞いてみなよ」
と。ここでも「アリバイ」の項目のカウンターが必要ですよね?
そして問題は、プレイヤーは必ず連続で聞くとは限りません。
「聞く」→「名前」のあとに、「聞く」→「アリバイ」を選択する可能性もあるわけで、
そのあとでまた「聞く」→「名前」を選ぶかもしれない。
別の項目をまたいだあとでも二度目だということを認識させるためには
ひとつのカウンターを使い回すわけにはいかないはずです。
なので、完全に独立したカウンターが必要ですよね?
もっと言えば、その話の途中で(つまり1度目の選択のあとに)プレイヤーが別の場所に
移動する可能性も考慮しなければなりません。
で、舞い戻ってきてから、太郎に対して二度目の「聞く」→「名前」を選択する、という可能性。
なので、つまりは各人物の各項目用のカウンターの変数はいちいちリセットできないわけです。
その変数は他の項目や人物とは使いまわせないわけです。
例)シングルトンで作ったクラスに、全登場人物の全項目に対するカウンターを作るのか、とか今は想像してます。
正直、こんな項目ごとにカウンター(何度目の選択か)を作っていたら
ものすごいカウンターの変数を作ることになりますよね?
この考え方だと今までの規模では無いな、と非常に恐ろしく感じているのですが、
でも、これがAVGを作る上では、定石というか、普通な考え方なのでしょうか?
今まではアクションやシューティングゲームを作った経験しかないので
非常に不安です。
「そうです、そんなもんです」という回答があれば
そういうものなのか、と根気よくがんばりますが、、、、
「お前のやり方、恐ろしいほど手間だぞ。そーいうのはこういう考え方で構築しろ」みたいな
メカラウロコみたいなテクニック、ありますか?どうぞよろしくお願いします。
(ちなみにツール(吉里吉里等)を使うのは考えておりません)