summaryrefslogtreecommitdiffstats
path: root/src/Chunk.cpp (unfollow)
Commit message (Expand)AuthorFilesLines
2014-06-24Added asserts for cChunk::GetBlockEntity() coords.Mattes D1-0/+6
2014-06-19Nullify deleted pointers.archshift1-0/+4
2014-06-16Merge branch 'master' of github.com:mc-server/MCServerTycho1-1/+3
2014-06-14Added generic Allocation Pool InterfaceTycho1-1/+1
2014-06-14fixed spacesTycho1-1/+1
2014-06-05Redstone fixes and improvements [SEE DESC]Tiger Wang1-0/+1
2014-06-01Suggestions twoTiger Wang1-7/+9
2014-05-29Added comments, reformatted code.madmaxoft1-3/+3
2014-05-29More comments!Tiger Wang1-5/+4
2014-05-25Hopefully fixed piston duplication issuesTiger Wang1-5/+6
2014-05-24Implemented style changesTycho1-2/+2
2014-05-23Implemented Allocation Pool use by cChunkDataTycho1-1/+3
2014-05-21Fixed stylistic issuesTycho1-2/+2
2014-05-21Renamed cChunkBuffer to cChunkDataTycho1-19/+19
2014-05-21Fixed minor style issuesTycho1-4/+4
2014-05-10Fixed bug in setting metasTycho1-18/+0
2014-05-02Fixed a buffer overflow in cChunk:SetLight().madmaxoft1-2/+2
2014-04-27Redstone simulator now directly accesses cChunkTiger Wang1-1/+19
2014-04-27Fixed bad mergeTycho1-13/+9
2014-04-26Implemented Chunk Sparsing with segmentsTycho1-153/+33
2014-04-25Implemented commentsTiger Wang1-6/+6
2014-04-24Fixed indentTiger Wang1-1/+1
2014-04-24Another small speed improvement?Tiger Wang1-12/+2
2014-04-24Implemented suggestionsTiger Wang1-22/+6
2014-04-18Did some static analysis, fixed some bugs and optimized a lot of codejfhumann1-2/+2
2014-04-12Implemented the skeleton code for the beacon.STRWarrior1-0/+2
2014-04-10Replaced all the .data() calls so the code compiles in VS2008Tycho1-5/+5
2014-04-08Fixed missing - that caused all neighbour lookups to go to the chunkmapTycho1-1/+1
2014-04-07Maybe speed improvements?Tiger Wang1-47/+28
2014-04-07Attempt to fix errorsTiger Wang1-2/+2
2014-04-07Blocklight and skylight now compressedTiger Wang1-24/+82
2014-04-05Nibbletypes are compressedTiger Wang1-15/+34
2014-04-04Speed and memory improvementsTiger Wang1-61/+14
2014-04-03Fixed some bugsTiger Wang1-3/+5
2014-04-02Performance improvements and chunk flipping fixedTiger Wang1-30/+32
2014-03-28Fixed a potential crashTiger Wang1-1/+1
2014-03-27Fixed chunk neighbor-getting for long distances.madmaxoft1-0/+11
2014-03-23Sort of implementation of chunk sparsingTiger Wang1-17/+92
2014-03-07Add Lua Bindings for FlowerPotEntity.h and add documentation.Howaner1-1/+1
2014-03-07Add Flower PotsHowaner1-0/+35
2014-03-01g_BlockXXX => cBlockInfo::XXXandrew1-5/+5
2014-02-24Removed an unused member variable from cChunk.madmaxoft1-7/+0
2014-02-23Rename SkullEntity to MobHeadEntityHowaner1-3/+3
2014-02-23Add Heads completelyHowaner1-0/+33
2014-02-23Add Skulls/HeadsHowaner1-0/+2
2014-02-19Rename SkullEntity to MobHeadEntityHowaner1-3/+3
2014-02-18Add Heads completelyHowaner1-0/+33
2014-02-18Added cWorld:SetAreaBiome() API function.madmaxoft1-0/+32
2014-02-17Add Skulls/HeadsHowaner1-0/+2
2014-02-08Initial ChunkStay code.madmaxoft1-1/+0
2014-02-02Changed Signiture of OnUpdateTycho1-4/+10
2014-02-01Changed pointers to referencesTycho1-1/+1
2014-02-01Changed signitures of Several BLockHandler MethodsTycho1-2/+4
2014-01-18Basic command block implementationandrew1-0/+34
2014-01-16Disabled excessive entity-related logging in Debug mode.madmaxoft1-2/+15
2013-12-30Fixed compilation in VC2008.madmaxoft1-13/+7
2013-12-22fixed bad mergeTycho Bickerstaff1-4/+0
2013-12-22merged in warnings changesTycho Bickerstaff1-11/+4
2013-12-22Implented BroadcastParticleEffectSTRWarrior1-0/+16
2013-12-21Chunk is now warnings cleanTycho Bickerstaff1-3/+2
2013-12-20Fixed the rest of constructor reorders.madmaxoft1-20/+21
2013-12-20Attempt at fixing cChunkDef::Height signedness.madmaxoft1-6/+1
2013-12-15This adds the cWorld::BroadcastEntityEffect and cWorld::BroadcastRemoveEntityEffect functions.STRWarrior1-0/+32
2013-12-14Implemented note block playing and fixed wireTiger Wang1-0/+32
2013-12-13Improved redstone loading performanceTiger Wang1-2/+10
2013-12-13Fixed QueueSetBlock not sending to client changesTiger Wang1-2/+1
2013-12-13Redstone data is now loaded on chunk loadTiger Wang1-0/+6
2013-12-08Moved bindings-related to a Bindings subfolder.madmaxoft1-1/+1
2013-12-09Fixed warning unchecked enum value at Chunk.cpp line 841worktycho1-2/+4
2013-12-07Added basic ender chestsTiger Wang1-0/+2
2013-12-07Renamed animation functionTiger Wang1-2/+2
2013-12-06Fixed duplication glitch with QueueSetBlockTiger Wang1-5/+26
2013-12-04Fixed an error in cChunk's block ticking.madmaxoft1-2/+2
2013-11-30Changed cBlockHandler->OnUpdate() to use cChunk directly.madmaxoft1-1/+18
2013-11-27Fixed VC2008 compilation, normalized include paths.madmaxoft1-1/+1
2013-11-27Fixed some of tiger's derpyness.Alexander Harkness1-1/+1
2013-11-26Fixed loads more of them.Alexander Harkness1-1/+1
2013-11-24Attempt to fix compilationTiger Wang1-2/+2
2013-11-24Moved source to srcAlexander Harkness1-0/+0
2013-11-20Added cWorld:ForEachBlockEntityInChunk() and cWorld:DoWithBlockEntityAt() functions.madmaxoft1-0/+44
2013-11-18Redstone Megacommit [SEE DESC]Tiger Wang1-7/+7
2013-11-14Added cSignEntity into API, added cChunkDesc:GetBlockEntity().madmaxoft1-86/+5
2013-11-12Bundled fixes [SEE DESC]Tiger Wang1-3/+10
2013-10-30Last of the nitpicker note fixes. Added some inline commenting.Samuel Barney1-0/+1
2013-10-29Update to allow the light map to remain the same, but allow alteration of sky light values based on time.Samuel Barney1-2/+11
2013-10-28Got spiders and other mobs respecting night and day for spawningSamuel Barney1-1/+2
2013-10-28Made mob spawning code use the chunk so that it could use varying sizes of areas for different mobs.Samuel Barney1-32/+20
2013-10-27Added cChunk::UnboundedRelGetBlockLights().madmaxoft1-0/+23
2013-10-26Moving spawning position to the center of the block.Samuel Barney1-1/+3
2013-10-24Using provided UnboundedRelGetBlockBlockLight and UnboundedRelGetBlockSkyLight.Samuel Barney1-5/+3
2013-10-24Removed my hackish Light functionsSamuel Barney1-96/+0
2013-10-23Invalid light value is now 127Samuel Barney1-5/+5
2013-10-22Implemented UnboundedRel BlockLight and SkyLight.madmaxoft1-250/+109
2013-10-21Added two new unbounded del functions to deal with looking up the lighting.Samuel Barney1-11/+100
2013-10-21Swapped which block is checked for light first.Samuel Barney1-4/+4
2013-10-21Current Mob Spawning code.Samuel Barney1-7/+22
2013-09-09replacing dynamic_cast by c-style castmgueydan1-11/+4
2013-09-08replacing C-style cast by dynamic_castmgueydan1-1/+1
2013-09-08Replacing chunCk by chunkmgueydan1-1/+1
2013-09-08replacing asserts by ASSERTsmgueydan1-3/+3
2013-09-08renaming the cChunk::getRandomBlock method + removing a buggy working logmgueydan1-2/+2
2013-09-08Adding glue to call everything done in last commits - now the mobs are spawningmgueydan1-0/+61
2013-09-08Disabeling current mob spawning and tickmgueydan1-2/+6
2013-09-08Adding an Empty shell that would launch mob spawner - not called yetmgueydan1-0/+37
2013-09-07Adding mob census (sorry this is a big commit as work was done before git integration i couldn't split it more)mgueydan1-0/+39
2013-08-19Fixed the extreme strain on the world tick thread.madmaxoft1-0/+5
2013-08-19Moved entities into the Entities subfolder.madmaxoft1-2/+2
2013-08-19cChunk::SetBlock() now uses cChunk::FastSetBlock() for the common code path.madmaxoft1-69/+11
2013-08-19Removed an unused CriticalSection from cChunk.madmaxoft1-19/+5
2013-08-18Implemented cWorld:QueueSetBlock(), as requested for delayed blocksetting.madmaxoft1-0/+36
2013-08-18Removed SetServerBlock griefing.madmaxoft1-55/+0
2013-08-18Properly fixed piston non-animationTiger Wang1-0/+55
2013-07-07Improved function names for protocol packet sending; alpha-sorted the function listsmadmaxoft@gmail.com1-58/+58
2013-06-25Unified the way mobs are spawned (egg vs natural). Fixed deadlocks in mob moving. Fixed mob destroying code.madmaxoft@gmail.com1-1/+1
2013-06-20Furnaces light up visually when they're cookingmadmaxoft@gmail.com1-2/+5
2013-06-13Added hopper entity, it can suck items out of chests, dispensers, droppers and other hopppers above it.madmaxoft@gmail.com1-11/+25
2013-06-12Added cWorld::SetSignLines(), re-exported to Lua manually to avoid ghost return valuesmadmaxoft@gmail.com1-1/+3
2013-06-04Removed cLadder, cSign, cStairs, cTorch and cVine classes, moved their functionality into the appropriate BlockHandlers / ItemHandlersmadmaxoft@gmail.com1-2/+0
2013-06-04Implemented proper player crouching.madmaxoft@gmail.com1-2/+2
2013-05-28Moved BlockEntities to a separate foldermadmaxoft@gmail.com1-7/+7
2013-05-28Block entities now receive the cChunk param in their Tick() functionmadmaxoft@gmail.com1-1/+1
2013-05-28cChunk: Added the GetRelNeighborChunkAdjustCoords() functionmadmaxoft@gmail.com1-0/+66
2013-05-28Chunk / ChunkMap: Added support for unbounded querying blocktype-only or blockmeta-onlymadmaxoft@gmail.com1-1/+103
2013-05-26Implemented droppersmadmaxoft@gmail.com1-0/+123
2013-05-19Fixed entity chunking.madmaxoft@gmail.com1-1/+3
2013-05-17Removed pickup loggingmadmaxoft@gmail.com1-0/+4
2013-05-13Added logging to pickup collection when a player is near and when collecting.madmaxoft@gmail.com1-0/+9
2013-05-06Fixed player teleporting too far away ("Entity lost")madmaxoft@gmail.com1-3/+7
2013-04-28Fixed most of client slowdowns caused by sending too many block changes (bad condition in FastSetBlock)madmaxoft@gmail.com1-1/+1
2013-04-27Fixed a few possible crashes with out-of-bounds Y coordsmadmaxoft@gmail.com1-0/+12
2013-04-13Rewritten entities so that they are owned by individual chunks and ticked within their chunk's Tick()madmaxoft@gmail.com1-18/+124
2013-04-09Fixed chunk possibly writing to uninitialized memorymadmaxoft@gmail.com1-0/+12
2013-04-06Mineshafts: Added random loot to generated chests and fixed chest directionmadmaxoft@gmail.com1-2/+8
2013-04-03Added a debugging log for melon-growing to catch FS #349madmaxoft@gmail.com1-0/+5
2013-04-01Proper fix for FS #347. Also unification of ticking block entities.madmaxoft@gmail.com1-26/+9
2013-03-22Fixed block update queueing and water meta change not propagated to clients.madmaxoft@gmail.com1-17/+57
2013-03-18Added support for the packet #28 (0x1C): ENTITY_VELOCITYkeyboard.osh@gmail.com1-0/+16
2013-03-15Huge performance boost in blockhandlers, they have direct access to chunk data when blockchecking.madmaxoft@gmail.com1-12/+24
2013-03-14Small performance improvements in fluid simulator.madmaxoft@gmail.com1-26/+33
2013-03-14Fix for the Vaporize fluid simulator when loading chunks.madmaxoft@gmail.com1-0/+3
2013-03-09Pickups are now being saved into Anvil.madmaxoft@gmail.com1-0/+6
2013-03-03Player can sit in minecarts (but not move them yet)madmaxoft@gmail.com1-3/+15
2013-03-03Simulators are woken up upon chunk loadmadmaxoft@gmail.com1-0/+39
2013-03-02Floody fluid simulator has been converted to use direct chunk accessmadmaxoft@gmail.com1-0/+5
2013-03-01New fire simulator, fully rewritten to the new scheme of things, directly accessing chunk data.madmaxoft@gmail.com1-13/+16
2013-02-28Fixed previous commit.madmaxoft@gmail.com1-1/+1
2013-02-28Fixed a bug in cChunk::QueueTickBlockNeighbors() that caused the tick thread to overload easilymadmaxoft@gmail.com1-3/+1
2013-02-28Simulators now have direct access to the cChunk object in the WakeUp() callmadmaxoft@gmail.com1-63/+103
2013-02-05Added new hooks: OnChunkAvailable(), OnChunkUnloaded() and OnChunkUnloading(). Modified OnChunkGenerated() signature.madmaxoft@gmail.com1-0/+2
2012-12-26Dispensers can dispense items and liquids nowluksor111@gmail.com1-1/+63
2012-12-21Added more constants into eEntityType; made them a compulsory parameter to the constructor, so that all entities have proper type.madmaxoft@gmail.com1-6/+6
2012-12-19Added dispensers (they can't dispense items yet)luksor111@gmail.com1-0/+15
2012-12-14cChunk now tracks its neighbors as direct pointers; used in UnboundedRelGetBlock et al.madmaxoft@gmail.com1-2/+118
2012-11-11Removed an unused obsolete function chain - cWorld::GetChunkBlockData()madmaxoft@gmail.com1-12/+0
2012-11-11Fixed FS #268 - if a block entity breaking is disallowed by a plugin, the entire blockentity is sent back to the clientmadmaxoft@gmail.com1-6/+12
2012-10-22Made DeepSnow remove flowers and mushrooms while snowing.luksor111@gmail.com1-0/+12
2012-10-21Top blocks are now snowed over, either normally, or in deep snow (patch contributed by funmaker, Luksor and Sebi)madmaxoft@gmail.com1-0/+84
2012-10-21Added jukeboxes (patch contributed by Luksor)madmaxoft@gmail.com1-0/+31
2012-10-20Made cWorld's block query functions more orthogonal, added GetBlockInfo() returning all info on a block.madmaxoft@gmail.com1-0/+13
2012-10-19Removed unused [Physics].Water section from settings.ini.madmaxoft@gmail.com1-10/+0
2012-10-15Fixed DelayedFluidSimulator.madmaxoft@gmail.com1-1/+1
2012-10-14Floody fluid simulator now dries up correctly, too.madmaxoft@gmail.com1-16/+72
2012-10-13Preparation for multiple fluid simulators.madmaxoft@gmail.com1-2/+0
2012-10-07All blockticking is now done in cBlockHandlersmadmaxoft@gmail.com1-95/+5
2012-10-06Completely removed the old (buggy) redstone simulator.madmaxoft@gmail.com1-1/+0
2012-10-06BlockArea writing support (BlockTypes with BlockMeta only)madmaxoft@gmail.com1-0/+53
2012-10-03Fixed saplings not growing into treesmadmaxoft@gmail.com1-3/+3
2012-10-03Moved blockticking into blockhandler classes.madmaxoft@gmail.com1-31/+1
2012-10-01Slight refactoring of BlockHandlers - dropping unneeded virtual functionsmadmaxoft@gmail.com1-6/+3
2012-09-29Beds can be slept in now (it doesn't change the time though)faketruth1-0/+12
2012-09-29Unified folder name-casingmadmaxoft@gmail.com1-1/+1
2012-09-25Added the block dig animation packet (patch contributed by l0udPL)madmaxoft@gmail.com1-0/+16
2012-09-24Source files cleanup: The rest of the files renamed.madmaxoft@gmail.com1-20/+20
2012-09-23Source files cleanup: Removed unused cBlockToPickupmadmaxoft@gmail.com1-79/+0
2012-09-11Merged in a patch for sounds by l0udPLmadmaxoft@gmail.com1-0/+16
2012-09-04Fixed FS #243, server crash after restart. The blockhandler table and the itemhandler table weren't properly re-initialized.madmaxoft@gmail.com1-3/+10
2012-08-31Progress on the 1.3.2 protocol.madmaxoft@gmail.com1-2/+2
2012-08-29Gotten completely rid of all cPackets. The cProtocol125 class now does all the parsing and writing by itself.madmaxoft@gmail.com1-4/+4
2012-08-27Cut out all packet handling to a separate cProtocol descendantmadmaxoft@gmail.com1-109/+0
2012-08-26git-svn-id: http://mc-server.googlecode.com/svn/trunk@795 0a769ca7-a7f5-676a-18bf-c427514a06d6madmaxoft@gmail.com1-0/+16
2012-08-26Added basic noteblocks, finished sign storage in Anvil (patch contributed by l0udPL)madmaxoft@gmail.com1-0/+15
2012-08-25cWorld doesn't use cPackets.madmaxoft@gmail.com1-0/+16
2012-08-25Removed cPackets from cChunk.madmaxoft@gmail.com1-94/+53
2012-08-24cPickup doesn't use cPackets.madmaxoft@gmail.com1-0/+16
2012-08-24Monster classes don't use cPackets. Chat messages are sent / broadcast without cPackets. BlockEntities don't use cPackets.madmaxoft@gmail.com1-4/+55
2012-08-19Window, Chest, Furnace and Pawn are not using cPackets at allmadmaxoft@gmail.com1-0/+32
2012-08-19Almost all packets' handling is now rewritten not to use cPacket descendants elsewhere than in cClientHandle.madmaxoft@gmail.com1-0/+96
2012-08-19Another handful of packets rewritten.madmaxoft@gmail.com1-0/+32
2012-07-21Slight cChunk optimizationmadmaxoft@gmail.com1-1/+1
2012-07-15A new Block handling system :olapayo94@gmail.com1-193/+21
2012-07-15Leaves blocks allowed one more block of distance from a log block before they decaymadmaxoft@gmail.com1-2/+2
2012-07-09BlockArea name change revertedlapayo94@gmail.com1-1/+1
2012-07-08Squirrel Pluginslapayo94@gmail.com1-1/+1
2012-07-02Leaves decay adjusted to 4 blocks in between the leaves and the log, instead of previous 3madmaxoft@gmail.com1-2/+2
2012-07-02Leaves decay properly - if they are not connected to a logmadmaxoft@gmail.com1-31/+109
2012-06-19Made ForEach API safer to use, now supports Destroy()-ing objects, too ( http://forum.mc-server.org/showthread.php?tid=434&pid=3513#pid3513 )madmaxoft@gmail.com1-5/+10
2012-06-18Crops aren't uprooted if farmland is dry.cedeel@gmail.com1-3/+12
2012-06-17Removed the deprecated GetBlockEntity(), added several enumerators to replace it.madmaxoft@gmail.com1-0/+154
2012-06-17Fixed leaves blockticking - must touch neighboring chunks, too, instead of self at wrong places.madmaxoft@gmail.com1-23/+54
2012-06-16Leaves: Applied patch by Luksor.cedeel@gmail.com1-1/+20
2012-06-16Exported cWorld::ForEachEntity and cWorld::ForEachEntityInChunk; no idea if they actually workmadmaxoft@gmail.com1-0/+17
2012-06-14Attempt to bring sanity to newlines across systems.cedeel@gmail.com1-1643/+1643
2012-06-09Snow cover breaks when the block below it is removed (FS #184).madmaxoft@gmail.com1-1/+3
2012-06-09Sugarcane and cactus max height can be set in world.ini.madmaxoft@gmail.com1-4/+4
2012-06-09Cacti grow by themselves and by bonemealmadmaxoft@gmail.com1-0/+47
2012-06-08Sugarcane grows and can be grown using bonemeal.madmaxoft@gmail.com1-60/+98
2012-06-07Bonemeal works on crops, melons, pumpkins, saplings and grass. Plant growing has been refactored into separate functions callable from Lua, too.madmaxoft@gmail.com1-1/+9
2012-06-07BlockChecking split into a separate functionmadmaxoft@gmail.com1-93/+94
2012-06-07Repeaters' delays can be set by rclkmadmaxoft@gmail.com1-0/+11
2012-06-07Fixed a typo in grass spreading causing much of the "too many packets" error.madmaxoft@gmail.com1-5/+8
2012-06-06Grass spreads to adjacent dirt blocks. Doesn't check dest light yet.madmaxoft@gmail.com1-17/+52
2012-06-06Item-dropping code rewritten and centralized - now there's only one place to modify if we want to split or merge same-item drops: cWorld:SpawnItemPickups(). Also, mined blocks can now drop more items, and they recognize if they're being mined by the correct tool.madmaxoft@gmail.com1-9/+13
2012-06-01Fixed a nasty int overflow bug in blockticking code ( http://forum.mc-server.org/showthread.php?tid=457 )madmaxoft@gmail.com1-3/+4
2012-05-31Fixed melons and pumpkins generating in a wrong place.madmaxoft@gmail.com1-1/+1
2012-05-30Added support for SetNextBlockTick() function callable from Luamadmaxoft@gmail.com1-18/+12
2012-05-30Melon and pumpkin stems now grow melons and pumpkinsmadmaxoft@gmail.com1-1/+1
2012-05-30Fixed blocktick distributionmadmaxoft@gmail.com1-6/+14
2012-05-30Farmland gets hydrated and dehydrated. Fixed an off-by-one error in neighbor-chunk manipulation.madmaxoft@gmail.com1-3/+75
2012-05-30Fixed a crash when chunks were loaded / generated with entities ( http://forum.mc-server.org/showthread.php?tid=450 )madmaxoft@gmail.com1-26/+4
2012-05-29Added code for the chunks to manipulate their neighbors while ticking. Also added some basic farming support - melon and pumpkin growing code. Untested and untestable so far, will test and fix later.madmaxoft@gmail.com1-189/+176
2012-05-28Chests and Furnaces are now saved properly into Anvil scheme.madmaxoft@gmail.com1-1/+1
2012-05-25Merged the composable_generator branch into the trunkmadmaxoft@gmail.com1-101/+143
2012-05-08Fixed two "bottlenecks" found using profiling - MakeIndex() instead of MakeIndexNoCheck()madmaxoft@gmail.com1-2/+2
2012-04-10Added the "/regeneratechunk" command that regenerates either current chunk or a chunk specified with x, z parameters. TODO: permissions - we don't want guests erasing our chunks!madmaxoft@gmail.com1-29/+15
2012-03-24Removed the split between 1.2.3 and 1.1, left only 1.2.3 codemadmaxoft@gmail.com1-13/+0
2012-03-22Fixed a deadlock by removing clients from all chunks upon their exit, not using the clients chunklists.madmaxoft@gmail.com1-8/+17
2012-03-14Unified the chunk data to use the BLOCKDATA datatype.madmaxoft@gmail.com1-7/+7
2012-03-14Split chunk data into separate arrays; decoupled most sources from cChunk.h dependencymadmaxoft@gmail.com1-126/+135
2012-03-10Using references instead of pointers for sending packetsmadmaxoft@gmail.com1-1/+1
2012-03-10Fixed mob spawn packet for 1.2 client, now client doesn't bail out when mobs are turned onmadmaxoft@gmail.com1-2/+3
2012-03-10Was using "#else if" which is not valid apparently, now using "#elif"faketruth1-1/+1
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!faketruth1-0/+4
2012-03-10Using more of the index functions in cChunk, so it should be easy enough to flip the axis ordering nowfaketruth1-76/+61
2012-03-09cClientHandles have a unique ID now to distinguish themfaketruth1-9/+9
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.com1-62/+53
2012-03-04The world can now truly be made higher by incrementing cChunk::c_ChunkHeight to 256. !!HOWEVER THIS WILL DESTROY YOUR SAVED WORLD!!faketruth1-1/+1
2012-03-04Changed signed char to unsigned char in block packets, so we can receive height up to 255faketruth1-9/+16
2012-03-03Got rid of some hardcoded numbers, now using hardcoded variables! woofaketruth1-87/+87
2012-03-02Finally got the multiblock packet working! It seems the byte order was wrongfaketruth1-5/+3
2012-03-02MultiBlock packet is working partly.. I really don't understand what's wrong with this packet :/faketruth1-0/+13
2012-03-01New redstone simulator. Should work without crashes!faketruth1-1/+15
2012-02-28Server uses ~40% less CPU nowfaketruth1-86/+92
2012-02-28Chunk now has an indicator of load failure; Chunk generator uses cChunkStaymadmaxoft@gmail.com1-0/+16
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.com1-1/+13
2012-02-23Plain pointer cChunkPtr finishing touches; removed cChunk's critical sectionsmadmaxoft@gmail.com1-162/+14
2012-02-23cChunk: removed unused codemadmaxoft@gmail.com1-6/+0
2012-02-22Added some asserts to trace a bugfaketruth1-1/+5
2012-02-21Removed cChunkPtrs from everywhere but internal cChunkMap usage. Now we should finally be threadsafe :)madmaxoft@gmail.com1-5/+6
2012-02-21Fixed heightmap optimization from rev 302; removed a few more cChunkPtrsmadmaxoft@gmail.com1-16/+42
2012-02-21Optimized hightmap recalc when setting a chunk's blockmadmaxoft@gmail.com1-7/+31
2012-02-20Removed some more cChunkPtr usagemadmaxoft@gmail.com1-3/+7
2012-02-20Using own ASSERT() that logs to filefaketruth1-5/+5
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.com1-8/+28
2012-02-18Re-implemented tree-growing. May produce artefacts on old-world / new-world boundaries.madmaxoft@gmail.com1-0/+10
2012-02-18Thread-safe chunk generation, storage and generator are queried for progress while initializing servermadmaxoft@gmail.com1-8/+8
2012-02-16cWorldGenerator speedup - doesn't call GetChunk() anymore, not queueing the chunk it's generating to be loaded recursively.madmaxoft@gmail.com1-5/+6
2012-02-16Marking chunk dirty after generatingmadmaxoft@gmail.com1-0/+2
2012-02-16Heightmap is properly generated after loading chunks now, so /spawn and /top should work properly againfaketruth1-0/+2
2012-02-16Chunk is now marked as dirty; saving only dirty chunks; rewritten load / save not to use cChunkPtr; set VC2008 project to level4 warnings; block entities are now loaded and saved properlymadmaxoft@gmail.com1-7/+146
2012-02-15Restored chest and furnace functionality as it was (it's basically working but joined chests show single-chest window)madmaxoft@gmail.com1-0/+13
2012-02-13Rewritten most of the code for multithreading; still not 100%, but getting there. If this commit proves to be too problematic, we can always undo it.madmaxoft@gmail.com1-361/+343
2012-02-08Removed unused codemadmaxoft@gmail.com1-44/+113
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.com1-5/+8
2012-02-01Rewritten cAuthenticator to make use of the new cIsThread architecture - now authentication runs in a single separate thread for all clients;madmaxoft@gmail.com1-2/+2
2012-02-01AString logging fixmadmaxoft@gmail.com1-7/+7
2012-02-01sprintf() begone! Replaced with StringUtils' Printf()madmaxoft@gmail.com1-3/+3
2012-02-01Removed a few duplicate includesmadmaxoft@gmail.com1-2/+1
2012-01-30Fixed a problem in cCSLock (sorry); reverted cChunkmadmaxoft@gmail.com1-3/+3
2012-01-30Added a WebAdmin interface to view users their groups, and the permissions of groups.faketruth1-1/+1
2012-01-30More cFile cleanup; removed old format writing for block entitiesmadmaxoft@gmail.com1-176/+199
2012-01-29VC2008 / VC2010: Enabled precompiled header through Globals.h; the header included in every module in the project. Compilation optimization.madmaxoft@gmail.com1-10/+5
2012-01-26Working on a new plugin design with Lua. While retaining backwards compatibility of course...faketruth1-28/+28
2012-01-26Probably fixed a deadlock! http://www.mc-server.org/support/index.php?do=details&task_id=147faketruth1-2/+2
2012-01-23Cactus towers can be destroyed by removing the bottom blockfaketruth1-0/+1
2012-01-19Terrain generation is synchronous again, async generation has bugs.faketruth1-43/+13
2012-01-01Fixed the numchunks console command.faketruth1-0/+76
2011-12-31Made a couple of functions in cChunk inline, this should speed up several block operations on chunksfaketruth1-105/+8
2011-12-28This bug should be fixed now http://mc-server.org/support/index.php?do=details&task_id=112faketruth1-6/+44
2011-12-27Some kind of 'template' world generator that right now just generates an all dirt world. You can use this to test new algorithmsfaketruth1-2/+2
2011-12-26Players can switch worlds on the fly with the command /gotoworld [worldName]. This uses the function cPlayer::MoveToWorld()faketruth1-72/+72
2011-12-26- improved Simulator system lapayo94@gmail.com1-26/+1
2011-12-26 - Linux compatible fixes including updated makefilemtilden@gmail.com1-4/+5
2011-12-26Moved the actual world generation from cChunk.cpp to a more isolated file cWorldGenerator.cppfaketruth1-236/+3
2011-12-26Made some functions in cChunk and cNoise inline, this should significantly increase chunk generation speedfaketruth1-7/+0
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 :Ofaketruth1-21/+31
2011-12-22Digging leaves with shears now drops leaveslapayo94@gmail.com1-4/+31
2011-11-15Changed chunk generation so any surface sand with air underneath it will turn into sandstone to prevent most sand cave-ins due to odd cave placement.admin@omencraft.com1-12/+37
2011-11-10Fixed doors. I forgot to actually return proper Hex value. Started work on adding farmland, farming, and leaf decay support.admin@omencraft.com1-0/+5
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.com1-4/+4
2011-11-08Fixed bug in cChunk.cpp not calculating RedstoneCircuits at the correct positions. Also, forgot to mention you can now place colored wool.admin@omencraft.com1-2/+2
2011-11-07Updated redstone and pistons some mode. If you break an extended piston the piston extension will now also break. When a redstone device is broken by something other than a person the redstone circuit should now update.admin@omencraft.com1-4/+21
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.com1-10/+10
2011-11-05Change SetBlock to FastSetBlock in cRedstone.cpp and grass will now grow if any one hit block is above it.admin@omencraft.com1-6/+11
2011-11-02Fixed some "Entity was not found in any chunk!" warningsfaketruth1-10/+18
2011-11-01fixed player spawning in the ground.admin@omencraft.com1-1/+1
2011-10-31Prepared some parts of the code for multi world support, I created lots of TODO'sfaketruth1-33/+32
2011-10-25Using SSE instructions for noise (terrain generation)faketruth1-9/+9
2011-10-21Compiles for linuxfaketruth1-6/+9
2011-10-03MCServer c++ source filesfaketruth1-0/+1388