生成する能力の決定
とりあえず作りたい選手を決めないと何も始まらないので能力を考える。
今回は例としてパワポケ5のパスワードで以下の能力の選手を生成する。
名前 田西◎
ポジション 投手
投打 右投右打
背番号 53
チーム 日ハム
肌 普通
出身 パワポケ5
製造番号 1
顔 パワプロクン1
打撃フォーム ノーマル
ミート 7
パワー 120
走力 6
肩力 13
守備力 6
エラー率 6
投球フォーム はがね投法1
球速 153
コントロール 210
スタミナ 29
変化球 Hスライダー5 Sスライダー5 ナックル7
特殊能力 呪縛 ムラッ気 打たれ弱い 負け運 逃げ球 ポーカーフェイス 三振 バント◎
バイト構造表に当てはめる
選手のパスワードを作るための設計図であるバイト構造表にデータを当てはめていく。
パワポケ5の場合、バイト構造表は以下になる。
それに作りたい選手の能力に合わせて数値を設定していく。
パワポケ甲子園シリーズを除いたメインポジションが野手の場合は投手で設定出来る能力、特殊能力は全て0に設定する。
バイト |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
数値 |
1バイト |
48バイト圧縮フラグ |
47バイト圧縮フラグ |
46バイト圧縮フラグ |
45バイト圧縮フラグ |
44バイト圧縮フラグ |
43バイト圧縮フラグ |
42バイト圧縮フラグ |
41バイト圧縮フラグ |
0 |
2バイト |
32バイト圧縮フラグ |
31バイト圧縮フラグ |
30バイト圧縮フラグ |
29バイト圧縮フラグ |
28バイト圧縮フラグ |
27バイト圧縮フラグ |
26バイト圧縮フラグ |
25バイト圧縮フラグ |
0 |
3バイト |
16バイト圧縮フラグ |
15バイト圧縮フラグ |
14バイト圧縮フラグ |
13バイト圧縮フラグ |
12バイト圧縮フラグ |
11バイト圧縮フラグ |
10バイト圧縮フラグ |
9バイト圧縮フラグ |
0 |
4バイト |
40バイト圧縮フラグ |
39バイト圧縮フラグ |
38バイト圧縮フラグ |
37バイト圧縮フラグ |
36バイト圧縮フラグ |
35バイト圧縮フラグ |
34バイト圧縮フラグ |
33バイト圧縮フラグ |
0 |
5バイト |
56バイト圧縮フラグ |
55バイト圧縮フラグ |
54バイト圧縮フラグ |
53バイト圧縮フラグ |
52バイト圧縮フラグ |
51バイト圧縮フラグ |
50バイト圧縮フラグ |
49バイト圧縮フラグ |
0 |
6バイト |
24バイト圧縮フラグ |
23バイト圧縮フラグ |
22バイト圧縮フラグ |
21バイト圧縮フラグ |
20バイト圧縮フラグ |
19バイト圧縮フラグ |
18バイト圧縮フラグ |
17バイト圧縮フラグ |
0 |
7バイト |
チェックサム1 128 |
チェックサム1 64 |
チェックサム1 32 |
チェックサム1 16 |
チェックサム1 8 |
チェックサム1 4 |
チェックサム1 2 |
チェックサム1 1 |
0 |
8バイト |
チェックサム2 128 |
チェックサム2 64 |
チェックサム2 32 |
チェックサム2 16 |
チェックサム2 8 |
チェックサム2 4 |
チェックサム2 2 |
チェックサム2 1 |
0 |
9バイト |
名前コード1 128 |
名前コード1 64 |
名前コード1 32 |
名前コード1 16 |
名前コード1 8 |
名前コード1 4 |
名前コード1 2 |
名前コード1 1 |
0 |
10バイト |
名前コード2 128 |
名前コード2 64 |
名前コード2 32 |
名前コード2 16 |
名前コード2 8 |
名前コード2 4 |
名前コード2 2 |
名前コード2 1 |
0 |
11バイト |
名前コード3 128 |
名前コード3 64 |
名前コード3 32 |
名前コード3 16 |
名前コード3 8 |
名前コード3 4 |
名前コード3 2 |
名前コード3 1 |
0 |
12バイト |
名前コード4 128 |
名前コード4 64 |
名前コード4 32 |
名前コード4 16 |
名前コード4 8 |
名前コード4 4 |
名前コード4 2 |
名前コード4 1 |
0 |
13バイト |
名前コード5 128 |
名前コード5 64 |
名前コード5 32 |
名前コード5 16 |
名前コード5 8 |
名前コード5 4 |
名前コード5 2 |
名前コード5 1 |
0 |
14バイト |
名前コード6 128 |
名前コード6 64 |
名前コード6 32 |
名前コード6 16 |
名前コード6 8 |
名前コード6 4 |
名前コード6 2 |
名前コード6 1 |
0 |
15バイト |
名前コード7 128 |
名前コード7 64 |
名前コード7 32 |
名前コード7 16 |
名前コード7 8 |
名前コード7 4 |
名前コード7 2 |
名前コード7 1 |
0 |
16バイト |
名前コード8 128 |
名前コード8 64 |
名前コード8 32 |
名前コード8 16 |
名前コード8 8 |
名前コード8 4 |
名前コード8 2 |
名前コード8 1 |
0 |
17バイト |
名前コード9 128 |
名前コード9 64 |
名前コード9 32 |
名前コード9 16 |
名前コード9 8 |
名前コード9 4 |
名前コード9 2 |
名前コード9 1 |
0 |
18バイト |
名前コード10 128 |
名前コード10 64 |
名前コード10 32 |
名前コード10 16 |
名前コード10 8 |
名前コード10 4 |
名前コード10 2 |
名前コード10 1 |
0 |
19バイト |
名前コード11 128 |
名前コード11 64 |
名前コード11 32 |
名前コード11 16 |
名前コード11 8 |
名前コード11 4 |
名前コード11 2 |
名前コード11 1 |
0 |
20バイト |
名前コード12 128 |
名前コード12 64 |
名前コード12 32 |
名前コード12 16 |
名前コード12 8 |
名前コード12 4 |
名前コード12 2 |
名前コード12 1 |
0 |
21バイト |
未使用 |
両打 |
左打 |
左投 |
メインポジション8 |
メインポジション4 |
メインポジション2 |
メインポジション1 |
0 |
22バイト |
サブポジション1 8 |
サブポジション1 4 |
サブポジション1 2 |
サブポジション1 1 |
サブポジション2 8 |
サブポジション2 4 |
サブポジション2 2 |
サブポジション2 1 |
0 |
23バイト |
パワー128 |
パワー64 |
パワー32 |
パワー16 |
パワー8 |
パワー4 |
パワー2 |
パワー1 |
0 |
24バイト |
ミートカーソル8 |
ミートカーソル4 |
ミートカーソル2 |
ミートカーソル1 |
肩力8 |
肩力4 |
肩力2 |
肩力1 |
0 |
25バイト |
走力8 |
走力4 |
走力2 |
走力1 |
守力8 |
守力4 |
守力2 |
守力1 |
0 |
26バイト |
打撃フォーム8 |
打撃フォーム4 |
打撃フォーム2 |
打撃フォーム1 |
エラー率8 |
エラー率4 |
エラー率2 |
エラー率1 |
0 |
27バイト |
背番号128 |
背番号64 |
背番号32 |
背番号16 |
背番号8 |
背番号4 |
背番号2 |
背番号1 |
0 |
28バイト |
球速128 |
球速64 |
球速32 |
球速16 |
球速8 |
球速4 |
球速2 |
球速1 |
0 |
29バイト |
コントロール128 |
コントロール64 |
コントロール32 |
コントロール16 |
コントロール8 |
コントロール4 |
コントロール2 |
コントロール1 |
0 |
30バイト |
スタミナ128 |
スタミナ64 |
スタミナ32 |
スタミナ16 |
スタミナ8 |
スタミナ4 |
スタミナ2 |
スタミナ1 |
0 |
31バイト |
投球フォーム8 |
投球フォーム4 |
投球フォーム2 |
投球フォーム1 |
スライダー8 |
スライダー4 |
スライダー2 |
スライダー1 |
0 |
32バイト |
カーブ8 |
カーブ4 |
カーブ2 |
カーブ1 |
フォーク8 |
フォーク4 |
フォーク2 |
フォーク1 |
0 |
33バイト |
シンカー8 |
シンカー4 |
シンカー2 |
シンカー1 |
シュート8 |
シュート4 |
シュート2 |
シュート1 |
0 |
34バイト |
Hシンカー |
Sスライダー |
Hスライダー |
スローカーブ |
フォーク系特殊変化球8 |
フォーク系特殊変化球4 |
フォーク系特殊変化球2 |
フォーク系特殊変化球1 |
0 |
35バイト |
広角打法 |
野手威圧感 |
途中交代 |
強振多用 |
代走要員 |
守備要員 |
代打要員 |
野手人気者 |
0 |
36バイト |
内野安打○ |
サヨナラ男 |
流し打ち |
逆境○ |
対左投手× |
対左投手○ |
チャンス× |
チャンス○ |
0 |
37バイト |
体当たり |
ヘッドスライディング |
バント◎ |
バント○ |
パワーヒッター |
アベレージヒッター |
キャッチャー◎ |
キャッチャー○ |
0 |
38バイト |
未使用 |
走塁× |
走塁○ |
守備職人 |
ブロック○ |
送球○ |
盗塁× |
盗塁○ |
0 |
39バイト |
ケガ× |
ケガ○ |
三振 |
ムード× |
ムード○ |
連打○ |
粘り打ち |
固め打ち |
0 |
40バイト |
GBカラー |
代打○ |
エラー |
ムードメーカー |
満塁男 |
安定感 |
初球○ |
野手ムラッ気 |
0 |
41バイト |
未使用 |
未使用 |
未使用 |
未使用 |
チャンスメーカー |
持続 |
対左投手◎ |
チャンス◎ |
0 |
42バイト |
未使用 |
未使用 |
四球 |
投手威圧感 |
中継ぎエース |
リリーフエース |
完投タイプ |
投手人気者 |
0 |
43バイト |
勝ち運 |
一発 |
対左打者× |
対左打者○ |
ランナー× |
寸前× |
ピンチ× |
ピンチ○ |
0 |
44バイト |
短気 |
打球反応○ |
けん制○ |
スロースターター |
尻上がり |
投手ムラッ気 |
回復× |
回復○ |
0 |
45バイト |
逃げ球 |
打たれ弱い |
打たれ強い |
ノビ× |
ノビ○ |
キレ× |
キレ○ |
負け運 |
0 |
46バイト |
未使用 |
低め○ |
闘志 |
ポーカーフェイス |
重い球 |
クイック× |
クイック○ |
リリース○ |
0 |
47バイト |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
0 |
48バイト |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
0 |
49バイト |
超特殊能力128 |
超特殊能力64 |
超特殊能力32 |
超特殊能力16 |
超特殊能力8 |
超特殊能力4 |
超特殊能力2 |
超特殊能力1 |
0 |
50バイト |
肌8 |
肌4 |
肌2 |
肌1 |
チーム8 |
チーム4 |
チーム2 |
チーム1 |
0 |
51バイト |
出身32768 |
出身16384 |
出身8192 |
出身4096 |
出身2048 |
出身1024 |
出身512 |
出身256 |
0 |
52バイト |
出身128 |
出身64 |
出身32 |
出身16 |
出身8 |
出身4 |
出身2 |
出身1 |
0 |
53バイト |
製造番号32768 |
製造番号16384 |
製造番号8192 |
製造番号4096 |
製造番号2048 |
製造番号1024 |
製造番号512 |
製造番号256 |
0 |
54バイト |
製造番号128 |
製造番号64 |
製造番号32 |
製造番号16 |
製造番号8 |
製造番号4 |
製造番号2 |
製造番号1 |
0 |
55バイト |
顔32768 |
顔16384 |
顔8192 |
顔4096 |
顔2048 |
顔1024 |
顔512 |
顔256 |
0 |
56バイト |
顔128 |
顔64 |
顔32 |
顔16 |
顔8 |
顔4 |
顔2 |
顔1 |
0 |
作ろうとする選手の設定を当てはめると、以下のように数値が設定される。
バイト |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
数値 |
1バイト |
48バイト圧縮フラグ |
47バイト圧縮フラグ |
46バイト圧縮フラグ |
45バイト圧縮フラグ |
44バイト圧縮フラグ |
43バイト圧縮フラグ |
42バイト圧縮フラグ |
41バイト圧縮フラグ |
0 |
2バイト |
32バイト圧縮フラグ |
31バイト圧縮フラグ |
30バイト圧縮フラグ |
29バイト圧縮フラグ |
28バイト圧縮フラグ |
27バイト圧縮フラグ |
26バイト圧縮フラグ |
25バイト圧縮フラグ |
0 |
3バイト |
16バイト圧縮フラグ |
15バイト圧縮フラグ |
14バイト圧縮フラグ |
13バイト圧縮フラグ |
12バイト圧縮フラグ |
11バイト圧縮フラグ |
10バイト圧縮フラグ |
9バイト圧縮フラグ |
0 |
4バイト |
40バイト圧縮フラグ |
39バイト圧縮フラグ |
38バイト圧縮フラグ |
37バイト圧縮フラグ |
36バイト圧縮フラグ |
35バイト圧縮フラグ |
34バイト圧縮フラグ |
33バイト圧縮フラグ |
0 |
5バイト |
56バイト圧縮フラグ |
55バイト圧縮フラグ |
54バイト圧縮フラグ |
53バイト圧縮フラグ |
52バイト圧縮フラグ |
51バイト圧縮フラグ |
50バイト圧縮フラグ |
49バイト圧縮フラグ |
0 |
6バイト |
24バイト圧縮フラグ |
23バイト圧縮フラグ |
22バイト圧縮フラグ |
21バイト圧縮フラグ |
20バイト圧縮フラグ |
19バイト圧縮フラグ |
18バイト圧縮フラグ |
17バイト圧縮フラグ |
0 |
7バイト |
チェックサム1 128 |
チェックサム1 64 |
チェックサム1 32 |
チェックサム1 16 |
チェックサム1 8 |
チェックサム1 4 |
チェックサム1 2 |
チェックサム1 1 |
0 |
8バイト |
チェックサム2 128 |
チェックサム2 64 |
チェックサム2 32 |
チェックサム2 16 |
チェックサム2 8 |
チェックサム2 4 |
チェックサム2 2 |
チェックサム2 1 |
0 |
9バイト |
名前コード1 128 |
名前コード1 64 |
名前コード1 32 |
名前コード1 16 |
名前コード1 8 |
名前コード1 4 |
名前コード1 2 |
名前コード1 1 |
239 |
10バイト |
名前コード2 128 |
名前コード2 64 |
名前コード2 32 |
名前コード2 16 |
名前コード2 8 |
名前コード2 4 |
名前コード2 2 |
名前コード2 1 |
217 |
11バイト |
名前コード3 128 |
名前コード3 64 |
名前コード3 32 |
名前コード3 16 |
名前コード3 8 |
名前コード3 4 |
名前コード3 2 |
名前コード3 1 |
237 |
12バイト |
名前コード4 128 |
名前コード4 64 |
名前コード4 32 |
名前コード4 16 |
名前コード4 8 |
名前コード4 4 |
名前コード4 2 |
名前コード4 1 |
253 |
13バイト |
名前コード5 128 |
名前コード5 64 |
名前コード5 32 |
名前コード5 16 |
名前コード5 8 |
名前コード5 4 |
名前コード5 2 |
名前コード5 1 |
200 |
14バイト |
名前コード6 128 |
名前コード6 64 |
名前コード6 32 |
名前コード6 16 |
名前コード6 8 |
名前コード6 4 |
名前コード6 2 |
名前コード6 1 |
0 |
15バイト |
名前コード7 128 |
名前コード7 64 |
名前コード7 32 |
名前コード7 16 |
名前コード7 8 |
名前コード7 4 |
名前コード7 2 |
名前コード7 1 |
0 |
16バイト |
名前コード8 128 |
名前コード8 64 |
名前コード8 32 |
名前コード8 16 |
名前コード8 8 |
名前コード8 4 |
名前コード8 2 |
名前コード8 1 |
0 |
17バイト |
名前コード9 128 |
名前コード9 64 |
名前コード9 32 |
名前コード9 16 |
名前コード9 8 |
名前コード9 4 |
名前コード9 2 |
名前コード9 1 |
0 |
18バイト |
名前コード10 128 |
名前コード10 64 |
名前コード10 32 |
名前コード10 16 |
名前コード10 8 |
名前コード10 4 |
名前コード10 2 |
名前コード10 1 |
0 |
19バイト |
名前コード11 128 |
名前コード11 64 |
名前コード11 32 |
名前コード11 16 |
名前コード11 8 |
名前コード11 4 |
名前コード11 2 |
名前コード11 1 |
0 |
20バイト |
名前コード12 128 |
名前コード12 64 |
名前コード12 32 |
名前コード12 16 |
名前コード12 8 |
名前コード12 4 |
名前コード12 2 |
名前コード12 1 |
0 |
21バイト |
未使用 |
両打 |
左打 |
左投 |
メインポジション8 |
メインポジション4 |
メインポジション2 |
メインポジション1 |
1 |
22バイト |
サブポジション1 8 |
サブポジション1 4 |
サブポジション1 2 |
サブポジション1 1 |
サブポジション2 8 |
サブポジション2 4 |
サブポジション2 2 |
サブポジション2 1 |
0 |
23バイト |
パワー128 |
パワー64 |
パワー32 |
パワー16 |
パワー8 |
パワー4 |
パワー2 |
パワー1 |
120 |
24バイト |
ミートカーソル8 |
ミートカーソル4 |
ミートカーソル2 |
ミートカーソル1 |
肩力8 |
肩力4 |
肩力2 |
肩力1 |
125 |
25バイト |
走力8 |
走力4 |
走力2 |
走力1 |
守力8 |
守力4 |
守力2 |
守力1 |
102 |
26バイト |
打撃フォーム8 |
打撃フォーム4 |
打撃フォーム2 |
打撃フォーム1 |
エラー率8 |
エラー率4 |
エラー率2 |
エラー率1 |
6 |
27バイト |
背番号128 |
背番号64 |
背番号32 |
背番号16 |
背番号8 |
背番号4 |
背番号2 |
背番号1 |
53 |
28バイト |
球速128 |
球速64 |
球速32 |
球速16 |
球速8 |
球速4 |
球速2 |
球速1 |
153 |
29バイト |
コントロール128 |
コントロール64 |
コントロール32 |
コントロール16 |
コントロール8 |
コントロール4 |
コントロール2 |
コントロール1 |
210 |
30バイト |
スタミナ128 |
スタミナ64 |
スタミナ32 |
スタミナ16 |
スタミナ8 |
スタミナ4 |
スタミナ2 |
スタミナ1 |
29 |
31バイト |
投球フォーム8 |
投球フォーム4 |
投球フォーム2 |
投球フォーム1 |
スライダー8 |
スライダー4 |
スライダー2 |
スライダー1 |
133 |
32バイト |
カーブ8 |
カーブ4 |
カーブ2 |
カーブ1 |
フォーク8 |
フォーク4 |
フォーク2 |
フォーク1 |
87 |
33バイト |
シンカー8 |
シンカー4 |
シンカー2 |
シンカー1 |
シュート8 |
シュート4 |
シュート2 |
シュート1 |
0 |
34バイト |
Hシンカー |
Sスライダー |
Hスライダー |
スローカーブ |
フォーク系特殊変化球8 |
フォーク系特殊変化球4 |
フォーク系特殊変化球2 |
フォーク系特殊変化球1 |
98 |
35バイト |
広角打法 |
野手威圧感 |
途中交代 |
強振多用 |
代走要員 |
守備要員 |
代打要員 |
野手人気者 |
0 |
36バイト |
内野安打○ |
サヨナラ男 |
流し打ち |
逆境○ |
対左投手× |
対左投手○ |
チャンス× |
チャンス○ |
0 |
37バイト |
体当たり |
ヘッドスライディング |
バント◎ |
バント○ |
パワーヒッター |
アベレージヒッター |
キャッチャー◎ |
キャッチャー○ |
32 |
38バイト |
未使用 |
走塁× |
走塁○ |
守備職人 |
ブロック○ |
送球○ |
盗塁× |
盗塁○ |
0 |
39バイト |
ケガ× |
ケガ○ |
三振 |
ムード× |
ムード○ |
連打○ |
粘り打ち |
固め打ち |
32 |
40バイト |
GBカラー |
代打○ |
エラー |
ムードメーカー |
満塁男 |
安定感 |
初球○ |
野手ムラッ気 |
0 |
41バイト |
未使用 |
未使用 |
未使用 |
未使用 |
チャンスメーカー |
持続 |
対左投手◎ |
チャンス◎ |
0 |
42バイト |
未使用 |
未使用 |
四球 |
投手威圧感 |
中継ぎエース |
リリーフエース |
完投タイプ |
投手人気者 |
0 |
43バイト |
勝ち運 |
一発 |
対左打者× |
対左打者○ |
ランナー× |
寸前× |
ピンチ× |
ピンチ○ |
0 |
44バイト |
短気 |
打球反応○ |
けん制○ |
スロースターター |
尻上がり |
投手ムラッ気 |
回復× |
回復○ |
4 |
45バイト |
逃げ球 |
打たれ弱い |
打たれ強い |
ノビ× |
ノビ○ |
キレ× |
キレ○ |
負け運 |
193 |
46バイト |
未使用 |
低め○ |
闘志 |
ポーカーフェイス |
重い球 |
クイック× |
クイック○ |
リリース○ |
16 |
47バイト |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
0 |
48バイト |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
0 |
49バイト |
超特殊能力128 |
超特殊能力64 |
超特殊能力32 |
超特殊能力16 |
超特殊能力8 |
超特殊能力4 |
超特殊能力2 |
超特殊能力1 |
9 |
50バイト |
肌8 |
肌4 |
肌2 |
肌1 |
チーム8 |
チーム4 |
チーム2 |
チーム1 |
10 |
51バイト |
出身32768 |
出身16384 |
出身8192 |
出身4096 |
出身2048 |
出身1024 |
出身512 |
出身256 |
2 |
52バイト |
出身128 |
出身64 |
出身32 |
出身16 |
出身8 |
出身4 |
出身2 |
出身1 |
1 |
53バイト |
製造番号32768 |
製造番号16384 |
製造番号8192 |
製造番号4096 |
製造番号2048 |
製造番号1024 |
製造番号512 |
製造番号256 |
0 |
54バイト |
製造番号128 |
製造番号64 |
製造番号32 |
製造番号16 |
製造番号8 |
製造番号4 |
製造番号2 |
製造番号1 |
1 |
55バイト |
顔32768 |
顔16384 |
顔8192 |
顔4096 |
顔2048 |
顔1024 |
顔512 |
顔256 |
0 |
56バイト |
顔128 |
顔64 |
顔32 |
顔16 |
顔8 |
顔4 |
顔2 |
顔1 |
0 |
- 設定内訳
- 名前は文字コード表(ポケ3以降)から「田西◎」の各文字は「田」=上位239と下位217「西」=上位237と下位253「◎」=200を順番に入れる。
- 右投右打の投手なので投打には何も設定せず0と投手のコード1を合算して1。
- パワーは120なのでそのまま120。
- ミート7は16倍して112、肩力13の13を合算して125。
- 走力6は16倍して96、肩力6の6を合算して102。
- ノーマル打法は打撃フォームのコードが0なので0、エラー率6の6の合算で6。
- 背番号53なのでそのまま53。
- 球速は153なのでそのまま153。
- コントロールは210なのでそのまま210。
- スタミナは29なのでそのまま29。
- はがね投法は投球フォームのコードが8なので16倍して128、スライダー5の5の合算で133。
- カーブ5は16倍して80、フォーク7の7の合算で87。
- Sスライダーで64、Hスライダーで32、ナックル持ちはフォーク系特殊変化球コードが2なので合算で98。
- 37バイトはバント◎の32のみなので32。
- 39バイトは三振の32のみなので32。
- 44バイトは投手ムラッ気の4のみなので4。
- 45バイトは逃げ球の128と打たれ弱いの64と負け運の1のフラグを合算して193。
- 46バイトはポーカーフェイスの16のみなので16。
- 49バイトは超特殊能力が呪縛持ちなので9。
- 肌は普通なので何も設定せず0とチームの日ハムのコード10を合算して10。
- 出身はパワポケ5の表サクセスなので51バイトの上位は2、52バイトの下位は1で合算して513になるようにする。
- 製造番号は1なので54バイトの下位に1を入れる。
- 顔は普通のパワプロクンの顔なので0にする。
圧縮フラグの設定
圧縮フラグは対応するバイトの値が1以上の時にON(1)にしてバイトの数値として合算する。
分かりやすいように圧縮フラグがONになるところは水色にした。
バイト |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
数値 |
1バイト |
48バイト圧縮フラグ |
47バイト圧縮フラグ |
46バイト圧縮フラグ |
45バイト圧縮フラグ |
44バイト圧縮フラグ |
43バイト圧縮フラグ |
42バイト圧縮フラグ |
41バイト圧縮フラグ |
56 |
2バイト |
32バイト圧縮フラグ |
31バイト圧縮フラグ |
30バイト圧縮フラグ |
29バイト圧縮フラグ |
28バイト圧縮フラグ |
27バイト圧縮フラグ |
26バイト圧縮フラグ |
25バイト圧縮フラグ |
255 |
3バイト |
16バイト圧縮フラグ |
15バイト圧縮フラグ |
14バイト圧縮フラグ |
13バイト圧縮フラグ |
12バイト圧縮フラグ |
11バイト圧縮フラグ |
10バイト圧縮フラグ |
9バイト圧縮フラグ |
31 |
4バイト |
40バイト圧縮フラグ |
39バイト圧縮フラグ |
38バイト圧縮フラグ |
37バイト圧縮フラグ |
36バイト圧縮フラグ |
35バイト圧縮フラグ |
34バイト圧縮フラグ |
33バイト圧縮フラグ |
82 |
5バイト |
56バイト圧縮フラグ |
55バイト圧縮フラグ |
54バイト圧縮フラグ |
53バイト圧縮フラグ |
52バイト圧縮フラグ |
51バイト圧縮フラグ |
50バイト圧縮フラグ |
49バイト圧縮フラグ |
47 |
6バイト |
24バイト圧縮フラグ |
23バイト圧縮フラグ |
22バイト圧縮フラグ |
21バイト圧縮フラグ |
20バイト圧縮フラグ |
19バイト圧縮フラグ |
18バイト圧縮フラグ |
17バイト圧縮フラグ |
208 |
7バイト |
チェックサム1 128 |
チェックサム1 64 |
チェックサム1 32 |
チェックサム1 16 |
チェックサム1 8 |
チェックサム1 4 |
チェックサム1 2 |
チェックサム1 1 |
0 |
8バイト |
チェックサム2 128 |
チェックサム2 64 |
チェックサム2 32 |
チェックサム2 16 |
チェックサム2 8 |
チェックサム2 4 |
チェックサム2 2 |
チェックサム2 1 |
0 |
9バイト |
名前コード1 128 |
名前コード1 64 |
名前コード1 32 |
名前コード1 16 |
名前コード1 8 |
名前コード1 4 |
名前コード1 2 |
名前コード1 1 |
239 |
10バイト |
名前コード2 128 |
名前コード2 64 |
名前コード2 32 |
名前コード2 16 |
名前コード2 8 |
名前コード2 4 |
名前コード2 2 |
名前コード2 1 |
217 |
11バイト |
名前コード3 128 |
名前コード3 64 |
名前コード3 32 |
名前コード3 16 |
名前コード3 8 |
名前コード3 4 |
名前コード3 2 |
名前コード3 1 |
237 |
12バイト |
名前コード4 128 |
名前コード4 64 |
名前コード4 32 |
名前コード4 16 |
名前コード4 8 |
名前コード4 4 |
名前コード4 2 |
名前コード4 1 |
253 |
13バイト |
名前コード5 128 |
名前コード5 64 |
名前コード5 32 |
名前コード5 16 |
名前コード5 8 |
名前コード5 4 |
名前コード5 2 |
名前コード5 1 |
200 |
14バイト |
名前コード6 128 |
名前コード6 64 |
名前コード6 32 |
名前コード6 16 |
名前コード6 8 |
名前コード6 4 |
名前コード6 2 |
名前コード6 1 |
0 |
15バイト |
名前コード7 128 |
名前コード7 64 |
名前コード7 32 |
名前コード7 16 |
名前コード7 8 |
名前コード7 4 |
名前コード7 2 |
名前コード7 1 |
0 |
16バイト |
名前コード8 128 |
名前コード8 64 |
名前コード8 32 |
名前コード8 16 |
名前コード8 8 |
名前コード8 4 |
名前コード8 2 |
名前コード8 1 |
0 |
17バイト |
名前コード9 128 |
名前コード9 64 |
名前コード9 32 |
名前コード9 16 |
名前コード9 8 |
名前コード9 4 |
名前コード9 2 |
名前コード9 1 |
0 |
18バイト |
名前コード10 128 |
名前コード10 64 |
名前コード10 32 |
名前コード10 16 |
名前コード10 8 |
名前コード10 4 |
名前コード10 2 |
名前コード10 1 |
0 |
19バイト |
名前コード11 128 |
名前コード11 64 |
名前コード11 32 |
名前コード11 16 |
名前コード11 8 |
名前コード11 4 |
名前コード11 2 |
名前コード11 1 |
0 |
20バイト |
名前コード12 128 |
名前コード12 64 |
名前コード12 32 |
名前コード12 16 |
名前コード12 8 |
名前コード12 4 |
名前コード12 2 |
名前コード12 1 |
0 |
21バイト |
未使用 |
両打 |
左打 |
左投 |
メインポジション8 |
メインポジション4 |
メインポジション2 |
メインポジション1 |
1 |
22バイト |
サブポジション1 8 |
サブポジション1 4 |
サブポジション1 2 |
サブポジション1 1 |
サブポジション2 8 |
サブポジション2 4 |
サブポジション2 2 |
サブポジション2 1 |
0 |
23バイト |
パワー128 |
パワー64 |
パワー32 |
パワー16 |
パワー8 |
パワー4 |
パワー2 |
パワー1 |
120 |
24バイト |
ミートカーソル8 |
ミートカーソル4 |
ミートカーソル2 |
ミートカーソル1 |
肩力8 |
肩力4 |
肩力2 |
肩力1 |
125 |
25バイト |
走力8 |
走力4 |
走力2 |
走力1 |
守力8 |
守力4 |
守力2 |
守力1 |
102 |
26バイト |
打撃フォーム8 |
打撃フォーム4 |
打撃フォーム2 |
打撃フォーム1 |
エラー率8 |
エラー率4 |
エラー率2 |
エラー率1 |
6 |
27バイト |
背番号128 |
背番号64 |
背番号32 |
背番号16 |
背番号8 |
背番号4 |
背番号2 |
背番号1 |
53 |
28バイト |
球速128 |
球速64 |
球速32 |
球速16 |
球速8 |
球速4 |
球速2 |
球速1 |
153 |
29バイト |
コントロール128 |
コントロール64 |
コントロール32 |
コントロール16 |
コントロール8 |
コントロール4 |
コントロール2 |
コントロール1 |
210 |
30バイト |
スタミナ128 |
スタミナ64 |
スタミナ32 |
スタミナ16 |
スタミナ8 |
スタミナ4 |
スタミナ2 |
スタミナ1 |
29 |
31バイト |
投球フォーム8 |
投球フォーム4 |
投球フォーム2 |
投球フォーム1 |
スライダー8 |
スライダー4 |
スライダー2 |
スライダー1 |
133 |
32バイト |
カーブ8 |
カーブ4 |
カーブ2 |
カーブ1 |
フォーク8 |
フォーク4 |
フォーク2 |
フォーク1 |
87 |
33バイト |
シンカー8 |
シンカー4 |
シンカー2 |
シンカー1 |
シュート8 |
シュート4 |
シュート2 |
シュート1 |
0 |
34バイト |
Hシンカー |
Sスライダー |
Hスライダー |
スローカーブ |
フォーク系特殊変化球8 |
フォーク系特殊変化球4 |
フォーク系特殊変化球2 |
フォーク系特殊変化球1 |
98 |
35バイト |
広角打法 |
野手威圧感 |
途中交代 |
強振多用 |
代走要員 |
守備要員 |
代打要員 |
野手人気者 |
0 |
36バイト |
内野安打○ |
サヨナラ男 |
流し打ち |
逆境○ |
対左投手× |
対左投手○ |
チャンス× |
チャンス○ |
0 |
37バイト |
体当たり |
ヘッドスライディング |
バント◎ |
バント○ |
パワーヒッター |
アベレージヒッター |
キャッチャー◎ |
キャッチャー○ |
32 |
38バイト |
未使用 |
走塁× |
走塁○ |
守備職人 |
ブロック○ |
送球○ |
盗塁× |
盗塁○ |
0 |
39バイト |
ケガ× |
ケガ○ |
三振 |
ムード× |
ムード○ |
連打○ |
粘り打ち |
固め打ち |
32 |
40バイト |
GBカラー |
代打○ |
エラー |
ムードメーカー |
満塁男 |
安定感 |
初球○ |
野手ムラッ気 |
0 |
41バイト |
未使用 |
未使用 |
未使用 |
未使用 |
チャンスメーカー |
持続 |
対左投手◎ |
チャンス◎ |
0 |
42バイト |
未使用 |
未使用 |
四球 |
投手威圧感 |
中継ぎエース |
リリーフエース |
完投タイプ |
投手人気者 |
0 |
43バイト |
勝ち運 |
一発 |
対左打者× |
対左打者○ |
ランナー× |
寸前× |
ピンチ× |
ピンチ○ |
0 |
44バイト |
短気 |
打球反応○ |
けん制○ |
スロースターター |
尻上がり |
投手ムラッ気 |
回復× |
回復○ |
4 |
45バイト |
逃げ球 |
打たれ弱い |
打たれ強い |
ノビ× |
ノビ○ |
キレ× |
キレ○ |
負け運 |
193 |
46バイト |
未使用 |
低め○ |
闘志 |
ポーカーフェイス |
重い球 |
クイック× |
クイック○ |
リリース○ |
16 |
47バイト |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
0 |
48バイト |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
0 |
49バイト |
超特殊能力128 |
超特殊能力64 |
超特殊能力32 |
超特殊能力16 |
超特殊能力8 |
超特殊能力4 |
超特殊能力2 |
超特殊能力1 |
9 |
50バイト |
肌8 |
肌4 |
肌2 |
肌1 |
チーム8 |
チーム4 |
チーム2 |
チーム1 |
10 |
51バイト |
出身32768 |
出身16384 |
出身8192 |
出身4096 |
出身2048 |
出身1024 |
出身512 |
出身256 |
2 |
52バイト |
出身128 |
出身64 |
出身32 |
出身16 |
出身8 |
出身4 |
出身2 |
出身1 |
1 |
53バイト |
製造番号32768 |
製造番号16384 |
製造番号8192 |
製造番号4096 |
製造番号2048 |
製造番号1024 |
製造番号512 |
製造番号256 |
0 |
54バイト |
製造番号128 |
製造番号64 |
製造番号32 |
製造番号16 |
製造番号8 |
製造番号4 |
製造番号2 |
製造番号1 |
1 |
55バイト |
顔32768 |
顔16384 |
顔8192 |
顔4096 |
顔2048 |
顔1024 |
顔512 |
顔256 |
0 |
56バイト |
顔128 |
顔64 |
顔32 |
顔16 |
顔8 |
顔4 |
顔2 |
顔1 |
0 |
チェックサムの計算
パワポケ5のチェックサムは次のように計算する。
sum=1~6バイトと9~56バイトの値の合計
sum1=(sum + 23) Mod 256
sum2=255 - (sum Mod 256)
これを計算していくと、
sum=56+255+31+82+47+208+239+217+237+253+200+1+120+125+102+6+53+153+210+29+133+87+98+32+32+4+193+16+9+10+2+1+1
sum=3242
sum1=(3242 + 23) Mod 256
sum2=255 - (3242 Mod 256)
sum1=193
sum2=85
よって、チェックサム1のバイトには193を、チェックサム2のバイトには85を入れる。
バイト |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
数値 |
1バイト |
48バイト圧縮フラグ |
47バイト圧縮フラグ |
46バイト圧縮フラグ |
45バイト圧縮フラグ |
44バイト圧縮フラグ |
43バイト圧縮フラグ |
42バイト圧縮フラグ |
41バイト圧縮フラグ |
56 |
2バイト |
32バイト圧縮フラグ |
31バイト圧縮フラグ |
30バイト圧縮フラグ |
29バイト圧縮フラグ |
28バイト圧縮フラグ |
27バイト圧縮フラグ |
26バイト圧縮フラグ |
25バイト圧縮フラグ |
255 |
3バイト |
16バイト圧縮フラグ |
15バイト圧縮フラグ |
14バイト圧縮フラグ |
13バイト圧縮フラグ |
12バイト圧縮フラグ |
11バイト圧縮フラグ |
10バイト圧縮フラグ |
9バイト圧縮フラグ |
31 |
4バイト |
40バイト圧縮フラグ |
39バイト圧縮フラグ |
38バイト圧縮フラグ |
37バイト圧縮フラグ |
36バイト圧縮フラグ |
35バイト圧縮フラグ |
34バイト圧縮フラグ |
33バイト圧縮フラグ |
82 |
5バイト |
56バイト圧縮フラグ |
55バイト圧縮フラグ |
54バイト圧縮フラグ |
53バイト圧縮フラグ |
52バイト圧縮フラグ |
51バイト圧縮フラグ |
50バイト圧縮フラグ |
49バイト圧縮フラグ |
47 |
6バイト |
24バイト圧縮フラグ |
23バイト圧縮フラグ |
22バイト圧縮フラグ |
21バイト圧縮フラグ |
20バイト圧縮フラグ |
19バイト圧縮フラグ |
18バイト圧縮フラグ |
17バイト圧縮フラグ |
208 |
7バイト |
チェックサム1 128 |
チェックサム1 64 |
チェックサム1 32 |
チェックサム1 16 |
チェックサム1 8 |
チェックサム1 4 |
チェックサム1 2 |
チェックサム1 1 |
193 |
8バイト |
チェックサム2 128 |
チェックサム2 64 |
チェックサム2 32 |
チェックサム2 16 |
チェックサム2 8 |
チェックサム2 4 |
チェックサム2 2 |
チェックサム2 1 |
85 |
9バイト |
名前コード1 128 |
名前コード1 64 |
名前コード1 32 |
名前コード1 16 |
名前コード1 8 |
名前コード1 4 |
名前コード1 2 |
名前コード1 1 |
239 |
10バイト |
名前コード2 128 |
名前コード2 64 |
名前コード2 32 |
名前コード2 16 |
名前コード2 8 |
名前コード2 4 |
名前コード2 2 |
名前コード2 1 |
217 |
11バイト |
名前コード3 128 |
名前コード3 64 |
名前コード3 32 |
名前コード3 16 |
名前コード3 8 |
名前コード3 4 |
名前コード3 2 |
名前コード3 1 |
237 |
12バイト |
名前コード4 128 |
名前コード4 64 |
名前コード4 32 |
名前コード4 16 |
名前コード4 8 |
名前コード4 4 |
名前コード4 2 |
名前コード4 1 |
253 |
13バイト |
名前コード5 128 |
名前コード5 64 |
名前コード5 32 |
名前コード5 16 |
名前コード5 8 |
名前コード5 4 |
名前コード5 2 |
名前コード5 1 |
200 |
14バイト |
名前コード6 128 |
名前コード6 64 |
名前コード6 32 |
名前コード6 16 |
名前コード6 8 |
名前コード6 4 |
名前コード6 2 |
名前コード6 1 |
0 |
15バイト |
名前コード7 128 |
名前コード7 64 |
名前コード7 32 |
名前コード7 16 |
名前コード7 8 |
名前コード7 4 |
名前コード7 2 |
名前コード7 1 |
0 |
16バイト |
名前コード8 128 |
名前コード8 64 |
名前コード8 32 |
名前コード8 16 |
名前コード8 8 |
名前コード8 4 |
名前コード8 2 |
名前コード8 1 |
0 |
17バイト |
名前コード9 128 |
名前コード9 64 |
名前コード9 32 |
名前コード9 16 |
名前コード9 8 |
名前コード9 4 |
名前コード9 2 |
名前コード9 1 |
0 |
18バイト |
名前コード10 128 |
名前コード10 64 |
名前コード10 32 |
名前コード10 16 |
名前コード10 8 |
名前コード10 4 |
名前コード10 2 |
名前コード10 1 |
0 |
19バイト |
名前コード11 128 |
名前コード11 64 |
名前コード11 32 |
名前コード11 16 |
名前コード11 8 |
名前コード11 4 |
名前コード11 2 |
名前コード11 1 |
0 |
20バイト |
名前コード12 128 |
名前コード12 64 |
名前コード12 32 |
名前コード12 16 |
名前コード12 8 |
名前コード12 4 |
名前コード12 2 |
名前コード12 1 |
0 |
21バイト |
未使用 |
両打 |
左打 |
左投 |
メインポジション8 |
メインポジション4 |
メインポジション2 |
メインポジション1 |
1 |
22バイト |
サブポジション1 8 |
サブポジション1 4 |
サブポジション1 2 |
サブポジション1 1 |
サブポジション2 8 |
サブポジション2 4 |
サブポジション2 2 |
サブポジション2 1 |
0 |
23バイト |
パワー128 |
パワー64 |
パワー32 |
パワー16 |
パワー8 |
パワー4 |
パワー2 |
パワー1 |
120 |
24バイト |
ミートカーソル8 |
ミートカーソル4 |
ミートカーソル2 |
ミートカーソル1 |
肩力8 |
肩力4 |
肩力2 |
肩力1 |
125 |
25バイト |
走力8 |
走力4 |
走力2 |
走力1 |
守力8 |
守力4 |
守力2 |
守力1 |
102 |
26バイト |
打撃フォーム8 |
打撃フォーム4 |
打撃フォーム2 |
打撃フォーム1 |
エラー率8 |
エラー率4 |
エラー率2 |
エラー率1 |
6 |
27バイト |
背番号128 |
背番号64 |
背番号32 |
背番号16 |
背番号8 |
背番号4 |
背番号2 |
背番号1 |
53 |
28バイト |
球速128 |
球速64 |
球速32 |
球速16 |
球速8 |
球速4 |
球速2 |
球速1 |
153 |
29バイト |
コントロール128 |
コントロール64 |
コントロール32 |
コントロール16 |
コントロール8 |
コントロール4 |
コントロール2 |
コントロール1 |
210 |
30バイト |
スタミナ128 |
スタミナ64 |
スタミナ32 |
スタミナ16 |
スタミナ8 |
スタミナ4 |
スタミナ2 |
スタミナ1 |
29 |
31バイト |
投球フォーム8 |
投球フォーム4 |
投球フォーム2 |
投球フォーム1 |
スライダー8 |
スライダー4 |
スライダー2 |
スライダー1 |
133 |
32バイト |
カーブ8 |
カーブ4 |
カーブ2 |
カーブ1 |
フォーク8 |
フォーク4 |
フォーク2 |
フォーク1 |
87 |
33バイト |
シンカー8 |
シンカー4 |
シンカー2 |
シンカー1 |
シュート8 |
シュート4 |
シュート2 |
シュート1 |
0 |
34バイト |
Hシンカー |
Sスライダー |
Hスライダー |
スローカーブ |
フォーク系特殊変化球8 |
フォーク系特殊変化球4 |
フォーク系特殊変化球2 |
フォーク系特殊変化球1 |
98 |
35バイト |
広角打法 |
野手威圧感 |
途中交代 |
強振多用 |
代走要員 |
守備要員 |
代打要員 |
野手人気者 |
0 |
36バイト |
内野安打○ |
サヨナラ男 |
流し打ち |
逆境○ |
対左投手× |
対左投手○ |
チャンス× |
チャンス○ |
0 |
37バイト |
体当たり |
ヘッドスライディング |
バント◎ |
バント○ |
パワーヒッター |
アベレージヒッター |
キャッチャー◎ |
キャッチャー○ |
32 |
38バイト |
未使用 |
走塁× |
走塁○ |
守備職人 |
ブロック○ |
送球○ |
盗塁× |
盗塁○ |
0 |
39バイト |
ケガ× |
ケガ○ |
三振 |
ムード× |
ムード○ |
連打○ |
粘り打ち |
固め打ち |
32 |
40バイト |
GBカラー |
代打○ |
エラー |
ムードメーカー |
満塁男 |
安定感 |
初球○ |
野手ムラッ気 |
0 |
41バイト |
未使用 |
未使用 |
未使用 |
未使用 |
チャンスメーカー |
持続 |
対左投手◎ |
チャンス◎ |
0 |
42バイト |
未使用 |
未使用 |
四球 |
投手威圧感 |
中継ぎエース |
リリーフエース |
完投タイプ |
投手人気者 |
0 |
43バイト |
勝ち運 |
一発 |
対左打者× |
対左打者○ |
ランナー× |
寸前× |
ピンチ× |
ピンチ○ |
0 |
44バイト |
短気 |
打球反応○ |
けん制○ |
スロースターター |
尻上がり |
投手ムラッ気 |
回復× |
回復○ |
4 |
45バイト |
逃げ球 |
打たれ弱い |
打たれ強い |
ノビ× |
ノビ○ |
キレ× |
キレ○ |
負け運 |
193 |
46バイト |
未使用 |
低め○ |
闘志 |
ポーカーフェイス |
重い球 |
クイック× |
クイック○ |
リリース○ |
16 |
47バイト |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
0 |
48バイト |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
未使用 |
0 |
49バイト |
超特殊能力128 |
超特殊能力64 |
超特殊能力32 |
超特殊能力16 |
超特殊能力8 |
超特殊能力4 |
超特殊能力2 |
超特殊能力1 |
9 |
50バイト |
肌8 |
肌4 |
肌2 |
肌1 |
チーム8 |
チーム4 |
チーム2 |
チーム1 |
10 |
51バイト |
出身32768 |
出身16384 |
出身8192 |
出身4096 |
出身2048 |
出身1024 |
出身512 |
出身256 |
2 |
52バイト |
出身128 |
出身64 |
出身32 |
出身16 |
出身8 |
出身4 |
出身2 |
出身1 |
1 |
53バイト |
製造番号32768 |
製造番号16384 |
製造番号8192 |
製造番号4096 |
製造番号2048 |
製造番号1024 |
製造番号512 |
製造番号256 |
0 |
54バイト |
製造番号128 |
製造番号64 |
製造番号32 |
製造番号16 |
製造番号8 |
製造番号4 |
製造番号2 |
製造番号1 |
1 |
55バイト |
顔32768 |
顔16384 |
顔8192 |
顔4096 |
顔2048 |
顔1024 |
顔512 |
顔256 |
0 |
56バイト |
顔128 |
顔64 |
顔32 |
顔16 |
顔8 |
顔4 |
顔2 |
顔1 |
0 |
バイト圧縮1
チェックサムまでデータの入力が終わったら、各バイト圧縮フラグとチェックサムがあるバイト以外のバイトを圧縮する。
圧縮方法は各バイト圧縮フラグとチェックサムがあるバイト(表で言うと数値の背景が紫のバイト)以外の数値が0のバイトは省き、その分上に詰めていく。
バイト圧縮フラグの部分で、作品によっては1バイトの中で8ビット全てが未使用となっているバイトが存在している場合があり、どうやってもバイトの値が0になってしまうが、そのバイトも圧縮からは除外する。
バイト |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
数値 |
1バイト |
48バイト圧縮フラグ |
47バイト圧縮フラグ |
46バイト圧縮フラグ |
45バイト圧縮フラグ |
44バイト圧縮フラグ |
43バイト圧縮フラグ |
42バイト圧縮フラグ |
41バイト圧縮フラグ |
56 |
2バイト |
32バイト圧縮フラグ |
31バイト圧縮フラグ |
30バイト圧縮フラグ |
29バイト圧縮フラグ |
28バイト圧縮フラグ |
27バイト圧縮フラグ |
26バイト圧縮フラグ |
25バイト圧縮フラグ |
255 |
3バイト |
16バイト圧縮フラグ |
15バイト圧縮フラグ |
14バイト圧縮フラグ |
13バイト圧縮フラグ |
12バイト圧縮フラグ |
11バイト圧縮フラグ |
10バイト圧縮フラグ |
9バイト圧縮フラグ |
31 |
4バイト |
40バイト圧縮フラグ |
39バイト圧縮フラグ |
38バイト圧縮フラグ |
37バイト圧縮フラグ |
36バイト圧縮フラグ |
35バイト圧縮フラグ |
34バイト圧縮フラグ |
33バイト圧縮フラグ |
82 |
5バイト |
56バイト圧縮フラグ |
55バイト圧縮フラグ |
54バイト圧縮フラグ |
53バイト圧縮フラグ |
52バイト圧縮フラグ |
51バイト圧縮フラグ |
50バイト圧縮フラグ |
49バイト圧縮フラグ |
47 |
6バイト |
24バイト圧縮フラグ |
23バイト圧縮フラグ |
22バイト圧縮フラグ |
21バイト圧縮フラグ |
20バイト圧縮フラグ |
19バイト圧縮フラグ |
18バイト圧縮フラグ |
17バイト圧縮フラグ |
208 |
7バイト |
チェックサム1 128 |
チェックサム1 64 |
チェックサム1 32 |
チェックサム1 16 |
チェックサム1 8 |
チェックサム1 4 |
チェックサム1 2 |
チェックサム1 1 |
193 |
8バイト |
チェックサム2 128 |
チェックサム2 64 |
チェックサム2 32 |
チェックサム2 16 |
チェックサム2 8 |
チェックサム2 4 |
チェックサム2 2 |
チェックサム2 1 |
85 |
9バイト |
名前コード1 128 |
名前コード1 64 |
名前コード1 32 |
名前コード1 16 |
名前コード1 8 |
名前コード1 4 |
名前コード1 2 |
名前コード1 1 |
239 |
10バイト |
名前コード2 128 |
名前コード2 64 |
名前コード2 32 |
名前コード2 16 |
名前コード2 8 |
名前コード2 4 |
名前コード2 2 |
名前コード2 1 |
217 |
11バイト |
名前コード3 128 |
名前コード3 64 |
名前コード3 32 |
名前コード3 16 |
名前コード3 8 |
名前コード3 4 |
名前コード3 2 |
名前コード3 1 |
237 |
12バイト |
名前コード4 128 |
名前コード4 64 |
名前コード4 32 |
名前コード4 16 |
名前コード4 8 |
名前コード4 4 |
名前コード4 2 |
名前コード4 1 |
253 |
13バイト |
名前コード5 128 |
名前コード5 64 |
名前コード5 32 |
名前コード5 16 |
名前コード5 8 |
名前コード5 4 |
名前コード5 2 |
名前コード5 1 |
200 |
14バイト |
未使用 |
両打 |
左打 |
左投 |
メインポジション8 |
メインポジション4 |
メインポジション2 |
メインポジション1 |
1 |
15バイト |
パワー128 |
パワー64 |
パワー32 |
パワー16 |
パワー8 |
パワー4 |
パワー2 |
パワー1 |
120 |
16バイト |
ミートカーソル8 |
ミートカーソル4 |
ミートカーソル2 |
ミートカーソル1 |
肩力8 |
肩力4 |
肩力2 |
肩力1 |
125 |
17バイト |
走力8 |
走力4 |
走力2 |
走力1 |
守力8 |
守力4 |
守力2 |
守力1 |
102 |
18バイト |
打撃フォーム8 |
打撃フォーム4 |
打撃フォーム2 |
打撃フォーム1 |
エラー率8 |
エラー率4 |
エラー率2 |
エラー率1 |
6 |
19バイト |
背番号128 |
背番号64 |
背番号32 |
背番号16 |
背番号8 |
背番号4 |
背番号2 |
背番号1 |
53 |
20バイト |
球速128 |
球速64 |
球速32 |
球速16 |
球速8 |
球速4 |
球速2 |
球速1 |
153 |
21バイト |
コントロール128 |
コントロール64 |
コントロール32 |
コントロール16 |
コントロール8 |
コントロール4 |
コントロール2 |
コントロール1 |
210 |
22バイト |
スタミナ128 |
スタミナ64 |
スタミナ32 |
スタミナ16 |
スタミナ8 |
スタミナ4 |
スタミナ2 |
スタミナ1 |
29 |
23バイト |
投球フォーム8 |
投球フォーム4 |
投球フォーム2 |
投球フォーム1 |
スライダー8 |
スライダー4 |
スライダー2 |
スライダー1 |
133 |
24バイト |
カーブ8 |
カーブ4 |
カーブ2 |
カーブ1 |
フォーク8 |
フォーク4 |
フォーク2 |
フォーク1 |
87 |
25バイト |
Hシンカー |
Sスライダー |
Hスライダー |
スローカーブ |
フォーク系特殊変化球8 |
フォーク系特殊変化球4 |
フォーク系特殊変化球2 |
フォーク系特殊変化球1 |
98 |
26バイト |
体当たり |
ヘッドスライディング |
バント◎ |
バント○ |
パワーヒッター |
アベレージヒッター |
キャッチャー◎ |
キャッチャー○ |
32 |
27バイト |
ケガ× |
ケガ○ |
三振 |
ムード× |
ムード○ |
連打○ |
粘り打ち |
固め打ち |
32 |
28バイト |
短気 |
打球反応○ |
けん制○ |
スロースターター |
尻上がり |
投手ムラッ気 |
回復× |
回復○ |
4 |
29バイト |
逃げ球 |
打たれ弱い |
打たれ強い |
ノビ× |
ノビ○ |
キレ× |
キレ○ |
負け運 |
193 |
30バイト |
未使用 |
低め○ |
闘志 |
ポーカーフェイス |
重い球 |
クイック× |
クイック○ |
リリース○ |
16 |
31バイト |
超特殊能力128 |
超特殊能力64 |
超特殊能力32 |
超特殊能力16 |
超特殊能力8 |
超特殊能力4 |
超特殊能力2 |
超特殊能力1 |
9 |
32バイト |
肌8 |
肌4 |
肌2 |
肌1 |
チーム8 |
チーム4 |
チーム2 |
チーム1 |
10 |
33バイト |
出身32768 |
出身16384 |
出身8192 |
出身4096 |
出身2048 |
出身1024 |
出身512 |
出身256 |
2 |
34バイト |
出身128 |
出身64 |
出身32 |
出身16 |
出身8 |
出身4 |
出身2 |
出身1 |
1 |
35バイト |
製造番号128 |
製造番号64 |
製造番号32 |
製造番号16 |
製造番号8 |
製造番号4 |
製造番号2 |
製造番号1 |
1 |
36バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
37バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
38バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
39バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
40バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
41バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
42バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
43バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
44バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
45バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
46バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
47バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
48バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
49バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
50バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
51バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
52バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
53バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
54バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
55バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
56バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
4ビット圧縮
バイト圧縮1で圧縮したバイトを今度は4ビット単位で圧縮する。
先のバイト圧縮1の処理で圧縮されたバイトを上から4バイトずつ区切っていき、全ての区切りの上に4ビット圧縮用の圧縮フラグ群を1バイト設ける。
4ビット圧縮フラグの割り当ては、どの4バイト毎の区切りでも以下の構成で固定。
バイト |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
数値 |
nバイト |
⑧ |
⑦ |
⑥ |
⑤ |
④ |
③ |
② |
① |
0 |
n+1バイト |
① |
② |
0 |
n+2バイト |
③ |
④ |
0 |
n+3バイト |
⑤ |
⑥ |
0 |
n+4バイト |
⑦ |
⑧ |
0 |
各4ビット圧縮フラグがON(1)になる条件は、対応する4ビットの数値が1以上あればONになる。
4ビット単位で圧縮する処理は、4ビット単位の数値が0の所を省き、⑧の方へ4ビット単位で後詰めする。
別解として、ONになった4ビット圧縮フラグが偶数の時は①の方へ前詰めだけ、奇数の時は①に0の値の4ビットを配置し、①の方に②から前詰めしても同じ圧縮結果が得られる。
■処理の一例
ここからは各データの方もONのところは分かりやすいように背景を水色に表示する。
以下のような並びで4バイトのデータが1組存在したとする。
バイト |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
数値 |
nバイト |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
17 |
n+1バイト |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
32 |
n+2バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
n+3バイト |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
240 |
その1組の上に4ビット圧縮用の圧縮フラグ群を1バイト設ける。
バイト |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
数値 |
nバイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
n+1バイト |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
17 |
n+2バイト |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
32 |
n+3バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
n+4バイト |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
240 |
4ビット圧縮フラグを立てるルールに従い、各4ビット単位に対応した4ビット圧縮フラグを立てる。
4ビット圧縮フラグを立てて、フラグの合計でバイトの数値を求める。
バイト |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
数値 |
nバイト |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
103 |
n+1バイト |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
17 |
n+2バイト |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
32 |
n+3バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
n+4バイト |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
240 |
n+1バイト~n+4バイトのデータを4ビット単位で分割して並べる。
4ビットデータ |
8 |
4 |
2 |
1 |
数値 |
① |
0 |
0 |
0 |
1 |
1 |
② |
0 |
0 |
0 |
1 |
1 |
③ |
0 |
0 |
1 |
0 |
2 |
④ |
0 |
0 |
0 |
0 |
0 |
⑤ |
0 |
0 |
0 |
0 |
0 |
⑥ |
0 |
0 |
0 |
1 |
1 |
⑦ |
1 |
1 |
1 |
1 |
15 |
⑧ |
0 |
0 |
0 |
0 |
0 |
⑧の方に後ろ詰めで4ビット単位の圧縮をする。
4ビットデータ |
8 |
4 |
2 |
1 |
数値 |
① |
0 |
0 |
0 |
0 |
0 |
② |
0 |
0 |
0 |
0 |
0 |
③ |
0 |
0 |
0 |
0 |
0 |
④ |
0 |
0 |
0 |
1 |
1 |
⑤ |
0 |
0 |
0 |
1 |
1 |
⑥ |
0 |
0 |
1 |
0 |
2 |
⑦ |
0 |
0 |
0 |
1 |
1 |
⑧ |
1 |
1 |
1 |
1 |
15 |
4ビット単位で圧縮した①〜⑧のデータを元のバイト単位に並べ直す。
データの並びが変わるので、バイトの数値もそれに応じて再計算する。
バイト |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
数値 |
nバイト |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
103 |
n+1バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
n+2バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
n+3バイト |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
18 |
n+4バイト |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
31 |
本題に戻ってそれを踏まえた上で、この処理を適用すると以下のようになる。
まずは4バイト毎に上に4ビット圧縮フラグ群のバイトを挿入していく。
バイト |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
数値 |
1バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
2バイト |
48バイト圧縮フラグ |
47バイト圧縮フラグ |
46バイト圧縮フラグ |
45バイト圧縮フラグ |
44バイト圧縮フラグ |
43バイト圧縮フラグ |
42バイト圧縮フラグ |
41バイト圧縮フラグ |
56 |
3バイト |
32バイト圧縮フラグ |
31バイト圧縮フラグ |
30バイト圧縮フラグ |
29バイト圧縮フラグ |
28バイト圧縮フラグ |
27バイト圧縮フラグ |
26バイト圧縮フラグ |
25バイト圧縮フラグ |
255 |
4バイト |
16バイト圧縮フラグ |
15バイト圧縮フラグ |
14バイト圧縮フラグ |
13バイト圧縮フラグ |
12バイト圧縮フラグ |
11バイト圧縮フラグ |
10バイト圧縮フラグ |
9バイト圧縮フラグ |
31 |
5バイト |
40バイト圧縮フラグ |
39バイト圧縮フラグ |
38バイト圧縮フラグ |
37バイト圧縮フラグ |
36バイト圧縮フラグ |
35バイト圧縮フラグ |
34バイト圧縮フラグ |
33バイト圧縮フラグ |
82 |
6バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
7バイト |
56バイト圧縮フラグ |
55バイト圧縮フラグ |
54バイト圧縮フラグ |
53バイト圧縮フラグ |
52バイト圧縮フラグ |
51バイト圧縮フラグ |
50バイト圧縮フラグ |
49バイト圧縮フラグ |
47 |
8バイト |
24バイト圧縮フラグ |
23バイト圧縮フラグ |
22バイト圧縮フラグ |
21バイト圧縮フラグ |
20バイト圧縮フラグ |
19バイト圧縮フラグ |
18バイト圧縮フラグ |
17バイト圧縮フラグ |
208 |
9バイト |
チェックサム1 128 |
チェックサム1 64 |
チェックサム1 32 |
チェックサム1 16 |
チェックサム1 8 |
チェックサム1 4 |
チェックサム1 2 |
チェックサム1 1 |
193 |
10バイト |
チェックサム2 128 |
チェックサム2 64 |
チェックサム2 32 |
チェックサム2 16 |
チェックサム2 8 |
チェックサム2 4 |
チェックサム2 2 |
チェックサム2 1 |
85 |
11バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
12バイト |
名前コード1 128 |
名前コード1 64 |
名前コード1 32 |
名前コード1 16 |
名前コード1 8 |
名前コード1 4 |
名前コード1 2 |
名前コード1 1 |
239 |
13バイト |
名前コード2 128 |
名前コード2 64 |
名前コード2 32 |
名前コード2 16 |
名前コード2 8 |
名前コード2 4 |
名前コード2 2 |
名前コード2 1 |
217 |
14バイト |
名前コード3 128 |
名前コード3 64 |
名前コード3 32 |
名前コード3 16 |
名前コード3 8 |
名前コード3 4 |
名前コード3 2 |
名前コード3 1 |
237 |
15バイト |
名前コード4 128 |
名前コード4 64 |
名前コード4 32 |
名前コード4 16 |
名前コード4 8 |
名前コード4 4 |
名前コード4 2 |
名前コード4 1 |
253 |
16バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
17バイト |
名前コード5 128 |
名前コード5 64 |
名前コード5 32 |
名前コード5 16 |
名前コード5 8 |
名前コード5 4 |
名前コード5 2 |
名前コード5 1 |
200 |
18バイト |
未使用 |
両打 |
左打 |
左投 |
メインポジション8 |
メインポジション4 |
メインポジション2 |
メインポジション1 |
1 |
19バイト |
パワー128 |
パワー64 |
パワー32 |
パワー16 |
パワー8 |
パワー4 |
パワー2 |
パワー1 |
120 |
20バイト |
ミートカーソル8 |
ミートカーソル4 |
ミートカーソル2 |
ミートカーソル1 |
肩力8 |
肩力4 |
肩力2 |
肩力1 |
125 |
21バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
22バイト |
走力8 |
走力4 |
走力2 |
走力1 |
守力8 |
守力4 |
守力2 |
守力1 |
102 |
23バイト |
打撃フォーム8 |
打撃フォーム4 |
打撃フォーム2 |
打撃フォーム1 |
エラー率8 |
エラー率4 |
エラー率2 |
エラー率1 |
6 |
24バイト |
背番号128 |
背番号64 |
背番号32 |
背番号16 |
背番号8 |
背番号4 |
背番号2 |
背番号1 |
53 |
25バイト |
球速128 |
球速64 |
球速32 |
球速16 |
球速8 |
球速4 |
球速2 |
球速1 |
153 |
26バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
27バイト |
コントロール128 |
コントロール64 |
コントロール32 |
コントロール16 |
コントロール8 |
コントロール4 |
コントロール2 |
コントロール1 |
210 |
28バイト |
スタミナ128 |
スタミナ64 |
スタミナ32 |
スタミナ16 |
スタミナ8 |
スタミナ4 |
スタミナ2 |
スタミナ1 |
29 |
29バイト |
投球フォーム8 |
投球フォーム4 |
投球フォーム2 |
投球フォーム1 |
スライダー8 |
スライダー4 |
スライダー2 |
スライダー1 |
133 |
30バイト |
カーブ8 |
カーブ4 |
カーブ2 |
カーブ1 |
フォーク8 |
フォーク4 |
フォーク2 |
フォーク1 |
87 |
31バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
32バイト |
Hシンカー |
Sスライダー |
Hスライダー |
スローカーブ |
フォーク系特殊変化球8 |
フォーク系特殊変化球4 |
フォーク系特殊変化球2 |
フォーク系特殊変化球1 |
98 |
33バイト |
体当たり |
ヘッドスライディング |
バント◎ |
バント○ |
パワーヒッター |
アベレージヒッター |
キャッチャー◎ |
キャッチャー○ |
32 |
34バイト |
ケガ× |
ケガ○ |
三振 |
ムード× |
ムード○ |
連打○ |
粘り打ち |
固め打ち |
32 |
35バイト |
短気 |
打球反応○ |
けん制○ |
スロースターター |
尻上がり |
投手ムラッ気 |
回復× |
回復○ |
4 |
36バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
37バイト |
逃げ球 |
打たれ弱い |
打たれ強い |
ノビ× |
ノビ○ |
キレ× |
キレ○ |
負け運 |
193 |
38バイト |
未使用 |
低め○ |
闘志 |
ポーカーフェイス |
重い球 |
クイック× |
クイック○ |
リリース○ |
16 |
39バイト |
超特殊能力128 |
超特殊能力64 |
超特殊能力32 |
超特殊能力16 |
超特殊能力8 |
超特殊能力4 |
超特殊能力2 |
超特殊能力1 |
9 |
40バイト |
肌8 |
肌4 |
肌2 |
肌1 |
チーム8 |
チーム4 |
チーム2 |
チーム1 |
10 |
41バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
42バイト |
出身32768 |
出身16384 |
出身8192 |
出身4096 |
出身2048 |
出身1024 |
出身512 |
出身256 |
2 |
43バイト |
出身128 |
出身64 |
出身32 |
出身16 |
出身8 |
出身4 |
出身2 |
出身1 |
1 |
44バイト |
製造番号128 |
製造番号64 |
製造番号32 |
製造番号16 |
製造番号8 |
製造番号4 |
製造番号2 |
製造番号1 |
1 |
45バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
4ビット圧縮フラグを立てるルールに従い、各4ビット単位に対応した4ビット圧縮フラグを立てる。
4ビット圧縮フラグを立てて、フラグの合計でバイトの数値を求める。
バイト |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
数値 |
1バイト |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
255 |
2バイト |
48バイト圧縮フラグ |
47バイト圧縮フラグ |
46バイト圧縮フラグ |
45バイト圧縮フラグ |
44バイト圧縮フラグ |
43バイト圧縮フラグ |
42バイト圧縮フラグ |
41バイト圧縮フラグ |
56 |
3バイト |
32バイト圧縮フラグ |
31バイト圧縮フラグ |
30バイト圧縮フラグ |
29バイト圧縮フラグ |
28バイト圧縮フラグ |
27バイト圧縮フラグ |
26バイト圧縮フラグ |
25バイト圧縮フラグ |
255 |
4バイト |
16バイト圧縮フラグ |
15バイト圧縮フラグ |
14バイト圧縮フラグ |
13バイト圧縮フラグ |
12バイト圧縮フラグ |
11バイト圧縮フラグ |
10バイト圧縮フラグ |
9バイト圧縮フラグ |
31 |
5バイト |
40バイト圧縮フラグ |
39バイト圧縮フラグ |
38バイト圧縮フラグ |
37バイト圧縮フラグ |
36バイト圧縮フラグ |
35バイト圧縮フラグ |
34バイト圧縮フラグ |
33バイト圧縮フラグ |
82 |
6バイト |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
247 |
7バイト |
56バイト圧縮フラグ |
55バイト圧縮フラグ |
54バイト圧縮フラグ |
53バイト圧縮フラグ |
52バイト圧縮フラグ |
51バイト圧縮フラグ |
50バイト圧縮フラグ |
49バイト圧縮フラグ |
47 |
8バイト |
24バイト圧縮フラグ |
23バイト圧縮フラグ |
22バイト圧縮フラグ |
21バイト圧縮フラグ |
20バイト圧縮フラグ |
19バイト圧縮フラグ |
18バイト圧縮フラグ |
17バイト圧縮フラグ |
208 |
9バイト |
チェックサム1 128 |
チェックサム1 64 |
チェックサム1 32 |
チェックサム1 16 |
チェックサム1 8 |
チェックサム1 4 |
チェックサム1 2 |
チェックサム1 1 |
193 |
10バイト |
チェックサム2 128 |
チェックサム2 64 |
チェックサム2 32 |
チェックサム2 16 |
チェックサム2 8 |
チェックサム2 4 |
チェックサム2 2 |
チェックサム2 1 |
85 |
11バイト |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
255 |
12バイト |
名前コード1 128 |
名前コード1 64 |
名前コード1 32 |
名前コード1 16 |
名前コード1 8 |
名前コード1 4 |
名前コード1 2 |
名前コード1 1 |
239 |
13バイト |
名前コード2 128 |
名前コード2 64 |
名前コード2 32 |
名前コード2 16 |
名前コード2 8 |
名前コード2 4 |
名前コード2 2 |
名前コード2 1 |
217 |
14バイト |
名前コード3 128 |
名前コード3 64 |
名前コード3 32 |
名前コード3 16 |
名前コード3 8 |
名前コード3 4 |
名前コード3 2 |
名前コード3 1 |
237 |
15バイト |
名前コード4 128 |
名前コード4 64 |
名前コード4 32 |
名前コード4 16 |
名前コード4 8 |
名前コード4 4 |
名前コード4 2 |
名前コード4 1 |
253 |
16バイト |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
251 |
17バイト |
名前コード5 128 |
名前コード5 64 |
名前コード5 32 |
名前コード5 16 |
名前コード5 8 |
名前コード5 4 |
名前コード5 2 |
名前コード5 1 |
200 |
18バイト |
未使用 |
両打 |
左打 |
左投 |
メインポジション8 |
メインポジション4 |
メインポジション2 |
メインポジション1 |
1 |
19バイト |
パワー128 |
パワー64 |
パワー32 |
パワー16 |
パワー8 |
パワー4 |
パワー2 |
パワー1 |
120 |
20バイト |
ミートカーソル8 |
ミートカーソル4 |
ミートカーソル2 |
ミートカーソル1 |
肩力8 |
肩力4 |
肩力2 |
肩力1 |
125 |
21バイト |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
251 |
22バイト |
走力8 |
走力4 |
走力2 |
走力1 |
守力8 |
守力4 |
守力2 |
守力1 |
102 |
23バイト |
打撃フォーム8 |
打撃フォーム4 |
打撃フォーム2 |
打撃フォーム1 |
エラー率8 |
エラー率4 |
エラー率2 |
エラー率1 |
6 |
24バイト |
背番号128 |
背番号64 |
背番号32 |
背番号16 |
背番号8 |
背番号4 |
背番号2 |
背番号1 |
53 |
25バイト |
球速128 |
球速64 |
球速32 |
球速16 |
球速8 |
球速4 |
球速2 |
球速1 |
153 |
26バイト |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
255 |
27バイト |
コントロール128 |
コントロール64 |
コントロール32 |
コントロール16 |
コントロール8 |
コントロール4 |
コントロール2 |
コントロール1 |
210 |
28バイト |
スタミナ128 |
スタミナ64 |
スタミナ32 |
スタミナ16 |
スタミナ8 |
スタミナ4 |
スタミナ2 |
スタミナ1 |
29 |
29バイト |
投球フォーム8 |
投球フォーム4 |
投球フォーム2 |
投球フォーム1 |
スライダー8 |
スライダー4 |
スライダー2 |
スライダー1 |
133 |
30バイト |
カーブ8 |
カーブ4 |
カーブ2 |
カーブ1 |
フォーク8 |
フォーク4 |
フォーク2 |
フォーク1 |
87 |
31バイト |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
151 |
32バイト |
Hシンカー |
Sスライダー |
Hスライダー |
スローカーブ |
フォーク系特殊変化球8 |
フォーク系特殊変化球4 |
フォーク系特殊変化球2 |
フォーク系特殊変化球1 |
98 |
33バイト |
体当たり |
ヘッドスライディング |
バント◎ |
バント○ |
パワーヒッター |
アベレージヒッター |
キャッチャー◎ |
キャッチャー○ |
32 |
34バイト |
ケガ× |
ケガ○ |
三振 |
ムード× |
ムード○ |
連打○ |
粘り打ち |
固め打ち |
32 |
35バイト |
短気 |
打球反応○ |
けん制○ |
スロースターター |
尻上がり |
投手ムラッ気 |
回復× |
回復○ |
4 |
36バイト |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
167 |
37バイト |
逃げ球 |
打たれ弱い |
打たれ強い |
ノビ× |
ノビ○ |
キレ× |
キレ○ |
負け運 |
193 |
38バイト |
未使用 |
低め○ |
闘志 |
ポーカーフェイス |
重い球 |
クイック× |
クイック○ |
リリース○ |
16 |
39バイト |
超特殊能力128 |
超特殊能力64 |
超特殊能力32 |
超特殊能力16 |
超特殊能力8 |
超特殊能力4 |
超特殊能力2 |
超特殊能力1 |
9 |
40バイト |
肌8 |
肌4 |
肌2 |
肌1 |
チーム8 |
チーム4 |
チーム2 |
チーム1 |
10 |
41バイト |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
42 |
42バイト |
出身32768 |
出身16384 |
出身8192 |
出身4096 |
出身2048 |
出身1024 |
出身512 |
出身256 |
2 |
43バイト |
出身128 |
出身64 |
出身32 |
出身16 |
出身8 |
出身4 |
出身2 |
出身1 |
1 |
44バイト |
製造番号128 |
製造番号64 |
製造番号32 |
製造番号16 |
製造番号8 |
製造番号4 |
製造番号2 |
製造番号1 |
1 |
45バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
4ビット単位で⑧の方に後ろ詰めして圧縮する。
データの並びが変わるので、バイトの数値もそれに応じて再計算する。
バイト |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
数値 |
1バイト |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
255 |
2バイト |
48バイト圧縮フラグ |
47バイト圧縮フラグ |
46バイト圧縮フラグ |
45バイト圧縮フラグ |
44バイト圧縮フラグ |
43バイト圧縮フラグ |
42バイト圧縮フラグ |
41バイト圧縮フラグ |
56 |
3バイト |
32バイト圧縮フラグ |
31バイト圧縮フラグ |
30バイト圧縮フラグ |
29バイト圧縮フラグ |
28バイト圧縮フラグ |
27バイト圧縮フラグ |
26バイト圧縮フラグ |
25バイト圧縮フラグ |
255 |
4バイト |
16バイト圧縮フラグ |
15バイト圧縮フラグ |
14バイト圧縮フラグ |
13バイト圧縮フラグ |
12バイト圧縮フラグ |
11バイト圧縮フラグ |
10バイト圧縮フラグ |
9バイト圧縮フラグ |
31 |
5バイト |
40バイト圧縮フラグ |
39バイト圧縮フラグ |
38バイト圧縮フラグ |
37バイト圧縮フラグ |
36バイト圧縮フラグ |
35バイト圧縮フラグ |
34バイト圧縮フラグ |
33バイト圧縮フラグ |
82 |
6バイト |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
247 |
7バイト |
0 |
0 |
0 |
0 |
56バイト圧縮フラグ |
55バイト圧縮フラグ |
54バイト圧縮フラグ |
53バイト圧縮フラグ |
2 |
8バイト |
52バイト圧縮フラグ |
51バイト圧縮フラグ |
50バイト圧縮フラグ |
49バイト圧縮フラグ |
24バイト圧縮フラグ |
23バイト圧縮フラグ |
22バイト圧縮フラグ |
21バイト圧縮フラグ |
253 |
9バイト |
チェックサム1 128 |
チェックサム1 64 |
チェックサム1 32 |
チェックサム1 16 |
チェックサム1 8 |
チェックサム1 4 |
チェックサム1 2 |
チェックサム1 1 |
193 |
10バイト |
チェックサム2 128 |
チェックサム2 64 |
チェックサム2 32 |
チェックサム2 16 |
チェックサム2 8 |
チェックサム2 4 |
チェックサム2 2 |
チェックサム2 1 |
85 |
11バイト |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
255 |
12バイト |
名前コード1 128 |
名前コード1 64 |
名前コード1 32 |
名前コード1 16 |
名前コード1 8 |
名前コード1 4 |
名前コード1 2 |
名前コード1 1 |
239 |
13バイト |
名前コード2 128 |
名前コード2 64 |
名前コード2 32 |
名前コード2 16 |
名前コード2 8 |
名前コード2 4 |
名前コード2 2 |
名前コード2 1 |
217 |
14バイト |
名前コード3 128 |
名前コード3 64 |
名前コード3 32 |
名前コード3 16 |
名前コード3 8 |
名前コード3 4 |
名前コード3 2 |
名前コード3 1 |
237 |
15バイト |
名前コード4 128 |
名前コード4 64 |
名前コード4 32 |
名前コード4 16 |
名前コード4 8 |
名前コード4 4 |
名前コード4 2 |
名前コード4 1 |
253 |
16バイト |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
251 |
17バイト |
0 |
0 |
0 |
0 |
名前コード5 128 |
名前コード5 64 |
名前コード5 32 |
名前コード5 16 |
12 |
18バイト |
名前コード5 8 |
名前コード5 4 |
名前コード5 2 |
名前コード5 1 |
メインポジション8 |
メインポジション4 |
メインポジション2 |
メインポジション1 |
129 |
19バイト |
パワー128 |
パワー64 |
パワー32 |
パワー16 |
パワー8 |
パワー4 |
パワー2 |
パワー1 |
120 |
20バイト |
ミートカーソル8 |
ミートカーソル4 |
ミートカーソル2 |
ミートカーソル1 |
肩力8 |
肩力4 |
肩力2 |
肩力1 |
125 |
21バイト |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
251 |
22バイト |
0 |
0 |
0 |
0 |
走力8 |
走力4 |
走力2 |
走力1 |
6 |
23バイト |
守力8 |
守力4 |
守力2 |
守力1 |
エラー率8 |
エラー率4 |
エラー率2 |
エラー率1 |
102 |
24バイト |
背番号128 |
背番号64 |
背番号32 |
背番号16 |
背番号8 |
背番号4 |
背番号2 |
背番号1 |
53 |
25バイト |
球速128 |
球速64 |
球速32 |
球速16 |
球速8 |
球速4 |
球速2 |
球速1 |
153 |
26バイト |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
255 |
27バイト |
コントロール128 |
コントロール64 |
コントロール32 |
コントロール16 |
コントロール8 |
コントロール4 |
コントロール2 |
コントロール1 |
210 |
28バイト |
スタミナ128 |
スタミナ64 |
スタミナ32 |
スタミナ16 |
スタミナ8 |
スタミナ4 |
スタミナ2 |
スタミナ1 |
29 |
29バイト |
投球フォーム8 |
投球フォーム4 |
投球フォーム2 |
投球フォーム1 |
スライダー8 |
スライダー4 |
スライダー2 |
スライダー1 |
133 |
30バイト |
カーブ8 |
カーブ4 |
カーブ2 |
カーブ1 |
フォーク8 |
フォーク4 |
フォーク2 |
フォーク1 |
87 |
31バイト |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
151 |
32バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
33バイト |
0 |
0 |
0 |
0 |
Hシンカー |
Sスライダー |
Hスライダー |
スローカーブ |
6 |
34バイト |
フォーク系特殊変化球8 |
フォーク系特殊変化球4 |
フォーク系特殊変化球2 |
フォーク系特殊変化球1 |
体当たり |
ヘッドスライディング |
バント◎ |
バント○ |
34 |
35バイト |
ケガ× |
ケガ○ |
三振 |
ムード× |
尻上がり |
投手ムラッ気 |
回復× |
回復○ |
36 |
36バイト |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
167 |
37バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
38バイト |
0 |
0 |
0 |
0 |
逃げ球 |
打たれ弱い |
打たれ強い |
ノビ× |
12 |
39バイト |
ノビ○ |
キレ× |
キレ○ |
負け運 |
未使用 |
低め○ |
闘志 |
ポーカーフェイス |
17 |
40バイト |
超特殊能力8 |
超特殊能力4 |
超特殊能力2 |
超特殊能力1 |
チーム8 |
チーム4 |
チーム2 |
チーム1 |
154 |
41バイト |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
42 |
42バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
43バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
44バイト |
0 |
0 |
0 |
0 |
出身2048 |
出身1024 |
出身512 |
出身256 |
2 |
45バイト |
出身8 |
出身4 |
出身2 |
出身1 |
製造番号8 |
製造番号4 |
製造番号2 |
製造番号1 |
17 |
バイト圧縮2
4ビット圧縮によりバイト単位で0の部分が発生するので、再度数値が0になったバイトは省き、その分上に詰めていく。
ここではバイト圧縮フラグとチェックサムがあるバイトが、4ビット圧縮処理により数値が0になったところも圧縮する。
バイト |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
数値 |
1バイト |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
255 |
2バイト |
48バイト圧縮フラグ |
47バイト圧縮フラグ |
46バイト圧縮フラグ |
45バイト圧縮フラグ |
44バイト圧縮フラグ |
43バイト圧縮フラグ |
42バイト圧縮フラグ |
41バイト圧縮フラグ |
56 |
3バイト |
32バイト圧縮フラグ |
31バイト圧縮フラグ |
30バイト圧縮フラグ |
29バイト圧縮フラグ |
28バイト圧縮フラグ |
27バイト圧縮フラグ |
26バイト圧縮フラグ |
25バイト圧縮フラグ |
255 |
4バイト |
16バイト圧縮フラグ |
15バイト圧縮フラグ |
14バイト圧縮フラグ |
13バイト圧縮フラグ |
12バイト圧縮フラグ |
11バイト圧縮フラグ |
10バイト圧縮フラグ |
9バイト圧縮フラグ |
31 |
5バイト |
40バイト圧縮フラグ |
39バイト圧縮フラグ |
38バイト圧縮フラグ |
37バイト圧縮フラグ |
36バイト圧縮フラグ |
35バイト圧縮フラグ |
34バイト圧縮フラグ |
33バイト圧縮フラグ |
82 |
6バイト |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
247 |
7バイト |
0 |
0 |
0 |
0 |
56バイト圧縮フラグ |
55バイト圧縮フラグ |
54バイト圧縮フラグ |
53バイト圧縮フラグ |
2 |
8バイト |
52バイト圧縮フラグ |
51バイト圧縮フラグ |
50バイト圧縮フラグ |
49バイト圧縮フラグ |
24バイト圧縮フラグ |
23バイト圧縮フラグ |
22バイト圧縮フラグ |
21バイト圧縮フラグ |
253 |
9バイト |
チェックサム1 128 |
チェックサム1 64 |
チェックサム1 32 |
チェックサム1 16 |
チェックサム1 8 |
チェックサム1 4 |
チェックサム1 2 |
チェックサム1 1 |
193 |
10バイト |
チェックサム2 128 |
チェックサム2 64 |
チェックサム2 32 |
チェックサム2 16 |
チェックサム2 8 |
チェックサム2 4 |
チェックサム2 2 |
チェックサム2 1 |
85 |
11バイト |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
255 |
12バイト |
名前コード1 128 |
名前コード1 64 |
名前コード1 32 |
名前コード1 16 |
名前コード1 8 |
名前コード1 4 |
名前コード1 2 |
名前コード1 1 |
239 |
13バイト |
名前コード2 128 |
名前コード2 64 |
名前コード2 32 |
名前コード2 16 |
名前コード2 8 |
名前コード2 4 |
名前コード2 2 |
名前コード2 1 |
217 |
14バイト |
名前コード3 128 |
名前コード3 64 |
名前コード3 32 |
名前コード3 16 |
名前コード3 8 |
名前コード3 4 |
名前コード3 2 |
名前コード3 1 |
237 |
15バイト |
名前コード4 128 |
名前コード4 64 |
名前コード4 32 |
名前コード4 16 |
名前コード4 8 |
名前コード4 4 |
名前コード4 2 |
名前コード4 1 |
253 |
16バイト |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
251 |
17バイト |
0 |
0 |
0 |
0 |
名前コード5 128 |
名前コード5 64 |
名前コード5 32 |
名前コード5 16 |
12 |
18バイト |
名前コード5 8 |
名前コード5 4 |
名前コード5 2 |
名前コード5 1 |
メインポジション8 |
メインポジション4 |
メインポジション2 |
メインポジション1 |
129 |
19バイト |
パワー128 |
パワー64 |
パワー32 |
パワー16 |
パワー8 |
パワー4 |
パワー2 |
パワー1 |
120 |
20バイト |
ミートカーソル8 |
ミートカーソル4 |
ミートカーソル2 |
ミートカーソル1 |
肩力8 |
肩力4 |
肩力2 |
肩力1 |
125 |
21バイト |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
251 |
22バイト |
0 |
0 |
0 |
0 |
走力8 |
走力4 |
走力2 |
走力1 |
6 |
23バイト |
守力8 |
守力4 |
守力2 |
守力1 |
エラー率8 |
エラー率4 |
エラー率2 |
エラー率1 |
102 |
24バイト |
背番号128 |
背番号64 |
背番号32 |
背番号16 |
背番号8 |
背番号4 |
背番号2 |
背番号1 |
53 |
25バイト |
球速128 |
球速64 |
球速32 |
球速16 |
球速8 |
球速4 |
球速2 |
球速1 |
153 |
26バイト |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
255 |
27バイト |
コントロール128 |
コントロール64 |
コントロール32 |
コントロール16 |
コントロール8 |
コントロール4 |
コントロール2 |
コントロール1 |
210 |
28バイト |
スタミナ128 |
スタミナ64 |
スタミナ32 |
スタミナ16 |
スタミナ8 |
スタミナ4 |
スタミナ2 |
スタミナ1 |
29 |
29バイト |
投球フォーム8 |
投球フォーム4 |
投球フォーム2 |
投球フォーム1 |
スライダー8 |
スライダー4 |
スライダー2 |
スライダー1 |
133 |
30バイト |
カーブ8 |
カーブ4 |
カーブ2 |
カーブ1 |
フォーク8 |
フォーク4 |
フォーク2 |
フォーク1 |
87 |
31バイト |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
151 |
32バイト |
0 |
0 |
0 |
0 |
Hシンカー |
Sスライダー |
Hスライダー |
スローカーブ |
6 |
33バイト |
フォーク系特殊変化球8 |
フォーク系特殊変化球4 |
フォーク系特殊変化球2 |
フォーク系特殊変化球1 |
体当たり |
ヘッドスライディング |
バント◎ |
バント○ |
34 |
34バイト |
ケガ× |
ケガ○ |
三振 |
ムード× |
尻上がり |
投手ムラッ気 |
回復× |
回復○ |
36 |
36バイト |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
167 |
36バイト |
0 |
0 |
0 |
0 |
逃げ球 |
打たれ弱い |
打たれ強い |
ノビ× |
12 |
37バイト |
ノビ○ |
キレ× |
キレ○ |
負け運 |
未使用 |
低め○ |
闘志 |
ポーカーフェイス |
17 |
38バイト |
超特殊能力8 |
超特殊能力4 |
超特殊能力2 |
超特殊能力1 |
チーム8 |
チーム4 |
チーム2 |
チーム1 |
154 |
41バイト |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
42 |
40バイト |
0 |
0 |
0 |
0 |
出身2048 |
出身1024 |
出身512 |
出身256 |
2 |
41バイト |
出身8 |
出身4 |
出身2 |
出身1 |
製造番号8 |
製造番号4 |
製造番号2 |
製造番号1 |
17 |
42バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
43バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
44バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
45バイト |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
■4ビット圧縮フラグ群のバイトの値が0になる場合のバイト圧縮2処理
バイト圧縮フラグとチェックサムが含まれている所の4ビット圧縮フラグ群のバイトが0場合、ここで4ビット圧縮フラグ群のバイトも圧縮してしまうと復号時に判断出来なくなってしまうので、4ビット圧縮フラグ群のバイトだけは0であってもバイト圧縮からは除外される。
正規範囲の設定をしていればこの除外処理は発生することはないが、パスワードが弾かれずに入る最低限度の非正規な設定をした場合、作品によっては発生する場合がある。
4ビット圧縮後に以下のようにn+1〜n+4バイト全ての圧縮フラグが0になったとする。
バイト |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
数値 |
nバイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
n+1バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
n+2バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
n+3バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
n+4バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
n+5バイト |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
103 |
n+6バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
n+7バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
n+8バイト |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
18 |
n+9バイト |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
31 |
バイト圧縮2ではnバイトのように4ビット圧縮フラグ群のバイトが0でも残す。
バイト |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
数値 |
nバイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
n+1バイト |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
103 |
n+2バイト |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
n+3バイト |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
18 |
n+4バイト |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
31 |
モザイク化補正
バイト圧縮2で再度圧縮されたバイトに、各バイト毎に決まった数値を必要なバイトの所まで加算していく。
加算する値は モザイク化補正値表を参照。
今回はバイト圧縮2の処理後に有効なバイトが41バイトまであるので、41バイトまで数値を加算していけばよい。
この時加算して出た和が256を超えた場合、Mod256(もしくは-256)して255以内になるよう数値を収める。
補正値を加算してMod256した結果が0になってもここではそのままでよい。
バイト |
補正前数値 |
モザイク化補正値 |
補正後数値 |
1バイト |
255 |
60 |
59 |
2バイト |
56 |
18 |
74 |
3バイト |
255 |
33 |
32 |
4バイト |
31 |
57 |
88 |
5バイト |
82 |
37 |
119 |
6バイト |
247 |
9 |
0 |
7バイト |
2 |
43 |
45 |
8バイト |
253 |
6 |
3 |
9バイト |
193 |
44 |
237 |
10バイト |
85 |
35 |
120 |
11バイト |
255 |
65 |
64 |
12バイト |
239 |
28 |
11 |
13バイト |
217 |
15 |
232 |
14バイト |
237 |
66 |
47 |
15バイト |
253 |
58 |
55 |
16バイト |
251 |
32 |
27 |
17バイト |
12 |
31 |
43 |
18バイト |
129 |
5 |
134 |
19バイト |
120 |
71 |
191 |
20バイト |
125 |
69 |
194 |
21バイト |
251 |
1 |
252 |
22バイト |
6 |
22 |
28 |
23バイト |
102 |
67 |
169 |
24バイト |
53 |
34 |
87 |
25バイト |
153 |
16 |
169 |
26バイト |
255 |
36 |
35 |
27バイト |
210 |
42 |
252 |
28バイト |
29 |
62 |
91 |
29バイト |
133 |
75 |
208 |
30バイト |
87 |
13 |
100 |
31バイト |
151 |
10 |
161 |
32バイト |
6 |
39 |
45 |
33バイト |
34 |
64 |
98 |
34バイト |
36 |
11 |
47 |
35バイト |
167 |
40 |
207 |
36バイト |
12 |
41 |
53 |
37バイト |
17 |
59 |
76 |
38バイト |
154 |
19 |
173 |
39バイト |
42 |
61 |
103 |
40バイト |
2 |
72 |
74 |
41バイト |
17 |
46 |
63 |
文字データに変換
モザイク化補正をしたバイトを3バイト単位で6ビットのデータ4つに変換し、文字用のデータにする。
(8ビット×3=6ビット×4=24ビット)
変換式は
n文字目=mバイト目 Mod 64
n+1文字目=(mバイト目-(mバイト目 Mod 64))/64*16+(m+1バイト目 Mod 16)
n+2文字目=(m+2バイト目-(m+2バイト目 Mod 64))/64*16+(m+1バイト目-(m+1バイト目 Mod 16))/16
n+3文字目=m+2バイト目 Mod 64
nとmはそれぞれ1から始まってnは4ずつ進み、mは3ずつ進んで変換していく。
変換のイメージ図としては、以下のような感じになる。
例として、以下のようなデータが3バイトあったとする。
バイト |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
数値 |
nバイト |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
217 |
n+1バイト |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
15 |
n+2バイト |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
55 |
上記の変換式に従い、変換する。
文字目 |
32 |
16 |
8 |
4 |
2 |
1 |
数値 |
m文字目 |
0 |
1 |
1 |
0 |
0 |
1 |
25 |
m+1文字目 |
1 |
1 |
1 |
1 |
1 |
1 |
63 |
m+2文字目 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
m+3文字目 |
1 |
1 |
0 |
1 |
1 |
1 |
55 |
それを踏まえて、上記の変換式で各バイトを変換していくと以下の結果になる。
文字数 |
32 |
16 |
8 |
4 |
2 |
1 |
数値 |
1文字目 |
1 |
1 |
1 |
0 |
1 |
1 |
59 |
2文字目 |
0 |
0 |
1 |
0 |
1 |
0 |
10 |
3文字目 |
0 |
0 |
0 |
1 |
0 |
0 |
4 |
4文字目 |
1 |
0 |
0 |
0 |
0 |
0 |
32 |
5文字目 |
0 |
1 |
1 |
0 |
0 |
0 |
24 |
6文字目 |
0 |
1 |
0 |
1 |
1 |
1 |
23 |
7文字目 |
0 |
0 |
0 |
1 |
1 |
1 |
7 |
8文字目 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
9文字目 |
1 |
0 |
1 |
1 |
0 |
1 |
45 |
10文字目 |
0 |
0 |
0 |
0 |
1 |
1 |
3 |
11文字目 |
1 |
1 |
0 |
0 |
0 |
0 |
48 |
12文字目 |
1 |
0 |
1 |
1 |
0 |
1 |
45 |
13文字目 |
1 |
1 |
1 |
0 |
0 |
0 |
56 |
14文字目 |
0 |
1 |
0 |
0 |
0 |
0 |
16 |
15文字目 |
0 |
0 |
0 |
1 |
0 |
0 |
4 |
16文字目 |
0 |
0 |
1 |
0 |
1 |
1 |
11 |
17文字目 |
1 |
0 |
1 |
0 |
0 |
0 |
40 |
18文字目 |
1 |
1 |
1 |
1 |
1 |
1 |
63 |
19文字目 |
0 |
0 |
0 |
0 |
1 |
0 |
2 |
20文字目 |
1 |
1 |
0 |
1 |
1 |
1 |
55 |
21文字目 |
0 |
1 |
1 |
0 |
1 |
1 |
27 |
22文字目 |
0 |
0 |
1 |
0 |
1 |
1 |
11 |
23文字目 |
1 |
0 |
0 |
0 |
1 |
0 |
34 |
24文字目 |
0 |
0 |
0 |
1 |
1 |
0 |
6 |
25文字目 |
1 |
1 |
1 |
1 |
1 |
1 |
63 |
26文字目 |
1 |
0 |
0 |
0 |
1 |
0 |
34 |
27文字目 |
1 |
1 |
1 |
1 |
0 |
0 |
60 |
28文字目 |
1 |
1 |
1 |
1 |
0 |
0 |
60 |
29文字目 |
0 |
1 |
1 |
1 |
0 |
0 |
28 |
30文字目 |
0 |
0 |
1 |
0 |
0 |
1 |
9 |
31文字目 |
0 |
1 |
1 |
0 |
1 |
0 |
26 |
32文字目 |
0 |
1 |
0 |
1 |
1 |
1 |
23 |
33文字目 |
1 |
0 |
1 |
0 |
0 |
1 |
41 |
34文字目 |
1 |
0 |
0 |
0 |
1 |
1 |
35 |
35文字目 |
1 |
1 |
0 |
0 |
1 |
0 |
50 |
36文字目 |
1 |
1 |
1 |
1 |
0 |
0 |
60 |
37文字目 |
0 |
1 |
1 |
0 |
1 |
1 |
27 |
38文字目 |
0 |
1 |
0 |
0 |
0 |
0 |
16 |
39文字目 |
0 |
1 |
1 |
1 |
0 |
1 |
29 |
40文字目 |
1 |
0 |
0 |
1 |
0 |
0 |
36 |
41文字目 |
1 |
0 |
0 |
0 |
0 |
1 |
33 |
42文字目 |
1 |
0 |
1 |
1 |
0 |
1 |
45 |
43文字目 |
0 |
1 |
0 |
0 |
1 |
0 |
18 |
44文字目 |
1 |
0 |
0 |
0 |
1 |
0 |
34 |
45文字目 |
1 |
0 |
1 |
1 |
1 |
1 |
47 |
46文字目 |
0 |
0 |
1 |
1 |
1 |
1 |
15 |
47文字目 |
0 |
0 |
1 |
1 |
0 |
0 |
12 |
48文字目 |
1 |
1 |
1 |
0 |
1 |
1 |
59 |
49文字目 |
0 |
0 |
1 |
1 |
0 |
0 |
12 |
50文字目 |
0 |
1 |
1 |
1 |
0 |
1 |
29 |
51文字目 |
0 |
1 |
1 |
0 |
1 |
0 |
26 |
52文字目 |
1 |
0 |
0 |
1 |
1 |
1 |
39 |
53文字目 |
0 |
0 |
1 |
0 |
1 |
0 |
10 |
54文字目 |
0 |
1 |
1 |
1 |
1 |
1 |
31 |
55文字目 |
0 |
0 |
0 |
0 |
1 |
1 |
3 |
数値を文字に換算する
最後に変換して得られた6ビットの数値を 文字換算表で文字に換算していく。
パワポケ5の文字換算は第二世代なので、第二世代文字換算を使用して換算していくと以下の結果になる。
文字数 |
数値 |
文字 |
1文字目 |
59 |
し |
2文字目 |
10 |
ぞ |
3文字目 |
4 |
ゆ |
4文字目 |
32 |
ぜ |
5文字目 |
24 |
た |
6文字目 |
23 |
め |
7文字目 |
7 |
か |
8文字目 |
0 |
ご |
9文字目 |
45 |
い |
10文字目 |
3 |
ぎ |
11文字目 |
48 |
が |
12文字目 |
45 |
い |
13文字目 |
56 |
ひ |
14文字目 |
16 |
ま |
15文字目 |
4 |
ゆ |
16文字目 |
11 |
ふ |
17文字目 |
40 |
ん |
18文字目 |
63 |
べ |
19文字目 |
2 |
む |
20文字目 |
55 |
ぶ |
21文字目 |
27 |
じ |
22文字目 |
11 |
ふ |
23文字目 |
34 |
り |
24文字目 |
6 |
ろ |
25文字目 |
63 |
べ |
26文字目 |
34 |
り |
27文字目 |
60 |
づ |
28文字目 |
60 |
づ |
29文字目 |
28 |
ぼ |
30文字目 |
9 |
も |
31文字目 |
26 |
れ |
32文字目 |
23 |
め |
33文字目 |
41 |
せ |
34文字目 |
35 |
る |
35文字目 |
50 |
え |
36文字目 |
60 |
づ |
37文字目 |
27 |
じ |
38文字目 |
16 |
ま |
39文字目 |
29 |
す |
40文字目 |
36 |
げ |
41文字目 |
33 |
さ |
42文字目 |
45 |
い |
43文字目 |
18 |
ば |
44文字目 |
34 |
り |
45文字目 |
47 |
の |
46文字目 |
15 |
み |
47文字目 |
12 |
そ |
48文字目 |
59 |
ど |
49文字目 |
12 |
そ |
50文字目 |
29 |
す |
51文字目 |
26 |
れ |
52文字目 |
39 |
び |
53文字目 |
10 |
ぞ |
54文字目 |
31 |
ら |
55文字目 |
3 |
ぎ |
パスワードの完成
いつもの見やすいような配置に並べ替えると、
しぞゆ ぜため かごい ぎがい ひまゆ ふんべ むぶじ
ふりろ べりづ づぼも れめせ るえづ じます げさい
ばりの みそど そすれ びぞら ぎ
これで最初に設定した田西◎の選手パスワードの完成となる。
その他補足
- 以上のような処理をポケ5以降は行って生成しているため、特殊能力たくさんで最強選手のような物を作ろうとすると、パスワードがポケ4以前よりも長くなる傾向にあり、パスワードを表示出来る文字数枠を超えてしまう可能性があるので注意しよう。
はみ出た分が当然入力出来ないので、パスワードはどうやっても入らない。
|