# HG changeset patch # User nemo # Date 1292783625 18000 # Node ID fa19f05790836ff7edde7bf1fc8911e315f743b7 # Parent f85243bf890e5c9cb06e1e3a888d427dc0a07d24 Merge unc0rr's rearranging of MAP/MAPGEN messages, also his suggested increase of char limit to 20000 and addition of the "c" game message diff -r f85243bf890e -r fa19f0579083 gameServer/ClientIO.hs --- a/gameServer/ClientIO.hs Sun Dec 19 13:31:55 2010 -0500 +++ b/gameServer/ClientIO.hs Sun Dec 19 13:33:45 2010 -0500 @@ -14,7 +14,7 @@ listenLoop :: Handle -> Int -> [String] -> Chan CoreMessage -> Int -> IO () listenLoop handle linesNumber buf chan clientID = do str <- liftM BUTF8.toString $ B.hGetLine handle - if (linesNumber > 50) || (length str > 450) then + if (linesNumber > 50) || (length str > 20000) then writeChan chan $ ClientMessage (clientID, ["QUIT", "Protocol violation"]) else if str == "" then do diff -r f85243bf890e -r fa19f0579083 gameServer/HWProtoLobbyState.hs --- a/gameServer/HWProtoLobbyState.hs Sun Dec 19 13:31:55 2010 -0500 +++ b/gameServer/HWProtoLobbyState.hs Sun Dec 19 13:33:45 2010 -0500 @@ -101,8 +101,8 @@ toAnswer (paramName, paramStrs) = AnswerThisClient $ "CFG" : paramName : paramStrs - answerFullConfig = map toAnswer (leftConfigPart ++ rightConfigPart) - (leftConfigPart, rightConfigPart) = partition (\(p, _) -> p /= "MAP") (Map.toList $ params jRoom) + answerFullConfig = map toAnswer ((Data.List.reverse . Data.List.sort $ leftConfigPart) ++ rightConfigPart) + (leftConfigPart, rightConfigPart) = partition (\(p, _) -> p == "MAP" || p == "MAPGEN") (Map.toList $ params jRoom) watchRound = if not $ gameinprogress jRoom then [] diff -r f85243bf890e -r fa19f0579083 gameServer/Utils.hs --- a/gameServer/Utils.hs Sun Dec 19 13:31:55 2010 -0500 +++ b/gameServer/Utils.hs Sun Dec 19 13:33:45 2010 -0500 @@ -46,7 +46,7 @@ check Nothing = (False, False) check (Just (m:ms)) = (m `Set.member` legalMessages, m == '+') check _ = (False, False) - legalMessages = Set.fromList $ "M#+LlRrUuDdZzAaSjJ,sFNpPwtghb12345" ++ slotMessages + legalMessages = Set.fromList $ "M#+LlRrUuDdZzAaSjJ,sFNpPwtghbc12345" ++ slotMessages slotMessages = "\128\129\130\131\132\133\134\135\136\137\138" maybeRead :: Read a => String -> Maybe a