CasperVend 2/Customisation
Because of the fact that vendor customisation is an advanced topic which depends on a higher level of ability, we do not provide technical support for this process. The instructions below will provide all the information you need to create your own vendor.
If you are having absolutely no luck, however, alternatively you can pay us to do it - see our Customisation Service for details.
Where Do The Scripts Go?
The vendor script (and thus the mapping helper script) must always be in the root prim.
Also, the panel that you expect the customer to pay on - to get the product - is the panel that should be part of the root prim. Otherwise, you will get script errors - the "pay" function of LSL only recognizes the root prim of a linkset.
Custom Textures
Offline / Back Soon Textures
Inside each vendor are two textures: "BACK_SOON" and "VENDOR_OFFLINE"
Simply create two replacement textures, name the appropriate one with the appropriate name, Delete the old ones out of the vendor, and replace with the new. It's that easy!
"No Product" Texture
- Place your texture into the contents of the vendor
- Rename the texture to this: 7273cc74-2b6c-530f-293a-3af92422beae
- Reset/resync the vendor so that it re-reads the contents and picks up the new texture.
This will allow YOUR customised "No Products" texture to be used rather than the default CasperTech one.
You may need to reset the vendor for it to pick up your custom "no products" texture.
Difference Between "Touch" & "Headless" Vendors?
The "headless" vendor is designed to be used in an object - such as a houseplant or a table - that you would sell directly. These objects do NOT use vendor images, so the "headless" configuration does not call the picture for the product, ever.
The "touch" vendor is designed for people want to use their vendor in use vendors in more general shapes - like boxes/cubes or other single-prim items - while still showing the vendor image on them.
Both types are designed to vend only ONE product.
"Touch" Vendor
The touch vendor allows the customer to interact with different options by way of a click/touch popup menu instead of buttons on one of the visible faces. This means that the vendor can be in a "standard" box shape, with customers being able to interact with all sides of the vendor instead of only one or two sides of it.
The touch vendor is only designed to vend ONE product - so don't use a profile that has multiple items in it, because only one of them will be displayed. It has no way to scroll between items.
MAPPING CARD
If you are using the touch vendor as a generic box/cube shape, and simply want customers to be able to PAY any side of the box, then you can either go through the mapping configuration, or make this simple change in the mapping card:
- Where it says: __ROOT__,1,<0.0,0.0,1.0,1.0>
- Change it to: __ROOT__,-1,<0.0,0.0,1.0,1.0>
Touch-vendor-as-cube known error: If you use the "__ROOT__,-1,<0.0,0.0,1.0,1.0>" trick, the vendor WILL give you a "llSetPrimitiveParams error running rule #2: non-integer rule." message. The vendor will STILL FUNCTION despite this error. Casper is aware of this and is looking into a fix.
"Headless" Vendor
The "Headless" vendor allows you to take the contents and drop them into one of your own objects - you can essentially turn one of your products into a vendor this way.
If you ONLY want your objects to accept the "PAY" function without having menu or button options, simply drop the script in the object without a MAPPING notecard.
Caveat: This is not recommended for furniture that gets sat on - the vendor script will soft-reset anytime an avatar sits or unsits, since LSL sees it as a change in the linkset. We recommend the holovendors to display furniture instead.
Remember that "Headless" vendors can ONLY vend ONE product. Link them to products the same as you would as if you were using the 1-prim STATIC vendor.
About The "EasyMod" Sample Object
This is an example vendor set up just so that you can see the maximum possible buttons. Each prim in the vendor is labeled with the appropriate button name the script is looking for.
Included inside the EASYMOD vendor example are all the default button textures, as individual textures.
The "EasyMod" is NOT intended to actually be used AS a vendor - only as an example of the complete setup.
NOTE: The numbering on the prims of the EasyMod may not necessarily match the order of the mapping helper script panels. This is just a sample layout.
Customising Your Vendor Object
Name Your Prims!
If you look at the "Easymod" example in edit mode, you'll notice that each of those prims has a different name. This is CRITICALLY IMPORTANT - because the mapping script essentially looks for "the face ____ on the prim named ____" - if of your customised vendor prims are ALL named "object" your mapping will be very VERY confused, and your custom vendor will NOT work properly!
You do not need to have one prim per used face - as evidenced by the many primsaver type options in the Free / Premium packs and third party addons - however each prim that IS used, needs to have its own unique name.
Using The Mapping Helper Script
- Drop the CasperVend mapping Helper script into the root prim of the vendor object.
- Click the vendor object
- Follow the instructions on the popup menus
Read the Popups!
Read each of the popups CAREFULLY as you go through the mapping process. There are explicit instructions on each popup to tell you where and what part to click next.
Headless: Making A Non-Vendor Object Into A Vendor
- Take the vendor script AND "mapping" notecard out of the headless vendor into your inventory
- Drop the script and notecard from your inventory into your product
- Click the object, and select "Admin"
- Log in to the website, if necessary
- You will be taken to the configuration page for that vendor product
- Change your options as desired
- All set!
Remember: All vendor objects NEED a mapping notecard - they will not function without it. You do NOT need to set up panels, but the vendor script does need to know that it can accept payments from all faces.
Texture Repeat Issues
If you are having issues getting the textures to repeat properly and in the correct orientation...
- First, fix the textures
- THEN, hard reset the script. That way the script will reset and pick up the new orientation as correct, instead of remembering the old.
Do NOT use "reset" on the popup if you are trying to fix the texture - use edit mode, then find the menu option for "reset scripts in selection".
Alternately, you may pick up and then re-rez the vendor, but remember that doing so will leave an extra vendor on your website vendor list each time (so run the upgradebee on "Check All" when you're done to flush out the non-rezzed vendors.)
Texture Templates
Inside the vendor shipping crate is a box called "CUSTOMISATION GUIDE AND TOOLS". Inside THAT box is a box called "CasperVend2 Templates".
Inside that box are templates for the following things:
- Standard / Mesh CasperTech CasperVend vendors
- Gatcha templates
- Lucky Chair templates
- Midnight Madness template
- Redelivery Terminal template
Templates for the Transporter are NOT currently in the box, but ARE available upon request from either Casper Warden or Sphynx Soleil - simply inquire inworld.
TextureVend templates are inside the TextureVend vendor itself.
About The Mapping Script Process
This is a basic overview of the mapping script process - do NOT use this as a guide to set up a MAPPING card - this is only informational.
- Reset
- This wipes any configuration you've done up to that point
- Textures
- There are 13 possible texture displays on a vendor, and this option walks you through selecting which display is which. If you're having trouble visualising the usual order of these buttons, rez out the "EasyMod" from the Customisation box and look at how the prims are named. (use Edit > Linked Parts if necessary).
- You do not need to be in "edit" mode to do this step - being in edit mode means you have to right-click, THEN "touch" as opposed to just clicking the prim.
- The script will ask you to tell it the faces of the display panels. So that you know ahead of time, it is looking for this information in the following order:
- Left panel six
- Left panel five
- Left panel four
- Left panel three
- Left panel two
- Left panel one
- Main texture panel
- Right panel 1
- Right panel 2
- Right panel 3
- Right panel 4
- Right panel 5
- Right panel 6
- If you want to use all sides of a prim for one or more of those faces, then click "ALL SIDES" on the popup menu, BEFORE clicking the prim. It will give you another popup once it's processed the "ALL SIDES" selection and is ready for you to click the prim.
- You WILL be having popup dialogues for each step. The one for the current step will always be on top - ignore the ones that are left up from earlier. It is NOT required to click "ok" or "ignoree" on the popups menus before proceeding to the next step but you can if you want to. (LSL doesn't allow self-closing of popup menus.)
- Just click "skip" for the display panels you're not using. If you're using a simple one-prim, one-item vendor, then just use "skip" on everything BUT the "Main Texture Panel".
- Buttons
- This maps the clickable button areas from TOP LEFT to BOTTOM RIGHT, in the following order:
- Page Left
- Scroll Left
- Admin Button
- Search Button
- Help Button
- Demo Button
- Gift Button
- Scroll Right
- Page Right
- Rez
- As with the texture panels above, just click "skip" on the options you're not using. (For example, not everyone uses the demo button.)
- Yes, this can be used to customize buttons for a v2.x HoloVendor!
- Finish
- This does two things: (1) Sends the configuration to a code pasting site, and (2) gives you the link to the page it went to so you can copy it. Remember this link is valid for just one hour so if you get distracted and it expires, you'll have to do the configuration all over again.
Copy the configuration file from pastebin into a notecard and drop it in your vendor.
- NOTE:
- MAPPING notecards should have 37 lines for a normal vendor, and 38 lines for a holovendor. If you generated one that is longer or shorter than this, tell the mapping helper script to "reset" and go through the process again.
Delete the mapping helper script from the vendor once everything else is complete
Copy the MAPPING list from the pastebin site into a notecard and drop it in the vendor.
All done!
FAQ / Troubleshooting
- Q. If I stretch / resize my vendors, will they still work?
- A1. Yes, it doesn't matter what size the vendor is, as long as all the buttons map correctly.
- A2. You can also change the shape, just remember to go through the instructions in the customization section to remap all the buttons and vendor image panels correctly.
- Q. I rezzed out my 2.x vendor, gave it permissions, but now it's all gray!
- A. This can happen for one of two reasons:
- Incorrect "MAPPING" configuration card
- Vendor is set to a profile with no products
- (If scripts are OFF and the vendor cannot work, you will NOT get a debit window, any message, OR change in vendor textures. If you have muted yourself, you won't get a debit window or any message either but you will see the textures change.)
- A. This can happen for one of two reasons:
- Q. I just noticed setting my vendors to "offline" makes them all a flat grey colour - can I replace that with my own image?
- A. The vendors are going grey because you don't have the "VENDOR_OFFLINE" texture in the vendor. So yes, you can replace it with your own branded texture - they only went grey because there wasn't ANY texture by that name.
- Q. Can I change the "No product" texture to my own?'
- A. Yes you can! Place your texture into the contents of the vendor, and give it the name 7273cc74-2b6c-530f-293a-3af92422beae. This will cause the vendor to use your texture rather than the CasperTech "no product" texture.
- Q. A vendor I'm setting up for a new profile has a quirk, each time I "touch" it, it tells me "(my vendor name): Touched" - and does not display the menu, just gives me that message. How do I fix this?
- A. Look inside the vendor contents for a script named "New Script". The script that ships with the vendor will never be named this, so if there is a script named "New Script" it may safely be deleted. (You may have accidentally clicked "new script" - which creates a script that just tells you the object was touched.)
- Q. Can the vendor be set up as a cube - a box, rather than a poster?
- A. Rez the "Touch" vendor - that uses just a menu, so it can be re-shaped to be a box. You'll need to customise the texture mapping so that the product image is shown on all sides.
- Q. I want to use the "Headless" vendor script in my furniture, but it keeps resetting every time people sit on it!
- A1. You may find it easier to use a HoloVendor for furniture, rather than the headless script.
- A2. Alternately, you can use a regular vendor box near the furniture you have out.
- Q. Can I set the vendors to "Phantom"?
- A. Yes, and they will still work :)
- Q. I pulled out a new vendor / did custom mapping for this vendor and the buttons / panels / main panel aren't working / aren't giving me the popup menu.
- A1. Generally, if a button or panel isn't working or responding, or you're unable to get a touch/popup menu on the main panel, then the mapping needs to be redone. You may have already custom mapped it, but something may have gotten "confused" in the copy/paste process going from the pastebin site to the notecard. If it hasn't been an hour yet you can just carefully re-copy the mapping information off the webpage.
- A2. If you've gone through the mapping more than once on that vendor and it's still not working right, you will need to "Reset" the mapping script first before trying again.
- Q. I've copied the script and notecard from one of the box vendors into my own prims, but no matter what I do, everything ELSE works but there's never any picture.
- A. Try the scripts from the "Touch" vendor rather than the "Headless" vendor. The "Headless" set is designed to be put into an object to be sold, like a dresser or a table, rather than a vendor box.