{"type":"GameEvent","eventId":1,"serverSeq":1,"timestamp":"2026-01-27T12:00:30.0847521Z","actor":"f484f101","eventType":"PlayerJoined","payload":{"clientUuid":"f484f101","displayName":"SabOwner"},"clientSeq":0,"actionId":null}
{"type":"GameEvent","eventId":2,"serverSeq":2,"timestamp":"2026-01-27T12:00:32.2476254Z","actor":"fd87d7e2","eventType":"PlayerJoined","payload":{"clientUuid":"fd87d7e2","displayName":"SabPlayer"},"clientSeq":0,"actionId":null}
{"type":"GameEvent","eventId":3,"serverSeq":3,"timestamp":"2026-01-27T12:00:32.6752116Z","actor":"f484f101","eventType":"GameStarted","payload":{"impostorCount":1,"taskCount":3},"clientSeq":0,"actionId":null}
{"type":"GameEvent","eventId":4,"serverSeq":4,"timestamp":"2026-01-27T12:00:32.6817603Z","actor":"f484f101","eventType":"RoleAssigned","payload":{"clientUuid":"f484f101","role":"Impostor","tasks":null},"clientSeq":0,"actionId":null}
{"type":"GameEvent","eventId":5,"serverSeq":5,"timestamp":"2026-01-27T12:00:32.684651Z","actor":"fd87d7e2","eventType":"RoleAssigned","payload":{"clientUuid":"fd87d7e2","role":"Crew","tasks":[{"taskId":"task_0","name":"Opravit kabel","location":{"lat":50.0877873,"lon":14.4192354},"type":"MultiStep","durationMs":0,"steps":4},{"taskId":"task_1","name":"Zkalibrovat senzor","location":{"lat":50.0857063,"lon":14.4209226},"type":"Progress","durationMs":7870,"steps":1},{"taskId":"task_2","name":"St\u00E1hnout data","location":{"lat":50.08922328,"lon":14.4221628},"type":"Progress","durationMs":5552,"steps":1}]},"clientSeq":0,"actionId":null}
{"type":"GameEvent","eventId":6,"serverSeq":6,"timestamp":"2026-01-27T12:00:44.0335923Z","actor":"f484f101","eventType":"SabotageStarted","payload":{"sabotageId":"23e7a0e5","type":"CriticalMeltdown","initiatorId":"f484f101","deadline":"2026-01-27T12:01:29.0334606Z","repairStations":[{"stationId":"reactor_alpha","name":"Reaktor Alpha","location":{"lat":50.0860184,"lon":14.4211634},"repairDurationMs":3000},{"stationId":"reactor_beta","name":"Reaktor Beta","location":{"lat":50.0896588,"lon":14.4222687},"repairDurationMs":3000}],"requiredSimultaneousRepairs":2},"clientSeq":0,"actionId":null}
{"type":"GameEvent","eventId":7,"serverSeq":7,"timestamp":"2026-01-27T12:00:46.5510092Z","actor":"f484f101","eventType":"PlayerLeft","payload":{"clientUuid":"f484f101","reason":"Disconnected"},"clientSeq":0,"actionId":null}
{"type":"GameEvent","eventId":8,"serverSeq":8,"timestamp":"2026-01-27T12:00:46.567288Z","actor":"fd87d7e2","eventType":"HostChanged","payload":{"newHostId":"fd87d7e2","previousHostId":"none"},"clientSeq":0,"actionId":null}
{"type":"GameEvent","eventId":9,"serverSeq":9,"timestamp":"2026-01-27T12:00:46.572192Z","actor":"fd87d7e2","eventType":"PlayerLeft","payload":{"clientUuid":"fd87d7e2","reason":"Disconnected"},"clientSeq":0,"actionId":null}
{"type":"GameEvent","eventId":10,"serverSeq":10,"timestamp":"2026-01-27T12:01:29.040902Z","actor":"f484f101","eventType":"SabotageMeltdown","payload":{"sabotageId":"23e7a0e5"},"clientSeq":0,"actionId":null}
{"type":"GameEvent","eventId":11,"serverSeq":11,"timestamp":"2026-01-27T12:01:29.0430258Z","actor":null,"eventType":"GameEnded","payload":{"winningFaction":"Impostor","reason":"Kritick\u00E1 sabot\u00E1\u017E - meltdown","winners":[]},"clientSeq":0,"actionId":null}
