<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="/assets/atom.xsl" type="text/xsl"?><feed
	xmlns="http://www.w3.org/2005/Atom"
	xmlns:thr="http://purl.org/syndication/thread/1.0"
	xml:lang="en-US"
	><title>Sacha Chua - tag - lsl</title>
	<subtitle>Emacs, sketches, and life</subtitle>
	<link rel="self" type="application/atom+xml" href="https://sachachua.com/blog/tag/lsl/feed/atom/index.xml" />
  <link rel="alternate" type="text/html" href="https://sachachua.com/blog/tag/lsl" />
  <id>https://sachachua.com/blog/tag/lsl/feed/atom/index.xml</id>
  <generator uri="https://11ty.dev">11ty</generator>
	<updated>2007-08-03T00:46:00Z</updated>
<entry>
		<title type="html">Plywood boxes</title>
		<link rel="alternate" type="text/html" href="https://sachachua.com/blog/2007/08/plywood-boxes/"/>
		<author><name><![CDATA[Sacha Chua]]></name></author>
		<updated>2007-08-03T04:46:00Z</updated>
    <published>2007-08-03T00:46:00Z</published>
    <category term="emacs" />
		<id>https://sachachua.com/blog/?p=4313</id>
		<content type="html"><![CDATA[<p>By default, objects created in Second Life are plywood boxes. I&#8217;m not<br>
really interested in learning how to making these cubes look like<br>
anything in particular. I&#8217;m just interested in making them do cool<br>
things. Someone else can put time and effort into making a replica of<br>
a real-world object or a fantastic new device&#8230; I&#8217;m just here to play<br>
around with programs. =)</p>
<p>Stephen Perelgut wanted a structured interviewer that collected data<br>
in-world instead of requiring people to fill out a notecard or leave<br>
Second Life and fill out a web-based form. So today, I built an<br>
interview-bot which asks a series of questions and stores the answers.<br>
Avatars can click on the bot to start, and can resume this<br>
&#8220;conversation&#8221; at any time. Chatting on a separate channel means that<br>
answers are reasonably private. The data is stored in the object and<br>
can only be retrieved by the object&#8217;s owner.</p>
<p>In order to build this, I learned a little bit about how to work<br>
around Second Life&#8217;s data limitations. You see, the Linden Scripting<br>
Language doesn&#8217;t have multidimensional arrays. Fortunately,<br>
LSLwiki.net has a library for accessing multidimensional arrays by<br>
packing and unpacking lists of lists, encoded as strings. The library<br>
is kludgey, but as long as my code looks relatively neat, everything&#8217;s<br>
okay.</p>
<p>Future versions of this interview-bot will allow avatars to review,<br>
change, and submit their answers through the Web or through e-mail. I<br>
also hope to make it easy for owners to customize the list of<br>
questions. A notecard would do nicely for setup. I can also make it<br>
easy for owners to get a notecard of results.</p>
<p>It was fun programming the scripted object, and even more fun chatting<br>
with the other IBMers. I met a number of interesting people today<br>
thanks to awesome connectors like Andy Piper and Stephen Perelgut.<br>
I can&#8217;t wait to build other interesting things in Second Life!</p>

<p>Random Emacs symbol: planner-read-non-date-page &#8211; Function: Prompt for a page name that does not match `planner-date-regexp&#8217;.</p>
<p>You can <a href="mailto:sacha@sachachua.com?subject=Comment%20on%20https%3A%2F%2Fsachachua.com%2Fblog%2F2007%2F08%2Fplywood-boxes%2F&body=Name%20you%20want%20to%20be%20credited%20by%20(if%20any)%3A%20%0AMessage%3A%20%0ACan%20I%20share%20your%20comment%20so%20other%20people%20can%20learn%20from%20it%3F%20Yes%2FNo%0A">e-mail me at sacha@sachachua.com</a>.</p>]]></content>
		</entry>
</feed>