The parser needs to be resetted when it is reused, as it stores the game it has found in the last parsed message. If a message from another game would be parsed here, it would fail. The parsers that are assigned to the games dont need to be reset, as each game has (and should have) its own parser. And when parsing for a specific known game, the game is passed as well, which would overwrite the stored game