SL Script Related

This page contains all the articles I’ve written related to Second Life scripting.

#SL Server-Scripting News Week 8

None of the packages running in the release channels passed testing, so no packages were rolled to the main grid today. Also, in an oversight, blending the main trunk and release channels last week was missed. So, we will probably see the same packages running on the release channels with a few more fixes and blending with the main trunk running on the release channels next.

However, selected regions were restarted Tuesday. There are some problem regions that get a weekly restart whether there is a roll out or not. We will see the release channels restarting tomorrow as new software is rolled to them.

Map Tiles

Apparently there is a problem with some regions not generating Map Tiles for the World Map. SVC-7629 – Map tile generator not working.

llGetParcelMaxPrims(llGetPos(), TRUE)

There was some discussion about the fix for this function, SCR-121Entire sim (65,536sq.m.) owned by group, llGetParcelMaxPrims(llGetPos(), TRUE) Returning odd number. It still returns the parcel prim count times the region multiplier, but caps at 15,000 (or less if a Homestead/void). TehKellz says, ‘which is the behavior it had for any non-entire-region parcel.’

 

#SL Server-Scripting News Update Week 7

Oskar Linden says the voice package running on the Blue Steel and Le Tigre release channels was fixed to clean up extra voice information being sent during region crossings. With the fix crossings should be a hair faster.

Server Beta Meeting

Magnum got the Phase I region crossing change over to multi-threading.

Osker says they flubbed this roll. The main trunk code did not get rolled into the release channel packages before they were loaded into the release channels. So all the code running on the main channel is not part of the code in the RC’s.

Continue reading »

 

Pathfinder Official Announcement

The Lindens made this announcement today: Take a Sneak Peek at the Pathfinding Experiments Being Conducted in Second Life. Lorca Linden has a video out, shown here.

Lorca Linden in the Obstacle Course in ADITI - See Video

WATCH Video: http://vimeo.com/36483387

 

#SL Pathfinding Update

I see today that the Lab has published the list of regions in ADITI where the new Pathfinding functions are being tested.

Pathfinding/Alpha release notes

Regions

These SLURL’s may or may not work when you click them. It depends on whether you have set up the secondlife:\\ protocol in your browser. The easy way yo get to these SLURL’s is to log into ADITI and paste the SLURL into the location window at the top of the viewer.

Obviously, I think, you can use the World Map to find the PathTest regions.

 

#SL Server/Scripting News Week 7

The Lab has had some challenges with recent update packages for the servers. However, the main grid did get an update this week. We also got two new packages on the  release channels.

Main Channel

The information on the recent roll to the main grid is summarized here: Deploys for the week of 2012-02-13. The is the package with the improved list handling. The upgrade has better code for starting and stopping regions. Better memory usage code has been added. The Course Location for mini-maps has been fixed. There is a fix for  llGetParcelMaxPrims(llGetPos(), TRUE) so it now should be reporting the correct numbers. There is a fix for SVC-7443 Telehubs.

Continue reading »

 

#SL Pathfinding API Documentation

Path by richardefreeman Flickr

Rand Linden has been adding information about the Pathfinding API to the SL Wiki. Also, a beta testing page is up in the wiki too. The testing page is incomplete. But, it is looking like we will soon see the new feature arriving in the Preview Grid ADITI.

What It Does

Non-Player Characters (NPC) or Non-Played Character, depending on who one talks to, is what we often call bots. A computer runs them. The SL Wiki has a page on the software that runs bots. See: Second Life Bot Software Comparison.

In addition to the more familiar bots we can have other NPC’s. The Linden Scripting Language (LSL) has a function named llCreateCharacter() that can turn any collection of prims, sculpties, and/or mesh into a NPC. The function is described as: Converts the current linkset to an AI [artificial intelligence] character. By default, the character’s shape will be an upright capsule approximately the size of the linkset, adjustable via the options list. The linkset must use mesh accounting.

 

#SL Animation Changes

Avastar in Blender - Image by Machinimatrix

In January of this year Laurent Bechir filed a user story in the SL JIRA, STORM-1803. The JIRA item points to Machinimatrix’s post on Second Life’s animation format. The animation format controls what we can upload into SL. In a way this user story is a feature request.

Oddly it is the Biovision Hierarchy (BVH) file format used for uploading that restricts much of what we can do with animations in Second Life. Internally SL uses an .anim type file format that allows more animation controls than BVH.

Some of the things an ANIM file allows are:

  • Different animation priorities per-joint
  • Keyframed animation control of eyes!
  • Variable length joint offsets per frame (allowing cartoon-like “stretchy” bones)
  • Keyframed rotation and repositioning of attachments (which meshes can weight to; to use as new child bones  )
  • Client Side scaling of attachments and default mesh
  • ANIM files are text files

 

#SL Scripting News Week 7

The big news this week was Tiggs’ announcement about Linden Realms’ Tools. I cover that in: #SL Linden Realm Tools. Otherwise, there was little news in the scripting area.

New Functions

For some time we have had the improved List Functions bouncing in and out of the release channels. It looks like they will make it to the main grid this week. For the past week the server maintenance package including them has been running on all 3 release channels. So, it should be well tested. Keep your fingers crossed.

These are the improvements to speed up Linden Scripting Language (LSL) functions that handle lists. Look back through the articles in Scripting News for a list of them.