Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Looking for a Perfume Script

Vampirella Jewel
Lady Vamp
Join date: 4 Jun 2005
Posts: 17
11-14-2006 12:16
Greetings everyone. Ive noticed a popular new addition to SL lately in the form of mens and womens scents using a script. Ive been trying to find this script or a full permission version of the item and script for about 2 weeks now and have had no luck at all and could find nothing in the scripting library on it. I would be interested in getting this script so that I can bring my RL world scent creations to SL. Apparently the script allows for descriptions to be given in open chat when the item scripted is worn. If anyone can help me with this, I would appreciate it immensely. Please post your replies here or send an IM to Vampirella Jewel in-world. Thank you very much.
Eloise Pasteur
Curious Individual
Join date: 14 Jul 2004
Posts: 1,952
11-14-2006 13:28
You need to be careful about spamming people. For that reason I won't suggest you go to products wanted where people normally get sent with such requests.

I also won't write the code for you, but it's basically quite simple.

You load your phrases into a list (there are other ways, but this is the easiest for a beginner), have a random timer with a reasonably long value, and when the timer fires you say a random phrase from the list.

You might find the lslwiki (lslwiki.com) helpful. llFloor, llFrand, llList2String, llSetTimerEvent, state_entry, timer and llWhisper would be the places to look, that should do the job for you.
_____________________
Eloise's MiniMall
Visit Eloise's Minimall
New, smaller footprint, same great materials.

Check out the new blog
Vampirella Jewel
Lady Vamp
Join date: 4 Jun 2005
Posts: 17
Follow up on reply to Original Post
11-14-2006 16:34
From: Eloise Pasteur
You need to be careful about spamming people.


To my knowledge posting on a forum is not spamming. I was making a request for assistance, nothing more.

From: Eloise Pasteur
I also won't write the code for you, but it's basically quite simple.


May be simple for you if you write script and understand it, but not for me as I have no idea how to even read it. Therefore the reason for requesting a script or assistance in finding one was posted here in hopes that someone HELPFUL would reply. Your reply has been no help at all.

As to the remainder of your reply, its nothing more than gobbledy goop to me as I have no scripting experience. So for any others that read this posting, please unless you can supply a script and instructions on how to create the item I wish to provide, dont post at all. To make my request much simpler to understand, I just want to find a copy of the perfume script with full permissions that I can use to modify and create my own scents. Plain and simple. I dont wish to know how to create scripts so directing me to a wiki on the subject does me no good as I have no experience with scripts or scripting, and they would be useless to me. Thank you in advance for your HELPFUL assistance.
Ziggy Puff
Registered User
Join date: 15 Jul 2005
Posts: 1,143
11-14-2006 16:41
The spam Eloise mentioned would be the chat generated by this script itself, it did not refer to your post.

This is the Scripting Tips forum, where people ask for help with writing scripts. And that's what Eloise did in her post, she gave you advice on how to write this script. If you aren't trying to write this script yourself, then this isn't the best forum to post a question in. If you want someone to write the script for you, I suggest posting in the "Employment Wanted" forum, you might get more useful responses there. (Even though Eloise said she didn't want to suggest that you go there :))

I apologize in advance if this does not qualify as a helpful post.
Eloise Pasteur
Curious Individual
Join date: 14 Jul 2004
Posts: 1,952
11-15-2006 02:20
Thank you for apologising and clarifying for me Ziggy. :)

Vampirella, Ziggy is quite right: I didn't regard your post as spam, I am suggesting that people in world might regard your perfume saying things as spam. I am sorry that wasn't clear from my reply.
_____________________
Eloise's MiniMall
Visit Eloise's Minimall
New, smaller footprint, same great materials.

