Archivo de la etiqueta: castellano

Second Life: Problema de comunicación entre scripts

La semana pasada el grid se vió afectado por un problema en la ejecución de scripts, específicamente cuando un objeto rezea otro y se establece una comunicación entre ambos (parent-child). Este problema, surgido luego de la actualización habitual de martes y miércoles, debió ser revertido por Linden Lab, de manera apurada, el pasado fin de semana (viernes y sábado) tuvo que reiniciar el grid para revertir los cambios y aplicar correcciones para solucionar el problema suscitado.

Ayer, en su blog oficial, Linden Lab emitió un comunicado explicando dicho problema, el cual se transcribe (traducido) a continuación:

Comunicaciones entre scripts  principal/secundario

Como parte de nuestros esfuerzos continuos para mejorar el rendimiento de los sctripts, recientemente realizamos cambios en cómo se programan los mismos y se entregan los eventos. Desafortunadamente, encontramos que esos cambios causaron la ruptura de algunos scripts ampliamente utilizados, lo que llevó a la reversión del estado del grid el sábado pasado. (Aparentemente tuvimos mala suerte en que hubiera poca cantidad de esos scripts en las regiones Release Candidate la semana anterior). Ahora hemos realizado mejoras adicionales que deberían evitar la mayoría de esos problemas, pero incluso con esas soluciones habrá algunos cambios en el tiempo y el orden de cómo se ejecutan los scripts. En general, esos cambios mejorarán el rendimiento, pero hay algunas mejores prácticas de secuencias de comandos que el usuario debería utilizar. Esto le ayudará a evitar depender de un orden o sincronización particular de entrega de eventos y ejecución de script.

Una causa común de problemas es la comunicación entre objetos inmediatamente después de que uno crea el otro. Cuando un objeto rezea a otro objeto en el mundo usando llRezObject o llRezAtRoot, los dos objetos con frecuencia necesitan comunicarse, ya sea a través de llamadas a llRegionSayTo o llGiveInventory. El objeto principal recibe un evento object_rez() cuando se ha creado el nuevo objeto, pero nunca es seguro asumir que los scripts en el nuevo objeto han tenido la oportunidad de ejecutarse cuando se entrega el evento object_rez. Esto significa que el nuevo objeto puede no haber inicializado su evento listen() o haber llamado llAllowInventoryDrop, por lo que cualquier intento de enviarle mensajes o inventario podría fallar. El objeto principal no debe comenzar a enviar mensajes ni a hacer un inventario del evento object_rez(), ni siquiera debe esperar un tiempo después de ese evento. En cambio, el objeto padre (rezzer) y el objeto hijo (rezzee) deben realizar una comunicación previa para confirmar que ambos lados están listos para cualquier transferencia.

La secuencia para este proceso es:

El objeto padre registra un evento de escucha usando llListen en un canal.
El objeto padre llama a llRezObject y pasa ese número de canal al nuevo objeto en start_param.
El objeto hijo crea un evento de escucha usando llListen en su controlador on_rez en el canal pasado como start_param.
El objeto hijo realiza cualquier otra configuración requerida para estar listo para cualquier comunicación que necesite con el objeto padre.
El objeto hijo envía un mensaje «listo» usando llRegionSayTo() en el canal asignado al objeto padre.
El objeto padre transfiere inventario o envía comandos de configuración a través de llRegionSayTo al objeto niño.
El objeto padre envía un mensaje de «hecho» al objeto hijo y ahora puede cerrar el canal de comunicaciones.
El objeto hijo recibe el mensaje «hecho» y ahora puede desmontar cualquier configuración que haya hecho para habilitar la configuración (como llamar a llAllowInventoryDrop( FALSE ) ).

Puedes ver el código de ejemplo de comunicación entre objetos padre e hijo a continuación.

