Mark Vejvoda
bbc8f96327
- better masterserver thread management during game play (do not start the thread for non published games)
2010-10-24 05:52:21 +00:00
Mark Vejvoda
c3d41f5082
- bugfixes to master server communication logic when starting a game. Now we only send updates if the game was published, not for every network game. Also we properly delete the game from the masterserver when it has ended.
2010-10-23 22:06:49 +00:00
Mark Vejvoda
ae8571a406
- added the beginning of some new master server info (very limited)
...
- Masterserver menu will show more titles / colors.
- We keep the game showing in the Masterserver menu while it is in progress.
- Disable join button when slots are full.
- Update title with IN PROGRESS when game is being played.
- PHP Script is backwards compatible with older clients
2010-10-23 09:06:47 +00:00
Mark Vejvoda
e2610df502
- fixed chatting logic to now retain more info about the user that sent the text in the console manager. Colors now apply to the playername and changing playernames is ok in the lobby andf rendering accounts for this (as well as switching slots)
2010-10-23 04:00:39 +00:00
Mark Vejvoda
707a26feb2
- bugfix for server side player color index being wrong
2010-10-22 16:35:16 +00:00
Mark Vejvoda
8ab3366c66
- added player color coding in lobbies as well as chat console
2010-10-22 07:28:55 +00:00
Mark Vejvoda
79318735ab
- cleanup of last compiler warnings in Linux (hurray!)
2010-10-21 18:24:54 +00:00
Mark Vejvoda
be979590c1
- more compiler warning cleanup
2010-10-21 17:42:45 +00:00
Mark Vejvoda
f5f406dfb3
- bugfix related to segfault when a network disconnect occurs while a thread is updating a slot
2010-10-21 00:21:58 +00:00
Mark Vejvoda
59c5fd2581
- moved version checking into one common method in the util file. Now all network related checks use this common method to determine version compatibility
2010-10-15 17:27:00 +00:00
Mark Vejvoda
86b11a7f05
- bugfix (again) for playername index bug
2010-10-08 22:32:23 +00:00
Mark Vejvoda
ae010f85ab
- bugfix for playername index offset on client
2010-10-08 17:17:22 +00:00
Mark Vejvoda
f345835fc4
- final bugfix for 3.3.7, playernames got mixed up when first slot was closed. Also fixed editing when typing playername
2010-10-08 01:41:53 +00:00
Mark Vejvoda
0d050f62d4
- added code to now output all eerors to console (with option to save in log file)
...
- added more LUA debug info
2010-10-06 20:22:06 +00:00
Mark Vejvoda
0e8ed05c2e
- bugfixes for handling missing maps on client
2010-09-17 08:26:22 +00:00
Mark Vejvoda
f84a710d2c
- initial logic to allow client side controlled AI
2010-09-14 19:10:37 +00:00
Mark Vejvoda
ab44c83168
- added leak_dumper header all over the place (not yet functional in linux)
...
- Bugfix for particle cleanup
2010-09-07 05:25:40 +00:00
Mark Vejvoda
fba29d3002
- added new menu option to toggle on / off observers
2010-09-04 01:24:17 +00:00
Mark Vejvoda
e32eb9c162
- modified command object to support special states which flow through network play as well. This allows for better handling of multi-unit build and allows for better future expanding of command processing.
2010-08-30 20:45:12 +00:00
Mark Vejvoda
20a02c28ed
- bigfix for windows compile
2010-08-27 23:04:59 +00:00
Mark Vejvoda
a2f013c51a
- cleaned up lobby message processing
2010-08-27 20:09:55 +00:00
Mark Vejvoda
2e99f69ef1
- added an overall MAX lag counter to disconnect clients that lag beyond recovery
2010-08-27 18:53:59 +00:00
Mark Vejvoda
90f66d99bf
- updated game data checks display on server
2010-08-26 23:14:55 +00:00
Mark Vejvoda
f765ab0880
- updated game data mismatch display
2010-08-26 23:04:14 +00:00
Mark Vejvoda
ddf4fca0bf
- another change to game data packet length for the sake of cheesy windows
2010-08-26 22:29:48 +00:00
Mark Vejvoda
1058065ce7
- changing the max filecount lower to avoid stack overflow due to array taking > 1MB
2010-08-26 20:28:26 +00:00
Mark Vejvoda
f3278c3cf3
- bugfixes for stack overflow issue (static array size too large causing chkstk errors)
2010-08-26 19:01:44 +00:00
Mark Vejvoda
4ebd156828
- added new commandline parameter to display the version of SDL used by the program
2010-08-26 16:03:54 +00:00
Mark Vejvoda
c5624d8662
- bugfix for newer gcc compiler that freaks out on using static ints as a parameter to stl's min and max functions
2010-08-26 15:00:50 +00:00
Mark Vejvoda
979a6ddb09
- fixed compile issues for tomreyn
2010-08-26 14:48:04 +00:00
Mark Vejvoda
8274ff1efb
- windows compile bugfixes
2010-08-26 05:43:08 +00:00
Mark Vejvoda
db173d0fdd
- bugfixes for network playername inline editing in the lobby during a slot switch
2010-08-26 05:30:17 +00:00
Mark Vejvoda
a64fa69d02
- bugfixes for experimental game data synch check in lobby
...
- added a fix for socket sending when the send buffer is full and we have more data to send
2010-08-26 03:15:36 +00:00
Mark Vejvoda
e5678be10c
- bugfixes for experimental game data synch check in lobby
...
- added a fix for socket sending when the send buffer is full and we have more data to send
2010-08-26 02:36:17 +00:00
Mark Vejvoda
5a796444b8
- added a cache for compute fog of war
2010-08-25 23:55:59 +00:00
Mark Vejvoda
c01b43f635
- added another layer of authentication to validate the client is REALLY a mega-glest client
2010-08-23 15:40:43 +00:00
Mark Vejvoda
0509b5d643
- bugfixes for playername change in lobby screen
2010-08-23 04:33:21 +00:00
Mark Vejvoda
0ad20a1a2d
- fixed code for debug asserts
2010-08-22 08:42:43 +00:00
Mark Vejvoda
bf5f6b7f33
- experimental support for idenitfying specific game data which is out of synch with the server.
2010-08-22 08:00:05 +00:00
Mark Vejvoda
cce338a2c6
- atempt to squeeze some extra rendering performance
2010-08-21 18:50:56 +00:00
Mark Vejvoda
455876a3c0
- added the ability to change your playername from the game lobbies inline
2010-08-21 13:04:52 +00:00
Mark Vejvoda
80c54b7a21
- added version mismatch check on server to avoid spurious client connection activity
2010-08-21 02:59:21 +00:00
Mark Vejvoda
d08c8300f0
- more attempts at stability for network games
2010-08-21 01:52:41 +00:00
Mark Vejvoda
07cbcc0bec
- added a bunch of null terminations to all char buffers in network protocol
2010-08-20 23:53:10 +00:00
Mark Vejvoda
ff7828fa6f
- more NULL checking for safer execution
2010-08-20 22:59:32 +00:00
Mark Vejvoda
0e82836e01
- more NULL checking for safer execution
2010-08-20 22:17:30 +00:00
Mark Vejvoda
1fa9efc091
- alittle more bullet proofing using NULL pointer checks
2010-08-20 20:51:25 +00:00
Mark Vejvoda
fc31e7713d
- added null pointer check
2010-08-20 20:29:30 +00:00
Mark Vejvoda
a6d33fe569
- attempt to protect a little against spurious network activity
2010-08-20 20:03:06 +00:00
Mark Vejvoda
277362a6c7
- fixed a possible infinite loop while receiving network packets on clients for network games (found by titi's stack trace dump)
2010-08-20 18:06:03 +00:00
Mark Vejvoda
94e4a85957
- How i love you microsoft... another win32 fix
2010-08-07 06:35:52 +00:00
Mark Vejvoda
0f8eb267c6
- attempt to correct network message alignment problem
2010-08-07 06:19:56 +00:00
Mark Vejvoda
cee6b8dfc8
- attempt to help client wait for network packets better
2010-08-07 05:55:18 +00:00
Mark Vejvoda
a5bf684493
- more network fixes to make lag and disconnects more stable
...
- changed the way the game end logic happens to try to make it more stable
2010-08-07 04:49:06 +00:00
Mark Vejvoda
fe8d3b3130
- numerous bugfixes mostly centered around network lag, but also added more logging and protective code (like buffer overflow checks)
...
*NOTE: This version is NOT backwards compatible with other builds
2010-08-07 03:26:38 +00:00
Mark Vejvoda
7df6d2bc16
- added version string display for network lobbies
2010-08-05 05:58:14 +00:00
Mark Vejvoda
4ba4b756c8
- updated client connect screen to display new game options as set from the server
2010-08-04 23:39:12 +00:00
Mark Vejvoda
a8a3275036
- added an earlier attempt to help lagging clients recover when they start to fall behind.
2010-07-29 05:51:50 +00:00
Mark Vejvoda
e9e1a317e4
- cleanup of some compiler warnings
2010-07-17 06:54:04 +00:00
Mark Vejvoda
a3ec4650c4
- moved pause for lagged clients option to custom game menu
...
- bugfix to ignore 0.* ip addresses
2010-07-16 16:53:19 +00:00
Mark Vejvoda
031bfd2f60
- added LAN IP in custom Menu
...
- Updated readme and other text files with more accurate info (thanks Tomreyn)
- Disabled ability to zoom out when game is over if in a network game (creates to much LAG and instability)
2010-07-10 06:14:31 +00:00
Mark Vejvoda
eb34eb1fe5
- more bugfixes for ping logic
2010-07-09 18:49:01 +00:00
Mark Vejvoda
b008594ca8
- missing header for windows compile
2010-07-09 17:46:53 +00:00
Mark Vejvoda
0d7d0e139d
- updated disconnect checking to include a timeout check for our custom ping
2010-07-09 17:12:57 +00:00
Mark Vejvoda
df688c3ede
- some debug comments removed
2010-07-09 15:59:49 +00:00
Mark Vejvoda
3e53b69676
- added client side ping style packet for linux socket disconnect checking
2010-07-09 15:01:49 +00:00
Mark Vejvoda
ab655162cb
- added more bug fixes related to network disconnects.
...
- Added a new global message box to display error messages on top of any graphics window being displayed.
2010-07-08 08:29:51 +00:00
Mark Vejvoda
ff21d26161
- mouse disappearing bugfix (go ahead alt-tab, alt-esc, do it ALL, its fixed!)
...
- Added more descritive error message when data checksum is discovered. The client's playername is now disclosed in the error.
- added VS project config to disable STREFLOPs for testing later
- updated version to 3.3.5.1 alpha1
2010-07-07 22:25:29 +00:00
Mark Vejvoda
8478ab80b3
- bugfixes for malformed debug statements
...
- updated version to 3.3.5.1
- added more null checks
- changes to try to fix crash when ending a game (delete cells bug)
2010-07-06 05:30:34 +00:00
Mark Vejvoda
009e6f07e5
- added initial ability for servers to publish an external port for use with internet games. This is in case we must use soft-haus.com which will work with only a few outgoing port numbers.
...
*NOTE: This update add's a new field to the PHP / mysql scripts.
2010-07-03 10:06:31 +00:00
Mark Vejvoda
eda2e84aee
- bugfixes for processing disconnect and game end scenarios. These fixes corrected a bunch of segfaults when client or server disconnect.
2010-07-02 19:57:47 +00:00
Mark Vejvoda
521fb237bf
- bugfix for regression of disconnecting from server on lobby screen
2010-07-02 16:54:28 +00:00
Mark Vejvoda
aa0db2c0f0
- network code bugfixes.
...
- More checking for disconnect and proper handling of those cases
- Changed battle end screen to exit via mouse click on exit button (or press ESC)
- Removed display of unused ping output
- added more error handling debug output of the mystical unknown error caught in window.cpp to track it down better if it happens again
2010-07-02 02:50:20 +00:00
Mark Vejvoda
391fd1f36d
- bugfixes to properly manage and display various kinds of network error conditions.
2010-07-01 06:11:14 +00:00
Mark Vejvoda
3ea81caf92
updated output type to get proper values
2010-07-01 00:52:11 +00:00
Mark Vejvoda
b0b477aa59
- moved clear outside of loop
2010-07-01 00:31:48 +00:00
Mark Vejvoda
c5cb8dbd18
- bugfixes related to chat message processing and error processing. We now stack up messages and process them in a more safe manner
2010-07-01 00:08:59 +00:00
Mark Vejvoda
217c92e939
- updated warnhing message condition to also check LAG time in addition to lag count
2010-06-30 18:59:28 +00:00
Mark Vejvoda
1f04fd3106
- added another LAG validation (this is in addition to the excisting ones) a time in seconds LAG. This should be able to deal with disconnected clients better
...
- added more error handling to try to handle different kinds of errors during gameplay
- added new mouse toggle hotkey (toggles between OS and mega-glest mouse) default key is / in glestkeys.ini
2010-06-30 07:03:04 +00:00
Mark Vejvoda
9508dad51b
- network related bugfixes:
...
menu slowdown when picking network slots
clients can once again change network slots
performance fixes for network receiving
2010-06-29 06:50:35 +00:00
Mark Vejvoda
a7954abc02
- updated version number to beta15
...
- fixed bug affecting performance due to unconnected slots
2010-06-28 03:17:50 +00:00
Mark Vejvoda
00860813b2
- bugfixes for LAG checking:
...
- proper disconnect for clients passed MAX lag
- proper lag packet time initialzation for clients sending LAG update info to the server
2010-06-28 00:21:12 +00:00
Mark Vejvoda
1d4f47718c
- added many new things and fixed a number of bugs (too tried to mention them all)
2010-06-24 01:23:18 +00:00
Mark Vejvoda
87b4706940
- Attempt to use libcurl in a thread safe manner
2010-06-23 14:49:20 +00:00
Mark Vejvoda
2d50beecfa
- bugfix for mutex deadlock
2010-06-18 20:04:05 +00:00
Mark Vejvoda
82f412453e
- bugfix for mutex deadlock
2010-06-18 18:47:20 +00:00
Mark Vejvoda
4647497cee
- bugfix for proper thread shutdown which caused a number of crashes when navigating menus
2010-06-17 23:24:15 +00:00
Mark Vejvoda
2015843d69
- added optional server game pause if client lags
2010-06-17 21:46:36 +00:00
Mark Vejvoda
eeda623b4f
- removed the rotateunit flag (its now just part of MG)
...
- updated rendering to consider both visible and explored cells when rendering untis and objects
- added a warning message when a client is lagging and coming close to being kicked off
2010-06-17 00:08:27 +00:00
Mark Vejvoda
39acffa2aa
- enable mouse while new game is loading
2010-06-16 06:35:35 +00:00
Mark Vejvoda
5356a3de23
change of data type to correct type for time lag
2010-06-15 05:44:29 +00:00
Mark Vejvoda
e091460f40
- attempt to add a client LAG checker to notify and disconnect clients that fall too far behind.
2010-06-15 05:36:07 +00:00
Mark Vejvoda
cdb820a8e8
- fixed a network read problem where there is more data needed before reading large command lists can be processed.
...
- added more error checking
2010-06-14 06:38:24 +00:00
Mark Vejvoda
085d4e4bfe
- added more debug statements to try to track beta bugs
...
- added safer customization of ini files
- added ability to customize game keys
- added more error checking for ogg file loading
- added faction loader progress
- added a few more thread protections on custom menu
2010-06-12 18:27:39 +00:00
Mark Vejvoda
4fd75e5d7d
- fixed two nasty AI bugs which would cause out of synch and memory corruption problems
...
- added new glest.ini setting to log commands for each client
2010-06-08 07:40:32 +00:00
Mark Vejvoda
cf6d43247d
added networkframeperiod support to gamesettings and added possibility to over-ride in glest.ini for now
2010-06-05 07:52:14 +00:00
Mark Vejvoda
3b06db30e9
commented out ping code and added synch check for large comamnds list
2010-06-05 00:00:36 +00:00
Mark Vejvoda
2970e5114a
added mutex protection in custom game menu to protect access to member variables to avoid crashes when background thread and user changes both occur
2010-06-04 21:46:10 +00:00
Mark Vejvoda
964be91fa9
added ping times to UI
2010-06-04 19:42:58 +00:00
Mark Vejvoda
dc0315d0d6
bugfix in server connection slot shutdown processing, only update server listener if BEFORE game started, not after game exits
2010-06-03 23:00:31 +00:00
Mark Vejvoda
8005fa96e1
disabled threaded send
2010-06-03 21:55:17 +00:00
Mark Vejvoda
4227d2bd1d
attempt to fix threaded network send bug
2010-06-03 21:49:41 +00:00
Mark Vejvoda
ff6d90a5f1
added more pointer inits
2010-06-03 21:25:33 +00:00
Mark Vejvoda
6b10c5696f
- added missing gamesettings to network packet and added experimental threaded server message broadcasts to client
2010-06-03 07:52:17 +00:00
Mark Vejvoda
1b000376d4
- updated client connection screen to NOT crash if client does not have the tech selected on the server
2010-06-03 06:03:41 +00:00
Mark Vejvoda
ace1cef8a8
- added safe mutex wrapper class
2010-06-02 01:37:45 +00:00
Mark Vejvoda
b8dac6de50
- updates to random number generation
2010-06-01 00:57:48 +00:00
Mark Vejvoda
fc63460e07
- updated unitid offset for each faction so that we support up to 100,000 units per faction per game (which is larger than previously supported)
2010-05-31 09:45:54 +00:00
Mark Vejvoda
0069fbf4f0
- added more debug code and fixed a server bug where client connecting at the same time a server opens a slot would result in a crash sometimes.
2010-05-31 06:11:31 +00:00
Mark Vejvoda
e4f885ecf3
removed some debug output to make reading logs easier
2010-05-29 11:12:45 +00:00
Mark Vejvoda
9159d44b7a
- added a VERY IMPORTANT synch check in order to find unit id mismatch
2010-05-29 08:23:52 +00:00
Mark Vejvoda
8b6af02ece
- Added better error handling for in-game errors
2010-05-29 06:56:32 +00:00
Mark Vejvoda
a03853ad13
- made some stability improvements
...
- Fixed chat message processing
2010-05-28 14:59:09 +00:00
Mark Vejvoda
908b155d62
some changes to how we use streflop:
...
- Removed all unneeded includes of cmath
- added proper wrapper classes for lua calls to toggle streflop back and forth
- some code cleanup
2010-05-28 05:31:17 +00:00
Mark Vejvoda
f0da609e7f
trying to track down network bugs
2010-05-28 00:57:24 +00:00
Mark Vejvoda
ac34fc6d99
Commented out some mutex use that should no longer be required.
2010-05-28 00:26:29 +00:00
Mark Vejvoda
0aade73335
- Did some refactoring to move connectionSlotThread into ConnectionSlot class
2010-05-27 23:46:38 +00:00
Mark Vejvoda
f92bf42d82
- Attempted fix for some synch network errors (ensure client messages are processed in proper order)
2010-05-26 05:33:15 +00:00
Mark Vejvoda
4b6e017241
- Added particle support to g3d viewer
2010-05-25 18:06:42 +00:00
Mark Vejvoda
69d7070f54
Added some more mutex guards around multi-player server side thread that processes incoming messages
2010-05-21 16:36:08 +00:00
Mark Vejvoda
258cd1fea1
- bugfixes for custom port# configurations
...
- changed version to alpha2
2010-05-17 20:41:18 +00:00
Mark Vejvoda
272a072ec3
added client socket accept info to debug log as well as some change detection
2010-05-17 06:41:05 +00:00
Mark Vejvoda
1ae2a9ae10
- Added partial threaded network server handling of incoming socket data to try to improve performance
...
- Small changes to client network handling to be more accurate and efficient
- Added observer mode when a user loses a network game
2010-05-15 18:59:17 +00:00
Mark Vejvoda
4fc043ddb6
more bullet proofing of network activity
2010-05-13 07:13:53 +00:00
Mark Vejvoda
57d0420b76
Added some threading for URL calls for new masterserver game play
2010-05-13 06:43:56 +00:00
Mark Vejvoda
319b672e20
added better handling of network connections:
...
- only listen for new clients on a server if an open slot exists (unconnected)
- for both server and client we wait a max of 10 seconds to receive a proper intro packet or we disconnect (could have connected to / from a non glest application using the same port)
2010-05-12 15:25:56 +00:00
Titus Tscharntke
13a1630e69
first steps for masterserver join menu
2010-05-09 21:23:13 +00:00
Mark Vejvoda
8aa14009d1
- added a more proper #define setup to completely stub out debugging to test performance
...
(simply uncomment #define UNDEF_DEBUG and the debug statements become nothing)
- Added piles of experimental changes for testing different performance scenarios (all of these changes are turned off by default and will most likely eventually be removed)
2010-05-07 06:46:55 +00:00
Mark Vejvoda
4b1a392f00
Bugfixes for network game launching:
...
- discard inprogress messages that don't apply during launch
- added better error handling of disconnects during game launch and play on both server and clients
2010-05-04 02:32:43 +00:00
Titus Tscharntke
73be43d6ad
some (possible) bugs are fixed when starting but not all. Discussion needed .
2010-05-04 00:05:10 +00:00
Mark Vejvoda
04bb6659ce
Added more debugging and option to disable new streflop usage.
2010-05-01 20:14:25 +00:00
Mark Vejvoda
2417f37e21
added more debugging for error conditions
2010-05-01 10:46:56 +00:00
Titus Tscharntke
3e7f3ed485
client slot selection bug hopefully fixed
2010-04-30 18:36:38 +00:00
Mark Vejvoda
6577762297
- Added a new pre-Cache thread for CRC value calculation
...
- Added support in the client UI if multiple local LAN servers are discovered.
2010-04-30 06:45:30 +00:00
Mark Vejvoda
35cd622f43
changed max network command batch size to use unsigned int to allow more commands to be sent at once
2010-04-30 02:41:42 +00:00
Mark Vejvoda
e7cb595ae8
small change to compiler version stamp
2010-04-30 02:34:19 +00:00
Mark Vejvoda
19cd66fc2d
Changed compiler stamp in version string
2010-04-30 02:20:27 +00:00
Mark Vejvoda
e8aa5083cb
Added new binary compatibility check
2010-04-30 01:32:37 +00:00
Titus Tscharntke
0687a56e27
clients can choose their slots
2010-04-30 01:08:29 +00:00
Mark Vejvoda
cc08074acf
more caching and bug fixes for data synch compare
2010-04-29 08:36:37 +00:00
Mark Vejvoda
4f147b2d89
Added more guards and debug info related to network play
2010-04-29 07:59:44 +00:00
Mark Vejvoda
805015fd83
Updates to cache CRC values and folder traversal lookup
2010-04-29 06:10:51 +00:00
Titus Tscharntke
50341e9db6
clients can choose team and faction ... client triggered slot change is prepared
2010-04-28 23:59:37 +00:00
Mark Vejvoda
aad5c056a3
Added more info in data synch check debugging
2010-04-28 21:38:15 +00:00
Mark Vejvoda
6d4838f470
Changed the logging system to be more flexible and to support world synch logging
2010-04-27 03:36:36 +00:00
Titus Tscharntke
edd3b66273
connected playernames and free slots are shown on the client.
...
some bugfixes
2010-04-22 23:18:04 +00:00
Titus Tscharntke
06660e3a17
clients can see which setups are made on the server. ( work in progress !)
...
menu gfx-components can be set editable/non editable now
+ in addition fixed several memory problems and FOW in scenarios ...)
2010-04-21 23:13:39 +00:00
Mark Vejvoda
d412cb5f79
Added a bunch of NULL pointer guards, changed undertake to cleanup dead units more safely and added more debug tracing
2010-04-20 02:19:37 +00:00
PolitikerNEU
e06e964728
Added queing commands with shift
2010-04-18 07:35:48 +00:00
Mark Vejvoda
30c4eb2b96
Added some performance logging capabilities and socket cleanup for new broadcast thread sockets
2010-04-15 01:19:00 +00:00