自分でも色々と試したりしたりしたのですが、
どうしても解決方法が分からなかったので
いい解決方法のアイデアがあれば教えてください。
HSPでゲームを作って実行ファイル状態にしました。
「ゲーム名.exe」みたいな状態です。
この実行ファイルをバイナリエディタで開くと
ダンプリストが表示されその横にダンプリストの内容が
Shift-JIS状態で見れます。
バイナリエディタのソフトはいろいろありますが、
どのバイナリエディタもほとんどこんな感じの動作だと思います。
それでバイナリエディタで実行ファイルの中身を眺めていると、
dialog命令で表示されるテキスト内容がShift-JIS状態で表示されているため、
dialog命令で表示されるテキスト内容が丸わかりなので困ってしまいました。
困ってしまいましたと言いますのは、
あるレベルでゲームをクリアすると「隠しステージXに進みますか?」
みたいな感じでdialog命令のタイプ2でYESかNOを選択させて
隠しステージにチャレンジできる処理をしています。
ソースを書くとこんな感じです。
dialog "隠しステージXに進みますか?", 2 if stat=6 { // YESの場合は隠しステージXに進む } else{ // NOの場合は隠しステージXに進まない }
自分としてはゲーム中にあるレベルに到達するまで
この隠しステージXの存在を隠したいのです。
ちなみに隠しステージXはたくさんあるため、
バイナリエディタで実行ファイルの中身を眺めていると、
dialog命令で表示されるテキスト内容が丸わかりなので
思いっきり隠しステージXの存在がバレバレなんです。
自分で考えた解決方法としては、
dialog命令で表示させずに画像でメッセージを表示させるようにし、
その画像メッセージ自体を暗号化しておき、
実際の選択処理のところでメモリ上でその暗号化された画像を復号化し、
表示させる方法を使えば、バイナリエディタなどでみても
このゲームに隠しステージXが存在しているのことは
テキスト内容が書いてないので隠せるのですが、
なにぶん、隠しステージの数も多いため、
dialog命令で処理を行いたいのです。
またdialog命令の方を使った方が処理が楽なので
dialog命令で行いたいのも理由の一つです。
バイナリエディタで実行ファイルの中身を眺められても
なんとかdialog命令で表示されるテキスト内容を隠せないかと考え、
例えば50音を1文字ずつ変数に入れておき、
dialog命令のところで表示させたいテキスト文字の変数を
連結させてメッセージを表示させれば、バイナリエディタで見たときは
変数名だけが表示され、表示されるテキスト内容は隠せるのでは?
と思い試してみましたが、まったく効果がありませんでした。
こんな感じの方法を考え試したみました。
ソースが長くなるので5文字にしてます。
sdim moji,5 moji(0)="あ" moji(1)="い" moji(2)="う" moji(3)="え" moji(4)="お" dialog moji(0) + moji(1) + moji(2) + moji(3) + moji(4)
バイナリエディタで実行ファイルの中身を眺める人なんて
そんなにいる訳でもないのですが、ざっとバイナリエディタで
実行ファイルの中身を眺めたときに隠しステージXの存在を
分からないようにしたいです。
バイナリエディタで実行ファイルの中身を眺められても
dialog命令で表示されるテキスト内容が分からないようにする
HSPでの記述方法がもしあれば教えてもらえないでしょうか。
宜しくお願いします。