Check out the new blog
Newgate Ludd
Out of Chesse Error
Join date: 8 Apr 2005
Posts: 2,103
11-15-2006 04:46
The only thing that such a script will generate is an awful lot of mutes.
Carigorp Matzerath
Batman
Join date: 14 May 2006
Posts: 8
Starting Point
11-16-2006 00:35
I personally am not a really skilled scripter myself, but I do know many of scripting capabilities. If you walk around with an object that periodically tells people how you smell, this will indeed cause spam, but perhaps you could remedy this by making your object only speak when clicked or activated in some way. That way you can inform people of your fragrance at select times of your choosing rather than it just randomly running. Here is a real rough idea of what you could use.
CODE

default
{
touch_start(integer total_number)
{
llSay(0, "The smell of fresh roses fills the air.");
}
}

Just put this script in an attachment or object and click it when you want to "release fragrance". Hope this helped.
-CARI
Thanto Usitnov
Lord Byron wannabe
Join date: 4 Aug 2006
Posts: 68
11-16-2006 00:54
I think it's important to note that attachments can emote. So, instead of having your attachment say that some scent fills the air, you could change the description of your perfume to "The scent of", and then have it llSay(o,"/me roses fills the air.";), which would display as "The scent of roses fills the air." I think that would look much nicer. I'd also suggest a particle script that generates scent clouds (or stink lines, as the case may be).

But as has been pointed out, having your script periodically say the same uninteresting thing (who cares what you smell like, anyway?) over and over again will just result in mutes, and people will start to like you a lot less (I certainly would!). I can really see no positive use for a script like this.
Kage Seraph
I Dig Giant Mecha
Join date: 3 Nov 2004
Posts: 513
11-16-2006 11:18
From: Thanto Usitnov
(or stink lines, as the case may be).


Haha! Thanto ftw.

From: Thanto Usitnov
But as has been pointed out, having your script periodically say the same uninteresting thing (who cares what you smell like, anyway?) over and over again will just result in mutes, and people will start to like you a lot less (I certainly would!). I can really see no positive use for a script like this.


Agreed. It would be much more interesting to store a variety of descriptions as strings in a list, for example, and select one at random or walk through the list at touch_start(). Of course, the quasi-antispam measure isn't much good if the user adopts the affectation of clicking it every minute or so. That would be as awful as being in those clubs with ^v^^v^ HOOOOOOWWWWWWLLLLLLZZZZ or whatever it is every few seconds. So maybe build in a self-restraint timer. =)

CODE

//Edit the list below to describe in various ways just how great you smell.

list things_to_say =
"The smell of warm cheese fills the air.",
"Something nearby smells like foot.",
"Okay who forgot to wash the gym bag?",
"Srsly, Pepe lePew, folks.",
"zOMG! Wtf is that stanky essence?",
"My eyes are watering, this is so bad.",
"This scent reminds me of that scene in the movie Seven where the dude was fed until his stomach exploded. Ya rly."
];

integer index = 0;
integer ready = TRUE;

default
{
touch_start(integer number_detected)
{
if( ready )
{
llWhisper(0, llList2String(things_to_say, index));
index++;
if( index == llGetListLength(things_to_say) - 1)//then we've reached the end of the list
{
index = 0; //start over for next time
}
ready = FALSE; //set refractory period flag
llSetTimerEvent(3600); //user waits an hour between chat spams
}
else
{
llOwnerSay("Not ready yet to spam people with more scents.");
}
}

timer()
{
llSetTimerEvent(0);
ready = TRUE;
}
}


I'm writing this from work, so it is probably screwed up somehow. *shrug*
_____________________
Winter Ventura
Eclectic Randomness
Join date: 18 Jul 2006
Posts: 2,579
11-16-2006 14:27
With all the Anti-Copybot "protection" out there... the LAST thing SL needs at this point, is any more "green text".

I will tell you one thing.. before all this excrement hit the rotary oscillator.. spamming green text could get you EJECTED AND BANNED from many clubs and sims. (just like excessive bling, particle poofers or sound spam).

AT this point, I find myself wondering if the SL client has a ceilling on the number of mutes one can have. I suspect we'll find out soon.
_____________________