Vale la pena señalar que este patrón de comunicación siempre ha sido la mejor manera de escribir tus scripts. Incluso sin los cambios en el planificador, el orden de cuándo se ejecutan los scripts en el nuevo objeto y cuándo se entregó el evento object_rez al rezzer no fue determinista. Parece cierto que hacer que el planificador sea más rápido ha hecho que esta condición de secuencia  sea algo menos predecible, pero hacer que todos los scripts se ejecuten con menos sobrecarga de programación vale la pena que el pedido sea un poco menos predecible, especialmente porque no estaba asegurado antes de todos modos. ¡Esperamos que estos nuevos cambios ayuden al mundo de todos a funcionar un poco más tranquilo! Para compartir tus pensamientos sobre esto, utiliza esta publicación del foro (En inglés).

Rezzer.lsl //////////////////////// // Rezzer script. // Rez' an object from inventory, establishes a communication channel and // gives the rezzed object inventory. // (Rezea un objeto desde su inventario (pestaña Contenido), establece un canal de comunicaciones y // entrega del inventario del objeto rezeado.) integer COM_CHANNEL=-17974594; // chat channel used to coordinate between rezzer and rezzee string REZZEE_NAME="Rezzee"; string CMD_REZZEE_READY = "REZZEE_READY"; string CMD_REZZER_DONE = "REZZER_DONE"; key rezzee_key; default { //... touch_start(integer count) { state configure_child; } //... } // rez and configure a child state configure_child { state_entry() { // where to rez vector position = llGetPos() + <0.0, 0.0, 1.0>; // establish rezzer's listen on the command channel llListen( COM_CHANNEL, "", "", "" ); // rez the object from inventory. Note that we are passing the // communication channel as the rez parameter. llRezObject(REZZEE_NAME, position, ZERO_VECTOR, ZERO_ROTATION, COM_CHANNEL); } object_rez(key id) { // the object has been rezzed in world. It may not have successfully // established its communication yet or done anything that it needs to // in order to be ready for config. Don't do anything till we get the signal rezzee_key = id; } listen(integer channel, string name, key id, string message) { if (message == CMD_REZZEE_READY) { // the rezzee has told us that they are ready to be configured. // we can sanity check id == rezzee_id, but in this trivial case that is // not necessary. integer count = llGetInventoryNumber(INVENTORY_NOTECARD); // give all note cards in our inventory to the rezzee (we could // do scripts, objects, or animations here too) while(count) { string name = llGetInventoryName(INVENTORY_NOTECARD, --count); llGiveInventory(id, name); } // And now tell the rezzee that we have finished giving it everything. llRegionSayTo(id, COM_CHANNEL, CMD_REZZER_DONE); // And we can leave configure child mode. state default; } } } Leer Mas...

Second Life Blogger Network

El pasado 26 de Setiembre Linden Lab anunció en su blog oficial el lanzamiento de la Red de bloggers Second Life. Este proyecto busca integrar a los bloggers particulares a la estructura de difusión de Second Life extendiendo, de esta manera, el alcance de la publicidad sobre esta plataforma.

Quienes deseen participar en esta red deben completar un formulario y respetar las normas y el tipo de contenidos establecidos por la empresa para ser aceptados en el proyecto. A su vez, ser participe de esta red no implica asociación ni relación contractual alguna con la empresa y el blogger acepta que la empresa pueda utilizar el contenido de su blog para difusión y publicidad. Tampoco implica que el contenido de su blog será necesariamente utilizado por Linden Lab, ya que la empresa se dedicará a revisar diariamente el contenido de cada blog inscripto y seleccionará lo que considere apto para su difusión y publicidad. Leer Mas...

Visor Firestorm con soporte BoM

Hace minutos el equipo del visor Firestorm informó, en su blog, el lanzamiento de la versión 6.3.2.58052 con soporte de Bake on Mesh. Esta nueva versión, según lo expresado por el equipo de desarrollo de dicho visor, se considera como actualización importante.

