Commit Graph

76 Commits

Author SHA1 Message Date
Mark Vejvoda
d33e1174a5 - bugfixes related to cppcheck report
- bugfixes found using valgrind (memory leaks)
2011-12-02 16:07:59 +00:00
Mark Vejvoda
7cf9c189b2 - disallow non compressed tileset downloads when client IP not on same subnet as host
- bugfix for LAN server broadcasting
- bugfix for empty message on player disconnect (now properly shows that player switched to AI mode)
2011-11-29 05:07:18 +00:00
Mark Vejvoda
03a7a72ef5 revert network code back to beta1 code 2011-11-27 05:27:50 +00:00
Mark Vejvoda
da854f103b - added some special ways to configure how sockets work on a system for testing 2011-11-27 00:07:55 +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
82c9002d0a - attempt to further stabilize cpu usage and network reliability 2011-11-25 20:03:07 +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
50adfb3305 - added ability to switch languages from nearly anywhere (and new hotkeys to do so):
CTRL+L shows language popup selection, CTRL+SHIFT+L toggles to next language automatically
2011-10-25 18:39:11 +00:00
Mark Vejvoda
2cecb2c3a0 fixed horrible UPNP bugs related to timing, where ports would be either NOT properly opened or not closed due to thread timing and no thread protection. 2011-10-23 00:55:34 +00:00
Mark Vejvoda
2a86cb4f7d - added support for proper quiting and console input/output in headless mode. Type: quit followed by return into the console to properly shutdown in headless mode. 2011-09-27 10:16:09 +00:00
Mark Vejvoda
1a6cdf3a06 - bugfix for IRC nicks using non standard ascii chars (we replace invalid chars on IRC with - 2011-08-30 23:45:51 +00:00
Mark Vejvoda
ac83b1a898 - attempt to fix socket bug where we incorrectly polled for data using ioctl / ioctlsocket. While we stilkl do some peeks, the bulk of the socket work is now done properly by simply doing recv and thus should prove more stable and reliable as well as perform better. 2011-04-24 04:22:19 +00:00
Mark Vejvoda
1858240879 - inspired by brazil boy. added a temp block feature for server player to temp block players from the current game in the lobby 2011-04-13 04:04:08 +00:00
Mark Vejvoda
42a6737960 - proper detection that user does not have 7z installed in their path 2011-04-09 22:20:10 +00:00
Mark Vejvoda
788d81ba7e - added code to download and display image preview for mod selections if they exist 2011-04-07 23:51:22 +00:00
Mark Vejvoda
d9bc605974 - added scenarios to mod menu 2011-03-26 18:37:38 +00:00
Mark Vejvoda
9681e7f1bc - initial code for managing mod content (downloads and removal of user data) 2011-03-25 10:11:16 +00:00
Mark Vejvoda
0379b7284d - removed requirement to have a newer libcurl, now most platform, should be able to build mg more easily (only require 7.16.4 or newer instead of 7.21.0) 2011-03-20 00:11:00 +00:00
Mark Vejvoda
9eb1f60048 - added option to disable file transfers for tileset and/or techtrees for published (internet) games 2011-03-11 12:14:24 +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
63da3d7af2 - added techtrees for file xfer and CRC checking (might need to turn off etc later but lets test for now) 2011-03-09 23:09:32 +00:00
Mark Vejvoda
817d8cfea8 - added logic for ftp file transfers to look for 7z archives for tilesets and download and extract on the client side if the 7z archive exists on the server 2011-03-09 18:35:19 +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
17e2a87890 - fixed one type of freeze in the custom menu
- some small opengl changes
2011-02-08 18:23:41 +00:00
Mark Vejvoda
9ba8668751 - win32 winsock bugfixes causing havok and grief for win32 users (corrupt winsock stack due to extra call to wsacleanup) 2011-01-17 23:45:09 +00:00
Mark Vejvoda
d8e28fbf90 - attempt to fix WSAStartup error message on win32 2011-01-17 21:31:59 +00:00
Mark Vejvoda
385fb0b3f0 - bunch of bugfixes for FTP file transfer:
- failed attempts should now properly cleanup partial downloaded files
  - better logging and resource usage to track down problems
2011-01-15 21:53:00 +00:00
Mark Vejvoda
8c4cdd037c - updated for compiling on BSD
- also bugfix for socket broadcast segfault (partial fix)
2011-01-13 01:46:32 +00:00
Mark Vejvoda
7bc6b603b9 - lua bugfix for fog of war toggling
- ftp client bugfix for reported segfault
2011-01-10 00:05:31 +00:00
Mark Vejvoda
b30fe62528 - to appease the security freaks, ONLY clients that are ALREADY connected in the lobby are able to connect to the built in FTP server now 2011-01-07 06:21:23 +00:00
Mark Vejvoda
055293d027 - bugfix for code compiled in VC++ 2011-01-06 23:13:36 +00:00
Mark Vejvoda
a5a744fcad - updated FTP code to use specific ports for MG and not random FTP ports 2011-01-06 00:52:00 +00:00
Mark Vejvoda
f3eee457c0 - added an in progress bar when downloading tilesets
- clear the CRC cache after a new file is downloaded
2011-01-04 08:44:00 +00:00
Mark Vejvoda
2b1732e27e - overhaul of thread processing, especially in the menus, things now freeze much less and should be more reliable 2011-01-02 06:46:48 +00:00
Mark Vejvoda
9150701e70 - more thread guards for IRC Client 2011-01-02 04:16:24 +00:00
Mark Vejvoda
8eeb0b550c - more ftp tileset bugfixes 2011-01-01 03:12:28 +00:00
Mark Vejvoda
2cdb8dd354 - initial work for tileset ftp transfers, needs some testing 2011-01-01 00:50:10 +00:00
Mark Vejvoda
7e55a545c4 - added code for ftp client to handle failures and menu exit more gracefully 2010-12-31 21:02:06 +00:00
Mark Vejvoda
1f29685803 - bugfixes for ftp server to work on windows, silly M$ compiler has issues with mixing C / C++ code so I had to make these changes 2010-12-31 21:00:25 +00:00
Mark Vejvoda
d176053da9 - plenty of code cleanup (some refactoring of socket / UPNP code)
- FTP console output now only shows when --verbose used
2010-12-31 08:21:26 +00:00
Mark Vejvoda
0987536af8 - changed order of map searching, now we look in this order:
mydata/maps mgm file type
mydata/maps gbm file type
maps / mgm file type
maps/ gbm file type
2010-12-30 21:19:08 +00:00
Mark Vejvoda
973b546b04 - more bugfixes related to ftp and firewall handling 2010-12-30 20:02:30 +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
2ca50ee9f9 - attempt to avoid IRC client crashes on Internet menu if user does not have an Internet connection 2010-12-29 21:03:57 +00:00
Mark Vejvoda
4fb1b1092f - added ftp port # as an ini setting and added to UPNP for router auto-config
- added new language string for message box to prompt map file downloads
2010-12-29 20:28:25 +00:00
Mark Vejvoda
6e88e4be4c - got my plumbers suit on and added the plumbing for FTP file xfers 2010-12-29 01:10:53 +00:00
Mark Vejvoda
97ee61165a updates to irc use in mastermenu:
- shows local username
- bugfixes for detecting new/dropped users in the irc channel
- lots of cleanup to remove use of so many static variables
2010-12-24 02:10:31 +00:00
Mark Vejvoda
8b0b6300ed - some cleanup for the new IRC client in the Masterserver menu, and changed default channel for in game IRC chat to megaglest-lobby 2010-12-23 07:42:15 +00:00
Mark Vejvoda
7e6a7a85f7 - big fight to get libircclient compiled in VC++ but we won the battle (requires new win32 deps.. NOT ming deps) 2010-12-23 02:17:29 +00:00
Mark Vejvoda
ea4f8e0bcd - added IRC client to the Internet game menu (still need to update VC++ projects) 2010-12-23 00:00:30 +00:00