Difference between revisions of "Message Data (.MSD) File Format"
Jump to navigation
Jump to search
The following article is currently a Work In Progress and will have more details soon.
Heinermann (talk | contribs) (→Control Codes: more control codes) |
Heinermann (talk | contribs) |
||
Line 16: | Line 16: | ||
== Control Codes == | == Control Codes == | ||
Control codes have their highest bit set (0x8000). | |||
{| class="wikitable" | {| class="wikitable" | ||
! Hex Code !! Parameters !! Description | ! Hex Code !! Parameters !! Description |
Revision as of 17:38, 6 August 2025
Note: This page pertains to Reverse Engineering of Okami File Formats.
Message data. Contains strings accessed by an index.
Format
Offset | Type | Size | Description |
---|---|---|---|
0x00 | uint32_t |
4 | Number of entries. |
0x04 | int64_t[numEntries] |
8 * numEntries | String offsets. |
Immediately followed by the string data. Each character in a string is represented as a uint16_t
.
Control Codes
Control codes have their highest bit set (0x8000).
Hex Code | Parameters | Description |
---|---|---|
8001 |
End dialogue | |
8103 |
char[4] |
Set speaker 1 |
8203 |
char[4] |
Set speaker 2 |
8303 |
Unknown | |
8903 |
Unknown | |
8A01 |
Unknown | |
9401 |
Unknown | |
9502 |
int16_t |
Variable. |
9804 |
uint8_t[4] |
Unknown |
8E01 |
Unknown | |
A001 |
New line | |
A101 |
Clear | |
A301 |
Wait for button input | |
AA01 |
Unknown | |
AC02 |
uint16_t |
Set dialogue type. 1 = Story. 2 = Conversation. |
AD02 |
uint16_t |
Unknown |
B002 |
uint16_t |
Unknown |
B203 |
uint8_t[4] |
Unknown |
B301 |
Black text (reset colour) | |
B602 |
uint16_t |
Set text colour. 1 = red. |
B902 |
uint16_t |
Button action graphic |
BA02 |
Unknown | |
BB01 |
Unknown | |
C103 |
Unknown | |
D201 |
Issun dialogue background (green) | |
D302 |
uint16_t |
Unknown (camera change?) |
D404 |
uint16_t[2] |
Unknown |
DA03 |
uint8_t[4] |
Unknown |
E403 |
uint16_t[2] |
crsignal (??) |
Characters
Note: The Japanese character documentation is incomplete.
Hex Code | English | French | German | Japanese |
---|---|---|---|---|
0000 |
|
|
| |
0001 |
. |
. |
. |
…
|
0002 |
, |
, |
, |
|
0003 |
? |
? |
? |
|
0004 |
! |
! |
! |
?
|
0005 |
( |
( |
( |
!
|
0006 |
) |
) |
) |
「
|
0007 |
* |
* |
* |
」
|
0008 |
/ |
/ |
/ |
『
|
0009 |
" |
" |
" |
』
|
000A |
' |
' |
' |
(
|
000B |
[ |
[ |
[ |
)
|
000C |
] |
] |
] |
|
000D |
0 |
0 |
0 |
|
000E |
1 |
1 |
1 |
•
|
000F |
2 |
2 |
2 |
™
|
0010 |
3 |
3 |
3 |
®
|
0011 |
4 |
4 |
4 |
0
|
0012 |
5 |
5 |
5 |
1
|
0013 |
6 |
6 |
6 |
2
|
0014 |
7 |
7 |
7 |
3
|
0015 |
8 |
8 |
8 |
4
|
0016 |
9 |
9 |
9 |
5
|
0017 |
A |
A |
A |
6
|
0018 |
B |
B |
B |
7
|
0019 |
C |
C |
C |
8
|
001A |
D |
D |
D |
9
|
001B |
E |
E |
E |
|
001C |
F |
F |
F |
|
001D |
G |
G |
G |
|
001E |
H |
H |
H |
|
001F |
I |
I |
I |
|
0020 |
J |
J |
J |
|
0021 |
K |
K |
K |
|
0022 |
L |
L |
L |
|
0023 |
M |
M |
M |
|
0024 |
N |
N |
N |
|
0025 |
O |
O |
O |
|
0026 |
P |
P |
P |
|
0027 |
Q |
Q |
Q |
|
0028 |
R |
R |
R |
|
0029 |
S |
S |
S |
|
002A |
T |
T |
T |
|
002B |
U |
U |
U |
|
002C |
V |
V |
V |
|
002D |
W |
W |
W |
|
002E |
X |
X |
X |
|
002F |
Y |
Y |
Y |
|
0030 |
Z |
Z |
Z |
|
0031 |
a |
a |
a |
|
0032 |
b |
b |
b |
|
0033 |
c |
c |
c |
|
0034 |
d |
d |
d |
|
0035 |
e |
e |
e |
|
0036 |
f |
f |
f |
|
0037 |
g |
g |
g |
|
0038 |
h |
h |
h |
|
0039 |
i |
i |
i |
|
003A |
j |
j |
j |
|
003B |
k |
k |
k |
|
003C |
l |
l |
l |
|
003D |
m |
m |
m |
|
003E |
n |
n |
n |
|
003F |
o |
o |
o |
|
0040 |
p |
p |
p |
|
0041 |
q |
q |
q |
|
0042 |
r |
r |
r |
|
0043 |
s |
s |
s |
|
0044 |
t |
t |
t |
|
0045 |
u |
u |
u |
|
0046 |
v |
v |
v |
|
0047 |
w |
w |
w |
|
0048 |
x |
x |
x |
|
0049 |
y |
y |
y |
|
004A |
z |
z |
z |
|
004B |
× |
× |
× |
|
004C |
, |
, |
, |
|
004D |
ƒ |
ƒ |
ƒ |
|
004E |
„ |
„ |
„ |
|
004F |
… |
… |
… |
|
0050 |
† |
† |
† |
|
0051 |
‡ |
‡ |
‡ |
|
0052 |
^ |
^ |
^ |
|
0053 |
‰ |
‰ |
‰ |
|
0054 |
Š |
Š |
Š |
|
0055 |
< |
< |
< |
|
0056 |
Œ |
Œ |
Œ |
|
0057 |
× |
× |
× |
|
0058 |
‘ |
‘ |
‘ |
|
0059 |
’ |
’ |
’ |
|
005A |
“ |
“ |
“ |
|
005B |
” |
” |
” |
|
005C |
• |
• |
• |
|
005D |
– |
– |
– |
|
005E |
— |
— |
— |
|
005F |
~ |
~ |
~ |
|
0060 |
™ |
™ |
™ |
|
0061 |
š |
š |
š |
|
0062 |
> |
> |
> |
|
0063 |
œ |
œ |
œ |
|
0064 |
× |
× |
× |
|
0065 |
Ÿ |
Ÿ |
Ÿ |
|
0066 |
¡ |
¡ |
¡ |
|
0067 |
¢ |
¢ |
¢ |
|
0068 |
£ |
£ |
£ |
|
0069 |
¤ |
¤ |
¤ |
|
006A |
¥ |
¥ |
¥ |
|
006B |
| |||
006C |
§ |
§ |
§ |
|
006D |
¨ |
¨ |
¨ |
|
006E |
© |
© |
© |
|
006F |
ª |
ª |
ª |
|
0070 |
« |
« |
« |
|
0071 |
¬ |
¬ |
¬ |
|
0072 |
− |
− |
− |
|
0073 |
® |
® |
® |
|
0074 |
‾ |
‾ |
‾ |
|
0075 |
° |
° |
° |
|
0076 |
± |
± |
± |
|
0077 |
² |
² |
² |
|
0078 |
³ |
³ |
³ |
|
0079 |
´ |
´ |
´ |
|
007A |
µ |
µ |
µ |
|
007B |
¶ |
¶ |
¶ |
|
007C |
. |
. |
. |
|
007D |
¸ |
¸ |
¸ |
|
007E |
¹ |
¹ |
¹ |
|
007F |
⁰ |
⁰ |
⁰ |
|
0080 |
» |
» |
» |
|
0081 |
¼ |
¼ |
¼ |
|
0082 |
½ |
½ |
½ |
|
0083 |
¾ |
¾ |
¾ |
|
0084 |
¿ |
¿ |
¿ |
|
0085 |
À |
À |
À |
|
0086 |
Á |
Á |
Á |
|
0087 |
 |
 |
 |
|
0088 |
à |
à |
à |
|
0089 |
Ä |
Ä |
Ä |
|
008A |
Å |
Å |
Å |
|
008B |
Æ |
Æ |
Æ |
|
008C |
Ç |
Ç |
Ç |
|
008D |
È |
È |
È |
|
008E |
É |
É |
É |
|
008F |
Ê |
Ê |
Ê |
|
0090 |
Ë |
Ë |
Ë |
|
0091 |
Ì |
Ì |
Ì |
|
0092 |
Í |
Í |
Í |
|
0093 |
Î |
Î |
Î |
|
0094 |
Ï |
Ï |
Ï |
|
0095 |
Ð |
Ð |
Ð |
|
0096 |
Ñ |
Ñ |
Ñ |
|
0097 |
Ò |
Ò |
Ò |
|
0098 |
Õ |
Õ |
Õ |
|
0099 |
Ô |
Ô |
Ô |
|
009A |
Ó |
Ó |
Ó |
|
009B |
Ö |
Ö |
Ö |
|
009C |
╳ |
╳ |
╳ |
|
009D |
Ø |
Ø |
Ø |
|
009E |
Ù |
Ù |
Ù |
|
009F |
Ú |
Ú |
Ú |
|
00A0 |
Û |
Û |
Û |
|
00A1 |
Ü |
Ü |
Ü |
|
00A2 |
Ý |
Ý |
Ý |
|
00A3 |
Þ |
Þ |
Þ |
|
00A4 |
ß |
ß |
ß |
|
00A5 |
à |
à |
à |
|
00A6 |
á |
á |
á |
|
00A7 |
â |
â |
â |
|
00A8 |
á |
á |
á |
|
00A9 |
ä |
ä |
ä |
|
00AA |
å |
å |
å |
|
00AB |
æ |
æ |
æ |
|
00AC |
ç |
ç |
ç |
|
00AD |
è |
è |
è |
|
00AE |
é |
é |
é |
|
00AF |
ê |
ê |
ê |
|
00B0 |
ë |
ë |
ë |
|
00B1 |
ì |
ì |
ì |
|
00B2 |
í |
í |
í |
|
00B3 |
î |
î |
î |
|
00B4 |
ï |
ï |
ï |
|
00B5 |
ð |
ð |
ð |
|
00B6 |
ñ |
ñ |
ñ |
|
00B7 |
ò |
ò |
ò |
|
00B8 |
ó |
ó |
ó |
|
00B9 |
ô |
ô |
ô |
|
00BA |
õ |
õ |
õ |
|
00BB |
ö |
ö |
ö |
|
00BC |
÷ |
÷ |
÷ |
|
00BD |
ø |
ø |
ø |
|
00BE |
ù |
ù |
ù |
|
00BF |
ú |
ú |
ú |
|
00C0 |
û |
û |
û |
|
00C1 |
ü |
ü |
ü |
|
00C2 |
ý |
ý |
ý |
|
00C3 |
þ |
þ |
þ |
|
00C4 |
ÿ |
ÿ |
ÿ |
|
00C5 |
+ |
+ |
+ |
|
00C6 |
- |
- |
- |
|
00C7 |
◯ |
◯ |
◯ |
|
00C8 |
△ |
△ |
△ |
|
00C9 |
□ |
□ |
□ |
|
00CA |
♪ |
: |
: |
|
00CB |
: |
|
|
|
00CC |
|
_ |
_ |
|
00CD |
_ |
↓ |
: |
|
00CE |
: |
↑ |
|
|
00CF |
~ |
← |
|
|
00D0 |
∞ |
→ |
|
|
00D1 |
→ |
: |
|
|
00D2 |
← |
N/A | N/A |
|
00D3 |
↑ |
N/A | N/A |
|
00D4 |
↓ |
N/A | N/A |
|
00D5 |
|
N/A | N/A |
|
00D6 |
|
N/A | N/A |
|
00D7 |
|
N/A | N/A |
|
00D8 |
|
N/A | N/A |
|
00D9 |
|
N/A | N/A |
|
00DA |
|
N/A | N/A |
|
00DB |
|
N/A | N/A |
|
00DC |
|
N/A | N/A |
|
00DD |
|
N/A | N/A |
|
00DE |
|
N/A | N/A |
|
00DF |
|
N/A | N/A |
|
00E0 |
|
N/A | N/A |
|
Additional Japanese Characters
Note: The Japanese character documentation is incomplete.
Hex Code | Japanese |
---|---|
00E1 |
|
00E2 |
|
00E3 |
|
00E4 |
|
00E5 |
|
00E6 |
|
00E7 |
|
00E8 |
|
00E9 |
|
00EA |
|
00EB |
|
00EC |
|
00ED |
|
00EE |
|
00EF |
|
00F0 |
|
00F1 |
|
00F2 |
|
00F3 |
|
00F4 |
|
00F5 |
|
00F6 |
|
00F7 |
|
00F8 |
|
00F9 |
|
00FA |
|
00FB |
|
00FC |
|
00FD |
|
00FE |
|
00FF |
|
0100 |
|
0101 |
|
0102 |
|
0103 |
|
0104 |
|
0105 |
|
0106 |
|
0107 |
|
0108 |
|
0109 |
|
010A |
|
010B |
|
010C |
|
010D |
|
010E |
|
010F |
|
0110 |
|
0111 |
|
0112 |
|
0113 |
|
0114 |
|
0115 |
|
0116 |
|
0117 |
|
0118 |
|
0119 |
|
011A |
|
011B |
|
011C |
|
011D |
|
011E |
|
011F |
|
0120 |
|
0121 |
|
0122 |
|
0123 |
|
0124 |
|
0125 |
|
0126 |
|
0127 |
|
0128 |
|
0129 |
|
012A |
|
012B |
|
012C |
|
012D |
|
012E |
|
012F |
|
0130 |
|
0131 |
|
0132 |
|
0133 |
|
0134 |
|
0135 |
|
0136 |
|
0137 |
|
0138 |
|
0139 |
|
013A |
|
013B |
|
013C |
|
013D |
|
013E |
|
013F |
|
0140 |
|
0141 |
|
0142 |
|
0143 |
|
0144 |
|
0145 |
|
0146 |
|
0147 |
|
0148 |
|
0149 |
|
014A |
|
014B |
|
014C |
|
014D |
|
014E |
|
014F |
|
0150 |
|
0151 |
|
0152 |
|
0153 |
|
0154 |
|
0155 |
|
0156 |
|
0157 |
|
0158 |
|
0159 |
|
015A |
|
015B |
|
015C |
|
015D |
|
015E |
|
015F |
|
0160 |
|
0161 |
|
0162 |
|
0163 |
|
0164 |
|
0165 |
|
0166 |
|
0167 |
|
0168 |
|
0169 |
|
016A |
|
016B |
|
016C |
|
016D |
|
016E |
|
016F |
|
0170 |
|
0171 |
|
0172 |
|
0173 |
|
0174 |
|
0175 |
|
0176 |
|
0177 |
|
0178 |
|
0179 |
|
017A |
|
017B |
|
017C |
|
017D |
|
017E |
|
017F |
|
0180 |
|
0181 |
|
0182 |
|
0183 |
|
0184 |
|
0185 |
|
0186 |
|
0187 |
|
0188 |
|
0189 |
|
018A |
|
018B |
|
018C |
|
018D |
|
018E |
|
018F |
|
0190 |
|
0191 |
|
0192 |
|
0193 |
|
0194 |
|
0195 |
|
0196 |
|
0197 |
|
0198 |
|
0199 |
|
019A |
|
019B |
|
019C |
|
019D |
|
019E |
|
019F |
|
01A0 |
|
01A1 |
|
01A2 |
|
01A3 |
|
01A4 |
|
01A5 |
|
01A6 |
|
01A7 |
|
01A8 |
|
01A9 |
|
01AA |
|
01AB |
|
01AC |
|
01AD |
|
01AE |
|
01AF |
|
01B0 |
|
01B1 |
|
01B2 |
|
01B3 |
|
01B4 |
|
01B5 |
|
01B6 |
|
01B7 |
|
01B8 |
|
01B9 |
|
01BA |
|
01BB |
|
01BC |
|
01BD |
|
01BE |
|
01BF |
|
01C0 |
|
01C1 |
|
01C2 |
|
01C3 |
|
01C4 |
|
01C5 |
|
01C6 |
|
01C7 |
|
01C8 |
|
01C9 |
|
01CA |
|
01CB |
|
01CC |
|
01CD |
|
01CE |
|
01CF |
|
01D0 |
|
01D1 |
|
01D2 |
|
01D3 |
|
01D4 |
|
01D5 |
|
01D6 |
|
01D7 |
|
01D8 |
|
01D9 |
|
01DA |
|
01DB |
|
01DC |
|
01DD |
|
01DE |
|
01DF |
|
01E0 |
|
01E1 |
|
01E2 |
|
01E3 |
|
01E4 |
|
01E5 |
|
01E6 |
|
01E7 |
|
01E8 |
|
01E9 |
|
01EA |
|
01EB |
|
01EC |
|
01ED |
|
01EE |
|
01EF |
|
01F0 |
|
01F1 |
|
01F2 |
|
01F3 |
|
01F4 |
|
01F5 |
|
01F6 |
|
01F7 |
|
01F8 |
|
01F9 |
|
01FA |
|
01FB |
|
01FC |
|
01FD |
|
01FE |
|
01FF |
|
0200 |
|
0201 |
|
0202 |
|
0203 |
|
0204 |
|
0205 |
|
0206 |
|
0207 |
|
0208 |
|
0209 |
|
020A |
|
020B |
|
020C |
|
020D |
|
020E |
|
020F |
|
0210 |
|
0211 |
|
0212 |
|
0213 |
|
0214 |
|
0215 |
|
0216 |
|
0217 |
|
0218 |
|
0219 |
|
021A |
|
021B |
|
021C |
1
|
021D |
|
021E |
|
021F |
I
|
0220 |
D
|
0221 |
0
|
0222 |
5
|
0223 |
|
0224 |
|
0225 |
|
0226 |
|
0227 |
|
0228 |
|
0229 |
|
022A |
|
022B |
|
022C |
|
022D |
|
022E |
|
022F |
|
0230 |
|
0231 |
|
0232 |
|
0233 |
|
0234 |
|
0235 |
|
0236 |
|
0237 |
|
0238 |
|
0239 |
|
023A |
|
023B |
|
023C |
|
023D |
|
023E |
|
023F |
|
0240 |
|
0241 |
|
0242 |
|
0243 |
|
0244 |
|
0245 |
|
0246 |
|
0247 |
|
0248 |
|
0249 |
|
024A |
|
024B |
|
024C |
|
024D |
|
024E |
|
024F |
|
0250 |
|
0251 |
|
0252 |
|
0253 |
|
0254 |
|
0255 |
|
0256 |
|
0257 |
|
0258 |
|
0259 |
|
025A |
|
025B |
|
025C |
|
025D |
|
025E |
|
025F |
|
0260 |
|
0261 |
|
0262 |
|
0263 |
|
0264 |
|
0265 |
|
0266 |
|
0267 |
|
0268 |
|
0269 |
|
026A |
|
026B |
|
026C |
|
026D |
|
026E |
|
026F |
|
0270 |
|
0271 |
|
0272 |
|
0273 |
|
0274 |
|
0275 |
|
0276 |
|
0277 |
|
0278 |
|
0279 |
|
027A |
|
027B |
|
027C |
|
027D |
|
027E |
|
027F |
|
0280 |
|
0281 |
|
0282 |
|
0283 |
|
0284 |
|
0285 |
|
0286 |
|
0287 |
|
0288 |
|
0289 |
|
028A |
|
028B |
|
028C |
|
028D |
|
028E |
|
028F |
|
0290 |
|
0291 |
|
0292 |
|
0293 |
|
0294 |
|
0295 |
|
0296 |
|
0297 |
|
0298 |
|
0299 |
|
029A |
|
029B |
|
029C |
|
029D |
|
029E |
|
029F |
|
02A0 |
|
02A1 |
|
02A2 |
|
02A3 |
|
02A4 |
|
02A5 |
|
02A6 |
|
02A7 |
|
02A8 |
|
02A9 |
|
02AA |
|
02AB |
|
02AC |
|
02AD |
|
02AE |
|
02AF |
|
02B0 |
|
02B1 |
|
02B2 |
|
02B3 |
|
02B4 |
|
02B5 |
|
02B6 |
|
02B7 |
|
02B8 |
|
02B9 |
|
02BA |
|
02BB |
|
02BC |
|
02BD |
|
02BE |
|
02BF |
|
02C0 |
|
02C1 |
|
02C2 |
|
02C3 |
|
02C4 |
|
02C5 |
|
02C6 |
|
02C7 |
|
02C8 |
|
02C9 |
|
02CA |
|
02CB |
|
02CC |
|
02CD |
②
|
02CE |
|
02CF |
|
02D0 |
|
02D1 |
S
|
02D2 |
T
|
02D3 |
A
|
02D4 |
R
|
02D5 |
|
02D6 |
|
02D7 |
P
|
02D8 |
l
|
02D9 |
a
|
02DA |
y
|
02DB |
t
|
02DC |
i
|
02DD |
o
|
02DE |
n
|
02DF |
E
|
02E0 |
e
|
02E1 |
|
02E2 |
3
|
02E3 |
|
02E4 |
|
02E5 |
|
02E6 |
|
02E7 |
O
|
02E8 |
F
|
02E9 |
|
02EA |
|
02EB |
|
02EC |
|
02ED |
|
02EE |
|
02EF |
|
02F0 |
|
02F1 |
|
02F2 |
M
|
02F3 |
_
|
02F4 |
0
|
02F5 |
2
|
02F6 |
Y
|
02F7 |
(
|
02F8 |
J
|
02F9 |
)
|
02FA |
4
|
02FB |
6
|
02FC |
7
|
02FD |
8
|
02FE |
9
|
02FF |
|
0300 |
|
0301 |
|
0302 |
|
0303 |
|
0304 |
|
0305 |
|
0306 |
|
0307 |
|
0308 |
|
0309 |
|
030A |
|
030B |
|
030C |
|
030D |
|
030E |
|
030F |
Ⅱ
|
0310 |
|
0311 |
|
0312 |
|
0313 |
|
0314 |
|
0315 |
|
0316 |
|
0317 |
|
0318 |
|
0319 |
|
031A |
|
031B |
|
031C |
|
031D |
|
031E |
:
|
031F |
|
0320 |
|
0321 |
|
0322 |
x
|
0323 |
p
|
0324 |
|
0325 |
|
0326 |
|
0327 |
|
0328 |
.
|
0329 |
H
|
032A |
z
|
032B |
|
032C |
|
032D |
|
032E |
|
032F |
|
0330 |
|
0331 |
|
0332 |
/
|
0333 |
|
0334 |
|
0335 |
|
0336 |
|
0337 |
|
0338 |
|
0339 |
|
033A |
|
033B |
|
033C |
|
033D |
|
033E |
|
033F |
|
0340 |
|
0341 |
B
|
0342 |
C
|
0343 |
F
|
0344 |
G
|
0345 |
K
|
0346 |
L
|
0347 |
N
|
0348 |
Q
|
0349 |
U
|
034A |
V
|
034B |
W
|
034C |
X
|
034D |
Z
|
034E |
b
|
034F |
c
|
0350 |
d
|
0351 |
f
|
0352 |
g
|
0353 |
h
|
0354 |
j
|
0355 |
k
|
0356 |
m
|
0357 |
q
|
0358 |
r
|
0359 |
s
|
035A |
u
|
035B |
v
|
035C |
w
|
035D |
,
|
035E |
□
|
035F |
|
0360 |
|
0361 |
|
0362 |
|
0363 |
|
0364 |
|
0365 |
|