Commit Graph
129 Commits
Author SHA1 Message Date
lotodore 9ed8368700 Moving server ban code to a separate class, in order to prepare time-limited bans. 2009-06-18 20:16:22 +00:00
lotodore eefbd9e79f Some minor polishing. 2009-06-17 21:22:01 +00:00
lotodore 4b5d78af81 The client network code was rewritten to use boost::asio. Some optimization is still required, and some code files can now be removed. 2009-06-14 22:07:41 +00:00
lotodore 6269b94db1 Properly restarting lobby timers. 2009-06-12 16:04:58 +00:00
lotodore 3b25e18fde Rewriting boost asio timer stuff. (Did I mention I dislike the asio "cancel" semantics?!). TimerManager is no longer used. Should be stable now, but might leak some memory (needs further testing). 2009-06-12 15:48:34 +00:00
lotodore c8594e8e7b Canceling asio timers has bad semantics, and causes loads of trouble. Therefore, cancelled timers are simply marked as such, and the asio callback is silently ignored. This fixes several crashes, if players were removed from a game due to an error, because some timers were not cancelled. *sigh* This one took a lot of nerve. 2009-06-07 23:25:13 +00:00
lotodore 5f3369432a Rewriting sender yet again to fit the new asio design. Polling for new send data is no longer needed, this also reduces lag. 2009-06-07 08:51:43 +00:00
lotodore 55bd832955 Fixed network game termination. 2009-06-04 22:13:52 +00:00
lotodore 8005cc82c6 Fixed server termination crash. However, network games are still not properly terminated. 2009-06-04 20:37:18 +00:00
lotodore 47648392fb Use boost::asio timer callbacks instead of self-made ones. There are still some termination issues (terminating a network game will result in a crash). However, it should be quite effective now with a large number of users. 2009-06-01 19:49:16 +00:00
lotodore cee2d787d0 Adding some error handling. Some is still missing. 2009-06-01 10:23:44 +00:00
lotodore 24abedbbab Renaming class ServerGameThread to ServerGame. 2009-05-31 20:14:46 +00:00
lotodore f2bd0c6111 ServerGameThread is no longer a thread. 2009-05-31 19:45:20 +00:00
lotodore b48209a5e4 Termination of games is now working. Error handling is still missing in some cases, and it is very slow if there are a lot of players, but other than that all is fine :-). 2009-05-31 19:11:59 +00:00
lotodore 2952f0b85d Fixing some compiler warnings and single-threaded game issues. Note: The server currently crashes when trying to start a game. 2009-05-31 11:00:33 +00:00
lotodore 08ed5e0496 Almost complete rewrite of server game state due to porting the network engine to asio. Server is still broken in a lot of ways. A game is no longer run in a separate thread (but this change is still incomplete). 2009-05-30 22:20:40 +00:00
lotodore 8ab2fed1a2 More restructuring. Still broken. 2009-05-10 22:21:20 +00:00
lotodore 2541f28ff2 Sender thread is no longer a thread (part of boost::asio integration). Warning: Network games are still broken! 2009-05-10 17:53:37 +00:00
lotodore d258bc25d0 Server accept thread is no longer a thread. 2009-05-10 14:57:51 +00:00
lotodore d7ca4d67b5 Fixing compiler errors. Still broken in terms of network functionality. 2009-05-06 21:09:58 +00:00
lotodore 60b5d45c53 Adopting changes from asio branch. Currently broken. 2009-05-04 21:11:29 +00:00
lotodore bdb6e9f22f Enable logging of avatar uploads 2009-04-25 18:33:01 +00:00
lotodore 992dd4b618 Adding backward compatibility for 0.6 clients. They cannot join games with > 7 players. 2009-04-11 12:32:54 +00:00
lotodore bd2aece3da Small improvements concerning ban texts. 2009-04-11 11:14:12 +00:00
lotodore 33001626c1 Adding IP address bans. 2009-04-11 11:03:22 +00:00
lotodore f8b1123cc5 Adding server irc management request to show the ip address of a user (in order to ban the user from the server). 2009-04-10 21:54:59 +00:00
lotodore 69f3b49ab2 Adding support for listing and removing single bans. 2009-04-10 21:04:08 +00:00
lotodore aef82cef0e Preventing exception in boost::regex. 2009-04-09 22:56:22 +00:00
lotodore 5fbc56cfc2 Fixed another merge error. 2009-04-08 17:05:58 +00:00
lotodore a3a7a7879e Fixing branch problem. 2009-04-07 22:23:29 +00:00
lotodore e59e50c10b Changes to allow regex bans. Might need updating of pro-files due to boost::regex dependency. 2009-04-07 22:04:38 +00:00
lotodore 13f70f85a7 Adding debug log entry. 2009-03-23 22:30:50 +00:00
lotodore f2ec0b1ef4 Detect avatar file type for download. Not fully working yet. 2009-03-22 00:39:25 +00:00
lotodore 16decacb6b New configuration options for automatically uploading the avatars to an external server. 2009-03-01 23:09:14 +00:00
lotodore e5ecc5d133 Trying to fix server termination issue. 2009-02-27 22:09:03 +00:00
lotodore 8f59de0c62 Proper destruction of sockets (crashed previously). 2009-02-01 17:21:02 +00:00
lotodore c998edf219 Fixed cleanup issue - the previous version had kind of a resource leak. 2009-01-31 22:20:08 +00:00
lotodore e0ff6db98e Create I/O service object in sender thread. 2009-01-26 20:57:39 +00:00
lotodore f2c3b2b723 Fixed boost asio stuff. Now working but probably some polishing required. 2009-01-25 21:56:43 +00:00
lotodore 3c820445c6 Fixed missing completion call issue. However, boost::asio now automatically closes the socket. This cannot be disabled. So the next step is to use the boost::asio socket class for the session and everywhere else. 2009-01-25 21:12:33 +00:00
lotodore 17377f5a6b New boost::asio based sender thread. Does not work on windows yet, because the completion routine is never called. No idea why not. 2009-01-25 20:19:09 +00:00
lotodore 29061b661c Fixed one thread per session implementation. Kind of. Still seems to have a handle leak on Windows. However, it does not scale at all and needs to be reverted. It won't even handle 500 players with 500 games on a dual core high end machine. 2009-01-11 20:12:26 +00:00
lotodore d72cdb6873 One sender thread per client. Requires loads of resources. Kind of hacked, because the internal dependencies are very ugly now. Requires loads of testing. A problem might be the last packet sent by the server to a specific client before closing the connection, for example an error message. It might never even reach the client, because the sender thread is terminated before. I have not yet found a good way to fix this. 2009-01-07 21:52:16 +00:00
lotodore 606158c4f0 Preparing new send engine. 2009-01-07 19:37:05 +00:00
lotodore 4515996959 Yet another (important) network game fix. Last fix was not sufficient. 2009-01-03 20:40:14 +00:00
lotodore 23c3ae3849 Enable sending of a global message box through the irc bot, to inform clients about server reboots. 2008-12-26 16:47:14 +00:00
lotodore 4f48fdbe2a Allow the server to send a global notice to all players (for example if a server reboot is going to happen). Does not work with current client version 0.6.3. 2008-12-26 13:50:09 +00:00
lotodore 269eab4774 Fixed lobby update after leaving a game. 2008-05-16 16:46:45 +00:00
lotodore d1e0e5e30d The subscribe/unsubscribe lobby messages system has been integrated in the client. 2008-05-12 10:50:19 +00:00
lotodore 0ef69297d1 Server support for unsubscribing/resubscribing of lobby messages. Not yet used by the client. 2008-05-11 21:41:30 +00:00