You are not logged in.

#1 26 Jul 2007 3:26 pm

Forensic
New Member
Registered: Jul 2007
Posts: 1

Some datas seem to be lost.

Hello there,

First time I post here, and sorry for my english, I will try to do my best to make you all understand my concern. First, I would like to thank this community for the hard work you've made about the authentication key and all. Second, I'd like to say good luck to MadHatter with his new house and company.

Now, my problem is that some data don't want to be extracted. Precisely, the captured silos, the hachimoto roadkills, the total score for the tunis harbor conquest map and the best score for all the titan map.

For example, if I take a look directly on the gamespy servers (http://stella.prod.gamespy.com/getplaye … p;mode=map) all the data are there, even the map data I can't retreive. If there's a topic related to this problem, it would be appreciated if you redirect me there.

I know I can get some map data from the getplayerinfo.aspx mode=award query, but they dont appeared to be the same numbers as in the map query.

The script I use is a script that a friend of mine gave me which he got it on your bf2 wiki I guess.

$url_map = 'http://stella.prod.gamespy.com/getplayerinfo.aspx?auth=' . $auth . '&mode=map';

$results_map = file($url_map);

if(isset($results_map) && is_array($results_map)) {
  $descriptions_map = explode("\t", $results_map[3]);
  $values_map = explode("\t", $results_map[4]);
 
  for($i_map=0;$i_map<count($values_map);$i_map++) {
    $v_map[$descriptions_map[$i_map]] = $values_map[$i_map];
  }
}

The $auth variable is set in another file which contain the auth script given on your bf2142 wiki.

Thanks for all the help you can give me.

Mike

Last edited by Forensic (26 Jul 2007 6:20 pm)

Offline

 

#2 28 Jul 2007 7:24 pm

MadHatter
Administrator
From: Dallas TX
Registered: Jun 2006
Posts: 529
Website

Re: Some datas seem to be lost.

thanks for the well wishes.

getplayerinfo, mode=map should return a list of map info (mtt-0-1, mtt-1-1, mtt-1-0... mwin-0-1, mwin-1-1, mwin-1-0... mlos-0-1, mlos-1-1, mlos-1-0... mbr-0-1, mbr-1-1, mbr-1-0... msc-0-1, msc-1-1, msc-1-0) where mtt is map total time, mwin is wins on map, mlos is losses on map, mbr is the best round on the map score and msc is the score on that map.  there is a listing of map identifiers (the #-# part) on the wiki.

I tried to test it just a second ago and check for myself but something wasn't working right, so I didn't get any useful results.

the silo capture stats I'd think would be in the getplayerinfo mode=titan (though 1ApRiL didn't add the lookup info for that on the wiki).

hachimoto kills should show up under getplayerinfo mode=veh

not sure I quite understand what

Forensic :

all the data are there, even the map data I can't retreive

means.


winsr may have a little more insight into this (where things come from).  I myself haven't built a full blow stats site or app, and there are a few here who have and should be able to give you a better answer than this.  hopefully they'll see it and respond.

Offline

 

#3 03 Aug 2007 12:12 pm

winsr
Extreme Member
Registered: Mar 2007
Posts: 90

Re: Some datas seem to be lost.

hey just looked at this post, and my name is on it.... lol

Ok now, i can see that your problem its not the query, since you can retrive the info and see it in raw format....

Now, as my friend here madhatter stated, there are several querys where you can retrive info from (asuming you know this already, since you looked at the wiki)

you should check your conversion process since it might be leaving some info behind.... specially now that the expansion is out, some players have it, and some dont, for the player that dont have it, the expansion info just wont show up when you query the server, and for the players that have them, it will show the values, which will result in diferent amount of field on the array you are filling up, and also some fields have been added to the querys, which will leave the last one out if you are counting the amount of fields as a fixed number insted by their stats names.

Getting more into coding here (ill go in VB2005 since i have it on that laguange)

when you query for, let say, titan data using something like..

Code:

"http://stella.prod.gamespy.com/getplayerinfo.aspx?auth=" & AuthCode & "&gsa=&mode=titan"

, you will receive a piece of information like the following

Code:

O
H    asof    cb
D    1185546616    client
H    pid    nick    tid    tas    tdrps    tds    tgr    tgd    tcd    tcrd    ttp    trp    cts
D    87112401    ICEMAN_Winsrp    0    3446    56    2644    241    144    273    27    893840    764    2391
$    126    $

now, here you can identify certain sections.... the O at first line its the begin of data block, and the $ at the end its the end of data block

you have 2 rows thats start with H, which are Headers, and 2 with D which are Data rows.

Each header line has its corresponding data line..... and its explained as follows:

First header :

#1 line asof = time in milliseconds from 1/1/1970
#2 cb = if you are asking as a client or a server

Second header line

#1 Pid = Player ID in the game (unique per player)
#2 nick = player name
#3 tid = not sure (new with patch 1.25, this can be causing for you not reading the last stats on this query, captured missile silos)
#4 tas = Titan attack points
#5 tdrps = Titan drops
#6 tds = Titan defend points
#7 tgr = Titan guns repaired
#8 tgd = Titan guns destroyed
#9 tcd = Titan components destroyed
#10 tcrd = Titan cores destroyed
#11 ttp = Time played in titan mode
#12 trp = Round played in titan mode
#13 cts = captured missile silos

Now, the same goes for vehicles, and some other querys, so check to see if you are looking for a fixed amount of fields in them, beacuse some fields have been added on the fly by DICE, and if you look for them on a fixed position your query wont work

in my case i do something like this

Code:

Case "tas" : TrvOvr.Nodes("titan").Nodes.Add(PlayerInfoArray(3, X, 0), "Titan Attack - " 
Case "tdrps" : TrvOvr.Nodes("titan").Nodes.Add(PlayerInfoArray(3, X, 0), "Titan Drops - " 
Case "tds" : TrvOvr.Nodes("titan").Nodes.Add(PlayerInfoArray(3, X, 0), "Titan Defend - " 
Case "tgr" : TrvOvr.Nodes("titan").Nodes.Add(PlayerInfoArray(3, X, 0), "Titan Guns Repaired - " 
Case "tgd" : TrvOvr.Nodes("titan").Nodes.Add(PlayerInfoArray(3, X, 0), "Titan Guns Destroyed - " 
Case "tcd" : TrvOvr.Nodes("titan").Nodes.Add(PlayerInfoArray(3, X, 0), "Titan Components Destroyed - "
Case "tcrd" : TrvOvr.Nodes("titan").Nodes.Add(PlayerInfoArray(3, X, 0), "Titan Cores Destroyed - " 
Case "ttp" : TrvOvr.Nodes("titan").Nodes.Add(PlayerInfoArray(3, X, 0), "Time Played - " 
Case "trp" : TrvOvr.Nodes("titan").Nodes.Add(PlayerInfoArray(3, X, 0), "Rounds Played - " 
Case "cts" : TrvOvr.Nodes("titan").Nodes.Add(PlayerInfoArray(3, X, 0), "Captured Missile Silos - "

Hope this helps you out a bit.... if you have another questions let me know

Offline

 



© 2003 - 2018 NullFX
Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License