UCC food recipe slots

DS game only γ¨γ‚“γŒγ‚Šγƒœγ‚¦γ‚·γ¨γŠγ—γ‚ƒγ‚Œγͺまほう぀かい The field guide documents the DS game's internals.

data/ucc/names.ofs multi-name slot format: 68-byte sub-records keyed by a 2-byte ingredient pair.

extracted/nds/data/ucc/names.ofs is a RESO container, variant=1, with 192 slots totalling 11,376 bytes. Most slots are simple 68-byte name records; 10 slots are "multi-name" arrays of 68-byte sub-records.

Simple slot (68 bytes)

OffsetSizeTypeField
+0x002u16state_code_lo
+0x022u16state_code_hi (0x0000 for multi)
+0x0464UTF-16-LEname + 0x0000 terminator + NUL pad

Multi-name slot layout

Multi-name slot length is always a multiple of 68 bytes. Sub-record [0] is the category/base name; sub-records [1..N-1] are recipe variants keyed by the 2-byte ingredient-pair code at +0x00. The engine selects a variant by matching the player's ingredient pair against each sub-record's key.

Multi-name slot inventory

Slot Length N sub-records Base name (JP) Variant family
571362γ‚±γƒΌγ‚­γ‚·γƒ§γƒΌγƒˆγ‚±γƒΌγ‚­
6568010シチγƒ₯γƒΌγ‚―γƒͺームシチγƒ₯γƒΌ
664086シチγƒ₯ービーフシチγƒ₯γƒΌ
1011362をむスバニラをむス
1441362パンあんぱん
1453405パンチョコパン
1461362パンクγƒͺームパン
1491362パンジャムパン
1516129γƒ‘γ‚Ήγ‚Ώγ‚«γƒ«γƒœγƒŠγƒΌγƒ©
1526129γƒ‘γ‚Ήγ‚ΏγƒŠγƒγƒͺタン

Total sub-records: 49 (10 base + 39 variants), 3,332 bytes.

Worked example β€” Slot 57 (Cake)

[0] hdr=05000000  name='γ‚±γƒΌγ‚­'           (category root; simple-slot-style header 0x0005)
[1] hdr=55550000  name='γ‚·γƒ§γƒΌγƒˆγ‚±γƒΌγ‚­'   (variant; key = ASCII 'UU' / 0x55,0x55)

Worked example β€” Slot 65 (Cream Stew, alphabet {3,7,8,9})

[0] hdr=05060000  name='シチγƒ₯γƒΌ'           (root)
[1] hdr=37390000  name='γ‚―γƒͺームシチγƒ₯γƒΌ'   key '79'  (= 0x37,0x39)
[2] hdr=39370000  name='γ‚―γƒͺームシチγƒ₯γƒΌ'   key '97'
[3] hdr=37380000  name='γ‚―γƒͺームシチγƒ₯γƒΌ'   key '78'
[4] hdr=38370000  name='γ‚―γƒͺームシチγƒ₯γƒΌ'   key '87'
[5] hdr=38390000  name='γ‚―γƒͺームシチγƒ₯γƒΌ'   key '89'
[6] hdr=39380000  name='γ‚―γƒͺームシチγƒ₯γƒΌ'   key '98'
[7] hdr=33370000  name='γ‚―γƒͺームシチγƒ₯γƒΌ'   key '37'
[8] hdr=33390000  name='γ‚―γƒͺームシチγƒ₯γƒΌ'   key '39'
[9] hdr=33380000  name='γ‚―γƒͺームシチγƒ₯γƒΌ'   key '38'

All 9 variant names are identical JP text; only the 2-byte key differs. The 9 keys cover the non-equal ordered pairs over alphabet {3,7,8,9} where at least one digit is from {3} plus a partner in {7,8,9}, or any ordered pair of distinct digits in {7,8,9}.

Re-emit constraint

The RESO container is reflowed on rebuild β€” per-slot length is recomputed from actual payload. However, within a multi-name slot the engine indexes sub-records at fixed 68-byte strides. Therefore:

All sub-records

Slot 57 β€” Cake / γ‚·γƒ§γƒΌγƒˆγ‚±γƒΌγ‚­

subheader (hex)JPEN
0 05000000 γ‚±γƒΌγ‚­ Cake
1 55550000 γ‚·γƒ§γƒΌγƒˆγ‚±γƒΌγ‚­ Shortcake