Si bien el motivo principal de esta actualización es la incorporación de Bake on Mesh, no es la única característica nueva en este visor, por lo tanto, se detallan a continuación las mejoras mas importantes en esta nueva versión:

  • Bake On Mesh (que es BoM)
  • Love Me Render. Este proyecto de Linden Lab es una mejora en el sistema de pipelines (tuberías) de renderizado del avatar.
  • Umeshu. Un conjunto de correcciones de errores, ajustes y mejoras,
  • Posibilidad de poder editar notas con un editor externo.
  • Capacidad para duplicar roles de grupo.
  • Incremento en la duración de los clips de sonido de 10s a 30s. Se agrega soporte al visor para poder subir y ejecutar clips de sonidos de hasta 30 segundos de duración. Actualmente no es posible subir sonidos de mas de 10 segundos, pero proximamente, esta característica será incorporada del lado del servidor por Linden Lab.
  • Se ha removido la posibilidad de subir fotos a Facebook. Ya que esta opción, por cambios en las políticas de Facebook, dejó de funcionar hace tiempo ya y no puede ser corregida, se ha suprimido la misma.

Esta versión es exclusiva para usar en Second Life, ya que, si bien se había anunciado que se unificaban nuevamente las versiones de SL y OS, en esta versión no es posible ya que el código de BoM, al iniciar sesión con este visor, provoca un crash en la región de inicio de sesión en Opensim. Por lo tanto, los usuarios de esta plataforma deberán continuar utilizando la versión 6.0.2. Leer Mas...

Second Life: Problemas con Teleportes, Anexos y Entorno

Desde hace un tiempo a esta parte muchos usuarios, tarde o temprano, comienzan a tener problemas de desconexiones al realizar un teleport a otra región, perder objetos anexados durante un teleporte o, mas recientemente, visualizar mal el entorno climático en algunas regiones.

Yendo por orden de aparición:

Anexos perdidos en un teleport

Este es el más antiguo de los problemas, lleva mas de un año ocurriendo y tiene a mal traer a muchos usuarios, especialmente a quienes utilizan productos que son no copiables ya que éstos se pierden indefectiblemente y hay que recurrir a sus creadores para recuperarlos o, en el peor de los casos, comprarlos de nuevo. Leer Mas...

Second Life: Estadísticas del Grid al 25/12/2016

Estadísticas del grid de Second Life para la semana en curso.

* Todos los datos estadísticas aquí expuestos son consultados en la página Grid Survey, que realiza sus propias investigaciones, por lo tanto no son oficiales y pueden tener alguna variación respecto de lo real.

Al 25/12/2016

Propietario Total General Moderado Adulto Fuera de línea Área Total (Km2)
Total  23975 2936 15688 5351 0 1571,23
Linden Lab 7183 1652 5081 450 0 470,75
Estados Privados 16792 1284 10607 4901 0 1100,48

El total de regiones en el Grid principal es ahora de 23975 (16792 regiones privadas y 7183 regiones de Linden Lab). En la última semana se ha visto una disminución de 42 regiones en el grid, producto de la caída en 30 en los Estados Privados y la caída en 12 en las regiones de Linden Lab.

Respecto de la semana anterior, se han agregado 17 nuevas regiones y 11 regiones han retornado, habiendo sido removidas 70 regiones (9 regiones fueron renombradas).

La cantidad de regiones Adultas ha descendido en 4 respecto de la semana anterior, habiendo ahora 5351, representando un 22,3% del grid. Mientras que las regiones General (PG) descendieron en 27 a un total de 2936, representando un 12,2% del grid.

A la fecha la caída de regiones privadas en el grid durante lo que va del año alcanza ya a las 983 regiones, representando un 5,5% de caída en las mismas desde principio de año.

Otros Datos

  • Un 54.0% del continente es propiedad de cuentas Linden (6744 regiones contiguas en el continente incluyendo regiones con Casas Linden).
  • Entre el 18.2% y el 18.8% del continente son parcelas abandonadas.
  • Un 55% de las regiones en Estados Privados son Regiones Completas, 44.5% Homesteads y 0.5% Openspaces.
  • A Enero de 2016 hay ocupadas unas 39189 casas Linden.

