|
Faust Vollmar
llSetAgentSanity(FALSE);
Join date: 3 Feb 2007
Posts: 87
|
12-17-2008 01:15
Due to the Client's default setting of away mode being easily disabled, I've been trying to think of a good way to detect an idle agent.
However the best I can do, without the lag-inducing channel 0 listen, is reset the timer whenever a control event is fired.
AGENT_TYPING doesn't work as an alternative to channel 0, as disabling the anim prevents this flag from being set TRUE.
Does anyone have any good ideas to handle this?
Perhaps a greater question, does the sim in any way track time since an an agent was last active (movement, chat, other things)? And if it does, would a llAgentIdleTime(key Agent) function be possible?
|
|
Tabliopa Underwood
Registered User
Join date: 6 Aug 2007
Posts: 719
|
12-17-2008 03:47
Dont know about an actual AgentIdle() function. Be good though if there was.
A fun way to do it though, is to poke avatars if they been standing in the same place for a while. You just have a scripted guard that keeps an eye on your place. And when an avatar doesnt move of their volition after a time then your guard gives them a little bump every couple of minutes. And if after the 2nd or 3rd bump they still havent moved by themselves into a space that a person would naturally move to after being bumped, then the guard kills them and sends them home.
And if your guard gives the avatars a friendly llInstantMessage() or llWhisper() reminder before it pokes them and when it does poke them, and/or when you send them home, and just says something like "sorry about this but we trying to keep the place as lagfree as possible for everyone" then if you do send someone home who has been AFK for a while then they dont mind when you do. Because they know they can come back again as you put that in the message as well.
The adbots and/or minerbots which is what I think youre after here, arent going to know anyways. But it never hurts to be friendly even to bot owners. You just letting them know with the same friendly message to their bots that is probably a waste of their time and resources to target your place.
The same thing can be done with AFK campers. You just unsit them (if they been sat) and then poke them a bit, just to test if they are a bot, and kick them out if they are.
And when they do come to the attention of your guard then you can listen/deal with them directly by key id so is a bit less laggy that way.
You can get into a bit of an arms race sometimes with different botowners doing things like this but that can be fun as well. And you learn alot about bot behaviour. So its not all bad when you do this.
|