Jump to content

New Modder - NPC Dialogue Questions


nextjen

Recommended Posts

I had a mod idea, and unlike most times when I wish I had something for a game, I'm actually inspired to try making this work. I went to Nexus, decided to see if anyone else had tried anything like it. Or in the general vicinity of it. Or on the same freakin' continent.

 

Here's the problem. The closest things I see to my idea are dialogue bug fixes and a tweak that comes with this mod. That bothers me, because, as Arcade put it, nihil novi sub sole. And yet I can't be the first person to have thought of this. Maybe I'm the only one crazy/stupid enough to try it.

 

I know for sure I'd have to do the following things:

1. Edit the Courier's dialogue with in-game NPCs.

2. Edit the dialogue of several in-game NPCs. This would sometimes mean editing the sound files to clip, reorder, or splice NPC dialogue. I assume I'd also have to deal with the .lip files, which sound complex.

3. I might have to reorganize the dialogue trees with these in-game NPCs to get the effect I want.

 

I assume there'd be other stuff to do - maybe some scripting? - along with stuff I can't yet predict.

 

Since I have zero experience with modding, I have no idea if any of this is even possible. While I'm willing to learn, I'd like some idea of what I'd be getting into. People add new NPCs all the time. It doesn't look like they tinker with the old ones unless it's to fix bugs. I've gone through the forums and looked at topics and various tutorials but haven't found a lot. Maybe I just don't know what to look for yet. Are there tutorials or old threads I should be looking for? Mods that change in-game NPC dialogue I could examine in the GECK?

 

Anyway, I'm looking to do this myself, so any feedback/suggestions would be really appreciated. Right now I'm still playing around in the GECK and reading through dialogue trees, but anything that would get me going in the right direction would help. Thanks!

Link to comment
Share on other sites

If you have no experience in modding, you're taking on quite an undertaking.

 

To be honest, the aspect of modding that I found the most difficult to learn was dialogue management, because quite frankly GECK can be a real piece of junk when it comes to that. Not saying that it's impossible, or even particularly difficult once you learn the workarounds for GECK's unintuitive and clunky design. But that's probably going to be frustrating at first. And second, and third, and fourth..

 

That having been said, go for it. There are plenty of good ideas that no one's done, and I've had a few times now when I've thought: really? In two years - four if you count FO3, and even longer if you go back to Oblivion - NO ONE has tried this? And it's turned out that yes, no one has. Or no one succeeded. Or no one thought others would appreciate it. Whatever.

 

If you've got a great idea and the will to make it work, dive in and do it. If nothing else, you'll learn a lot in the process.

Link to comment
Share on other sites

Greslin is right, it will be quite the undertaking but I think it could definitely be done.

 

It's just going to be a massive amount of tedious, tedious work. Especially if you go changing the audio files, by cutting and pasting them around to get new lines, you will definitely need to make new lip files. For that you'll need the Oblivion Construction Set V 1.0.303 because generation of lip files was broken in later versions of the CS, and lip generation never even worked in the GECK.

 

To make it easier to use the lod CS there is a mod that allows you to use the old CS without needing the old Oblivion ESM it's right here, so you should go get it, cause you're gonna need it.

 

You'll also need to familiarize yourself with scripting because there's a lot of tie in between the dialogue and object/quest scripts, not to mention the scripts that are run directly from the dialogue.

 

I think it's a very cool idea, and if you are really tenacious you can do it. I say best of luck to you.

 

____

 

On another note, since you said you're new to modding I have a few pointers for you that someone told me when I first started and they helped me out quite a lot.

 

1) Never delete something if you can get around it, which you usually can. Instead double click on it and check the initially disabled button, cause that will have the same effect in game, but won't delete the reference and cause conflicts.

 

2) If you make new items / scripts / effects/ etc.... Use a prefix for every new thing you make in the mod.

 

For instance if I'm working on a mod that adds a new awesome rifle, I would prefix it with NARMod.

I also add my name before that, just to be doubly safe. Since my name is Joshua, and last name starts with an L, and my screen name is Joshua121, I always do something like this:

 

JL121NARModMyAwesomeRifle

 

I hope that's helpful, and if you run into problems along the way, I'm usually happy to help out anyone I can, just PM me, and I'll get back to you when I can.

 