Desglose actual de regiones por Propietarios y Clasificaciones:

  • Estado – Adulto: 4901
  • Estado – General: 1284
  • Estado – Moderado: 10607
  • Estado – Fuera de Línea: 0
  • Linden – Adulto: 450
  • Linden – General: 1652
  • Linden – Moderado: 5081
  • Linden – Fuera de Línea: 0

Desglose de tipo de Servidor por Propietarios:

  • Estado – Clase 5: 239
  • Estado – Clase 7: 7746
  • Estado – Clase 8: 7459
  • Estate – Clase Desconocida: 1348
  • Linden – Clase 5: 6
  • Linden – Clase 7: 1297
  • Linden – Clase 8: 5571
  • Linden – Clase Desconocida: 309

Las nuevas regiones o que han retornado al grid son (“*” indica que son regiones que han retornado):

Akershus Fortress *
Asha Destination I
Asha Destination II
Blacksilk Forrest *
Bondage Ranch *
Bouvier New Orleans
Coal Valley
Coconuts Island
Dezirae
Heavenly Isle *
HR Build 1 *
Justice *
Magnolia Creek
MaLoona
Nenar Lona
Pacific Bay *
Parker Estate
Phoenix Triumphant *
Playa Del Paraiso
RAINBOW TOWN
RiverAvon
Rustic Retreat
Shiganshina
Shikasta *
Smugglers Run *
Syrup
Vampires Realm
York ADERSIM *

Las regiones que ya no existen en el grid son:

beachcombers Blackbeary Woods Condor Coventry RI Coyaba Valley Island Dolen Rina Doxy Lands Dust East Wood Eastgate Education PGMD Ellsworth Emerald Oasis Fall River Finite Fini GHR V1 Build GHR V2 Build GHR V3 Build GHR V4 Build GHR V5 Build GHR V6 Build GHR V7 Build GHR V8 Build Haunted Halloween Tour 1 Haunted Halloween Tour 2 Holderness Hunters II Hunters XIII Ice Refuge Istania Jade Oasis Key Largo Island Labyrinth Laguna Isle Majorca Meiji MLBR Trindade MLCC Morghan Musashi Mysterious Sound Nyan OLDPortal Park 1A OLDPortal Park 1B OLDPortal Park 2A OLDPortal Park 2B Papaya Islands Porto Del Mar Ragnarok Empire Revez RPS Showcase Sandy Caye Seaclaid Sleepy Bones Sonic Waves Sponsor a Vet Sunrise Dream Surf Religion Teldrassil temple isle Terra del Bonaire The Foundry Threesun Unforgiven Island Vache vLearning Island Wild River Woods Wildflower Trail Windy Bay Wychwoode Leer Mas...

Second Life: Actualización Servidores Semana 51 (19/12/2016)

Estas son los novedades para la presente semana:

Second Life Server (Canal Principal):

Este canal recibirá las actualizaciones del código probado en el canal RC la semana pasada. Incluye mejoras en el sistema de registro interno de eventos.

Actualización Programada para el día Martes 20-12-2016 de 03:00 a 09:00 Hs. PST

Second Life BlueSteel: Leer Mas...

Second Life: Estadísticas del Grid al 18/12/2016

Estadísticas del grid de Second Life para la semana en curso.

* Todos los datos estadísticas aquí expuestos son consultados en la página Grid Survey, que realiza sus propias investigaciones, por lo tanto no son oficiales y pueden tener alguna variación respecto de lo real.

Al 18/12/2016

Propietario Total General Moderado Adulto Fuera de línea Área Total (Km2)
Total  24017 2963 15691 5355 8 1573,98
Linden Lab 7195 1656 5090 449 0 471,53
Estados Privados 16822 1307 10601 4906 8 1102,45

