Jump to content
Cristine Grut

Restart Region and Time of Real Life affecting llSetTimer script

Recommended Posts

Does a Restart Region affect the activation time of an object that contains an llSetTimerEvent script? I created a script inside a single object to light on and light off lamps and torches using an llRegionSay that is listened to by lamp and torches containing llListen. The time to turn the lights on and off coincides with the real-time schedules determined by me. Script starts immediately with a touch (only owner) performed in one of the times I describe below. At the beginning of this script there is an llSetTimerEvent command. The initial event is an llRegionSay with command for lighton for objects that are listened to by objects. After that there is an llSleep inside the TimerEvent that lasts for 20 minutes keeping the lights on. After this there is another llRegionSay to turn off the lights that is received through llListen that is listened to by these objects. In addition, after the lights are off there is an llSleep that lasts 3 hours and forty minutes. After this last sleep the lights come on again. With this I have a shift of 4 hours. Always turn on the lights automatically at 03:50 AM, 07:50 AM, 11:50 AM, 03:50 PM, 07: 00 PM, 11:50 PM (Real Life Schedules) after I make the first touch at one of these times. Always, after 20 minutes the lights are off. This set always worked perfectly. Today after a restart region made by Liden Labs the lights start time (Real Life) was delayed about 40 minutes. This happened without my interference. It was all working perfectly for days, and it happened automatically after the Restart Region. This is the reason for my question.

 

Um Restart Region afeta o tempo de ativação de um objeto que contem um script  llSetTimerEvent ?  Eu criei um script dentro de um objeto único para light on  e light off   lampadas e tochas usando um llRegionSay que é escutado por lamp e tochas que contem llListen .   O horário para acender e apagar as luzes coincide com os horários da vida real determinado por mim.  O Script inicia imediatamente com um touch (only owner) realizado em um dos horários que descrevo abaixo.  No início deste script há um comando llSetTimerEvent .  O evento inicial é um llRegionSay com comando para lighton para os objetos que é escutado pelos objetos. Após isto existe  um  llSleep dentro do TimerEvent que dura 20 minutos mantendo as luzes acesas.  Após isto existe outro llRegionSay para apagar as luzes que é recebido através de llListen que é escutado por estes objetos.  Além disto, após as luzes estarem apagadas existe um llSleep que dura 3 horas e quarenta minutos. Após este último Sleep as luzes novamente acendem.  Com isto eu tenho um turno de 4 horas.  Acendem sempre as luzes  automaticamente  as 03:50 AM,  07:50AM, 11:50AM, 03,50PM, 07:PM, 11:50 PM (Horários da Real Life) depois que faço o primeiro touch em um destes horários. Sempre, após 20 minutos as luzes são apagadas.  Este conjunto sempre funcionou perfeitamente.  Hoje após um restart region feito pela Liden Labs o horário (Real Life) de start das luzes foi atrasado aproximadamente 40 minutos.  Isto aconteceu sem minha interferência.  Estava tudo funcionando perfeitamente durante dias, e aconteceu automaticamente após o Restart Region.  Esta é a razão da minha pergunta.

Edited by Cristine Grut

Share this post


Link to post
Share on other sites
4 hours ago, Cristine Grut said:

Does a Restart Region affect the activation time of an object that contains an llSetTimerEvent script?

Maybe.

But the timer event isn't really that precise anyway and of course, any script event may fail every now and again. For a function like this it is probably better to have the script check the clock for the times to trigger rather than rely on any internal timer.

Edited by ChinRey
Typo

Share this post


Link to post
Share on other sites

Yeah, aside from the region restart issue (which I don't know of), it's a bad idea to set a script to sleep for 3 hours. Let's say your region has a time delation of 0.5, your 3 hour sleep will last 6 hours long. Same for a timer. As ChinRey mentioned, better to check the actual time of day, in a timer event that runs every few minutes or so.

Share this post


Link to post
Share on other sites

   The result returned by llGetTime() is not affected by a region restart. Your script triggering its purpose at the real world time you desire could be adversely affected if that appointed time happens to fall within a sim restart cycle. 

Share this post


Link to post
Share on other sites

Thank you for your help. You made me think differently. With this I discovered another command to put in the script. I used llGetWallclock and now I'm testing.

Share this post


Link to post
Share on other sites

   If you are really concerned with a region restart affecting the accuracy or function of your script, you can use the changed event to test whether a restart happened during one of your scheduled times. changed(CHANGED_REGION_START)

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...