This is the eight article in a series. In this one I touch on SCRIPTING. The ideas I gleaned from Ebbe Altberg’s, Linden Lab’s CEO, speech at VWBRE 2015 that touched on aspects of the coming Next Generation Platform (NGP).
I started this series with these articles:
- Second Life: Educational Community Update 2015 March
- Second Life: Next Generation Platform Update 2015 – Coming Features
- Second Life: Next Generation Platform Update-II 2015 – Platforms
- Second Life: Next Generation Platform Update-III 2015 – Content Creation
- Second Life: Next Generation Platform Update-IV 2015 – Internal Tools
- Second Life: Next Generation Platform Update-V 2015 – User Types
- Second Life: Next Generation Platform Update-VI 2015 – Content Changes
Control of the World: Scripting
On scripting languages Ebbe says were going to have C#. He didn’t say in this speech but, I am certain the Second Life scripting language, Linden Scripting Language (LSL), will NOT be in NGP. While this will be hard on those that have learned programming starting out with SL’s LSL, for the rest of the world it’s going to be a good thing. I think overall it is a good thing for the future of NGP to have C#.
Control of The Viewer & Avatar
Ebbe didn’t say but I suspect we will have some scripting ability to control the avatar bot-wise and automate the viewer. It is a reasonably common feature of complex software to able to script it.
As an example, there is software designed to run on top of AutoCAD. AutoCAD is a type of database manager and interface oriented toward drawing plans; architectural, product, and civil. Various architectural and civil design packages add extensive features to the basic CAD system. The packages run on top of AutoCAD, essentially controlling AutoCAD via scripting. Think AvaStar on top of Blender.
We have nothing like that with the SL Viewers. Special third party viewers can run software and control an avatar, it’s that bot thing. The SL bots with AI have software running on the bot-owner-user’s computer in a third party modified viewer.
Will we have a viewer that allows us to build on top of it? That style of design has never been part of Linden Lab’s design style, as far as I can tell. So, I think that level of freedom is unlikely. But, we may get some way to have a bit of programming control over our viewer. Such a feature could allow people to build amazing tools for use with NGP. Again, think of Blender and AvaStar.
Oz Linden is one of the Lindens that likes some of the possibilities that RLV provides third-party viewers in SL. (If you haven’t realized the possibilities go far beyond the usual BDSM toys.) I think some degree of the control RLV provides users, will be provided to Second Life™ by the coming Experience Tools. The idea is to allow in-world scripts to control aspects of the viewer and avatar.
I suspect the control Experience Tools (ET) provide in SL will be built into NGP in some form. Since they are starting at the foundation of NGP the Experience Tools will probably be better and do more and certainly be better integrated. But, we have yet to see what all we can do with SL’s ET. I am hoping we will have more control than even RLV offers.
In SL we have basically no ability to control a user’s viewer via in-world script. RLV adds that control to third party viewers. ET will add, to some extent, the ability for scripts to control the avatar and viewer.
Considering the problems and legitimate use-cases for bots I can’t decide if bots will be part of NGP or not. Since we are seeing more features for NPC’s (non-player characters – sort of bots) in OpenSim worlds I suspect we may see NPC’s as part of NGP. NPC’s have a place in many games. So, it seems reasonable we will have them in NGP too. Having them would remove much of the need for bots. Plus it would make it easier for the system to ID bots.
We would need a way to control these NPC’s. In SL we use NPC avatars controlled by bot-viewers. With C# being the in-world scripting language for NGP it would be relatively easy to program NPC’s with AI running on the NGP server side. With new skeletons, animation, and scripting we should be able to make some interesting NPC’s.
So, will the Lindens provide in-world and viewer scripting abilities that allow us to control and automate avatars or NPC’s as well build applications on top of the viewer? I think yes to both. But, when is a big question and to what extent is another.