Commit graph

118 commits

Author SHA1 Message Date
ORelio
f82b09af5a Remove unnecessary Material115.cs 2019-12-14 14:44:53 +01:00
ORelio
c6f00ce686 Add support for Minecraft 1.15
See #834
2019-12-14 14:22:24 +01:00
ORelio
4c1640bc5b Fix Block.cs constructor ambiguity
World.cs GetBlock() was calling the wrong one (id+meta),
causing InvalidOperationException when global Palette
does not support setting metadata. See #716
2019-05-01 23:15:24 +02:00
ORelio
0d58fb9063 MC 1.14 Terrain support (#703)
Minecraft 1.14 is now fully supported.

- Implement NBT parsing to skip NBT field in chunk data
- Update lighting data format in Chunk Data parsing
- Move Chunk Data parsing into Protocol18Terrain.cs
- Improve PaletteGenerator to greatly reduce palette files sizes
- Re-Generate Palette113.cs to reduce its size (378 Kib -> 50 Kib)
- Generate Palette114.cs (57 Kib instead of 516 Kib with prev format)
- Update Material.cs and MaterialExtensions.cs for new block types
2019-05-01 15:31:34 +02:00
ORelio
295d6546b8 MC 1.14 Basic/Chat support (#703)
Implement MC 1.14 baseline protocol support
Terrain and movements not supported yet for 1.14
2019-04-29 00:26:32 +02:00
ORelio
a6e660c974 Enable/Disable TerrainAndMovements while logged in
Feature requested in #705
2019-04-28 21:32:03 +02:00
ORelio
5f83ff0958 Fix dev build numbering, add update notes
Add newline in AssemblyInfo to fix dev build number in exe (#456)
Add remarks on how to implement newer MC versions (from #145, #599)
2019-04-28 15:58:10 +02:00
ORelio
c04b17cabc Implement Terrain and Movements for MC 1.13
Special thanks to @TheSnoozer and @vkorn for their help!

 - Implement global block Palette mechanism
 - Add class generation tool from blocks.json
 - Regenerate Material.cs and redefine solid blocks
 - Migrate previous Material.cs into Palette112
 - Generate Palette113 from MC 1.13.2 blocks.json
 - Improve Block class to handle up to 65535 block states
 - Adjust terrain parsing, small fixes in packets
 - Remove unused snapshot-related protocol cases

Solves #599
2019-04-25 22:19:50 +02:00
ORelio
a344ac4101 Implement more realisic fall to ground
Should help moving around in servers using anti-cheat plugins.

See #195
2017-03-10 23:40:02 +01:00
ORelio
b99edee642 Fix index out of bound when height < 0 or > 255
Bug report by TNTUP, see #173
2016-07-22 23:47:36 +02:00
ORelio
71277362be Add timeout when calculating unreachable path
5s timeout, assuming destination is unreachable otherwise.
2015-12-17 17:40:26 +01:00
ORelio
902b04656c Fix pathfinding to coordinates
- Now possible to walk to given coordinates
- Fix sending location before it is received
2015-12-13 21:58:55 +01:00
ORelio
b0c8f82697 Add simple movements with /move command
- Determine if we can move to the specified direction
 - Add moving ability to the specified direction
 - Add /move command for triggering moves
 - Add move decomp. into steps (more natural)
 - Add pathfinding routines (still WIP)
 - SO YES YOU CAN NOW WALK USING MCC!!!
2015-12-12 16:48:38 +01:00
ORelio
00131de08b Fix CanHarmPlayers in Material.cs
- Add flowing lava
- Remove stationary water

Reported by Pokechu22 :)
2015-12-10 18:33:01 +01:00
ORelio
49702e30b8 Add block material database
Taken from Bukkit's Material class, with credits.
Allows to know types and properties of blocks.
+ Use database for "is solid" checks
+ Add "can harm players" method
+ Faster movements, falling seems natural now
+ Shorter error message when ping failed
2015-12-09 23:04:00 +01:00
ORelio
5d8d42e3d1 Terrain: Fix coordinate parsing (negative coords)
- Optimize readNextUShortsLittleEndian network reading method
- Various coordinate computation issues, negative chunk offsets
- Properly parse negative coordinates for block change events
- Properly reach ground if less than 1 block over the ground
2015-12-08 00:34:40 +01:00
ORelio
cb00c28b6e Add world handling (and fall to ground)
- World is now properly parsed and stored from chunk data
- Block changes are also handled and world updated accordingly
- Added ground checking, the player will move down to reach the ground
- Performance tweaking in Protocol18, using lists instead of arrays
- Fix player look not properly skipped causing invalid location after
teleport
2015-11-30 15:30:49 +01:00
ORelio
72bd485e67 Add basic location handling
- Retrieve player location from the server
- Send back player location from the server
- Requires that a specific setting is enabled
- Should allow items to be picked up by the player
- May also trigger some anti chead plugins
2015-11-27 17:16:37 +01:00