Wow, thanks a lot, this has saved me a ton of work designing my own in-game NPC chatting. I had to strip it down quite a bit (borders and everything) in order to make it fit into my game, but that wasn't too hard. One thing that bothered me was how there is actually a fair amount of wasted space in the box - using string_height on the name box for example actually makes the box taller than it needs to be. There is empty space towards the edges of the text box too. I had to do a bit of editing in the code, adding a few +1's and -1's to certain variables in order to make it look "more perfect".
I also ended up editing in my own response control mechanism - via the mouse as opposed to the arrow keys/enter key. I think this would be a useful feature to have in your engine...
I have been having some problems with your string_fit script - it seems to occur whenever I try to add my own line breaks. Whenever I put a "#" into my string, it breaks the line when the textbox is displayed, but it evidently doesn't reset it to the beginning of the line after that - if I put a "#" halfway down one line, the next line will be split up after only taking up half the textbox... and then if I put another "#" in, the allowed text width gets smaller and smaller...
For example, the string
"They covered our mouths so we couldn't scream, then they carried us to this cave and down endless winding tunnels. I don't know where we are or what they are going to do to us...#I never thought that a bit of exploring could turn out like this...#*Johnny's lip quivers*"
(8-pt Trebuchet MS font, no bold or italics, supposed width is 275)
I end up getting line breaks like this:
"They covered our mouths so we couldn't scream, then
they carried us to this cave and down endless winding
tunnels. I don't know where we are or what they are going to do to us...
I never thought that a bit of
exploring could turn out like this...
*Johnny's lip
quivers*"
I would like to be able to split lines of my own accord using the "#" character, but I'm not sure how to modify your script to account for that... I might be able to figure it out sometime but you could probably do it quite a bit easier
All in all, I found this to be a very helpful engine. I'll definitely be mentioning you in the credits...