It all makes sense.
In graphic computing, vertex coordinates (or in this case, texture coordinates) are multiplied by transformation matrices to apply standard 3D (and by extension, 2D too) transformation. By multiplying by a transformation matrix you'd be
-Adding a translation vector (an X-Y vertex is MOVED summing an x'-y' vector).
-Summing a rotation component (these are trigonometric operations over the X-Y vector )
-Multiplying a scale vector (an X-Y vertex is SCALED by multiplying a x'-y' vector)
I wouldn't be surprised if the game supports tags to rotate the text too
I guess vertex coordinates are (as you can see in the GE debugger) floats in this game because (as you can also see in the GE debugger) PSP transformation matrices use floating point components.
Now what is really great here is the fact that, in this game, those transformations can be tweaked straight from the text using those tags Lyan discovered (They couldn't be more useful!). Now, if I were the manager behind the project, I'd go with Lyan's solution, since IMHO all texts look great as they are now, and it would be a matter of stretching only the ones that are too long.
My solution would affect all characters in the game. The width table is located in OVERLAY_MO4UMD.BIN; at offset 0x2c46b8 you'll find an array of 16 bit integers with 158 elements; those are the pixels that will take each latin character (they are in the same order than in the font). You could, for example, try to reduce one, or two pixel each. And yes, that's just the allowed space for each character, so reducing it won't stretch them. The actual difference on screen would obviously depend on the matrix transformation. For example, if you add one pixel, and then do something like @s(2.00), the final increment would be 2 pixels (this is just theory, though). Anyway, hopefully all this takes care of text overun
~Sky
In graphic computing, vertex coordinates (or in this case, texture coordinates) are multiplied by transformation matrices to apply standard 3D (and by extension, 2D too) transformation. By multiplying by a transformation matrix you'd be
-Adding a translation vector (an X-Y vertex is MOVED summing an x'-y' vector).
-Summing a rotation component (these are trigonometric operations over the X-Y vector )
-Multiplying a scale vector (an X-Y vertex is SCALED by multiplying a x'-y' vector)
I wouldn't be surprised if the game supports tags to rotate the text too
I guess vertex coordinates are (as you can see in the GE debugger) floats in this game because (as you can also see in the GE debugger) PSP transformation matrices use floating point components.
Now what is really great here is the fact that, in this game, those transformations can be tweaked straight from the text using those tags Lyan discovered (They couldn't be more useful!). Now, if I were the manager behind the project, I'd go with Lyan's solution, since IMHO all texts look great as they are now, and it would be a matter of stretching only the ones that are too long.
My solution would affect all characters in the game. The width table is located in OVERLAY_MO4UMD.BIN; at offset 0x2c46b8 you'll find an array of 16 bit integers with 158 elements; those are the pixels that will take each latin character (they are in the same order than in the font). You could, for example, try to reduce one, or two pixel each. And yes, that's just the allowed space for each character, so reducing it won't stretch them. The actual difference on screen would obviously depend on the matrix transformation. For example, if you add one pixel, and then do something like @s(2.00), the final increment would be 2 pixels (this is just theory, though). Anyway, hopefully all this takes care of text overun
~Sky