Commit graph

192 commits

Author SHA1 Message Date
ORelio
6e1ee784d8 Fix encoding for Windows 7/8
Old CMD.exe does not handle UTF-8,
so UTF-8 is enabled only on Windows 10 and Mono.
2018-02-09 21:42:46 +01:00
Pokechu22
b1a66791a1 Add support for 1.12.2
While there are protocol changes to the keep alive packet, the way MCC implements it should mean that the changes do not affect us.
2017-09-19 08:06:22 +02:00
Barnehhh
5edb8f9024 Moved encoding out of the basicIO if statement. 2017-09-11 08:51:34 +02:00
Barnehhh
1a2e86e684 Switch console window encoding to Unicode
Unicode characters are becoming quite common within minecraft servers (especially the large ones) nowadays. As of now MCC creates a System beep every single time one of these characters are processed by ConsoleIO. 

I'm no expert in C#, so I'm unsure if ANSI is required for anything, but I've been perfectly find with UTF-8 so far.
2017-09-11 08:51:34 +02:00
Pokechu22
fd2e3d5797 Implement 1.12.1 protocol 2017-08-03 23:08:25 +02:00
Pokechu22
550beda7c4 Update to 1.12
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.
2017-06-10 09:09:48 -07:00
ORelio
7c9c12bee7 Add keyboard debug routine 2017-05-28 15:09:19 +02:00
ORelio
9f1ef83680 Move Json class into main package
See #138
2017-05-06 21:08:56 +02:00
ORelio
f177ea272f Fix exitonfailure not exiting on disconnect
See #268
2017-04-17 16:10:34 +02:00
ORelio
59b12ff900 ChatBot: Allow delay in ReconnectToTheServer()
See #252
2017-03-13 21:15:36 +01:00
Sheldon Rupp
3abce9c586 Add 1.11.2 support 2016-12-25 19:29:15 +01:00
Pokechu22
bc0a11d55b Add 1.11.1 support 2016-12-20 16:59:48 -08:00
Pokechu22
8a4b67c93e Add 1.11 to the list of accepted protocols 2016-11-14 15:39:41 -08:00
ORelio
9a98a9d46f Store extended player info, list display names
- 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
2016-08-22 19:40:58 +02:00
ORelio
9fc4215924 Fix crash when script cache is disabled
Bug report by zeotom on Minecraft Forum. Thanks!

+ Update supported version info (forgot to do it)
2016-06-17 22:41:13 +02:00
ORelio
e2bf4e3063 Add MC 1.9.1 and 1.9.2 as supported versions
See #135
2016-03-31 19:25:52 +02:00
ORelio
96e4c589cd Update README file 2016-03-21 10:22:05 +01:00
ORelio
d45f75f9f4 Reduce output verbosity, default session cache
- Memory session cache will be used by default
 - Verbose messages are now hidden by default
 - Improve ping procedure's Forge handling
 - Fix 1.8.9 and 1.9.0 in mcversion setting
 - SessionCache.cs: fix LF into CRLF
 - Use 1.9 translations instead of 1.8
2016-03-10 13:29:05 +01:00
ORelio
82e92f984b MC 1.9 : Add missing compatibility list entries 2016-03-05 19:33:44 +01:00
ORelio
a82c6823af Add support for Minecraft 1.9
Currently no terrain handling but anything else should work.

