[Opensim-users] Animating NPCs without osNpcPlayAnimation

Edmund Edgar ed at avatarclassroom.com
Tue Jun 4 07:14:34 UTC 2013


On 4 June 2013 06:19, Dr Ramesh Ramloll <r.ramloll at gmail.com> wrote:

> Hello

Since my application deals with hundreds of such situations, that
> would be hard work in the future ... because as we well know updating
> code for complex stuff in opensim is so inefficient because there are
> no way to propagate changes for scripts that are used often in
> different objects.
>
> on a side note, how does one efficiently update scripts for many
> objects that use them at once. It would be great if each script
> element in every prim is actually a pointer to some script in
> inventory, so that when we change the script in the inventory, then
> all scripts would know about the change. Is this something way too
> hard to implement?
>

What I do with sloodle, which is a bit of a palava but works for my
purposes, is:

- I keep a single copy of each LSL script in my Git repo.

- Each LSL script has a comment at the bottom saying where it lives in the
Git repo.
https://github.com/sloodle/moodle-mod_sloodle/blob/master/mod/choice-1.0/objects/default/assets/sloodle_choice_text.lslp#L49


- I export my objects as an IAR file, then unpack the archive.

- I run a shell script that looks at the comment from the bottom of each
LSL script, checks if the content is different from the file in Git, and
copies it over if it is, so the archive gets all the latest versions of the
various LSL scripts from Git.
https://github.com/sloodle/sloodle_development_tools/blob/master/opensim_sync/syncGITScriptsToIAR.sh

- I run another shell script to update the UUIDs of any scripts that have
changed (I use MD5 sums of the script content to make UUIDs) to force
OpenSim to use the new content.
https://github.com/sloodle/sloodle_development_tools/blob/master/opensim_sync/fixuuid.sh

- I repack the archive into an IAR then import it back into OpenSim.

I also have a script that works in the opposite direction and checks if
there's anything in the IAR that's different from what I've checked into
Git, in case I update something in-world and forget to check it in.
https://github.com/sloodle/sloodle_development_tools/blob/master/opensim_sync/syncIARScriptsToGIT.sh

In theory this could probably turn into a single script that you could run
in a single command.

HTH, YMMV,

-- 
Edmund Edgar
Avatar Classroom
Your classroom, on the web, in a virtual world.

ed at avatarclassroom.com
+81 090 3912 3380
Skype: edmundedgar
Second Life: Edmund Earp
Linked In: edmundedgar
Twitter: @edmundedgar
http://www.avatarclassroom.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://opensimulator.org/pipermail/opensim-users/attachments/20130604/4fd7cd52/attachment.html>


More information about the Opensim-users mailing list