diff --git a/MinecraftClient/config/README.txt b/MinecraftClient/config/README.md similarity index 84% rename from MinecraftClient/config/README.txt rename to MinecraftClient/config/README.md index 791e8bf9..15322bb3 100644 --- a/MinecraftClient/config/README.txt +++ b/MinecraftClient/config/README.md @@ -1,16 +1,14 @@ -================================================================================== - Minecraft Client v1.13.0 for Minecraft 1.4.6 to 1.13.2 - By ORelio & Contributors -================================================================================== +Minecraft Client v1.13.0 for Minecraft 1.4.6 to 1.13.2 - By ORelio & Contributors +====== -Thanks for dowloading Minecraft Console Client! +**Thanks for dowloading Minecraft Console Client!** Minecraft Console Client is a lightweight app able to connect to any minecraft server, both offline and online mode. It enables you to send commands and receive text messages in a fast and easy way without having to open the main Minecraft game. -============ - How to use -============ +How to use +------ First, extract the archive if not already extracted. On Windows, simply open MinecraftClient.exe by double-clicking on it. @@ -21,9 +19,8 @@ Then, open a terminal in this folder and run "mono MinecraftClient.exe". If you cannot authenticate on Mono, you'll need to run "mozroots --import --ask-remove" once. If Mono crashes, retry with mono-complete instead of mono-runtime. Mono v4.0 to 4.2 is recommended. -=========================================== - Using Configuration files & Enabling bots -=========================================== +Using Configuration files & Enabling bots +------ Simply open the INI configuration file with a text editor and change the values. To enable a bot change the "enabled" value in the INI file from "false" to "true". @@ -31,29 +28,31 @@ You will still be able to send and receive chat messages when a bot is loaded. You can remove or comment some lines from the INI file to use the default values instead. You can have several INI files and drag & drop one of them over MinecraftClient.exe -==================== - Command-line usage -==================== +Command-line usage +------ + +**MinecraftClient.exe username password server:** -> MinecraftClient.exe username password server This will automatically connect you to the chosen server. To specify a server and ask password interactively, use "" as password. To specify offline mode with no password, use "-" as password. -> MinecraftClient.exe username password server "/mycommand" +**MinecraftClient.exe username password server "/mycommand":** + This will automatically send "/mycommand" to the server and close. To send several commands and maybe stay connected, use the Scripting bot instead. -> MinecraftClient.exe myconfig.ini +**MinecraftClient.exe myconfig.ini:** + This will load the specified configuration file If the file contains login / password / server ip, it will automatically connect. -> MinecraftClient.exe myconfig.ini othername otherpassword otherIP +**MinecraftClient.exe myconfig.ini othername otherpassword otherIP:** + Load the specified configuration file and override some settings from the file. -=================== - Internal commands -=================== +Internal commands +------ These commands can be performed from the chat prompt, scripts or remote control. From chat prompt, commands must by default be prepended with a slash, eg. /quit @@ -77,9 +76,8 @@ In scripts and remote control, no slash is needed to perform the command. [account] is an account alias defined in accounts file, read more below. is either a server IP or a server alias defined in servers file -=========================== - Servers and Accounts file -=========================== +Servers and Accounts file +------ These two files can be used to store info about accounts and server, and give them aliases. The purpose of this is to give them an easy-to-remember alias and to avoid typing account passwords. @@ -88,9 +86,8 @@ using aliases is really important for privacy and for safely switching between a To use these files, simply take a look at sample-accounts.txt and sample-servers.txt. Once you have created your files, fill the 'accountlist' and 'serverlist' fields in INI file. -====================================== - Interacting with the Minecraft world -====================================== +Interacting with the Minecraft world +------ By default, Minecraft Console Client cannot interact with the world around you. However for some versions of the game you can enable the terrainandmovements setting. @@ -102,9 +99,8 @@ Please note that this requires much more RAM to store all the terrain data, a bi to process all of this, and slightly more bandwidth as locations updates are sent back to the server in a spammy way (that's how Minecraft works). -============================ - How to write a script file -============================ +How to write a script file +------ A script file can be launched by using /script in the client's command prompt. The client will automatically look for your script in the current directory or "scripts" subfolder. @@ -117,9 +113,8 @@ Allowed instructions are given in "Internal commands" section. Application variables defined using the 'set' command or [AppVars] INI section can be used. The following read-only variables can also be used: %username%, %serverip%, %serverport% -========================== - How to write a C# script -=========================== +How to write a C# script +------ If you are experienced with C#, you may also write a C# script. That's a bit more involved, but way more powerful than regular scripts. @@ -132,9 +127,23 @@ ChatBots can access plugin channels for communicating with some server plugins. For knowing everything the API has to offer, you can look at CSharpRunner.cs and ChatBot.cs. The latest version for these files can be found on the GitHub repository. -========================== - Using HTTP/Socks proxies -========================== +The structure of the C# file must be like this: +```csharp +//MCCScript 1.0 + +MCC.LoadBot(); + +//MCCScript Extensions + + +``` +The first line always needs to be "//MCCScript 1.0" comment, as the program requires it to determine the version of the script. +Everything between "//MCCScript 1.0" and "//MCCScript Extensions" comments will be treated as code, that part of the code will be inserted into the constructor during the compile time. +You can include C# libraries/namespaces using the following syntax: //using ; +Example: //using System.Net; + +Using HTTP/Socks proxies +------ If you are on a restricted network you might want to use some HTTP or SOCKS proxies. To do so, find a proxy, enable proxying in INI file and fill in the relevant settings. @@ -142,9 +151,8 @@ Proxies with username/password authentication are supported but have not been te Not every proxy will work for playing Minecraft, because of port 80/443 web browsing restrictions. However you can choose to use a proxy for login only, most proxies should work in this mode. -============================================= - Connecting to servers when ping is disabled -============================================= +Connecting to servers when ping is disabled +------ On some servers, the server list ping feature has been disabled, which prevents Minecraft Console Client from pinging the server to determine the Minecraft version to use. To connect to this kind of servers, @@ -152,35 +160,31 @@ find out which Minecraft version is running on the server, and fill in the 'mcve This will disable the ping step while connecting, but requires you to manually provide the version to use. Recent versions of Minecraft Console Client may also prompt you for MC version in case of ping failure. -========================= - About translation files -========================= +About translation files +------ When connecting to 1.6+ servers, you will need a translation file to display properly some chat messages. These files describe how some messages should be printed depending on your preferred language. The client will automatically load en_GB.lang from your Minecraft folder if Minecraft is installed on your computer, or download it from Mojang's servers. You may choose another language in the configuration file. -========================= - Detecting chat messages -========================= +Detecting chat messages +------ Minecraft Console Client can parse messages from the server in order to detect private and public messages. This is useful for reacting to messages eg when using the AutoRespond, Hangman game, or RemoteControl bots. However, for unusual chat formats, so you may need to tinker with the ChatFormat section of the config file. Building regular expressions can be a bit tricky, so you might want to try them out eg on regex101.com -====================== - Using the Alerts bot -====================== +Using the Alerts bot +------ Write in alerts.txt the words you want the console to beep/alert you on. Write in alerts-exclude.txt the words you want NOT to be alerted on. For example write Yourname in alerts and in alerts-exclude.txt -========================= - Using the AutoRelog bot -========================= +Using the AutoRelog bot +------ Write in kickmessages.txt some words, such as "Restarting" for example. If the kick message contains one of them, you will automatically be re-connected. @@ -189,26 +193,23 @@ A kick message "Login failed." is generated the same way when it failed to login A kick message "Failed to ping this IP." is generated when it failed to ping the server. You can use them for reconnecting when connection is lost or the login failed. -============================ - Using the Script Scheduler -============================ +Using the Script Scheduler +------ The script scheduler allows you to perform scripts on various events. Simply enable the ScriptScheduler bot and specify a tasks file in your INI file. Please read sample-tasks.ini for learning how to make your own task file. -======================== - Using the hangman game -======================== +Using the hangman game +------ Use "/tell start" to start the game. Don't forget to add your username in botowners INI setting if you want it to obey. Edit the provided configuration files to customize the words and the bot owners. If it doesn't respond to bot owners, read the "Detecting chat messages" section. -========================== - Using the Remote Control -========================== +Using the Remote Control +------ When the remote control bot is enabled, you can send commands to your bot using whispers. Don't forget to add your username in botowners INI setting if you want it to obey. @@ -222,17 +223,15 @@ You can remotely send chat messages or commands using /tell send