summaryrefslogtreecommitdiffstats
path: root/source (unfollow)
Commit message (Expand)AuthorFilesLines
2012-04-03Attempted a fix for cSocket's Bind() call on MacOS-based systems (initializing the whole sockaddr_in structure with zeroes first)madmaxoft@gmail.com1-0/+1
2012-03-31cSocket.cpp should also compile on Mac now (I hope)faketruth1-1/+1
2012-03-31Fixed a crash when fluid would try to go below the world (y = -1)faketruth1-4/+6
2012-03-28Got rid of sPluginManagerStatefaketruth5-70/+90
2012-03-27Fixed a possible crash in ChunkSender - a client would be reported as removed but still would be in the internal queue.madmaxoft@gmail.com2-2/+16
2012-03-26Removed the unneeded header wdirent.hmadmaxoft@gmail.com1-369/+0
2012-03-26Added the supported client version to banner; shamelessly added myself to the authors list ;)madmaxoft@gmail.com3-4/+13
2012-03-25A globally-accessible OS-independent GetDirectoryContents() function for listing all objects in a folder as an AStringListmadmaxoft@gmail.com6-85/+81
2012-03-25Fixed the Log altogether (doesn't use NULL-to-va_list assignment, compiles for RaspberryPi)madmaxoft@gmail.com2-14/+6
2012-03-24Added the new 1.2.4's PlayerAbilities packet; restructures packet files for less files, more dense.madmaxoft@gmail.com14-382/+398
2012-03-24Protocol version bumped up to 29 (MC 1.2.4), seems to work.madmaxoft@gmail.com1-1/+1
2012-03-24Removed the split between 1.2.3 and 1.1, left only 1.2.3 codemadmaxoft@gmail.com12-226/+10
2012-03-24Reverted the previous commit - it is useless, since entities still depend heavily on cWorldmadmaxoft@gmail.com18-258/+47
2012-03-23Encapsulated cWorld functions needed in cWorldStorage into an interface, so that cWorldStorage can actually be used outside of MC-Server (such as storage conversion tools and chunk analyzers)madmaxoft@gmail.com18-47/+258
2012-03-22Fixed a deadlock by removing clients from all chunks upon their exit, not using the clients chunklists.madmaxoft@gmail.com6-22/+51
2012-03-19Fixed player heads always pointing north (new EntityHeadLook packet)madmaxoft@gmail.com6-15/+81
2012-03-19Fixed a warning in a Release buildmadmaxoft@gmail.com1-1/+4
2012-03-19Made some logging output debug-onlymadmaxoft@gmail.com1-6/+6
2012-03-19Basic cWindow thread-safetymadmaxoft@gmail.com6-63/+132
2012-03-19SocketThreads: proper thread finishing sequence (doesn't trigger AppVerifier checks :)madmaxoft@gmail.com1-0/+9
2012-03-16Got rid of cPlayer::sPlayerStatefaketruth2-88/+47
2012-03-16That didn't work.. I forgot some cChunk functions were changed. Now it should compile againfaketruth2-1/+4
2012-03-16Exposed a function to Lua to get a block's sky light valuefaketruth6-33/+72
2012-03-14Actually commented out the Anvil terrain inversion codemadmaxoft@gmail.com1-1/+1
2012-03-14Anvil support: Added a debugging section for inverting terrain (So that MC cave generator can be seen in action). Commented out, so that it doesn't make it into the release versionsmadmaxoft@gmail.com1-0/+24
2012-03-14Unified the chunk data to use the BLOCKDATA datatype.madmaxoft@gmail.com16-33/+52
2012-03-14Split chunk data into separate arrays; decoupled most sources from cChunk.h dependencymadmaxoft@gmail.com33-592/+799
2012-03-13Fixed the server not waiting for the world to save completely before stoppingmadmaxoft@gmail.com1-0/+3
2012-03-13Removed an unwarranted assert in cChunkSendermadmaxoft@gmail.com1-2/+5
2012-03-13Small optimizations in the SetNibble() and GetNibble() functions; removed unused lighting functions from cChunkmadmaxoft@gmail.com2-96/+23
2012-03-13Fixed a few warnings, lifted up the block interactinos limit to 20 (10 was not enough for Creative mode)madmaxoft3-21/+2
2012-03-12Gotten rid of stricmp MSVC warningsmadmaxoft@gmail.com1-2/+2
2012-03-12*nix compilation fix (for rev 402)madmaxoft@gmail.com1-4/+6
2012-03-12Added a flat terrain generator with settable terrain heightmadmaxoft@gmail.com5-10/+148
2012-03-12Fixed MapChunk packets to include (fake) biome data, makes clients happymadmaxoft@gmail.com5-15/+55
2012-03-12Fixing compilation on Drawin 9 / MacOS Xmadmaxoft@gmail.com3-14/+7
2012-03-11Stopping the ChunkSender upon server stopmadmaxoft@gmail.com3-2/+15
2012-03-11Fixed a small bug in chunk version check D:faketruth1-0/+1
2012-03-11Not sending chunks to the client twicemadmaxoft@gmail.com5-24/+40
2012-03-11Anvil format: fixed loading with XZY orderingmadmaxoft@gmail.com1-11/+9
2012-03-10Fixed a few obsoleted functionsmadmaxoft@gmail.com12-49/+83
2012-03-10Completely integrated the new axis ordering. Will update worlds accordinglyfaketruth3-2/+151
2012-03-10Anvil support: compatible with both chunk orderingsmadmaxoft@gmail.com1-0/+4
2012-03-10Using references instead of pointers for sending packetsmadmaxoft@gmail.com8-26/+24
2012-03-10Fixed mob spawn packet for 1.2 client, now client doesn't bail out when mobs are turned onmadmaxoft@gmail.com3-8/+11
2012-03-10Fixed *nix threading issue;madmaxoft@gmail.com11-88/+93
2012-03-10Was using "#else if" which is not valid apparently, now using "#elif"faketruth4-6/+6
2012-03-10You can change axis ordering by setting AXIS_ORDER to AXIS_ORDER_XZY in cChunk.h !THIS WILL SCREW UP YOUR WORLDS THOUGH!faketruth5-15/+46
2012-03-10Using more of the index functions in cChunk, so it should be easy enough to flip the axis ordering nowfaketruth3-82/+94
2012-03-09cClientHandles have a unique ID now to distinguish themfaketruth24-71/+224
2012-03-09Using the _DEBUG macro for *nix debug builds as well; trying to force 8-byte alignment on critical sections ( http://forum.mc-server.org/showthread.php?tid=384 )madmaxoft@gmail.com6-28/+57
2012-03-07Anvil format: loading chests' contents.madmaxoft@gmail.com4-11/+240
2012-03-07ChunkSender: Fixed a potential crash: removing a client means that no Send() is called on that client anymoremadmaxoft@gmail.com2-16/+27
2012-03-07WSSCompact: fixed switched version values (!); removed unused methodsmadmaxoft@gmail.com2-4/+2
2012-03-07Fixed bug where cPlayer's cClientHandle was used after cPlayer was destroyed http://forum.mc-server.org/showthread.php?tid=380faketruth13-107/+306
2012-03-07No need to reset zlib (copypasta error)madmaxoft@gmail.com1-1/+0
2012-03-07Added the Anvil level format (MCA) support, read-only for the time being. Now MCS can read your worlds from the official server :)madmaxoft@gmail.com6-2/+1258
2012-03-06Sticky pistons should work as well nowfaketruth1-0/+3
2012-03-06Added a little documentation on ChunkSender.madmaxoft@gmail.com1-1/+14
2012-03-06Fixed redstone repeater bug where it could not get the direction when it has delay bits setfaketruth1-3/+3
2012-03-06ChunkSender won't send NULL packets anymoremadmaxoft@gmail.com1-1/+5
2012-03-06Fixed rev 373 not compiling on linuxmadmaxoft@gmail.com1-0/+5
2012-03-06Yay redstone repeaters!faketruth4-49/+355
2012-03-06World storage names are now case-INsensitivemadmaxoft@gmail.com1-2/+2
2012-03-06That was not a good place to use ARRAYCOUNT()madmaxoft@gmail.com1-5/+5
2012-03-06Fixed rev368's ChunkSender, now sends properly even chunks that are loaded. Fixed a deadlock in cClientHandle vs TickThread over cClientHandle::m_CSChunkListsmadmaxoft@gmail.com5-26/+155
2012-03-06Fixed bug FS#157 http://mc-server.org/support/index.php?do=details&task_id=157faketruth1-5/+5
2012-03-05Fixed a potential deadlock ( http://forum.mc-server.org/showthread.php?tid=374 )madmaxoft@gmail.com1-4/+9
2012-03-05Using a fixed-size array instead of AString for conversion. Conversion now runs ~10x faster :) (in debug mode)madmaxoft@gmail.com1-25/+29
2012-03-05WSS conversion quickfix: reserving memory so that AString doesn't need to re-alloc (but still uses painfully slow push_back()s )madmaxoft@gmail.com1-0/+2
2012-03-05ChunkSender: Chunks are now compressed and sent to clients from a separate threads, proper passive waiting between threads. Not much tested, just appears to work :)madmaxoft@gmail.com18-229/+453
2012-03-04Removed redstone debugging: powered dirt blocks change into stonefaketruth1-8/+8
2012-03-04Yay tiny commits XD fixed % signfaketruth1-1/+1
2012-03-04Lowered the amount of logging while converting chunksfaketruth1-1/+8
2012-03-04Converted pak files were not marked 'dirty' and wouldn't be saved. Fixed now :)faketruth1-0/+1
2012-03-04Forcing the use of the new redstone simulatorfaketruth1-1/+2
2012-03-04Should have complete support for 256 blocks high worlds. Old save files are converted to new ones at load.faketruth3-16/+165
2012-03-04The world can now truly be made higher by incrementing cChunk::c_ChunkHeight to 256. !!HOWEVER THIS WILL DESTROY YOUR SAVED WORLD!!faketruth2-2/+2
2012-03-04Changed signed char to unsigned char in block packets, so we can receive height up to 255faketruth9-28/+47
2012-03-03Got rid of some hardcoded numbers, now using hardcoded variables! woofaketruth11-145/+151
2012-03-02That should not have been committed...faketruth1-1/+1
2012-03-02Chunk light and metadata are also sent now, should take a load off of the clientfaketruth1-5/+38
2012-03-02Finally got the multiblock packet working! It seems the byte order was wrongfaketruth2-6/+5
2012-03-02MultiBlock packet is working partly.. I really don't understand what's wrong with this packet :/faketruth4-2/+54
2012-03-01Chunks are successfully streamed to clients (in a bad a slow way, but whatever)faketruth4-5/+49
2012-03-01Clients can join the server, but chunks are sent completely emptyfaketruth2-0/+80
2012-03-01Forgot to update packet size (though I'm not even sure it's used anymore)faketruth1-2/+6
2012-03-01Started carefully moving to 1.2.2faketruth6-67/+135
2012-03-01New redstone simulator. Should work without crashes!faketruth8-8/+650
2012-02-29Fixed the authenticator bugmadmaxoft@gmail.com2-0/+9
2012-02-29Making sure cClientHandle::m_Player was NULL after authentication completedfaketruth1-0/+1
2012-02-29Added validity checks to world broadcasting. Also added logging to cPlayer deletion to catch that stupid BugByBoo.madmaxoft@gmail.com2-4/+12
2012-02-28Improved threading performance by reducing thread-hopping in queue locks (cs unlocked before event set)madmaxoft@gmail.com3-29/+41
2012-02-28Setting the m_bDestroyed flag only after the cClienthandle is truly destroyed; cClientHandle's destructor now locks loaded chunk listsmadmaxoft@gmail.com1-3/+10
2012-02-28Server uses ~40% less CPU nowfaketruth2-87/+93
2012-02-28Linux compilation fix (y u no support const_iterator, gcc?)madmaxoft@gmail.com1-1/+1
2012-02-28Chunk now has an indicator of load failure; Chunk generator uses cChunkStaymadmaxoft@gmail.com9-6/+89
2012-02-28Implemented synchronous chunk loading; optimized cChunkStay interface for speed (though still unused ;)madmaxoft@gmail.com8-152/+342
2012-02-28ChunkGenerator: fixed an inverted condition on chunk-skipping when the generator is overloaded; set the overload threshold to 500 chunks (from original 50 which is not enough even for a single player)madmaxoft@gmail.com1-6/+9
2012-02-28Const-correctness for packet broadcasting (fixes GCC compilation)madmaxoft@gmail.com4-6/+6
2012-02-27Fix for the perpetual load issuemadmaxoft@gmail.com1-1/+7
2012-02-26Implemented chunk loading without generating on load-failuremadmaxoft@gmail.com3-16/+62
2012-02-26New cChunkStay class for temporarily keeping chunks loaded even when then have no clients. For now unused, will be used by generator and lighting in the future.madmaxoft@gmail.com6-1/+152
2012-02-26Attempt at fixing crashes with disconnecting playersmadmaxoft@gmail.com6-18/+38
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.com4-150/+253
2012-02-26Extended SocketThreads for writing support (unusable in cClientHandle due to too many deadlock possibilities)madmaxoft@gmail.com4-33/+218
2012-02-23Made the viewdistance settable by users and default in settings.ini. The default is 9.madmaxoft@gmail.com5-28/+73
2012-02-23Plain pointer cChunkPtr finishing touches; removed cChunk's critical sectionsmadmaxoft@gmail.com4-176/+35
2012-02-23Made cChunkPtr a plain old pointer again, since it's safe nowmadmaxoft@gmail.com2-5/+7
2012-02-23cChunk: removed unused codemadmaxoft@gmail.com2-8/+0
2012-02-23Added cmdline parameters "/cdg" and "/cdf" for crashdump flags "globals" and "full memory"madmaxoft@gmail.com1-2/+17
2012-02-22Rewritten ore generation from scratch, using a different (much faster) algorithm. Chunk generation now about 2x faster :)madmaxoft@gmail.com2-25/+111
2012-02-22That 2nd assert didn't make much sense...faketruth1-1/+2
2012-02-22Added some asserts to trace a bugfaketruth2-2/+6
2012-02-22Fixed a bug that no chunks were unloaded on the client. Now chunks are properly unloaded on the clients.faketruth2-0/+7
2012-02-22Noise function optimization (chunk generation now about 1.5x faster :)madmaxoft@gmail.com3-10/+33
2012-02-22WorldGenerator: fixed small foliage - cacti now generate only at beaches, not underwater.madmaxoft@gmail.com1-32/+33
2012-02-22Lua seems to have trouble with a combination of overloaded functions and class inheritance, so I renamed TeleportTo( cEntity* ) to TeleportToEntityfaketruth4-32/+53
2012-02-22Fixed a potential deadlock in cChunkMap::m_CSLayers vs cWorld::m_CSAllEntitiesmadmaxoft@gmail.com1-6/+8
2012-02-22Added a crude way of disabling redstone. It's necessary though, redstone is completely broken, crashes the server all the timefaketruth5-158/+199
2012-02-22Added a CriticalSection to cPlugin_NewLua. Lua plugins are not threadsafe but they ARE accessed by multiple threads, this can create some hard to find errors, but I fixed it now :Pfaketruth2-0/+18
2012-02-22Restricted windows crash dump generating code to 32-bit platforms only due to inline assemblymadmaxoft@gmail.com1-5/+6
2012-02-21Added code to produce dump files on Windows builds to aid with debugging server crashesmadmaxoft@gmail.com1-0/+85
2012-02-21Changed ASSERT() to not cause warnings during compilefaketruth1-1/+9
2012-02-21Removed cChunkPtrs from everywhere but internal cChunkMap usage. Now we should finally be threadsafe :)madmaxoft@gmail.com10-109/+231
2012-02-21Fixed heightmap optimization from rev 302; removed a few more cChunkPtrsmadmaxoft@gmail.com8-38/+146
2012-02-21Optimized hightmap recalc when setting a chunk's blockmadmaxoft@gmail.com1-7/+31
2012-02-21Fixed block-getting so that simulators work againmadmaxoft@gmail.com6-24/+128
2012-02-20Removed some more cChunkPtr usagemadmaxoft@gmail.com13-114/+372
2012-02-20Using own ASSERT() that logs to filefaketruth21-59/+49
2012-02-19Fixed assertion bug in NamedEntitySpawn packet, it used to assert when item ID is 0, but now 0 is allowedfaketruth1-1/+1
2012-02-18Substantial cWorld::FastSetBlock() speed up by queueing all such calls and processing them later chunk-wise (makes growing trees in the generator fast again)madmaxoft@gmail.com6-45/+106
2012-02-18Fixed previous commit: forgot to remove a debugging settingmadmaxoft@gmail.com1-3/+1
2012-02-18Re-implemented tree-growing. May produce artefacts on old-world / new-world boundaries.madmaxoft@gmail.com11-111/+205
2012-02-18Thread-safe chunk generation, storage and generator are queried for progress while initializing servermadmaxoft@gmail.com16-176/+408
2012-02-18Logging: added thread ID to the log output in debug buildsmadmaxoft@gmail.com3-7/+11
2012-02-18Logging: added LOGD macro that logs only in debug buildsmadmaxoft@gmail.com1-3/+22
2012-02-18Moved stdarg.h inclusion into Globals.hmadmaxoft@gmail.com3-5/+1
2012-02-18cIsThread: Added support for getting current thread IDmadmaxoft@gmail.com2-0/+15
2012-02-17Added the skeleton of the cLightingThread objectmadmaxoft@gmail.com2-0/+196
2012-02-17Chunk coords mostly "upgraded" to include the Y coord for future compatibilitymadmaxoft@gmail.com11-67/+101
2012-02-17Removed useless log messagesmadmaxoft@gmail.com1-1/+0
2012-02-17Lots of logging addedmadmaxoft@gmail.com6-12/+45
2012-02-16git-svn-id: http://mc-server.googlecode.com/svn/trunk@281 0a769ca7-a7f5-676a-18bf-c427514a06d6faketruth5-6/+6
2012-02-16New server command "unload" to manually unload unused chunksmadmaxoft@gmail.com2-3/+11
2012-02-16cWorldGenerator speedup - doesn't call GetChunk() anymore, not queueing the chunk it's generating to be loaded recursively.madmaxoft@gmail.com11-42/+81
2012-02-16Got rid of dangerous GetEntity(), not using DoWithEntity()faketruth5-53/+29
2012-02-16Chunks are now marked as savedmadmaxoft@gmail.com1-2/+10
2012-02-16Marking chunk dirty after generatingmadmaxoft@gmail.com1-0/+2
2012-02-16cPlayer empty-handed spawn fixmadmaxoft@gmail.com1-1/+2
2012-02-16Heightmap is properly generated after loading chunks now, so /spawn and /top should work properly againfaketruth1-0/+2
2012-02-16Chunk is now marked as dirty; saving only dirty chunks; rewritten load / save not to use cChunkPtr; set VC2008 project to level4 warnings; block entities are now loaded and saved properlymadmaxoft@gmail.com23-154/+935
2012-02-16Chunks are properly saved before being unloaded nowfaketruth2-1/+11
2012-02-16cSocket::GetErrorString() now also compiles on Cygwinfaketruth1-1/+1
2012-02-16Fixed logging in cServermadmaxoft@gmail.com1-1/+1
2012-02-15No longer using pointers for Vector3(f/d/i) in cEntity's and cTracerfaketruth12-288/+246
2012-02-15New players no longer cause an assertfaketruth1-3/+3
2012-02-15Can use the 'restart' command again. cAuthenticator no longer asserts because it properly stops when the server is stopped.faketruth3-3/+16
2012-02-15Fixed a deadlock in WorldStoragefaketruth1-3/+5
2012-02-15Fixed logging formatting error in cWorldmadmaxoft@gmail.com1-1/+1
2012-02-15Restored chest and furnace functionality as it was (it's basically working but joined chests show single-chest window)madmaxoft@gmail.com13-104/+194
2012-02-15Can now pass any argument to cWorld:ForEachPlayer in Lua! But I'm not even using it.. lolfaketruth1-18/+46
2012-02-14Slight cleanup - removed old code, some additional comments on dangerous functionsmadmaxoft@gmail.com5-402/+13
2012-02-14Got rid of cWorld::GetAllPlayers() and implemented ForEachPlayer() more or less in Luafaketruth3-31/+64
2012-02-14Updated fluid simulators with geser's patch file!faketruth7-58/+338
2012-02-14m_World was never set in cBlockEntity's, now it isfaketruth1-0/+1
2012-02-14Apparently the Fire plugin is depreciated since it's implemented in C++ :Pfaketruth1-2/+2
2012-02-14Fixed the same leak in FireSimulatorfaketruth2-18/+18
2012-02-14Fixed a (pretty big) memory leak in cSandSimulatorfaketruth2-15/+16
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.com77-2687/+6689
2012-02-08Removed unused codemadmaxoft@gmail.com4-63/+126
2012-02-08Added total chunk count to webadminmadmaxoft@gmail.com4-7/+133
2012-02-08cPluginManager: slight cleanupmadmaxoft@gmail.com1-178/+272
2012-02-08cMonsterConfig: removed excessive loggingmadmaxoft@gmail.com1-43/+62
2012-02-08MTRand class is not created in each tick, therefore much improving tick-thread time (now uses ~5 % CPU instead of one full core)madmaxoft@gmail.com10-71/+156
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.com8-219/+253
2012-02-07cSocket: final localhost fix - made it a function (forgotten file)madmaxoft@gmail.com1-3/+3
2012-02-07cSocket: final localhost fix - made it a functionmadmaxoft@gmail.com2-7/+15
2012-02-07Temporary fix for Linux compilation. (gcc won't accept a function call in global var initialization)madmaxoft@gmail.com1-1/+1
2012-02-07Rewritten all packets to use buffers instead of direct sockets, for future cSocketThreads compatibility.madmaxoft@gmail.com109-1316/+1907
2012-02-07cSocketThreads initial commit. Not yet tested and not yet integratedmadmaxoft@gmail.com2-0/+619
2012-02-07Slight cleanupmadmaxoft@gmail.com2-5/+3
2012-02-07cSocket: Added more functions that will be needed for the new cSocketThreadsmadmaxoft@gmail.com2-8/+56
2012-02-06cSocket: error reporting function now works correctly on GNU Linux; also includes the error number for all errorsmadmaxoft@gmail.com1-8/+29
2012-02-06cSocket: re-implemented the GetLastErrorString() function; win: error texts are now queried from the system rather than enumerated by the programmadmaxoft@gmail.com2-25/+15
2012-02-05Now showing proper error messages when sockets fail :)faketruth5-18/+30
2012-02-05cSocket: added error logging to Bind() failuresmadmaxoft@gmail.com1-39/+48
2012-02-04putting default settings back to defaultadmin@omencraft.com1-2/+2
2012-02-04Fixed a bug in source/cClientHandle.hadmin@omencraft.com4-6/+6
2012-02-03MCServer should be running fast again on Linux!! YAAAY!!faketruth2-0/+7
2012-02-03cClientHandle: split packet handling into separate functions for claritymadmaxoft@gmail.com2-989/+1238
2012-02-02cClientHandle: gotten rid of the obnoxious m_pState, now using direct members insteadmadmaxoft@gmail.com4-351/+405
2012-02-02Socket-related assert fixesmadmaxoft@gmail.com3-6/+30
2012-02-02tolua: modified the binding generator to accept AString as a std::string synonym, re-generated Bindings with these settings. Lua callbacks can now safely use AString functions in C++.madmaxoft@gmail.com3-28/+29
2012-02-02Removed nonsense "virtual inline" declaration from functionsmadmaxoft@gmail.com7-28/+28
2012-02-02cSocket API fix (possible invalid pointer)madmaxoft@gmail.com6-45/+103
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.com24-289/+667
2012-02-01Added all current hooks to the new plugin structure.faketruth4-129/+817
2012-02-01AString logging fix 2madmaxoft@gmail.com7-21/+27
2012-02-01AString logging fixmadmaxoft@gmail.com1-7/+7
2012-02-01sprintf() begone! Replaced with StringUtils' Printf()madmaxoft@gmail.com16-134/+189
2012-02-01Removed a few duplicate includesmadmaxoft@gmail.com10-41/+28
2012-02-01new cIsThread object for thread encapsulationmadmaxoft@gmail.com2-0/+225
2012-02-01cEvent: fixed wrong errorchecking in win32 Set()madmaxoft@gmail.com1-1/+1
2012-02-01StringUtils: SplitString() fixmadmaxoft@gmail.com1-2/+21
2012-02-01auto_ptr fix 2madmaxoft@gmail.com1-1/+1
2012-02-01Introducing StringUtils - the place to be if you are a generic string routine :) No more sprintf()!madmaxoft@gmail.com13-105/+384
2012-02-01Fixed a sigsegv on *nix (cFile double-closing files)madmaxoft@gmail.com1-0/+1
2012-02-01Plugins can now be enabled and disabled through WebAdminfaketruth5-19/+75
2012-01-31Changed how Lua handles the (Post)Params in the HTTPRequest of a WebPluginfaketruth7-79/+193
2012-01-31Slight code cleanup, no big changesmadmaxoft@gmail.com3-45/+129
2012-01-31Another cEvent fix, I wish I could get it finally rightmadmaxoft@gmail.com1-0/+1
2012-01-31Hopefully fixed pthreads in cEvent (again)madmaxoft@gmail.com2-1/+3
2012-01-31cEvent class cleanup (single-event only, since multi-event wasn't used and wouldn't work on *nix anyway)madmaxoft@gmail.com2-82/+124
2012-01-31Linux fixes, but while it compiles, when a user joins it crashes the server with "*** glibc detected *** ./MCServer: double free or corruption (out): 0x00007fb5f5158db0 ***"mtilden@gmail.com2-0/+2
2012-01-31Can now receive POST data in WebPlugins!faketruth6-8/+41
2012-01-30Replaced most FILE operations with a cFile objectmadmaxoft@gmail.com7-151/+210
2012-01-30Fixed a problem in cCSLock (sorry); reverted cChunkmadmaxoft@gmail.com2-3/+9
2012-01-30Added a WebAdmin interface to view users their groups, and the permissions of groups.faketruth8-11/+91
2012-01-30More cFile cleanup; removed old format writing for block entitiesmadmaxoft@gmail.com11-286/+343
2012-01-30Initial cFile implementation (using stdio FILE) and test in cChunkMapmadmaxoft@gmail.com4-86/+388
2012-01-29Added missing #ifdef _DEBUG in cCriticalSection.cpp faketruth1-3/+5
2012-01-29Old code begone! ChunkMap cleanupmadmaxoft@gmail.com4-373/+252
2012-01-29VC2008 / VC2010: Enabled precompiled header through Globals.h; the header included in every module in the project. Compilation optimization.madmaxoft@gmail.com172-326/+1051
2012-01-29ChunkGenerator: rewritten thread-locking using the new RAII CSLock classmadmaxoft@gmail.com5-82/+210
2012-01-28Now also compiles in Linuxfaketruth1-0/+1
2012-01-28Converted entire Core plugin including WebAdmin interface to new plugin method/system/thingy and sexyfied it.faketruth9-98/+773
2012-01-27MSVC 2008 Express compatibility: Added the projects, modified sources to compile. Tested on MSVC 2008 Express and MSVC 2010 Expressmadmaxoft@gmail.com64-87/+89
2012-01-27Converted all of the Core plugin to the new plugin structure, except for the WebAdmin partfaketruth2-21/+98
2012-01-26No longer hard coded Lua files in new plugin systemfaketruth2-20/+406
2012-01-26Working on a new plugin design with Lua. While retaining backwards compatibility of course...faketruth7-47/+508
2012-01-26Probably fixed a deadlock! http://www.mc-server.org/support/index.php?do=details&task_id=147faketruth1-2/+2
2012-01-23Cactus towers can be destroyed by removing the bottom blockfaketruth4-4/+89
2012-01-22Fixed the  sign bugfaketruth1-2/+2
2012-01-22Improved Core's WebAmin interface a bit.faketruth4-31/+112
2012-01-21Bug FS#131 http://www.mc-server.org/support/index.php?do=details&task_id=131 should be fixedfaketruth1-0/+1
2012-01-20MCServer is now compatible with Minecraft client 1.1 (as long as the client is not using any mods/plugins I think)faketruth5-6/+27
2012-01-19Terrain generation is synchronous again, async generation has bugs.faketruth12-85/+129
2012-01-02Fixed crashing bug in cClientHandle::~cClientHandlefaketruth1-1/+3
2012-01-01CreativeInventory Updatelapayo94@gmail.com9-85/+107
2012-01-01Fixed the numchunks console command.faketruth10-14/+187
2012-01-01- implemented separated inventory for creative mode (cSurvivalInventory and cCreativeInventory)lapayo94@gmail.com16-227/+363
2012-01-01Chests, furnaces and dispensers face the correct way now.faketruth1-0/+5
2011-12-31Made a couple of functions in cChunk inline, this should speed up several block operations on chunksfaketruth5-124/+148
2011-12-29- Animals burn now when moving into lava or firelapayo94@gmail.com3-7/+12
2011-12-29 - Initial food handling by cedeelmtilden@gmail.com5-13/+73
2011-12-29M$ BS...mtilden@gmail.com1-1/+1
2011-12-29 - Chests open and close on clients when opened/closedmtilden@gmail.com6-7/+84
2011-12-29- Pickups should now burn in firelapayo94@gmail.com5-20/+33
2011-12-29- water slacks fire nowlapayo94@gmail.com8-17/+20
2011-12-28- little performance improvement on the sand simulatorlapayo94@gmail.com2-1/+9
2011-12-28- implemented the fire simulation in native c++ (cFireSimulator)lapayo94@gmail.com10-90/+280
2011-12-28 - Fixed too fast actions kick for realmtilden@gmail.com1-5/+5
2011-12-28Fixed some small memory leakslapayo94@gmail.com3-0/+13
2011-12-28 - Fixed ping displaying same for everyone, knew it was something I messed up with itr :(mtilden@gmail.com1-1/+1
2011-12-28Fixed PLI end white, made random mistake late night when I couldn't remember how I did it beforemtilden@gmail.com1-1/+1
2011-12-28This bug should be fixed now http://mc-server.org/support/index.php?do=details&task_id=112faketruth1-6/+44
2011-12-28Linux fixmtilden@gmail.com1-1/+1
2011-12-28 - Didn't notice steak missing as wellmtilden@gmail.com1-0/+8
2011-12-28 - Added chicken to eatingmtilden@gmail.com2-1/+10
2011-12-28Little improvement to save some cpu time but it´s still very heavy cpu loadlapayo94@gmail.com2-1/+8
2011-12-28- Implemented Drops from Burning animalslapayo94@gmail.com19-297/+218
2011-12-27Users file was pretty messed up with mixed unix and windows line endings. The ini failed to parse correctly under cygwin.faketruth3-2/+10
2011-12-27Fixed a little error in cPacket_PlayerListItem.cppfaketruth1-1/+1
2011-12-27Vanity, just to set back to white after a short enough name for the ping image to not change colormtilden@gmail.com1-1/+7
2011-12-27I'll lower my frequency of commits.. 1000 default ends up sent more often than calc'd packets.mtilden@gmail.com1-1/+0
2011-12-27Oops, accidentally left debug printmtilden@gmail.com1-1/+0
2011-12-27 - Added basic ping handling.mtilden@gmail.com5-10/+38
2011-12-27Slightly cleaner block change interactions static in headermtilden@gmail.com2-2/+4
2011-12-27Set player interaction kicking to 5 interactions per .1 seconds to help with lag disconnects. Still need to change code to lessen the false positives.admin@omencraft.com1-2/+2
2011-12-27Some kind of 'template' world generator that right now just generates an all dirt world. You can use this to test new algorithmsfaketruth5-12/+55
2011-12-26Players can switch worlds on the fly with the command /gotoworld [worldName]. This uses the function cPlayer::MoveToWorld()faketruth10-90/+160
2011-12-26- improved Simulator system lapayo94@gmail.com14-55/+277
2011-12-26- improved ClosestPlayerDetection (Really the closest now ;))lapayo94@gmail.com2-30/+46
2011-12-26Fixed the little check for max players. If somehow a player was able to connect and the number of players would exceed the max players, everybody is allowed in and the server will never be 'full'. It's fixed nowfaketruth1-9/+9
2011-12-26 - Linux compatible fixes including updated makefilemtilden@gmail.com14-47/+72
2011-12-26 - Added timer to cPlayer PlayerListItem because sending the packets like minecraft does (every tick per player) is 20 pps per client to each client and was causing Kicks for having too high of a packet queuemtilden@gmail.com2-7/+17
2011-12-26 - Default Notchian Ping (static until ping implemented through keepalive send/receive)mtilden@gmail.com2-4/+12
2011-12-26 - Scoreboard deleting moved to cClientHandle::~cClientHandle() with checks. Please test this every way you can with clients disconnecting from the internet, crashing, etc. It should work on all cases as every client gets called in this part to be 'Deleted'mtilden@gmail.com1-6/+10
2011-12-26Moved the actual world generation from cChunk.cpp to a more isolated file cWorldGenerator.cppfaketruth4-251/+274
2011-12-26 - Cleaned up PLI Packet and its creation/sending and fixed bug of player not being removed on scoreboard (forgot to send color in the removal packet)mtilden@gmail.com5-11/+22
2011-12-26Made some functions in cChunk and cNoise inline, this should significantly increase chunk generation speedfaketruth7-73/+104
2011-12-26 - Make Color was using 2 extra characters which took 2 characters off the 16 max (including color codes) for scoreboard displaymtilden@gmail.com8-5/+80
2011-12-25- Fixed Bug #99 -> Mobs no longer bother you in creative modelapayo94@gmail.com40-1235/+347
2011-12-25- fixed the code from the last commit :)lapayo94@gmail.com2-5/+7
2011-12-25- Fixed a critical bug, which caused players to not getting spawned on the others clientlapayo94@gmail.com2-84/+89
2011-12-25- Implemented function to check item categorylapayo94@gmail.com3-2/+43
2011-12-25Refactored both simulators (water and lava) to make them more flexible and easier to modifylapayo94@gmail.com6-549/+382
2011-12-25Hold item is now dropped when inventory is closedlapayo94@gmail.com4-8/+32
2011-12-25Code improvementslapayo94@gmail.com8-5/+486
2011-12-25The missing file! cChunkGenerator.h/cppfaketruth2-0/+195
2011-12-25- improved and simplified the door system (shorter, clearer)lapayo94@gmail.com4-62/+85
2011-12-25Chunks are generated in a separate thread allowing players to keep on playing and chatting while chunks are generated. This means, however, that cWorld::GetChunk() does not always return a chunk and is something you need to be aware of. I am not entirely sure if all this is completely stable, but I think so :Ofaketruth10-82/+184
2011-12-24Very alpha water physic for pickups (The swim now)lapayo94@gmail.com4-6/+168
2011-12-24Max. players and MOTD are now changeable in the settings.inilapayo94@gmail.com3-7/+42
2011-12-23Added thread names to cThread so when debugging in Visual Studio you actually know what thread you're looking atfaketruth5-9/+55
2011-12-22Digging leaves with shears now drops leaveslapayo94@gmail.com7-11/+52
2011-12-22Fixes:lapayo94@gmail.com10-18/+30
2011-12-21Missed a class in r94 ;) Sorry guys :Dlapayo94@gmail.com2-0/+96
2011-12-21- Crafting fixed in 1.0.0lapayo94@gmail.com42-275/+315
2011-11-15Changed chunk generation so any surface sand with air underneath it will turn into sandstone to prevent most sand cave-ins due to odd cave placement.admin@omencraft.com1-12/+37
2011-11-12Put view distance back to 13. Didn't mean to change that.admin@omencraft.com1-1/+1
2011-11-11Found and fixed a bug not letting users place blocks in water or lava.admin@omencraft.com2-3/+8
2011-11-10Fixed logging in underground bug this time. A hack, but it works. :Dadmin@omencraft.com1-4/+4
2011-11-10Can now set gamemode via lua.admin@omencraft.com5-4/+19
2011-11-10Some more changes to redstone. admin@omencraft.com1-12/+14
2011-11-10Made block action sanity checks more robust, water buckets, lava buckets and empty buckets should all now work.admin@omencraft.com6-26/+258
2011-11-10Fixed doors. I forgot to actually return proper Hex value. Started work on adding farmland, farming, and leaf decay support.admin@omencraft.com2-6/+11
2011-11-10Added code for doors. Doors now place correctly but opening them is buggy and I need to change the current opening code to use bitwise operators.admin@omencraft.com3-5/+108
2011-11-10Storms were WAY too frequent. I toned them down.admin@omencraft.com1-4/+4
2011-11-10Added random weather that persists per world. Also added SetWeather, GetWeather, and CastThunderbolt to lua bindings.admin@omencraft.com5-20/+191
2011-11-09Added m_IP to player class and binding to get IP for LUA. (Probably should use m_pState)admin@omencraft.com6-3/+79
2011-11-09bugfix to redstone, it can climb walls again.admin@omencraft.com2-16/+43
2011-11-09Redstone clocks now work. even one clocks. torches don't update themselves when placed yet, but redstone wire updates the torch. Fixed a bug with piston animations.admin@omencraft.com6-108/+298
2011-11-08Fixed world timefaketruth2-1/+13
2011-11-08It's a Squirrel!!faketruth11-31/+529
2011-11-08Fixed bug in cChunk.cpp not calculating RedstoneCircuits at the correct positions. Also, forgot to mention you can now place colored wool.admin@omencraft.com1-2/+2
2011-11-07Updated redstone and pistons some mode. If you break an extended piston the piston extension will now also break. When a redstone device is broken by something other than a person the redstone circuit should now update.admin@omencraft.com6-121/+238
2011-11-07More updates to cPiston.cpp. Piston action will now only be broadcasted to players who have the chunk with the moving piston loaded.admin@omencraft.com1-2/+6
2011-11-07Added Sebi's changes to pistons and item drops.admin@omencraft.com6-423/+172
2011-11-07Pistons now generate noise and animate when moving.admin@omencraft.com3-4/+50
2011-11-07Added three new packets and cleaned up cPacket_Thunderbolt.cpp... cPacket_BlockAction, cPacket_Explosion, and cPacket_SoundEffect.admin@omencraft.com8-50/+232
2011-11-06Redstone wire now updates correctly when added and removed. it also updates all currently programmed redstone items and wire circuits. Also cleaned up the mess I left of the code.admin@omencraft.com3-194/+47
2011-11-06Redstone is now self aware. It's not quite as dumb as it used to be at any rate. Redstone wires have no range and understand they are supposed to stay on whenever there's an active torch touching it. (Need to add other power devices)admin@omencraft.com3-42/+232
2011-11-06Patch with diff file created by Sebi (implemented some stuff like lava physics, drops are deleted when in lava, water is now slower, lava gives actual damage etc.). Pistons now work mostly as they should. They do not yet show the motion animation and do not emit sound. They do extend, push, and retract as they should though. Right now the only way to activate a piston is to light redstone wire adjacent to it with a redstone torch.admin@omencraft.com12-276/+523
2011-11-06Finished most of piston class. Pistons should work when a redstone current with wire is lit up or extinguished near them but don't yet. There'sa bug to kill.admin@omencraft.com3-48/+408
2011-11-05Change SetBlock to FastSetBlock in cRedstone.cpp and grass will now grow if any one hit block is above it.admin@omencraft.com2-22/+27
2011-11-05Added all the items up to Beta 1.9.5. Added pistons and piston class.admin@omencraft.com5-18/+364
2011-11-04Added cRedstone to project filefaketruth2-7/+6
2011-11-04Changed use of deprecated function.admin@omencraft.com1-14/+19
2011-11-04celeaning up the mess I made of cRedstone.h. >.>admin@omencraft.com1-77/+0
2011-11-04Added (Probably incorrectly) a cRedstone class. Also, palcing a redstone torch will recursively light any redstone wire it's connected to. Removing a torch from an active wire will unlight the entire length. Class needs to be updated to make use of non deprecated function. Current deprecated function warning drastically slows redstone performance.admin@omencraft.com5-25/+215
2011-11-03Fixed some redstone items and a bug that prevented floats from client to server packets reading correctly on 64 bit linux.admin@omencraft.com5-14/+15
2011-11-03Added some redstone items.admin@omencraft.com3-7/+54
2011-11-03Updated the thunderbolt packet. Lightning and rain can be tested with a workbench and a chest. >:)admin@omencraft.com3-11/+42
2011-11-02Added New/Invaid State and Thunderbolt packets. For testing purposes it now rains whenever a player opens a workbench and stops when they pen a chest. The rain start/stop in only sent to the sole clientopening the items.admin@omencraft.com6-7/+128
2011-11-02Fixed some "Entity was not found in any chunk!" warningsfaketruth8-28/+74
2011-11-02Fixed player spawn teleport postion.admin@omencraft.com1-1/+2
2011-11-02Fixed crash when client only sends a space in the chatfaketruth1-0/+2
2011-11-02Changed world gamemode location to world.ini for world based gamemodes.admin@omencraft.com1-2/+4
2011-11-01fixed player spawning in the ground.admin@omencraft.com3-6/+5
2011-11-01Accidentally removed a line of codefaketruth1-1/+2
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 yetfaketruth16-165/+476
2011-11-01forogt to update all of cPlayer.cpp for player based gamemode.admin@omencraft.com1-1/+1
2011-11-01Put in some sanity checks to ensure players don't interact with blocks too quickly. Changed gamemode to be player based. (MCServer crashes when picking up an item. Need to find and fix bug.)admin@omencraft.com3-14/+56
2011-11-01Players can now place blocks in creative mode. The blocks players select from the creative mode inventory are not stored in the players' inventory. (I kind of like that)admin@omencraft.com2-3/+4
2011-10-31denotch map converter works! :Dadmin@omencraft.com1-8/+9
2011-10-31Player data is saved and loaded as human readable JSON now.faketruth10-74/+317
2011-10-31Prepared some parts of the code for multi world support, I created lots of TODO'sfaketruth40-206/+402
2011-10-30Changed cChunkMat.cpp back to normal. Made more changes to the denotch map converter. Testing cNBTData parser.admin@omencraft.com1-5/+0
2011-10-29Added denotch map converter. Program currently reads the only mcr file in the region dir and writes the uncompressed chunk data in world/X0-Z0.pak. I compile in linux with "g++ cConvert.cpp -lz -o denotch"admin@omencraft.com2-6/+11
2011-10-27Fixed a memory leakfaketruth1-0/+1
2011-10-26Made several recomended changes. Gamemode is now world based. Need to add it to player.admin@omencraft.com11-19/+26
2011-10-26Moved GAMEMODE declaration to a single place... cPacket.h. Player can't take damage any more but can still sometimes die on spawn. Not sure why. Falling through the void does not kill you yet.admin@omencraft.com3-8/+9
2011-10-26Creative mode now breaks blocks without providing block drops. Need to work with Player's Inventory for proper creative mode support. GAMEMODE is declared and set twice.admin@omencraft.com5-5/+8
2011-10-26Added CreateInventoryAction packet for creative mode. Used cPacketEntityEquipment as template. Forced server into Creative Mode. Can't break blocks yet. Player can stil be damaged in creative mode and dying takes you back to survival mode.admin@omencraft.com8-6/+81
2011-10-26Updated VS2010 project filesfaketruth1-104/+43
2011-10-26Fixed bug in cMakeDir where it would only create directories named "world"faketruth3-34/+16
2011-10-26added simple code for server side item durabilty on tool items that have durabilty. need to add block destroyed durability modifier.admin@omencraft.com1-3/+70
2011-10-26git-svn-id: http://mc-server.googlecode.com/svn/trunk@10 0a769ca7-a7f5-676a-18bf-c427514a06d6admin@omencraft.com29-10/+1707
2011-10-25Using SSE instructions for noise (terrain generation)faketruth3-9/+84
2011-10-23Abstracted sockets some more to ensure the same behavior over the entire program and on multiple platforms.faketruth6-88/+165
2011-10-22Found something that calls a function when a segfault happens, might be useful.faketruth1-4/+16
2011-10-21Compiles for linuxfaketruth17-24/+63
2011-10-03MCServer c++ source filesfaketruth233-0/+35759