summaryrefslogtreecommitdiffstats
path: root/src/Server.cpp (unfollow)
Commit message (Collapse)AuthorFilesLines
2017-06-19Removed the LeakFinder for Windows. (#3777)Mattes D1-37/+0
2017-06-13FastRandom rewrite (#3754)peterbell101-3/+4
2017-05-19Allow enabling/disabling of block change limitmathiascode1-0/+1
2017-01-03Custom Disconnect Messagesweetgiorni1-0/+1
Adds a m_ShutdownMessage option to the settings. When the stop command is issued, players are kicked with said message before the server shuts down.
2016-07-21Tab completion across worlds (#3270)Alexander Harkness1-0/+1
Fixes #2563.
2016-06-27cPluginManager: Use a callback for command handler registration.Mattes D1-9/+26
2016-01-31Updated old forum linksMathias1-1/+1
2015-11-23Fixed display of helpmessageJulian Laubstein1-1/+1
2015-11-23Added dash to helpstring outputJulian Laubstein1-1/+1
2015-11-23Removed dashes in help messages for consistencyJulian Laubstein1-8/+8
2015-11-22Revert "Changed description to "Cuberite - Minecraft in C++!""Safwat Halaby1-1/+1
This reverts commit f4406c047e0d1d11631e350fa61ad04d92b950ba.
2015-11-20Changed description to "Cuberite - Minecraft in C++!"Safwat Halaby1-1/+1
2015-09-28Added LuaState tracker and memory stats logging.Mattes D1-0/+9
2015-09-25Compile.sh namechange to cuberiteSafwat Halaby1-1/+1
2015-09-25Namechange to CuberiteMattes D1-1/+1
2015-07-31Unified the doxy-comment format.Mattes D1-4/+4
2015-05-23Fixed missing overrides and added a ignore flag for reserved macro for clang version 3.6 and higher.Lukas Pioch1-1/+1
2015-05-16Initial implementation of IniFile overloadingtycho1-11/+11
2015-05-01A* Pathfinding and better monster AIwiseoldman951-19/+19
2015-04-19Refresh plugin list before trying to load.Mattes D1-0/+1
2015-04-19Split the plugin names and plugin folders to avoid confusing them.Mattes D1-15/+4
Ref.: http://forum.mc-server.org/showthread.php?tid=1877
2015-03-11Fixes #493 and #490flx51-1/+1
2015-01-27Replaced atoi() with StringToInteger().Mattes D1-2/+2
2015-01-27Converted cServer to use the cNetwork API.Mattes D1-192/+78
2015-01-27Fixed a crash in RCON server.Mattes D1-1/+0
2015-01-17Fixed CppCheck: (performance) Possible inefficient checking for emptiness.Kirill Kirilenko1-1/+1
2014-12-08Fixed compile errorsVincent1-5/+6
2014-12-07changed from using iterator to auto for server and clienthandleVincent1-2/+2
2014-12-07Fixed c++11 branch issues.Mattes D1-1/+2
2014-12-03Server: Fixed a MSVC warning.Mattes D1-1/+1
2014-11-29fixed naming of strings and changed from i to IVincent1-3/+3
2014-11-29issue 1253 - prevent multiple logins with same usernameVincent1-0/+17
2014-10-23Merged IniFile into main MCS sources.Mattes D1-1/+1
2014-10-23En masse NULL -> nullptr replaceTiger Wang1-11/+11
2014-10-21Missing space.Alexander Harkness1-1/+1
2014-10-20En masse NULL -> nullptr replaceTiger Wang1-11/+11
2014-10-20Migrated cSleep and cTimer to std::chronoTiger Wang1-10/+6
2014-10-20Fix for fix #1552Julian Laubstein1-2/+2
2014-10-20Added error messageJulian Laubstein1-0/+11
2014-10-19Migrated random generators to std::randomTiger Wang1-2/+0
2014-10-17cMojangAPI: Don't update data if server is in offline mode.Mattes D1-2/+2
2014-10-15Functions in cPluginManager get references instead of pointers.Mattes D1-1/+1
2014-09-17Added an explicit setting for allowing BungeeCord handshake.madmaxoft1-0/+7
2014-08-29Added new console command with cleanupTiger Wang1-17/+42
2014-08-21Added initializers for class members.Mattes D1-1/+3
As reported by Coverity, these weren't initialized.
2014-08-21Removed cGroup and cGroupManager.Mattes D1-18/+8
2014-07-21Style: Normalized to no spaces before closing parenthesis.madmaxoft1-2/+2
2014-07-21Style: Normalized spaces after if, for and while.madmaxoft1-1/+1
2014-07-20Revert "Only one instance of server can be started"Tiger Wang1-0/+2
This reverts commit 6484e9814a3a540518606f552398e0b82f91ab4d. * Fixes #1200
2014-07-19Code style: Fixed braces on separate lines.madmaxoft1-1/+2
2014-07-18Removed duplicate IPvX labels.madmaxoft1-2/+2
2014-07-17Normalized comments.madmaxoft1-3/+3
This was mostly done automatically and then visually inspected for obvious errors. All //-style comments should have a 2-space separation from the code, and 1 space after the comment sign.
2014-07-17Fixed spaces around single-line comments.madmaxoft1-3/+3
There should be at least two spaces in front and one space after //-style comments.
2014-07-16Store properties as Json::ValueTiger Wang1-1/+1
2014-07-14Player properties are now retrievedTiger Wang1-2/+2
2014-07-13Only one instance of server can be startedTiger Wang1-2/+0
This disallows the UDP multicasting that the original code enabled. xoft deterrent, in PR #1151 you implied that this was unwanted behaviour (but comments gone now as I force pushed - check emails?). Revert at will if unsatisfactory :P
2014-07-11Player data filenames are based on UUID.madmaxoft1-0/+3
2014-06-19Nullify deleted pointers.archshift1-0/+1
2014-05-19Fixed some warnings in Server.cpp, and in UI/Julian Laubstein1-1/+7
2014-05-18removed the <list> includeJulian Laubstein1-1/+0
2014-05-18Added unload <pluginname> commandJulian Laubstein1-5/+9
2014-05-17Added load cmdJulian Laubstein1-5/+29
2014-05-17Added load command in the cServer classJulian Laubstein1-0/+6
2014-04-19Declared one mutex as mutable in order to allow for const correct get accessors.jfhumann1-1/+1
2014-04-18Did some static analysis, fixed some bugs and optimized a lot of codejfhumann1-1/+1
2014-04-13Added Yggdrasil Authentication Systemdaniel09161-2/+2
Code by Howaner. Fixes/Changes by me.
2014-03-11Fixed more Format issuesTycho1-1/+1
2014-03-11Unified Vector classesandrew1-1/+1
2014-02-21Remove old Output FinishHowaner1-2/+0
2014-02-21Add 'Group not found', when the Server load the users.ini and add auto generate from users.iniHowaner1-0/+4
2014-02-20Disabled the leak finder.madmaxoft1-1/+3
2014-02-09"reload" is back.STRWarrior1-0/+7
2014-02-09Split "reload" in "reloadplugins" and "reloadgroups".STRWarrior1-2/+5
2014-02-09The console reload command also reloads the groups.STRWarrior1-0/+1
2014-01-28Protocol 1.7: Forced encryption on all connections.madmaxoft1-1/+2
This is for testing purposes only, to find bugs in the encryption. Once the encryption is deemed stable, it will be enabled only for servers with enabled Authentication.
2014-01-25Mob bugfixesTiger Wang1-1/+1
* Mobs no longer require constant line-of-sight to a player to remain aggravated * Fixed an ASSERT * Fixed mobs jumping * Fixed Idle state not properly using AI + Added FILE_IO_PREFIX to favicon loading + Implemented #563
2014-01-23PolarSSL is fully used for 1.3.2 protocol encryption.madmaxoft1-10/+2
2014-01-21Scoreboard protocol supportandrew1-1/+1
2014-01-19Rewritten SocketThreads for proper shutdown scenario.madmaxoft1-10/+1
This fixes #560 and #390.
2014-01-18Command blocks: Execute()andrew1-1/+1
2014-01-07Fixed faviconsTiger Wang1-13/+1
2014-01-07Avoid making copies of favicon stringBill Derouin1-1/+1
2014-01-07More MSVC warning fixes.madmaxoft1-1/+1
2014-01-07A few more touch upsBill Derouin1-1/+1
2014-01-07A few touch upsBill Derouin1-1/+4
2014-01-07Implement favicon for 1.7.2Bill Derouin1-0/+11
Favicon data is a png encoded in base64 which is stored in the server and sent in the server response packet
2013-12-31fixxed warnings in Server.cppTycho Bickerstaff1-0/+5
2013-12-16Fixed cClientHandle::Tick() being called from two threads.madmaxoft1-1/+1
When the player was initialized, the Tick() function continued to stream chunk, while the cWorld called Tick() from its tick thread. Final fix for #187.
2013-12-08Moved bindings-related to a Bindings subfolder.madmaxoft1-1/+1
Ref.: #407
2013-11-27Fixed the remaining derpsAlexander Harkness1-2/+2
2013-11-26Compile fix againTiger Wang1-1/+1
2013-11-26Fixed Linux compile againTiger Wang1-1/+1
2013-11-24Attempt to fix compilationTiger Wang1-2/+2
2013-11-24Moved source to srcAlexander Harkness1-0/+0
2013-11-13Implemented the "help" console command in the server.madmaxoft1-1/+33
Fixes #42.
2013-11-13Console "reload" command implemented in MCServer, rather than in a plugin.madmaxoft1-0/+23
First part of #42.
2013-11-05Implemented suggestionsTiger Wang1-2/+2
- Reverted changes to WebAdmin.cpp IPv6 ports and Server.cpp server description + Added default value explicitly for HardCore value * Split PluginManager plugin defaults write to new function - Removed a commented block from BlockTorch and... + Added g_BlockIsTorchPlaceable to Defines.h
2013-11-04Autogeneration of settings.ini and webadmin.iniTiger Wang1-4/+5
Fixes issue #75
2013-10-04Made MagicCarpet more magical!Tiger Wang1-1/+1
2013-09-29Improvements to startup timerTiger Wang1-2/+2
As suggested by xoft. Also reverted changes of displayed protocol version.
2013-09-28Minor startup streamliningTiger Wang1-4/+3
* LOGD'd unneeded debugging messages, streamlining startup + Added a basic timer for how long in seconds it took to start up + Added two checks for plural (plugin/s, second/s)
2013-09-21Fixed Linux threading issues.madmaxoft1-2/+2
2013-08-19Fixed WorldTickThread reporting wrong time durations for each tick.madmaxoft1-1/+1
This had caused food eating to fail and players unable to collect pickups on Linux.
2013-08-19Moved entities into the Entities subfolder.madmaxoft1-2/+1
2013-08-17The server Tick thread ticks PluginManager.madmaxoft1-0/+5
This fixes #104 and #102
2013-08-14Server counts the players correctly.madmaxoft1-1/+1
Was missing the PlayerDestroying() call, so players weren't removed from the playercount.
2013-08-14Player counts are now properly handled.madmaxoft1-0/+45
Fixes #80
2013-08-13Clients are now ticked in cServer first, then in cWorld once they get assigned a world.madmaxoft1-13/+35
2013-08-12Removed cServer::BroadcastChat() and cServer::SendMessage().madmaxoft1-36/+10
These two functions make it difficult to move to the new ticking system, and they aren't used anyway. If so required, they can be emulated by ForEachWorld / ForEachPlayer calls.
2013-08-11Each world now ticks in a separate thread.madmaxoft1-1/+1
2013-08-11Removed cServer::m_pState, dissolved into direct member variables.madmaxoft1-91/+50
The server tick thread is now in the cServer::cTickThread object.
2013-08-11Moved MaxPlayers and Description from cWorld to cServer.madmaxoft1-29/+35
Also started creating a new cWorld::cTickThread class, but not used yet.
2013-08-03Removed some stuff again.Alexander Harkness1-14/+0
2013-08-03Revert "Rm'd startup credits & mv'd to README"Alexander Harkness1-0/+17
This reverts commit 2383977fe76287f4a3cc93c802d83966726ee8a4.
2013-08-03Rm'd startup credits & mv'd to READMETiger Wang1-17/+0
Removed as I feel it serves no purpose other than spam console and bury real error messages from plugins, etc. This is especially the case with running under screen, which makes it very difficult to scroll up or down.
2013-08-03Updated inbuilt commands descriptionTiger Wang1-5/+4
Did this to meet help format standards.
2013-06-29Advanced RCON: Command output is sent to the RCON client.madmaxoft@gmail.com1-4/+8
RCON authentication is now required before executing commands. Console command handlers now return two values, bool (IsHandled) and string (CommandOutput). API change: removed cRoot:ExecuteConsoleCommand(), added cRoot:QueueExecuteConsoleCommand(). API change: removed cPluginManager:ExecuteConsoleCommand(), use cRoot:QueueExecuteConsoleCommand() instead git-svn-id: http://mc-server.googlecode.com/svn/trunk@1631 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-27Added a basic RCON protocolmadmaxoft@gmail.com1-2/+5
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1628 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-22Plugins can modify message in the OnChat() hook handler.madmaxoft@gmail.com1-1/+1
FS #376 git-svn-id: http://mc-server.googlecode.com/svn/trunk@1622 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-04-03Server: removed the artificial cap on reported tick durationmadmaxoft@gmail.com1-7/+4
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1353 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-03-23Added auto-kill-with-dump to LeakFinder if the allocated memory grows over 1 GiB.madmaxoft@gmail.com1-0/+8
Only works on Windows and only present in Debug mode. Produces memdump.xml for analysis. http://forum.mc-server.org/showthread.php?tid=826&pid=6948#pid6948 git-svn-id: http://mc-server.googlecode.com/svn/trunk@1302 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-03-05IPv6 support + removed cTCPLink from Lua APImadmaxoft@gmail.com1-5/+25
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1253 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-03-04Moved client socket accepting into a separate thread object, cListenThreadmadmaxoft@gmail.com1-93/+46
MCServer can now listen on multiple ports FS #312 git-svn-id: http://mc-server.googlecode.com/svn/trunk@1252 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-03-04Starting an IPv6 support / cSocket rewritemadmaxoft@gmail.com1-6/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1250 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-02-15Plugins can now bind console commandsmadmaxoft@gmail.com1-83/+21
FS #300 Most console commands are now implemented in the Core plugin. git-svn-id: http://mc-server.googlecode.com/svn/trunk@1214 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-01-12Merged branch "branches/hooks" into "trunk".madmaxoft@gmail.com1-11/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1139 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-11-20Added "primaryserverversion" to the "help" list.madmaxoft@gmail.com1-0/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1060 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-11-20Added primary server version interface to cRoot and "primaryserverversion" console command.madmaxoft@gmail.com1-0/+19
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1059 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-11-11Settings.ini is read only once on server startmadmaxoft@gmail.com1-34/+31
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1035 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-10-20Use leakfinder in debug builds to dump all currently used memory via the "dumpmem" console command.madmaxoft@gmail.com1-0/+23
git-svn-id: http://mc-server.googlecode.com/svn/trunk@984 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-10-19Removed unused [Physics].Water section from settings.ini.madmaxoft@gmail.com1-8/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@982 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-09-25Sockets are now owned by SocketThreads instead of ClientHandle (FS #246 and FS #247)madmaxoft@gmail.com1-8/+8
git-svn-id: http://mc-server.googlecode.com/svn/trunk@891 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-09-24Source files cleanup: The rest of the files renamed.madmaxoft@gmail.com1-13/+13
git-svn-id: http://mc-server.googlecode.com/svn/trunk@887 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-09-23Source files cleanup: OSSupport-related files in a separate subfolder, renamed.madmaxoft@gmail.com1-2/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@885 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-09-23Source files cleanup: Mobs-related files in a separate subfolder, renamed.madmaxoft@gmail.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@883 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-09-23Source files cleanup: Protocol-related files in a separate subfoldermadmaxoft@gmail.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@880 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-09-20Refactored windows.madmaxoft@gmail.com1-1/+0
As described on the forum: http://forum.mc-server.org/showthread.php?tid=561 For now, only basic clicking works; shift-click not implemented yet. git-svn-id: http://mc-server.googlecode.com/svn/trunk@867 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-09-06Officially added 1.3.2 protocol supportmadmaxoft@gmail.com1-1/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@839 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-09-04Fixed a possible race condition in cClientHandle's packet sending code; prepared for moving cSocket out of cClientHandle's ownership.madmaxoft@gmail.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@832 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-09-04Removed OS dependencies from CryptoPP; Removed unused modules that didn't compile on some platformsmadmaxoft@gmail.com1-1/+4
git-svn-id: http://mc-server.googlecode.com/svn/trunk@827 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-08-30Implemented 1.3.2 protocol encryption using CryptoPP, up to Client Status packet (http://wiki.vg/Protocol_FAQ step 14)madmaxoft@gmail.com1-0/+18
git-svn-id: http://mc-server.googlecode.com/svn/trunk@808 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-08-27Cut out all packet handling to a separate cProtocol descendantmadmaxoft@gmail.com1-18/+0
git-svn-id: http://mc-server.googlecode.com/svn/trunk@796 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-08-24Monster classes don't use cPackets. Chat messages are sent / broadcast without cPackets. BlockEntities don't use cPackets.madmaxoft@gmail.com1-14/+32
git-svn-id: http://mc-server.googlecode.com/svn/trunk@783 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-08-18Chat packet handled in the new way; fixed missing packet sending for inventory slot.madmaxoft@gmail.com1-36/+15
Again, API change! cPlugin:OnChat() has had its parameters swapped, to match all the other callbacks - Player first, Message second git-svn-id: http://mc-server.googlecode.com/svn/trunk@751 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-08-15Console command "chunkstats" now lists each world and also totalsmadmaxoft@gmail.com1-26/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@739 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-08-15Added a true "all chunks saved" message for the save-all console command (FS #215)madmaxoft@gmail.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@738 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-19Fixed a possible crash when restarting / stopping the server.madmaxoft@gmail.com1-0/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@632 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-14Attempt to bring sanity to newlines across systems.cedeel@gmail.com1-738/+738
git-svn-id: http://mc-server.googlecode.com/svn/trunk@606 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-12Updated the crafting recipes architecture to better support crafting hooks. Removed the old recipe file and implementation altogether.madmaxoft@gmail.com1-1/+0
git-svn-id: http://mc-server.googlecode.com/svn/trunk@597 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-09More ini settings save their defaultsmadmaxoft@gmail.com1-6/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@588 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-30Added more statistics to the "chunkstats" server console commandmadmaxoft@gmail.com1-1/+19
git-svn-id: http://mc-server.googlecode.com/svn/trunk@528 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-25Merged the composable_generator branch into the trunkmadmaxoft@gmail.com1-64/+79
git-svn-id: http://mc-server.googlecode.com/svn/trunk@504 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-04-11Moved the commands /coords /viewdistance and /regeneratechunks from cServer.cpp to the Core pluginfaketruth1-60/+0
git-svn-id: http://mc-server.googlecode.com/svn/trunk@457 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-04-10Added the permission "builtin.regeneratechunk" needed for regenerating chunks using a command.madmaxoft@gmail.com1-0/+5
git-svn-id: http://mc-server.googlecode.com/svn/trunk@455 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-04-10Added the "/regeneratechunk" command that regenerates either current chunk or a chunk specified with x, z parameters. TODO: permissions - we don't want guests erasing our chunks!madmaxoft@gmail.com1-1/+28
git-svn-id: http://mc-server.googlecode.com/svn/trunk@454 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-26Added the supported client version to banner; shamelessly added myself to the authors list ;)madmaxoft@gmail.com1-3/+5
git-svn-id: http://mc-server.googlecode.com/svn/trunk@436 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-19Fixed player heads always pointing north (new EntityHeadLook packet)madmaxoft@gmail.com1-3/+7
git-svn-id: http://mc-server.googlecode.com/svn/trunk@424 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-14Split chunk data into separate arrays; decoupled most sources from cChunk.h dependencymadmaxoft@gmail.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@411 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-10Fixed a few obsoleted functionsmadmaxoft@gmail.com1-3/+3
git-svn-id: http://mc-server.googlecode.com/svn/trunk@397 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-10Using references instead of pointers for sending packetsmadmaxoft@gmail.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@394 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-10Fixed *nix threading issue;madmaxoft@gmail.com1-3/+3
Thread objects now use variable names consistent with MCS convention; Fixed a few *nix threading cornercases git-svn-id: http://mc-server.googlecode.com/svn/trunk@392 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-09cClientHandles have a unique ID now to distinguish themfaketruth1-5/+5
cAuthenticator uses unique client ID for authentication Changed the kick function used by cAuthenticator to take a client ID instead of name, so the correct user is kicked Using callback reference instead of pointer in GetChunkData and affiliates GetChunkData returns false when failed, and true when succeeded Renamed entity type enums to something prettier Exposed some functions to Lua git-svn-id: http://mc-server.googlecode.com/svn/trunk@388 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-05Fixed a potential deadlock ( http://forum.mc-server.org/showthread.php?tid=374 )madmaxoft@gmail.com1-4/+9
git-svn-id: http://mc-server.googlecode.com/svn/trunk@369 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-28Improved threading performance by reducing thread-hopping in queue locks (cs unlocked before event set)madmaxoft@gmail.com1-3/+5
git-svn-id: http://mc-server.googlecode.com/svn/trunk@341 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-26Attempt at fixing crashes with disconnecting playersmadmaxoft@gmail.com1-0/+9
git-svn-id: http://mc-server.googlecode.com/svn/trunk@329 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-26Using cSocketThreads for client outgoing packets. Unfortunately had to put in one intermediate thread (cServer::cNotifyWriteThread) to avoid deadlocks. Still, seems we have a proper multithreading for clients and no more per-client threads, yay :)madmaxoft@gmail.com1-24/+136
git-svn-id: http://mc-server.googlecode.com/svn/trunk@328 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-26Extended SocketThreads for writing support (unusable in cClientHandle due to too many deadlock possibilities)madmaxoft@gmail.com1-1/+1
Extended the range of ignored packets in pre-game client states (fixes connection issues with some mods installed) git-svn-id: http://mc-server.googlecode.com/svn/trunk@327 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-23Made the viewdistance settable by users and default in settings.ini. The default is 9.madmaxoft@gmail.com1-13/+34
git-svn-id: http://mc-server.googlecode.com/svn/trunk@326 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-17Lots of logging addedmadmaxoft@gmail.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@282 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16git-svn-id: http://mc-server.googlecode.com/svn/trunk@281 0a769ca7-a7f5-676a-18bf-c427514a06d6faketruth1-1/+1
2012-02-16New server command "unload" to manually unload unused chunksmadmaxoft@gmail.com1-1/+9
git-svn-id: http://mc-server.googlecode.com/svn/trunk@280 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16Fixed logging in cServermadmaxoft@gmail.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@269 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-13Rewritten most of the code for multithreading; still not 100%, but getting there. If this commit proves to be too problematic, we can always undo it.madmaxoft@gmail.com1-17/+17
git-svn-id: http://mc-server.googlecode.com/svn/trunk@251 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-08cSocketThreads plugged in for cClientHandle reading. Sending still kept the old way. Please help me test this commit thoroughly, this is a change that can break on subtleties.madmaxoft@gmail.com1-49/+16
git-svn-id: http://mc-server.googlecode.com/svn/trunk@244 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-05Now showing proper error messages when sockets fail :)faketruth1-3/+3
Crossplatform GetLastError function in cSocket git-svn-id: http://mc-server.googlecode.com/svn/trunk@234 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-02cSocket API fix (possible invalid pointer)madmaxoft@gmail.com1-8/+14
cMCLogger slight change (CS ptr -> member) git-svn-id: http://mc-server.googlecode.com/svn/trunk@222 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01Rewritten cAuthenticator to make use of the new cIsThread architecture - now authentication runs in a single separate thread for all clients;madmaxoft@gmail.com1-8/+101
Global player-kicking function (cServer, cRoot); More char * -> AString conversion git-svn-id: http://mc-server.googlecode.com/svn/trunk@221 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01Introducing StringUtils - the place to be if you are a generic string routine :) No more sprintf()!madmaxoft@gmail.com1-39/+17
git-svn-id: http://mc-server.googlecode.com/svn/trunk@209 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-29VC2008 / VC2010: Enabled precompiled header through Globals.h; the header included in every module in the project. Compilation optimization.madmaxoft@gmail.com1-11/+7
git-svn-id: http://mc-server.googlecode.com/svn/trunk@188 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-22Improved Core's WebAmin interface a bit.faketruth1-3/+9
Can now kick players through WebAdmin Can now enable/disable whitelist through WebAdmin Tick speed is limited in a better way now, instead of always sleeping 50ms before each tick, it now add only sleeps additional time when the tick time was faster than 50ms. Server should run slightly faster because of this (and use more cpu%) git-svn-id: http://mc-server.googlecode.com/svn/trunk@167 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-21Bug FS#131 http://www.mc-server.org/support/index.php?do=details&task_id=131 should be fixedfaketruth1-0/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@166 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-19Terrain generation is synchronous again, async generation has bugs.faketruth1-2/+1
Made some funky smart pointer things for chunks. Fixed a bug where the client would override the player position on the server and back again, resulting in sending too many chunks to the client which it doesn't even need. Fixed some compiler warnings in cPickup.cpp git-svn-id: http://mc-server.googlecode.com/svn/trunk@164 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-01Fixed the numchunks console command.faketruth1-1/+1
Added some form of reference counting to cChunk to make sure it's not referenced when deleting it. Right now it's only needed due to the generation of chunks in a separate thread and adding it to the spread light list in cWorld git-svn-id: http://mc-server.googlecode.com/svn/trunk@161 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-26Players can switch worlds on the fly with the command /gotoworld [worldName]. This uses the function cPlayer::MoveToWorld()faketruth1-10/+0
Changed isValidItem to IsValidItem in Core.lua git-svn-id: http://mc-server.googlecode.com/svn/trunk@126 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-25Code improvementslapayo94@gmail.com1-1/+18
Fixed authentication (Can be activated now) Added MersenneTwister.h Thanks to mtilden ( http://forum.mc-server.org/showthread.php?tid=183&pid=1428#pid1428 and http://forum.mc-server.org/showthread.php?tid=183&pid=1418#pid1418 ) git-svn-id: http://mc-server.googlecode.com/svn/trunk@106 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-23Added thread names to cThread so when debugging in Visual Studio you actually know what thread you're looking atfaketruth1-2/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@100 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-01You can now run multiple worlds by defining them in settings.ini . However there's no way to change worlds on the fly yetfaketruth1-19/+19
Players are now stored in separate folder /players instead of in the world folder (!so move the folder!) Fixed a memory leak/error in cPickup.cpp Multiple worlds are stored in cRoot cClientHandle lists are taken out of cWorld and now stored in cServer Worlds now have names to distinguish them by Some functions in the Core plugin now distinguish between worlds git-svn-id: http://mc-server.googlecode.com/svn/trunk@40 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-31Prepared some parts of the code for multi world support, I created lots of TODO'sfaketruth1-3/+5
git-svn-id: http://mc-server.googlecode.com/svn/trunk@29 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-23Abstracted sockets some more to ensure the same behavior over the entire program and on multiple platforms.faketruth1-58/+24
MCSocket.h should soon be deprecated and deleted Do a full rebuild (mine bugged out when I didn't) git-svn-id: http://mc-server.googlecode.com/svn/trunk@8 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-21Compiles for linuxfaketruth1-0/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@6 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-03MCServer c++ source filesfaketruth1-0/+553
git-svn-id: http://mc-server.googlecode.com/svn/trunk@3 0a769ca7-a7f5-676a-18bf-c427514a06d6