Lots of changes in 1.8 protocol so a new protocol handler was necessary
Packet (de)compression done with dotNetZip Zlib compression engine
1.4.6-1.7.10 support is still there thanks to app refactoring
Fix#42, and allow more interactive commands when not connected to a
server. /quit, /reco, /connect are the only allowed commands in this
limited command prompt.
Updated Assembly Info, version number is now 1.8.0.
- User can manually provide server version in config file
- Server is not pinged if a minecraft version was manually provided
- If the provided version isn't recognized, ping is re-enabled
- Change "replaceVars" to "expandVars" (more explicit)
- Store server IP and server port in distinct vars in Settings class
- Add setServerIP setter in Settings which automatically split a
host:port string
- Add %serverip% variable which use the new ServerPort setting
- Fix "text%incompletevarnameatstringend" strings
- %variable% variables can be declared in the INI file and used
elsewhere
- Default argument 'true' for WriteLineFormatted in ConsoleIO
- Exceptions thrown by bots no longer disconnect from the server, stack
trace is printed instead
- Automatically close on connection lost or other failure
- Feature suggested by TorchRJ_
- Also, forgot to mention in 'App refactoring almost done' :
- Issue depending on username and/or server should be fixed
- Created specific namespaces and folders for each app brick
- Added proxy support using Starksoft's Biko Library
- App bricks: Main, ChatBots, Crypto, Protocol, Proxy
- Each class is now in its own file (Aes streams, chatbots)
- Used "Bridge" design pattern for Crypto, Protocol, Proxy
- Added back support for Minecraft 1.4.6 to 1.6.4 (MCC 1.6.2)
- Need to fully re-test everything and fix bugs
- To Fix : Server pinging is slow on SpigotMC
- To Do : Add Minecraft 1.2.5 (MCC 1.3) and maybe 1.3 to 1.4.5
- Allow to launch script on various events
- Removed startup script, now part of ScriptScheduler
- ScriptScheduler is configured using its own INI file
- Can launch scripts on first login, login and/or specific time
- Added "connect" command in scripts (idea from TorchRJ_)
- Handle 503 service unavailable error for Minecraft logins
- Renamed [Scripting] into [StartupScript] (more explicit)
- Startup Script only runs once even using /reco but ...
- Scripts are now kept and resumed when (re)connecting
- Detect missing HTTPS certificates
- Give the mozroots command for importing certificates
- Use a specific workaround AesStream class made for Mono
- It only process 128bits blocks because Mono is not CFB-8 ready
Encryption Key Request is now fully processed using .NET RSA
capabilities
-> Good news, that was the last step for removing IKVM dependencies!
-> So now MCC does not need to use any external library. Yay! :)
-> MCC should now be compatible with Mono (Mac, Linux).
+ Removed no longed needed DLL files (9 MBytes!)
+ State MC 1.7.5 as a supported version.
+ Update version number to MCC 1.7.2
- MinecraftClient.ini or the specified INI file is loaded anyway
- Command-line arguments overrides the INI file settings
- INI file is added in front of the command-line args
- eg. MinecraftClient.exe my.ini Login Password IP
- If using autorelog bot, " - Username" was added each time the app was
restarting
- To fix this, added a ConsoleTitle setting which is re-used when
restarting
- Default console title is set if no title is provided in config file
- Fix custom console title beign replaced when adding username
- Idea is from v1RuX, see commit bf87374
If "BasicIO" is passed as last argument, Basic IO will be enabled.
- Basic input/output : disable the advanced I/O class from MCC 1.3+
- Do not print colors, output messages directly with §c color tags
This allows an external GUI to manage input/output instead of MCC.
http://www.minecraftforum.net/topic/1314800-/page__st__180#entry23903618
- All settings are moved in a new Settings class
- Settings can be loaded by parsing an INI file
- A default INI file is generated with default settings
- By default, loads MinecraftClient.ini if no command-line arguments are
used
- Another INI file can be loaded with MinecraftClient.exe MyFile.ini
- All the config files can be renamed or moved, just edit the INI file
- A title for the console window can be specified in the INI file
- Regular command-line arguments still works but will probably be
simplified in the future.
- Smal code optimizations and adjustments