Thursday, July 26, 2007

Shameless Vote Whoring

Now that the Mozilla library has been incorporated into the Second Life viewer, it strikes me that it might be possible for the non-working llSetPrimURL() and llRefreshPrimURL() functions — which were intended to display a Web page on a prim, but which (to my knowledge) have never actually worked — could be made to trigger a client-side retrieval of the specified Web page, which would then be rendered to a (local) texture and displayed on the prim, in much the same way that media textures are.

And since the page retrieval would be done client-side, it wouldn't cause any appreciable lag on the Second Life servers.

I've created a JIRA feature request about this. If you think it would be nifty too, please vote for it! Tell your friends! Tell all your alts!

Wednesday, July 25, 2007

Why was I not told this?

You can put a script into a prim without having it automatically start running, by holding down the CTRL key as you drag it from your inventory.

Monday, July 23, 2007

Yet More Schedule Stuff

In between working on classes (I'm up to five now; the latest one will debut Thursday evening, and will cover dialogs, link messages, HTTP and XML-RPC communication), I've been back at work on more schedule stuff.

My latest device is a HUD for students, showing the next five classes scheduled to be taught at Rockcliffe:

Unfortunately, for the text to be readable, it does have to take up a hefty amount of screen space, so the Rockcliffe logo serves as a minimize/restore button:

Features include:

  • "Class Info" buttons cause it to tell its owner more information about the selected class (full class name, date and time, teacher's name, location, duration, etc.)
  • "Teleport!" buttons bring up the Map screen, with the classroom location selected
  • The green "?" button delivers a notecard with usage information
  • The "Preferences" button brings up a dialog with several options:
    • Alarms On - causes the HUD to play a sound and pop up a dialog indicating that one or more classes will be starting in ten to fifteen minutes (and identifying which classes)
    • Alarms Off - suppresses the class notification
    • TP to RUSLC - brings up the Map screen, with Rockcliffe's reception area selected
    • RU Website - Loads the Rockcliffe University Web site into the user's browser
    • Schedule - Loads the Rockcliffe class schedule into the user's browser
But the stuff that was the most fun to do is all behind the scenes:
  • Checks the schedule about once every five minutes
  • If a new version is released, the HUD is automatically updated the next time the user visits the Rockcliffe sim
  • All the hardcoded URLs (the location the script the HUD communicates with to download the schedule, the Rockcliffe Web site, and the schedule Web page) can be changed by the server-side script without requiring a full update, in case of a site move, page relocation, etc.
  • When downloading the schedule, it passes version information to the server-side script, so that new features may be implemented without breaking older versions of the HUD
One of these days, I will actually finish building my house and make more jewelry...