ステータス

形式(Format)

全体は48byteだが、12byte毎にデータを分けることが出来る
成長度 基礎ポイントとコンディション 詳細情報
Size Offset Size Offset Size Offset Size Offset
ポケモン 2 0 技1 2 0 HP基礎 1 0 ポケルス状態 1 0
持ち物 2 2 技2 2 2 攻撃基礎 1 1 出会った場所 1 1
経験値 4 4 技3 2 4 防御基礎 1 2 出会った詳細 2 2
PPボーナス 1 8 技4 2 6 速さ基礎 1 3 IV卵特性 4 4
なつき度 1 9 PP1 1 8 特攻基礎 1 4 リボン・忠誠心 4 8
未知数 2 10 PP2 1 9 特防基礎 1 5
PP3 1 10 かっこよさ 1 6
PP4 1 11 うつくしさ 1 7
かわいさ 1 8
かしこさ 1 9
たくましさ 1 10
けづや 1 11
正直言うと、成長度・技以外は詳しく知らん

この成長度、技、基礎p(ry、情報と規則正しくデータが並んでいる訳ではない。
更にそれぞれのデータは全て暗号化が施されている。
正しい順番、複合化にはある手順を踏まえなければならないのだ。


ここでちょっと1文字に置き換える
成長度:G、技:A、基礎(ry:E、情報:M
(Growth,Attack,EVs,Miscellaneousの略ね)

並び替え
①まず性格値を用意して10進数に変換する(リトルエンディアンでの置換を忘れずに!)
②その変換した数字を24で割った余りを出す。
③出た結果を下の表と照らし合わせる。
00 GAEM 06 AGEM 12 EGAM 18 MGAE
01 GAME 07 AGME 13 EGMA 19 MGEA
02 GEAM 08 AEGM 14 EAGM 20 MAGE
03 GEMA 09 AEMG 15 EAMG 21 MAEG
04 GMAE 10 AMGE 16 EMGA 22 MEGA
05 GMEA 11 AMEG 17 EMAG 23 MEAG
もしこの表に値が無いって場合はおかしいんでやり直して。

複合化
①親IDと性格値を排他的論理和(XOR)で計算する(ここではリトルエンディアン置換はしないように!)
②出てきた値を4byte毎に全て排他的論理和で計算する(48byteだから12回)

これで複合化が完了する

PPボーナス

ポイントアップとかのPP増加を確認する箇所
Bit
0-1 技1
2-3 技2
4-5 技3
6-7 技4
例えばここが0x2Dである場合
Hex Binary
2D 00101101
だから技1はアップ無し、技2が2段階、技3が3段階、技4が1段階になるってわけだ

ポケルス

ポケルス自体詳しくないから詳細は知らん
やる気あったら追記するわ
Bit 説明
0-3 残日
4-7 感染タイプ

会った詳細

主人公の性別(色)や捕まえたボール、どのゲームで捕まえたのか、何レベルで会ったのか
その辺の情報が埋まってる
性別 ボール ゲーム レベル
Bit:15 Bit:11-14 Bit:7-10 Bit:0-6
ボール ゲーム 説明
0 1 マスターボール 0 ボーナスディスク 0 孵った
1 2 ハイパーボール 1 サファイア >0 出会ったレベル
3 スーパーボール 2 ルビー
4 モンスターボール 3 エメラルド
5 サファリボール 4 ファイアレッド
6 ネットボール 5 リーフグリーン
7 ダイブボール 15 コロシアムorXD
8 ネストボール
9 リピートボール
10 タイマーボール
11 ゴージャスボール
12 プレミアムボール




Accsess: -
最終更新:2014年09月16日 21:47