Changes

2,113 bytes added ,  12 January
complete DataBlocks documentation
Line 316: Line 316:  
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
!  BlkID
+
!  BlkID !!  Size !!  Command needed !!  Description
!  Size
  −
!  Command needed
  −
!  Description
   
|-
 
|-
| 0x1
+
| 0x1 || 0x1 || [[ACTU:GetCommonInfo|GetCommonInfo]] || Number of accounts
| 0x1
  −
| [[ACTU:GetCommonInfo|GetCommonInfo]]
  −
| Number of accounts
   
|-
 
|-
| 0x2
+
| 0x2 || 0x1 || [[ACTU:GetCommonInfo|GetCommonInfo]] || Current account slot
| 0x1
  −
| [[ACTU:GetCommonInfo|GetCommonInfo]]
  −
| Current account slot
   
|-
 
|-
| 0x3
+
| 0x3 || 0x1 || [[ACTU:GetCommonInfo|GetCommonInfo]] || Default account slot
| 0x1
  −
| [[ACTU:GetCommonInfo|GetCommonInfo]]
  −
| Default account slot
   
|-
 
|-
| 0x4
+
| 0x4 || 0x8 || [[ACTU:GetCommonInfo|GetCommonInfo]] || Difference betwwen server time and device time (in nanoseconds)
| 0x8
  −
| [[ACTU:GetCommonInfo|GetCommonInfo]]
  −
| ?
   
|-
 
|-
| 0x5
+
| 0x5 || 0x4 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || PersistentId
| 0x4
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| PersistentId
   
|-
 
|-
| 0x6
+
| 0x6 || 0x8 || [[ACTU:GetCommonInfo|GetCommonInfo]]/[[ACTU:GetAccountDataBlock|GetAccountInfo]] || CommonTransferableIdBase on GetCommonInfo / TransferableIdBase on GetAccountInfo
| 0x8
  −
