Main Structure


Here you’ll find the structure of the Main part from AC:WW.

NOTE 1: #

EUR, USA and JPN have a special character encoding, which i marked with the Datatype WWChar. For more about it, look at the Character Encoding part here.

Structures #

EUR_USA Main Struct
Offset Datatype Size Content
0x0 - 0x15FDF   0x15FE0 Main Save Size
       
0x0 - 0x1 uint16_t 0x2 See Identifier
0x2 - 0x3 uint16_t 0x2 Town ID
0x4 - 0xB WWChar 0x8 Town Name
0xC - 0x2297 Player_Struct 0x228C Player 1
0x2298 - 0x4523 Player_Struct 0x228C Player 2
0x4524 - 0x67AF Player_Struct 0x228C Player 3
0x67B0 - 0x8A3B Player_Struct 0x228C Player 4
0x8A3C - 0x913B Villager_Struct 0x700 Villager 1
0x913C - 0x983B Villager_Struct 0x700 Villager 2
0x983C - 0x9F3B Villager_Struct 0x700 Villager 3
0x9F3C - 0xA63B Villager_Struct 0x700 Villager 4
0xA63C - 0xAD3B Villager_Struct 0x700 Villager 5
0xAD3C - 0xB43B Villager_Struct 0x700 Villager 6
0xB43C - 0xBB3B Villager_Struct 0x700 Villager 7
0xBB3C - 0xC23B Villager_Struct 0x700 Villager 8
0xC23C - 0xC32F uint8_t 0xF4 Unknown 1
0xC330 - 0xC353 uint8_t 0x24 36 Acres
0xC354 - 0xE353 uint16_t 0x2000 4096 Town Map Items
0xE354 - 0xE553 Bit Indexes 0x200 4096 Buried Item bits
0xE554 - 0xE554 uint8_t 0x1 Grasstype
0xE555 - 0xE557 uint8_t 0x3 Unknown 2
0xE558 - 0xFAF8 House_Struct 0x15A1 House Data
JPN Main Struct
Offset Datatype Size Content
0x0 - 0x12223   0x12224 Main Save Size
       
0x0 - 0x1 uint16_t 0x2 See Identifier
0x2 - 0x3 uint16_t 0x2 Town ID
0x4 - 0x9 WWChar 0x6 Town Name
0xA - 0xB uint8_t 0x2 Unknown 1
0xC - 0x1D1B Player_Struct 0x1D10 Player 1
0x1D1C - 0x3A2B Player_Struct 0x1D10 Player 2
0x3A2C - 0x573B Player_Struct 0x1D10 Player 3
0x573C - 0x744B Player_Struct 0x1D10 Player 4
0x744C - 0x7A0B Villager_Struct 0x5C0 Villager 1
0x7A0C - 0x7FCB Villager_Struct 0x5C0 Villager 2
0x7FCC - 0x858B Villager_Struct 0x5C0 Villager 3
0x858C - 0x8B4B Villager_Struct 0x5C0 Villager 4
0x8B4C - 0x910B Villager_Struct 0x5C0 Villager 5
0x910C - 0x96CB Villager_Struct 0x5C0 Villager 6
0x96CC - 0x9C8B Villager_Struct 0x5C0 Villager 7
0x9C8C - 0xA24B Villager_Struct 0x5C0 Villager 8
0xA24C - 0xA32B uint8_t 0xE0 Unknown 2
0xA32C - 0xA34F uint8_t 0x24 36 Acres
0xA350 - 0xC34F uint16_t 0x2000 4096 Town Map Items
0xC350 - 0xC54F Bit Indexes 0x200 4096 Buried Item bits
0xC550 - 0xC550 uint8_t 0x1 Grasstype
0xC551 - 0xC553 uint8_t 0x3 Unknown 3
0xC554 - 0xDAF4 House_Struct 0x15A1 House Data
KOR Main Struct
Offset Datatype Size Content
0x0 - 0x173FB   0x173FC Main Save Size
       
0x0 - 0x1 uint16_t 0x2 See Identifier
0x2 - 0x3 uint16_t 0x2 Town ID
0x4 - 0xF char16_t 0xC Town Name
0x10 - 0x13 uint8_t 0x4 Unknown 1
0x14 - 0x24AF Player_Struct 0x249C Player 1
0x24B0 - 0x494B Player_Struct 0x249C Player 2
0x494C - 0x6DE7 Player_Struct 0x249C Player 3
0x6DE8 - 0x9283 Player_Struct 0x249C Player 4
0x9284 - 0x9A6F Villager_Struct 0x7EC Villager 1
0x9A70 - 0xA25B Villager_Struct 0x7EC Villager 2
0xA25C - 0xAA47 Villager_Struct 0x7EC Villager 3
0xAA48 - 0xB233 Villager_Struct 0x7EC Villager 4
0xB234 - 0xBA1F Villager_Struct 0x7EC Villager 5
0xBA20 - 0xC20B Villager_Struct 0x7EC Villager 6
0xC20C - 0xC9F7 Villager_Struct 0x7EC Villager 7
0xC9F8 - 0xD1E3 Villager_Struct 0x7EC Villager 8
0xD1E4 - 0xD303 uint8_t 0x120 Unknown 1
0xD304 - 0xD327 uint8_t 0x24 36 Acres
0xD328 - 0xF327 uint16_t 0x2000 4096 Town Map Items
0xF328 - 0xF527 Bit Indexes 0x200 4096 Buried Item bits
0xF528 - 0xF528 uint8_t 0x1 Grasstype
0xF529 - 0xF52B uint8_t 0x3 Unknown 3
0xF52C - 0x10ACC House_Struct 0x15A1 House Data

Identifier #

Byte 0x0 seems to contain a identifier or something like that in the savefile, which is listed below.

Byte 0x1 seems to be always 0x0.

Identifier Region
0xC5 Europe
0x8A USA
0x32 Japanese
0x32 Korean

Acres #

Editing Acres can potential damage your savefile, so it’s important to know what you are doing.

Information will follow of what breaks the savefile.

Buried Bits #

Each of the 4096 Town Map Items has one bit. Per byte, there are 8 items, so -> 4096 / 8 –> 512.. which is 0x200 in hex.

If the bit is 1, then it is buried, else unburied.

Grass-Snowtype #

There exist 3 types of pattern for the grass / snow.

Grass / Snow Value
Triangle / Square 0x0
Circle / Star 0x1
Square / Hexagon 0x2