やじうまの杜
キャラ名に「ソ」をいれるとバグる! 古参開発者「うっ……頭の中で何かが……」
「ドカポンキングダム コネクト」で起きたShift_JIS文字コードの「ダメ文字」問題って?
2023年4月14日 15:58
「やじうまの杜」では、ニュース・レビューにこだわらない幅広い話題をお伝えします。
4月13日に発売されたばかりの「Nintendo Switch」向けのハチャメチャRPG風ボードゲーム「ドカポンキングダム コネクト」にちょっと変わった問題が発見されて話題になっています。 キャラクター名に「ソ」という文字が入っていると、セーブデータからゲームを再開できない のだそう。
【#ドカポン不具合情報】
— コンパイルハート (@CompileHeartWeb)April 13, 2023
「ソ(カタカナ:そ)」を含むプレイヤー名に変更したセーブデータで「つづきから」を選択すると進行不能になる。
同様にオンラインで利用されるニックネームに「ソ」が含まれると発生する。
現在調査中です。
当面の対処は以下をご参照ください。https://t.co/rWGJN6uwX1
この問題はキャラクター名にカタカナの「ソ」を使わなければ回避可能。たとえば、「ソーセージ」ならバグが直撃しますが、「そーセージ」なら大丈夫です。
【ドカポンキングダム コネクト不具合のお知らせ】
— ドカポン・シリーズ公式 (@dokapon_jp)April 13, 2023
現在、「ソ」が含まれる名前/アカウント名でゲームを開始すると不具合が発生しております。
例)
✕「ソーセージ」
〇「そーセージ」
詳細は引用ツイートをご確認ください。
ご迷惑をおかけして申し訳ありません。#ドカポンhttps://t.co/STb4A7TncF
「ドカポンキングダム コネクト」のキャラ名には「Nintendo Switch」で設定したユーザーニックネームが使われるそうなので、「Nintendo Switch」でニックネームを変更すれば問題を回避できます。
開発元であるコンパイルハートは後日、バージョンアップパッチを配信してこの問題を解決するとしていますが、なぜこんな不具合が起こったのでしょうか。
多くの古参開発者が指摘しているのは、Shift_JIS文字コードの「ダメ文字」問題です。
2バイト目が5C等になりうることによる問題
Shift_JISでは、カタカナの「ソ」、漢字の「噂」など一部の文字の2バイト目に、5Cを使用している。この符号はJIS X 0201では円記号、ASCIIなどではバックスラッシュに該当し、多くのプログラミング言語(C、Perl、Bourne Shellなど多数)ではエスケープ文字(注:画面上に文字を出力する際に、文字そのものを出力するのではなく、文字色の変更やカーソルの移動、文字の消去など、文字出力の制御を行う特殊な文字列のこと)と扱う。したがって、ソースコードや文字データの処理においてShift_JISを想定していないプログラミング環境では問題が起こる。この問題は、同じように2バイト目の範囲に5Cを含むBig5や、まれではあるがGBKなどの文字コードでも発生しうる
たとえば「ソフト」(835C 8374 8367)というテキストの場合、「5C」の部分がエスケープ文字と解釈されて「ャtト」(8383 74 8367)などと文字化けすることがあります。プログラムによってはクラッシュしたりするかもしれません。
ちなみに、ダメ文字として有名なのは以下の文字です。
ソ噂浬欺圭構蚕十申曾箪貼能表暴予禄兔喀媾彌拿杤歃濬畚秉綵臀藹觸軆鐔饅鷭
今回の問題が「ダメ文字」に関連しているのかは定かではありませんが、古くからの開発者がこれを指摘する一方で、「知らなかった」というユーザーもちらほら。もはや「メモ帳」の既定文字コードすらUTF-8になる時代ですし、「ダメ文字」も過去の話になりつつあるのかもしれません。