| [[ACTU:GetCommonInfo|GetCommonInfo]]/[[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| CommonTransferableIdBase on GetCommonInfo / TransferableIdBase on GetAccountInfo
   
|-
 
|-
| 0x7
+
| 0x7 || 0x60 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || [[Mii#Mii_format|MiiData]]
| 0x60
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| [[Mii#Mii_format|MiiData]]
   
|-
 
|-
| 0x8
+
| 0x8 || 0x11 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || AccountId (ASCII NULL-terminated Nintendo Network ID)
| 0x11
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| AccountId (ASCII NUL-terminated Nintendo Network ID)
   
|-
 
|-
| 0x9
+
| 0x9 || 0x101 || [[ACTU:AcquireAccountInfo|AcquireAccountInfo]] || Mail address
| 0x101
  −
| AcquireAccountInfo
  −
| Mail address
   
|-
 
|-
| 0xA
+
| 0xA || 0x4 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || Birthdate
| 0x4
+
{| class="wikitable" border="1"
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| Birthday {u16 year; u8 month; u8 day;}
   
|-
 
|-
| 0xB
+
! Offset !! Size !! Description
| 0x3
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| ASCII NUL-terminated Country Name
   
|-
 
|-
| 0xC
+
| 0x0 || 0x2 || Year
| 0x4
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| PrincipalId
   
|-
 
|-
| 0xE
+
| 0x2 || 0x1 || Month
| 0x1
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| IsPasswordCacheEnabled
   
|-
 
|-
| 0xF
+
| 0x3 || 0x1 || Day
| 0x1
+
|}
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| Does nothing?
   
|-
 
|-
| 0x11
+
| 0xB || 0x3 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || ASCII NULL-terminated Country Name
| 0xA0
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| struct{u32 PersistentID; u32 padding; u64 TransferableIDBase; u8[0x60] MiiData; char16_t[0xB] MachinUserName?; char[0x11] AccountID; u8 padding; struct{u16 year; u8 month; u8 day;}Birthday; u32 PrincipalID;}
   
|-
 
|-
| 0x12
+
| 0xC || 0x4 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || PrincipalId
| 0x4
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| ?
   
|-
 
|-
| 0x13
+
| 0xE || 0x1 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || IsPasswordCacheEnabled
| 0x1
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| Gender
   
|-
 
|-
| 0x14
+
| 0xF || 0x1 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || Does not return anything.
| 0x1
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| LastAuthenticationResult
   
|-
 
|-
| 0x15
+
| 0x11 || 0xA0 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] ||
| 0x11
+
{| class="wikitable" border="1"
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| AssignedAccountId (ASCII NUL-terminated Nintendo Network ID)
   
|-
 
|-
| 0x16
+
! Offset !! Size !! Description
| 0x1
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| ParentalControlSlotNo
   
|-
 
|-
| 0x17
+
| 0x0 || 0x4 || u32 PersistentID
| 0x4
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| SimpleAddressId ([[Config_Savegame#CountryInfo|CountryInfo]])
   
|-
 
|-
| 0x19
+
| 0x4 || 0x4 || padding
| 0x8
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| UtcOffset
   
|-
 
|-
| 0x1A
+
| 0x8 || 0x8 || u64 TransferableIDBase
| 0x1
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| IsCommited
   
|-
 
|-
| 0x1B
+
| 0x10 || 0x60 || [[Mii#Mii_format|Mii]]
| 0x16
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| MiiName (NUL-terminated UTF-16 Mii name)
   
|-
 
|-
| 0x1C
+
| 0x70 || (10 + 1) * 2 || 10-character UTF-16 Mii Display Name
| 0x11
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| NfsPassword
   
|-
 
|-
| 0x1D
+
| 0x86 || 0x11 || ASCII NULL-terminated NNID Account ID (username)
| 0x1
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| Bool: if EciVirtualAccount has a value
   
|-
 
|-
| 0x1E
+
| 0x97 || 1 || padding
| 0x41
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| TimeZoneId (ASCII Time Zone Location)
   
|-
 
|-
| 0x1F
+
| 0x98 || 0x4 || Birthdate
| 0x1
+
{| class="wikitable" border="1"
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| IsMiiUpdated
   
|-
 
|-
| 0x20
+
! Offset !! Size !! Description
| 0x1
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| IsMailAddressValidated
   
|-
 
|-
| 0x21
+
| 0x0 || 0x2 || Year
| 0x4C
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| ?
   
|-
 
|-
| 0x24
+
| 0x2 || 0x1 || Month
| 0x1
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| IsServerAccountDeleted
   
|-
 
|-
| 0x25
+
| 0x3 || 0x1 || Day
| 0x101
+
|}
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| MiiImageUrl (ASCII NUL-terminated URL to account mii image)
   
|-
 
|-
| 0x26
+
| 0x9C || 0x4 || u32, PrincipalID
| 0x4
+
|}
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| AssignedPrincipalId
   
|-
 
|-
| 0x27
+
| 0x12 || 0x4 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] ||
| 0x4
+
{| class="wikitable" border="1"
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| ? (Only accessible with param[1] = 0xFE)
   
|-
 
|-
| 0x28
+
! Offset !! Size !! Description
| 0x24
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| struct{char[0x21] NnasSubDomain?; char[0x3] NnasNfsEnv;}
   
|-
 
|-
| 0x29
+
| 0x0 || 0x1 || NNAS (Nintendo Network Authentication Server) Type
| 0x24
  −
| [[ACTU:GetCommonInfo|GetCommonInfo]]
  −
| struct{char[0x21] DefaultNnasSubDomain?; char[0x3] DefaultNnasNfsEnv;}
   
|-
 
|-
| 0x2A
+
| 0x1 || 0x1 || [[Friend_Services#Server_Types|NFS (Nintendo Friend Server) Type Value]]
| 0x8
  −
| [[ACTU:GetCommonInfo|GetCommonInfo]]
  −
| ?
   
|-
 
|-
| 0x2B
+
| 0x2 || 0x1 || [[Friend_Services#Server_Types|NFS (Nintendo Friend Server) Number]]
| 0x1
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| FpLocalAccountId
   
|-
 
|-
| 0x2C
+
| 0x3 || 0x1 || padding (0)
| 0x2
+
|}
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| Age
   
|-
 
|-
| 0x2D
+
| 0x13 || 0x1 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || Gender
| 0x1
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| IsEnabledReceiveAds
   
|-
 
|-
| 0x2E
+
| 0x14 || 0x1 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || LastAuthenticationResult
| 0x1
  −
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
  −
| IsOffDeviceAccessEnabled
   
|-
 
|-
| 0x2F
+
| 0x15 || 0x11 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || AssignedAccountId (ASCII NULL-terminated Nintendo Network ID)
| 0x4
+
|-
| [[ACTU:GetAccountDataBlock|GetAccountInfo]]
+
| 0x16 || 0x1 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || ParentalControlSlotNo
| [[Cfg:TranslateCountryInfo|Translated]] SimpleAddressId ([[Config_Savegame#CountryInfo|CountryInfo]])
+
|-
 +
| 0x17 || 0x4 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || SimpleAddressId ([[Config_Savegame#CountryInfo|CountryInfo]])
 +
|-
 +
| 0x19 || 0x8 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || UtcOffset
 +
|-
 +
| 0x1A || 0x1 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || IsCommited
 +
|-
 +
| 0x1B || 0x16 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || 10-character UTF-16 Mii Name (10 characters + NULL termination)
 +
|-
 +
| 0x1C || 0x11 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || ASCII NULL-termiinated NfsPassword
 +
|-
 +
| 0x1D || 0x1 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || HasEciVirtualAccount (checks whether EciVirtualAccount has a value)
 +
|-
 +
| 0x1E || 0x41 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || TimeZoneId (ASCII Time Zone Location)
 +
|-
 +
| 0x1F || 0x1 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || IsMiiUpdated
 +
|-
 +
| 0x20 || 0x1 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || IsMailAddressValidated
 +
|-
 +
| 0x21 || 0x4C || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || (Developer units only) Account access token
 +
{| class="wikitable" border="1"
 +
|-
 +
! Offset !! Size !! Description
 +
|-
 +
| 0x0 || 0x1 || Access token state (0: uninitialized, 1: expired, 2: valid)
 +
|-
 +
| 0x1 || 0x21 || ASCII NULL-terminated access token
 +
|-
 +
| 0x22 || 0x29 || ASCII NULL-terminated refresh token
 +
|}
 +
|-
 +
| 0x24 || 0x1 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || IsServerAccountDeleted
 +
|-
 +
| 0x25 || 0x101 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || MiiImageUrl (ASCII NULL-terminated URL to account mii image)
 +
|-
 +
| 0x26 || 0x4 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || AssignedPrincipalId
 +
|-
 +
| 0x27 || 0x4 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || Account Access token state, only accessible with account slot = 0xFE: (0: uninitialized, 1: expired, 2: valid)
 +
|-
 +
| 0x28 || 0x24 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || Account server environment
 +
{| class="wikitable" border="1"
 +
|-
 +
! Offset !! Size !! Description
 +
|-
 +
| 0x0 || 0x21 || ASCII NULL-terminated NNAS subdomain
 +
|-
 +
| 0x21 || 0x3 || [[Friend_Services#Server_Types|NFS (Nintendo Friend Server) Environment]]
 +
|}
 +
|-
 +
| 0x29 || 0x24 || [[ACTU:GetCommonInfo|GetCommonInfo]] || Server environment of default account
 +
{| class="wikitable" border="1"
 +
|-
 +
! Offset !! Size !! Description
 +
|-
 +
| 0x0 || 0x21 || ASCII NULL-terminated NNAS subdomain
 +
|-
 +
| 0x21 || 0x3 || [[Friend_Services#Server_Types|NFS (Nintendo Friend Server) Environment]]
 +
|}
 +
|-
 +
| 0x2A || 0x8 || [[ACTU:GetCommonInfo|GetCommonInfo]] || first 8 bytes of <code>SHA256 ( [[AM:GetDeviceId]]() as 4 little endian bytes + 'A2257354' )</code>
 +
|-
 +
| 0x2B || 0x1 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || FpLocalAccountId (local account ID of [[Friend_Services|friends sysmodule]])
 +
|-
 +
| 0x2C || 0x2 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || Age (calculated using server time, not device time)
 +
|-
 +
| 0x2D || 0x1 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || IsEnabledReceiveAds
 +
|-
 +
| 0x2E || 0x1 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || IsOffDeviceAccessEnabled
 +
|-
 +
| 0x2F || 0x4 || [[ACTU:GetAccountDataBlock|GetAccountInfo]] || [[Cfg:TranslateCountryInfo|Translated]] SimpleAddressId ([[Config_Savegame#CountryInfo|CountryInfo]])
 
|}
 
|}
  
Trusted
462

edits