Question About Script Field and Actor Display Name Behavior

Announcements, support questions, and discussion for the Dialogue System.
Post Reply
bmringo
Posts: 11
Joined: Tue May 27, 2025 9:02 am

Question About Script Field and Actor Display Name Behavior

Post by bmringo »

Hi,

I have a quick question about the script field of each Conversation Node.

When I use this script:

`Actor["Chiyoda"].Display_Name = "Miss Chiyoda";`

I can check the condition Actor["Chiyoda"].Display_Name == "Miss Chiyoda" successfully — the condition works fine. However, the subtitle panel still displays "Chiyoda" instead of "Miss Chiyoda."

On the other hand, when I use:

`ChangeActorName("Chiyoda", "Miss Chiyoda");`

both the condition works as expected and the subtitle panel correctly displays "Miss Chiyoda."

In both cases, I applied the script using the three-dot "..." menu to ensure it takes effect properly.

I'm wondering — is this difference in behavior intentional?

Thanks!
User avatar
Tony Li
Posts: 23252
Joined: Thu Jul 18, 2013 1:27 pm

Re: Question About Script Field and Actor Display Name Behavior

Post by Tony Li »

Hi,

Yes, that's the expected behavior. When a conversation starts, it caches the actor's display names and other info so it doesn't need to look up the info again with every dialogue entry. This optimization keeps things running fast, but the downside is that if you change the display name you need to call ChangeActorName() to tell the Dialogue System to update the cache.
Post Reply