星をみるひと 攻略 - パスワード解析
はじめに | 基礎データ | 乱数解析 | 戦闘システム | MAPイベント | パスワード解析 | 解析ツール |
パスワード生成ツール
|
薬
個 | |
個 | |
個 | |
個 | |
個 | |
個 | |
個 | |
個 | |
個 | |
個 |
イベントSW
アイテム
みなみ
しば
みさ
あいね
パスワード ◎は© 終はFIN
生データ($03EB~)
パスワードの仕組み
|
SAVEデータ作成 → 可読文字化 → チェックサム計算 の順に処理される。
(1)SAVEデータ作成
可読文字は7bit値であるため、下記の順序で詰め込んでいる。
チェックサム
後で計算する。
薬
薬は最大で4個持てるため、3ビット×10種=30ビット必要。
1文字に使用できるビット数は7のため、4バイト+2ビットの領域を使用する。それならば最大各7個持てるようにしてもよかったのではなかろうか…
特に、高位のビットが変動する場合、パスワードの入力時に↑or↓を何回も押す必要が出てくる。不用意に薬を持つと入力に手間取ってしまう。あいむ・かりうは持たないようにしたい。
イベントSW
同じ理由で、メモは木下に渡すべきではない。最高位のbitが立ってしまう。
bit位置 | 対象イベント | A | 発電所:古びた発電機電源ON | B | でうす:治療 | C | 行政区:マックスのことを聞いてどうなる。あいつは死んでしまった! | D | 病院:ナターシャが知っている | E | 居住区:ナターシャ「あーさに会ってみて | F | 警備室:このメモを木下に渡してくれ | G | 病院:マックスに会ってきなさい | H | ラボ:右下シャチ「地球を発見した。 | I | コックピット:左側イルカ「お前たちの代表と話がしたい | J | ラボ:左上イルカ「お前たちには2つの道が残されている~代表権を授けよう |
---|
アイテム
所持している個数でパスワード長が変動する。もちろん何も所持していなければ短くなる。
アイテムIDを3ビットにする都合により、アイテムIDが2以上の場合のみ、アイテムIDを1引いて(3ビットにして)格納する、という変則的な処理を行っている。そのためアイテムIDが1のBOMBはSAVEされない。
アイテムは2個ペアで1文字となる。SAVE対象のアイテムを奇数個しか持っていない場合、ペアの欄には000が入る。が、CONTINUE時にはIDを+1されることで、BOMBに化ける。
不要なアイテム所持もパスワードが長くなる要因となる。
セパレータ/フィニッシャ
アイテムが可変長のため、©の手前までをアイテム定義としている。パスワードには必ず©の文字が入る。同じく、FINも必要。
キャラクタ
仲間が増えるごとにパスワードが5文字長くなる。
所持金は下8ビットが削られる。経験値は下2ビットが削られる。(★ごーるどは、おおくて255ごーるど引かれます。けいけんちは、おおくて3引かれることがあります。)
現在HP,MPは保存されないため、再開時に全回復する。(★ひっと力・さいこ力・けいけんちは、そのときのレベルの最大値になります。)経験値がそのときのレベルの最大値になるのではなく、レベルがそのときの経験値の最大になる。
(2)可読文字化
得られたデータの各バイトに対し、+65(2進数表記で+01000001)を行う。
値に対応する文字は以下の通り。
|
|
|
|
|
(3)チェックサム計算
1文字目は奇数番目(3,5,7,9,...)、2文字目は偶数番目(4,6,8,10,...)の、(+65された後の)各バイト値の総和を取り、 &0x7fで下位7bitを取得し、そこに+65し自身を可読文字化する。
FINの文字はチェックサムの計算に含まない。