● Inworld Store: http://slurl.eclectic-randomness.com
● Website: http://www.eclectic-randomness.com
● Twitter: @WinterVentura
Kage Seraph
I Dig Giant Mecha
Join date: 3 Nov 2004
Posts: 513
11-16-2006 14:41
You raise an excellent point, Winter, one that strikes at the heart of the human factor of scripting. Once the furor over CopyBot wears off, as it did with OGLE and other analogous controversies, what then are we left with? Is script-generated text automatically evil? If not, what is the good rule of thumb for avoiding, as you properly labeled it, "spamming green text"?

Is it like smut-- impossible to define but you know it when you see it? Though I'm not particularly interested in roleplaying in SL, scripttext clearly adds some value to the experience of some. Otherwise, we wouldn't have requests like that of Vampirella Jewel. And that Xcite guy would be out of business.

I guess I come down on the "as little as possible" scripttext side of the practice, preferring to communicate use data to the user through textures or in very limited cases sound/voice feedback. But those too have their drawbacks. Textures take up screen real estate (i.e., more than text...?), video ram, and bandwidth. Sound bytes also cost bandwidth and are not private communication as is a HUD texture or llOwnerSay.

I'd love to hear how others resolve this dynamic tension for the need to communicate info against the various benefits and flaws of each medium.

At a minimum, scripts like the above can be altered to only message relevant parties via a variety of mechanisms, but the broader questions, for me at least, remain.
_____________________
Ziggy Puff
Registered User
Join date: 15 Jul 2005
Posts: 1,143
11-16-2006 14:44
I think a key ingredient of spam is that it's unsolicited. Xcite! is a good example - it doesn't do anything unless you interact with it. So it might be spam for a bystander (but in that situation, I think there'd be more interesting things going on that overshadow the annoying green chat :D ), but for the people involved, it's a response to some input.
Haravikk Mistral
Registered User
Join date: 8 Oct 2005
Posts: 2,482
11-16-2006 15:40
Note that if you use the emote idea it has to use llSay() or whatever which I do not recommend.

I'd recommend using a sensor to find people near enough to "smell" the perfume, and add them to a list so they aren't spammed.

If you want an example script so badly, I'd do something like this:

CODE
list avatars; // Holds people we've messaged already
integer maxListSize = 16; // Some limit to the list size to keep it small
float range = 5.0; // How far away people can smell the perfume in metres
string message = "The air smells of roses"; // Your message =)

default {
state_entry() {
// Every 30 seconds look for agents in range. 30 seconds because it
// reduces lag and you don't really care about people who pass by
// quickly anyway
llSensorRepeat("", NULL_KEY, AGENT, range, PI, 30.0);
}
sensor(integer x) {
key id; // For manipulating av keys
while ((--x) >= 0) {
id = llDetectedOwner(x);
if (llListFindList(avatars, [id]) < 0) {
llInstantMessage(id, message); // Delays script by 2 seconds
avatars += [id]; // Add them to the list of messaged avatars
}
}
x = llGetListLength(avatars); // IS the avatars list too big?
if (x > maxListSize) {
x -= maxListSize; // Keep only the most recent avatars
avatars = llList2List(avatars, x, -1);
}
}
}


There are improvements that can be made, however this script is already quite complex to understand for a beginner, but it is perhaps a more elegant way to do things, plus if you use IMs you only send the message to a specific person. Note that the use of llInstantMessage does NOT open an IM window, it appears as normal chat text (in green), but only for the person it was sent to.
_____________________
Computer (Mac Pro):
2 x Quad Core 3.2ghz Xeon
10gb DDR2 800mhz FB-DIMMS
4 x 750gb, 32mb cache hard-drives (RAID-0/striped)
NVidia GeForce 8800GT (512mb)
Jesse Barnett
500,000 scoville units
Join date: 21 May 2006
Posts: 4,160
11-16-2006 16:16
Just my humble opinion. I welcome anyone to come up and speak to me. Unwanted chat from objects as you walk around SL is bad enough thou. Unwanted IM's from objects cross an invisible boundary in my book. I know I am not the only one that is sick and tired of the endless drone of quit! EVERYWHERE. It does not matter if a script builds a list and only sends out the message one time. I do not want objects to IM me. I get enough of that RL in the form of junk mail and automated phone calls from machines. If you are interested in using a script to send ONE specific interested person messages, then that is different. Other then that, it is no different then the Xcite products that sends out the message that Any Name's c**k is excited by the presence of Any Othername.
_____________________
I (who is a she not a he) reserve the right to exercise selective comprehension of the OP's question at anytime.
From: someone
I am still around, just no longer here. See you across the aisle. Hope LL burns in hell for archiving this forum
Jopsy Pendragon
Perpetual Outsider
Join date: 15 Jan 2004
Posts: 1,906
11-16-2006 16:56
Or... a more polite version of Kage's script... using hover text instead of chat. :)
CODE

//Edit the list below to describe in various ways just how great you smell.

list things_to_say =
"The smell of warm cheese fills the air.",
"Something nearby smells like foot.",
"Okay who forgot to wash the gym bag?",
"Srsly, Pepe lePew, folks.",
"zOMG! Wtf is that stanky essence?",
"My eyes are watering, this is so bad.",
"This scent reminds me of that scene in the movie Seven where the dude was fed until his stomach exploded. Ya rly."
];

