[bf1942] Log parsing..

Jon Wolberg jon at ecgnetwork.com
Fri Feb 13 17:00:48 EST 2004


I've been toying around with logging player name changes based on hashes as
well as reasons why a player was kicked.

http://bf1.ecgn.net/hash.php

Type in any player name, and it will give you all the aliases they play
under.  For example, type in "Weasel Meat" with no quotes.

Also,

http://bf1.ecgn.net/whywasikicked.php

This shows players the reason they were kicked based on BFSM logs.  For
example, type in "snipe" with no quotes and it will show you all the people
who match that name who were kicked/banned, why, when, on what map, and if
it was a timed ban when it will expire.


Jon Wolberg
Tech Support Manager
www.ECGNetwork.Com
----- Original Message ----- 
From: "Forrest Thiessen" <thiessen at alum.mit.edu>
To: <bf1942 at icculus.org>
Sent: Friday, February 13, 2004 4:54 PM
Subject: RE: [bf1942] Log parsing..


> I'm working on an XML log parser, with three goals in mind:
>
>   (1) To be used like BFSMLP (which I don't think is supported
>       any more) to read logs and write player stats information
>       into a MySQL database, which can then be displayed
>       via PHP or whatever.  The XML logs are considerably
>       richer in data than the BFSM logs that BFSMLP used,
>       so I will be able to have all kinds of interesting
>       detailed information available (for example, a plot
>       of ranges of sniper kill shots, players' favorite
>       weapons, etc.)
>
>   (2) To be able to implement real-time game monitoring
>       and implement real-time "supplemental rules": for
>       example, to kick players who use "inappropriate"
>       language in chat messages, or to kick
>       players who spawn camp (several ways that could
>       be done).
>
> If you just want to be able to suck in a .xml or .zxml log file and spit
> out all the chat messages, correctly attributed to the right players, my
> code can already do that (it correctly handles name-change events, and
> even handles players who disconnect and reconnect with a different name
> by matching up hash keys).
>
> Unfortunately, while XML logging in BF1942 v1.6 is light-years ahead of
> previous versions (it actually generates well-formed XML, for one
> thing!) it still leaves a few things to be desired: for example, console
> messages (ala game.sayall) are *not* logged, nor are there any events
> generated corresponding to player kicks, bans, votes, games pauses or
> unpauses, IP addresses, or several other things that really ought to be
> in them.  Nonetheless, all player chat *is* logged (thank you Andreas!),
> and all radio messages (e.g. F1-F1 = "Roger") are also logged, so the
> chat part of what you are asking for can easily be done.  (As an aside,
> as another person pointed out you can also get the chat messages from
> the BFSM log, which DOES show kicks, bans, etc. if they were executed
> via BFSM. . . however, BFSM makes no effort to track players by key hash
> or IP--it just tells you the chat message and the in-game name of the
> player who said it).
>
> My code is written using Perl and the XML::Parser::PerlSAX library; I
> expect to have an early version of it up and running within a couple of
> weeks, give or take, depending on how much time I can snag to finish it.
> My plan is to make it available to anyone who wants it once it reaches
> the point of being reasonably complete.
>
> What platform are you using?  I'm developing this using ActiveState
> Perl, so the end product can be either Perl code that can be run on
> Linux or Windows, or a stand-alone Windows binary executable.  If you
> are in a rush and you're on Windows, I could give you an executable now,
> but I'd prefer to get the rest of the basic functions in the code before
> I release that.
>
> --Forrest
>   thiessen at cyberscapearena.com
>
> -----Original Message-----
> From: James Gurney [mailto:james at globalmegacorp.org]
> Sent: Thursday, February 12, 2004 11:35 PM
> To: bf1942 at icculus.org
> Subject: [bf1942] Log parsing..
>
> I know at least on person on this list was working on a log parser..
> anyone got anything they'd be willing to share? Right now I'd like a way
>
> to view the chat log, but there's no simple way to do it since the text
> is linked by player ID, so it's more complex than the level of grepping
> and awking I'm up for. Ideally, it would be nice to have a perl script
> which, when passed a logfile, just outputs the chat log in a sort of IRC
>
> format:
>
> <luser1> tihs m4p is t3h suck!
> <luser2> i r 0wnz0r j00 biznatch3z!
> <luser3> OMG BS!
> <admin> You're all fucking banned.
>
> etc.. maybe including some events like kicking, banning etc.
>
> Anyone have anything like that they'd be willing to share?
>
> James
>
> -----Original Message-----
> From: James Gurney [mailto:james at globalmegacorp.org]
> Sent: Thursday, February 12, 2004 11:35 PM
> To: bf1942 at icculus.org
> Subject: [bf1942] Log parsing..
>
> I know at least on person on this list was working on a log parser..
> anyone got anything they'd be willing to share? Right now I'd like a way
>
> to view the chat log, but there's no simple way to do it since the text
> is linked by player ID, so it's more complex than the level of grepping
> and awking I'm up for. Ideally, it would be nice to have a perl script
> which, when passed a logfile, just outputs the chat log in a sort of IRC
>
> format:
>
> <luser1> tihs m4p is t3h suck!
> <luser2> i r 0wnz0r j00 biznatch3z!
> <luser3> OMG BS!
> <admin> You're all fucking banned.
>
> etc.. maybe including some events like kicking, banning etc.
>
> Anyone have anything like that they'd be willing to share?
>
> James




More information about the Bf1942 mailing list