Daggerfall:TEXT.RSC format
The structure of the TEXT.RSC file is trivial. The TEXT.RSC file is nothing more than a Text Record Database; there are no other data elements. In brief, it consists solely of a TextRecordDatabaseHeader element, a TextRecordHeaderList element, and the remainder of the file consists of TextRecord elements.
The file contains no other data, and the TextRecordDatabase structure begins at the file's start (Byte 0). All records conform to the Text Record Format specification.
Example Records
Example from TextRecord #5404:
Greetings, %pcn.[0xfd] You dare much by intruding here.[0xfd] Nevertheless, I will allow you[0xfd] to proceed, provided you prove as[0xfd] perceptive as rumor reports.[0xfd] You may be aware that I am a[0xfd] master of the blade. But what[0xfd] is my other favored weapon?[0xfd] Answer correctly, then arm yourself.[0xfd][0xfe]
Here we see a TextRecord composed of a single TextSubrecord, which contains several centered lines.
Example from TextRecord #200:
Why did the %ra put the letters 'T.G.I.F.' on his boots? To remind himself - Toes Go In First![0xff] Most %ra family trees don't fork![0xff] What do a %ra and a bottle of port have in common? They're both empty from the neck up![0xff] You know, you might be a %ra if you have grease under your toenails![0xff] How do you get a %ra's eyes to sparkle? Put a torch in his ear![0xff] You know, you might be a %ra if it's impossible to see food stains on your armor![0xff] What did the %ra girl say after someone blew in her ear? 'Thanks for the refill!'[0xff] What do you call a %ra with half a brain? Gifted![0xff] Why do %ra women wear undergarments? To keep their ankles warm![0xff] How do you make a %ra laugh on Morndas? Tell him a joke on Fredas![0xff] You know, it only takes one drink to get a %ra drunk. I can't remember if it's the thirteenth or the fourteenth.[0xff] What do you call a basement with more than one %ra? A WHINE cellar![0xff] Over at the %nt, spitting will cost you a copper piece. But you can throw up for free![0xff] What do a smart %ra and an orcoblin have in common? They're both extinct![0xff] You know, lots of people say that %ra kids procrastinate too much. Well, just you wait![0xff] What is a %ra doing when he holds his hands tight over his ears? Trying to holda thought![0xff] How can you tell if a %ra is lying? His lips are moving![0xff] What do you say to a %ra woman to convince her to go to bed with you? Have another ale![0xff] Why is it %cn has the most %ra adventurers, and %cn2 has the most goblins? %cn2 had the first choice![0xff] What is the first thing a %ra woman does in the morning? Walk home![0xff] What did the %ra woman say after she was told she was pregnant? 'Is it mine?'![0xff] What a %ra lacks in intelligence, he makes up for in stupidity.[0xff] I won't eat anything that has intelligent life, but I will happily eat a politician or a %ra.[0xff][0xfe]
In this example, we see several TextSubrecords in this single TextRecord, none of which have any formatting information. When required, the game will select one at random from the list. So, to generate a random joke (%jok), the engine loads TextRecord 200 from TEXT.RSC, then selects a TextSubrecord at random from the list, and then displays it. As seen above, there are %ra (character's race) macros which will need to be resolved when the TextSubrecord is displayed.