Bright
Networked Giver

Give out items via signs placed anywhere on the grid from a central server

DESCRIPTION

The Bright Networked Giver allows you to set up signs or 'clickers' across the grid, which when clicked can give out items, send messages, or open web pages: all controlled and configured from a central server.

The central server allows you to...

* Store items to be given out in one place - in a single, central prim.
* Put out "clickers" or distribution prims, for people to click to receive them.
* Update items in the server without having to visit all the clickers.
* Use item "aliases", so differently named items can be substituted in the server.
* Simultaneously support different clickers giving out different things.
* Store clicker configuration "profiles", so they can be changed centrally.
* Define each clicker's faces, textures, choice of action, faces and hot spots.

Each clicker can...

* Give items, send messages, or open web pages.
* Offer a choice of items in a menu.
* Respond differently to clicks on different prims, sides, or on "hot spots".
* Distribute anything: landmarks, notecards, product demonstrations, freebies...
* Optionally send you an IM whenever it gives out an item.
* Read the server's key from a web page, so the server can be replaced.
* Be placed in as many places as you wish, as it is copyable.
* Be sized and shaped as you wish, as it is modifiable.

INSTRUCTIONS

1. Rez the "Bright Networked Giver boxed #999".
(NOTE: #999 is just a version number: yours will be different!)
2. Right-click it: a pop-up menu will appear.
3. Click "Open": a contents window will open.
4. Click its "Copy To Inventory" button.

The folder "Bright Networked Giver boxed #999" will be created in your Inventory.

SETTING UP YOUR SERVER

1. Drag the "Bright Networked Giver server #999" to the ground to rez it.
2. Right-click it: a pop-up menu will appear.
3. Click "Open": a contents window will open.
4. Drop in items to distribute from your Inventory (you must have copy & transfer rights).
5. CLICK IT TO RESET IT!

You will see a message like "Server number: 95436c6f-00a1-14e6-437e-2ed072c7abaa". Make a note of this number: you will need it later.

SETTING UP YOUR CLICKERS

1. Drag the "Bright Networked Giver clicker #999" to the ground to rez it.
2. Right-click it: a pop-up menu will appear.
3. Click "Open": a contents window will open.
4. Double-click the "Settings" notecard to open it.
5. Change the settings, and click "Save" at the bottom of the notecard.
6. Click the clicker and hold down your mouse button until it resets.

The settings are as follows:

server 00000000-0000-0000-0000-000000000000 - replace the 0s with the server number you noted above.

access anyone - change "anyone" to "group" to restrict distribution to members of the group the clicker is set to, or to "owner" to restrict it to yourself alone (for testing, for instance).

text Click here/for stuff! - this message will appear in "floating text" over the clicker. Use slashes ("/") to mark line breaks, or specify "none" for no floating text.

notify always - the giver can send you an IM giving you the name of each person who clicks, when they clicked, and what they received. Change "always" to "failure" to receive IMs only when the distribution fails, or "never" to suppress all notification IMs.

reset-notify never - each clicker automatically resets periodically, at random intervals between 6 and 12 hours. To be notified when this happens, change "never" to "always", or to be notified when the reset fails, change it to "failure", but the reset will automatically retry, and so in general, you can safely leave this at "never".

wait 60 - determines how long the clicker waits for messages from the server when reading profiles (see below) or seeking confirmation that items have been delivered before reporting failure. Please note that Second Life communications between SIMs can sometimes take a little time: setting the wait period very short (to less than a minute) is likely to generate false reports of failure.

picture 00000000-0000-0000-0000-000000000000 - replace the 0s with a texture number to display that texture on all the sides of the clicker. To paste in the number for your chosen texture, find it in your inventory, right-click it, click "Copy Asset UUID", click in the notecard, and press "Control+V".

item name - replace "name" with the name of the item to be given it. You can add as many "item" lines as you like: if there is more than one, the user will be offered a menu to choose from. Example: item Bright Corporation landmark

say message - replace "message" with the text of a message to be sent by IM to an avatar clicking the clicker. Use "~" characters to mark line breaks. You can also add multiple "say" lines, to send a series of messages. Example: say To see Shan Bright's profile, visit secondlife:///app/agent/4b16ad11-0a56-4627-8eb6-4c88a9850fb5/about

web url - replace "url" with the address of a web page to open (*without* a trailing "/") when the clicker is clicked. Example: web http://brightcorporation.net

FACES AND HOT SPOTS

You can add a digit between 0 and 9 to the "picture", "item", "say" and "web" settings to restrict its action to an individual face. (The faces of a cube are numbered 0=top, 1-4 sides, 5=bottom. You can find more detailed information at http://wiki.secondlife.com/wiki/Face in the Second Life wiki.)

For instance, while "picture abc..." specifies that the texture "abc..." will be shown on *all* faces of the clicker, while "picture2 def..." specifies that texture "def..." will be shown on face 2.

If you'd like texture "def..." on face 2, and "abc..." on all the *other* sides, use:

picture abc...
picture2 def...

These settings are applied in the order they are written: so first the texture "abc..." is applied to all sides, and then texture "def..." to face 2.

Similary, "item Bright Corporation landmark" specifies that the item "Bright Corporation landmark" will be given out when the clicker is clicked anywhere. "item2 Bright Corporation landmark" will only give the item out if the clicker is clicked on face 2.

There are also versions of the "item", "say", and "web" settings which apply only to a particular *part* of a clicker's surface or "hot spot". They are "itemspot", "sayspot" and "webspot".

Imagine the surface of your clicker has two scales, one running from left (position 0) to right (position 1), and one running from bottom (position 0) to top (position 1). A "spot" - a rectangular patch of the surface which an avatar might click - can therefore be defined by four numbers between 0 and 1 separated by commas *without spaces*: left,right,bottom,top. (These coordinates are illustrated on the "demo clicker" - take a look.)

For instance, 0,1,0.5,1 is the top half of the surface. The click can be anywhere from 0 to 1 left to right - ie. across the whole width - but must be between 0.5 and 1 bottom to top - ie. in the top half.

The form of the three "spot" settings is:

itemspot left,right,bottom,top name
sayspot left,right,bottom,top message
webspot left,right,bottom,top url

The setting "itemspot 0,1,0.5,1 Bright Corporation landmark" therefore means that if the top half of the clicker's surface is clicked, the avatar will be given a landmark.

Note that this means that the top half of *any* face of the clicker. To restrict the spot to a particular face, add a digit between 0 and 9: so for instance "sayspot4 0,0.5,0.5,1 Hello!" means that if an avatar clicks the top left quarter of face 4, they will receive the message "Hello!".

The main use of "hot spots" is to allow you to create virtual "panels" or "buttons", painted on your texture, on the side of your prim. It's therefore not a bad idea to include a "picture" setting when you are specifying spots, as when you create a new texture, and you change the "picture" line in the settings, you will be reminded of the various "itemspot" settings immediately following it which need to be updated to represent the positions of the hot spots on the new texture.

MULTIPRIM CLICKERS

The standard clicker is only one prim, and as the demo clicker demonstrates, it is possible to provide a number of different "hot spots", each of which does something different - so you don't need to create a multi-primmed clicker simply to offer users a choice.

However, you may wish to create more elaborate, three-dimensional objects using more than one prim - and the Bright Networked Giver makes this simple.

Just copy the scripts and settings notecard from the standard clicker into your inventory, and then into the root prim of your multi-primmed clicker. It is then a question of editing the settings card.

The settings are exactly the same as usual, except that you can prefix any setting you only wish to apply to certain prims, with a search string followed by a ":". For instance, the setting...

picture abc...

...will apply the texture abc... to every prim in the object, whereas...

screen: picture abc...

...will only apply the texture to prims which have the string "screen" in their names.

You can also use this in combination with faces and hotspots. For instance...

sayspot4 0,0.5,0,1 Hello!

...will say "Hello!" when you click the top half of face 4 of any prim, whereas...

screen: sayspot4 0,1,0.5,1 Hello!

...will only say it when you click the top half of face 4 of any prims with "screen" in their names.

screen: sayspot4 0,1,0.5,1 Hello!

USING ALIASES

Imagine you are giving out a hat, called "Free Hat v1". You then develop a better hat, called "Free Hat v2", and put it in the server: the problem is that all your clickers are set up to request item "Free Hat v1".

To solve this problem, edit the "Settings" notecard in the server. To set up "Hat" as an alias for "Free Hat v1". for instance...

1. Right-click the server: a pop-up menu will appear.
2. Click "Open", a contents window will be opened.
3. Double-click the "Settings" notecard to open it.
4. Add "alias Hat|Free Hat v1" (note "|" between the alias and the item name).
5. Click the "Save" button at the bottom of the notecard.

Now, add the line "item Hat" to your clickers' "Settings". When people click them, they will receive "Free Hat v1". When you develop "Free Hat v2", just this to the server, change the "Settings" line to "alias Hat|Free Hat v2", and there's no need to update the clicker.

USING PROFILES

If you have many clickers to configure the same way, use a "profile". For instance, if you have multiple clickers giving out landmarks to your shop, in the "Settings" notecard in each *clicker* add the line...

profile Shop landmarker

Then in the "Settings" notecard in the *server*, add the lines...

profile Shop landmarker
item My Shop, Sim (10, 20, 50)
picture 6a4a38fd-42ed-9b36-a2b5-d47d4bb31372

The lines following "profile..." in the server "Settings" notecard will all be treated as if they were in the clicker's own "Settings" notecard - so you can specify which items a click should offer, which texture should be shown on its sides, or indeed any of its configuration details centrally.

You can set up as many profiles in a single server's notecard as you wish. Clickers will consult the server at random intervals, though always between six and twelve hours: the randomness being designed to stop multiple clickers all demanding profiles at once. As a result, if you change a profile in your server's notecards, any clickers using it will be updated within twelve hours.

SETTING UP THE DEMO BOARD

The box includes a "Bright Networked Giver demo board #999" and a "Bright Networked Giver demo server #999", which illustrates the settings above. To try it out, drag them both onto the ground. The demo board will complain that it cannot find a server, so...

1. Click the "server" to find out its server key.
2. Edit the settings notecard in the demo board, and replace the "000..." on the server setting line with the server key.
3. Click the demo board and hold down your mouse button until it resets.

You'll then be able to click the hot spots on the demo board to see it give out a single item, multiple items, opening a web page, or sending a message. Edit the demo board's settings notecard to see how it reads its profile from the server, and edit the demo server's settings notecard to see how the hot spots are configured.

STORING THE SERVER NUMBER ON THE WEB

(The following trick is useful, but a little technical. If you don't follow it, don't worry: the Bright Networked Giver will work without it.)

Instead of specifying the server number in the "Settings" notecard, you can store it as part of a web page, and replace the "server..." line with a line like this...

website yoururl.com/yourpage.html

(Note that you *don't* need to specify the "http://" prefix.) This will tell the clicker to read the first 2K of the HTML source of the web page, and look for a the server number between square brackets, like this: [0aec5194-8cff-d46a-e9d0-463e594cd091]

The advantage is that if you replace your server, you can simply change the server number on your web page. The clicker will reread the page every 6-12 hours (a random period to avoid a group of clickers resetting simultaneously), and start using the new server number.

The number needn't appear on the page when viewed with a browser, as the clicker reads the HTML "source", so you could put the server number in an HTML "comment", like this:

If you don't have a website, add the server number (eg. [0aec5194-8cff-d46a-e9d0-463e594cd091]) to the end of your profile description. Then press Control+F, press the "All" search tab, and search for your own name. Ignore "Resident Profile: Shan Bright", and instead click "Shan Bright", shows your details as a web page. At the bottom of this is the line "Link to this page: http://world.secondlife.com/resident/4b16ad11-0a56-4627-8eb6-4c88b9850fb6".Then add this address to your "Settings" notecard...

website world.secondlife.com/resident/4b16ad11-0a56-4627-8eb6-4c88b9850fb6

The clicker will read your profile from the web, find the server number in your description, and use it to find the server: if you ever replace the server, you need only change it in your profile. If you don't want it in your profile, use the profile of an alt, or a group description. Please note, though, that the "web page" version of profile and group descriptions take a little time to be updated to reflect edits: sometimes a few hours, sometimes longer.

TIPS

* Unless you are sure the name of an item will never change, use an alias for it: that way, you can change the name of the item in the server without changing the settings in your clickers.

* Storing your server number on the web is a good idea, because it means that you can replace the server without changing the settings in your clickers. If you don't have a website, and don't want to add it to your profile description, create a group or an alt and put it in their description: or use a free webspace provider like Geocities (http://geocities.yahoo.com/).

* If you are using a "profile" setting to configure your clickers using a central notecard in the server, put "picture" and "text" settings in the central notecard, so that you can not only change what the clickers offer when clicked, you can change the text they display and any information shown in the textures on their sides.

* Save prims by replacing a group of clickers in one place with a single clicker with a texture with several buttons painted on to it. Then use the "itemspot", "sayspot" and "webspot" settings to respond to each button differently.

* If your texture with hotspots is only showing on a particular side (eg. "picture2", for side 2), make sure you use the corresponding hot spot settings to respond only to that side - eg. "itemspot2". On the other hand, putting the same texture on all the sides means that you can create a sign which works whichever side is clicked - in which case just use "picture" and "itemspot" *without* face numbers. Paint the top and bottom of your cube giver black, and you have a sign which faces four ways, all of which work!

* Giving things away is good for business! Give out freebies: it will attract visitors. Give out landmarks! It will make it easy for them to come back.

FOR MORE INFORMATION CONTACT...

Shan Bright
Chief Executive Officer