[bfprog] GameSpy v3 (BF2) Parsing.....

EvilYoda EvilYoda at unholyplayground.com
Sun Jun 19 22:03:53 PDT 2005


Is this list rolling? Do we have any gamespy protocol hackers on here?

I've been implementing a gamespy query in java for BF2, and wow, I can't
believe they would implement it like that.....

One thing I noticed is that if the player name chunk spans packets it
truncates the name in the packet, and then repeats it in the next one.
It "marks" the name with a character, so far I have seen ? and > as the
markers.... So the way I've coded it is if I detect the player names
span packets, I assume the last name is always crap, and the first name
in the next packet needs to be fixed by dropping the first character.

The other thing I've noticed is a new data element called "skill_". Hmmm
What is this!? It seems to scale up with points, and I don't know if it
spans rounds or not but I'm thinking it is used to determine who wins
the commander when multiple people apply for it.

But finally after that last reach around, I have it working and the data
looks very clean...
Here is a dump:

   #                          Player Scoredeaths skill  ping  team
  0.                      [SO]Square    50     7    17    37     1
  1.                  ~MGDD~DraGon_X    46     5    22    53     1
  2.                       UNR...bab    32     6    15    64     2
  3.                           HABO3    29     4    13    45     2
  4.                         Raelorn    29     5    13    43     2
  5.                           nemui    26     8    12   157     2
  6.                          Dumboe    24     0    12    75     2
  7.                       Pawtucket    23     5     8    61     2
  8.                        NickD119    22     6     9    83     2
  9.                        warpig49    21     6     4    11     2
 10.                         g00bert    19    10     7    40     1
 11.                         Tiddles    18     2    10    26     1
 12.                         MiDWind    18     6     8    42     1
 13.                       NoxUmbrae    18     6     3    57     2
 14.                         biotron    17     5     7    93     2
 15.                     clantrashed    17     2     5    38     1
 16.                       MrGregorX    15     0     7    23     1
 17.                          rinker    12     5     8    79     2
 18.                      [RO]Itachi    12     3     5    76     2
 19.                        koban715    12     6     5    19     1
 20.                    JosephChrist    12     9     5    80     1
 21.                       Groovy247    12     7     2    88     2
 22.             Spork_for_President    12     0     8    33     1
 23.                    Cain[Medusa]    11     6     5    57     2
 24.                       idtakae86    11     7     4    29     1
 25.                         bushirw    10     2     6    61     1
 26.                         [X]Duke    10     1     5    14     1
 27.                      crispy_420    10     6     4    49     2
 28.                      unclesally    10     7     4    44     2
 29.                      BigBadBert     8     1     4    38     2
 30.                Isellcracktonuns     8     4     4    58     1
 31.                        HAL10000     8     9     3    74     1
 32.                         DomonKK     8     5    11    56     2
 33.                     Giunta_Core     7     7     4    36     1
 34.                      MiDMeJesse     7     8     2    39     1
 35.                       Jadan2151     6     4     3    59     1
 36.                        Romanian     6     5     2    24     2
 37.                         [11]Rex     6     6     2    37     1
 38.                          Idunno     5     2     2    83     2
 39.                 dan_the_fireman     5     8     2    62     1
 40.                         Piddles     5     6     1    31     1
 41.                           iscan     5     4     0    40     1
 42.                          kenzoi     4     2     2   167     1
 43.                          C3R3 at L     4     3     2    13     1
 44.                          FABIAN     4     2     1    18     2
 45.                           barks     4     3     1    70     1
 46.                    FaultySanity     3     6     2    78     1
 47.                        macky101     3     8     2    42     2
 48.              NaTuRal_BoRn-KILLA     3     2     1    36     1
 49.                 lobstah_johnson     3     8     1    37     1
 50.                          kydsid     2     3     1    96     2
 51.               WaffleDaLoveSauce     1     7     7    52     2
 52.                     angelssaint     1     4     2    78     1
 53.                      Druidchamp     1     5     2    91     2
 54.             tizondoan at yahoo.com     1     3     0    62     2
 55.                  revolution_347     1     7    70    32     1
 56.                          Kodsha     0     0     3    61     2
 57.                      [WMC]_RUSH     0     0     0    55     1
 58.                       AccobrA67     0     0     0    42     2
 59.             MajorMalfunction.AC     0     3     0    28     2
 60.                         Perseus    -3     1     0    26     2
 61.                     alexledroit    -4     3     1    53     2
 62.                         Tweaker    -5     4     2    60     2
 63.                       Warper123    -6     5     0    17     1

I plan on publishing the code later when I'm sure that more bugs have
been removed, etc.


More information about the BFProg mailing list