Creating a new vendor
- Go to the Actors/NPC section of the Object Window,right click one of the names and select new to Create a new NPC.
- Name your new NPC and give it an ID you will recognize. Also make sure the new NPC has "Autocalc Services" ticked under the AI Data tab
- Go to the Actor Data/Quest section of the Object Window and create a Quest in the same way you created a new NPC.
- Tick start game enabled, enter a quest ID and then click "Ok" in the bottom right, then open the quest again.
- Make sure to set the priority to 25 under the Quest Data Tab or your NPC will not speak the dialogue.
- Go into the topics tab of your quest, right click in the Topic box (the white list on the left underneath the box Top-level only), select add topic, scroll down to "GREETING" and left click.
- Add another topic but instead of clicking on GREETING, right click in the topic list and select "New"
- Name this new topic "Buy", "Purchase" or some other name unique to your NPC that you will recognize.
- Finally, select your created topic and press "OK" to add it to your dialogue.
- Now select GREETING from the left section of the window (GREETING topic).
- Right click the info tab and click new, make the response text whatever you want, this is what your NPC will say when the player first talks to them. Also make sure to leave the prompt section clear.
- This is an important step, with your greeting selected in the Info tab right click the Conditions tab and select "New".
- Click the "INVALID" button and scroll down to your NPC's ID, then click "OK". This makes it so that only your NPC will use the custom greeting you created. Now make sure that the "Condition Function" box says "GetIsId", the "Comparison" Box is "==" and the "Value" box is "1". Select "OK".
- Now select the "Buy"(or something similar) topic once more (from the left topic box)
- Right click the info tab, select "New" and enter into the Response Text box what your vendor will say when the player selects "Buy". Then select "OK".
- In the "Info Details" section, click on the box to the right of the word prompt and enter, unsurprisingly your prompt... i.e- "I'd like to buy something"
- Select "Buy" in the Info tab right click the Conditions tab and select "New".
- Click the "INVALID" button and scroll down to your NPC's ID, then click "OK". This makes it so that only your NPC will use the custom greeting you created. Now make sure that the "Condition Function" box says "GetIsId", the "Comparison" Box is "==" and the "Value" box is "1". Select "OK". This will allow your vendor to sell stuff.
- At the bottom of the window, in the "Result Script (Begin)" box type: SHOWBARTERMENU
- Finally, Reselect GREETING and go over to the "Add Topic" tab, right click it, select Add Topic and select your "Buy" topic ID.
- Create a NEW container.
- One way to do this is to go to the World Objects/Container section of the Object Window and set the filter to generic.
- Then right click the generic safe, select edit and enter an new ID. Now select "OK" and a box should pop up asking if you would like to create a new object or re-ID the existing object. Hit "yes" to create a new one.
- Once that's done, you are ready to put the container inside your store's cell. A good place to put it is somewhere the player won't be able to gain access to it, like outside the building zone or under the ground level. If you do choose to place it inside the store itself, then be sure the container is locked.
- Then put whatever you want in it as this is what the merchant will sell. Also make sure to put some caps in it so the vendor has some money to buy some of your things.
- To finish off your container, double-click it in the render window and make sure the Persistent Reference box is ticked on.
- Place your NPC inside your store, double click him in the render window and select merchant container, and scroll down to your container's ID, click okay, save and you're done.
Phew. Now, if you want to talk to your vendor through an intercom.
- Go to the Talking Activator Tab under "actors" and create a new one (New ID) and put it in your cell.
- Double click your NPC inside the store, at the top type a new ID at the top where it says "Reference Editor ID"
- Create a new script:
ScriptName scriptID Begin OnActivate setTalkingActivatorActor VendorReferenceID activate End
- and attach the script to your talking activator