summaryrefslogtreecommitdiffstats
path: root/source (unfollow)
Commit message (Collapse)AuthorFilesLines
2012-05-27Added some useful biome synonyms; added block property IsSnowable; alphabetically sorted block property settingmadmaxoft@gmail.com3-53/+85
git-svn-id: http://mc-server.googlecode.com/svn/trunk@513 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-27Voronoi has a minimum cell size of 4 blocks now, to avoid some extreme corner-casesmadmaxoft@gmail.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@512 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-27Added a voronoi biome generator (#180)madmaxoft@gmail.com3-0/+91
git-svn-id: http://mc-server.googlecode.com/svn/trunk@511 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-27DebugBiomes composition generator now uses only blocks suitable for terrain (from an internal list)madmaxoft@gmail.com1-1/+28
git-svn-id: http://mc-server.googlecode.com/svn/trunk@510 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-27Added wool and netherrack block IDsmadmaxoft@gmail.com3-4/+8
git-svn-id: http://mc-server.googlecode.com/svn/trunk@509 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-27Restructured biome generators with a list of available biomes to use a common ancestor (preparation for Voronoi and DistortedVoronoi)madmaxoft@gmail.com2-11/+30
git-svn-id: http://mc-server.googlecode.com/svn/trunk@508 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-27ConstantBiome parsing now uses the string-to-biome conversion (#183)madmaxoft@gmail.com1-2/+7
git-svn-id: http://mc-server.googlecode.com/svn/trunk@507 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-27Added the CheckerBoardBiomes parameter for setting biomes that CheckerBoard generates (#179). Added string-to-biome conversion (#183). Added OreNests to default Structures configuration.madmaxoft@gmail.com5-8/+109
git-svn-id: http://mc-server.googlecode.com/svn/trunk@506 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-27Improved logging on mis-configuration in cPlayer and cWorldStoragemadmaxoft@gmail.com2-2/+6
git-svn-id: http://mc-server.googlecode.com/svn/trunk@505 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-25Merged the composable_generator branch into the trunkmadmaxoft@gmail.com76-2841/+5199
git-svn-id: http://mc-server.googlecode.com/svn/trunk@504 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-08Removed a debugging construct that accidentally leaked into previous commitmadmaxoft@gmail.com1-8/+0
git-svn-id: http://mc-server.googlecode.com/svn/trunk@485 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-08Fast NBT writer (Saving a chunk is now about twice as fast)madmaxoft@gmail.com4-73/+364
git-svn-id: http://mc-server.googlecode.com/svn/trunk@484 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-08Fixed two "bottlenecks" found using profiling - MakeIndex() instead of MakeIndexNoCheck()madmaxoft@gmail.com1-2/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@483 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-07Fast NBT Parser (loading a chunk is now about 10 times faster)madmaxoft@gmail.com6-88/+651
git-svn-id: http://mc-server.googlecode.com/svn/trunk@481 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-07Updated version text to include 1.2.5; ChunkSender doesn't serialize chunk packets for chunks without a clientmadmaxoft@gmail.com2-1/+6
git-svn-id: http://mc-server.googlecode.com/svn/trunk@480 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-04-23Anvil storage writing (Basic storage is working, NO entities except for chests are working! Don't use for real servers)madmaxoft@gmail.com11-35/+431
git-svn-id: http://mc-server.googlecode.com/svn/trunk@475 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-04-15Lapis gets generated (thanks, Fordship)madmaxoft@gmail.com1-0/+5
git-svn-id: http://mc-server.googlecode.com/svn/trunk@463 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-04-11Moved the commands /coords /viewdistance and /regeneratechunks from cServer.cpp to the Core pluginfaketruth5-64/+11
git-svn-id: http://mc-server.googlecode.com/svn/trunk@457 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-04-10Added error messages to socket closing error conditions for *nixmadmaxoft@gmail.com1-2/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@456 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.com10-37/+104
git-svn-id: http://mc-server.googlecode.com/svn/trunk@454 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-04-04Compression error -5 fixmadmaxoft@gmail.com1-2/+3
git-svn-id: http://mc-server.googlecode.com/svn/trunk@452 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-04-04Fixed a parsing error in NBT classes (doubles weren't parsing correctly);madmaxoft@gmail.com2-1/+227
Added a working NBT serialization (verified in another project) git-svn-id: http://mc-server.googlecode.com/svn/trunk@451 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-04-04StringUtils' GetDirectoryContents() now accepts empty string and interprets it as "current directory" (*nix fix)madmaxoft@gmail.com1-1/+5
git-svn-id: http://mc-server.googlecode.com/svn/trunk@450 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-04-03Logging OnBlockDig and OnBlockPlace only in Debug mode ( http://mc-server.org/support/index.php?do=details&task_id=133&project=2 )madmaxoft@gmail.com1-2/+8
git-svn-id: http://mc-server.googlecode.com/svn/trunk@447 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@446 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-31cSocket.cpp should also compile on Mac now (I hope)faketruth1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@443 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-31Fixed a crash when fluid would try to go below the world (y = -1)faketruth1-4/+6
git-svn-id: http://mc-server.googlecode.com/svn/trunk@442 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-28Got rid of sPluginManagerStatefaketruth5-70/+90
/pluginlist now also shows the number of active plugins Fixed crash caused by lingering bound Lua commands http://forum.mc-server.org/showthread.php?tid=212&pid=2541#pid2541 Added error messages when binding commands to an invalid plugin git-svn-id: http://mc-server.googlecode.com/svn/trunk@440 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@438 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-26Removed the unneeded header wdirent.hmadmaxoft@gmail.com1-369/+0
git-svn-id: http://mc-server.googlecode.com/svn/trunk@437 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-26Added the supported client version to banner; shamelessly added myself to the authors list ;)madmaxoft@gmail.com3-4/+13
git-svn-id: http://mc-server.googlecode.com/svn/trunk@436 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-25A globally-accessible OS-independent GetDirectoryContents() function for listing all objects in a folder as an AStringListmadmaxoft@gmail.com6-85/+81
git-svn-id: http://mc-server.googlecode.com/svn/trunk@433 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-25Fixed the Log altogether (doesn't use NULL-to-va_list assignment, compiles for RaspberryPi)madmaxoft@gmail.com2-14/+6
git-svn-id: http://mc-server.googlecode.com/svn/trunk@432 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-24Added the new 1.2.4's PlayerAbilities packet; restructures packet files for less files, more dense.madmaxoft@gmail.com14-382/+398
git-svn-id: http://mc-server.googlecode.com/svn/trunk@431 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-24Protocol version bumped up to 29 (MC 1.2.4), seems to work.madmaxoft@gmail.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@430 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-24Removed the split between 1.2.3 and 1.1, left only 1.2.3 codemadmaxoft@gmail.com12-226/+10
git-svn-id: http://mc-server.googlecode.com/svn/trunk@429 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-24Reverted the previous commit - it is useless, since entities still depend heavily on cWorldmadmaxoft@gmail.com18-258/+47
git-svn-id: http://mc-server.googlecode.com/svn/trunk@428 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@427 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-22Fixed a deadlock by removing clients from all chunks upon their exit, not using the clients chunklists.madmaxoft@gmail.com6-22/+51
git-svn-id: http://mc-server.googlecode.com/svn/trunk@426 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-19Fixed player heads always pointing north (new EntityHeadLook packet)madmaxoft@gmail.com6-15/+81
git-svn-id: http://mc-server.googlecode.com/svn/trunk@424 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-19Fixed a warning in a Release buildmadmaxoft@gmail.com1-1/+4
git-svn-id: http://mc-server.googlecode.com/svn/trunk@423 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-19Made some logging output debug-onlymadmaxoft@gmail.com1-6/+6
git-svn-id: http://mc-server.googlecode.com/svn/trunk@421 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-19Basic cWindow thread-safetymadmaxoft@gmail.com6-63/+132
git-svn-id: http://mc-server.googlecode.com/svn/trunk@420 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-19SocketThreads: proper thread finishing sequence (doesn't trigger AppVerifier checks :)madmaxoft@gmail.com1-0/+9
git-svn-id: http://mc-server.googlecode.com/svn/trunk@419 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-16Got rid of cPlayer::sPlayerStatefaketruth2-88/+47
git-svn-id: http://mc-server.googlecode.com/svn/trunk@418 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-16That didn't work.. I forgot some cChunk functions were changed. Now it should compile againfaketruth2-1/+4
git-svn-id: http://mc-server.googlecode.com/svn/trunk@417 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-16Exposed a function to Lua to get a block's sky light valuefaketruth6-33/+72
git-svn-id: http://mc-server.googlecode.com/svn/trunk@416 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-14Actually commented out the Anvil terrain inversion codemadmaxoft@gmail.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@415 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@414 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-14Unified the chunk data to use the BLOCKDATA datatype.madmaxoft@gmail.com16-33/+52
git-svn-id: http://mc-server.googlecode.com/svn/trunk@413 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-14Split chunk data into separate arrays; decoupled most sources from cChunk.h dependencymadmaxoft@gmail.com33-592/+799
git-svn-id: http://mc-server.googlecode.com/svn/trunk@411 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-13Fixed the server not waiting for the world to save completely before stoppingmadmaxoft@gmail.com1-0/+3
git-svn-id: http://mc-server.googlecode.com/svn/trunk@410 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-13Removed an unwarranted assert in cChunkSendermadmaxoft@gmail.com1-2/+5
git-svn-id: http://mc-server.googlecode.com/svn/trunk@409 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-13Small optimizations in the SetNibble() and GetNibble() functions; removed unused lighting functions from cChunkmadmaxoft@gmail.com2-96/+23
git-svn-id: http://mc-server.googlecode.com/svn/trunk@408 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-13Fixed a few warnings, lifted up the block interactinos limit to 20 (10 was not enough for Creative mode)madmaxoft3-21/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@407 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-12Gotten rid of stricmp MSVC warningsmadmaxoft@gmail.com1-2/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@406 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-12*nix compilation fix (for rev 402)madmaxoft@gmail.com1-4/+6
git-svn-id: http://mc-server.googlecode.com/svn/trunk@405 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-12Added a flat terrain generator with settable terrain heightmadmaxoft@gmail.com5-10/+148
git-svn-id: http://mc-server.googlecode.com/svn/trunk@404 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-12Fixed MapChunk packets to include (fake) biome data, makes clients happymadmaxoft@gmail.com5-15/+55
git-svn-id: http://mc-server.googlecode.com/svn/trunk@403 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-12Fixing compilation on Drawin 9 / MacOS Xmadmaxoft@gmail.com3-14/+7
git-svn-id: http://mc-server.googlecode.com/svn/trunk@402 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-11Stopping the ChunkSender upon server stopmadmaxoft@gmail.com3-2/+15
git-svn-id: http://mc-server.googlecode.com/svn/trunk@401 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-11Fixed a small bug in chunk version check D:faketruth1-0/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@400 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-11Not sending chunks to the client twicemadmaxoft@gmail.com5-24/+40
git-svn-id: http://mc-server.googlecode.com/svn/trunk@399 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-11Anvil format: fixed loading with XZY orderingmadmaxoft@gmail.com1-11/+9
git-svn-id: http://mc-server.googlecode.com/svn/trunk@398 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-10Fixed a few obsoleted functionsmadmaxoft@gmail.com12-49/+83
git-svn-id: http://mc-server.googlecode.com/svn/trunk@397 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-10Completely integrated the new axis ordering. Will update worlds accordinglyfaketruth3-2/+151
git-svn-id: http://mc-server.googlecode.com/svn/trunk@396 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-10Anvil support: compatible with both chunk orderingsmadmaxoft@gmail.com1-0/+4
git-svn-id: http://mc-server.googlecode.com/svn/trunk@395 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-10Using references instead of pointers for sending packetsmadmaxoft@gmail.com8-26/+24
git-svn-id: http://mc-server.googlecode.com/svn/trunk@394 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@393 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-10Fixed *nix threading issue;madmaxoft@gmail.com11-88/+93
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-10Was using "#else if" which is not valid apparently, now using "#elif"faketruth4-6/+6
git-svn-id: http://mc-server.googlecode.com/svn/trunk@391 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
Still need to update world storage schemes, converters and such git-svn-id: http://mc-server.googlecode.com/svn/trunk@390 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-10Using more of the index functions in cChunk, so it should be easy enough to flip the axis ordering nowfaketruth3-82/+94
Added some more functions that use Vector3i for block coordinates in cChunk git-svn-id: http://mc-server.googlecode.com/svn/trunk@389 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-09cClientHandles have a unique ID now to distinguish themfaketruth24-71/+224
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-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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@387 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-07Anvil format: loading chests' contents.madmaxoft@gmail.com4-11/+240
git-svn-id: http://mc-server.googlecode.com/svn/trunk@385 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-07ChunkSender: Fixed a potential crash: removing a client means that no Send() is called on that client anymoremadmaxoft@gmail.com2-16/+27
git-svn-id: http://mc-server.googlecode.com/svn/trunk@384 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-07WSSCompact: fixed switched version values (!); removed unused methodsmadmaxoft@gmail.com2-4/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@383 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
Also removed the SetClientHandle() function from cPlayer Added a Destroyed() function to cEntity that is called ONLY ONCE after an entity has been 'destroyed' Cleaned up some code, using enums for GameMode and Weather and replaced some 'const char *' with 'const AString &' Exposed some more functions to Lua git-svn-id: http://mc-server.googlecode.com/svn/trunk@382 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-07No need to reset zlib (copypasta error)madmaxoft@gmail.com1-1/+0
git-svn-id: http://mc-server.googlecode.com/svn/trunk@381 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@380 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-06Sticky pistons should work as well nowfaketruth1-0/+3
git-svn-id: http://mc-server.googlecode.com/svn/trunk@379 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-06Added a little documentation on ChunkSender.madmaxoft@gmail.com1-1/+14
git-svn-id: http://mc-server.googlecode.com/svn/trunk@378 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-06Fixed redstone repeater bug where it could not get the direction when it has delay bits setfaketruth1-3/+3
git-svn-id: http://mc-server.googlecode.com/svn/trunk@377 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-06ChunkSender won't send NULL packets anymoremadmaxoft@gmail.com1-1/+5
git-svn-id: http://mc-server.googlecode.com/svn/trunk@376 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-06Fixed rev 373 not compiling on linuxmadmaxoft@gmail.com1-0/+5
git-svn-id: http://mc-server.googlecode.com/svn/trunk@375 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-06Yay redstone repeaters!faketruth4-49/+355
git-svn-id: http://mc-server.googlecode.com/svn/trunk@374 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-06World storage names are now case-INsensitivemadmaxoft@gmail.com1-2/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@373 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-06That was not a good place to use ARRAYCOUNT()madmaxoft@gmail.com1-5/+5
git-svn-id: http://mc-server.googlecode.com/svn/trunk@372 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@371 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-06Fixed bug FS#157 http://mc-server.org/support/index.php?do=details&task_id=157faketruth1-5/+5
git-svn-id: http://mc-server.googlecode.com/svn/trunk@370 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-03-05Using a fixed-size array instead of AString for conversion. Conversion now runs ~10x faster :) (in debug mode)madmaxoft@gmail.com1-25/+29
git-svn-id: http://mc-server.googlecode.com/svn/trunk@368 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@366 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@365 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-04Removed redstone debugging: powered dirt blocks change into stonefaketruth1-8/+8
git-svn-id: http://mc-server.googlecode.com/svn/trunk@364 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-04Yay tiny commits XD fixed % signfaketruth1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@363 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-04Lowered the amount of logging while converting chunksfaketruth1-1/+8
git-svn-id: http://mc-server.googlecode.com/svn/trunk@362 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-04Converted pak files were not marked 'dirty' and wouldn't be saved. Fixed now :)faketruth1-0/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@361 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-04Forcing the use of the new redstone simulatorfaketruth1-1/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@359 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-04Should have complete support for 256 blocks high worlds. Old save files are converted to new ones at load.faketruth3-16/+165
BACK UP YOUR WORLD! git-svn-id: http://mc-server.googlecode.com/svn/trunk@358 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@357 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-04Changed signed char to unsigned char in block packets, so we can receive height up to 255faketruth9-28/+47
Blocks placed above 128 limit don't become obsidian anymore. This was due to the cChunk::MakeIndex() function return 0 when outside of bounds, it now returns an 'error constant' git-svn-id: http://mc-server.googlecode.com/svn/trunk@356 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-03Got rid of some hardcoded numbers, now using hardcoded variables! woofaketruth11-145/+151
git-svn-id: http://mc-server.googlecode.com/svn/trunk@355 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-02That should not have been committed...faketruth1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@354 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-02Chunk light and metadata are also sent now, should take a load off of the clientfaketruth1-5/+38
git-svn-id: http://mc-server.googlecode.com/svn/trunk@353 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-02Finally got the multiblock packet working! It seems the byte order was wrongfaketruth2-6/+5
git-svn-id: http://mc-server.googlecode.com/svn/trunk@352 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-02MultiBlock packet is working partly.. I really don't understand what's wrong with this packet :/faketruth4-2/+54
git-svn-id: http://mc-server.googlecode.com/svn/trunk@351 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-01Chunks are successfully streamed to clients (in a bad a slow way, but whatever)faketruth4-5/+49
Fixed respawn packet for 1.2.2 git-svn-id: http://mc-server.googlecode.com/svn/trunk@350 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-01Clients can join the server, but chunks are sent completely emptyfaketruth2-0/+80
git-svn-id: http://mc-server.googlecode.com/svn/trunk@349 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-01Forgot to update packet size (though I'm not even sure it's used anymore)faketruth1-2/+6
git-svn-id: http://mc-server.googlecode.com/svn/trunk@348 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-01Started carefully moving to 1.2.2faketruth6-67/+135
Clients can get up to the login packet, after which the server tries to send chunks but in the wrong format and the client disconnects git-svn-id: http://mc-server.googlecode.com/svn/trunk@347 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-01New redstone simulator. Should work without crashes!faketruth8-8/+650
git-svn-id: http://mc-server.googlecode.com/svn/trunk@345 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-29Fixed the authenticator bugmadmaxoft@gmail.com2-0/+9
git-svn-id: http://mc-server.googlecode.com/svn/trunk@344 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-29Making sure cClientHandle::m_Player was NULL after authentication completedfaketruth1-0/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@343 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-29Added validity checks to world broadcasting. Also added logging to cPlayer deletion to catch that stupid BugByBoo.madmaxoft@gmail.com2-4/+12
git-svn-id: http://mc-server.googlecode.com/svn/trunk@342 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-28Improved threading performance by reducing thread-hopping in queue locks (cs unlocked before event set)madmaxoft@gmail.com3-29/+41
git-svn-id: http://mc-server.googlecode.com/svn/trunk@341 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@340 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-28Server uses ~40% less CPU nowfaketruth2-87/+93
git-svn-id: http://mc-server.googlecode.com/svn/trunk@339 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-28Linux compilation fix (y u no support const_iterator, gcc?)madmaxoft@gmail.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@338 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-28Chunk now has an indicator of load failure; Chunk generator uses cChunkStaymadmaxoft@gmail.com9-6/+89
git-svn-id: http://mc-server.googlecode.com/svn/trunk@337 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-28Implemented synchronous chunk loading; optimized cChunkStay interface for speed (though still unused ;)madmaxoft@gmail.com8-152/+342
git-svn-id: http://mc-server.googlecode.com/svn/trunk@336 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@334 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-28Const-correctness for packet broadcasting (fixes GCC compilation)madmaxoft@gmail.com4-6/+6
git-svn-id: http://mc-server.googlecode.com/svn/trunk@333 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-27Fix for the perpetual load issuemadmaxoft@gmail.com1-1/+7
git-svn-id: http://mc-server.googlecode.com/svn/trunk@332 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-26Implemented chunk loading without generating on load-failuremadmaxoft@gmail.com3-16/+62
git-svn-id: http://mc-server.googlecode.com/svn/trunk@331 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@330 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-26Attempt at fixing crashes with disconnecting playersmadmaxoft@gmail.com6-18/+38
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.com4-150/+253
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.com4-33/+218
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.com5-28/+73
git-svn-id: http://mc-server.googlecode.com/svn/trunk@326 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-23Plain pointer cChunkPtr finishing touches; removed cChunk's critical sectionsmadmaxoft@gmail.com4-176/+35
git-svn-id: http://mc-server.googlecode.com/svn/trunk@325 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-23Made cChunkPtr a plain old pointer again, since it's safe nowmadmaxoft@gmail.com2-5/+7
git-svn-id: http://mc-server.googlecode.com/svn/trunk@324 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-23cChunk: removed unused codemadmaxoft@gmail.com2-8/+0
git-svn-id: http://mc-server.googlecode.com/svn/trunk@323 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-23Added cmdline parameters "/cdg" and "/cdf" for crashdump flags "globals" and "full memory"madmaxoft@gmail.com1-2/+17
git-svn-id: http://mc-server.googlecode.com/svn/trunk@322 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-22Rewritten ore generation from scratch, using a different (much faster) algorithm. Chunk generation now about 2x faster :)madmaxoft@gmail.com2-25/+111
git-svn-id: http://mc-server.googlecode.com/svn/trunk@321 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-22That 2nd assert didn't make much sense...faketruth1-1/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@320 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-22Added some asserts to trace a bugfaketruth2-2/+6
git-svn-id: http://mc-server.googlecode.com/svn/trunk@319 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-22Fixed a bug that no chunks were unloaded on the client. Now chunks are properly unloaded on the clients.faketruth2-0/+7
git-svn-id: http://mc-server.googlecode.com/svn/trunk@318 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-22Noise function optimization (chunk generation now about 1.5x faster :)madmaxoft@gmail.com3-10/+33
git-svn-id: http://mc-server.googlecode.com/svn/trunk@317 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-22WorldGenerator: fixed small foliage - cacti now generate only at beaches, not underwater.madmaxoft@gmail.com1-32/+33
git-svn-id: http://mc-server.googlecode.com/svn/trunk@316 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
/tp command should work again :) git-svn-id: http://mc-server.googlecode.com/svn/trunk@314 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-22Fixed a potential deadlock in cChunkMap::m_CSLayers vs cWorld::m_CSAllEntitiesmadmaxoft@gmail.com1-6/+8
git-svn-id: http://mc-server.googlecode.com/svn/trunk@313 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@312 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@311 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-22Restricted windows crash dump generating code to 32-bit platforms only due to inline assemblymadmaxoft@gmail.com1-5/+6
git-svn-id: http://mc-server.googlecode.com/svn/trunk@307 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-21Added code to produce dump files on Windows builds to aid with debugging server crashesmadmaxoft@gmail.com1-0/+85
git-svn-id: http://mc-server.googlecode.com/svn/trunk@306 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-21Changed ASSERT() to not cause warnings during compilefaketruth1-1/+9
Added VERIFY(); it's the same as ASSERT() but also works in release builds VS2010 project uses warning level 4 git-svn-id: http://mc-server.googlecode.com/svn/trunk@305 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-21Removed cChunkPtrs from everywhere but internal cChunkMap usage. Now we should finally be threadsafe :)madmaxoft@gmail.com10-109/+231
Also fixed a threading issue when a player connecting might have gotten stuck in "Downloading world" forever git-svn-id: http://mc-server.googlecode.com/svn/trunk@304 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-21Fixed heightmap optimization from rev 302; removed a few more cChunkPtrsmadmaxoft@gmail.com8-38/+146
git-svn-id: http://mc-server.googlecode.com/svn/trunk@303 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-21Optimized hightmap recalc when setting a chunk's blockmadmaxoft@gmail.com1-7/+31
git-svn-id: http://mc-server.googlecode.com/svn/trunk@302 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-21Fixed block-getting so that simulators work againmadmaxoft@gmail.com6-24/+128
git-svn-id: http://mc-server.googlecode.com/svn/trunk@301 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-20Removed some more cChunkPtr usagemadmaxoft@gmail.com13-114/+372
git-svn-id: http://mc-server.googlecode.com/svn/trunk@298 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-20Using own ASSERT() that logs to filefaketruth21-59/+49
git-svn-id: http://mc-server.googlecode.com/svn/trunk@297 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-19Fixed assertion bug in NamedEntitySpawn packet, it used to assert when item ID is 0, but now 0 is allowedfaketruth1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@296 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@295 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-18Fixed previous commit: forgot to remove a debugging settingmadmaxoft@gmail.com1-3/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@294 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-18Re-implemented tree-growing. May produce artefacts on old-world / new-world boundaries.madmaxoft@gmail.com11-111/+205
git-svn-id: http://mc-server.googlecode.com/svn/trunk@293 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-18Thread-safe chunk generation, storage and generator are queried for progress while initializing servermadmaxoft@gmail.com16-176/+408
Note that this commit breaks foliage generation - there are no trees in the chunks generated! git-svn-id: http://mc-server.googlecode.com/svn/trunk@292 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-18Logging: added thread ID to the log output in debug buildsmadmaxoft@gmail.com3-7/+11
git-svn-id: http://mc-server.googlecode.com/svn/trunk@291 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-18Logging: added LOGD macro that logs only in debug buildsmadmaxoft@gmail.com1-3/+22
git-svn-id: http://mc-server.googlecode.com/svn/trunk@290 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-18Moved stdarg.h inclusion into Globals.hmadmaxoft@gmail.com3-5/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@289 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-18cIsThread: Added support for getting current thread IDmadmaxoft@gmail.com2-0/+15
git-svn-id: http://mc-server.googlecode.com/svn/trunk@288 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-17Added the skeleton of the cLightingThread objectmadmaxoft@gmail.com2-0/+196
git-svn-id: http://mc-server.googlecode.com/svn/trunk@286 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-17Chunk coords mostly "upgraded" to include the Y coord for future compatibilitymadmaxoft@gmail.com11-67/+101
git-svn-id: http://mc-server.googlecode.com/svn/trunk@285 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-17Removed useless log messagesmadmaxoft@gmail.com1-1/+0
git-svn-id: http://mc-server.googlecode.com/svn/trunk@284 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-17Lots of logging addedmadmaxoft@gmail.com6-12/+45
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-c427514a06d6faketruth5-6/+6
2012-02-16New server command "unload" to manually unload unused chunksmadmaxoft@gmail.com2-3/+11
git-svn-id: http://mc-server.googlecode.com/svn/trunk@280 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
cChunk fix - setting a block to the same value doesn't mark chunk dirty (resulted in un-unloadable chunks) git-svn-id: http://mc-server.googlecode.com/svn/trunk@279 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16Got rid of dangerous GetEntity(), not using DoWithEntity()faketruth5-53/+29
git-svn-id: http://mc-server.googlecode.com/svn/trunk@278 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16Chunks are now marked as savedmadmaxoft@gmail.com1-2/+10
git-svn-id: http://mc-server.googlecode.com/svn/trunk@277 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16Marking chunk dirty after generatingmadmaxoft@gmail.com1-0/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@276 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16cPlayer empty-handed spawn fixmadmaxoft@gmail.com1-1/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@275 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16Heightmap is properly generated after loading chunks now, so /spawn and /top should work properly againfaketruth1-0/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@274 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@273 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16Chunks are properly saved before being unloaded nowfaketruth2-1/+11
numchunks server command works again git-svn-id: http://mc-server.googlecode.com/svn/trunk@272 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16cSocket::GetErrorString() now also compiles on Cygwinfaketruth1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@270 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-15No longer using pointers for Vector3(f/d/i) in cEntity's and cTracerfaketruth12-288/+246
git-svn-id: http://mc-server.googlecode.com/svn/trunk@268 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-15New players no longer cause an assertfaketruth1-3/+3
git-svn-id: http://mc-server.googlecode.com/svn/trunk@267 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-15Can use the 'restart' command again. cAuthenticator no longer asserts because it properly stops when the server is stopped.faketruth3-3/+16
git-svn-id: http://mc-server.googlecode.com/svn/trunk@266 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-15Fixed a deadlock in WorldStoragefaketruth1-3/+5
git-svn-id: http://mc-server.googlecode.com/svn/trunk@265 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-15Fixed logging formatting error in cWorldmadmaxoft@gmail.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@264 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@263 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-15Can now pass any argument to cWorld:ForEachPlayer in Lua! But I'm not even using it.. lolfaketruth1-18/+46
git-svn-id: http://mc-server.googlecode.com/svn/trunk@262 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-14Slight cleanup - removed old code, some additional comments on dangerous functionsmadmaxoft@gmail.com5-402/+13
git-svn-id: http://mc-server.googlecode.com/svn/trunk@261 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-14Got rid of cWorld::GetAllPlayers() and implemented ForEachPlayer() more or less in Luafaketruth3-31/+64
Core now uses ForEachPlayer() to interact with connected players git-svn-id: http://mc-server.googlecode.com/svn/trunk@260 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-14Updated fluid simulators with geser's patch file!faketruth7-58/+338
Fluids should behave more like Minecraft's fluids, and lava+water creates stone/cobble/obsidian! git-svn-id: http://mc-server.googlecode.com/svn/trunk@257 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-14m_World was never set in cBlockEntity's, now it isfaketruth1-0/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@255 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-14Apparently the Fire plugin is depreciated since it's implemented in C++ :Pfaketruth1-2/+2
Using std::list instead of std::vector for fire, I think this would be faster due to all the adding and removing blocks from lists. Correct me if I'm wrong git-svn-id: http://mc-server.googlecode.com/svn/trunk@254 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-14Fixed the same leak in FireSimulatorfaketruth2-18/+18
git-svn-id: http://mc-server.googlecode.com/svn/trunk@253 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-14Fixed a (pretty big) memory leak in cSandSimulatorfaketruth2-15/+16
git-svn-id: http://mc-server.googlecode.com/svn/trunk@252 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.com77-2687/+6689
git-svn-id: http://mc-server.googlecode.com/svn/trunk@251 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-08Removed unused codemadmaxoft@gmail.com4-63/+126
git-svn-id: http://mc-server.googlecode.com/svn/trunk@249 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-08Added total chunk count to webadminmadmaxoft@gmail.com4-7/+133
git-svn-id: http://mc-server.googlecode.com/svn/trunk@248 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-08cPluginManager: slight cleanupmadmaxoft@gmail.com1-178/+272
git-svn-id: http://mc-server.googlecode.com/svn/trunk@247 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-08cMonsterConfig: removed excessive loggingmadmaxoft@gmail.com1-43/+62
git-svn-id: http://mc-server.googlecode.com/svn/trunk@246 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@245 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.com8-219/+253
git-svn-id: http://mc-server.googlecode.com/svn/trunk@244 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-07cSocket: final localhost fix - made it a function (forgotten file)madmaxoft@gmail.com1-3/+3
git-svn-id: http://mc-server.googlecode.com/svn/trunk@243 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-07cSocket: final localhost fix - made it a functionmadmaxoft@gmail.com2-7/+15
git-svn-id: http://mc-server.googlecode.com/svn/trunk@242 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-07Temporary fix for Linux compilation. (gcc won't accept a function call in global var initialization)madmaxoft@gmail.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@241 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-07Rewritten all packets to use buffers instead of direct sockets, for future cSocketThreads compatibility.madmaxoft@gmail.com109-1316/+1907
Moved data sending from cPacket into cSocket git-svn-id: http://mc-server.googlecode.com/svn/trunk@240 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-07cSocketThreads initial commit. Not yet tested and not yet integratedmadmaxoft@gmail.com2-0/+619
git-svn-id: http://mc-server.googlecode.com/svn/trunk@239 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-07Slight cleanupmadmaxoft@gmail.com2-5/+3
git-svn-id: http://mc-server.googlecode.com/svn/trunk@238 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-07cSocket: Added more functions that will be needed for the new cSocketThreadsmadmaxoft@gmail.com2-8/+56
git-svn-id: http://mc-server.googlecode.com/svn/trunk@237 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-06cSocket: error reporting function now works correctly on GNU Linux; also includes the error number for all errorsmadmaxoft@gmail.com1-8/+29
git-svn-id: http://mc-server.googlecode.com/svn/trunk@236 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@235 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-05Now showing proper error messages when sockets fail :)faketruth5-18/+30
Crossplatform GetLastError function in cSocket git-svn-id: http://mc-server.googlecode.com/svn/trunk@234 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-05cSocket: added error logging to Bind() failuresmadmaxoft@gmail.com1-39/+48
git-svn-id: http://mc-server.googlecode.com/svn/trunk@233 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-04putting default settings back to defaultadmin@omencraft.com1-2/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@232 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-04Fixed a bug in source/cClientHandle.hadmin@omencraft.com4-6/+6
git-svn-id: http://mc-server.googlecode.com/svn/trunk@231 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-03MCServer should be running fast again on Linux!! YAAAY!!faketruth2-0/+7
It seems the intialization of MersenneTwister was really slow on Linux because it did some file reading. Doing this 200 times a tick can be pretty slow... StringUtils didn't compile in Cygwin due to missing va_list definition git-svn-id: http://mc-server.googlecode.com/svn/trunk@230 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-03cClientHandle: split packet handling into separate functions for claritymadmaxoft@gmail.com2-989/+1238
git-svn-id: http://mc-server.googlecode.com/svn/trunk@229 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-02cClientHandle: gotten rid of the obnoxious m_pState, now using direct members insteadmadmaxoft@gmail.com4-351/+405
git-svn-id: http://mc-server.googlecode.com/svn/trunk@228 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-02Socket-related assert fixesmadmaxoft@gmail.com3-6/+30
git-svn-id: http://mc-server.googlecode.com/svn/trunk@227 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@225 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-02Removed nonsense "virtual inline" declaration from functionsmadmaxoft@gmail.com7-28/+28
git-svn-id: http://mc-server.googlecode.com/svn/trunk@223 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-02cSocket API fix (possible invalid pointer)madmaxoft@gmail.com6-45/+103
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.com24-289/+667
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-01Added all current hooks to the new plugin structure.faketruth4-129/+817
Converted MagicCarpet to the new plugin structure When you fall of the MagicCarpet you teleport back up :D git-svn-id: http://mc-server.googlecode.com/svn/trunk@220 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01AString logging fix 2madmaxoft@gmail.com7-21/+27
git-svn-id: http://mc-server.googlecode.com/svn/trunk@218 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01AString logging fixmadmaxoft@gmail.com1-7/+7
git-svn-id: http://mc-server.googlecode.com/svn/trunk@217 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01sprintf() begone! Replaced with StringUtils' Printf()madmaxoft@gmail.com16-134/+189
git-svn-id: http://mc-server.googlecode.com/svn/trunk@216 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01Removed a few duplicate includesmadmaxoft@gmail.com10-41/+28
git-svn-id: http://mc-server.googlecode.com/svn/trunk@215 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01new cIsThread object for thread encapsulationmadmaxoft@gmail.com2-0/+225
git-svn-id: http://mc-server.googlecode.com/svn/trunk@214 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01cEvent: fixed wrong errorchecking in win32 Set()madmaxoft@gmail.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@213 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01StringUtils: SplitString() fixmadmaxoft@gmail.com1-2/+21
git-svn-id: http://mc-server.googlecode.com/svn/trunk@212 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01auto_ptr fix 2madmaxoft@gmail.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@211 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.com13-105/+384
git-svn-id: http://mc-server.googlecode.com/svn/trunk@209 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01Fixed a sigsegv on *nix (cFile double-closing files)madmaxoft@gmail.com1-0/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@208 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01Plugins can now be enabled and disabled through WebAdminfaketruth5-19/+75
WebPlugins can now have spaces in their tab names git-svn-id: http://mc-server.googlecode.com/svn/trunk@204 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-31Changed how Lua handles the (Post)Params in the HTTPRequest of a WebPluginfaketruth7-79/+193
It should now be theoretically possible to upload files through WebAdmin git-svn-id: http://mc-server.googlecode.com/svn/trunk@203 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-31Slight code cleanup, no big changesmadmaxoft@gmail.com3-45/+129
git-svn-id: http://mc-server.googlecode.com/svn/trunk@202 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-31Another cEvent fix, I wish I could get it finally rightmadmaxoft@gmail.com1-0/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@201 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-31Hopefully fixed pthreads in cEvent (again)madmaxoft@gmail.com2-1/+3
git-svn-id: http://mc-server.googlecode.com/svn/trunk@200 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@199 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
Please look into this. Also, am I the only one compiling/using Linux? git-svn-id: http://mc-server.googlecode.com/svn/trunk@198 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-31Can now receive POST data in WebPlugins!faketruth6-8/+41
Fixed Debug With optimized Noise in VS2010 by having it run the correct MCServer_debug.exe instead of MCServer.exe Changed winsock.h to Winsock2.h in Globals.h so sockets can be graciously closed (See webserver Socket::Close() ) git-svn-id: http://mc-server.googlecode.com/svn/trunk@197 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-30Replaced most FILE operations with a cFile objectmadmaxoft@gmail.com7-151/+210
git-svn-id: http://mc-server.googlecode.com/svn/trunk@196 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-30Fixed a problem in cCSLock (sorry); reverted cChunkmadmaxoft@gmail.com2-3/+9
git-svn-id: http://mc-server.googlecode.com/svn/trunk@195 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-30Added a WebAdmin interface to view users their groups, and the permissions of groups.faketruth8-11/+91
cChunk::Tick did an assertion in cCSLock, I used a cCSUnlock to fix it, but not sure if this is correct. git-svn-id: http://mc-server.googlecode.com/svn/trunk@194 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-30More cFile cleanup; removed old format writing for block entitiesmadmaxoft@gmail.com11-286/+343
git-svn-id: http://mc-server.googlecode.com/svn/trunk@193 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-30Initial cFile implementation (using stdio FILE) and test in cChunkMapmadmaxoft@gmail.com4-86/+388
git-svn-id: http://mc-server.googlecode.com/svn/trunk@192 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-29Added missing #ifdef _DEBUG in cCriticalSection.cpp faketruth1-3/+5
Should compile in Release and on Linux now git-svn-id: http://mc-server.googlecode.com/svn/trunk@191 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-29Old code begone! ChunkMap cleanupmadmaxoft@gmail.com4-373/+252
git-svn-id: http://mc-server.googlecode.com/svn/trunk@189 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.com172-326/+1051
git-svn-id: http://mc-server.googlecode.com/svn/trunk@188 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-29ChunkGenerator: rewritten thread-locking using the new RAII CSLock classmadmaxoft@gmail.com5-82/+210
git-svn-id: http://mc-server.googlecode.com/svn/trunk@186 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-28Now also compiles in Linuxfaketruth1-0/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@184 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-28Converted entire Core plugin including WebAdmin interface to new plugin method/system/thingy and sexyfied it.faketruth9-98/+773
Made some changes to WebAdmin to make the new plugins work Old plugins still work like they're supposed to Not all hooks have been programmed for the new plugins yet, this still needs to be done git-svn-id: http://mc-server.googlecode.com/svn/trunk@182 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@179 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-27Converted all of the Core plugin to the new plugin structure, except for the WebAdmin partfaketruth2-21/+98
git-svn-id: http://mc-server.googlecode.com/svn/trunk@175 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-26No longer hard coded Lua files in new plugin systemfaketruth2-20/+406
git-svn-id: http://mc-server.googlecode.com/svn/trunk@173 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-26Working on a new plugin design with Lua. While retaining backwards compatibility of course...faketruth7-47/+508
In this new design a plugin consists of a folder with Lua files, this should enable plugin developers to keep things separate and have more overview. git-svn-id: http://mc-server.googlecode.com/svn/trunk@172 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-26Probably fixed a deadlock! http://www.mc-server.org/support/index.php?do=details&task_id=147faketruth1-2/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@171 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-23Cactus towers can be destroyed by removing the bottom blockfaketruth4-4/+89
Added checks whether flowers/mushrooms/saplings can be placed on surface Added checks for cactus to see if it's allowed to be placed Fluids now wash away certain items (flower, sapling, cactus) git-svn-id: http://mc-server.googlecode.com/svn/trunk@169 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-22Fixed the  sign bugfaketruth1-2/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@168 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-22Improved Core's WebAmin interface a bit.faketruth4-31/+112
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-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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@165 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-19Terrain generation is synchronous again, async generation has bugs.faketruth12-85/+129
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-02Fixed crashing bug in cClientHandle::~cClientHandlefaketruth1-1/+3
When there are players in the server, and a client connects as far as the handshake and then disconnects, the server crashed. This is because there is no m_Player yet after the handshake, and the destructor uses m_Player without checking if it exists git-svn-id: http://mc-server.googlecode.com/svn/trunk@163 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-01CreativeInventory Updatelapayo94@gmail.com9-85/+107
- Fixed various problems with the new creative inventory (Crafting, furnace, etc) - Creative inventory will now be saved to disk, so you keep your creative inventory also for the next sessions git-svn-id: http://mc-server.googlecode.com/svn/trunk@162 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-01Fixed the numchunks console command.faketruth10-14/+187
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
2012-01-01- implemented separated inventory for creative mode (cSurvivalInventory and cCreativeInventory)lapayo94@gmail.com16-227/+363
(Separation is not perfect yet, because maybe there are some mayor changes needed :D) - implemented CreativeInventoryAction (was mistakenly called CreateInventoryAction) -> Fixed meta data for creative selected blocks ->->Slabs/Steps are now placed correctly - slabs can now be build to a double slab - fixed a bug in the inventory which put items with different meta values in the same slot git-svn-id: http://mc-server.googlecode.com/svn/trunk@160 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-01Chests, furnaces and dispensers face the correct way now.faketruth1-0/+5
http://mc-server.org/support/index.php?do=details&task_id=88 git-svn-id: http://mc-server.googlecode.com/svn/trunk@159 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-31Made a couple of functions in cChunk inline, this should speed up several block operations on chunksfaketruth5-124/+148
Players should not spawn in the ground anymore. When an entity was added to cWorld twice (which shouldn't happen actually), the server would crash when the entity is destroyed, this should be fixed now. git-svn-id: http://mc-server.googlecode.com/svn/trunk@158 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-29- Animals burn now when moving into lava or firelapayo94@gmail.com3-7/+12
- Monster health is now working properly git-svn-id: http://mc-server.googlecode.com/svn/trunk@157 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-29 - Initial food handling by cedeelmtilden@gmail.com5-13/+73
git-svn-id: http://mc-server.googlecode.com/svn/trunk@156 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-29M$ BS...mtilden@gmail.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@155 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-29 - Chests open and close on clients when opened/closedmtilden@gmail.com6-7/+84
- Beginnings of "Double Chest". All that's needed is detection when 2 chests get put next to each other, block other chests from then touching them on any side, load/save with the m_JoinedChest seeing each other and adding and making sure the left side is always the top rows. I'm not sure exactly at this moment how to do all of the detection and saving/loading of the double chest stuff so if you've any ideas feel free to point out some areas in the server code or implement it yourself. git-svn-id: http://mc-server.googlecode.com/svn/trunk@154 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-29- Pickups should now burn in firelapayo94@gmail.com5-20/+33
- The player no longer gets an empty bucket when in creative mode - improved the simulators again (moved to std::list because this should be faster with so many objects) (But the water simulation still is very slow) git-svn-id: http://mc-server.googlecode.com/svn/trunk@153 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-29- water slacks fire nowlapayo94@gmail.com8-17/+20
- Bug which caused lava to disappear is fixed git-svn-id: http://mc-server.googlecode.com/svn/trunk@152 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28- little performance improvement on the sand simulatorlapayo94@gmail.com2-1/+9
git-svn-id: http://mc-server.googlecode.com/svn/trunk@151 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28- implemented the fire simulation in native c++ (cFireSimulator)lapayo94@gmail.com10-90/+280
- Changed the Durationsystem for Items. cPlayer::UseEquippedItem calls cItem::DamageItem this function damages the item if it has a duration. (needed the duration also in another place so this saves code ;)) - added some other burning blocks - the mobtypes for the settings.ini which i must have forgotten in the last commit git-svn-id: http://mc-server.googlecode.com/svn/trunk@150 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28 - Fixed too fast actions kick for realmtilden@gmail.com1-5/+5
git-svn-id: http://mc-server.googlecode.com/svn/trunk@149 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28Fixed some small memory leakslapayo94@gmail.com3-0/+13
git-svn-id: http://mc-server.googlecode.com/svn/trunk@148 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28 - Fixed ping displaying same for everyone, knew it was something I messed up with itr :(mtilden@gmail.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@147 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
Thanks to FakeTruth git-svn-id: http://mc-server.googlecode.com/svn/trunk@146 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28This bug should be fixed now http://mc-server.org/support/index.php?do=details&task_id=112faketruth1-6/+44
git-svn-id: http://mc-server.googlecode.com/svn/trunk@145 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28Linux fixmtilden@gmail.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@144 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28 - Didn't notice steak missing as wellmtilden@gmail.com1-0/+8
Interesting to note, when you make a food item handled with health it gets rid of the eating animation, this seems backwards. git-svn-id: http://mc-server.googlecode.com/svn/trunk@143 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28 - Added chicken to eatingmtilden@gmail.com2-1/+10
- Increased max interactions again, seems to be fine now for even the fastest clickers. git-svn-id: http://mc-server.googlecode.com/svn/trunk@142 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28Little improvement to save some cpu time but it´s still very heavy cpu loadlapayo94@gmail.com2-1/+8
git-svn-id: http://mc-server.googlecode.com/svn/trunk@141 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28- Implemented Drops from Burning animalslapayo94@gmail.com19-297/+218
- added right monster health and attack strength - refactored the Pawn/Monster/Player class a little bit - changed some namings to fit the style git-svn-id: http://mc-server.googlecode.com/svn/trunk@140 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
'Fixed' a 'bug' where MCServer would seemingly endlessly calculate lighting for an entire world (and then crash), when this entire world has 'wrong' lighting. This happens when running a converted map from Vanilla. Fixed this by only allowing a maximum of 50 chunks to recalculate their lighting per tick. Fixed a small coding error in cChunkMap where it would check PakVersion twice, instead of also ChunkVersion. DeNotch converter does not need the VS2010 runtime thingies anymore git-svn-id: http://mc-server.googlecode.com/svn/trunk@138 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-27Fixed a little error in cPacket_PlayerListItem.cppfaketruth1-1/+1
char* was casted to char, but you actually need to get the first index of the array. git-svn-id: http://mc-server.googlecode.com/svn/trunk@137 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@136 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@135 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-27Oops, accidentally left debug printmtilden@gmail.com1-1/+0
git-svn-id: http://mc-server.googlecode.com/svn/trunk@134 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-27 - Added basic ping handling.mtilden@gmail.com5-10/+38
Not sure what's up with the MC client, though. It doesn't seem to end up giving good results like the KA packet return is hanging and waiting for other things to process instead of being handled on its own to give a true result. Feel free to update if there's any way to deliver truer results. git-svn-id: http://mc-server.googlecode.com/svn/trunk@133 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-27Slightly cleaner block change interactions static in headermtilden@gmail.com2-2/+4
git-svn-id: http://mc-server.googlecode.com/svn/trunk@130 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@128 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@127 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()faketruth10-90/+160
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-26- improved Simulator system lapayo94@gmail.com14-55/+277
-> Manager handles all ticks -> advantage: Much easier to add new simulators, because you only have to register them in the manager - moved sand and gravel simulation to a Simulator-class (cSandSimulator) - Made Squid a little bit more funny and realistic, because it dies now when it´s not in water -Escaping mobs run now faster than normal (They just walked away before :D) git-svn-id: http://mc-server.googlecode.com/svn/trunk@125 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-26- improved ClosestPlayerDetection (Really the closest now ;))lapayo94@gmail.com2-30/+46
- renamed function because the old one wasn´t listing - improved some time vars so no move gets dropped when the server laggs for a few seconds git-svn-id: http://mc-server.googlecode.com/svn/trunk@124 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@122 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-26 - Linux compatible fixes including updated makefilemtilden@gmail.com14-47/+72
- Mersenne Twister still says uint32 but it's now signed for compatibility with random uses needing negative values - Server seed is sent to clients, but needs to be able to be signed long long later on for authentic reasons - Protocol Version is required to match to ensure client compatibility, this should probably have a settings.ini check as well as store the value there git-svn-id: http://mc-server.googlecode.com/svn/trunk@121 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@120 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-26 - Default Notchian Ping (static until ping implemented through keepalive send/receive)mtilden@gmail.com2-4/+12
- Player "left" message regardless of exit reason git-svn-id: http://mc-server.googlecode.com/svn/trunk@119 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@118 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-26Moved the actual world generation from cChunk.cpp to a more isolated file cWorldGenerator.cppfaketruth4-251/+274
New generators should inherit cWorldGenerator and implement their own generation algorithms git-svn-id: http://mc-server.googlecode.com/svn/trunk@117 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@116 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-26Made some functions in cChunk and cNoise inline, this should significantly increase chunk generation speedfaketruth7-73/+104
git-svn-id: http://mc-server.googlecode.com/svn/trunk@115 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
- Added xC9 PlayerListItem packet and added code for player names to be added and removed from the scoreboard (need a catch-all for client disconnects: crashes, timeouts, etc) - Changed wid wording to a_WindowType git-svn-id: http://mc-server.googlecode.com/svn/trunk@113 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-25- Fixed Bug #99 -> Mobs no longer bother you in creative modelapayo94@gmail.com40-1235/+347
- refactored many things in the Monster system git-svn-id: http://mc-server.googlecode.com/svn/trunk@112 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-25- fixed the code from the last commit :)lapayo94@gmail.com2-5/+7
git-svn-id: http://mc-server.googlecode.com/svn/trunk@111 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-25- Fixed a critical bug, which caused players to not getting spawned on the others clientlapayo94@gmail.com2-84/+89
- corrected newline in cMonsterConfig (VS did :D) git-svn-id: http://mc-server.googlecode.com/svn/trunk@110 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-25- Implemented function to check item categorylapayo94@gmail.com3-2/+43
- (Cobble-)stone don´t drop item anymore if mined without pickaxe - FluidSimulator no longer causes compiler warning - Glowstone drops fixed git-svn-id: http://mc-server.googlecode.com/svn/trunk@109 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-25Refactored both simulators (water and lava) to make them more flexible and easier to modifylapayo94@gmail.com6-549/+382
git-svn-id: http://mc-server.googlecode.com/svn/trunk@108 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-25Hold item is now dropped when inventory is closedlapayo94@gmail.com4-8/+32
Thanks to mtilden for this ( http://forum.mc-server.org/showthread.php?tid=183&pid=1428#pid1428 ) Also the items in the 4 crafting slots are now dropped. git-svn-id: http://mc-server.googlecode.com/svn/trunk@107 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-25Code improvementslapayo94@gmail.com8-5/+486
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-25The missing file! cChunkGenerator.h/cppfaketruth2-0/+195
git-svn-id: http://mc-server.googlecode.com/svn/trunk@105 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-25- improved and simplified the door system (shorter, clearer)lapayo94@gmail.com4-62/+85
- Doors now drop a complete door & other part gets destroyed - Build a function for pickup counts (cBlockToPickup::PickupCount) (Default is 1) git-svn-id: http://mc-server.googlecode.com/svn/trunk@104 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
Chunks are now generated before the player is able to see them. This is done because after a chunks is done generating, some blocks might still need to be set (parts of trees from neighboring chunk), causing more bandwidth to be used (each changed block needs to be sent to clients again) and (fps) lagging the clients when changing a lot of blocks. Calculating ahead fixes these issues. Separated the placing of foliage (trees and stuff) when generated chunks into a new function GenerateFoliage() Cleaned up the VS2010 project, now using some VS2010 specific functions like dependencies on projects (no need for setting library dependencies manually). VS2010 project now compiles way faster in Release by using multi threading. git-svn-id: http://mc-server.googlecode.com/svn/trunk@103 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-24Very alpha water physic for pickups (The swim now)lapayo94@gmail.com4-6/+168
but there are some problems (get stuck on some positions) so someone might look at it because I have no idea how to make it better :D git-svn-id: http://mc-server.googlecode.com/svn/trunk@102 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-24Max. players and MOTD are now changeable in the settings.inilapayo94@gmail.com3-7/+42
Thanks to mtilden ( http://forum.mc-server.org/showthread.php?tid=183&pid=1381#pid1381 ) git-svn-id: http://mc-server.googlecode.com/svn/trunk@101 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 atfaketruth5-9/+55
git-svn-id: http://mc-server.googlecode.com/svn/trunk@100 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-22Digging leaves with shears now drops leaveslapayo94@gmail.com7-11/+52
Falling Sand now notifies water around Implemented Function to get the relative chunk position in the total position (cChunk::PositionToWorldPosition) Pistons don´t drop water and lava items anymore when stopping water/lava implemented Getter for lava and water simulator IsBlockWater and IsBlockLava function in Defines.h git-svn-id: http://mc-server.googlecode.com/svn/trunk@97 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-22Fixes:lapayo94@gmail.com10-18/+30
- Pickups fall through water now (Server-side they stayed in the water surface) - Suppressed some warnings (int to short etc.) - Water is now passable for cTracer git-svn-id: http://mc-server.googlecode.com/svn/trunk@96 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-21Missed a class in r94 ;) Sorry guys :Dlapayo94@gmail.com2-0/+96
git-svn-id: http://mc-server.googlecode.com/svn/trunk@95 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-21- Crafting fixed in 1.0.0lapayo94@gmail.com42-275/+315
- Server compatible with the weapons and equip again. (Some Packets were incompatible) - fixed bucket bugs (not all) - Fixed clients getting crashed by wrong Pickups - fixed nearly all mob drops. (Check wheather they are burning is missing Big Grin) - maybe some other things I can´t recall atm Big Grin git-svn-id: http://mc-server.googlecode.com/svn/trunk@94 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@93 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-12Put view distance back to 13. Didn't mean to change that.admin@omencraft.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@92 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-11Found and fixed a bug not letting users place blocks in water or lava.admin@omencraft.com2-3/+8
git-svn-id: http://mc-server.googlecode.com/svn/trunk@91 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-10Fixed logging in underground bug this time. A hack, but it works. :Dadmin@omencraft.com1-4/+4
git-svn-id: http://mc-server.googlecode.com/svn/trunk@90 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-10Can now set gamemode via lua.admin@omencraft.com5-4/+19
git-svn-id: http://mc-server.googlecode.com/svn/trunk@89 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-10Some more changes to redstone. admin@omencraft.com1-12/+14
git-svn-id: http://mc-server.googlecode.com/svn/trunk@88 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@87 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@86 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@85 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-10Storms were WAY too frequent. I toned them down.admin@omencraft.com1-4/+4
git-svn-id: http://mc-server.googlecode.com/svn/trunk@84 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-10Added random weather that persists per world. Also added SetWeather, GetWeather, and CastThunderbolt to lua bindings.admin@omencraft.com5-20/+191
git-svn-id: http://mc-server.googlecode.com/svn/trunk@83 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@82 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-09bugfix to redstone, it can climb walls again.admin@omencraft.com2-16/+43
git-svn-id: http://mc-server.googlecode.com/svn/trunk@81 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@80 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-08Fixed world timefaketruth2-1/+13
git-svn-id: http://mc-server.googlecode.com/svn/trunk@78 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-08It's a Squirrel!!faketruth11-31/+529
In SquirrelBindings.h use #define USE_SQUIRREL 1 to enable squirrel git-svn-id: http://mc-server.googlecode.com/svn/trunk@76 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@75 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@74 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@73 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-07Added Sebi's changes to pistons and item drops.admin@omencraft.com6-423/+172
git-svn-id: http://mc-server.googlecode.com/svn/trunk@72 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-07Pistons now generate noise and animate when moving.admin@omencraft.com3-4/+50
git-svn-id: http://mc-server.googlecode.com/svn/trunk@71 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-07Added three new packets and cleaned up cPacket_Thunderbolt.cpp... cPacket_BlockAction, cPacket_Explosion, and cPacket_SoundEffect.admin@omencraft.com8-50/+232
git-svn-id: http://mc-server.googlecode.com/svn/trunk@70 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@69 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@68 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@67 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@66 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@65 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-05Added all the items up to Beta 1.9.5. Added pistons and piston class.admin@omencraft.com5-18/+364
git-svn-id: http://mc-server.googlecode.com/svn/trunk@63 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-04Added cRedstone to project filefaketruth2-7/+6
Changed NetworkToHostFloat4(), maybe it works now on 64bit linux git-svn-id: http://mc-server.googlecode.com/svn/trunk@54 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-04Changed use of deprecated function.admin@omencraft.com1-14/+19
git-svn-id: http://mc-server.googlecode.com/svn/trunk@53 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-04celeaning up the mess I made of cRedstone.h. >.>admin@omencraft.com1-77/+0
git-svn-id: http://mc-server.googlecode.com/svn/trunk@52 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@51 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@50 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-03Added some redstone items.admin@omencraft.com3-7/+54
git-svn-id: http://mc-server.googlecode.com/svn/trunk@49 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-03Updated the thunderbolt packet. Lightning and rain can be tested with a workbench and a chest. >:)admin@omencraft.com3-11/+42
git-svn-id: http://mc-server.googlecode.com/svn/trunk@48 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@47 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-02Fixed some "Entity was not found in any chunk!" warningsfaketruth8-28/+74
Player's current world is saved in the player file. When a player joins the server, the player joins the last world he was in. It seems MCServer can finally run multiple worlds! It just needs functionality to switch between them git-svn-id: http://mc-server.googlecode.com/svn/trunk@46 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-02Fixed player spawn teleport postion.admin@omencraft.com1-1/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@45 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-02Fixed crash when client only sends a space in the chatfaketruth1-0/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@44 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-02Changed world gamemode location to world.ini for world based gamemodes.admin@omencraft.com1-2/+4
git-svn-id: http://mc-server.googlecode.com/svn/trunk@43 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-01fixed player spawning in the ground.admin@omencraft.com3-6/+5
git-svn-id: http://mc-server.googlecode.com/svn/trunk@42 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-01Accidentally removed a line of codefaketruth1-1/+2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@41 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 yetfaketruth16-165/+476
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-11-01forogt to update all of cPlayer.cpp for player based gamemode.admin@omencraft.com1-1/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@39 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@38 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@37 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-31denotch map converter works! :Dadmin@omencraft.com1-8/+9
git-svn-id: http://mc-server.googlecode.com/svn/trunk@36 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-31Player data is saved and loaded as human readable JSON now.faketruth10-74/+317
cFileFormatUpdate will loop through old files and convert them to new files (should replace legacy old format loading code) cItem has two new functions to load from Json and output Json, this will keep the items in Json standard ChestEntity and FurnaceEntity use the new functions in cItem git-svn-id: http://mc-server.googlecode.com/svn/trunk@35 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-31Prepared some parts of the code for multi world support, I created lots of TODO'sfaketruth40-206/+402
git-svn-id: http://mc-server.googlecode.com/svn/trunk@29 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-30Changed cChunkMat.cpp back to normal. Made more changes to the denotch map converter. Testing cNBTData parser.admin@omencraft.com1-5/+0
git-svn-id: http://mc-server.googlecode.com/svn/trunk@21 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@20 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-27Fixed a memory leakfaketruth1-0/+1
git-svn-id: http://mc-server.googlecode.com/svn/trunk@19 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-26Made several recomended changes. Gamemode is now world based. Need to add it to player.admin@omencraft.com11-19/+26
git-svn-id: http://mc-server.googlecode.com/svn/trunk@18 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@17 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@16 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@15 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-26Updated VS2010 project filesfaketruth1-104/+43
Made monster spawning code in cWorld.cpp a bit more compact and readable srand() is only supposed to be called once in the whole program, and it's already called in the constructor of cWorld so it doesn't have to be in cWorld::Tick() git-svn-id: http://mc-server.googlecode.com/svn/trunk@14 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-26Fixed bug in cMakeDir where it would only create directories named "world"faketruth3-34/+16
The user input thread now properly stops when the server restarts or stops git-svn-id: http://mc-server.googlecode.com/svn/trunk@13 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
git-svn-id: http://mc-server.googlecode.com/svn/trunk@12 0a769ca7-a7f5-676a-18bf-c427514a06d6
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
Unfortunately the noise functions is only like 7% faster, so you won't even notice git-svn-id: http://mc-server.googlecode.com/svn/trunk@9 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-23Abstracted sockets some more to ensure the same behavior over the entire program and on multiple platforms.faketruth6-88/+165
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-22Found something that calls a function when a segfault happens, might be useful.faketruth1-4/+16
git-svn-id: http://mc-server.googlecode.com/svn/trunk@7 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-21Compiles for linuxfaketruth17-24/+63
git-svn-id: http://mc-server.googlecode.com/svn/trunk@6 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-03MCServer c++ source filesfaketruth233-0/+35759
git-svn-id: http://mc-server.googlecode.com/svn/trunk@3 0a769ca7-a7f5-676a-18bf-c427514a06d6