Slot 65 β€” Stew / γ‚―γƒͺームシチγƒ₯γƒΌ

subheader (hex)JPEN
0 05060000 シチγƒ₯γƒΌ Stew
1 37390000 γ‚―γƒͺームシチγƒ₯γƒΌ Cream Stew
2 39370000 γ‚―γƒͺームシチγƒ₯γƒΌ Cream Stew
3 37380000 γ‚―γƒͺームシチγƒ₯γƒΌ Cream Stew
4 38370000 γ‚―γƒͺームシチγƒ₯γƒΌ Cream Stew
5 38390000 γ‚―γƒͺームシチγƒ₯γƒΌ Cream Stew
6 39380000 γ‚―γƒͺームシチγƒ₯γƒΌ Cream Stew
7 33370000 γ‚―γƒͺームシチγƒ₯γƒΌ Cream Stew
8 33390000 γ‚―γƒͺームシチγƒ₯γƒΌ Cream Stew
9 33380000 γ‚―γƒͺームシチγƒ₯γƒΌ Cream Stew

Slot 66 β€” Stew / ビーフシチγƒ₯γƒΌ

subheader (hex)JPEN
0 05060000 シチγƒ₯γƒΌ Stew
1 26370000 ビーフシチγƒ₯γƒΌ Beef Stew
2 26390000 ビーフシチγƒ₯γƒΌ Beef Stew
3 26380000 ビーフシチγƒ₯γƒΌ Beef Stew
4 38260000 ビーフシチγƒ₯γƒΌ Beef Stew
5 39260000 ビーフシチγƒ₯γƒΌ Beef Stew

Slot 101 β€” Ice / バニラをむス

subheader (hex)JPEN
0 05060000 γ‚’γ‚€γ‚Ή Ice Cream
1 33330000 バニラをむス Vanilla Ice Cream

Slot 144 β€” Bread / あんぱん

subheader (hex)JPEN
0 05000000 パン Bread
1 2f2f0000 あんぱん Red Bean Bun

Slot 145 β€” Bread / チョコパン

subheader (hex)JPEN
0 05000000 パン Bread
1 30300000 チョコパン Choco Bun
2 36300000 チョコパン Choco Bun
3 30360000 チョコパン Choco Bun
4 36360000 チョコパン Choco Bun

Slot 146 β€” Bread / γ‚―γƒͺームパン

subheader (hex)JPEN
0 05000000 パン Bread
1 32320000 γ‚―γƒͺームパン Cream Bun

Slot 149 β€” Bread / ジャムパン

subheader (hex)JPEN
0 05000000 パン Bread
1 34340000 ジャムパン Jam Bun

Slot 151 β€” Pasta / γ‚«γƒ«γƒœγƒŠγƒΌγƒ©

subheader (hex)JPEN
0 05000000 パスタ Pasta
1 2a280000 γ‚«γƒ«γƒœγƒŠγƒΌγƒ© Carbonara
2 33280000 γ‚«γƒ«γƒœγƒŠγƒΌγƒ© Carbonara
3 35280000 γ‚«γƒ«γƒœγƒŠγƒΌγƒ© Carbonara
4 282a0000 γ‚«γƒ«γƒœγƒŠγƒΌγƒ© Carbonara
5 28330000 γ‚«γƒ«γƒœγƒŠγƒΌγƒ© Carbonara
6 28350000 γ‚«γƒ«γƒœγƒŠγƒΌγƒ© Carbonara
7 2a330000 γ‚«γƒ«γƒœγƒŠγƒΌγƒ© Carbonara
8 332a0000 γ‚«γƒ«γƒœγƒŠγƒΌγƒ© Carbonara

Slot 152 β€” Pasta / γƒŠγƒγƒͺタン

subheader (hex)JPEN
0 05000000 パスタ Pasta
1 27400000 γƒŠγƒγƒͺタン Napolitan
2 40270000 γƒŠγƒγƒͺタン Napolitan
3 28400000 γƒŠγƒγƒͺタン Napolitan
4 40280000 γƒŠγƒγƒͺタン Napolitan
5 27380000 γƒŠγƒγƒͺタン Napolitan
6 38270000 γƒŠγƒγƒͺタン Napolitan
7 28380000 γƒŠγƒγƒͺタン Napolitan
8 38280000 γƒŠγƒγƒͺタン Napolitan

Source