madmaxoft@gmail.com
e7731242c1
Using references instead of pointers for sending packets
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@394 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-10 21:34:47 +00:00
madmaxoft@gmail.com
732b7349fa
Fixed mob spawn packet for 1.2 client, now client doesn't bail out when mobs are turned on
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@393 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-10 19:30:06 +00:00
madmaxoft@gmail.com
1a5ebb44aa
Fixed *nix threading issue;
...
Thread objects now use variable names consistent with MCS convention;
Fixed a few *nix threading cornercases
git-svn-id: http://mc-server.googlecode.com/svn/trunk@392 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-10 17:37:00 +00:00
faketruth
e5b91a8d97
Was using "#else if" which is not valid apparently, now using "#elif"
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@391 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-10 13:49:40 +00:00
faketruth
68f3ea56bd
You can change axis ordering by setting AXIS_ORDER to AXIS_ORDER_XZY in cChunk.h !THIS WILL SCREW UP YOUR WORLDS THOUGH!
...
Still need to update world storage schemes, converters and such
git-svn-id: http://mc-server.googlecode.com/svn/trunk@390 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-10 02:39:36 +00:00
faketruth
62ba8f5a20
Using more of the index functions in cChunk, so it should be easy enough to flip the axis ordering now
...
Added some more functions that use Vector3i for block coordinates in cChunk
git-svn-id: http://mc-server.googlecode.com/svn/trunk@389 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-10 00:25:05 +00:00
faketruth
f43b65cf53
cClientHandles have a unique ID now to distinguish them
...
cAuthenticator uses unique client ID for authentication
Changed the kick function used by cAuthenticator to take a client ID instead of name, so the correct user is kicked
Using callback reference instead of pointer in GetChunkData and affiliates
GetChunkData returns false when failed, and true when succeeded
Renamed entity type enums to something prettier
Exposed some functions to Lua
git-svn-id: http://mc-server.googlecode.com/svn/trunk@388 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-09 13:42:28 +00:00
madmaxoft@gmail.com
11810e05e4
Using the _DEBUG macro for *nix debug builds as well; trying to force 8-byte alignment on critical sections ( http://forum.mc-server.org/showthread.php?tid=384 )
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@387 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-09 09:39:48 +00:00
madmaxoft@gmail.com
7219e74c7c
Anvil format: loading chests' contents.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@385 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-07 22:09:55 +00:00
madmaxoft@gmail.com
4544d5d3b9
ChunkSender: Fixed a potential crash: removing a client means that no Send() is called on that client anymore
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@384 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-07 20:06:18 +00:00
madmaxoft@gmail.com
0cee2428c1
WSSCompact: fixed switched version values (!); removed unused methods
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@383 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-07 20:03:44 +00:00
faketruth
787382caf8
Fixed bug where cPlayer's cClientHandle was used after cPlayer was destroyed http://forum.mc-server.org/showthread.php?tid=380
...
Also removed the SetClientHandle() function from cPlayer
Added a Destroyed() function to cEntity that is called ONLY ONCE after an entity has been 'destroyed'
Cleaned up some code, using enums for GameMode and Weather and replaced some 'const char *' with 'const AString &'
Exposed some more functions to Lua
git-svn-id: http://mc-server.googlecode.com/svn/trunk@382 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-07 13:36:30 +00:00
madmaxoft@gmail.com
d63b092e02
No need to reset zlib (copypasta error)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@381 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-07 11:31:54 +00:00
madmaxoft@gmail.com
69a4ee5383
Added the Anvil level format (MCA) support, read-only for the time being. Now MCS can read your worlds from the official server :)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@380 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-07 11:28:24 +00:00
faketruth
bae54ee7bd
Sticky pistons should work as well now
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@379 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-06 22:17:36 +00:00
madmaxoft@gmail.com
b20fa171a4
Added a little documentation on ChunkSender.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@378 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-06 21:58:32 +00:00
faketruth
944dec3a4e
Fixed redstone repeater bug where it could not get the direction when it has delay bits set
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@377 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-06 21:56:12 +00:00
madmaxoft@gmail.com
3d0eced7e7
ChunkSender won't send NULL packets anymore
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@376 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-06 21:48:45 +00:00
madmaxoft@gmail.com
7ee0667b75
Fixed rev 373 not compiling on linux
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@375 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-06 21:32:22 +00:00
faketruth
01577bed9d
Yay redstone repeaters!
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@374 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-06 21:06:51 +00:00
madmaxoft@gmail.com
5e4e89b6ee
World storage names are now case-INsensitive
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@373 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-06 19:40:05 +00:00
madmaxoft@gmail.com
e463ddc500
That was not a good place to use ARRAYCOUNT()
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@372 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-06 14:54:31 +00:00
madmaxoft@gmail.com
8cdd63f06c
Fixed rev368's ChunkSender, now sends properly even chunks that are loaded. Fixed a deadlock in cClientHandle vs TickThread over cClientHandle::m_CSChunkLists
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@371 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-06 14:52:44 +00:00
faketruth
ea1ecd36db
Fixed bug FS#157 http://mc-server.org/support/index.php?do=details&task_id=157
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@370 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-06 13:25:14 +00:00
madmaxoft@gmail.com
0df305e226
Fixed a potential deadlock ( http://forum.mc-server.org/showthread.php?tid=374 )
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@369 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-05 17:15:56 +00:00
madmaxoft@gmail.com
e4043be593
Using a fixed-size array instead of AString for conversion. Conversion now runs ~10x faster :) (in debug mode)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@368 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-05 17:00:35 +00:00
madmaxoft@gmail.com
01c5d6e128
WSS conversion quickfix: reserving memory so that AString doesn't need to re-alloc (but still uses painfully slow push_back()s )
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@366 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-05 16:43:06 +00:00
madmaxoft@gmail.com
4d65ffffc0
ChunkSender: Chunks are now compressed and sent to clients from a separate threads, proper passive waiting between threads. Not much tested, just appears to work :)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@365 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-05 16:41:57 +00:00
faketruth
a655d7fdae
Removed redstone debugging: powered dirt blocks change into stone
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@364 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-04 16:59:39 +00:00
faketruth
ac5f1e8f30
Yay tiny commits XD fixed % sign
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@363 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-04 16:19:49 +00:00
faketruth
e1b9fb1ab4
Lowered the amount of logging while converting chunks
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@362 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-04 16:18:32 +00:00
faketruth
85ecca1cfa
Converted pak files were not marked 'dirty' and wouldn't be saved. Fixed now :)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@361 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-04 16:15:04 +00:00
faketruth
9b7675f0e1
Forcing the use of the new redstone simulator
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@359 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-04 16:04:42 +00:00
faketruth
95eb3a7bd7
Should have complete support for 256 blocks high worlds. Old save files are converted to new ones at load.
...
BACK UP YOUR WORLD!
git-svn-id: http://mc-server.googlecode.com/svn/trunk@358 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-04 15:59:10 +00:00
faketruth
f1f762c4fa
The world can now truly be made higher by incrementing cChunk::c_ChunkHeight to 256. !!HOWEVER THIS WILL DESTROY YOUR SAVED WORLD!!
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@357 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-04 14:09:35 +00:00
faketruth
fb7c60ec11
Changed signed char to unsigned char in block packets, so we can receive height up to 255
...
Blocks placed above 128 limit don't become obsidian anymore. This was due to the cChunk::MakeIndex() function return 0 when outside of bounds, it now returns an 'error constant'
git-svn-id: http://mc-server.googlecode.com/svn/trunk@356 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-04 13:54:33 +00:00
faketruth
ad89cf88ba
Got rid of some hardcoded numbers, now using hardcoded variables! woo
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@355 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-03 20:55:16 +00:00
faketruth
f7b29dc727
That should not have been committed...
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@354 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-02 14:09:52 +00:00
faketruth
5179588b65
Chunk light and metadata are also sent now, should take a load off of the client
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@353 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-02 13:58:31 +00:00
faketruth
eceead8394
Finally got the multiblock packet working! It seems the byte order was wrong
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@352 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-02 13:41:42 +00:00
faketruth
4dda2a5c2b
MultiBlock packet is working partly.. I really don't understand what's wrong with this packet :/
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@351 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-02 01:22:06 +00:00
faketruth
a2f6ab93b6
Chunks are successfully streamed to clients (in a bad a slow way, but whatever)
...
Fixed respawn packet for 1.2.2
git-svn-id: http://mc-server.googlecode.com/svn/trunk@350 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-01 18:56:56 +00:00
faketruth
d24c07a550
Clients can join the server, but chunks are sent completely empty
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@349 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-01 18:08:53 +00:00
faketruth
4baa9e2709
Forgot to update packet size (though I'm not even sure it's used anymore)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@348 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-01 17:14:23 +00:00
faketruth
957ef3b297
Started carefully moving to 1.2.2
...
Clients can get up to the login packet, after which the server tries to send chunks but in the wrong format and the client disconnects
git-svn-id: http://mc-server.googlecode.com/svn/trunk@347 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-01 17:07:41 +00:00
faketruth
867fc8ee0d
New redstone simulator. Should work without crashes!
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@345 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-01 15:18:59 +00:00
madmaxoft@gmail.com
93d73ac520
Fixed the authenticator bug
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@344 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-29 20:25:11 +00:00
faketruth
bba824a1c6
Making sure cClientHandle::m_Player was NULL after authentication completed
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@343 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-29 13:40:40 +00:00
madmaxoft@gmail.com
94132159be
Added validity checks to world broadcasting. Also added logging to cPlayer deletion to catch that stupid BugByBoo.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@342 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-29 08:40:15 +00:00
madmaxoft@gmail.com
5d0da9a2c0
Improved threading performance by reducing thread-hopping in queue locks (cs unlocked before event set)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@341 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-28 16:59:59 +00:00
madmaxoft@gmail.com
a4503ddb77
Setting the m_bDestroyed flag only after the cClienthandle is truly destroyed; cClientHandle's destructor now locks loaded chunk lists
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@340 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-28 14:58:07 +00:00
faketruth
ac117959d3
Server uses ~40% less CPU now
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@339 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-28 14:22:03 +00:00
madmaxoft@gmail.com
0f88ed7c72
Linux compilation fix (y u no support const_iterator, gcc?)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@338 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-28 12:37:46 +00:00
madmaxoft@gmail.com
013ae71c87
Chunk now has an indicator of load failure; Chunk generator uses cChunkStay
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@337 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-28 12:11:14 +00:00
madmaxoft@gmail.com
230f98a774
Implemented synchronous chunk loading; optimized cChunkStay interface for speed (though still unused ;)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@336 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-28 10:45:53 +00:00
madmaxoft@gmail.com
67ffb8a1da
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)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@334 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-28 10:01:42 +00:00
madmaxoft@gmail.com
2c9198b208
Const-correctness for packet broadcasting (fixes GCC compilation)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@333 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-28 08:10:51 +00:00
madmaxoft@gmail.com
dee0a12029
Fix for the perpetual load issue
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@332 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-27 14:23:16 +00:00
madmaxoft@gmail.com
1f88db187b
Implemented chunk loading without generating on load-failure
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@331 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-26 16:46:23 +00:00
madmaxoft@gmail.com
b902546863
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.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@330 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-26 16:15:09 +00:00
madmaxoft@gmail.com
7268a70902
Attempt at fixing crashes with disconnecting players
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@329 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-26 12:55:42 +00:00
madmaxoft@gmail.com
0e33c919dd
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 :)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@328 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-26 00:36:51 +00:00
madmaxoft@gmail.com
a14e015354
Extended SocketThreads for writing support (unusable in cClientHandle due to too many deadlock possibilities)
...
Extended the range of ignored packets in pre-game client states (fixes connection issues with some mods installed)
git-svn-id: http://mc-server.googlecode.com/svn/trunk@327 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-25 23:48:28 +00:00
madmaxoft@gmail.com
bf19f7ae9c
Made the viewdistance settable by users and default in settings.ini. The default is 9.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@326 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-23 22:51:03 +00:00
madmaxoft@gmail.com
062b38b8b0
Plain pointer cChunkPtr finishing touches; removed cChunk's critical sections
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@325 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-23 21:21:37 +00:00
madmaxoft@gmail.com
9d3b837461
Made cChunkPtr a plain old pointer again, since it's safe now
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@324 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-23 21:02:38 +00:00
madmaxoft@gmail.com
8f85b9c625
cChunk: removed unused code
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@323 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-23 11:38:10 +00:00
madmaxoft@gmail.com
4455a1643d
Added cmdline parameters "/cdg" and "/cdf" for crashdump flags "globals" and "full memory"
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@322 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-23 11:37:53 +00:00
madmaxoft@gmail.com
8cfcc2915c
Rewritten ore generation from scratch, using a different (much faster) algorithm. Chunk generation now about 2x faster :)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@321 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-22 21:20:20 +00:00
faketruth
3de5480191
That 2nd assert didn't make much sense...
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@320 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-22 20:40:32 +00:00
faketruth
3ca9b52ab2
Added some asserts to trace a bug
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@319 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-22 20:33:33 +00:00
faketruth
6015b59f13
Fixed a bug that no chunks were unloaded on the client. Now chunks are properly unloaded on the clients.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@318 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-22 19:31:30 +00:00
madmaxoft@gmail.com
1cb756cbf2
Noise function optimization (chunk generation now about 1.5x faster :)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@317 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-22 17:04:04 +00:00
madmaxoft@gmail.com
a40ed8bd0d
WorldGenerator: fixed small foliage - cacti now generate only at beaches, not underwater.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@316 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-22 16:11:10 +00:00
faketruth
41d55ef86b
Lua seems to have trouble with a combination of overloaded functions and class inheritance, so I renamed TeleportTo( cEntity* ) to TeleportToEntity
...
/tp command should work again :)
git-svn-id: http://mc-server.googlecode.com/svn/trunk@314 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-22 15:46:38 +00:00
madmaxoft@gmail.com
1d1b0fd00d
Fixed a potential deadlock in cChunkMap::m_CSLayers vs cWorld::m_CSAllEntities
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@313 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-22 15:45:00 +00:00
faketruth
d9c25a161e
Added a crude way of disabling redstone. It's necessary though, redstone is completely broken, crashes the server all the time
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@312 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-22 15:35:10 +00:00
faketruth
42a3cd60d4
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 :P
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@311 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-22 15:15:44 +00:00
madmaxoft@gmail.com
e2e261dd17
Restricted windows crash dump generating code to 32-bit platforms only due to inline assembly
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@307 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-22 08:06:56 +00:00
madmaxoft@gmail.com
16da9e07ae
Added code to produce dump files on Windows builds to aid with debugging server crashes
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@306 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-21 21:09:42 +00:00
faketruth
be0a659153
Changed ASSERT() to not cause warnings during compile
...
Added VERIFY(); it's the same as ASSERT() but also works in release builds
VS2010 project uses warning level 4
git-svn-id: http://mc-server.googlecode.com/svn/trunk@305 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-21 16:42:24 +00:00
madmaxoft@gmail.com
b653e6a012
Removed cChunkPtrs from everywhere but internal cChunkMap usage. Now we should finally be threadsafe :)
...
Also fixed a threading issue when a player connecting might have gotten stuck in "Downloading world" forever
git-svn-id: http://mc-server.googlecode.com/svn/trunk@304 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-21 16:27:30 +00:00
madmaxoft@gmail.com
f0145ee9fa
Fixed heightmap optimization from rev 302; removed a few more cChunkPtrs
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@303 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-21 15:18:02 +00:00
madmaxoft@gmail.com
da4afc0cf3
Optimized hightmap recalc when setting a chunk's block
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@302 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-21 13:44:06 +00:00
madmaxoft@gmail.com
b4a68e58a9
Fixed block-getting so that simulators work again
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@301 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-21 12:29:05 +00:00
madmaxoft@gmail.com
d592882fe0
Removed some more cChunkPtr usage
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@298 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-20 16:39:00 +00:00
faketruth
0b616909e3
Using own ASSERT() that logs to file
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@297 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-19 23:00:00 +00:00
faketruth
df39f12e30
Fixed assertion bug in NamedEntitySpawn packet, it used to assert when item ID is 0, but now 0 is allowed
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@296 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-19 19:31:38 +00:00
madmaxoft@gmail.com
3a8d2aa421
Substantial cWorld::FastSetBlock() speed up by queueing all such calls and processing them later chunk-wise (makes growing trees in the generator fast again)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@295 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-18 20:10:57 +00:00
madmaxoft@gmail.com
993bdab1e8
Fixed previous commit: forgot to remove a debugging setting
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@294 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-18 19:20:05 +00:00
madmaxoft@gmail.com
76a92a21d1
Re-implemented tree-growing. May produce artefacts on old-world / new-world boundaries.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@293 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-18 19:18:16 +00:00
madmaxoft@gmail.com
499745c1c7
Thread-safe chunk generation, storage and generator are queried for progress while initializing server
...
Note that this commit breaks foliage generation - there are no trees in the chunks generated!
git-svn-id: http://mc-server.googlecode.com/svn/trunk@292 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-18 17:53:22 +00:00
madmaxoft@gmail.com
57dedd585c
Logging: added thread ID to the log output in debug builds
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@291 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-18 17:51:34 +00:00
madmaxoft@gmail.com
a0c29514d2
Logging: added LOGD macro that logs only in debug builds
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@290 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-18 17:49:02 +00:00
madmaxoft@gmail.com
b173748c45
Moved stdarg.h inclusion into Globals.h
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@289 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-18 17:47:27 +00:00
madmaxoft@gmail.com
d2b229d227
cIsThread: Added support for getting current thread ID
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@288 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-18 17:43:20 +00:00
madmaxoft@gmail.com
7a9925f982
Added the skeleton of the cLightingThread object
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@286 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-17 18:24:34 +00:00
madmaxoft@gmail.com
510133bd35
Chunk coords mostly "upgraded" to include the Y coord for future compatibility
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@285 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-17 17:56:25 +00:00
madmaxoft@gmail.com
a97774624a
Removed useless log messages
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@284 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-17 13:34:16 +00:00
madmaxoft@gmail.com
71097aa49b
Lots of logging added
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@282 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-17 11:40:14 +00:00
faketruth
4a7883a5e3
git-svn-id: http://mc-server.googlecode.com/svn/trunk@281 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16 22:28:19 +00:00
madmaxoft@gmail.com
eefe71f593
New server command "unload" to manually unload unused chunks
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@280 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16 19:32:31 +00:00
madmaxoft@gmail.com
2928cb6853
cWorldGenerator speedup - doesn't call GetChunk() anymore, not queueing the chunk it's generating to be loaded recursively.
...
cChunk fix - setting a block to the same value doesn't mark chunk dirty (resulted in un-unloadable chunks)
git-svn-id: http://mc-server.googlecode.com/svn/trunk@279 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16 17:45:26 +00:00
faketruth
008addf5d7
Got rid of dangerous GetEntity(), not using DoWithEntity()
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@278 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16 17:20:28 +00:00
madmaxoft@gmail.com
415d4eaa68
Chunks are now marked as saved
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@277 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16 16:50:11 +00:00
madmaxoft@gmail.com
44a6fd20c4
Marking chunk dirty after generating
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@276 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16 15:53:52 +00:00
madmaxoft@gmail.com
cd2bb55176
cPlayer empty-handed spawn fix
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@275 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16 15:51:40 +00:00
faketruth
bb396c8cc0
Heightmap is properly generated after loading chunks now, so /spawn and /top should work properly again
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@274 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16 15:40:38 +00:00
madmaxoft@gmail.com
423f49d175
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 properly
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@273 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16 13:42:35 +00:00
faketruth
1c4122313f
Chunks are properly saved before being unloaded now
...
numchunks server command works again
git-svn-id: http://mc-server.googlecode.com/svn/trunk@272 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16 13:23:54 +00:00
faketruth
85db35a3ba
cSocket::GetErrorString() now also compiles on Cygwin
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@270 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16 11:15:00 +00:00
madmaxoft@gmail.com
3c4bfd9799
Fixed logging in cServer
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@269 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16 09:35:33 +00:00
faketruth
d15d40ad69
No longer using pointers for Vector3(f/d/i) in cEntity's and cTracer
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@268 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-15 22:50:00 +00:00
faketruth
57a97e8036
New players no longer cause an assert
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@267 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-15 22:11:56 +00:00
faketruth
7a26fbe471
Can use the 'restart' command again. cAuthenticator no longer asserts because it properly stops when the server is stopped.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@266 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-15 21:47:21 +00:00
faketruth
5958478c59
Fixed a deadlock in WorldStorage
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@265 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-15 21:35:59 +00:00
madmaxoft@gmail.com
01341e2788
Fixed logging formatting error in cWorld
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@264 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-15 14:26:37 +00:00
madmaxoft@gmail.com
1aebcea095
Restored chest and furnace functionality as it was (it's basically working but joined chests show single-chest window)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@263 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-15 14:22:44 +00:00
faketruth
5e1033c567
Can now pass any argument to cWorld:ForEachPlayer in Lua! But I'm not even using it.. lol
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@262 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-15 13:16:42 +00:00
madmaxoft@gmail.com
19e711a1e3
Slight cleanup - removed old code, some additional comments on dangerous functions
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@261 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-14 21:09:14 +00:00
faketruth
e7ea352f41
Got rid of cWorld::GetAllPlayers() and implemented ForEachPlayer() more or less in Lua
...
Core now uses ForEachPlayer() to interact with connected players
git-svn-id: http://mc-server.googlecode.com/svn/trunk@260 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-14 19:14:23 +00:00
faketruth
9f38c219e2
Updated fluid simulators with geser's patch file!
...
Fluids should behave more like Minecraft's fluids, and lava+water creates stone/cobble/obsidian!
git-svn-id: http://mc-server.googlecode.com/svn/trunk@257 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-14 13:37:13 +00:00
faketruth
5aeae0fd6d
m_World was never set in cBlockEntity's, now it is
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@255 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-14 13:15:09 +00:00
faketruth
dcce79b24d
Apparently the Fire plugin is depreciated since it's implemented in C++ :P
...
Using std::list instead of std::vector for fire, I think this would be faster due to all the adding and removing blocks from lists. Correct me if I'm wrong
git-svn-id: http://mc-server.googlecode.com/svn/trunk@254 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-14 12:54:54 +00:00
faketruth
504803cb6d
Fixed the same leak in FireSimulator
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@253 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-14 12:29:39 +00:00
faketruth
eaa17b6a84
Fixed a (pretty big) memory leak in cSandSimulator
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@252 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-14 12:23:02 +00:00
madmaxoft@gmail.com
4f17362aeb
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.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@251 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-13 21:47:03 +00:00
madmaxoft@gmail.com
10752d2f35
Removed unused code
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@249 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-08 19:49:57 +00:00
madmaxoft@gmail.com
a204e33250
Added total chunk count to webadmin
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@248 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-08 18:57:04 +00:00
madmaxoft@gmail.com
356981a51d
cPluginManager: slight cleanup
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@247 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-08 17:38:02 +00:00
madmaxoft@gmail.com
6651343261
cMonsterConfig: removed excessive logging
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@246 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-08 17:14:12 +00:00
madmaxoft@gmail.com
32880153ab
MTRand class is not created in each tick, therefore much improving tick-thread time (now uses ~5 % CPU instead of one full core)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@245 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-08 12:36:54 +00:00
madmaxoft@gmail.com
c82c636d8c
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.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@244 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-08 10:02:46 +00:00
madmaxoft@gmail.com
dcd82b6988
cSocket: final localhost fix - made it a function (forgotten file)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@243 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-07 21:16:34 +00:00
madmaxoft@gmail.com
21f758c9c0
cSocket: final localhost fix - made it a function
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@242 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-07 21:16:03 +00:00
madmaxoft@gmail.com
5c8d7a75bf
Temporary fix for Linux compilation. (gcc won't accept a function call in global var initialization)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@241 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-07 21:04:37 +00:00
madmaxoft@gmail.com
b7d524423c
Rewritten all packets to use buffers instead of direct sockets, for future cSocketThreads compatibility.
...
Moved data sending from cPacket into cSocket
git-svn-id: http://mc-server.googlecode.com/svn/trunk@240 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-07 20:49:52 +00:00
madmaxoft@gmail.com
16feb0924e
cSocketThreads initial commit. Not yet tested and not yet integrated
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@239 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-07 07:49:00 +00:00
madmaxoft@gmail.com
92981dcb3c
Slight cleanup
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@238 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-07 07:44:42 +00:00
madmaxoft@gmail.com
5750fbf65f
cSocket: Added more functions that will be needed for the new cSocketThreads
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@237 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-07 07:44:00 +00:00
madmaxoft@gmail.com
12fd317a7b
cSocket: error reporting function now works correctly on GNU Linux; also includes the error number for all errors
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@236 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-06 13:22:28 +00:00
madmaxoft@gmail.com
f2343ad81b
cSocket: re-implemented the GetLastErrorString() function; win: error texts are now queried from the system rather than enumerated by the program
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@235 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-06 11:53:01 +00:00
faketruth
ab95abb6bd
Now showing proper error messages when sockets fail :)
...
Crossplatform GetLastError function in cSocket
git-svn-id: http://mc-server.googlecode.com/svn/trunk@234 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-05 16:24:16 +00:00
madmaxoft@gmail.com
d6925efab3
cSocket: added error logging to Bind() failures
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@233 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-05 15:41:56 +00:00
admin@omencraft.com
da87f9f3c1
putting default settings back to default
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@232 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-04 19:44:42 +00:00
admin@omencraft.com
debd0ea559
Fixed a bug in source/cClientHandle.h
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@231 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-04 19:40:48 +00:00
faketruth
c4abe1ed6a
MCServer should be running fast again on Linux!! YAAAY!!
...
It seems the intialization of MersenneTwister was really slow on Linux because it did some file reading. Doing this 200 times a tick can be pretty slow...
StringUtils didn't compile in Cygwin due to missing va_list definition
git-svn-id: http://mc-server.googlecode.com/svn/trunk@230 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-03 16:01:25 +00:00
madmaxoft@gmail.com
b8be8a4df0
cClientHandle: split packet handling into separate functions for clarity
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@229 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-03 14:33:40 +00:00
madmaxoft@gmail.com
f86d796295
cClientHandle: gotten rid of the obnoxious m_pState, now using direct members instead
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@228 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-02 21:13:24 +00:00
madmaxoft@gmail.com
dca87cd214
Socket-related assert fixes
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@227 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-02 16:13:49 +00:00
madmaxoft@gmail.com
99e8f1808c
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++.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@225 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-02 14:11:54 +00:00
madmaxoft@gmail.com
f1aaea5022
Removed nonsense "virtual inline" declaration from functions
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@223 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-02 12:43:30 +00:00
madmaxoft@gmail.com
865216b15a
cSocket API fix (possible invalid pointer)
...
cMCLogger slight change (CS ptr -> member)
git-svn-id: http://mc-server.googlecode.com/svn/trunk@222 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-02 07:47:19 +00:00
madmaxoft@gmail.com
48d30d6ab4
Rewritten cAuthenticator to make use of the new cIsThread architecture - now authentication runs in a single separate thread for all clients;
...
Global player-kicking function (cServer, cRoot);
More char * -> AString conversion
git-svn-id: http://mc-server.googlecode.com/svn/trunk@221 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01 22:38:03 +00:00
faketruth
28ff03fcfe
Added all current hooks to the new plugin structure.
...
Converted MagicCarpet to the new plugin structure
When you fall of the MagicCarpet you teleport back up :D
git-svn-id: http://mc-server.googlecode.com/svn/trunk@220 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01 19:19:51 +00:00
madmaxoft@gmail.com
cb1ce14169
AString logging fix 2
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@218 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01 14:08:12 +00:00
madmaxoft@gmail.com
ef196ec22f
AString logging fix
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@217 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01 13:50:09 +00:00
madmaxoft@gmail.com
2568bad3cc
sprintf() begone! Replaced with StringUtils' Printf()
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@216 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01 13:43:47 +00:00
madmaxoft@gmail.com
d3614be2e0
Removed a few duplicate includes
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@215 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01 12:46:44 +00:00
madmaxoft@gmail.com
83fc392198
new cIsThread object for thread encapsulation
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@214 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01 12:25:26 +00:00
madmaxoft@gmail.com
8f5e834f41
cEvent: fixed wrong errorchecking in win32 Set()
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@213 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01 09:34:15 +00:00
madmaxoft@gmail.com
35d89bc918
StringUtils: SplitString() fix
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@212 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01 09:33:37 +00:00
madmaxoft@gmail.com
ced8e6f470
auto_ptr fix 2
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@211 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01 09:19:21 +00:00
madmaxoft@gmail.com
bb49f0e021
Introducing StringUtils - the place to be if you are a generic string routine :) No more sprintf()!
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@209 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01 09:12:54 +00:00
madmaxoft@gmail.com
3364ecc284
Fixed a sigsegv on *nix (cFile double-closing files)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@208 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01 07:01:21 +00:00
faketruth
28bc14e267
Plugins can now be enabled and disabled through WebAdmin
...
WebPlugins can now have spaces in their tab names
git-svn-id: http://mc-server.googlecode.com/svn/trunk@204 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01 00:02:48 +00:00
faketruth
968f41ba51
Changed how Lua handles the (Post)Params in the HTTPRequest of a WebPlugin
...
It should now be theoretically possible to upload files through WebAdmin
git-svn-id: http://mc-server.googlecode.com/svn/trunk@203 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-31 20:56:42 +00:00
madmaxoft@gmail.com
59e740035e
Slight code cleanup, no big changes
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@202 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-31 18:06:24 +00:00
madmaxoft@gmail.com
14b09ee59b
Another cEvent fix, I wish I could get it finally right
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@201 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-31 12:10:40 +00:00
madmaxoft@gmail.com
154399ccd1
Hopefully fixed pthreads in cEvent (again)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@200 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-31 12:09:34 +00:00
madmaxoft@gmail.com
8baa234541
cEvent class cleanup (single-event only, since multi-event wasn't used and wouldn't work on *nix anyway)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@199 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-31 10:45:53 +00:00
mtilden@gmail.com
16f92b2901
Linux fixes, but while it compiles, when a user joins it crashes the server with "*** glibc detected *** ./MCServer: double free or corruption (out): 0x00007fb5f5158db0 ***"
...
Please look into this. Also, am I the only one compiling/using Linux?
git-svn-id: http://mc-server.googlecode.com/svn/trunk@198 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-31 05:37:59 +00:00
faketruth
c142424571
Can now receive POST data in WebPlugins!
...
Fixed Debug With optimized Noise in VS2010 by having it run the correct MCServer_debug.exe instead of MCServer.exe
Changed winsock.h to Winsock2.h in Globals.h so sockets can be graciously closed (See webserver Socket::Close() )
git-svn-id: http://mc-server.googlecode.com/svn/trunk@197 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-31 00:38:18 +00:00
madmaxoft@gmail.com
f4583fda98
Replaced most FILE operations with a cFile object
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@196 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-30 22:48:38 +00:00
madmaxoft@gmail.com
b834841aa1
Fixed a problem in cCSLock (sorry); reverted cChunk
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@195 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-30 21:54:40 +00:00
faketruth
9dfa0f1f15
Added a WebAdmin interface to view users their groups, and the permissions of groups.
...
cChunk::Tick did an assertion in cCSLock, I used a cCSUnlock to fix it, but not sure if this is correct.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@194 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-30 16:47:26 +00:00
madmaxoft@gmail.com
51dc47bc70
More cFile cleanup; removed old format writing for block entities
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@193 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-30 16:01:45 +00:00
madmaxoft@gmail.com
7e743398a9
Initial cFile implementation (using stdio FILE) and test in cChunkMap
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@192 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-30 13:54:39 +00:00
faketruth
96da48401b
Added missing #ifdef _DEBUG in cCriticalSection.cpp
...
Should compile in Release and on Linux now
git-svn-id: http://mc-server.googlecode.com/svn/trunk@191 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-29 21:51:36 +00:00
madmaxoft@gmail.com
87a7c39dfc
Old code begone! ChunkMap cleanup
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@189 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-29 21:40:21 +00:00
madmaxoft@gmail.com
89afb970d8
VC2008 / VC2010: Enabled precompiled header through Globals.h; the header included in every module in the project. Compilation optimization.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@188 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-29 19:28:19 +00:00
madmaxoft@gmail.com
e2ad02f50a
ChunkGenerator: rewritten thread-locking using the new RAII CSLock class
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@186 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-29 14:29:26 +00:00
faketruth
1b13cc9e43
Now also compiles in Linux
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@184 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-28 16:11:37 +00:00
faketruth
de29399987
Converted entire Core plugin including WebAdmin interface to new plugin method/system/thingy and sexyfied it.
...
Made some changes to WebAdmin to make the new plugins work
Old plugins still work like they're supposed to
Not all hooks have been programmed for the new plugins yet, this still needs to be done
git-svn-id: http://mc-server.googlecode.com/svn/trunk@182 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-27 23:47:32 +00:00
madmaxoft@gmail.com
86158a2d1d
MSVC 2008 Express compatibility: Added the projects, modified sources to compile. Tested on MSVC 2008 Express and MSVC 2010 Express
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@179 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-27 14:04:28 +00:00
faketruth
4e8128b9d7
Converted all of the Core plugin to the new plugin structure, except for the WebAdmin part
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@175 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-26 23:10:49 +00:00
faketruth
507d9d57a9
No longer hard coded Lua files in new plugin system
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@173 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-26 22:21:23 +00:00
faketruth
4e34e438f1
Working on a new plugin design with Lua. While retaining backwards compatibility of course...
...
In this new design a plugin consists of a folder with Lua files, this should enable plugin developers to keep things separate and have more overview.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@172 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-26 20:39:46 +00:00
faketruth
d8fa9c15d7
Probably fixed a deadlock! http://www.mc-server.org/support/index.php?do=details&task_id=147
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@171 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-26 13:13:44 +00:00
faketruth
ce11c6b2bd
Cactus towers can be destroyed by removing the bottom block
...
Added checks whether flowers/mushrooms/saplings can be placed on surface
Added checks for cactus to see if it's allowed to be placed
Fluids now wash away certain items (flower, sapling, cactus)
git-svn-id: http://mc-server.googlecode.com/svn/trunk@169 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-23 15:11:45 +00:00
faketruth
796a9e356e
Fixed the  sign bug
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@168 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-22 21:22:54 +00:00
faketruth
738b1b3467
Improved Core's WebAmin interface a bit.
...
Can now kick players through WebAdmin
Can now enable/disable whitelist through WebAdmin
Tick speed is limited in a better way now, instead of always sleeping 50ms before each tick, it now add only sleeps additional time when the tick time was faster than 50ms. Server should run slightly faster because of this (and use more cpu%)
git-svn-id: http://mc-server.googlecode.com/svn/trunk@167 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-22 20:15:11 +00:00
faketruth
ec7aacebaa
Bug FS#131 http://www.mc-server.org/support/index.php?do=details&task_id=131 should be fixed
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@166 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-21 22:10:05 +00:00
faketruth
7b840aa5d8
MCServer is now compatible with Minecraft client 1.1 (as long as the client is not using any mods/plugins I think)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@165 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-20 17:39:16 +00:00
faketruth
50a7722242
Terrain generation is synchronous again, async generation has bugs.
...
Made some funky smart pointer things for chunks.
Fixed a bug where the client would override the player position on the server and back again, resulting in sending too many chunks to the client which it doesn't even need.
Fixed some compiler warnings in cPickup.cpp
git-svn-id: http://mc-server.googlecode.com/svn/trunk@164 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-19 18:12:39 +00:00
faketruth
f47c852186
Fixed crashing bug in cClientHandle::~cClientHandle
...
When there are players in the server, and a client connects as far as the handshake and then disconnects, the server crashed.
This is because there is no m_Player yet after the handshake, and the destructor uses m_Player without checking if it exists
git-svn-id: http://mc-server.googlecode.com/svn/trunk@163 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-02 19:03:19 +00:00
lapayo94@gmail.com
ac63775297
CreativeInventory Update
...
- Fixed various problems with the new creative inventory (Crafting, furnace, etc)
- Creative inventory will now be saved to disk, so you keep your creative inventory also for the next sessions
git-svn-id: http://mc-server.googlecode.com/svn/trunk@162 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-01 18:45:28 +00:00
faketruth
01398f8424
Fixed the numchunks console command.
...
Added some form of reference counting to cChunk to make sure it's not referenced when deleting it.
Right now it's only needed due to the generation of chunks in a separate thread and adding it to the spread light list in cWorld
git-svn-id: http://mc-server.googlecode.com/svn/trunk@161 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-01 16:20:52 +00:00
lapayo94@gmail.com
d7068b35a8
- implemented separated inventory for creative mode (cSurvivalInventory and cCreativeInventory)
...
(Separation is not perfect yet, because maybe there are some mayor changes needed :D)
- implemented CreativeInventoryAction (was mistakenly called CreateInventoryAction)
-> Fixed meta data for creative selected blocks
->->Slabs/Steps are now placed correctly
- slabs can now be build to a double slab
- fixed a bug in the inventory which put items with different meta values in the same slot
git-svn-id: http://mc-server.googlecode.com/svn/trunk@160 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-01 04:55:17 +00:00
faketruth
4f176ee685
Chests, furnaces and dispensers face the correct way now.
...
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
2012-01-01 02:48:26 +00:00
faketruth
9af5ed43fd
Made a couple of functions in cChunk inline, this should speed up several block operations on chunks
...
Players should not spawn in the ground anymore.
When an entity was added to cWorld twice (which shouldn't happen actually), the server would crash when the entity is destroyed, this should be fixed now.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@158 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-31 21:08:23 +00:00
lapayo94@gmail.com
9d3b2d1335
- Animals burn now when moving into lava or fire
...
- Monster health is now working properly
git-svn-id: http://mc-server.googlecode.com/svn/trunk@157 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-29 22:55:25 +00:00
mtilden@gmail.com
d7adbba59d
- Initial food handling by cedeel
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@156 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-29 15:31:48 +00:00
mtilden@gmail.com
05ced6665b
M$ BS...
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@155 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-29 13:39:15 +00:00
mtilden@gmail.com
c4f4ae5c71
- Chests open and close on clients when opened/closed
...
- Beginnings of "Double Chest". All that's needed is detection when 2 chests get put next to each other, block other chests from then touching them on any side, load/save with the m_JoinedChest seeing each other and adding and making sure the left side is always the top rows.
I'm not sure exactly at this moment how to do all of the detection and saving/loading of the double chest stuff so if you've any ideas feel free to point out some areas in the server code or implement it yourself.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@154 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-29 13:16:23 +00:00
lapayo94@gmail.com
2ca40c819e
- Pickups should now burn in fire
...
- The player no longer gets an empty bucket when in creative mode
- improved the simulators again (moved to std::list because this should be faster with so many objects) (But the water simulation still is very slow)
git-svn-id: http://mc-server.googlecode.com/svn/trunk@153 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-29 02:44:21 +00:00
lapayo94@gmail.com
f5466a4cb3
- water slacks fire now
...
- Bug which caused lava to disappear is fixed
git-svn-id: http://mc-server.googlecode.com/svn/trunk@152 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-29 00:44:19 +00:00
lapayo94@gmail.com
c5fab7e7c8
- little performance improvement on the sand simulator
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@151 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28 21:35:43 +00:00
lapayo94@gmail.com
c6b4ee8c9f
- implemented the fire simulation in native c++ (cFireSimulator)
...
- Changed the Durationsystem for Items. cPlayer::UseEquippedItem calls cItem::DamageItem this function damages the item if it has a duration. (needed the duration also in another place so this saves code ;))
- added some other burning blocks
- the mobtypes for the settings.ini which i must have forgotten in the last commit
git-svn-id: http://mc-server.googlecode.com/svn/trunk@150 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28 21:00:35 +00:00
mtilden@gmail.com
143b8499e0
- Fixed too fast actions kick for real
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@149 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28 16:09:36 +00:00
lapayo94@gmail.com
1454d237d1
Fixed some small memory leaks
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@148 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28 16:01:15 +00:00
mtilden@gmail.com
1116cec667
- Fixed ping displaying same for everyone, knew it was something I messed up with itr :(
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@147 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28 15:40:14 +00:00
mtilden@gmail.com
a5d64ae0ca
Fixed PLI end white, made random mistake late night when I couldn't remember how I did it before
...
Thanks to FakeTruth
git-svn-id: http://mc-server.googlecode.com/svn/trunk@146 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28 15:21:38 +00:00
faketruth
9e4184ca8d
This bug should be fixed now http://mc-server.org/support/index.php?do=details&task_id=112
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@145 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28 14:52:31 +00:00
mtilden@gmail.com
85debf0860
Linux fix
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@144 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28 11:39:05 +00:00
mtilden@gmail.com
8b726a53e7
- Didn't notice steak missing as well
...
Interesting to note, when you make a food item handled with health it gets rid of the eating animation, this seems backwards.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@143 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28 11:32:43 +00:00
mtilden@gmail.com
03f86ad3fc
- Added chicken to eating
...
- Increased max interactions again, seems to be fine now for even the fastest clickers.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@142 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28 11:27:36 +00:00
lapayo94@gmail.com
e3be6b1a47
Little improvement to save some cpu time but it´s still very heavy cpu load
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@141 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28 02:38:00 +00:00
lapayo94@gmail.com
1e9af56a67
- Implemented Drops from Burning animals
...
- added right monster health and attack strength
- refactored the Pawn/Monster/Player class a little bit
- changed some namings to fit the style
git-svn-id: http://mc-server.googlecode.com/svn/trunk@140 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-28 02:10:05 +00:00
faketruth
d57753cd68
Users file was pretty messed up with mixed unix and windows line endings. The ini failed to parse correctly under cygwin.
...
'Fixed' a 'bug' where MCServer would seemingly endlessly calculate lighting for an entire world (and then crash), when this entire world has 'wrong' lighting. This happens when running a converted map from Vanilla. Fixed this by only allowing a maximum of 50 chunks to recalculate their lighting per tick.
Fixed a small coding error in cChunkMap where it would check PakVersion twice, instead of also ChunkVersion.
DeNotch converter does not need the VS2010 runtime thingies anymore
git-svn-id: http://mc-server.googlecode.com/svn/trunk@138 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-27 22:57:33 +00:00
faketruth
105d69e27e
Fixed a little error in cPacket_PlayerListItem.cpp
...
char* was casted to char, but you actually need to get the first index of the array.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@137 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-27 22:00:32 +00:00
mtilden@gmail.com
df33f6821c
Vanity, just to set back to white after a short enough name for the ping image to not change color
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@136 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-27 19:01:00 +00:00
mtilden@gmail.com
ef47674753
I'll lower my frequency of commits.. 1000 default ends up sent more often than calc'd packets.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@135 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-27 18:43:13 +00:00
mtilden@gmail.com
b87cffc763
Oops, accidentally left debug print
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@134 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-27 18:39:53 +00:00
mtilden@gmail.com
59af89235b
- Added basic ping handling.
...
Not sure what's up with the MC client, though. It doesn't seem to end up giving good results like the KA packet return is hanging and waiting for other things to process instead of being handled on its own to give a true result.
Feel free to update if there's any way to deliver truer results.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@133 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-27 18:39:06 +00:00
mtilden@gmail.com
417571424b
Slightly cleaner block change interactions static in header
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@130 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-27 16:27:22 +00:00
admin@omencraft.com
35419380d8
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.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@128 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-27 02:18:20 +00:00
faketruth
0d8ecbeca1
Some kind of 'template' world generator that right now just generates an all dirt world. You can use this to test new algorithms
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@127 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-26 23:23:05 +00:00
faketruth
eb942797b8
Players can switch worlds on the fly with the command /gotoworld [worldName]. This uses the function cPlayer::MoveToWorld()
...
Changed isValidItem to IsValidItem in Core.lua
git-svn-id: http://mc-server.googlecode.com/svn/trunk@126 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-26 21:54:08 +00:00
lapayo94@gmail.com
9f77572fb0
- improved Simulator system
...
-> Manager handles all ticks -> advantage: Much easier to add new simulators, because you only have to register them in the manager
- moved sand and gravel simulation to a Simulator-class (cSandSimulator)
- Made Squid a little bit more funny and realistic, because it dies now when it´s not in water
-Escaping mobs run now faster than normal (They just walked away before :D)
git-svn-id: http://mc-server.googlecode.com/svn/trunk@125 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-26 20:57:12 +00:00
lapayo94@gmail.com
92e0ba6645
- improved ClosestPlayerDetection (Really the closest now ;))
...
- renamed function because the old one wasn´t listing
- improved some time vars so no move gets dropped when the server laggs for a few seconds
git-svn-id: http://mc-server.googlecode.com/svn/trunk@124 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-26 18:20:00 +00:00
faketruth
2a1d75ab09
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 now
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@122 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-26 14:29:52 +00:00
mtilden@gmail.com
c7fa610be3
- Linux compatible fixes including updated makefile
...
- Mersenne Twister still says uint32 but it's now signed for compatibility with random uses needing negative values
- Server seed is sent to clients, but needs to be able to be signed long long later on for authentic reasons
- Protocol Version is required to match to ensure client compatibility, this should probably have a settings.ini check as well as store the value there
git-svn-id: http://mc-server.googlecode.com/svn/trunk@121 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-26 09:09:47 +00:00
mtilden@gmail.com
e2acb45d19
- 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 queue
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@120 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-26 04:06:29 +00:00
mtilden@gmail.com
f029b905d5
- Default Notchian Ping (static until ping implemented through keepalive send/receive)
...
- Player "left" message regardless of exit reason
git-svn-id: http://mc-server.googlecode.com/svn/trunk@119 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-26 03:05:31 +00:00
mtilden@gmail.com
0321819ce8
- 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'
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@118 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-26 02:46:53 +00:00
faketruth
537e1afcb1
Moved the actual world generation from cChunk.cpp to a more isolated file cWorldGenerator.cpp
...
New generators should inherit cWorldGenerator and implement their own generation algorithms
git-svn-id: http://mc-server.googlecode.com/svn/trunk@117 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-26 02:39:43 +00:00
mtilden@gmail.com
a85ea1c9ac
- 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)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@116 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-26 02:35:49 +00:00
faketruth
c35db25269
Made some functions in cChunk and cNoise inline, this should significantly increase chunk generation speed
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@115 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-26 02:13:40 +00:00
mtilden@gmail.com
bf838238e4
- Make Color was using 2 extra characters which took 2 characters off the 16 max (including color codes) for scoreboard display
...
- Added xC9 PlayerListItem packet and added code for player names to be added and removed from the scoreboard (need a catch-all for client disconnects: crashes, timeouts, etc)
- Changed wid wording to a_WindowType
git-svn-id: http://mc-server.googlecode.com/svn/trunk@113 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-26 01:07:35 +00:00
lapayo94@gmail.com
e8f230f24e
- Fixed Bug #99 -> Mobs no longer bother you in creative mode
...
- refactored many things in the Monster system
git-svn-id: http://mc-server.googlecode.com/svn/trunk@112 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-25 22:47:12 +00:00
lapayo94@gmail.com
adb4dbc904
- fixed the code from the last commit :)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@111 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-25 20:23:30 +00:00
lapayo94@gmail.com
cf720c17e6
- Fixed a critical bug, which caused players to not getting spawned on the others client
...
- corrected newline in cMonsterConfig (VS did :D)
git-svn-id: http://mc-server.googlecode.com/svn/trunk@110 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-25 19:34:31 +00:00
lapayo94@gmail.com
62abd8f29b
- Implemented function to check item category
...
- (Cobble-)stone don´t drop item anymore if mined without pickaxe
- FluidSimulator no longer causes compiler warning
- Glowstone drops fixed
git-svn-id: http://mc-server.googlecode.com/svn/trunk@109 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-25 17:47:01 +00:00
lapayo94@gmail.com
d6953a7ea2
Refactored both simulators (water and lava) to make them more flexible and easier to modify
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@108 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-25 16:20:06 +00:00
lapayo94@gmail.com
62737fd163
Hold item is now dropped when inventory is closed
...
Thanks to mtilden for this ( http://forum.mc-server.org/showthread.php?tid=183&pid=1428#pid1428 )
Also the items in the 4 crafting slots are now dropped.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@107 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-25 14:03:01 +00:00
lapayo94@gmail.com
d0a7f9a57d
Code improvements
...
Fixed authentication (Can be activated now)
Added MersenneTwister.h
Thanks to mtilden
( http://forum.mc-server.org/showthread.php?tid=183&pid=1428#pid1428 and http://forum.mc-server.org/showthread.php?tid=183&pid=1418#pid1418 )
git-svn-id: http://mc-server.googlecode.com/svn/trunk@106 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-25 13:44:22 +00:00
faketruth
81c73341b2
The missing file! cChunkGenerator.h/cpp
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@105 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-25 12:55:20 +00:00
lapayo94@gmail.com
f419ec2fe7
- improved and simplified the door system (shorter, clearer)
...
- Doors now drop a complete door & other part gets destroyed
- Build a function for pickup counts (cBlockToPickup::PickupCount) (Default is 1)
git-svn-id: http://mc-server.googlecode.com/svn/trunk@104 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-25 01:40:31 +00:00
faketruth
2892a844d4
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 :O
...
Chunks are now generated before the player is able to see them. This is done because after a chunks is done generating, some blocks might still need to be set (parts of trees from neighboring chunk), causing more bandwidth to be used (each changed block needs to be sent to clients again) and (fps) lagging the clients when changing a lot of blocks. Calculating ahead fixes these issues.
Separated the placing of foliage (trees and stuff) when generated chunks into a new function GenerateFoliage()
Cleaned up the VS2010 project, now using some VS2010 specific functions like dependencies on projects (no need for setting library dependencies manually). VS2010 project now compiles way faster in Release by using multi threading.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@103 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-24 23:34:30 +00:00