We have released v0.31.0-alpha. It supports Anniversary Edition and includes a brand new optional speech recognition engine: Voice2Json to replace the old Microsoft speech recognition engine.
Note the engine is always optional. If you remove the Engine=Voice2Json line from the configuration file, the Microsoft Speech Recognition Engine will be used. Then you can use the alpha version like the beta version, and you don't need to install Docker for Windows.
The new engine will solve many problems: 1. Microsoft's speech recognition engine is bound to the system locale, making it difficult to make the engine work properly. 2. Lower recognition rate. You have to speak clearly like an announcer to be likely to be recognized. 3. The probability of false triggering is high. After a while, any noise the microphone picks up will trigger a random command.
The new engine does not have the aforementioned drawbacks. For English speakers, it has far better recognition accuracy than Microsoft and is less prone to false triggering.
However, the new engine is not perfect, and some non-English languages may not work at all (Known issues: Chinese and Russian works poorly). We look forward to your feedback.
Also, in order to run the new engine, you must have Docker Desktop installed. You will also need to modify the configuration file for the new engine to take effect (the default engine is still Microsoft).
dragonborn_speaks_naturally.dll contains code that hooks into SkyrimSE/VR.exe in order to take over dialogue and console commands. This hooking method is similar to a virus. Meanwhile, DragonbornSpeaksNaturally.exe has code to execute cmd commands in Windows in order to connect to the Voice2Json speech engine in docker. This makes some antivirus software think they are suspicious. In addition, DragonbornSpeaksNaturally.exe uses your microphone, which further increases the suspicion of antivirus software on it.
Therefore, every new version we upload will be quarantined and need to wait for the review of a NexusMods staff. This is why most of our releases are flagged for manually verified.
So are these files really doing the malicious things that antivirus software fears? I think the answer is no. dragonborn_speaks_naturally.dll just does what you want it to do: hooks into Skyrim, takes over Skyrim's dialogue and console commands, and simulates keypresses as you dictate. DragonbornSpeaksNaturally.exe also does what you ask it to do: record from your microphone, pass it to one of the speech recognition engines (Microsoft or Voice2Json), recognize the command you want to run and send it to dragonborn_speaks_naturally.dll. Then, dragonborn_speaks_naturally.dll will execute these commands (console, dialog or simulated keystrokes). During the entire process, your microphone recording never leaves your computer. And all the behavior of the mod depends on the configuration files you write and what you say through the microphone. No third party can remotely control its behavior.
The mod will not connect to the Internet while it is running (If you choose the Voice2Json engine, some model files will be downloaded from GitHub on the first launch, and once the download is complete, no internet connection is required; the Microsoft engine also does not use an internet connection). If you see an Internet connection in the VirusTotal behavior report, it's not the mod, but the VirusTotal's scanner are downloading the zip file from their own servers. The same page will also record the behavior of the scanner to decompress the DSN zip with 7z, which proves that not all the behaviors recorded are from the scanning target.
If you still have doubts about the safety of the mod, you can review its code yourself or ask experienced people. All of our releases are compiled from the following repositories, using Visual Studio Community 2022, to the x64 Release target: https://github.com/YihaoPeng/DragonbornSpeaksNaturally
You can do the same with modded followers but the ID's will depend on your load order so just check in console when you recruit them and add them with the same format. Hope this helps some people. For generic start conversation with any NPC then the talk to close ones mod is better as discussed in other posts. But this method does not require looking at the follower.
I'm SO confused. i uncommented some of the commands in the .ini and made some of my own following the layout, and my engine loops the commands and now the dialogue side of the mod isn't even working.(after changing things, i can't even use the mod to pick responses in chats.) i've almost triple checked to make sure the only things i changed were the lines that i either added commands to, or removed the semicolon to make the example commands i wanted work.
filepath not found: I:\Steam\steamapps\common\SkyrimVR\Data\Plugins\Sumwunn\DragonbornSpeaksNaturally.ini filepath not found: I:\Steam\steamapps\common\SkyrimVR\DragonbornSpeaksNaturally.ini filepath not found: C:\Users\USER\Documents\DragonbornSpeaksNaturally\DragonbornSpeaksNaturally.ini filepath not found: C:\Users\USER\Documents\DragonbornSpeaksNaturally\DragonbornSpeaksNaturally.ini.ini filepath not found: I:\Steam\steamapps\common\SkyrimVR\DragonbornSpeaksNaturally.ini.ini Failed to watch for config files: System.Exception: Configuration file does not exist.
I've installed it as part of Mad God Overhaul, so the "DragonbornSpeaksNaturally.ini" file is in my wabbajack mods folder. How can I direct it to this directory?
So if I want to use this is there a way to get it to select the options based on keywords rather than having to say the entire line? Because I think it would be awesome to not have to read the lines like a script and just say what you want as long as you have the keyword.
Worked well for me on Windows 11 for Skyrim VR on my Oculus Quest 2, and it worked right out of the box. I thought it might not work since I saw someone say somewhere that Windows cancelled Windows Speech Recognition (I think on the Dragonborn Unlimited posts section), but Speech Recognition worked for this mod.
As far as finding Windows Speech Recognition on Windows 11, it didn't show up in the control panel, but when I pressed windows key+ctrl+s, it popped up; so if you want to calibrate and configure, or just verify that you have it, I guess that's where you go.
Having some serious issues with false positives in VR. When trying to talk to Mantella, it goes haywire and triggers all my console commands. Is there a way to in game toggle the speech on and off? I only really need it in specific circumstances to trigger my commands, and can be off most other times.
Just leaving this here for anyone else testing out the alpha and new speach recognition engine. It wasnt working properly for me because Docker just got stuck at starting. I tracked down the issue to 'Virtualization' was not enabled for my CPU. you can check this (below). After I got it working the RAM usage was over 4gb. So i limit that down too. First the virtulization.
Open Task Manager
Go to the performance Tab
Make sure your on the CPU and look at the bottom for Virtualization: Enabled (or Disabled)
To enabled it go to your BIOS
Differ for everyone so look for OC or CPU and look for virtualization or SVM Mod (if you hover that is virtualization)
If you cant find it make sure your on advanced settings not simple and make sure you look for all expert settings in cpu or just google your Motherboard + enable Virtualization
Now on to the memory
Search for Powershell in your windows search. Run windows power shell and type this (instert your user profile)
notepad "$env:USERPROFILE/.wslconfig"
It should say it could not find the config file and ask if you want to create it. Yes, I limit mine to 2gb (i have no idea what to little or to much is but maybe someone else can shed some light on that. Every thing has been working fine so far) Creating the file opens Notepad. type this in the notepad
# Settings apply across all Linux distros running on WSL 2 [wsl2]
# Limits VM memory to use no more than 2 GB, this can be set as whole numbers using GB or MB memory=2GB
# Sets the VM to use two virtual processors processors=2
Save AS. Only save this in your user directory with no name it should look like this: C:\Users\\.wslconfig
restart your pc OR close docker (right click docker in the tray), run in powershell the following to close the wsl
wsl --shutdown
restart docker up and confirm in task manager or at bottom of docker the ram usage.
I use the mod in French. You just need to make sure that Windows language is set to Russian - the computer will restart when you change the system language. Then make sure you download the Russian version of the game (on Steam go to settings > properties > language to download the Russian files.)
It should work as intended if you follow those two steps.
pro tips, I'm french and use CHIM and Mantella, I fancy myself a bretonic knight High Rock and ask my follower to teach english at times. that was fun and instructive
1145 comments
We have released v0.31.0-alpha. It supports Anniversary Edition and includes a brand new optional speech recognition engine: Voice2Json to replace the old Microsoft speech recognition engine.
The new engine will solve many problems:
1. Microsoft's speech recognition engine is bound to the system locale, making it difficult to make the engine work properly.
2. Lower recognition rate. You have to speak clearly like an announcer to be likely to be recognized.
3. The probability of false triggering is high. After a while, any noise the microphone picks up will trigger a random command.
The new engine does not have the aforementioned drawbacks. For English speakers, it has far better recognition accuracy than Microsoft and is less prone to false triggering.
However, the new engine is not perfect, and some non-English languages may not work at all (Known issues: Chinese and Russian works poorly). We look forward to your feedback.
Also, in order to run the new engine, you must have Docker Desktop installed. You will also need to modify the configuration file for the new engine to take effect (the default engine is still Microsoft).
The specific installation steps are here: https://github.com/YihaoPeng/DragonbornSpeaksNaturally/releases
---
Manually Verified / Quarantined Files
dragonborn_speaks_naturally.dll contains code that hooks into SkyrimSE/VR.exe in order to take over dialogue and console commands. This hooking method is similar to a virus. Meanwhile, DragonbornSpeaksNaturally.exe has code to execute cmd commands in Windows in order to connect to the Voice2Json speech engine in docker. This makes some antivirus software think they are suspicious. In addition, DragonbornSpeaksNaturally.exe uses your microphone, which further increases the suspicion of antivirus software on it.
Therefore, every new version we upload will be quarantined and need to wait for the review of a NexusMods staff. This is why most of our releases are flagged for manually verified.
So are these files really doing the malicious things that antivirus software fears? I think the answer is no. dragonborn_speaks_naturally.dll just does what you want it to do: hooks into Skyrim, takes over Skyrim's dialogue and console commands, and simulates keypresses as you dictate. DragonbornSpeaksNaturally.exe also does what you ask it to do: record from your microphone, pass it to one of the speech recognition engines (Microsoft or Voice2Json), recognize the command you want to run and send it to dragonborn_speaks_naturally.dll. Then, dragonborn_speaks_naturally.dll will execute these commands (console, dialog or simulated keystrokes). During the entire process, your microphone recording never leaves your computer. And all the behavior of the mod depends on the configuration files you write and what you say through the microphone. No third party can remotely control its behavior.
The mod will not connect to the Internet while it is running (If you choose the Voice2Json engine, some model files will be downloaded from GitHub on the first launch, and once the download is complete, no internet connection is required; the Microsoft engine also does not use an internet connection). If you see an Internet connection in the VirusTotal behavior report, it's not the mod, but the VirusTotal's scanner are downloading the zip file from their own servers. The same page will also record the behavior of the scanner to decompress the DSN zip with 7z, which proves that not all the behaviors recorded are from the scanning target.
If you still have doubts about the safety of the mod, you can review its code yourself or ask experienced people. All of our releases are compiled from the following repositories, using Visual Studio Community 2022, to the x64 Release target: https://github.com/YihaoPeng/DragonbornSpeaksNaturally
;Talk to NPC with Hey
;;;Base Game
Hey Lydia=player.StartConversation 000A2C94
Hey Iona=player.StartConversation 000A2C93
Hey Jordis=player.StartConversation 000A2C95
Hey Argis=player.StartConversation 000A2C92
Hey Aela=player.StartConversation 0001A697
Hey Farkas=player.StartConversation 0001A693
Hey Vilkas=player.StartConversation 0001A695
Hey J'zargo=player.StartConversation 0001C1A3
Hey Onmund=player.StartConversation 0001C1A2
Hey Brelyna=player.StartConversation 0001C1A4
Hey Cicero=player.StartConversation 0009BCB0
Hey Jenassa=player.StartConversation 000E1BA9
Hey Marcurio=player.StartConversation 000B9986
Hey Vorstag=player.StartConversation 000B9984
Hey Erik=player.StartConversation 000656E2
Hey Mjoll=player.StartConversation 00019DF7
Hey Ahtar=player.StartConversation 000198B0
Hey Illia=player.StartConversation 0004B22E
Hey Faendal=player.StartConversation 0001348C
Hey Benor=player.StartConversation 0001AA68
Hey Derkeethus=player.StartConversation 0001C197
Hey Ghorbash=player.StartConversation 0001CA7D
Hey Uthgerd=player.StartConversation 00091918
;;;Dawnguard DLC Followers
Hey Serana=player.StartConversation 02002B74
Hey Isran=player.StartConversation 02003B8E
Hey Celann=player.StartConversation 02015C15
Hey Durak=player.StartConversation 02015C16
Hey Ingjard=player.StartConversation 02015C17
Hey Agmaer=player.StartConversation 02015C18
Hey Beleval=player.StartConversation 02015C19
;;;Dragonborn DLC Followers
Hey Frea=player.StartConversation 04017A0D
Hey Teldryn=player.StartConversation 04038565
Hey Ralis=player.StartConversation 04018109
Hey Talvas=player.StartConversation 040177DB
Hey Neloth=player.StartConversation 040177DB
Hey Riekling=player.StartConversation 0401FB99
;;;Hearthfire DLC Followers
Hey Rayya=player.StartConversation 03005216
Hey Valdimar=player.StartConversation 0300521D
Hey Gregor=player.StartConversation 0300521F
You can do the same with modded followers but the ID's will depend on your load order so just check in console when you recruit them and add them with the same format. Hope this helps some people. For generic start conversation with any NPC then the talk to close ones mod is better as discussed in other posts. But this method does not require looking at the follower.
My log gets spammed with:
filepath not found: I:\Steam\steamapps\common\SkyrimVR\Data\Plugins\Sumwunn\DragonbornSpeaksNaturally.ini
filepath not found: I:\Steam\steamapps\common\SkyrimVR\DragonbornSpeaksNaturally.ini
filepath not found: C:\Users\USER\Documents\DragonbornSpeaksNaturally\DragonbornSpeaksNaturally.ini
filepath not found: C:\Users\USER\Documents\DragonbornSpeaksNaturally\DragonbornSpeaksNaturally.ini.ini
filepath not found: I:\Steam\steamapps\common\SkyrimVR\DragonbornSpeaksNaturally.ini.ini
Failed to watch for config files: System.Exception: Configuration file does not exist.
I've installed it as part of Mad God Overhaul, so the "DragonbornSpeaksNaturally.ini" file is in my wabbajack mods folder. How can I direct it to this directory?
hello=press e; sleep 10; release e
As far as finding Windows Speech Recognition on Windows 11, it didn't show up in the control panel, but when I pressed windows key+ctrl+s, it popped up; so if you want to calibrate and configure, or just verify that you have it, I guess that's where you go.
A spell or MCM option would be a godsend here.
First the virtulization.
- Open Task Manager
- Go to the performance Tab
- Make sure your on the CPU and look at the bottom for Virtualization: Enabled (or Disabled)
- To enabled it go to your BIOS
- Differ for everyone so look for OC or CPU and look for virtualization or SVM Mod (if you hover that is virtualization)
- If you cant find it make sure your on advanced settings not simple and make sure you look for all expert settings in cpu or just google your Motherboard + enable Virtualization
Now on to the memory
- Search for Powershell in your windows search. Run windows power shell and type this (instert your user profile)
- It should say it could not find the config file and ask if you want to create it. Yes, I limit mine to 2gb (i have no idea what to little or to much is but maybe someone else can shed some light on that. Every thing has been working fine so far) Creating the file opens Notepad. type this in the notepad
- Save AS. Only save this in your user directory with no name it should look like this: C:\Users\\.wslconfig
- restart your pc OR close docker (right click docker in the tray), run in powershell the following to close the wsl
- restart docker up and confirm in task manager or at bottom of docker the ram usage.
GOOD LUCK EVERYONE! <3 notepad "$env:USERPROFILE/.wslconfig"
# Settings apply across all Linux distros running on WSL 2
[wsl2]
# Limits VM memory to use no more than 2 GB, this can be set as whole numbers using GB or MB
memory=2GB
# Sets the VM to use two virtual processors
processors=2
wsl --shutdown
It should work as intended if you follow those two steps.