<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://opensimulator.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://opensimulator.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Georgeg</id>
		<title>OpenSimulator - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://opensimulator.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Georgeg"/>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Special:Contributions/Georgeg"/>
		<updated>2026-04-20T21:19:01Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.19.9</generator>

	<entry>
		<id>http://opensimulator.org/wiki/OSSLNPC</id>
		<title>OSSLNPC</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/OSSLNPC"/>
				<updated>2016-07-21T12:34:35Z</updated>
		
		<summary type="html">&lt;p&gt;Georgeg: /* Wandering and Puppeteer */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quicklinks}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
Since OpenSimulator 0.7.2, a number of functions are provided for for creating and manipulating server-side NPCs (Non Player Characters). These replace the previous functions, that had stopped working by OpenSimulator 0.7.1.1 (possibly broken since OpenSimulator 0.6.9).&lt;br /&gt;
&lt;br /&gt;
The general philosophy in creating these new functions is to &lt;br /&gt;
&lt;br /&gt;
# Give script writers the simple tools needed to create more sophisticated behaviour.&lt;br /&gt;
# Avoid duplicating existing LSL and OSSL functions. For instance, finding out what state an agent is in can be done through llGetAgentInfo() rather than creating a special NPC function. &lt;br /&gt;
&lt;br /&gt;
NPCs are controlled via a script which must be in the same region as the NPC. This could be housed in an attachment that is attached to the avatar.&lt;br /&gt;
&lt;br /&gt;
Server-side NPCs cannot leave the region in which they were born. If you want region crossing behaviour, please look at the alternative NPC options on the [[NPC]] wiki page.&lt;br /&gt;
&lt;br /&gt;
Server-side NPC appearance is saved and loaded by serializing the appearance data structure to a notecard present in the same prim as the script. The required textures will be preserved when an OAR is saved and loaded.&lt;br /&gt;
&lt;br /&gt;
The current appearance data format (as seen in notecards created by appearing saving) is the same used for the OpenSimulator wire format and so is not designed to be edited directly.  With great care it is possible, see [[Appearance Formats]] for more details but it's not recommended unless you really, really need to do it.&lt;br /&gt;
&lt;br /&gt;
= Enabling =&lt;br /&gt;
&lt;br /&gt;
To use these functions, in the OpenSim.ini file you will need the following config&lt;br /&gt;
&lt;br /&gt;
# Enabled = true set in the [NPC] section.&lt;br /&gt;
# Enabled = true set in the [XEngine] section.&lt;br /&gt;
# AllowOSFunctions = true in the [XEngine] section.&lt;br /&gt;
# OSFunctionThreatLevel = VeryHigh in the [XEngine] section. The functions osAgentSaveAppearance(), osAvatarPlayAnimation() and osAvatarStopAnimation() need this level. If you don't need these functions, then a &amp;quot;High&amp;quot; level will suffice.&lt;br /&gt;
&lt;br /&gt;
See [[Configuring Simulator Parameters#Getting information about parameters]] if you need to double check that these parameters have been set correctly.&lt;br /&gt;
&lt;br /&gt;
= Notes =&lt;br /&gt;
&lt;br /&gt;
* When using your avatar to model appearance before saving, you will need to wait a few seconds before invoking any save appearance command. This is because appearance saving currently operates on a timer in order to manage multiple appearance updates from the viewer.&lt;br /&gt;
* When using your avatar to model appearance, if you want to reposition attachments on the NPC you will need to&lt;br /&gt;
# Reposition them on yourself&lt;br /&gt;
# Detach them to inventory&lt;br /&gt;
# Reattach them&lt;br /&gt;
# Save the appearance&lt;br /&gt;
This is because at the time of writing (OpenSimulator 0.7.5), saving appearance data does not trigger saving of current attachment positions though it probably should.&lt;br /&gt;
* OpenSimulator 0.7.3-rc1 introduces the concept of 'owned' and 'unowned' NPC. An 'owned' NPC is one where only the creating script and other scripts with the same owner can manipulate the NPC. An 'unowned' NPC is one where any script with the right permissions (as defined in the [XEngine] configuration section) can manipulate it. In OpenSimulator 0.7.3, all avatars are 'owned' by default unless otherwise specified in the osNpcCreate() call.&lt;br /&gt;
&lt;br /&gt;
= Sensing =&lt;br /&gt;
&lt;br /&gt;
llAgentSensor() can be used to set up a sensor that will detected NPCs instead/of as well as other region entities.&lt;br /&gt;
&lt;br /&gt;
In OpenSimulator 0.7.2, LSL sensors will detect NPCs as ordinary agents.&lt;br /&gt;
&lt;br /&gt;
In OpenSimulator 0.7.3-rc1 onwards, unless otherwise specified, NPCs will only be detected using the OpenSimulator-specific NPC flag, e.g.&lt;br /&gt;
&lt;br /&gt;
As of git master bcfc392 (Fri Jul 20 21:08:04 2012), the constant OS_NPC should now be used instead of NPC, in order to avoid future issues if LL decide to use NPC themselves for some other function.  The NPC constant will be deprecated in the forthcoming OpenSimulator 0.7.4 release but will remain useble.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;lsl&amp;quot;&amp;gt;&lt;br /&gt;
//Author: mewtwo0641&lt;br /&gt;
&lt;br /&gt;
list keys = []; &lt;br /&gt;
key npc;&lt;br /&gt;
string toucher;&lt;br /&gt;
key toucherkey;&lt;br /&gt;
vector toucherPos;&lt;br /&gt;
integer npc_on = FALSE;&lt;br /&gt;
&lt;br /&gt;
default&lt;br /&gt;
{ &lt;br /&gt;
    touch_start(integer x)&lt;br /&gt;
    {   &lt;br /&gt;
        toucherkey = llDetectedKey(0);&lt;br /&gt;
        toucherPos = llDetectedPos(0);&lt;br /&gt;
        vector npcPos = llGetPos() + &amp;lt;1,1,1&amp;gt;;&lt;br /&gt;
    &lt;br /&gt;
        if(npc_on == FALSE)&lt;br /&gt;
        {    &lt;br /&gt;
            npc = osNpcCreate(&amp;quot;Fred&amp;quot;, &amp;quot;Flintstone&amp;quot;, npcPos, toucherkey);&lt;br /&gt;
            npc_on = TRUE;&lt;br /&gt;
            llSensor(&amp;quot;&amp;quot;, &amp;quot;&amp;quot;, AGENT | NPC, 96.0, PI); //Will always return NPC key regardless of npc create option&lt;br /&gt;
            return;&lt;br /&gt;
        }   &lt;br /&gt;
    &lt;br /&gt;
        if(npc_on == TRUE)&lt;br /&gt;
        {   &lt;br /&gt;
            osNpcRemove(npc);&lt;br /&gt;
            llResetScript();&lt;br /&gt;
        }   &lt;br /&gt;
    }   &lt;br /&gt;
    &lt;br /&gt;
    sensor(integer num)&lt;br /&gt;
    {   &lt;br /&gt;
        keys = []; &lt;br /&gt;
        integer i = 0;&lt;br /&gt;
    &lt;br /&gt;
        for(i; i &amp;lt; num; i++)&lt;br /&gt;
        {   &lt;br /&gt;
            keys += llDetectedKey(i); &lt;br /&gt;
        }   &lt;br /&gt;
    &lt;br /&gt;
        llOwnerSay(llDumpList2String(keys, &amp;quot;\n&amp;quot;));&lt;br /&gt;
    }   &lt;br /&gt;
    &lt;br /&gt;
    no_sensor()&lt;br /&gt;
    {   &lt;br /&gt;
        keys = [];   &lt;br /&gt;
    }   &lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can get NPCs to be detected as AGENTs again using the OS_NPC_SENSE_AS_AGENT option below in osNpcCreate().&lt;br /&gt;
&lt;br /&gt;
The justification is that detecting NPCs as AGENTs by default may make some scripts unusable (e.g. radars that know nothing about NPCs). However, conversely other scripts may not behave as expected if NPCs aren't sensed as agents (e.g. doors that open automatically for avatars would not open for NPCs).&lt;br /&gt;
&lt;br /&gt;
From OpenSimulator git master commit ecf7bb26 (Fri Jul 20 21:36:33 2012), llGetDetectedType() will set the OS_NPC flag if an NPC was detected.  If the NPC was created with the OS_NPC_SENSE_AS_AGENT option then the AGENT flag will also be set.&lt;br /&gt;
&lt;br /&gt;
= Data Formats =&lt;br /&gt;
For more information about the format used to store appearance information in notecards, see [[Appearance Formats]].&lt;br /&gt;
&lt;br /&gt;
= Functions =&lt;br /&gt;
&lt;br /&gt;
== Create and Remove ==&lt;br /&gt;
=== [[osNpcCreate]] ===&lt;br /&gt;
&lt;br /&gt;
 osNpcCreate(string firstname, string lastname, vector position, string cloneFrom):key&lt;br /&gt;
&lt;br /&gt;
cloneFrom may be:&lt;br /&gt;
&lt;br /&gt;
* Name of the notecard containing a serialized avatar appearance, or&lt;br /&gt;
* Asset UUID of the Notecard, or&lt;br /&gt;
* UUID of an avatar logged into the same region. However, please note that this appearance will not be persisted unless osNpcSaveAppearance() is called.&lt;br /&gt;
&lt;br /&gt;
If the NPC is successfully created, then its UUID is returned, which is required for all subsequent functions. Example is available at [[osNpcCreate]]&lt;br /&gt;
&lt;br /&gt;
(OpenSimulator 0.7.3-rc1 onwards only). This creates an NPC that is 'owned' by the creating script and sensed using the OpenSimulator-only NPC flag for sensors.&lt;br /&gt;
&lt;br /&gt;
=== [[osNpcCreate]] ===&lt;br /&gt;
&lt;br /&gt;
OpenSimulator 0.7.3-rc1 onwards.&lt;br /&gt;
&lt;br /&gt;
 osNpcCreate(string firstname, string lastname, vector position, string cloneFrom, integer options):key&lt;br /&gt;
&lt;br /&gt;
cloneFrom may be:&lt;br /&gt;
&lt;br /&gt;
* Name of the notecard containing a serialized avatar appearance, or&lt;br /&gt;
* Asset UUID of the Notecard, or&lt;br /&gt;
* UUID of an avatar logged into the same region. However, please note that this appearance will not be persisted unless osNpcSaveAppearance() is called.&lt;br /&gt;
&lt;br /&gt;
integer is a set of flags that may be 0 or one or more of&lt;br /&gt;
&lt;br /&gt;
* OS_NPC_NOT_OWNED - create an unowned NPC.&lt;br /&gt;
* OS_NPC_SENSE_AS_AGENT - create an NPC that is sensed as an AGENT with LSL sensors &lt;br /&gt;
&lt;br /&gt;
If the NPC is successfully created, then its UUID is returned, which is required for all subsequent functions. Example is available at [[osNpcCreate]]&lt;br /&gt;
&lt;br /&gt;
=== [[osNpcRemove]] ===&lt;br /&gt;
&lt;br /&gt;
 osNpcRemove(key npc):void&lt;br /&gt;
&lt;br /&gt;
Remove the given avatar from the region. Example at [[osNpcRemove]].&lt;br /&gt;
&lt;br /&gt;
== Get and Set ==&lt;br /&gt;
=== osIsNpc ===&lt;br /&gt;
&lt;br /&gt;
OpenSimulator 0.7.3-rc1 onwards.&lt;br /&gt;
&lt;br /&gt;
 osIsNpc(key npc):integer&lt;br /&gt;
&lt;br /&gt;
Returns TRUE if the given key is an NPC, false otherwise.&lt;br /&gt;
&lt;br /&gt;
=== [[osNpcGetRot]] ===&lt;br /&gt;
&lt;br /&gt;
Gets the rotation of the avatar. Only the rotation around the Z plane in Euler rotation (horizontal rotation) has any meaning.&lt;br /&gt;
&lt;br /&gt;
 osNpcGetRot(key npc):rotation&lt;br /&gt;
&lt;br /&gt;
=== [[osNpcSetRot]] ===&lt;br /&gt;
&lt;br /&gt;
 osNpcSetRot(key npc, rotation rot):void&lt;br /&gt;
&lt;br /&gt;
Set the rotation of the avatar. Only setting the rotation in the Z plane in Euler rotation will have any meaningful effect (turning the avatar to point in one direction or another). Setting X or Y Euler values will result in the avatar rotating in an undefined manner.&lt;br /&gt;
&lt;br /&gt;
=== [[osNpcGetPos]] ===&lt;br /&gt;
&lt;br /&gt;
 osNpcGetPos(key npc):vector&lt;br /&gt;
&lt;br /&gt;
Return the current position of the NPC.&lt;br /&gt;
&lt;br /&gt;
=== [[osNpcGetOwner]] ===&lt;br /&gt;
&lt;br /&gt;
OpenSimulator 0.7.3-rc1 onwards.&lt;br /&gt;
&lt;br /&gt;
 osNpcGetOwner(key npc):key&lt;br /&gt;
&lt;br /&gt;
Return the owner of the given NPC (i.e. the owner of the script that created it). If the NPC is unowned or the input key does not belong to an NPC then returns NULL_KEY.&lt;br /&gt;
&lt;br /&gt;
== Movement ==&lt;br /&gt;
&lt;br /&gt;
=== [[osNpcMoveTo]] ===&lt;br /&gt;
&lt;br /&gt;
 osNpcMoveTo(key npc, vector position):void&lt;br /&gt;
&lt;br /&gt;
An older function that performs an osNpcMoveToTarget() by flying and landing at the target.&lt;br /&gt;
&lt;br /&gt;
=== [[osNpcMoveToTarget]] ===&lt;br /&gt;
&lt;br /&gt;
 osNpcMoveToTarget(key npc, vector target, int options):void&lt;br /&gt;
&lt;br /&gt;
Move the avatar to a given target over time. How the avatar will get there depends on the following options.&lt;br /&gt;
&lt;br /&gt;
* OS_NPC_FLY - Fly the avatar to the given position. The avatar will not land unless the OS_NPC_LAND_AT_TARGET option is also given.&lt;br /&gt;
* OS_NPC_NO_FLY - Do not fly to the target. The NPC will attempt to walk to the location. If it's up in the air then the avatar will keep bouncing hopeless until another move target is given or the move is stopped&lt;br /&gt;
* OS_NPC_LAND_AT_TARGET - If given and the avatar is flying, then it will land when it reaches the target. If OS_NPC_NO_FLY is given then this option has no effect.&lt;br /&gt;
* OS_NPC_RUNNING - if given, NPC avatar moves at running/fast flying speed, otherwise moves at walking/slow flying speed.&lt;br /&gt;
&lt;br /&gt;
OS_NPC_FLY and OS_NPC_NO_FLY are options that cannot be combined - the avatar will end up doing one or the other. If you want the avatar to fly and land at the target, then OS_NPC_LAND_AT_TARGET must be combined with OS_NPC_FLY. For instance,&lt;br /&gt;
&lt;br /&gt;
 osNpcMoveToTarget(npc, llGetPos() + &amp;lt;9,9,5&amp;gt;, OS_NPC_FLY|OS_NPC_LAND_AT_TARGET);&lt;br /&gt;
&lt;br /&gt;
=== [[osNpcStopMoveToTarget]] ===&lt;br /&gt;
&lt;br /&gt;
 osNpcStopMoveToTarget(key npc):void&lt;br /&gt;
&lt;br /&gt;
Stop a current move to a target.&lt;br /&gt;
&lt;br /&gt;
== Sitting and standing ==&lt;br /&gt;
&lt;br /&gt;
=== [[osNpcSit]] ===&lt;br /&gt;
&lt;br /&gt;
OpenSimulator 0.7.3-rc1 onwards.&lt;br /&gt;
&lt;br /&gt;
 osNpcSit(key npc, key target, int options):void&lt;br /&gt;
&lt;br /&gt;
Sit an NPC on a prim target.&lt;br /&gt;
&lt;br /&gt;
=== [[osNpcStand]] ===&lt;br /&gt;
&lt;br /&gt;
OpenSimulator 0.7.3-rc1 onwards.&lt;br /&gt;
&lt;br /&gt;
 osNpcStand(key npc):void&lt;br /&gt;
&lt;br /&gt;
Make an npc stand up.&lt;br /&gt;
&lt;br /&gt;
== Communication ==&lt;br /&gt;
&lt;br /&gt;
=== [[osNpcSay]] ===&lt;br /&gt;
&lt;br /&gt;
 osNpcSay(key npc, string message):void &lt;br /&gt;
 osNpcSay(key npc, int channel, string message):void&lt;br /&gt;
&lt;br /&gt;
Get the NPC to say the given message. &lt;br /&gt;
&lt;br /&gt;
If channel is specified then the chat is said on the given channel.  The channel parameter is only available in OpenSimulator 0.7.4 development code at this time.&lt;br /&gt;
&lt;br /&gt;
=== [[osNpcShout]] ===&lt;br /&gt;
&lt;br /&gt;
Only in OpenSimulator 0.7.4 development code at this time.&lt;br /&gt;
&lt;br /&gt;
 osNpcShout(key npc, int channel, string message):void&lt;br /&gt;
&lt;br /&gt;
Get the NPC to shout the given message on the given channel.&lt;br /&gt;
&lt;br /&gt;
=== [[osNpcWhisper]] ===&lt;br /&gt;
&lt;br /&gt;
Only in OpenSimulator 0.7.4 development code at this time.&lt;br /&gt;
&lt;br /&gt;
 osNpcWhisper(key npc, int channel, string message):void&lt;br /&gt;
&lt;br /&gt;
Get the NPC to whisper the given message on the given channel.&lt;br /&gt;
&lt;br /&gt;
== Animations ==&lt;br /&gt;
&lt;br /&gt;
=== osNpcPlayAnimation ===&lt;br /&gt;
&lt;br /&gt;
OpenSimulator 0.7.3-rc1 onwards.&lt;br /&gt;
&lt;br /&gt;
 osNpcPlayAnimation(key npc, string animation):void&lt;br /&gt;
&lt;br /&gt;
Get an NPC to play an animation. The animation can either be a key or the name of an animation in the same inventory as the script.&lt;br /&gt;
&lt;br /&gt;
=== osNpcStopAnimation ===&lt;br /&gt;
&lt;br /&gt;
In OpenSimulator 0.7.3-rc1 there is a bug which makes this play the animation instead. This will be corrected for the final release but in the mean time please use osAvatarStopAnimation() instead.&lt;br /&gt;
&lt;br /&gt;
 osNpcStopAnimation(key npc, string animation):void&lt;br /&gt;
&lt;br /&gt;
Get an NPC to stop playing an animation. The animation can either be a key or the name of an animation in the same inventory as the script.&lt;br /&gt;
&lt;br /&gt;
== Appearance ==&lt;br /&gt;
&lt;br /&gt;
NPC appearance is manipulated by saving and loading appearance data to notecards from the same inventory as the invoking script.&lt;br /&gt;
&lt;br /&gt;
=== [[osOwnerSaveAppearance]] ===&lt;br /&gt;
&lt;br /&gt;
 osOwnerSaveAppearance(string notecard):key&lt;br /&gt;
&lt;br /&gt;
Save the owner's current appearance to a notecard in the prim's inventory. This includes body part data, clothing items and attachments. If a notecard with the same name already exists then it is replaced. The owner must be present in the region when this function is invoked. The baked textures for the owner (necessary to recreate appearance on the NPC) are saved permanently.&lt;br /&gt;
&lt;br /&gt;
=== [[osAgentSaveAppearance]] ===&lt;br /&gt;
&lt;br /&gt;
 osAgentSaveAppearance(key agentId, string notecard):key&lt;br /&gt;
&lt;br /&gt;
Save an arbitrary avatar's appearance to a notecard in the prim's inventory. This includes body part data, clothing items and attachments. If a notecard with the same name already exists then it is replaced. The avatar must be present in the region when this function is invoked. The baked textures for the avatar (necessary to recreate appearance on the NPC) are saved permanently.&lt;br /&gt;
&lt;br /&gt;
=== [[osNpcSaveAppearance]] ===&lt;br /&gt;
&lt;br /&gt;
 osNpcSaveAppearance(key npc, string notecard):key&lt;br /&gt;
&lt;br /&gt;
Save the NPC's current appearance to a notecard in the prim's inventory. This includes body part data, clothing items and attachments. If a notecard with the same name already exists then it is replaced. The avatar must be present in the region when this function is invoked. The baked textures for the avatar (necessary to recreate appearance) are saved permanently.&lt;br /&gt;
&lt;br /&gt;
=== [[osNpcLoadAppearance]] ===&lt;br /&gt;
&lt;br /&gt;
 osNpcLoadAppearance(key npc, string notecard):void&lt;br /&gt;
&lt;br /&gt;
Load appearance from a notecard. This notecard must contain appearance data created with one of the save appearance functions.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Touch ==&lt;br /&gt;
=== [[osNpcTouch]] ===&lt;br /&gt;
&lt;br /&gt;
OpenSimulator 0.7.4 development code at this time.&lt;br /&gt;
&lt;br /&gt;
 osNpcTouch(key npc, key objectKey, integer linkNum)&lt;br /&gt;
&lt;br /&gt;
Allows the NPC to touch objects.&lt;br /&gt;
&lt;br /&gt;
= Examples =&lt;br /&gt;
&lt;br /&gt;
== NPC Automator ==&lt;br /&gt;
&lt;br /&gt;
*[[NPC Automator 2.0]]&lt;br /&gt;
&lt;br /&gt;
This is a rough example script for most of the current NPC functionality.  One of its major current deficiencies is that it doesn't track more than one created avatar at a time.  Please feel free to improve it.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang = &amp;quot;lsl&amp;quot;&amp;gt;&lt;br /&gt;
key npc;&lt;br /&gt;
integer listenChannel = 10;&lt;br /&gt;
&lt;br /&gt;
default&lt;br /&gt;
{&lt;br /&gt;
    // NPC manipulator adapted by justincc 0.0.3 released 20121025&lt;br /&gt;
    state_entry()&lt;br /&gt;
    {&lt;br /&gt;
        llListen(listenChannel,&amp;quot;&amp;quot;,NULL_KEY,&amp;quot;&amp;quot;);&lt;br /&gt;
        llSetText(&amp;quot;Listening on &amp;quot; + listenChannel, &amp;lt;0, 255, 0&amp;gt;, 1);&lt;br /&gt;
        llOwnerSay(&amp;quot;Say /&amp;quot; + (string)listenChannel + &amp;quot; help for commands&amp;quot;);&lt;br /&gt;
    }  &lt;br /&gt;
     &lt;br /&gt;
    listen(integer channel, string name, key id, string msg)&lt;br /&gt;
    {&lt;br /&gt;
        if (msg != &amp;quot;&amp;quot;)&lt;br /&gt;
        {&lt;br /&gt;
            list commands = llParseString2List(msg, [ &amp;quot; &amp;quot; ], []);&lt;br /&gt;
            string msg0 = llList2String(commands, 0);&lt;br /&gt;
            string msg1 = llList2String(commands, 1);            &lt;br /&gt;
            string msg2 = llList2String(commands, 2);&lt;br /&gt;
            string msg3 = llList2String(commands, 3);&lt;br /&gt;
         &lt;br /&gt;
            if (msg0 == &amp;quot;create&amp;quot;)&lt;br /&gt;
            {&lt;br /&gt;
                if (msg1 != &amp;quot;&amp;quot;)&lt;br /&gt;
                {&lt;br /&gt;
                    string notecardName = msg1;&lt;br /&gt;
                &lt;br /&gt;
                    npc = osNpcCreate(&amp;quot;Jane&amp;quot;, &amp;quot;Doe&amp;quot;, llGetPos() + &amp;lt;5, 5, 0&amp;gt;, notecardName);&lt;br /&gt;
                &lt;br /&gt;
                    llOwnerSay(&amp;quot;Created npc from notecard &amp;quot; + notecardName);&lt;br /&gt;
                }&lt;br /&gt;
                else&lt;br /&gt;
                {&lt;br /&gt;
                    llOwnerSay(&amp;quot;Usage: create &amp;lt;notecard-name&amp;gt;&amp;quot;);&lt;br /&gt;
                }&lt;br /&gt;
            }  &lt;br /&gt;
            else if (msg0 ==&amp;quot;createm&amp;quot; &amp;amp;&amp;amp; msg1 != &amp;quot;&amp;quot;)&lt;br /&gt;
            {&lt;br /&gt;
                osOwnerSaveAppearance(&amp;quot;appearance&amp;quot;);&lt;br /&gt;
                vector pos = llGetPos();&lt;br /&gt;
                integer i;&lt;br /&gt;
                for (i = 0; i &amp;lt; (integer)msg1; i++)&lt;br /&gt;
                {&lt;br /&gt;
                    osNpcCreate(&amp;quot;John&amp;quot;, &amp;quot;Doe&amp;quot;, pos + &amp;lt;8, 0, 0&amp;gt;, &amp;quot;appearance&amp;quot;);&lt;br /&gt;
                    llSleep(1);&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            else if (msg0 == &amp;quot;remove&amp;quot; &amp;amp;&amp;amp; npc != NULL_KEY)&lt;br /&gt;
            {&lt;br /&gt;
                osNpcSay(npc, &amp;quot;You will pay for this with your liiiiiivvveeessss!!!.....&amp;quot;);&lt;br /&gt;
                osNpcRemove(npc);&lt;br /&gt;
            }   &lt;br /&gt;
            else if (msg0 == &amp;quot;say&amp;quot; &amp;amp;&amp;amp; npc != NULL_KEY)&lt;br /&gt;
            {&lt;br /&gt;
                osNpcSay(npc, &amp;quot;I am your worst Nightmare!!!!&amp;quot;);&lt;br /&gt;
            }   &lt;br /&gt;
            else if (msg0 == &amp;quot;move&amp;quot;)&lt;br /&gt;
            {&lt;br /&gt;
                if (msg1 != &amp;quot;&amp;quot; &amp;amp;&amp;amp; msg2 != &amp;quot;&amp;quot; &amp;amp;&amp;amp; npc != NULL_KEY)&lt;br /&gt;
                {                &lt;br /&gt;
                    vector delta = &amp;lt;(integer)msg1, (integer)msg2, 0&amp;gt;;&lt;br /&gt;
                    &lt;br /&gt;
                    if (msg3 != &amp;quot;&amp;quot;)&lt;br /&gt;
                    {&lt;br /&gt;
                        delta.z = (integer)msg3;&lt;br /&gt;
                    }&lt;br /&gt;
                    &lt;br /&gt;
                    osNpcMoveTo(npc, osNpcGetPos(npc) + delta);                    &lt;br /&gt;
                }                            &lt;br /&gt;
                else&lt;br /&gt;
                {&lt;br /&gt;
                    llOwnerSay(&amp;quot;Usage: move &amp;lt;x&amp;gt; &amp;lt;y&amp;gt; [&amp;lt;z&amp;gt;]&amp;quot;);&lt;br /&gt;
                }&lt;br /&gt;
            }   &lt;br /&gt;
            else if (msg0 == &amp;quot;moveto&amp;quot;)&lt;br /&gt;
            {&lt;br /&gt;
                if (msg1 != &amp;quot;&amp;quot; &amp;amp;&amp;amp; msg2 != &amp;quot;&amp;quot; &amp;amp;&amp;amp; npc != NULL_KEY)&lt;br /&gt;
                {                &lt;br /&gt;
                    vector pos = &amp;lt;(integer)msg1, (integer)msg2, 0&amp;gt;;&lt;br /&gt;
                    &lt;br /&gt;
                    if (msg3 != &amp;quot;&amp;quot;)&lt;br /&gt;
                    {&lt;br /&gt;
                        pos.z = (integer)msg3;&lt;br /&gt;
                    }&lt;br /&gt;
                    &lt;br /&gt;
                    osNpcMoveTo(npc, pos);                    &lt;br /&gt;
                }                            &lt;br /&gt;
                else&lt;br /&gt;
                {&lt;br /&gt;
                    llOwnerSay(&amp;quot;Usage: move &amp;lt;x&amp;gt; &amp;lt;y&amp;gt; [&amp;lt;z&amp;gt;]&amp;quot;);&lt;br /&gt;
                }&lt;br /&gt;
            }            &lt;br /&gt;
            else if (msg0 == &amp;quot;movetarget&amp;quot; &amp;amp;&amp;amp; npc != NULL_KEY)&lt;br /&gt;
            {&lt;br /&gt;
                osNpcMoveToTarget(npc, llGetPos() + &amp;lt;9,9,5&amp;gt;, OS_NPC_FLY|OS_NPC_LAND_AT_TARGET);&lt;br /&gt;
            }&lt;br /&gt;
            else if (msg0 == &amp;quot;movetargetnoland&amp;quot; &amp;amp;&amp;amp; npc != NULL_KEY)&lt;br /&gt;
            {&lt;br /&gt;
                osNpcMoveToTarget(npc, llGetPos() + &amp;lt;9,9,5&amp;gt;, OS_NPC_FLY);&lt;br /&gt;
            }            &lt;br /&gt;
            else if (msg0 == &amp;quot;movetargetwalk&amp;quot; &amp;amp;&amp;amp; npc != NULL_KEY)&lt;br /&gt;
            {&lt;br /&gt;
                osNpcMoveToTarget(npc, llGetPos() + &amp;lt;9,9,0&amp;gt;, OS_NPC_NO_FLY);                &lt;br /&gt;
            }&lt;br /&gt;
            else if (msg0 == &amp;quot;rot&amp;quot; &amp;amp;&amp;amp; npc != NULL_KEY)&lt;br /&gt;
            {&lt;br /&gt;
                vector xyz_angles = &amp;lt;0,0,90&amp;gt;; // This is to define a 1 degree change&lt;br /&gt;
                vector angles_in_radians = xyz_angles * DEG_TO_RAD; // Change to Radians&lt;br /&gt;
                rotation rot_xyzq = llEuler2Rot(angles_in_radians); // Change to a Rotation                &lt;br /&gt;
                rotation rot = osNpcGetRot(npc);&lt;br /&gt;
                osNpcSetRot(npc, rot * rot_xyzq);&lt;br /&gt;
            }&lt;br /&gt;
            else if (msg0 == &amp;quot;rotabs&amp;quot; &amp;amp;&amp;amp; msg1 != &amp;quot;&amp;quot;)&lt;br /&gt;
            {&lt;br /&gt;
                vector xyz_angles = &amp;lt;0, 0, (integer)msg1&amp;gt;;&lt;br /&gt;
                vector angles_in_radians = xyz_angles * DEG_TO_RAD; // Change to Radians&lt;br /&gt;
                rotation rot_xyzq = llEuler2Rot(angles_in_radians); // Change to a Rotation                &lt;br /&gt;
                osNpcSetRot(npc, rot_xyzq);                &lt;br /&gt;
            }&lt;br /&gt;
            else if (msg0 == &amp;quot;animate&amp;quot; &amp;amp;&amp;amp; npc != NULL_KEY)&lt;br /&gt;
            {&lt;br /&gt;
                osAvatarPlayAnimation(npc, &amp;quot;stabbed+die_2&amp;quot;);&lt;br /&gt;
                llSleep(3);&lt;br /&gt;
                osAvatarStopAnimation(npc, &amp;quot;stabbed+die_2&amp;quot;);&lt;br /&gt;
            }   &lt;br /&gt;
            else if (msg0 == &amp;quot;save&amp;quot; &amp;amp;&amp;amp; msg1 != &amp;quot;&amp;quot; &amp;amp;&amp;amp; npc != NULL_KEY)&lt;br /&gt;
            {&lt;br /&gt;
                osNpcSaveAppearance(npc, msg1);&lt;br /&gt;
                llOwnerSay(&amp;quot;Saved appearance &amp;quot; + msg1 + &amp;quot; to &amp;quot; + npc);                &lt;br /&gt;
            }&lt;br /&gt;
            else if (msg0 == &amp;quot;load&amp;quot; &amp;amp;&amp;amp; msg1 != &amp;quot;&amp;quot; &amp;amp;&amp;amp; npc != NULL_KEY)&lt;br /&gt;
            {&lt;br /&gt;
                osNpcLoadAppearance(npc, msg1);&lt;br /&gt;
                llOwnerSay(&amp;quot;Loaded appearance &amp;quot; + msg1 + &amp;quot; to &amp;quot; + npc);&lt;br /&gt;
            }&lt;br /&gt;
            else if (msg0 == &amp;quot;clone&amp;quot;)&lt;br /&gt;
            {&lt;br /&gt;
                if (msg1 != &amp;quot;&amp;quot;)&lt;br /&gt;
                {&lt;br /&gt;
                    osOwnerSaveAppearance(msg1);&lt;br /&gt;
                    llOwnerSay(&amp;quot;Cloned your appearance to &amp;quot; + msg1);&lt;br /&gt;
                }&lt;br /&gt;
                else&lt;br /&gt;
                {&lt;br /&gt;
                    llOwnerSay(&amp;quot;Usage: clone &amp;lt;notecard-name-to-save&amp;gt;&amp;quot;);&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            else if (msg0 == &amp;quot;stop&amp;quot; &amp;amp;&amp;amp; npc != NULL_KEY)&lt;br /&gt;
            {&lt;br /&gt;
                osNpcStopMoveToTarget(npc);&lt;br /&gt;
            }&lt;br /&gt;
            else if (msg0 == &amp;quot;sit&amp;quot; &amp;amp;&amp;amp; msg1 != &amp;quot;&amp;quot; &amp;amp;&amp;amp; npc != NULL_KEY)&lt;br /&gt;
            {&lt;br /&gt;
                osNpcSit(npc, msg1, OS_NPC_SIT_NOW);&lt;br /&gt;
            }&lt;br /&gt;
            else if (msg0 == &amp;quot;stand&amp;quot; &amp;amp;&amp;amp; npc != NULL_KEY)&lt;br /&gt;
            {&lt;br /&gt;
                osNpcStand(npc);&lt;br /&gt;
            }&lt;br /&gt;
            else if (msg0 == &amp;quot;help&amp;quot;)&lt;br /&gt;
            {&lt;br /&gt;
                llOwnerSay(&amp;quot;Commands are:&amp;quot;);&lt;br /&gt;
                llOwnerSay(&amp;quot;create &amp;lt;notecard-name&amp;gt; - Create NPC from a stored notecard&amp;quot;);&lt;br /&gt;
                llOwnerSay(&amp;quot;createm&amp;quot;);       &lt;br /&gt;
                llOwnerSay(&amp;quot;remove - Remove current NPC&amp;quot;);     &lt;br /&gt;
                llOwnerSay(&amp;quot;clone &amp;lt;notecard-name&amp;gt; - Clone own appearance to a notecard&amp;quot;);&lt;br /&gt;
                llOwnerSay(&amp;quot;load &amp;lt;notecard-name&amp;gt;  - Load appearance on notecard to current npc&amp;quot;);&lt;br /&gt;
                llOwnerSay(&amp;quot;save &amp;lt;notecard-name&amp;gt;  - Save appearance of current NPC to notecard&amp;quot;);&lt;br /&gt;
                llOwnerSay(&amp;quot;animate&amp;quot;);&lt;br /&gt;
                llOwnerSay(&amp;quot;move&amp;quot;);&lt;br /&gt;
                llOwnerSay(&amp;quot;moveto &amp;lt;x&amp;gt; &amp;lt;y&amp;gt; &amp;lt;z&amp;gt; - move to absolute position&amp;quot;);&lt;br /&gt;
                llOwnerSay(&amp;quot;movetarget&amp;quot;);&lt;br /&gt;
                llOwnerSay(&amp;quot;movetargetnoland&amp;quot;);&lt;br /&gt;
                llOwnerSay(&amp;quot;movetargetwalk&amp;quot;);&lt;br /&gt;
                llOwnerSay(&amp;quot;rot&amp;quot;);&lt;br /&gt;
                llOwnerSay(&amp;quot;say&amp;quot;);&lt;br /&gt;
                llOwnerSay(&amp;quot;sit &amp;lt;target-uuid&amp;gt;&amp;quot;);&lt;br /&gt;
                llOwnerSay(&amp;quot;stop&amp;quot;);&lt;br /&gt;
                llOwnerSay(&amp;quot;stand&amp;quot;);&lt;br /&gt;
            }&lt;br /&gt;
            else&lt;br /&gt;
            {&lt;br /&gt;
                llOwnerSay(&amp;quot;I don't understand [&amp;quot; + msg + &amp;quot;]&amp;quot;);&lt;br /&gt;
            }&lt;br /&gt;
        }   &lt;br /&gt;
    }   &lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Wandering and Puppeteer ==&lt;br /&gt;
&lt;br /&gt;
[http://was.fm Wizardry and Steamworks] provides free-to-use NPC extendable set of scripts, published under the GPLv3 license, that implements most of the NPC functions and allows you to conveniently create NPCs. There are several several scripts available at the time of writing:&lt;br /&gt;
&lt;br /&gt;
* [http://was.fm/opensim:npc:wandering Wandering NPCs] is a script that just makes a non-interative NPC wander around in a given area.&lt;br /&gt;
* [http://was.fm/opensim:npc:puppeteer NPC Puppeteer] is a system that will allow you to playwright NPCs without too much knowledge of either LSL or OSSL.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== OSW NPCs Controller==&lt;br /&gt;
&lt;br /&gt;
OpenSimWorld provides an NPC controller that supports interactive NPCs. The system allows you to give commands to &lt;br /&gt;
NPCs through the local chat and to build complex behaviors through easy-to-write notecards. It also allows you to specify a &amp;quot;map&amp;quot;&lt;br /&gt;
of your region so that the NPCs can walk through it. &lt;br /&gt;
&lt;br /&gt;
[https://github.com/opensimworld/active-npcs More information]&lt;br /&gt;
&lt;br /&gt;
= Questions/Comments =&lt;br /&gt;
&lt;br /&gt;
Please leave your questions and comments on [[Talk:OSSLNPC|this article's talk page]].&lt;br /&gt;
&lt;br /&gt;
[[Category:OSSL Functions]]&lt;br /&gt;
[[Category:Scripting]]&lt;/div&gt;</summary>
		<author><name>Georgeg</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Public_Hypergrid_Nodes</id>
		<title>Public Hypergrid Nodes</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Public_Hypergrid_Nodes"/>
				<updated>2015-03-30T14:08:25Z</updated>
		
		<summary type="html">&lt;p&gt;Georgeg: /* External directories of Hypergrid-enabled sims */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quicklinks}} &amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
__TOC__ &lt;br /&gt;
&lt;br /&gt;
== Hypergrid-enabled sims ==&lt;br /&gt;
&lt;br /&gt;
The following is a list of hypergrid-ready nodes that you can use for testing your installation and for linking your world. Please add your public node at the bottom of the list if you wish to help build a web of opensims! Anyone found inserting a grid higher in the list may have their entry removed. &lt;br /&gt;
&lt;br /&gt;
For the time being, and until the security concerns are addressed, we advise you to be careful about who you link to.&lt;br /&gt;
&lt;br /&gt;
== Hypergrid 1.5 - General Grids/Sims ==&lt;br /&gt;
&lt;br /&gt;
The following is a list of hypergrid 1.5-ready nodes that you can use for testing your installation and for linking your world. '''Please add your public node at the bottom of the list if you wish to help build a web of opensims! Anyone found inserting a grid higher in the list may have their entry removed.''' &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; style=&amp;quot;&amp;quot;-&lt;br /&gt;
! [[Hypergrid|link-region server and port]] &lt;br /&gt;
! Organization &lt;br /&gt;
! Description &lt;br /&gt;
! Grid Location&lt;br /&gt;
|-&lt;br /&gt;
| ucigrid00.nacs.uci.edu:8002 &lt;br /&gt;
| UCI Grid &lt;br /&gt;
| [http://ucigrid00.nacs.uci.edu:8002 UCIGrid] V 0.7.1 (post-fixes) &lt;br /&gt;
| Centered at 5000,5000&lt;br /&gt;
|-&lt;br /&gt;
| login.germangrid.de:8002 &lt;br /&gt;
| GermanGrid &lt;br /&gt;
| [http://www.germangrid.de GermanGrid] V 0.71(dev) &lt;br /&gt;
| Centered at 8000,8000&lt;br /&gt;
|-&lt;br /&gt;
| marlokir.selfip.net:9000 &lt;br /&gt;
| Marlokir &lt;br /&gt;
| Just a small standalone for testing running on version 0.7.1 (dev). &lt;br /&gt;
It will probably be online only temporarily. &lt;br /&gt;
&lt;br /&gt;
| Centered at 4500,4500&lt;br /&gt;
|-&lt;br /&gt;
| gridnirvana.net:8002:Rhiga &lt;br /&gt;
| Jez's World &lt;br /&gt;
| A small private Estate, previously stand alone - but for now part of GridNirvana. &lt;br /&gt;
Please feel free to pop over and visit. &lt;br /&gt;
&lt;br /&gt;
| Centered at 6500,6500&lt;br /&gt;
|-&lt;br /&gt;
| virtual.aiai.ed.ac.uk:8002:Openvue &lt;br /&gt;
| Openvue &lt;br /&gt;
| Openvue grid at Virtual University of Edinburgh &lt;br /&gt;
| Centered at 6400,6400&lt;br /&gt;
|-&lt;br /&gt;
| 145.99.250.20:8002 &lt;br /&gt;
| DWGrid &lt;br /&gt;
| DWGrid &lt;br /&gt;
| Centered at 7000,7000&lt;br /&gt;
|-&lt;br /&gt;
| metaversesims.net:9000 &lt;br /&gt;
| Metaverse Sims &lt;br /&gt;
| 6-region standalone hypergrid on V 0.8.0 Dev (HG 2.0 enabled as of 02 Nov 12) &lt;br /&gt;
| Centred at 9000,9000&lt;br /&gt;
|-&lt;br /&gt;
| opensim.betatechnologies.info:8002 &lt;br /&gt;
| Beta Technologies OpenSimulator Grid (btgrid) &lt;br /&gt;
| Grid for internal development, mostly for academic research and backups from old sims. V. 0.7.6 Dev (also HyperGate-enabled). Currently on a low-bandwidth server so HG access might not be very good. &lt;br /&gt;
| Centered at 3650,3650&lt;br /&gt;
|-&lt;br /&gt;
| hippo.is-a-geek.com:8002 &lt;br /&gt;
| The Bloomfield Grid &lt;br /&gt;
| This is a personal grid for my friends and familly, However we welcome others with a smile. V. 0.7.0.1 (We are also Hyper Gate enabled) &lt;br /&gt;
| Centered at 5000,5000&lt;br /&gt;
|-&lt;br /&gt;
| tritongrid.com:8002 &lt;br /&gt;
| Triton Grid &lt;br /&gt;
| This is a 100+ region Public grid. All are welcome (We are also Hyper Gate enabled in several regions throughout the grid) (HG 1.5X Interface 7 Runing the latest .71Dev revs. maintains creator data) &lt;br /&gt;
| Centered at 9000,9000&lt;br /&gt;
|-&lt;br /&gt;
| condensationland.com:9000 &lt;br /&gt;
| Condensation Land &lt;br /&gt;
| 10 regions &lt;br /&gt;
| Centered at 7789, 7789&lt;br /&gt;
|-&lt;br /&gt;
| chazzmac.webhop.org:9000 &lt;br /&gt;
| eden 16 regions &lt;br /&gt;
| full 3 story hidden freebie mall, HyperGate, WiFi at http://chazzmac.webhop.org:9000/wifi/ &lt;br /&gt;
| Centered at 3917, 4144&lt;br /&gt;
|-&lt;br /&gt;
| metaversesailing.com:9000 &lt;br /&gt;
| Sailing Grid &lt;br /&gt;
| A D2 grid on V 0.7.2(release)a .Net hosted 16 region mega with support regions &lt;br /&gt;
| Centered at 7000,7000&lt;br /&gt;
|-&lt;br /&gt;
| ogzoco.no-ip.org:8002 &lt;br /&gt;
| Ogzoco Grid &amp;amp;amp; RaionFort &lt;br /&gt;
| Mentolyptus Destiny testing &amp;amp;amp; work grid. Hypergrid 1.5, OpenSimulator 0.7.1 (Currently OsGrid Revision 0.7.1.dev.80f9022 - 10-22-2010). Gateway to multiple grids on map. Photos: http://www.flickr.com/photos/mentolyptus/ - Twitter: https://twitter.com/Ogzoco - EMail: ogzoco@gmail.com &lt;br /&gt;
| Centered at 7852, 7852&lt;br /&gt;
|-&lt;br /&gt;
| grid.ansky.ca:8002 &lt;br /&gt;
| AnSky Grid &lt;br /&gt;
| 10 regions &lt;br /&gt;
| Centered at 7100, 7100&lt;br /&gt;
|-&lt;br /&gt;
| sim-world.org:8003 &lt;br /&gt;
| Sim-World Welcome Center &lt;br /&gt;
| 41 regions &lt;br /&gt;
| Centered at 10000, 10000&lt;br /&gt;
|-&lt;br /&gt;
| unethika.kicks-ass.net:8002 &lt;br /&gt;
| unethika &lt;br /&gt;
| It works (most of the time) and it's fun! Come via hg hop or snag an avatar at [http://unethika.kicks-ass.net/ http://unethika.kicks-ass.net/]&amp;amp;nbsp;! We also run a working(ish) Freeswitch server. &amp;amp;lt;no guarantees, of course&amp;amp;nbsp;:P&amp;amp;gt; &lt;br /&gt;
| Centered at 7500, 7500&lt;br /&gt;
|-&lt;br /&gt;
| fleepgrid.com:8002 &lt;br /&gt;
| FleepGrid &lt;br /&gt;
| Personal research grid operated by Fleep Tuque, 8-12 sims at any given time. Grid hoppers and testers welcome. Running Opensim 0.7.2 RC2 Release HG 1.5 (i7). Gateway regions available at (1013,1013), (5013,5013), and (13013,13013). See [http://fleepgrid.com http://fleepgrid.com] for more information or follow Fleep at [http://twitter.com/fleep http://twitter.com/fleep]. &lt;br /&gt;
| Centered at 9013, 9013&lt;br /&gt;
|-&lt;br /&gt;
| viradu.com:9000 &lt;br /&gt;
| Viradu Science Fiction World &lt;br /&gt;
| [[Image:Vban.jpg|thumb|left|180px]]12 Science Fiction themed regions run by Michael Blade Sci-fi blogger dedicated to writers and those who love it. Hypergrid Teleporters, Builders welcome, free land grab, rules apply. Tell others about us...Join in the fun! =&amp;amp;gt; [http://viradu.com http://viradu.com]&amp;lt;br /&amp;gt;How to build your own virtual world here =&amp;amp;gt; [http://rocketvirtual.com RocketVirtual.com] &lt;br /&gt;
| Centered at 5001, 5001&lt;br /&gt;
|-&lt;br /&gt;
| 62.40.147.45:9090 &lt;br /&gt;
| Psychedelia Grid &lt;br /&gt;
| The home of psychedelic music. This Grid is for all fans of psychedelic music. Watch the bands playing at the festival and stay over night in your tent. &lt;br /&gt;
| centered at 6000, 5990&lt;br /&gt;
|-&lt;br /&gt;
| '''logicamp.org:8002:logicamp''' &lt;br /&gt;
| Logicamp &lt;br /&gt;
| [http://logicamp.org/ Logicamp] is a virtual world specialized in camp-site management and virtual tourism. You can visit it throughout our cable network. &lt;br /&gt;
| Centered at 8000, 8000&lt;br /&gt;
|-&lt;br /&gt;
| logicamp.org:8002:SPA1&amp;lt;br /&amp;gt; &lt;br /&gt;
| [http://logicamp.org logicamp]&amp;lt;br /&amp;gt; &lt;br /&gt;
| Megaregion Entrance (7997,7994)&amp;lt;br /&amp;gt;Spa-Francorchamp[[Image:Snapshot 037.png|thumb|none|128px]]60 plot Megaregion - [http://logicamp.org logicamp]&amp;lt;br /&amp;gt; &lt;br /&gt;
| Centered at 7900, 7900&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| map.terravirtuavw.com:8002:Nexus&amp;lt;br /&amp;gt; &lt;br /&gt;
| [http://www.terravirtuavw.com Terra Virtua]&amp;lt;br /&amp;gt; &lt;br /&gt;
| The Terra Virtua intergrid nexus.&amp;lt;br /&amp;gt; &lt;br /&gt;
| 6000,6000&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| hg.osgrid.org:80:WestHall &lt;br /&gt;
| Possible future home of Champlain College in Burlington, Vermont&amp;lt;br /&amp;gt; &lt;br /&gt;
| When there, check the map and TP to surrounding regions that are populated with &amp;quot;stuff&amp;quot;br&amp;amp;gt; &lt;br /&gt;
| Centered at 6100, 6107&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| www.pmgrid.org:8002 &lt;br /&gt;
| [http://www.pmgrid.org PMGrid] &lt;br /&gt;
| Nursery grid to enable people to try their builds at little or no cost. Land available to try your ideas without charge. &lt;br /&gt;
| Centered at 7000,7000&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 91.121.153.154:8002 &lt;br /&gt;
| [http://www.opensimserver.tk Sofitek] &lt;br /&gt;
| Sofitek grid, the virtual offices of Sofitek, a web development company. Includes a small selection of free avatars and a hypergate portal to other worlds. Check out the books in the office, and talk to chatbot Lady Sofitek. &lt;br /&gt;
| Centered at 10000,10000&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| [AstralGrid] &lt;br /&gt;
| [http://astral.dyndns-server.com Homepage] &lt;br /&gt;
| 4 Freebies and 1 sandbox Region &lt;br /&gt;
| Centered at 10000,10000&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| http://clonelife.eu:8002:Welcome&amp;lt;br /&amp;gt; &lt;br /&gt;
| Clonelife.eu &lt;br /&gt;
| Website at http://clonelife.eu/ &lt;br /&gt;
| Centered at 9000,9000&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| http://YourSimSpot.com:9000:YourSimSpot &lt;br /&gt;
| [http://YourSimSpot.Com YourSimSpot.Com] &lt;br /&gt;
| A hosting solution for 3D virtual worlds. &lt;br /&gt;
| Centered at 1000,1000&lt;br /&gt;
|-&lt;br /&gt;
| opensim.nl:58002 &lt;br /&gt;
| [http://bi.pndo.nl '''BUSINESS INSPIRE''']&lt;br /&gt;
| '''[opensim.nl:58002:OSNL-PLAZA]''' &lt;br /&gt;
'''Landingpoint coordinates: 127,127,27'''&amp;lt;br /&amp;gt;   &lt;br /&gt;
The central HYPERGRID service for all GRIDS in the Netherlands. Please feel welcome to visit our PLAZA and jump to other DUTCH GRID's like our RolePlay GRID. Send a mail to: mailto:silverj@xs4all.nl if you like to connect your grid in our MAP!&lt;br /&gt;
| Centered at 8000,8000&lt;br /&gt;
|-&lt;br /&gt;
| rp.opensim.nl:28002 &lt;br /&gt;
| [http://bi.pndo.nl '''BUSINESS INSPIRE''']&lt;br /&gt;
| '''[rp.opensim.nl:28002:RPHUB]''' &lt;br /&gt;
'''Landingpoint coordinates: 127,127,27'''&amp;lt;br /&amp;gt;   &lt;br /&gt;
The International RolePlay GRID located in the Netherlands. Please feel welcome to visit our RPHUB and jump into RolePlay on one of the islands. You can get a free account at http://rp.opensim.nl:28002/wifi/index.html. There are posibilities to have your own RolePlay SIM in our RPGRID. For more information send a mail to: mailto:silverj@xs4all.nl&lt;br /&gt;
| Centered at 9000,9000&lt;br /&gt;
|-&lt;br /&gt;
| '''62.40.147.45:9100''' &lt;br /&gt;
| Austria Grid &lt;br /&gt;
| A virtual copy of the country Austria. This Grid is for all those who want to find their hometown in the virtual landscape of a virtual Austria.This Grid is not only for creating a virtual Austria, it's a meeting point, a place for communication. For permanent link-exchange, write an email. &lt;br /&gt;
| centered at 7000, 6990&lt;br /&gt;
|-&lt;br /&gt;
| http://74.170.99.194:9000 (LEVIATHAN.gateway.2wire.net)&lt;br /&gt;
| m001&lt;br /&gt;
| Two 2048x2048 Varregion Estate, Hypergrid enabled with Primary Hypergate located on Lighthouse Point at coordinates 135,124,33. Server built and maintained by Dolph Gehlbard. Varregions built, owned &amp;amp; maintained by Drake Gostanche.&lt;br /&gt;
| Starting Region Centered at 8500,8500. Leviathan's Deep Centered at 8515, 8515. (Hypergate located at coordinates 503,457,126).&lt;br /&gt;
|-&lt;br /&gt;
| http://hg.osgrid.org:80:imagenhariaead2&lt;br /&gt;
| [http://hg.osgrid.org:80 imagenhariaead2]  &lt;br /&gt;
| The Internet as a tool of education. Learning is action. Otherwise it is just information. Moodel/Sloodle/Pivote - 24h Online – http://bitly.com/imagenharia - http://vendasmais.com/moodle&amp;lt;br /&amp;gt; &lt;br /&gt;
| Centered at 10009, 10005&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| hgplaza.no-ip.org:9000:Hg Plaza&lt;br /&gt;
| Hypergrid Plaza (24/24)&lt;br /&gt;
| General Meeting Point, trying to establish a unique database for freinship,groups, searches for Hypergids Standalones&lt;br /&gt;
To Direct Tel|eport Copy This to your map!!!&lt;br /&gt;
&lt;br /&gt;
hgplaza.no-ip.org:9000:Hg Plaza&lt;br /&gt;
| Centered at 9999,9999&lt;br /&gt;
 Hg PLaza 2k 1999.1999&lt;br /&gt;
 Hg Plaza 5k 5999,5999&lt;br /&gt;
|-&lt;br /&gt;
| iu1.typnetwork.com:8002:Pitic &lt;br /&gt;
| Zairus&lt;br /&gt;
| Island continent&lt;br /&gt;
| Centered at 10000,10000&lt;br /&gt;
|-&lt;br /&gt;
| hypergrid.org:8002 &lt;br /&gt;
| Metropolis Metaversum&lt;br /&gt;
| [http://hypergrid.org:8002 Metropolis Metaversum] V 0.7.4 (Dev) &lt;br /&gt;
| Centered at 7000,7000&lt;br /&gt;
|-&lt;br /&gt;
| vibe.bio-se.info:9000 &lt;br /&gt;
| VIBE / BIO-SE Grid &lt;br /&gt;
| A multi-University effort for Education in Virtual Worlds. Servers are located in the US. Newcommer friendly! For collaboration please e-mail [mailto:stephen.xootfly@gmail.com Stephen Xootfly].&amp;lt;br /&amp;gt;&lt;br /&gt;
Wiki: [http://wiki.bio-se.info Main Page] &amp;lt;br /&amp;gt;&lt;br /&gt;
Registration: [http://vibe.bio-se.info:9000/wifi Signup] &amp;lt;br /&amp;gt;&lt;br /&gt;
| Centered at 5000,5000&lt;br /&gt;
|-&lt;br /&gt;
| opensim.athabascau.ca:9000 &lt;br /&gt;
| Athabasca University&lt;br /&gt;
| V 0.7.6 Opensim 16 region development for the Athabasca University on Local standalone server. [http://opensim.athabascau.ca:9000/wifi/ Homepage] &lt;br /&gt;
| Centered at 8907,9442&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Hypergrid 1.5 - Education oriented grid/sims ==&lt;br /&gt;
&lt;br /&gt;
* https://sites.google.com/a/opensim-edu.org/educational-institutions-in-opensim/home - A list of OpenSimulator educational grids, some Hypergrid enabled. This list has an easy to use form to add new institutions!&lt;br /&gt;
&lt;br /&gt;
== External directories of Hypergrid-enabled sims ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.gridhop.net GridHop] &lt;br /&gt;
* [http://www.hyperica.com Hyperica]&lt;br /&gt;
* [http://thehypergates.com/ The HyperGates] -- The first dynamic, auto-updating HyperGrid directory for HyperGrid enabled standalones &amp;amp; grids. Download the HyperGate from our site now and Join the HyperGate Network. The most reliable HyperGrid directory.&lt;br /&gt;
* [http://www.hgurl.com hgurl]&lt;br /&gt;
* [http://opensimworld.com OpenSimWorld.com] Lists live regions by the number of avatars visiting them&lt;br /&gt;
&lt;br /&gt;
== Old List (HG 1.0) ==&lt;br /&gt;
&lt;br /&gt;
Keeping this here for historical reasons, but most of these don't work anymore.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! [[Hypergrid|link-region server and port]] &lt;br /&gt;
! Organization &lt;br /&gt;
! Description &lt;br /&gt;
! Grid Location&lt;br /&gt;
|-&lt;br /&gt;
| '''osl2.nac.uci.edu:9006''' &lt;br /&gt;
| University of California, Irvine &lt;br /&gt;
| The &amp;quot;UCI Welcome&amp;quot; region connected to OSGrid. It is run by Diva (Crista Lopes) on a machine owned by the University of California, Irvine. You can link to it as a way to link to OSGrid. &lt;br /&gt;
| OSGrid is centered at 10,000, 10,000&lt;br /&gt;
|-&lt;br /&gt;
| '''osl3.nac.uci.edu:9000''' &lt;br /&gt;
| University of California, Irvine &lt;br /&gt;
| The &amp;quot;UC Irvine&amp;quot; region connected to OSGrid, neighboring Wright Plaza. You can link to it as a way to link to OSGrid. &lt;br /&gt;
| OSGrid is centered at 10,000, 10,000&lt;br /&gt;
|-&lt;br /&gt;
| '''ucigrid02.nacs.uci.edu:9000''' &lt;br /&gt;
| University of California, Irvine &lt;br /&gt;
| The UCI Grid &lt;br /&gt;
| UCIGrid is centered at 8,888, 8,888&lt;br /&gt;
|-&lt;br /&gt;
| '''ucigrid04.nacs.uci.edu:9003''' &lt;br /&gt;
| University of California, Irvine &lt;br /&gt;
| The UCI Grid, region &amp;quot;Gateway 3000&amp;quot;. Link your lower-1,000's grid to this node in order to bridge to grids in the 10,000's. &lt;br /&gt;
| This node is positioned at 3,000, 3,000&lt;br /&gt;
|-&lt;br /&gt;
| '''ucigrid04.nacs.uci.edu:9007''' &lt;br /&gt;
| University of California, Irvine &lt;br /&gt;
| The UCI Grid, region &amp;quot;Gateway 7000&amp;quot;. Link your 10,000's grid to this node in order to bridge to grids in the lower-1,000's. &lt;br /&gt;
| This node is positioned at 7,000, 7,000.&lt;br /&gt;
|-&lt;br /&gt;
| '''www.meanduland.com:9124''' &lt;br /&gt;
| Grid Meanduland &lt;br /&gt;
| [http://www.menduland.com], Meanduland - by Ayana and Frank Northmead. Residential grid and playground for couples. Quite, peaceful and fun. Regular live music concerts and coming soon - rpg's, adventure simulations, private beaches, sail boat racing, dune buggy racing, and much much more. All welcome, no membership or landownership requirements, you just need desire to have fun and be a good neighbor. Regions available at cost during Alpha and Beta development of OpenSimulator. &lt;br /&gt;
| Centered at 8000, 8000&lt;br /&gt;
|-&lt;br /&gt;
| '''hypergrid.cyberlandia.net:9100''' &lt;br /&gt;
| Cyberlandia &lt;br /&gt;
| The &amp;quot;Cyberlandia Gw&amp;quot; region. http://www.cyberlandia.net Metaverso italiano 3D, more to 250 region and 1000 users. You can link to it as a way to link to Cyberlandia. &lt;br /&gt;
| Cyberlandia is centered at&amp;amp;nbsp;???&lt;br /&gt;
|-&lt;br /&gt;
| '''venezia.cyberlandia.net:9100''' &lt;br /&gt;
| Cyberlandia &lt;br /&gt;
| The &amp;quot;Osgrid Gw&amp;quot; region connected to Cyberlandia grid http://www.cyberlandia.net. Search on map &amp;quot;Cyberlandia grid&amp;quot; You can link to it as a way to link to OSGrid. &lt;br /&gt;
| OSGrid is centered at 10,000, 10,000&lt;br /&gt;
|-&lt;br /&gt;
| '''regions.ralf-haifisch.biz:9000:Sharkland Tropical 1''' &lt;br /&gt;
| Ralf Haifisch on osgrid &lt;br /&gt;
| The &amp;quot;Sharkland Tropical&amp;quot; region connected to OSGrid. German welcome aerea, Freebie aerea, region rental, pretty tropical regions &lt;br /&gt;
| Centered at 10000,10000 &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| '''joomla-italia.net:9000''' &lt;br /&gt;
| Social Network Italia &lt;br /&gt;
| The &amp;quot;SNI City&amp;quot; region connected to SNI (Social Network Italia) grid http://www.opensim-italia.net. This grid is connected with Osgrid,Collateral World,Francogrid and Darwin &lt;br /&gt;
| Centered at&amp;amp;nbsp;???&lt;br /&gt;
|-&lt;br /&gt;
| '''collateral.opensim-italia.net:9000''' &lt;br /&gt;
| Part of Social Network Italia &lt;br /&gt;
| Collateral World &lt;br /&gt;
| Centered at&amp;amp;nbsp;???&lt;br /&gt;
|-&lt;br /&gt;
| '''88.191.79.199:9050''' &lt;br /&gt;
| Francogrid &lt;br /&gt;
| Francogrid node, connected to &amp;quot;City&amp;quot;, behind the welcome land of Francogrid &amp;quot;Orion&amp;quot; &lt;br /&gt;
| Centered at 1000 1000&lt;br /&gt;
|-&lt;br /&gt;
| '''94.23.8.158:9300''' &lt;br /&gt;
| Le Monde de Darwin &lt;br /&gt;
| The Lost World of Darwin http://www.LeMondedeDarwin.com. [[Image:Hypergrid.jpg|200px]] &lt;br /&gt;
| Centered at 1000 1000&lt;br /&gt;
|-&lt;br /&gt;
| '''sg.k-grid.com:9000''' &lt;br /&gt;
| K-Grid &lt;br /&gt;
| The Kool grid for the Kool KidZ . Feel free to visit us. The main Gateway is located at 3700,3700 so take that in account before any HyperJump. Adress updated 02/07/09 &lt;br /&gt;
| This node is located at 3700,3700&lt;br /&gt;
|-&lt;br /&gt;
| '''hypergrid.org:8002''' &lt;br /&gt;
| METROPOLIS-Grid &lt;br /&gt;
| The Region &amp;quot;Center-World&amp;quot; connected to the METROPOLIS-Grid http://metropolis.hypergrid.org . German Grid with a lot of free Content and free SIM-hosting. Connected via HG to the most of the Grids listed here &lt;br /&gt;
| Centered at 7000,7000&lt;br /&gt;
|-&lt;br /&gt;
| '''ascent.bluewallgroup.com:9910''' &lt;br /&gt;
| BlueWall Information Technologies &lt;br /&gt;
| This region is in a good proximity @ (6000,6000) for intermediate jumps to OSGrid from grids in the (2000,2000) range, or any region within 4096 units. [[Image:Hypernaut 001.png|thumb|none|150px|Get your Hypernaut here :)]] &lt;br /&gt;
| Centered at 6000,6000&lt;br /&gt;
|-&lt;br /&gt;
| '''http://myopengrid.com:9005/''' &lt;br /&gt;
| '''MyOpenGrid''' &lt;br /&gt;
| Myopengrid is connected to osl2.nac.uci.edu &amp;quot;Osgrid Gateway&amp;quot; and 88.191.79.199 9050 &amp;quot;Franco Grid&amp;quot; &lt;br /&gt;
| Centered at 7000,7000&lt;br /&gt;
|-&lt;br /&gt;
| '''cuonsim1.de:9300''' &lt;br /&gt;
| Cuon-Grid &lt;br /&gt;
| Cuon-Grid is a little grid and has some Main Sims with linux themes, server are in Germany. To login in to the grid use this http://sim-linuxmain.org:8081/CuonGrid/index.html. There are free sims for testing. &lt;br /&gt;
| Centered at 10,000, 10,000&lt;br /&gt;
|-&lt;br /&gt;
| '''metaversesims.net:9000''' &lt;br /&gt;
| Metaverse Sims &lt;br /&gt;
| 6-region standalone hypergrid on V. 0.7.2 (Dev)&lt;br /&gt;
| Centered at 9000, 9000 &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| '''87.230.89.74:9000''' &lt;br /&gt;
| SCHWARZE WELT &lt;br /&gt;
| inworld location of www.schwarze-welle.de , the maybe biggest dark music streaming readio &lt;br /&gt;
| 100000 10000 &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| '''peak.sciencesim.com:9001''' &lt;br /&gt;
| ScienceSim &lt;br /&gt;
| [http://www.sciencesim.com/ ScienceSim] is a virtual world created for the high performance computing community for scientific visualizations, a number of interesting real world terrains (Mt St Helens and Yellowstone Park) and some astronomical simulations. And some useful, BSD-licensed content. &lt;br /&gt;
| Centered at 10000,10000&lt;br /&gt;
|-&lt;br /&gt;
| '''alpha.bubblecloud.org:9000''' &lt;br /&gt;
| Bubble Cloud &lt;br /&gt;
| The alpha 00 is the entrance area to bubble cloud grid. Bubble cloud is test grid where anyone can experiment. If you build something please do it in medieval fantasy setting for others to enjoy. &lt;br /&gt;
| Centered at 10,000, 10,000&lt;br /&gt;
|-&lt;br /&gt;
| '''opensim.m34.mx-host.de:9090''' &lt;br /&gt;
| OpenSIM.de Sim1 &lt;br /&gt;
| [http://www.opensim.de OpenSim.de], 4 Server (Linux/Windows), hypergrided standalones, 16 Regions, German Users (Deutsche Benutzer), Live-Support, IRC-Gateway, Wiki, FAQ, Howto´s, Downloads. Connected to most of the Grids and some hypergrided standalones. &lt;br /&gt;
| Centered at 4400,4400&lt;br /&gt;
|-&lt;br /&gt;
| '''64.150.180.188:9031''' &lt;br /&gt;
| Virtual World Trade Center &lt;br /&gt;
| [http://PleasurePlanet.net], The VWTC. A repository for freebie items to share with the OS community. Weekly oar files will be made freely available on 4shared.com. &lt;br /&gt;
| VWTC is at 3003, 3003&lt;br /&gt;
|-&lt;br /&gt;
| '''condensationland.com:9000''' &lt;br /&gt;
| Zonja Capalini &lt;br /&gt;
| Condensation Land, 10 regions &lt;br /&gt;
| Centered at 7789, 7789&lt;br /&gt;
|-&lt;br /&gt;
| '''66.240.232.94:9010''' &lt;br /&gt;
| Snoopy Pfeffer &lt;br /&gt;
| OSGrid, Samsara, freebie shopping region &lt;br /&gt;
| Centered at 10006, 9999&lt;br /&gt;
|-&lt;br /&gt;
| '''66.240.232.94:9011''' &lt;br /&gt;
| Snoopy Pfeffer &lt;br /&gt;
| OSGrid, Snoopies, dance club and event region &lt;br /&gt;
| Centered at 10005, 9999&lt;br /&gt;
|-&lt;br /&gt;
| '''twistedsky.net:9000''' &lt;br /&gt;
| Twisted Sky &lt;br /&gt;
| Welcome region on the Twisted Sky World Grid (at 998, 1000) - http://twistedsky.net &lt;br /&gt;
| Centered at 1000, 1000&lt;br /&gt;
|-&lt;br /&gt;
| '''www.xn--tln-tna.net:8002''' &lt;br /&gt;
| Tlön &lt;br /&gt;
| Tlön, Uqbar and Orbis Tertius - http://www.tlön.net (http://www.xn--tln-tna.net/) &lt;br /&gt;
| Centered at 7650, 7650&lt;br /&gt;
|-&lt;br /&gt;
| '''www.pmgrid.org:9020''' &lt;br /&gt;
| PMGrid &lt;br /&gt;
| PMGrid is a set of areas for grid development prior to implementation so there is no specific theme. Visit here and see a varied range of builds and perhaps get some ideas for yourself.[http://pmgrid.julpet.ath.cx http://www.pmgrid.org] &lt;br /&gt;
| centered at 7000, 7000&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| YourSimSpot.com:9000&amp;lt;br /&amp;gt;&lt;br /&gt;
| [http://YourSimSpot.com YourSimSpot]&amp;lt;br /&amp;gt;&lt;br /&gt;
| Main region at YourSimSpot (1000,1000) - [http://YourSimSpot.com YourSimSpot] &lt;br /&gt;
| Centered at 1000, 1000&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| my3dworld.org:9000&amp;lt;br /&amp;gt;&lt;br /&gt;
| My3dWorld&amp;lt;br /&amp;gt;&lt;br /&gt;
| Main region at My3dworld (7900,7900)&amp;lt;br /&amp;gt;Home of Johnny 5 bot[[Image:Johnny5.jpg|thumb|none|128px|Meet Johnny 5]]16 plot Megaregion has Hypergate, linked to several other grids on map - [http://my3dworld.org My3dWorld]&amp;lt;br /&amp;gt;&lt;br /&gt;
| Centered at 7900, 7900&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| sim-world.org:8003&amp;lt;br /&amp;gt;&lt;br /&gt;
| www.sim-world.org&amp;lt;br /&amp;gt;&lt;br /&gt;
| Main region at sim-world island (10000,10000)&amp;lt;br /&amp;gt;41 regions has teleport board linked to several other regions on map &amp;lt;br /&amp;gt;&lt;br /&gt;
| Centered at 10000, 10000&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| universi.servegame.org:9000&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &lt;br /&gt;
| Shatar Lorefield [Universi&amp;amp;nbsp;Legacy]&lt;br /&gt;
| &lt;br /&gt;
Main region at Oasis (5000, 5000)&lt;br /&gt;
&lt;br /&gt;
Hypergrid enabled&amp;amp;nbsp;Standalone sim. Need some people to populate this Desert World.&lt;br /&gt;
&lt;br /&gt;
| Centered at 5000, 5000&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
[[Category:Hypergrid]]&lt;/div&gt;</summary>
		<author><name>Georgeg</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/FAQ</id>
		<title>FAQ</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/FAQ"/>
				<updated>2015-03-12T15:36:38Z</updated>
		
		<summary type="html">&lt;p&gt;Georgeg: /* Are there test servers running OpenSimulator I can connect to? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quicklinks}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== About OpenSimulator ==&lt;br /&gt;
=== What is OpenSim? ===&lt;br /&gt;
OpenSimulator is a platform for operating a virtual world, and supports multiple independent regions connecting to a single centralized grid. This is somewhat similar to the web, where anyone can run their own web server, tied together through the internet. It can also be used to create a private grid, analogous to a private intranet.&lt;br /&gt;
&lt;br /&gt;
=== What is a region? ===&lt;br /&gt;
A region is what you see when you log into OpenSimulator. It is the physical place (well, virtual physical space) where avatars move and interact. It is a square patch of land which may contain an island, mountains, a plain, buildings, etc., or just an ocean.&lt;br /&gt;
&lt;br /&gt;
=== What is the grid? ===&lt;br /&gt;
The grid is the level that organizes the regions and their positions in the world, and handles things that need to exist across regions, such as a user's inventory. You can think of it as similar to the world map.&lt;br /&gt;
&lt;br /&gt;
=== What does ... mean? ===&lt;br /&gt;
See [[:Category:Tech Reference|OpenSim:Technical Reference]] for definitions of some terms commonly used in OpenSimulator.&lt;br /&gt;
&lt;br /&gt;
== Configuring OpenSimulator ==&lt;br /&gt;
First, read [[OpenSim Configuration]].&lt;br /&gt;
=== Where can I get a new UUID for my sim config? ===&lt;br /&gt;
* See [[OpenSim Configuration]]&lt;br /&gt;
&lt;br /&gt;
=== Can I run multiple regions with OpenSim? ===&lt;br /&gt;
* See [[OpenSim Configuration]]&lt;br /&gt;
&lt;br /&gt;
=== What databases can be used with OpenSim? ===&lt;br /&gt;
* See [[OpenSim Configuration]]&lt;br /&gt;
&lt;br /&gt;
=== What about PostgreSQL or NHibernate? ===&lt;br /&gt;
* NHibernate support, which enabled OpenSimulator to access PostgreSQL database, was removed on October 2009 ([http://opensimulator.org/viewgit/?a=commitdiff&amp;amp;p=opensim&amp;amp;h=fdce1be3db287bed901332b90ba57165e201d3fc r/11252]) due to lack of users and mainteners ([http://lists.berlios.de/pipermail/opensim-dev/2010-April/008537.html Opensim-dev: NHibernate status]).&lt;br /&gt;
&lt;br /&gt;
== Running OpenSimulator ==&lt;br /&gt;
&lt;br /&gt;
=== An error is thrown while trying to start up OpenSimulator ===&lt;br /&gt;
&lt;br /&gt;
See [[Troubleshooting]].&lt;br /&gt;
&lt;br /&gt;
== Connecting to OpenSimulator ==&lt;br /&gt;
=== I've set up my OpenSimulator server and it looks like the login works but the client hangs on 'connecting to region' ===&lt;br /&gt;
&lt;br /&gt;
There are 2 steps to login. &lt;br /&gt;
&lt;br /&gt;
1) When you start up the client and enter your name/password, it sends those details to the OpenSimulator login service. If your password is correct, it tells the region simulator that you're coming. It then sends back to you (the client) the ip address and port to use to enter that region (as gleaned from your Regions.ini file).&lt;br /&gt;
&lt;br /&gt;
2) Your client then connects to the region using those details.&lt;br /&gt;
&lt;br /&gt;
If the client hangs on 'connecting to region' then the details being sent to it in step 2) are not allowing it to connect. Check your Regions.ini carefully and try to telnet to the ip &amp;amp; port that should be available.&lt;br /&gt;
&lt;br /&gt;
If you're seeing this problem after you've made your sim available to the outside world (where people outside your network can connect to it but you cannot) then you probably don't have a router that supports NAT loopback. This allows you to connect to a local machine through your router via an external address. See [[NAT Loopback Routers]] for a list of routers that support this feature.&lt;br /&gt;
&lt;br /&gt;
== OpenSimulator in the Wild ==&lt;br /&gt;
=== Are there test servers running OpenSimulator I can connect to? ===&lt;br /&gt;
&lt;br /&gt;
Yes. Check out our [[Grid List]]! There are often many private servers up for testing. Hang out on the IRC channel (Freenode #opensim), and troll for URI's. &lt;br /&gt;
&lt;br /&gt;
There are also several private organizations offering directories and search engines. They include: &lt;br /&gt;
&lt;br /&gt;
* [http://www.hyperica.com Hyperica] -- a categorized directory of hypergrid-enabled OpenSimulator destinations, currently over 250 locations&amp;lt;br /&amp;gt; &lt;br /&gt;
* [http://www.metaverseink.com MetaverseInk] -- ha key-word-based search engine for OpenSimulator grids, mostly those running the Diva Distro &lt;br /&gt;
* [http://www.gridhop.net GridHop] -- a list covering the major OpenSimulator grids, currently over 150 destinations accessible over hypergrid teleport &lt;br /&gt;
* [http://www.hgurl.com HGURL] -- a key-word-search database for all grid, all accessible via hypergrid (in progress API for acces to search engine and info in world).&lt;br /&gt;
* [http://www.thehypergates.com/ The HyperGates] -- The first dynamic, auto-updating HyperGrid directory for both HyperGrid 1.5 ( OpenSimulator 0.7.x ) and HyperGrid 1.0 ( OpenSimulator 0.6.x ) standalones &amp;amp; grids. Download the HyperGate from the site now and Join the HyperGate Network. The most reliable HyperGrid directory.&lt;br /&gt;
* [http://www.opensimworld.com/ OpenSimWorld.com] -- A HyperGrid directory that monitors the number of visitors per region. Their teleporter allows you to access destinations from in-world.&lt;br /&gt;
&lt;br /&gt;
=== Are there any companies that will host my grid for me? ===&lt;br /&gt;
&lt;br /&gt;
Yes there are dozens of independent OpenSimulator hosting providers. The following are not affiliated with OpenSimulator.org. &lt;br /&gt;
&lt;br /&gt;
* [http://www.dreamlandmetaverse.com DreamLand Metaverse] &lt;br /&gt;
* [http://www.ReactionGrid.com/ ReactionGrid] &lt;br /&gt;
* [http://www.simhost.com SimHost]&lt;br /&gt;
* [http://www.yoursimspot.com YourSimSpot]&lt;br /&gt;
* [http://edocio.com Edocio (Educational Sims Only.]&lt;br /&gt;
* [http://astral.dyndns-server.com World Star living virtual world's (Sim Host, Support)]&lt;br /&gt;
More vendors listed here: [http://www.hypergridbusiness.com/opensim-hosting-providers/ Hypergrid Business Vendors Directory] -- a categorized directory of OpenSimulator vendors, currently listing about three dozen providers.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Can I teleport from the Linden Lab Second Life grid to my Sim? ===&lt;br /&gt;
No. In 2008 and 2009, there had been the connection to vaak grid, [http://blog.secondlife.com/2008/07/31/open-grid-public-beta-begins-today/ which enabled us to teleport from Second Life over to an OpenSimulator grid] before LindenLab closing it. As of 2010, &amp;quot;The vaak grid is currently unavailable as we transition from OGP based services to VWRAP based services.&amp;quot;([http://wiki.secondlife.com/wiki/Open_Grid_Public_Beta &amp;quot;Open Grid Public Beta&amp;quot; in Second Life Wiki])&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
Please see the [[Troubleshooting]] page.&lt;br /&gt;
&lt;br /&gt;
== MySQL ==&lt;br /&gt;
=== How do I isolate and delete a user's Trash items in a MySQL grid database? ===&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;NOTE:&amp;lt;/font&amp;gt; BACK UP YOUR DATABASE!&lt;br /&gt;
&lt;br /&gt;
CAUTION: The Linux default directory for the MySQL database is /var/lib/mysql Many backup tools (e.g. backupPC) do NOT back up /var/*! Make certain that the database and not just the MySQL code (/usr/bin/mysql) is included in your nightly backups! The actual paths will be different for different operating systems and databases, but the problem is the same.&lt;br /&gt;
&lt;br /&gt;
'''1.''' Locate the avatars UUID you wish to find the trash items of, in the '''users''' table&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;font size=&amp;quot;0.9em&amp;quot;&amp;gt;This query will locate a specified users UUID: (replace User/Test with username/lastname)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;SELECT `UUID` FROM `users` WHERE `username` LIKE 'User' AND `lastname` LIKE 'Test' LIMIT 0 , 30;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
'''2.''' Use the avatars UUID to search the field_name '''AgentID''' in the '''inventoryFolders''' table, using '''Trash''' as the '''folderName''' to isolate the users Trash '''folderID'''&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;font size=&amp;quot;0.9em&amp;quot;&amp;gt;This query will locate the users Trash folder entry: (replace 00000000-0000-0000-0000-000000000000 with UUID of user)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;SELECT `folderID` FROM `inventoryfolders` WHERE `agentID` LIKE '00000000-0000-0000-0000-000000000000' AND `folderName` LIKE 'Trash'&lt;br /&gt;
LIMIT 0 , 30;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
'''3.''' Use the '''folderID''' UUID obtained in the last query to find all of the trash items in the '''inventoryitems''' table, you can then delete them once you have isolated them.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;font size=&amp;quot;0.9em&amp;quot;&amp;gt;This query will locate the trash items of the avatar in question: (replace 00000000-0000-0000-0000-000000000000 with Trash folder UUID obtained in the last query)&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;nowiki&amp;gt;SELECT * FROM `inventoryitems` WHERE `parentFolderID` LIKE '00000000-0000-0000-0000-000000000000' LIMIT 0 , 9999;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
'''&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;NOTE:&amp;lt;/font&amp;gt;''' These steps will not remove the associated assets from the assets table, just the items in the inventory '''inventoryitems''' table.&lt;br /&gt;
&lt;br /&gt;
=== How do I isolate and resolve duplicate inventory folder entries in a MySQL grid database? ===&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;NOTE:&amp;lt;/font&amp;gt; BACK UP YOUR DATABASE!&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''1.''' It's first a good idea to search for the affected avatars UUID in the '''inventoryFolders''' table to see the duplicate entries. When you see this, you'll see the problem of duplicate entries. The key here will be to find out which is being used.&amp;lt;br /&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
'''2.''' Upload a file inworld and name it something unique. This will isolate the UUID of your root folder that is being used (even though there are dups only one is being used)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''3.''' Search the '''inventoryitems''' table for your uniquely named item and locate it's '''parentFolderID''' &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;font size=&amp;quot;0.9em&amp;quot;&amp;gt;This query will isolate the '''parentFolderID''' based on your search for the unique item (replace '''unique_name''' with your unique item name)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;SELECT `parentFolderID` FROM `inventoryitems` WHERE `inventoryName` LIKE 'unique_name' LIMIT 0 , 30;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''4.''' Check the '''inventoryfolders''' table against the '''parentFolderID''' UUID obtained in the last search. That is your root folder that is being used.. you can delete all duplicate entries that do not match that parentFolderID. In the end, you should only have one of each type (Trash, etc)&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;font size=&amp;quot;0.9em&amp;quot;&amp;gt;This query will return all values that are NOT the parentID obtained in the last search. (replace 00000000-0000-0000-0000-000000000000 with the parentID located in step 3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;SELECT * FROM `inventoryfolders` WHERE `folderID` NOT LIKE '00000000-0000-0000-0000-000000000000' LIMIT 0 , 30;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== In World Questions ==&lt;br /&gt;
=== Does in world scripting work yet? ===&lt;br /&gt;
Not fully implemented, but most of it works, and there is a lot of work going on here. Please see [[ScriptEngines]], [[LSL Status]] and [[OSSL Status]] for the latest info.&lt;br /&gt;
&lt;br /&gt;
=== Can I customize my avatar? ===&lt;br /&gt;
Yes. In order to do this:&lt;br /&gt;
* Click the Inventory Button&lt;br /&gt;
* Create -&amp;gt; New Clothes -&amp;gt; Shirt, Pants, etc&lt;br /&gt;
* Create -&amp;gt; New Body Parts -&amp;gt; Hair, Shape, etc&lt;br /&gt;
* Edit those from your inventory&lt;br /&gt;
* Wear them&lt;br /&gt;
&lt;br /&gt;
Your avatar doesn't always face a nice direction for doing this, so you'll need to use the camera operations to see your face for some of the modifications. This is a known issue, will be fixed in the future. Also, you'll need to rewear you parts once you first join the environment. Right now default appearance is always &amp;quot;Ruth&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Why do I look like I gas cloud right after I did the the previous steps? ===&lt;br /&gt;
Second Life eliminated Ruth from their client. The Ruth we see in OpenSimulator is our own attempt of a yoga teacher and not truly Second Life's Ruth. When you create a shirt, pants, skin and shape and wear them without changing any parameters, the Second Life Viewer understands you are not Ruth. Since Ruth is no more, you become a cloud of gas. To fix it, either change a parameter of one of them before wearing all 4, or, if you already are a gas cloud, right click one of these items in your inventory and click edit. That should bring up the edit appearance menus. Just move any sliders and voilá.&lt;br /&gt;
&lt;br /&gt;
=== Why doesn't my world map update when I edit the terrain? ===&lt;br /&gt;
There are three approaches depending on just how adventurous you want to be. From the least to the most adventurous:&lt;br /&gt;
* Wait two days. You will need to restart your sim at the end of the two days to get the updates.&lt;br /&gt;
* Edit the .xml file for the region. Change the value in the &amp;quot;lastmap_refresh&amp;quot; attribute to &amp;quot;0&amp;quot;. You will need to restart the sim.&lt;br /&gt;
* Not for the faint of heart! Edit the &amp;quot;WorldMapModule.cs&amp;quot; file and change the &amp;quot;LazySaveGeneratedMaptile&amp;quot; method to change the &amp;quot;RefreshSeconds&amp;quot; value to something less than two days. Be sure to read the comments and understand why things are the way they are.&lt;br /&gt;
&lt;br /&gt;
Once your terrain stabilizes, this won't be much of a problem, but it is nice to see the updates while you're furiously developing something.&lt;br /&gt;
&lt;br /&gt;
=== How do I give a user God Mode privileges? ===&lt;br /&gt;
Open the Opensim database, select table useraccounts and set the UserLevel to 200 for the account that should have God Mode privileges.&lt;br /&gt;
&lt;br /&gt;
Then, in the viewer Advanced menu, the user should select View Admin Options and select Request Admin Status.&lt;br /&gt;
&lt;br /&gt;
== Scripting ==&lt;br /&gt;
=== System.Reflection.TargetParameterCountException: parameters do not match signature ===&lt;br /&gt;
The parameters for the states doesn't match with required. For example, this script should show the error above.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;lsl&amp;quot;&amp;gt;&lt;br /&gt;
default&lt;br /&gt;
{&lt;br /&gt;
    touch_start() // SHOULD have a parameter there&lt;br /&gt;
    {&lt;br /&gt;
        llApplyImpulse( &amp;lt;0., 0., 10000.&amp;gt;, FALSE );&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Region Statistics on a Web Page ==&lt;br /&gt;
=== Information about your regions. ===&lt;br /&gt;
Region statistics such as region name, avatar name, avatar position&amp;lt;x,y,z&amp;gt;, number of prims, and a lot of other information can be obtained on a web page by:&lt;br /&gt;
* Adding the following to the bottom of the OpenSim.ini file&lt;br /&gt;
  [WebStats]&lt;br /&gt;
  enabled=true&lt;br /&gt;
* Using a web browser and typing in the &amp;quot;Login URI&amp;quot; + &amp;quot;/SStats/&amp;quot; of your standalone server. &lt;br /&gt;
  For example- &amp;lt;nowiki&amp;gt;http://127.0.0.1:9000/SStats/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
The resulting web page is continually updated using AJAX, so there is no need to refresh the page to obtain current information. One possible use for this web page information would be to see who is logged on to the region in real time - without actually logging in.&amp;lt;br /&amp;gt;&lt;br /&gt;
This web page provides region information similar to the kind generated by using various server console commands to obtain region statistics. See [[Server Commands]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Users]]&lt;/div&gt;</summary>
		<author><name>Georgeg</name></author>	</entry>

	</feed>