Best of Luck

 

Joshua

Edited by joshua121
Link to comment
Share on other sites

Thanks for the responses so far. Yeah, I'm already enjoying the special hell that is the dialogue menu. On top of the convoluted structure and the total mess the export button produces, my computer can barely make toast, so every time I call up a new character's dialogue it takes 1-2 minutes to load.

 

it hadn't occurred to me to search for Oblivion/FO3 mods like my idea. Turns out Arcade had the right of it. This is in the ballpark, and this is even closer. And this, at least in concept, is pretty much what I'd be trying to do, albeit with a very end product in mind. So it's not easy and it's prone to bugs. Figures.

 

I'd still like to try. My original plan was to mod dialogue with the Goodsprings NPCs, so your Courier doesn't sound like a raging idiot/amnesiac who's never spent a day on the wastes, then reevaluate. My interest lies in the actual writing, not the technical aspects, of the mod. I find the idea of giving the Courier a voice that is clear, consistent and aware of the world around them (without imposing any potentially limiting personality traits upon them) very intriguing. Assuming I can write that, of course.

 

Back to the nitty gritty. I don't currently have Oblivion installed on this computer. Will I need to do that? Also, any resources so I can understand more about scripts and how scripting actually works? I usually catch on to things faster if I understand the mechanics underneath.

Edited by nextjen
Link to comment
Share on other sites

With the lip template I don't think you have to have oblivion installed because it doesn't need a master file.

 

For your mod idea, if you're only doing the courier's dialogue that's going to be a lot easier, you can do that right inside the geck. Just keep in mind the player has a 100 character limit to all responses, so it does limit you quite a bit.

 

As far as your question about scripting, I'm going to be lazy and Im just going to copy and paste some help I gave someone esle in a pm that has links and some description.

 

No problem man,

 

You can write the scripts right inside the geck, using the scripting language that they use for the game.

 

I'll try to explain some basics to you and I'll include some links.

 

 

It's a very simple setup even for people who don't know scripting, and the scripts are not case sensitive so "Begin Gamemode" is the same as "begin gamemode" which would still be the same as "BeGiN GAmEModE"

 

The scripts works on an "If this, then do that" kind of setup.

 

A script for fallout 3 or New vegas, only requires a few things to run.

 

1. A script name, which must be declared with "ScriptName" or "scn" which is shorthand.

 

So at the heading of every script you will need something like this.

 

scn MyScript

 

The next thing you need is a "Begin / End" block - you can find out more about those here

 

The one used most often probably is "Begin Gamemode"

 

They work like this.

 

scn MyScript

Begin Gamemode

   Scriptstuff

End

 

There are also if statements like this:

 

If

Esleif

Else

 

Before when I mentioned the "If this then do that" idea, I was talking about If statements. They can be as simple as "If this, do that" or as complex as "If this do that, but if this instead, do this instead, but if neither of those things are true then do this". All if statements must be closed with an Endif statement.

 

They look like this.

 

scn MyScript

Begin Gamemode

   If Condition
        command

   elseif
        command

   else
        command

   endif
  endif

End

 

 

A simple example of a script would be something like this, say I want an NPC to start a conversation with the player when the player gets close to the NPC. For the purpose of this example the NPC will be named Tony, and the particular reference of Tony will be named TonyRef.

 

scn MyScript

Begin Gamemode

   If Player.GetDistance TonyRef < 250
      
      TonyRef.StartConversation Player Greeting

  endif

End

 

 

Just so you know that script will make Tony talk to the player everytime he gets near him. So you can use a script block by declaring a variable. All the variables have to be declared just after the script name and before any begin / end blocks. You can also name variables just about anything you want.

 

 

 

scn MyScript

Short DoOnce

Begin Gamemode

   If DoOnce != 1
   If Player.GetDistance TonyRef < 250
      
      TonyRef.StartConversation Player Greeting
      Set DoOnce to 1

  endif
  endif

End

 

 

In that example I use a couple of different operators, namely the " != " which is " Not equal to " , the " < " which is "Less than" and the " == " which means " Equal to "

 

With that script Tony will only force greet the player once.

 

There's a lot to learn about scripting for the GECK so you can check out the GECK Wiki, and also Cipscis has some wonderful tutorials on scripting on his site which is here.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...