quisquous/cactbot

Log Anonymizer removes some fields from 38-lines

xpdota opened this issue · 1 comments

xpdota commented

Description

When I use the log splitter with the 'anonymize' feature enabled, 38-lines have some fields removed.

Without 'anonymize log' (anonymized by hand):

38|2023-10-06T21:10:15.2640000-07:00|1234ABCD|Player Name|005A5A1E|90282|90282|10000|10000|11||100.88|108.01|0.00|-2.95|0|0|0|29640030|4484BB3A|1234ABCD|0A0168|41F00000|E0000000|14016A|41F00000|E0000000|01FB|C1A00000|1234ABCD|0763|41C71056|1001AAAA|0A31|41D65E2E|1002BBBB|278de10f0e5fbd59

With 'anonymize log':

38|2023-10-06T21:10:15.2640000-07:00|10FF0003|Dodoqosu Neneqosu|005A5A1E|90282|90282|10000|10000|11||100.88|108.01|0.00|-2.95|0|0|0|29640030|4484BB3A|||||||||||||||||

If it's more effort to fully parse the 38-line to anonymize it fully, then I think the next most reasonable thing would be to truncate it two fields earlier. As it stands, it has a partial triplet of "|29640030|4484BB3A||", where the source entity ID of the buff should be in the empty field. The fields of each triplet are |<params, usually stack count>|||. By chopping it two fields earlier, it would effectively just remove all status effect information from the line, but keep the other information (hp, shield, etc).

I'm not exactly sure what the netlog defs values mean, but I think it might just be a case of changing firstUnknownField from 20 to 18?

At the top of the file (let me know if this needs more explanation):

  // Fields at this index and beyond are cleared, when anonymizing.
  firstUnknownField?: number;

And yeah, I think that seems reasonable to move it to 18 if 19-21 can contain ids.