Whenever I want to edit what a vendor has I always just go and edit it directly. For instance, I wanted to increase how many weapon mods a vendor carries to increase the odds that I'll find a mod I'm looking for so I went to the mod I wanted, right clicked, and selected use info. This brings up a list of things that that particular item is used in. I then select the one I want and either modify it directly or select use info for that one until I reach the level I want to mod.
When I get to the level I'm looking to mod, I add a new item or modify an existing value to do what I want. I've never added any chests or anything like that. Don't even know why people do that stuff to start with.Example of what I did.Varmint rifle scope - right click, select use infoweapon mods tier 1 - right click, select use infoVendor Chet - double clickweapon mods tier 1 in Vendor Chet's trade window - modify value from 2 to 8 (forces it to choose 8 random items from the list and add them to his trade inventory whenever he resets inventory instead of 2)You could also add your items in that last part.Hope that helps.Posts: 3421 Joined: Thu Mar 29, 2007 6:40 am. Odjntrade i'm sorry to inform you but directly editing vendors is a very dirty way to mod and is highly frowned upon last i checked. It overwrites the original settings replacing them with your own. If everyone were to do this to the same vendor then only the last loaded mod would take effect. By adding your own chest you avoid any incompatibilities with other mods.
This is true with any other setting in the GECK, ideally you always want to take the route with the least amount of compatibility issues even if it is a bit more work.Posts: 3321 Joined: Thu Dec 21, 2006 8:24 am. Getting back to the original question.I too want to add a new chest to Gunrunners HQ so that I can add a non re-spawning item. I am not sure how to do that. I followed the tutorial but.there is no NPC to place ownership on the new chest to. How is the Gunrunners inventory chest associated with the Vendertron who does not appear to be a real NPC?Ugh.I may just have to add it to Alex over at the 188.Any help would be greatly appreciated.Thanks.Posts: 3385 Joined: Mon Oct 16, 2006 5:56 am. I'm using the following code to add items to a number of vendors. The IMCNMiscStuff item is a leveled list containing the things I want them to sell.
The IMCNVendorToken is a piece of dummy armor flagged as unplayable. What happens is, when the vendor's container respawns, the vendor token is removed. The script detects this the next time it executes, and re-adds all of the items, so they respawn along with the container. The advantages of this method are there there is no potential for mod conflicts, and the items are available as soon as the mod is installed. Nope, Vendortron is a real creature. You should just be able to drop the container in their cell and Vendortron will sell from it. However, he's located near the join between 2 cells, so you'd need to make sure the box is the right side of the line.I tried that this week, and couldn't find his personal faction.
I'll have to look again. My plan was to put a custom container at his location, owned by him.(I prefer the container method for a few reasons. It lets you create leveled lists so that the additional inventory is random and it avoids creating a script that has to run constantly.)Posts: 3366 Joined: Wed Nov 14, 2007 11:41 pm. I have GECK open at the moment.The protectron that acts as Vendortron is a creature (base of GunRunnerProtectron).
A creature (VendortronRef) where the RefID's merchant container tag points at one of the hidden containers (VendorContainerGunRunnerHQ) in the NVVendorsChestsCell. Creatures do not have personal faction.Ugh. Which goes back to my question over on the Nexus of '(or an from Fallout 3).So I only see two ways to get items added to the VendorTron's list (maybe 3):1. Add leveled lists or individual items to the base container definition for VendorContainerGunRunnerHQ.
Which conflicts horribly with any other mod that attempts to do the same thing. The same would go for replacing him with a real NPC, it would conflict with other mods.2. Use the AddItem command in a one-time start-up script.
The downside is that it's a one-time-deal and the items may vanish when the container resets?3. Use the always-running (ugh, performance?) script that monitors the container and restocks it with AddItem. At a minimum, the script would need to save the 'last manual restocked' date and only run again after 6-12 game hours.
And I'm not sure you could use leveled lists to randomize the amount of stock.Given that he's a creature that sells things, I'm not sure of any other methods.Posts: 3522 Joined: Mon Jul 02, 2007 12:53 pm. One idea that I have combines the use of a personally-owned container (linked back to a base-object that is flagged to respawn and populated with either items or level lists) and a script.I could set it up just like the standard vendor-owned container method, then attach a script to OnLoad for that base container definition. The OnLoad script would check the container, see if there is anything inside it, then move the contents of the custom container over to the vendor's official container.The script would then only run when you enter the cell or cause the cell to be loaded, which would hopefully happen after the contents get respawned. (Execution order might matter here.)Posts: 3537 Joined: Mon Oct 16, 2006 4:02 am. Looks like is the magic. 000ED4CF is the RefID for this instance of VendorContainerGunRunnerHQ.wrDENVVendorContGRVendortronRef.RemoveAllItems 000ED4CFI'll just need to add an item that always exists in the DENV's container at respawn.
Maybe a single cap. Which turns the code into:Begin OnLoad If (wrDENVVendorContGRVendortronRef.GetItemCount Caps001 0) wrDENVVendorContGRVendortronRef.RemoveAllItems 000ED4CF; Display a debug message alert EndIfEndHow efficient is 'GetItemCount' going to be? Not that it matters much since we're doing all this in OnLoad and not GameMode.Well, almost.
VendorContainerGunRunnerHQ is a base ID. The actual object doesn't have an identifier.Posts: 3309 Joined: Tue Jan 23, 2007 11:32 am.
This.almost. works.
The items are getting added to the Vendortron, but every time you come back to the cell, it adds the items over and over again on each new visit. I checked a few items (some are unique to my DENV mod):1: 8001 caps 3 40mmEMP 0 MiniNuke 1 MissileEMP(went away and rested for 3 days)2: 8001 caps 11 40mmEMP3: 8002 caps(here's where I started noticing and started to keep track)4: 8003 caps 29 40mmEMP 6 MiniNuke 19 MissileEMP5: 8004 caps 35 40mmEMP 6 MiniNuke 24 MissileEMP6: 8005 caps 37 40mmEMP 6 MiniNuke 28 MissileEMP7: 8006 caps 45 40mmEMP 9 MiniNuke 30 MissileEMPNot sure yet what is going on, except that the Vendor cell is probably on a different timer. But 40mmEMP and MissileEMP ammo is unique to my mod. So either my container is constantly respawning, or RemoveAllItems is doing something strange.Posts: 3392 Joined: Tue Nov 13, 2007 6:34 pm. After walking away and noodling on it for a bit, I think I know why. I remember something about vendors immediately re-stocking their wares if you completely cleaned them out before?
Is the following statement true in Fallout New Vegas?- If a container that is set to respawn is emptied completely, it will immediately respawn?If so, then the only adjustment I need is the clue that Imp of the Perverse gave, where they place an 'unplayable' item into the container. Unplayable (and quest items) are not affected by RemoveAllItems, but since the container never empties, it should prevent the bug (until the cell resets).Posts: 3323 Joined: Mon Oct 15, 2007 12:56 pm. I dont quite get the problem here. Interesting, so if the newly created faction has 'Allow Sell' checked off, the items will show up in the Vendortron's inventory. Personal factions (created on-the-fly by the game engine for every NPC) must already have 'Allow Sell' implicitly set.
That's not something that is well documented anywhere from what I've seen. The traditional 'page on the GECK wiki implies that it has to be a personal faction ('select your NPC from the drop down list').Which makes the following method probably the most efficient:1. Create a new faction for the Vendortron (i.e.
Relations with other factions don't matter, but you must check off 'Allow Sell'. Just don't make the new faction hostile to any other faction.2. Create a new base container, set it to respawn (or leave that unchecked if this is a one-time deal). Populate the container with individual items or leveled lists. In the case of the Vendortron, I suggest adding a certain number of Cap001 items so you can easily see that it's working while testing. The Vendortron has 8000 caps by default, if you add 5 caps with your new base container, it becomes easy to see that the Vendortron now has 8005 caps.For restocking ammo or other items that come in quantity, I prefer leveled lists with random amounts of ammo because it feels more traditional and natural.
Plus it lets me tune things fairly easily so that Gun Runners carry more of the new ammo types then a poorer merchant like Chet. Along with having the leveled list result in greater quantities of ammo as the player levels up.3. Place a reference object of the container somewhere that it will be affected by cell reset. You could probably just put it in the New Vegas vendor chest's cell and be done with it.
I went with the traditional method of putting it in the same cell as the vendor NPC/Creature. Set ownership of the new container to the faction you created in step 1.4. Create a one-time quest script that runs and adds the Vendortron NPC (RefVendortron) to the custom faction created in step 1.scn wrDENVStartupScriptshort DoOnceAddVendortronToFactionBegin GameModeIf (DoOnceAddVendortronToFaction 0) VendortronRef.AddToFaction wrDENVGunRunnerVendortron 1 Set DoOnceAddVendortronToFaction To 1;ShowMessage somemessageIDEndIfStopQuest wrDENVStartupEndThat's a solution that I like, because it's minimal scripting and you're not running a script on every frame (other then the start-up script). Alternately, instead of attaching a one-time quest script, you could have attached the script to the OnLoad event for the container instead. Which would delay processing until you enter the Vendortron's cell for the first time.It's also zero conflicts with other mods, which is a big plus as NPCs/Critters/Actors can belong to multiple factions.Posts: 3330 Joined: Fri Jun 23, 2006 10:48 am.
Which makes the following method probably the most efficient:(snip)I like this method - and it's one I hadn't thought of, so thanks for that.I've recently been wrestling with this same issue for and this is cleaner than the method I had settled on; makes me wish your post had existed before I released an update the other day. Oh well; I'll do another update sometime soon, I guess.One pretty minor thing; I simplified the script a bit. No need for the DoOnce stuff if the script is only going to run through once anyway:scn DAVendortronFactionQuestScriptBegin GameModeVendortronRef.AddToFaction DAVendortronFaction 1StopQuest DAVendortronFactionQuestEndPosts: 3350 Joined: Mon Jun 25, 2007 4:31 pm.
Good catch about the DoOnce being overkill.StopQuest is great - if you know that you will never ever add more if/endif blocks to the startup script (like additional vendors, or adding a new ammo type to the lists). It's the preferred solution for start-up quests that need to run once. But if you develop incrementally, with plans for future updates, the users have to jump through hoops to get the new features of the latest update. So instead, I tend to use a new DoOnce block for each additional version (with a new variable to track state) and skip StopQuest.(I could also just create additional quests and quest scripts for each additional feature added in future updates. It's more work, but more efficient and lets you use StopQuest.)Posts: 3506 Joined: Mon Dec 11, 2006 7:56 amDisplay posts from previous: Sort.