戦闘シーンと呪文と文字コードもう 3/5 かい……orz とりあえず戦闘のテキスト入力に関しては、一応の解決を見た。 まぁそれはさておき、神聖魔法の呪文に関しては統一的な宗教が広がっている(キリスト教がモデル)ということでラテン語なのだが、主人公はドイツ系なので呪文にはドイツ語を使いたかったのだ。で、ドイツ語の呪文を使ってみたはいいのだが、ドイツ語のアルファベットって英語のそれと違うじゃない?(ウムラウトとか) それらが入ったら、Shift-JIS で保存できなくなってしまった で、まぁ、今回の作品はファンタジーなんだけど、登場する王国はそれぞれイギリス系、スペイン系、イタリア系、ドイツ系という個性をつけてある。これは便宜上解りやすくするためにそういう個性をつけているだけで、別にそれぞれの国家が登場するわけではない。でまぁ、言語のほうもそれっぽく振ってあって、名前なんかはイギリス系の国家だと英語、スペイン系だとスペイン語、イタリア系だとラテン語といった具合である。ただ国名だけは、企画発足当初アーサー伝説のみを使う予定だったため、英語のままなのだが(汗)。 まぁそれはさておき、神聖魔法の呪文に関しては統一的な宗教が広がっている(キリスト教がモデル)という設定なのでラテン語のみなのだが、主人公はドイツ系なので呪文にはドイツ語を使いたくなった。で、ドイツ語の呪文を使ってみたはいいのだが、ドイツ語のアルファベットって英語のそれと違うじゃない?(ウムラウトとか) それらが入ったら、Shift-JIS で保存できなくなってしまった ヨーロッパのアルファベットは実は 1 バイトで表現可能なように 0x80 以降に割り振られているのだが、この領域というのは Shift-JIS で日本語を扱う場合に使われるようで(いや、勝手なボクの想像だけど)、結局 UTF-8 で保存することになった。 実は前々からそろそろシナリオの提出ファイルを Unicode にしたいと思っていて、これはイイ機会だと思いはしたものの、クライアントが OK を出してくれるか解らないってのと、以外に困ったのが容量。 実は前々からそろそろシナリオの提出ファイルを Unicode にしたいと思っていて、これはイイ機会だと思いはしたものの、クライアントが OK を出してくれるか解らないってのと、意外に困ったのが容量であった。 1KB = 1000 円という相場がボクの中にあるのだが、これは Shift-JIS での値段だ。もっと厳密に言えば、日本語 1 文字が 2 バイトで、英数は 1 バイト、改行は 2 バイトという文字コードを想定している値段なのだ。1KB が全部日本語ならば 512 文字ということになる。UTF-8 では日本語は 3 バイトになるため、ファイル容量も 1.5 倍にふくれあがるのだが、それがそうでもないみたいで、実際に 330KB の Shift-JIS なシナリオ・ファイルを UTF-8 にしたら 484KB になり、10KB ほど誤差が生まれてしまった。まぁ、いいか?<ヲイ あと感覚的に○○ KB 入力したら、どれくらいシナリオが進んだな、的ななんというんだろう、容量の慣れみたいなのがあるんだけど、それが当然ボクの頭の中は Shift-JIS で慣れちゃってるものだから、ぱっと容量見て、「あれ、ずいぶんと入力しているなぁ」と、頭の感覚と実際の容量とがなかなか結びつかないのだ(笑)。 というわけで今後は現在のシナリオ容量の 66.6% が Shift-JIS 時代の容量と言うことで考えていこうと思う(ぉ 下の曲はファンタジー系のゲームのエンディングとかで使いたいなーと思っている Queensrÿche って言うバンドの曲。 #article |