1
0
Commit Graph

45 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
e54373160b Fixes:
- Pickups fall through water now (Server-side they stayed in the water surface)
- Suppressed some warnings (int to short etc.)
- Water is now passable for cTracer

git-svn-id: http://mc-server.googlecode.com/svn/trunk@96 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-22 16:30:40 +00:00
lapayo94@gmail.com
0498a43d21 Missed a class in r94 ;) Sorry guys :D
git-svn-id: http://mc-server.googlecode.com/svn/trunk@95 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-21 21:05:18 +00:00
lapayo94@gmail.com
02f05f7496 - Crafting fixed in 1.0.0
- Server compatible with the weapons and equip again. (Some Packets were incompatible)
- fixed bucket bugs (not all)
- Fixed clients getting crashed by wrong Pickups
- fixed nearly all mob drops. (Check wheather they are burning is missing Big Grin)
- maybe some other things I can´t recall atm Big Grin

git-svn-id: http://mc-server.googlecode.com/svn/trunk@94 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-12-21 20:42:34 +00:00
admin@omencraft.com
f07ade2c58 Pistons now generate noise and animate when moving.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@71 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-07 05:49:18 +00:00
admin@omencraft.com
894f6e02d4 Added three new packets and cleaned up cPacket_Thunderbolt.cpp... cPacket_BlockAction, cPacket_Explosion, and cPacket_SoundEffect.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@70 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-07 01:41:54 +00:00
admin@omencraft.com
ef99915447 Fixed some redstone items and a bug that prevented floats from client to server packets reading correctly on 64 bit linux.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@50 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-03 17:42:24 +00:00
admin@omencraft.com
39fd1697e4 Updated the thunderbolt packet. Lightning and rain can be tested with a workbench and a chest. >:)
git-svn-id: http://mc-server.googlecode.com/svn/trunk@48 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-03 00:42:53 +00:00
admin@omencraft.com
a5af50c293 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.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@47 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-11-02 20:40:39 +00:00
admin@omencraft.com
88270be669 Made several recomended changes. Gamemode is now world based. Need to add it to player.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@18 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-26 20:52:19 +00:00
admin@omencraft.com
7b00d28157 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.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@16 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-26 18:47:50 +00:00
admin@omencraft.com
acd537d533 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.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@15 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-26 16:49:01 +00:00
faketruth
c7b4b9f819 Compiles for linux
git-svn-id: http://mc-server.googlecode.com/svn/trunk@6 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-21 21:25:29 +00:00
faketruth
386d58b586 MCServer c++ source files
git-svn-id: http://mc-server.googlecode.com/svn/trunk@3 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-03 18:41:19 +00:00