<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>InstructionalAlchemy &#187; scripting</title>
	<atom:link href="http://instructionalalchemy.com/blog/category/scripting/feed/" rel="self" type="application/rss+xml" />
	<link>http://instructionalalchemy.com/blog</link>
	<description>Dynamic Educational Content for Virtual Worlds</description>
	<lastBuildDate>Wed, 06 Jan 2010 19:01:38 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>XiMP: A publish/subscribe model for media content</title>
		<link>http://instructionalalchemy.com/blog/2010/01/06/ximp-a-publishsubscribe-model-for-media-content/</link>
		<comments>http://instructionalalchemy.com/blog/2010/01/06/ximp-a-publishsubscribe-model-for-media-content/#comments</comments>
		<pubDate>Wed, 06 Jan 2010 18:55:50 +0000</pubDate>
		<dc:creator>azwaldo</dc:creator>
				<category><![CDATA[design]]></category>
		<category><![CDATA[education]]></category>
		<category><![CDATA[scripting]]></category>
		<category><![CDATA[secondlife]]></category>

		<guid isPermaLink="false">http://instructionalalchemy.com/blog/?p=1050</guid>
		<description><![CDATA[I was inspired by my study of XMPP and Google Wave while preparing for an event in SL (see “Wave” titles in Recent Posts). A test system was working within the first day, and I immediately began to design the demo activity.]]></description>
			<content:encoded><![CDATA[<p>
<div class="insertRight"><img src="http://lh6.ggpht.com/_NtPGBWxsiAw/S0NPx4CzmpI/AAAAAAAACDY/pKT13ablAX8/s400/Snapshot_009.jpg" width="300" height="225" />
<div class="imagecaption">The XiMP demonstration activity</div>
</div>
<p>I have discovered a new approach to making media content available to users in Second Life™ (SL).  All feedback suggests that this is new.  The educational use cases are obvious.</p>
<p>By using a website and database to index, describe and tag media files (such as podcasts or videos), we create a dataset that <em>refers to</em> the content.  This metadata can be sent to an object in world, such as a HUD, to give users immediate access to that content.  By routing the URL and media type to a local media access server* the user can engage the media wherever she is&#8230;no need to open an external browser or teleport elsewhere to use a media display.</p>
<p>* The local media access server is a single script that can be placed in any object; a rock, a tree, a roof, or a transparent prim.
<p><strong>XiMP</strong> = e<span style="font-weight:bold;font-size:115%;">X</span>tending <span style="font-weight:bold;font-size:115%;">i</span>nteractivity with <span style="font-weight:bold;font-size:115%;">M</span>essaging and <span style="font-weight:bold;font-size:115%;">P</span>resence</p>
<p>Once we have media associated with SL content such as notecards and objects—and messages delivered by blue dialog prompt or SLURLs written in chat—we find there is a variety of ways to combine these <em>resources</em> into content bundles&#8230;or XiMPs, as I have called them, for convenience.  By <em>subscribing</em> to a particular type of content or to a particular author, users can be notified when content is available; in this way we are &#8220;pushing&#8221; content to users in SL.</p>
<p>Think RSS feeds&#8230;FeedBurner or Google Reader.</p>
<p>
<div style="text-align:center; width:512px;"><img src="http://lh5.ggpht.com/_NtPGBWxsiAw/S0TYiqxiuHI/AAAAAAAACDs/K68bU56t8-A/s800/XiMP%20Diagram.jpg" alt="A diagram depicting relationship between objects in Second Life and the Internet" />
<div style="font-weight:bold;text-align:left;">1) User subscribes to content via website, which indexes media files<br />2) Website <em>pushes</em> data to the xHUD<br />3) xHUD sends request for media to local access server<br />4) Media access server assigns content to the local parcel media stream, and&#8230;<br />5) The user experiences the media remotely, individually, in the xHUD (or on a display in world)<br />6) Finally, in the demo, the media is displayed in the xHUD&#8217;s media display panel</div>
</div>
<p>The best way to understand this is to <em>see</em> the system in action.  You are welcome to visit the demo at my parcel in Gyatso (<a href="http://slurl.com/secondlife/Gyatso/33/9/351">SLURL</a>).  It only takes about five minutes; and, it is easy: </p>
<blockquote><p>1) get HUD<br />2) step on green circles</p></blockquote>
<p>Some rezidents are still &#8220;fuzzy&#8221; about what is happening, even after the demo. (Quoting a visitor, here.) <strong>Would you be interested in a personal demonstration?</strong>  I would be glad to arrange to meet in world and discuss where this might lead, as well as how it works. </p>
<p>This project was inspired by my study of <a href="http://en.wikipedia.org/wiki/Extensible_Messaging_and_Presence_Protocol">XMPP</a> and <a href="http://wave.google.com/help/wave/about.html">Google Wave</a> while preparing for an event in SL (see &#8220;Wave&#8221; titles in Recent Posts).  A test system was working within the first day, and I immediately began to design the demo activity.  Days later, I invited a few folks to kick the tires, and then posted an announcement in <a href="http://www.iste.org/Content/NavigationMenu/Membership/Member_Networking/ISTE_Second_Life.htm">ISTE</a> group chat.  Six or seven rezidents showed up, all at once, and I noticed several problems with the design of the activity.  I <em>continue</em> to refine that design.</p>
<p>Many visitors stick around to discuss the demo, and several have expressed willingness to participate further.   I am now encouraging visitors to stay in touch, making contact by email (contact &#8220;azwaldo&#8221; at gmail dot com) or by following the newly created Google Wave (wave link: <a href="http://bit.ly/5iW36s">http://bit.ly/5iW36s</a> , only opens for Google Wave users.  Need an invite? I have some.)</p>
<p>As far as I know, this is the first activity designed using this approach.  For a different project, Omei Turnbull helped create a way to store comments about a location (or build) as an asynchronous dialog (see <a href="http://widgets.pbworks.com/GroupNotePrim">GroupNotePrim</a>).  I suspect that a similar interaction would be useful in this system.  (Learner is prompted to comment on some aspect of the location or build they have been sent to observe&#8230;)</p>
<p>Self-paced, asynchronous presentation of content is something for which virtual worlds are <em>particularly</em> well suited.  A system like <strong>XiMP</strong> might <em>extend</em> our ability to support a lesson with media content.</p>
]]></content:encoded>
			<wfw:commentRss>http://instructionalalchemy.com/blog/2010/01/06/ximp-a-publishsubscribe-model-for-media-content/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Second Life Wave Users Meet-Up</title>
		<link>http://instructionalalchemy.com/blog/2009/12/13/second-life-wave-users-meet-up/</link>
		<comments>http://instructionalalchemy.com/blog/2009/12/13/second-life-wave-users-meet-up/#comments</comments>
		<pubDate>Sun, 13 Dec 2009 02:15:51 +0000</pubDate>
		<dc:creator>azwaldo</dc:creator>
				<category><![CDATA[design]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[scripting]]></category>

		<guid isPermaLink="false">http://instructionalalchemy.com/blog/?p=931</guid>
		<description><![CDATA[
Who: Second Life™ developers who are also Google Wave users
What: Developers Discussion
Where: Free University of Berlin*
When: 11AM SLT Saturday, Dec 19th
Why: To discuss the integration of SL applications and XMPP

* SLurl: http://slurl.com/secondlife/New%20Berlin/95/31/32

Join programmers and content creators to discuss how wave technology (XMPP) might be integrated with SL applications.

What would this look like? 
How could it [...]]]></description>
			<content:encoded><![CDATA[<ul style="list-style-type:none;">
<li><strong>Who:</strong> Second Life™ developers who are <em>also</em> Google Wave users</li>
<li><strong>What:</strong> Developers Discussion</li>
<li><strong>Where:</strong> Free University of Berlin*</li>
<li><strong>When:</strong> 11AM SLT Saturday, Dec 19th</li>
<li><strong>Why:</strong> To discuss the integration of SL applications and XMPP</li>
</ul>
<p>* SLurl: <a href="http://slurl.com/secondlife/New%20Berlin/95/31/32">http://slurl.com/secondlife/New%20Berlin/95/31/32</a>
</p>
<p>Join programmers and content creators to discuss how wave technology (<a href="http://en.wikipedia.org/wiki/Extensible_Messaging_and_Presence_Protocol" title="">XMPP</a>) might be integrated with SL applications.</p>
<ul>
<li>What would this look like? </li>
<li>How could it improve the SL experience?</li>
</ul>
<p><a href="http://www.myspace.com/friendlyfiremusic">Friendly Fire</a>, the GLAMest Band in the Land, will perform live right after the discussion.  There will be DJs , information, and a Silent Auction for Google Wave Invites.  </p>
<p>
<div class="insertRight"><img src="http://lh4.ggpht.com/_NtPGBWxsiAw/SyQyz8_MTgI/AAAAAAAACAA/jyXIZRGdWuU/s400/newBERLING%20Layout.jpg"><br />Event Space at newBERLIN</div>
<p><strong>The main event</strong>—A Developers Discussion &#8220;Integration of Wave with SL&#8221;—will be at 11AM SLT.  There will also be a demonstration of an <em>interactive training bot</em> at 10AM SLT.  (<span style="text-decoration:underline;">NOT</span> wave-enabled, but an example of an application that might benefit from XMPP integration.)</p>
<p><br clear=both></p>
<p>The purpose of this event is to attract SL Rezidents to an open discussion about integrating <a href="http://en.wikipedia.org/wiki/Extensible_Messaging_and_Presence_Protocol">XMPP</a> with SL applications.  Some discussion is taking place at this wave (only works if you have a Google Wave account): <a href="https://wave.google.com/wave/#restored:wave:googlewave.com!w%252Be8cce8kiD">https://wave.google.com/wave/#restored:wave:googlewave.com!w%252Be8cce8kiD</a> </p>
<p>A wave has been created to plan the event, and now has the complete schedule of events. Here is the wave-URL : <a href="https://wave.google.com/wave/#restored:wave:googlewave.com!w%252BAltepd9UA">https://wave.google.com/wave/#restored:wave:googlewave.com!w%252BAltepd9UA</a> </p>
]]></content:encoded>
			<wfw:commentRss>http://instructionalalchemy.com/blog/2009/12/13/second-life-wave-users-meet-up/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Simply Attach To Avatar</title>
		<link>http://instructionalalchemy.com/blog/2009/04/14/simply-attach-to-avatar/</link>
		<comments>http://instructionalalchemy.com/blog/2009/04/14/simply-attach-to-avatar/#comments</comments>
		<pubDate>Tue, 14 Apr 2009 20:34:24 +0000</pubDate>
		<dc:creator>azwaldo</dc:creator>
				<category><![CDATA[scripting]]></category>
		<category><![CDATA[secondlife]]></category>

		<guid isPermaLink="false">http://instructionalalchemy.com/blog/?p=240</guid>
		<description><![CDATA[
What could be better than having a scripting lesson come out of the blue?
While rooting around for information to support an upcoming post, I came upon a video from 2006.  In that video, an avatar is seen touching an object and that object then becomes attached to the hand after the user makes a [...]]]></description>
			<content:encoded><![CDATA[<div><img class="insertRight" src="http://farm4.static.flickr.com/3650/3441710374_053673d6cf_o.jpg" width="330" height="169" alt="ssAttachToAvatar" /></div>
<p class="brighter">What could be better than having a scripting lesson come out of the blue?</p>
<p class="brighter">While rooting around for information to support an upcoming post, I came upon a <a href="http://life-slc.org/?p=523">video</a> from 2006.  In that video, an avatar is seen touching an object and that object then becomes attached to the hand after the user makes a selection in a dialog box.</p>
<div class="insertLeft"><a href="http://www.flickr.com/photos/azwaldo/3441710322/" title="AttachToAvatar by azwaldo, on Flickr"><img src="http://farm4.static.flickr.com/3380/3441710322_3f98a4fb36.jpg" width="300" height="300" alt="AttachToAvatar" /></a></div>
<p>Did you know that an object can be attached to an avatar <em>without</em> the step of taking it into Inventory?  I did not.  I even have a use for this in a current project!<strong>llAttachToAvatar</strong> lets you attach an object directly to an avatar.  <a href="http://lslwiki.net/lslwiki/wakka.php?wakka=llAttachToAvatar">The function&#8217;s entry</a> at the <a href="http://lslwiki.net/lslwiki/wakka.php?wakka=HomePage">LSL Wiki</a> even has <em>this very action</em> as the demo script.</p>
<p>What I <em>don&#8217;t</em> know about LSL could fill a wiki.</p>
]]></content:encoded>
			<wfw:commentRss>http://instructionalalchemy.com/blog/2009/04/14/simply-attach-to-avatar/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>LSL 101, or scripting for beginners</title>
		<link>http://instructionalalchemy.com/blog/2009/04/05/lsl-101-or-scripting-for-beginners/</link>
		<comments>http://instructionalalchemy.com/blog/2009/04/05/lsl-101-or-scripting-for-beginners/#comments</comments>
		<pubDate>Sun, 05 Apr 2009 15:44:54 +0000</pubDate>
		<dc:creator>azwaldo</dc:creator>
				<category><![CDATA[education]]></category>
		<category><![CDATA[opensim]]></category>
		<category><![CDATA[scripting]]></category>

		<guid isPermaLink="false">http://instructionalalchemy.wordpress.com/?p=156</guid>
		<description><![CDATA[I have begun to develop a series of scripts to introduce various effects to new users.]]></description>
			<content:encoded><![CDATA[<div style="float:right;margin:0 0 1em 2em;"><a href="http://www.flickr.com/photos/azwaldo/3414877478/" title="LSL 101 by azwaldo, on Flickr"><img src="http://farm4.static.flickr.com/3402/3414877478_463c41f04c.jpg" width="300" height="225" alt="LSL 101" /></a><br />Basic scripted objects</p>
<p><a href="http://www.flickr.com/photos/azwaldo/3414113327/" title="RunningCheckbox by azwaldo, on Flickr"><img src="http://farm4.static.flickr.com/3643/3414113327_e11f2bf955_o.jpg" width="300" height="200" alt="RunningCheckbox" /></a><br />Running checkbox in script-edit view</div>
<p>I have begun to develop a series of scripts to introduce various effects to new users.  These scripts can be placed in a default prim which becomes an interactive, instructional object.  They are a <em>series</em> in that each script (or possibly group of scripts) will build upon what was presented in the previous script (or group of scripts).</p>
<p>I had worked on a similar project back in my first year as an avatar.</p>
<p>A major priority back then was to create an extremely low-prim object.  This resulted in objects that might have the user toggling the &#8220;Running&#8221; checkbox (see image) in the script-edit panel to advance the lessons; or, any one object might have multiple scripts&#8230; or rezz other objects for demonstration.  The scripting and comments needed to manage <em>those</em> behaviours sat right next to bits that were the meat of the lesson; and, the comments in those scripts were often instructing the user to look at one script first and then another, or toggle checkboxes to activate a script.  It just became too clunky. </p>
<p>This new approach places scripts in separate objects.  Each script can <em>now</em> be written with clear instructional content (read: <em>extensive</em> commenting), without the distraction and clutter found in the previous project.</p>
<p>On reflection, my own drive to develop low-prim objects in SL might have been unnecessary or extreme, restricting the design in an artificial way; but, it took OpenSim&#8217;s abundant elbow room to bring me back to a project that probably has value.</p>
]]></content:encoded>
			<wfw:commentRss>http://instructionalalchemy.com/blog/2009/04/05/lsl-101-or-scripting-for-beginners/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>OSSL&#8217;s TextureDrawing</title>
		<link>http://instructionalalchemy.com/blog/2009/04/01/ossls-texturedrawing/</link>
		<comments>http://instructionalalchemy.com/blog/2009/04/01/ossls-texturedrawing/#comments</comments>
		<pubDate>Wed, 01 Apr 2009 22:35:19 +0000</pubDate>
		<dc:creator>azwaldo</dc:creator>
				<category><![CDATA[opensim]]></category>
		<category><![CDATA[scripting]]></category>

		<guid isPermaLink="false">http://instructionalalchemy.wordpress.com/?p=116</guid>
		<description><![CDATA[First use of OpenSim-specific functions today.]]></description>
			<content:encoded><![CDATA[<p>First use of OpenSim-specific functions today.  Even though this occured on the same day as a <a href="http://imohax.com/2009/04/01/opensim-youre-losin-me-punking-is-for-punks/">significant HubBub</a> erupted in the OpenSim community (note the <em>date</em> of this post), it is encouraging to find that the potential of OpenSim is already proving itself&#8230;making strides beyond the capabilities of Second Life&reg;.
<div style="float:right;"><a href="http://www.flickr.com/photos/azwaldo/3404802741/" title="TextureDrawing by azwaldo, on Flickr"><img src="http://farm4.static.flickr.com/3622/3404802741_c444565758.jpg" width="300" height="225" alt="TextureDrawing" /></a><br />TextureDrawing Example</div>
<p>I implemented the <a href="http://opensimulator.org/wiki/OSSL_TextureDrawing">example script for TextureDrawing</a> in ReactionGrid&#8217;s OpenSim.  This function allows the display of text on a prim&#8217;s surface.  Font resolution is crisp (see image) and some styles can be applied to the text (font size, decoration and color all applied in object in background).  I modified the example script to receive a string from public chat, edit into display-size chunks (lines), and <em>draw</em> onto prim surface.</p>
<p>Next, we poll a file on an external server to retrieve text submitted via website.
<div class="zemanta-pixie"><img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=d258e853-d6e4-8532-9764-9d680c28343b" /></div>
]]></content:encoded>
			<wfw:commentRss>http://instructionalalchemy.com/blog/2009/04/01/ossls-texturedrawing/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