integer index = 0;
integer ready = TRUE;

default
{
touch_start(integer number_detected)
{
if( ready )
{
llSetText( llList2String(things_to_say, index), <1,1,.5>, 1.0);
index++;
if( index == llGetListLength(things_to_say) - 1)//then we've reached the end of the list
{
index = 0; //start over for next time
}
ready = FALSE; //set refractory period flag
llSetTimerEvent(3600); //user waits an hour between chat spams
}
else
{
llOwnerSay("Not ready yet to spam people with more scents.");
}
}

timer()
{
llSetTimerEvent(0);
ready = TRUE;
}
}
</font></font>
Winter Ventura
Eclectic Randomness
Join date: 18 Jul 2006
Posts: 2,579
11-16-2006 22:45
OOoh I like that hovertext idea..

There's issues with "visual clutter" as well in world, but that's at least only going to affect you if you're within 10m or so, and looking in the direction of the wearer.

Anyone considered using whisper instead of say?

it might actually be funny to put that floating text on a follower object with a kind of slow scanner..., so the "smell" lingers a bit after you leave. Of course, this can more effectively be done with particles.. which thankfully CAN be hidden... but as an analogy this would at least put the concept into real world terms that everyone can probably understand why it might be annoying...

I've seen several people with "clouds" or particles that surround their avatars constantly, like pigpen from peanuts. Unfortunately thiese are often done by new scripters.. who don't often realize that larger particles with textures, are easier for the client to render than more, smaller particles to produce the effect. So they're generating thousands of particles per second. Since my computer handles particles badly, I have my render count set low. You walk into the room, and the torches on the wall start sputtering. I put on a jetpack to fly, and get one puff of smoke per second. I

green text appears in the chat history.. forcing people to mute the offending objects constantly, in order to be able to follow the conversation. The more things you have that say green text, the more it disrupts the natural flow of conversation.

"the air is thick with marijuana smoke"
"^v^v^HOWLLLLLLLLLZ^v^v^"
"Jevn vendor - Random Mall: Terrycloth Beachtowel $15"
"Simple Copybot Defeater: (Ignore this message) !quit" "
"Jane's clit: Jane is showing the faintest signs of arousal"
"Height detector 1.0.4: Joe Alt is 1.231847 m (4 feet 0 inches) tall. (counting your shoes)"
"Announcer shouts: V^VWelcome to our club!!!! POP THE TOPS OFF THESE LADIES FOR 150L and a total of 400L MAKES THOSE PANTIES HIT THE FLOOR^V^ Mmmm.."
"Random Money Orb shouts: Joe Alt just won 3 L$ For Hangin with the Sexiest Ladies in SecondLife"
Contribute to this in a crowded area, and people are just going to complain and mute your objects.. defeating the entire purpose of wasting processor cycles. worse, they might just mute YOU.

