rubidium
169a003e9a
(svn r16135) -Fix [FS#2856]: always give the server an already resolved 'client address' so we can be sure the client address is always resolved
2009-04-24 10:52:51 +00:00
rubidium
5db32d1dc5
(svn r16134) -Change: do not add duplicates to the broadcast list
2009-04-24 10:33:16 +00:00
rubidium
59d45a04d6
(svn r16118) -Change/cleanup: remove the hexadecimal 'in TTD the string had this ID' from 'some' strings and replace the string name with something more sensible.
2009-04-21 23:40:56 +00:00
rubidium
f14425e2c4
(svn r16071) -Fix [FS#2845]: content download progress bar 'resetting' due to mathematical overflow.
2009-04-17 17:48:33 +00:00
rubidium
d04ebf2fa5
(svn r16065) -Fix: don't readd (and resolve) the last joined server each time the window gets repainted
2009-04-15 20:37:00 +00:00
rubidium
3061d70387
(svn r16064) -Fix: memory leak when querying a server multiple times.
2009-04-15 20:35:52 +00:00
glx
532fca65ef
(svn r16050) -Fix (r15933): little typo causing OTTDfreeaddrinfo to use the fallback even when freeaddrinfo is available
2009-04-12 22:13:05 +00:00
rubidium
47e2901e18
(svn r16034) -Fix: compile warnings generated by 64 bits MSVC.
2009-04-11 20:26:25 +00:00
peter1138
be7215497c
(svn r16026) -Codechange: Use font height for chat line spacing instead of fixed value.
2009-04-11 10:38:00 +00:00
rubidium
2663ad302f
(svn r16022) -Fix (r15159): sometimes the unregister "query" thread could be delayed so much that the network stuff was already closed and the packet would never reach the master server causing the server to appear online longer than necessary.
2009-04-10 20:18:48 +00:00
rubidium
7d3db3ee91
(svn r16014) -Feature(-ish): allow binding to several IPs; [network]:server_bind_ip doesn't exist anymore. Add the IPs/hostnames to [server_bind_addresses]
2009-04-10 12:56:55 +00:00
rubidium
460fbc7c92
(svn r16007) -Fix (r16004): when we want to bind to both IPv4 and IPv6, make the master socket do that too; too bad getaddrinfo can't handle binding to any address on any port at the same time :(
2009-04-10 09:23:35 +00:00
rubidium
28bce241fd
(svn r16005) -Fix: assertion when there is no last joined server; when you've got an unresolved address, the hostname cannot be resolved either so return it as-is.
2009-04-09 21:36:09 +00:00
rubidium
8477e92386
(svn r16004) -Fix (r16000): explicitly binding to an IPv4 socket would try to register an IPv6 address (only if it could ofcourse)
2009-04-09 21:26:29 +00:00
rubidium
c0f9af5607
(svn r16000) -Feature: IPv6 support
2009-04-09 01:22:45 +00:00
rubidium
ebe0f9e7f7
(svn r15998) -Codechange: some coding style updates
2009-04-09 01:16:15 +00:00
rubidium
882e495f5c
(svn r15993) -Codechange: clean up/generalise the handling of the server list
2009-04-08 23:41:48 +00:00
rubidium
c2dbc8270b
(svn r15991) -Fix: don't add 0.0.0.0/:: to the server list; you can't connect to them in any case
2009-04-08 21:16:24 +00:00
rubidium
0f0cc67d62
(svn r15990) -Codechange: provide a thread safe variant of GetAddressAsString.
2009-04-08 21:11:16 +00:00
rubidium
e779c56e31
(svn r15989) -Fix (r15987: segfault due to uninitialised sockets.
2009-04-08 21:03:00 +00:00
rubidium
1d4318c0d1
(svn r15988) -Fix: inconsistency between using NETWORK_NAME_LENGTH and NETWORK_CLIENT_NAME_LENGTH for the length of client names.
2009-04-08 19:39:03 +00:00
rubidium
08e37a6f10
(svn r15987) -Fix: make the master socket only listen on the IP the server is bound to.
2009-04-08 19:36:51 +00:00
rubidium
080095ade5
(svn r15984) -Codechange: prepare the UDP receiver to process multiple types of returned server lists.
2009-04-08 17:51:04 +00:00
rubidium
cd8da0d69e
(svn r15982) -Codechange: use GetAddressAsString to get the name instead of passing the hostname and the IP into a string.
2009-04-08 12:52:53 +00:00
rubidium
9d6edae94d
(svn r15981) -Fix: don't print the address family when writing the IP+port to the config file.
2009-04-08 12:09:07 +00:00
rubidium
18146572b0
(svn r15980) -Codechange: don't try to bind to the same socket twice; it's quite pointless.
2009-04-08 11:57:00 +00:00
rubidium
c2152fa31f
(svn r15979) -Codechange: tweak the debug/warning levels of some of the messages when binding
2009-04-08 01:23:44 +00:00
rubidium
a5a424ce28
(svn r15978) -Codechange: support parsing [] enclosed IPv6 addresses.
2009-04-08 01:22:57 +00:00
rubidium
20e82c46d3
(svn r15976) -Codechange: make it a bit more clear for what (type of) address binding fails
2009-04-08 00:41:35 +00:00
rubidium
1eb4aa971e
(svn r15975) -Codechange: register each of the IPs we have bound to to the masterserver
2009-04-08 00:26:49 +00:00
glx
d466fa9672
(svn r15974) -Fix (r15969): win32 compilation was broken (again)
2009-04-08 00:10:20 +00:00
rubidium
8cf88876ef
(svn r15973) -Codechange: make it possible to listen on multiple TCP sockets
2009-04-08 00:05:16 +00:00
rubidium
c0f8214218
(svn r15972) -Codechange: remove unneeded parameter
2009-04-08 00:03:05 +00:00
rubidium
2a6e9288fd
(svn r15971) -Codechange: make it possible for UDP socket handlers to bind to multiple sockets.
2009-04-07 20:27:13 +00:00
rubidium
6db7f15b3a
(svn r15970) -Codechange: make it possible to resolve a single address into multiple sockets.
2009-04-07 19:52:01 +00:00
rubidium
82f8badc07
(svn r15969) -Codechange: make the list of broadcast addresses virtually unlimited.
2009-04-07 19:06:36 +00:00
rubidium
fdddfd6269
(svn r15968) -Codechange: do not allocate a buffer for NetworkAddresses so passing it around is easier.
2009-04-07 19:04:37 +00:00
rubidium
22d9306889
(svn r15967) -Codechange: do not access NetworkSocketHandler::has_quit directly
2009-04-07 18:23:14 +00:00
rubidium
0678cb561d
(svn r15961) -Codechange: prepare the 'client' side for receiving 'session keys' from the masterserver so servers can register with multiple IPs as the same server.
2009-04-05 19:43:41 +00:00
rubidium
edfc2e536e
(svn r15954) -Fix: comparing addresses kinda fails (sometimes) causing duplicates in the game list
2009-04-04 13:09:36 +00:00
rubidium
616cac0c54
(svn r15951) -Fix (r15946) [FS#2803]: ofcourse a couple of OSes/compilers do not provide a nice 'interface', so we have to do it the ugly way.
2009-04-04 08:48:12 +00:00
glx
5eed35ef54
(svn r15950) -Fix (r15946): mingw compilation
2009-04-04 03:45:02 +00:00
rubidium
a779611665
(svn r15948) -Fix: resolve network addresses before comparing them
2009-04-04 01:51:32 +00:00
rubidium
c9ebf14ba5
(svn r15947) -Codechange: replace uint32 client_ip with NetworkAddress client_address.
2009-04-04 00:48:48 +00:00
rubidium
2fd9f0fffa
(svn r15946) -Codechange: move netmask matching to NetworkAddress and add some support for IPv6 netmask matching.
2009-04-04 00:47:08 +00:00
glx
e460d3f4d0
(svn r15945) -Fix (r15944): win32 compilation
2009-04-03 23:44:31 +00:00
rubidium
7cf4639255
(svn r15944) -Codechange: disable IPv4 over IPv6 sockets as there is no default value and not all OSes actually support IPv4 over IPv6 so making it the same on all OSes eases debugging and such
2009-04-03 21:46:52 +00:00
rubidium
ce06df313d
(svn r15941) -Codechange: jonty-comp's wish partly implemented (content server) ;)
2009-04-03 17:20:57 +00:00
rubidium
1463b00b48
(svn r15940) -Codechange: move setting reuse address to the binding process.
2009-04-03 17:02:29 +00:00
glx
2dafb9dd57
(svn r15938) -Fix: broadcast addresses detection was broken for win32
2009-04-03 16:22:34 +00:00
rubidium
e05e1822d6
(svn r15935) -Codechange: function to compare IP addresses (to sort them)
2009-04-03 15:42:41 +00:00
rubidium
2bfc9ca50c
(svn r15934) -Fix: work around Solaris' inability to "parse" 0 as defined in the specifications.
2009-04-03 15:24:39 +00:00
glx
65d10e66f0
(svn r15933) -Fix (r15920): mingw doesn't know getaddrinfo() and freeaddrinfo() either
2009-04-03 14:01:45 +00:00
rubidium
5386fe1a1c
(svn r15932) -Codechange: show ip:port as (fallback) servername instead of only the ip. This way you can clearly see there aren't any duplicates.
2009-04-03 12:54:38 +00:00
rubidium
89d0eca6b7
(svn r15931) -Codechange: let the host and ban lists use of SmallVector.
2009-04-03 12:49:58 +00:00
glx
d84fb358f5
(svn r15930) -Fix (r15926): MSVC compilation
2009-04-03 12:48:11 +00:00
rubidium
11723c40b2
(svn r15926) -Codechange: make the broadcast IP list less AF dependent.
2009-04-03 11:02:41 +00:00
rubidium
47602d7b60
(svn r15925) -Codechange: remove _network_server_bind_ip as it's pretty AF dependant.
2009-04-03 10:29:56 +00:00
rubidium
dccfba6e20
(svn r15924) -Codechange: replace NetworkResolveHost with something less AF dependant.
2009-04-03 09:07:16 +00:00
rubidium
632d74c6b1
(svn r15922) -Codechange: unify the ways to listen on a socket
2009-04-03 01:24:52 +00:00
rubidium
ba5aafb9bb
(svn r15921) -Fix: some OSes don't like sizeof(sockaddr_storage) but want sizeof(sockaddr) or whatever is 'valid' for the given protocol
2009-04-03 00:33:00 +00:00
rubidium
c7b6469dab
(svn r15920) -Codechange: make the (TCP) connecting less AF dependent.
2009-04-02 23:59:43 +00:00
glx
521bf687ee
(svn r15919) -Fix (r15916): mingw doesn't know getnameinfo() (unless you compile for XP SP2+). Also fix a MSVC warning.
2009-04-02 23:22:59 +00:00
rubidium
beef5da970
(svn r15918) -Fix (r15917): comparing IPs sometimes failed due to 'random' data (as spotted by SpComb)
2009-04-02 23:03:18 +00:00
rubidium
c5160c7c8e
(svn r15917) -Codechange: remove the latest traces of NetworkAddress::GetIP.
2009-04-02 20:39:30 +00:00
rubidium
1e205e01b8
(svn r15916) -Codechange: let the network game list use NetworkAddress
2009-04-02 20:17:46 +00:00
rubidium
c0c6e07081
(svn r15915) -Codechange: let the udp code use NetworkAddress.
2009-04-02 19:21:26 +00:00
rubidium
804370d964
(svn r15914) -Codechange: let the content handling make use of NetworkAddress.
2009-04-02 18:35:59 +00:00
rubidium
d3fa15e620
(svn r15905) -Fix (r15424): chat completion got called twice causing tab completion to seemingly fail
2009-03-31 00:57:21 +00:00
alberth
9d2738b9c4
(svn r15885) -Codechange: Removed new_size parameter of Window::OnResize() callback
2009-03-29 09:49:11 +00:00
peter1138
28d3123dfd
(svn r15848) -Feature: Add autoclean_novehicles setting which will, when autoclean_companies is true, remove any company with no vehicles and no active client after autoclean_novehciles-months.
2009-03-25 16:30:33 +00:00
yexo
b61a681f02
(svn r15825) -Codechange: remove the WWT_DROPDOWNIN widget type and replace it with WWT_DROPDOWN.
2009-03-23 00:08:59 +00:00
rubidium
e25b2f5d60
(svn r15822) -Codechange: replace some magic numbers and improve alignment of the start server window.
2009-03-22 23:38:29 +00:00
alberth
6567a29e18
(svn r15820) -Codechange: Some windows using nested widgets
2009-03-22 21:16:57 +00:00
rubidium
9038733f1a
(svn r15812) -Codechange: use the new DrawString API in another set of GUIs
2009-03-22 14:39:20 +00:00
rubidium
57174a9301
(svn r15808) -Codechange: use the new DrawString API in a number of GUIs
2009-03-22 12:01:21 +00:00
rubidium
e74dc1e1d6
(svn r15803) -Codechange: use the new text drawing API for multicenter
...
-Fix (r15800): off-by-one w.r.t. offsets
2009-03-22 09:34:06 +00:00
rubidium
d837fc4d03
(svn r15797) -Codechange: make users of the old DrawStringMultiLine use the new one.
2009-03-21 23:45:34 +00:00
rubidium
f11300d1f9
(svn r15794) -Codechange: remove the DoDrawString part of the old text drawing API
2009-03-21 22:46:17 +00:00
rubidium
69decac406
(svn r15791) -Codechange: remove the *RightAligned part of the old text drawing API.
2009-03-21 22:22:00 +00:00
rubidium
9003641095
(svn r15790) -Codechange: remove the *Centered part of the old text drawing API.
2009-03-21 22:00:00 +00:00
rubidium
fd0f0bda72
(svn r15788) -Codechange: enumify the network join status widgets and use them.
2009-03-21 21:26:10 +00:00
rubidium
45f189fdca
(svn r15785) -Codechange: remove the *Truncated part of the old text drawing API.
2009-03-21 20:12:12 +00:00
glx
9fcff01850
(svn r15784) -Fix (r15779): TextAlignment and TA_* already exist on windows
2009-03-21 20:06:00 +00:00
rubidium
8a758beec3
(svn r15782) -Codechange: replace some calls to the all text drawing API to the new one.
2009-03-21 19:10:26 +00:00
rubidium
ee4a660b0c
(svn r15773) -Fix [FS#2475]: number of active clients wasn't always properly
2009-03-19 23:32:39 +00:00
rubidium
f5cb1873d6
(svn r15766) -Fix [FS#2744]: Crash when opening the content list window twice; inconsistencies when clicking download twice.
2009-03-19 17:56:45 +00:00
smatz
8585aa71ed
(svn r15726) -Codechange: unify coding style for const pointers
2009-03-15 16:04:39 +00:00
rubidium
4f8eeca437
(svn r15724) -Codechange: some widget documentation/fixing of enumified constant names (Alberth)
2009-03-15 15:22:09 +00:00
rubidium
f9def73be6
(svn r15723) -Codechange: use a constructor for WindowDescs as that makes expanding them much easier (Alberth)
2009-03-15 15:12:06 +00:00
rubidium
b25a4f8231
(svn r15718) -Cleanup: apply some comment coding style on the rest of the sources too
2009-03-15 00:32:18 +00:00
rubidium
9d018723b7
(svn r15711) -Codechange: lots of whitespace cleanup/fixes
2009-03-14 18:16:29 +00:00
rubidium
27bcfd115b
(svn r15702) -Feature(tte): direct content download 'links' in the play scenario/heightmap windows.
2009-03-13 21:32:38 +00:00
yexo
2b0b9a6367
(svn r15669) -Change: Key presses that are not handles by an input box are no longer marked as handled but given to other OnKeyPress handlers. This makes the global shortcuts like F1 work again when an input box is open.
2009-03-11 09:21:11 +00:00
rubidium
4a5c4f6089
(svn r15644) -Fix [FS#2710]: closing a network connection twice in the case that sending packets starts failing while disconnecting
2009-03-08 16:14:14 +00:00
smatz
642dc1ea5e
(svn r15640) -Fix [FS#2712]: game crashes when network pools are empty, so always allocate at least one pool block
2009-03-07 22:40:47 +00:00
rubidium
406832fed8
(svn r15632) -Feature: allow downloading scenarios and heightmaps via bananas.
2009-03-06 19:33:45 +00:00
smatz
f3ed8268b6
(svn r15628) -Fix [FS#2705]: kicking/banning a client from the Client list window crashed the server
2009-03-06 12:42:01 +00:00
rubidium
86ca408d46
(svn r15626) -Fix [FS#2698]: UTF8 string handling could cause buffer overruns.
2009-03-06 01:23:25 +00:00
rubidium
908e850b5a
(svn r15605) -Codechange: constify a function
2009-03-04 00:13:52 +00:00
rubidium
3ae9851bd8
(svn r15580) -Fix [FS#2684]: last activity time not properly updated causing downloads to be aborted after a minute.
2009-02-25 17:00:59 +00:00
rubidium
66a8c0a132
(svn r15577) -Codechange: bool _networking belongs in network/ not gfx.cpp
2009-02-25 00:48:04 +00:00
yexo
3bb872e7dd
(svn r15576) -Codechange: rename SwitchModes to SwitchMode and don't hardcode the values for that enum.
2009-02-25 00:45:52 +00:00
yexo
901230bde1
(svn r15575) -Codechange: Rename GameModes to GameMode and store _game_mode as GameMode instead of as byte.
2009-02-25 00:14:46 +00:00
smatz
846044ee26
(svn r15571) -Fix: incorrect use of memset
2009-02-24 22:25:23 +00:00
rubidium
8fa247c4b1
(svn r15566) -Change: reintroduce space as valid method of selecting 'content' as long as the filter box is not focused. Enter will also work when the filter box is focused.
2009-02-24 13:32:18 +00:00
rubidium
4bf2f4a166
(svn r15565) -Fix [FS#2675]: dependency information wasn't requested after the content state was reset causing the dependencies not always being selected (and thus downloaded) automatically.
2009-02-24 13:25:35 +00:00
rubidium
54f852f094
(svn r15552) -Fix (r15544): some compiler/OS combinations don't like closing the same FD twice and zlib's docs weren't very clear about whether it would close a FD it didn't open.
2009-02-22 02:57:15 +00:00
rubidium
fdc2e85184
(svn r15544) -Fix [FS#2650]: extracting downloaded content didn't work for Windows if one uses a non-ASCII.
2009-02-21 14:00:35 +00:00
rubidium
c5677da94d
(svn r15529) -Fix [FS#2644]: the local command queue didn't get properly cleaned when leaving a game meaning you could end up executing commands of the previous network game.
2009-02-20 00:03:29 +00:00
rubidium
dba12992e8
(svn r15442) -Codechange: don't do magic on magic numbers when you can also use a single named constant.
2009-02-11 01:28:10 +00:00
peter1138
cd0b38d234
(svn r15433) -Fix (r15126): Content download progress bar was not centered properly.
2009-02-09 20:30:16 +00:00
rubidium
c0a8d09ca7
(svn r15428) -Codechange: consistently use colour instead of having both color and colour.
2009-02-09 02:57:15 +00:00
rubidium
8dae160d0f
(svn r15425) -Codechange: some color->colour changes and type safety.
2009-02-09 02:09:47 +00:00
rubidium
861e9cefb3
(svn r15424) -Codechange: make it possible to have multiple windows with edit box open simultaniously (Zuu).
2009-02-09 01:22:29 +00:00
rubidium
377ce6c5bf
(svn r15410) -Cleanup: get rid of most of the references to the 'patches' except where it's used for backward compatability.
2009-02-08 12:25:13 +00:00
rubidium
d7a053578d
(svn r15395) -Fix [FS#2611] (r15377): one couldn't reset companies anymore in a 'dedicated' server.
2009-02-07 12:02:13 +00:00
rubidium
841050ec83
(svn r15377) -Fix [FS#2607]: filter did resort when unneeded and didn't deselect properly in some cases (Roujin)
2009-02-06 18:00:05 +00:00
rubidium
ef754b8b6d
(svn r15373) -Fix [FS#2606]: Kenobi denied the server's client name to the tab-completed.
2009-02-06 15:11:17 +00:00
rubidium
c346f249cd
(svn r15372) -Feature: filter the 'content' based on the tag/name. Based on a patch by Roujin.
2009-02-06 12:00:14 +00:00
rubidium
ac7757324e
(svn r15338) -Fix [FS#2598]: close all construction related windows whenever changing company.
2009-02-04 16:59:41 +00:00
peter1138
aad67b5736
(svn r15312) -Codechange: Handle closing of drop down menus when clicking in a window in a single place, instead of in the OnClick event for some windows. This standardises behaviour so that clicking anywhere in a window will close its drop down menu, which happened before for some windows but not all. In addition the dubious feature of hiding a drop down menu by opening the same menu has been removed. This only caused wasted CPU cycles as a whole new list was generated and then destroyed. Breathe.
2009-02-01 22:32:07 +00:00
smatz
0d3f5e6e74
(svn r15299) -Cleanup: remove many redundant includes
2009-01-31 20:16:06 +00:00
rubidium
3d21639d5b
(svn r15247) -Change: show a lock near the password/join button in the company window whenever the company is password protected
2009-01-23 23:56:56 +00:00
rubidium
04709f2798
(svn r15242) -Feature: allow moving clients between companies/spectators by the server and the clients themselves (dihedral)
2009-01-23 22:18:06 +00:00
Yexo
c5332eb161
(svn r15234) -Fix (r15176): Crash if you pressed space in the content download window before selecting an item.
2009-01-23 18:40:18 +00:00
rubidium
8382b76b0f
(svn r15221) -Change [FS#2574]: only show missing NewGRFs when opening the content download window from a NewGRF list and there are missing NewGRFs, otherwise show just all NewGRFs the system knows.
2009-01-23 10:20:29 +00:00
rubidium
6f5078b555
(svn r15217) -Fix [FS#2573] (r15176): more corner cases when removing things from iterated vectors
2009-01-23 09:00:01 +00:00
rubidium
83e1288c6a
(svn r15215) -Fix: various MSVC x64 compiler warnings
2009-01-23 02:01:05 +00:00
rubidium
8ef066baee
(svn r15207) -Add: sorting to the content list.
2009-01-22 14:15:52 +00:00
rubidium
4f5a8b15ed
(svn r15206) -Fix [FS#2567]: memory corruption due to not properly cleanup up the mess when cancelling a download
2009-01-22 10:09:56 +00:00
rubidium
f2777cd02d
(svn r15200) -Feature: give server admins a tool to combat profanity in nick names (based on patch by dihedral)
2009-01-21 23:07:11 +00:00
rubidium
86c1d49c08
(svn r15196) -Fix (r15195): != != == :(
2009-01-21 20:18:12 +00:00
rubidium
4bf2326bd1
(svn r15195) -Fix: don't crash when removing from something you're iterating over
2009-01-21 12:23:08 +00:00
peter1138
727ffeedc9
(svn r15194) -Fix: Don't count dedicated server as a spectator
2009-01-21 10:46:21 +00:00
rubidium
ff328bf68b
(svn r15178) -Change: rename 'update' to 'upgrade' as that's a bit more clear
2009-01-20 21:05:13 +00:00
rubidium
eeb38a8e3a
(svn r15176) -Fix [FS#2554]: querying the content server could free when resolving the hostname or connecting takes long/is timing out.
2009-01-20 16:51:55 +00:00
rubidium
28a641066e
(svn r15163) -Change/Fix: use a non-blocking method to resolve the hostname and connect to game servers.
2009-01-20 11:28:18 +00:00
rubidium
c9436c8d88
(svn r15162) -Fix: the join status window didn't get properly created
2009-01-20 11:21:06 +00:00
rubidium
99b1f1a8f4
(svn r15161) -Change: bump url to 96 bytes
2009-01-20 09:52:11 +00:00
glx
24351416f6
(svn r15160) -Fix (r15157): port != IP
2009-01-20 04:01:07 +00:00
rubidium
6a3aaef486
(svn r15159) -Fix: move the UDP queries that resolve a hostname into threads so they don't freeze OpenTTD when for example the network connection got severed. Thanks to glx for writing the mutex implementation for Windows.
2009-01-20 03:44:43 +00:00
rubidium
5f3772a42c
(svn r15157) -Codechange: wrap the hostname/ip and port into a single structure so we can pass either one of them and not convert an ip to a string and then back again.
2009-01-20 01:32:06 +00:00
rubidium
9b463c26de
(svn r15155) -Codechange: remove unused return value
2009-01-19 22:01:37 +00:00
rubidium
7205a8f9f4
(svn r15154) -Fix [FS#2555] (r15126): wrong tooltip for the matrix
2009-01-19 21:13:02 +00:00
rubidium
914073a30a
(svn r15153) -Fix (r15126): the scrollbar's "count" wasn't always correctly set
2009-01-19 21:11:51 +00:00
rubidium
d793439f43
(svn r15136) -Fix (r15126): (file) name could occasionally be wider than the download window causing glitches.
2009-01-18 15:53:21 +00:00
rubidium
07e135547e
(svn r15135) -Fix/Change: allow str_validate (part of receiving strings from the network) to pass newlines instead of replacing them with question marks, but only when asked to do so.
2009-01-18 13:12:57 +00:00
rubidium
b8219eb7a1
(svn r15134) -Fix (r15126): not selecting dependencies when pressing "select update"
2009-01-18 00:05:49 +00:00
rubidium
3a13b75e37
(svn r15126) -Feature: downloading content from a central server (content.openttd.org) where authors can upload they NewGRFS/AI etc. This should make joining servers that use only NewGRFs that are distributed via this system easier as the players can download the NewGRFs from in the game. It should also make it easier to see whether there are updates for NewGRFs and make the necessary updates.
2009-01-17 16:53:32 +00:00
rubidium
b1a33a494f
(svn r15104) -Codechange: unify the resolving of the xyz kbytes/megabytes strings.
2009-01-16 12:59:47 +00:00
peter1138
a039ec0d21
(svn r15094) -Feature: Add support for IP range bans using CIDR notation.
2009-01-15 18:11:26 +00:00
rubidium
e18c24cdb5
(svn r15079) -Codechange: split tcp 'backend' and in-game handling like it is for UDP.
2009-01-14 12:50:13 +00:00
rubidium
04ea0b9316
(svn r15053) -Cleanup: remove some unneeded includes
2009-01-13 11:53:33 +00:00
rubidium
fc696a7e29
(svn r15052) -Codechange: move the implementation of Send_CompanyInformation to network_server.cpp as the server's the one that sends that information
2009-01-13 11:46:29 +00:00
truebrain
a3dd7506d3
(svn r15027) -Merge: tomatos and bananas left to be, here is NoAI for all to see.
...
NoAI is an API (a framework) to build your own AIs in. See:
http://wiki.openttd.org/wiki/index.php/AI:Main_Page
With many thanks to:
- glx and Rubidium for their syncing, feedback and hard work
- Yexo for his feedback, patches, and AIs which tested the system very deep
- Morloth for his feedback and patches
- TJIP for hosting a challenge which kept NoAI on track
- All AI authors for testing our AI API, and all other people who helped in one way or another
-Remove: all old AIs and their cheats/hacks
2009-01-12 17:11:45 +00:00
rubidium
11da45ee55
(svn r14949) -Cleanup: pointer coding style
2009-01-10 00:31:47 +00:00
rubidium
cda853872a
(svn r14944) -Cleanup: add spaces around some operators
2009-01-09 22:56:28 +00:00
rubidium
c08f520acf
(svn r14943) -Cleanup: remove some rogue spaces/replace some rogue tabs with spaces
2009-01-09 22:48:57 +00:00
belugas
729cebda47
(svn r14927) -Codechange: constify widget numbers in network chat gui.
2009-01-08 22:33:54 +00:00
rubidium
e39484e9a8
(svn r14916) -Codechange: make it possible to send CommandContainers directly to DoCommand(P).
2009-01-08 14:55:28 +00:00
rubidium
427e2d30c5
(svn r14915) -Codechange: unify the receiving and sending of commands, and thus unifying most of the validity checking too.
2009-01-08 14:40:18 +00:00
belugas
38bd396f90
(svn r14914) -Documentation: Correct doxygen comment for file name. <nitpicked> by Swallow
2009-01-08 14:38:21 +00:00
rubidium
d4b6cc997d
(svn r14910) -Codechange: merge the command queue handling into a single location
2009-01-08 13:57:50 +00:00
rubidium
fa22bcd456
(svn r14898) -Fix (r14897): ccache's caching seems to be a bit too agressive or so.
2009-01-07 15:36:37 +00:00
rubidium
8d017f0ea1
(svn r14897) -Codechange: don't allow a few command flags to be sent over the network as it's bogus information anyway; e.g. the "do not send over network" flag as it will be set whenever the command is received from the server/client.
...
-Codechange: test earlier whether the command (send from the server) is actually valid.
2009-01-07 15:27:19 +00:00
smatz
7368c740a6
(svn r14828) -Codechange: move most of save/load-specific code to separate files
2009-01-04 15:32:25 +00:00
glx
502607410e
(svn r14816) -Fix: signed/unsigned warnings (MSVC)
2009-01-03 19:39:22 +00:00
rubidium
e5c1a7b5c3
(svn r14804) -Codechange: unify opening the OSK (Zuu)
2009-01-03 13:59:05 +00:00
rubidium
3c6add5293
(svn r14772) -Codechange: make the "dump log of game to reproduce" desync debug stuff a runtime configurable debug option instead of a compile time option.
2008-12-29 21:50:25 +00:00
rubidium
ad1c52abf8
(svn r14771) -Fix (r14764): resolving of error types to error messages kinda failed :(
2008-12-29 21:41:20 +00:00
rubidium
1ce965ed5f
(svn r14770) -Fix: gracefully handle an invalid packet instead of asserting.
2008-12-29 21:33:27 +00:00
rubidium
e198bf02ab
(svn r14766) -Fix (r14730ish): remove unused typedef.
2008-12-29 11:17:12 +00:00
rubidium
a25e3f8d70
(svn r14764) -Codechange: make the '***' chat messages like "Game paused (not enough players)" fully translateable.
2008-12-29 10:37:53 +00:00
rubidium
105b84e343
(svn r14760) -Fix (rlongago): network connection of clients being closed twice (found due to added assertion in r14730)
2008-12-28 21:45:41 +00:00
rubidium
e626e07bd3
(svn r14759) -Fix (r14730): tab completion causing out-of-bounds read.
2008-12-28 21:07:45 +00:00
rubidium
87e5a8b52b
(svn r14754) -Codechange: get rid of _cmd_text and just pass it as (optional) parameter.
2008-12-28 14:37:19 +00:00
rubidium
d1bb5e5f36
(svn r14735) -Codechange: remove a bit of bit-waste in the map array (without changing the map array) and make the CompanyIDs contiguous.
...
-Note: 15 should be enough for now... making it any more means adding more bytes to the map array and thus wasting more bits instead of reducing the bit waste.
2008-12-24 09:53:15 +00:00
rubidium
4a1f4144eb
(svn r14733) -Fix (r14730): creating new companies didn't always work as expected.
2008-12-24 00:03:47 +00:00
rubidium
ece37ca2c0
(svn r14731) -Fix: don't initialise UDP multiple times without closing it.
2008-12-23 20:58:03 +00:00
rubidium
afddfcb2b1
(svn r14730) -Codechange: remove the need for networkclientsockets and networkclientinfo structs to be in a contiguous piece of memory and put them in a pool.
...
-Note: 255 should really be enough for now... making it any more means network protocol bumps.
2008-12-23 20:52:27 +00:00
rubidium
f7a52c4444
(svn r14728) -Fix [FS#2470]: don't select anything when opening the client list.
...
-Fix: don't show clients that are "only" in the lobby.
2008-12-23 17:12:20 +00:00
rubidium
bc8984a9bb
(svn r14727) -Codechange: replace some magic numbers with a constant.
2008-12-23 15:23:31 +00:00
rubidium
fb7ccc6820
(svn r14726) -Fix (r14720): making new companies in network kinda failed...
2008-12-23 12:26:19 +00:00
rubidium
f8f7febe41
(svn r14725) -Change: make it clearer why (and that) MAX_CLIENTS isn't the amount of slots in the array, but one less as a dedicated server takes a slot too.
2008-12-23 11:55:46 +00:00
rubidium
52fb6b7d7c
(svn r14724) -Codechange: move some NetworkClientSocket related function/definitions closer together.
2008-12-23 11:43:32 +00:00
rubidium
9476a49763
(svn r14723) -Codechange: shuffling some stuff around to reduce indirect #include dependencies.
2008-12-23 11:06:52 +00:00
rubidium
d501a20065
(svn r14722) -Codechange: s/DEREF_CLIENT/GetNetworkClientSocket/
2008-12-23 10:42:06 +00:00
rubidium
ae96ca635c
(svn r14721) -Codechange: s/NetworkTCPSocketHandler/NetworkClientSocket/ as it's (way) more descriptive what it's used for.
2008-12-23 09:47:42 +00:00
rubidium
d95a485108
(svn r14720) -Codechange: s/FOR_ALL_CLIENTS/FOR_ALL_CLIENT_SOCKETS/ as the latter describes the name more precisely.
2008-12-23 09:02:41 +00:00
rubidium
b4734ee9a4
(svn r14719) -Codechange: replace DEREF_CLIENT with an instance function and replace looping socket structs with info structs when the loop is only interested in the info structs (i.e. not derefing the info from sockets when one can loop info directly and the socket isn't used)
2008-12-23 08:39:30 +00:00
rubidium
94e7f41a9d
(svn r14718) -Change: remove some direct network core variable accesses from non-network locations.
2008-12-22 21:38:03 +00:00
rubidium
f49cc67f83
(svn r14717) -Change: more 'Index' -> ClientID to not confuse ClientID and ClientIndex
2008-12-22 21:30:21 +00:00
rubidium
573d1b324a
(svn r14716) -Codechange: move more network core querying to the network files.
2008-12-22 21:26:26 +00:00
rubidium
5b7cd460e9
(svn r14715) -Codechange: move some network code from the main gui file into one of the the network files.
2008-12-22 21:15:02 +00:00
rubidium
a687667448
(svn r14714) -Codechange: only allocate the company network "state" variables (password/months not used) when needed, i.e. only for servers.
2008-12-22 20:42:02 +00:00
rubidium
abc903d625
(svn r14712) -Codechange: split server and client side w.r.t. the storage of network related company information.
2008-12-22 18:40:57 +00:00
rubidium
e6e32bad4d
(svn r14711) -Codechange: don't misuse the _network_company_info password field for changing the password on clients.
2008-12-22 18:20:28 +00:00
rubidium
887869c771
(svn r14710) -Change: simplify sending company information from the server to the client.
2008-12-22 15:17:14 +00:00
rubidium
782b80eff7
(svn r14709) -Codechange: make a clearer distinction between 'unique' client identification ids and the indices into the clients/client info arrays.
2008-12-22 12:59:31 +00:00
rubidium
1599ade7ca
(svn r14679) -Fix [FS#2431]: opening the OSK on the chatbox did disable map scrolling (with keyboard) until another window with editbox was opened and closed. Just "refcount" the open edit boxes instead of setting/clearing a bit when opening/closing a window.
2008-12-16 17:58:27 +00:00
smatz
d2a050bb29
(svn r14671) -Fix: compilation was broken for some systems
2008-12-13 18:19:44 +00:00
rubidium
798fa3ec81
(svn r14588) -Fix [FS#2414]: the range for kicking/banning clients is based on the maximum number of clients, not the maximum number of companies.
2008-11-17 16:15:55 +00:00
smatz
f23dabb149
(svn r14564) -Fix (r14555): one more incorrect use of lastof()
2008-11-04 18:20:41 +00:00
smatz
7dd0b0dc07
(svn r14560) -Fix [FS#2396](r14555): lengthof() can't be simply replaced by lastof() in some cases (part by Aali)
2008-11-03 12:03:00 +00:00
skidd13
706dd0f86c
(svn r14555) -Codechange: replace ttd_strlcat and ttd_strlcpy with strecat and strecpy where direct conversion is possible
2008-11-02 11:20:15 +00:00
rubidium
633b15caf3
(svn r14542) -Codechange: replace some sprintf with s[en]printf to make sure they will not overflow their buffers.
2008-10-28 16:04:41 +00:00
glx
a6bfd7f15b
(svn r14534) -Codechange [FS#2382]: Enumify magic return values of HandleEditBox function (Zuu)
2008-10-25 19:59:11 +00:00
frosch
fd049f0a64
(svn r14531) -Fix (r12425): OSK accessed wrong widgets of password query window.
2008-10-25 15:25:52 +00:00
rubidium
f43dc3e758
(svn r14517) -Feature: arrow key scrolling in the server list (Roujin)
2008-10-22 20:22:18 +00:00
smatz
c10f7db576
(svn r14514) -Codechange: use 'size' instead of 'length' for querystring and textbuf, explicitly say it includes the terminating zero
...
-Fix: one couldn't rename things with too long default/automatic name
-Fix: buffer overflow in console when too long (1024 bytes) command was entered
2008-10-22 19:12:10 +00:00
smatz
7a031b60cd
(svn r14486) -Fix (r13343)(r14484): compilation with desync debug was broken
2008-10-18 14:16:29 +00:00
rubidium
a999bb3227
(svn r14466) -Doc: remove some obsolete parameters, fix a few parameter names in comments and add a little more doxygen documentation.
2008-10-14 19:27:08 +00:00
rubidium
c9a82ac3e7
(svn r14423) -Codechange: also do r14221 for the strings.
2008-09-30 21:18:28 +00:00
rubidium
b650a86e58
(svn r14422) -Codechange: also reflect the changes of r14421 in the filenames.
2008-09-30 20:51:04 +00:00
rubidium
3b798599b6
(svn r14421) -Codechange: rename all player variables/types to company *or* client so it is immediatelly clear which one you are working with.
2008-09-30 20:39:50 +00:00
rubidium
e7829c1a57
(svn r14414) -Fix: replace instances of strncpy with strecpy as strncpy doesn't guarantee the resulting string is '\0'-terminated.
2008-09-29 16:27:02 +00:00
rubidium
6a931d67cd
(svn r14390) -Codechange: replace magic constants with symbolic constants.
2008-09-23 15:24:15 +00:00
smatz
606f4defdc
(svn r14331) -Codechange: use an enum as additional parameter for ShowQueryString()
2008-09-15 16:29:40 +00:00
rubidium
811193e468
(svn r14320) -Fix [FS#2299]: glitch when chatbox window is full and the window is scrolled (yorP)
2008-09-14 10:39:22 +00:00
rubidium
cbbb2eb85c
(svn r14318) -Fix [FS#2296]: OSK of the chat box did not get updated. This as the chatbox got a higher priority than the OSK instead of the usual other way around.
2008-09-14 10:30:31 +00:00
smatz
c0cdfea97d
(svn r14228) -Fix (r14209): double click on the 'last joined' server didn't work
2008-09-02 17:24:46 +00:00
smatz
7fa98e33ce
(svn r14209) -Feature(tte): doubleclick to join selected server/company
2008-08-31 20:54:01 +00:00
rubidium
ea1f180a55
(svn r14199) -Codechange: split fileio.h into fileio_type.h and fileio_func.h so not everything that includes saveload.h needs to include everything else too.
2008-08-31 10:50:05 +00:00
smatz
361292bd23
(svn r14177) -Fix: define INADDR_NONE only when it hasn't been defined yet
2008-08-25 22:10:47 +00:00
smatz
c9bef19043
(svn r14174) -Fix: since now, we are 'losing' things, not 'loosing'
2008-08-25 20:10:45 +00:00
glx
c10691faff
(svn r14080) -Fix (r14052): assert triggered when drawing chat window with 32bpp-anim blitter (backup buffer was too small)
2008-08-15 22:06:58 +00:00
rubidium
97c184f8f8
(svn r14063) -Codechange: replace some "magic" constants with enumified constants.
2008-08-13 06:05:01 +00:00
rubidium
72c154fd0f
(svn r14052) -Codechange: make the size of the chat message "box" configurable and increase the default size slightly so it can hold the longest chat messages.
2008-08-12 12:23:05 +00:00
rubidium
a3910ced70
(svn r14051) -Codechange: enumify the DrawString buffer length.
2008-08-12 11:21:37 +00:00
rubidium
d0c1a989a4
(svn r14047) -Codechange: move chatmessage handling to the network directory as that's the only case chat messages are used. Furthermore remove any trace of chatmessages when compiling without network support.
2008-08-11 22:45:11 +00:00
rubidium
6995365535
(svn r14046) -Codechange: make the size of querystring "widgets" more configurable.
2008-08-11 22:08:56 +00:00
rubidium
3b4c3a3df6
(svn r14045) -Codechange: move the network's limitation to chat messages to a more logical location and give it a more consistent name.
2008-08-11 22:07:26 +00:00
glx
788b625553
(svn r14026) -Cleanup (r13995, r14004): trailing whitespaces
2008-08-08 15:49:16 +00:00
rubidium
0ebcac669e
(svn r13997) -Fix (r13988): in some cases no broadcast addresses would be found.
2008-08-04 19:07:37 +00:00
rubidium
b1eaf763e1
(svn r13995) -Fix (r13988): some warnings of the compile farm.
2008-08-04 18:27:54 +00:00
glx
0f10939029
(svn r13990) -Fix (r13988): win32 compilation failed
2008-08-04 13:54:10 +00:00
rubidium
c88cb1daa0
(svn r13988) -Codechange: move the to IP resolving functions to a separate file.
2008-08-04 12:56:38 +00:00
belugas
96892e081a
(svn r13970) -Codechange: Replace numbers with Colours enum on network, toolbar and dropdown guis.
...
Mostly forgotten ones.
2008-08-03 02:18:45 +00:00
belugas
69671d3aef
(svn r13907) -Codechange: Replace a number with Colours enum on DrawFrameRect usage
2008-08-01 03:43:53 +00:00
rubidium
52982de589
(svn r13796) -Fix [FS#2161]: one couldn't start the last scenario in the "start server window"'s list of scenarios.
2008-07-23 13:10:08 +00:00
rubidium
14a747e490
(svn r13776) -Fix: some revision checking code was unintentionally disabled.
2008-07-21 18:49:50 +00:00
glx
317868261a
(svn r13775) -Codechange: enforce the validity of a NetworkAction (chat packet) issued by a client
2008-07-21 15:50:55 +00:00
rubidium
aafd8393cc
(svn r13773) -Codechange: disable autoclean for protected/unprotected companies when the timeout is set to 0. Based on an idea by Thomas.
2008-07-21 13:05:43 +00:00
rubidium
7c3fc13087
(svn r13740) -Fix (r13731): one could only join the first company.
2008-07-19 20:24:41 +00:00
rubidium
c4467aa8fb
(svn r13739) -Fix (r13731): some variables would be erroneously zeroed, causing autoclean and company passwords not to work.
2008-07-19 20:23:51 +00:00
rubidium
5f280d0e50
(svn r13732) -Feature: add a few extra columns with information to the server list. Patch by Pegasus.
2008-07-18 20:44:35 +00:00
rubidium
3a799389eb
(svn r13731) -Codechange: make a pool of the array of players.
2008-07-18 16:40:29 +00:00
rubidium
d06529ef4d
(svn r13719) -Codechange: rename IsValidPlayer to IsValidPlayerID in line with all other structs/classes that are in a pool.
2008-07-17 20:13:01 +00:00
rubidium
39beec190b
(svn r13716) -Fix [FS#2144]: any player could construct new companies.
2008-07-17 15:14:42 +00:00