Related: #125
2016-03-05 19:13:45 +01:00
Justin Slauson
98b3ce7304 added timer to reduce file access collisions and cleaned some text up. 2016-03-02 19:08:24 -07:00
Justin Slauson
fec1687cb7 Updated docs and cleaned up. 2016-03-02 18:16:19 -07:00
initsuj
57c53be09f caching works. needs documentation and testing 2016-03-02 17:11:15 -07:00
initsuj
75f2f738a2 Added clientID to login call.
Updated project file to include Cache namespace.
2016-03-02 07:25:09 -07: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
ORelio
6dd003d04c Disable Forge when no mods are installed
When no mods are installed, FML client/server will skip mod negociation
phase and act as a vanilla client/server. MCC should do the same else
login will not work properly. See #100 : Forge Support
2015-10-29 18:28:59 +01:00
Pokechu22
7cc87d8e71 Detect and store the list of forge mods. 2015-10-24 15:06:13 -07:00
ORelio
729960d4a3 Add 1.8.8 as supported version 2015-07-30 12:37:29 +02:00
ORelio
3ce91188c7 Add support for C# scripts in scripting bot
- 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
2015-06-20 22:58:18 +02:00
ORelio
a7f0897f09 Add 1.8.5 - 1.8.7 as supported versions
+ Improve wording: answer -> respon[d|se]
2015-06-19 18:42:24 +02:00
ORelio
834e446a74 Add 1.8.4 in supported version list
+ minor fixes to ConsoleIO
2015-05-13 10:59:46 +02:00
ORelio
72498a6756 Fix ping failure causing double failure handling
"Failed to ping this IP" also caused "Failed to determine server
version" error, calling HandleFailure() twice.
2015-04-22 18:56:43 +02:00
ORelio
57c66c82d7 Merge error handlers
- Merge all error handling code into one method
- Fix ConsoleIO not clearing the line being typed upon reset
- Update console title upon logging in to the server
- Pass "failed to ping this IP" to AutoRelog (thx doranchak)
2015-04-22 10:27:53 +02:00
ORelio
6261e7adb7 More startup error handling
- Pass minecraft login failure message to AutoRelog bot (suggestion by
doranchak)
- Fix NullReferenceException in McTcpClient caused by SocketException in
ProxyHandler
- Refactor error handling code in Program.InitializeClient()
- More detailed error messages on network errors.
2015-04-20 17:26:16 +02:00
ORelio
791ecba454 Add timeout for server ping
Thanks doranchak & FantomHD (post no.1193)
+ Add missing doc for MinecraftVersionPrompt
2015-04-14 15:36:51 +02:00
ORelio
05a141c50d Improve offline interactions
- Add prompt for Minecraft version
- Improve offline-mode command prompt
- Fix default value on parse error in protocol handler
- Fix failed to connect not showing offline prompt
2015-03-25 22:50:20 +01:00
ORelio
e3c38ed6ac Update version info for 1.8.2 release 2015-03-11 19:58:39 +01:00
ORelio
0c81c703db Change version number for 1.8.1 2014-10-08 20:15:11 +02:00
ORelio
88b8399c5c Add support for MC 1.8 protocol
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
2014-09-04 13:58:49 +02:00
ORelio
6e841f11aa Last changes for 1.8.0 Beta release
Update sample script
Update Readme file and add it to repository
Update version numbers and fix missing field in Program
2014-08-20 23:31:47 +02:00
ORelio
b0b65b7ce0 Add offline command prompt
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.
2014-08-18 15:10:15 +02:00
ORelio
47a3cdc783 Revert to CMD icon on exit
Else CMD would still have the player head as icon
2014-07-27 16:43:45 +02:00
ORelio
86efb38fa9 Re-add /reco and /connect when connection is lost 2014-07-01 20:31:47 +02:00
ORelio
42e706d1a7 Player head as console icon
For Windows only
Idea from TNT-UP
2014-06-30 13:55:51 +02:00
ORelio
36690b8b34 Commands as separate classes
Each command is now in its own class in the 'Commands' namespace, and
loaded through reflection.
2014-06-18 13:32:17 +02:00
ORelio
8b5ce567a6 Add setting for manually choosing MC version
- 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
2014-06-14 16:01:19 +02:00
ORelio
283074bb63 Store server IP and server port in distinct vars
- 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
2014-06-13 16:50:55 +02:00
ORelio
068b87a11a Variable engine done, catch bot exceptions
- %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
2014-06-11 20:40:25 +02:00
ORelio
c8332eb845 Add 'exit on failure' setting
- 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
2014-05-31 12:56:54 +02:00
ORelio
d2ec2f48b7 App refactoring almost done
- 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
2014-05-31 01:59:03 +02:00