Well, the variables being created are named using another variable embedded in that variable name. In this case, I'm using the Elite: Dangerous VA plugin EDDI which generates VA variables for use in VA.
Whenever an NPC sends a message, the event triggers EDDI to generate a variable containing the name of the sender, called
{TXT:EDDI message received sender}
I am using this variable to create a process to assign a unique TTS voice to each individual NPC, randomly assigned from a pool of 22 voices. My process is using a variable called
{TXT:{TXT:EDDI message received sender} voice}
This results in a number of unique variables based on the sender's name. So when an NPC named "System Authority Vessel" sends me a message, VA has a TXT variable created "internally" called
{TXT:System Authority Vessel voice}
the value of which would be "Dave" or "Zira" or "Russell" or whatever, corresponding to the appropriate voice.
All of these variables are only ever addressed in the profile using that embedded variable name. I can get VA to use the same voice for each NPC during the same session but I can't get it to recall the appropriate voice assignment that had been saved to the profile from previous sessions so that whenever {TXT:{TXT:EDDI message received sender} voice} equals {TXT:System Authority Vessel voice}, it uses the same voice it used yesterday or three weeks ago.
7/4 11:53 PM - Albert - Joey
7/4 11:58 PM - Hope City - Zira
7/4 11:59 PM - Hope City - Zira
7/4 11:59 PM - Hope City - Zira
7/4 11:59 PM - System Authority Vessel - Heera
8/4 7:30 PM - Hope City - Kimberly
8/4 7:36 PM - Loke - Salli
8/4 7:37 PM - Sisyphus - Brian
8/4 7:37 PM - Heine the Elder - Joey
As you can see in that table that is generated using the relevant variables, "Hope City" used "Zira" repeatedly during first period of play, but was subsequently assigned the "Kimberly" voice the next day.
When the event occurs, I need VA to check memory for the existence of the variable, which it does and either assigns a voice because its a new iteration of the variable, or re-uses the voice because it had already "seen" the name. I am now trying to figure out how to add a "check the profile and load the value if its there" step as well so that it doesn't assign a new voice in a new gaming session. Isn't that what saving variables values to the profile is for?
Edit: updated with example info