1) Pointers. These are values the game uses to determine either location or length, usually location. In games with file systems (DS, disc based games...) these are often file level, other games will be ROM level and most of the time it is related to the location the data would be found in memory when things are running. Normally you will end up with a bunch of pointers somewhere but we have seen things have a length value for how long the upcoming section is and then the section and then another length value. Some find them hard to get sorted in their head but they really are just a means by which the console determines the location of the text, I usually like to say think contents page in a book -- increase chapter 1 by 10 pages and everything following is out by 10 pages, remove 5 from 2, add 3 to chapter 4.....
I'm trying to do this now as well, so I'll add a couple things I learned in my struggle to find pointer tables.
For disc-based games like on PSX, the text might not be gathered in one place in a file, and what appears to be a single file when you extract it could be many files merged together. This means file-level might not be what it first appears to be. So in The Legend of Dragoon, dialogue on the first disc is in a file called DRGN21.bin. But this file is actually composed of a bunch of smaller files merged together, and these files are in turn composed of basic files like images and text files! What this means is that the text is scattered in a bunch of different files within the .bin file, and only the smallest level of file contains the text pointer table, while the .bin file and subfiles have tables of the location and size of all the smaller files nested inside them.
The upshot is, if your doing a disc-based game, you may actually have a lot of pointer tables!
On top of this, if you have to change the size of a file containing text when you expand it, you'll also be needing to adjust
their size/location in the file index tables (or whatever the technical name is), and on up the hierarchy as necessary. The advice given to me is to use a file splitter/merger on files like this to break them into the smallest component files necessary, and change the script once you're working with the smallest file type possible. Then you put them all back together at the end with something that will update the index tables as needed. So that's another thing you may need to learn to do, depending on the game.
Finally, if you find something that looks like a pointer table near some text, but it doesn't seem to quite point to the right place, the game may be performing operations on them first, potentially beyond just adding an offset.