このプログラムは……

キャラメルBOX様のWin用ゲーム『処女はお姉さまに恋してる』(以降、おとボク)をSEVEN.NETで動かすためのプログラム、およびコンバータです。

言うまでもなく、おとボク(Win版)が必要です。CD版、DVD版共対応しています。

あと、『キャラメルBOX やるきばこ』の『おとボク 追加シナリオ』と『月踊亭にて』も変換出来るようにしてみました。

ダウンロード

変換方法

SEVEN.NET上で動くプログラム(otoboku.exe)はオリジナルのデータ形式そのままでは動作しませんので、変換プログラム(ObkConv.exe)を用いてデータ形式を変換する必要があります。

まず、ObkConv.exeを起動して下さい。

変換元フォルダ

変換元データの格納されている場所を指定します。変換元にはゲームがフルインストールされている必要があります。

『おとボク』の場合は、"otoboku.exe"、"system.bin"、"data.bin"、"sound2.bin"が格納されているかと思います。DVDフルボイスパッケージ版の場合には、これに加えて"all.mpg"も存在しているかと思います。

『キャラメルBOX やるきばこ』の追加シナリオの場合は、"otoboku.exe"、"otbk.bin"、"ReVertsu.dat"が格納されているフォルダです。

『月踊亭にて』の場合は"moon.exe"、"moond.bin"が格納されているかと思います。

変換先フォルダ

変換後のデータを格納するフォルダを指定します。

変換先は『おとボク』の場合は音声データ変換なしの場合は約1GB、『追加シナリオ』の場合は350MB、『月踊亭にて』の場合は250MB程度の空き領域が必要になります。音声データの変換を行なった場合もあまり縮みませんので、若干割引いた程度の領域は必要です。

変換画像サイズ

変換画像サイズで変換後の画像サイズを指定します。 QVGAデバイスの場合はQVGAを、VGAデバイスの場合はVGAを、linuxやWin32上で動かす場合はSVGAを選択して下さい(*1)。

変換対象ゲーム

変換したいゲームを選択して下さい。

現在対応しているのは

  • 『処女はお姉さまに恋してる』
  • 『キャラメルBOX やるきばこ』内の『処女はお姉さまに恋してる 追加シナリオ』
  • 『キャラメルBOX やるきばこ』内の『月踊亭にて』

です。

音声変換

音声変換するのチェックボックスにチェックを入れることで音声の再生レートやビットレートの変換を行なうことは出来ますが、以下の点に注意して下さい。

音質がかなり低下します。

正直、耳に自信の無い私ですら解る程度に……多分、音声のレート変換辺りにバグがあるのでは……と思っているのですが……orz

変換に極めて時間がかかるようになります。

