Making Creatures Talk

Post » Fri May 27, 2011 11:58 am

Does anybody know how to make an animal, say a wolf, talk? I'm guessing that you just point a conversation topic to the creature, but there might be some other requirement.

Any suggestions?
User avatar
Adam Porter
 
Posts: 3532
Joined: Sat Jun 02, 2007 10:47 am

Post » Fri May 27, 2011 1:22 pm

Does anybody know how to make an animal, say a wolf, talk? I'm guessing that you just point a conversation topic to the creature, but there might be some other requirement.

Any suggestions?
Unfortunately for you, it is definitely not that easy to make a creature talk. Only NPCs work via the dialog system. So, in order to "make" a creature talk, you will need to fake it. One method is to make an invisible NPC stand near the creature and, upon activation of the creature, activate the NPC who will actually go through the dialog. Another method would be to activate the creature and use a system like the one used in the Arena fights by using SayTo in a script attached to the creature.
User avatar
Charlie Ramsden
 
Posts: 3434
Joined: Fri Jun 15, 2007 7:53 pm

Post » Fri May 27, 2011 12:39 pm

Hmmm *strokes chin*. An 'invisible NPC', could I do that by making one, and then disabling it?
User avatar
Bedford White
 
Posts: 3307
Joined: Tue Jun 12, 2007 2:09 am

Post » Fri May 27, 2011 12:57 am

The Invisible NPC method is annoying tricky. As soon as you've sorted out something that works, tweaking it and changing it slightly gets really complicated.
Instead of making (presumably through PlaceAtMe) and disabling the object, it's much "friendlier" to the game to use MoveTo in and out of the cell when it's needed. If you really want to know why, head http://cs.elderscrolls.com/constwiki/index.php/Summon_Object.

A few things to consider that make it that much harder are things like...
  • When you talk to someone (even when they're invisible and not standing in front of you), the camera zooms into their face so you can see their lips move. That's handy for things, such as when some assassin creeps up behind you and then proceeds to threaten and then eventually stab you; but not so useful when you want to cheat the system a little. It means that instead of focusing on the animal (which would be ideal - even though you wouldn't be able to lip sync at all because time is frozen), it would zoom onto this invisible person - so basically just zoom into some random bit of the room where the fake actor is. You'd have to counter that by somehow making the creature eye level, and the face actor directly behind the creature. Not easy to script, especially when moving the actor in and out of the useful cell!
  • As I said, time is frozen. This means lip syncing isn't possible at all, so you're just looking at a frozen creature in any case. This means it's just text overlapped on (essentially) a picture of your creature.
  • There's no real way to make the actor completely undetectable. SetActorAlpha will make it look like he's not there, but you might still be able to attack him, even with well oiled MoveTo/Disable scripts.

So that makes this method somewhat impractical and look unrealistic, so your other option seems both easier and better looking. I'd use DisablePlayerControls and then just use (as Reneer said) a system like in the Arena. That's basically what you want, since there's no actor doing the talking in the Arena (and subtitles can be used if you can't/it's hard to understand the creature's accent). You could even get the creature to wander around and do fancy things (eg. backflips) that tie in with your speech, seeing that time isn't frozen. Could even play to your advantage!

Good luck with your mod! Hope it works out well. :)

EDIT I put in one too many returns and it was annoying me. Tell me how this goes though, or message me if I don't respond to a reply post!
User avatar
zoe
 
Posts: 3298
Joined: Sun Nov 12, 2006 1:09 pm

Post » Fri May 27, 2011 11:07 am

The Invisible NPC method is annoying tricky. As soon as you've sorted out something that works, tweaking it and changing it slightly gets really complicated.
Instead of making (presumably through PlaceAtMe) and disabling the object, it's much "friendlier" to the game to use MoveTo in and out of the cell when it's needed. If you really want to know why, head http://cs.elderscrolls.com/constwiki/index.php/Summon_Object.

A few things to consider that make it that much harder are things like...
  • When you talk to someone (even when they're invisible and not standing in front of you), the camera zooms into their face so you can see their lips move. That's handy for things, such as when some assassin creeps up behind you and then proceeds to threaten and then eventually stab you; but not so useful when you want to cheat the system a little. It means that instead of focusing on the animal (which would be ideal - even though you wouldn't be able to lip sync at all because time is frozen), it would zoom onto this invisible person - so basically just zoom into some random bit of the room where the fake actor is. You'd have to counter that by somehow making the creature eye level, and the face actor directly behind the creature. Not easy to script, especially when moving the actor in and out of the useful cell!
  • As I said, time is frozen. This means lip syncing isn't possible at all, so you're just looking at a frozen creature in any case. This means it's just text overlapped on (essentially) a picture of your creature.
  • There's no real way to make the actor completely undetectable. SetActorAlpha will make it look like he's not there, but you might still be able to attack him, even with well oiled MoveTo/Disable scripts.


So that makes this method somewhat impractical and look unrealistic, so your other option seems both easier and better looking. I'd use DisablePlayerControls and then just use (as Reneer said) a system like in the Arena. That's basically what you want, since there's no actor doing the talking in the Arena (and subtitles can be used if you can't/it's hard to understand the creature's accent). You could even get the creature to wander around and do fancy things (eg. backflips) that tie in with your speech, seeing that time isn't frozen. Could even play to your advantage!

Good luck with your mod! Hope it works out well. :)


Thanks! I'll give that a go!
User avatar
Luis Reyma
 
Posts: 3361
Joined: Fri Nov 02, 2007 11:10 am


Return to IV - Oblivion