Commit Graph

59 Commits

Author SHA1 Message Date
Darkvater
15bf48acfd (svn r6753) -Codechange: Move some function declerations from functions.h into network.h
and let NetworkDisconnect handle all shutdown related operations.
2006-10-12 14:48:36 +00:00
peter1138
53744881a4 (svn r6628) - Feature: Add the ability to pause a server if not enough players are connected. The setting for this is 'min_players' and can be set in the config and via the console. If the number of players drops below this number, the server will pause the game. 2006-10-03 16:15:34 +00:00
rubidium
480af9c917 (svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct. 2006-08-22 14:38:37 +00:00
rubidium
28a0843707 (svn r5999) -Feature: change the original date format to a 32 bits format based at the year 0.
The game date subsystem now allows someone to start in the year 0 and continue
up to the year 5 000 000. However, you currently cannot build anything before 
1920 as there is no newgrf support for dates before 1920 or after 2090 yet.
2006-08-20 18:40:57 +00:00
rubidium
3cab5f30c0 (svn r5926) -Codechange: make _cur_year contain the full year, instead of the offset since 1920
-Codechange: store all year related variables that are _not_ stored in a savegame/transported over the network in the same format as _cur_year
2006-08-16 11:39:55 +00:00
rubidium
a0b4a29a57 (svn r5919) -Cleanup: use the type Date when the variable really is a date 2006-08-15 16:55:40 +00:00
rubidium
8aa76f306d (svn r5915) -Cleanup: some variables were named *_date while they were only holding years; rename these variables to match this. 2006-08-15 14:52:17 +00:00
tron
95d009bde8 (svn r5298) Hide function declarations and remove function stubs which aren't needed in the !ENABLE_NETWORK case 2006-06-17 14:11:26 +00:00
tron
670e47eec3 (svn r5293) -Fix: Not all network interfaces are capable of broadcasting. Don't record those which aren't
-Fix: Not all networks are /24. Generate proper broadcast addresses for non-/24 nets
2006-06-17 10:24:20 +00:00
peter1138
da4d1aa292 (svn r5197) - Use svn info to automatically find the last modified revision number and get branch information and place it in the revision string. Increase NETWORK_REVISION_LENGTH to accommodate the branch tag. 2006-06-09 14:40:30 +00:00
celestar
30bc705e48 (svn r4828) -Feature (FS#150) Add a new console command "players" that lists current players along with basic stats (ledow) 2006-05-11 14:08:03 +00:00
Darkvater
8faf1838e6 (svn r4623) - Codechange: s/byte/PlayerID/ 2006-04-29 14:31:16 +00:00
Darkvater
ed96dcd868 (svn r4521) - Fix: be consistent about the size of the player-name in MP. This hopefully fixes a crash on lesser OS's (eg Win98). Use ttd_strlcpy() to just copy over strings and properly terminate them because different implementations of snprintf() behave differently. Courtesy of TrueLight 2006-04-22 09:46:31 +00:00
peter1138
9c7f09322e (svn r3805) - [FS#62] Fix doxygen comments to refer to the correct parameter. (sulai) 2006-03-09 20:37:51 +00:00
peter1138
fc1e9c5a92 (svn r3775) Fix loading of server_port from config file, introduced in Darkvater's unified configuration changes (r3719+) 2006-03-06 19:23:26 +00:00
Darkvater
4b5970da84 (svn r3621) - Codechange: Only define the server and bans list if network is enabled. Preparatory work for saving patches/settings to savegame. 2006-02-20 17:49:26 +00:00
Darkvater
f2448ebfd4 (svn r3500) - Workaround the inaccurate count of spectators/companies that can happen in certain border-cases. For now just dynamically get this value when requested so it is always right. To do properly all player/client creation/destruction needs a hook for networking. 2006-01-31 22:16:15 +00:00
Darkvater
2b287a9e72 (svn r3429) - Feature (Followup): Change the gamelist window to accomodate for the new information. 2006-01-25 19:03:50 +00:00
Darkvater
78fa9c7393 (svn r3427) - Feature: Allow seeing and setting the maximum amount of companies and spectators for a server. This can be changed/viewed during runtime as well in the console. 2006-01-25 18:11:06 +00:00
peter1138
e78997fdfd (svn r3409) - Change the server advertisement interval to use the frame counter instead
of game days. This allows a paused server to continue to advertise itself.
  This also fixes advertising for games that start before 1922.
2006-01-19 17:50:40 +00:00
Darkvater
a181446829 (svn r2906) Fix some threaded saving problems. Now the thread only interfaces with the main program through a sort of mutex. Communication uses the function OTTD_SendThreadMessage() with the approiate message which is handled in ProcessSentMessage() during the main loop. 2005-09-02 16:05:59 +00:00
tron
a227065ab7 (svn r2701) Insert Id tags into all source files 2005-07-24 14:12:37 +00:00
tron
284d9ed7fb (svn r2663) Include variables.h only in these files which need it, not globally via openttd.h 2005-07-21 18:44:27 +00:00
ludde
8ff1f8c526 (svn r2589) Fix: [network] Fixed static variable that wasn't initialized. Would stop the sync checking from working in some cases. 2005-07-16 12:59:23 +00:00
ludde
6a3f58e050 (svn r2581) Fix: Behave a bit safer if central server sends bogus information about clients.
Change: Made code a little bit more readable by putting _selected_item in a local var with a shorter name.
2005-07-15 18:43:39 +00:00
Darkvater
6f06930ee3 (svn r2316) - Fix: [ 1154454 ] Fix BeOS build on Trunk (myob) 2005-05-14 23:48:39 +00:00
Darkvater
2bf3d14dfc (svn r2308) - Fix: enforce server-only and/or offline commands by giving them flags in the process table. This also fixes bug "[ 1190944 ] Many commands not checked for security"
- CodeChange: move ValParamRailtype() to check rail type from command.h to vehicle.h where it is better suited.
2005-05-14 19:25:18 +00:00
Darkvater
d102d0c26d (svn r2243) -Fix: Rework of console. Use 'help command|variable' to get help about it. You can assign variables with =, ++, --, or just new value. Console parser is now lenient towards typed spaces, and more robust in general (at least readable). Removed the 'set' command, instead implemented all such variables as 'variables'.
- Some variables are really special and cannot be assigned normally, use their callback procedure for assignment/querying. This commit also obsoletes "[1172804] Console set command cleanup"
2005-05-02 15:52:19 +00:00
truelight
508738f836 (svn r2106) -Fix: improved the network-join algoritm, it is now a bit more stable
-Add: added 'pause_on_join' and 'max_join_time' for MP games, where you 
can auto-pause the game when a client wants to join the game. This to 
avoid connection losses because of big maps (200+ trains). (with tnx to 
#openttdcoop for the ideas and testing)
2005-03-29 19:10:13 +00:00
darkvater
eb3671b647 (svn r1945) - CodeChange: re-commit of rev 1835: "Reduce the visibility of network_core.h (Tron)".
- VS6/.NET: moved ENABLE_NETWORK to the project file setting (same place as WITH_SDL, WITH_ZLIB) and removed it from network_core.h
2005-03-06 16:23:32 +00:00
darkvater
8867c00d68 (svn r1845) - Revert r1835 since it totally screws network compiling
- Fix: fix some VS.NET warnings
- Add missing file to VS.NET project file
2005-02-07 19:45:08 +00:00
tron
7c38b7bc01 (svn r1835) Reduce the visibility of network_core.h 2005-02-07 09:54:37 +00:00
tron
eed181245d (svn r1833) byte -> char transition: the rest 2005-02-06 22:25:27 +00:00
tron
189ca73707 (svn r1594) Convert all undefined parameter lists to (void) and add the appropriate warning flags in the Makefile 2005-01-22 20:23:18 +00:00
truelight
24c9e6ff66 (svn r1527) -Add: RCon (Remote Connection). A server can set:
'set rcon_pw <password>'
  Which enables rcon. A client can now do:
    'rcon <password> "<command>"'
  The command will be executed on the server. (guru3)
-Fix: 'kick 1' did crash dedicated servers
-Fix: server password is now correctly saved

  !!Warning!!: do not give your rcon password to people you do not thrust!
2005-01-15 20:09:16 +00:00
truelight
e9a57c56b7 (svn r1510) -Add: Improved Network Lobby GUI: (bociusz)
- Added green dot if company income is positive (else red dot)
 - Added lock icon if company is password protected
2005-01-14 21:47:35 +00:00
truelight
a11f46fed4 (svn r1322) -Add: banning system (mostly tnx to guru3)
A server can ban people via ClientList
  Both server and dedicated can do it via console:
   'ban', 'unban', 'banlist'.
2005-01-02 12:03:43 +00:00
truelight
97ec7de9e6 (svn r1263) -Fix: [Network] Client-names are limited (serverside) to 25 chars
-Fix: You can enter some more chars in the chatbox
2004-12-23 20:33:57 +00:00
truelight
c9645885d0 (svn r1252) -Add: [Network] With 'set restart_game_date' you can set the date for in
which year the server must restart hisself. (0 = disabled, default value)
2004-12-23 17:37:26 +00:00
darkvater
28c1dc3e39 (svn r1240) -Fix: OpenTTD once again compiles if ENABLE_NETWORK is disabled.
-Fix: removed some warnings
-Enabled ENABLE_NETWORK on windows again which I accidentally commented out.
2004-12-23 00:24:44 +00:00
darkvater
c4836bbd70 (svn r1239) -Feature: Added gui option of setting company password. It can be found in the 'company information' window
-Spiced up 'set company_pw' a bit, where if no pw is typed, it shows the current one.
-Added a space between company name and player; looks better
2004-12-22 23:24:53 +00:00
truelight
90b2b2144b (svn r1227) -Add: Ingame Server-list (select Internet, then Find Servers)
-Fix: UDPListener was launched wrongly
-Fix: Not all sockets have broadcast enabled anymore
-Fix: Server-advertise retries 3 times before giving up
2004-12-22 18:42:56 +00:00
dominik
7cfaa8a418 (svn r1194) Feature: You can now add and remove servers from the server list. Those will be remembered until you delete them by pressing the Delete key. 2004-12-20 22:14:39 +00:00
truelight
0e19f74c16 (svn r1168) -Cleanup: [Network] Cleaned the network code a bit. Added 'const'
and 'void' where needed, prefixed all functions, typedefs and global 
vars with 'Network' and organized all externals nicely.
2004-12-19 10:17:26 +00:00
dominik
853c11d301 (svn r1162) The server list can now be automatically filled from the config file. Add a section [servers] with the addresses each in a new line. Those will be checked upon OpenTTD startup. 2004-12-18 18:58:03 +00:00
truelight
5e28fb8f97 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
When enabled, empty companies (companies with no active clients) with no 
 password are declared bankrupt after 1 year of emptyness.
For empty companies with password, the password is removed after 3 years 
 of emptyness.
The delay of removing company/password can be configured via:
 - 'set autoclean_protected <months>'
 - 'set autoclean_unprotected <months>'
2004-12-16 13:59:23 +00:00
truelight
fa1f026367 (svn r1108) -Fix: [Network] Fixed problem around slow clients:
They joined, they got the map, but it took some time before the new 
player was created. In this time a player could do stuff, causing a 
player-id-mismatch, and the player was kicked out. Now a player get's a 
nice GUI which says: registering.. When that is gone, the player is 
joined and can play safely. Tnx to Moriarty for bugging me with this bug ;)
2004-12-15 21:13:52 +00:00
truelight
015fb81810 (svn r1106) -Add: [Network] Added master-server protocol and advertise to
master-server option. No GUI yet, and disabled by default (it still is WIP)
2004-12-15 20:10:34 +00:00
darkvater
f1b6b1711b (svn r1098) -Fix: server without revision build doesn't care about the client's version. Also moved all revision things where it belongs (network.c) 2004-12-15 16:51:55 +00:00
truelight
29b844a408 (svn r1096) -Fix: [Network] PlayAs is now registered correctly
-Codewise: [Network] Cleaned some code, removed some comment, changed 
some wrong comment
2004-12-15 15:19:51 +00:00