WarcraftReamls.com
  FAQFAQ    SearchSearch    MemberlistMemberlist    UsergroupsUsergroups   RegisterRegister 
  ProfileProfile    Log in to check your private messagesLog in to check your private messages    Log inLog in 
Maximum returned who results ~= 600?

 
Post new topic   Reply to topic    WarcraftRealms.com Forum Index -> WarcraftRealms Developers
View previous topic :: View next topic  
Author Message
Rhonority



Joined: 16 Nov 2006
Posts: 3

WR Updates: 0
Rhonority WR Profile

PostPosted: Thu Nov 16, 2006 9:33 pm    Post subject: Maximum returned who results ~= 600? Reply with quote

It seems to me that CensusStart pushes twelve SendWho() arguments into the queue and that limits the maximum number of characters per scan to 600. If I have misunderstood the CensusStart syntax, please let me know. As far as I know it's performing each of the following requests sequentially:

/who 1-5
/who 6-10
/who 11-15
... (6 omitted)
/who 50-55
/who 56-59
/who 60-60

I have found more than 50 level 60s online at one moment. My goal here is to collect an accurate and complete snapshot of characters on my server at any given moment. Am I misunderstanding the functionality or alternatively is there any chance of expanding the CensusStart function?
Back to top
View user's profile Send private message
DM.
Census Tester


Joined: 03 Oct 2005
Posts: 1155
Location: Toronto, Canada
WR Updates: 841,833
DM. WR Profile

PostPosted: Thu Nov 16, 2006 11:57 pm    Post subject: Reply with quote

The /who command has several properties of which Census takes advantage of:

/who [string[ string2...]] [num[-num2]] [r-"race"] [c-"class"] [z-"zone"] [g-"guild"]


If you enable the Verbose option you will see the exact commands that Census is sending to do the /who command.

So a command like:
/who 60-60 r-"Human" c"Mage"

Would be something that will show you all lvl 60 Human Mages online. If this fails then Census will proceed to do text string searches using predefined chars to find players that way. Census will do a /who 60-60. If more than 50 returns then it will proceed to do a more deeper scan of using the /who 60-60 r-"Human" command. If more than 50 return then it will then search by class name, and if more return then it will go through using text searches. But normally by now the results should be less than 50 and no need to go into text searches Smile

There is no limit to how much characters Census finds in each scan. And it should show you when its finished how many chars it finds.
_________________

Click my sig
Back to top
View user's profile Send private message
Hybuir
Gear Dependent Squirrel
Gear Dependent Squirrel


Joined: 06 Sep 2005
Posts: 1538
Location: Austin, TX
WR Updates: 2,634,634
Hybuir WR Profile

PostPosted: Fri Nov 17, 2006 12:48 pm    Post subject: Reply with quote

The method is redundant and it might find a characacter more than once, but ensures that all characters online are accounted for Smile
_________________

Back to top
View user's profile Send private message Visit poster's website AIM Address
Rhonority



Joined: 16 Nov 2006
Posts: 3

WR Updates: 0
Rhonority WR Profile

PostPosted: Fri Nov 17, 2006 3:57 pm    Post subject: Reply with quote

Could you point me to the part of the code where it pushes things into the job queue and the part where it evaluates the results and determines wether or not to pursue a more in depth search? It only seems to be doing the detailed search for level 60, and other level ranges with more than 50 people go unprocessed.

Thanks.
Back to top
View user's profile Send private message
DM.
Census Tester


Joined: 03 Oct 2005
Posts: 1155
Location: Toronto, Canada
WR Updates: 841,833
DM. WR Profile

PostPosted: Fri Nov 17, 2006 4:24 pm    Post subject: Reply with quote

While I'm no expert on Rollie's code lets just say that Census does in fact do those more deeper scans based on if any /who result returns more than 50 chars. I've seen it happen before.

Just try it yourself Smile

do some /who commands and see what comes up, then compare that to what Verbose is showing and what is returned. Should be the same results.
_________________

Click my sig
Back to top
View user's profile Send private message
Rhonority



Joined: 16 Nov 2006
Posts: 3

WR Updates: 0
Rhonority WR Profile

PostPosted: Fri Nov 17, 2006 4:39 pm    Post subject: Reply with quote

Yeah, I was wrong when I said it isn't performing more detailed searches when 50 results are returned on the within a level bracket. I am still curious where the code that performs those more detailed searches lives in the lua scripts.

I see now that it searched 5 levels, then breaks those down into 1-3 and 4-5, then breaks those down further into 1, 2, 3, 4, 5 and failing that searches each of those by race, then by race and class. However the code I see in the CensusStart function seems to just perform the initial 12 /who scans. Any further direction is appreciated. And thanks DM for the advice on the verbose mode, that clearly shows that the scans I think are being run are actually far more detailed.

-Rho
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    WarcraftRealms.com Forum Index -> WarcraftRealms Developers All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
WarcraftRealms.com  


Powered by phpBB © 2001, 2005 phpBB Group