Lets learn about ticks
Ticks are a unit of time in cow, approximately one tick every 20 seconds.
If you just react to a tick with ##tick: then every tick your object will react no matter who is watching lets make a tree
lets make atree that falls every tick and make a sound, even if no one is in that locaiton to hear it:
##tick:runsub fellme;
##fellme:
say 'msg',"[$actor] falls and makes a sound";
Ticks are quite aggresive and use up a lot of processing time so it is preferable to use tickloc so our tree only fals when somone is there to hear it:
##tickloc:runsub fellme;
##fellme:
say 'msg',"[$actor] falls and makes a sound";
Only when a logged in player is in the same location will a tickloc happen, otherwise it is completely silent.
You may want to have some event that happens every hour or every day. You can use tickhour and tickday to do this.
Here is the tree, falling, and shouting out for anyone logged in to hear tat it has fallen:
##tickhour:runsub fellme;
##fellme:
msg 0,$actor,0,0,'msg',"You can here [$actor] falling in [$loc]";
Wether somone is logged in or not, every hour the tree will fall. If someone is logged in then nomatter where they are they will hear it.
We have the ablity in cow.pl to have an unlimited number and types of ticks using the mode tickhour(triggerword,qty,SQL_YMHDS)
triggerword is the 'tick{something} like tick15
qty is the number of them, be default 1
SQL_YNHDS is the sql pattern for years, months, days etc..
eg '%Y%m%d%H' = hourly
'%Y%m%d' = daily
'%Y%m%d%H%i' = mins
'%Y%m%d%H%i%s' = secs
tickhour('tick15',15,'%Y%m%d%H%i') is how to set off a 15 min tick.
When somone logs on and a tick is generated, as many ticks as would ahve elapsed f people had been logged on sinc the lat time, will be processed on one go (to catch up) so if noone has logged in for 3 hours, you will get 3 tickhours in quick sucession.
Since google and feedburner are continually logging in, this should not happen.