karashiiro / TextToTalk

Chat TTS plugin for Dalamud. Has support for triggers/exclusions, several TTS providers, and more!
MIT License
47 stars 30 forks source link

TTT sometimes stops working and game freezes #41

Closed Quezako closed 3 years ago

Quezako commented 3 years ago

Hello,

I've uninstalled the TTT plugin and removed the settings, but I still have the problem. Sometimes, after on sentence read successfully, the TTT plugin stops working. Then , if I try to disable it or to exit the game, the game freezes.

I never had the problem before, but I've switched to Windows 11 recently, on a new computer. I'm using the standard Windows voices. It seems to happen when I alt-tab on Chrome.

EDIT: When I type /xldebug and I open log window in verbose mod, then I launch a dialog, I have the following message: "Unhandled SetStringChunkType: 16" a lot of times, then the same message with 29, 19, 41, 19, etc.

EDIT 2: after uninstalling all plugins and installing TTT fresh, it seems to be more stable now. So I suppose that there was a conflict with another plugin or setting.

Ahegaoa commented 3 years ago

Same thing happened to me and I am using Windows 10 and other dalamud plugins, also using testing version 1.8.1 of TTT.

ryankhart commented 3 years ago

Oh, I'm so glad it's not just me. Windows 10 here. I also have other plugins installed as well. 33 of them to be exact.

My steps to reproduce the game crash are the exact same. At some point, usually when progressing through many cutscenes without much break, TTT stops working at all as if it were not installed or enabled. Previously when it did this, I could solve it by disabling it and reenabling it from the installed plugins tab. But now, it just crashes the whole game.

It sounds to me like there's a plugin incompatibility. If it proves helpful, here is a list of all of my plugins, by their directory name in my "installedPlugins" directory. I generated this list by using these 2 lines of Python: import os and print(*os.listdir(), sep='\n')

AdventurerInNeed
AutoVisor
BetterPartyFinder
BrowserHost.Plugin
ChatBubbles
Dalamud.LoadingImage
Dalamud.RichPresence
EasyEyes
FCNameColor
FPSPlugin
GentleTouch
GoodMemory
ItemSearchPlugin
MacroRecursion
MapLinker
MarketBoardPlugin
MiniCactpotSolver
NamePlateDebuffs
NoSoliciting
orchestrion
PeepingTom
PennyPincher
PingPlugin
PlayerTrack
PriceCheck
Quest Map
RezPls
SideHUDPlugin
SimpleTweaksPlugin
SlideCast
SoundSetter
TextToTalk
TheGreatSeparator
Tourist
WondrousTailsSolver
karashiiro commented 3 years ago

Could any of you try and isolate the issue? Like removing half of your plugins besides TextToTalk, then seeing if it goes away, and then removing half of the remainder if it doesn't, etc. until the plugin is identified. None of those plugins seem like they would have anything to do with this unless they're messing with threads in a way that affects other plugins for some reason.

ryankhart commented 3 years ago

Ok, I've backed up my installedPlugins directory and deleted the first half, except for GoodMemory. I can't live without that one. :D

I'll give an update here to report how it goes.

ryankhart commented 3 years ago

Ok, it happened again.

Something I noticed and will test to confirm in the future is whether or not the existence of "..." in the dialogue causes this issue. The last dialogue that worked had a "..." in it. I don't know if that's a silly thing to test, but I don't know how to code works, so I don't want to entirely rule it out.

Next, I'll restore my backed-up plugins and delete the other half, save for the TTT plugin.

karashiiro commented 3 years ago

That could be an issue? No clue, but I just tossed a replacement for that (… -> ...) into v1.8.2 anyways.

ryankhart commented 3 years ago

Ok, I have more info, and I'm able to reproduce the problem with a single dialogue every time with no other plugins installed.

It happens when I talk to an NPC who says nothing but "...". And I checked in the chat window whether it was an ellipsis (…) or just 3 periods, and it seemed to be three periods because they were each 3 separate characters when selecting.

