Jonathan G Rennison
a1d36b02f0
Network: Add state checksum which is check in network sync
5 years ago
Jonathan G Rennison
385960af4e
Network: Decrease sync frame period when desync occurs
5 years ago
Jonathan G Rennison
96f000226e
Exclude virtual trains from various vehicle list iterations
5 years ago
Jonathan G Rennison
97baff6fd8
Add client desync log to server desync log output
5 years ago
Jonathan G Rennison
cb0ca43eae
Use larger packets for server to client map/savegame transfer
5 years ago
Jonathan G Rennison
002f5ca70e
Adjust desync log format and add company events to log
5 years ago
Jonathan G Rennison
fa55a1c002
Output a log, savegame and screenshot on desync events
5 years ago
Jonathan G Rennison
674732cd68
Merge: Codechange: Use null pointer literal instead of the NULL macro
5 years ago
Jonathan G Rennison
f5747bf753
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/genworld_gui.cpp
# src/group_gui.cpp
# src/saveload/saveload.cpp
# src/settings_gui.cpp
# src/toolbar_gui.cpp
# src/vehicle_gui.cpp
# src/vehicle_gui_base.h
# src/widgets/dropdown.cpp
# src/widgets/dropdown_type.h
5 years ago
Henry Wilson
7c8e7c6b6e
Codechange: Use null pointer literal instead of the NULL macro
5 years ago
Jonathan G Rennison
f887b12be2
Add 3rd party mingw-std-threads headers to fix MinGW compilation
5 years ago
Michael Lutz
e804173595
Codechange: If something is a vector of strings, use a vector of strings instead of an AutoFreeSmallVector.
5 years ago
Jonathan G Rennison
361758b516
Merge branches 'crashlog_improvements', 'save_ext' into jgrpp
...
# Conflicts:
# Makefile.src.in
# projects/openttd_vs140.vcxproj
# projects/openttd_vs140.vcxproj.filters
# projects/openttd_vs141.vcxproj
# projects/openttd_vs141.vcxproj.filters
# projects/openttd_vs142.vcxproj
# projects/openttd_vs142.vcxproj.filters
# src/core/smallstack_type.hpp
# src/linkgraph/linkgraphjob.cpp
# src/linkgraph/linkgraphjob.h
# src/misc.cpp
# src/network/network_udp.cpp
# src/openttd.cpp
# src/saveload/saveload.cpp
5 years ago
Michael Lutz
05f4e73608
Codechange: Replace custom mutex code with C++11 mutex'es.
...
A conforming compiler with a valid <mutex>-header is expected.
Most parts of the code assume that locking a mutex will never fail unexpectedly,
which is generally true on all common platforms that don't just pretend to
be C++11. The use of condition variables in driver code is checked.
5 years ago
glx22
a1e492d0d8
Fix #7439 : don't overwrite CompanyRemoveReason with ClientID ( #7465 )
5 years ago
Jonathan G Rennison
ba34ec7ade
Merge branch 'master' into jgrpp
...
Replace build and refit, and group collapse implementations
Fix template creation build and refit
# Conflicts:
# Makefile.bundle.in
# config.lib
# src/animated_tile.cpp
# src/blitter/32bpp_anim.hpp
# src/blitter/32bpp_base.hpp
# src/blitter/8bpp_base.hpp
# src/blitter/null.hpp
# src/build_vehicle_gui.cpp
# src/command.cpp
# src/command_func.h
# src/console_gui.cpp
# src/core/smallstack_type.hpp
# src/date.cpp
# src/debug.cpp
# src/genworld_gui.cpp
# src/ground_vehicle.hpp
# src/group_gui.cpp
# src/lang/korean.txt
# src/linkgraph/linkgraph_gui.h
# src/main_gui.cpp
# src/misc_gui.cpp
# src/network/core/game.h
# src/network/core/packet.cpp
# src/network/core/udp.cpp
# src/network/core/udp.h
# src/network/network_content.cpp
# src/network/network_type.h
# src/network/network_udp.cpp
# src/newgrf_house.h
# src/openttd.cpp
# src/order_cmd.cpp
# src/order_gui.cpp
# src/os/unix/crashlog_unix.cpp
# src/os/windows/crashlog_win.cpp
# src/osk_gui.cpp
# src/pathfinder/opf/opf_ship.cpp
# src/rail_cmd.cpp
# src/rail_gui.cpp
# src/saveload/saveload.cpp
# src/settings.cpp
# src/settings_gui.cpp
# src/smallmap_gui.h
# src/station_base.h
# src/station_cmd.cpp
# src/table/gameopt_settings.ini
# src/table/newgrf_debug_data.h
# src/table/settings.ini
# src/timetable_gui.cpp
# src/toolbar_gui.cpp
# src/train_gui.cpp
# src/vehicle.cpp
# src/vehicle_gui.cpp
# src/vehiclelist.cpp
# src/viewport.cpp
# src/widgets/dropdown.cpp
# src/window_gui.h
5 years ago
Henry Wilson
ab711e6942
Codechange: Replaced SmallVector::[Begin|End]() with std alternatives
5 years ago
Henry Wilson
a0f36a50e6
Codechange: Replaced SmallVector::Append() with std::vector::[push|emplace]_back()
5 years ago
Henry Wilson
af7d9020a1
Codechange: Use override specifer for overriding member declarations
...
This is a C++11 feature that allows the compiler to check that a virtual
member declaration overrides a base-class member with the same signature.
Also src/blitter/32bpp_anim_sse4.hpp +38 is no longer erroneously marked
as virtual despite being a template.
5 years ago
Patric Stout
e3c639a09f
Remove: ENABLE_NETWORK switch
...
This switch has been a pain for years. Often disabling broke
compilation, as no developer compiles OpenTTD without, neither do
any of our official binaries.
Additionaly, it has grown so hugely in our codebase, that it
clearly shows that the current solution was a poor one. 350+
instances of "#ifdef ENABLE_NETWORK" were in the code, of which
only ~30 in the networking code itself. The rest were all around
the code to do the right thing, from GUI to NewGRF.
A more proper solution would be to stub all the functions, and
make sure the rest of the code can simply assume network is
available. This was also partially done, and most variables were
correct if networking was disabled. Despite that, often the #ifdefs
were still used.
With the recent removal of DOS, there is also no platform anymore
which we support where networking isn't working out-of-the-box.
All in all, it is time to remove the ENABLE_NETWORK switch. No
replacement is planned, but if you feel we really need this option,
we welcome any Pull Request which implements this in a way that
doesn't crawl through the code like this diff shows we used to.
5 years ago
Jonathan G Rennison
2fdcc52321
Merge branch 'save_ext' into jgrpp
...
# Conflicts:
# Makefile.src.in
# findversion.sh
# projects/determineversion.vbs
# src/lang/dutch.txt
# src/lang/korean.txt
# src/network/network.cpp
# src/network/network_client.cpp
# src/rail.cpp
# src/rail_cmd.cpp
# src/saveload/afterload.cpp
# src/ship_cmd.cpp
# src/toolbar_gui.cpp
# src/vehicle.cpp
5 years ago
glx
8e7fe3973f
Add: CompanyCtrlAction enum for CMD_COMPANY_CTRL actions
5 years ago
Jonathan G Rennison
e735c1a51a
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/aircraft_cmd.cpp
# src/autoreplace_cmd.cpp
# src/pathfinder/follow_track.hpp
# src/pathfinder/yapf/yapf_rail.cpp
# src/saveload/afterload.cpp
# src/saveload/saveload.cpp
# src/script/api/ai/ai_station.hpp.sq
# src/script/api/game/game_station.hpp.sq
# src/script/api/script_station.hpp
# src/track_func.h
# src/vehicle_base.h
6 years ago
Charles Pigott
f5b1115039
Doc: Lots and lots of doxymentation fixes
6 years ago
Jonathan G Rennison
940314a3c7
Use std::string for CommandContainer text instead of giant static buffer
...
Use move semantics for CommandContainer instance where feasible
6 years ago
Jonathan G Rennison
6342099c4d
Allow 256 NewGRFs in multiplayer
...
Add extended network format for server info
Add general UDP packet fragmentation system
Fix map dimensions >= 64k
Increase length of server revision string
Maintain backwards compatibility with trunk for advertisement/server listing
6 years ago
Jonathan G Rennison
ad1c402ad8
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/debug.cpp
# src/saveload/afterload.cpp
# src/saveload/saveload.cpp
# src/settings_type.h
# src/town_cmd.cpp
# src/window.cpp
6 years ago
Matthijs Kooijman
fa87212a76
Fix: Some spelling errors in printed messages
6 years ago
Jonathan G Rennison
f34833f111
Merge branch 'improved_breakdowns' into jgrpp
...
# Conflicts:
# src/vehiclelist.cpp
7 years ago
frosch
b4b98e5165
(svn r27893) -Codechange: Use fallthrough attribute. (LordAro)
7 years ago
frosch
a47fb85cd8
(svn r27893) -Codechange: Use fallthrough attribute. (LordAro)
7 years ago
Jonathan G Rennison
54494a0a7c
Merge branch 'send_money_company' into jgrpp
7 years ago
Jonathan G Rennison
3001595916
Change chat arbitrary data field from an int64 to a struct.
7 years ago
Jonathan G Rennison
c70a60fd18
Add another network broadcast mode.
7 years ago
Jonathan G Rennison
8e6569c11f
Include tick skip counter in all desync debug output.
...
Change message format to make field identification easier.
Update desync message reader to support tick skip counter.
8 years ago
Jonathan G Rennison
f6a8f27501
Make server and all clients run desync checks if a client desyncs.
9 years ago
Jonathan G Rennison
66cd454c37
Merge branch 'day_length-sx' into jgrpp
9 years ago
Jonathan G Rennison
f03cd98d04
Check/print tick skip counter in desync and random logging.
9 years ago
patch-import
536a95dfd0
Import combined Enhanced viewport: zoom out, overlays & tooltips (r53_27127) patch
...
https://www.tt-forums.net/viewtopic.php?f=33&t=53394
9 years ago
rubidium
815576440c
(svn r26975) -Fix: reading too many bits when determining the client index for desync debug message
10 years ago
rubidium
f28ff446e9
(svn r26975) -Fix: reading too many bits when determining the client index for desync debug message
10 years ago
planetmaker
e2be6f657d
(svn r26616) -Fix (r26576) [FS#6025]: First send packages about new company, then clients joining it to admin port (Taede)
10 years ago
planetmaker
105306609f
(svn r26616) -Fix (r26576) [FS#6025]: First send packages about new company, then clients joining it to admin port (Taede)
10 years ago
rubidium
492c6ed39b
(svn r26576) -Fix [FS#6003]: [Network] AIs would not reset certain network state information upon creation of their company
10 years ago
rubidium
4a52300838
(svn r26576) -Fix [FS#6003]: [Network] AIs would not reset certain network state information upon creation of their company
10 years ago
rubidium
034735a54c
(svn r26509) -Codechange: replace strdup with stredup (the latter ensures the return is not NULL)
10 years ago
rubidium
9ed12b0f07
(svn r26509) -Codechange: replace strdup with stredup (the latter ensures the return is not NULL)
10 years ago
rubidium
a0eaaf80b7
(svn r26488) -Codechange: perform the appropriate length checks when getting a client name
10 years ago
rubidium
160ad31028
(svn r26488) -Codechange: perform the appropriate length checks when getting a client name
10 years ago
frosch
24c7134bff
(svn r26485) -Codechange: Replace ttd_strlcpy and ttd_strlcat with strecpy and strecat.
10 years ago
frosch
ef4c2ce031
(svn r26485) -Codechange: Replace ttd_strlcpy and ttd_strlcat with strecpy and strecat.
10 years ago
rubidium
2be4215f43
(svn r26482) -Codechange: add an include that allows us to undefine/redefine "unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values
10 years ago
rubidium
0463dbdc9e
(svn r26482) -Codechange: add an include that allows us to undefine/redefine "unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values
10 years ago
rubidium
dc65379970
(svn r26043) -Fix [FS#5811]: occasional hanging when client joins
11 years ago
rubidium
1a043202d1
(svn r26043) -Fix [FS#5811]: occasional hanging when client joins
11 years ago
rubidium
a59af5c3fc
(svn r26005) -Fix [FS#5478]: crash when transferring savegame from server to client
11 years ago
rubidium
18a3a569fb
(svn r26005) -Fix [FS#5478]: crash when transferring savegame from server to client
11 years ago
planetmaker
f00d9976f9
(svn r24900) -Fix [FS#5389]: Comments with typos (most fixes supplied by Eagle_rainbow)
12 years ago
planetmaker
c24374f99c
(svn r24900) -Fix [FS#5389]: Comments with typos (most fixes supplied by Eagle_rainbow)
12 years ago
frosch
0ef7be181f
(svn r24580) -Fix [FS#5308]: Do not add duplicates to the ban list. (alechz)
12 years ago
frosch
de770d7563
(svn r24580) -Fix [FS#5308]: Do not add duplicates to the ban list. (alechz)
12 years ago
rubidium
fd56a95604
(svn r24221) -Fix [FS#5166]: Lag counters were not properly reset when switching states making it possible to get disconnected for lagging when you weren't lagging
12 years ago
rubidium
a961276b6f
(svn r24221) -Fix [FS#5166]: Lag counters were not properly reset when switching states making it possible to get disconnected for lagging when you weren't lagging
12 years ago
rubidium
dd15085613
(svn r23958) -Fix: don't allow chat messages from pre-active clients. As they haven't got the savegame yet, they won't have the interface to send them either (dihedral)
13 years ago
rubidium
ea2f19d4f2
(svn r23958) -Fix: don't allow chat messages from pre-active clients. As they haven't got the savegame yet, they won't have the interface to send them either (dihedral)
13 years ago
rubidium
341fd329c6
(svn r23957) -Fix [FS#4990]: allow sending chat to pre-active clients as the clients start accepting once they send 'map ok' to the server, which is the same moment we change their status to pre-active
13 years ago
rubidium
c5f7a0f69d
(svn r23957) -Fix [FS#4990]: allow sending chat to pre-active clients as the clients start accepting once they send 'map ok' to the server, which is the same moment we change their status to pre-active
13 years ago
smatz
bb9b240a86
(svn r23941) -Add: support for clang
13 years ago
smatz
b5525fd33d
(svn r23941) -Add: support for clang
13 years ago
rubidium
82a3783fdd
(svn r23817) -Fix [FS#4962]: desync due to different NewGRF version. So reduce the chance that it happens significantly with betas/RCs/nightlies by doing the same as is done for stable releases: check the NewGRF version of server vs client.
...
Previously this check was not done for nightlies/betas/RCs due to missing versioning information in the source tarballs, but they have that for a while now. So just force the NewGRF version check for all versions, and remove the broken --revision configure option
13 years ago
rubidium
4f62472fd9
(svn r23817) -Fix [FS#4962]: desync due to different NewGRF version. So reduce the chance that it happens significantly with betas/RCs/nightlies by doing the same as is done for stable releases: check the NewGRF version of server vs client.
...
Previously this check was not done for nightlies/betas/RCs due to missing versioning information in the source tarballs, but they have that for a while now. So just force the NewGRF version check for all versions, and remove the broken --revision configure option
13 years ago
truebrain
1b34577941
(svn r23780) -Fix [FS#4963] (r23764): also name the two new errors server-side. As extra, split up one of the errors in 3 errors, to be more specific what goes wrong. As cherry on top, make sure on all sides we can never again forget to add such entries on both sides, by introducing an assert_compile()
13 years ago
truebrain
6c7c02eb14
(svn r23780) -Fix [FS#4963] (r23764): also name the two new errors server-side. As extra, split up one of the errors in 3 errors, to be more specific what goes wrong. As cherry on top, make sure on all sides we can never again forget to add such entries on both sides, by introducing an assert_compile()
13 years ago
rubidium
578c3218b0
(svn r23769) -Codechange: make the lag/join start timeouts configurable as well
13 years ago
rubidium
182969f531
(svn r23769) -Codechange: make the lag/join start timeouts configurable as well
13 years ago
rubidium
f6329bf87e
(svn r23764) -Fix [FS#4955]: make default timeouts for certain states lower and configurable
13 years ago
rubidium
bddfcaef95
(svn r23764) -Fix [FS#4955]: make default timeouts for certain states lower and configurable
13 years ago
rubidium
d5eeab43b7
(svn r23740) -Codechange: remove some 300 unneeded includes from the .cpp files
13 years ago
rubidium
6d6be50ae0
(svn r23740) -Codechange: remove some 300 unneeded includes from the .cpp files
13 years ago
rubidium
26eebf2203
(svn r23337) -Fix [FS#4826]: don't send chat messages to clients that haven't joined yet
13 years ago
rubidium
104adbdb3a
(svn r23337) -Fix [FS#4826]: don't send chat messages to clients that haven't joined yet
13 years ago
rubidium
7005bb694c
(svn r23031) -Fix [FS#4804]: for the admin "bots" there was no distinction between bankruptcy and manual removal of companies even though the API suggested that
13 years ago
rubidium
de27205e6c
(svn r23031) -Fix [FS#4804]: for the admin "bots" there was no distinction between bankruptcy and manual removal of companies even though the API suggested that
13 years ago
rubidium
9194ff28b7
(svn r22805) -Codechange: move use of magic number for version checking to more logical location
13 years ago
rubidium
f6b0561cd8
(svn r22805) -Codechange: move use of magic number for version checking to more logical location
13 years ago
rubidium
61a3963361
(svn r22424) -Document: some more bits
13 years ago
rubidium
c4aa943aaa
(svn r22424) -Document: some more bits
13 years ago
rubidium
8e39557a2e
(svn r22400) -Codechange: replace some defines in the tcp/game code so doxygen can create better documentation
13 years ago
rubidium
2e572b98de
(svn r22400) -Codechange: replace some defines in the tcp/game code so doxygen can create better documentation
13 years ago
rubidium
4957d6beb1
(svn r22384) -Fix [FS#4585]: No client error packet was sent to the admin bots
13 years ago
rubidium
1c1e9f6941
(svn r22384) -Fix [FS#4585]: No client error packet was sent to the admin bots
13 years ago
rubidium
889fbcb84d
(svn r22372) -Fix (r22364) [FS#4598]: segmentation fault when trying to get the server's IP
13 years ago
rubidium
380d4b277b
(svn r22372) -Fix (r22364) [FS#4598]: segmentation fault when trying to get the server's IP
13 years ago
rubidium
347ec4d713
(svn r22370) -Codechange/fix: keep better accounting of the order in which clients joined:
...
* Clients can't be starved from joining the game
* Clients will see the amount of clients actually waiting in front of them, instead of the amount of waiting clients in total
13 years ago
rubidium
ce91f6b45e
(svn r22370) -Codechange/fix: keep better accounting of the order in which clients joined:
...
* Clients can't be starved from joining the game
* Clients will see the amount of clients actually waiting in front of them, instead of the amount of waiting clients in total
13 years ago
rubidium
586cd7d45e
(svn r22369) -Codechange: allocate ClientInfo when needed, i.e. don't allocate it for clients that are there to just get a list of companies. This means that these short lived clients won't be seen by the admin network in their client queries anymore
13 years ago
rubidium
cdfc0ec4a3
(svn r22369) -Codechange: allocate ClientInfo when needed, i.e. don't allocate it for clients that are there to just get a list of companies. This means that these short lived clients won't be seen by the admin network in their client queries anymore
13 years ago
rubidium
8430fadcbb
(svn r22368) -Codechange: move the IP address field from the ClientInfo to ClientSocket
13 years ago
rubidium
2cae0cd54c
(svn r22368) -Codechange: move the IP address field from the ClientInfo to ClientSocket
13 years ago
rubidium
9ce29f918d
(svn r22367) -Codechange: send ClientSockets instead of ClientInfos to the admin "core" as they send IP addresses to the admin "bots"
13 years ago
rubidium
146d532d51
(svn r22367) -Codechange: send ClientSockets instead of ClientInfos to the admin "core" as they send IP addresses to the admin "bots"
13 years ago
rubidium
7e151c1d51
(svn r22366) -Codechange: make GetClientIP a function of the server's ClientSocket, after all the Socket is the bit that's associated with the network
13 years ago
rubidium
c61abe0019
(svn r22366) -Codechange: make GetClientIP a function of the server's ClientSocket, after all the Socket is the bit that's associated with the network
13 years ago
rubidium
c4af57ad3b
(svn r22365) -Codechange: add overload of NetworkServerKickOrBanIP using the ClientID, which later resolves the IP address to ban. This to consolidate the knowledge about resolving IP addresses
13 years ago
rubidium
caf02450fb
(svn r22365) -Codechange: add overload of NetworkServerKickOrBanIP using the ClientID, which later resolves the IP address to ban. This to consolidate the knowledge about resolving IP addresses
13 years ago
rubidium
074644a3f0
(svn r22364) -Codechange: don't show the (unknown) client address in the client list at clients
13 years ago
rubidium
1c419d99bc
(svn r22364) -Codechange: don't show the (unknown) client address in the client list at clients
13 years ago
rubidium
9328b8b63d
(svn r22363) -Codechange: NetworkFindClientStateFromClientID -> NetworkClientSocket::GetByClientID
13 years ago
rubidium
f1d0c1a746
(svn r22363) -Codechange: NetworkFindClientStateFromClientID -> NetworkClientSocket::GetByClientID
13 years ago
rubidium
0a7dcc9781
(svn r22362) -Codechange: NetworkFindClientInfoFromClientID -> NetworkClientInfo::GetByClientID
13 years ago
rubidium
bc9a803ea9
(svn r22362) -Codechange: NetworkFindClientInfoFromClientID -> NetworkClientInfo::GetByClientID
13 years ago
rubidium
c90e28d184
(svn r22361) -Codechange: delete the client list popup when the client got removed (instead of previously selecting some other client)
13 years ago
rubidium
393fb8e46b
(svn r22361) -Codechange: delete the client list popup when the client got removed (instead of previously selecting some other client)
13 years ago
smatz
f695324fe3
(svn r22335) -Cleanup (r22308): remove superfluous tabs
13 years ago
smatz
b1286bbcda
(svn r22335) -Cleanup (r22308): remove superfluous tabs
13 years ago
rubidium
960380639f
(svn r22308) -Fix [FS#4574]: waiting on a server could kick the client, or rather the client would kick itself due to an unexpected packet
13 years ago
rubidium
d1a50a01b4
(svn r22308) -Fix [FS#4574]: waiting on a server could kick the client, or rather the client would kick itself due to an unexpected packet
13 years ago
rubidium
2d36797b85
(svn r22092) -Fix-ish (r22068): when you change a boolean to a enum, check specifically for a particular value
14 years ago
rubidium
848761e3a9
(svn r22092) -Fix-ish (r22068): when you change a boolean to a enum, check specifically for a particular value
14 years ago
smatz
03c1b0df4b
(svn r22086) -Fix: do not check if we can allocate an item if we won't try to do so anyway
14 years ago
smatz
a5b9858a36
(svn r22086) -Fix: do not check if we can allocate an item if we won't try to do so anyway
14 years ago
rubidium
1516299bca
(svn r22070) -Fix [FS#4503] (r21399): crashes when disconnecting after requesting the map
14 years ago
rubidium
befa79ba4a
(svn r22070) -Fix [FS#4503] (r21399): crashes when disconnecting after requesting the map
14 years ago
rubidium
65b17b32ef
(svn r22069) -Fix: delete all savegame packets, not just the first one
14 years ago
rubidium
a19bc28aba
(svn r22069) -Fix: delete all savegame packets, not just the first one
14 years ago
rubidium
c70499b4b6
(svn r22068) -Codechange/Fix: return "connection lost" instead of "okay" when SendPackets closed the connection
14 years ago
rubidium
adfd648031
(svn r22068) -Codechange/Fix: return "connection lost" instead of "okay" when SendPackets closed the connection
14 years ago
rubidium
6248138e67
(svn r22067) -Fix: don't hold a mutex when sending packets and thus possibly closing the connection as that wants to acquire the mutex again
14 years ago
rubidium
92d0d6d10b
(svn r22067) -Fix: don't hold a mutex when sending packets and thus possibly closing the connection as that wants to acquire the mutex again
14 years ago
rubidium
e92f2d6b9a
(svn r22064) -Fix [FS#4497] (r21399): crash when disconnecting and reconnecting while the server is still saving the savegame
14 years ago
rubidium
d8cada7563
(svn r22064) -Fix [FS#4497] (r21399): crash when disconnecting and reconnecting while the server is still saving the savegame
14 years ago
rubidium
6e898d4bba
(svn r22032) -Codechange: add some asserts to verify we don't allocate too many NetworkClientSockets/Infos
14 years ago
rubidium
05a846a574
(svn r22032) -Codechange: add some asserts to verify we don't allocate too many NetworkClientSockets/Infos
14 years ago
rubidium
05199a641a
(svn r21890) -Cleanup: remove some unneeded includes
14 years ago
rubidium
7eba2bf4d3
(svn r21890) -Cleanup: remove some unneeded includes
14 years ago
rubidium
f1e42dc23b
(svn r21854) -Codechange: refactor the password setting methods to make it possible to change the password of other companies (on the server)
14 years ago
rubidium
795a528328
(svn r21854) -Codechange: refactor the password setting methods to make it possible to change the password of other companies (on the server)
14 years ago
rubidium
a5108a1fa2
(svn r21853) -Codechange: HashCurrentCompanyPassword is only used by servers, so move it to network_server.* (dihedral)
14 years ago
rubidium
e54a1f6721
(svn r21853) -Codechange: HashCurrentCompanyPassword is only used by servers, so move it to network_server.* (dihedral)
14 years ago
rubidium
c060890062
(svn r21727) -Fix [FS#4377]: admin bots weren't always notified of password changes (dihedral)
14 years ago
rubidium
7dafd04f4b
(svn r21727) -Fix [FS#4377]: admin bots weren't always notified of password changes (dihedral)
14 years ago
smatz
a57d2243de
(svn r21704) -Fix [FS#4374]: no need to perform any more checks after the connection is closed (Rubidium)
14 years ago
smatz
810873ff33
(svn r21704) -Fix [FS#4374]: no need to perform any more checks after the connection is closed (Rubidium)
14 years ago
rubidium
692e61d1dc
(svn r21701) -Codechange: ConsoleColour = TextColour, so make it that way and remove some unneeded casts
14 years ago
rubidium
b25cf57542
(svn r21701) -Codechange: ConsoleColour = TextColour, so make it that way and remove some unneeded casts
14 years ago
alberth
135c5b3fd7
(svn r21571) -Codechange: Having a break after a return is no good.
14 years ago
alberth
b633ffaa1d
(svn r21571) -Codechange: Having a break after a return is no good.
14 years ago
rubidium
95934b9f49
(svn r21405) -Codechange: prepare sending of company information in the UDP packet for longer company names (in bytes), by truncating the names if needed
14 years ago
rubidium
9139a6c858
(svn r21405) -Codechange: prepare sending of company information in the UDP packet for longer company names (in bytes), by truncating the names if needed
14 years ago
rubidium
12efdff6c6
(svn r21401) -Fix: ofcourse MSVC x64 has something to complain about...
14 years ago
rubidium
5f25cdbbd5
(svn r21401) -Fix: ofcourse MSVC x64 has something to complain about...
14 years ago
rubidium
9b53982428
(svn r21399) -Change/Feature/Fix [FS#4284]: perform the compression of savegames to send to the client asynchroniously. This will reduce the lag of the other clients to the time it takes to make the memory dump and it will speed up downloading the map as the download starts earlier (possibly with a slightly lower bandwidth due to slow compression). This should also fix the lag message people get when the savegame compression takes more than a few seconds.
14 years ago
rubidium
216e48cd07
(svn r21399) -Change/Feature/Fix [FS#4284]: perform the compression of savegames to send to the client asynchroniously. This will reduce the lag of the other clients to the time it takes to make the memory dump and it will speed up downloading the map as the download starts earlier (possibly with a slightly lower bandwidth due to slow compression). This should also fix the lag message people get when the savegame compression takes more than a few seconds.
14 years ago
rubidium
f929107665
(svn r21398) -Change/Feature-ish: when making a savegame to send to a client, don't write it to disk but create the packets immediately
14 years ago
rubidium
02b3bc57d5
(svn r21398) -Change/Feature-ish: when making a savegame to send to a client, don't write it to disk but create the packets immediately
14 years ago
rubidium
5a40992e84
(svn r21392) -Change: prepare the network protocol for getting the file size later in the download process
14 years ago
rubidium
97434f0e06
(svn r21392) -Change: prepare the network protocol for getting the file size later in the download process
14 years ago
rubidium
71abb66b46
(svn r21363) -Add: support for limiting the amount of (accepted) incoming data
14 years ago
rubidium
fd752ca2b0
(svn r21363) -Add: support for limiting the amount of (accepted) incoming data
14 years ago
rubidium
4c76d8eaf6
(svn r21361) -Change: make sure the client is listening, or rather receiving, our frames
14 years ago
rubidium
31c8ab0ed8
(svn r21361) -Change: make sure the client is listening, or rather receiving, our frames
14 years ago
rubidium
c7066d00af
(svn r21358) -Codechange: make some network function names conform to coding style
14 years ago
rubidium
b6c2216749
(svn r21358) -Codechange: make some network function names conform to coding style
14 years ago
rubidium
b2c1f12b44
(svn r21350) -Fix: some indentation
14 years ago
rubidium
c60a850fed
(svn r21350) -Fix: some indentation
14 years ago
rubidium
2a465f152b
(svn r21334) -Fix [FS#4271]: make (more) sure that the savegame and transferred file are the same file and not different ones
14 years ago
rubidium
67f74559fc
(svn r21334) -Fix [FS#4271]: make (more) sure that the savegame and transferred file are the same file and not different ones
14 years ago
rubidium
d7eafddc18
(svn r21254) -Change: show a different "lag" message when a client is lagging because of connection trouble or lagging because the client is just slow
14 years ago
rubidium
6d09f4a3cb
(svn r21254) -Change: show a different "lag" message when a client is lagging because of connection trouble or lagging because the client is just slow
14 years ago
rubidium
df8b493d6e
(svn r21182) -Fix: possible just-freed memory reads
14 years ago
rubidium
673b3711b4
(svn r21182) -Fix: possible just-freed memory reads
14 years ago
rubidium
75aa37cf9a
(svn r21032) -Codechange: perform some more strict tests on the server side when receiving some packets and don't send some when the clients aren't ready for them
14 years ago
rubidium
4ea67eff8b
(svn r21032) -Codechange: perform some more strict tests on the server side when receiving some packets and don't send some when the clients aren't ready for them
14 years ago
rubidium
242110b8cb
(svn r21030) -Codechange: move ClientStatus into the network server socket class
14 years ago
rubidium
f24c91c487
(svn r21030) -Codechange: move ClientStatus into the network server socket class
14 years ago
rubidium
9012b54fa2
(svn r21029) -Codechange: split the map downloading packet + 3-state enum into 3 separate packets
14 years ago
rubidium
2cd67a51ac
(svn r21029) -Codechange: split the map downloading packet + 3-state enum into 3 separate packets
14 years ago
rubidium
2d32dc29a9
(svn r21024) -Fix: erroneous tab
14 years ago
rubidium
073b965829
(svn r21024) -Fix: erroneous tab
14 years ago
rubidium
abb9835f0a
(svn r21001) -Fix [FS#4170] (r20936): clients were not always notified of a player leaving the game
14 years ago
rubidium
af9a6b6b42
(svn r21001) -Fix [FS#4170] (r20936): clients were not always notified of a player leaving the game
14 years ago
rubidium
6012a9074c
(svn r20993) -Codechange: some shuffling of game protocol packet description so they're documented in the "same" place as UDP, content and admin packets (dihedral)
14 years ago
rubidium
d71f590ed6
(svn r20993) -Codechange: some shuffling of game protocol packet description so they're documented in the "same" place as UDP, content and admin packets (dihedral)
14 years ago
rubidium
28832b68f5
(svn r20973) -Add: chat sending and receiving support for remote admins (dihedral)
14 years ago
rubidium
d9602f4ef9
(svn r20973) -Add: chat sending and receiving support for remote admins (dihedral)
14 years ago
rubidium
56a65270fc
(svn r20970) -Add: company change notification to remote admins (dihedral)
14 years ago
rubidium
ae20cb4f3d
(svn r20970) -Add: company change notification to remote admins (dihedral)
14 years ago
rubidium
9f17b8ddee
(svn r20969) -Add: client info change notification to remote admins (dihedral)
14 years ago
rubidium
fe44944f32
(svn r20969) -Add: client info change notification to remote admins (dihedral)
14 years ago
rubidium
72c85d1cdb
(svn r20967) -Add: infrastructure to send information to remote admins at specific intervals (dihedral)
14 years ago
rubidium
b4ce7fad7f
(svn r20967) -Add: infrastructure to send information to remote admins at specific intervals (dihedral)
14 years ago
rubidium
b6799a23c4
(svn r20938) -Codechange: make the code for listening on a socket (more) reusable
14 years ago
rubidium
234bee0858
(svn r20938) -Codechange: make the code for listening on a socket (more) reusable
14 years ago
rubidium
a0f7099a7d
(svn r20937) -Codechange: move some variables from client/server to server only
14 years ago
rubidium
c9cbab14ea
(svn r20937) -Codechange: move some variables from client/server to server only
14 years ago
rubidium
332a1bfdea
(svn r20936) -Codechange: make server side packet sending methods class methods
14 years ago
rubidium
f712055002
(svn r20936) -Codechange: make server side packet sending methods class methods
14 years ago
rubidium
66087c5e60
(svn r20935) -Codechange: only let the server side use a pool of connected sockets
14 years ago
rubidium
9858d699a3
(svn r20935) -Codechange: only let the server side use a pool of connected sockets
14 years ago
rubidium
04ce759165
(svn r20934) -Codechange: move NetworkGetClientName to the server's socket
14 years ago
rubidium
bda26d03b5
(svn r20934) -Codechange: move NetworkGetClientName to the server's socket
14 years ago
rubidium
6ff39fc5ec
(svn r20929) -Codechange: make NetworkCloseClient a class method
14 years ago
rubidium
7ba07d9573
(svn r20929) -Codechange: make NetworkCloseClient a class method
14 years ago
rubidium
41e6567c0d
(svn r20924) -Codechange: make the game connection packet handling look more like UDP/content packet handling
14 years ago
rubidium
0ca7e4e82e
(svn r20924) -Codechange: make the game connection packet handling look more like UDP/content packet handling
14 years ago
rubidium
594faf45d9
(svn r20923) -Codechange: prepare creating sub-classes of NetworkClientSocket for server and client side
14 years ago
rubidium
8eb07d097e
(svn r20923) -Codechange: prepare creating sub-classes of NetworkClientSocket for server and client side
14 years ago
alberth
2b4da1d345
(svn r20689) -Codechange: Make some global functions used in 1 .cpp file static in that file.
14 years ago
alberth
9f5a96ead2
(svn r20689) -Codechange: Make some global functions used in 1 .cpp file static in that file.
14 years ago
rubidium
6d3c747d05
(svn r20553) -Feature: allow rate limiting of incoming commands
14 years ago
rubidium
a4c6d07edc
(svn r20553) -Feature: allow rate limiting of incoming commands
14 years ago
rubidium
8f82b2b588
(svn r20549) -Codechange: centralise the handling of the incoming commands (from clients and the server)
14 years ago
rubidium
b594990071
(svn r20549) -Codechange: centralise the handling of the incoming commands (from clients and the server)
14 years ago
rubidium
3ed6ca0aed
(svn r20548) -Codechange: rename some variables giving them slightly more meaningful names
14 years ago
rubidium
e8e22c99fd
(svn r20548) -Codechange: rename some variables giving them slightly more meaningful names
14 years ago
rubidium
8a9929d702
(svn r20542) -Codechange: generalise the setting of "p2" to the ClientID.
14 years ago
rubidium
69fa0b36d3
(svn r20542) -Codechange: generalise the setting of "p2" to the ClientID.
14 years ago
rubidium
6f81fa7215
(svn r20510) -Codechange: unify packet queue handling and make insertion O(1) instead of O(n)
14 years ago
rubidium
1c3d42598e
(svn r20510) -Codechange: unify packet queue handling and make insertion O(1) instead of O(n)
14 years ago
alberth
2182b44bb6
(svn r20291) -Codechange: Unify break coding style.
14 years ago
alberth
ee01ec9136
(svn r20291) -Codechange: Unify break coding style.
14 years ago
frosch
c18839704b
(svn r20286) -Codechange: Unify end of doxygen comments.
14 years ago
frosch
4bd32799f1
(svn r20286) -Codechange: Unify end of doxygen comments.
14 years ago
frosch
5b86c79fce
(svn r20283) -Codechange: Unify start of doygen comments.
14 years ago
frosch
ed4f806f1d
(svn r20283) -Codechange: Unify start of doygen comments.
14 years ago
terkhen
c92b2e9d3c
(svn r20239) -Doc: Give a common name to all fall throughs (FALL THROUGH).
14 years ago
terkhen
88ca183191
(svn r20239) -Doc: Give a common name to all fall throughs (FALL THROUGH).
14 years ago
alberth
137e2b64c9
(svn r20211) -Codechange: Indented code should have curly braces around it.
14 years ago
alberth
be6c058424
(svn r20211) -Codechange: Indented code should have curly braces around it.
14 years ago
rubidium
8b8102d30f
(svn r19996) -Codechange: Add NetworkVehicleType enum.
14 years ago
rubidium
99a11badaf
(svn r19996) -Codechange: Add NetworkVehicleType enum.
14 years ago
smatz
09cb5fff3a
(svn r19818) -Fix [FS#3784](r16004): kicking clients by IP didn't work
14 years ago
smatz
80fd67a314
(svn r19818) -Fix [FS#3784](r16004): kicking clients by IP didn't work
14 years ago
rubidium
eb8ee7ad5e
(svn r19809) -Codechange: make some unnamed network related enums/defines static const variables
14 years ago
rubidium
2555522eab
(svn r19809) -Codechange: make some unnamed network related enums/defines static const variables
14 years ago
rubidium
5732bdcdb9
(svn r19808) -Codechange: NetworkCalculateLag returned an uint, so keep it that way
14 years ago
rubidium
6fa962b867
(svn r19808) -Codechange: NetworkCalculateLag returned an uint, so keep it that way
14 years ago
rubidium
0cfec82674
(svn r19695) -Fix: leaking a file descriptor
14 years ago
rubidium
26af87bbaa
(svn r19695) -Fix: leaking a file descriptor
14 years ago
smatz
52b5be7434
(svn r19693) -Codechange: split STATUS_INACTIVE to two states
14 years ago
smatz
f48f4c8293
(svn r19693) -Codechange: split STATUS_INACTIVE to two states
14 years ago
rubidium
a83194fad3
(svn r19678) -Fix (r19607): client status was shown incorrect in the console
14 years ago
rubidium
df4d8b3bc9
(svn r19678) -Fix (r19607): client status was shown incorrect in the console
14 years ago
smatz
abaf6b5b42
(svn r19651) -Fix [FS#3745]: when a company is sold, move connected clients to spectators
14 years ago
smatz
cd20724d20
(svn r19651) -Fix [FS#3745]: when a company is sold, move connected clients to spectators
14 years ago
rubidium
34cdcaf8b2
(svn r19620) -Fix: desync when a command is received and in the queue while a client starts joining, i.e. save the game state. This can happen in two ways: with frame_freq > 1 a command received in a previous frame might not be executed yet or when a command is received in the same frame as the join but before the savegame is made. In both cases the joining client would not get all commands to get in-sync with the server (and the other clients).
14 years ago
rubidium
088282bcf8
(svn r19620) -Fix: desync when a command is received and in the queue while a client starts joining, i.e. save the game state. This can happen in two ways: with frame_freq > 1 a command received in a previous frame might not be executed yet or when a command is received in the same frame as the join but before the savegame is made. In both cases the joining client would not get all commands to get in-sync with the server (and the other clients).
14 years ago
smatz
073af4eba2
(svn r19613) -Fix [FS#3755]: possible invalid read when server moves client to spectators before he finishes joining
14 years ago
smatz
24a60b77ec
(svn r19613) -Fix [FS#3755]: possible invalid read when server moves client to spectators before he finishes joining
14 years ago
smatz
e0746e5bd3
(svn r19610) -Codechange: rename STATUS_AUTH to STATUS_AUTHORIZED
14 years ago