summaryrefslogtreecommitdiffstats
path: root/source (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Clients can join the server, but chunks are sent completely emptyfaketruth2012-03-012-0/+80
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@349 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Forgot to update packet size (though I'm not even sure it's used anymore)faketruth2012-03-011-2/+6
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@348 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Started carefully moving to 1.2.2faketruth2012-03-016-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
* New redstone simulator. Should work without crashes!faketruth2012-03-018-8/+650
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@345 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed the authenticator bugmadmaxoft@gmail.com2012-02-292-0/+9
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@344 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Making sure cClientHandle::m_Player was NULL after authentication completedfaketruth2012-02-291-0/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@343 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added validity checks to world broadcasting. Also added logging to cPlayer deletion to catch that stupid BugByBoo.madmaxoft@gmail.com2012-02-292-4/+12
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@342 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Improved threading performance by reducing thread-hopping in queue locks (cs unlocked before event set)madmaxoft@gmail.com2012-02-283-29/+41
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@341 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Setting the m_bDestroyed flag only after the cClienthandle is truly destroyed; cClientHandle's destructor now locks loaded chunk listsmadmaxoft@gmail.com2012-02-281-3/+10
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@340 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Server uses ~40% less CPU nowfaketruth2012-02-282-87/+93
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@339 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Linux compilation fix (y u no support const_iterator, gcc?)madmaxoft@gmail.com2012-02-281-1/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@338 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Chunk now has an indicator of load failure; Chunk generator uses cChunkStaymadmaxoft@gmail.com2012-02-289-6/+89
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@337 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Implemented synchronous chunk loading; optimized cChunkStay interface for speed (though still unused ;)madmaxoft@gmail.com2012-02-288-152/+342
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@336 0a769ca7-a7f5-676a-18bf-c427514a06d6
* ChunkGenerator: 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.com2012-02-281-6/+9
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@334 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Const-correctness for packet broadcasting (fixes GCC compilation)madmaxoft@gmail.com2012-02-284-6/+6
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@333 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fix for the perpetual load issuemadmaxoft@gmail.com2012-02-271-1/+7
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@332 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Implemented chunk loading without generating on load-failuremadmaxoft@gmail.com2012-02-263-16/+62
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@331 0a769ca7-a7f5-676a-18bf-c427514a06d6
* New 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.com2012-02-266-1/+152
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@330 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Attempt at fixing crashes with disconnecting playersmadmaxoft@gmail.com2012-02-266-18/+38
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@329 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Using 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.com2012-02-264-150/+253
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@328 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Extended SocketThreads for writing support (unusable in cClientHandle due to too many deadlock possibilities)madmaxoft@gmail.com2012-02-264-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
* Made the viewdistance settable by users and default in settings.ini. The default is 9.madmaxoft@gmail.com2012-02-235-28/+73
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@326 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Plain pointer cChunkPtr finishing touches; removed cChunk's critical sectionsmadmaxoft@gmail.com2012-02-234-176/+35
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@325 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Made cChunkPtr a plain old pointer again, since it's safe nowmadmaxoft@gmail.com2012-02-232-5/+7
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@324 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cChunk: removed unused codemadmaxoft@gmail.com2012-02-232-8/+0
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@323 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added cmdline parameters "/cdg" and "/cdf" for crashdump flags "globals" and "full memory"madmaxoft@gmail.com2012-02-231-2/+17
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@322 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Rewritten ore generation from scratch, using a different (much faster) algorithm. Chunk generation now about 2x faster :)madmaxoft@gmail.com2012-02-222-25/+111
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@321 0a769ca7-a7f5-676a-18bf-c427514a06d6
* That 2nd assert didn't make much sense...faketruth2012-02-221-1/+2
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@320 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added some asserts to trace a bugfaketruth2012-02-222-2/+6
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@319 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed a bug that no chunks were unloaded on the client. Now chunks are properly unloaded on the clients.faketruth2012-02-222-0/+7
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@318 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Noise function optimization (chunk generation now about 1.5x faster :)madmaxoft@gmail.com2012-02-223-10/+33
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@317 0a769ca7-a7f5-676a-18bf-c427514a06d6
* WorldGenerator: fixed small foliage - cacti now generate only at beaches, not underwater.madmaxoft@gmail.com2012-02-221-32/+33
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@316 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Lua seems to have trouble with a combination of overloaded functions and class inheritance, so I renamed TeleportTo( cEntity* ) to TeleportToEntityfaketruth2012-02-224-32/+53
| | | | | | /tp command should work again :) git-svn-id: http://mc-server.googlecode.com/svn/trunk@314 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed a potential deadlock in cChunkMap::m_CSLayers vs cWorld::m_CSAllEntitiesmadmaxoft@gmail.com2012-02-221-6/+8
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@313 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added a crude way of disabling redstone. It's necessary though, redstone is completely broken, crashes the server all the timefaketruth2012-02-225-158/+199
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@312 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added 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 :Pfaketruth2012-02-222-0/+18
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@311 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Restricted windows crash dump generating code to 32-bit platforms only due to inline assemblymadmaxoft@gmail.com2012-02-221-5/+6
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@307 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added code to produce dump files on Windows builds to aid with debugging server crashesmadmaxoft@gmail.com2012-02-211-0/+85
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@306 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Changed ASSERT() to not cause warnings during compilefaketruth2012-02-211-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
* Removed cChunkPtrs from everywhere but internal cChunkMap usage. Now we should finally be threadsafe :)madmaxoft@gmail.com2012-02-2110-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
* Fixed heightmap optimization from rev 302; removed a few more cChunkPtrsmadmaxoft@gmail.com2012-02-218-38/+146
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@303 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Optimized hightmap recalc when setting a chunk's blockmadmaxoft@gmail.com2012-02-211-7/+31
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@302 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed block-getting so that simulators work againmadmaxoft@gmail.com2012-02-216-24/+128
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@301 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Removed some more cChunkPtr usagemadmaxoft@gmail.com2012-02-2013-114/+372
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@298 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Using own ASSERT() that logs to filefaketruth2012-02-2021-59/+49
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@297 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed assertion bug in NamedEntitySpawn packet, it used to assert when item ID is 0, but now 0 is allowedfaketruth2012-02-191-1/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@296 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Substantial 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.com2012-02-186-45/+106
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@295 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed previous commit: forgot to remove a debugging settingmadmaxoft@gmail.com2012-02-181-3/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@294 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Re-implemented tree-growing. May produce artefacts on old-world / new-world boundaries.madmaxoft@gmail.com2012-02-1811-111/+205
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@293 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Thread-safe chunk generation, storage and generator are queried for progress while initializing servermadmaxoft@gmail.com2012-02-1816-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
* Logging: added thread ID to the log output in debug buildsmadmaxoft@gmail.com2012-02-183-7/+11
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@291 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Logging: added LOGD macro that logs only in debug buildsmadmaxoft@gmail.com2012-02-181-3/+22
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@290 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Moved stdarg.h inclusion into Globals.hmadmaxoft@gmail.com2012-02-183-5/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@289 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cIsThread: Added support for getting current thread IDmadmaxoft@gmail.com2012-02-182-0/+15
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@288 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added the skeleton of the cLightingThread objectmadmaxoft@gmail.com2012-02-172-0/+196
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@286 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Chunk coords mostly "upgraded" to include the Y coord for future compatibilitymadmaxoft@gmail.com2012-02-1711-67/+101
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@285 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Removed useless log messagesmadmaxoft@gmail.com2012-02-171-1/+0
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@284 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Lots of logging addedmadmaxoft@gmail.com2012-02-176-12/+45
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@282 0a769ca7-a7f5-676a-18bf-c427514a06d6
* git-svn-id: http://mc-server.googlecode.com/svn/trunk@281 0a769ca7-a7f5-676a-18bf-c427514a06d6faketruth2012-02-165-6/+6
|
* New server command "unload" to manually unload unused chunksmadmaxoft@gmail.com2012-02-162-3/+11
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@280 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cWorldGenerator speedup - doesn't call GetChunk() anymore, not queueing the chunk it's generating to be loaded recursively.madmaxoft@gmail.com2012-02-1611-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
* Got rid of dangerous GetEntity(), not using DoWithEntity()faketruth2012-02-165-53/+29
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@278 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Chunks are now marked as savedmadmaxoft@gmail.com2012-02-161-2/+10
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@277 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Marking chunk dirty after generatingmadmaxoft@gmail.com2012-02-161-0/+2
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@276 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cPlayer empty-handed spawn fixmadmaxoft@gmail.com2012-02-161-1/+2
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@275 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Heightmap is properly generated after loading chunks now, so /spawn and /top should work properly againfaketruth2012-02-161-0/+2
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@274 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Chunk 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.com2012-02-1623-154/+935
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@273 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Chunks are properly saved before being unloaded nowfaketruth2012-02-162-1/+11
| | | | | | numchunks server command works again git-svn-id: http://mc-server.googlecode.com/svn/trunk@272 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cSocket::GetErrorString() now also compiles on Cygwinfaketruth2012-02-161-1/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@270 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed logging in cServermadmaxoft@gmail.com2012-02-161-1/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@269 0a769ca7-a7f5-676a-18bf-c427514a06d6
* No longer using pointers for Vector3(f/d/i) in cEntity's and cTracerfaketruth2012-02-1512-288/+246
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@268 0a769ca7-a7f5-676a-18bf-c427514a06d6
* New players no longer cause an assertfaketruth2012-02-151-3/+3
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@267 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Can use the 'restart' command again. cAuthenticator no longer asserts because it properly stops when the server is stopped.faketruth2012-02-153-3/+16
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@266 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed a deadlock in WorldStoragefaketruth2012-02-151-3/+5
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@265 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed logging formatting error in cWorldmadmaxoft@gmail.com2012-02-151-1/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@264 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Restored chest and furnace functionality as it was (it's basically working but joined chests show single-chest window)madmaxoft@gmail.com2012-02-1513-104/+194
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@263 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Can now pass any argument to cWorld:ForEachPlayer in Lua! But I'm not even using it.. lolfaketruth2012-02-151-18/+46
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@262 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Slight cleanup - removed old code, some additional comments on dangerous functionsmadmaxoft@gmail.com2012-02-145-402/+13
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@261 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Got rid of cWorld::GetAllPlayers() and implemented ForEachPlayer() more or less in Luafaketruth2012-02-143-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
* Updated fluid simulators with geser's patch file!faketruth2012-02-147-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
* m_World was never set in cBlockEntity's, now it isfaketruth2012-02-141-0/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@255 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Apparently the Fire plugin is depreciated since it's implemented in C++ :Pfaketruth2012-02-141-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
* Fixed the same leak in FireSimulatorfaketruth2012-02-142-18/+18
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@253 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed a (pretty big) memory leak in cSandSimulatorfaketruth2012-02-142-15/+16
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@252 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Rewritten 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.com2012-02-1377-2687/+6689
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@251 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Removed unused codemadmaxoft@gmail.com2012-02-084-63/+126
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@249 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added total chunk count to webadminmadmaxoft@gmail.com2012-02-084-7/+133
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@248 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cPluginManager: slight cleanupmadmaxoft@gmail.com2012-02-081-178/+272
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@247 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cMonsterConfig: removed excessive loggingmadmaxoft@gmail.com2012-02-081-43/+62
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@246 0a769ca7-a7f5-676a-18bf-c427514a06d6
* MTRand class is not created in each tick, therefore much improving tick-thread time (now uses ~5 % CPU instead of one full core)madmaxoft@gmail.com2012-02-0810-71/+156
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@245 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cSocketThreads 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.com2012-02-088-219/+253
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@244 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cSocket: final localhost fix - made it a function (forgotten file)madmaxoft@gmail.com2012-02-071-3/+3
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@243 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cSocket: final localhost fix - made it a functionmadmaxoft@gmail.com2012-02-072-7/+15
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@242 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Temporary fix for Linux compilation. (gcc won't accept a function call in global var initialization)madmaxoft@gmail.com2012-02-071-1/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@241 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Rewritten all packets to use buffers instead of direct sockets, for future cSocketThreads compatibility.madmaxoft@gmail.com2012-02-07109-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
* cSocketThreads initial commit. Not yet tested and not yet integratedmadmaxoft@gmail.com2012-02-072-0/+619
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@239 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Slight cleanupmadmaxoft@gmail.com2012-02-072-5/+3
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@238 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cSocket: Added more functions that will be needed for the new cSocketThreadsmadmaxoft@gmail.com2012-02-072-8/+56
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@237 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cSocket: error reporting function now works correctly on GNU Linux; also includes the error number for all errorsmadmaxoft@gmail.com2012-02-061-8/+29
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@236 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cSocket: re-implemented the GetLastErrorString() function; win: error texts are now queried from the system rather than enumerated by the programmadmaxoft@gmail.com2012-02-062-25/+15
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@235 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Now showing proper error messages when sockets fail :)faketruth2012-02-055-18/+30
| | | | | | Crossplatform GetLastError function in cSocket git-svn-id: http://mc-server.googlecode.com/svn/trunk@234 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cSocket: added error logging to Bind() failuresmadmaxoft@gmail.com2012-02-051-39/+48
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@233 0a769ca7-a7f5-676a-18bf-c427514a06d6
* putting default settings back to defaultadmin@omencraft.com2012-02-041-2/+2
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@232 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed a bug in source/cClientHandle.hadmin@omencraft.com2012-02-044-6/+6
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@231 0a769ca7-a7f5-676a-18bf-c427514a06d6
* MCServer should be running fast again on Linux!! YAAAY!!faketruth2012-02-032-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
* cClientHandle: split packet handling into separate functions for claritymadmaxoft@gmail.com2012-02-032-989/+1238
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@229 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cClientHandle: gotten rid of the obnoxious m_pState, now using direct members insteadmadmaxoft@gmail.com2012-02-024-351/+405
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@228 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Socket-related assert fixesmadmaxoft@gmail.com2012-02-023-6/+30
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@227 0a769ca7-a7f5-676a-18bf-c427514a06d6
* tolua: 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.com2012-02-023-28/+29
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@225 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Removed nonsense "virtual inline" declaration from functionsmadmaxoft@gmail.com2012-02-027-28/+28
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@223 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cSocket API fix (possible invalid pointer)madmaxoft@gmail.com2012-02-026-45/+103
| | | | | | cMCLogger slight change (CS ptr -> member) git-svn-id: http://mc-server.googlecode.com/svn/trunk@222 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Rewritten cAuthenticator to make use of the new cIsThread architecture - now authentication runs in a single separate thread for all clients;madmaxoft@gmail.com2012-02-0124-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
* Added all current hooks to the new plugin structure.faketruth2012-02-014-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
* AString logging fix 2madmaxoft@gmail.com2012-02-017-21/+27
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@218 0a769ca7-a7f5-676a-18bf-c427514a06d6
* AString logging fixmadmaxoft@gmail.com2012-02-011-7/+7
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@217 0a769ca7-a7f5-676a-18bf-c427514a06d6
* sprintf() begone! Replaced with StringUtils' Printf()madmaxoft@gmail.com2012-02-0116-134/+189
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@216 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Removed a few duplicate includesmadmaxoft@gmail.com2012-02-0110-41/+28
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@215 0a769ca7-a7f5-676a-18bf-c427514a06d6
* new cIsThread object for thread encapsulationmadmaxoft@gmail.com2012-02-012-0/+225
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@214 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cEvent: fixed wrong errorchecking in win32 Set()madmaxoft@gmail.com2012-02-011-1/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@213 0a769ca7-a7f5-676a-18bf-c427514a06d6
* StringUtils: SplitString() fixmadmaxoft@gmail.com2012-02-011-2/+21
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@212 0a769ca7-a7f5-676a-18bf-c427514a06d6
* auto_ptr fix 2madmaxoft@gmail.com2012-02-011-1/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@211 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Introducing StringUtils - the place to be if you are a generic string routine :) No more sprintf()!madmaxoft@gmail.com2012-02-0113-105/+384
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@209 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed a sigsegv on *nix (cFile double-closing files)madmaxoft@gmail.com2012-02-011-0/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@208 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Plugins can now be enabled and disabled through WebAdminfaketruth2012-02-015-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
* Changed how Lua handles the (Post)Params in the HTTPRequest of a WebPluginfaketruth2012-01-317-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
* Slight code cleanup, no big changesmadmaxoft@gmail.com2012-01-313-45/+129
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@202 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Another cEvent fix, I wish I could get it finally rightmadmaxoft@gmail.com2012-01-311-0/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@201 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Hopefully fixed pthreads in cEvent (again)madmaxoft@gmail.com2012-01-312-1/+3
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@200 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cEvent class cleanup (single-event only, since multi-event wasn't used and wouldn't work on *nix anyway)madmaxoft@gmail.com2012-01-312-82/+124
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@199 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Linux 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.com2012-01-312-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
* Can now receive POST data in WebPlugins!faketruth2012-01-316-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
* Replaced most FILE operations with a cFile objectmadmaxoft@gmail.com2012-01-307-151/+210
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@196 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed a problem in cCSLock (sorry); reverted cChunkmadmaxoft@gmail.com2012-01-302-3/+9
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@195 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added a WebAdmin interface to view users their groups, and the permissions of groups.faketruth2012-01-308-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
* More cFile cleanup; removed old format writing for block entitiesmadmaxoft@gmail.com2012-01-3011-286/+343
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@193 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Initial cFile implementation (using stdio FILE) and test in cChunkMapmadmaxoft@gmail.com2012-01-304-86/+388
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@192 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added missing #ifdef _DEBUG in cCriticalSection.cpp faketruth2012-01-291-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
* Old code begone! ChunkMap cleanupmadmaxoft@gmail.com2012-01-294-373/+252
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@189 0a769ca7-a7f5-676a-18bf-c427514a06d6
* VC2008 / VC2010: Enabled precompiled header through Globals.h; the header included in every module in the project. Compilation optimization.madmaxoft@gmail.com2012-01-29172-326/+1051
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@188 0a769ca7-a7f5-676a-18bf-c427514a06d6
* ChunkGenerator: rewritten thread-locking using the new RAII CSLock classmadmaxoft@gmail.com2012-01-295-82/+210
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@186 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Now also compiles in Linuxfaketruth2012-01-281-0/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@184 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Converted entire Core plugin including WebAdmin interface to new plugin method/system/thingy and sexyfied it.faketruth2012-01-289-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
* MSVC 2008 Express compatibility: Added the projects, modified sources to compile. Tested on MSVC 2008 Express and MSVC 2010 Expressmadmaxoft@gmail.com2012-01-2764-87/+89
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@179 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Converted all of the Core plugin to the new plugin structure, except for the WebAdmin partfaketruth2012-01-272-21/+98
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@175 0a769ca7-a7f5-676a-18bf-c427514a06d6
* No longer hard coded Lua files in new plugin systemfaketruth2012-01-262-20/+406
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@173 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Working on a new plugin design with Lua. While retaining backwards compatibility of course...faketruth2012-01-267-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
* Probably fixed a deadlock! http://www.mc-server.org/support/index.php?do=details&task_id=147faketruth2012-01-261-2/+2
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@171 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Cactus towers can be destroyed by removing the bottom blockfaketruth2012-01-234-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
* Fixed the  sign bugfaketruth2012-01-221-2/+2
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@168 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Improved Core's WebAmin interface a bit.faketruth2012-01-224-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
* Bug FS#131 http://www.mc-server.org/support/index.php?do=details&task_id=131 should be fixedfaketruth2012-01-211-0/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@166 0a769ca7-a7f5-676a-18bf-c427514a06d6
* MCServer is now compatible with Minecraft client 1.1 (as long as the client is not using any mods/plugins I think)faketruth2012-01-205-6/+27
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@165 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Terrain generation is synchronous again, async generation has bugs.faketruth2012-01-1912-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
* Fixed crashing bug in cClientHandle::~cClientHandlefaketruth2012-01-021-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
* CreativeInventory Updatelapayo94@gmail.com2012-01-019-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
* Fixed the numchunks console command.faketruth2012-01-0110-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
* - implemented separated inventory for creative mode (cSurvivalInventory and cCreativeInventory)lapayo94@gmail.com2012-01-0116-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
* Chests, furnaces and dispensers face the correct way now.faketruth2012-01-011-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
* Made a couple of functions in cChunk inline, this should speed up several block operations on chunksfaketruth2011-12-315-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
* - Animals burn now when moving into lava or firelapayo94@gmail.com2011-12-293-7/+12
| | | | | | - Monster health is now working properly git-svn-id: http://mc-server.googlecode.com/svn/trunk@157 0a769ca7-a7f5-676a-18bf-c427514a06d6
* - Initial food handling by cedeelmtilden@gmail.com2011-12-295-13/+73
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@156 0a769ca7-a7f5-676a-18bf-c427514a06d6
* M$ BS...mtilden@gmail.com2011-12-291-1/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@155 0a769ca7-a7f5-676a-18bf-c427514a06d6
* - Chests open and close on clients when opened/closedmtilden@gmail.com2011-12-296-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
* - Pickups should now burn in firelapayo94@gmail.com2011-12-295-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
* - water slacks fire nowlapayo94@gmail.com2011-12-298-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
* - little performance improvement on the sand simulatorlapayo94@gmail.com2011-12-282-1/+9
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@151 0a769ca7-a7f5-676a-18bf-c427514a06d6
* - implemented the fire simulation in native c++ (cFireSimulator)lapayo94@gmail.com2011-12-2810-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
* - Fixed too fast actions kick for realmtilden@gmail.com2011-12-281-5/+5
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@149 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed some small memory leakslapayo94@gmail.com2011-12-283-0/+13
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@148 0a769ca7-a7f5-676a-18bf-c427514a06d6
* - Fixed ping displaying same for everyone, knew it was something I messed up with itr :(mtilden@gmail.com2011-12-281-1/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@147 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed PLI end white, made random mistake late night when I couldn't remember how I did it beforemtilden@gmail.com2011-12-281-1/+1
| | | | | | Thanks to FakeTruth git-svn-id: http://mc-server.googlecode.com/svn/trunk@146 0a769ca7-a7f5-676a-18bf-c427514a06d6
* This bug should be fixed now http://mc-server.org/support/index.php?do=details&task_id=112faketruth2011-12-281-6/+44
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@145 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Linux fixmtilden@gmail.com2011-12-281-1/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@144 0a769ca7-a7f5-676a-18bf-c427514a06d6
* - Didn't notice steak missing as wellmtilden@gmail.com2011-12-281-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
* - Added chicken to eatingmtilden@gmail.com2011-12-282-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
* Little improvement to save some cpu time but it´s still very heavy cpu loadlapayo94@gmail.com2011-12-282-1/+8
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@141 0a769ca7-a7f5-676a-18bf-c427514a06d6
* - Implemented Drops from Burning animalslapayo94@gmail.com2011-12-2819-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
* Users file was pretty messed up with mixed unix and windows line endings. The ini failed to parse correctly under cygwin.faketruth2011-12-273-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
* Fixed a little error in cPacket_PlayerListItem.cppfaketruth2011-12-271-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
* Vanity, just to set back to white after a short enough name for the ping image to not change colormtilden@gmail.com2011-12-271-1/+7
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@136 0a769ca7-a7f5-676a-18bf-c427514a06d6
* I'll lower my frequency of commits.. 1000 default ends up sent more often than calc'd packets.mtilden@gmail.com2011-12-271-1/+0
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@135 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Oops, accidentally left debug printmtilden@gmail.com2011-12-271-1/+0
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@134 0a769ca7-a7f5-676a-18bf-c427514a06d6
* - Added basic ping handling.mtilden@gmail.com2011-12-275-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
* Slightly cleaner block change interactions static in headermtilden@gmail.com2011-12-272-2/+4
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@130 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Set 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.com2011-12-271-2/+2
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@128 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Some kind of 'template' world generator that right now just generates an all dirt world. You can use this to test new algorithmsfaketruth2011-12-275-12/+55
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@127 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Players can switch worlds on the fly with the command /gotoworld [worldName]. This uses the function cPlayer::MoveToWorld()faketruth2011-12-2610-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
* - improved Simulator system lapayo94@gmail.com2011-12-2614-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
* - improved ClosestPlayerDetection (Really the closest now ;))lapayo94@gmail.com2011-12-262-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
* Fixed 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 nowfaketruth2011-12-261-9/+9
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@122 0a769ca7-a7f5-676a-18bf-c427514a06d6
* - Linux compatible fixes including updated makefilemtilden@gmail.com2011-12-2614-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
* - 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.com2011-12-262-7/+17
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@120 0a769ca7-a7f5-676a-18bf-c427514a06d6
* - Default Notchian Ping (static until ping implemented through keepalive send/receive)mtilden@gmail.com2011-12-262-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
* - 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.com2011-12-261-6/+10
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@118 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Moved the actual world generation from cChunk.cpp to a more isolated file cWorldGenerator.cppfaketruth2011-12-264-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
* - 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.com2011-12-265-11/+22
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@116 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Made some functions in cChunk and cNoise inline, this should significantly increase chunk generation speedfaketruth2011-12-267-73/+104
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@115 0a769ca7-a7f5-676a-18bf-c427514a06d6
* - Make Color was using 2 extra characters which took 2 characters off the 16 max (including color codes) for scoreboard displaymtilden@gmail.com2011-12-268-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
* - Fixed Bug #99 -> Mobs no longer bother you in creative modelapayo94@gmail.com2011-12-2540-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
* - fixed the code from the last commit :)lapayo94@gmail.com2011-12-252-5/+7
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@111 0a769ca7-a7f5-676a-18bf-c427514a06d6
* - Fixed a critical bug, which caused players to not getting spawned on the others clientlapayo94@gmail.com2011-12-252-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
* - Implemented function to check item categorylapayo94@gmail.com2011-12-253-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
* Refactored both simulators (water and lava) to make them more flexible and easier to modifylapayo94@gmail.com2011-12-256-549/+382
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@108 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Hold item is now dropped when inventory is closedlapayo94@gmail.com2011-12-254-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
* Code improvementslapayo94@gmail.com2011-12-258-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
* The missing file! cChunkGenerator.h/cppfaketruth2011-12-252-0/+195
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@105 0a769ca7-a7f5-676a-18bf-c427514a06d6
* - improved and simplified the door system (shorter, clearer)lapayo94@gmail.com2011-12-254-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
* Chunks 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 :Ofaketruth2011-12-2510-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
* Very alpha water physic for pickups (The swim now)lapayo94@gmail.com2011-12-244-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
* Max. players and MOTD are now changeable in the settings.inilapayo94@gmail.com2011-12-243-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
* Added thread names to cThread so when debugging in Visual Studio you actually know what thread you're looking atfaketruth2011-12-235-9/+55
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@100 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Digging leaves with shears now drops leaveslapayo94@gmail.com2011-12-227-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
* Fixes:lapayo94@gmail.com2011-12-2210-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
* Missed a class in r94 ;) Sorry guys :Dlapayo94@gmail.com2011-12-212-0/+96
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@95 0a769ca7-a7f5-676a-18bf-c427514a06d6
* - Crafting fixed in 1.0.0lapayo94@gmail.com2011-12-2142-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
* Changed 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.com2011-11-151-12/+37
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@93 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Put view distance back to 13. Didn't mean to change that.admin@omencraft.com2011-11-121-1/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@92 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Found and fixed a bug not letting users place blocks in water or lava.admin@omencraft.com2011-11-112-3/+8
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@91 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed logging in underground bug this time. A hack, but it works. :Dadmin@omencraft.com2011-11-101-4/+4
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@90 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Can now set gamemode via lua.admin@omencraft.com2011-11-105-4/+19
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@89 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Some more changes to redstone. admin@omencraft.com2011-11-101-12/+14
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@88 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Made block action sanity checks more robust, water buckets, lava buckets and empty buckets should all now work.admin@omencraft.com2011-11-106-26/+258
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@87 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed doors. I forgot to actually return proper Hex value. Started work on adding farmland, farming, and leaf decay support.admin@omencraft.com2011-11-102-6/+11
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@86 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added 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.com2011-11-103-5/+108
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@85 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Storms were WAY too frequent. I toned them down.admin@omencraft.com2011-11-101-4/+4
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@84 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added random weather that persists per world. Also added SetWeather, GetWeather, and CastThunderbolt to lua bindings.admin@omencraft.com2011-11-105-20/+191
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@83 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added m_IP to player class and binding to get IP for LUA. (Probably should use m_pState)admin@omencraft.com2011-11-096-3/+79
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@82 0a769ca7-a7f5-676a-18bf-c427514a06d6
* bugfix to redstone, it can climb walls again.admin@omencraft.com2011-11-092-16/+43
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@81 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Redstone 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.com2011-11-096-108/+298
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@80 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed world timefaketruth2011-11-082-1/+13
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@78 0a769ca7-a7f5-676a-18bf-c427514a06d6
* It's a Squirrel!!faketruth2011-11-0811-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
* Fixed bug in cChunk.cpp not calculating RedstoneCircuits at the correct positions. Also, forgot to mention you can now place colored wool.admin@omencraft.com2011-11-081-2/+2
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@75 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Updated 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.com2011-11-076-121/+238
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@74 0a769ca7-a7f5-676a-18bf-c427514a06d6
* More updates to cPiston.cpp. Piston action will now only be broadcasted to players who have the chunk with the moving piston loaded.admin@omencraft.com2011-11-071-2/+6
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@73 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added Sebi's changes to pistons and item drops.admin@omencraft.com2011-11-076-423/+172
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@72 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Pistons now generate noise and animate when moving.admin@omencraft.com2011-11-073-4/+50
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@71 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added three new packets and cleaned up cPacket_Thunderbolt.cpp... cPacket_BlockAction, cPacket_Explosion, and cPacket_SoundEffect.admin@omencraft.com2011-11-078-50/+232
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@70 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Redstone 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.com2011-11-063-194/+47
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@69 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Redstone 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.com2011-11-063-42/+232
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@68 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Patch 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.com2011-11-0612-276/+523
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@67 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Finished 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.com2011-11-063-48/+408
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@66 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Change SetBlock to FastSetBlock in cRedstone.cpp and grass will now grow if any one hit block is above it.admin@omencraft.com2011-11-052-22/+27
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@65 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added all the items up to Beta 1.9.5. Added pistons and piston class.admin@omencraft.com2011-11-055-18/+364
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@63 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added cRedstone to project filefaketruth2011-11-042-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
* Changed use of deprecated function.admin@omencraft.com2011-11-041-14/+19
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@53 0a769ca7-a7f5-676a-18bf-c427514a06d6
* celeaning up the mess I made of cRedstone.h. >.>admin@omencraft.com2011-11-041-77/+0
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@52 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added (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.com2011-11-045-25/+215
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@51 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed some redstone items and a bug that prevented floats from client to server packets reading correctly on 64 bit linux.admin@omencraft.com2011-11-035-14/+15
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@50 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added some redstone items.admin@omencraft.com2011-11-033-7/+54
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@49 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Updated the thunderbolt packet. Lightning and rain can be tested with a workbench and a chest. >:)admin@omencraft.com2011-11-033-11/+42
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@48 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added 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.com2011-11-026-7/+128
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@47 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed some "Entity was not found in any chunk!" warningsfaketruth2011-11-028-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
* Fixed player spawn teleport postion.admin@omencraft.com2011-11-021-1/+2
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@45 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed crash when client only sends a space in the chatfaketruth2011-11-021-0/+2
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@44 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Changed world gamemode location to world.ini for world based gamemodes.admin@omencraft.com2011-11-021-2/+4
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@43 0a769ca7-a7f5-676a-18bf-c427514a06d6
* fixed player spawning in the ground.admin@omencraft.com2011-11-013-6/+5
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@42 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Accidentally removed a line of codefaketruth2011-11-011-1/+2
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@41 0a769ca7-a7f5-676a-18bf-c427514a06d6
* You can now run multiple worlds by defining them in settings.ini . However there's no way to change worlds on the fly yetfaketruth2011-11-0116-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
* forogt to update all of cPlayer.cpp for player based gamemode.admin@omencraft.com2011-11-011-1/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@39 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Put 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.com2011-11-013-14/+56
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@38 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Players 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.com2011-11-012-3/+4
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@37 0a769ca7-a7f5-676a-18bf-c427514a06d6
* denotch map converter works! :Dadmin@omencraft.com2011-10-311-8/+9
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@36 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Player data is saved and loaded as human readable JSON now.faketruth2011-10-3110-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
* Prepared some parts of the code for multi world support, I created lots of TODO'sfaketruth2011-10-3140-206/+402
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@29 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Changed cChunkMat.cpp back to normal. Made more changes to the denotch map converter. Testing cNBTData parser.admin@omencraft.com2011-10-301-5/+0
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@21 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added 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.com2011-10-292-6/+11
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@20 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed a memory leakfaketruth2011-10-271-0/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@19 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Made several recomended changes. Gamemode is now world based. Need to add it to player.admin@omencraft.com2011-10-2611-19/+26
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@18 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Moved 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.com2011-10-263-8/+9
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@17 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Creative 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.com2011-10-265-5/+8
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@16 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added 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.com2011-10-268-6/+81
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@15 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Updated VS2010 project filesfaketruth2011-10-261-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
* Fixed bug in cMakeDir where it would only create directories named "world"faketruth2011-10-263-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
* added simple code for server side item durabilty on tool items that have durabilty. need to add block destroyed durability modifier.admin@omencraft.com2011-10-261-3/+70
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@12 0a769ca7-a7f5-676a-18bf-c427514a06d6
* git-svn-id: http://mc-server.googlecode.com/svn/trunk@10 0a769ca7-a7f5-676a-18bf-c427514a06d6admin@omencraft.com2011-10-2629-10/+1707
|
* Using SSE instructions for noise (terrain generation)faketruth2011-10-253-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
* Abstracted sockets some more to ensure the same behavior over the entire program and on multiple platforms.faketruth2011-10-236-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
* Found something that calls a function when a segfault happens, might be useful.faketruth2011-10-221-4/+16
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@7 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Compiles for linuxfaketruth2011-10-2117-24/+63
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@6 0a769ca7-a7f5-676a-18bf-c427514a06d6
* MCServer c++ source filesfaketruth2011-10-03233-0/+35759
git-svn-id: http://mc-server.googlecode.com/svn/trunk@3 0a769ca7-a7f5-676a-18bf-c427514a06d6