『おとボク』の場合、22050Hz,VBR(-0.1)で音声変換を行なうとP4 3GHz/512MBのマシンで『約4時間』変換に掛ります……。DVDフルボイスパッケージの場合は何時間掛るのか怖くてやってません(汗;

あまり縮みません。

22050Hz,VBR(-0.1)で変換を行なっても『おとボク』で600MBになります。VBR(-0.1)が最低音質で、これでも512MBのフラッシュには格納出来ませんので、あんまり縮める意味がないかと思います。

これらの問題がありますので、正直、音声変換はあまりオススメできません……

実行方法

おとボクの場合

ObkConv.exeで『おとボク』を変換すると、otoboku*.obkファイル多数とotoboku.7ncというファイルが出来ます。

これらのファイルとotoboku.exeを同じディレクトリ(SEVEN.NETの*.7nc検索ディレクトリ以下である必要があります)に格納して、SEVEN.NETを起動して『処女はお姉さまに恋してる』を選択して下さい。

なお、all.mpgというファイルも生成されますが、動画再生を行なわない場合(デフォルト)では不要です(DVDフルボイスパッケージ版の場合はコンバータで生成されるのではなく、インストールフォルダに既に存在していたかと思います)。

やるきばこ 追加シナリオの場合

ObkConv.exeで『やるきばこ 追加シナリオ』を変換すると、yaruki*.obkファイルがいくつかとyaruki.7ncというファイルが出来ます。

これらのファイルとyaruki.exeを同じディレクトリ(SEVEN.NETの*.7nc検索ディレクトリ以下である必要があります)に格納して、 SEVEN.NETを起動して『やるきばこおとボクおまけシナリオ』を選択して下さい。上記以外にもall.mpgというファイルが出来ていますが、動画再生を行なわない場合(デフォルト)ではこのファイルは不要です。

月踊亭にての場合

ObkConv.exeで『月踊亭にて』を変換すると、moond*.obkファイルとmoond.7ncというファイルが出来ます。

これらのファイルとmoond.exeを同じディレクトリ(SEVEN.NETの*.7nc検索ディレクトリ以下である必要があります)に格納して、SEVEN.NETを起動して『やるきばこ 月踊亭にて』を選択して下さい。

なお、何れのゲームの場合もサウンドをoggで鳴らすために、ogg_yce.dllも必要です。 SEVEN.NETと同じディレクトリか、Windowsディレクトリ等のパスの通っている場所にコピーしておいて下さい。

操作方法

基本的にペンのタップでOKの筈です。ポップアップメニューはESCキーもしくは右クリック(およびそれらに割り当てたボタン。PocketPCであれば、デフォルトではGAPIでのBキーになります)で出せます。

動画の再生

デフォルトでは動画の再生は行なわないようになっています。

ファイルの転送

おとボクで動画再生を行なう場合は、生成されたall.mpgファイルをotoboku.7ncファイルと同じ場所にコピーします。

7ncファイルの修正

次に、otoboku.7ncファイルの[MOVIE]セクションにuse_movie=noという指定がありますので、これをuse_movie=yesに変更します。

[MOVIE]
use_movie=yes

動画再生プラグインの設定

SEVEN.NET実行エンジンで動画の再生を行なうには動画再生プラグインの設定を行なう必要があります。動画再生プラグインは機種により複数存在しますので、適切なプラグインモジュールをインストールしてそれの設定を行なって下さい。

これで、オープニング、第一話予告、エンディングの動画が再生されるようになります。

動画の分割、変換

おとボク中ではオープニング、第一話予告、エンディングのスタッフロールが動画となっていますが、これら3つの動画がall.mpgという一つの動画にまとめられています。

動画再生プラグイン、特にmovie_yce_tcpmp.dllでは、正確にシークが行なえませんので、all.mpgを3つの動画ファイルに分割することで、シークの問題を回避することが出来ます。

生成されたotoboku.7ncの[MOVIE]セクションには以下のような指定があります。

opening=all.mpg
;opening_start=0.0
opening_end=113.16
opening_file_total=286.03

yokoku=all.mpg
yokoku_start=113.16
yokoku_end=157.90
yokoku_file_total=286.03

ending=all.mpg
ending_start=157.90
;ending_end=286.03
ending_file_total=286.03

ここで、openingはオープニングの動画の動画ファイル名を、opening_startはその動画ファイル中でのオープニングの開始位置(単位:秒)を、opening_endはオープニングの終了位置(単位:秒)を、opening_file_totalは動画ファイルのトータル時間(単位:秒)を指定しています。同様にyokoku~は第一話予告の、ending_~はエンディングのそれぞれの指定となっています。~_startがコメントアウトされているのはファイルの先頭から始まる、~_endがコメントアウトされている場合はファイルの末尾まで再生することを表しています。

ここで、何らかのツールでall.mpgをこれらの時間で3つのファイルに分割して、各々のファイルをopening、yokoku、endingで指定することで、前述のシークの問題を回避することが出来ます。なお、3つのファイルに分割した時に~_file_totalの値を変更する必要があることを忘れないで下さい(*2)。

また、ここで指定するファイルはmpgファイルである必要はありません。動画再生プラグインがサポートしているファイルであれば任意のフォーマットのファイルが指定出来るかと思われます。

制限、バグ

現時点では、私もラストまで動かしていませんので、多数のバグがあるかと思います。判明している分だけでも、以下のバグ、或いは仕様が存在します。

制限事項

  • 禁則ルールがオリジナルと異なります(オリジナルは追い出し禁則のようですが、手抜きぶら下がり禁則で禁則処理を行なっています)。
  • おまけシナリオをのぞくおまけは未実装です。おまけシナリオは常にオープンしてます(デバッグの為……というのは言い訳で単に面倒なので……)
  • 桜アニメーションの画像が崩れています。
  • 振動のエフェクト動作がオリジナルと異なります(オリジナルでは縦のみ、横のみ、縦横の3種類(以上?)の振動エフェクトが存在しましたが、常に縦横の振動エフェクトになっています)。
  • 履歴表示は作りかけです。キーで操作出来ません。また、音声のリプレイも出来ません。
  • ちょー遅いです(PCならそれほどでもないけど)
  • 『やるきばこ 追加シナリオ』のオセロゲームはありません。オセロに勝つか負けるかは選択肢で選択するようにしています。

バグ

  • しばしばメモリ不足になります(α8以降でだいぶマシになった筈ですが、未だメモリリークが在ります。音が途切れ始めたらセーブして、SEVEN.NET自体を終了させて、再度ロードしてやりなおすと大抵大丈夫です……)。
  • スタート画面の選択時の画像等、いくつかの画像の位置がずれます。
  • メッセージ領域からメッセージが溢れた時に、クリックしても続きのメッセージが表示されない場合があります。
  • Movie再生を行なう場合、動画再生モジュールによっては正しく動画の頭出しが行なえません。気になる場合は動画を分割して回避して下さい。

更新履歴

  • v0.21α
    • NANAMI 0.28αへの対応
  • v0.20α
    • サイト崩壊時に詳細が失われたため、更新内容不明です(_ _)
  • v0.19β
    • v0.18βの修正によって、キラキラエフェクトで背景が黒くなってしまう(BTS:5)ようにエンバグしていたのを修正
  • v0.18β
    • 黒画面は常にα値を持たないものとして処理するように変更した。
    • コンバータのアーカイブクラスのLzeデコーダにバグがあり、LFNのデコードに失敗していた。これにより、DVD版の一部の音声(おそらくは追加された音声)のコンバートに失敗していました。DVD版を使用されている方は再コンバートが必要です(_ _)
    • レイヤ切り換え描画でαを持つ画像からαを持たない画像への切り換え時に落ちていたバグを修正。第五話の途中で落ちる(BTS:4)はおそらくこれが原因かと思います。
    • 同梱しているseven.host.dllがNANAMI 0.22βで変更が入りましたので、若干変換結果が異なっている可能性があるかと思いますが、見てもわからないかもしれません。
  • v0.17β
    • 同梱しているseven.host.dllがNANAMI 0.22βで変更が入りましたので、変換結果が異なっているかと思います。リサイズ、クリッピングのバグを取ったのですが、逆にこれによって不具合が発生するかもしれません。
    • 同梱しているogg/vorbisのdllを新しいバージョンのものに更新しました。
    • コンバータのコンボボックスが『処女はお姉さまに恋している』になっていたのを『処女はお姉さまに恋してる』に変更しました(_ _)
    • cmd:0dの処理での処理待ち方法を変更(動作に違いは無い筈です)
  • v0.16β
    • NANAMI 0.20βでFilterLayerのBlendLevelの扱いがuint→intに変更になった事に伴う変更。NANAMIのバージョンを0.20βにする場合は、おとボクも0.16βにする必要があります。
  • v0.15β
    • αチャンネルを持たない画像で不要なメモリのアロケーションが発生していたバグを修正
  • v0.14β
    • おとボクの7nc出力時にタイトルが誤っていた(_ _)のを修正しました
    • サウンド変換時に1チャンネルの音声はチャンネル分離/結合ストリームを経由せずに変換するようにしました
    • ルビ出力時の更新領域の登録サイズにバグがあったのを修正しました。
  • v0.13β
    • 初公開

注意事項

本プログラムは、オリジナルのゲームデータ、及び 変換したデータを参照しています。

本プログラムによって生成/変換されたデータの再配布は*.7ncファイルを除いて有償無償、公開非公開、親しい友人間の個人的なやりとり等、理由の一切に関わらず禁止します。

本プログラム自身の再配布は個人的なやりとりであれば自由に行なって下さってかまいません。ただし、企業による配布やWebでの公開、雑誌への掲載は禁止します。

本プログラム自体はキャラメルBOX様には全く関係がございません。質問等をキャラメルBOX様に問い合わせるような行為はお止め下さい。

謝辞

本プログラムのogg/vorbisのデコード、エンコードにはaoTuVを使用させて頂いています。ありがとうございます。

そして何よりも、本当に素晴しいゲームを作って頂いたキャラメルBOXさま、ありがとうございました。

脚注

  • [1]QVGA デバイスでVGAのデータやVGAデバイスでQVGAのデータでも動作はします。QVGAデバイスでVGAの場合は実行時縮小になるので場合によっては字が読み易いかもしれません。逆はほとんど嬉しくないです(QVGAもVGAもデータ量的にはあまり変らないので)。SVGAサイズは実のところ、あまりテストしてないです
  • [2]ただし、~_start、~_endの指定が無ければ、値は適当でも大丈夫かと思います。ただし、省略は出来ません。