プレイ日記
コウラン coulank
フラグ管理をどうしようかなーと迷った結果、PRG2を暗号的な感じにして文字列を解読しながら色々な動作をする仕組みを作ってみることにしてますー 例えば鍵マークはフラグスイッチ、ドアマークはフラグ分岐(鍵がないと開かない)といったイメージ まだ一番上のエリア双移動の仕組みしかできてないけど、少しずつ組み立てます
11そうだね
プレイ済み
返信[1]
親投稿
コウラン coulank
ここに書いてるのは全てつける気でいます、がんばる
0そうだね
プレイ済み
返信[2]
親投稿
コウラン coulank
蛇さんマークはジャンプ機能です 蛇の次の数字を読み取って行を記録することで、それぞれのグループに分けて途中で追加しやすくする仕組みにしてます 一緒にしたくないからなのです
0そうだね
プレイ済み
返信[3]
親投稿
コウラン coulank
今のところプログラム内から直接読み取れる8グループと、PRG2からでないと読み取れない2グループ、1グループに8192(2^13)行分を読み取ることが可能な仕様にしてます。最大81920つのイベントが収録できますね(そんなにいれないけど)
0そうだね
プレイ済み
返信[4]
親投稿
コウラン coulank
改行コード対策は何度も検討してます マップ暗号のイベント領域では10と13だけは欠番する感じ、ここの中ではグループ2-1と5-1が使えなくなるだけだからそんなに制限というわけではないけども
0そうだね
プレイ済み
返信[5]
親投稿
コウラン coulank
16進法にして6つ分読み取るアイテムを追加しちゃった これでアイテムとか追加してます 今のところフラグのオンオフ、フラグ分岐、BGM、BEEPまで実装完了してますー コマンド分岐は実装してないです
0そうだね
プレイ済み
返信[6]
親投稿
コウラン coulank
レジストジャンプも搭載完了〜 どこまでも飛ばせるけど、帰結するのは一度のみの仕様です 順番にやるのが正しい使い方 次は…メニュー画面を作るか、セーブデータの領域周りを確定させるかしたい…いずれもアイテム周りの仕様です
0そうだね
プレイ済み
返信[7]
親投稿
コウラン coulank
テキストボックスもまともなのにしたいけど、後回しにしてます~
0そうだね
プレイ済み
返信[8]
親投稿
コウラン coulank
PRG2がえらいことなってきたけど安心してください、ちゃんとコメントアウト以降は無視する仕様です(ぇ
0そうだね
プレイ済み
返信[9]
親投稿
コウラン coulank
アイテムはこんな感じに実装していきますー
0そうだね
プレイ済み
返信[10]
親投稿
コウラン coulank
アイテムのデータもPRG2から読み取ってます、DATA文の代用ですw マップデータはSCとDATAから読み取ってますが、そのうちPRG形式に変更する予定です!
0そうだね
プレイ済み
返信[11]
親投稿
コウラン coulank
PRG2でもう一つつけたいのは選択分岐の方なんだよねー 2択、4択、リスト形式いずれも欲しいし、とりあえず2択から実装していくことになるけども 2択を無限に続けるやつあるよね ああいうのをつけるための無限マークだけど、少し思いつかない もう一つジャンプ関数つけるか
0そうだね
プレイ済み
返信[12]
親投稿
コウラン coulank
選択分岐はテキストボックスを確定させてからのほうが良い気がするし、一応分岐の仕様は完成してるし
0そうだね
プレイ済み
返信[13]
親投稿
コウラン coulank
4択の場合はTHEN、ELSEマーク使えなくなるし、文字コード並んでる後ろ2つの顔っぽいのを活用するかな
0そうだね
プレイ済み
返信[14]
親投稿
コウラン coulank
レジストジャンプの応用としてローカライズができるな…と思いつきました、これは沼だ… ローカライズするとしたら基本テキストはレジストジャンプを使って、セーブデータの言語エリアから0-ひらがな、1-漢字、2-English(、3-その他)に相当するテキストを読み取る感じになるかな これを使うとしたら…足りない予感しかしないし、ゲーム中から直接呼び出す関数は4に減らすことにするかな、2bit分
0そうだね
プレイ済み
返信[15]
親投稿
コウラン coulank
アイテム読み取りもローカライズするとなると、形式そのものも変えないとあかん ローカライズ前提で再構築するかな…
0そうだね
プレイ済み
返信[16]
親投稿
コウラン coulank
(言語問題は漢字で書くかひらがなで書くか…と前から検討してたけど、英語版のリクエストが後出しでくるなら先に作ってしまいたいと思ったし、この仕組みを活かさない手はないからね)
0そうだね
プレイ済み
返信[17]
親投稿
コウラン coulank
仕様を大幅に変更してMMLの音楽もタイトルもローカライズ対応するために、PRG2から読み取る形式に、更に重要な立ち位置になってる 当然のことながら引っ越し作業に相当するので、エラーしか吐かない状態に(もちろん以前のバージョンはちゃんと保存済み) 🐍A〜Fにデータを格納、必要なときだけ取り出す仕組み、投稿版では高速化と投稿するゆえに順番を固定するので先頭に各々のブックマークをつける予定〜 ローカライズしたいデータは🐍A〜Dで4つの言語に対応(ストーリー中のテキスト表記については4〜7辺りの予定)、中に各々のデータを別々に分けてる形 とりあえず今日はここまでにしますー明日からは読み取りの仕様変更する
0そうだね
プレイ済み
返信[18]
親投稿
コウラン coulank
何でもかんでもPRG2に入れるには難しいアイテム情報については、データファイルに入れることに決めました ツールができるまではDATA文に格納
0そうだね
プレイ済み
返信[19]
親投稿
コウラン coulank
場所名とかもローカライズ対象や…ここも思いついたら即入れないと
0そうだね
プレイ済み
返信[20]
親投稿
コウラン coulank
(人物名、敵キャラもだ)
0そうだね
プレイ済み
返信[21]
親投稿
コウラン coulank
本当に今更な話だけど、PRGGETってかなり処理重いんだね 8000行とか言語を並べる前提なこのプログラムだと、合わないかもしれない…とりあえず検証あるのみ
0そうだね
プレイ済み
返信[22]
親投稿
コウラン coulank
ふむふむ、重くなる原因はPRGEDITのせいなのね、改行コードを初めからひとつひとつ取得してるやつ TXTから読み取れるか検証するか…重くなる予感しかしないけど
0そうだね
プレイ済み
返信[23]
親投稿
コウラン coulank
色々と重ねて検討した上で、PRGEDITとTXT、GRP、DAT全て駆使してフリーメモリ、読み込みともに負担の少ない構築を考えることにしましたー! 例えばいろんな文字コードを使うイベントレジストリはTXTからそのままロードして、文字列変数として扱う 各言語を扱い、とにかく文字の分量が多いテキストライブラリーについては改行コードをCHR$(0)に変えた上で必要なときだけPRGEDIT 1とMID$(PRGGET$(),START,VAL)で取り出すとフリーメモリが浮く 文字数の境界についてはGRPの色コードで記録、16bitしか使えないのでそこは工夫する 画像キャッシュで高速化を実現してみる… マップデータは最終的にDATから読み込んだ方が良いって結論になりましたw
0そうだね
プレイ済み