忍者ブログ

霧の残像領域

長文を流したいけど皆さんのTLを汚したくないときに使う場所です

[PR]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

定期ゲーってどうやって作るの? 2話目
今宵もSYSフォルダのAOAI.plを紐解いてみましょう

≪前回までのあらすじ≫
システムに魔法をかけて、画面表示を設定して、データを読み込みました
やったね

≪今回のめにゅう≫
144~146行目……継続データ読み込みゾーン
148~149行目……参加者の数を数える点呼ゾーン
151~203行目……初回更新ゾーン




読み込むのはゲームのデータだけかな? いいえ、ちがいます
定期ゲーの華、継続データの読み込みがあります!

144~146行目……継続データ読み込みゾーン
ゲームのデータはすべてtsvで管理しています
tsvとはタブで区切って管理されている表だと思ってください
tsvはエクセルで開けます

log_keizoku.cgi
…基本継続データ
log_messe.cgi
…メッセージデータ
log_setting.cgi
…その他の設定データ
log_setting_man.cgi
…対人セリフデータ
log_sinki.cgi
…新規登録データ

これらのファイルを読み込みます
つまり、ゲームのデータという鍋に投入する材料です。これらの継続データはすべて初期設定したour変数に投げ込まれ、プレイヤーの様々な行動を決定し、プレイヤーの想定した動きをさせます
同時にパスのチェックも行います
それが144~146行目です

ファイルの読み書きというのはプログラム的には凄い時間のかかる行為で、何度も使用するべきではありません。なので一括で全部読み込んで変数の形にしていつでもホイホイ取り出せるようにします

148~149行目……参加者の数を数える点呼ゾーン
この行ではただ単純にプレイヤーの総数を数えます。ただそれだけの行為を真っ先に持ってくるのは、プレイヤーの最大数というのはものすごく多用する変数だからです
ループというプログラムがあります。同じシステムを何回も繰り返すプログラムです。例えばプレイヤー全員の日記を書きこむ際、日記プログラムを全員分回す、といった感じに使います。でもプレイヤーの総数が分からなかったら? 1000回回すとか適当な数字入れると地獄を見ます。プレイヤーが1000人超えたら破綻するし、プレイヤーが20人だったら残りの980ループが無駄になります。上手に全員分回すためにはプレイヤーの総数が分かっている方が便利なのです!

ちなみに霧戦争のシステムはプレイヤーが1万人を越えたら破綻するという地獄のシステムなんだ
Q:配列の数を数えればいいのでは
A:ごもっとも

151~203行目……初回更新ゾーン
初回更新には戦闘や戦闘前行動が無いので、いくらか機能を省いて簡易版で更新します。判定に使用するのはプレイヤーの総数です。誰もいない=初回更新となります
ここの説明はいつかやります

文字がたくさん並ぶと人間の思考能力は著しく低下するため、今日の所はこれくらいで自重しておきます

≪今日のまとめ≫
最初に必要なことを全部やっておきましょう!


拍手[0回]

PR

コメント

コメントを書く