2020-10-05 12:52:01 -05:00
|
|
|
export default {
|
|
|
|
regex: /^\[([0-9.:-]+)]\[([ 0-9]*)]LogNet: Join succeeded: (.+)/,
|
2020-10-14 10:40:11 -05:00
|
|
|
onMatch: (args, logParser) => {
|
2020-10-05 12:52:01 -05:00
|
|
|
const data = {
|
|
|
|
raw: args[0],
|
|
|
|
time: args[1],
|
|
|
|
chainID: args[2],
|
|
|
|
playerSuffix: args[3],
|
2023-01-02 22:27:12 -06:00
|
|
|
steamID: logParser.eventStore['client-login'], // player connected
|
Player Connection/Disconnection Flow. cleareventStore caller
pending connection destroyed: error path for clients that fail to connect, required to cleanup connection state in this error case.
client-connected: Supersedes steamid connected, use base unreal engine client flow. Removes dependancy on EAC (broken as of squad 3.4). First step in resolving a new client connection. this gets us a connection id, steamid.
client-login: 2nd step in player connected flow, this setups the steamid into eventstore.steamid-connected.
playercontroller connected: gets us player controller. used in player connected flow.
player-connected: update to use new eventStore layout, now all players should always have suffix,steamid,controller. These are now also cached within the logparser for lookup. last step in player connected flow.
player-disconnected: uses new eventStore layout, marks players in eventStore.disconnected but doesn't remove cached players till map change; may be needed in cases with delayed logs, needs further testing. Broken as of Squad 3.4 due to EAC changes
steamid-connected: Removed in favor of client-connected, no longer works as of squad 3.4 due to EAC changes.
2022-11-09 19:20:50 -06:00
|
|
|
controller: logParser.eventStore['player-controller'] // playercontroller connected
|
2020-10-05 12:52:01 -05:00
|
|
|
};
|
|
|
|
|
2023-01-02 22:27:12 -06:00
|
|
|
delete logParser.eventStore['client-login'];
|
Player Connection/Disconnection Flow. cleareventStore caller
pending connection destroyed: error path for clients that fail to connect, required to cleanup connection state in this error case.
client-connected: Supersedes steamid connected, use base unreal engine client flow. Removes dependancy on EAC (broken as of squad 3.4). First step in resolving a new client connection. this gets us a connection id, steamid.
client-login: 2nd step in player connected flow, this setups the steamid into eventstore.steamid-connected.
playercontroller connected: gets us player controller. used in player connected flow.
player-connected: update to use new eventStore layout, now all players should always have suffix,steamid,controller. These are now also cached within the logparser for lookup. last step in player connected flow.
player-disconnected: uses new eventStore layout, marks players in eventStore.disconnected but doesn't remove cached players till map change; may be needed in cases with delayed logs, needs further testing. Broken as of Squad 3.4 due to EAC changes
steamid-connected: Removed in favor of client-connected, no longer works as of squad 3.4 due to EAC changes.
2022-11-09 19:20:50 -06:00
|
|
|
delete logParser.eventStore['player-controller'];
|
|
|
|
|
|
|
|
// Handle Reconnecting players
|
|
|
|
if (logParser.eventStore.disconnected[data.steamID]) {
|
|
|
|
delete logParser.eventStore.disconnected[data.steamID];
|
|
|
|
}
|
2020-10-05 12:52:01 -05:00
|
|
|
logParser.emit('PLAYER_CONNECTED', data);
|
Player Connection/Disconnection Flow. cleareventStore caller
pending connection destroyed: error path for clients that fail to connect, required to cleanup connection state in this error case.
client-connected: Supersedes steamid connected, use base unreal engine client flow. Removes dependancy on EAC (broken as of squad 3.4). First step in resolving a new client connection. this gets us a connection id, steamid.
client-login: 2nd step in player connected flow, this setups the steamid into eventstore.steamid-connected.
playercontroller connected: gets us player controller. used in player connected flow.
player-connected: update to use new eventStore layout, now all players should always have suffix,steamid,controller. These are now also cached within the logparser for lookup. last step in player connected flow.
player-disconnected: uses new eventStore layout, marks players in eventStore.disconnected but doesn't remove cached players till map change; may be needed in cases with delayed logs, needs further testing. Broken as of Squad 3.4 due to EAC changes
steamid-connected: Removed in favor of client-connected, no longer works as of squad 3.4 due to EAC changes.
2022-11-09 19:20:50 -06:00
|
|
|
logParser.eventStore.players[data.steamID] = {
|
|
|
|
steamID: data.steamID,
|
|
|
|
suffix: data.playerSuffix,
|
|
|
|
controller: data.controller
|
|
|
|
};
|
2020-10-05 12:52:01 -05:00
|
|
|
}
|
|
|
|
};
|