I wish there was an easier way to convey a "smell"... it's technically POSSIBLE in terms of scripting (as seen above) but I really don't think this project is wise, in terms of the social ramifications. While it's true that no one in SL will be allergic to your perfumes.. whether you do it with particles, or green text... people are very likely to constantly be asking you to shut the damned thing off.
_____________________

● Inworld Store: http://slurl.eclectic-randomness.com
● Website: http://www.eclectic-randomness.com
● Twitter: @WinterVentura
Thanto Usitnov
Lord Byron wannabe
Join date: 4 Aug 2006
Posts: 68
11-16-2006 23:12
From: Haravikk Mistral
Note that if you use the emote idea it has to use llSay() or whatever which I do not recommend.

I'd recommend using a sensor to find people near enough to "smell" the perfume, and add them to a list so they aren't spammed.


You do realize that llInstantMessage has a 2 second script delay, right? And you do realize that instant messages get saved if you go offline, which means people will be getting these messages (which they probably don't want anyway) as soon as they log in again. Boo-urns.


I'm all for the hover text, though. That makes far far more sense than sending people messages. If people want to know how you smell, they just have to look at you. No cluttering chat at all.


Also, llWhisper would make more sense than llSay. But yeah, hover text.
Winter Ventura
Eclectic Randomness
Join date: 18 Jul 2006
Posts: 2,579
11-16-2006 23:16
I know I'm loving the fact that I now get EMAILS that say !quit
_____________________

● Inworld Store: http://slurl.eclectic-randomness.com
● Website: http://www.eclectic-randomness.com
● Twitter: @WinterVentura
Domino Marama
Domino Designs
Join date: 22 Sep 2006
Posts: 1,126
Sorry Winter and everyone!
11-17-2006 03:05
I know I'm one of the contributors to the !quit debacle. I released my version of the tools to help educate people on how useless it actually is as a solution. It is easier to change copybot to skip the !quit than to write the script to send the messages. I wouldn't have done anything except for the fact that some residents started selling such devices and I didn't want people to waste Lindens on what could only be a very temporary solution.

Unfortunately not everyone reads the blogs, and I still meet people who have no idea what the !quit messages are about. Personally I only ever saw the copybot defenders as having a lifetime of a week. Long enough to deter the spread of the original, long enough for the community to research and educate about what the level of threat copybot presents is and for Linden Labs to implement their own defence systems.

Based on my current observations in the world, I still believe this time scale to be about right. Hopefully Linden Labs will continue to update us on their actions against people using copybot for nefarious purposes and that such actions will be strong enough that we can trust their procedures for stopping it's use, rather than having near to useless systems such as the "defenders".

I am sorry that the systems, by necessity, are annoying to regular citizens, but I hope that as a whole, their use can be seen as a neccessary evil for this short time. If they have saved people wasting money and helped spread the word, then they have served their purpose. Personally I will be stopping using them after the weekend and I hope others have similar plans.
Strife Onizuka
Moonchild
Join date: 3 Mar 2004
Posts: 5,887
11-17-2006 03:20
In a year !quit will be a big inside joke...

Until then it's driving me bonkers.

Some advice i just thought up.
Don't spam people, they have enough on their minds, they don't need your script intruding with something they aren't interested in. If they are curious they will ask or touch.
If you intrude upon their screen space once, they will forgive it.
If you intrude twice they will resent it.
If you intrude a third time, they will avoid you.
If you intrude a forth time, you are taking your life into your own hands.
If you must intrude, tell them why.
The best way to treat people is how you would like to be treated when you have just gotten home from the worst possible day imaginable; considering this isn't practice, use this as a goal.
_____________________
Truth is a river that is always splitting up into arms that reunite. Islanded between the arms, the inhabitants argue for a lifetime as to which is the main river.
- Cyril Connolly

Without the political will to find common ground, the continual friction of tactic and counter tactic, only creates suspicion and hatred and vengeance, and perpetuates the cycle of violence.
- James Nachtwey
Jesse Barnett
500,000 scoville units
Join date: 21 May 2006
Posts: 4,160
11-17-2006 06:15
So sorry OP that this was the worst possible time for a somewhat novel idea.

Did just think of something funny thou. With the talk of using particles and also suggestions to target only consenting freinds etc. A mental picture formed of Pepe LaPeu from the cartoons. A dense stream of particles meandering around and then eventually finding it's way to the targets nose:-) Of course you could target someone with particles and could offset from the waist to hit the general area of the head but the particles couldn't really meander. Funny thought thou and as good a way as any to start a new day in the forums.
_____________________
I (who is a she not a he) reserve the right to exercise selective comprehension of the OP's question at anytime.
From: someone
I am still around, just no longer here. See you across the aisle. Hope LL burns in hell for archiving this forum
Dimentox Travanti
DCS Coder
Join date: 10 Sep 2006
Posts: 228
11-17-2006 06:26
What about a small particle that would show like some roses sith some sort of thing that looks like a smell coming from it.. that will pop every now and then. Nothing to spam and nothing to big. It visually gives the idea of a scent comming from you.

I remember in EQ2 if you got diesiesed you has some flys around you.
just keep the par5ticle life short so its very small and only emit like 4 parts.
_____________________
LSL Scripting Database - http://lsl.dimentox.com
Kage Seraph
I Dig Giant Mecha
Join date: 3 Nov 2004
Posts: 513
11-17-2006 06:42
From: someone
I remember in EQ2 if you got diesiesed you has some flys around you.
just keep the par5ticle life short so its very small and only emit like 4 parts.


Now THAT's what those Xcite attachments need. Passable STDs. :rolleyes: We're all about realism here in SL.

(greentext) "$username shifts uncomfortably as s/he's overtaken by another wave of itching." I could live with the chat spam in that case. XD
_____________________
Haravikk Mistral
Registered User
Join date: 8 Oct 2005
Posts: 2,482
11-17-2006 06:56
From: Thanto Usitnov
You do realize that llInstantMessage has a 2 second script delay, right? And you do realize that instant messages get saved if you go offline, which means people will be getting these messages (which they probably don't want anyway) as soon as they log in again. Boo-urns.

The delay is a big plus in reducing spam, and if it comes to it all you do is test llKey2Name(id) != "" to make sure they haven't gone offline or left the sim after being sensed, thus preventing it coming as an e-mail.
Trust me, it's far more elegant overall solution, only people who haven't received the message get it, and within a certain range (which can be shorter than 10m if you wish).
If you want to add that change in my script find:
CODE
if (llListFindList(avatars, [id]) < 0) {

And replace it with:
CODE
if ((llListFindList(avatars, [id]) < 0) && (llKey2Name(id) != "")) {
_____________________
Computer (Mac Pro):
2 x Quad Core 3.2ghz Xeon
10gb DDR2 800mhz FB-DIMMS
4 x 750gb, 32mb cache hard-drives (RAID-0/striped)
NVidia GeForce 8800GT (512mb)
Eloise Pasteur
Curious Individual
Join date: 14 Jul 2004
Posts: 1,952
11-17-2006 07:26
@Winter: my original suggestions, however poorly received by the OP include llWhisper on the list of useful code and not llSay.

@Strife: Excellent advice, worth adding to the stickies!

@Kage: ROFL. I wonder if I can persuade the Xcite guy to it...

$username feels nothing but the person kneeling before him recoils in horror from the sight of his weeping chancre, hoping no active spirochaetes have entered his/her body.

$username wonders with what little is left of his mind why people are fleeing him. He is unable to see the ravages that syphillis has caused to his body, nor feel the imminent aortic aneurysm that will end his life.

$username wonders if she'll get lucky tonight despite the itching in her lips that indicate she is about to erupt in a coldsore. The letter from the doctor confirming it is HSV-2 and almost certainly sexually transmitted won't arrive 'til tomorrow.

There's so much fun to be had there...
_____________________
Eloise's MiniMall
Visit Eloise's Minimall
New, smaller footprint, same great materials.

Check out the new blog
1 2