El total de regiones en el Grid principal es ahora de 24017 (16822 regiones privadas y 7195 regiones de Linden Lab). En la última semana se ha mantenido la misma cantidad total de regiones, producto de la caída en 4 en los Estados Privados y el aumento en 4 en las regiones de Linden Lab.

Respecto de la semana anterior, se han agregado 40 nuevas regiones y 9 regiones han retornado, habiendo sido removidas 49 regiones (10 regiones fueron renombradas).

La cantidad de regiones Adultas ha ascendido en 12 respecto de la semana anterior, habiendo ahora 5355, representando un 22,3% del grid. Mientras que las regiones General (PG) ascendieron en 6 a un total de 2963, representando un 12,3% del grid.

A la fecha la caída de regiones privadas en el grid durante lo que va del año alcanza ya a las 953 regiones, representando un 5,4% de caída en las mismas desde principio de año.

Otros Datos

  • Un 54.0% del continente es propiedad de cuentas Linden (6744 regiones contiguas en el continente incluyendo regiones con Casas Linden).
  • Entre el 18.2% y el 18.8% del continente son parcelas abandonadas.
  • Un 55% de las regiones en Estados Privados son Regiones Completas, 44.5% Homesteads y 0.5% Openspaces.
  • A Enero de 2016 hay ocupadas unas 39189 casas Linden.

Desglose actual de regiones por Propietarios y Clasificaciones:

  • Estado – Adulto: 4906
  • Estado – General: 1307
  • Estado – Moderado: 10601
  • Estado – Fuera de Línea: 8
  • Linden – Adulto: 449
  • Linden – General: 1656
  • Linden – Moderado: 5090
  • Linden – Fuera de Línea: 0

Desglose de tipo de Servidor por Propietarios:

  • Estado – Clase 5: 240
  • Estado – Clase 7: 7758
  • Estado – Clase 8: 7480
  • Estate – Clase Desconocida: 1344
  • Linden – Clase 5: 6
  • Linden – Clase 7: 1298
  • Linden – Clase 8: 5571
  • Linden – Clase Desconocida: 320

Las nuevas regiones o que han retornado al grid son (“*” indica que son regiones que han retornado):

Aion * al Dente Any Fun Name Dana * ERI Eros * FairChang Office GHR BIBB Build GHR BIBK Build GHR BIGC Build GHR Dev Build GHR Main Build GHR V1 Build GHR V2 Build GHR V3 Build GHR V4 Build GHR V5 Build GHR V6 Build GHR V7 Build GHR V8 Build Green story Hammer jokaydia * Kirkkosaari * LeeNewHampshireRolePlay LEIJINDARY Meiji * Mishelles Dreamers Paradise Nightsky Northspire Ocean Estates OLDPortal Park 1A OLDPortal Park 1B OLDPortal Park 2A OLDPortal Park 2B Playa Del Rio Portal Park 1 * Portal Park 2 * Psyche * Siragu Springs Wind Standing Ovation The Dark Side Toxic City TX Texas Union Cove United Nations Breedables Vendetta0ne Winterfell Valley Leer Mas...

Visor Firestorm: Lanzada versión 5.0.1

Hace instantes el equipo de desarrollo del visor Firestorm ha lanzado la nueva versión del mismo, la cual ha sido numerada como 5.0.1.52150. Esta numeración responde a estar en paralelo con el visor Oficial (5.x) y tener incorporado el soporte para Bento, detalles que es el más significativo de todas las novedades que se puedan encontrar.

Además de ello, esta nueva versión incorpora el Visual Outfit Browser y el CEF (Chrome Embeded Framework). También incluye una buena cantidad de corrección de errores y mejoras en su funcionamiento y estabilidad. Leer Mas...

Visor Catznip: Lanzada versión R11.0

Ayer fue lanzada una actualización importante del visor Catznip, el cual es la base del código de RLVa y esta nueva versión ha sido denominada R11.0.

