Commit Graph

245 Commits (f5b1115039e41d7f75f91e7355003f10dd01b352)

Author SHA1 Message Date
rubidium b25a4f8231 (svn r15718) -Cleanup: apply some comment coding style on the rest of the sources too 16 years ago
smatz f3ed8268b6 (svn r15628) -Fix [FS#2705]: kicking/banning a client from the Client list window crashed the server 16 years ago
rubidium c0a8d09ca7 (svn r15428) -Codechange: consistently use colour instead of having both color and colour. 16 years ago
rubidium d7a053578d (svn r15395) -Fix [FS#2611] (r15377): one couldn't reset companies anymore in a 'dedicated' server. 16 years ago
smatz 0d3f5e6e74 (svn r15299) -Cleanup: remove many redundant includes 16 years ago
rubidium 3d21639d5b (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 04709f2798 (svn r15242) -Feature: allow moving clients between companies/spectators by the server and the clients themselves (dihedral) 16 years ago
rubidium f2777cd02d (svn r15200) -Feature: give server admins a tool to combat profanity in nick names (based on patch by dihedral) 16 years ago
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 16 years ago
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
16 years ago
rubidium 11da45ee55 (svn r14949) -Cleanup: pointer coding style 16 years ago
rubidium 427e2d30c5 (svn r14915) -Codechange: unify the receiving and sending of commands, and thus unifying most of the validity checking too. 16 years ago
rubidium d4b6cc997d (svn r14910) -Codechange: merge the command queue handling into a single location 16 years ago
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.
16 years ago
smatz 7368c740a6 (svn r14828) -Codechange: move most of save/load-specific code to separate files 16 years ago
rubidium a25e3f8d70 (svn r14764) -Codechange: make the '***' chat messages like "Game paused (not enough players)" fully translateable. 16 years ago
rubidium 87e5a8b52b (svn r14754) -Codechange: get rid of _cmd_text and just pass it as (optional) parameter. 16 years ago
rubidium 4a1f4144eb (svn r14733) -Fix (r14730): creating new companies didn't always work as expected. 16 years ago
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.
16 years ago
rubidium bc8984a9bb (svn r14727) -Codechange: replace some magic numbers with a constant. 16 years ago
rubidium ae96ca635c (svn r14721) -Codechange: s/NetworkTCPSocketHandler/NetworkClientSocket/ as it's (way) more descriptive what it's used for. 16 years ago
rubidium d95a485108 (svn r14720) -Codechange: s/FOR_ALL_CLIENTS/FOR_ALL_CLIENT_SOCKETS/ as the latter describes the name more precisely. 16 years ago
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) 16 years ago
rubidium f49cc67f83 (svn r14717) -Change: more 'Index' -> ClientID to not confuse ClientID and ClientIndex 16 years ago
rubidium abc903d625 (svn r14712) -Codechange: split server and client side w.r.t. the storage of network related company information. 16 years ago
rubidium 887869c771 (svn r14710) -Change: simplify sending company information from the server to the client. 16 years ago
rubidium 782b80eff7 (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 f23dabb149 (svn r14564) -Fix (r14555): one more incorrect use of lastof() 16 years ago
smatz 7dd0b0dc07 (svn r14560) -Fix [FS#2396](r14555): lengthof() can't be simply replaced by lastof() in some cases (part by Aali) 16 years ago
skidd13 706dd0f86c (svn r14555) -Codechange: replace ttd_strlcat and ttd_strlcpy with strecat and strecpy where direct conversion is possible 16 years ago
rubidium b650a86e58 (svn r14422) -Codechange: also reflect the changes of r14421 in the filenames. 16 years ago
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. 16 years ago
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. 16 years ago
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. 16 years ago
rubidium 14a747e490 (svn r13776) -Fix: some revision checking code was unintentionally disabled. 16 years ago
glx 317868261a (svn r13775) -Codechange: enforce the validity of a NetworkAction (chat packet) issued by a client 16 years ago
rubidium aafd8393cc (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 c4467aa8fb (svn r13739) -Fix (r13731): some variables would be erroneously zeroed, causing autoclean and company passwords not to work. 16 years ago
rubidium 3a799389eb (svn r13731) -Codechange: make a pool of the array of players. 16 years ago
rubidium d06529ef4d (svn r13719) -Codechange: rename IsValidPlayer to IsValidPlayerID in line with all other structs/classes that are in a pool. 16 years ago
rubidium 39beec190b (svn r13716) -Fix [FS#2144]: any player could construct new companies. 16 years ago
rubidium c913be73d8 (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 d083afea90 (svn r13408) -Codechange: some stricter checking. 16 years ago
glx ee256e770a (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 abf2b0efc3 (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 2f3b88ef9a (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 c33164831d (svn r13334) -Codechange: move the network settings variables from network/network_internal to settings. 16 years ago
rubidium 923e21129c (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 4625695653 (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 6884f9cb41 (svn r13229) -Codechange: replace some global variables that are only initialised once and always with the same value with enums. 16 years ago
rubidium 6c20f77330 (svn r13228) -Codechange: split console.h. 16 years ago
rubidium d03994098b (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 2edd403656 (svn r12489) -Codechange: split station.h into station_base.h and station_func.h. 16 years ago
glx 600046f3d7 (svn r11920) -Fix (r11844): train count was incorrect in network lobby window (and 'players' command) 17 years ago
glx 7d2d4314ec (svn r11844) -Fix: road vehicle count was incorrect in network lobby window 17 years ago
rubidium dc87b05e8c (svn r11834) -Codechange: only include settings_type.h if needed. 17 years ago
rubidium d4e6a6bf57 (svn r11828) -Codechange: include table/* as the last includes and remove an unneeded include from openttd.h. 17 years ago
rubidium ac528411df (svn r11818) -Codechange: split player.h into smaller pieces. 17 years ago
rubidium a3ccdcea36 (svn r11777) -Codechange: split the string header and make do not include it when it's not necessary. 17 years ago
rubidium 384503e7d3 (svn r11706) -Codechange: split vehicle.h and remove another bunch of useless includes. 17 years ago
rubidium b9046c97fb (svn r11702) -Codechange: move all date related stuff to date*. 17 years ago
rubidium 429521a7d1 (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 bf98e25e43 (svn r11691) -Codechange: move+rename helpers.hpp and only include it when it is really needed. 17 years ago
rubidium 9e9cfe6e59 (svn r11677) -Codechange: move price and command related types/functions to their respective places. 17 years ago
rubidium 433a9f3c09 (svn r11675) -Codechange: split the string types from the string functions. 17 years ago
rubidium b5a902703e (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 71c4325c50 (svn r11481) -Codechange: Rename the HASBIT function to fit with the naming style 17 years ago
truelight e288b2456f (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 9833639b00 (svn r11006) -Fix: spectators are not allowed to issue commands. Issue spotted by SmatZ. 17 years ago
rubidium 872e74c028 (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 95d2abf81d (svn r10414) -Fix: the network protocol check for required newgrfs sent static newgrfs too. 17 years ago
peter1138 b957786ea4 (svn r10325) -Fix (r10323): Missed 3 company name references 17 years ago
rubidium 7a72dcb3b5 (svn r10207) -Codechange: remove the redundant player_money in favour of the money64, which is now renamed to player_money. 17 years ago
rubidium 347c28b71a (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 02146b13c8 (svn r10075) -Fix [FS#844]: small memory leak on some early returns. 17 years ago
rubidium 23492f1f34 (svn r9841) -Codechange: add a little more type strictness to the vehicle types. 17 years ago
peter1138 b02623901a (svn r9727) -Fix (r8546): Company password field in network player info was inverted. 17 years ago
rubidium b469c443e9 (svn r9719) -Fix: in-game private messages did not work for clients with a Client ID > 255. 17 years ago
rubidium ce919e8c71 (svn r9068) -Codechange: capitalize the VEH_Train etc. enums to match the coding style (and rest of the code). 18 years ago
rubidium c89379f7eb (svn r9061) -Fix [r9038, FS#668]: passwords are send when the server is in the 'authorizing' state, not 'inactive'. 18 years ago
rubidium 36bb92ae24 (svn r9050) -Codechange: Foo(void) -> Foo() 18 years ago
rubidium a2b5b74b83 (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 66487d59fd (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 500f9a971a (svn r8546) -Codechange: add a seperate (wrapper) functions to send/receive booleans. 18 years ago
rubidium 59f4f056df (svn r8525) -Codechange: make NetworkSend_Packet(s) and NetworkRecv_Packet functions of NetworkTCPSocketHandler. 18 years ago
rubidium 16ce6def09 (svn r8523) -Codechange: move all the Network(Recv|Send)_(uintXX|string) functions to Packet. 18 years ago
rubidium 99f860e686 (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 86b046864a (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 50ca901b40 (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 0bd6622c2e (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 abb644771a (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 f66b373b52 (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 33be1ecfb1 (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 f35ed4bbc2 (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b. 18 years ago
KUDr e373ea7096 (svn r8033) [cpp] - Prepare for merge from branches/cpp (all .c files renamed to .cpp) 18 years ago