https://wiki.secondlife.com/w/api.php?action=feedcontributions&user=Silent+Mole&feedformat=atomSecond Life Wiki - User contributions [en]2024-03-28T15:59:36ZUser contributionsMediaWiki 1.36.1https://wiki.secondlife.com/w/index.php?title=File:PaleoQuest_Res_Circle_picture.png&diff=1197328File:PaleoQuest Res Circle picture.png2015-09-01T19:52:23Z<p>Silent Mole: </p>
<hr />
<div></div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=File:PaleoQuest_Collectables_picture.png&diff=1197327File:PaleoQuest Collectables picture.png2015-09-01T19:48:36Z<p>Silent Mole: </p>
<hr />
<div></div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=File:PaleoQuest_Monorail_and_TP_picture.png&diff=1197326File:PaleoQuest Monorail and TP picture.png2015-09-01T19:45:33Z<p>Silent Mole: </p>
<hr />
<div></div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=File:PaleoQuest_Payout_Stations_picture.png&diff=1197325File:PaleoQuest Payout Stations picture.png2015-09-01T19:38:58Z<p>Silent Mole: </p>
<hr />
<div></div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=File:PaleoQuest_Visitor_Center.png&diff=1197324File:PaleoQuest Visitor Center.png2015-09-01T19:33:16Z<p>Silent Mole: </p>
<hr />
<div></div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=File:PaleoQuest_HUD_picture.png&diff=1197323File:PaleoQuest HUD picture.png2015-09-01T19:32:19Z<p>Silent Mole: </p>
<hr />
<div></div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=File:PaleoQuest_Flower_Header.png&diff=1197322File:PaleoQuest Flower Header.png2015-09-01T19:31:33Z<p>Silent Mole: </p>
<hr />
<div></div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=ListStridedReorder&diff=1186490ListStridedReorder2014-01-06T18:54:45Z<p>Silent Mole: Fixed ListStridedReorderContents so it works with lists of different lengths.</p>
<hr />
<div><lsl>list ListStridedReorderContents(list src, list order) {<br />
//change the order that the elements in the groups are arranged<br />
integer stride = llGetListLength(order);<br />
integer len = llGetListLength(src);<br />
integer strides = len / stride;<br />
list temp = [];<br />
list out = [];<br />
integer i = -stride;<br />
do{<br />
temp += llList2ListStrided(llList2List(src, llList2Integer(order, i), -1), 0, -1, stride);<br />
}while(++i);<br />
do{<br />
out += llList2ListStrided(llList2List(temp, i, -1), 0, -1, strides);<br />
}while(strides > ++i);<br />
return out;<br />
}<br />
<br />
list ListStridedReorderStrides(list src, list order) {<br />
//change the order that the groups are arranged<br />
integer strides = llGetListLength(order);<br />
integer len = llGetListLength(src);<br />
integer stride = len / strides;<br />
list temp = [];<br />
list out = [];<br />
integer i = 0;<br />
do<br />
temp += llList2ListStrided(llList2List(src, i, -1), 0, -1, stride);<br />
while(strides > ++i);<br />
i = -stride;<br />
do<br />
out += llList2ListStrided(llList2List(temp, llList2Integer(order, i), -1), 0, -1, strides);<br />
while(++i);<br />
return out;<br />
}<br />
<br />
list ListStridedReorderContentsAndStrides(list src, list element_order, list stride_order) {<br />
integer stride = llGetListLength(element_order);<br />
integer strides = llGetListLength(stride_order);<br />
list temp = [];<br />
list out = [];<br />
integer i = -strides;<br />
do<br />
temp += llList2ListStrided(llList2List(src, llList2Integer(element_order, i), -1), 0, -1, stride);<br />
while(++i);<br />
i = -stride;<br />
do<br />
out += llList2ListStrided(llList2List(temp, llList2Integer(stride_order, i), -1), 0, -1, strides);<br />
while(++i);<br />
return out;<br />
}<br />
<br />
<br />
default<br />
{<br />
state_entry(){<br />
llOwnerSay(llList2CSV(ListStridedReorderContents([0,1,2, 0,1,2, 0,1,2], [1,2,0])));<br />
llOwnerSay(llList2CSV(ListStridedReorderStrides([0,1,2, 3,4,5, 6,7,8], [1,2,0])));<br />
llOwnerSay(llList2CSV(ListStridedReorderContentsAndStrides([0,1,2, 3,4,5, 6,7,8], [1,2,0], [1,2,0])));<br />
}<br />
}</lsl></div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Modular_Pathfinding_Kit&diff=1175423Modular Pathfinding Kit2012-12-19T16:24:15Z<p>Silent Mole: /* Optional Extras */ added enabled check</p>
<hr />
<div>There is a lot of options for how to create pathfinding creatures. It’s best to start by having an idea of what you want to create, either a real world analogue like a horse or a dog, or something mythical such as a ghost or fairy.<br />
<br />
'''things that don’t work (at present)''':<br />
1. 3D spatial movement - for example underwater free movement or aerial free movement<br />
2. mixing physics and pathfinding (for instance using llApplyImpulse with a pathfinding character)<br />
<br />
=Quick Guide=<br />
<br />
> object + pathfinding character skeleton + behavioural tropes = autonomous pathfinding creature<br />
<br />
This guide gives quick guidance of how to create specific behavioural tropes (commonly found autonomous characteristics) and doesn't go into detail about individual functions - see [[Pathfinding LSL Functions]] for more details.<br />
<br />
=Components=<br />
<br />
==pathfinding character skeleton==<br />
<br />
<lsl><br />
doSomething()<br />
{<br />
// insert pathfinding functionality here<br />
;<br />
}<br />
<br />
// called as necessary from events such as script reset or rezzing<br />
startup()<br />
{<br />
// create the character<br />
llCreateCharacter([ CHARACTER_MAX_SPEED, 25,<br />
CHARACTER_DESIRED_SPEED, 15.0]);<br />
<br />
doSomething();<br />
}<br />
<br />
default<br />
{<br />
on_rez(integer start_param)<br />
{<br />
llResetScript();<br />
}<br />
<br />
state_entry()<br />
{<br />
startup();<br />
}<br />
}<br />
</lsl><br />
<br />
==Behavioural Tropes==<br />
<br />
===flying/hovering===<br />
3D spatial free flight is at present unavailable. We can however fake it but one of the following methods:<br />
<br />
# create a small object with a tall root prim - not recommended, causes excessive collisions<br />
# create a small object and create a large character envelope - recommended<br />
<br />
The example below creates a character with a 1.5m tall and 0.25m wide envelope. If the object itself if 0.25 it will appear to be "flying", or, more accurately, hovering.<br />
<br />
<lsl><br />
llCreateCharacter([ CHARACTER_MAX_SPEED, 25,<br />
CHARACTER_DESIRED_SPEED, 15.0,<br />
CHARACTER_RADIUS, 0.25,<br />
CHARACTER_LENGTH, 1.5]);<br />
</lsl><br />
<br />
In order to further the illusion of flying we can do a number of things. If the creature is something that works at near ground height, such as a hummingbird or dragonfly just use one of the movement tropes, such as wandering.<br />
<br />
If you want the creature to fly higher than the 10.0m maximum character height (which will give a centre of mass height of 5.0m), we can use a platform. If you want a parrot to fly between trees place a prim or series of prims that stretch between them and use something like [[llPatrolPoints]] or [[llWanderWithin]]. Even if you use a series of narrow pathways the pathfinding will find a way to valid targets.<br />
<br />
We can make a really nice effect by using a mesh surface with an undulating form - the creature will follow the dips and rises giving the appearance of varying flight.<br />
<br />
For ground hugging creatures we can something similar that looks natural for hovering creatures by dynamically changing the envelope size of the creature by calling [[llUpdateCharacter]], as below. Call this function repeatedly with different values and the character will change the level it hovers at.<br />
<br />
<lsl><br />
llUpdateCharacter([CHARACTER_LENGTH, 6.5]);<br />
</lsl><br />
<br />
===fleeing===<br />
<br />
There are two distinct behaviours we can exploit. If we wanted a character to run from a specific point such as an explosion we can use [[llFleeFrom]]. If we want to run from a specific object or agent (avatar) use [[llEvade]]<br />
<br />
===hiding===<br />
<br />
Part of [[llEvade]] is hiding (blocked line of sight) from the agent/object the character is fleeing from. See [[llEvade]] for more details.<br />
<br />
===move-wait-repeat===<br />
<br />
By responding to path events we can create varying behaviour. All pathfinding functions are moving to specific targe coordinates, whether determined randomly by something like [[llWanderWithin]], specific as in [[llPatrolPoints]] or even [[llPursue]]. <br />
<br />
Have a look at [[Path update]] for guidance, and see the example script in the multiple states discussion at the end of this article.<br />
<br />
===chase===<br />
<br />
Use [[llPursue]] and specify a target object or avatar.<br />
<br />
===hunt===<br />
<br />
Use a sensor of some description, such as [[llSensorRepeat]] or some sort of collision detection such [[llVolumeDetect]]<br />
<br />
===wait===<br />
<br />
To make a character pause you can use a state change with a new event trigger making the character active again, or simply use something like:<br />
<br />
<lsl><br />
llExecCharacterCmd(CHARACTER_CMD_STOP, []);<br />
<br />
llSleep(15.0);<br />
<br />
vector currentPosition = llGetPos();<br />
// resume with any desired pathfinding function<br />
llWanderWithin(currentPosition, <10.0, 10.0, 5.0>, []);<br />
</lsl><br />
<br />
===wandering===<br />
<br />
Use [[llWanderWithin]] to specify an area to wander within.<br />
<br />
===hopping/jumping===<br />
<br />
Use llExecCharacterCmd(CHARACTER_CMD_JUMP, [height, 1.0]) to make the character hop 1m into the air. If done with a timer event while using another pathfinding command such as [[llWanderWithin]] the hop will have an arc rather than just vertical movement. <br />
<br />
==Optional Extras==<br />
<br />
To add to immersion it's worth adding some extras. If desired add...<br />
<br />
===animation===<br />
see [[Animation Streamlined]] for tips<br />
<br />
===sounds===<br />
see [[Creature Sounds]] and [[Event Driven Sounds]]<br />
<br />
===more than one state===<br />
<br />
States are an excellent way of managing pathfinding creatures, but note however that pathfinding behaviour survives state changes - it's simple a simpler way of managing a status than using a variable. See the example below, which simulates a rabbit grazing.<br />
<br />
<lsl><br />
animateGrassEating()<br />
{<br />
// insert a cunning grass eating animation here<br />
}<br />
<br />
animateTailWiggle()<br />
{<br />
// insert very cute tail wiggle animation here<br />
}<br />
<br />
startup()<br />
{<br />
llCreateCharacter([ CHARACTER_MAX_SPEED, 2, CHARACTER_DESIRED_SPEED, 1.0]);<br />
state wander;<br />
}<br />
<br />
default<br />
{<br />
on_rez(integer start_param)<br />
{<br />
llResetScript();<br />
}<br />
<br />
state_entry()<br />
{<br />
startup();<br />
}<br />
}<br />
<br />
state wander<br />
{<br />
state_entry()<br />
{<br />
vector currentPosition = llGetPos();<br />
llWanderWithin(currentPosition, <10.0, 10.0, 5.0>, []);<br />
}<br />
<br />
path_update(integer type, list reserved)<br />
{<br />
if (type == PU_SLOWDOWN_DISTANCE_REACHED)<br />
{<br />
llExecCharacterCmd([CHARACTER_CMD_SMOOTH_STOP]);<br />
state graze;<br />
}<br />
}<br />
}<br />
<br />
state graze<br />
{<br />
state_entry()<br />
{<br />
animateGrassEating();<br />
<br />
llSetTimerEvent(15.0);<br />
}<br />
<br />
timer()<br />
{<br />
llSetTimerEvent((float)FALSE);<br />
animateTailWiggle();<br />
state wander;<br />
}<br />
}<br />
</lsl><br />
<br />
===random timers===<br />
<br />
In the example above the rabbit eat grass for 15 seconds then wanders again, for a random period defined by how long it takes to reach it's next random wander target. This 15 second wait will make it an easy target for hunting creatures or agents (hunting game? what if this was a zombie bunny with a taste for brains? hmm, brains).<br />
<br />
To make things less predictable use:<br />
<br />
<lsl><br />
// random period in between [0.0, +15.0)<br />
// which means the random float returned could be 0.0 but not 15.0<br />
llSetTimerEvent( llFrand(15.0) );<br />
</lsl><br />
<br />
<lsl><br />
// random period in between (+15.0, +30.0]<br />
// which means the resulting float could be 30.0 but not 15.0<br />
<br />
llSetTimerEvent( 30.0 - llFrand(15.0) );<br />
<br />
// same results for:<br />
// llSetTimerEvent( 30.0 + llFrand(-15.0) );<br />
</lsl><br />
<br />
===enabled check===<br />
<br />
If you're giving other people your creations, you'd be wise to have your script check to see if pathfinding is enabled where they rez it. Pathfinding can be disabled on private regions.<br />
<br />
<lsl><br />
// returns TRUE if patfinding is enabled, FALSE if not.<br />
integer IsPFEnabled()<br />
{<br />
if ( llGetEnv("dynamic_pathfinding") == "enabled" ) <br />
return TRUE;<br />
return FALSE;<br />
}<br />
</lsl><br />
----<br />
Return to [[Good_Building_Practices]]</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=LlGetEnv&diff=1175405LlGetEnv2012-12-19T01:13:02Z<p>Silent Mole: dynamic_pathfinding doesn't return 1 or 0...</p>
<hr />
<div>{{LSL_Function<br />
|func_id=362|func_sleep=0.0|func_energy=0.0<br />
|func= llGetEnv |sort=GetEnv<br />
|return_type=string<br />
|p1_type=string|p1_name=name|p1_desc=The name of the data to request<br />
|func_footnote=Note that the value returned is a string, you may need to cast it to an integer for use in calculations.<br />
|func_desc<br />
|return_text=with the requested data about the [[region]].<br />
|spec<br />
|caveats<br />
|constants=<br />
<div style="margin-bottom:1em;"><br />
{{{!}} class="sortable" {{Prettytable|style=margin:0;}}<br />
{{!}}+ Table of valid {{LSLP|name}} values. <br />
{{!}}-{{Hl2}}<br />
! {{!}} Name<br />
! class="unsortable" {{!}} Description<br />
! {{!}} {{HoverText|Type to typecast to|To make the value returned more useful, you will want to typecast it to this type}}<br />
{{!}}-<br />
{{!}} "sim_channel"<br />
{{!}} Get the region's [[Het-Grid_FAQ#What_is_a_channel.3F|channel]] string, for example "Second Life Server".<br />
{{!}} {{No|N/A}}<br />
{{!}}-<br />
{{!}} "sim_version"<br />
{{!}} Get the region's [[Version numbering#Second_Life_Server_Versioning|version number]] string, for example "{{HoverText|10|[2-digit year]}}.{{HoverText|11|[2-digit month]}}.{{HoverText|30|[2-digit day]}}.{{HoverText|215699|[build number]}}".<br />
{{!}} {{No|N/A}}<br />
{{!}}-<br />
{{!}} "frame_number"<br />
{{!}} Get the frame number of the simulator, for example "42042".<br />
{{!}} {{Yes|[[integer]]}}<br />
{{!}}-<br />
{{!}} "region_idle"<br />
{{!}} Get the region's [http://community.secondlife.com/t5/Second-Life-Server/Region-Idling-FAQ/m-p/1535497 idle] status, "1" or "0".<br />
{{!}} {{Yes|[[integer]] [http://en.wikipedia.org/wiki/Boolean_algebra_%28logic%29 boolean]}}<br />
{{!}}-<br />
{{!}} "dynamic_pathfinding"<br />
{{!}} Get the region's dynamic_pathfinding status, "enabled" or ???. This option is configured in the [[SimConsole|Region Debug Console]]<br />
{{!}} {{No|N/A}}<br />
{{!}}}<br />
</div><br />
|examples=<lsl><br />
default<br />
{<br />
touch_start(integer total_number)<br />
{<br />
string version = llGetEnv("sim_version");<br />
llOwnerSay("Region " + llGetRegionName() + " is running "<br />
+ llGetEnv("sim_channel") + " version " + version );<br />
<br />
list ver = llParseString2List(version, ["."], []);<br />
<br />
llOwnerSay("Build: "+llList2String(ver, 3));<br />
llOwnerSay("Build Date: "+llList2String(ver, 2)+"-"+llList2String(ver, 1)+"-20"+llList2String(ver, 0));<br />
}<br />
}<br />
</lsl><br />
|helpers<br />
|also_functions=<br />
{{LSL DefineRow||[[llRequestSimulatorData]]|}}<br />
{{LSL DefineRow||[[llGetSimulatorHostname]]|}}<br />
{{LSL DefineRow||[[llGetRegionFlags]]|}}<br />
|also_tests<br />
|also_events<br />
|also_articles<br />
|notes=* Region idling lowers a region's framerate when no avatars are currently on or looking into the region. Scripts measuring time dilation with [[llGetRegionTimeDilation]] may report significant time dilation if the region is idle.<br />
|history=* {{Jira|SVC-4874}}<br />
*Introduced in [[Release Notes/Second Life RC LeTigre/10#10.11.30.215699|Second Life RC LeTigre 10.11.30.215699]], deployed on 2010-12-01.<br />
*Deployed to rest of Agni with Second Life Server 10.11.30.215699, Second Life RC BlueSteel 10.12.06.216207, Second Life RC Magnum 10.11.30.215699<br />
*"frame_number" option added in Second Life RC BlueSteel 12.01.03.247042<br />
**Returns an integer that represents the current 'frame' of the simulator. Generally only useful for specific debugging cases. <br />
*Removed (temporarily?) in Second Life RC BlueSteel 12.01.06.247303<br />
|cat1<br />
|cat2=Region<br />
|cat3<br />
|cat4<br />
}}</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Walkability_Coefficients&diff=1175278Walkability Coefficients2012-12-14T17:18:55Z<p>Silent Mole: </p>
<hr />
<div>Walkability Coefficients: What the heck are you talking about?<br />
<br />
Ever notice how things tend to travel slower on some surfaces and faster on others? Or even refuse to try to navigate over surfaces or enter areas something else is fine with? Pathfinding has tools for managing this built into it.<br />
<br />
Some examples: tarmac, gravel, sand pits, snowdrifts, oil slicks<br />
<br />
----<br />
<br />
PF enabled characters are one of five Character Types. "None" is the default type. If your character has one of the other types ( A, B, C, D ) it can be affected by the walkability coefficients of the environment.<br />
<br />
[[CHARACTER_TYPE|Character type]] is set in the PF character's script, and can be changed on the fly. You have to open up the script to see what kind of PF character type something is. There is a pathfinding characters window, but it doesn't tell you character type.<br />
<br />
----<br />
<br />
Objects in the [[Pathfinding_NavMesh|navigation mesh]] have a walkability coefficient. Default terrain is always 100%. By default, things on a navmesh are set to 100% WC for all four types.<br />
<br />
For a PF enabled character of character type default, everything is treated as 100%. How fast the character goes is controlled by the character's script and not affected by the environment.<br />
<br />
If the character is of type A, B, C, D, their speed can be affected by the walkability coefficients of things in their environment.<br />
<br />
Rez a prim. Right click on the prim, choose "Show in linksets" and you will see the pathfinding linksets window appear. There are four columns on the far right of the window named A%, B%, C%, D%. Those show you the walkability coefficients.<br />
<br />
PF LINKSET WINDOW PICTURES - AND MAYBE LINK TO A GUIDE FOR IT?<br />
<br />
You can change the walkability coefficients in this window. The highlighted item is your prim. At the bottom of this window are some controls and an [Apply changes] button. Change each of the four 100s to 50, then press [Apply changes]. Now when PF enabled creatures of types A, B, C, and D travel on your prim, they'll do so at half their usual speed.<br />
<br />
----<br />
<br />
But I want them to go faster! Not slower!<br />
<br />
When you've got a PF enabled character that isn't character type none, you can take advantage of [[TRAVERSAL_TYPE|TRAVERSAL_TYPE]]. This determines whether those walkability percent numbers make your creature slow down or speed up. <br />
<br />
Like character type, traversal type is set in the PF character's script. The default for traversal type is slow.<br />
<br />
----<br />
<br />
How do walkability coefficients work with [[Material_Volumes|material volumes]]?<br />
<br />
Material volumes also have coefficients. Instead of determining how fast a PF character moves across the surface of an object, they determine how fast it moves through the object.<br />
<br />
If you have a walkable surface with a material volume overlapping... well, we're still trying to puzzle that out. So far it looks like exclusions take priority...<br />
<br />
----<br />
<br />
still todo:<br />
Code samples, pictures, the racing example<br />
<br />
----<br />
<br />
<gallery><br />
File:Coefficients_2.png|Coefficients are found in the Linkset floater<br />
File:Coefficients3_001.png|Different speed coefficients mixed with a material volume<br />
</gallery><br />
<br />
----<br />
Return to [[Good_Building_Practices]]</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Walkability_Coefficients&diff=1175277Walkability Coefficients2012-12-14T17:13:42Z<p>Silent Mole: the second "first draft"</p>
<hr />
<div>Walkability Coefficients: What the heck are you talking about?<br />
<br />
Ever notice how things tend to travel slower on some surfaces and faster on others? Or even refuse to try to navigate over surfaces or enter areas something else is fine with? Pathfinding has tools for managing this built into it.<br />
<br />
Some examples: tarmac, gravel, sand pits, snowdrifts, oil slicks<br />
<br />
----<br />
<br />
PF enabled characters are one of five Character Types. "None" is the default type. If your character has one of the other types ( A, B, C, D ) it can be affected by the walkability coefficients of the environment.<br />
<br />
[[CHARACTER_TYPE|Character type]] is set in the PF character's script, and can be changed on the fly. You have to open up the script to see what kind of PF character type something is. There is a pathfinding characters window, but it doesn't tell you character type.<br />
<br />
----<br />
<br />
Objects in the [[Pathfinding_NavMesh|navigation mesh]] have a walkability coefficient. Default terrain is always 100%. By default, things on a navmesh are set to 100% WC for all four types.<br />
<br />
For a PF enabled character of character type default, everything is treated as 100%. How fast the character goes is controlled by the character's script and not affected by the environment.<br />
<br />
If the character is of type A, B, C, D, their speed can be affected by the walkability coefficients of things in their environment.<br />
<br />
Rez a prim. Right click on the prim, choose "Show in linksets" and you will see the pathfinding linksets window appear. There are four columns on the far right of the window named A%, B%, C%, D%. Those show you the walkability coefficients.<br />
<br />
PF LINKSET WINDOW PICTURES - AND MAYBE LINK TO A GUIDE FOR IT?<br />
<br />
You can change the walkability coefficients in this window. The highlighted item is your prim. At the bottom of this window are some controls and an [Apply changes] button. Change each of the four 100s to 50, then press [Apply changes]. Now when PF enabled creatures of types A, B, C, and D travel on your prim, they'll do so at half their usual speed.<br />
<br />
----<br />
<br />
But I want them to go faster! Not slower!<br />
<br />
When you've got a PF enabled character that isn't character type none, you can take advantage of [[TRAVERSAL_TYPE|TRAVERSAL_TYPE]]. This determines whether those walkability percent numbers make your creature slow down or speed up. <br />
<br />
Like character type, traversal type is set in the PF character's script. The default for traversal type is slow.<br />
<br />
----<br />
<br />
How do walkability coefficients work with [[Material_Volumes|material volumes]]?<br />
<br />
Material volumes also have coefficients. Instead of determining how fast a PF character moves across the surface of an object, they determine how fast it moves through the object.<br />
<br />
If you have a walkable surface with a material volume overlapping... well, we're still trying to puzzle that out. So far it looks like exclusions take priority...<br />
<br />
<br />
<br />
----<br />
<br />
<gallery><br />
File:Coefficients_2.png|Coefficients are found in the Linkset floater<br />
File:Coefficients3_001.png|Different speed coefficients mixed with a material volume<br />
</gallery><br />
<br />
----<br />
Return to [[Good_Building_Practices]]</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Lilliputian_Isles&diff=1172292Lilliputian Isles2012-08-29T13:53:35Z<p>Silent Mole: /* Formidable */</p>
<hr />
<div>= Lilliputian Isles =<br />
<br />
This is a chain of islands themed for unusually small avatars. While anyone can visit, if you're bipedal and under a meter tall you'll find the furnishings scaled to fit you.<br />
<br />
<br />
== Formidable ==<br />
[[Image:Formidable.png|right|200px]]<br />
Explore this small-scale old stone fortress. Fire off the zap cannons, sunbathe on the rooftop garden, loot some treasure, or sit around and fish.<br />
<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Formidable/182/80/23}}<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Linden_Department_of_Public_Works_Seas&diff=1172291Linden Department of Public Works Seas2012-08-29T13:41:07Z<p>Silent Mole: /* The Coastal Waterway */</p>
<hr />
<div>The Second Life oceans and lakes offer many fun places to visit and many kilometers of sailing and boating routes and dive sites.<br />
<br />
More information on sailing in Second Life is [[Sailing_in_Second_Life|here]].<br />
<br />
<br />
<br />
== [[Blake Sea|Blake Sea]] ==<br />
The Blake Sea is a large open body of water.<br />
<br />
== The Coastal Waterway ==<br />
Rez zones of the [[Second_Life_Coastal_Waterway]]<br />
<br />
[[Lilliputian_Isles|The Lilliputian Isles]]<br />
<br />
[[Image:Hephaestus Ruins.png|right|100px]]<br />
<br />
== [[Sea_of_Fables]] ==<br />
An inland sea where the myths of ancient Greece come alive.<br />
<br />
== [[Mare Secundus]] == <br />
<br />
An ancient sea, almost landlocked in the Sansara continent, containing many points of interest.<br />
<br />
[[Image:Ahab's_Haunt.jpg|right|100px]]<br />
== Ahab's Haunt ==<br />
<br />
This is a tropical beach crowned by the skeleton of a giant beast. Hammocks and inner tubes, undersea treasure and lots to explore for divers, places to rez your boats, and more!<br />
<br />
{{SLURL2|http://slurl.com/secondlife/Ahab's%20Haunt/116/143/22}}<br />
<br />
<br />
[[Category:LDPW]]</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Lilliputian_Isles&diff=1172290Lilliputian Isles2012-08-29T13:38:13Z<p>Silent Mole: formidable</p>
<hr />
<div>= Lilliputian Isles =<br />
<br />
This is a chain of islands themed for unusually small avatars. While anyone can visit, if you're bipedal and under a meter tall you'll find the furnishings scaled to fit you.<br />
<br />
<br />
== Formidable ==<br />
[[Image:Formidable.png|right|200px]]<br />
Explore this small-scale old stone fortress. Fire off the zap cannons, sunbathe on the rooftop garden, loot some treasure, or sit around and fish.<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Formidable/182/80/23}}<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=File:Formidable.png&diff=1172289File:Formidable.png2012-08-29T13:26:14Z<p>Silent Mole: Formidable region picture</p>
<hr />
<div>Formidable region picture</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Second_Life_Coastal_Waterway&diff=1172284Second Life Coastal Waterway2012-08-29T12:54:05Z<p>Silent Mole: /* The Blake Sea */ yanked to its own page</p>
<hr />
<div>[[Image:Coastal_waterway11_11_10.png|center]]<br />
<br />
The Second Life oceans offer many fun places to visit and many kilometers of sailing and boating routes.<br />
<br />
----<br />
== Public Rezzing Areas ==<br />
<br />
=== Cortona ===<br />
[[Image:Rez_001_002.png|right|200px]]<br />
{{SLURL2|http://slurl.com/secondlife/Cortona/117/41/21}}<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
{{SLURL2|http://slurl.com/secondlife/Cortona/48/197/22}}<br />
[[Image:Rez_001_006.png|right|200px]]<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
<br />
=== Pieve ===<br />
[[Image:Rez_001_003.png|right|200px]]<br />
{{SLURL2|http://slurl.com/secondlife/Pieve/179/104/22}}<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Foligno ===<br />
[[Image:Rez_001_005.png|right|200px]]<br />
{{SLURL2|http://slurl.com/secondlife/Foligno/207/13/22}}<br />
Tropical themed relaxation. <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Gubbio ===<br />
[[Image:Rez_001_004.png|right|200px]]<br />
{{SLURL2|http://slurl.com/secondlife/Gubbio/206/48/22}}<br />
Tropical themed relaxation.<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Orvieto ===<br />
[[Image:Rez_buoy_for_wiki.png|right|200px]]<br />
{{SLURL2|http://slurl.com/secondlife/Orvieto/85/235/20}}<br />
The rez zone is marked with a buoy.<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Leoming ===<br />
[[Image:Leoming_for_wiki.jpg|right|200px]]<br />
{{SLURL2|http://slurl.com/secondlife/Leoming/215/70/20}}<br />
Pause on your travels for a frozen banana or other treats.<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Warben ===<br />
[[Image:Warben_for_wiki.jpg|right|200px]]<br />
{{SLURL2|http://slurl.com/secondlife/Warben/229/160/20}}<br />
Collect the freebies scattered around, watch the flamingos, or wander north for some frozen treats.<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Genstone ===<br />
[[Image:Genstone_for_wiki.jpg|right|200px]]<br />
{{SLURL2|http://slurl.com/secondlife/Genstone/238/7214/21}}<br />
Listen to the surf, throw a ball around, and play in the sand. Divers might enjoy the coral reef on the western side of the sim.<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Loona ===<br />
[[Image:Loona_for_wiki.jpg|right|200px]]<br />
{{SLURL2|http://slurl.com/secondlife/Loona/224/120/22}}<br />
Play ball in the castle arena, ride around on a float, or just hang out with friends and watch the ocean.<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Pledder ===<br />
[[Image:Pledder_Beach.jpg|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Pledder/67/158/22}}<br />
Use the dock and rezzing zone for your boat, or just hang out by the fire or nap on a sunny afternoon in the lounge chairs and blankets. Grab a free scripted life preserver ring as a souvenir!<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Emin ===<br />
[[Image:Emin marina.jpg|right|200px]]<br />
{{SLURL2|http://slurl.com/secondlife/Emin/204/51/22}}<br />
Rezzing zone and boathouse open to the public.<br />
Free life preservers, Diving gear and Sailboats.<br />
Relax and enjoy the scenery or rez a boat and explore the seas.<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Denny ===<br />
[[Image:Denny_rez.png|right|200px]]<br />
{{SLURL2|http://slurl.com/secondlife/Denny/193/182/21}}<br />
Rezzing Zone and cozy fishermans cottage, open to the public. <br />
Relax by a warm stove and listen to the seas breaking on the harbour wall.<br />
Safe harbour for all craft.<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Pulciano ===<br />
[[Image:Pulciano_rez.png|right|200px]]<br />
{{SLURL2|http://slurl.com/secondlife/Pulciano/145/103/22}}<br />
Rezzing zone and lighthouse open to the public.<br />
Climb to the top and light the signal fire.<br />
Dive down to the mysterious ruins of an ancient fort below<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Galgano ===<br />
[[Image:Galgano_rez.png|right|200px]]<br />
{{SLURL2|http://slurl.com/secondlife/Galgano/152/110/21}}<br />
Rezzing zone and tropical atoll open to the public.<br />
There's something down there, below that green film on the water ...<br />
strange lights ... transmission breaking up…….<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Perugia ===<br />
[[Image:Perugia_rez.png|right|200px]]<br />
{{SLURL2|http://slurl.com/secondlife/Perugia/171/147/21}}<br />
Rezzing zone at the piling platform and hang-out pod below.<br />
Experimental deep ocean wave power facility now in operation.<br />
Sustainable energy, but mind the thrust off those turbines !<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Leximus ===<br />
[[Image:Leximus_001.png|right|200px]]<br />
{{SLURL2|http://slurl.com/secondlife/Leximus/84/119/22}}<br />
Rezzing zone at the piling platform and evidence of some strange events in the rocks nearby !<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Imona ===<br />
[[Image:Imona_001.png|right|200px]]<br />
{{SLURL2|http://slurl.com/secondlife/Imona/72/116/21}}<br />
Rezzing zone at the floating raft and dive gear available with which to explore the kelp beds, sunken forest and subaquatic hydrothermal brine pool below<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Sarpesi ===<br />
[[Image:Sarpesi_004.png|right|200px]]<br />
{{SLURL2|http://slurl.com/secondlife/Sarpesi/191/13/21}}<br />
Rezzing zone at the floating raft with dive gear available with which to explore the sunken fort at the end of the sand bank, and the surrounding kelp forest. Watch out for sharks !<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Milio ===<br />
[[Image:milio_002.jpg|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Milio/39/217/21}}<br />
Rezzing zone at the desert island, a raft seems to be drifting round the ocean looking rather lost, maybe you can catch a ride to the mainland ?<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Vipiteno ===<br />
[[Image:Vipiteno_001.png|right|200px]]<br />
{{SLURL2|http://slurl.com/secondlife/Vipiteno/39/38/21}}<br />
Primarily a deepwater trench, the Vipiteno area sports a string of linked islets along the western edge, including a rez zone and a view north to what appears to be a lonely sea locked spire of incarceration.<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
<br />
=== Kenosaki ===<br />
[[Image:Kenosaki Island.png|right|200px]]<br />
{{SLURL2|http://slurl.com/secondlife/Kenosaki/142/191/22}}<br />
Kenosaki Island was created from the rim of an extinct partially underwater volcano. One side of the rim collapsed into the sea and was filled by the ocean, forming a perfect harbor. Rez a boat in the deepwater lagoon or camp out on the beach listening to the woosh-woosh of the waves. Grab a souvenir life preserver and float around the island or try your hand at borrowing a sea kayak. Everything on the island is free to use.<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Dizadare ===<br />
[[Image:Dizadare.jpg|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Dizadare/187/73/32}}<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
<br />
=== Elhaddad ===<br />
[[Image:Elhaddad.jpg|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Elhaddad/148/126/1}}<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
<br />
=== Meltons ===<br />
[[Image:Meltons.jpg|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Meltons/67/60/21}}<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
<br />
=== Montefalco ===<br />
[[Image:Montefalco.jpg|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Montefalco/46/189/8}}<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
<br />
=== Skradski ===<br />
[[Image:Skradski_fort.jpg|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Skradski/187/82/24}}<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
<br />
=== Soncino ===<br />
[[Image:Soncino.jpg|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Soncino/59/141/22}}<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
<br />
=== Urbino ===<br />
[[Image:Urbino.jpg|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Urbino/165/97/22}}<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
<br />
=== Zanuggia ===<br />
[[Image:Zanuggia.jpg|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Zanuggia/53/256/5}}<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
<br />
=== Byeolgwadal ===<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Byeolgwadal/237/46/20}}<br />
<br />
The rez zone is marked with a buoy.<br />
Good diving here and in the seas to the north.<br />
<br />
----<br />
<br />
=== Hanshin ===<br />
[[Image:Hanshin.png|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Hanshin/171/182/20}}<br />
<br />
Come see the ruins and explore the forgotten garden. The rez zone is on the west side of the island.<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
<br />
=== Hathor and Innini ===<br />
[[Image:Hathor.png|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Hathor/24/58/22}}<br />
<br />
Sit around a fire chatting with friends, snooze in a hammock, or grab some free gear and explore the reef.<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
<br />
=== Wardroom ===<br />
[[Image:Wardroom.png|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Wardroom/73/193/20}}<br />
<br />
Relax and go fishing on this forgotten island. 'Ware the big fish down below! <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
<br />
=== Scar ===<br />
[[Image:Scar.png|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Scar/33/227/20}}<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
<br />
=== Mnemosyne ===<br />
[[Image:Mnemosyne.jpg|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Mnemosyne/95/66/20}}<br />
<br />
Explore the mysterious workshop and view distant lands.<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
<br />
=== Ouranos ===<br />
[[Image:Ouranos.png|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Ouranos/55/186/21}}<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
<br />
=== Luna Brink ===<br />
[[Image:Luna Brink.png|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Luna%20Brink/114/61/21}}<br />
<br />
Play checkers with a friend.<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Atanua ===<br />
[[Image:Atanua Marina.jpg|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Atanua/33/232/21}}<br />
Atanua Marina is a public rezzing zone for residents wanting to explore the southern continent (aka Satori or "the Japanese continent") Located off the western shore, it provides a waypoint for starting your excursion or also works as a rest stop along the way. Have a seat on one of the beach chairs or take a ride in one of the liferings. <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Ciuacoatl ===<br />
[[Image:Ciuacoatl Underwater Botanical Garden.jpg|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Ciuacoatl/210/231/4}}<br />
Located along the western coast of Satori, the botanical garden of Ciuacoatl is housed in an undersea dome. Full of terrestrial plantings, the garden is an enclosed habit and open to the public for meetings, gatherings, or just a relaxing stop along the way while exploring the coastal waterways. Outside the garden is a rezzing zone perfect for submarines, but works just as well for any craft. The dome itself rises from the seabed to a depth of 7m below the surface and is marked with a warning buoy.<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
=== Tuulikki ===<br />
[[Image:Tuulikki Castaway Island.jpg|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Tuulikki/22/182/22}}<br />
Island features a secluded little hut, some supplies washed up on shore and a few other odds and ends. It's a good place to stop and watch a sunset or sit by the campfire at night awaiting rescue. (Not to worry, there is a rezzing zone for your boat too.)<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----<br />
<br />
=== Kingpost ===<br />
[[Image:Kingpost The Salty Mole.jpg|right|200px]]<br />
{{SLURL2|http://maps.secondlife.com/secondlife/Kingpost/74/156/22}}<br />
Aaaarrrrrr Matey! Avast all ye sailin' the high seas! Residents stomachs are aquiver when passin' through Kingpost, because they know a band of scurvy sea dogs be hidin' in their makeshift port there. They drink up at The Salty Mole and sleep it off in the Ye Olde Bunkhouse. Sometimes ye can see one peering from the crows nest and jumpin' on the zipline down to the tavern to warn his mates you're a comin'! Tie up at the docks only if ye dare! (Note: International Talk Like A Pirate Day is Sept 19th!)<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Blake_Sea&diff=1172281Blake Sea2012-08-29T12:50:36Z<p>Silent Mole: /* The Blake Sea */</p>
<hr />
<div>=Blake Sea=<br />
<br />
Connecting the Mainland to the United Sailing Sims is the Blake Sea, venue for exciting boat races and other nautical activity! <br />
<br />
The Blake Sea has a [[Linden_Lab_Official:Blake_Sea_Code_of_Conduct|code of conduct]]. Please be considerate during races and events.<br />
<br />
=== Map ===<br />
[[File:Blake_Sea_v8.jpg|400px|Blake Sea]]<br />
''click map to get a larger version''<br />
<br />
<br />
=== Half Hitch ===<br />
<br />
[[Image: Hitch1.jpg|right|100px]] <br />
[[Image: Hitch2.jpg|right|100px]] <br />
[[Image: Hitch3.jpg|right|100px]] <br />
<br />
A picturesque fishing village, with seaplane and ferry access, lots to explore here, boat races daily !<br />
<br />
The local pub "The Sailor's Knot Inn", will be pleased to welcome you for a pint of Sweaty Old Mole or some other delicious ale.<br />
<br />
*{{SLURL2|http://slurl.com/secondlife/Blake%20Sea%20-%20Half%20Hitch/120/136/22}}<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
---<br />
<br />
=== Windlass ===<br />
<br />
Tropical resort.<br />
<br />
*{{SLURL2|http://slurl.com/secondlife/Blake%20Sea%20-%20Windlass/176/42/25}}<br />
<br />
Other islands in the Blake Sea harbor smugglers, castaways, and sea creatures galore!<br />
<br />
<br />
[[Category:LDPW]]</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Blake_Sea&diff=1172273Blake Sea2012-08-29T12:36:08Z<p>Silent Mole: /* The Blake Sea */</p>
<hr />
<div>== The Blake Sea ==<br />
<br />
[[File:Blake_Sea_v8.jpg|400px|Blake Sea]]<br />
''click map to get a larger version''<br />
<br />
Connecting the Mainland to the United Sailing Sims is the Blake Sea, venue for exciting boat races and other nautical activity! <br />
<br />
The Blake Sea has a [[Linden_Lab_Official:Blake_Sea_Code_of_Conduct|code of conduct]]. Please be considerate during races and events.<br />
<br />
=== Half Hitch ===<br />
<br />
[[Image: Hitch1.jpg|right|100px]] <br />
[[Image: Hitch2.jpg|right|100px]] <br />
[[Image: Hitch3.jpg|right|100px]] <br />
<br />
A picturesque fishing village, with seaplane and ferry access, lots to explore here, boat races daily !<br />
<br />
The local pub "The Sailor's Knot Inn", will be pleased to welcome you for a pint of Sweaty Old Mole or some other delicious ale.<br />
<br />
*{{SLURL2|http://slurl.com/secondlife/Blake%20Sea%20-%20Half%20Hitch/120/136/22}}<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
---<br />
<br />
=== Windlass ===<br />
<br />
Tropical resort.<br />
<br />
*{{SLURL2|http://slurl.com/secondlife/Blake%20Sea%20-%20Windlass/176/42/25}}<br />
<br />
Other islands in the Blake Sea harbor smugglers, castaways, and sea creatures galore!<br />
<br />
<br />
[[Category:LDPW]]</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Blake_Sea&diff=1172272Blake Sea2012-08-29T12:34:56Z<p>Silent Mole: </p>
<hr />
<div>= The Blake Sea =<br />
<br />
[[File:Blake_Sea_v8.jpg|400px|Blake Sea]]<br />
''click map to get a larger version''<br />
<br />
Connecting the Mainland to the United Sailing Sims is the Blake Sea, venue for exciting boat races and other nautical activity! <br />
<br />
The Blake Sea has a [[Linden_Lab_Official:Blake_Sea_Code_of_Conduct|code of conduct]]. Please be considerate during races and events.<br />
<br />
== Half Hitch ==<br />
<br />
[[Image: Hitch1.jpg|right|100px]] <br />
[[Image: Hitch2.jpg|right|100px]] <br />
[[Image: Hitch3.jpg|right|100px]] <br />
<br />
A picturesque fishing village, with seaplane and ferry access, lots to explore here, boat races daily !<br />
<br />
The local pub "The Sailor's Knot Inn", will be pleased to welcome you for a pint of Sweaty Old Mole or some other delicious ale.<br />
<br />
*{{SLURL2|http://slurl.com/secondlife/Blake%20Sea%20-%20Half%20Hitch/120/136/22}}<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
---<br />
<br />
== Windlass ==<br />
<br />
Tropical resort.<br />
<br />
*{{SLURL2|http://slurl.com/secondlife/Blake%20Sea%20-%20Windlass/176/42/25}}<br />
<br />
Other islands in the Blake Sea harbor smugglers, castaways, and sea creatures galore!<br />
<br />
<br />
[[Category:LDPW]]</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Blake_Sea&diff=1172271Blake Sea2012-08-29T12:33:23Z<p>Silent Mole: </p>
<hr />
<div>The Blake Sea<br />
<br />
[[File:Blake_Sea_v8.jpg|400px|Blake Sea]]<br />
''click map to get a larger version''<br />
<br />
Connecting the Mainland to the United Sailing Sims is the Blake Sea, venue for exciting boat races and other nautical activity! <br />
<br />
The Blake Sea has a [[Linden_Lab_Official:Blake_Sea_Code_of_Conduct|code of conduct]]. Please be considerate during races and events.<br />
<br />
== Half Hitch ==<br />
<br />
[[Image: Hitch1.jpg|right|100px]] <br />
[[Image: Hitch2.jpg|right|100px]] <br />
[[Image: Hitch3.jpg|right|100px]] <br />
<br />
A picturesque fishing village, with seaplane and ferry access, lots to explore here, boat races daily !<br />
<br />
The local pub "The Sailor's Knot Inn", will be pleased to welcome you for a pint of Sweaty Old Mole or some other delicious ale.<br />
<br />
*{{SLURL2|http://slurl.com/secondlife/Blake%20Sea%20-%20Half%20Hitch/120/136/22}}<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
---<br />
<br />
== Windlass ==<br />
<br />
Tropical resort.<br />
<br />
*{{SLURL2|http://slurl.com/secondlife/Blake%20Sea%20-%20Windlass/176/42/25}}<br />
<br />
Other islands in the Blake Sea harbor smugglers, castaways, and sea creatures galore!<br />
<br />
<br />
[[Category:LDPW]]</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Blake_Sea&diff=1172270Blake Sea2012-08-29T12:32:11Z<p>Silent Mole: /* The Blake Sea */</p>
<hr />
<div>The Blake Sea<br />
<br />
[[File:Blake_Sea_v8.jpg|400px|Blake Sea]]<br />
''click map to get a larger version''<br />
<br />
Connecting the Mainland to the United Sailing Sims is the Blake Sea, venue for exciting boat races and other nautical activity! <br />
<br />
The Blake Sea has a [[Linden_Lab_Official:Blake_Sea_Code_of_Conduct|code of conduct]]. Please be considerate during races and events.<br />
<br />
== Half Hitch ==<br />
<br />
[[Image: Hitch1.jpg|right|100px]] <br />
[[Image: Hitch2.jpg|right|100px]] <br />
[[Image: Hitch3.jpg|right|100px]] <br />
<br />
A picturesque fishing village, with seaplane and ferry access, lots to explore here, boat races daily !<br />
<br />
The local pub "The Sailor's Knot Inn", will be pleased to welcome you for a pint of Sweaty Old Mole or some other delicious ale.<br />
<br />
*{{SLURL2|http://slurl.com/secondlife/Blake%20Sea%20-%20Half%20Hitch/120/136/22}}<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
---<br />
<br />
== Windlass ==<br />
<br />
Tropical resort.<br />
<br />
*{{SLURL2|http://slurl.com/secondlife/Blake%20Sea%20-%20Windlass/176/42/25}}<br />
<br />
Other islands in the Blake Sea harbor smugglers, castaways, and sea creatures galore!</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Blake_Sea&diff=1172269Blake Sea2012-08-29T12:31:36Z<p>Silent Mole: /* Half Hitch */</p>
<hr />
<div>== The Blake Sea ==<br />
<br />
[[File:Blake_Sea_v8.jpg|400px|Blake Sea]]<br />
''click map to get a larger version''<br />
<br />
Connecting the Mainland to the United Sailing Sims is the Blake Sea, venue for exciting boat races and other nautical activity! <br />
<br />
The Blake Sea has a [[Linden_Lab_Official:Blake_Sea_Code_of_Conduct|code of conduct]]. Please be considerate during races and events.<br />
<br />
=== Half Hitch ===<br />
<br />
[[Image: Hitch1.jpg|right|100px]] <br />
[[Image: Hitch2.jpg|right|100px]] <br />
[[Image: Hitch3.jpg|right|100px]] <br />
<br />
A picturesque fishing village, with seaplane and ferry access, lots to explore here, boat races daily !<br />
<br />
The local pub "The Sailor's Knot Inn", will be pleased to welcome you for a pint of Sweaty Old Mole or some other delicious ale.<br />
<br />
*{{SLURL2|http://slurl.com/secondlife/Blake%20Sea%20-%20Half%20Hitch/120/136/22}}<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
---<br />
<br />
=== Windlass === <br />
<br />
Tropical resort.<br />
<br />
*{{SLURL2|http://slurl.com/secondlife/Blake%20Sea%20-%20Windlass/176/42/25}}<br />
<br />
Other islands in the Blake Sea harbor smugglers, castaways, and sea creatures galore!</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Blake_Sea&diff=1172268Blake Sea2012-08-29T12:31:02Z<p>Silent Mole: /* The Blake Sea */</p>
<hr />
<div>== The Blake Sea ==<br />
<br />
[[File:Blake_Sea_v8.jpg|400px|Blake Sea]]<br />
''click map to get a larger version''<br />
<br />
Connecting the Mainland to the United Sailing Sims is the Blake Sea, venue for exciting boat races and other nautical activity! <br />
<br />
The Blake Sea has a [[Linden_Lab_Official:Blake_Sea_Code_of_Conduct|code of conduct]]. Please be considerate during races and events.<br />
<br />
=== Half Hitch ===<br />
<br />
[[Image: Hitch1.jpg|right|100px]] <br />
[[Image: Hitch2.jpg|right|100px]] <br />
[[Image: Hitch3.jpg|right|100px]] <br />
<br />
A picturesque fishing village, with seaplane and ferry access, lots to explore here, boat races daily !<br />
<br />
The local pub "The Sailor's Knot Inn", will be pleased to welcome you for a pint of Sweaty Old Mole or some other delicious ale.<br />
<br />
*{{SLURL2|http://slurl.com/secondlife/Blake%20Sea%20-%20Half%20Hitch/120/136/22}}<br />
<br />
<br />
=== Windlass === <br />
<br />
Tropical resort.<br />
<br />
*{{SLURL2|http://slurl.com/secondlife/Blake%20Sea%20-%20Windlass/176/42/25}}<br />
<br />
Other islands in the Blake Sea harbor smugglers, castaways, and sea creatures galore!</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Linden_Department_of_Public_Works_Seas&diff=1172267Linden Department of Public Works Seas2012-08-29T12:29:23Z<p>Silent Mole: /* Blake Sea */ link to blake's own page</p>
<hr />
<div>The Second Life oceans and lakes offer many fun places to visit and many kilometers of sailing and boating routes and dive sites.<br />
<br />
More information on sailing in Second Life is [[Sailing_in_Second_Life|here]].<br />
<br />
<br />
<br />
== [[Blake Sea|Blake Sea]] ==<br />
The Blake Sea is a large open body of water.<br />
<br />
== The Coastal Waterway ==<br />
Rez zones of the [[Second_Life_Coastal_Waterway]]<br />
<br />
[[Image:Hephaestus Ruins.png|right|100px]]<br />
== [[Sea_of_Fables]] ==<br />
An inland sea where the myths of ancient Greece come alive.<br />
<br />
== [[Mare Secundus]] == <br />
<br />
An ancient sea, almost landlocked in the Sansara continent, containing many points of interest.<br />
<br />
[[Image:Ahab's_Haunt.jpg|right|100px]]<br />
== Ahab's Haunt ==<br />
<br />
This is a tropical beach crowned by the skeleton of a giant beast. Hammocks and inner tubes, undersea treasure and lots to explore for divers, places to rez your boats, and more!<br />
<br />
{{SLURL2|http://slurl.com/secondlife/Ahab's%20Haunt/116/143/22}}<br />
<br />
<br />
[[Category:LDPW]]</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Blake_Sea&diff=1172265Blake Sea2012-08-29T12:27:58Z<p>Silent Mole: moved content</p>
<hr />
<div>== The Blake Sea ==<br />
<br />
[[File:Blake_Sea_v8.jpg|400px|Blake Sea]]<br />
''click map to get a larger version''<br />
<br />
Connecting the Mainland to the United Sailing Sims is the Blake Sea, venue for exciting boat races and other nautical activity! <br />
<br />
The Blake Sea has a [[Linden_Lab_Official:Blake_Sea_Code_of_Conduct|code of conduct]]. Please be considerate during races and events.<br />
<br />
=== Half Hitch ===<br />
<br />
[[Image: Hitch1.jpg|right|100px]] <br />
[[Image: Hitch2.jpg|right|100px]] <br />
[[Image: Hitch3.jpg|right|100px]] <br />
<br />
A picturesque fishing village, with seaplane and ferry access, lots to explore here, boat races daily !<br />
<br />
The local pub "The Sailor's Knot Inn", will be pleased to welcome you for a pint of Sweaty Old Mole or some other delicious ale.<br />
<br />
*{{SLURL2|http://slurl.com/secondlife/Blake%20Sea%20-%20Half%20Hitch/120/136/22}}</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=LDPW_Projects&diff=1172264LDPW Projects2012-08-29T12:20:44Z<p>Silent Mole: /* the Wilderness */</p>
<hr />
<div>=LDPW Projects=<br />
<br />
===Public Rezzing Areas===<br />
For public rezzing zones, see [[Rezzing_Zones|here]]<br />
<br />
===The Second Life Highway and Transport System===<br />
<br />
Exploring the world and linking up communities through a network of highways and byways; for details and maps see [[Second Life Road Network Directory]].<br />
<br />
===Second Life Railroad===<br />
<br />
The SLRR is several miles of track on the [[Heterocera_Network|Heterocera Atoll]]. Nigel Linden, Eric Linden, and Michael Linden created the first portions and systems; most of the stations were created by Residents in a contest; and the moles of the DPW have been extending and improving the right-of-way since then. <br />
<br />
Visit the [[LDPW_SLRR|LDPW Second Life Railroad page]].<br />
<br />
===The Second Life Seas and Lakes===<br />
<br />
Boating is a fabulous way to explore Second Life and the LDPW has been busily expanding the mainland waterways! Information about the [[Linden Department of Public Works Seas|Second Life Seas and Lakes]].<br />
<br />
===Bay City=== <br />
<br />
LDPW's first project was the creation of a new type of Mainland Community to the west of the existing city Regions. Here's a look behind the scenes...<br />
<br />
*[[Linden_Department_of_Public_Works_Bay_City|Current LDPW Bay City Information and Destinations]]<br />
<br />
*[[Linden_Department_of_Public_Works_maps|The History of Bay City in Maps]]<br />
<br />
*[[Linden_Department_of_Public_Works_scrapbook|The Bay City Builder's Scrapbook]]<br />
<br />
*[[Linden_Department_of_Public_Works_Falmouth|The sad story of the Hotel Falmouth]]<br />
<br />
*[http://community.secondlife.com/t5/Mainland/Bay-City/td-p/772049 Visit the Bay City Forum]<br />
<br />
*Learn more about the community at the main wiki page, [[Bay City Community|Bay City]].<br />
<br />
Visit Bay City [http://slurl.com/secondlife/North%20Channel/193/17/29 North Channel]<br />
<br />
===Nautilus===<br />
<br />
An ancient city uncovered by Magellan Linden.<br />
<br />
*First sighting of the ancient and mysterious [[Nautilus_City_investigation|city]]<br />
<br />
*Places to see in [[LDPW_Nautilus|Nautilus]]<br />
<br />
*[[Nautilus_Network|Roads of Nautilus]]<br />
<br />
Visit Nautilus: [http://slurl.com/secondlife/Nautilus%20-%20Shalim/227/109/25 Nautilus-Shalim]<br />
<br />
===LDPW Parks and Recreation===<br />
<br />
The LDPW is constantly beautifying the mainland by adding unique builds, natural spaces and fun little bits and pieces for Residents to use as social, meeting, or event space. Set your home point to the Mole Mart, park your butt in a scenic park, or just spend the afternoon enjoying the view from Rivulet. Your World...expanding daily!<br />
<br />
See the [[Parks and Recreation Directory]].<br />
<br />
===Zindra===<br />
<br />
*See the original [http://community.secondlife.com/t5/Land-and-Sea-General/Welcome-to-Zindra/ba-p/645232 blog post] about Zindra, "the adult continent."<br />
*Main Zindra continent information is [[Zindra|here]].<br />
<br />
===The Wilderness===<br />
<br />
*What wonders await in the Wilderness? This Premium-only realm is the destination for fun and excitement in Second Life. Go fishing, explore the vast jungle and find new friends in this exclusive, expansive world of adventure. See the guide at http://secondlife.com/destinations/premium/wilderness<br />
<br />
<br />
[[Category:LDPW]]</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=LDPW_Projects&diff=1172263LDPW Projects2012-08-29T12:20:14Z<p>Silent Mole: moved the Blake Sea to seas and lakes</p>
<hr />
<div>=LDPW Projects=<br />
<br />
===Public Rezzing Areas===<br />
For public rezzing zones, see [[Rezzing_Zones|here]]<br />
<br />
===The Second Life Highway and Transport System===<br />
<br />
Exploring the world and linking up communities through a network of highways and byways; for details and maps see [[Second Life Road Network Directory]].<br />
<br />
===Second Life Railroad===<br />
<br />
The SLRR is several miles of track on the [[Heterocera_Network|Heterocera Atoll]]. Nigel Linden, Eric Linden, and Michael Linden created the first portions and systems; most of the stations were created by Residents in a contest; and the moles of the DPW have been extending and improving the right-of-way since then. <br />
<br />
Visit the [[LDPW_SLRR|LDPW Second Life Railroad page]].<br />
<br />
===The Second Life Seas and Lakes===<br />
<br />
Boating is a fabulous way to explore Second Life and the LDPW has been busily expanding the mainland waterways! Information about the [[Linden Department of Public Works Seas|Second Life Seas and Lakes]].<br />
<br />
===Bay City=== <br />
<br />
LDPW's first project was the creation of a new type of Mainland Community to the west of the existing city Regions. Here's a look behind the scenes...<br />
<br />
*[[Linden_Department_of_Public_Works_Bay_City|Current LDPW Bay City Information and Destinations]]<br />
<br />
*[[Linden_Department_of_Public_Works_maps|The History of Bay City in Maps]]<br />
<br />
*[[Linden_Department_of_Public_Works_scrapbook|The Bay City Builder's Scrapbook]]<br />
<br />
*[[Linden_Department_of_Public_Works_Falmouth|The sad story of the Hotel Falmouth]]<br />
<br />
*[http://community.secondlife.com/t5/Mainland/Bay-City/td-p/772049 Visit the Bay City Forum]<br />
<br />
*Learn more about the community at the main wiki page, [[Bay City Community|Bay City]].<br />
<br />
Visit Bay City [http://slurl.com/secondlife/North%20Channel/193/17/29 North Channel]<br />
<br />
===Nautilus===<br />
<br />
An ancient city uncovered by Magellan Linden.<br />
<br />
*First sighting of the ancient and mysterious [[Nautilus_City_investigation|city]]<br />
<br />
*Places to see in [[LDPW_Nautilus|Nautilus]]<br />
<br />
*[[Nautilus_Network|Roads of Nautilus]]<br />
<br />
Visit Nautilus: [http://slurl.com/secondlife/Nautilus%20-%20Shalim/227/109/25 Nautilus-Shalim]<br />
<br />
===LDPW Parks and Recreation===<br />
<br />
The LDPW is constantly beautifying the mainland by adding unique builds, natural spaces and fun little bits and pieces for Residents to use as social, meeting, or event space. Set your home point to the Mole Mart, park your butt in a scenic park, or just spend the afternoon enjoying the view from Rivulet. Your World...expanding daily!<br />
<br />
See the [[Parks and Recreation Directory]].<br />
<br />
===Zindra===<br />
<br />
*See the original [http://community.secondlife.com/t5/Land-and-Sea-General/Welcome-to-Zindra/ba-p/645232 blog post] about Zindra, "the adult continent."<br />
*Main Zindra continent information is [[Zindra|here]].<br />
<br />
===the Wilderness===<br />
<br />
*What wonders await in the Wilderness? This Premium-only realm is the destination for fun and excitement in Second Life. Go fishing, explore the vast jungle and find new friends in this exclusive, expansive world of adventure. See the guide at http://secondlife.com/destinations/premium/wilderness<br />
<br />
<br />
[[Category:LDPW]]</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Linden_Department_of_Public_Works_Seas&diff=1172262Linden Department of Public Works Seas2012-08-29T12:14:59Z<p>Silent Mole: added sailing in sl link</p>
<hr />
<div>The Second Life oceans and lakes offer many fun places to visit and many kilometers of sailing and boating routes and dive sites.<br />
<br />
More information on sailing in Second Life is [[Sailing_in_Second_Life|here]].<br />
<br />
<br />
<br />
== Blake Sea ==<br />
[[Parks_and_Recreation_Directory#The_Blake_Sea]]<br />
<br />
== The Coastal Waterway ==<br />
Rez zones of the [[Second_Life_Coastal_Waterway]]<br />
<br />
[[Image:Hephaestus Ruins.png|right|100px]]<br />
== [[Sea_of_Fables]] ==<br />
An inland sea where the myths of ancient Greece come alive.<br />
<br />
== [[Mare Secundus]] == <br />
<br />
An ancient sea, almost landlocked in the Sansara continent, containing many points of interest.<br />
<br />
[[Image:Ahab's_Haunt.jpg|right|100px]]<br />
== Ahab's Haunt ==<br />
<br />
This is a tropical beach crowned by the skeleton of a giant beast. Hammocks and inner tubes, undersea treasure and lots to explore for divers, places to rez your boats, and more!<br />
<br />
{{SLURL2|http://slurl.com/secondlife/Ahab's%20Haunt/116/143/22}}<br />
<br />
<br />
[[Category:LDPW]]</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=LDPW_Projects&diff=1172261LDPW Projects2012-08-29T12:12:47Z<p>Silent Mole: /* The Second Life Coastal Waterway converted to seas and lakes</p>
<hr />
<div>=LDPW Projects=<br />
<br />
===Public Rezzing Areas===<br />
For public rezzing zones, see [[Rezzing_Zones|here]]<br />
<br />
===The Second Life Highway and Transport System===<br />
<br />
Exploring the world and linking up communities through a network of highways and byways; for details and maps see [[Second Life Road Network Directory]].<br />
<br />
===Second Life Railroad===<br />
<br />
The SLRR is several miles of track on the [[Heterocera_Network|Heterocera Atoll]]. Nigel Linden, Eric Linden, and Michael Linden created the first portions and systems; most of the stations were created by Residents in a contest; and the moles of the DPW have been extending and improving the right-of-way since then. <br />
<br />
Visit the [[LDPW_SLRR|LDPW Second Life Railroad page]].<br />
<br />
===The Second Life Seas and Lakes===<br />
<br />
Boating is a fabulous way to explore Second Life and the LDPW has been busily expanding the mainland waterways! Information about the [[Linden Department of Public Works Seas|Second Life Seas and Lakes]].<br />
<br />
===Bay City=== <br />
<br />
LDPW's first project was the creation of a new type of Mainland Community to the west of the existing city Regions. Here's a look behind the scenes...<br />
<br />
*[[Linden_Department_of_Public_Works_Bay_City|Current LDPW Bay City Information and Destinations]]<br />
<br />
*[[Linden_Department_of_Public_Works_maps|The History of Bay City in Maps]]<br />
<br />
*[[Linden_Department_of_Public_Works_scrapbook|The Bay City Builder's Scrapbook]]<br />
<br />
*[[Linden_Department_of_Public_Works_Falmouth|The sad story of the Hotel Falmouth]]<br />
<br />
*[http://community.secondlife.com/t5/Mainland/Bay-City/td-p/772049 Visit the Bay City Forum]<br />
<br />
*Learn more about the community at the main wiki page, [[Bay City Community|Bay City]].<br />
<br />
Visit Bay City [http://slurl.com/secondlife/North%20Channel/193/17/29 North Channel]<br />
<br />
===Nautilus===<br />
<br />
An ancient city uncovered by Magellan Linden.<br />
<br />
*First sighting of the ancient and mysterious [[Nautilus_City_investigation|city]]<br />
<br />
*Places to see in [[LDPW_Nautilus|Nautilus]]<br />
<br />
*[[Nautilus_Network|Roads of Nautilus]]<br />
<br />
Visit Nautilus: [http://slurl.com/secondlife/Nautilus%20-%20Shalim/227/109/25 Nautilus-Shalim]<br />
<br />
===LDPW Parks and Recreation===<br />
<br />
The LDPW is constantly beautifying the mainland by adding unique builds, natural spaces and fun little bits and pieces for Residents to use as social, meeting, or event space. Set your home point to the Mole Mart, park your butt in a scenic park, or just spend the afternoon enjoying the view from Rivulet. Your World...expanding daily!<br />
<br />
See the [[Parks and Recreation Directory]].<br />
<br />
===Blake Sea===<br />
<br />
*Check the recreation listing in the [[Parks_and_Recreation_Directory#The_Blake_Sea|Parks and Recreation Directory]].<br />
*More information on sailing in Second Life is [[Sailing_in_Second_Life|here]].<br />
<br />
===Zindra===<br />
<br />
*See the original [http://community.secondlife.com/t5/Land-and-Sea-General/Welcome-to-Zindra/ba-p/645232 blog post] about Zindra, "the adult continent."<br />
*Main Zindra continent information is [[Zindra|here]].<br />
<br />
===the Wilderness===<br />
<br />
*What wonders await in the Wilderness? This Premium-only realm is the destination for fun and excitement in Second Life. Go fishing, explore the vast jungle and find new friends in this exclusive, expansive world of adventure. See the guide at http://secondlife.com/destinations/premium/wilderness<br />
<br />
<br />
[[Category:LDPW]]</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Good_Building_Practices&diff=1170636Good Building Practices2012-07-16T15:59:40Z<p>Silent Mole: /* Sound */</p>
<hr />
<div>== Welcome to Good Building Practices ==<br />
This page is all about how to be creative and efficient at the same time!<br />
<br />
{| width="100%"<br />
|-<br />
|valign="top"|<br />
<div id="box"><br />
<br />
== Animation ==<br />
<div style="padding: 0.5em"><br />
* '''[[Animation Streamlined]]''' - Make your creations move without dragging Second Life to a crawl!<br />
</div><br />
</div><br />
<br />
<div id="box"><br />
<br />
== Mesh ==<br />
<div style="padding: 0.5em"><br />
* '''[[Making Mesh Physics]]''' - Why and How.<br />
* '''[[Making Mesh for Pathfinding]]''' - Pathfinding friendly mesh.<br />
* '''[[Mesh and LOD]]''' - Mesh objects that doesn't crash your friends old computer.<br />
</div><br />
</div><br />
<br />
<div id="box"><br />
<br />
== Pathfinding ==<br />
<div style="padding: 0.5em"><br />
*'''[[Pathfinding_Overview]]''' - Pathfinding explained.<br />
*'''[[Pathfinding_Tools_in_the_Second_Life_Viewer]]''' - The Pathfinding tools.<br />
*'''[[Pathfinding_Quick_Start_Guide]]''' - The best way to get up and running with Pathfinding.<br />
*'''[[Visual_Guide_to_Pathfinding|A Visual Guide]]''' - Watch how easy it is!<br />
*'''[[Walkability_Coefficients]]''' - Control the speed of your Walkable areas.<br />
*'''[[Material_Volumes]]''' - Control the speed of your characters.<br />
*'''[[Universal_Attribute_Changes_for_Pathfinding]]''' Configure objects for pathfinding in bulk<br />
</div><br />
</div><br />
<div id="box"><br />
<br />
== Physics ==<br />
<div style="padding: 0.5em"><br />
* '''[[Physics Optimization]]''' - Not everything needs physics, learn how to add the least load necessary to the physics engine.<br />
* '''[[PRIM_PHYSICS_SHAPE_NONE]]''' - Additional information on this important attribute.<br />
<br />
</div><br />
</div><br />
|valign="top" width="50%"|<br />
<div id="box"><br />
<br />
== Scripting ==<br />
<div style="padding: 0.5em"><br />
* '''[[Debugging Tips]]''' - how to work out what your code is doing without a conventional development toolkit<br />
<br />
* '''Pathfinding'''<br />
** '''[[Pathfinding LSL Functions]]''' - standard reference for all of the pathfinding functions.<br />
** '''[[Modular Pathfinding Kit]]''' - code snippets designed to be plugged together to quickly build unique behaviors.<br />
** '''[[Pathfinding Cookbook]]''' - ready made solutions for some critters.<br />
** '''[[Holistic Pathfinding Management]]''' - Strategies for managing large numbers of pathfinding objects.<br />
<br />
</div><br />
</div><br />
<br />
<div id="box"><br />
<br />
== Sound ==<br />
<div style="padding: 0.5em"><br />
Tips for adding sound effects to your builds.<br />
* [[Environment_Sounds|Environment Sounds]]<br />
* [[Event_Driven_Sounds|Event Driven Sounds]]<br />
</div><br />
</div><br />
<br />
<div id="box"><br />
<br />
== Sculpted Prims ==<br />
<div style="padding: 0.5em"><br />
*'''[[Sculpted Prim Usage]]''' - What you need to know about how sculpted prims effect Second Life.<br />
</div><br />
</div><br />
<br />
<div id="box"><br />
<br />
== Textures ==<br />
<div style="padding: 0.5em"><br />
* '''[[Texture Usage]]''' - What size to use, and what to avoid.<br />
</div><br />
</div><br />
<br />
<br />
|}<br />
__NOTOC__</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Event_Driven_Sounds&diff=1170635Event Driven Sounds2012-07-16T15:57:45Z<p>Silent Mole: /* Collided */</p>
<hr />
<div>== Event Driven Sounds ==<br />
<br />
<br />
=== Touched ===<br />
<br />
Would you like your creation to make noise when someone clicks on it?<br />
<br />
<lsl><br />
default<br />
{<br />
touch_start(integer total_number)<br />
{<br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0 );<br />
}<br />
}<br />
</lsl><br />
<br />
=== Near ===<br />
<br />
If someone is nearby, this script will play a sound.<br />
<br />
<lsl><br />
float DISTANCE = 3.0; // in meters.<br />
float SECONDS = 1.0; // how often to check<br />
<br />
default<br />
{<br />
state_entry() { llSetTimerEvent( SECONDS ); }<br />
<br />
sensor( integer n )<br />
{<br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0 );<br />
llSetTimerEvent( SECONDS );<br />
}<br />
<br />
no_sensor() { llSetTimerEvent( SECONDS ); }<br />
<br />
timer()<br />
{<br />
llSetTimerEvent( 0 );<br />
llSensor( "", NULL_KEY, AGENT, DISTANCE, PI );<br />
}<br />
}<br />
</lsl><br />
<br />
=== Collided ===<br />
<br />
Would you like your bushes to rustle when something walks into them? Or your rats to squeak if someone steps on them?<br />
<br />
Which is necessary depends on how the object is set. Pathfinding-enabled creatures require the collision event. Obstacles vary depending on how their pathfinding attributes are set.<br />
<br />
<lsl><br />
default<br />
{<br />
state_entry() <br />
{<br />
if ( llGetStatus(STATUS_PHANTOM) == TRUE ) <br />
llVolumeDetect(TRUE);<br />
else llVolumeDetect(FALSE);<br />
}<br />
<br />
collision_start(integer total_number)<br />
{ <br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0);<br />
} <br />
}<br />
</lsl><br />
<br />
<lsl><br />
default<br />
{<br />
state_entry() <br />
{ <br />
llCollisionSound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0);<br />
} <br />
}<br />
</lsl><br />
<br />
If you are hearing an annoying "thud" sound when things collide, add this to the objects to silence the default collision sound.<br />
<br />
<lsl><br />
default<br />
{<br />
state_entry() <br />
{ <br />
llCollisionSound( "", 0.0);<br />
} <br />
}<br />
</lsl><br />
<br />
=== Sat on ===<br />
<br />
Would you like your horse to neigh, or your chair to creak when someone sits on it?<br />
<lsl><br />
vector sit_position = <-0.0,0.0,-0.1>;<br />
vector sit_rotation = <0,0,0>;<br />
<br />
default<br />
{<br />
<br />
state_entry()<br />
{<br />
llSitTarget(sit_position, llEuler2Rot(sit_rotation * DEG_TO_RAD));<br />
} <br />
<br />
changed(integer change) <br />
{<br />
if (change & CHANGED_LINK) <br />
{<br />
key avatar = llAvatarOnSitTarget();<br />
if ( avatar != NULL_KEY ) <br />
{<br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0 );<br />
}<br />
} <br />
} <br />
}<br />
</lsl><br />
<br />
=== Scripting comments ===<br />
<br />
This gets the name of the first sound in the object's inventory. You can replace it with the name of a sound or its UUID.<br />
<br />
<lsl><br />
string soundname = llGetInventoryName( INVENTORY_SOUND, 0 );<br />
</lsl><br />
<br />
You can replace llPlaySound() with llTriggerSound() in the scripts above. The latter plays sounds unattached, so consider carefully if you're using it on a moving object or with a several seconds long sound.</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Event_Driven_Sounds&diff=1170634Event Driven Sounds2012-07-16T15:56:45Z<p>Silent Mole: /* Event Driven Sounds */</p>
<hr />
<div>== Event Driven Sounds ==<br />
<br />
<br />
=== Touched ===<br />
<br />
Would you like your creation to make noise when someone clicks on it?<br />
<br />
<lsl><br />
default<br />
{<br />
touch_start(integer total_number)<br />
{<br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0 );<br />
}<br />
}<br />
</lsl><br />
<br />
=== Near ===<br />
<br />
If someone is nearby, this script will play a sound.<br />
<br />
<lsl><br />
float DISTANCE = 3.0; // in meters.<br />
float SECONDS = 1.0; // how often to check<br />
<br />
default<br />
{<br />
state_entry() { llSetTimerEvent( SECONDS ); }<br />
<br />
sensor( integer n )<br />
{<br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0 );<br />
llSetTimerEvent( SECONDS );<br />
}<br />
<br />
no_sensor() { llSetTimerEvent( SECONDS ); }<br />
<br />
timer()<br />
{<br />
llSetTimerEvent( 0 );<br />
llSensor( "", NULL_KEY, AGENT, DISTANCE, PI );<br />
}<br />
}<br />
</lsl><br />
<br />
=== Collided ===<br />
<br />
Would you like your bushes to rustle when something walks into them? Or your rats to squeak if someone steps on them?<br />
<br />
<lsl><br />
default<br />
{<br />
state_entry() <br />
{<br />
if ( llGetStatus(STATUS_PHANTOM) == TRUE ) <br />
llVolumeDetect(TRUE);<br />
else llVolumeDetect(FALSE);<br />
}<br />
<br />
collision_start(integer total_number)<br />
{ <br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0);<br />
} <br />
}<br />
</lsl><br />
<br />
<lsl><br />
default<br />
{<br />
state_entry() <br />
{ <br />
llCollisionSound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0);<br />
} <br />
}<br />
</lsl><br />
<br />
Which sound call is necessary depends on how the object is set. Pathfinding-enabled creatures require the collision event. Obstacles vary depending on how their pathfinding attributes are set.<br />
<br />
If you are hearing an annoying "thud" sound when things collide, add this to the objects to silence the default collision sound.<br />
<br />
<lsl><br />
default<br />
{<br />
state_entry() <br />
{ <br />
llCollisionSound( "", 0.0);<br />
} <br />
}<br />
</lsl><br />
<br />
=== Sat on ===<br />
<br />
Would you like your horse to neigh, or your chair to creak when someone sits on it?<br />
<lsl><br />
vector sit_position = <-0.0,0.0,-0.1>;<br />
vector sit_rotation = <0,0,0>;<br />
<br />
default<br />
{<br />
<br />
state_entry()<br />
{<br />
llSitTarget(sit_position, llEuler2Rot(sit_rotation * DEG_TO_RAD));<br />
} <br />
<br />
changed(integer change) <br />
{<br />
if (change & CHANGED_LINK) <br />
{<br />
key avatar = llAvatarOnSitTarget();<br />
if ( avatar != NULL_KEY ) <br />
{<br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0 );<br />
}<br />
} <br />
} <br />
}<br />
</lsl><br />
<br />
=== Scripting comments ===<br />
<br />
This gets the name of the first sound in the object's inventory. You can replace it with the name of a sound or its UUID.<br />
<br />
<lsl><br />
string soundname = llGetInventoryName( INVENTORY_SOUND, 0 );<br />
</lsl><br />
<br />
You can replace llPlaySound() with llTriggerSound() in the scripts above. The latter plays sounds unattached, so consider carefully if you're using it on a moving object or with a several seconds long sound.</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Event_Driven_Sounds&diff=1170633Event Driven Sounds2012-07-16T15:50:59Z<p>Silent Mole: /* Collided */</p>
<hr />
<div>== Event Driven Sounds ==<br />
<br />
<br />
=== Touched ===<br />
<br />
Would you like your creation to make noise when someone clicks on it?<br />
<br />
<lsl><br />
default<br />
{<br />
touch_start(integer total_number)<br />
{<br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0 );<br />
}<br />
}<br />
</lsl><br />
<br />
=== Near ===<br />
<br />
If someone is nearby, this script will play a sound.<br />
<br />
<lsl><br />
float DISTANCE = 3.0; // in meters.<br />
float SECONDS = 1.0; // how often to check<br />
<br />
default<br />
{<br />
state_entry() { llSetTimerEvent( SECONDS ); }<br />
<br />
sensor( integer n )<br />
{<br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0 );<br />
llSetTimerEvent( SECONDS );<br />
}<br />
<br />
no_sensor() { llSetTimerEvent( SECONDS ); }<br />
<br />
timer()<br />
{<br />
llSetTimerEvent( 0 );<br />
llSensor( "", NULL_KEY, AGENT, DISTANCE, PI );<br />
}<br />
}<br />
</lsl><br />
<br />
=== Collided ===<br />
<br />
Would you like your bushes to rustle when something walks into them? Or your rats to squeak if someone steps on them?<br />
<br />
<lsl><br />
default<br />
{<br />
state_entry() <br />
{<br />
if ( llGetStatus(STATUS_PHANTOM) == TRUE ) <br />
llVolumeDetect(TRUE);<br />
else llVolumeDetect(FALSE);<br />
}<br />
<br />
collision_start(integer total_number)<br />
{ <br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0);<br />
} <br />
}<br />
</lsl><br />
<br />
<lsl><br />
default<br />
{<br />
state_entry() <br />
{ <br />
llCollisionSound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0);<br />
} <br />
}<br />
</lsl><br />
<br />
Which sound call is necessary depends on how the object is set. Pathfinding-enabled creatures require the collision event. Obstacles vary depending on how their pathfinding attributes are set.<br />
<br />
=== Sat on ===<br />
<br />
Would you like your horse to neigh, or your chair to creak when someone sits on it?<br />
<lsl><br />
vector sit_position = <-0.0,0.0,-0.1>;<br />
vector sit_rotation = <0,0,0>;<br />
<br />
default<br />
{<br />
<br />
state_entry()<br />
{<br />
llSitTarget(sit_position, llEuler2Rot(sit_rotation * DEG_TO_RAD));<br />
} <br />
<br />
changed(integer change) <br />
{<br />
if (change & CHANGED_LINK) <br />
{<br />
key avatar = llAvatarOnSitTarget();<br />
if ( avatar != NULL_KEY ) <br />
{<br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0 );<br />
}<br />
} <br />
} <br />
}<br />
</lsl><br />
<br />
=== Scripting comments ===<br />
<br />
This gets the name of the first sound in the object's inventory. You can replace it with the name of a sound or its UUID.<br />
<br />
<lsl><br />
string soundname = llGetInventoryName( INVENTORY_SOUND, 0 );<br />
</lsl><br />
<br />
You can replace llPlaySound() with llTriggerSound() in the scripts above. The latter plays sounds unattached, so consider carefully if you're using it on a moving object or with a several seconds long sound.</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Event_Driven_Sounds&diff=1170632Event Driven Sounds2012-07-16T15:14:54Z<p>Silent Mole: /* Event Driven Sounds */</p>
<hr />
<div>== Event Driven Sounds ==<br />
<br />
<br />
=== Touched ===<br />
<br />
Would you like your creation to make noise when someone clicks on it?<br />
<br />
<lsl><br />
default<br />
{<br />
touch_start(integer total_number)<br />
{<br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0 );<br />
}<br />
}<br />
</lsl><br />
<br />
=== Near ===<br />
<br />
If someone is nearby, this script will play a sound.<br />
<br />
<lsl><br />
float DISTANCE = 3.0; // in meters.<br />
float SECONDS = 1.0; // how often to check<br />
<br />
default<br />
{<br />
state_entry() { llSetTimerEvent( SECONDS ); }<br />
<br />
sensor( integer n )<br />
{<br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0 );<br />
llSetTimerEvent( SECONDS );<br />
}<br />
<br />
no_sensor() { llSetTimerEvent( SECONDS ); }<br />
<br />
timer()<br />
{<br />
llSetTimerEvent( 0 );<br />
llSensor( "", NULL_KEY, AGENT, DISTANCE, PI );<br />
}<br />
}<br />
</lsl><br />
<br />
=== Collided ===<br />
<br />
=== Sat on ===<br />
<br />
Would you like your horse to neigh, or your chair to creak when someone sits on it?<br />
<lsl><br />
vector sit_position = <-0.0,0.0,-0.1>;<br />
vector sit_rotation = <0,0,0>;<br />
<br />
default<br />
{<br />
<br />
state_entry()<br />
{<br />
llSitTarget(sit_position, llEuler2Rot(sit_rotation * DEG_TO_RAD));<br />
} <br />
<br />
changed(integer change) <br />
{<br />
if (change & CHANGED_LINK) <br />
{<br />
key avatar = llAvatarOnSitTarget();<br />
if ( avatar != NULL_KEY ) <br />
{<br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0 );<br />
}<br />
} <br />
} <br />
}<br />
</lsl><br />
<br />
=== Scripting comments ===<br />
<br />
This gets the name of the first sound in the object's inventory. You can replace it with the name of a sound or its UUID.<br />
<br />
<lsl><br />
string soundname = llGetInventoryName( INVENTORY_SOUND, 0 );<br />
</lsl><br />
<br />
You can replace llPlaySound() with llTriggerSound() in the scripts above. The latter plays sounds unattached, so consider carefully if you're using it on a moving object or with a several seconds long sound.</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Event_Driven_Sounds&diff=1170630Event Driven Sounds2012-07-16T15:02:09Z<p>Silent Mole: /* Event Driven Sounds */</p>
<hr />
<div>== Event Driven Sounds ==<br />
<br />
<br />
=== Touched ===<br />
<br />
Would you like your creation to make noise when someone clicks on it?<br />
<br />
<lsl><br />
default<br />
{<br />
touch_start(integer total_number)<br />
{<br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0 );<br />
}<br />
}<br />
</lsl><br />
<br />
=== Near ===<br />
<br />
If someone is nearby, this script will play a sound.<br />
<br />
<lsl><br />
float DISTANCE = 3.0; // in meters.<br />
float SECONDS = 1.0; // how often to check<br />
<br />
default<br />
{<br />
state_entry() { llSetTimerEvent( SECONDS ); }<br />
<br />
sensor( integer n )<br />
{<br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0 );<br />
llSetTimerEvent( SECONDS );<br />
}<br />
<br />
no_sensor() { llSetTimerEvent( SECONDS ); }<br />
<br />
timer()<br />
{<br />
llSetTimerEvent( 0 );<br />
llSensor( "", NULL_KEY, AGENT, DISTANCE, PI );<br />
}<br />
}<br />
</lsl><br />
<br />
=== Collided ===<br />
<br />
=== Sat on ===<br />
<br />
Would you like your horse to neigh, or your chair to creak when someone sits on it?<br />
<lsl><br />
vector sit_position = <-0.0,0.0,-0.1>;<br />
vector sit_rotation = <0,0,0>;<br />
<br />
default<br />
{<br />
<br />
state_entry()<br />
{<br />
llSitTarget(sit_position, llEuler2Rot(sit_rotation * DEG_TO_RAD));<br />
} <br />
<br />
changed(integer change) <br />
{<br />
if (change & CHANGED_LINK) <br />
{<br />
key avatar = llAvatarOnSitTarget();<br />
if ( avatar != NULL_KEY ) <br />
{<br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0 );<br />
}<br />
} <br />
} <br />
}<br />
</lsl><br />
<br />
=== Scripting comments ===<br />
<br />
This gets the name of the first sound in the object's inventory. You can replace it with the name of a sound or its UUID.<br />
<br />
<lsl><br />
string soundname = llGetInventoryName( INVENTORY_SOUND, 0 );<br />
</lsl><br />
<br />
You can replace llPlaySound() with llTriggerSound() in the scripts above. The latter plays sounds unattached, so consider carefully if you're using it on a moving object.</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Event_Driven_Sounds&diff=1170628Event Driven Sounds2012-07-16T14:46:01Z<p>Silent Mole: /* Event Driven Sounds */</p>
<hr />
<div>== Event Driven Sounds ==<br />
<br />
=== Touched ===<br />
<br />
Would you like your creation to make noise when someone clicks on it?<br />
<br />
<lsl><br />
default<br />
{<br />
touch_start(integer total_number)<br />
{<br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0 );<br />
}<br />
}<br />
</lsl><br />
<br />
=== Near ===<br />
<br />
If someone is nearby, this script will play a sound.<br />
<br />
<lsl><br />
float DISTANCE = 3.0; // in meters.<br />
float SECONDS = 1.0; // how often to check<br />
<br />
default<br />
{<br />
state_entry() { llSetTimerEvent( SECONDS ); }<br />
<br />
sensor( integer n )<br />
{<br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0 );<br />
llSetTimerEvent( SECONDS );<br />
}<br />
<br />
no_sensor() { llSetTimerEvent( SECONDS ); }<br />
<br />
timer()<br />
{<br />
llSetTimerEvent( 0 );<br />
llSensor( "", NULL_KEY, AGENT, DISTANCE, PI );<br />
}<br />
}<br />
</lsl><br />
<br />
=== Collided ===<br />
<br />
=== Sat on ===<br />
<br />
Would you like your horse to neigh, or your chair to creak when someone sits on it?<br />
<lsl><br />
vector sit_position = <-0.0,0.0,-0.1>;<br />
vector sit_rotation = <0,0,0>;<br />
<br />
default<br />
{<br />
<br />
state_entry()<br />
{<br />
llSitTarget(sit_position, llEuler2Rot(sit_rotation * DEG_TO_RAD));<br />
} <br />
<br />
changed(integer change) <br />
{<br />
if (change & CHANGED_LINK) <br />
{<br />
key avatar = llAvatarOnSitTarget();<br />
if ( avatar != NULL_KEY ) <br />
{<br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0 );<br />
}<br />
} <br />
} <br />
}<br />
</lsl></div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Event_Driven_Sounds&diff=1170627Event Driven Sounds2012-07-16T14:38:06Z<p>Silent Mole: Created page with "== Event Driven Sounds == === Touched === Would you like your creation to make noise when someone clicks on it? <lsl> default { touch_start(integer total_number) { …"</p>
<hr />
<div>== Event Driven Sounds ==<br />
<br />
=== Touched ===<br />
<br />
Would you like your creation to make noise when someone clicks on it?<br />
<br />
<lsl><br />
default<br />
{<br />
touch_start(integer total_number)<br />
{<br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0 );<br />
}<br />
}<br />
</lsl><br />
<br />
=== Near ===<br />
<br />
If someone is nearby, this script will play a sound.<br />
<br />
<lsl><br />
float DISTANCE = 3.0; // in meters.<br />
float SECONDS = 1.0; // how often to check<br />
<br />
default<br />
{<br />
state_entry() { llSetTimerEvent( SECONDS ); }<br />
<br />
sensor( integer n )<br />
{<br />
llPlaySound( llGetInventoryName( INVENTORY_SOUND, 0 ), 1.0 );<br />
llSetTimerEvent( SECONDS );<br />
}<br />
<br />
no_sensor() { llSetTimerEvent( SECONDS ); }<br />
<br />
timer()<br />
{<br />
llSetTimerEvent( 0 );<br />
llSensor( "", NULL_KEY, AGENT, DISTANCE, PI );<br />
}<br />
}<br />
</lsl><br />
<br />
=== Collided ===<br />
<br />
=== Sat on ===</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Environment_Sounds&diff=1170543Environment Sounds2012-07-12T19:01:37Z<p>Silent Mole: /* Sound clips */</p>
<hr />
<div>==Environmental Sounds==<br />
<br />
There's a handful of ways to generate sound without an avatar in Second Life.<br />
* [[Sound_Clips|Sound clips]]<br />
* a parcel's music stream<br />
* a web page displayed on a prim<br />
<br />
You can change all of them via scripting. The latter two can be set up without using scripts.<br />
<br />
=== Soundtrack ===<br />
<br />
If your build has a soundtrack or theme music that you want heard clearly across the parcel, consider using [[Streaming_Music|streaming music]]. It can be set in the About Land window. The [[LlSetParcelMusicURL|llSetParcelMusicURL()]] call lets you change it via script.<br />
<br />
You can play a series of sound clips in order, but there's no guarantee that the "song" will be heard as seamless.<br />
<br />
=== Looping ===<br />
<br />
Looping a sound clip can add ambiance. Consider it for nighttime bugs by a lake, a crowd murmuring, or the hum of electric signs.<br />
<br />
<lsl><br />
default<br />
{<br />
state_entry()<br />
{<br />
llLoopSound( llGetInventoryName( INVENTORY_SOUND, 0 ), 0.5 );<br />
}<br />
}<br />
</lsl><br />
<br />
Shift-drag will allow you to create multiple copies of an object that will have their looping sounds synched together.<br />
<br />
=== Synchronized ===<br />
<br />
Do you want your ocean wave sounds to all synch up? Does your surreal build have a slow steady heartbeat?<br />
<br />
Try this [[Script:Synch_Sound|synchronized sound script]].<br />
<br />
=== Random ===<br />
<br />
Short ambient sounds played randomly can make a space feel more alive. <br />
<br />
Some good choices for this would be frogs, underbrush rustles and snaps, a distant car horn or squealing brakes.<br />
<br />
Try this [[Script:Random_Sounds|random sounds script]].<br />
<br />
=== Day/Night ===<br />
<br />
Some sounds are best played during certain times of day. Consider birdsong, or bats and owls. If your build is taking advantage of a region's natural day/night cycle, you can alter your ambient sound selection by the time of day your region shows.<br />
<br />
<lsl><br />
integer IsSunUp()<br />
{<br />
vector sunPosition = llGetSunDirection();<br />
return ( sunPosition.z > 0 );<br />
}<br />
<br />
integer IsTwilight()<br />
{<br />
vector sunPosition = llGetSunDirection();<br />
if ( sunPosition.z > 0.0 && sunPosition.z < 0.15 )<br />
return TRUE;<br />
return FALSE;<br />
}<br />
</lsl><br />
<br />
Try this [[Script:Day_Random_Sounds|daytime random sounds script]].<br />
<br />
=== Wind activated ===<br />
<br />
Do your bushes rustle more or louder when the wind blows? What about wind chimes?<br />
<br />
<lsl><br />
float GetWindStrength()<br />
{<br />
return llVecMag(llWind(ZERO_VECTOR));<br />
}<br />
</lsl><br />
<br />
Try this [[Script:Wind_Powered_Random_Sounds|wind powered sounds script]].<br />
<br />
=== Loud ===<br />
<br />
Using llTriggerSound multiple times in a row can make a sound seem much louder than calling it once. This can be useful for tower bells and explosions. Be careful using this; too many times can cause an unpleasant echo-like effect.<br />
<br />
<lsl><br />
integer n;<br />
for (n = 0; n < 5; ++n)<br />
{<br />
llTriggerSound(soundname, 1.0);<br />
}<br />
</lsl><br />
<br />
=== Scripting comments ===<br />
<br />
==== Sound clips ====<br />
*[[LlTriggerSound|llTriggerSound()]]<br />
** Unattached - sounds occur where they're triggered.<br />
** Cannot be stopped with [[LlStopSound|llStopSound()]].<br />
*[[LlPlaySound|llPlaySound()]]<br />
** Attached - sounds follow the object they are in if it moves.<br />
** Only one at a time per prim. Playing another will stop the current sound.<br />
*[[LlLoopSound|llLoopSound()]]<br />
** Attached - sounds follow the object they are in if it moves.<br />
** This continuously loops the sound.<br />
** Only one at a time per prim. Playing another will stop the current sound.</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Environment_Sounds&diff=1170542Environment Sounds2012-07-12T18:54:31Z<p>Silent Mole: /* Soundtrack */</p>
<hr />
<div>==Environmental Sounds==<br />
<br />
There's a handful of ways to generate sound without an avatar in Second Life.<br />
* [[Sound_Clips|Sound clips]]<br />
* a parcel's music stream<br />
* a web page displayed on a prim<br />
<br />
You can change all of them via scripting. The latter two can be set up without using scripts.<br />
<br />
=== Soundtrack ===<br />
<br />
If your build has a soundtrack or theme music that you want heard clearly across the parcel, consider using [[Streaming_Music|streaming music]]. It can be set in the About Land window. The [[LlSetParcelMusicURL|llSetParcelMusicURL()]] call lets you change it via script.<br />
<br />
You can play a series of sound clips in order, but there's no guarantee that the "song" will be heard as seamless.<br />
<br />
=== Looping ===<br />
<br />
Looping a sound clip can add ambiance. Consider it for nighttime bugs by a lake, a crowd murmuring, or the hum of electric signs.<br />
<br />
<lsl><br />
default<br />
{<br />
state_entry()<br />
{<br />
llLoopSound( llGetInventoryName( INVENTORY_SOUND, 0 ), 0.5 );<br />
}<br />
}<br />
</lsl><br />
<br />
Shift-drag will allow you to create multiple copies of an object that will have their looping sounds synched together.<br />
<br />
=== Synchronized ===<br />
<br />
Do you want your ocean wave sounds to all synch up? Does your surreal build have a slow steady heartbeat?<br />
<br />
Try this [[Script:Synch_Sound|synchronized sound script]].<br />
<br />
=== Random ===<br />
<br />
Short ambient sounds played randomly can make a space feel more alive. <br />
<br />
Some good choices for this would be frogs, underbrush rustles and snaps, a distant car horn or squealing brakes.<br />
<br />
Try this [[Script:Random_Sounds|random sounds script]].<br />
<br />
=== Day/Night ===<br />
<br />
Some sounds are best played during certain times of day. Consider birdsong, or bats and owls. If your build is taking advantage of a region's natural day/night cycle, you can alter your ambient sound selection by the time of day your region shows.<br />
<br />
<lsl><br />
integer IsSunUp()<br />
{<br />
vector sunPosition = llGetSunDirection();<br />
return ( sunPosition.z > 0 );<br />
}<br />
<br />
integer IsTwilight()<br />
{<br />
vector sunPosition = llGetSunDirection();<br />
if ( sunPosition.z > 0.0 && sunPosition.z < 0.15 )<br />
return TRUE;<br />
return FALSE;<br />
}<br />
</lsl><br />
<br />
Try this [[Script:Day_Random_Sounds|daytime random sounds script]].<br />
<br />
=== Wind activated ===<br />
<br />
Do your bushes rustle more or louder when the wind blows? What about wind chimes?<br />
<br />
<lsl><br />
float GetWindStrength()<br />
{<br />
return llVecMag(llWind(ZERO_VECTOR));<br />
}<br />
</lsl><br />
<br />
Try this [[Script:Wind_Powered_Random_Sounds|wind powered sounds script]].<br />
<br />
=== Loud ===<br />
<br />
Using llTriggerSound multiple times in a row can make a sound seem much louder than calling it once. This can be useful for tower bells and explosions. Be careful using this; too many times can cause an unpleasant echo-like effect.<br />
<br />
<lsl><br />
integer n;<br />
for (n = 0; n < 5; ++n)<br />
{<br />
llTriggerSound(soundname, 1.0);<br />
}<br />
</lsl><br />
<br />
=== Scripting comments ===<br />
<br />
==== Sound clips ====<br />
*llTriggerSound()<br />
** Unattached - sounds occur where they're triggered.<br />
*llPlaySound()<br />
** Attached - sounds follow the object they are in if it moves.<br />
** Only one at a time per prim. Playing another will stop the current sound.<br />
* llLoopSound()<br />
** Attached - sounds follow the object they are in if it moves.<br />
** This continuously loops the sound.<br />
** Only one at a time per prim. Playing another will stop the current sound.</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Environment_Sounds&diff=1170541Environment Sounds2012-07-12T18:50:12Z<p>Silent Mole: /* Environmental Sounds */</p>
<hr />
<div>==Environmental Sounds==<br />
<br />
There's a handful of ways to generate sound without an avatar in Second Life.<br />
* [[Sound_Clips|Sound clips]]<br />
* a parcel's music stream<br />
* a web page displayed on a prim<br />
<br />
You can change all of them via scripting. The latter two can be set up without using scripts.<br />
<br />
=== Soundtrack ===<br />
<br />
If your build has a soundtrack or theme music that you want heard clearly across the parcel, consider using [[Streaming_Music|streaming music]]. The [[LlSetParcelMusicURL|llSetParcelMusicURL()]] call lets you change that setting via script.<br />
<br />
You can play a series of sound clips in order, but there's no guarantee that the "song" will be heard as seamless.<br />
<br />
=== Looping ===<br />
<br />
Looping a sound clip can add ambiance. Consider it for nighttime bugs by a lake, a crowd murmuring, or the hum of electric signs.<br />
<br />
<lsl><br />
default<br />
{<br />
state_entry()<br />
{<br />
llLoopSound( llGetInventoryName( INVENTORY_SOUND, 0 ), 0.5 );<br />
}<br />
}<br />
</lsl><br />
<br />
Shift-drag will allow you to create multiple copies of an object that will have their looping sounds synched together.<br />
<br />
=== Synchronized ===<br />
<br />
Do you want your ocean wave sounds to all synch up? Does your surreal build have a slow steady heartbeat?<br />
<br />
Try this [[Script:Synch_Sound|synchronized sound script]].<br />
<br />
=== Random ===<br />
<br />
Short ambient sounds played randomly can make a space feel more alive. <br />
<br />
Some good choices for this would be frogs, underbrush rustles and snaps, a distant car horn or squealing brakes.<br />
<br />
Try this [[Script:Random_Sounds|random sounds script]].<br />
<br />
=== Day/Night ===<br />
<br />
Some sounds are best played during certain times of day. Consider birdsong, or bats and owls. If your build is taking advantage of a region's natural day/night cycle, you can alter your ambient sound selection by the time of day your region shows.<br />
<br />
<lsl><br />
integer IsSunUp()<br />
{<br />
vector sunPosition = llGetSunDirection();<br />
return ( sunPosition.z > 0 );<br />
}<br />
<br />
integer IsTwilight()<br />
{<br />
vector sunPosition = llGetSunDirection();<br />
if ( sunPosition.z > 0.0 && sunPosition.z < 0.15 )<br />
return TRUE;<br />
return FALSE;<br />
}<br />
</lsl><br />
<br />
Try this [[Script:Day_Random_Sounds|daytime random sounds script]].<br />
<br />
=== Wind activated ===<br />
<br />
Do your bushes rustle more or louder when the wind blows? What about wind chimes?<br />
<br />
<lsl><br />
float GetWindStrength()<br />
{<br />
return llVecMag(llWind(ZERO_VECTOR));<br />
}<br />
</lsl><br />
<br />
Try this [[Script:Wind_Powered_Random_Sounds|wind powered sounds script]].<br />
<br />
=== Loud ===<br />
<br />
Using llTriggerSound multiple times in a row can make a sound seem much louder than calling it once. This can be useful for tower bells and explosions. Be careful using this; too many times can cause an unpleasant echo-like effect.<br />
<br />
<lsl><br />
integer n;<br />
for (n = 0; n < 5; ++n)<br />
{<br />
llTriggerSound(soundname, 1.0);<br />
}<br />
</lsl><br />
<br />
=== Scripting comments ===<br />
<br />
==== Sound clips ====<br />
*llTriggerSound()<br />
** Unattached - sounds occur where they're triggered.<br />
*llPlaySound()<br />
** Attached - sounds follow the object they are in if it moves.<br />
** Only one at a time per prim. Playing another will stop the current sound.<br />
* llLoopSound()<br />
** Attached - sounds follow the object they are in if it moves.<br />
** This continuously loops the sound.<br />
** Only one at a time per prim. Playing another will stop the current sound.</div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Environment_Sounds&diff=1170540Environment Sounds2012-07-12T18:08:56Z<p>Silent Mole: /* Looping */</p>
<hr />
<div>==Environmental Sounds==<br />
<br />
There's a handful of ways to generate sound without an avatar in Second Life.<br />
* [[Sound_Clips|Sound clips]]<br />
* a parcel's music stream<br />
* a web page displayed on a prim<br />
<br />
You can change all of them using scripting. The latter two depend on the viewer being set properly to allow them to play.<br />
<br />
=== Soundtrack ===<br />
<br />
If your build has a soundtrack or theme music that you want heard clearly across the parcel, consider using [[Streaming_Music|streaming music]]. <br />
<br />
You can play a series of sound clips in order, but there's no guarantee that the "song" will be heard as seamless.<br />
<br />
=== Looping ===<br />
<br />
Looping a sound clip can add ambiance. Consider it for nighttime bugs by a lake, a crowd murmuring, or the hum of electric signs.<br />
<br />
<lsl><br />
default<br />
{<br />
state_entry()<br />
{<br />
llLoopSound( llGetInventoryName( INVENTORY_SOUND, 0 ), 0.5 );<br />
}<br />
}<br />
</lsl><br />
<br />
Shift-drag will allow you to create multiple copies of an object that will have their looping sounds synched together.<br />
<br />
=== Synchronized ===<br />
<br />
Do you want your ocean wave sounds to all synch up? Does your surreal build have a slow steady heartbeat?<br />
<br />
Try this [[Script:Synch_Sound|synchronized sound script]].<br />
<br />
=== Random ===<br />
<br />
Short ambient sounds played randomly can make a space feel more alive. <br />
<br />
Some good choices for this would be frogs, underbrush rustles and snaps, a distant car horn or squealing brakes.<br />
<br />
Try this [[Script:Random_Sounds|random sounds script]].<br />
<br />
=== Day/Night ===<br />
<br />
Some sounds are best played during certain times of day. Consider birdsong, or bats and owls. If your build is taking advantage of a region's natural day/night cycle, you can alter your ambient sound selection by the time of day your region shows.<br />
<br />
<lsl><br />
integer IsSunUp()<br />
{<br />
vector sunPosition = llGetSunDirection();<br />
return ( sunPosition.z > 0 );<br />
}<br />
<br />
integer IsTwilight()<br />
{<br />
vector sunPosition = llGetSunDirection();<br />
if ( sunPosition.z > 0.0 && sunPosition.z < 0.15 )<br />
return TRUE;<br />
return FALSE;<br />
}<br />
</lsl><br />
<br />
Try this [[Script:Day_Random_Sounds|daytime random sounds script]].<br />
<br />
=== Wind activated ===<br />
<br />
Do your bushes rustle more or louder when the wind blows? What about wind chimes?<br />
<br />
<lsl><br />
float GetWindStrength()<br />
{<br />
return llVecMag(llWind(ZERO_VECTOR));<br />
}<br />
</lsl><br />
<br />
Try this [[Script:Wind_Powered_Random_Sounds|wind powered sounds script]].<br />
<br />
=== Loud ===<br />
<br />
Using llTriggerSound multiple times in a row can make a sound seem much louder than calling it once. This can be useful for tower bells and explosions. Be careful using this; too many times can cause an unpleasant echo-like effect.<br />
<br />
<lsl><br />
integer n;<br />
for (n = 0; n < 5; ++n)<br />
{<br />
llTriggerSound(soundname, 1.0);<br />
}<br />
</lsl></div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Environment_Sounds&diff=1170539Environment Sounds2012-07-12T18:05:58Z<p>Silent Mole: </p>
<hr />
<div>==Environmental Sounds==<br />
<br />
There's a handful of ways to generate sound without an avatar in Second Life.<br />
* [[Sound_Clips|Sound clips]]<br />
* a parcel's music stream<br />
* a web page displayed on a prim<br />
<br />
You can change all of them using scripting. The latter two depend on the viewer being set properly to allow them to play.<br />
<br />
=== Soundtrack ===<br />
<br />
If your build has a soundtrack or theme music that you want heard clearly across the parcel, consider using [[Streaming_Music|streaming music]]. <br />
<br />
You can play a series of sound clips in order, but there's no guarantee that the "song" will be heard as seamless.<br />
<br />
=== Looping ===<br />
<br />
Looping a sound clip can add ambiance. Consider it for nighttime bugs by a lake, a crowd murmuring, or the hum of electric signs.<br />
<br />
<lsl><br />
default<br />
{<br />
state_entry()<br />
{<br />
llLoopSound( llGetInventoryName( INVENTORY_SOUND, 0 ), 0.5 );<br />
}<br />
}<br />
</lsl><br />
<br />
=== Synchronized ===<br />
<br />
Do you want your ocean wave sounds to all synch up? Does your surreal build have a slow steady heartbeat?<br />
<br />
Try this [[Script:Synch_Sound|synchronized sound script]].<br />
<br />
=== Random ===<br />
<br />
Short ambient sounds played randomly can make a space feel more alive. <br />
<br />
Some good choices for this would be frogs, underbrush rustles and snaps, a distant car horn or squealing brakes.<br />
<br />
Try this [[Script:Random_Sounds|random sounds script]].<br />
<br />
=== Day/Night ===<br />
<br />
Some sounds are best played during certain times of day. Consider birdsong, or bats and owls. If your build is taking advantage of a region's natural day/night cycle, you can alter your ambient sound selection by the time of day your region shows.<br />
<br />
<lsl><br />
integer IsSunUp()<br />
{<br />
vector sunPosition = llGetSunDirection();<br />
return ( sunPosition.z > 0 );<br />
}<br />
<br />
integer IsTwilight()<br />
{<br />
vector sunPosition = llGetSunDirection();<br />
if ( sunPosition.z > 0.0 && sunPosition.z < 0.15 )<br />
return TRUE;<br />
return FALSE;<br />
}<br />
</lsl><br />
<br />
Try this [[Script:Day_Random_Sounds|daytime random sounds script]].<br />
<br />
=== Wind activated ===<br />
<br />
Do your bushes rustle more or louder when the wind blows? What about wind chimes?<br />
<br />
<lsl><br />
float GetWindStrength()<br />
{<br />
return llVecMag(llWind(ZERO_VECTOR));<br />
}<br />
</lsl><br />
<br />
Try this [[Script:Wind_Powered_Random_Sounds|wind powered sounds script]].<br />
<br />
=== Loud ===<br />
<br />
Using llTriggerSound multiple times in a row can make a sound seem much louder than calling it once. This can be useful for tower bells and explosions. Be careful using this; too many times can cause an unpleasant echo-like effect.<br />
<br />
<lsl><br />
integer n;<br />
for (n = 0; n < 5; ++n)<br />
{<br />
llTriggerSound(soundname, 1.0);<br />
}<br />
</lsl></div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Environment_Sounds&diff=1170538Environment Sounds2012-07-12T17:43:51Z<p>Silent Mole: </p>
<hr />
<div>==Environmental Sounds==<br />
<br />
There's a handful of ways to generate sound without an avatar in Second Life.<br />
* [[Sound_Clips|Sound clips]]<br />
* a parcel's music stream<br />
* a web page displayed on a prim<br />
<br />
You can change all of them using scripting. The latter two depend on the viewer being set properly to allow them to play.<br />
<br />
=== Soundtrack ===<br />
<br />
If your build has a soundtrack or theme music that you want heard clearly across the parcel, consider using [[Streaming_Music|streaming music]]. <br />
<br />
You can play a series of sound clips in order, but there's no guarantee that the "song" will be heard as seamless.<br />
<br />
=== Looping sounds ===<br />
<br />
Looping a sound clip can add ambience. Consider it for nighttime bugs by a lake, a crowd murmuring, or the hum of electric signs.<br />
<br />
<lsl><br />
default<br />
{<br />
state_entry()<br />
{<br />
llLoopSound( llGetInventoryName( INVENTORY_SOUND, 0 ), 0.5 );<br />
}<br />
}<br />
</lsl><br />
<br />
=== Synchronized sounds ===<br />
<br />
Do you want your ocean wave sounds to all synch up? Does your surreal build have a slow steady heartbeat?<br />
<br />
Try this [[Script:Synch_Sound|synchronized sound script]].<br />
<br />
=== Random sounds ===<br />
<br />
Short ambient sounds played randomly can make a space feel more alive. <br />
<br />
Some good choices for this would be frogs, underbrush rustles and snaps, a distant car horn or squealing brakes.<br />
<br />
Try this [[Script:Random_Sounds|random sounds script]].<br />
<br />
=== Day/Night detection ===<br />
<br />
Some sounds are best played during certain times of day. Consider birdsong, or bats and owls. If your build is taking advantage of a region's natural day/night cycle, you can alter your ambient sound selection by the time of day your region shows.<br />
<br />
<lsl><br />
integer IsSunUp()<br />
{<br />
vector sunPosition = llGetSunDirection();<br />
return ( sunPosition.z > 0 );<br />
}<br />
<br />
integer IsTwilight()<br />
{<br />
vector sunPosition = llGetSunDirection();<br />
if ( sunPosition.z > 0.0 && sunPosition.z < 0.15 )<br />
return TRUE;<br />
return FALSE;<br />
}<br />
</lsl><br />
<br />
Try this [[Script:Day_Random_Sounds|daytime random sounds script]].<br />
<br />
=== Wind activated sounds ===<br />
<br />
Do your bushes rustle more or louder when the wind blows? What about wind chimes?<br />
<br />
<lsl><br />
float GetWindStrength()<br />
{<br />
return llVecMag(llWind(ZERO_VECTOR));<br />
}<br />
</lsl><br />
<br />
Try this [[Script:Wind_Powered_Random_Sounds|wind powered sounds script]].<br />
<br />
=== Extremely loud sounds ===<br />
<br />
Using llTriggerSound multiple times in a row can make a sound seem much louder than calling it once. This can be useful for tower bells and explosions. Be careful using this; too many times can cause an unpleasant echo-like effect.<br />
<br />
<lsl><br />
integer n;<br />
for (n = 0; n < 5; ++n)<br />
{<br />
llTriggerSound(soundname, 1.0);<br />
}<br />
</lsl></div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Script:Synch_Sound&diff=1170537Script:Synch Sound2012-07-12T17:39:51Z<p>Silent Mole: Created page with "<lsl> /* Every PULSE seconds, ACCORDING TO THE CLOCK, this script plays the first sound in the object. So if you have a dozen things out with the same PULSE valu…"</p>
<hr />
<div><lsl><br />
/*<br />
Every PULSE seconds, ACCORDING TO THE CLOCK,<br />
this script plays the first sound in the object.<br />
<br />
So if you have a dozen things out with the same PULSE value<br />
they will all play at approximately the same time.<br />
*/<br />
<br />
integer PULSE = 60000; // 60 seconds;<br />
<br />
integer time() <br />
{ // count milliseconds since the day began<br />
string stamp = llGetTimestamp(); // "YYYY-MM-DDThh:mm:ss.ff..fZ"<br />
return (integer) llGetSubString(stamp, 11, 12) * 3600000 + // hh<br />
(integer) llGetSubString(stamp, 14, 15) * 60000 + // mm<br />
llRound((float)llGetSubString(stamp, 17, -2) * 1000000.0)/1000; // ss.ff..f<br />
}<br />
<br />
integer howclose;<br />
string mySound;<br />
<br />
default<br />
{<br />
state_entry()<br />
{<br />
howclose = -1;<br />
llSetTimerEvent( 0.1 );<br />
mySound = llGetInventoryName( INVENTORY_SOUND, 0 );<br />
}<br />
<br />
timer()<br />
{<br />
integer current = time() % PULSE;<br />
if ( howclose < 0 ) howclose = current;<br />
<br />
if ( current < howclose ) // bing!<br />
{<br />
llTriggerSound( mySound, 1.0 );<br />
llSetTimerEvent( 10.0 );<br />
}<br />
else if ( current > PULSE - 1000 ) // within a second<br />
{<br />
llSetTimerEvent( 0.05 ); // 0.05 is the min delay possible.<br />
}<br />
else if ( current > PULSE - 10000 ) // within 10 seconds<br />
{<br />
llSetTimerEvent( 1.0 );<br />
}<br />
else // far away<br />
{<br />
llSetTimerEvent( 10.0 );<br />
}<br />
<br />
howclose = current;<br />
}<br />
<br />
on_rez( integer p )<br />
{<br />
llResetScript();<br />
}<br />
}<br />
</lsl></div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Environment_Sounds&diff=1170534Environment Sounds2012-07-12T16:18:04Z<p>Silent Mole: </p>
<hr />
<div>==Environmental Sounds==<br />
<br />
There's a handful of ways to generate sound without an avatar in Second Life.<br />
* [[Sound_Clips|Sound clips]]<br />
* a parcel's music stream<br />
* a web page displayed on a prim<br />
<br />
You can change all of them using scripting. The latter two depend on the viewer being set properly to allow them to play.<br />
<br />
=== Soundtrack ===<br />
<br />
If your build has a soundtrack or theme music that you want heard clearly across the parcel, consider using [[Streaming_Music|streaming music]]. <br />
<br />
You can play a series of sound clips in order, but there's no guarantee that the "song" will be heard as seamless.<br />
<br />
=== Looping sounds ===<br />
<br />
Looping a sound clip can add ambience. Consider it for nighttime bugs by a lake, a crowd murmuring, or the hum of electric signs.<br />
<br />
<lsl><br />
default<br />
{<br />
state_entry()<br />
{<br />
llLoopSound( llGetInventoryName( INVENTORY_SOUND, 0 ), 0.5 );<br />
}<br />
}<br />
</lsl><br />
<br />
=== Rhythmic sounds ===<br />
<br />
Ocean surf<br />
<br />
=== Random sounds ===<br />
<br />
Short ambient sounds played randomly can make a space feel more alive. <br />
<br />
Some good choices for this would be frogs, underbrush rustles and snaps, a distant car horn or squealing brakes.<br />
<br />
Try this [[Script:Random_Sounds|random sounds script]].<br />
<br />
=== Day/Night detection ===<br />
<br />
Some sounds are best played during certain times of day. Consider birdsong, or bats and owls. If your build is taking advantage of a region's natural day/night cycle, you can alter your ambient sound selection by the time of day your region shows.<br />
<br />
<lsl><br />
integer IsSunUp()<br />
{<br />
vector sunPosition = llGetSunDirection();<br />
return ( sunPosition.z > 0 );<br />
}<br />
<br />
integer IsTwilight()<br />
{<br />
vector sunPosition = llGetSunDirection();<br />
if ( sunPosition.z > 0.0 && sunPosition.z < 0.15 )<br />
return TRUE;<br />
return FALSE;<br />
}<br />
</lsl><br />
<br />
Try this [[Script:Day_Random_Sounds|daytime random sounds script]].<br />
<br />
=== Wind activated sounds ===<br />
<br />
Do your bushes rustle more or louder when the wind blows? What about wind chimes?<br />
<br />
<lsl><br />
float GetWindStrength()<br />
{<br />
return llVecMag(llWind(ZERO_VECTOR));<br />
}<br />
</lsl><br />
<br />
Try this [[Script:Wind_Powered_Random_Sounds|wind powered sounds script]].<br />
<br />
=== Extremely loud sounds ===<br />
<br />
Using llTriggerSound multiple times in a row can make a sound seem much louder than calling it once. This can be useful for tower bells and explosions. Be careful using this; too many times can cause an unpleasant echo-like effect.<br />
<br />
<lsl><br />
integer n;<br />
for (n = 0; n < 5; ++n)<br />
{<br />
llTriggerSound(soundname, 1.0);<br />
}<br />
</lsl></div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Script:Day_Random_Sounds&diff=1170533Script:Day Random Sounds2012-07-12T16:17:18Z<p>Silent Mole: Created page with "<lsl> /* This script will play the sounds in the object's inventory randomly during the region's day. */ float MinimumSeconds = 10.0; float MaximumSeconds = 30.0; float volum…"</p>
<hr />
<div><lsl><br />
/*<br />
This script will play the sounds in the object's inventory randomly during the region's day.<br />
*/<br />
<br />
float MinimumSeconds = 10.0;<br />
float MaximumSeconds = 30.0;<br />
float volume = 0.5; // How loud? Between 0 and 1.<br />
float DaylightCheckSeconds = 60.0;<br />
<br />
///////////////////////////////////////////////////////////////////////<br />
integer sounds = 0; // # sounds in inventory<br />
list soundnames; // names of sounds in inventory<br />
///////////////////////////////////////////////////////////////////////<br />
LoadSounds()<br />
{<br />
soundnames = [];<br />
sounds = llGetInventoryNumber( INVENTORY_SOUND );<br />
integer n;<br />
for ( n=0; n < sounds; ++n )<br />
{<br />
soundnames += llGetInventoryName( INVENTORY_SOUND, n );<br />
}<br />
}<br />
///////////////////////////////////////////////////////////////////////<br />
integer IsSunUp()<br />
{<br />
vector sunPosition = llGetSunDirection();<br />
return ( sunPosition.z > 0 );<br />
}<br />
///////////////////////////////////////////////////////////////////////<br />
default<br />
{<br />
<br />
state_entry()<br />
{<br />
LoadSounds();<br />
<br />
if ( sounds > 0 )<br />
llSetTimerEvent( 0.1 );<br />
else<br />
llOwnerSay("No sounds.");<br />
}<br />
<br />
timer()<br />
{<br />
if ( IsSunUp() == TRUE )<br />
{<br />
integer random = (integer) llFrand ( sounds );<br />
string sound = llList2String( soundnames, random );<br />
llTriggerSound( sound, volume );<br />
llSetTimerEvent( MinimumSeconds + (llFrand( MaximumSeconds - MinimumSeconds)) );<br />
}<br />
else<br />
llSetTimerEvent( DaylightCheckSeconds );<br />
}<br />
<br />
changed (integer change)<br />
{ <br />
if (change & CHANGED_INVENTORY)<br />
{<br />
llResetScript();<br />
}<br />
}<br />
}<br />
</lsl></div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Environment_Sounds&diff=1170532Environment Sounds2012-07-12T16:14:17Z<p>Silent Mole: /* Day/Night detection */</p>
<hr />
<div>==Environmental Sounds==<br />
<br />
There's a handful of ways to generate sound without an avatar in Second Life.<br />
* [[Sound_Clips|Sound clips]]<br />
* a parcel's music stream<br />
* a web page displayed on a prim<br />
<br />
You can change all of them using scripting. The latter two depend on the viewer being set properly to allow them to play.<br />
<br />
=== Soundtrack ===<br />
<br />
If your build has a soundtrack or theme music that you want heard clearly across the parcel, consider using [[Streaming_Music|streaming music]]. <br />
<br />
You can play a series of sound clips in order, but there's no guarantee that the "song" will be heard as seamless.<br />
<br />
=== Looping sounds ===<br />
<br />
Looping a sound clip can add ambience. Consider it for nighttime bugs by a lake, a crowd murmuring, or the hum of electric signs.<br />
<br />
<lsl><br />
default<br />
{<br />
state_entry()<br />
{<br />
llLoopSound( llGetInventoryName( INVENTORY_SOUND, 0 ), 0.5 );<br />
}<br />
}<br />
</lsl><br />
<br />
=== Rhythmic sounds ===<br />
<br />
Ocean surf<br />
<br />
=== Random sounds ===<br />
<br />
Short ambient sounds played randomly can make a space feel more alive. <br />
<br />
Some good choices for this would be frogs, underbrush rustles and snaps, a distant car horn or squealing brakes.<br />
<br />
Try this [[Script:Random_Sounds|random sounds script]].<br />
<br />
=== Day/Night detection ===<br />
<br />
Some sounds are best played during certain times of day. Consider birdsong, or bats and owls. If your build is taking advantage of a region's natural day/night cycle, you can alter your ambient sound selection by the time of day your region shows.<br />
<br />
<lsl><br />
integer IsSunUp()<br />
{<br />
vector sunPosition = llGetSunDirection();<br />
return ( sunPosition.z > 0 );<br />
}<br />
<br />
integer IsTwilight()<br />
{<br />
vector sunPosition = llGetSunDirection();<br />
if ( sunPosition.z > 0.0 && sunPosition.z < 0.15 )<br />
return TRUE;<br />
return FALSE;<br />
}<br />
</lsl><br />
<br />
=== Wind activated sounds ===<br />
<br />
Do your bushes rustle more or louder when the wind blows? What about wind chimes?<br />
<br />
<lsl><br />
float GetWindStrength()<br />
{<br />
return llVecMag(llWind(ZERO_VECTOR));<br />
}<br />
</lsl><br />
<br />
Try this [[Script:Wind_Powered_Random_Sounds|wind powered sounds script]].<br />
<br />
=== Extremely loud sounds ===<br />
<br />
Using llTriggerSound multiple times in a row can make a sound seem much louder than calling it once. This can be useful for tower bells and explosions. Be careful using this; too many times can cause an unpleasant echo-like effect.<br />
<br />
<lsl><br />
integer n;<br />
for (n = 0; n < 5; ++n)<br />
{<br />
llTriggerSound(soundname, 1.0);<br />
}<br />
</lsl></div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Environment_Sounds&diff=1170531Environment Sounds2012-07-12T16:09:04Z<p>Silent Mole: /* Extremely loud sounds */</p>
<hr />
<div>==Environmental Sounds==<br />
<br />
There's a handful of ways to generate sound without an avatar in Second Life.<br />
* [[Sound_Clips|Sound clips]]<br />
* a parcel's music stream<br />
* a web page displayed on a prim<br />
<br />
You can change all of them using scripting. The latter two depend on the viewer being set properly to allow them to play.<br />
<br />
=== Soundtrack ===<br />
<br />
If your build has a soundtrack or theme music that you want heard clearly across the parcel, consider using [[Streaming_Music|streaming music]]. <br />
<br />
You can play a series of sound clips in order, but there's no guarantee that the "song" will be heard as seamless.<br />
<br />
=== Looping sounds ===<br />
<br />
Looping a sound clip can add ambience. Consider it for nighttime bugs by a lake, a crowd murmuring, or the hum of electric signs.<br />
<br />
<lsl><br />
default<br />
{<br />
state_entry()<br />
{<br />
llLoopSound( llGetInventoryName( INVENTORY_SOUND, 0 ), 0.5 );<br />
}<br />
}<br />
</lsl><br />
<br />
=== Rhythmic sounds ===<br />
<br />
Ocean surf<br />
<br />
=== Random sounds ===<br />
<br />
Short ambient sounds played randomly can make a space feel more alive. <br />
<br />
Some good choices for this would be frogs, underbrush rustles and snaps, a distant car horn or squealing brakes.<br />
<br />
Try this [[Script:Random_Sounds|random sounds script]].<br />
<br />
=== Day/Night detection ===<br />
<br />
Some sounds are best played during certain times of day. Consider birdsong, or bats and owls. If your build is taking advantage of a region's natural day/night cycle, you can alter your ambient sound selection by the time of day your region shows.<br />
<br />
<lsl><br />
integer IsSunUp()<br />
{<br />
sunPosition = llGetSunDirection();<br />
return ( sunPosition.z > 0 );<br />
}<br />
<br />
integer IsTwilight()<br />
{<br />
sunPosition = llGetSunDirection();<br />
if ( sunPosition.z > 0.0 && sunPosition.z < 0.15 )<br />
return TRUE;<br />
return FALSE;<br />
}<br />
</lsl><br />
<br />
=== Wind activated sounds ===<br />
<br />
Do your bushes rustle more or louder when the wind blows? What about wind chimes?<br />
<br />
<lsl><br />
float GetWindStrength()<br />
{<br />
return llVecMag(llWind(ZERO_VECTOR));<br />
}<br />
</lsl><br />
<br />
Try this [[Script:Wind_Powered_Random_Sounds|wind powered sounds script]].<br />
<br />
=== Extremely loud sounds ===<br />
<br />
Using llTriggerSound multiple times in a row can make a sound seem much louder than calling it once. This can be useful for tower bells and explosions. Be careful using this; too many times can cause an unpleasant echo-like effect.<br />
<br />
<lsl><br />
integer n;<br />
for (n = 0; n < 5; ++n)<br />
{<br />
llTriggerSound(soundname, 1.0);<br />
}<br />
</lsl></div>Silent Molehttps://wiki.secondlife.com/w/index.php?title=Environment_Sounds&diff=1170530Environment Sounds2012-07-12T16:05:45Z<p>Silent Mole: </p>
<hr />
<div>==Environmental Sounds==<br />
<br />
There's a handful of ways to generate sound without an avatar in Second Life.<br />
* [[Sound_Clips|Sound clips]]<br />
* a parcel's music stream<br />
* a web page displayed on a prim<br />
<br />
You can change all of them using scripting. The latter two depend on the viewer being set properly to allow them to play.<br />
<br />
=== Soundtrack ===<br />
<br />
If your build has a soundtrack or theme music that you want heard clearly across the parcel, consider using [[Streaming_Music|streaming music]]. <br />
<br />
You can play a series of sound clips in order, but there's no guarantee that the "song" will be heard as seamless.<br />
<br />
=== Looping sounds ===<br />
<br />
Looping a sound clip can add ambience. Consider it for nighttime bugs by a lake, a crowd murmuring, or the hum of electric signs.<br />
<br />
<lsl><br />
default<br />
{<br />
state_entry()<br />
{<br />
llLoopSound( llGetInventoryName( INVENTORY_SOUND, 0 ), 0.5 );<br />
}<br />
}<br />
</lsl><br />
<br />
=== Rhythmic sounds ===<br />
<br />
Ocean surf<br />
<br />
=== Random sounds ===<br />
<br />
Short ambient sounds played randomly can make a space feel more alive. <br />
<br />
Some good choices for this would be frogs, underbrush rustles and snaps, a distant car horn or squealing brakes.<br />
<br />
Try this [[Script:Random_Sounds|random sounds script]].<br />
<br />
=== Day/Night detection ===<br />
<br />
Some sounds are best played during certain times of day. Consider birdsong, or bats and owls. If your build is taking advantage of a region's natural day/night cycle, you can alter your ambient sound selection by the time of day your region shows.<br />
<br />
<lsl><br />
integer IsSunUp()<br />
{<br />
sunPosition = llGetSunDirection();<br />
return ( sunPosition.z > 0 );<br />
}<br />
<br />
integer IsTwilight()<br />
{<br />
sunPosition = llGetSunDirection();<br />
if ( sunPosition.z > 0.0 && sunPosition.z < 0.15 )<br />
return TRUE;<br />
return FALSE;<br />
}<br />
</lsl><br />
<br />
=== Wind activated sounds ===<br />
<br />
Do your bushes rustle more or louder when the wind blows? What about wind chimes?<br />
<br />
<lsl><br />
float GetWindStrength()<br />
{<br />
return llVecMag(llWind(ZERO_VECTOR));<br />
}<br />
</lsl><br />
<br />
Try this [[Script:Wind_Powered_Random_Sounds|wind powered sounds script]].<br />
<br />
=== Extremely loud sounds ===<br />
<br />
Using llTriggerSound multiple times in a row can make a sound seem much louder than calling it once. This can be useful for tower bells and explosions.<br />
<br />
<lsl><br />
integer n;<br />
for (n = 0; n < 5; ++n)<br />
{<br />
llTriggerSound(soundname, 1.0);<br />
}<br />
</lsl></div>Silent Mole