On 4 June 2013 06:19, Dr Ramesh Ramloll <[email protected]> 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. [email protected] +81 090 3912 3380 Skype: edmundedgar Second Life: Edmund Earp Linked In: edmundedgar Twitter: @edmundedgar http://www.avatarclassroom.com
_______________________________________________ Opensim-users mailing list [email protected] https://lists.berlios.de/mailman/listinfo/opensim-users
