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 -
- log <text> will print '[BOT] text' to the console
- logged [BOT] lines can be written to a logfile
- chatbotlogfile INI setting is used to set the log file
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
Accounts can be stored in a file and used while (re)connecting
+ Check that the server IP is valid (avoid /connect <player>)
+ Fix command prompt not exiting while exiting the server
+ SendChatMessage() -> SendText() method name change
- Allow to use vars declared in scripts or directly by the user
- Commands my now use %variable% as well
- Moved "help" command from RemoteControl to inner MCC command manager
- The only special command is "wait", which is only available in scripts
Todo: Solve ambiguity between MCC help and Server help commands
Note: Auto accept tpa suggested by MousePak
Note: Manually choosing MC version suggested by ZizzyDizzyMC
- 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
- MCC internal commands for command prompt, remote control and scripts
are handled in one place, thus it's no more needed to add them in 3
different places.
- "exit" command in scripts is not equivalent to "/quit"
- removed "disconnect" command in scripts /!\
- bots can now easily perform internal MCC commands.
- 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
- 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)
- 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