I've noticed that Morrowind doesn't have a built in "select random line of dialogue" function like the later games. This makes adding new general rumors a bit challenging, since many rumors are determined by specific speaker or location, and when there are random topics you can't insert new ones without first editing the chance of the others appearing. So, if I wanted to add new rumors based on events that the player took part in, and I wanted anyone (or large groups of generic NPCs, like Legion members, for instance) to be able to say the rumor (barring nolore exceptions), what is the generally accepted "best practice"?
The approach I'm considering is adding a new script and a global called "SayMyRumor" (for example) that controls whether an NPC says one of my rumors or a default rumor. The script would look something like this -- excuse my meta code:
begin somescript short RumorCheck if not in menu AND RumorCheck == 1 if random number from 1-100 <= 5 set SayMyRumor to 1 else set SayMyRumor to 0 end if set RumorCheck to 0end if if in dialogue AND RumorCheck == 0 set RumorCheck to 1endif stop somescript
This script should hopefully be resource light, and will grant a 5% chance for the next NPC I talk to to say one of my rumors. (My rumors would be placed relatively high in the topic and have SayMyRumor == 1 as a condition.)
So... is there a better way to go about this? What are some potential drawbacks that I'm not seeing? Is 5% too high?