Thread

Property Question (Sdk)

Property Question // Sdk

1  |  

tony m

May 31, 2005, 3:23am
I have a bot which keeps track of the cell sequences it receives for sectors in a small database.

When this bot sends these sequence numbers to the server (via aw_query), how will the bot be notified that an object has been deleted since it last queried for property in that area?

andras

May 31, 2005, 5:54am
[View Quote] I assume that your bot is not 7/24 online.
There is no method to get the deleted objects :(
The way it can be handled: if the actual sequence number differs from your recorded one, then re-query the whole cell.
So far I did not find any faster method (this is how Guardbot restarts itself).

--
Andras
"It's MY computer" (tm Steve Gibson)

tony m

May 31, 2005, 6:45am
[View Quote] Okay. So what I can do is when I detect (in CELL_BEGIN event) a different in sequence numbers from what the bot has recorded, it erases that whole sector from its property database and issues a query for that sector.

What does the AW browser do in this situation?

tony m

May 31, 2005, 6:51pm
[View Quote] > Okay. So what I can do is when I detect (in CELL_BEGIN event) a different in sequence numbers from what the bot has recorded, it erases that whole sector from its property database and issues a query for that sector.

No, that's actually going to be more of a hassle.

What I plan on having this bot do instead is in the CELL_BEGIN event, the bot will erase the cell from its property database. Any subsequent CELL_OBJECT events should fill it back up, and getting none would mean that the cell is empty.

andras

Jun 1, 2005, 6:24am
[View Quote] [View Quote] That is how Guardbot works :)

AW browser is doing a full sector query if the sequence number doesn't match AFAIK.

--
Andras
"It's MY computer" (tm Steve Gibson)

xelag

Jun 2, 2005, 9:07am
What happens is, say you have sequence number 25 for a given sector of
8x8 cells, and the world has 27 as latest sequence number in that
sector. Since the time you (hmm... your bot) got the # 25, two cells
have changed (or one cell twice). When you query and send sequence
number 25, the world will then send you the full updated information
only for the cells that have changed, so you only need to delete the
cell object info (in CELL_BEGIN) of the cell being updated, and refill
it with the new info in each CELL_OBJECT. But if you send sequence
number 0, the whole sector will be sent again. That is what xelagot
uses, it gives a choice of "use cache", loading its cache for the
sector and only updating changed cells, or not using cache and
updating the whole sector.

[View Quote] [View Quote]

1  |  
Awportals.com is a privately held community resource website dedicated to Active Worlds.
Copyright (c) Mark Randall 2006 - 2024. All Rights Reserved.
Awportals.com   ·   ProLibraries Live   ·   Twitter   ·   LinkedIn