The point that I'm at in the MSQ is just before accepting the MSQ quest called "An Ending to Mark a New Beginning". And the NPC that triggers the problem by saying "..." is Thancred.

And lastly, another important part: I was experiencing this problem when using Amazon Polly. So I tested whether or not I can reproduce the bug with system voices instead of Amazon Polly, and I could not reproduce the bug with the above steps. So, it appears to be exclusively an issue with Amazon Polly when being fed text that only contains 3 periods ("..."). At least that's my impression of my testing here.

Edit: Oh weird. The OP here was using the "standard Windows" system voices and still had the problem. I'm just realizing this as I'm rereading it. I'll try a few more tests to see if I can reproduce it with system voices.

karashiiro commented 3 years ago

Is it specifically when there is only three periods, or is it in any text with three periods? It sounds like the API might be rejecting the input when the text is unspeakable.

ryankhart commented 3 years ago

Ok, this is getting strange. First to answer your question. While Amazon Polly was enabled, yes, TTT only stopped working when the dialogue was nothing but 3 periods.

However, when I switched to system voices, I had no problems with all system voices except for Microsoft Zira Desktop (EN). With that voice, it seems that all dialogue gave this error dialog box shown below in two separate instances. But this seems like an entirely different issue to me.

I still have yet to reproduce, on system voices, the silent issue of TTT stopping from working while the game continues to run fine until you (a) try to disable the plugin or (b) try to exit the game normally.

image image

karashiiro commented 3 years ago

Let me know if you're able to reproduce it - in the meantime, I added a fix for some of those issues that skips TTS for unspeakable inputs. That should fix issues with Polly and Zira Desktop, since "..." just won't be queued at all.

ryankhart commented 3 years ago

To be clear, while I was testing system voices, for this issue, Zira Desktop gave the above error for all dialogue, not just dialogue that only contained "...".

ryankhart commented 3 years ago

The latest test build of 1.8.2 fixes the Amazon Polly issue where NPCs who only say "..." cause TTT to stop working! Thanks for the update on that!

The Zira Desktop system voice issue still persists, although that might just be something funky that is unique to my system and is also entirely avoidable because there are plenty of alternative voices to choose from.

Originally, I thought I had to wait until 1.8.2 got merged into the official repository. So I stepped away for a while. When I came back and it still wasn't merged, I thought I would attempt to download the zip file you submitted and manually place those files in my installedPlugins directory. It worked and was simpler than I expected.

I also suspect that I may have hijacked @Quezako's issue thread here because he reported this issue on system voices, but that uninstalling other plugins worked. So it remains to be seen if this issue is resolved for him yet.

Quezako commented 3 years ago

Yes, since I've uninstalled everything then put back plugins one by one and only activated the ones I really need, everything is fine now!

Le mer. 11 août 2021 à 01:12, Ryan Hart @.***> a écrit :

The latest test build of 1.8.2 fixes the Amazon Polly issue where NPCs who only say "..." cause TTT to stop working! Thanks for the update on that!

The Zira Desktop system voice issue still persists, although that might just be something funky that is unique to my system and is also entirely avoidable because there are plenty of alternative voices to choose from.

Originally, I thought I had to wait until 1.8.2 got merged into the official repository. So I stepped away for a while. When I came back and it still wasn't merged, I thought I would attempt to download the zip file you submitted and manually place those files in my installedPlugins directory. It worked and was simpler than I expected.

I also suspect that I may have hijacked @Quezako https://github.com/Quezako's issue thread here because he reported this issue on system voices, but that uninstalling other plugins worked. So it remains to be seen if this issue is resolved for him yet.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/karashiiro/TextToTalk/issues/41#issuecomment-896372123, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAYENFAJZ6FGNWTVAFJQGDT4GW57ANCNFSM5BWS64DA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email .