Posts Tagged ‘secondlife’
Found another problem with the TouchMeObject script (wrote about it in last post). New, improved version is posted (same URL). The problem was of my own making, a result of trying to avoid having multiple listeners created. I hope this update finds anyone that might have used the earlier version.
A listener creates a significant load in a simulator, enough to warrant caution in their creation. So, it is best practice to avoid having static (persistent) listeners in a simulator if users are not interacting with the object.
In preparing the TouchMeObject, I hastily threw in a “BUSY” variable (BOOLEAN) to clamp down listener creation while the object attended to a user (make second, third users wait ’til first user is done). But, I FAILED to provide any response to the next user to touch the object.
(This could be tested by two users, or one user with an alt. Touch object with first avatar, then touch with second user before the first responds to their Dialog prompt. The object does not respond.)
The problem in the first TouchMeObject script is obvious now, one I should have noticed; had just never gone the “BUSY” route before. My old, lazy approach has typically been to create a listener, wait for X seconds of inactivity, and then remove the listener.
Not having looked at this “concurrency” issue in a while, at least as it relates to use of the llDialog function, I had a look around. Seems that how best to deal with multiple listeners is still a matter of discussion…and by much more advanced scripters*.
Still, the digging paid off: I noticed that the SL Wiki page for the llListen function states:
“…handles are assigned sequentially starting at 1”
Light bulb attachment flickers, and an old lazy approach is upgraded to a newer lazy approach. Now, we’ll create a listener only if we have ZERO stored as the EARS_OPEN handle (integer variable, now acting as BOOLEAN). (Just have to remember to set it to ZERO everywhere that counts.)
But wait! What if a user touches the object and gets the dialog prompt, then gets distracted by cute kitty pictures in a browser, and returns to the dialog prompt in (X + 1) seconds?
Answer: No joy.
It aint elegant. It’s not even satisfying; and, it has its problems. But…
It’s something I can live with.
*UPDATE* (added single line to clear any float text if not assigned)
if (DISPLAY_FLOATING_TEXT) llSetText( llGetObjectName(), FLOAT_TEXT_COLOR, 1.0 );
else llSetText( “”, FLOAT_TEXT_COLOR, 1.0 );
//SEE WHAT’S BEEN ADDED TO CONTENTS
* To read some of the various issues related to the use of listeners, see:
Update: Demo stays for a while.
I have designed a new tool, and now invite you to try it out.
At last year’s VWBPE conference (previous post) I wanted to give visitors a quick, customized tour of a design I was presenting…even when I was AFK.
Demonstration vendor in
my parcel, in Urdu
This “Site Preview HUD”
- combines scripted camera movement with audio narration
- is “touch to wear”
- is temporary, nothing is added to Inventory
- quickly shows the points of interest in a region or build
I am not selling this object.
This is not an advertisement.
This effect is new to me; so, it may be new to others, as well. I would be happy to share full-perm copies with the right users. (The hard part is creating .wav files, setting camera coordinates.)
You can find* it here: SLURL
There is also a Notecard at the demo location. Please share that—or this link—with others.
The new LEA project has reached its first critical juncture. Documents are there, pared, and shared; notecard invitations to group collaboration passed about liberally; tools for communicating on site have been deployed. Land is claimed, and
…a few rough sketches now dot the landscape or hang in mid-air, waiting for what comes next: the one question which must be answered before much else happens…
What is our objective?
At the beginning of each year as a science teacher I evaluated my classroom curriculum, rearranged topics and re-prioritized lessons; I shuffled the deck. Often a science department, district committee, or state board would hand down a new set of curriculum guidelines. This usually meant simply identifying what items in the new list I was already addressing.
Nothing to see here, folks; move along.
But then, every few years, the federal government, scientific and—let’s face it—corporate communities decide to crumple up the old list, toss it in a basket, and start from scratch. With the release of new science education standards in April, the National Academies of Science have endorsed a new deal.
They’ve called for a new deck.
I have typically been pleased to see the changes in focus, the new language for science learning that comes with new national standards or guidelines. This round is no exception.
It is worth mention that these new standards are not a mandate, are not supported by all states. Many states will never recognize their merit, and others will take years to implement through adoption and articulation. With science education curriculum guidelines, there actually is no such thing as a national standard. That is just what some of us call them, out of convenience.
I also know that where the rubber hits the road is in each teacher, department, or curriculum committee’s interpretation of such standards. Every lesson is one person’s spin on what was prescribed. This applies to content providers, too. Folks who make textbooks, for example, are jumping on these standards like they are putting out a fire. I have seen it. And, different users interpret standards differently.
This also applies to the design of The Virtual Cell. Where we go with this new compass we have been given is up to us. What we do with the full region granted for this demonstration follows from our own interpretation of those same standards.
The discussion has begun regarding how to address standards, how to provide support for classroom instruction that is targeted and effective yet still wide-ranging in its application. After all, “if it doesn’t address my state’s guidelines, I cannot use it”.
Yet, one size will never fit all. While chatting at a recent conference exhibit of an activity for new users, one educator observed that there should be more notecards (with instructions). I had heard this same comment once already, just before the event. Later, the next day, another visitor observed “there are too many notecards.” I just heard that very same comment again, for the very same design, yesterday.
They are all correct, of course. There are too many notecards, and…we need more notecards. It should be black; and, it really should be white. You just have to “remember who your audience is.”
To emphasize a point and begin making the case for a particular design approach, I must mangle a maxim:
You can please all of the people with some of the content.
You can please some of the people with all of the content.
But, you can never please all of the people with all of the content.
With three months to build an interactive, standards-based, highly engaging and interesting activity—with three months to make upwards of three to five hundred lesser decisions (best guess, conservatively)—with three months to organize a collaborative team willing to offer their work free of charge in the interest of helping to further demonstrate that virtual worlds really do have a place in the classroom…this issue needs to be resolved quickly.
A number of performance indicators in the new standards are obviously ripe for a virtual world experience teaching about the cell. And, it is just as obvious that one could quickly bite off more than one can chew, if you look at the list. With three months to build, the question becomes “What might we achieve?”
But, to digress for a moment, what we might achieve depends on who is pitching in…even if only offering 2¢. For this project to reach its potential, if the build even begins to approach what I try to imagine, any number of experienced—dare I say, expert—content creators will have played their hand.
- a wizard has conjured a vehicle,
- several members of one group of biologists have expressed an interest,
- a SecondLife™ entrepreneur has offered to make introductions to various said experts, and
- a fantastical feline has been purring about some pretty proper prims.
So, to table the “standards” conversation for a moment, I’ll ask an even more practical question. It looks like it’s my deal…
Given how much time I spend building and scripting in virtual worlds, I also spend a considerable amount thinking ’bout where this technology is going. I do not intend to indulge that obscure topic here, today. Instead, I want to mention the finely wrought underpinnings—the granularity, if you will—of what lies behind and beneath this virtual platform which has become a thoroughly engaging activity, by way of announcing a new project.
What is a virtual world? Ultimately it exists as the particular electromagnetic configuration assigned to a few gadjillion magnetic grains arranged in the surface material coating a small space of a magnetic drive.
Precisely arranged magnetic grains define the distinct magnetic regions in the surface materials of hard disks. The grains separate one magnetic zone from the others.
(Click image to open Wikipedia entry for Hard Disk Drive)
TransitionNeel image courtesy of Wikipedia
Whatever surface area on a hard disk drive platter that is needed to store what I have sketched with my “build tools”, whatever incredibly large number of magnetic grains it takes to store the binary code for the (up to) 15,000 prims, scripts, sounds and assorted textures that will make up the new virtual world region that I will “buy” today for Zero Lindens (talk about virtual); not to mention the larger patch of cobalt-based hard disk drive alloy needed to house the simulator, the incredible software engine served up and driven by design; whatever puny patch of ‘puter platter percolates with my particular predilections for prims; that can all soon be linked and located, fetched and transmitted, parsed, interpreted and rendered finally as a newly crafted, interactive, educationally motivated virtual space, one by which other netizens and reZidents might also be engaged.
In short, I am told that the “purchase” of an entire SecondLife™ region will occur today. This new project will reside in a full “sim” (or simulator); it will occupy an entire server. It seems appropriate, then, to give this project its own page in this blog…yep, there it is in the NavBar: “The Virtual Cell”.
I have been logging time for over half of a century. Hard disk drive technology is older than me. Still, considering what we are already doing this technology, imagining might come next takes a lot of my magnetic grains, too.
The Basic Skills Gauntlet (BSG; described in previous post) project occupies an entire skybox, and—along with web docs, spurious announcements and notecards in world, and this blog—it all may seemed disjointed. This post is an attempt to connect the dots in the collaborative design process.
On arrival at the landing point at the project site, one finds seemingly-scattered objects resembling a yard sale (see image).
Each of the green boxes in world is labeled with a floating “module number” corresponding to a line in the spreadsheet (green box there, too; see next image). In world, each module contains various prims and scripted widgets designed to “teach” the basic skill assigned to that module. On visiting any module in world, it helps to consider the discussion in the spreadsheet.Once you find the skill in the spreadsheet, and locate the design module in world, you can examine (maybe even try out) the design. If you have a question or a comment—and it is expected that you will—you can simply wear your Spicy Vanilla group tag and touch the GroupNotePrim* to submit feedback via chat.
* The GroupNotePrim (see image) allows a user to submit a comment via chat. Those comments are sent to a Google application where an automated display of ALL COMMENTS can be viewed online, just as they are seen in world. (Developed by SL: Omei Turnbull.)
If you have a Gmail account, and would like to add 2¢ to the spreadsheet, please contact Azwaldo in world.
So, to summarize:
- Visit the project site and find the module design area.
- Scan the spreadsheet for accompanying discussion.
- Touch the GroupNotePrim to submit a comment or question. (And contact Azwaldo for Google doc access.)
Several modules exist in world merely as partial proposals in prims. Other modules are nearing completion…in that they provide a complete user experience. This does not necessarily mean that the overall design is satisfactory.
You may find that one or two of the “modules” interest you the most, (That’s how it is for me!) If so, please jump in and help see that module through to completion.
Your feedback could prove essential, at this point. And, with three weeks left for designing the prototype, it is time to get to work.