巻物読んで読んで読み倒す巻物巻物巻物表紙に戻る

そこを穿つ!

◆ いきなり結論

  • CAB(LZX21) の自動解凍 (*.exe) で決まり
  • Easy圧縮(CAB)」の使用を推奨
  • ガチガチに手堅く行くなら ZIP(*.zip) や LHA(*.lzh) が良い

 完成したシナリオを配布するには、ファイルの圧縮をしなければならない。一口にファイル圧縮といっても、世の中には様々な形式がある。たとえば、世界標準の ZIP(*.zip)、日本標準の LHA(*.lzh)。Microsoft 標準は、CAB(*.cab)、UNIX界なら tarボール(*.tar.gz / *.tgz)、Mac界ならStuffit(*.sit) 等々、メジャーなものだけでもこんなに……。
 では、何を使えば良いのだろう? それを考察するのがこのページの内容。あまり突っ込んだ話をする気はないし、そのための知識もない。結論は上の箇条書きで書いた通りで、理由は下記。

  • なぜ CAB の自動解凍なのか?
    • 圧縮効率が良い
    • 解凍ソフトが無くても大丈夫
    • 手動でも解凍できる
  • なぜ 「Easy圧縮(CAB)」なのか?
    • 操作が簡単
    • 自動解凍プログラムの出来が良い
  • なぜ ZIP や LHA が手堅いのか?
    • CardWirth プレイヤーにとって最も標準的な形式
    • MIME 絡みのダウンロード・ミスが少ない

 これだけ分かれば、ページの内容全部を読む必要はない。当サイトには、圧縮ファイル作成時のミスや画像の減量について記した「間違いは誰にでもある! ファイルの罠」や、サウンドの圧縮とそのリスクについて記した「そこを穿つ! サウンド篇」等の関連ページがあるので、まだお読みでなければゴー。以降は、興味がある人だけカモン。

◆ 主な圧縮形式の比較

  • CAB を推奨
  • ZIP・LHA は手堅い選択
  • 7z は、圧縮率で頭1つ抜きん出ている

▼ 比較

 具体的な考察に入る。既に述べた通り、圧縮形式はとにかくいろいろあるので、筆者が知っているくらい有名で、なおかつ、CardWirth のシナリオに使われそうな、あるいは既に使われている形式に限定する。

[表:主な圧縮形式の比較]
形式 拡張子 圧縮 普及 MIME 備考
CAB cab, exe 高圧縮 Windows標準
ZIP zip, exe A+ A+ 世界標準 WinME/XP標準対応
LHA lzh, exe 日本標準
7z 7z, exe A+ 高速 高圧縮
RAR rar, exe C+ C+ 高圧縮 海外で普及
ACE ace, exe 高圧縮 海外で普及
GCA gca, exe A- C+ 高圧縮 速度良好 日本製
BZIP2 bz2, tbz(tar.bz2) B+ A+ 高圧縮 UNIX界で普及
GZIP gz, tgz(tar.gz) A+ UNIX標準
  • 形式:圧縮形式の名前
  • 拡張子:主な拡張子
  • 圧縮:CardWirth シナリオの平均圧縮率(圧縮率最大設定時)
  • 普及:普及状況(主観的)
  • MIME:MIME-Type 設定されている確率(主観的)
  • 備考:ボソッとコメント

 大雑把な調査&まとめ方だが、本サイトの意見は上表のような感じ。
 圧縮率については少々注意が必要。シナリオによってバラつきがあるからだ。ビジュアル・ノベル・タイプのシナリオでは、AとかBとかのランクによる差がかなり縮まる。逆に、シナリオフォルダ内の *.wid ファイルの占める割合が高いタイプだと、ランク差はぐんと広がる。また、ランクが同じでも、ファイルタイプ毎の圧縮効率に得手・不得手があるので、同じシナリオを圧縮しても、かなり差が出ることがある。実際のところは試してみなければ分からない、そういうこと。

 それから、MIME の項目が何を示しているのかよく分からない人がいるかもしれない。詳しいことは省略するが、ファイルへのリンクをクリックした際に、ブラウザのダウンロード・ダイアログが表示される確率と考えてほしい。この MIME-Type 設定がうまくいっていないと、謎の文字列がダラダラと表示されることになる。ランクA以上ならば、まず大丈夫だろう。

 実は、Internet Explorer を使っている限り、この辺の事情は関係ない。Netscape、Mozilla、Opera、w3m、Konquerer……等々の正しい実装を心掛けたWWWブラウザで問題になる。ちなみに、自己解凍型(各方式共通 *.exe)は、ランクA相当なので、MIME-Type 設定に問題のある圧縮形式を使う際は、自己解凍型という選択肢を常に意識しておこう。メジャーになりきれていない形式故に発生する「解凍できませーん」という質問メールを減らす効果もある。また、右クリックからの保存なら、文字列ダラダラは起きないことも覚えておくべし。".htaccess" ファイルで何とかなる場合もあるので、探求心の強い人は自分で調べて試してみよう。より確実なのは "mime.types" の編集だが、あまり現実的ではないか。

