Skip to content

Second Life Script: Friendly Landmark Giver

A very common script in Second Life is a landmark giver.  This script gives out a landmark so that if a person visits your business, they can easily return.  Of course, a visitor can create their own landmark by using select World >> Create Landmark from the menu on top of the Second Life viewer.  But, a landmark giver just makes it more convenient.

What I did with this script is to use commonly available code for the landmark giver, but added a friendly touch to it.  When the visitor clicks on it, they receive the landmark, but they also get a personalized message thanking them.

Ever heard of the principal of three thank you’s?  If you thank a person three times, they’ll feel really good about you, and they’ll return to your business to buy again.

Of course, this isn’t all about money.  This is really about good manners and treating people kindly.  That’s not always the case in Second Life, but we can change things: one landmark at a time!

Be sure to copy everything between the two lines.  Script follows . . .


//Friendly Landmark Giver
//Coded by Chimera Firecaster ( - 05/15/2010
//The concept of storing the number of landmarks disseminated is
//  based on a script idea by Alicia Stella (
//  Great idea Alicia!  Be sure to visit her store in Second Life

//  1. Rez an Object and add whatever texture you desire
//  2. Place this script into the "Contents" of the Object
//  3. Place the Landmark to be given away in "Contents"
//  4. To edit the script, double-click on its name in "Contents'
//  5. Look for "REPLACE YOUR MESSAGE..." below and replace
//     The text with your own message.
//  6. On the script editing dialog you will see the "Mono"
//     Make sure it is checked. Then click on Save.

//Note: Make sure you include the landmark.  The script
//  will generate an error if it's not in "Contents"

//Note: this is a FREE script.  It is given generously to the Second Life
//   community without the expectation of anything in return. It may be
//   distributed, but please do not charge for it.  That's bad form.  Besides
//   dishonoring the kindness of others will most certainly bring you bad karma.

//-----Do Not Remove Above Header

integer nRequests;
  on_rez(integer start_param)
  llResetScript();  //Re-sets the script each time the object is rezzed
  }                   //this means that request count (nRequest) will be re-set
  nRequests = 0;
  touch_start(integer total_number)
    if ( llDetectedKey(0) != llGetOwner() ) //If not the owner, give landmark to visitor
    nRequests = nRequests + 1; //Count each time a landmark is requested

    //Watch carefully that you only replace the text between quotes
    llOwnerSay("A warm and friendly greeting " + llDetectedName(0) + ".  Thank you so much for taking a landmark.  I hope that you'll come back and see us soon.");

    llSleep(2.0); //Wait for 2 seconds to allow visitor to see her/his message

    llGiveInventory(llDetectedKey(0), llGetInventoryName(INVENTORY_LANDMARK, 0)); //Give the landmark to the vistor}
    else if ( llDetectedKey(0) == llGetOwner() ) //if the owner has touched
    llOwnerSay("Number of landmarks disseminated: "+(string)nRequests); //say how many landmarks given away


Keywords: Landmark Giver Script, Second Life Landmark Giver Script, Second Life Landmark Script, Landmark Script Second Life, Landmark Giver Script Second Life, SL Landmark Giver Scripts, Second Life Free Scripts, SL Scripts, SL Landmark Scripts

%d bloggers like this: