Commit graph

35 commits

Author SHA1 Message Date
ORelio
693073edfc Replace DnDns with HeijdenDns
HeijdenDns seems to do a better job at querying SRV records
2017-03-11 15:28:32 +01:00
ORelio
9cd983c50d Add support for Minecraft Service DNS Records
- 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.
2016-10-06 19:13:58 +02:00
ORelio
2a07fbbae6 Remove tab display name experiment (not working)
- 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.
2016-08-27 15:46:34 +02: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
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
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
b0c8f82697 Add simple movements with /move command
- Determine if we can move to the specified direction
 - Add moving ability to the specified direction
 - Add /move command for triggering moves
 - Add move decomp. into steps (more natural)
 - Add pathfinding routines (still WIP)
 - SO YES YOU CAN NOW WALK USING MCC!!!
2015-12-12 16:48:38 +01:00
ORelio
49702e30b8 Add block material database
Taken from Bukkit's Material class, with credits.
Allows to know types and properties of blocks.
+ Use database for "is solid" checks
+ Add "can harm players" method
+ Faster movements, falling seems natural now
+ Shorter error message when ping failed
2015-12-09 23:04:00 +01:00
ORelio
cb00c28b6e Add world handling (and fall to ground)
- World is now properly parsed and stored from chunk data
- Block changes are also handled and world updated accordingly
- Added ground checking, the player will move down to reach the ground
- Performance tweaking in Protocol18, using lists instead of arrays
- Fix player look not properly skipped causing invalid location after
teleport
2015-11-30 15:30:49 +01: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
Pokechu22
b154639a6b Handle forge handshake up to mod list sending. 2015-10-24 15:06:20 -07:00
Pokechu22
7cc87d8e71 Detect and store the list of forge mods. 2015-10-24 15:06:13 -07:00
ORelio
3e2622fbb7 Various C# Script improvements
Move handling code in a separate file
Add caching ability for low-power devices (rpi..)
Use a distinct API with MCC.MethodName()
Stop script execution only on specific API calls
2015-08-23 18:51:29 +02:00
ORelio
3a760240e4 Move 1.7 handling into 1.8 handler
Minecraft 1.7 handler was pretty similar
to 1.8 handler and lacking some features
such as packet prefetching.
2015-07-30 16:47:58 +02:00
ORelio
3224c59eab Remove padding mechanism
Not needed anymore since proper encryption is now used under Mono
2015-06-19 19:40:18 +02:00
ORelio
67affc6270 Fix 1.7+ server list ping by properly parsing Json
Separate Json and ChatParser classes
Use Json parser for retrieving Json fields
Will avoid wrong "name" field from being used
2015-06-19 19:29:23 +02:00
ORelio
53156bdf98 Normalize AutoRespond bot
Move FromFile method from bots to ChatBot class
Rename file and class, removing space and underscore.
2015-05-26 19:17:37 +02:00
Bancey
43fa3fb4b4 Auto Respond Bot
This bot allows users to add a bot that can detect and respond to
certain text.

The bot can be enabled/disabled via the ini file. (disabled by default)
The bot uses 2 files to let the user set what to pickup and what to
respond.
2015-05-19 15:36:20 +01:00
ORelio
c30d3025f7 Use BouncyCastle for handling AES on Mono Framework
Mono Framework does not handle CFB-8 AES encryption mode. So now MCC
will now use borrowed code from the BouncyCastle project for handling
AES when running on Mono framework, instead of using a dirty workaround
to try getting Mono encryption working. Regular .NET framework
encryption module will still be used when not running under Mono (eg on
Windows or using Wine)

Should hopefully fix all the issues encountered on Mono including #41
and finally achieve full compatibility of MCC with Mac and Linux.
2015-03-19 22:16:42 +01:00
ORelio
391eca102c Add 15 seconds timeout to session and login
Add AutoTimeout class for use on login and session requests.
Bug report by GamerCorey7.
2015-01-27 20:38:59 +01:00
lokulin
07fed5cd24 Added a player list command /list 2014-11-11 00:32:32 +11: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
162a1414bf Add ChatBot logging to file and 'log' command
- 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
2014-07-20 12:02:17 +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
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
ORelio
58d7b0734f Remove Java dependency for Encryption Key Request
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
2014-03-16 23:04:43 +01:00
ORelio
bca2a4116c Support text pasting with Ctrl+V 2014-01-11 12:48:59 +01:00
bearbear12345
07ac3268cc BouncyCastle reference is still there 2013-11-04 18:48:48 +11:00
ORelio
ff950a5248 Last minute changes for 1.6.0 + Changes from #13
- Some last minute changes made just before releasing 1.6.0 to Minecraft
Forums
- Added changes from pull #13 allowing to remove the BouncyCastle
library
2013-08-12 13:06:07 +02:00
ORelio
df4a9cd7b7 Added Settings class & Settings file
- 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
2013-08-06 16:11:46 +02:00
bearbear12345
2262af9ef5 +Application Icon :) 2013-07-19 18:41:55 +10:00
bearbear12345
2acf12b209 Added Library Folder (Aesthetic) 2013-07-19 17:59:43 +10:00
ORelio
e6f2ef4e4f Added MCC Source Code v1.5.2
Minecraft Console Client is now on GitHub!
2013-07-18 09:27:19 +02:00