Implement Game Join event and send Brand Info only when server
acknowledged game join, as ZizzyDizzyMC did before, else server may
generate an invalid packet error because it was still in "login" mode
and not in "playing" mode. Fix second issue in #95
Brand Information tells the server what client is being used to connect
to the server, possible values are the following:
- none (do not tell anything)
- vanilla (tells that you are using MC vanilla)
- mcc (tell that you are using MCC + version)
This will usually not do anything unless plugins developers use this
information for developing some MCC interoperability eg more chat
interactions instead of using GUIs. This could also be used to block
third party clients, that's why brand information can be disabled or
changed to vanilla.
sendbrandinfo=true|false was added so we can optionally send client
info. Enabled by default.
Added sendbrandinfo into auto-generated ini file.
Edited Protocol18.cs to reflect this with an "if" statement before
SendBrandInfo() is called upon.
Fixed minor mistake of not adding chatbotmessages into Parsemode.
Parsemode.Default was being used.
Some server requires that players install a resource pack, and will kick
them if they doesn't. With this new feature MCC will automatically respond
"successfully loaded" for every "resource pack send" packet it receives.
Suggested by Yoann166 in issue #91
Vanilla minecraft encryption can be unofficially bypassed on pre-1.7
minecraft when connecting to offline-mode servers (now it IS officially
bypassed in offline mode in 1.7+), but BungeeCord 1.5.2 requires
encryption even in offline-mode, so enable encryption even in
offline-mode. Bug report by xp9kus.
- Now scripts can also be written in C#
- C# scripts can access ChatBot API
- Add more methods in ChatBot API
- Add an example of C# script file
- Coding style fixes: method names ucfirst
Player list updates on MC 1.8 handler did not take into account the
amount of items in the list and were only processing the first item,
including when there wasn't any item to process. Unfortunately some
weird servers were sending useless empty tab-list updates, causing a
crash. Should fix issue #78 and forum posts 1267, 1269, 1284. Thanks
dbear20, link3321, gerik43, Darkaegis, k3ldon and Ryan6578 for their bug
reports! :)
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
To detect that the TCP connection has been lost, try sending a small
packet every ~10 seconds. If the connection is lost, it will then throw
an exception which will allow MCC to detect that connection is lost, and
eventually properly trigger the AutoRelog bot.
- See issue #41 -
Fix Alerts bot not displaying several occurences in a row
Fix Script bot not displaying in console what it is performing
Fix IOException not caught when connection is lost
- 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
- %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
- Re-add support for MC 1.6 chat color names
- Re-add support for MC 1.5- vanilla whispers in ChatBot
- Add /connect in main chat prompt (reported by TNT-UP)
- We need to send a MC 1.6 ping first but SpigotMC ignore them
- So a timeout is necessary. Too slow old servers might suffer
- Fix bots not beign updated by Protocol16 (MC 1.4 to 1.6)
- 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