10405-CAMBIO_MINI_\[RUBY_USA]
#8
cosarara97 12296
Hola! Esta vez traigo algo "útil" de verdad (nah, en realidad no va a servir de nada xD)
Bueno, resulta que después de investigar bastante he encontrado el lugar en la ram donde esta escrito el tileset en el que está el mini.
La dirección es esta: 0x6010000
Y el primer tile del mini es este: 0x6010040
Para verlo podéis usar el tileset viewer, con char base 0x6010000 y la barra de paleta a la izquierda del todo.

El problema es que estos bytes se actualizan cada frame, así que cambiarlos con wbto no sirve :(

Ah por cierto, también he investigado un poco el OAM, y he encontrado lo siguiente:
Si cuando estamos dentro del camión, abrimos el OAM viewer, encontraremos 3 objetos.
1 - Caja
2 - Caja
3 - Mini player

Sobre cada objeto nos da mas información, pero no da el offset de su casilla en el oam (que es como una tabla)
Y yo he encontrado 2 casillas, la de una caja y la del mini :)

Esta es la casilla del mini (en binario porque así está bit por bit)
--- [OBJ Attribute 0] [OBJ Attribute 1] [OBJ Attribute 2]
--- 00111000 10000000 01110000 10000000 00000000 00001000 ---

Segun esta (no censuréis el link) info, estos bits significan lo siguiente:

OBJ Attribute 0 (R/W)

Bit Expl.
0-7 Y-Coordinate (0-255)
8 Rotation/Scaling Flag (0=Off, 1=On)
When Rotation/Scaling used (Attribute 0, bit 8 set):
9 Double-Size Flag (0=Normal, 1=Double)
When Rotation/Scaling not used (Attribute 0, bit 8 cleared):
9 OBJ Disable (0=Normal, 1=Not displayed)
10-11 OBJ Mode (0=Normal, 1=Semi-Transparent, 2=OBJ Window, 3=Prohibited)
12 OBJ Mosaic (0=Off, 1=On)
13 Colors/Palettes (0=16/16, 1=256/1)
14-15 OBJ Shape (0=Square,1=Horizontal,2=Vertical,3=Prohibited)


OBJ Attribute 1 (R/W)

Bit Expl.
0-8 X-Coordinate (0-511)
When Rotation/Scaling used (Attribute 0, bit 8 set):
9-13 Rotation/Scaling Parameter Selection (0-31)
(Selects one of the 32 Rotation/Scaling Parameters that
can be defined in OAM, for details read next chapter.)
When Rotation/Scaling not used (Attribute 0, bit 8 cleared):
9-11 Not used
12 Horizontal Flip (0=Normal, 1=Mirrored)
13 Vertical Flip (0=Normal, 1=Mirrored)
14-15 OBJ Size (0..3, depends on OBJ Shape, see Attr 0)
Size Square Horizontal Vertical
0 8x8 16x8 8x16
1 16x16 32x8 8x32
2 32x32 32x16 16x32
3 64x64 64x32 32x64

OBJ Attribute 2 (R/W)

Bit Expl.
0-9 Character Name (0-1023=Tile Number)
10-11 Priority relative to BG (0-3; 0=Highest)
12-15 Palette Number (0-15) (Not used in 256 color/1 palette mode)


Mira pongo la casilla otra vez:
--- [OBJ Attribute 0] [OBJ Attribute 1] [OBJ Attribute 2]
--- 00111000 10000000 01110000 10000000 00000000 00001000 ---

Tenemos:
OBJ Attribute 0 - 00111000 10000000
00111000 - Y-Coordinate (0-255)
1 - Rotation/Scaling Flag
0 - Como el anterior es un 1, Double-Size Flag (0=Normal, 1=Double)
00 - OBJ Mode (0=Normal, 1=Semi-Transparent, 2=OBJ Window, 3=Prohibited)
0 - OBJ Mosaic (0=Off, 1=On)
0 - Colors/Palettes (0=16/16, 1=256/1)
00 - OBJ Shape (0=Square,1=Horizontal,2=Vertical,3=Prohibited)


OBJ Attribute 1 - 01110000 10000000
01110000 X-Coordinate (En esto la creo que info es erronea, la X tambien son 8 bits)
1 - Rotation/Scaling Flag
00000 - Rotation/Scaling Parameter Selection (0-31)
______(Selects one of the 32 Rotation/Scaling Parameters that
_______can be defined in OAM, for details read next chapter.)
00 - OBJ Size (0..3, depends on OBJ Shape, see Attr 0)
______Size Square Horizontal Vertical
______0 8x8 16x8 8x16
______1 16x16 32x8 8x32
______2 32x32 32x16 16x32
______3 64x64 64x32 32x64


OBJ Attribute 2 - 00000000 00001000
00000000 00 - Character Name (0-1023=Tile Number)
00 - Priority relative to BG (0-3; 0=Highest)
1000 - Palette Number (0-15) (Not used in 256 color/1 palette mode)


Lógicamente cada uno de los valores que hemos separado hay que convertirlo a decimal o hex según nuestras necesidades, siendo el valor de Y-Coordinate (00111000) 38 en hex y 56 en dec, o el Palette Number (1000) 8 en hex y dec.


Repito que de momento, haber sacado esto no me ha servido de nada, pero seguramente alguien lo pueda usar :)



Bye!


EDIT: Tengo el tema medio creado, mañana por la tarde la acabaré.