libSPEC
Pokemon Save Editing Library
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Pages
Data Fields
pk3_box_t Struct Reference

A GBA pokemon's box data. 80 bytes in size. More...

#include <game_gba.h>

Data Fields

struct {
   uint32_t   pid
 
   union {
      uint32_t   ot_fid
 
      struct {
         uint16_t   ot_id
 
         uint16_t   ot_sid
 
      } 
 
   } 
 
   char8_t   nickname [PK3_NICKNAME_LENGTH]
 
   uint16_t   language
 
   char8_t   ot_name [PK3_OT_NAME_LENGTH]
 
   pk3_marking_t   markings
 
   uint16_t   checksum
 
   uint16_t   __pad0__: 16
 
}; 
 Header.
 
union {
   uint8_t   block [4][PK3_BLOCK_SIZE]
 
   struct {
      struct {
         uint16_t   species
 
         uint16_t   held_item
 
         uint32_t   exp
 
         pk3_pp_up_t   pp_up
 
         uint8_t   friendship
 
         uint16_t   __pad0__: 16
 
      } 
 Block A.
 
      struct {
         uint16_t   move [4]
 
         uint8_t   move_pp [4]
 
      } 
 Block B.
 
      struct {
         pk3_effort_t   ev
 
         pk3_contest_t   contest
 
      } 
 Block C.
 
      struct {
         pk3_pokerus_t   pokerus
 
         uint8_t   met_loc
 
         struct {
            uint8_t   level_met: 7
 
            uint8_t   game: 4
 
            uint8_t   pokeball: 4
 
            bool   is_ot_female: 1
 
         } 
 
         union {
            pk3_genes_t   iv
 
            struct {
               uint32_t   __pad0__: 30
 
               bool   is_egg: 1
 
               bool   ability: 1
 
            } 
 
         } 
 
         pk3_ribbon_t   ribbon
 
      } 
 Block D.
 
   } 
 
}; 
 

Detailed Description

A GBA pokemon's box data. 80 bytes in size.

Field Documentation

uint32_t pk3_box_t::pid

Personality Value

uint32_t pk3_box_t::ot_fid

Original Trainer Full ID

uint16_t pk3_box_t::ot_id

Original Trainer ID

uint16_t pk3_box_t::ot_sid

Original Trainer Secret ID

char8_t pk3_box_t::nickname[PK3_NICKNAME_LENGTH]

Pokemon's Nickname

uint16_t pk3_box_t::language

Original Language

char8_t pk3_box_t::ot_name[PK3_OT_NAME_LENGTH]

Original Trainer's Name

pk3_marking_t pk3_box_t::markings

Pokemon's Markings

uint16_t pk3_box_t::checksum

Checksum of all 4 blocks

uint8_t pk3_box_t::block[4][PK3_BLOCK_SIZE]

Raw Block Access

uint16_t pk3_box_t::species

Pokemon Species

uint16_t pk3_box_t::held_item

Held Item ID

uint32_t pk3_box_t::exp

Experience Points

pk3_pp_up_t pk3_box_t::pp_up

Pokemon Move PPUPs

uint8_t pk3_box_t::friendship

Friendship Value / Steps to Hatch

uint16_t pk3_box_t::move[4]

Move ID (4)

uint8_t pk3_box_t::move_pp[4]

Move PP Remaining (4)

pk3_effort_t pk3_box_t::ev

Effort Values

pk3_contest_t pk3_box_t::contest

Contest Stats

pk3_pokerus_t pk3_box_t::pokerus

Poke'R US Virus

uint8_t pk3_box_t::met_loc

Location Met

uint8_t pk3_box_t::level_met

Level Met At

uint8_t pk3_box_t::game

Original Game ID

uint8_t pk3_box_t::pokeball

Pokeball Caught In

bool pk3_box_t::is_ot_female

Original Trainer's Gender

pk3_genes_t pk3_box_t::iv

Pokemon's Individual Values

bool pk3_box_t::is_egg

Is this pokemon an Egg?

bool pk3_box_t::ability

Which of the two possible abilities does this pokemon have?

pk3_ribbon_t pk3_box_t::ribbon

Pokemon's Ribbons