Commit Graph

106 Commits

Author SHA1 Message Date
Mark Vejvoda
9852325da6 - fixed Martiño Figueroa's name in all copyrights in source code
- added copyrights to files that were missing it
2011-12-14 07:40:48 +00:00
Mark Vejvoda
d33e1174a5 - bugfixes related to cppcheck report
- bugfixes found using valgrind (memory leaks)
2011-12-02 16:07:59 +00:00
Mark Vejvoda
03a7a72ef5 revert network code back to beta1 code 2011-11-27 05:27:50 +00:00
Mark Vejvoda
6c1c248d62 - attempt to fix network stuttering using a new multi-read single write mutex + semaphore class 2011-11-26 08:14:23 +00:00
Mark Vejvoda
ef125238e8 - continue trying to fix network issues 2011-11-25 22:38:25 +00:00
Mark Vejvoda
ff2252bf41 - rollback network changes 2011-11-25 21:56:36 +00:00
Mark Vejvoda
09241222ca - try to fix network stuterring 2011-11-25 21:30:32 +00:00
Mark Vejvoda
cbc4b0a8d3 another small tweak for cou use on unconnected sockets 2011-11-25 20:05:04 +00:00
Mark Vejvoda
82c9002d0a - attempt to further stabilize cpu usage and network reliability 2011-11-25 20:03:07 +00:00
Mark Vejvoda
4e882796a1 - a bold attempt to push the socket read threads to read continuously to see if this is:
a) stable without causing out of synch
b) not too hard on the CPU
2011-11-25 17:01:35 +00:00
Mark Vejvoda
2a8c712b1a - more socket performance changes
- auto complete now works also in IRC chat, and tabbing loops through all matched names.
2011-11-25 09:12:53 +00:00
Mark Vejvoda
e2135f76eb - attempt to fix network game play 'stuttering' 2011-11-25 05:37:55 +00:00
Mark Vejvoda
c6b7d3991e - attempt to fix network game play 'stuttering'
- bugfix for ip address gathering
- added tab autocomplete in chat windows for playernames
2011-11-24 23:15:21 +00:00
Mark Vejvoda
3cdf50c399 - a load of bugfixes including:
- proper handling of invalid client connects, after 6 bad attempts in a 60 second period of time the IP address is blocked from the current game
  - Added check for invalid particles for tileset objects
  - Made messagebox wider in game mod menu
  - Fixed numerous threading issues discovered while testing on my 8 core CPU
  - a Little bit of rendering cleanup