最近のWWWブラウザなら、右クリックからの保存か、それに準じる操作をしてもらえばこの問題は解決できるが、Netscape Navigator(Communicator) の 3.xx や、4.xx 等だと、文字列ダラダラはなくなっても、ダウンロードしたファイルが壊れてしまう。ダウンロード補助ソフトを利用してもらうか、最初から危険なファイル形式はやめておくか、それとも超少数派として切り捨てるか……。

 以上を踏まえた上で考えると、CAB(自己解凍)ZIPLHACAB(生)7z(自己解凍)――辺りまでが現実的な選択か。RAR(生)もありといえばありな気もするが、難しいところ。

▼ 形式毎の情報

 最後に、本ページで取り上げた圧縮形式に関するメモを記しておく。

  • CAB 形式
    • Microsoft 社の圧縮形式
      • Windows は、CAB 書庫を開くソフト(extract.exe)を標準搭載している
      • 新しめの Windows なら、Explorer で直接開くことができる
      • ただし、Windows 標準ソフトでは、フォルダ構造の再現がうまくいかない
    • 内部に複数の形式
      • 同じ CAB ファイルでも、細かな違いがある
      • 最高圧縮率を実現するのは、LZX 形式 Level21。設定を確認せよ
      • 古めの Windows で、古いInternet Explorer という環境では、LZX 形式 に対応できない
    • 圧縮・解凍するためのソフト
      • Windows 標準の機能ではなく、専用ソフトを使うべき
      • *.DLL と対応ソフト
        • *.DLL とそれを利用するソフトを組み合わせて使用。CAB なら、CAB32.DLL
        • 自分の好みのソフトが選べるのが利点
      • 解凍レンジ・Easy圧縮(デラックス版)
        • どちらも簡単操作・簡単設定。入手後すぐに使える
        • 解凍レンジは、各種 DLL 要らずで、LHA, ZIP, CAB, ARJ, TAR, gzip, bzip2, Z(compress) の解凍ができる
        • Easy圧縮(デラックス版)は、各種 DLL 要らずで、LHA, ZIP, CAB を圧縮できる
        • Easy圧縮(CAB)の自己解凍ソフトは秀逸
        • Easy圧縮(CAB)製自己解凍CAB は、解凍レンジで手動解凍できる
      • eo
        • 各種 DLL 要らずで、LHA, ZIP, CAB, RAR, ARJ, gzip, bzip2, Z(compress), tar, Microsoft COMPRESS の解凍ができる
        • 様々な文字エンコードの復元も可能
        • 簡単操作だが、望めばかなり複雑なこともできる
        • Easy圧縮(CAB)製自己解凍CAB を手動解凍できる
      • Deaces
        • 各種 DLL を利用して、LHA, ZIP, CAB, RAR, ARJ, gzip, bzip2, Z(compress), tar, ISH, YZ1, ACE, GCA, BGA の圧縮・解凍ができる
        • プラグインでその他の機能を追加できる
      • Noah
        • 各種 DLL を利用して、LHA, ZIP, CAB, RAR, ARJ, tar, YZ1, ACE, GCA, BGA ,7z の圧縮・解凍ができる(一部、解凍のみ対応を含む)
        • 必要 DLL をかき集める機能があるので、インストールが容易
        • b2e ファイルによる拡張で、ありとあらゆる形式に対応可能
  • ZIP 形式
    • 世界で広く使われている圧縮形式
      • 事実上の世界標準
      • Windows だけでなく、様々なプラットフォームで使われている
    • Windows ME / XP が標準対応
      • Windows ME / XP の Explorer は、ZIP ファイルを直接開ける
      • 圧縮・解凍も楽々
      • CAB と違い、内部のフォルダ構造もきちんと考慮される
    • 圧縮・解凍するためのソフト
      • 対応ソフトは極めて多いので、わざわざ探すまでもなく、なぜか既に持っていたりする
      • CAB 対応ソフトの項目を参照
  • LHA 形式
    • 日本標準の圧縮形式
      • CardWirth シナリオの事実上の標準でもある
      • ZIP 同様、様々なプラットフォームで使われている
    • 圧縮・解凍するためのソフト
      • 対応ソフトは極めて多いので、わざわざ探すまでもなく、なぜか既に持っていたりする
      • CAB 対応ソフトの項目を参照
  • 7z 形式
    • 強力無比な圧縮形式
      • 今回紹介した圧縮形式中最高の圧縮率
      • 高圧縮の割に、高速な処理
    • 圧縮・解凍するためのソフト
      • 7-ZIP
        • 圧縮・解凍ソフト
        • 7z 以外の様々な形式の圧縮・解凍も可能
        • 普通より高圧縮の ZIP 書庫も作れる
        • 英語ソフトだが、設定で日本語モードに変更可能
      • 7-zip32.dll
        • 様々なソフトで 7z 形式を利用可能にする DLL
        • Noah のような 7-zip32.dll に対応するソフトが別途必要
  • RAR・ACE 形式
    • ダメージに強い圧縮形式
      • ファイルダメージを修復可能にするオプションがあるので安心
    • マルチメディア・データに強い
      • *.WAV や *.bmp 等向けのアルゴリズムを持つ。
      • この点は ACE の方が少しだけ強力な印象
    • 圧縮・解凍するためのソフト
      • WinRar
        • Shareware
        • RAR 形式の圧縮・解凍両方OK
        • RAR 以外の様々な形式にも対応している
      • WinAce
        • Shareware
        • ACE 形式の圧縮・解凍ソフト
        • ACE 以外の様々な形式にも対応している
        • 他のソフトで、ACE を解凍するのに必要な UnAceV2.Dll も上記で入手可能
      • 解凍だけでよいなら、CAB 対応ソフトの項目も参照
  • GCA 形式
    • 和製強力圧縮形式
      • 日本製なのでいろいろ安心
      • フリーソフトなのが嬉しい
    • 圧縮・解凍するためのソフト
      • GCA
        • 圧縮・解凍両対応
      • UnGCA32.DLL
        • 現在のところ解凍専用。他のソフトと組み合わせて使う
  • BZIP2・GZIP 形式
    • UNIX界 標準
      • UNIX 系の OS では最も標準的な圧縮形式
      • GZIP の方がより標準的
      • BZIP2 の方が高圧縮率
    • 単ファイル圧縮
      • 複数ファイルの圧縮はできない
      • 通常、TAR で複数ファイルをまとめてから、GZIP や BZIP2 で圧縮する
    • 圧縮・解凍するためのソフト
戻る


Copyright (C) Shu Koyama 1999-2002
No reproduction or republication without permission.

koyamas@dream.com

禁無断転載

表紙に戻る