Turned out the game has some "extremely rare" instances of using ASCII characters and numbers in the ROM for Dialog. Which prompted me to try the hard way of finding the characters value.
And after some painful hours of hexediting, talking to the same NPC, and some asking for help to identify some troublesome Kanji, it happened :
The Character Table is complete!!
Strange that the characters' values follow the same convention (ASCII=1 Byte, Shift-JIS=2 Bytes), but with different values from the actual Shift-JIS. Lots of Japanese characters were skipped.
Funny enough, the way the game handles its text is fairly reminiscent to the game I am still working on (same franchise, different game, different platform), the way it using same bytes to color the text, linebreaks, etc.
Now that I can "See" the text in the ROM and figure its Offset, I am now facing the bigger problem: figuring out the Pointer Table.
Adding more to my confusion, the game stores the names of NPCs, Main Characters, Monsters, Items, etc. in very separate "Groups". Even storing the NPC's "Title" (Like Emperor, King, etc) to call them using 2 Bytes as a variable .
The good news, the games uses different yet easy to figure out EndBytes. The bad news, I'll definitely need to change pointers to make the text coherent.
What should I do to find the Pointer Table?