engellmann Posted February 15 Share Posted February 15 (edited) I'm learning how to add new voice lines to NPCs, using existing wav files. Initially I followed two identical tutorials like this one. They said I have to record a temp file, find it, replace with my own, rename it with the long name CK generates. But because I had a problem with recording said temp files, I kept looking and found this tutorial. It actually helped to fix the problem, but here it just says to replace the temp file and save? I don't get it, will the voice file be renamed automatically and placed in the correct folder? Because the temp file is not in the folder listed in the "response" window, and neither is it named how CK indicates. I tried following the tutorial and just saving the temp file, saved the mod, ran the game - nothing. Opened CK again and the new line of dialogue wasn't there at all. If it's important, I'm running CK via MO2 per an instruction I found on Reddit, and I created a mod "CK Output" for it. I'm beyond confused every step of the way, truly, it seems overly complicated. Any help is appreciated! I just want to know that what I'm doing is correct because there might be other reasons it's not working (found something about SEQ), and testing it all in circles is a pain. Edited February 15 by engellmann Link to comment Share on other sites More sharing options...
scorrp10 Posted February 16 Share Posted February 16 I can only go step by step about how I do it. That said, I use Vortex and work directly in the SSE file structure. This might differ under MO2. First, make sure you got the goods: You want CK with the fixes (Platform Extended) Not sure if still needed if you got the above, but I also have the the tbb.dll, tbbmalloc.dll and winhttp.dll From Creation Kit Fixes, as well as the FaceFXWrapper 0.4 from same place - which goes into Tools\Audio under your SSE directory. You also need to download the file here, FonixData.cdf, and it goes into Data\Sound\Voice\Processing under SSE. And you need Unfuzer CPP Edition utility. Read the instructions, it is pretty easy to use. Suppose that the plugin file I am working on is "MyFollower.esp", and for the follower, I created a custom voice type called "CustomVoiceType" When I right-click on a responses list and choose 'New', it gives me a 'New Response' window. At this point, I just type in the text of the response, and click OK. It closes the New Response and opens the TopicInfo window. Now, I add a condition that explicitly indicates the response speaker (Usually GetIsAliasRef checking it is the follower Alias) Next, I double-click the text of the response to open the 'Edit Response' window. At this point, with condition in place, there should be only one VoiceType in the list (the follower's voice type) At the bottom, where it says 'Load', click 'Browse. It always seems to go to SSE directory, so it is best to pin the folder where you have prepared wav files, to Quick Access. Go there and select the wav file you wish to use. CK automatically copies this wav to the proper directory, renames it, and generates a .lip file from it. If I now go to SSE \Data\Sound\Voice\MyFollower.esp\CustomVoiceType, I can see the .wav and .lip files with the name indicated in 'Voice Filename' in the Edit Response. Click OK, this response is done. Once you did a bunch of dialogue, and wish to test it out, you run Unfuzer, point it at the directory where all the generated .wav and .lip files are, and click 'Refuze'. It will combine .wav and .lip pairs into .fuz files. Now you can try it in the game. Link to comment Share on other sites More sharing options...
engellmann Posted February 16 Author Share Posted February 16 4 hours ago, scorrp10 said: I can only go step by step about how I do it. Thank you so much for the detailed reply! I was wondering if I needed some patches. Will try it all in a bit. 4 hours ago, scorrp10 said: If I now go to SSE \Data\Sound\Voice\MyFollower.esp\CustomVoiceType, I can see the .wav and .lip files with the name indicated in 'Voice Filename' in the Edit Response. This is the problem, I don't have that, only the temp file in "Voice." Something definitely isn't working right, hence my confusion. 4 hours ago, scorrp10 said: Now, I add a condition that explicitly indicates the response speaker (Usually GetIsAliasRef checking it is the follower Alias) Interesting. In the tutorial, they add "GetisId" when they create the quest. Do you know how these are different? And no need to use the pesky temp files. Sounds good, hope I can finally create the simplest mod ever I just want to add more lines for Brynjolf, he's very quiet with RDO, and maybe Delvin later. Link to comment Share on other sites More sharing options...
engellmann Posted February 16 Author Share Posted February 16 10 hours ago, scorrp10 said: Now, I add a condition that explicitly indicates the response speaker (Usually GetIsAliasRef checking it is the follower Alias) Okay, so I can't do this because I get "invalid alias," but the voice type is there from adding "GetIsId - Brynjolf" when creating the quest. 10 hours ago, scorrp10 said: At the bottom, where it says 'Load', click 'Browse. Strange, but I don't have those buttons. I followed a tutorial and recorded a temp file, replaced it with mine, and FINALLY CK created the mod/voicetype folders as it should! Link to comment Share on other sites More sharing options...
scorrp10 Posted February 16 Share Posted February 16 Quote This is the problem, I don't have that, only the temp file in "Voice." Something definitely isn't working right, hence my confusion. That kinda sounds like you don't have the FaceFXWrapper in the right place - cause that is the utility that makes a .lip from a .wav As I said, it could be an MO2 thing. This video has some info about setting things up under MO2. Quote Okay, so I can't do this because I get "invalid alias," but the voice type is there from adding "GetIsId - Brynjolf" when creating the quest. Whatever works - in my case, this is a quest for my follower, and I have her loaded as a quest alias. GetIsId should work just as well. Quote Strange, but I don't have those buttons. What version of CK are you running and do you have the fixes I mentioned? I think the 'Load' option comes from the 'Platform Extended' fixes. Generally, in absence of that, there are a couple other methodologies. First one is via Record. (Temp file) Open 'Edit Response' window, make sure only one voice type is listed. Click Record. (If you are recording the voice yourself, this is where you can just say the line into mic.) In Record window, click 'Done' You now have a newly created 'Temp.wav' file in your Data\Sound\Voice If you are using pre-made .wav files, this is where you replace that Temp.wav with your own. In the Edit Response window, click Save. At this point, CK will use FaceFXWrapper to generate the Data\Sound\Voice\Temp.lip file. Then it will copy these Temp files to proper mod\voicetype subdirectory and rename them. The second one is the rename method. In this case, I already have the mod\voicetype folder created under Voice, and I put the premade .wav files I am going to use in there. Open Edit Response window, make sure only one voice type is listed. Highlight the name in Voice Filename window, Ctrl+C Go into the folder, locate the needed .wav file, click on its name twice to start renaming it, and Ctrl+V Now, in Edit Response window click the listed voice type, click 'From WAV' radio button, and 'Generate LIP File' button should become active. Click it to generate the .lip file. Just an extra note: I never managed to get the 'Preview' button in 'Edit Response' window to work. Even though CK definitely can play audio - i.e. Sound Descriptors. Link to comment Share on other sites More sharing options...
engellmann Posted February 16 Author Share Posted February 16 55 minutes ago, scorrp10 said: Whatever works - in my case, this is a quest for my follower, and I have her loaded as a quest alias. GetIsId should work just as well. Quote Okay, thanks for the explanation! 55 minutes ago, scorrp10 said: What version of CK are you running and do you have the fixes I mentioned? 1.6.4 I installed the fixes, all the files you mentioned, and the recommended unofficial patch as well. 56 minutes ago, scorrp10 said: At this point, CK will use FaceFXWrapper to generate the Data\Sound\Voice\Temp.lip file. Then it will copy these Temp files to proper mod\voicetype subdirectory and rename them. Yes, this works now! 59 minutes ago, scorrp10 said: I never managed to get the 'Preview' button in 'Edit Response' window to work. It works for me. I'm actually surprised I haven't encountered any other issues. Really appreciate all the advice! I haven't managed to make it work yet, might be something missing in conditions, but at least I'm starting to understand it better. I went ahead and generated a Seq file using a tutorial (not sure if I still need it with all the CK fixes and patches). Right now I'm looking at RDO in SSEedit so I can better understand what triggers idle responses. Might just add a bunch and start playing. See if anything at all triggers. Link to comment Share on other sites More sharing options...
scorrp10 Posted February 16 Share Posted February 16 Getting your feet wet with dialogue can be pretty daunting. However, there are quite a few good tutorials on YouTube on how to do it. This is a good resource: https://wiki.beyondskyrim.org/wiki/Arcane_University:Dialogue_Systems_for_Writers As well as this: https://ck.uesp.net/wiki/Category:Dialogue Often enough, the reason a dialogue is not working is simply because its quest has not started. I.e. I was creating a small quest involving Birna, a shopkeeper in Winterhold, and my lines would not show up for her. Turned out, even though the quest was flagged 'run at game start', it was not actually running, and after a 'startquest' console command, I spoke to her again, and she had the lines. Consider triggering your quest start either via StoryManager (i.e. upon entering Riften LocationChange event) In another case, I set up a trigger area near entrance of a certain dungeon, and linked my quest start to player entering this trigger area. The dialogue priority and triggering is still a bit of a dark area for me. I.e. on one quest, I added a bunch of responses for the 'Idle' topic in the Misc section. And when the follower NPC is just by herself sandboxing in an area, and I stand around, she will speak those idles. But when she is actively following me, she does not, even though her follow package is flagged to 'Allow Idle Chatter'. Oh, and ALWAYS rename your TIF script fragments. I.e. if you are working on a mod in CK, and your masters are only Skyrim.esm and Update.esm, then your active plugin is going to be loaded at index 02, and the default names for TIF scripts will be TIF__02xxxxxx. (i.e. TIF__02020480). But guess what other scripts follow that same naming pattern? All of Dawnguard dialogue!!! And those fragments go into your Data\Scripts, where they will overload vanilla Dawnguard dialogue scripts in the .bsa if there happens to be an ID conflict. So when I add a script fragment to a TopicInfo, and CK assigns it a default name like TIF__0304DF56, and say, this is for a mod called 'LilyFollower', I use Rename option to change it to 'TIF_LilyFollower_0304DF56'. Link to comment Share on other sites More sharing options...
engellmann Posted February 16 Author Share Posted February 16 6 hours ago, scorrp10 said: This is a good resource Thank you!! I found this wiki today but only tried one thing so far (trying to trigger a simple idle comment based on the player not wearing anything, seemed like an easy check anywhere anytime, but no luck). I'll spend more time actually learning before trying again, I guess. I tend to rush into things and expect them to work just because I'm curious 7 hours ago, scorrp10 said: Often enough, the reason a dialogue is not working is simply because its quest has not started. Yes, I think that might be the problem. Could have something to do with unique characters/voices. Some flag somewhere. I can't find much looking at RDO. Will try looking under the hood of "Brynjolf has time for you." 7 hours ago, scorrp10 said: after a 'startquest' console command, I spoke to her again, and she had the lines Really? Will I be able to easily find the ID of my quest so I can test it? 7 hours ago, scorrp10 said: Consider triggering your quest start either via StoryManager (i.e. upon entering Riften LocationChange event) Good idea to test, thanks! 7 hours ago, scorrp10 said: But when she is actively following me, she does not, even though her follow package is flagged to 'Allow Idle Chatter'. Something for me to check... but I did notice RDO had a condition for comments like entering a dangerous zone, ensuring NPCs were active or potential followers. There are just so many factors. The annoying thing is, the tutorials are super simple and people comment it worked. I can't even get a simple hello to work. It's probably Bryn being stubborn, I'll try a random NPC tomorrow. 7 hours ago, scorrp10 said: Oh, and ALWAYS rename your TIF script fragments. Thank you! I'm taking notes Link to comment Share on other sites More sharing options...
Recommended Posts