           requester.send(JSON.stringify(msg))
           for player in game.players
             delete player["deck"]
-          lobby.emit('netrunner', {type: "games", games: games})
+          refreshLobby()
 
       when "do"
         try
           requester.send(JSON.stringify(msg))
         catch err
           console.log(err)
+
+sendLobby = () ->
+  if lobby and lobbyUpdate
+    lobby.emit('netrunner', {type: "games", games: games})
+    lobbyUpdate = false
+
+setInterval(sendLobby, 1000)
 
 # Express config
 app.configure ->

    socket.join(gameid)
    socket.gameid = gameid
    socket.emit("netrunner", {type: "game", gameid: gameid})
    lobby.emit('netrunner', {type: "games", games: games})

getUsername = (socket) ->
  ((socket.request || {}).user || {}).username

          socket.join(msg.gameid)
          socket.gameid = msg.gameid
          socket.emit("netrunner", {type: "game", gameid: msg.gameid, started: game.started})
          refreshLobby()
          if game.started
            requester.send(JSON.stringify({action: "notification", gameid: msg.gameid, text: "#{getUsername(socket)} joined the game as a spectator."}))
          else