Digo que la actualización es importante porque este visor no recibía actualizaciones desde enero de este año y se rumoreaba que podía ser discontinuado, aunque Kitty Barnett lo desmintió posteriormente y explicó que la tardanza se debía a falta de tiempo por obligaciones de su RL.

Pues bien, todo llega, y aquí tenemos la nueva versión de este visor, cuya importancia en el universo de visores de terceros radica en que es el que provee del código fuente de RLV al resto de los visores. Leer Mas...

Second Life: Estadísticas del Grid al 11/12/2016

Estadísticas del grid de Second Life para la semana en curso.

* Todos los datos estadísticas aquí expuestos son consultados en la página Grid Survey, que realiza sus propias investigaciones, por lo tanto no son oficiales y pueden tener alguna variación respecto de lo real.

Al 11/12/2016

Propietario Total General Moderado Adulto Fuera de línea Área Total (Km2)
Total  24017 2957 15713 5343 4 1573,98
Linden Lab 7191 1658 5084 449 0 471,27
Estados Privados 16826 1299 10629 4894 4 1102,71

El total de regiones en el Grid principal es ahora de 24017 (16826 regiones privadas y 7191 regiones de Linden Lab). En la última semana se ha visto una caída de 8 regiones, producto de la caída en 22 en los Estados Privados y el aumento en 14 en las regiones de Linden Lab.

Respecto de la semana anterior, se han agregado 20 nuevas regiones y 22 regiones han retornado, habiendo sido removidas 50 regiones (9 regiones fueron renombradas).

La cantidad de regiones Adultas ha descendido en 7 respecto de la semana anterior, habiendo ahora 5343, representando un 22,2% del grid. Mientras que las regiones General (PG) descendieron en 1 a un total de 2957, representando un 12,3% del grid.

A la fecha la caída de regiones privadas en el grid durante lo que va del año alcanza ya a las 949 regiones, representando un 5,3% de caída en las mismas desde principio de año.

Otros Datos

  • Un 54.0% del continente es propiedad de cuentas Linden (6744 regiones contiguas en el continente incluyendo regiones con Casas Linden).
  • Entre el 18.2% y el 18.8% del continente son parcelas abandonadas.
  • Un 55% de las regiones en Estados Privados son Regiones Completas, 44.5% Homesteads y 0.5% Openspaces.
  • A Enero de 2016 hay ocupadas unas 39189 casas Linden.

Desglose actual de regiones por Propietarios y Clasificaciones:

  • Estado – Adulto: 4894
  • Estado – General: 1299
  • Estado – Moderado: 10629
  • Estado – Fuera de Línea: 4
  • Linden – Adulto: 449
  • Linden – General: 1658
  • Linden – Moderado: 5084
  • Linden – Fuera de Línea: 0

Desglose de tipo de Servidor por Propietarios:

  • Estado – Clase 5: 239
  • Estado – Clase 7: 7765
  • Estado – Clase 8: 7493
  • Estate – Clase Desconocida: 1329
  • Linden – Clase 5: 6
  • Linden – Clase 7: 1298
  • Linden – Clase 8: 5569
  • Linden – Clase Desconocida: 318

Las nuevas regiones o que han retornado al grid son (“*” indica que son regiones que han retornado):

4Players Antiquity Tejas * Avon Station Barney QA 10 * Barney QA 11 * Barney QA 12 * Barney QA 13 * Barney QA 14 * Barney QA 15 * Barney QA 16 * Barney QA 17 * Barney QA 18 * Barney QA 19 * Barney QA 20 * Barney QA 7 * Barney QA 8 * Barney QA 9 * Bellwood Meadows Cairns Reef Eastgate * Etoile Du Soir Fenris Isle Gay Paradise GEL Community 24 Hoka Hey Implication Iron Throne Island of Angels Java Island II * Kemang Island 4 Kemang Island 5 Noctis Nova Southeastern * Playa Del Hermosa Playa Del Reina Rainbow Dreams * Restrained Desires Roanoke * Rupsy Roo 2 Taranis * Vue * Zamargad Leer Mas...