Commit Graph
90 Commits
Author SHA1 Message Date
lotodore cdea81b2ba Fixed sender again, as it did not work when sending errors. 2007-10-28 15:06:57 +00:00
lotodore fa7af40a49 Fixed a very nasty bug concerning the sender thread. SOCKETs were assumed to be kind of unique, but Windows tends to return the socket number of a socket which was just closed as new socket number in accept. This led to very strange behavior when the server was flooded with inits, because the sender thread still had entries for this socket number (which were not removed because they should just fail).
No longer use socket as key in maps, instead, use the session id. Only use the session id in the sender thread, "resolve" it to the socket only in the moment when it is needed. Outstanding requests will be detected to have an invalid session id then.
Also, as side effect, fixed an issue with two callback classes which were named the same and caused unexpected behavior.
2007-10-28 12:53:54 +00:00
lotodore e27be88942 Fixed bug when kicking during game. 2007-10-27 19:53:04 +00:00
lotodore 6b19b3291a Missing if to check for kick in server during game. 2007-10-27 19:48:31 +00:00
lotodore 07a0b8503d Fixed lobby update issue when computer players joined a game. 2007-10-21 18:36:56 +00:00
lotodore 4c56390dc7 Exceptions are now derived from std::exception and tell source code file and line. 2007-10-18 20:36:49 +00:00
floty 06a8fd5730 actual -> current ;) 2007-10-18 17:40:12 +00:00
lotodore 4f00333599 Show and update admin player of a game even when in lobby and not in the game. 2007-10-12 14:32:25 +00:00
lotodore 9663a225d5 Fixed two bugs concerning lobby player notifications: Game state is now set correctly after a game was finished and reopened, for players which are joining afterwards.
Computer players are now properly removed from finished games.
2007-10-11 21:15:04 +00:00
lotodore 253778bf30 Added error handling for networking stuff. Now checking the player action. 2007-10-10 22:21:24 +00:00
floty 64119ee680 minimumRaise for network 2007-10-09 21:56:01 +00:00
lotodore 310fadefdb Keep lobby open in the background during internet games. Show the lobby after the game finished. Re-open the game. Start and stop irc thread together with the client thread. 2007-10-08 20:14:44 +00:00
lotodore d11b35a1a7 Transfer small blind and minimum raise amount to client. 2007-10-07 22:49:07 +00:00
lotodore 0d0d8dc810 Synchronize on network game start, so that everyone has received all avatars and player names before the game starts. Store all computer players in a separate list on the server for name retrieval. 2007-10-07 21:23:37 +00:00
lotodore d16312111f Finally: User supplied avatars are transfered! They are stored on the server and clients request them if needed. Make sure the server has write access to the cache dir to make it work. 2007-10-07 18:46:40 +00:00
floty b437d8f7d2 firstRunGui 2007-10-07 11:12:02 +00:00
lotodore 4e649450b2 The server is now sending the highest set, and the client is no longer calculating it on his own. This should fix some bugs when someone goes all in with the big/small blind. 2007-10-06 14:16:36 +00:00
lotodore 076d44b0ae Pass on admin state if the admin leaves the network game, so that someone else can start the game. 2007-10-03 13:36:47 +00:00
lotodore 73c90d4106 Fixed a crash on game end of network games. 2007-10-02 18:26:22 +00:00
lotodore 0d1650e9a9 Fixed a bunch of compiler warnings. 2007-09-30 18:50:46 +00:00
lotodore 5edf38a6cb Fixed some msvc problems with libircclient. Fixed auto start boost timer issue. Fixed irc thread termination (this time for real). Using strdup and free on MSVC causes "heap corruption error" in debug mode - use _strdup instead in libircclient. 2007-09-30 13:15:52 +00:00
lotodore 879cac4bbc Don't use runningPlayerLists in server, as all in players are not in these lists. Fixed game state in lobby for players joining after a game started. 2007-09-29 22:50:57 +00:00
lotodore 3c88ba8bbe Game list in Lobby is now shown and updated even after joining or creating a game. Game updates will be sent by the server at all times (even during the game). 2007-09-29 14:05:41 +00:00
lotodore 78bf4820af Changed network code for new player lists. 2007-09-27 14:17:07 +00:00
lotodore e8eddd3b1b Show avatars in network games. User defined avatars are not transfered yet, but this is already prepared for integration. 2007-09-09 00:00:19 +00:00
lotodore d0898ed336 Now using openssl on windows instead of ms crypto api. Can't stand all these handles for the crypto api, openssl will be required later anyway. MD5 sums will be used when transfering avatars for efficient caching - avatars are identified by their MD5 sum.
Sorry for making it even harder to compile on windows...
2007-09-08 11:00:46 +00:00
lotodore 9d0edc5eee Major redesign: The game can not be left without disconnecting from the server. This happens if a player is kicked, if he wishes to leave, or for other reasons. Error packets from the server will always cause a disconnect, however.
If joining a game fails, there is a proper failure packet now.
2007-09-06 19:09:05 +00:00
lotodore 9f6bf5206e The checkbox "fill up with computer players" is now working (protocol has been changed to implement this). Lobby dialog is now also used after joining the game. Leaving game not possible yet. 2007-09-05 19:14:34 +00:00
lotodore 23d9bb71c3 Fixed some compiler warnings. Added error if game is running. 2007-09-03 18:05:39 +00:00
lotodore ecab6ed86b Fixed a really nasty receive bug (TCP only). Using SCTP would be so much better... 2007-09-03 16:35:45 +00:00
lotodore dde14654f9 Trying to add computer players in dedicated server. Not fully functional yet (names are not shown). 2007-09-02 20:59:16 +00:00
lotodore bd53403752 Major redesign: Using game ids and player ids in gui (associated with tree view items).
Player list of all network games is now dynamically updated in lobby (no polling, server sends events).
2007-09-02 16:36:52 +00:00
lotodore 56b24e09eb Major design change in network protocol: Player information is now requested by clients whenever it is needed. The server only sends player ids. The client has a cache with player information. 2007-08-26 22:41:37 +00:00
lotodore dc0212bbc9 Changed networking code for new postRiverRun. 2007-08-22 23:00:51 +00:00
lotodore 3a2f3255af More fixes. Using player name as base for game name now. Removing games which have no players left. Check collision of all player names on connect (kind of slow, but name needs to be unique). 2007-08-21 17:27:13 +00:00
lotodore 3e4b134faa Yessss. Dedicated server is working, with some effort you can now create and join a game (start console server on local pc, start clients and use menu item "internet game"). Make sure to use different player names, there are no error messages yet.
More than one game cannot be created yet, but this is only due to no name input. Lots of issues still, don't expect this to be stable.
2007-08-21 13:18:18 +00:00
lotodore 839a4f7112 More steps towards supporting multiple games per server. Player rights still broken, so starting the game is not possible. Games are not yet terminated after all players have left. 2007-08-21 12:34:33 +00:00
lotodore 95e5ee47cc Fixed multithreading issues when creating/joining a game. Sessions are now queued. 2007-08-20 22:55:39 +00:00
lotodore 67e81d1631 More work on the server code. Still broken. 2007-08-20 20:37:54 +00:00
lotodore 9d63df9218 More work on server redesign. Network mode still broken. 2007-08-20 15:30:22 +00:00