Title: Text Editing Post by: Lin on June 27, 2010, 11:25:06 PM Well, I've been messing around with the text engine and there isn't much space to do things. According to the code, a LOT of work is done to get that final address of the dialogue. Apparently there is more than one reference byte to words, which probably means there are several word banks. The only problem is finding what does what. However, as long as we find a word in a word table and something that references it, we can do some math to get the result.
For example, word 0C in word bank 05 is at 0x777D8, which is "pirit". I don't know where else the word is used, but level one puts S in front of it to get the dungeon title. What probably happens is spirit is used so much but it saves space to insert the type of s rather than to use another word. AB in word bank 03 is Level. I'm not really sure how high a byte has to be to be detected as an ASCII character, but I know it's atleast 0x20 (space). It also turns out if the amount of characters goes off the textbox (AKA you went too far without putting 01), the game inserts random graphics that require input for each "character", and some even change the music. This gets me thinking that the other opcodes in the text can control different things, like colored words (obviously), but maybe they can have some sort of events embedded in them. ~Lin Title: Re: Text Editing Post by: Gamma 31 on August 05, 2010, 01:51:50 PM It's pretty wonky how the game gets dialogue. It makes it diffuccult for modders to change it.
Nevermind- I had too many instances of colored text. |