How to make an NPC Vendor & Mechanic. Game: Fallout 3This module is going to show us how to make an NPC, who is also a vendor and repair-person, in the Fallout 3 Garden of Eden Kit (GECK). The process of starting NPCs in this program is slightly different from making one in the Oblivion Construction Set (CS).
I think the reason why I wanted to make an NPC who does all these things in Fallout 3 (before I learned in Elder Scrolls games) is because there are so many areas of the wasteland in which it'd be nice to buy and sell stuff, and get our gear repaired. But nobody nearby offers any of these services. Guns in particular tend to take quite a beating as they're being used, and ammo is always in demand. Sure there are merchant caravans who wander around, but there's never one around when we need one. So I began to think it'd be nice to have some extra merchants in fixed locations.
An example is when Janet, my Talon Company rogue, took up residence inside of Fort Bannister. Nobody in there to buy / sell / repair from, yet doesn't it make sense that there could be? Most of the soldiers in there are deadbeats who only one-line our characters to death! Same thing when Cho, my main quest guy, began spending lots of time in the Citadel. I believe there are some merchants in there, but they weren't specialized enough for what Cho needs from day-to-day.
1). Open up the Fallout 3 GECK. Now, open up Fallout 3.esm, or if you've already got a plug-in you're working with, you can make this active. Everything here is exactly the same as it was in the CS, so far as opening up the main .esm, or any .esps. We're still working with the Object, Cell, and Render windows, while the main window always stays beneath the others.
First, we're going to make an NPC. If you've made people before in this game skip to Step 3a. Otherwise, the process is slightly different than it was in the CS, so for anyone who is new to this, continue the 2nd steps.
OBJECT windowYou'll notice there are now eight branches in this window (rather than the CS's five). We have Actor Data, Actors, Game Effects, Items, Miscellaneous, Special Effects, World Objects, and All. Bethesda has also provided us with a convenient Filter slot, which allows us to search for specific objects if we need to.
Go ahead and try to narrow down on MoiraBrown, for instance. Make sure "All" is selected in the left side of the Object window, and then type her name into the filter. You might only get as far as Moira before *Bam* there she is, out of thousands of objects.
2). But now, let's make our vendor. Get Moira out of the filter, so the window expands back to All again.
To make an NPC, expand the Actors branch and single-click on NPC. Right-click > New into the larger Editor ID window.
Note: In the CS, it is common to edit pre-made NPCs, and then work with whatever person we've clicked on. When working in the GECK or Skyrim Creation Kit however, we often start from New, instead. This is because these latter programs include a lot of pre-configured features for NPCs, which makes starting somebody new much easier.3a). Make an NPC as per all the usual steps: start by giving him or her an ID and a Name. Notice how the GECK has a lot of new features on this very first panel, yet there are also some features you might be familiar with, if you've already made an NPC in the Oblivion CS. I'm not going into detail right now, but if you'd like to learn more about all these features,
just follow Bethesda's official link. There are also dozens of videos out there, too.
3b). Go into your NPC's Traits tab (which should be selected by default), find Class, and select Mechanic in the scroll-bar. Nothing else really matters about this NPC so far as vendoring and repairing goes, so choose whatever Race you want, whether the guy/gal is tall or short, etc.
3c). AI Data tabs
We can either toggle Autocalc Services on if we want him or her to just sell random stuff, or we can specifically click on Weapons, Food, Books, whatever we'd like them to buy and sell. I am going to make my guy sort of a low-life drug dealer. He'll sell chems in Moriarty's Saloon, and that is all.
3d). Inventory tab
We're about to throw our NPC somewhere into the world, but how about we put some clothes on him or her first?
![wink.gif](style_emoticons/sinders/wink.gif)
Right-click into the box where it says Count, Object ID, and so on. Select New.
3e). In the Object scroll-bar are all the possible items in the game. Single-click on this, and type in (or scroll down for) outfit. There's a huge list of generic and specific outfits to choose from. I chose OutfitWasteland02.
Tip: if you want to see what your person looks like with clothes on, move your cursor to the bottom/center of the NPC's panel (where it says Preview) and toggle Full on.
4). CELL + RENDER windowsFind a cell where you'd like your NPC to be, open it up, and put him or her into that cell in the Render window. All of this is exactly the same, compared to the CS. I put my lowlife NPC into MegatonMoriartysSaloon. Since I did this, I also want to officially make him one of Moriarty's buddies. This means adding the guy into Moriarty's faction. Adding NPCs into factions is slightly different, from CS to GECK.
5). Double left-click on the NPC in the Render window, and click on Edit Base.
6). Factions tab
Right-click > New into this box. This will open up all the factions in the game. You can choose as many Factions as you'd like, within reason. My lowlife chem dealer will be a part of MegatonMoriartysFaction and also MegatonResidentFaction. He's got some cred with the people, you see.
Click OK, and OK again (closing both NPC's panels) and save your work.
Now we're going to start a new, very short, quest. Yes, to make an NPC buy and sell, we'll need to have a quest to back this up. This goes for the prostitute (Nova, I think) inside of Moriarty's, and innkeepers in Elder Scrolls games, as well. Making quests is sometimes different in the GECK, and the main difference to start with? No more Q button on the main toolbar. Ugh.
7a). OBJECT WindowExpand the Actor Data branch, and click on Quest. You'll see all the game's quests *POP* up, all colored yellow & black.
7b). Right-click > New into the window, and give your quest a Quest Name and ID. Priority can be 55. Most quests Bethesda writes are at 55. Start Game Enabled should be toggled on, and make sure that "Script Processing Delay" is also toggled on.
One thing which is different though is we don't have to add GetIsPlayableRace into the Quest Conditions box. In fact, Bethesda never seems to use this box, anymore.
8a). TOPICS tab
Right-click > Add Topic into the large, vertical window on the left, and find GREETING. Click OK.
Note:: If you've got Windows 7, XP, or Vista, from here on you should have no problems. Continue to Step 8b. If your computer is Windows 8 or 8.1 though, chances are you won't be able to see the word GREETING in the Editor ID at all. This is because Beth configured the GECK for older systems, unable to see what the future would hold. I have heard Windows 10 is the worst, when it comes to working in the GECK. Since I don't have 10 though (I have Win 8.1) I don't know how to work around this problem with 10.
Working with the GECK's various windows for Windows 8 or 8.1 (such as the Editor ID window, Conditions, etc.) is a pain, and there is no instant cure that I've found, to get text to display properly. You can still work around this problem though. Here is how.
a. Make sure "Top-level only" is toggled off. This toggle can be found near the top-left of the Topics page.
b. Move your cursor to the very top-left corner of the Editor ID window. This box is unnamed, but it's the one in which you just added GREETING, yet GREETING is not showing. As your cursor moves over the top-left area of this window, it should turn into an icon which looks like <-||-> once it's in the correct place. Now, left-click and drag your cursor all the way to the right. You should now be able to see GREETING.
... There. I just saved all the Windows 8 owners at least an hour of frustrating Google searches! ![hehe.gif](style_emoticons/sinders/hehe.gif)
Unfortunately, you'll need to repeat this process over and over again, in order to see text in various windows and boxes. Annoying, but at least possible. The Info and Response Text windows (where we start and type dialog) do not have this problem though, so we won't have to drag anything to start and type some dialog.
8b). Make some sort of GREETING. "What do you want, punk?" or whatever. All of this is done in exactly the same manner as in the CS.
8c). Right-click > New into the Conditions window. Make a GetIsID for your NPC. This is the only condition that's needed.
Again this window will be grayed-out if you've got something from the Windows 8 series (necessitating another drag from left to right), but visible if you've got anything earlier.
8d). Right-click > Add Topic into the Add Topic box, and make a unique topic which deals with vendoring. aaaVendorTopic is an example.
8e). Also add this topic in the tall, vertical window where GREETING is.
Windows 8 users: if you haven't closed the Quest window, you should still be able to see into all the smaller windows. Once you click OK though, you'll need to click & drag again, once you get back in to add things to your quest.
8f). This vendor topic will be whatever we say to get the vendor experience going. Right-click > New into the Info window, and type something our NPC will say. "Sure, I have lots of things to sell. What would you like?" Click OK, and then type something into the Topic Text slot up top. "What do you got?" or whatever. Again, all this is the same from CS to GECK.
8g). Don't forget to copy/paste the GetIsID from GREETING to the vendor topic.
8h). Look to the bottom of the Topics page now. In the Result Script (End) box, type
ShowBarterMenu 9a). Conversation tab
In the tall, vertical window (which again, will be grayed-out if you've got Windows 8), right-click > Add Topic, and look for GOODBYE.
The Topic Text which Bethesda added for GOODBYE is "See ya," I think, and it's best to leave it this way. We don't have to add anything further here, no Conditions, no nothing, unless we want our NPC to say something we specifically have added.* If so, just follow all the normal steps with Response Text and Conditions (GetIsId, for instance). Otherwise, the NPC will simply give us a random Bethesda Goodbye when we break conversation.
9b). Make sure the Goodbye and Random toggles are checked on. They should be, by default.
*
Note: Sometimes I have encountered glitches when trying to add specific dialog, causing the GECK to not save anything I type. If this happens, make sure there aren't any deleted Topics in either the Topics or Conversations tabs. If there are, press OK, closing out the Quest panel. Save the work done so far, close the GECK, and re-open it. Those deleted topics should be gone, now. 10).
CELL windowMake sure "Interiors" is selected in the World Space scroll-bar, and find VendorChestCell. This contains all the possible chest-types in the game. Leave the Render window for this cell open,.
11).
OBJECT window > World Objects > Container.
Find VendorChestBuriedClutter and drag this chest into the Render window. It apparently does not matter where this chest ends up (there is no floor) but try to put it somewhere that you can find it easily, if you need to return to this cell for some reason. Set this chest obviously off to the side if you have to, away from all the others.
12a).
REFERENCE window.
Double left-click on the chest you just dragged. Click the Edit Base button. Give this chest its own ID (starting with aaa if you want it to show at the top of the list later on) and close its panel by clicking OK, saving the chest as a new form. We do not need to give it a Name, but make sure "Respawns" stays toggled on, otherwise the vendor will eventually run out of salable stuff!
12b). Go back into the chest now, and add whatever we want into its Item List. By default, this chest will have random medical stuff, and "VendorChestCapsSmall," which is going to give this vendor a variable amount of caps to buy stuff with. We probably want to add more stuff in here though, right? Right-click > New into the Item List
Some good things to add in here (if we want inventory to stay as random as possible) are VendorMiscItems, VendorWeaponsAllCommon, VendorAmmoBullets, and VendorArmorCommon. Since my NPC is a lowlife chem dealer, I just chose VendorChestChems.
12c). If we want our vendor to have a larger amount of caps to buy with, we can leave the VendorChestCapsSmall in there for the variable amount of money, but then we can a fixed amount of caps to their Item List as well. There are several choices here. Caps001 is good if we want them to have one guaranteed cap at all times, Caps90 if we want them to have a guaranteed 90 caps at all times, and so on.
We can simply choose Caps001, and then in the Count slot, we can add as much to this as we want. Type 200 in there if you want your vendor to have 200 guaranteed caps, plus whatever random amount VendorChestCapsSmall will also add.
12d). Click OK. Make sure Persistent Reference is clicked ON before clicking OK on the chest's Reference panel. Having this toggled on allows the game's engine to access this chest when we're speaking to our vendor. We do not need to give our vendor chest a Reference ID, though.
13). CELL / RENDER windows
Place the NPC vendor in the world, unless he/she is already out there.*
Tip: *Since your Render window will probably still be in the VendorChestCell, a quick way to get back to your NPC is to find him /her in the Object window, right/click on him/her, and choose Use Info. A panel will pop up with two windows. Double left-click on the text in the bottom window (where it says Interior). It can take up to a minute for the GECK to locate your NPC, but still, this process is easier than always remembering which cell you've put the NPC into.
14). Double-left click your vendor, so the Reference panel pops up. Select the Merchant Container tab. In the Cell scroll-bar, find the VendorChestCell. In the Reference scroll-bar, find the chest you just made. If you put "aaa" at the front of its ID name, yours should be at the very top of the list.
15). Click OK. And there you go.
Now, if we want this NPC to also repair stuff,..
16). QUEST windowFollow all the steps from 8d through 8g, to add dialog, conditions, and such. For step 8d, make a new topic which deals with repairing stuff. Make sure this topic links from the initial NPC's GREETING. So in that Greeting's Add Topics box, you'll now be seeing something like..
aaaRepairTopic
aaaVendorTopicNow add some dialog into the repair topic. "I can fix whatever you break."
17). The main difference here is in the repair topic's Result Script (End) box, we're going to type
ShowRepairMenu.
18). The NPC probably has a low Repair skill by default. If we want this NPC to be really good at repairing stuff, open up his/her information and select the Stats tab. Make sure Auto-calc stats and PC Level Mult are NOT chosen.
19). Click on the Repair skill (so it is highlighted) and press F2 on your keyboard. Now we can make this skill as low or high as we want, by adding some number, and then left-click on Repair to set this number. This number gets added to the NPC's base number. If the NPC's base Repair skill is 20 for instance, and we offset this by 60, their total skill will wind up as 80.
That is all. Close the GECK, save all your work, make yourself a copy of your .esp.
This post has been edited by Renee: Nov 19 2023, 08:08 PM