79644923

Date: 2025-05-30 05:18:11
Score: 1
Natty:
Report link

You could make your life a lot easier by creating the illusion that an agent touched an object by using a timer event rather than a touch_start or touch_end event. I tried to script a method for Corrade agents to interact with games in SL, but soon discovered that a lot of the older games used llDetectedTouchUV, so the only option available for the bot to touch (for most of the bot services and viewers) was whatever option occupied the center of the texture.

My solution was to create games that played themselves using a timer. When a non-bot was seated, the timer was set to 60 seconds to give the player a reasonable amount of time to make decisions and touch whatever needed to be touched on the board to complete their turn (after which, the turn was forfeited and the next player gained control of the board). When a bot was seated, the gaming script determined the next move, and the timer executed it after 10 seconds. If a seat was left unoccupied, the game ignored them and simply moved to the next occupied (bot or human) player playing the game.

SL physics, and interacting with objects using a mouse (instead of your hands) is very different than the way things work in RL. Sometimes giving the illusion of what you want a scripted agent (or a RLV participant) to do is more practical than scripting something to actually do it.

Reasons:
  • Long answer (-1):
  • No code block (0.5):
  • Unregistered user (0.5):
  • Low reputation (1):
Posted by: Edie