2011-11-23 08:00:09 +00:00
Mark Vejvoda
75e73ec85d - headless mode now properly uses selected slot of player 2011-10-01 08:04:30 +00:00
Mark Vejvoda
6c1f0186c6 - bugfix for network session id randomizing 2011-10-01 01:40:00 +00:00
Mark Vejvoda
b6dd5e266b - hardening the masterserver mode:
1.  missing maps, techs and tilesets should no longer crash the server and server will revert to last valid value for each (server must have the data)
2. clients now get truly unique session id's which fixes client admin mode when connecting to masterserver
2011-09-25 05:38:35 +00:00
Mark Vejvoda
4df997d0ca - initial work for a headless server. Currently this code allows you to launch a server with the commandline option: --masterserver-mode
The first client that connects to the server is the administrator and is able to change most settings and launch the game. Still lots of work to do but this is a start.
2011-09-24 07:46:56 +00:00
Mark Vejvoda
0a2c929fea - attempt #1 to support 'keeping' connected clients in the lobby when the map changes and slots would normally disconnect 2011-09-01 21:54:31 +00:00
Mark Vejvoda
57afc2d715 - phase 2 of cppcheck verbose fixes 2011-09-01 01:11:23 +00:00
Mark Vejvoda
af3c25850a - added extra mutex guard when closing connection slots to try to fix parallel close connections from causing errors. 2011-05-20 19:44:33 +00:00
Mark Vejvoda
93767d8ed8 - bugfix for trying socket connect when nic is down
- removed platform mismatch console printf
2011-05-17 00:21:51 +00:00
Mark Vejvoda
5d743f38db - changed Internet and Game lobby to display svn rev# instead of compile date/time 2011-04-30 01:05:53 +00:00
Mark Vejvoda
9cb1cd7bc8 - bugfixes related to multi-language text messaging 2011-04-05 20:19:25 +00:00
Mark Vejvoda
4a27e75891 - initial work to support multi-language text messages 2011-04-05 18:39:47 +00:00
Mark Vejvoda
085cb7d543 - added a cancel button when loading a game for the server user only
- updated client side loading screen to show who the server is waiting for
- moved some more strings into the english language file
2011-03-31 18:13:02 +00:00
Mark Vejvoda
3b56aa4475 - performance changes... (problem found by titi) most debug calls line are skipped when the debug flag is disabled even BEFORE getting into the handledebug method.
This improves performance VERY MUCH.
2011-03-28 03:54:23 +00:00
Mark Vejvoda
8f2613e216 - fixed changing username in the lobby 2011-03-26 16:51:26 +00:00
Mark Vejvoda
39bf1b986e - added new commandline option to convert folders of g3d models to use specified texture format
- added new utility methods and changed code to use them (like adding trailing slash on paths)
2011-03-13 08:23:43 +00:00
Mark Vejvoda
e070cf2cbb - added player status for network based games so players can indicate if they are ready to play or not 2011-03-11 11:11:46 +00:00
Mark Vejvoda
8ec58868dc - attempt to improve network performance (use separate mutexes for read / write operations) 2011-02-15 07:49:40 +00:00
Mark Vejvoda
cc973f3427 - bugfixes, some related to things pointed out by valgrind, some from opengl research and some for more stable operation 2011-02-12 07:34:32 +00:00
Mark Vejvoda
17e2a87890 - fixed one type of freeze in the custom menu
- some small opengl changes
2011-02-08 18:23:41 +00:00
Mark Vejvoda
c58e893047 - attempt to improve issues in the custom menu related to freezing
- modified debug UI display to support multi levels of UI debug info
- added more validations to mutexes
- improved client sockets to properly be setup as non blocking
2011-02-06 07:01:54 +00:00
Mark Vejvoda
0b4eef10c5 - added a very useful way to track mutex usage and performance timings of mutex locking to discover thread lock issues 2011-01-31 23:01:39 +00:00
Mark Vejvoda
e6f69a3839 - added code for server to tell clients which port to use for FTP 2011-01-15 18:56:03 +00:00
Mark Vejvoda
469cf14b92 - FINALLY fixed freeze with tomreyn's fuzzer and helped further stabilize mutexes and network messages in threads. 2011-01-13 08:17:18 +00:00
Mark Vejvoda
ccbd707ae1 - numerous bugfixes including fixing a slowdown introduced in a previous recent checkin.
- Added Network Text Message queue as this is required in some tricky cases
- added more logging of memory cleanup events
- added memory safe snprintf calls
2011-01-11 22:09:46 +00:00
Mark Vejvoda
227f39ccf9 - bugfixes for connection slot disconnect handling 2011-01-11 20:02:07 +00:00
Mark Vejvoda
1a7716dbdd - bugfix for disconnected clients 2011-01-11 19:16:48 +00:00
Mark Vejvoda
a7f6a592ff - try to better handle socket disconnects 2011-01-11 18:39:18 +00:00
Mark Vejvoda
e319c2cf62 - attempt to fix game freeze when lag causes game pauses 2011-01-11 08:45:58 +00:00
Mark Vejvoda
35925a98a6 - attempt to fix tomreyns socket fuzzer 2011-01-10 21:00:55 +00:00
Mark Vejvoda
896b1c308c - added a backtrace for gcc compiled binary when we get a runtime error.
- added more out of synch checks and better error handling
2011-01-02 00:39:13 +00:00
Mark Vejvoda
64446194e7 - more bugfixes related to ftp and firewall handling 2010-12-30 18:51:25 +00:00
Mark Vejvoda
3f0ee7a6cb - some initial changes to try to get ftp working over the Internet with firewalls etc 2010-12-30 15:56:02 +00:00
Mark Vejvoda
b006e72b53 - mutex cleanup in network classes to try to avoid game freeze( hangs) 2010-12-25 22:38:00 +00:00
Mark Vejvoda
da1adab808 - bugfixes for fog of war enable at game end
- Added more safety guards in threaded sockets in case this causes problems when things get very busy in the game during monster battles
2010-12-25 08:14:35 +00:00
Mark Vejvoda
03eaa2c033 numerous important bugfixes:
- observers and end game fog of war enable would most likely cause out of synch, I think its fixed now
- better handling of threaded logging
- cleanup of socket thread processing to ensure all network packets get processed properly and in order
2010-12-24 08:43:09 +00:00
Mark Vejvoda
8534fa59a9 - added more stable way of setting thread run state 2010-12-22 00:15:32 +00:00