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
Increase the time of the fast srvrecord setting from 5 to 10 seconds. As of now the method gets timed out before actually completing/attempting the Protocol18 DoPing.
Had 2 versions of the ConsoleIO class, one here inc MCC (the original),
and another one in SharpTools, more generic, for use in other projects.
Both had diverged, this commit imports changes from the other repository.
This should not have any particular effect on MCC, besides adding more
documentation and settings in the source code of the class.
If any issue arises, as always, please report it :)
- Change SessionCache.db to SessionCache.ini
Allows users to view and edit session cache
- Automatically import previous SessionCache.db
But this file is only read, not updated
- Automatically import Minecraft session
If you are logged in in Minecraft, no need to login again
This is only done if Disk session cache is enabled
See #232 and #430 for more information
- Disk session cache becomes default
The feature is no longer experimental and now recommended
as the Mojang login servers now have a severe rate limit
Previous default was Memory session cache, not saved to disk
This adds support for Minecraft 1.12's protocol, and also abstracts out outgoing packet IDs. I include packet IDs for some 1.12 snapshots, even though snapshot versions aren't supported, because I already had written the code (though in a far more messy variant) for my MC-106551 test script; while they won't be used right now, they may be useful if snapshots are ever formally supported in the future.
By default, lower SRV resolve timeout from 30 seconds to 5 seconds
Should help people facing SRV issues, see #213
Timeout can be set to 30 seconds in settings.
- Add DnDns library for performing DNS queries
- Add query method for SRV record
- Resolve Minecraft services
This allows resolving actual server addresses for
servers using SRV records on their domain names
SRV records are basically DNS redirection eg:
myserver.net -> srv1.myserver.net:12345
Should solve #186 reported by sammyvsparks and many others.
- Tab display names should hold display name but...
- Server sends <UUID, name, null> x Player count
- TabListPlus sends <SlotID, ???tab#01, SlotText> x Slot Count
- So we don't have player display names, only worthless slots
- So the whole feature was useless, reverting to name only.
- Add Minecraft vanilla settings from Settings screen
- These settings are sent to server when joining
- Allows to customize skin layers shown to other players
- Most other settings are ignored by servers
- Update language file from 1.9 to 1.10 version
- Minor aesthetic changes in INI file comments
Suggestion by TNT-UP in issue #161 and Splodger1 in MC Forum.
- Add 1.10.1 and 1.10.2 in supported version list
- Store both player name and player display names
- List command will sort players by player name
- List command will now display by display name
- Ability to use /list raw to display by real name
Suggestion by Johngreen123
Fixes#165. Reduced debug info was added in 1.8, and isn't found in 1.7. Since it isn't there in 1.7, the client would crash when it attempts to read it on the join game packet.
The nether doesn't send skylight, so we need to ignore skylight in the nether for it to work. However, that means that dimensions need to be tracked, so the respawn packet is now also tracked (and the forge dimension override packet)