Commit Graph

201 Commits (e9d0998b85b76878535aa48bd39484548bb2afa7)

Author SHA1 Message Date
yexo f6070e2261 (svn r16175) -Fix: Disable the join button in the multiplayer lobby for AI companies, since joining an AI company is not possible. 15 years ago
rubidium a25684b833 (svn r15967) -Codechange: do not access NetworkSocketHandler::has_quit directly 15 years ago
rubidium a76218eab9 (svn r15947) -Codechange: replace uint32 client_ip with NetworkAddress client_address. 15 years ago
rubidium bc7a870a61 (svn r15931) -Codechange: let the host and ban lists use of SmallVector. 15 years ago
peter1138 3b748ec62f (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. 15 years ago
rubidium f524d39963 (svn r15773) -Fix [FS#2475]: number of active clients wasn't always properly 15 years ago
rubidium c3e87f345d (svn r15718) -Cleanup: apply some comment coding style on the rest of the sources too 16 years ago
smatz 154b4da4cc (svn r15628) -Fix [FS#2705]: kicking/banning a client from the Client list window crashed the server 16 years ago
rubidium 89e1afdaa0 (svn r15428) -Codechange: consistently use colour instead of having both color and colour. 16 years ago
rubidium 6ad9fcc6ec (svn r15395) -Fix [FS#2611] (r15377): one couldn't reset companies anymore in a 'dedicated' server. 16 years ago
smatz 9021c20b5e (svn r15299) -Cleanup: remove many redundant includes 16 years ago
rubidium bf45d44c3c (svn r15247) -Change: show a lock near the password/join button in the company window whenever the company is password protected 16 years ago
rubidium 2722cabcce (svn r15242) -Feature: allow moving clients between companies/spectators by the server and the clients themselves (dihedral) 16 years ago
rubidium 840217d717 (svn r15200) -Feature: give server admins a tool to combat profanity in nick names (based on patch by dihedral) 16 years ago
rubidium 01e92ac32a (svn r15052) -Codechange: move the implementation of Send_CompanyInformation to network_server.cpp as the server's the one that sends that information 16 years ago
truebrain c2406cd42d (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
16 years ago
rubidium 28ea38ae55 (svn r14949) -Cleanup: pointer coding style 16 years ago
rubidium 0e1127e8b5 (svn r14915) -Codechange: unify the receiving and sending of commands, and thus unifying most of the validity checking too. 16 years ago
rubidium 4df86694a7 (svn r14910) -Codechange: merge the command queue handling into a single location 16 years ago
rubidium 4231c3ee82 (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.
16 years ago
smatz 91233ea596 (svn r14828) -Codechange: move most of save/load-specific code to separate files 16 years ago
rubidium 0b806c7bbc (svn r14764) -Codechange: make the '***' chat messages like "Game paused (not enough players)" fully translateable. 16 years ago
rubidium e83cca7d13 (svn r14754) -Codechange: get rid of _cmd_text and just pass it as (optional) parameter. 16 years ago
rubidium 81f409e8e7 (svn r14733) -Fix (r14730): creating new companies didn't always work as expected. 16 years ago
rubidium 54f23ed0b3 (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.
16 years ago
rubidium 4ce0e8ccce (svn r14727) -Codechange: replace some magic numbers with a constant. 16 years ago
rubidium cb8b31c3c1 (svn r14721) -Codechange: s/NetworkTCPSocketHandler/NetworkClientSocket/ as it's (way) more descriptive what it's used for. 16 years ago
rubidium 3ddde0c8d6 (svn r14720) -Codechange: s/FOR_ALL_CLIENTS/FOR_ALL_CLIENT_SOCKETS/ as the latter describes the name more precisely. 16 years ago
rubidium 9a96557763 (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) 16 years ago
rubidium 7403790ba4 (svn r14717) -Change: more 'Index' -> ClientID to not confuse ClientID and ClientIndex 16 years ago
rubidium d146b48063 (svn r14712) -Codechange: split server and client side w.r.t. the storage of network related company information. 16 years ago
rubidium a4c27263bb (svn r14710) -Change: simplify sending company information from the server to the client. 16 years ago
rubidium 6d23f48bb6 (svn r14709) -Codechange: make a clearer distinction between 'unique' client identification ids and the indices into the clients/client info arrays. 16 years ago
smatz f8c8405311 (svn r14564) -Fix (r14555): one more incorrect use of lastof() 16 years ago
smatz 1257ba3214 (svn r14560) -Fix [FS#2396](r14555): lengthof() can't be simply replaced by lastof() in some cases (part by Aali) 16 years ago
skidd13 9b282b3e51 (svn r14555) -Codechange: replace ttd_strlcat and ttd_strlcpy with strecat and strecpy where direct conversion is possible 16 years ago
rubidium e589c7e580 (svn r14422) -Codechange: also reflect the changes of r14421 in the filenames. 16 years ago
rubidium f56e630e5c (svn r14421) -Codechange: rename all player variables/types to company *or* client so it is immediatelly clear which one you are working with. 16 years ago
rubidium a20b833516 (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. 16 years ago
rubidium 0fab1dc699 (svn r14045) -Codechange: move the network's limitation to chat messages to a more logical location and give it a more consistent name. 16 years ago
rubidium b81e31bdb1 (svn r13776) -Fix: some revision checking code was unintentionally disabled. 16 years ago
glx 11ca40cf88 (svn r13775) -Codechange: enforce the validity of a NetworkAction (chat packet) issued by a client 16 years ago
rubidium bd0e52011d (svn r13773) -Codechange: disable autoclean for protected/unprotected companies when the timeout is set to 0. Based on an idea by Thomas. 16 years ago
rubidium 664bbd304a (svn r13739) -Fix (r13731): some variables would be erroneously zeroed, causing autoclean and company passwords not to work. 16 years ago
rubidium cde65455ac (svn r13731) -Codechange: make a pool of the array of players. 16 years ago
rubidium 6898a76c5f (svn r13719) -Codechange: rename IsValidPlayer to IsValidPlayerID in line with all other structs/classes that are in a pool. 16 years ago
rubidium a1ca1da1b3 (svn r13716) -Fix [FS#2144]: any player could construct new companies. 16 years ago
rubidium 31d283c6c8 (svn r13714) -Fix: remove the unique_id from the message that a client has joined as it is only exposes the unique_id more than needed. Patch by dih. 16 years ago
rubidium e2adaf59b2 (svn r13408) -Codechange: some stricter checking. 16 years ago
glx b60a1326bf (svn r13390) -Codechange: introduce usererror() for fatal but not openttd related errors. Now all error() will 'crash' openttd after showing the message in win32 releases (MSVC), creating a crash.log and crash.dmp (like the '!' hack used before). On the other hand, usererror() will just close the game. So use error() only when it can be helpful to debugging, else use usererror(). 16 years ago
rubidium 994779e9e2 (svn r13369) -Codechange: remove duplication of network configuration settings between NetworkSettings and NetworkGameInfo.
-Fix: failure of changing the server password during games because the password wasn't duplicated properly.
16 years ago
rubidium bae02e8c67 (svn r13343) -Codechange: reorder/move variable/functions in the network headers so that nothing from the network directory needs to include basically all network headers. 16 years ago
rubidium 02dbab8721 (svn r13334) -Codechange: move the network settings variables from network/network_internal to settings. 16 years ago
rubidium e7a501100a (svn r13325) -Codechange: split the client-side only settings from the settings stored in the savegame so there is no need to have a duplicate copy of it for new games. 16 years ago
rubidium dc77647ea4 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
-Codechange: move all Settings into substructs of _settings in a way that they are logically grouped.
16 years ago
rubidium 080af12d8b (svn r13229) -Codechange: replace some global variables that are only initialised once and always with the same value with enums. 16 years ago
rubidium bf3b61cfa3 (svn r13228) -Codechange: split console.h. 16 years ago
rubidium 1ce0b03bf0 (svn r12971) -Documentation: add @file in files that missed them and add something more than whitespace as description of files that don't have a description. 16 years ago
rubidium c51b81c247 (svn r12489) -Codechange: split station.h into station_base.h and station_func.h. 16 years ago
glx b3e35db958 (svn r11920) -Fix (r11844): train count was incorrect in network lobby window (and 'players' command) 17 years ago
glx 88e16866bc (svn r11844) -Fix: road vehicle count was incorrect in network lobby window 17 years ago
rubidium 9c0c798dd8 (svn r11834) -Codechange: only include settings_type.h if needed. 17 years ago
rubidium 90acd52f22 (svn r11828) -Codechange: include table/* as the last includes and remove an unneeded include from openttd.h. 17 years ago
rubidium 2fc62eab05 (svn r11818) -Codechange: split player.h into smaller pieces. 17 years ago
rubidium b09d957f31 (svn r11777) -Codechange: split the string header and make do not include it when it's not necessary. 17 years ago
rubidium 722613f7f3 (svn r11706) -Codechange: split vehicle.h and remove another bunch of useless includes. 17 years ago
rubidium db73addb43 (svn r11702) -Codechange: move all date related stuff to date*. 17 years ago
rubidium 81bf9f8503 (svn r11692) -Codechange: move some functions from 'functions.h' to a more logical place and remove about 50% of the includes of 'functions.h' 17 years ago
rubidium 00c9d3ef20 (svn r11691) -Codechange: move+rename helpers.hpp and only include it when it is really needed. 17 years ago
rubidium 766551b0bc (svn r11677) -Codechange: move price and command related types/functions to their respective places. 17 years ago
rubidium 8427b8bad2 (svn r11675) -Codechange: split the string types from the string functions. 17 years ago
rubidium 49e6247de8 (svn r11557) -Codechange: send and store the passwords a little more secure to/in the servers.
Each server and game yield a (usually) different 'salt'. This salt is used by the clients to hash their passwords. This way the passwords are not sent in clear text and it is not trivial to use those hashes on other servers.
NOTE: It is still NOT safe to use your trusted passwords and it will not stop people from being able to 'hijack' your password, it only makes it harder to do and certainly much less trivial than just dumping passwords from the memory.
17 years ago
skidd13 c0a2c0c23e (svn r11481) -Codechange: Rename the HASBIT function to fit with the naming style 17 years ago
truelight 9cf6fe8bca (svn r11357) -Fix: NetworkUniqueID could be 80 chars, while the max size we generate is 32. So reduce the size a bit. Pointed out by dihedral, so give him a big hug ;) 17 years ago
rubidium d4290086e8 (svn r11006) -Fix: spectators are not allowed to issue commands. Issue spotted by SmatZ. 17 years ago
rubidium 3ba01bec84 (svn r10501) -Fix [FS#1015]: error dialog was sometimes shown on all clients when a command failed instead of only the client that actually did the command. 17 years ago
rubidium f7151d44b7 (svn r10414) -Fix: the network protocol check for required newgrfs sent static newgrfs too. 17 years ago
peter1138 3154374e19 (svn r10325) -Fix (r10323): Missed 3 company name references 17 years ago
rubidium 7dda2d93da (svn r10207) -Codechange: remove the redundant player_money in favour of the money64, which is now renamed to player_money. 17 years ago
rubidium 3c7a85fe94 (svn r10182) -Codechange: rewrite most part of the file loading/searching to be more flexible.
-Codechange: add support for personal directories on Windows.
-Fix [FS#153, FS#193, FS#502, FS#816, FS#854]: fix issues related to fixed names, fixed places of files/directories and application bundles.
17 years ago
rubidium 469e7cb991 (svn r10075) -Fix [FS#844]: small memory leak on some early returns. 17 years ago
rubidium 08be68e0b4 (svn r9841) -Codechange: add a little more type strictness to the vehicle types. 17 years ago
peter1138 87b731ead5 (svn r9727) -Fix (r8546): Company password field in network player info was inverted. 17 years ago
rubidium 98e59a5add (svn r9719) -Fix: in-game private messages did not work for clients with a Client ID > 255. 17 years ago
rubidium 36cea84b11 (svn r9068) -Codechange: capitalize the VEH_Train etc. enums to match the coding style (and rest of the code). 18 years ago
rubidium 283fca3ee7 (svn r9061) -Fix [r9038, FS#668]: passwords are send when the server is in the 'authorizing' state, not 'inactive'. 18 years ago
rubidium 4169bfba06 (svn r9050) -Codechange: Foo(void) -> Foo() 18 years ago
rubidium 4b75a29766 (svn r9038) -Fix [FS#115]: inactive connections are not automatically kicked, i.e. people who only open a telnet (or similar) connection to a server. 18 years ago
rubidium 3e9cc1a651 (svn r8949) -Codechange: only test the first NETWORK_REVISION_LENGTH - 1 characters when determining network compatability. This makes it possible to have 'long' branch names while still being able to play network games. 18 years ago
rubidium 2f249e650b (svn r8546) -Codechange: add a seperate (wrapper) functions to send/receive booleans. 18 years ago
rubidium 922a623402 (svn r8525) -Codechange: make NetworkSend_Packet(s) and NetworkRecv_Packet functions of NetworkTCPSocketHandler. 18 years ago
rubidium 105cd53868 (svn r8523) -Codechange: move all the Network(Recv|Send)_(uintXX|string) functions to Packet. 18 years ago
rubidium 51c2af6e5e (svn r8521) -Codechange: initial step in converting Packet to a class; make and use constructors and functions related to the reading/saving the packet size. 18 years ago
rubidium 6787514d62 (svn r8461) -Feature: check for NewGRF compatability before actually downloading the map from a game server when connecting from the command prompt and internal console. 18 years ago
Darkvater 2ff4492abc (svn r8428) -Codechange: Add proper names to aircraft subtypes instead of magic numbers and add a function IsNormalAircraft() which tells us whether the aircraft is in fact some flying device or a rotor/shadow. 18 years ago
rubidium 3ce83d41fa (svn r8171) -Fix (FS#556): return SL_ERROR when unthreaded saves failed, to make sure we do not try to send zero-byte savegames. 18 years ago
tron e043c6cef7 (svn r8097) Replace strlen() {==,!=,>} 0 by the more concise {,!}StrEmpty(). Additionally the test takes O(1) instead of O(n) now 18 years ago
rubidium 98e462e564 (svn r8083) -Codechange: make a NetworkSocketHandler as base for all sockets and move a little of NetworkClientState functionality to the NetworkSocketHandler. Move the rest of the NetworkClientState to the new NetworkTCPSocketHandler class/struct, which is not yet implemented in an object oriented manner. The UDP socket handler now extends the NetworkSocketHandler instead of having a reference to a NetworkClientState. 18 years ago
KUDr 28e969924b (svn r8066) - Codechange: MallocT(), CallocT(), ReallocT() now return the pointer to allocated memory instead of modifying the pointer given as parameter 18 years ago
rubidium a7d0cdf95f (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b. 18 years ago
KUDr 07c30785ab (svn r8033) [cpp] - Prepare for merge from branches/cpp (all .c files renamed to .cpp) 18 years ago