概要
本文書では,"一の矢"計画の基本計画を記述する。開発の目標,およびその成果物,ターゲットとする動作環境,リリースの方針と予定,過去のバージョンとの互換性を明確にし,開発の指針とすることを目的とする。
状態
現在 "一の矢"計画の状態は「準備」であり,本文書の内容について,何一つとして確定していることを保証しない。
要望・提案について
本文書に対するコメントや要望・提案などについては,PVNS 開発者メーリングリスト*members only および "Peko" プロジェクトサポート窓口,または,SourceForge.jp でホスティングされている "Peko" プロジェクトページ内・Feature Requests で受け付けていますので,ぜひ積極的な参加をお願いします。
目標
"一の矢"計画では,以下の要求を満たすビジュアルノベルゲーム実行環境の開発を行う。
- サードパーティ(ゲーム開発者含む)による機能拡張が行える。
- Java コードの記述なしで UI やプログラムの挙動をカスタマイズ出来る。
実装する拡張機能として,以下のものを実現する。
- カスタム XML Processing instructions
- XML processing instructions を使用して,シーン中の任意の位置に,任意の処理を埋め込むことが出来る機能を実装する。
- ユーザアクションに対するフッキング
- ユーザのアクション (クリックや選択肢の選択など) に対して任意の処理を差し込むことが出来る機能を実装する。
- シーン処理に対するフッキング
- シーン処理 (PSML-Scene 要素の処理,シーンの遷移など) に対して任意の処理を差し込むことが出来る機能を実装する。
拡張機能により差し込みが可能な処理は,Java のクラスとして記述される。
成果物
成果物の種類
以下の物を開発する。
- PVNS runtime
- PVNS 本体のプログラムコード。
- Documents
- PVNS でゲームを開発する人をターゲットとしたドキュメント類。以下の種類のドキュメントを含む。
- PVNS イントロダクション
- 初めて PVNS に触れるユーザを対象として,PVNS の概要や機能についての大まかな説明を行う。
- QuickStart ガイド
- PVNS でゲームを開発するユーザを対象として,チュートリアルゲームのインストール,起動,操作方法について説明する。
- チュートリアル
- PVNS でゲームを開発するユーザを対象として,ゲームの開発の流れや,各データの作成方法,PVNS の設定方法,Tips 等を説明する。
- PSML-Scene リファレンス
- PSML Scene の簡易リファレンス。
- PVNS カスタマイズリファレンス
- PVNS のカスタマイズ項目のリファレンス。
- サンプルゲーム
- PVNS でゲームを開発する人をターゲットとしたサンプル。PVNS の機能を紹介するチュートリアルも兼ねる。
パッケージ
以下のパッケージを生成し,リリースする。
- PVNS 開発キット
- PVNS 1.0 のソースコード,runtime,ドキュメント,テンプレートゲームを含むパッケージ。SourceForge.jp のリリースページで公開する。
- PVNS runtime
- PVNS runtime のみのパッケージ。SourceForge.jp のリリースページで公開する。
- ドキュメント
- ドキュメントのみのパッケージ。SourceForge.jp のリリースページで公開する。
- チュートリアルゲーム
- PVNS の機能を紹介するサンプルゲーム。SourceForge.jp のリリースページで公開する。
動作環境
"一の矢"計画で開発するプログラムは 100% "Pure" Java プログラムとして開発を行い,依存するサードパーティ製のライブラリ以外の部分で直接環境依存のコードは記述しない。PVNS 1.0 は J2SE Platform API 1.4 により記述/コンパイルされ,Java2 Runtime Environment 1.4 および 5.0 上で実行される。
また,国際化に対応する。全ての GUI コンポーネントに表示される全ての文字列は,外部リソースとしてプログラムソースコードの外に出される。デフォルトのリソースとして日本語リソースが提供される。
ただし,BIDI のサポートは行わない。テキストおよびコンポーネントは全て左から右方向の並びとする。
"一の矢"計画では表4-1に示すプラットフォーム,および,表4-2に示す言語環境を「動作検証環境」とし,動作検証およびテストを行う。
OS Family | Version | Architecture | Java2 Platform |
---|---|---|---|
Windows | Windows XP SP1 | IA32 | J2SE 1.4.2_05 |
Windows 2000 SP3 | |||
Linux | RedHat 8.0 | IA32 | J2SE 1.4.2_05 |
RedHat 9.0 |
言語 | 国 | ロケール ID |
---|---|---|
日本語 | 日本 | ja_JP |
英語 | アメリカ | en_US |
表4-1および表4-2に記載されていない環境での動作は "Peko" プロジェクトとしては保証しない。ただし,ユーザからの動作報告があった環境を「動作報告済み環境」としてプロジェクト Web ページにて公開する。
リリースプラン
- 2005/9 上旬
- 外部仕様 fix
- 2005/11 中旬
- プレビュー版リリース
- 2005/12 中旬
- ベータテスト開始
- 2005末 ~ 2006/Q1
- リリース
過去のバージョンとの互換性
PVNS 0.5 との互換性について,以下の通りとする。
- ゲームパッケージ構成(PVNS ゲームの論理的なディレクトリ構成)
互換性を保証しない。移行については,ガイドまたはツールの提供を検討する。
- ゲームデータ
PVNS 0.5 の上位互換であることを保証する。
- シーンデータ (PSML 1.0 Scene 改訂版 DTD)
- 画像データ(GIF,JPEG,PNG)
- 音声データ(WAV,AU,AIFF,MP3)
- その他(フォント)
ただし,シーンデータについて,PVNS 0.5.4 以前の PSML 1.0 Scene DTD を参照しているデータはサポート対象外とする。
- リソース
互換性について保証しない。移行については,ガイドまたはツールの提供を検討する。
- 動作環境
動作環境については,対応する Java2 Runtime Environment に依存するため,基本的に互換性について保証しない。