mirror of
https://github.com/MCCTeam/Minecraft-Console-Client
synced 2025-10-14 21:22:49 +00:00
Fix format
This commit is contained in:
parent
27c40f27d2
commit
5624e77125
245 changed files with 307 additions and 167833 deletions
|
|
@ -9,11 +9,15 @@
|
||||||
**Minecraft Console Client** has a number of default built in Chat Bots (Scripts/Plugins) which allow for various types of automation.
|
**Minecraft Console Client** has a number of default built in Chat Bots (Scripts/Plugins) which allow for various types of automation.
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**Recently we have changed the configuration format from INI to TOML, this part of the documentation has only been partially updated, it's work in progress, for the time being please refer to the `MinecraftClient.ini` for setting names, the descriptions and options should be up to date in most cases, but not guaranteed.**
|
**Recently we have changed the configuration format from INI to TOML, this part of the documentation has only been partially updated, it's work in progress, for the time being please refer to the `MinecraftClient.ini` for setting names, the descriptions and options should be up to date in most cases, but not guaranteed.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Settings refer to settings in the [configuration file](configuration.md)**
|
**Settings refer to settings in the [configuration file](configuration.md)**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
## List of built-in Chat Bots
|
## List of built-in Chat Bots
|
||||||
|
|
@ -69,7 +73,9 @@
|
||||||
This setting specifies if you want to hear a beep when you get an alert.
|
This setting specifies if you want to hear a beep when you get an alert.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**This might not work depending on your system or a console (terminal emulator).**
|
**This might not work depending on your system or a console (terminal emulator).**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Type:** `boolean`
|
- **Type:** `boolean`
|
||||||
|
|
@ -228,7 +234,9 @@
|
||||||
This will enable your bot to randomly move about, thus a better anti afk effect.
|
This will enable your bot to randomly move about, thus a better anti afk effect.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You need to enable [Terrain Handling](configuration.md#terrainandmovements) in the settings and it's recommended to put the bot into an enclosure not to wander off. (Recommended size 5x5x5)**
|
**You need to enable [Terrain Handling](configuration.md#terrainandmovements) in the settings and it's recommended to put the bot into an enclosure not to wander off. (Recommended size 5x5x5)**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Available values:** `true` and `false`.
|
- **Available values:** `true` and `false`.
|
||||||
|
|
@ -254,7 +262,9 @@
|
||||||
This is the number of times the bot will try to pathfind, if he can't find a valid path for 20 times, he will use the command method.
|
This is the number of times the bot will try to pathfind, if he can't find a valid path for 20 times, he will use the command method.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**This happens on each trigger of the task, so it does not permanently switch to alternative method.**
|
**This happens on each trigger of the task, so it does not permanently switch to alternative method.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Default:** `20`
|
- **Default:** `20`
|
||||||
|
|
@ -266,7 +276,9 @@
|
||||||
Automatically attacks mobs around you, you can configure it to attack both hostile and passive mobs and only certain mobs or all mobs.
|
Automatically attacks mobs around you, you can configure it to attack both hostile and passive mobs and only certain mobs or all mobs.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You need to have [inventoryhandling](configuration.md#inventoryhandling) and [entityhandling](configuration.md#entityhandling) enabled in order for this bot to work.**
|
**You need to have [inventoryhandling](configuration.md#inventoryhandling) and [entityhandling](configuration.md#entityhandling) enabled in order for this bot to work.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Settings:**
|
- **Settings:**
|
||||||
|
|
@ -415,7 +427,9 @@
|
||||||
Automatically craft items in your inventory or in a crafting table.
|
Automatically craft items in your inventory or in a crafting table.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You need to have [inventoryhandling](configuration.md#inventoryhandling) enabled in order for basic crafting in the inventory to work, in addition if you want to use a crafting table, you need to enable [terrainandmovements](configuration.md#terrainandmovements) in order for bot to be able to reach the crafting table.**
|
**You need to have [inventoryhandling](configuration.md#inventoryhandling) enabled in order for basic crafting in the inventory to work, in addition if you want to use a crafting table, you need to enable [terrainandmovements](configuration.md#terrainandmovements) in order for bot to be able to reach the crafting table.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Commands:**
|
- **Commands:**
|
||||||
|
|
@ -505,7 +519,9 @@
|
||||||
**Avaliable values:** `player` and `table`
|
**Avaliable values:** `player` and `table`
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**If you're using `table` you need to set the `CraftingTable` setting.**
|
**If you're using `table` you need to set the `CraftingTable` setting.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- `Result`
|
- `Result`
|
||||||
|
|
@ -530,11 +546,15 @@
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**If you have a case where you have to leave some fields empty, use `"Null"` to mark them as empty. Example for stone bricks: `Slots = [ "Stone", "Stone", "Null", "Stone", "Stone", "Null", "Null", "Null", "Null", ]`**
|
**If you have a case where you have to leave some fields empty, use `"Null"` to mark them as empty. Example for stone bricks: `Slots = [ "Stone", "Stone", "Null", "Stone", "Stone", "Null", "Null", "Null", "Null", ]`**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**All item types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs).**
|
**All item types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs).**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
**Slots are indexed as following:**
|
**Slots are indexed as following:**
|
||||||
|
|
@ -580,7 +600,9 @@
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Make sure to provide materials for your bot by placing them in inventory first.**
|
**Make sure to provide materials for your bot by placing them in inventory first.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
## Auto Dig
|
## Auto Dig
|
||||||
|
|
@ -590,11 +612,15 @@
|
||||||
Automatically digs block on specified locations.
|
Automatically digs block on specified locations.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You need to have [inventoryhandling](configuration.md#inventoryhandling) and [terrainandmovements](configuration.md#terrainandmovements) enabled in order for this bot to work.**
|
**You need to have [inventoryhandling](configuration.md#inventoryhandling) and [terrainandmovements](configuration.md#terrainandmovements) enabled in order for this bot to work.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Since MCC does not yet support accurate calculation of the collision volume of blocks, all blocks are considered as complete cubes when obtaining the position of the lookahead.**
|
**Since MCC does not yet support accurate calculation of the collision volume of blocks, all blocks are considered as complete cubes when obtaining the position of the lookahead.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Commands:**
|
- **Commands:**
|
||||||
|
|
@ -757,7 +783,9 @@
|
||||||
Automatically drop items you don't need from the inventory.
|
Automatically drop items you don't need from the inventory.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You need to have [inventoryhandling](configuration.md#inventoryhandling) enabled in order for this bot to work**
|
**You need to have [inventoryhandling](configuration.md#inventoryhandling) enabled in order for this bot to work**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Settings:**
|
- **Settings:**
|
||||||
|
|
@ -809,7 +837,9 @@
|
||||||
This setting is where you can specify the list of items which you want to drop, or keep.
|
This setting is where you can specify the list of items which you want to drop, or keep.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**All item types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs).**
|
**All item types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs).**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Format:** `[ "<item type>", "<item type>", ...]`
|
- **Format:** `[ "<item type>", "<item type>", ...]`
|
||||||
|
|
@ -827,7 +857,9 @@
|
||||||
Automatically eat food when your Hunger value is low.
|
Automatically eat food when your Hunger value is low.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You need to have [inventoryhandling](configuration.md#inventoryhandling) enabled in order for this bot to work**
|
**You need to have [inventoryhandling](configuration.md#inventoryhandling) enabled in order for this bot to work**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Settings:**
|
- **Settings:**
|
||||||
|
|
@ -863,19 +895,27 @@
|
||||||
Automatically catch fish using a fishing rod.
|
Automatically catch fish using a fishing rod.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You need to have [entityhandling](configuration.md#entityhandling) enabled in order for this bot to work.**
|
**You need to have [entityhandling](configuration.md#entityhandling) enabled in order for this bot to work.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**To use the automatic rod switching and durability check feature, you need to enable [inventoryhandling](configuration.md#inventoryhandling).**
|
**To use the automatic rod switching and durability check feature, you need to enable [inventoryhandling](configuration.md#inventoryhandling).**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Note: To adjust the position or angle after catching a fish, you need to enable [terrainandmovements](configuration.md#terrainandmovements).**
|
**Note: To adjust the position or angle after catching a fish, you need to enable [terrainandmovements](configuration.md#terrainandmovements).**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**A fishing rod with **Mending enchantment** is strongly recommended.**
|
**A fishing rod with **Mending enchantment** is strongly recommended.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
**Steps for using this bot (with the default setting)**
|
**Steps for using this bot (with the default setting)**
|
||||||
|
|
@ -1153,7 +1193,9 @@
|
||||||
Use `-1` for infinite retries.
|
Use `-1` for infinite retries.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**This might get you banned by the server owners.**
|
**This might get you banned by the server owners.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Default:** `-1`
|
- **Default:** `-1`
|
||||||
|
|
@ -1187,11 +1229,15 @@
|
||||||
Run commands or send messages automatically when a specified pattern is detected in the chat.
|
Run commands or send messages automatically when a specified pattern is detected in the chat.
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**Server admins can spoof PMs (`/tellraw`, `/nick`) so enable `AutoRespond` only if you trust server admins.**
|
**Server admins can spoof PMs (`/tellraw`, `/nick`) so enable `AutoRespond` only if you trust server admins.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**This bot may get spammy depending on your rules, although the global [messagecooldown](configuration.md#messagecooldown) setting can help you avoiding accidental spam.**
|
**This bot may get spammy depending on your rules, although the global [messagecooldown](configuration.md#messagecooldown) setting can help you avoiding accidental spam.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Settings:**
|
- **Settings:**
|
||||||
|
|
@ -1221,7 +1267,9 @@
|
||||||
_PS: In the future we will document the rules here with examples too._
|
_PS: In the future we will document the rules here with examples too._
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**This file is not created by default, we recommend making a clone of the [`sample-matches.ini`](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/config/sample-matches.ini) and changing it according to your needs.**
|
**This file is not created by default, we recommend making a clone of the [`sample-matches.ini`](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/config/sample-matches.ini) and changing it according to your needs.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Type:** `string`
|
- **Type:** `string`
|
||||||
|
|
@ -1239,7 +1287,9 @@
|
||||||
List of all color codes: [here](https://minecraft.tools/en/color-code.php)
|
List of all color codes: [here](https://minecraft.tools/en/color-code.php)
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**This feature uses the `§` symbol for color matching**
|
**This feature uses the `§` symbol for color matching**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Type:** `boolean`
|
- **Type:** `boolean`
|
||||||
|
|
@ -1321,11 +1371,15 @@
|
||||||
This bot enables you to make a bot follow a specific player.
|
This bot enables you to make a bot follow a specific player.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**The bot can be slow at times, you need to walk with a normal speed and to sometimes stop for it to be able to keep up with you, it's similar to making animals follow you when you're holding food in your hand. This is due to a slow pathfinding algorithm, we're working on getting a better one. You can tweak the update limit and find what works best for you. (NOTE: Do not but a very low one, because you might achieve the opposite, this might clog the thread for terrain handling) and thus slow the bot even more.**
|
**The bot can be slow at times, you need to walk with a normal speed and to sometimes stop for it to be able to keep up with you, it's similar to making animals follow you when you're holding food in your hand. This is due to a slow pathfinding algorithm, we're working on getting a better one. You can tweak the update limit and find what works best for you. (NOTE: Do not but a very low one, because you might achieve the opposite, this might clog the thread for terrain handling) and thus slow the bot even more.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You need to have [terrainandmovements](configuration.md#terrainandmovements) and [entityhandling](configuration.md#entityhandling) enabled in order for this bot to work.**
|
**You need to have [terrainandmovements](configuration.md#terrainandmovements) and [entityhandling](configuration.md#entityhandling) enabled in order for this bot to work.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Settings:**
|
- **Settings:**
|
||||||
|
|
@ -1377,7 +1431,9 @@
|
||||||
Also set `enabled` to `true`, then, add your username in the `botowners` INI setting, and finally, connect to the server and use `/tell <bot username> start` to start the game.
|
Also set `enabled` to `true`, then, add your username in the `botowners` INI setting, and finally, connect to the server and use `/tell <bot username> start` to start the game.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**If the bot does not respond to bot owners, see the [Detecting chat messages](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/config#detecting-chat-messages) section.**
|
**If the bot does not respond to bot owners, see the [Detecting chat messages](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/config#detecting-chat-messages) section.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Settings:**
|
- **Settings:**
|
||||||
|
|
@ -1411,7 +1467,9 @@
|
||||||
This setting specifies the path to the file which Hangman will use for the list of words, each word is added on a separate line.
|
This setting specifies the path to the file which Hangman will use for the list of words, each word is added on a separate line.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**This settings file is for English and is not created by the default**
|
**This settings file is for English and is not created by the default**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Default:** `hangman-en.txt`
|
- **Default:** `hangman-en.txt`
|
||||||
|
|
@ -1424,7 +1482,9 @@
|
||||||
This setting is same as the above but for French.
|
This setting is same as the above but for French.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**This settings file is for French and is not created by the default**
|
**This settings file is for French and is not created by the default**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Default:** `hangman-fr.txt`
|
- **Default:** `hangman-fr.txt`
|
||||||
|
|
@ -1463,11 +1523,15 @@
|
||||||
Show all ignored players.
|
Show all ignored players.
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**The bot identifies players by their name (Not by UUID!). A nickname plugin or a Minecraft rename may cause mails going to the wrong player! Never write something to the bot you wouldn't say in the normal chat (You have been warned!).**
|
**The bot identifies players by their name (Not by UUID!). A nickname plugin or a Minecraft rename may cause mails going to the wrong player! Never write something to the bot you wouldn't say in the normal chat (You have been warned!).**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**Server admins can spoof PMs (`/tellraw`, `/nick`) so enable `RemoteControl` only if you trust server admins.**
|
**Server admins can spoof PMs (`/tellraw`, `/nick`) so enable `RemoteControl` only if you trust server admins.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
**Mailer Network:**
|
**Mailer Network:**
|
||||||
|
|
@ -1568,7 +1632,9 @@
|
||||||
The maps are **rendered** into `Rendered_Maps` folder.
|
The maps are **rendered** into `Rendered_Maps` folder.
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**This bot has only been tested on Windows 10, it may not work on Linux or Mac OS due to .NET BitMap API. We're looking forward to swap the underlaying Bitmap API dependency with a library.**
|
**This bot has only been tested on Windows 10, it may not work on Linux or Mac OS due to .NET BitMap API. We're looking forward to swap the underlaying Bitmap API dependency with a library.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Commands:**
|
- **Commands:**
|
||||||
|
|
@ -1606,11 +1672,15 @@
|
||||||
The default map size is `128x128`.
|
The default map size is `128x128`.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**The bigger the size, the less is the quality.**
|
**The bigger the size, the less is the quality.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**For upscaling your maps you could use (getting a bit better quality): https://deepai.org/machine-learning-model/torch-srgan**
|
**For upscaling your maps you could use (getting a bit better quality): https://deepai.org/machine-learning-model/torch-srgan**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Available values:** `true` and `false`.
|
- **Available values:** `true` and `false`.
|
||||||
|
|
@ -1636,7 +1706,9 @@
|
||||||
This setting specifies if the Map Chat Bot should automatically render maps as they're received from the servers.
|
This setting specifies if the Map Chat Bot should automatically render maps as they're received from the servers.
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**On some versions older than 1.17 this could cause some performance issue on older hardware if there a lot of maps being rendered, since map updates are sent multiple times a second. Be careful.**
|
**On some versions older than 1.17 this could cause some performance issue on older hardware if there a lot of maps being rendered, since map updates are sent multiple times a second. Be careful.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Available values:** `true` and `false`.
|
- **Available values:** `true` and `false`.
|
||||||
|
|
@ -1715,7 +1787,9 @@
|
||||||
You need to have [ChatFormat](configuration.md#chat-format) working correctly and add yourself in [botowners](configuration.md#botowners) to use the bot.
|
You need to have [ChatFormat](configuration.md#chat-format) working correctly and add yourself in [botowners](configuration.md#botowners) to use the bot.
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**Server admins can spoof PMs (`/tellraw`, `/nick`) so enable `RemoteControl` only if you trust server admins.**
|
**Server admins can spoof PMs (`/tellraw`, `/nick`) so enable `RemoteControl` only if you trust server admins.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Settings:**
|
- **Settings:**
|
||||||
|
|
@ -1765,15 +1839,21 @@
|
||||||
Enable recording of the game (`/replay start`) and replay it later using the Replay Mod (https://www.replaymod.com/).
|
Enable recording of the game (`/replay start`) and replay it later using the Replay Mod (https://www.replaymod.com/).
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**This bot does not work for 1.19, we need maintainers for it.**
|
**This bot does not work for 1.19, we need maintainers for it.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Please note that due to technical limitations, the client player (you) will not be shown in the replay file**
|
**Please note that due to technical limitations, the client player (you) will not be shown in the replay file**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**You SHOULD use `/replay stop` or exit the program gracefully with `/quit` OR THE REPLAY FILE MAY GET CORRUPT!**
|
**You SHOULD use `/replay stop` or exit the program gracefully with `/quit` OR THE REPLAY FILE MAY GET CORRUPT!**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Settings:**
|
- **Settings:**
|
||||||
|
|
@ -1841,7 +1921,9 @@
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**It is recommended that you align subsections to the right by one tab or 4 spaces for better readability.**
|
**It is recommended that you align subsections to the right by one tab or 4 spaces for better readability.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
**Avaliable settings/options:**
|
**Avaliable settings/options:**
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,9 @@
|
||||||
By the default all of the configurations are stored in the configuration file named `MinecraftClient.ini` which is created the first time you run the program, but you also can specify your own configuration file by providing a path to it as a first parameter when starting the MCC, check out [Usage](usage.md#quick-usage-of-mcc-with-examples) for examples.
|
By the default all of the configurations are stored in the configuration file named `MinecraftClient.ini` which is created the first time you run the program, but you also can specify your own configuration file by providing a path to it as a first parameter when starting the MCC, check out [Usage](usage.md#quick-usage-of-mcc-with-examples) for examples.
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**Recently we have changed the configuration format from INI to TOML, the documentation had to be updated. If you spot a mistake, please report it on our Discord or in the repository as an issue.**
|
**Recently we have changed the configuration format from INI to TOML, the documentation had to be updated. If you spot a mistake, please report it on our Discord or in the repository as an issue.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|
@ -101,7 +103,9 @@ Coordinate = { x = 145, y = 64, y = 2045 }
|
||||||
This setting is where you define the type of your account: `mojang` or `microsoft`
|
This setting is where you define the type of your account: `mojang` or `microsoft`
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Mojang accounts are going to stop working soon for everyone, they already are not working for some people.**
|
**Mojang accounts are going to stop working soon for everyone, they already are not working for some people.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Type:** `string`
|
- **Type:** `string`
|
||||||
|
|
@ -228,8 +232,10 @@ Coordinate = { x = 145, y = 64, y = 2045 }
|
||||||
```
|
```
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**Admins can impersonate players on versions older than 1.19**
|
**Admins can impersonate players on versions older than 1.19**
|
||||||
:::
|
|
||||||
|
:::
|
||||||
|
|
||||||
#### `MinecraftVersion`
|
#### `MinecraftVersion`
|
||||||
|
|
||||||
|
|
@ -254,7 +260,9 @@ Coordinate = { x = 145, y = 64, y = 2045 }
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**MCC supports only 1.4.6 - 1.19.2**
|
**MCC supports only 1.4.6 - 1.19.2**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
#### `EnableForge`
|
#### `EnableForge`
|
||||||
|
|
@ -274,7 +282,9 @@ Coordinate = { x = 145, y = 64, y = 2045 }
|
||||||
- **Default:** `auto`
|
- **Default:** `auto`
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Force-enabling only works for MC 1.13 +**
|
**Force-enabling only works for MC 1.13 +**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
#### `BrandInfo`
|
#### `BrandInfo`
|
||||||
|
|
@ -289,7 +299,9 @@ Coordinate = { x = 145, y = 64, y = 2045 }
|
||||||
- **Default:** `mcc`
|
- **Default:** `mcc`
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**For playing on Hypixel you need to use `vanilla`**
|
**For playing on Hypixel you need to use `vanilla`**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
#### `ChatbotLogFile`
|
#### `ChatbotLogFile`
|
||||||
|
|
@ -371,15 +383,19 @@ Coordinate = { x = 145, y = 64, y = 2045 }
|
||||||
This setting is where you can set if you want to enable terrain movement, so you can use command like `/move` and some bots.
|
This setting is where you can set if you want to enable terrain movement, so you can use command like `/move` and some bots.
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**This feature is currently not supported in `1.4.6 - 1.6`.**
|
**This feature is currently not supported in `1.4.6 - 1.6`.**
|
||||||
:::
|
|
||||||
|
:::
|
||||||
|
|
||||||
- **Type:** `boolean`
|
- **Type:** `boolean`
|
||||||
|
|
||||||
- **Default:** `false`
|
- **Default:** `false`
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Sometimes the latest versions might not support this straight away, since Mojang often makes changes to this.**
|
**Sometimes the latest versions might not support this straight away, since Mojang often makes changes to this.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
#### `InventoryHandling`
|
#### `InventoryHandling`
|
||||||
|
|
@ -389,7 +405,9 @@ Coordinate = { x = 145, y = 64, y = 2045 }
|
||||||
This setting is where you can set if you want to enable inventory handling using the `/inventory` command.
|
This setting is where you can set if you want to enable inventory handling using the `/inventory` command.
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**This feature is currently not supported in `1.4.6 - 1.9`.**
|
**This feature is currently not supported in `1.4.6 - 1.9`.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Type:** `boolean`
|
- **Type:** `boolean`
|
||||||
|
|
@ -403,7 +421,9 @@ Coordinate = { x = 145, y = 64, y = 2045 }
|
||||||
This setting is where you can set if you want to enable interactions with entities such as players, mobs, minecarts, etc..
|
This setting is where you can set if you want to enable interactions with entities such as players, mobs, minecarts, etc..
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**This feature is currently not supported in `1.4.6 - 1.9`.**
|
**This feature is currently not supported in `1.4.6 - 1.9`.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Type:** `boolean`
|
- **Type:** `boolean`
|
||||||
|
|
@ -411,7 +431,9 @@ Coordinate = { x = 145, y = 64, y = 2045 }
|
||||||
- **Default:** `false`
|
- **Default:** `false`
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Sometimes the latest versions might not support this straight away, since Mojang often makes changes to this.**
|
**Sometimes the latest versions might not support this straight away, since Mojang often makes changes to this.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
#### `SessionCache`
|
#### `SessionCache`
|
||||||
|
|
@ -462,7 +484,9 @@ Coordinate = { x = 145, y = 64, y = 2045 }
|
||||||
- **Default:** `true`
|
- **Default:** `true`
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Only works on Windows XP-8 or Windows 10 with old console**
|
**Only works on Windows XP-8 or Windows 10 with old console**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
#### `ExitOnFailure`
|
#### `ExitOnFailure`
|
||||||
|
|
@ -506,7 +530,9 @@ Coordinate = { x = 145, y = 64, y = 2045 }
|
||||||
- **Default:** `false`
|
- **Default:** `false`
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Make sure the spawn point is safe**
|
**Make sure the spawn point is safe**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
#### `MinecraftRealms`
|
#### `MinecraftRealms`
|
||||||
|
|
@ -560,7 +586,9 @@ Coordinate = { x = 145, y = 64, y = 2045 }
|
||||||
- **Default:** `2`
|
- **Default:** `2`
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**A movement speed higher than 2 may be considered cheating by some plugins.**
|
**A movement speed higher than 2 may be considered cheating by some plugins.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
### Account List section
|
### Account List section
|
||||||
|
|
@ -784,7 +812,9 @@ Coordinate = { x = 145, y = 64, y = 2045 }
|
||||||
- **Default:** `.*`
|
- **Default:** `.*`
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Not filtering anything by default**
|
**Not filtering anything by default**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
#### `DebugFilterRegex`
|
#### `DebugFilterRegex`
|
||||||
|
|
@ -800,7 +830,9 @@ Coordinate = { x = 145, y = 64, y = 2045 }
|
||||||
- **Default:** `.*`
|
- **Default:** `.*`
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Not filtering anything by default**
|
**Not filtering anything by default**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
#### `FilterMode`
|
#### `FilterMode`
|
||||||
|
|
@ -836,7 +868,9 @@ Coordinate = { x = 145, y = 64, y = 2045 }
|
||||||
- **Default:** `console-log.txt`
|
- **Default:** `console-log.txt`
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**%username% and %serverip% will be substituted with your username and the IP address of the server you are connected to. So you can use something like: `console-log-%username%-%serverip%.txt`**
|
**%username% and %serverip% will be substituted with your username and the IP address of the server you are connected to. So you can use something like: `console-log-%username%-%serverip%.txt`**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
#### `PrependTimestamp`
|
#### `PrependTimestamp`
|
||||||
|
|
@ -872,7 +906,9 @@ Coordinate = { x = 145, y = 64, y = 2045 }
|
||||||
To define a variable/setting, simply make a new line with the following format under the `[AppVar.VarStirng]` section:
|
To define a variable/setting, simply make a new line with the following format under the `[AppVar.VarStirng]` section:
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**`%username%`, `%serverip%`, `%datetime%` are reserved variables**
|
**`%username%`, `%serverip%`, `%datetime%` are reserved variables**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Section header:** `Logging`
|
- **Section header:** `Logging`
|
||||||
|
|
@ -916,7 +952,9 @@ Coordinate = { x = 145, y = 64, y = 2045 }
|
||||||
- **Default:** `false`
|
- **Default:** `false`
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**Make sure your server rules allow Proxies or VPNs before setting the setting to `true`, or you may face consequences!**
|
**Make sure your server rules allow Proxies or VPNs before setting the setting to `true`, or you may face consequences!**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
#### `Server`
|
#### `Server`
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,9 @@
|
||||||
## Notes
|
## Notes
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**For now this page contains only the bare basics of the Chat Bot API, enough of details to teach you how to make basic Chat Bots. For more details you need to take a look at the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) and [Examples](#examples). This page will be improved in the future.**
|
**For now this page contains only the bare basics of the Chat Bot API, enough of details to teach you how to make basic Chat Bots. For more details you need to take a look at the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) and [Examples](#examples). This page will be improved in the future.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
**Minecraft Console Client** has a rich C# API which allows you to create Chat Bots (effectively plugins) which can help you create complex automations which normal scripts may not be able to do.
|
**Minecraft Console Client** has a rich C# API which allows you to create Chat Bots (effectively plugins) which can help you create complex automations which normal scripts may not be able to do.
|
||||||
|
|
@ -35,7 +37,9 @@ More in-depth:
|
||||||
This introduction assumes that you have the basic knowledge of C#.
|
This introduction assumes that you have the basic knowledge of C#.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Here we will use terms Chat Bot and Script interchangeably**
|
**Here we will use terms Chat Bot and Script interchangeably**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Create a new empty file and name it `ExampleChatBot.cs` in the same folder where you have your MCC installed.
|
Create a new empty file and name it `ExampleChatBot.cs` in the same folder where you have your MCC installed.
|
||||||
|
|
@ -115,7 +119,9 @@ MCC.LoadBot(new YourChatBotClassNameHere());
|
||||||
**Script Metadata** section allows for including C# packages and libraries with: `//using <namespace>` and `/dll <dll name>`.
|
**Script Metadata** section allows for including C# packages and libraries with: `//using <namespace>` and `/dll <dll name>`.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Avoid adding whitespace between `//` and keywords**
|
**Avoid adding whitespace between `//` and keywords**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
By the default the following packages are loaded:
|
By the default the following packages are loaded:
|
||||||
|
|
@ -164,7 +170,9 @@ When the Chat Bot (Script) has been initialized for the first time the `Initiali
|
||||||
In it you can initialize variables, eg. Dictionaries, etc..
|
In it you can initialize variables, eg. Dictionaries, etc..
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**For allocating resources like a database connection, we recommend allocating them in `AfterGameJoined` and freeing them in `OnDisconnect`**
|
**For allocating resources like a database connection, we recommend allocating them in `AfterGameJoined` and freeing them in `OnDisconnect`**
|
||||||
|
|
||||||
:::.
|
:::.
|
||||||
|
|
||||||
## Examples
|
## Examples
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,11 @@ If you're not the kind of person that likes textual tutorials, our community has
|
||||||
In order to run **Minecraft Console Client** you need [.NET 6.0 or new-er](https://dotnet.microsoft.com/en-us/download)
|
In order to run **Minecraft Console Client** you need [.NET 6.0 or new-er](https://dotnet.microsoft.com/en-us/download)
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
|
|
||||||
**If you already have .NET, but an older version than `6.0`, please update to `6.0` since MCC might not work as expected or at all.**
|
**If you already have .NET, but an older version than `6.0`, please update to `6.0` since MCC might not work as expected or at all.**
|
||||||
|
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
#### How to install .NET on your platform
|
#### How to install .NET on your platform
|
||||||
|
|
@ -90,7 +94,9 @@ Requirements:
|
||||||
- Linux:
|
- Linux:
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
**If you're using Linux we will assume that you should be able to install git on your own. If you don't know how, search it up for your distribution, it should be easy. (Debian based distros: `apt install git`, Arch based: `pacman -S git`)**
|
|
||||||
|
**If you're using Linux we will assume that you should be able to install git on your own. If you don't know how, search it up for your distribution, it should be easy. (Debian based distros: `apt install git`, Arch based: `pacman -S git`)**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- [Install Git on macOS](https://git-scm.com/download/mac)
|
- [Install Git on macOS](https://git-scm.com/download/mac)
|
||||||
|
|
@ -119,7 +125,9 @@ git clone https://github.com/MCCTeam/Minecraft-Console-Client.git --recursive
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**If you're using Linux that is either ARM, 32-bit, Rhel based, Using Musl, or Tirzen, [find an appropriate RID](https://docs.microsoft.com/en-us/dotnet/core/rid-catalog#linux-rids) for your platform and replace the `'-r linux-64` with an appropriate `-r <your RID>` (Example for arm: `-r linux-arm64`)**
|
**If you're using Linux that is either ARM, 32-bit, Rhel based, Using Musl, or Tirzen, [find an appropriate RID](https://docs.microsoft.com/en-us/dotnet/core/rid-catalog#linux-rids) for your platform and replace the `'-r linux-64` with an appropriate `-r <your RID>` (Example for arm: `-r linux-arm64`)**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- On macOS:
|
- On macOS:
|
||||||
|
|
@ -129,7 +137,9 @@ git clone https://github.com/MCCTeam/Minecraft-Console-Client.git --recursive
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**If you're not using MAC with Intel, find an appropriate RID for your ARM processor, [find an appropriate RID](https://docs.microsoft.com/en-us/dotnet/core/rid-catalog#macos-rids) and replace the `'-r osx-64` with an appropriate `-r <your RID>` (Example for arm: `-r osx.12-arm64`)**
|
**If you're not using MAC with Intel, find an appropriate RID for your ARM processor, [find an appropriate RID](https://docs.microsoft.com/en-us/dotnet/core/rid-catalog#macos-rids) and replace the `'-r osx-64` with an appropriate `-r <your RID>` (Example for arm: `-r osx.12-arm64`)**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
If the build has succeeded, the compiled binary `MinecraftClient` will be in:
|
If the build has succeeded, the compiled binary `MinecraftClient` will be in:
|
||||||
|
|
@ -145,11 +155,15 @@ Requirements:
|
||||||
- Docker
|
- Docker
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**This section is for more advanced users, if you do not know how to install git or docker, you can take a look at other sections for Git, and search on how to install Docker on your system.**
|
**This section is for more advanced users, if you do not know how to install git or docker, you can take a look at other sections for Git, and search on how to install Docker on your system.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**Pay attention at warnings, Docker currently works, but you must start the containers in the interactive mode or MCC will crash, we're working on solving this.**
|
**Pay attention at warnings, Docker currently works, but you must start the containers in the interactive mode or MCC will crash, we're working on solving this.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
1. Clone the [Git Hub Repository](https://github.com/MCCTeam/Minecraft-Console-Client) by typing end executing the following command:
|
1. Clone the [Git Hub Repository](https://github.com/MCCTeam/Minecraft-Console-Client) by typing end executing the following command:
|
||||||
|
|
@ -168,7 +182,9 @@ docker build -t minecraft-console-client:latest .
|
||||||
**Start the container using Docker:**
|
**Start the container using Docker:**
|
||||||
|
|
||||||
::: danger
|
::: danger
|
||||||
|
|
||||||
**There is a bug with the ConsoleInteractive which causes a crash when a container is started in a headless mode, so you need to use the interactive mode. Do not restart containers in a classic way, stop then and start them with interactive mode (this command), after that simply detach with `CTRL + P` and then `CTRL + Q`.**
|
**There is a bug with the ConsoleInteractive which causes a crash when a container is started in a headless mode, so you need to use the interactive mode. Do not restart containers in a classic way, stop then and start them with interactive mode (this command), after that simply detach with `CTRL + P` and then `CTRL + Q`.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|
@ -222,15 +238,21 @@ docker-compose down
|
||||||
It is possible to run the Minecraft Console Client on Android through Termux and Ubuntu 22.04 in it, however it requires a manual setup with a lot of commands, be careful no to skip any steps. Note that this might take anywhere from 10 to 20 minutes or more to do depending on your technical knowledge level, Internet speed and CPU speed.
|
It is possible to run the Minecraft Console Client on Android through Termux and Ubuntu 22.04 in it, however it requires a manual setup with a lot of commands, be careful no to skip any steps. Note that this might take anywhere from 10 to 20 minutes or more to do depending on your technical knowledge level, Internet speed and CPU speed.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**This section is going to get a bit technical, I'll try my best to make everything as simple as possible. If you are having trouble following along or if you encounter any issues, feel free to open up a discussion on our Github repository page.**
|
**This section is going to get a bit technical, I'll try my best to make everything as simple as possible. If you are having trouble following along or if you encounter any issues, feel free to open up a discussion on our Github repository page.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You're required to have some bare basic knowledge of Linux, if you do not know anything about it, watch [this video](https://www.youtube.com/watch?v=SkB-eRCzWIU) to get familiar with basic commands.**
|
**You're required to have some bare basic knowledge of Linux, if you do not know anything about it, watch [this video](https://www.youtube.com/watch?v=SkB-eRCzWIU) to get familiar with basic commands.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Here we're installing everything on the root account for simplicity sake, if you want to make a user account, make sure you update the command which reference the `/root` directory with your home directory.**
|
**Here we're installing everything on the root account for simplicity sake, if you want to make a user account, make sure you update the command which reference the `/root` directory with your home directory.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
### Installation
|
### Installation
|
||||||
|
|
@ -238,17 +260,23 @@ It is possible to run the Minecraft Console Client on Android through Termux and
|
||||||
#### Termux
|
#### Termux
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**The Play Store version of Termux is outdated and not supported, do not use it, use the the [Github one](https://github.com/termux/termux-app/releases/latest/).**
|
**The Play Store version of Termux is outdated and not supported, do not use it, use the the [Github one](https://github.com/termux/termux-app/releases/latest/).**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Go to [the Termux Github latest release](https://github.com/termux/termux-app/releases/latest/), download the `debug_universal.apk`, unzip it and run it.
|
Go to [the Termux Github latest release](https://github.com/termux/termux-app/releases/latest/), download the `debug_universal.apk`, unzip it and run it.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**If your file manager does not let you run APK files, install and use `File Manager +` and give it a permission to install 3rd party applications when asked.**
|
**If your file manager does not let you run APK files, install and use `File Manager +` and give it a permission to install 3rd party applications when asked.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: danger
|
::: danger
|
||||||
|
|
||||||
**Once you have installed Termux, open it, bring down the Android menu for notifications, on Termux notification, drag down until you see the following options: `Exit | Acquire wakelock`, press on the `Acquire wakelock` and allow Termux to have a battery optimization exclusion permission when asked. If you do not do this, your performance will be poorer and the Termux might get killed by Android while running in the background!**
|
**Once you have installed Termux, open it, bring down the Android menu for notifications, on Termux notification, drag down until you see the following options: `Exit | Acquire wakelock`, press on the `Acquire wakelock` and allow Termux to have a battery optimization exclusion permission when asked. If you do not do this, your performance will be poorer and the Termux might get killed by Android while running in the background!**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
#### Installing Ubuntu 22.04
|
#### Installing Ubuntu 22.04
|
||||||
|
|
@ -259,7 +287,9 @@ At this stage, you have 2 options:
|
||||||
2. Watching a [Youtube tutorial for installing Ubuntu](https://www.youtube.com/watch?v=5yit2t7smpM)
|
2. Watching a [Youtube tutorial for installing Ubuntu](https://www.youtube.com/watch?v=5yit2t7smpM)
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**If you decide to watch the Youtube tutorial, watch only up to `1:58`, the steps after are not needed and might just confuse you.**
|
**If you decide to watch the Youtube tutorial, watch only up to `1:58`, the steps after are not needed and might just confuse you.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
In order to install Ubuntu 22.04 in Termux you require `wget` and `proot`, we're going to install them in the next step.
|
In order to install Ubuntu 22.04 in Termux you require `wget` and `proot`, we're going to install them in the next step.
|
||||||
|
|
@ -271,7 +301,9 @@ Once you have Termux installed open it up and run the following command one afte
|
||||||
3. `pkg install proot wget`
|
3. `pkg install proot wget`
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**If you're asked to press Y/N during the update/upgrade command process, just enter Y and press Enter**
|
**If you're asked to press Y/N during the update/upgrade command process, just enter Y and press Enter**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Then you need to download an installation script using the following command:
|
Then you need to download an installation script using the following command:
|
||||||
|
|
@ -294,7 +326,9 @@ Once the installation is complete, you can start Ubuntu with:
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Now every time you open Termux after it has been closed, in order to access Ubuntu you have to use this command**
|
**Now every time you open Termux after it has been closed, in order to access Ubuntu you have to use this command**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
#### Installing .NET on ARM
|
#### Installing .NET on ARM
|
||||||
|
|
@ -330,24 +364,33 @@ wget https://download.visualstudio.microsoft.com/download/pr/901f7928-5479-4d32-
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**This tutorial assumes that you have 64 bit version of ARM processor, if you happen to have a 32-bit version replace the link in the command above with [this one](https://download.visualstudio.microsoft.com/download/pr/cf567026-a29a-41aa-bc3a-e4e1ad0df480/0925d411e8e09e31ba7a39a3eb0e29af/aspnetcore-runtime-6.0.8-linux-arm.tar.gz)**
|
**This tutorial assumes that you have 64 bit version of ARM processor, if you happen to have a 32-bit version replace the link in the command above with [this one](https://download.visualstudio.microsoft.com/download/pr/cf567026-a29a-41aa-bc3a-e4e1ad0df480/0925d411e8e09e31ba7a39a3eb0e29af/aspnetcore-runtime-6.0.8-linux-arm.tar.gz)**
|
||||||
:::.
|
|
||||||
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**This tutorial assumes that you're following along and using Ubuntu 22.04, if you're using a different distro, like Alpine, go to [here](https://dotnet.microsoft.com/en-us/download/dotnet/6.0) and copy an appropriate link for your distro.**
|
**This tutorial assumes that you're following along and using Ubuntu 22.04, if you're using a different distro, like Alpine, go to [here](https://dotnet.microsoft.com/en-us/download/dotnet/6.0) and copy an appropriate link for your distro.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Once the file has been downloaded, you need to run the following commands in order:
|
Once the file has been downloaded, you need to run the following commands in order:
|
||||||
|
|
||||||
1. `DOTNET_FILE=dotnet-sdk-6.0.400-linux-arm64.tar.gz`
|
1. `DOTNET_FILE=dotnet-sdk-6.0.400-linux-arm64.tar.gz`
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**If you're using a different download link, update the file name in this command to match your version.**
|
**If you're using a different download link, update the file name in this command to match your version.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
2. `export DOTNET_ROOT=/root/.dotnet`
|
2. `export DOTNET_ROOT=/root/.dotnet`
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**Here we're installing .NET in `/root`, if you're installing it somewhere else, make sure to set your own path!**
|
**Here we're installing .NET in `/root`, if you're installing it somewhere else, make sure to set your own path!**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
3. `mkdir -p "$DOTNET_ROOT" && tar zxf "$DOTNET_FILE" -C "$DOTNET_ROOT"`
|
3. `mkdir -p "$DOTNET_ROOT" && tar zxf "$DOTNET_FILE" -C "$DOTNET_ROOT"`
|
||||||
|
|
@ -356,7 +399,9 @@ Once the file has been downloaded, you need to run the following commands in ord
|
||||||
Now we need to tell our shell to know where the `dotnet` command is, for future sessions, since the commands above just tell this current session where the `dotnet` is located.
|
Now we need to tell our shell to know where the `dotnet` command is, for future sessions, since the commands above just tell this current session where the `dotnet` is located.
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**You will need a basic knowledge of Nano text editor, if you do not know how to use it, watch this [Youtube video tutorial](https://www.youtube.com/watch?v=DLeATFgGM-A)**
|
**You will need a basic knowledge of Nano text editor, if you do not know how to use it, watch this [Youtube video tutorial](https://www.youtube.com/watch?v=DLeATFgGM-A)**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
To enable this, we need to edit our `/root/.bashrc` file with the following command:
|
To enable this, we need to edit our `/root/.bashrc` file with the following command:
|
||||||
|
|
@ -373,7 +418,9 @@ export PATH=$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools
|
||||||
```
|
```
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**Here we're installing .NET in `/root`, if you're installing it somewhere else, make sure to set your own path!**
|
**Here we're installing .NET in `/root`, if you're installing it somewhere else, make sure to set your own path!**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Save the file usign the following combination of keys: `CTRL + X`, type `Y` and press Enter.
|
Save the file usign the following combination of keys: `CTRL + X`, type `Y` and press Enter.
|
||||||
|
|
@ -407,7 +454,9 @@ path-to-application:
|
||||||
Finally, we can install MCC.
|
Finally, we can install MCC.
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**If you have a 32 ARM processor, you need to build the MCC yourself, take a look at the [Building From Source](#building-from-the-source-code) section. Also make sure to be using the appropriate `-r` parameter value for your architecture.**
|
**If you have a 32 ARM processor, you need to build the MCC yourself, take a look at the [Building From Source](#building-from-the-source-code) section. Also make sure to be using the appropriate `-r` parameter value for your architecture.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Let's make a folder where the MCC will be stored with the following command:
|
Let's make a folder where the MCC will be stored with the following command:
|
||||||
|
|
@ -469,7 +518,9 @@ Also, here are some linux tutorials for people who are new to it:
|
||||||
## Run on a VPS
|
## Run on a VPS
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**This is a new section, if you find a mistake, please report it by opening an Issue in our [Github repository](https://github.com/MCCTeam/Minecraft-Console-Client). Thank you!**
|
**This is a new section, if you find a mistake, please report it by opening an Issue in our [Github repository](https://github.com/MCCTeam/Minecraft-Console-Client). Thank you!**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
The **Minecraft Console Client** can be run on a VPS 24 hours, 7 days a week.
|
The **Minecraft Console Client** can be run on a VPS 24 hours, 7 days a week.
|
||||||
|
|
@ -498,7 +549,9 @@ Here is a [Youtube video](https://youtu.be/42fwh_1KP_o) that explains it in more
|
||||||
Download and install [Gitbash](https://git-scm.com/downloads).
|
Download and install [Gitbash](https://git-scm.com/downloads).
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Make sure to allow the installation to add it to the context menu**
|
**Make sure to allow the installation to add it to the context menu**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
2. `ssh` and `ssh-keygen` commands (On Windows they're available with Gitbash, on macOs and Linux they should be available by default, it not, search on how to install them)
|
2. `ssh` and `ssh-keygen` commands (On Windows they're available with Gitbash, on macOs and Linux they should be available by default, it not, search on how to install them)
|
||||||
|
|
@ -535,7 +588,9 @@ The MCC is not expensive to run, so it can run on basically any hardware, you do
|
||||||
**Where to buy a VPS?**
|
**Where to buy a VPS?**
|
||||||
|
|
||||||
::: danger
|
::: danger
|
||||||
|
|
||||||
**In this tutorial we will be using `Ubuntu 22.04`, make sure to select it as the OS when buying a VPS.**
|
**In this tutorial we will be using `Ubuntu 22.04`, make sure to select it as the OS when buying a VPS.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Some of the reliable and cheap hosting providers (sorted for price/performance):
|
Some of the reliable and cheap hosting providers (sorted for price/performance):
|
||||||
|
|
@ -545,7 +600,9 @@ Some of the reliable and cheap hosting providers (sorted for price/performance):
|
||||||
**Minimum price**: `2.50 EUR / month`
|
**Minimum price**: `2.50 EUR / month`
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Does not have Ubuntu 22.04 in the dropdown menu when ordering, you will have to re-install later or ask support to do it.**
|
**Does not have Ubuntu 22.04 in the dropdown menu when ordering, you will have to re-install later or ask support to do it.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- [OVH Cloud](https://www.ovhcloud.com/de/vps/)
|
- [OVH Cloud](https://www.ovhcloud.com/de/vps/)
|
||||||
|
|
@ -571,19 +628,27 @@ You also may want to search for better deals.
|
||||||
#### AWS EC2 VPS
|
#### AWS EC2 VPS
|
||||||
|
|
||||||
::: danger
|
::: danger
|
||||||
|
|
||||||
**This will require you to have a valid debit card that can be used on internet and a mobile phone number, as well as giving that info to Amazon corporation.**
|
**This will require you to have a valid debit card that can be used on internet and a mobile phone number, as well as giving that info to Amazon corporation.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**Scammers often get AWS VPS and use it to mass login on to stolen Microsoft accounts, some AWS IP addresses might be blocked by Microsoft because of that, if so, you might need to switch regions or to use a Proxy. To debug if your IP has been banned by Microsoft, use the `ping <ip>` and `traceroute <ip>` commands.**
|
**Scammers often get AWS VPS and use it to mass login on to stolen Microsoft accounts, some AWS IP addresses might be blocked by Microsoft because of that, if so, you might need to switch regions or to use a Proxy. To debug if your IP has been banned by Microsoft, use the `ping <ip>` and `traceroute <ip>` commands.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**Related to the warning above, if you have issues logging with Microsoft and you're not banned, you may want to check the Security center on your account and approve the login from the VPS, this can be the case for some users.**
|
**Related to the warning above, if you have issues logging with Microsoft and you're not banned, you may want to check the Security center on your account and approve the login from the VPS, this can be the case for some users.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**If you're not banned, sometimes fetching the keys can take some time, try giving it a minute or two, if it still hangs, hit some keys to refresh the screen, or try restarting and running again. If it still happens, use tmux instead of screen.**
|
**If you're not banned, sometimes fetching the keys can take some time, try giving it a minute or two, if it still hangs, hit some keys to refresh the screen, or try restarting and running again. If it still happens, use tmux instead of screen.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Register on AWS and enter all of your billing info and a phone number.
|
Register on AWS and enter all of your billing info and a phone number.
|
||||||
|
|
@ -592,13 +657,17 @@ Once you're done, you can continue to [Setting up the Amazon VPS](#setting-up-an
|
||||||
### Initial Amazon VPS setup
|
### Initial Amazon VPS setup
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Skip this section if you're not using AWS. Go to [Initial VPS setup](#initial-vps-setup)**
|
**Skip this section if you're not using AWS. Go to [Initial VPS setup](#initial-vps-setup)**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
When you register and open the `AWS Console`, click on the Search field on the top of the page and search for: `EC2`
|
When you register and open the `AWS Console`, click on the Search field on the top of the page and search for: `EC2`
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Make sure to select the region closest to you for the minimal latency**
|
**Make sure to select the region closest to you for the minimal latency**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Click on the **Launch instance** button.
|
Click on the **Launch instance** button.
|
||||||
|
|
@ -610,7 +679,9 @@ Fill out the `Name` field with a name of your preference.
|
||||||
For the **Application and OS images** select `Ubuntu Server 22.04 LTS (HVM), SSD Volume Type`.
|
For the **Application and OS images** select `Ubuntu Server 22.04 LTS (HVM), SSD Volume Type`.
|
||||||
|
|
||||||
::: danger
|
::: danger
|
||||||
|
|
||||||
**Make sure that it has `Free tier eligible` next to it.**
|
**Make sure that it has `Free tier eligible` next to it.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||

|

|
||||||
|
|
@ -620,7 +691,9 @@ For the **Instance type** select `t2.micro`.
|
||||||
For the **Key pair (login)** click on **Create new key pair** and name it `VpsRoot`, leave the rest of settings as default and click **Create key pair**, this will generate a RSA private key that will be automatically downloaded.
|
For the **Key pair (login)** click on **Create new key pair** and name it `VpsRoot`, leave the rest of settings as default and click **Create key pair**, this will generate a RSA private key that will be automatically downloaded.
|
||||||
|
|
||||||
::: danger
|
::: danger
|
||||||
|
|
||||||
**Make sure that you save this file in a safe place and do not loose it, it's of an upmost importance since it's used to access the root/admin account of the VPS. Without it you will not be able to access the root account of the VPS! Also do not let it fall into wrong hands.**
|
**Make sure that you save this file in a safe place and do not loose it, it's of an upmost importance since it's used to access the root/admin account of the VPS. Without it you will not be able to access the root account of the VPS! Also do not let it fall into wrong hands.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||

|

|
||||||
|
|
@ -632,7 +705,9 @@ For the **Network settings** check the following checkboxes on:
|
||||||
- `Allow HTTP traffic from the internet`
|
- `Allow HTTP traffic from the internet`
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**The SSH traffic from Anywhere is not the best thing for security, you might want to enter IP addresses of your devices from which you want to access the VPS manually.**
|
**The SSH traffic from Anywhere is not the best thing for security, you might want to enter IP addresses of your devices from which you want to access the VPS manually.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||

|

|
||||||
|
|
@ -654,11 +729,15 @@ ssh -i <name of your private root key here> ubuntu@<your public dns v4 ip here>
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**`<` and `>` are not typed, that is just a notation for a placeholder!**
|
**`<` and `>` are not typed, that is just a notation for a placeholder!**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**`ubuntu` is a default root account username for Ubuntu on AWS!**
|
**`ubuntu` is a default root account username for Ubuntu on AWS!**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Example:
|
Example:
|
||||||
|
|
@ -674,7 +753,9 @@ Now you can continue to [Creating a new user](#creating-a-new-user)
|
||||||
### Initial VPS setup
|
### Initial VPS setup
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**This section if for those who do not use AWS, if you use AWS skip it**
|
**This section if for those who do not use AWS, if you use AWS skip it**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
When you order the VPS, most likely you will be asked to provide the root account name and password, if it is the case, name the account as `root` and give it a password of your choice.
|
When you order the VPS, most likely you will be asked to provide the root account name and password, if it is the case, name the account as `root` and give it a password of your choice.
|
||||||
|
|
@ -690,7 +771,9 @@ ssh <username>@<ip>
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**If you're given a custom port other than `22` by your host, you should add `-p <port here>` before the username (eg. `ssh -p <port here> <username>@<ip>`) or `:<port>` after the ip (eg. `ssh <username>@<ip>:<port>`)**
|
**If you're given a custom port other than `22` by your host, you should add `-p <port here>` before the username (eg. `ssh -p <port here> <username>@<ip>`) or `:<port>` after the ip (eg. `ssh <username>@<ip>:<port>`)**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Example:
|
Example:
|
||||||
|
|
@ -714,7 +797,9 @@ Once you've logged in to your VPS you need to create a new user and give it SSH
|
||||||
In this tutorial we will be using `mcc` as a name for the user account that will be running the MCC.
|
In this tutorial we will be using `mcc` as a name for the user account that will be running the MCC.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You may be wondering why we're creating a separate user account and making it be accessible over SSH only. This is for security reasons, if you do not want to do this, you're free to skip it, but be careful.**
|
**You may be wondering why we're creating a separate user account and making it be accessible over SSH only. This is for security reasons, if you do not want to do this, you're free to skip it, but be careful.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
To create a new user named `mcc` execute the following command:
|
To create a new user named `mcc` execute the following command:
|
||||||
|
|
@ -730,11 +815,15 @@ sudo passwd mcc
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**When you're typing a password it will not be displayed on the screen, but you're typing it for real.**
|
**When you're typing a password it will not be displayed on the screen, but you're typing it for real.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Make sure you have a strong password!**
|
**Make sure you have a strong password!**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Now we need to give our user account the admin permissions:
|
Now we need to give our user account the admin permissions:
|
||||||
|
|
@ -883,7 +972,9 @@ ssh -i MCC_Key mcc@3.71.108.69
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**If you've changed the `Port`, make sure you add a `-p <your port here>` option after the `-i <key>` option (eg. `ssh -i MCC_Key -p 8973 mcc@3.71.108.69`)!**
|
**If you've changed the `Port`, make sure you add a `-p <your port here>` option after the `-i <key>` option (eg. `ssh -i MCC_Key -p 8973 mcc@3.71.108.69`)!**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
If did everything correctly you should see a Linux prompt and a welcome message if there is one on your provider.
|
If did everything correctly you should see a Linux prompt and a welcome message if there is one on your provider.
|
||||||
|
|
@ -895,11 +986,15 @@ Now you can install .NET Core 6 and MCC.
|
||||||
### Installing .NET Core 6
|
### Installing .NET Core 6
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**If your VPS has an ARM CPU, follow [this](#installing-net-on-arm) part of the documentation and then return to section after this one.**
|
**If your VPS has an ARM CPU, follow [this](#installing-net-on-arm) part of the documentation and then return to section after this one.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**With newer versions of .NET Core 6 on Ubuntu 22.04 you might get the following error: `A fatal error occurred, the folder [/usr/share/dotnet/host/fxr] does not contain any version-numbered child folders`, if you get it, use [this solution](https://github.com/dotnet/sdk/issues/27082#issuecomment-1211143446)**
|
**With newer versions of .NET Core 6 on Ubuntu 22.04 you might get the following error: `A fatal error occurred, the folder [/usr/share/dotnet/host/fxr] does not contain any version-numbered child folders`, if you get it, use [this solution](https://github.com/dotnet/sdk/issues/27082#issuecomment-1211143446)**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Log in as the user you've created.
|
Log in as the user you've created.
|
||||||
|
|
@ -977,7 +1072,9 @@ If it was successful, you can now install the MCC.
|
||||||
Now that you have .NET Core 6.0 and a user account, you should install the `screen` utility, you will need this in order to keep the MCC running once you close down the SSH session (if you do not have it, the MCC will just stop working once you disconnect). You can look at the `screen` like a window, except it's in a terminal, it lets you have multiple "windows" open at the same time.
|
Now that you have .NET Core 6.0 and a user account, you should install the `screen` utility, you will need this in order to keep the MCC running once you close down the SSH session (if you do not have it, the MCC will just stop working once you disconnect). You can look at the `screen` like a window, except it's in a terminal, it lets you have multiple "windows" open at the same time.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**There is also a Docker method, if you're using Docker, you do not need the `screen` program.**
|
**There is also a Docker method, if you're using Docker, you do not need the `screen` program.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
You also can learn about the screen command from [this Youtube tutorial](https://youtu.be/_ZJiEX4rmN4).
|
You also can learn about the screen command from [this Youtube tutorial](https://youtu.be/_ZJiEX4rmN4).
|
||||||
|
|
@ -997,7 +1094,9 @@ Now you can install the MCC:
|
||||||
How to use the `screen` command?
|
How to use the `screen` command?
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**If you have issues with Screen command, like output not being properly formatted or program handing/freezing, try using tmux, click [here](https://www.youtube.com/watch?v=Yl7NFenTgIo) to learn how to use it.**
|
**If you have issues with Screen command, like output not being properly formatted or program handing/freezing, try using tmux, click [here](https://www.youtube.com/watch?v=Yl7NFenTgIo) to learn how to use it.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
To start a screen, type:
|
To start a screen, type:
|
||||||
|
|
@ -1007,11 +1106,15 @@ screen -S mcc
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**`mcc` here is the name of the screen, you can use whatever you like, but if you've used a different name, make sure you use that one instead of the `mcc` in the following commands.**
|
**`mcc` here is the name of the screen, you can use whatever you like, but if you've used a different name, make sure you use that one instead of the `mcc` in the following commands.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You need to make a screen only once, however if you reboot your VPS, you need to start it on each reboot.**
|
**You need to make a screen only once, however if you reboot your VPS, you need to start it on each reboot.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Now you will be in the screen, now you can start the MCC and detach from the screen.
|
Now you will be in the screen, now you can start the MCC and detach from the screen.
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,9 @@ Using the command line parameters:
|
||||||
Simply run `MinecraftClient.exe`
|
Simply run `MinecraftClient.exe`
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**On Windows it's best using [Windows Terminal](https://docs.microsoft.com/en-us/windows/terminal/install) for the best experience and looks. Some features like emojis in the [`/chunk`](#chunk) command do not work in CMD or Powershell 5**
|
**On Windows it's best using [Windows Terminal](https://docs.microsoft.com/en-us/windows/terminal/install) for the best experience and looks. Some features like emojis in the [`/chunk`](#chunk) command do not work in CMD or Powershell 5**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
## Linux, macOS
|
## Linux, macOS
|
||||||
|
|
@ -29,6 +31,7 @@ To run the client you need to type the following command in your terminal emulat
|
||||||
```
|
```
|
||||||
|
|
||||||
If you want to keep it running in the background you can use `screen` (Linux only)
|
If you want to keep it running in the background you can use `screen` (Linux only)
|
||||||
|
|
||||||
Example:
|
Example:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|
@ -93,7 +96,9 @@ MinecraftClient.exe --help
|
||||||
### Quick usage of MCC with examples
|
### Quick usage of MCC with examples
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**On Linux and macOS, you need to type: `./MinecraftClient` instead of `MinecraftClient.exe`**
|
**On Linux and macOS, you need to type: `./MinecraftClient` instead of `MinecraftClient.exe`**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|
@ -174,7 +179,9 @@ From chat prompt, commands must by default be prepended with a slash, eg. `/quit
|
||||||
In scripts and remote control, no slash is needed to perform the command, eg. `quit`.
|
In scripts and remote control, no slash is needed to perform the command, eg. `quit`.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Some commands may not be documented yet or are defined in description of Chat Bots, use `/help` to list them all, or you can contribute to this page.**
|
**Some commands may not be documented yet or are defined in description of Chat Bots, use `/help` to list them all, or you can contribute to this page.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
### `animation`
|
### `animation`
|
||||||
|
|
@ -259,7 +266,9 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
Change your selected slot in the hotbar.
|
Change your selected slot in the hotbar.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
**You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Usage:**
|
- **Usage:**
|
||||||
|
|
@ -275,11 +284,15 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
Displays the chunk loading status in a nice way.
|
Displays the chunk loading status in a nice way.
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**To use this feature you need to enable the [Terrain and Movements](configuration.md#terrainandmovements)**
|
**To use this feature you need to enable the [Terrain and Movements](configuration.md#terrainandmovements)**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You need a terminal with emoji support, like Powershell 7, Windows Terminal or Alacritty, if you do not want emoji support and want to use cmd or powershell 5, disable emojis with: [`enableemoji`](configuration.md#enableemoji)**
|
**You need a terminal with emoji support, like Powershell 7, Windows Terminal or Alacritty, if you do not want emoji support and want to use cmd or powershell 5, disable emojis with: [`enableemoji`](configuration.md#enableemoji)**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Usage:**
|
- **Usage:**
|
||||||
|
|
@ -323,7 +336,9 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
Drop all items of a specific type from your inventory.
|
Drop all items of a specific type from your inventory.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
**You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Usage:**
|
- **Usage:**
|
||||||
|
|
@ -333,7 +348,9 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**All item types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs).**
|
**All item types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs).**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Example:**
|
- **Example:**
|
||||||
|
|
@ -349,7 +366,9 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
Attack an entity, use an entity or get a list of entities around you.
|
Attack an entity, use an entity or get a list of entities around you.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Entity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
**You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Entity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Usage:**
|
- **Usage:**
|
||||||
|
|
@ -367,7 +386,9 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**All entity types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Mapping/EntityType.cs).**
|
**All entity types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Mapping/EntityType.cs).**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Examples:**
|
- **Examples:**
|
||||||
|
|
@ -390,7 +411,9 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
Also the instance of MCC is available with `MCC.`.
|
Also the instance of MCC is available with `MCC.`.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**All local variables are treated as strings in the app, when comparing their values, you can use `<variable> == "<value>"`, or better use [`.Equals`](https://www.programiz.com/csharp-programming/library/string/equals) method**
|
**All local variables are treated as strings in the app, when comparing their values, you can use `<variable> == "<value>"`, or better use [`.Equals`](https://www.programiz.com/csharp-programming/library/string/equals) method**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Usage:**
|
- **Usage:**
|
||||||
|
|
@ -411,18 +434,21 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
/execif test2 == "1" ---> send Success 2!
|
/execif test2 == "1" ---> send Success 2!
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
Basic C# expression:
|
Basic C# expression:
|
||||||
|
|
||||||
```
|
```
|
||||||
/execif 1 + 2 + 3 == 6 ---> send Success!
|
/execif 1 + 2 + 3 == 6 ---> send Success!
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
Using MCC class:
|
Using MCC class:
|
||||||
|
|
||||||
```
|
```
|
||||||
/execif MCC.GetHealth() == 20.0 ---> send Success!
|
/execif MCC.GetHealth() == 20.0 ---> send Success!
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
Using in combination with [`execmulti`](#execmulti):
|
Using in combination with [`execmulti`](#execmulti):
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
@ -467,7 +493,9 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
**`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
### `reload`
|
### `reload`
|
||||||
|
|
@ -477,7 +505,9 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
Reloads settings from MinecraftClient.ini and Chat Bots.
|
Reloads settings from MinecraftClient.ini and Chat Bots.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Some settings won't be reloaded since they are used before the client initialization. Also, settings provided by the command line paramteres will be overriden. This also does not reload the ReplayBot due to technical limitations.**
|
**Some settings won't be reloaded since they are used before the client initialization. Also, settings provided by the command line paramteres will be overriden. This also does not reload the ReplayBot due to technical limitations.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Usage:**
|
- **Usage:**
|
||||||
|
|
@ -499,11 +529,15 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**`<server>` is either a server IP or a server alias defined in servers file, for more info check out [serverlist](configuration.html#serverlist)**
|
**`<server>` is either a server IP or a server alias defined in servers file, for more info check out [serverlist](configuration.html#serverlist)**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
**`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
### `script`
|
### `script`
|
||||||
|
|
@ -641,11 +675,15 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
Use item in the hand, this can be used to do a right click on items which open menus on servers.
|
Use item in the hand, this can be used to do a right click on items which open menus on servers.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
**You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`**
|
**The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Usage:**
|
- **Usage:**
|
||||||
|
|
@ -669,15 +707,21 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
- loom
|
- loom
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
**You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Not all inventories have a GUI representation in an ASCII art format.**
|
**Not all inventories have a GUI representation in an ASCII art format.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
**The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Usage:**
|
- **Usage:**
|
||||||
|
|
@ -699,15 +743,21 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
Make the bot follow a player.
|
Make the bot follow a player.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**This command is avaliable only with [Follow Player](chat-bots.md#follow-player) Chat Bot enabled.**
|
**This command is avaliable only with [Follow Player](chat-bots.md#follow-player) Chat Bot enabled.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
**You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You need to have [Enity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
**You need to have [Enity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Usage:**
|
- **Usage:**
|
||||||
|
|
@ -747,11 +797,15 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
Used for moving when terrain and movements feature is enabled.
|
Used for moving when terrain and movements feature is enabled.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You need to have [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
**You need to have [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**The [Terrain and Movements](configuration.md#terrainandmovements) is currently not supported in `1.4.6 - 1.6`.**
|
**The [Terrain and Movements](configuration.md#terrainandmovements) is currently not supported in `1.4.6 - 1.6`.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
- **Usage:**
|
- **Usage:**
|
||||||
|
|
@ -809,11 +863,15 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
Used for inventory manipulation.
|
Used for inventory manipulation.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
**You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: warning
|
::: warning
|
||||||
|
|
||||||
**The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
**The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
MCC defines inventories as containers internally, so player's inventory, chests, droppers, dispensers, hoppers, chest minecarts, barrels, furnaces, etc... are all considered a container, and each one of them has it's ID, the words container and inventory can be used interchangeably.
|
MCC defines inventories as containers internally, so player's inventory, chests, droppers, dispensers, hoppers, chest minecarts, barrels, furnaces, etc... are all considered a container, and each one of them has it's ID, the words container and inventory can be used interchangeably.
|
||||||
|
|
@ -821,7 +879,9 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
Inventory has slots and each one of them has an id.
|
Inventory has slots and each one of them has an id.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**This command DOES NOT physically open a container (eg. chest), for that you need to use [`useblock`](#useblock) command first.**
|
**This command DOES NOT physically open a container (eg. chest), for that you need to use [`useblock`](#useblock) command first.**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
An example of player inventory with annotated IDs in ASCII art and a list of items:
|
An example of player inventory with annotated IDs in ASCII art and a list of items:
|
||||||
|
|
@ -837,7 +897,9 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**player and container can be simplified with p and c accordingly**
|
**player and container can be simplified with p and c accordingly**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Actions:
|
Actions:
|
||||||
|
|
@ -859,7 +921,9 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**The default click is left click**
|
**The default click is left click**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Close an inventory:
|
Close an inventory:
|
||||||
|
|
@ -875,7 +939,9 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**To drop all items from a slot, you can use: `all`**
|
**To drop all items from a slot, you can use: `all`**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
Give an item to the player inventory from a creative menu when in the creative mode:
|
||||||
|
|
@ -885,7 +951,9 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
**To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Delete an item from a player's inventory when in the creative mode:
|
Delete an item from a player's inventory when in the creative mode:
|
||||||
|
|
@ -957,7 +1025,9 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
```
|
```
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
**To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Delete an item from a player's inventory in slot number/id `36` when in the creative mode:
|
Delete an item from a player's inventory in slot number/id `36` when in the creative mode:
|
||||||
|
|
@ -985,5 +1055,7 @@ In scripts and remote control, no slash is needed to perform the command, eg. `q
|
||||||
Show commands help.
|
Show commands help.
|
||||||
|
|
||||||
::: tip
|
::: tip
|
||||||
|
|
||||||
**Use "/send /help" for server help**
|
**Use "/send /help" for server help**
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
|
||||||
|
|
@ -1,28 +0,0 @@
|
||||||
---
|
|
||||||
home: true
|
|
||||||
heroImage: /images/MCC_logo_with_edge.png
|
|
||||||
tagline: 'Minecraft Console Client (MCC) is a lightweight open-source Minecraft Java client implemented in C#'
|
|
||||||
actions:
|
|
||||||
-
|
|
||||||
text: Installation
|
|
||||||
link: ./guide/installation.md
|
|
||||||
type: primary
|
|
||||||
-
|
|
||||||
text: Learn More →
|
|
||||||
link: ./guide/
|
|
||||||
type: secondary
|
|
||||||
actionText:
|
|
||||||
actionLink:
|
|
||||||
features:
|
|
||||||
-
|
|
||||||
title: Chat
|
|
||||||
details: Chat with other people on the server
|
|
||||||
-
|
|
||||||
title: Automation
|
|
||||||
details: Create bots to do automated tasks
|
|
||||||
-
|
|
||||||
title: Supported Versions
|
|
||||||
details: 1.4 - 1.19.2
|
|
||||||
footer: Made by MCC Team with ❤️
|
|
||||||
---
|
|
||||||
|
|
||||||
|
|
@ -1,163 +0,0 @@
|
||||||
# Introduction
|
|
||||||
|
|
||||||
- [About](#about)
|
|
||||||
- [Quick Intro (YouTube Videos)](#quick-intro)
|
|
||||||
- [Features](#features)
|
|
||||||
- [Why Minecraft Console Client?](#why-minecraft-console-client)
|
|
||||||
- [Getting Help](#getting-help)
|
|
||||||
- [Submitting a bug report or an idea/feature-request](#bugs-ideas-feature-requests)
|
|
||||||
- [Important notes on some features](#notes-on-some-features)
|
|
||||||
- [Credits](#credits)
|
|
||||||
- [Disclaimer](#disclaimer)
|
|
||||||
- [License](#license)
|
|
||||||
|
|
||||||
## About
|
|
||||||
|
|
||||||
**Minecraft Console Client (MCC)** is a lightweight cross-platform open-source **Minecraft** TUI client for **Java edition** that allows you to connect to any Minecraft Java server, send commands and receive text messages in a fast and easy way without having to open the main Minecraft game.
|
|
||||||
|
|
||||||
It also provides various automations that you can enable for administration and other purposes, as well as extensible C# API for creating Bots.
|
|
||||||
|
|
||||||
It was originally made by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/), now it's maintained by him and many other contributors from the community.
|
|
||||||
|
|
||||||
## Features
|
|
||||||
|
|
||||||
- Chat
|
|
||||||
|
|
||||||
- Send and receive chat messages
|
|
||||||
- [Log chat history](chat-bots.md#chat-log)
|
|
||||||
- [Get alerted on certain keywords](chat-bots.md#alerts)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
|
|
||||||
- [Anti AFK](chat-bots.md#anti-afk)
|
|
||||||
- [Auto Relog](chat-bots.md#auto-relog)
|
|
||||||
- [Script Scheduler](chat-bots.md#script-scheduler)
|
|
||||||
- [Remote Control](chat-bots.md#remote-control)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
- [Auto Attack](chat-bots.md#auto-attack)
|
|
||||||
- [Auto Fishing](chat-bots.md#auto-fishing)
|
|
||||||
- [Auto Eat](chat-bots.md#auto-eat)
|
|
||||||
- [Auto Craft](chat-bots.md#auto-craft)
|
|
||||||
- [Mailer Bot](chat-bots.md#mailer)
|
|
||||||
- [Auto Drop](chat-bots.md#auto-drop)
|
|
||||||
- [Replay Mod](chat-bots.md#replay-mod)
|
|
||||||
- [API for creating Bots in C#](creating-bots.md#creating-chat-bots)
|
|
||||||
- [Docker Support](installation.md#using-docker)
|
|
||||||
- [Inventory Handling](usage.md#inventory)
|
|
||||||
- [Terrain Traversing](usage.md#move)
|
|
||||||
- Entity Handling
|
|
||||||
|
|
||||||
_NOTE: Some of mentioned features are disabled by default and you will have to turn them on in the configuration file and some may require additional configuration on your part for your specific usage._
|
|
||||||
|
|
||||||
## Why Minecraft Console Client?
|
|
||||||
|
|
||||||
- Easy to use
|
|
||||||
- Helpful community
|
|
||||||
- Open-Source
|
|
||||||
- Fast performance
|
|
||||||
- Cross-Platform
|
|
||||||
- Docker Support
|
|
||||||
- 10 years of continuous development
|
|
||||||
- Active contributors
|
|
||||||
- Widely used
|
|
||||||
|
|
||||||
## Quick Intro
|
|
||||||
|
|
||||||
Don't have time to read through the documentation, we got you, our community has made some simple introduction videos about the **Minecraft Console Client**.
|
|
||||||
|
|
||||||
### The list of the tutorials:
|
|
||||||
|
|
||||||
Installation:
|
|
||||||
|
|
||||||
- [Installation on Windows by Daenges](https://www.youtube.com/watch?v=BkCqOCa2uQw)
|
|
||||||
- [Installation on Windows + Auto AFK and More by Dexter113](https://www.youtube.com/watch?v=FxJ0KFIHDrY)
|
|
||||||
|
|
||||||
Using Commands, Scripts and other features:
|
|
||||||
|
|
||||||
- [Minecraft Console Client | Tutorial | Commands, Scripts, AppVars, Matches, Tasks and C# Scripts by Daenges](https://youtu.be/JbDpwwETEnU)
|
|
||||||
- [Console Client Tutorial - Scripting by Zixxter](https://www.youtube.com/watch?v=XE7rYBFJxn0)
|
|
||||||
|
|
||||||
## Getting Help
|
|
||||||
|
|
||||||
MCC has a community that is willing to help, we have a Discussions section in out Git Hub repository.
|
|
||||||
|
|
||||||
Click [here](https://github.com/MCCTeam/Minecraft-Console-Client/discussions) to access it.
|
|
||||||
|
|
||||||
### Before getting help
|
|
||||||
|
|
||||||
- **Please use the search option here or in the discussion section and read the documentation so we avoid duplicate questions. Thank you!**
|
|
||||||
- **Please be kind and patient, respect others as they're the ones using their time to help you**
|
|
||||||
|
|
||||||
## Bugs, Ideas, Feature Requests
|
|
||||||
|
|
||||||
Bug reporting, idea submitting or feature requesting are done in the [Issues](https://github.com/MCCTeam/Minecraft-Console-Client/issues) section of our [Github repository]([here](https://github.com/MCCTeam/Minecraft-Console-Client)).
|
|
||||||
|
|
||||||
Navigate to the Issues section, search for a bug, idea or a feature using the search option here in the documentation and in the `Issues` section on Git Hub before making your own.
|
|
||||||
|
|
||||||
If you haven't found anything similar, go ahead and click on the `New issue` button, then choose what you want to do.
|
|
||||||
|
|
||||||
If you're reporting a bug, please be descriptive as much as possible, try to explain how to re-create the bug, attack screenshots and logs, make sure that you have [`debugmessages`](configuration.me#debugmessages) set to `true` before sending a bug report or taking a screenshot.
|
|
||||||
|
|
||||||
### Before submitting
|
|
||||||
|
|
||||||
- **Please use the search option here or in the `Issues` section and read the documentation so we avoid duplicate questions/ideas/reports. Thank you!**
|
|
||||||
- **Please be kind, patient and respect others. Thank you!**
|
|
||||||
|
|
||||||
## Notes on some features
|
|
||||||
|
|
||||||
### Inventory, Terrain and Entity Handling
|
|
||||||
|
|
||||||
Inventory handling is currently not supported in versions: `1.4.6 - 1.9`
|
|
||||||
|
|
||||||
Terrain handling is currently not supported in versions: `1.4.6 - 1.6`
|
|
||||||
|
|
||||||
Entity handling is currently not supported in versions: `1.4.6 - 1.9` (but `1.8` and `1.9` are being worked on, almost at the working state, only `EntityMetadata` packet remains to be fixed)
|
|
||||||
|
|
||||||
There features might not always be implemented in the latest version of the game, since they're often subjected to major changes by Mojang, and we need some time to figure out what has changed and to implement the required changes.
|
|
||||||
|
|
||||||
If there was a major game update, and the MCC hasn't been updated to support these features, if you're a programmer, feel free to contribute to the project.
|
|
||||||
|
|
||||||
## Credits
|
|
||||||
|
|
||||||
_Project initiated by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/)._
|
|
||||||
|
|
||||||
Many features would not have been possible without the help of our talented community:
|
|
||||||
|
|
||||||
**Maintainers**
|
|
||||||
|
|
||||||
ORelio, ReinforceZwei, milutinke, BruceChenQAQ, bradbyte
|
|
||||||
|
|
||||||
**Ideas**
|
|
||||||
|
|
||||||
ambysdotnet, Awpocalypse, azoundria, bearbear12345, bSun0000, Cat7373, dagonzaros, Dids, Elvang, fuckofftwice, GeorgH93, initsuj, JamieSinn, joshbean39, LehmusFIN, maski, medxo, mobdon, MousePak, TNT-UP, TorchRJ, yayes2, Yoann166, ZizzyDizzyMC and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BIdea%5D+is%3Aopen).
|
|
||||||
|
|
||||||
**Bug Hunters**
|
|
||||||
|
|
||||||
1092CQ, ambysdotnet, bearbear12345, c0dei, Cat7373, Chtholly, Darkaegis, dbear20, DigitalSniperz, doranchak, drXor, FantomHD, gerik43, ibspa, iTzMrpitBull, JamieSinn, k3ldon, KenXeiko, link3321, lyze237, mattman00000, Nicconyancat, Pokechu22, ridgewell, Ryan6578, Solethia, TNT-UP, TorchRJ, TRTrident, WeedIsGood, xp9kus, Yoann166 and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BBUG%5D+is%3Aopen+).
|
|
||||||
|
|
||||||
**Contributors**
|
|
||||||
|
|
||||||
Allyoutoo, Aragas, Bancey, bearbear12345, corbanmailloux, Daenges, dbear20, dogwatch, initsuj, JamieSinn, justcool393, lokulin, maxpowa, medxo, milutinke, Pokechu22, ReinforceZwei, repository, TheMeq, TheSnoozer, vkorn, v1RuX, yunusemregul, ZizzyDizzyMC, BruceChenQAQ, bradbyte _... And all the [GitHub contributors](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors)!_
|
|
||||||
|
|
||||||
**Libraries:**
|
|
||||||
|
|
||||||
Minecraft Console Client also borrows code from the following libraries:
|
|
||||||
|
|
||||||
| Name | Purpose | Author | License |
|
|
||||||
| ----------- | ---------------- | ---------------- | ------- |
|
|
||||||
| Biko | Proxy handling | Benton Stark | MIT |
|
|
||||||
| Heijden.Dns | DNS SRV Lookup | Geoffrey Huntley | MIT |
|
|
||||||
| DotNetZip | Zlib compression | Dino Chiesa | MS-PL |
|
|
||||||
|
|
||||||
## Disclaimer
|
|
||||||
|
|
||||||
Even if everything should work, we are not responsible for any damage this app could cause to your computer or your server. This app does not steal your password. If you don't trust it, don't use it or check & compile from the source code.
|
|
||||||
|
|
||||||
Also, remember that when you connect to a server with this program, you will appear where you left the last time. This means that **you can die if you log in in an unsafe place on a survival server!** Use the script scheduler bot to send a teleport command after logging in.
|
|
||||||
|
|
||||||
We remind you that **you may get banned** by your server for using this program. Use accordingly with server rules.
|
|
||||||
|
|
||||||
## License
|
|
||||||
|
|
||||||
Minecraft Console Client is a totally free of charge, open source project. The source code is available at [Github Repository](https://github.com/MCCTeam/Minecraft-Console-Client)
|
|
||||||
|
|
||||||
Unless specifically stated, source code is from the MCC Team or Contributors, and available under CDDL-1.0. More info about CDDL-1.0: [http://qstuff.blogspot.fr/2007/04/why-cddl.html](http://qstuff.blogspot.fr/2007/04/why-cddl.html) Full license at [http://opensource.org/licenses/CDDL-1.0](http://opensource.org/licenses/CDDL-1.0)
|
|
||||||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1,76 +0,0 @@
|
||||||
# Contributing
|
|
||||||
|
|
||||||
At this moment this page needs to be created.
|
|
||||||
|
|
||||||
For now you can use our article from the [Git Hub repository Wiki](https://github.com/MCCTeam/Minecraft-Console-Client/wiki/Update-console-client-to-new-version) written by [ReinforceZwei](https://github.com/ReinforceZwei).
|
|
||||||
|
|
||||||
## Translations
|
|
||||||
|
|
||||||
MCC now supports the following languages (Alphabetical order) :
|
|
||||||
* `de.ini` : Deutsch - German
|
|
||||||
* **`en.ini` : English - English**
|
|
||||||
* `fr.ini` : Français (France) - French
|
|
||||||
* `ru.ini` : Русский (Russkiy) - Russian
|
|
||||||
* `vi.ini` : Tiếng Việt (Việt Nam) - Vietnamese
|
|
||||||
* `zh-Hans.ini` : 简体中文 - Chinese Simplified
|
|
||||||
* `zh-Hant.ini` : 繁體中文 - Chinese Traditional
|
|
||||||
|
|
||||||
### Add new translation
|
|
||||||
|
|
||||||
1. First you need to get the name of the translated file.
|
|
||||||
* Visit [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c) and find the first occurrence of the language you need to translate in the table below.
|
|
||||||
* Use the language code of the row in the table as the name of the translation file.
|
|
||||||
* For example:
|
|
||||||
* `English` -> row `English 0x0009` -> `en` -> `en.ini`
|
|
||||||
* `Chinese (Traditional)` -> row `Chinese (Traditional) 0x7C04` -> `zh-Hant` -> `zh-Hant.ini`
|
|
||||||
|
|
||||||
2. Which system languages are recommended to use this translation?
|
|
||||||
* Still check the table in [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c), one language may have multiple rows.
|
|
||||||
* You will need to indicate which language codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `de.ini` applies to `de`, `de-AT`, `de-BE`, `de-DE`, ...
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh-Hans`, `zh`, `zh-CN`, `zh-SG`.
|
|
||||||
|
|
||||||
3. Which game languages are recommended to use this translation?
|
|
||||||
* Check out the table in [this link](https://github.com/MCCTeam/Minecraft-Console-Client/discussions/2239), where the `Locale Code` column indicates the language code in minecraft.
|
|
||||||
* You will need to indicate which locale codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `fr.ini` applies to `fr_ca`, `fr_fr`.
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh_cn`.
|
|
||||||
|
|
||||||
4. Add the new translation to the code. (Optional)
|
|
||||||
* **If you are not familiar with programming, you can skip this step and just write the above information in your PR or issue.**
|
|
||||||
* Add the newly created translation file `xx.ini` to the project `/Resources/lang/xx.ini`.
|
|
||||||
* Open `/DefaultConfigResource.resx`.
|
|
||||||
* Click `Add Resources`.
|
|
||||||
* Choose `/Resources/lang/xx.ini`.
|
|
||||||
* Rename the added resource file in `/DefaultConfigResource.resx` to `Translation_xx`.
|
|
||||||
* Open `/Translations.cs`.
|
|
||||||
* Find `public static Tuple<string, string[]> GetTranslationPriority();`
|
|
||||||
* Update the mapping of system language codes to translation files.
|
|
||||||
* Find `public static string[] GetTranslationPriority(string gameLanguage);`
|
|
||||||
* Update the mapping of game locale code to translation files.
|
|
||||||
|
|
||||||
5. Follow the section "Update existing translation".
|
|
||||||
|
|
||||||
### Update existing translation
|
|
||||||
|
|
||||||
1. Visit [the lang folder](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/Resources/lang), download `en.ini` and the language you want to translate(`xx.ini`).
|
|
||||||
|
|
||||||
2. Compare `en.ini` and `xx.ini` and update outdated or non-existent entries in `xx.ini`.
|
|
||||||
|
|
||||||
3. Once you finished the translation work, submit a pull request or send us the file through an [Issue](https://github.com/MCCTeam/Minecraft-Console-Client/issues) in case you are not familiar with Git.
|
|
||||||
|
|
||||||
### Translate README.md
|
|
||||||
|
|
||||||
1. Get the English version of the README.md from [here](https://raw.githubusercontent.com/MCCTeam/Minecraft-Console-Client/master/README.md).
|
|
||||||
|
|
||||||
2. See `Add new translation -> 1.` for the target language code. Assume it is `xx`.
|
|
||||||
|
|
||||||
3. Complete the translation according to the English README.md and name the translated version as `README-xx.md`.
|
|
||||||
|
|
||||||
4. In the English README, above the "About" section, add the name of the language and a hyperlink to `README-xx.md`.
|
|
||||||
|
|
||||||
## Contributors
|
|
||||||
|
|
||||||
[Check out our contributors on Github](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors).
|
|
||||||
|
|
@ -1,177 +0,0 @@
|
||||||
# Creating Chat Bots
|
|
||||||
|
|
||||||
- [Notes](#notes)
|
|
||||||
- [Requirements](#requirements)
|
|
||||||
- [Quick Introduction](#quick-introduction)
|
|
||||||
- [Examples](#examples)
|
|
||||||
- [C# API](#c#-api)
|
|
||||||
|
|
||||||
## Notes
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For now this page contains only the bare basics of the Chat Bot API, enough of details to teach you how to make basic Chat Bots. For more details you need to take a look at the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) and [Examples](#examples). This page will be improved in the future.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a rich C# API which allows you to create Chat Bots (effectively plugins) which can help you create complex automations which normal scripts may not be able to do.
|
|
||||||
|
|
||||||
## Requirements
|
|
||||||
|
|
||||||
- A basic knowledge of C# programming language
|
|
||||||
- A text editor
|
|
||||||
|
|
||||||
If you're not familiar with the C# programming language, we suggest taking a look at the following resources:
|
|
||||||
|
|
||||||
Crash courses:
|
|
||||||
|
|
||||||
- [C# Crash Course playlist by Teddy Smit](https://www.youtube.com/watch?v=67oWw9TanOk&list=PL82C6-O4XrHfoN_Y4MwGvJz5BntiL0z0D)
|
|
||||||
|
|
||||||
More in-depth:
|
|
||||||
|
|
||||||
- [Learn C# Youtube Playlist by Microsoft](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVxKLQCHpiUWun7vlJJvUiN)
|
|
||||||
- [Getting started with C# (An index of tutorials and the documentation) by Microsoft](https://docs.microsoft.com/en-us/dotnet/csharp/)
|
|
||||||
|
|
||||||
## Quick Introduction
|
|
||||||
|
|
||||||
This introduction assumes that you have the basic knowledge of C#.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Here we will use terms Chat Bot and Script interchangeably**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Create a new empty file and name it `ExampleChatBot.cs` in the same folder where you have your MCC installed.
|
|
||||||
|
|
||||||
Paste the following example code:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
MCC.LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
|
|
||||||
// The code and comments above are defining a "Script Metadata" section
|
|
||||||
|
|
||||||
// Every single chat bot (script) must be a class which extends the ChatBot class.
|
|
||||||
// Your class must be instantiates in the "Script Metadata" section and passed to MCC.LoadBot function.
|
|
||||||
class ExampleChatBot : ChatBot
|
|
||||||
{
|
|
||||||
// This method will be called when the script has been initialized for the first time, it's called only once
|
|
||||||
// Here you can initialize variables, eg. Dictionaries. etc...
|
|
||||||
public override void Initialize()
|
|
||||||
{
|
|
||||||
LogToConsole("An example Chat Bot has been initialized!");
|
|
||||||
}
|
|
||||||
|
|
||||||
// This is a function that will be run when we get a chat message from a server
|
|
||||||
// In this example it just detects the type of the message and prints it out
|
|
||||||
public override void GetText(string text)
|
|
||||||
{
|
|
||||||
string message = "";
|
|
||||||
string username = "";
|
|
||||||
text = GetVerbatim(text);
|
|
||||||
|
|
||||||
if (IsPrivateMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has sent you a private message: " + message);
|
|
||||||
}
|
|
||||||
else if (IsChatMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has said: " + message);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
Start MCC, connect to a server and run the following internal command: `/script ExampleChatBot.cs`.
|
|
||||||
|
|
||||||
If you did everything right you should see: `[Example Chat Bot] An example Chat Bot has been initialised!` message appear in your console log.
|
|
||||||
|
|
||||||
### Structure of Chat Bots
|
|
||||||
|
|
||||||
Chat Bot (Script) structure is the following:
|
|
||||||
|
|
||||||
```
|
|
||||||
<script metadata>
|
|
||||||
<chat bot class>
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** is a section with a custom format that mixes in C# with our format using comments. Every single Chat Bot (Script) must have this section at the beginning in order to work.
|
|
||||||
|
|
||||||
### Script Metadata Format
|
|
||||||
|
|
||||||
`//MCCScript 1.0` marks the beginning of the **Script Metadata** section, this must always be on the first line or the Chat Bot (Script) will not load and will throw an error.
|
|
||||||
|
|
||||||
`//MCCScript Extensions` marks the end of the **Script Metadata** section, this must be defined before a Chat Bot (Script) class.
|
|
||||||
|
|
||||||
In order for your Chat Bot (Script) to properly load in-between the `//MCCScript 1.0` and the `//MCCScript Extensions` lines you must instantiate your Chat Bot (Script) class and pass it to the `MCC.LoadBot` function.
|
|
||||||
|
|
||||||
Example code:
|
|
||||||
|
|
||||||
```
|
|
||||||
MCC.LoadBot(new YourChatBotClassNameHere());
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** section allows for including C# packages and libraries with: `//using <namespace>` and `/dll <dll name>`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Avoid adding whitespace between `//` and keywords**
|
|
||||||
:::
|
|
||||||
|
|
||||||
By the default the following packages are loaded:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Text.RegularExpressions;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.IO;
|
|
||||||
using System.Net;
|
|
||||||
using System.Threading;
|
|
||||||
using MinecraftClient;
|
|
||||||
using MinecraftClient.Mapping;
|
|
||||||
using MinecraftClient.Inventory;
|
|
||||||
```
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//using System.Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
```
|
|
||||||
|
|
||||||
Full Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
//using System.Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
|
|
||||||
MCC.LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
```
|
|
||||||
|
|
||||||
### Chat Bot Class
|
|
||||||
|
|
||||||
After the end of the **Script Metadata** section, you basically can define any number of classes you like, the only limitation is that the main class of your Chat Bot (Script) must extend `ChatBot` class.
|
|
||||||
|
|
||||||
There are no required methods, everything is optional.
|
|
||||||
|
|
||||||
When the Chat Bot (Script) has been initialized for the first time the `Initialize` method will be called. In it you can initialize variables, eg. Dictionaries, etc..
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For allocating resources like a database connection, we recommend allocating them in `AfterGameJoined` and freeing them in `OnDisconnect`** :::.
|
|
||||||
|
|
||||||
## Examples
|
|
||||||
|
|
||||||
You can find a lot of examples in our Git Hub Repository at [ChatBots](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/ChatBots) and [config](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/config).
|
|
||||||
|
|
||||||
## C# API
|
|
||||||
|
|
||||||
As of the time of writing, the C# API has been changed in forks that are yet to be merged, so for now you can use the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) for reference.
|
|
||||||
|
|
||||||
Each method is well documented with standard C# documentation comments.
|
|
||||||
|
|
||||||
In the future we will make a script to auto-generate this section based on the documentation in the code.
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -1,958 +0,0 @@
|
||||||
# Usage
|
|
||||||
|
|
||||||
How to run the program:
|
|
||||||
|
|
||||||
- [Running on Windows](#windows)
|
|
||||||
- [Running on Linux, macOS](#linux-macos)
|
|
||||||
- [Running using Docker](#docker)
|
|
||||||
|
|
||||||
Using the command line parameters:
|
|
||||||
|
|
||||||
- [Examples](#quick-usage-of-mcc-with-examples)
|
|
||||||
- [Command line parameters](#command-line-parameters)
|
|
||||||
- [Internal commands](#internal-commands)
|
|
||||||
|
|
||||||
## Windows
|
|
||||||
|
|
||||||
Simply run `MinecraftClient.exe`
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Windows it's best using [Windows Terminal](https://docs.microsoft.com/en-us/windows/terminal/install) for the best experience and looks. Some features like emojis in the [`/chunk`](#chunk) command do not work in CMD or Powershell 5**
|
|
||||||
:::
|
|
||||||
|
|
||||||
## Linux, macOS
|
|
||||||
|
|
||||||
To run the client you need to type the following command in your terminal emulator:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
./MinecraftClient
|
|
||||||
```
|
|
||||||
|
|
||||||
If you want to keep it running in the background you can use `screen` (Linux only) Example:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Start the screen
|
|
||||||
screen -S mcc
|
|
||||||
|
|
||||||
# Run it
|
|
||||||
./MinecraftClient
|
|
||||||
|
|
||||||
# Detach from the screen by pressing CTRL + A + D
|
|
||||||
|
|
||||||
# Re-attach if you want to have accces again
|
|
||||||
screen -r mcc
|
|
||||||
```
|
|
||||||
|
|
||||||
_Learn more on how to use the screen command: [YouTube](https://www.youtube.com/watch?v=_ZJiEX4rmN4)_
|
|
||||||
|
|
||||||
## Docker
|
|
||||||
|
|
||||||
See [Run using Docker](./guide/installation.md#using-docker)
|
|
||||||
|
|
||||||
## Command-line usage
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a plethora of useful command line parameters, here you can learn about them.
|
|
||||||
|
|
||||||
### For people not familiar with the command line
|
|
||||||
|
|
||||||
For people who are not familiar with the usage of programs in the command line (terminal emulators), here we will explain what every single thing means, if you're already experienced you can skip this.
|
|
||||||
|
|
||||||
In command line (terminal emulators) you can run programs by specifying their name and hitting enter, usually programs have additional way of being configured, started or provided some additional data in a different manner, this is achieved by using command line parameters.
|
|
||||||
|
|
||||||
Command line parameters are written after the name of the program, they're separated by spaces and they can have a few different formats, examples:
|
|
||||||
|
|
||||||
- `someparameter`
|
|
||||||
- `-some-parameter`
|
|
||||||
- `--some-other-parameter`
|
|
||||||
- `--some-setting="some value"`
|
|
||||||
- `-a=5`
|
|
||||||
|
|
||||||
Parameters with a single dash (`-`) are usually used for a single letter (short-hand) parameters, while the ones with a double dash (`--`) are being used for parameters with a longer/full name.
|
|
||||||
|
|
||||||
When you are reading examples, you will often see something like this: `<something here>`, this means that this is a place holder and it should be changed with some value, excluding the `<` and the `>`.
|
|
||||||
|
|
||||||
For example `<username>` you need to change to an username of your liking, example: `notch` (`<` and `>` should not be included).
|
|
||||||
|
|
||||||
`[` and `]` mean that a parameter is an optional one.
|
|
||||||
|
|
||||||
They also can hold some values, example from the MCC:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
```
|
|
||||||
|
|
||||||
When a parameter has a textual value that includes one more spaces, you will need to wrap it the value in double quotes (`"`), example: `--some-parameter="some text here with spaces in it"`
|
|
||||||
|
|
||||||
Here is an example for using a `--help` command line parameter for MCC that will print out a page on how to use MCC from the command line:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
```
|
|
||||||
|
|
||||||
### Quick usage of MCC with examples
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Linux and macOS, you need to type: `./MinecraftClient` instead of `MinecraftClient.exe`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
MinecraftClient.exe <username> <password> <server>
|
|
||||||
MinecraftClient.exe <username> <password> <server> "/mycommand"
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
MinecraftClient.exe --section.setting=value [--other settings]
|
|
||||||
MinecraftClient.exe <settings-file.ini> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Logging in as a user: notch, with a password: password123 onto a server with the ip: mc.someserver.com:25565
|
|
||||||
MinecraftClient.exe notch password123 mc.someserver.com:25565
|
|
||||||
|
|
||||||
# Overriding a setting from MinecraftClient.ini using a command line parameter
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
|
|
||||||
# Providing a custom settings ini file and overriding a language to Chinese
|
|
||||||
MinecraftClient.exe CustomSettingsFile.ini --language=zh
|
|
||||||
```
|
|
||||||
|
|
||||||
### Rules of using the command line parameters
|
|
||||||
|
|
||||||
You can mix and match arguments by following theses rules:
|
|
||||||
|
|
||||||
- First positional argument may be either the login or a settings file
|
|
||||||
- Other positional arguments are read in order: login, password, server, command
|
|
||||||
- Arguments starting with `--` can be in any order and position
|
|
||||||
|
|
||||||
Examples and further explanations:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically connect you to the chosen server.
|
|
||||||
- You may omit password and/or server to specify e.g. only the login
|
|
||||||
- To specify a server but ask password interactively, use `""` as password.
|
|
||||||
- To specify offline mode with no password, use `-` as password.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server> "/mycommand"
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically send `/mycommand` to the server and close.
|
|
||||||
- To send several commands and/or stay connected, use the 1ScriptScheduler1 bot instead.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will load the specified configuration file
|
|
||||||
- If the file contains login / password / server ip, it will automatically connect.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Specify settings on the command-line, see possible value in the configuration file
|
|
||||||
- Use `--section.setting=value` for settings outside the `[Main]` section
|
|
||||||
- Example: `--antiafk.enabled=true` for enabling the `AntiAFK` bot
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini> <login> <password> <server> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Load the specified configuration file and override some settings from the file
|
|
||||||
|
|
||||||
## 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`.
|
|
||||||
|
|
||||||
In scripts and remote control, no slash is needed to perform the command, eg. `quit`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Some commands may not be documented yet or are defined in description of Chat Bots, use `/help` to list them all, or you can contribute to this page.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `animation`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Swing your main or off hand.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/animation <mainhand|offhand>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bed`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to make the bot sleep easily, all about sleeping in one command.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `bed leave|sleep <x> <y> <z>|sleep <radius>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Leave a bed:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed leave
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed on 124 84 76:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 124 84 76
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep ~ ~ ~-2
|
|
||||||
```
|
|
||||||
|
|
||||||
Automatically find a bed in radius of 50 blocks and sleep in it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 50
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bots`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to list and unload a specific bot or all bots. Useful when debugging and developing scripts.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots <list|unload <bot name|all>>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Unload a bot called CustomScript
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload CustomScript
|
|
||||||
```
|
|
||||||
|
|
||||||
Unload all bots
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload all
|
|
||||||
```
|
|
||||||
|
|
||||||
### `changeslot`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Change your selected slot in the hotbar.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/changeslot <1-9>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `chunk`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Displays the chunk loading status in a nice way.
|
|
||||||
|
|
||||||
::: warning **To use this feature you need to enable the [Terrain and Movements](configuration.md#terrainandmovements)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need a terminal with emoji support, like Powershell 7, Windows Terminal or Alacritty, if you do not want emoji support and want to use cmd or powershell 5, disable emojis with: [`enableemoji`](configuration.md#enableemoji)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/chunk status [chunkX chunkZ|locationX locationY locationZ]
|
|
||||||
```
|
|
||||||
|
|
||||||
How it looks:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
### `dig`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Dig a block on a specific coordinate.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig 127 63 12
|
|
||||||
```
|
|
||||||
|
|
||||||
Using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig ~ ~-1 ~2
|
|
||||||
```
|
|
||||||
|
|
||||||
### `dropitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Drop all items of a specific type from your inventory.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem <itemtype>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All item types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem diamond
|
|
||||||
```
|
|
||||||
|
|
||||||
### `entity`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Attack an entity, use an entity or get a list of entities around you.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Entity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity <id|entitytype> <attack|use>
|
|
||||||
```
|
|
||||||
|
|
||||||
Get a list of entities around you:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All entity types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Mapping/EntityType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Attack a Zombie:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity Zombie attack
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execif`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute a command if a specific condition is met.
|
|
||||||
|
|
||||||
The condition is a C# expression and the local variables you set using [`set`](#set), [`setrnd`](#setrnd) or the configuration file can be used. The condition is always returned as a boolean, so only comparison can be done, if needed cast the expression result to bool.
|
|
||||||
|
|
||||||
Also the instance of MCC is available with `MCC.`.
|
|
||||||
|
|
||||||
::: tip **All local variables are treated as strings in the app, when comparing their values, you can use `<variable> == "<value>"`, or better use [`.Equals`](https://www.programiz.com/csharp-programming/library/string/equals) method**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `/execif <condition (C# expression)> ---> <command>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Setting a variable and using it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test=Something
|
|
||||||
/execif test == "Something" ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test2=1
|
|
||||||
/execif test2 == "1" ---> send Success 2!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Basic C# expression:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 + 2 + 3 == 6 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using MCC class:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif MCC.GetHealth() == 20.0 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using in combination with [`execmulti`](#execmulti):
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 == 1 ---> execmulti send 1 -> send 2 -> send 3
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execmulti`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute multiple commands in succession on a single line, useful for debugging or when using [`execif`](#execif)
|
|
||||||
|
|
||||||
Commands are separated by `->`
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `execmulti <command 1> -> <command 2> -> <command 3> -> ...`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/execmulti send 1 -> send 2 -> send 3 -> sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `quit`
|
|
||||||
|
|
||||||
- **Alias:** `exit`
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect from the server and close the application
|
|
||||||
|
|
||||||
### `reco`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect and reconnect to the server
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reco [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `reload`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Reloads settings from MinecraftClient.ini and Chat Bots.
|
|
||||||
|
|
||||||
::: tip **Some settings won't be reloaded since they are used before the client initialization. Also, settings provided by the command line paramteres will be overriden. This also does not reload the ReplayBot due to technical limitations.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reload
|
|
||||||
```
|
|
||||||
|
|
||||||
### `connect`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Go to the given server and resume the script
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/connect <server> [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`<server>` is either a server IP or a server alias defined in servers file, for more info check out [serverlist](configuration.html#serverlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `script`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Run a script containing a list of commands
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/script <script name>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `send`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Send a message or a command to the server
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/send <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `respawn`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use this to respawn if you are dead (like clicking "respawn" in-game)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/respawn
|
|
||||||
```
|
|
||||||
|
|
||||||
### `log`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Display some text in the console (useful for scripts)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/log <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
- Example:
|
|
||||||
|
|
||||||
```
|
|
||||||
/log this is some text
|
|
||||||
```
|
|
||||||
|
|
||||||
### `list`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
List players logged in to the server (uses tab list info sent by server)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/list
|
|
||||||
```
|
|
||||||
|
|
||||||
### `set`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a value which can be used as `%variable%` in further commands
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set <variable>=<value>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set abc=123
|
|
||||||
```
|
|
||||||
|
|
||||||
### `setrnd`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a `%variable%` randomly to one of the provided values
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> string1 "\"string2\" string3"
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> -7to10
|
|
||||||
```
|
|
||||||
|
|
||||||
(Set a `%variable%` to a number from -7 to 9)
|
|
||||||
|
|
||||||
### `sneak`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle sneaking.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/Sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `tps`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Get the server TPS (Ticks Per Second).
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/tps
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use item in the hand, this can be used to do a right click on items which open menus on servers.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useitem
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useblock`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Place a block from a hand on a specific coordinate or open an inventory:
|
|
||||||
|
|
||||||
- chest/trap chest
|
|
||||||
- furnace
|
|
||||||
- brewing stand
|
|
||||||
- dispenser/dropper
|
|
||||||
- hopper
|
|
||||||
- shulker
|
|
||||||
- loom
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **Not all inventories have a GUI representation in an ASCII art format.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock 43 72 7
|
|
||||||
```
|
|
||||||
|
|
||||||
### `follow`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Make the bot follow a player.
|
|
||||||
|
|
||||||
::: tip **This command is avaliable only with [Follow Player](chat-bots.md#follow-player) Chat Bot enabled.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Enity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow <player name|stop>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow milutinke
|
|
||||||
```
|
|
||||||
|
|
||||||
### `wait`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Wait X ticks (10 ticks = ~1 second. Only for scripts)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait <time>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait 20
|
|
||||||
```
|
|
||||||
|
|
||||||
### `move`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for moving when terrain and movements feature is enabled.
|
|
||||||
|
|
||||||
::: tip **You need to have [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Terrain and Movements](configuration.md#terrainandmovements) is currently not supported in `1.4.6 - 1.6`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/move <on|off|get|up|down|east|west|north|south|center|x y z|gravity [on|off]> [-f]: walk or start walking. "-f": force unsafe movements like falling or touching fire
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Enable gravity
|
|
||||||
|
|
||||||
```
|
|
||||||
/move gravity on
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move 125 72 34
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to a center of a block:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move center
|
|
||||||
```
|
|
||||||
|
|
||||||
### `look`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for looking at direction when terrain and movements is enabled
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look <x y z|yaw pitch|up|down|east|west|north|south>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look up
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/look east
|
|
||||||
```
|
|
||||||
|
|
||||||
### `inventory`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for inventory manipulation.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
MCC defines inventories as containers internally, so player's inventory, chests, droppers, dispensers, hoppers, chest minecarts, barrels, furnaces, etc... are all considered a container, and each one of them has it's ID, the words container and inventory can be used interchangeably.
|
|
||||||
|
|
||||||
Inventory has slots and each one of them has an id.
|
|
||||||
|
|
||||||
::: tip **This command DOES NOT physically open a container (eg. chest), for that you need to use [`useblock`](#useblock) command first.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
An example of player inventory with annotated IDs in ASCII art and a list of items:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <action> [action parameters] | /inventory <inventories/i> | /inventory <search/s> <item type> [amount]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **player and container can be simplified with p and c accordingly**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Actions:
|
|
||||||
|
|
||||||
- `click`
|
|
||||||
- `shiftclick`
|
|
||||||
- `drop`
|
|
||||||
|
|
||||||
Show/Preview items in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Click/Shift-Click on an item in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <click|shiftclick> <slot id> [left|right|middle]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **The default click is left click**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Close an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop item(s) from an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id> drop <slot id> <number of items|all>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To drop all items from a slot, you can use: `all`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive <slot id> <item type> <amount>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete <slot id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Show all available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory inventories
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for an item of specified type in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory search <item type>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Show player's inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player
|
|
||||||
```
|
|
||||||
|
|
||||||
Show/Preview items in an inventory using an id:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 3
|
|
||||||
```
|
|
||||||
|
|
||||||
Click on an item in player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player click 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Right-Click on an item in slot number/id `4` in an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 click 4 right
|
|
||||||
```
|
|
||||||
|
|
||||||
Close an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop a single item from a player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 36 1
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop all items from a player's inventory in slot number/id `37`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 37 all
|
|
||||||
```
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive 36 diamondblock 64
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory in slot number/id `36` when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for 10 Slime Blocks in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory s SlimeBlock 10
|
|
||||||
```
|
|
||||||
|
|
||||||
### `debug`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle debug messages, useful for chatbot developers.
|
|
||||||
|
|
||||||
### `help`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Show commands help.
|
|
||||||
|
|
||||||
::: tip **Use "/send /help" for server help**
|
|
||||||
:::
|
|
||||||
|
|
@ -1,28 +0,0 @@
|
||||||
---
|
|
||||||
home: true
|
|
||||||
heroImage: /images/MCC_logo_with_edge.png
|
|
||||||
tagline: 'Minecraft Console Client (MCC) is a lightweight open-source Minecraft Java client implemented in C#'
|
|
||||||
actions:
|
|
||||||
-
|
|
||||||
text: Installation
|
|
||||||
link: ./guide/installation.md
|
|
||||||
type: primary
|
|
||||||
-
|
|
||||||
text: Learn More →
|
|
||||||
link: ./guide/
|
|
||||||
type: secondary
|
|
||||||
actionText:
|
|
||||||
actionLink:
|
|
||||||
features:
|
|
||||||
-
|
|
||||||
title: Chat
|
|
||||||
details: Chat with other people on the server
|
|
||||||
-
|
|
||||||
title: Automation
|
|
||||||
details: Create bots to do automated tasks
|
|
||||||
-
|
|
||||||
title: Supported Versions
|
|
||||||
details: 1.4 - 1.19.2
|
|
||||||
footer: Made by MCC Team with ❤️
|
|
||||||
---
|
|
||||||
|
|
||||||
|
|
@ -1,163 +0,0 @@
|
||||||
# Introduction
|
|
||||||
|
|
||||||
- [About](#about)
|
|
||||||
- [Quick Intro (YouTube Videos)](#quick-intro)
|
|
||||||
- [Features](#features)
|
|
||||||
- [Why Minecraft Console Client?](#why-minecraft-console-client)
|
|
||||||
- [Getting Help](#getting-help)
|
|
||||||
- [Submitting a bug report or an idea/feature-request](#bugs-ideas-feature-requests)
|
|
||||||
- [Important notes on some features](#notes-on-some-features)
|
|
||||||
- [Credits](#credits)
|
|
||||||
- [Disclaimer](#disclaimer)
|
|
||||||
- [License](#license)
|
|
||||||
|
|
||||||
## About
|
|
||||||
|
|
||||||
**Minecraft Console Client (MCC)** is a lightweight cross-platform open-source **Minecraft** TUI client for **Java edition** that allows you to connect to any Minecraft Java server, send commands and receive text messages in a fast and easy way without having to open the main Minecraft game.
|
|
||||||
|
|
||||||
It also provides various automations that you can enable for administration and other purposes, as well as extensible C# API for creating Bots.
|
|
||||||
|
|
||||||
It was originally made by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/), now it's maintained by him and many other contributors from the community.
|
|
||||||
|
|
||||||
## Features
|
|
||||||
|
|
||||||
- Chat
|
|
||||||
|
|
||||||
- Send and receive chat messages
|
|
||||||
- [Log chat history](chat-bots.md#chat-log)
|
|
||||||
- [Get alerted on certain keywords](chat-bots.md#alerts)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
|
|
||||||
- [Anti AFK](chat-bots.md#anti-afk)
|
|
||||||
- [Auto Relog](chat-bots.md#auto-relog)
|
|
||||||
- [Script Scheduler](chat-bots.md#script-scheduler)
|
|
||||||
- [Remote Control](chat-bots.md#remote-control)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
- [Auto Attack](chat-bots.md#auto-attack)
|
|
||||||
- [Auto Fishing](chat-bots.md#auto-fishing)
|
|
||||||
- [Auto Eat](chat-bots.md#auto-eat)
|
|
||||||
- [Auto Craft](chat-bots.md#auto-craft)
|
|
||||||
- [Mailer Bot](chat-bots.md#mailer)
|
|
||||||
- [Auto Drop](chat-bots.md#auto-drop)
|
|
||||||
- [Replay Mod](chat-bots.md#replay-mod)
|
|
||||||
- [API for creating Bots in C#](creating-bots.md#creating-chat-bots)
|
|
||||||
- [Docker Support](installation.md#using-docker)
|
|
||||||
- [Inventory Handling](usage.md#inventory)
|
|
||||||
- [Terrain Traversing](usage.md#move)
|
|
||||||
- Entity Handling
|
|
||||||
|
|
||||||
_NOTE: Some of mentioned features are disabled by default and you will have to turn them on in the configuration file and some may require additional configuration on your part for your specific usage._
|
|
||||||
|
|
||||||
## Why Minecraft Console Client?
|
|
||||||
|
|
||||||
- Easy to use
|
|
||||||
- Helpful community
|
|
||||||
- Open-Source
|
|
||||||
- Fast performance
|
|
||||||
- Cross-Platform
|
|
||||||
- Docker Support
|
|
||||||
- 10 years of continuous development
|
|
||||||
- Active contributors
|
|
||||||
- Widely used
|
|
||||||
|
|
||||||
## Quick Intro
|
|
||||||
|
|
||||||
Don't have time to read through the documentation, we got you, our community has made some simple introduction videos about the **Minecraft Console Client**.
|
|
||||||
|
|
||||||
### The list of the tutorials:
|
|
||||||
|
|
||||||
Installation:
|
|
||||||
|
|
||||||
- [Installation on Windows by Daenges](https://www.youtube.com/watch?v=BkCqOCa2uQw)
|
|
||||||
- [Installation on Windows + Auto AFK and More by Dexter113](https://www.youtube.com/watch?v=FxJ0KFIHDrY)
|
|
||||||
|
|
||||||
Using Commands, Scripts and other features:
|
|
||||||
|
|
||||||
- [Minecraft Console Client | Tutorial | Commands, Scripts, AppVars, Matches, Tasks and C# Scripts by Daenges](https://youtu.be/JbDpwwETEnU)
|
|
||||||
- [Console Client Tutorial - Scripting by Zixxter](https://www.youtube.com/watch?v=XE7rYBFJxn0)
|
|
||||||
|
|
||||||
## Getting Help
|
|
||||||
|
|
||||||
MCC has a community that is willing to help, we have a Discussions section in out Git Hub repository.
|
|
||||||
|
|
||||||
Click [here](https://github.com/MCCTeam/Minecraft-Console-Client/discussions) to access it.
|
|
||||||
|
|
||||||
### Before getting help
|
|
||||||
|
|
||||||
- **Please use the search option here or in the discussion section and read the documentation so we avoid duplicate questions. Thank you!**
|
|
||||||
- **Please be kind and patient, respect others as they're the ones using their time to help you**
|
|
||||||
|
|
||||||
## Bugs, Ideas, Feature Requests
|
|
||||||
|
|
||||||
Bug reporting, idea submitting or feature requesting are done in the [Issues](https://github.com/MCCTeam/Minecraft-Console-Client/issues) section of our [Github repository]([here](https://github.com/MCCTeam/Minecraft-Console-Client)).
|
|
||||||
|
|
||||||
Navigate to the Issues section, search for a bug, idea or a feature using the search option here in the documentation and in the `Issues` section on Git Hub before making your own.
|
|
||||||
|
|
||||||
If you haven't found anything similar, go ahead and click on the `New issue` button, then choose what you want to do.
|
|
||||||
|
|
||||||
If you're reporting a bug, please be descriptive as much as possible, try to explain how to re-create the bug, attack screenshots and logs, make sure that you have [`debugmessages`](configuration.me#debugmessages) set to `true` before sending a bug report or taking a screenshot.
|
|
||||||
|
|
||||||
### Before submitting
|
|
||||||
|
|
||||||
- **Please use the search option here or in the `Issues` section and read the documentation so we avoid duplicate questions/ideas/reports. Thank you!**
|
|
||||||
- **Please be kind, patient and respect others. Thank you!**
|
|
||||||
|
|
||||||
## Notes on some features
|
|
||||||
|
|
||||||
### Inventory, Terrain and Entity Handling
|
|
||||||
|
|
||||||
Inventory handling is currently not supported in versions: `1.4.6 - 1.9`
|
|
||||||
|
|
||||||
Terrain handling is currently not supported in versions: `1.4.6 - 1.6`
|
|
||||||
|
|
||||||
Entity handling is currently not supported in versions: `1.4.6 - 1.9` (but `1.8` and `1.9` are being worked on, almost at the working state, only `EntityMetadata` packet remains to be fixed)
|
|
||||||
|
|
||||||
There features might not always be implemented in the latest version of the game, since they're often subjected to major changes by Mojang, and we need some time to figure out what has changed and to implement the required changes.
|
|
||||||
|
|
||||||
If there was a major game update, and the MCC hasn't been updated to support these features, if you're a programmer, feel free to contribute to the project.
|
|
||||||
|
|
||||||
## Credits
|
|
||||||
|
|
||||||
_Project initiated by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/)._
|
|
||||||
|
|
||||||
Many features would not have been possible without the help of our talented community:
|
|
||||||
|
|
||||||
**Maintainers**
|
|
||||||
|
|
||||||
ORelio, ReinforceZwei, milutinke, BruceChenQAQ, bradbyte
|
|
||||||
|
|
||||||
**Ideas**
|
|
||||||
|
|
||||||
ambysdotnet, Awpocalypse, azoundria, bearbear12345, bSun0000, Cat7373, dagonzaros, Dids, Elvang, fuckofftwice, GeorgH93, initsuj, JamieSinn, joshbean39, LehmusFIN, maski, medxo, mobdon, MousePak, TNT-UP, TorchRJ, yayes2, Yoann166, ZizzyDizzyMC and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BIdea%5D+is%3Aopen).
|
|
||||||
|
|
||||||
**Bug Hunters**
|
|
||||||
|
|
||||||
1092CQ, ambysdotnet, bearbear12345, c0dei, Cat7373, Chtholly, Darkaegis, dbear20, DigitalSniperz, doranchak, drXor, FantomHD, gerik43, ibspa, iTzMrpitBull, JamieSinn, k3ldon, KenXeiko, link3321, lyze237, mattman00000, Nicconyancat, Pokechu22, ridgewell, Ryan6578, Solethia, TNT-UP, TorchRJ, TRTrident, WeedIsGood, xp9kus, Yoann166 and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BBUG%5D+is%3Aopen+).
|
|
||||||
|
|
||||||
**Contributors**
|
|
||||||
|
|
||||||
Allyoutoo, Aragas, Bancey, bearbear12345, corbanmailloux, Daenges, dbear20, dogwatch, initsuj, JamieSinn, justcool393, lokulin, maxpowa, medxo, milutinke, Pokechu22, ReinforceZwei, repository, TheMeq, TheSnoozer, vkorn, v1RuX, yunusemregul, ZizzyDizzyMC, BruceChenQAQ, bradbyte _... And all the [GitHub contributors](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors)!_
|
|
||||||
|
|
||||||
**Libraries:**
|
|
||||||
|
|
||||||
Minecraft Console Client also borrows code from the following libraries:
|
|
||||||
|
|
||||||
| Name | Purpose | Author | License |
|
|
||||||
| ------------ | ---------------- | ---------------- | ------- |
|
|
||||||
| Biko | Proxy handling | Benton Stark | MIT |
|
|
||||||
| Heijden. Dns | DNS SRV Lookup | Geoffrey Huntley | MIT |
|
|
||||||
| DotNetZip | Zlib compression | Dino Chiesa | MS-PL |
|
|
||||||
|
|
||||||
## Disclaimer
|
|
||||||
|
|
||||||
Even if everything should work, we are not responsible for any damage this app could cause to your computer or your server. This app does not steal your password. If you don't trust it, don't use it or check & compile from the source code.
|
|
||||||
|
|
||||||
Also, remember that when you connect to a server with this program, you will appear where you left the last time. This means that **you can die if you log in in an unsafe place on a survival server!** Use the script scheduler bot to send a teleport command after logging in.
|
|
||||||
|
|
||||||
We remind you that **you may get banned** by your server for using this program. Use accordingly with server rules.
|
|
||||||
|
|
||||||
## License
|
|
||||||
|
|
||||||
Minecraft Console Client is a totally free of charge, open source project. The source code is available at [Github Repository](https://github.com/MCCTeam/Minecraft-Console-Client)
|
|
||||||
|
|
||||||
Unless specifically stated, source code is from the MCC Team or Contributors, and available under CDDL-1.0. More info about CDDL-1.0: [http://qstuff.blogspot.fr/2007/04/why-cddl.html](http://qstuff.blogspot.fr/2007/04/why-cddl.html) Full license at [http://opensource.org/licenses/CDDL-1.0](http://opensource.org/licenses/CDDL-1.0)
|
|
||||||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1,76 +0,0 @@
|
||||||
# Contributing
|
|
||||||
|
|
||||||
At this moment this page needs to be created.
|
|
||||||
|
|
||||||
For now you can use our article from the [Git Hub repository Wiki](https://github.com/MCCTeam/Minecraft-Console-Client/wiki/Update-console-client-to-new-version) written by [ReinforceZwei](https://github.com/ReinforceZwei).
|
|
||||||
|
|
||||||
## Translations
|
|
||||||
|
|
||||||
MCC now supports the following languages (Alphabetical order) :
|
|
||||||
* `de.ini` : Deutsch - German
|
|
||||||
* **`en.ini` : English - English**
|
|
||||||
* `fr.ini` : Français (France) - French
|
|
||||||
* `ru.ini` : Русский (Russkiy) - Russian
|
|
||||||
* `vi.ini` : Tiếng Việt (Việt Nam) - Vietnamese
|
|
||||||
* `zh-Hans.ini` : 简体中文 - Chinese Simplified
|
|
||||||
* `zh-Hant.ini` : 繁體中文 - Chinese Traditional
|
|
||||||
|
|
||||||
### Add new translation
|
|
||||||
|
|
||||||
1. First you need to get the name of the translated file.
|
|
||||||
* Visit [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c) and find the first occurrence of the language you need to translate in the table below.
|
|
||||||
* Use the language code of the row in the table as the name of the translation file.
|
|
||||||
* For example:
|
|
||||||
* `English` -> row `English 0x0009` -> `en` -> `en.ini`
|
|
||||||
* `Chinese (Traditional)` -> row `Chinese (Traditional) 0x7C04` -> `zh-Hant` -> `zh-Hant.ini`
|
|
||||||
|
|
||||||
2. Which system languages are recommended to use this translation?
|
|
||||||
* Still check the table in [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c), one language may have multiple rows.
|
|
||||||
* You will need to indicate which language codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `de.ini` applies to `de`, `de-AT`, `de-BE`, `de-DE`, ...
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh-Hans`, `zh`, `zh-CN`, `zh-SG`.
|
|
||||||
|
|
||||||
3. Which game languages are recommended to use this translation?
|
|
||||||
* Check out the table in [this link](https://github.com/MCCTeam/Minecraft-Console-Client/discussions/2239), where the `Locale Code` column indicates the language code in minecraft.
|
|
||||||
* You will need to indicate which locale codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `fr.ini` applies to `fr_ca`, `fr_fr`.
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh_cn`.
|
|
||||||
|
|
||||||
4. Add the new translation to the code. (Optional)
|
|
||||||
* **If you are not familiar with programming, you can skip this step and just write the above information in your PR or issue.**
|
|
||||||
* Add the newly created translation file `xx.ini` to the project `/Resources/lang/xx.ini`.
|
|
||||||
* Open `/DefaultConfigResource.resx`.
|
|
||||||
* Click `Add Resources`.
|
|
||||||
* Choose `/Resources/lang/xx.ini`.
|
|
||||||
* Rename the added resource file in `/DefaultConfigResource.resx` to `Translation_xx`.
|
|
||||||
* Open `/Translations.cs`.
|
|
||||||
* Find `public static Tuple<string, string[]> GetTranslationPriority();`
|
|
||||||
* Update the mapping of system language codes to translation files.
|
|
||||||
* Find `public static string[] GetTranslationPriority(string gameLanguage);`
|
|
||||||
* Update the mapping of game locale code to translation files.
|
|
||||||
|
|
||||||
5. Follow the section "Update existing translation".
|
|
||||||
|
|
||||||
### Update existing translation
|
|
||||||
|
|
||||||
1. Visit [the lang folder](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/Resources/lang), download `en.ini` and the language you want to translate(`xx.ini`).
|
|
||||||
|
|
||||||
2. Compare `en.ini` and `xx.ini` and update outdated or non-existent entries in `xx.ini`.
|
|
||||||
|
|
||||||
3. Once you finished the translation work, submit a pull request or send us the file through an [Issue](https://github.com/MCCTeam/Minecraft-Console-Client/issues) in case you are not familiar with Git.
|
|
||||||
|
|
||||||
### Translate README.md
|
|
||||||
|
|
||||||
1. Get the English version of the README.md from [here](https://raw.githubusercontent.com/MCCTeam/Minecraft-Console-Client/master/README.md).
|
|
||||||
|
|
||||||
2. See `Add new translation -> 1.` for the target language code. Assume it is `xx`.
|
|
||||||
|
|
||||||
3. Complete the translation according to the English README.md and name the translated version as `README-xx.md`.
|
|
||||||
|
|
||||||
4. In the English README, above the "About" section, add the name of the language and a hyperlink to `README-xx.md`.
|
|
||||||
|
|
||||||
## Contributors
|
|
||||||
|
|
||||||
[Check out our contributors on Github](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors).
|
|
||||||
|
|
@ -1,177 +0,0 @@
|
||||||
# Creating Chat Bots
|
|
||||||
|
|
||||||
- [Notes](#notes)
|
|
||||||
- [Requirements](#requirements)
|
|
||||||
- [Quick Introduction](#quick-introduction)
|
|
||||||
- [Examples](#examples)
|
|
||||||
- [C# API](#c#-api)
|
|
||||||
|
|
||||||
## Notes
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For now this page contains only the bare basics of the Chat Bot API, enough of details to teach you how to make basic Chat Bots. For more details you need to take a look at the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) and [Examples](#examples). This page will be improved in the future.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a rich C# API which allows you to create Chat Bots (effectively plugins) which can help you create complex automations which normal scripts may not be able to do.
|
|
||||||
|
|
||||||
## Requirements
|
|
||||||
|
|
||||||
- A basic knowledge of C# programming language
|
|
||||||
- A text editor
|
|
||||||
|
|
||||||
If you're not familiar with the C# programming language, we suggest taking a look at the following resources:
|
|
||||||
|
|
||||||
Crash courses:
|
|
||||||
|
|
||||||
- [C# Crash Course playlist by Teddy Smit](https://www.youtube.com/watch?v=67oWw9TanOk&list=PL82C6-O4XrHfoN_Y4MwGvJz5BntiL0z0D)
|
|
||||||
|
|
||||||
More in-depth:
|
|
||||||
|
|
||||||
- [Learn C# Youtube Playlist by Microsoft](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVxKLQCHpiUWun7vlJJvUiN)
|
|
||||||
- [Getting started with C# (An index of tutorials and the documentation) by Microsoft](https://docs.microsoft.com/en-us/dotnet/csharp/)
|
|
||||||
|
|
||||||
## Quick Introduction
|
|
||||||
|
|
||||||
This introduction assumes that you have the basic knowledge of C#.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Here we will use terms Chat Bot and Script interchangeably**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Create a new empty file and name it `ExampleChatBot.cs` in the same folder where you have your MCC installed.
|
|
||||||
|
|
||||||
Paste the following example code:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
MCC. LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
|
|
||||||
// The code and comments above are defining a "Script Metadata" section
|
|
||||||
|
|
||||||
// Every single chat bot (script) must be a class which extends the ChatBot class.
|
|
||||||
// Your class must be instantiates in the "Script Metadata" section and passed to MCC. LoadBot function.
|
|
||||||
class ExampleChatBot : ChatBot
|
|
||||||
{
|
|
||||||
// This method will be called when the script has been initialized for the first time, it's called only once
|
|
||||||
// Here you can initialize variables, eg. Dictionaries. etc...
|
|
||||||
public override void Initialize()
|
|
||||||
{
|
|
||||||
LogToConsole("An example Chat Bot has been initialized!");
|
|
||||||
}
|
|
||||||
|
|
||||||
// This is a function that will be run when we get a chat message from a server
|
|
||||||
// In this example it just detects the type of the message and prints it out
|
|
||||||
public override void GetText(string text)
|
|
||||||
{
|
|
||||||
string message = "";
|
|
||||||
string username = "";
|
|
||||||
text = GetVerbatim(text);
|
|
||||||
|
|
||||||
if (IsPrivateMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has sent you a private message: " + message);
|
|
||||||
}
|
|
||||||
else if (IsChatMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has said: " + message);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
Start MCC, connect to a server and run the following internal command: `/script ExampleChatBot.cs`.
|
|
||||||
|
|
||||||
If you did everything right you should see: `[Example Chat Bot] An example Chat Bot has been initialised!` message appear in your console log.
|
|
||||||
|
|
||||||
### Structure of Chat Bots
|
|
||||||
|
|
||||||
Chat Bot (Script) structure is the following:
|
|
||||||
|
|
||||||
```
|
|
||||||
<script metadata>
|
|
||||||
<chat bot class>
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** is a section with a custom format that mixes in C# with our format using comments. Every single Chat Bot (Script) must have this section at the beginning in order to work.
|
|
||||||
|
|
||||||
### Script Metadata Format
|
|
||||||
|
|
||||||
`//MCCScript 1.0` marks the beginning of the **Script Metadata** section, this must always be on the first line or the Chat Bot (Script) will not load and will throw an error.
|
|
||||||
|
|
||||||
`//MCCScript Extensions` marks the end of the **Script Metadata** section, this must be defined before a Chat Bot (Script) class.
|
|
||||||
|
|
||||||
In order for your Chat Bot (Script) to properly load in-between the `//MCCScript 1.0` and the `//MCCScript Extensions` lines you must instantiate your Chat Bot (Script) class and pass it to the `MCC. LoadBot` function.
|
|
||||||
|
|
||||||
Example code:
|
|
||||||
|
|
||||||
```
|
|
||||||
MCC. LoadBot(new YourChatBotClassNameHere());
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** section allows for including C# packages and libraries with: `//using <namespace>` and `/dll <dll name>`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Avoid adding whitespace between `//` and keywords**
|
|
||||||
:::
|
|
||||||
|
|
||||||
By the default the following packages are loaded:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
using System;
|
|
||||||
using System. Collections. Generic;
|
|
||||||
using System. Text. RegularExpressions;
|
|
||||||
using System. Linq;
|
|
||||||
using System. Text;
|
|
||||||
using System.IO;
|
|
||||||
using System. Net;
|
|
||||||
using System. Threading;
|
|
||||||
using MinecraftClient;
|
|
||||||
using MinecraftClient. Mapping;
|
|
||||||
using MinecraftClient.
|
|
||||||
```
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//using System. Collections. Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
```
|
|
||||||
|
|
||||||
Full Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
//using System. Collections. Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
|
|
||||||
MCC. LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
```
|
|
||||||
|
|
||||||
### Chat Bot Class
|
|
||||||
|
|
||||||
After the end of the **Script Metadata** section, you basically can define any number of classes you like, the only limitation is that the main class of your Chat Bot (Script) must extend `ChatBot` class.
|
|
||||||
|
|
||||||
There are no required methods, everything is optional.
|
|
||||||
|
|
||||||
When the Chat Bot (Script) has been initialized for the first time the `Initialize` method will be called. In it you can initialize variables, eg. Dictionaries, etc..
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For allocating resources like a database connection, we recommend allocating them in `AfterGameJoined` and freeing them in `OnDisconnect`** :::.
|
|
||||||
|
|
||||||
## Examples
|
|
||||||
|
|
||||||
You can find a lot of examples in our Git Hub Repository at [ChatBots](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/ChatBots) and [config](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/config).
|
|
||||||
|
|
||||||
## C# API
|
|
||||||
|
|
||||||
As of the time of writing, the C# API has been changed in forks that are yet to be merged, so for now you can use the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) for reference.
|
|
||||||
|
|
||||||
Each method is well documented with standard C# documentation comments.
|
|
||||||
|
|
||||||
In the future we will make a script to auto-generate this section based on the documentation in the code.
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -1,958 +0,0 @@
|
||||||
# Usage
|
|
||||||
|
|
||||||
How to run the program:
|
|
||||||
|
|
||||||
- [Running on Windows](#windows)
|
|
||||||
- [Running on Linux, macOS](#linux-macos)
|
|
||||||
- [Running using Docker](#docker)
|
|
||||||
|
|
||||||
Using the command line parameters:
|
|
||||||
|
|
||||||
- [Examples](#quick-usage-of-mcc-with-examples)
|
|
||||||
- [Command line parameters](#command-line-parameters)
|
|
||||||
- [Internal commands](#internal-commands)
|
|
||||||
|
|
||||||
## Windows
|
|
||||||
|
|
||||||
Simply run `MinecraftClient.exe`
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Windows it's best using [Windows Terminal](https://docs.microsoft.com/en-us/windows/terminal/install) for the best experience and looks. Some features like emojis in the [`/chunk`](#chunk) command do not work in CMD or Powershell 5**
|
|
||||||
:::
|
|
||||||
|
|
||||||
## Linux, macOS
|
|
||||||
|
|
||||||
To run the client you need to type the following command in your terminal emulator:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
./MinecraftClient
|
|
||||||
```
|
|
||||||
|
|
||||||
If you want to keep it running in the background you can use `screen` (Linux only) Example:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Start the screen
|
|
||||||
screen -S mcc
|
|
||||||
|
|
||||||
# Run it
|
|
||||||
./MinecraftClient
|
|
||||||
|
|
||||||
# Detach from the screen by pressing CTRL + A + D
|
|
||||||
|
|
||||||
# Re-attach if you want to have accces again
|
|
||||||
screen -r mcc
|
|
||||||
```
|
|
||||||
|
|
||||||
_Learn more on how to use the screen command: [YouTube](https://www.youtube.com/watch?v=_ZJiEX4rmN4)_
|
|
||||||
|
|
||||||
## Docker
|
|
||||||
|
|
||||||
See [Run using Docker](./guide/installation.md#using-docker)
|
|
||||||
|
|
||||||
## Command-line usage
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a plethora of useful command line parameters, here you can learn about them.
|
|
||||||
|
|
||||||
### For people not familiar with the command line
|
|
||||||
|
|
||||||
For people who are not familiar with the usage of programs in the command line (terminal emulators), here we will explain what every single thing means, if you're already experienced you can skip this.
|
|
||||||
|
|
||||||
In command line (terminal emulators) you can run programs by specifying their name and hitting enter, usually programs have additional way of being configured, started or provided some additional data in a different manner, this is achieved by using command line parameters.
|
|
||||||
|
|
||||||
Command line parameters are written after the name of the program, they're separated by spaces and they can have a few different formats, examples:
|
|
||||||
|
|
||||||
- `someparameter`
|
|
||||||
- `-some-parameter`
|
|
||||||
- `--some-other-parameter`
|
|
||||||
- `--some-setting="some value"`
|
|
||||||
- `-a=5`
|
|
||||||
|
|
||||||
Parameters with a single dash (`-`) are usually used for a single letter (short-hand) parameters, while the ones with a double dash (`--`) are being used for parameters with a longer/full name.
|
|
||||||
|
|
||||||
When you are reading examples, you will often see something like this: `<something here>`, this means that this is a place holder and it should be changed with some value, excluding the `<` and the `>`.
|
|
||||||
|
|
||||||
For example `<username>` you need to change to an username of your liking, example: `notch` (`<` and `>` should not be included).
|
|
||||||
|
|
||||||
`[` and `]` mean that a parameter is an optional one.
|
|
||||||
|
|
||||||
They also can hold some values, example from the MCC:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
```
|
|
||||||
|
|
||||||
When a parameter has a textual value that includes one more spaces, you will need to wrap it the value in double quotes (`"`), example: `--some-parameter="some text here with spaces in it"`
|
|
||||||
|
|
||||||
Here is an example for using a `--help` command line parameter for MCC that will print out a page on how to use MCC from the command line:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
```
|
|
||||||
|
|
||||||
### Quick usage of MCC with examples
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Linux and macOS, you need to type: `./MinecraftClient` instead of `MinecraftClient.exe`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
MinecraftClient.exe <username> <password> <server>
|
|
||||||
MinecraftClient.exe <username> <password> <server> "/mycommand"
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
MinecraftClient.exe --section.setting=value [--other settings]
|
|
||||||
MinecraftClient.exe <settings-file.ini> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Logging in as a user: notch, with a password: password123 onto a server with the ip: mc.someserver.com:25565
|
|
||||||
MinecraftClient.exe notch password123 mc.someserver.com:25565
|
|
||||||
|
|
||||||
# Overriding a setting from MinecraftClient.ini using a command line parameter
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
|
|
||||||
# Providing a custom settings ini file and overriding a language to Chinese
|
|
||||||
MinecraftClient.exe CustomSettingsFile.ini --language=zh
|
|
||||||
```
|
|
||||||
|
|
||||||
### Rules of using the command line parameters
|
|
||||||
|
|
||||||
You can mix and match arguments by following theses rules:
|
|
||||||
|
|
||||||
- First positional argument may be either the login or a settings file
|
|
||||||
- Other positional arguments are read in order: login, password, server, command
|
|
||||||
- Arguments starting with `--` can be in any order and position
|
|
||||||
|
|
||||||
Examples and further explanations:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically connect you to the chosen server.
|
|
||||||
- You may omit password and/or server to specify e.g. only the login
|
|
||||||
- To specify a server but ask password interactively, use `""` as password.
|
|
||||||
- To specify offline mode with no password, use `-` as password.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server> "/mycommand"
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically send `/mycommand` to the server and close.
|
|
||||||
- To send several commands and/or stay connected, use the 1ScriptScheduler1 bot instead.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will load the specified configuration file
|
|
||||||
- If the file contains login / password / server ip, it will automatically connect.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Specify settings on the command-line, see possible value in the configuration file
|
|
||||||
- Use `--section.setting=value` for settings outside the `[Main]` section
|
|
||||||
- Example: `--antiafk.enabled=true` for enabling the `AntiAFK` bot
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini> <login> <password> <server> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Load the specified configuration file and override some settings from the file
|
|
||||||
|
|
||||||
## 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`.
|
|
||||||
|
|
||||||
In scripts and remote control, no slash is needed to perform the command, eg. `quit`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Some commands may not be documented yet or are defined in description of Chat Bots, use `/help` to list them all, or you can contribute to this page.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `animation`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Swing your main or off hand.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/animation <mainhand|offhand>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bed`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to make the bot sleep easily, all about sleeping in one command.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `bed leave|sleep <x> <y> <z>|sleep <radius>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Leave a bed:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed leave
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed on 124 84 76:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 124 84 76
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep ~ ~ ~-2
|
|
||||||
```
|
|
||||||
|
|
||||||
Automatically find a bed in radius of 50 blocks and sleep in it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 50
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bots`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to list and unload a specific bot or all bots. Useful when debugging and developing scripts.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots <list|unload <bot name|all>>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Unload a bot called CustomScript
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload CustomScript
|
|
||||||
```
|
|
||||||
|
|
||||||
Unload all bots
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload all
|
|
||||||
```
|
|
||||||
|
|
||||||
### `changeslot`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Change your selected slot in the hotbar.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/changeslot <1-9>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `chunk`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Displays the chunk loading status in a nice way.
|
|
||||||
|
|
||||||
::: warning **To use this feature you need to enable the [Terrain and Movements](configuration.md#terrainandmovements)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need a terminal with emoji support, like Powershell 7, Windows Terminal or Alacritty, if you do not want emoji support and want to use cmd or powershell 5, disable emojis with: [`enableemoji`](configuration.md#enableemoji)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/chunk status [chunkX chunkZ|locationX locationY locationZ]
|
|
||||||
```
|
|
||||||
|
|
||||||
How it looks:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
### `dig`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Dig a block on a specific coordinate.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig 127 63 12
|
|
||||||
```
|
|
||||||
|
|
||||||
Using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig ~ ~-1 ~2
|
|
||||||
```
|
|
||||||
|
|
||||||
### `dropitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Drop all items of a specific type from your inventory.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem <itemtype>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All item types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem diamond
|
|
||||||
```
|
|
||||||
|
|
||||||
### `entity`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Attack an entity, use an entity or get a list of entities around you.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Entity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity <id|entitytype> <attack|use>
|
|
||||||
```
|
|
||||||
|
|
||||||
Get a list of entities around you:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All entity types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Mapping/EntityType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Attack a Zombie:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity Zombie attack
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execif`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute a command if a specific condition is met.
|
|
||||||
|
|
||||||
The condition is a C# expression and the local variables you set using [`set`](#set), [`setrnd`](#setrnd) or the configuration file can be used. The condition is always returned as a boolean, so only comparison can be done, if needed cast the expression result to bool.
|
|
||||||
|
|
||||||
Also the instance of MCC is available with `MCC.`.
|
|
||||||
|
|
||||||
::: tip **All local variables are treated as strings in the app, when comparing their values, you can use `<variable> == "<value>"`, or better use [`.Equals`](https://www.programiz.com/csharp-programming/library/string/equals) method**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `/execif <condition (C# expression)> ---> <command>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Setting a variable and using it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test=Something
|
|
||||||
/execif test == "Something" ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test2=1
|
|
||||||
/execif test2 == "1" ---> send Success 2!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Basic C# expression:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 + 2 + 3 == 6 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using MCC class:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif MCC. GetHealth() == 20.0 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using in combination with [`execmulti`](#execmulti):
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 == 1 ---> execmulti send 1 -> send 2 -> send 3
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execmulti`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute multiple commands in succession on a single line, useful for debugging or when using [`execif`](#execif)
|
|
||||||
|
|
||||||
Commands are separated by `->`
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `execmulti <command 1> -> <command 2> -> <command 3> -> ...`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/execmulti send 1 -> send 2 -> send 3 -> sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `quit`
|
|
||||||
|
|
||||||
- **Alias:** `exit`
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect from the server and close the application
|
|
||||||
|
|
||||||
### `reco`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect and reconnect to the server
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reco [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `reload`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Reloads settings from MinecraftClient.ini and Chat Bots.
|
|
||||||
|
|
||||||
::: tip **Some settings won't be reloaded since they are used before the client initialization. Also, settings provided by the command line paramteres will be overriden. This also does not reload the ReplayBot due to technical limitations.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reload
|
|
||||||
```
|
|
||||||
|
|
||||||
### `connect`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Go to the given server and resume the script
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/connect <server> [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`<server>` is either a server IP or a server alias defined in servers file, for more info check out [serverlist](configuration.html#serverlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `script`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Run a script containing a list of commands
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/script <script name>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `send`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Send a message or a command to the server
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/send <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `respawn`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use this to respawn if you are dead (like clicking "respawn" in-game)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/respawn
|
|
||||||
```
|
|
||||||
|
|
||||||
### `log`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Display some text in the console (useful for scripts)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/log <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
- Example:
|
|
||||||
|
|
||||||
```
|
|
||||||
/log this is some text
|
|
||||||
```
|
|
||||||
|
|
||||||
### `list`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
List players logged in to the server (uses tab list info sent by server)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/list
|
|
||||||
```
|
|
||||||
|
|
||||||
### `set`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a value which can be used as `%variable%` in further commands
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set <variable>=<value>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set abc=123
|
|
||||||
```
|
|
||||||
|
|
||||||
### `setrnd`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a `%variable%` randomly to one of the provided values
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> string1 "\"string2\" string3"
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> -7to10
|
|
||||||
```
|
|
||||||
|
|
||||||
(Set a `%variable%` to a number from -7 to 9)
|
|
||||||
|
|
||||||
### `sneak`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle sneaking.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/Sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `tps`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Get the server TPS (Ticks Per Second).
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/tps
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use item in the hand, this can be used to do a right click on items which open menus on servers.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useitem
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useblock`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Place a block from a hand on a specific coordinate or open an inventory:
|
|
||||||
|
|
||||||
- chest/trap chest
|
|
||||||
- furnace
|
|
||||||
- brewing stand
|
|
||||||
- dispenser/dropper
|
|
||||||
- hopper
|
|
||||||
- shulker
|
|
||||||
- loom
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **Not all inventories have a GUI representation in an ASCII art format.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock 43 72 7
|
|
||||||
```
|
|
||||||
|
|
||||||
### `follow`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Make the bot follow a player.
|
|
||||||
|
|
||||||
::: tip **This command is avaliable only with [Follow Player](chat-bots.md#follow-player) Chat Bot enabled.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Enity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow <player name|stop>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow milutinke
|
|
||||||
```
|
|
||||||
|
|
||||||
### `wait`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Wait X ticks (10 ticks = ~1 second. Only for scripts)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait <time>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait 20
|
|
||||||
```
|
|
||||||
|
|
||||||
### `move`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for moving when terrain and movements feature is enabled.
|
|
||||||
|
|
||||||
::: tip **You need to have [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Terrain and Movements](configuration.md#terrainandmovements) is currently not supported in `1.4.6 - 1.6`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/move <on|off|get|up|down|east|west|north|south|center|x y z|gravity [on|off]> [-f]: walk or start walking. "-f": force unsafe movements like falling or touching fire
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Enable gravity
|
|
||||||
|
|
||||||
```
|
|
||||||
/move gravity on
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move 125 72 34
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to a center of a block:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move center
|
|
||||||
```
|
|
||||||
|
|
||||||
### `look`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for looking at direction when terrain and movements is enabled
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look <x y z|yaw pitch|up|down|east|west|north|south>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look up
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/look east
|
|
||||||
```
|
|
||||||
|
|
||||||
### `inventory`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for inventory manipulation.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
MCC defines inventories as containers internally, so player's inventory, chests, droppers, dispensers, hoppers, chest minecarts, barrels, furnaces, etc... are all considered a container, and each one of them has it's ID, the words container and inventory can be used interchangeably.
|
|
||||||
|
|
||||||
Inventory has slots and each one of them has an id.
|
|
||||||
|
|
||||||
::: tip **This command DOES NOT physically open a container (eg. chest), for that you need to use [`useblock`](#useblock) command first.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
An example of player inventory with annotated IDs in ASCII art and a list of items:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <action> [action parameters] | /inventory <inventories/i> | /inventory <search/s> <item type> [amount]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **player and container can be simplified with p and c accordingly**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Actions:
|
|
||||||
|
|
||||||
- `click`
|
|
||||||
- `shiftclick`
|
|
||||||
- `drop`
|
|
||||||
|
|
||||||
Show/Preview items in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Click/Shift-Click on an item in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <click|shiftclick> <slot id> [left|right|middle]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **The default click is left click**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Close an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop item(s) from an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id> drop <slot id> <number of items|all>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To drop all items from a slot, you can use: `all`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive <slot id> <item type> <amount>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete <slot id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Show all available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory inventories
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for an item of specified type in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory search <item type>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Show player's inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player
|
|
||||||
```
|
|
||||||
|
|
||||||
Show/Preview items in an inventory using an id:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 3
|
|
||||||
```
|
|
||||||
|
|
||||||
Click on an item in player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player click 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Right-Click on an item in slot number/id `4` in an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 click 4 right
|
|
||||||
```
|
|
||||||
|
|
||||||
Close an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop a single item from a player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 36 1
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop all items from a player's inventory in slot number/id `37`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 37 all
|
|
||||||
```
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive 36 diamondblock 64
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory in slot number/id `36` when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for 10 Slime Blocks in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory s SlimeBlock 10
|
|
||||||
```
|
|
||||||
|
|
||||||
### `debug`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle debug messages, useful for chatbot developers.
|
|
||||||
|
|
||||||
### `help`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Show commands help.
|
|
||||||
|
|
||||||
::: tip **Use "/send /help" for server help**
|
|
||||||
:::
|
|
||||||
|
|
@ -1,28 +0,0 @@
|
||||||
---
|
|
||||||
home: true
|
|
||||||
heroImage: /images/MCC_logo_with_edge.png
|
|
||||||
tagline: 'Minecraft Console Client (MCC) is a lightweight open-source Minecraft Java client implemented in C#'
|
|
||||||
actions:
|
|
||||||
-
|
|
||||||
text: Installation
|
|
||||||
link: ./guide/installation.md
|
|
||||||
type: primary
|
|
||||||
-
|
|
||||||
text: Learn More →
|
|
||||||
link: ./guide/
|
|
||||||
type: secondary
|
|
||||||
actionText:
|
|
||||||
actionLink:
|
|
||||||
features:
|
|
||||||
-
|
|
||||||
title: Chat
|
|
||||||
details: Chat with other people on the server
|
|
||||||
-
|
|
||||||
title: Automation
|
|
||||||
details: Create bots to do automated tasks
|
|
||||||
-
|
|
||||||
title: Supported Versions
|
|
||||||
details: 1.4 - 1.19.2
|
|
||||||
footer: Made by MCC Team with ❤️
|
|
||||||
---
|
|
||||||
|
|
||||||
|
|
@ -1,163 +0,0 @@
|
||||||
# Introduction
|
|
||||||
|
|
||||||
- [About](#about)
|
|
||||||
- [Quick Intro (YouTube Videos)](#quick-intro)
|
|
||||||
- [Features](#features)
|
|
||||||
- [Why Minecraft Console Client?](#why-minecraft-console-client)
|
|
||||||
- [Getting Help](#getting-help)
|
|
||||||
- [Submitting a bug report or an idea/feature-request](#bugs-ideas-feature-requests)
|
|
||||||
- [Important notes on some features](#notes-on-some-features)
|
|
||||||
- [Credits](#credits)
|
|
||||||
- [Disclaimer](#disclaimer)
|
|
||||||
- [License](#license)
|
|
||||||
|
|
||||||
## About
|
|
||||||
|
|
||||||
**Minecraft Console Client (MCC)** is a lightweight cross-platform open-source **Minecraft** TUI client for **Java edition** that allows you to connect to any Minecraft Java server, send commands and receive text messages in a fast and easy way without having to open the main Minecraft game.
|
|
||||||
|
|
||||||
It also provides various automations that you can enable for administration and other purposes, as well as extensible C# API for creating Bots.
|
|
||||||
|
|
||||||
It was originally made by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/), now it's maintained by him and many other contributors from the community.
|
|
||||||
|
|
||||||
## Features
|
|
||||||
|
|
||||||
- Chat
|
|
||||||
|
|
||||||
- Send and receive chat messages
|
|
||||||
- [Log chat history](chat-bots.md#chat-log)
|
|
||||||
- [Get alerted on certain keywords](chat-bots.md#alerts)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
|
|
||||||
- [Anti AFK](chat-bots.md#anti-afk)
|
|
||||||
- [Auto Relog](chat-bots.md#auto-relog)
|
|
||||||
- [Script Scheduler](chat-bots.md#script-scheduler)
|
|
||||||
- [Remote Control](chat-bots.md#remote-control)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
- [Auto Attack](chat-bots.md#auto-attack)
|
|
||||||
- [Auto Fishing](chat-bots.md#auto-fishing)
|
|
||||||
- [Auto Eat](chat-bots.md#auto-eat)
|
|
||||||
- [Auto Craft](chat-bots.md#auto-craft)
|
|
||||||
- [Mailer Bot](chat-bots.md#mailer)
|
|
||||||
- [Auto Drop](chat-bots.md#auto-drop)
|
|
||||||
- [Replay Mod](chat-bots.md#replay-mod)
|
|
||||||
- [API for creating Bots in C#](creating-bots.md#creating-chat-bots)
|
|
||||||
- [Docker Support](installation.md#using-docker)
|
|
||||||
- [Inventory Handling](usage.md#inventory)
|
|
||||||
- [Terrain Traversing](usage.md#move)
|
|
||||||
- Entity Handling
|
|
||||||
|
|
||||||
_NOTE: Some of mentioned features are disabled by default and you will have to turn them on in the configuration file and some may require additional configuration on your part for your specific usage._
|
|
||||||
|
|
||||||
## Why Minecraft Console Client?
|
|
||||||
|
|
||||||
- Easy to use
|
|
||||||
- Helpful community
|
|
||||||
- Open-Source
|
|
||||||
- Fast performance
|
|
||||||
- Cross-Platform
|
|
||||||
- Docker Support
|
|
||||||
- 10 years of continuous development
|
|
||||||
- Active contributors
|
|
||||||
- Widely used
|
|
||||||
|
|
||||||
## Quick Intro
|
|
||||||
|
|
||||||
Don't have time to read through the documentation, we got you, our community has made some simple introduction videos about the **Minecraft Console Client**.
|
|
||||||
|
|
||||||
### The list of the tutorials:
|
|
||||||
|
|
||||||
Installation:
|
|
||||||
|
|
||||||
- [Installation on Windows by Daenges](https://www.youtube.com/watch?v=BkCqOCa2uQw)
|
|
||||||
- [Installation on Windows + Auto AFK and More by Dexter113](https://www.youtube.com/watch?v=FxJ0KFIHDrY)
|
|
||||||
|
|
||||||
Using Commands, Scripts and other features:
|
|
||||||
|
|
||||||
- [Minecraft Console Client | Tutorial | Commands, Scripts, AppVars, Matches, Tasks and C# Scripts by Daenges](https://youtu.be/JbDpwwETEnU)
|
|
||||||
- [Console Client Tutorial - Scripting by Zixxter](https://www.youtube.com/watch?v=XE7rYBFJxn0)
|
|
||||||
|
|
||||||
## Getting Help
|
|
||||||
|
|
||||||
MCC has a community that is willing to help, we have a Discussions section in out Git Hub repository.
|
|
||||||
|
|
||||||
Click [here](https://github.com/MCCTeam/Minecraft-Console-Client/discussions) to access it.
|
|
||||||
|
|
||||||
### Before getting help
|
|
||||||
|
|
||||||
- **Please use the search option here or in the discussion section and read the documentation so we avoid duplicate questions. Thank you!**
|
|
||||||
- **Please be kind and patient, respect others as they're the ones using their time to help you**
|
|
||||||
|
|
||||||
## Bugs, Ideas, Feature Requests
|
|
||||||
|
|
||||||
Bug reporting, idea submitting or feature requesting are done in the [Issues](https://github.com/MCCTeam/Minecraft-Console-Client/issues) section of our [Github repository]([here](https://github.com/MCCTeam/Minecraft-Console-Client)).
|
|
||||||
|
|
||||||
Navigate to the Issues section, search for a bug, idea or a feature using the search option here in the documentation and in the `Issues` section on Git Hub before making your own.
|
|
||||||
|
|
||||||
If you haven't found anything similar, go ahead and click on the `New issue` button, then choose what you want to do.
|
|
||||||
|
|
||||||
If you're reporting a bug, please be descriptive as much as possible, try to explain how to re-create the bug, attack screenshots and logs, make sure that you have [`debugmessages`](configuration.me#debugmessages) set to `true` before sending a bug report or taking a screenshot.
|
|
||||||
|
|
||||||
### Before submitting
|
|
||||||
|
|
||||||
- **Please use the search option here or in the `Issues` section and read the documentation so we avoid duplicate questions/ideas/reports. Thank you!**
|
|
||||||
- **Please be kind, patient and respect others. Thank you!**
|
|
||||||
|
|
||||||
## Notes on some features
|
|
||||||
|
|
||||||
### Inventory, Terrain and Entity Handling
|
|
||||||
|
|
||||||
Inventory handling is currently not supported in versions: `1.4.6 - 1.9`
|
|
||||||
|
|
||||||
Terrain handling is currently not supported in versions: `1.4.6 - 1.6`
|
|
||||||
|
|
||||||
Entity handling is currently not supported in versions: `1.4.6 - 1.9` (but `1.8` and `1.9` are being worked on, almost at the working state, only `EntityMetadata` packet remains to be fixed)
|
|
||||||
|
|
||||||
There features might not always be implemented in the latest version of the game, since they're often subjected to major changes by Mojang, and we need some time to figure out what has changed and to implement the required changes.
|
|
||||||
|
|
||||||
If there was a major game update, and the MCC hasn't been updated to support these features, if you're a programmer, feel free to contribute to the project.
|
|
||||||
|
|
||||||
## Credits
|
|
||||||
|
|
||||||
_Project initiated by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/)._
|
|
||||||
|
|
||||||
Many features would not have been possible without the help of our talented community:
|
|
||||||
|
|
||||||
**Maintainers**
|
|
||||||
|
|
||||||
ORelio, ReinforceZwei, milutinke, BruceChenQAQ, bradbyte
|
|
||||||
|
|
||||||
**Ideas**
|
|
||||||
|
|
||||||
ambysdotnet, Awpocalypse, azoundria, bearbear12345, bSun0000, Cat7373, dagonzaros, Dids, Elvang, fuckofftwice, GeorgH93, initsuj, JamieSinn, joshbean39, LehmusFIN, maski, medxo, mobdon, MousePak, TNT-UP, TorchRJ, yayes2, Yoann166, ZizzyDizzyMC and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BIdea%5D+is%3Aopen).
|
|
||||||
|
|
||||||
**Bug Hunters**
|
|
||||||
|
|
||||||
1092CQ, ambysdotnet, bearbear12345, c0dei, Cat7373, Chtholly, Darkaegis, dbear20, DigitalSniperz, doranchak, drXor, FantomHD, gerik43, ibspa, iTzMrpitBull, JamieSinn, k3ldon, KenXeiko, link3321, lyze237, mattman00000, Nicconyancat, Pokechu22, ridgewell, Ryan6578, Solethia, TNT-UP, TorchRJ, TRTrident, WeedIsGood, xp9kus, Yoann166 and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BBUG%5D+is%3Aopen+).
|
|
||||||
|
|
||||||
**Contributors**
|
|
||||||
|
|
||||||
Allyoutoo, Aragas, Bancey, bearbear12345, corbanmailloux, Daenges, dbear20, dogwatch, initsuj, JamieSinn, justcool393, lokulin, maxpowa, medxo, milutinke, Pokechu22, ReinforceZwei, repository, TheMeq, TheSnoozer, vkorn, v1RuX, yunusemregul, ZizzyDizzyMC, BruceChenQAQ, bradbyte _... And all the [GitHub contributors](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors)!_
|
|
||||||
|
|
||||||
**Libraries:**
|
|
||||||
|
|
||||||
Minecraft Console Client also borrows code from the following libraries:
|
|
||||||
|
|
||||||
| Name | Purpose | Author | License |
|
|
||||||
| ----------- | ---------------- | ---------------- | ------- |
|
|
||||||
| Biko | Proxy handling | Benton Stark | MIT |
|
|
||||||
| Heijden.Dns | DNS SRV Lookup | Geoffrey Huntley | MIT |
|
|
||||||
| DotNetZip | Zlib compression | Dino Chiesa | MS-PL |
|
|
||||||
|
|
||||||
## Disclaimer
|
|
||||||
|
|
||||||
Even if everything should work, we are not responsible for any damage this app could cause to your computer or your server. This app does not steal your password. If you don't trust it, don't use it or check & compile from the source code.
|
|
||||||
|
|
||||||
Also, remember that when you connect to a server with this program, you will appear where you left the last time. This means that **you can die if you log in in an unsafe place on a survival server!** Use the script scheduler bot to send a teleport command after logging in.
|
|
||||||
|
|
||||||
We remind you that **you may get banned** by your server for using this program. Use accordingly with server rules.
|
|
||||||
|
|
||||||
## License
|
|
||||||
|
|
||||||
Minecraft Console Client is a totally free of charge, open source project. The source code is available at [Github Repository](https://github.com/MCCTeam/Minecraft-Console-Client)
|
|
||||||
|
|
||||||
Unless specifically stated, source code is from the MCC Team or Contributors, and available under CDDL-1.0. More info about CDDL-1.0: [http://qstuff.blogspot.fr/2007/04/why-cddl.html](http://qstuff.blogspot.fr/2007/04/why-cddl.html) Full license at [http://opensource.org/licenses/CDDL-1.0](http://opensource.org/licenses/CDDL-1.0)
|
|
||||||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1,76 +0,0 @@
|
||||||
# Contributing
|
|
||||||
|
|
||||||
At this moment this page needs to be created.
|
|
||||||
|
|
||||||
For now you can use our article from the [Git Hub repository Wiki](https://github.com/MCCTeam/Minecraft-Console-Client/wiki/Update-console-client-to-new-version) written by [ReinforceZwei](https://github.com/ReinforceZwei).
|
|
||||||
|
|
||||||
## Translations
|
|
||||||
|
|
||||||
MCC now supports the following languages (Alphabetical order) :
|
|
||||||
* `de.ini` : Deutsch - German
|
|
||||||
* **`en.ini` : English - English**
|
|
||||||
* `fr.ini` : Français (France) - French
|
|
||||||
* `ru.ini` : Русский (Russkiy) - Russian
|
|
||||||
* `vi.ini` : Tiếng Việt (Việt Nam) - Vietnamese
|
|
||||||
* `zh-Hans.ini` : 简体中文 - Chinese Simplified
|
|
||||||
* `zh-Hant.ini` : 繁體中文 - Chinese Traditional
|
|
||||||
|
|
||||||
### Add new translation
|
|
||||||
|
|
||||||
1. First you need to get the name of the translated file.
|
|
||||||
* Visit [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c) and find the first occurrence of the language you need to translate in the table below.
|
|
||||||
* Use the language code of the row in the table as the name of the translation file.
|
|
||||||
* For example:
|
|
||||||
* `English` -> row `English 0x0009` -> `en` -> `en.ini`
|
|
||||||
* `Chinese (Traditional)` -> row `Chinese (Traditional) 0x7C04` -> `zh-Hant` -> `zh-Hant.ini`
|
|
||||||
|
|
||||||
2. Which system languages are recommended to use this translation?
|
|
||||||
* Still check the table in [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c), one language may have multiple rows.
|
|
||||||
* You will need to indicate which language codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `de.ini` applies to `de`, `de-AT`, `de-BE`, `de-DE`, ...
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh-Hans`, `zh`, `zh-CN`, `zh-SG`.
|
|
||||||
|
|
||||||
3. Which game languages are recommended to use this translation?
|
|
||||||
* Check out the table in [this link](https://github.com/MCCTeam/Minecraft-Console-Client/discussions/2239), where the `Locale Code` column indicates the language code in minecraft.
|
|
||||||
* You will need to indicate which locale codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `fr.ini` applies to `fr_ca`, `fr_fr`.
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh_cn`.
|
|
||||||
|
|
||||||
4. Add the new translation to the code. (Optional)
|
|
||||||
* **If you are not familiar with programming, you can skip this step and just write the above information in your PR or issue.**
|
|
||||||
* Add the newly created translation file `xx.ini` to the project `/Resources/lang/xx.ini`.
|
|
||||||
* Open `/DefaultConfigResource.resx`.
|
|
||||||
* Click `Add Resources`.
|
|
||||||
* Choose `/Resources/lang/xx.ini`.
|
|
||||||
* Rename the added resource file in `/DefaultConfigResource.resx` to `Translation_xx`.
|
|
||||||
* Open `/Translations.cs`.
|
|
||||||
* Find `public static Tuple<string, string[]> GetTranslationPriority();`
|
|
||||||
* Update the mapping of system language codes to translation files.
|
|
||||||
* Find `public static string[] GetTranslationPriority(string gameLanguage);`
|
|
||||||
* Update the mapping of game locale code to translation files.
|
|
||||||
|
|
||||||
5. Follow the section "Update existing translation".
|
|
||||||
|
|
||||||
### Update existing translation
|
|
||||||
|
|
||||||
1. Visit [the lang folder](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/Resources/lang), download `en.ini` and the language you want to translate(`xx.ini`).
|
|
||||||
|
|
||||||
2. Compare `en.ini` and `xx.ini` and update outdated or non-existent entries in `xx.ini`.
|
|
||||||
|
|
||||||
3. Once you finished the translation work, submit a pull request or send us the file through an [Issue](https://github.com/MCCTeam/Minecraft-Console-Client/issues) in case you are not familiar with Git.
|
|
||||||
|
|
||||||
### Translate README.md
|
|
||||||
|
|
||||||
1. Get the English version of the README.md from [here](https://raw.githubusercontent.com/MCCTeam/Minecraft-Console-Client/master/README.md).
|
|
||||||
|
|
||||||
2. See `Add new translation -> 1.` for the target language code. Assume it is `xx`.
|
|
||||||
|
|
||||||
3. Complete the translation according to the English README.md and name the translated version as `README-xx.md`.
|
|
||||||
|
|
||||||
4. In the English README, above the "About" section, add the name of the language and a hyperlink to `README-xx.md`.
|
|
||||||
|
|
||||||
## Contributors
|
|
||||||
|
|
||||||
[Check out our contributors on Github](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors).
|
|
||||||
|
|
@ -1,177 +0,0 @@
|
||||||
# Creating Chat Bots
|
|
||||||
|
|
||||||
- [Notes](#notes)
|
|
||||||
- [Requirements](#requirements)
|
|
||||||
- [Quick Introduction](#quick-introduction)
|
|
||||||
- [Examples](#examples)
|
|
||||||
- [C# API](#c#-api)
|
|
||||||
|
|
||||||
## Notes
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For now this page contains only the bare basics of the Chat Bot API, enough of details to teach you how to make basic Chat Bots. For more details you need to take a look at the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) and [Examples](#examples). This page will be improved in the future.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a rich C# API which allows you to create Chat Bots (effectively plugins) which can help you create complex automations which normal scripts may not be able to do.
|
|
||||||
|
|
||||||
## Requirements
|
|
||||||
|
|
||||||
- A basic knowledge of C# programming language
|
|
||||||
- A text editor
|
|
||||||
|
|
||||||
If you're not familiar with the C# programming language, we suggest taking a look at the following resources:
|
|
||||||
|
|
||||||
Crash courses:
|
|
||||||
|
|
||||||
- [C# Crash Course playlist by Teddy Smit](https://www.youtube.com/watch?v=67oWw9TanOk&list=PL82C6-O4XrHfoN_Y4MwGvJz5BntiL0z0D)
|
|
||||||
|
|
||||||
More in-depth:
|
|
||||||
|
|
||||||
- [Learn C# Youtube Playlist by Microsoft](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVxKLQCHpiUWun7vlJJvUiN)
|
|
||||||
- [Getting started with C# (An index of tutorials and the documentation) by Microsoft](https://docs.microsoft.com/en-us/dotnet/csharp/)
|
|
||||||
|
|
||||||
## Quick Introduction
|
|
||||||
|
|
||||||
This introduction assumes that you have the basic knowledge of C#.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Here we will use terms Chat Bot and Script interchangeably**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Create a new empty file and name it `ExampleChatBot.cs` in the same folder where you have your MCC installed.
|
|
||||||
|
|
||||||
Paste the following example code:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
MCC.LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
|
|
||||||
// The code and comments above are defining a "Script Metadata" section
|
|
||||||
|
|
||||||
// Every single chat bot (script) must be a class which extends the ChatBot class.
|
|
||||||
// Your class must be instantiates in the "Script Metadata" section and passed to MCC.LoadBot function.
|
|
||||||
class ExampleChatBot : ChatBot
|
|
||||||
{
|
|
||||||
// This method will be called when the script has been initialized for the first time, it's called only once
|
|
||||||
// Here you can initialize variables, eg. Dictionaries. etc...
|
|
||||||
public override void Initialize()
|
|
||||||
{
|
|
||||||
LogToConsole("An example Chat Bot has been initialized!");
|
|
||||||
}
|
|
||||||
|
|
||||||
// This is a function that will be run when we get a chat message from a server
|
|
||||||
// In this example it just detects the type of the message and prints it out
|
|
||||||
public override void GetText(string text)
|
|
||||||
{
|
|
||||||
string message = "";
|
|
||||||
string username = "";
|
|
||||||
text = GetVerbatim(text);
|
|
||||||
|
|
||||||
if (IsPrivateMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has sent you a private message: " + message);
|
|
||||||
}
|
|
||||||
else if (IsChatMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has said: " + message);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
Start MCC, connect to a server and run the following internal command: `/script ExampleChatBot.cs`.
|
|
||||||
|
|
||||||
If you did everything right you should see: `[Example Chat Bot] An example Chat Bot has been initialised!` message appear in your console log.
|
|
||||||
|
|
||||||
### Structure of Chat Bots
|
|
||||||
|
|
||||||
Chat Bot (Script) structure is the following:
|
|
||||||
|
|
||||||
```
|
|
||||||
<script metadata>
|
|
||||||
<chat bot class>
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** is a section with a custom format that mixes in C# with our format using comments. Every single Chat Bot (Script) must have this section at the beginning in order to work.
|
|
||||||
|
|
||||||
### Script Metadata Format
|
|
||||||
|
|
||||||
`//MCCScript 1.0` marks the beginning of the **Script Metadata** section, this must always be on the first line or the Chat Bot (Script) will not load and will throw an error.
|
|
||||||
|
|
||||||
`//MCCScript Extensions` marks the end of the **Script Metadata** section, this must be defined before a Chat Bot (Script) class.
|
|
||||||
|
|
||||||
In order for your Chat Bot (Script) to properly load in-between the `//MCCScript 1.0` and the `//MCCScript Extensions` lines you must instantiate your Chat Bot (Script) class and pass it to the `MCC.LoadBot` function.
|
|
||||||
|
|
||||||
Example code:
|
|
||||||
|
|
||||||
```
|
|
||||||
MCC.LoadBot(new YourChatBotClassNameHere());
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** section allows for including C# packages and libraries with: `//using <namespace>` and `/dll <dll name>`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Avoid adding whitespace between `//` and keywords**
|
|
||||||
:::
|
|
||||||
|
|
||||||
By the default the following packages are loaded:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Text.RegularExpressions;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.IO;
|
|
||||||
using System.Net;
|
|
||||||
using System.Threading;
|
|
||||||
using MinecraftClient;
|
|
||||||
using MinecraftClient.Mapping;
|
|
||||||
using MinecraftClient.Inventory;
|
|
||||||
```
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//using System.Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
```
|
|
||||||
|
|
||||||
Full Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
//using System.Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
|
|
||||||
MCC.LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
```
|
|
||||||
|
|
||||||
### Chat Bot Class
|
|
||||||
|
|
||||||
After the end of the **Script Metadata** section, you basically can define any number of classes you like, the only limitation is that the main class of your Chat Bot (Script) must extend `ChatBot` class.
|
|
||||||
|
|
||||||
There are no required methods, everything is optional.
|
|
||||||
|
|
||||||
When the Chat Bot (Script) has been initialized for the first time the `Initialize` method will be called. In it you can initialize variables, eg. Dictionaries, etc..
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For allocating resources like a database connection, we recommend allocating them in `AfterGameJoined` and freeing them in `OnDisconnect`** :::.
|
|
||||||
|
|
||||||
## Examples
|
|
||||||
|
|
||||||
You can find a lot of examples in our Git Hub Repository at [ChatBots](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/ChatBots) and [config](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/config).
|
|
||||||
|
|
||||||
## C# API
|
|
||||||
|
|
||||||
As of the time of writing, the C# API has been changed in forks that are yet to be merged, so for now you can use the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) for reference.
|
|
||||||
|
|
||||||
Each method is well documented with standard C# documentation comments.
|
|
||||||
|
|
||||||
In the future we will make a script to auto-generate this section based on the documentation in the code.
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -1,958 +0,0 @@
|
||||||
# Usage
|
|
||||||
|
|
||||||
How to run the program:
|
|
||||||
|
|
||||||
- [Running on Windows](#windows)
|
|
||||||
- [Running on Linux, macOS](#linux-macos)
|
|
||||||
- [Running using Docker](#docker)
|
|
||||||
|
|
||||||
Using the command line parameters:
|
|
||||||
|
|
||||||
- [Examples](#quick-usage-of-mcc-with-examples)
|
|
||||||
- [Command line parameters](#command-line-parameters)
|
|
||||||
- [Internal commands](#internal-commands)
|
|
||||||
|
|
||||||
## Windows
|
|
||||||
|
|
||||||
Simply run `MinecraftClient.exe`
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Windows it's best using [Windows Terminal](https://docs.microsoft.com/en-us/windows/terminal/install) for the best experience and looks. Some features like emojis in the [`/chunk`](#chunk) command do not work in CMD or Powershell 5**
|
|
||||||
:::
|
|
||||||
|
|
||||||
## Linux, macOS
|
|
||||||
|
|
||||||
To run the client you need to type the following command in your terminal emulator:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
./MinecraftClient
|
|
||||||
```
|
|
||||||
|
|
||||||
If you want to keep it running in the background you can use `screen` (Linux only) Example:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Start the screen
|
|
||||||
screen -S mcc
|
|
||||||
|
|
||||||
# Run it
|
|
||||||
./MinecraftClient
|
|
||||||
|
|
||||||
# Detach from the screen by pressing CTRL + A + D
|
|
||||||
|
|
||||||
# Re-attach if you want to have accces again
|
|
||||||
screen -r mcc
|
|
||||||
```
|
|
||||||
|
|
||||||
_Learn more on how to use the screen command: [YouTube](https://www.youtube.com/watch?v=_ZJiEX4rmN4)_
|
|
||||||
|
|
||||||
## Docker
|
|
||||||
|
|
||||||
See [Run using Docker](./guide/installation.md#using-docker)
|
|
||||||
|
|
||||||
## Command-line usage
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a plethora of useful command line parameters, here you can learn about them.
|
|
||||||
|
|
||||||
### For people not familiar with the command line
|
|
||||||
|
|
||||||
For people who are not familiar with the usage of programs in the command line (terminal emulators), here we will explain what every single thing means, if you're already experienced you can skip this.
|
|
||||||
|
|
||||||
In command line (terminal emulators) you can run programs by specifying their name and hitting enter, usually programs have additional way of being configured, started or provided some additional data in a different manner, this is achieved by using command line parameters.
|
|
||||||
|
|
||||||
Command line parameters are written after the name of the program, they're separated by spaces and they can have a few different formats, examples:
|
|
||||||
|
|
||||||
- `someparameter`
|
|
||||||
- `-some-parameter`
|
|
||||||
- `--some-other-parameter`
|
|
||||||
- `--some-setting="some value"`
|
|
||||||
- `-a=5`
|
|
||||||
|
|
||||||
Parameters with a single dash (`-`) are usually used for a single letter (short-hand) parameters, while the ones with a double dash (`--`) are being used for parameters with a longer/full name.
|
|
||||||
|
|
||||||
When you are reading examples, you will often see something like this: `<something here>`, this means that this is a place holder and it should be changed with some value, excluding the `<` and the `>`.
|
|
||||||
|
|
||||||
For example `<username>` you need to change to an username of your liking, example: `notch` (`<` and `>` should not be included).
|
|
||||||
|
|
||||||
`[` and `]` mean that a parameter is an optional one.
|
|
||||||
|
|
||||||
They also can hold some values, example from the MCC:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
```
|
|
||||||
|
|
||||||
When a parameter has a textual value that includes one more spaces, you will need to wrap it the value in double quotes (`"`), example: `--some-parameter="some text here with spaces in it"`
|
|
||||||
|
|
||||||
Here is an example for using a `--help` command line parameter for MCC that will print out a page on how to use MCC from the command line:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
```
|
|
||||||
|
|
||||||
### Quick usage of MCC with examples
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Linux and macOS, you need to type: `./MinecraftClient` instead of `MinecraftClient.exe`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
MinecraftClient.exe <username> <password> <server>
|
|
||||||
MinecraftClient.exe <username> <password> <server> "/mycommand"
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
MinecraftClient.exe --section.setting=value [--other settings]
|
|
||||||
MinecraftClient.exe <settings-file.ini> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Logging in as a user: notch, with a password: password123 onto a server with the ip: mc.someserver.com:25565
|
|
||||||
MinecraftClient.exe notch password123 mc.someserver.com:25565
|
|
||||||
|
|
||||||
# Overriding a setting from MinecraftClient.ini using a command line parameter
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
|
|
||||||
# Providing a custom settings ini file and overriding a language to Chinese
|
|
||||||
MinecraftClient.exe CustomSettingsFile.ini --language=zh
|
|
||||||
```
|
|
||||||
|
|
||||||
### Rules of using the command line parameters
|
|
||||||
|
|
||||||
You can mix and match arguments by following theses rules:
|
|
||||||
|
|
||||||
- First positional argument may be either the login or a settings file
|
|
||||||
- Other positional arguments are read in order: login, password, server, command
|
|
||||||
- Arguments starting with `--` can be in any order and position
|
|
||||||
|
|
||||||
Examples and further explanations:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically connect you to the chosen server.
|
|
||||||
- You may omit password and/or server to specify e.g. only the login
|
|
||||||
- To specify a server but ask password interactively, use `""` as password.
|
|
||||||
- To specify offline mode with no password, use `-` as password.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server> "/mycommand"
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically send `/mycommand` to the server and close.
|
|
||||||
- To send several commands and/or stay connected, use the 1ScriptScheduler1 bot instead.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will load the specified configuration file
|
|
||||||
- If the file contains login / password / server ip, it will automatically connect.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Specify settings on the command-line, see possible value in the configuration file
|
|
||||||
- Use `--section.setting=value` for settings outside the `[Main]` section
|
|
||||||
- Example: `--antiafk.enabled=true` for enabling the `AntiAFK` bot
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini> <login> <password> <server> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Load the specified configuration file and override some settings from the file
|
|
||||||
|
|
||||||
## 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`.
|
|
||||||
|
|
||||||
In scripts and remote control, no slash is needed to perform the command, eg. `quit`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Some commands may not be documented yet or are defined in description of Chat Bots, use `/help` to list them all, or you can contribute to this page.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `animation`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Swing your main or off hand.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/animation <mainhand|offhand>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bed`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to make the bot sleep easily, all about sleeping in one command.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `bed leave|sleep <x> <y> <z>|sleep <radius>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Leave a bed:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed leave
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed on 124 84 76:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 124 84 76
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep ~ ~ ~-2
|
|
||||||
```
|
|
||||||
|
|
||||||
Automatically find a bed in radius of 50 blocks and sleep in it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 50
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bots`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to list and unload a specific bot or all bots. Useful when debugging and developing scripts.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots <list|unload <bot name|all>>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Unload a bot called CustomScript
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload CustomScript
|
|
||||||
```
|
|
||||||
|
|
||||||
Unload all bots
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload all
|
|
||||||
```
|
|
||||||
|
|
||||||
### `changeslot`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Change your selected slot in the hotbar.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/changeslot <1-9>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `chunk`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Displays the chunk loading status in a nice way.
|
|
||||||
|
|
||||||
::: warning **To use this feature you need to enable the [Terrain and Movements](configuration.md#terrainandmovements)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need a terminal with emoji support, like Powershell 7, Windows Terminal or Alacritty, if you do not want emoji support and want to use cmd or powershell 5, disable emojis with: [`enableemoji`](configuration.md#enableemoji)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/chunk status [chunkX chunkZ|locationX locationY locationZ]
|
|
||||||
```
|
|
||||||
|
|
||||||
How it looks:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
### `dig`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Dig a block on a specific coordinate.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig 127 63 12
|
|
||||||
```
|
|
||||||
|
|
||||||
Using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig ~ ~-1 ~2
|
|
||||||
```
|
|
||||||
|
|
||||||
### `dropitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Drop all items of a specific type from your inventory.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem <itemtype>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All item types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem diamond
|
|
||||||
```
|
|
||||||
|
|
||||||
### `entity`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Attack an entity, use an entity or get a list of entities around you.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Entity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity <id|entitytype> <attack|use>
|
|
||||||
```
|
|
||||||
|
|
||||||
Get a list of entities around you:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All entity types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Mapping/EntityType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Attack a Zombie:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity Zombie attack
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execif`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute a command if a specific condition is met.
|
|
||||||
|
|
||||||
The condition is a C# expression and the local variables you set using [`set`](#set), [`setrnd`](#setrnd) or the configuration file can be used. The condition is always returned as a boolean, so only comparison can be done, if needed cast the expression result to bool.
|
|
||||||
|
|
||||||
Also the instance of MCC is available with `MCC.`.
|
|
||||||
|
|
||||||
::: tip **All local variables are treated as strings in the app, when comparing their values, you can use `<variable> == "<value>"`, or better use [`.Equals`](https://www.programiz.com/csharp-programming/library/string/equals) method**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `/execif <condition (C# expression)> ---> <command>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Setting a variable and using it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test=Something
|
|
||||||
/execif test == "Something" ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test2=1
|
|
||||||
/execif test2 == "1" ---> send Success 2!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Basic C# expression:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 + 2 + 3 == 6 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using MCC class:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif MCC.GetHealth() == 20.0 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using in combination with [`execmulti`](#execmulti):
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 == 1 ---> execmulti send 1 -> send 2 -> send 3
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execmulti`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute multiple commands in succession on a single line, useful for debugging or when using [`execif`](#execif)
|
|
||||||
|
|
||||||
Commands are separated by `->`
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `execmulti <command 1> -> <command 2> -> <command 3> -> ...`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/execmulti send 1 -> send 2 -> send 3 -> sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `quit`
|
|
||||||
|
|
||||||
- **Alias:** `exit`
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect from the server and close the application
|
|
||||||
|
|
||||||
### `reco`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect and reconnect to the server
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reco [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `reload`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Reloads settings from MinecraftClient.ini and Chat Bots.
|
|
||||||
|
|
||||||
::: tip **Some settings won't be reloaded since they are used before the client initialization. Also, settings provided by the command line paramteres will be overriden. This also does not reload the ReplayBot due to technical limitations.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reload
|
|
||||||
```
|
|
||||||
|
|
||||||
### `connect`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Go to the given server and resume the script
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/connect <server> [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`<server>` is either a server IP or a server alias defined in servers file, for more info check out [serverlist](configuration.html#serverlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `script`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Run a script containing a list of commands
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/script <script name>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `send`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Send a message or a command to the server
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/send <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `respawn`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use this to respawn if you are dead (like clicking "respawn" in-game)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/respawn
|
|
||||||
```
|
|
||||||
|
|
||||||
### `log`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Display some text in the console (useful for scripts)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/log <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
- Example:
|
|
||||||
|
|
||||||
```
|
|
||||||
/log this is some text
|
|
||||||
```
|
|
||||||
|
|
||||||
### `list`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
List players logged in to the server (uses tab list info sent by server)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/list
|
|
||||||
```
|
|
||||||
|
|
||||||
### `set`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a value which can be used as `%variable%` in further commands
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set <variable>=<value>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set abc=123
|
|
||||||
```
|
|
||||||
|
|
||||||
### `setrnd`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a `%variable%` randomly to one of the provided values
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> string1 "\"string2\" string3"
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> -7to10
|
|
||||||
```
|
|
||||||
|
|
||||||
(Set a `%variable%` to a number from -7 to 9)
|
|
||||||
|
|
||||||
### `sneak`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle sneaking.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/Sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `tps`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Get the server TPS (Ticks Per Second).
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/tps
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use item in the hand, this can be used to do a right click on items which open menus on servers.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useitem
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useblock`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Place a block from a hand on a specific coordinate or open an inventory:
|
|
||||||
|
|
||||||
- chest/trap chest
|
|
||||||
- furnace
|
|
||||||
- brewing stand
|
|
||||||
- dispenser/dropper
|
|
||||||
- hopper
|
|
||||||
- shulker
|
|
||||||
- loom
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **Not all inventories have a GUI representation in an ASCII art format.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock 43 72 7
|
|
||||||
```
|
|
||||||
|
|
||||||
### `follow`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Make the bot follow a player.
|
|
||||||
|
|
||||||
::: tip **This command is avaliable only with [Follow Player](chat-bots.md#follow-player) Chat Bot enabled.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Enity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow <player name|stop>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow milutinke
|
|
||||||
```
|
|
||||||
|
|
||||||
### `wait`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Wait X ticks (10 ticks = ~1 second. Only for scripts)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait <time>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait 20
|
|
||||||
```
|
|
||||||
|
|
||||||
### `move`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for moving when terrain and movements feature is enabled.
|
|
||||||
|
|
||||||
::: tip **You need to have [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Terrain and Movements](configuration.md#terrainandmovements) is currently not supported in `1.4.6 - 1.6`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/move <on|off|get|up|down|east|west|north|south|center|x y z|gravity [on|off]> [-f]: walk or start walking. "-f": force unsafe movements like falling or touching fire
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Enable gravity
|
|
||||||
|
|
||||||
```
|
|
||||||
/move gravity on
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move 125 72 34
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to a center of a block:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move center
|
|
||||||
```
|
|
||||||
|
|
||||||
### `look`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for looking at direction when terrain and movements is enabled
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look <x y z|yaw pitch|up|down|east|west|north|south>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look up
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/look east
|
|
||||||
```
|
|
||||||
|
|
||||||
### `inventory`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for inventory manipulation.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
MCC defines inventories as containers internally, so player's inventory, chests, droppers, dispensers, hoppers, chest minecarts, barrels, furnaces, etc... are all considered a container, and each one of them has it's ID, the words container and inventory can be used interchangeably.
|
|
||||||
|
|
||||||
Inventory has slots and each one of them has an id.
|
|
||||||
|
|
||||||
::: tip **This command DOES NOT physically open a container (eg. chest), for that you need to use [`useblock`](#useblock) command first.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
An example of player inventory with annotated IDs in ASCII art and a list of items:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <action> [action parameters] | /inventory <inventories/i> | /inventory <search/s> <item type> [amount]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **player and container can be simplified with p and c accordingly**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Actions:
|
|
||||||
|
|
||||||
- `click`
|
|
||||||
- `shiftclick`
|
|
||||||
- `drop`
|
|
||||||
|
|
||||||
Show/Preview items in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Click/Shift-Click on an item in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <click|shiftclick> <slot id> [left|right|middle]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **The default click is left click**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Close an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop item(s) from an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id> drop <slot id> <number of items|all>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To drop all items from a slot, you can use: `all`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive <slot id> <item type> <amount>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete <slot id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Show all available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory inventories
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for an item of specified type in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory search <item type>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Show player's inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player
|
|
||||||
```
|
|
||||||
|
|
||||||
Show/Preview items in an inventory using an id:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 3
|
|
||||||
```
|
|
||||||
|
|
||||||
Click on an item in player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player click 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Right-Click on an item in slot number/id `4` in an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 click 4 right
|
|
||||||
```
|
|
||||||
|
|
||||||
Close an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop a single item from a player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 36 1
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop all items from a player's inventory in slot number/id `37`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 37 all
|
|
||||||
```
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive 36 diamondblock 64
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory in slot number/id `36` when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for 10 Slime Blocks in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory s SlimeBlock 10
|
|
||||||
```
|
|
||||||
|
|
||||||
### `debug`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle debug messages, useful for chatbot developers.
|
|
||||||
|
|
||||||
### `help`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Show commands help.
|
|
||||||
|
|
||||||
::: tip **Use "/send /help" for server help**
|
|
||||||
:::
|
|
||||||
|
|
@ -1,28 +0,0 @@
|
||||||
---
|
|
||||||
home: true
|
|
||||||
heroImage: /images/MCC_logo_with_edge.png
|
|
||||||
tagline: 'Minecraft Console Client (MCC) is a lightweight open-source Minecraft Java client implemented in C#'
|
|
||||||
actions:
|
|
||||||
-
|
|
||||||
text: Installation
|
|
||||||
link: ./guide/installation.md
|
|
||||||
type: primary
|
|
||||||
-
|
|
||||||
text: Learn More →
|
|
||||||
link: ./guide/
|
|
||||||
type: secondary
|
|
||||||
actionText:
|
|
||||||
actionLink:
|
|
||||||
features:
|
|
||||||
-
|
|
||||||
title: Chat
|
|
||||||
details: Chat with other people on the server
|
|
||||||
-
|
|
||||||
title: Automation
|
|
||||||
details: Create bots to do automated tasks
|
|
||||||
-
|
|
||||||
title: Supported Versions
|
|
||||||
details: 1.4 - 1.19.2
|
|
||||||
footer: Made by MCC Team with ❤️
|
|
||||||
---
|
|
||||||
|
|
||||||
|
|
@ -1,163 +0,0 @@
|
||||||
# Introduction
|
|
||||||
|
|
||||||
- [About](#about)
|
|
||||||
- [Quick Intro (YouTube Videos)](#quick-intro)
|
|
||||||
- [Features](#features)
|
|
||||||
- [Why Minecraft Console Client?](#why-minecraft-console-client)
|
|
||||||
- [Getting Help](#getting-help)
|
|
||||||
- [Submitting a bug report or an idea/feature-request](#bugs-ideas-feature-requests)
|
|
||||||
- [Important notes on some features](#notes-on-some-features)
|
|
||||||
- [Credits](#credits)
|
|
||||||
- [Disclaimer](#disclaimer)
|
|
||||||
- [License](#license)
|
|
||||||
|
|
||||||
## About
|
|
||||||
|
|
||||||
**Minecraft Console Client (MCC)** is a lightweight cross-platform open-source **Minecraft** TUI client for **Java edition** that allows you to connect to any Minecraft Java server, send commands and receive text messages in a fast and easy way without having to open the main Minecraft game.
|
|
||||||
|
|
||||||
It also provides various automations that you can enable for administration and other purposes, as well as extensible C# API for creating Bots.
|
|
||||||
|
|
||||||
It was originally made by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/), now it's maintained by him and many other contributors from the community.
|
|
||||||
|
|
||||||
## Features
|
|
||||||
|
|
||||||
- Chat
|
|
||||||
|
|
||||||
- Send and receive chat messages
|
|
||||||
- [Log chat history](chat-bots.md#chat-log)
|
|
||||||
- [Get alerted on certain keywords](chat-bots.md#alerts)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
|
|
||||||
- [Anti AFK](chat-bots.md#anti-afk)
|
|
||||||
- [Auto Relog](chat-bots.md#auto-relog)
|
|
||||||
- [Script Scheduler](chat-bots.md#script-scheduler)
|
|
||||||
- [Remote Control](chat-bots.md#remote-control)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
- [Auto Attack](chat-bots.md#auto-attack)
|
|
||||||
- [Auto Fishing](chat-bots.md#auto-fishing)
|
|
||||||
- [Auto Eat](chat-bots.md#auto-eat)
|
|
||||||
- [Auto Craft](chat-bots.md#auto-craft)
|
|
||||||
- [Mailer Bot](chat-bots.md#mailer)
|
|
||||||
- [Auto Drop](chat-bots.md#auto-drop)
|
|
||||||
- [Replay Mod](chat-bots.md#replay-mod)
|
|
||||||
- [API for creating Bots in C#](creating-bots.md#creating-chat-bots)
|
|
||||||
- [Docker Support](installation.md#using-docker)
|
|
||||||
- [Inventory Handling](usage.md#inventory)
|
|
||||||
- [Terrain Traversing](usage.md#move)
|
|
||||||
- Entity Handling
|
|
||||||
|
|
||||||
_NOTE: Some of mentioned features are disabled by default and you will have to turn them on in the configuration file and some may require additional configuration on your part for your specific usage._
|
|
||||||
|
|
||||||
## Why Minecraft Console Client?
|
|
||||||
|
|
||||||
- Easy to use
|
|
||||||
- Helpful community
|
|
||||||
- Open-Source
|
|
||||||
- Fast performance
|
|
||||||
- Cross-Platform
|
|
||||||
- Docker Support
|
|
||||||
- 10 years of continuous development
|
|
||||||
- Active contributors
|
|
||||||
- Widely used
|
|
||||||
|
|
||||||
## Quick Intro
|
|
||||||
|
|
||||||
Don't have time to read through the documentation, we got you, our community has made some simple introduction videos about the **Minecraft Console Client**.
|
|
||||||
|
|
||||||
### The list of the tutorials:
|
|
||||||
|
|
||||||
Installation:
|
|
||||||
|
|
||||||
- [Installation on Windows by Daenges](https://www.youtube.com/watch?v=BkCqOCa2uQw)
|
|
||||||
- [Installation on Windows + Auto AFK and More by Dexter113](https://www.youtube.com/watch?v=FxJ0KFIHDrY)
|
|
||||||
|
|
||||||
Using Commands, Scripts and other features:
|
|
||||||
|
|
||||||
- [Minecraft Console Client | Tutorial | Commands, Scripts, AppVars, Matches, Tasks and C# Scripts by Daenges](https://youtu.be/JbDpwwETEnU)
|
|
||||||
- [Console Client Tutorial - Scripting by Zixxter](https://www.youtube.com/watch?v=XE7rYBFJxn0)
|
|
||||||
|
|
||||||
## Getting Help
|
|
||||||
|
|
||||||
MCC has a community that is willing to help, we have a Discussions section in out Git Hub repository.
|
|
||||||
|
|
||||||
Click [here](https://github.com/MCCTeam/Minecraft-Console-Client/discussions) to access it.
|
|
||||||
|
|
||||||
### Before getting help
|
|
||||||
|
|
||||||
- **Please use the search option here or in the discussion section and read the documentation so we avoid duplicate questions. Thank you!**
|
|
||||||
- **Please be kind and patient, respect others as they're the ones using their time to help you**
|
|
||||||
|
|
||||||
## Bugs, Ideas, Feature Requests
|
|
||||||
|
|
||||||
Bug reporting, idea submitting or feature requesting are done in the [Issues](https://github.com/MCCTeam/Minecraft-Console-Client/issues) section of our [Github repository]([here](https://github.com/MCCTeam/Minecraft-Console-Client)).
|
|
||||||
|
|
||||||
Navigate to the Issues section, search for a bug, idea or a feature using the search option here in the documentation and in the `Issues` section on Git Hub before making your own.
|
|
||||||
|
|
||||||
If you haven't found anything similar, go ahead and click on the `New issue` button, then choose what you want to do.
|
|
||||||
|
|
||||||
If you're reporting a bug, please be descriptive as much as possible, try to explain how to re-create the bug, attack screenshots and logs, make sure that you have [`debugmessages`](configuration.me#debugmessages) set to `true` before sending a bug report or taking a screenshot.
|
|
||||||
|
|
||||||
### Before submitting
|
|
||||||
|
|
||||||
- **Please use the search option here or in the `Issues` section and read the documentation so we avoid duplicate questions/ideas/reports. Thank you!**
|
|
||||||
- **Please be kind, patient and respect others. Thank you!**
|
|
||||||
|
|
||||||
## Notes on some features
|
|
||||||
|
|
||||||
### Inventory, Terrain and Entity Handling
|
|
||||||
|
|
||||||
Inventory handling is currently not supported in versions: `1.4.6 - 1.9`
|
|
||||||
|
|
||||||
Terrain handling is currently not supported in versions: `1.4.6 - 1.6`
|
|
||||||
|
|
||||||
Entity handling is currently not supported in versions: `1.4.6 - 1.9` (but `1.8` and `1.9` are being worked on, almost at the working state, only `EntityMetadata` packet remains to be fixed)
|
|
||||||
|
|
||||||
There features might not always be implemented in the latest version of the game, since they're often subjected to major changes by Mojang, and we need some time to figure out what has changed and to implement the required changes.
|
|
||||||
|
|
||||||
If there was a major game update, and the MCC hasn't been updated to support these features, if you're a programmer, feel free to contribute to the project.
|
|
||||||
|
|
||||||
## Credits
|
|
||||||
|
|
||||||
_Project initiated by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/)._
|
|
||||||
|
|
||||||
Many features would not have been possible without the help of our talented community:
|
|
||||||
|
|
||||||
**Maintainers**
|
|
||||||
|
|
||||||
ORelio, ReinforceZwei, milutinke, BruceChenQAQ, bradbyte
|
|
||||||
|
|
||||||
**Ideas**
|
|
||||||
|
|
||||||
ambysdotnet, Awpocalypse, azoundria, bearbear12345, bSun0000, Cat7373, dagonzaros, Dids, Elvang, fuckofftwice, GeorgH93, initsuj, JamieSinn, joshbean39, LehmusFIN, maski, medxo, mobdon, MousePak, TNT-UP, TorchRJ, yayes2, Yoann166, ZizzyDizzyMC and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BIdea%5D+is%3Aopen).
|
|
||||||
|
|
||||||
**Bug Hunters**
|
|
||||||
|
|
||||||
1092CQ, ambysdotnet, bearbear12345, c0dei, Cat7373, Chtholly, Darkaegis, dbear20, DigitalSniperz, doranchak, drXor, FantomHD, gerik43, ibspa, iTzMrpitBull, JamieSinn, k3ldon, KenXeiko, link3321, lyze237, mattman00000, Nicconyancat, Pokechu22, ridgewell, Ryan6578, Solethia, TNT-UP, TorchRJ, TRTrident, WeedIsGood, xp9kus, Yoann166 and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BBUG%5D+is%3Aopen+).
|
|
||||||
|
|
||||||
**Contributors**
|
|
||||||
|
|
||||||
Allyoutoo, Aragas, Bancey, bearbear12345, corbanmailloux, Daenges, dbear20, dogwatch, initsuj, JamieSinn, justcool393, lokulin, maxpowa, medxo, milutinke, Pokechu22, ReinforceZwei, repository, TheMeq, TheSnoozer, vkorn, v1RuX, yunusemregul, ZizzyDizzyMC, BruceChenQAQ, bradbyte _... And all the [GitHub contributors](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors)!_
|
|
||||||
|
|
||||||
**Libraries:**
|
|
||||||
|
|
||||||
Minecraft Console Client also borrows code from the following libraries:
|
|
||||||
|
|
||||||
| Name | Purpose | Author | License |
|
|
||||||
| ----------- | ---------------- | ---------------- | ------- |
|
|
||||||
| Biko | Proxy handling | Benton Stark | MIT |
|
|
||||||
| Heijden.Dns | DNS SRV Lookup | Geoffrey Huntley | MIT |
|
|
||||||
| DotNetZip | Zlib compression | Dino Chiesa | MS-PL |
|
|
||||||
|
|
||||||
## Disclaimer
|
|
||||||
|
|
||||||
Even if everything should work, we are not responsible for any damage this app could cause to your computer or your server. This app does not steal your password. If you don't trust it, don't use it or check & compile from the source code.
|
|
||||||
|
|
||||||
Also, remember that when you connect to a server with this program, you will appear where you left the last time. This means that **you can die if you log in in an unsafe place on a survival server!** Use the script scheduler bot to send a teleport command after logging in.
|
|
||||||
|
|
||||||
We remind you that **you may get banned** by your server for using this program. Use accordingly with server rules.
|
|
||||||
|
|
||||||
## License
|
|
||||||
|
|
||||||
Minecraft Console Client is a totally free of charge, open source project. The source code is available at [Github Repository](https://github.com/MCCTeam/Minecraft-Console-Client)
|
|
||||||
|
|
||||||
Unless specifically stated, source code is from the MCC Team or Contributors, and available under CDDL-1.0. More info about CDDL-1.0: [http://qstuff.blogspot.fr/2007/04/why-cddl.html](http://qstuff.blogspot.fr/2007/04/why-cddl.html) Full license at [http://opensource.org/licenses/CDDL-1.0](http://opensource.org/licenses/CDDL-1.0)
|
|
||||||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1,76 +0,0 @@
|
||||||
# Contributing
|
|
||||||
|
|
||||||
At this moment this page needs to be created.
|
|
||||||
|
|
||||||
For now you can use our article from the [Git Hub repository Wiki](https://github.com/MCCTeam/Minecraft-Console-Client/wiki/Update-console-client-to-new-version) written by [ReinforceZwei](https://github.com/ReinforceZwei).
|
|
||||||
|
|
||||||
## Translations
|
|
||||||
|
|
||||||
MCC now supports the following languages (Alphabetical order) :
|
|
||||||
* `de.ini` : Deutsch - German
|
|
||||||
* **`en.ini` : English - English**
|
|
||||||
* `fr.ini` : Français (France) - French
|
|
||||||
* `ru.ini` : Русский (Russkiy) - Russian
|
|
||||||
* `vi.ini` : Tiếng Việt (Việt Nam) - Vietnamese
|
|
||||||
* `zh-Hans.ini` : 简体中文 - Chinese Simplified
|
|
||||||
* `zh-Hant.ini` : 繁體中文 - Chinese Traditional
|
|
||||||
|
|
||||||
### Add new translation
|
|
||||||
|
|
||||||
1. First you need to get the name of the translated file.
|
|
||||||
* Visit [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c) and find the first occurrence of the language you need to translate in the table below.
|
|
||||||
* Use the language code of the row in the table as the name of the translation file.
|
|
||||||
* For example:
|
|
||||||
* `English` -> row `English 0x0009` -> `en` -> `en.ini`
|
|
||||||
* `Chinese (Traditional)` -> row `Chinese (Traditional) 0x7C04` -> `zh-Hant` -> `zh-Hant.ini`
|
|
||||||
|
|
||||||
2. Which system languages are recommended to use this translation?
|
|
||||||
* Still check the table in [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c), one language may have multiple rows.
|
|
||||||
* You will need to indicate which language codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `de.ini` applies to `de`, `de-AT`, `de-BE`, `de-DE`, ...
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh-Hans`, `zh`, `zh-CN`, `zh-SG`.
|
|
||||||
|
|
||||||
3. Which game languages are recommended to use this translation?
|
|
||||||
* Check out the table in [this link](https://github.com/MCCTeam/Minecraft-Console-Client/discussions/2239), where the `Locale Code` column indicates the language code in minecraft.
|
|
||||||
* You will need to indicate which locale codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `fr.ini` applies to `fr_ca`, `fr_fr`.
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh_cn`.
|
|
||||||
|
|
||||||
4. Add the new translation to the code. (Optional)
|
|
||||||
* **If you are not familiar with programming, you can skip this step and just write the above information in your PR or issue.**
|
|
||||||
* Add the newly created translation file `xx.ini` to the project `/Resources/lang/xx.ini`.
|
|
||||||
* Open `/DefaultConfigResource.resx`.
|
|
||||||
* Click `Add Resources`.
|
|
||||||
* Choose `/Resources/lang/xx.ini`.
|
|
||||||
* Rename the added resource file in `/DefaultConfigResource.resx` to `Translation_xx`.
|
|
||||||
* Open `/Translations.cs`.
|
|
||||||
* Find `public static Tuple<string, string[]> GetTranslationPriority();`
|
|
||||||
* Update the mapping of system language codes to translation files.
|
|
||||||
* Find `public static string[] GetTranslationPriority(string gameLanguage);`
|
|
||||||
* Update the mapping of game locale code to translation files.
|
|
||||||
|
|
||||||
5. Follow the section "Update existing translation".
|
|
||||||
|
|
||||||
### Update existing translation
|
|
||||||
|
|
||||||
1. Visit [the lang folder](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/Resources/lang), download `en.ini` and the language you want to translate(`xx.ini`).
|
|
||||||
|
|
||||||
2. Compare `en.ini` and `xx.ini` and update outdated or non-existent entries in `xx.ini`.
|
|
||||||
|
|
||||||
3. Once you finished the translation work, submit a pull request or send us the file through an [Issue](https://github.com/MCCTeam/Minecraft-Console-Client/issues) in case you are not familiar with Git.
|
|
||||||
|
|
||||||
### Translate README.md
|
|
||||||
|
|
||||||
1. Get the English version of the README.md from [here](https://raw.githubusercontent.com/MCCTeam/Minecraft-Console-Client/master/README.md).
|
|
||||||
|
|
||||||
2. See `Add new translation -> 1.` for the target language code. Assume it is `xx`.
|
|
||||||
|
|
||||||
3. Complete the translation according to the English README.md and name the translated version as `README-xx.md`.
|
|
||||||
|
|
||||||
4. In the English README, above the "About" section, add the name of the language and a hyperlink to `README-xx.md`.
|
|
||||||
|
|
||||||
## Contributors
|
|
||||||
|
|
||||||
[Check out our contributors on Github](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors).
|
|
||||||
|
|
@ -1,177 +0,0 @@
|
||||||
# Creating Chat Bots
|
|
||||||
|
|
||||||
- [Notes](#notes)
|
|
||||||
- [Requirements](#requirements)
|
|
||||||
- [Quick Introduction](#quick-introduction)
|
|
||||||
- [Examples](#examples)
|
|
||||||
- [C# API](#c#-api)
|
|
||||||
|
|
||||||
## Notes
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For now this page contains only the bare basics of the Chat Bot API, enough of details to teach you how to make basic Chat Bots. For more details you need to take a look at the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) and [Examples](#examples). This page will be improved in the future.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a rich C# API which allows you to create Chat Bots (effectively plugins) which can help you create complex automations which normal scripts may not be able to do.
|
|
||||||
|
|
||||||
## Requirements
|
|
||||||
|
|
||||||
- A basic knowledge of C# programming language
|
|
||||||
- A text editor
|
|
||||||
|
|
||||||
If you're not familiar with the C# programming language, we suggest taking a look at the following resources:
|
|
||||||
|
|
||||||
Crash courses:
|
|
||||||
|
|
||||||
- [C# Crash Course playlist by Teddy Smit](https://www.youtube.com/watch?v=67oWw9TanOk&list=PL82C6-O4XrHfoN_Y4MwGvJz5BntiL0z0D)
|
|
||||||
|
|
||||||
More in-depth:
|
|
||||||
|
|
||||||
- [Learn C# Youtube Playlist by Microsoft](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVxKLQCHpiUWun7vlJJvUiN)
|
|
||||||
- [Getting started with C# (An index of tutorials and the documentation) by Microsoft](https://docs.microsoft.com/en-us/dotnet/csharp/)
|
|
||||||
|
|
||||||
## Quick Introduction
|
|
||||||
|
|
||||||
This introduction assumes that you have the basic knowledge of C#.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Here we will use terms Chat Bot and Script interchangeably**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Create a new empty file and name it `ExampleChatBot.cs` in the same folder where you have your MCC installed.
|
|
||||||
|
|
||||||
Paste the following example code:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
MCC.LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
|
|
||||||
// The code and comments above are defining a "Script Metadata" section
|
|
||||||
|
|
||||||
// Every single chat bot (script) must be a class which extends the ChatBot class.
|
|
||||||
// Your class must be instantiates in the "Script Metadata" section and passed to MCC.LoadBot function.
|
|
||||||
class ExampleChatBot : ChatBot
|
|
||||||
{
|
|
||||||
// This method will be called when the script has been initialized for the first time, it's called only once
|
|
||||||
// Here you can initialize variables, eg. Dictionaries. etc...
|
|
||||||
public override void Initialize()
|
|
||||||
{
|
|
||||||
LogToConsole("An example Chat Bot has been initialized!");
|
|
||||||
}
|
|
||||||
|
|
||||||
// This is a function that will be run when we get a chat message from a server
|
|
||||||
// In this example it just detects the type of the message and prints it out
|
|
||||||
public override void GetText(string text)
|
|
||||||
{
|
|
||||||
string message = "";
|
|
||||||
string username = "";
|
|
||||||
text = GetVerbatim(text);
|
|
||||||
|
|
||||||
if (IsPrivateMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has sent you a private message: " + message);
|
|
||||||
}
|
|
||||||
else if (IsChatMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has said: " + message);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
Start MCC, connect to a server and run the following internal command: `/script ExampleChatBot.cs`.
|
|
||||||
|
|
||||||
If you did everything right you should see: `[Example Chat Bot] An example Chat Bot has been initialised!` message appear in your console log.
|
|
||||||
|
|
||||||
### Structure of Chat Bots
|
|
||||||
|
|
||||||
Chat Bot (Script) structure is the following:
|
|
||||||
|
|
||||||
```
|
|
||||||
<script metadata>
|
|
||||||
<chat bot class>
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** is a section with a custom format that mixes in C# with our format using comments. Every single Chat Bot (Script) must have this section at the beginning in order to work.
|
|
||||||
|
|
||||||
### Script Metadata Format
|
|
||||||
|
|
||||||
`//MCCScript 1.0` marks the beginning of the **Script Metadata** section, this must always be on the first line or the Chat Bot (Script) will not load and will throw an error.
|
|
||||||
|
|
||||||
`//MCCScript Extensions` marks the end of the **Script Metadata** section, this must be defined before a Chat Bot (Script) class.
|
|
||||||
|
|
||||||
In order for your Chat Bot (Script) to properly load in-between the `//MCCScript 1.0` and the `//MCCScript Extensions` lines you must instantiate your Chat Bot (Script) class and pass it to the `MCC.LoadBot` function.
|
|
||||||
|
|
||||||
Example code:
|
|
||||||
|
|
||||||
```
|
|
||||||
MCC.LoadBot(new YourChatBotClassNameHere());
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** section allows for including C# packages and libraries with: `//using <namespace>` and `/dll <dll name>`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Avoid adding whitespace between `//` and keywords**
|
|
||||||
:::
|
|
||||||
|
|
||||||
By the default the following packages are loaded:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Text.RegularExpressions;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.IO;
|
|
||||||
using System.Net;
|
|
||||||
using System.Threading;
|
|
||||||
using MinecraftClient;
|
|
||||||
using MinecraftClient.Mapping;
|
|
||||||
using MinecraftClient.Inventory;
|
|
||||||
```
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//using System.Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
```
|
|
||||||
|
|
||||||
Full Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
//using System.Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
|
|
||||||
MCC.LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
```
|
|
||||||
|
|
||||||
### Chat Bot Class
|
|
||||||
|
|
||||||
After the end of the **Script Metadata** section, you basically can define any number of classes you like, the only limitation is that the main class of your Chat Bot (Script) must extend `ChatBot` class.
|
|
||||||
|
|
||||||
There are no required methods, everything is optional.
|
|
||||||
|
|
||||||
When the Chat Bot (Script) has been initialized for the first time the `Initialize` method will be called. In it you can initialize variables, eg. Dictionaries, etc..
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For allocating resources like a database connection, we recommend allocating them in `AfterGameJoined` and freeing them in `OnDisconnect`** :::.
|
|
||||||
|
|
||||||
## Examples
|
|
||||||
|
|
||||||
You can find a lot of examples in our Git Hub Repository at [ChatBots](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/ChatBots) and [config](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/config).
|
|
||||||
|
|
||||||
## C# API
|
|
||||||
|
|
||||||
As of the time of writing, the C# API has been changed in forks that are yet to be merged, so for now you can use the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) for reference.
|
|
||||||
|
|
||||||
Each method is well documented with standard C# documentation comments.
|
|
||||||
|
|
||||||
In the future we will make a script to auto-generate this section based on the documentation in the code.
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -1,958 +0,0 @@
|
||||||
# Usage
|
|
||||||
|
|
||||||
How to run the program:
|
|
||||||
|
|
||||||
- [Running on Windows](#windows)
|
|
||||||
- [Running on Linux, macOS](#linux-macos)
|
|
||||||
- [Running using Docker](#docker)
|
|
||||||
|
|
||||||
Using the command line parameters:
|
|
||||||
|
|
||||||
- [Examples](#quick-usage-of-mcc-with-examples)
|
|
||||||
- [Command line parameters](#command-line-parameters)
|
|
||||||
- [Internal commands](#internal-commands)
|
|
||||||
|
|
||||||
## Windows
|
|
||||||
|
|
||||||
Simply run `MinecraftClient.exe`
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Windows it's best using [Windows Terminal](https://docs.microsoft.com/en-us/windows/terminal/install) for the best experience and looks. Some features like emojis in the [`/chunk`](#chunk) command do not work in CMD or Powershell 5**
|
|
||||||
:::
|
|
||||||
|
|
||||||
## Linux, macOS
|
|
||||||
|
|
||||||
To run the client you need to type the following command in your terminal emulator:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
./MinecraftClient
|
|
||||||
```
|
|
||||||
|
|
||||||
If you want to keep it running in the background you can use `screen` (Linux only) Example:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Start the screen
|
|
||||||
screen -S mcc
|
|
||||||
|
|
||||||
# Run it
|
|
||||||
./MinecraftClient
|
|
||||||
|
|
||||||
# Detach from the screen by pressing CTRL + A + D
|
|
||||||
|
|
||||||
# Re-attach if you want to have accces again
|
|
||||||
screen -r mcc
|
|
||||||
```
|
|
||||||
|
|
||||||
_Learn more on how to use the screen command: [YouTube](https://www.youtube.com/watch?v=_ZJiEX4rmN4)_
|
|
||||||
|
|
||||||
## Docker
|
|
||||||
|
|
||||||
See [Run using Docker](./guide/installation.md#using-docker)
|
|
||||||
|
|
||||||
## Command-line usage
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a plethora of useful command line parameters, here you can learn about them.
|
|
||||||
|
|
||||||
### For people not familiar with the command line
|
|
||||||
|
|
||||||
For people who are not familiar with the usage of programs in the command line (terminal emulators), here we will explain what every single thing means, if you're already experienced you can skip this.
|
|
||||||
|
|
||||||
In command line (terminal emulators) you can run programs by specifying their name and hitting enter, usually programs have additional way of being configured, started or provided some additional data in a different manner, this is achieved by using command line parameters.
|
|
||||||
|
|
||||||
Command line parameters are written after the name of the program, they're separated by spaces and they can have a few different formats, examples:
|
|
||||||
|
|
||||||
- `someparameter`
|
|
||||||
- `-some-parameter`
|
|
||||||
- `--some-other-parameter`
|
|
||||||
- `--some-setting="some value"`
|
|
||||||
- `-a=5`
|
|
||||||
|
|
||||||
Parameters with a single dash (`-`) are usually used for a single letter (short-hand) parameters, while the ones with a double dash (`--`) are being used for parameters with a longer/full name.
|
|
||||||
|
|
||||||
When you are reading examples, you will often see something like this: `<something here>`, this means that this is a place holder and it should be changed with some value, excluding the `<` and the `>`.
|
|
||||||
|
|
||||||
For example `<username>` you need to change to an username of your liking, example: `notch` (`<` and `>` should not be included).
|
|
||||||
|
|
||||||
`[` and `]` mean that a parameter is an optional one.
|
|
||||||
|
|
||||||
They also can hold some values, example from the MCC:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
```
|
|
||||||
|
|
||||||
When a parameter has a textual value that includes one more spaces, you will need to wrap it the value in double quotes (`"`), example: `--some-parameter="some text here with spaces in it"`
|
|
||||||
|
|
||||||
Here is an example for using a `--help` command line parameter for MCC that will print out a page on how to use MCC from the command line:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
```
|
|
||||||
|
|
||||||
### Quick usage of MCC with examples
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Linux and macOS, you need to type: `./MinecraftClient` instead of `MinecraftClient.exe`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
MinecraftClient.exe <username> <password> <server>
|
|
||||||
MinecraftClient.exe <username> <password> <server> "/mycommand"
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
MinecraftClient.exe --section.setting=value [--other settings]
|
|
||||||
MinecraftClient.exe <settings-file.ini> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Logging in as a user: notch, with a password: password123 onto a server with the ip: mc.someserver.com:25565
|
|
||||||
MinecraftClient.exe notch password123 mc.someserver.com:25565
|
|
||||||
|
|
||||||
# Overriding a setting from MinecraftClient.ini using a command line parameter
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
|
|
||||||
# Providing a custom settings ini file and overriding a language to Chinese
|
|
||||||
MinecraftClient.exe CustomSettingsFile.ini --language=zh
|
|
||||||
```
|
|
||||||
|
|
||||||
### Rules of using the command line parameters
|
|
||||||
|
|
||||||
You can mix and match arguments by following theses rules:
|
|
||||||
|
|
||||||
- First positional argument may be either the login or a settings file
|
|
||||||
- Other positional arguments are read in order: login, password, server, command
|
|
||||||
- Arguments starting with `--` can be in any order and position
|
|
||||||
|
|
||||||
Examples and further explanations:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically connect you to the chosen server.
|
|
||||||
- You may omit password and/or server to specify e.g. only the login
|
|
||||||
- To specify a server but ask password interactively, use `""` as password.
|
|
||||||
- To specify offline mode with no password, use `-` as password.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server> "/mycommand"
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically send `/mycommand` to the server and close.
|
|
||||||
- To send several commands and/or stay connected, use the 1ScriptScheduler1 bot instead.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will load the specified configuration file
|
|
||||||
- If the file contains login / password / server ip, it will automatically connect.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Specify settings on the command-line, see possible value in the configuration file
|
|
||||||
- Use `--section.setting=value` for settings outside the `[Main]` section
|
|
||||||
- Example: `--antiafk.enabled=true` for enabling the `AntiAFK` bot
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini> <login> <password> <server> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Load the specified configuration file and override some settings from the file
|
|
||||||
|
|
||||||
## 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`.
|
|
||||||
|
|
||||||
In scripts and remote control, no slash is needed to perform the command, eg. `quit`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Some commands may not be documented yet or are defined in description of Chat Bots, use `/help` to list them all, or you can contribute to this page.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `animation`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Swing your main or off hand.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/animation <mainhand|offhand>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bed`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to make the bot sleep easily, all about sleeping in one command.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `bed leave|sleep <x> <y> <z>|sleep <radius>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Leave a bed:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed leave
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed on 124 84 76:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 124 84 76
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep ~ ~ ~-2
|
|
||||||
```
|
|
||||||
|
|
||||||
Automatically find a bed in radius of 50 blocks and sleep in it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 50
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bots`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to list and unload a specific bot or all bots. Useful when debugging and developing scripts.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots <list|unload <bot name|all>>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Unload a bot called CustomScript
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload CustomScript
|
|
||||||
```
|
|
||||||
|
|
||||||
Unload all bots
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload all
|
|
||||||
```
|
|
||||||
|
|
||||||
### `changeslot`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Change your selected slot in the hotbar.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/changeslot <1-9>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `chunk`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Displays the chunk loading status in a nice way.
|
|
||||||
|
|
||||||
::: warning **To use this feature you need to enable the [Terrain and Movements](configuration.md#terrainandmovements)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need a terminal with emoji support, like Powershell 7, Windows Terminal or Alacritty, if you do not want emoji support and want to use cmd or powershell 5, disable emojis with: [`enableemoji`](configuration.md#enableemoji)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/chunk status [chunkX chunkZ|locationX locationY locationZ]
|
|
||||||
```
|
|
||||||
|
|
||||||
How it looks:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
### `dig`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Dig a block on a specific coordinate.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig 127 63 12
|
|
||||||
```
|
|
||||||
|
|
||||||
Using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig ~ ~-1 ~2
|
|
||||||
```
|
|
||||||
|
|
||||||
### `dropitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Drop all items of a specific type from your inventory.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem <itemtype>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All item types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem diamond
|
|
||||||
```
|
|
||||||
|
|
||||||
### `entity`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Attack an entity, use an entity or get a list of entities around you.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Entity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity <id|entitytype> <attack|use>
|
|
||||||
```
|
|
||||||
|
|
||||||
Get a list of entities around you:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All entity types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Mapping/EntityType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Attack a Zombie:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity Zombie attack
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execif`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute a command if a specific condition is met.
|
|
||||||
|
|
||||||
The condition is a C# expression and the local variables you set using [`set`](#set), [`setrnd`](#setrnd) or the configuration file can be used. The condition is always returned as a boolean, so only comparison can be done, if needed cast the expression result to bool.
|
|
||||||
|
|
||||||
Also the instance of MCC is available with `MCC.`.
|
|
||||||
|
|
||||||
::: tip **All local variables are treated as strings in the app, when comparing their values, you can use `<variable> == "<value>"`, or better use [`.Equals`](https://www.programiz.com/csharp-programming/library/string/equals) method**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `/execif <condition (C# expression)> ---> <command>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Setting a variable and using it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test=Something
|
|
||||||
/execif test == "Something" ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test2=1
|
|
||||||
/execif test2 == "1" ---> send Success 2!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Basic C# expression:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 + 2 + 3 == 6 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using MCC class:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif MCC.GetHealth() == 20.0 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using in combination with [`execmulti`](#execmulti):
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 == 1 ---> execmulti send 1 -> send 2 -> send 3
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execmulti`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute multiple commands in succession on a single line, useful for debugging or when using [`execif`](#execif)
|
|
||||||
|
|
||||||
Commands are separated by `->`
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `execmulti <command 1> -> <command 2> -> <command 3> -> ...`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/execmulti send 1 -> send 2 -> send 3 -> sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `quit`
|
|
||||||
|
|
||||||
- **Alias:** `exit`
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect from the server and close the application
|
|
||||||
|
|
||||||
### `reco`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect and reconnect to the server
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reco [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `reload`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Reloads settings from MinecraftClient.ini and Chat Bots.
|
|
||||||
|
|
||||||
::: tip **Some settings won't be reloaded since they are used before the client initialization. Also, settings provided by the command line paramteres will be overriden. This also does not reload the ReplayBot due to technical limitations.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reload
|
|
||||||
```
|
|
||||||
|
|
||||||
### `connect`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Go to the given server and resume the script
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/connect <server> [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`<server>` is either a server IP or a server alias defined in servers file, for more info check out [serverlist](configuration.html#serverlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `script`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Run a script containing a list of commands
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/script <script name>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `send`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Send a message or a command to the server
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/send <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `respawn`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use this to respawn if you are dead (like clicking "respawn" in-game)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/respawn
|
|
||||||
```
|
|
||||||
|
|
||||||
### `log`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Display some text in the console (useful for scripts)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/log <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
- Example:
|
|
||||||
|
|
||||||
```
|
|
||||||
/log this is some text
|
|
||||||
```
|
|
||||||
|
|
||||||
### `list`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
List players logged in to the server (uses tab list info sent by server)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/list
|
|
||||||
```
|
|
||||||
|
|
||||||
### `set`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a value which can be used as `%variable%` in further commands
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set <variable>=<value>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set abc=123
|
|
||||||
```
|
|
||||||
|
|
||||||
### `setrnd`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a `%variable%` randomly to one of the provided values
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> string1 "\"string2\" string3"
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> -7to10
|
|
||||||
```
|
|
||||||
|
|
||||||
(Set a `%variable%` to a number from -7 to 9)
|
|
||||||
|
|
||||||
### `sneak`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle sneaking.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/Sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `tps`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Get the server TPS (Ticks Per Second).
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/tps
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use item in the hand, this can be used to do a right click on items which open menus on servers.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useitem
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useblock`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Place a block from a hand on a specific coordinate or open an inventory:
|
|
||||||
|
|
||||||
- chest/trap chest
|
|
||||||
- furnace
|
|
||||||
- brewing stand
|
|
||||||
- dispenser/dropper
|
|
||||||
- hopper
|
|
||||||
- shulker
|
|
||||||
- loom
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **Not all inventories have a GUI representation in an ASCII art format.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock 43 72 7
|
|
||||||
```
|
|
||||||
|
|
||||||
### `follow`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Make the bot follow a player.
|
|
||||||
|
|
||||||
::: tip **This command is avaliable only with [Follow Player](chat-bots.md#follow-player) Chat Bot enabled.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Enity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow <player name|stop>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow milutinke
|
|
||||||
```
|
|
||||||
|
|
||||||
### `wait`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Wait X ticks (10 ticks = ~1 second. Only for scripts)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait <time>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait 20
|
|
||||||
```
|
|
||||||
|
|
||||||
### `move`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for moving when terrain and movements feature is enabled.
|
|
||||||
|
|
||||||
::: tip **You need to have [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Terrain and Movements](configuration.md#terrainandmovements) is currently not supported in `1.4.6 - 1.6`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/move <on|off|get|up|down|east|west|north|south|center|x y z|gravity [on|off]> [-f]: walk or start walking. "-f": force unsafe movements like falling or touching fire
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Enable gravity
|
|
||||||
|
|
||||||
```
|
|
||||||
/move gravity on
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move 125 72 34
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to a center of a block:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move center
|
|
||||||
```
|
|
||||||
|
|
||||||
### `look`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for looking at direction when terrain and movements is enabled
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look <x y z|yaw pitch|up|down|east|west|north|south>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look up
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/look east
|
|
||||||
```
|
|
||||||
|
|
||||||
### `inventory`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for inventory manipulation.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
MCC defines inventories as containers internally, so player's inventory, chests, droppers, dispensers, hoppers, chest minecarts, barrels, furnaces, etc... are all considered a container, and each one of them has it's ID, the words container and inventory can be used interchangeably.
|
|
||||||
|
|
||||||
Inventory has slots and each one of them has an id.
|
|
||||||
|
|
||||||
::: tip **This command DOES NOT physically open a container (eg. chest), for that you need to use [`useblock`](#useblock) command first.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
An example of player inventory with annotated IDs in ASCII art and a list of items:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <action> [action parameters] | /inventory <inventories/i> | /inventory <search/s> <item type> [amount]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **player and container can be simplified with p and c accordingly**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Actions:
|
|
||||||
|
|
||||||
- `click`
|
|
||||||
- `shiftclick`
|
|
||||||
- `drop`
|
|
||||||
|
|
||||||
Show/Preview items in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Click/Shift-Click on an item in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <click|shiftclick> <slot id> [left|right|middle]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **The default click is left click**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Close an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop item(s) from an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id> drop <slot id> <number of items|all>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To drop all items from a slot, you can use: `all`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive <slot id> <item type> <amount>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete <slot id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Show all available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory inventories
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for an item of specified type in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory search <item type>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Show player's inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player
|
|
||||||
```
|
|
||||||
|
|
||||||
Show/Preview items in an inventory using an id:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 3
|
|
||||||
```
|
|
||||||
|
|
||||||
Click on an item in player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player click 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Right-Click on an item in slot number/id `4` in an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 click 4 right
|
|
||||||
```
|
|
||||||
|
|
||||||
Close an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop a single item from a player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 36 1
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop all items from a player's inventory in slot number/id `37`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 37 all
|
|
||||||
```
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive 36 diamondblock 64
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory in slot number/id `36` when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for 10 Slime Blocks in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory s SlimeBlock 10
|
|
||||||
```
|
|
||||||
|
|
||||||
### `debug`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle debug messages, useful for chatbot developers.
|
|
||||||
|
|
||||||
### `help`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Show commands help.
|
|
||||||
|
|
||||||
::: tip **Use "/send /help" for server help**
|
|
||||||
:::
|
|
||||||
|
|
@ -1,28 +0,0 @@
|
||||||
---
|
|
||||||
home: true
|
|
||||||
heroImage: /images/MCC_logo_with_edge.png
|
|
||||||
tagline: 'Minecraft Console Client (MCC) is a lightweight open-source Minecraft Java client implemented in C#'
|
|
||||||
actions:
|
|
||||||
-
|
|
||||||
text: Installation
|
|
||||||
link: ./guide/installation.md
|
|
||||||
type: primary
|
|
||||||
-
|
|
||||||
text: Learn More →
|
|
||||||
link: ./guide/
|
|
||||||
type: secondary
|
|
||||||
actionText:
|
|
||||||
actionLink:
|
|
||||||
features:
|
|
||||||
-
|
|
||||||
title: Chat
|
|
||||||
details: Chat with other people on the server
|
|
||||||
-
|
|
||||||
title: Automation
|
|
||||||
details: Create bots to do automated tasks
|
|
||||||
-
|
|
||||||
title: Supported Versions
|
|
||||||
details: 1.4 - 1.19.2
|
|
||||||
footer: Made by MCC Team with ❤️
|
|
||||||
---
|
|
||||||
|
|
||||||
|
|
@ -1,163 +0,0 @@
|
||||||
# Introduction
|
|
||||||
|
|
||||||
- [About](#about)
|
|
||||||
- [Quick Intro (YouTube Videos)](#quick-intro)
|
|
||||||
- [Features](#features)
|
|
||||||
- [Why Minecraft Console Client?](#why-minecraft-console-client)
|
|
||||||
- [Getting Help](#getting-help)
|
|
||||||
- [Submitting a bug report or an idea/feature-request](#bugs-ideas-feature-requests)
|
|
||||||
- [Important notes on some features](#notes-on-some-features)
|
|
||||||
- [Credits](#credits)
|
|
||||||
- [Disclaimer](#disclaimer)
|
|
||||||
- [License](#license)
|
|
||||||
|
|
||||||
## About
|
|
||||||
|
|
||||||
**Minecraft Console Client (MCC)** is a lightweight cross-platform open-source **Minecraft** TUI client for **Java edition** that allows you to connect to any Minecraft Java server, send commands and receive text messages in a fast and easy way without having to open the main Minecraft game.
|
|
||||||
|
|
||||||
It also provides various automations that you can enable for administration and other purposes, as well as extensible C# API for creating Bots.
|
|
||||||
|
|
||||||
It was originally made by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/), now it's maintained by him and many other contributors from the community.
|
|
||||||
|
|
||||||
## Features
|
|
||||||
|
|
||||||
- Chat
|
|
||||||
|
|
||||||
- Send and receive chat messages
|
|
||||||
- [Log chat history](chat-bots.md#chat-log)
|
|
||||||
- [Get alerted on certain keywords](chat-bots.md#alerts)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
|
|
||||||
- [Anti AFK](chat-bots.md#anti-afk)
|
|
||||||
- [Auto Relog](chat-bots.md#auto-relog)
|
|
||||||
- [Script Scheduler](chat-bots.md#script-scheduler)
|
|
||||||
- [Remote Control](chat-bots.md#remote-control)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
- [Auto Attack](chat-bots.md#auto-attack)
|
|
||||||
- [Auto Fishing](chat-bots.md#auto-fishing)
|
|
||||||
- [Auto Eat](chat-bots.md#auto-eat)
|
|
||||||
- [Auto Craft](chat-bots.md#auto-craft)
|
|
||||||
- [Mailer Bot](chat-bots.md#mailer)
|
|
||||||
- [Auto Drop](chat-bots.md#auto-drop)
|
|
||||||
- [Replay Mod](chat-bots.md#replay-mod)
|
|
||||||
- [API for creating Bots in C#](creating-bots.md#creating-chat-bots)
|
|
||||||
- [Docker Support](installation.md#using-docker)
|
|
||||||
- [Inventory Handling](usage.md#inventory)
|
|
||||||
- [Terrain Traversing](usage.md#move)
|
|
||||||
- Entity Handling
|
|
||||||
|
|
||||||
_NOTE: Some of mentioned features are disabled by default and you will have to turn them on in the configuration file and some may require additional configuration on your part for your specific usage._
|
|
||||||
|
|
||||||
## Why Minecraft Console Client?
|
|
||||||
|
|
||||||
- Easy to use
|
|
||||||
- Helpful community
|
|
||||||
- Open-Source
|
|
||||||
- Fast performance
|
|
||||||
- Cross-Platform
|
|
||||||
- Docker Support
|
|
||||||
- 10 years of continuous development
|
|
||||||
- Active contributors
|
|
||||||
- Widely used
|
|
||||||
|
|
||||||
## Quick Intro
|
|
||||||
|
|
||||||
Don't have time to read through the documentation, we got you, our community has made some simple introduction videos about the **Minecraft Console Client**.
|
|
||||||
|
|
||||||
### The list of the tutorials:
|
|
||||||
|
|
||||||
Installation:
|
|
||||||
|
|
||||||
- [Installation on Windows by Daenges](https://www.youtube.com/watch?v=BkCqOCa2uQw)
|
|
||||||
- [Installation on Windows + Auto AFK and More by Dexter113](https://www.youtube.com/watch?v=FxJ0KFIHDrY)
|
|
||||||
|
|
||||||
Using Commands, Scripts and other features:
|
|
||||||
|
|
||||||
- [Minecraft Console Client | Tutorial | Commands, Scripts, AppVars, Matches, Tasks and C# Scripts by Daenges](https://youtu.be/JbDpwwETEnU)
|
|
||||||
- [Console Client Tutorial - Scripting by Zixxter](https://www.youtube.com/watch?v=XE7rYBFJxn0)
|
|
||||||
|
|
||||||
## Getting Help
|
|
||||||
|
|
||||||
MCC has a community that is willing to help, we have a Discussions section in out Git Hub repository.
|
|
||||||
|
|
||||||
Click [here](https://github.com/MCCTeam/Minecraft-Console-Client/discussions) to access it.
|
|
||||||
|
|
||||||
### Before getting help
|
|
||||||
|
|
||||||
- **Please use the search option here or in the discussion section and read the documentation so we avoid duplicate questions. Thank you!**
|
|
||||||
- **Please be kind and patient, respect others as they're the ones using their time to help you**
|
|
||||||
|
|
||||||
## Bugs, Ideas, Feature Requests
|
|
||||||
|
|
||||||
Bug reporting, idea submitting or feature requesting are done in the [Issues](https://github.com/MCCTeam/Minecraft-Console-Client/issues) section of our [Github repository]([here](https://github.com/MCCTeam/Minecraft-Console-Client)).
|
|
||||||
|
|
||||||
Navigate to the Issues section, search for a bug, idea or a feature using the search option here in the documentation and in the `Issues` section on Git Hub before making your own.
|
|
||||||
|
|
||||||
If you haven't found anything similar, go ahead and click on the `New issue` button, then choose what you want to do.
|
|
||||||
|
|
||||||
If you're reporting a bug, please be descriptive as much as possible, try to explain how to re-create the bug, attack screenshots and logs, make sure that you have [`debugmessages`](configuration.me#debugmessages) set to `true` before sending a bug report or taking a screenshot.
|
|
||||||
|
|
||||||
### Before submitting
|
|
||||||
|
|
||||||
- **Please use the search option here or in the `Issues` section and read the documentation so we avoid duplicate questions/ideas/reports. Thank you!**
|
|
||||||
- **Please be kind, patient and respect others. Thank you!**
|
|
||||||
|
|
||||||
## Notes on some features
|
|
||||||
|
|
||||||
### Inventory, Terrain and Entity Handling
|
|
||||||
|
|
||||||
Inventory handling is currently not supported in versions: `1.4.6 - 1.9`
|
|
||||||
|
|
||||||
Terrain handling is currently not supported in versions: `1.4.6 - 1.6`
|
|
||||||
|
|
||||||
Entity handling is currently not supported in versions: `1.4.6 - 1.9` (but `1.8` and `1.9` are being worked on, almost at the working state, only `EntityMetadata` packet remains to be fixed)
|
|
||||||
|
|
||||||
There features might not always be implemented in the latest version of the game, since they're often subjected to major changes by Mojang, and we need some time to figure out what has changed and to implement the required changes.
|
|
||||||
|
|
||||||
If there was a major game update, and the MCC hasn't been updated to support these features, if you're a programmer, feel free to contribute to the project.
|
|
||||||
|
|
||||||
## Credits
|
|
||||||
|
|
||||||
_Project initiated by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/)._
|
|
||||||
|
|
||||||
Many features would not have been possible without the help of our talented community:
|
|
||||||
|
|
||||||
**Maintainers**
|
|
||||||
|
|
||||||
ORelio, ReinforceZwei, milutinke, BruceChenQAQ, bradbyte
|
|
||||||
|
|
||||||
**Ideas**
|
|
||||||
|
|
||||||
ambysdotnet, Awpocalypse, azoundria, bearbear12345, bSun0000, Cat7373, dagonzaros, Dids, Elvang, fuckofftwice, GeorgH93, initsuj, JamieSinn, joshbean39, LehmusFIN, maski, medxo, mobdon, MousePak, TNT-UP, TorchRJ, yayes2, Yoann166, ZizzyDizzyMC and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BIdea%5D+is%3Aopen).
|
|
||||||
|
|
||||||
**Bug Hunters**
|
|
||||||
|
|
||||||
1092CQ, ambysdotnet, bearbear12345, c0dei, Cat7373, Chtholly, Darkaegis, dbear20, DigitalSniperz, doranchak, drXor, FantomHD, gerik43, ibspa, iTzMrpitBull, JamieSinn, k3ldon, KenXeiko, link3321, lyze237, mattman00000, Nicconyancat, Pokechu22, ridgewell, Ryan6578, Solethia, TNT-UP, TorchRJ, TRTrident, WeedIsGood, xp9kus, Yoann166 and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BBUG%5D+is%3Aopen+).
|
|
||||||
|
|
||||||
**Contributors**
|
|
||||||
|
|
||||||
Allyoutoo, Aragas, Bancey, bearbear12345, corbanmailloux, Daenges, dbear20, dogwatch, initsuj, JamieSinn, justcool393, lokulin, maxpowa, medxo, milutinke, Pokechu22, ReinforceZwei, repository, TheMeq, TheSnoozer, vkorn, v1RuX, yunusemregul, ZizzyDizzyMC, BruceChenQAQ, bradbyte _... And all the [GitHub contributors](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors)!_
|
|
||||||
|
|
||||||
**Libraries:**
|
|
||||||
|
|
||||||
Minecraft Console Client also borrows code from the following libraries:
|
|
||||||
|
|
||||||
| Name | Purpose | Author | License |
|
|
||||||
| ----------- | ---------------- | ---------------- | ------- |
|
|
||||||
| Biko | Proxy handling | Benton Stark | MIT |
|
|
||||||
| Heijden.Dns | DNS SRV Lookup | Geoffrey Huntley | MIT |
|
|
||||||
| DotNetZip | Zlib compression | Dino Chiesa | MS-PL |
|
|
||||||
|
|
||||||
## Disclaimer
|
|
||||||
|
|
||||||
Even if everything should work, we are not responsible for any damage this app could cause to your computer or your server. This app does not steal your password. If you don't trust it, don't use it or check & compile from the source code.
|
|
||||||
|
|
||||||
Also, remember that when you connect to a server with this program, you will appear where you left the last time. This means that **you can die if you log in in an unsafe place on a survival server!** Use the script scheduler bot to send a teleport command after logging in.
|
|
||||||
|
|
||||||
We remind you that **you may get banned** by your server for using this program. Use accordingly with server rules.
|
|
||||||
|
|
||||||
## License
|
|
||||||
|
|
||||||
Minecraft Console Client is a totally free of charge, open source project. The source code is available at [Github Repository](https://github.com/MCCTeam/Minecraft-Console-Client)
|
|
||||||
|
|
||||||
Unless specifically stated, source code is from the MCC Team or Contributors, and available under CDDL-1.0. More info about CDDL-1.0: [http://qstuff.blogspot.fr/2007/04/why-cddl.html](http://qstuff.blogspot.fr/2007/04/why-cddl.html) Full license at [http://opensource.org/licenses/CDDL-1.0](http://opensource.org/licenses/CDDL-1.0)
|
|
||||||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1,76 +0,0 @@
|
||||||
# Contributing
|
|
||||||
|
|
||||||
At this moment this page needs to be created.
|
|
||||||
|
|
||||||
For now you can use our article from the [Git Hub repository Wiki](https://github.com/MCCTeam/Minecraft-Console-Client/wiki/Update-console-client-to-new-version) written by [ReinforceZwei](https://github.com/ReinforceZwei).
|
|
||||||
|
|
||||||
## Translations
|
|
||||||
|
|
||||||
MCC now supports the following languages (Alphabetical order) :
|
|
||||||
* `de.ini` : Deutsch - German
|
|
||||||
* **`en.ini` : English - English**
|
|
||||||
* `fr.ini` : Français (France) - French
|
|
||||||
* `ru.ini` : Русский (Russkiy) - Russian
|
|
||||||
* `vi.ini` : Tiếng Việt (Việt Nam) - Vietnamese
|
|
||||||
* `zh-Hans.ini` : 简体中文 - Chinese Simplified
|
|
||||||
* `zh-Hant.ini` : 繁體中文 - Chinese Traditional
|
|
||||||
|
|
||||||
### Add new translation
|
|
||||||
|
|
||||||
1. First you need to get the name of the translated file.
|
|
||||||
* Visit [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c) and find the first occurrence of the language you need to translate in the table below.
|
|
||||||
* Use the language code of the row in the table as the name of the translation file.
|
|
||||||
* For example:
|
|
||||||
* `English` -> row `English 0x0009` -> `en` -> `en.ini`
|
|
||||||
* `Chinese (Traditional)` -> row `Chinese (Traditional) 0x7C04` -> `zh-Hant` -> `zh-Hant.ini`
|
|
||||||
|
|
||||||
2. Which system languages are recommended to use this translation?
|
|
||||||
* Still check the table in [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c), one language may have multiple rows.
|
|
||||||
* You will need to indicate which language codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `de.ini` applies to `de`, `de-AT`, `de-BE`, `de-DE`, ...
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh-Hans`, `zh`, `zh-CN`, `zh-SG`.
|
|
||||||
|
|
||||||
3. Which game languages are recommended to use this translation?
|
|
||||||
* Check out the table in [this link](https://github.com/MCCTeam/Minecraft-Console-Client/discussions/2239), where the `Locale Code` column indicates the language code in minecraft.
|
|
||||||
* You will need to indicate which locale codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `fr.ini` applies to `fr_ca`, `fr_fr`.
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh_cn`.
|
|
||||||
|
|
||||||
4. Add the new translation to the code. (Optional)
|
|
||||||
* **If you are not familiar with programming, you can skip this step and just write the above information in your PR or issue.**
|
|
||||||
* Add the newly created translation file `xx.ini` to the project `/Resources/lang/xx.ini`.
|
|
||||||
* Open `/DefaultConfigResource.resx`.
|
|
||||||
* Click `Add Resources`.
|
|
||||||
* Choose `/Resources/lang/xx.ini`.
|
|
||||||
* Rename the added resource file in `/DefaultConfigResource.resx` to `Translation_xx`.
|
|
||||||
* Open `/Translations.cs`.
|
|
||||||
* Find `public static Tuple<string, string[]> GetTranslationPriority();`
|
|
||||||
* Update the mapping of system language codes to translation files.
|
|
||||||
* Find `public static string[] GetTranslationPriority(string gameLanguage);`
|
|
||||||
* Update the mapping of game locale code to translation files.
|
|
||||||
|
|
||||||
5. Follow the section "Update existing translation".
|
|
||||||
|
|
||||||
### Update existing translation
|
|
||||||
|
|
||||||
1. Visit [the lang folder](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/Resources/lang), download `en.ini` and the language you want to translate(`xx.ini`).
|
|
||||||
|
|
||||||
2. Compare `en.ini` and `xx.ini` and update outdated or non-existent entries in `xx.ini`.
|
|
||||||
|
|
||||||
3. Once you finished the translation work, submit a pull request or send us the file through an [Issue](https://github.com/MCCTeam/Minecraft-Console-Client/issues) in case you are not familiar with Git.
|
|
||||||
|
|
||||||
### Translate README.md
|
|
||||||
|
|
||||||
1. Get the English version of the README.md from [here](https://raw.githubusercontent.com/MCCTeam/Minecraft-Console-Client/master/README.md).
|
|
||||||
|
|
||||||
2. See `Add new translation -> 1.` for the target language code. Assume it is `xx`.
|
|
||||||
|
|
||||||
3. Complete the translation according to the English README.md and name the translated version as `README-xx.md`.
|
|
||||||
|
|
||||||
4. In the English README, above the "About" section, add the name of the language and a hyperlink to `README-xx.md`.
|
|
||||||
|
|
||||||
## Contributors
|
|
||||||
|
|
||||||
[Check out our contributors on Github](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors).
|
|
||||||
|
|
@ -1,177 +0,0 @@
|
||||||
# Creating Chat Bots
|
|
||||||
|
|
||||||
- [Notes](#notes)
|
|
||||||
- [Requirements](#requirements)
|
|
||||||
- [Quick Introduction](#quick-introduction)
|
|
||||||
- [Examples](#examples)
|
|
||||||
- [C# API](#c#-api)
|
|
||||||
|
|
||||||
## Notes
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For now this page contains only the bare basics of the Chat Bot API, enough of details to teach you how to make basic Chat Bots. For more details you need to take a look at the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) and [Examples](#examples). This page will be improved in the future.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a rich C# API which allows you to create Chat Bots (effectively plugins) which can help you create complex automations which normal scripts may not be able to do.
|
|
||||||
|
|
||||||
## Requirements
|
|
||||||
|
|
||||||
- A basic knowledge of C# programming language
|
|
||||||
- A text editor
|
|
||||||
|
|
||||||
If you're not familiar with the C# programming language, we suggest taking a look at the following resources:
|
|
||||||
|
|
||||||
Crash courses:
|
|
||||||
|
|
||||||
- [C# Crash Course playlist by Teddy Smit](https://www.youtube.com/watch?v=67oWw9TanOk&list=PL82C6-O4XrHfoN_Y4MwGvJz5BntiL0z0D)
|
|
||||||
|
|
||||||
More in-depth:
|
|
||||||
|
|
||||||
- [Learn C# Youtube Playlist by Microsoft](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVxKLQCHpiUWun7vlJJvUiN)
|
|
||||||
- [Getting started with C# (An index of tutorials and the documentation) by Microsoft](https://docs.microsoft.com/en-us/dotnet/csharp/)
|
|
||||||
|
|
||||||
## Quick Introduction
|
|
||||||
|
|
||||||
This introduction assumes that you have the basic knowledge of C#.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Here we will use terms Chat Bot and Script interchangeably**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Create a new empty file and name it `ExampleChatBot.cs` in the same folder where you have your MCC installed.
|
|
||||||
|
|
||||||
Paste the following example code:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
MCC.LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
|
|
||||||
// The code and comments above are defining a "Script Metadata" section
|
|
||||||
|
|
||||||
// Every single chat bot (script) must be a class which extends the ChatBot class.
|
|
||||||
// Your class must be instantiates in the "Script Metadata" section and passed to MCC.LoadBot function.
|
|
||||||
class ExampleChatBot : ChatBot
|
|
||||||
{
|
|
||||||
// This method will be called when the script has been initialized for the first time, it's called only once
|
|
||||||
// Here you can initialize variables, eg. Dictionaries. etc...
|
|
||||||
public override void Initialize()
|
|
||||||
{
|
|
||||||
LogToConsole("An example Chat Bot has been initialized!");
|
|
||||||
}
|
|
||||||
|
|
||||||
// This is a function that will be run when we get a chat message from a server
|
|
||||||
// In this example it just detects the type of the message and prints it out
|
|
||||||
public override void GetText(string text)
|
|
||||||
{
|
|
||||||
string message = "";
|
|
||||||
string username = "";
|
|
||||||
text = GetVerbatim(text);
|
|
||||||
|
|
||||||
if (IsPrivateMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has sent you a private message: " + message);
|
|
||||||
}
|
|
||||||
else if (IsChatMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has said: " + message);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
Start MCC, connect to a server and run the following internal command: `/script ExampleChatBot.cs`.
|
|
||||||
|
|
||||||
If you did everything right you should see: `[Example Chat Bot] An example Chat Bot has been initialised!` message appear in your console log.
|
|
||||||
|
|
||||||
### Structure of Chat Bots
|
|
||||||
|
|
||||||
Chat Bot (Script) structure is the following:
|
|
||||||
|
|
||||||
```
|
|
||||||
<script metadata>
|
|
||||||
<chat bot class>
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** is a section with a custom format that mixes in C# with our format using comments. Every single Chat Bot (Script) must have this section at the beginning in order to work.
|
|
||||||
|
|
||||||
### Script Metadata Format
|
|
||||||
|
|
||||||
`//MCCScript 1.0` marks the beginning of the **Script Metadata** section, this must always be on the first line or the Chat Bot (Script) will not load and will throw an error.
|
|
||||||
|
|
||||||
`//MCCScript Extensions` marks the end of the **Script Metadata** section, this must be defined before a Chat Bot (Script) class.
|
|
||||||
|
|
||||||
In order for your Chat Bot (Script) to properly load in-between the `//MCCScript 1.0` and the `//MCCScript Extensions` lines you must instantiate your Chat Bot (Script) class and pass it to the `MCC.LoadBot` function.
|
|
||||||
|
|
||||||
Example code:
|
|
||||||
|
|
||||||
```
|
|
||||||
MCC.LoadBot(new YourChatBotClassNameHere());
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** section allows for including C# packages and libraries with: `//using <namespace>` and `/dll <dll name>`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Avoid adding whitespace between `//` and keywords**
|
|
||||||
:::
|
|
||||||
|
|
||||||
By the default the following packages are loaded:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Text.RegularExpressions;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.IO;
|
|
||||||
using System.Net;
|
|
||||||
using System.Threading;
|
|
||||||
using MinecraftClient;
|
|
||||||
using MinecraftClient.Mapping;
|
|
||||||
using MinecraftClient.Inventory;
|
|
||||||
```
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//using System.Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
```
|
|
||||||
|
|
||||||
Full Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
//using System.Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
|
|
||||||
MCC.LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
```
|
|
||||||
|
|
||||||
### Chat Bot Class
|
|
||||||
|
|
||||||
After the end of the **Script Metadata** section, you basically can define any number of classes you like, the only limitation is that the main class of your Chat Bot (Script) must extend `ChatBot` class.
|
|
||||||
|
|
||||||
There are no required methods, everything is optional.
|
|
||||||
|
|
||||||
When the Chat Bot (Script) has been initialized for the first time the `Initialize` method will be called. In it you can initialize variables, eg. Dictionaries, etc..
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For allocating resources like a database connection, we recommend allocating them in `AfterGameJoined` and freeing them in `OnDisconnect`** :::.
|
|
||||||
|
|
||||||
## Examples
|
|
||||||
|
|
||||||
You can find a lot of examples in our Git Hub Repository at [ChatBots](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/ChatBots) and [config](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/config).
|
|
||||||
|
|
||||||
## C# API
|
|
||||||
|
|
||||||
As of the time of writing, the C# API has been changed in forks that are yet to be merged, so for now you can use the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) for reference.
|
|
||||||
|
|
||||||
Each method is well documented with standard C# documentation comments.
|
|
||||||
|
|
||||||
In the future we will make a script to auto-generate this section based on the documentation in the code.
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -1,958 +0,0 @@
|
||||||
# Usage
|
|
||||||
|
|
||||||
How to run the program:
|
|
||||||
|
|
||||||
- [Running on Windows](#windows)
|
|
||||||
- [Running on Linux, macOS](#linux-macos)
|
|
||||||
- [Running using Docker](#docker)
|
|
||||||
|
|
||||||
Using the command line parameters:
|
|
||||||
|
|
||||||
- [Examples](#quick-usage-of-mcc-with-examples)
|
|
||||||
- [Command line parameters](#command-line-parameters)
|
|
||||||
- [Internal commands](#internal-commands)
|
|
||||||
|
|
||||||
## Windows
|
|
||||||
|
|
||||||
Simply run `MinecraftClient.exe`
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Windows it's best using [Windows Terminal](https://docs.microsoft.com/en-us/windows/terminal/install) for the best experience and looks. Some features like emojis in the [`/chunk`](#chunk) command do not work in CMD or Powershell 5**
|
|
||||||
:::
|
|
||||||
|
|
||||||
## Linux, macOS
|
|
||||||
|
|
||||||
To run the client you need to type the following command in your terminal emulator:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
./MinecraftClient
|
|
||||||
```
|
|
||||||
|
|
||||||
If you want to keep it running in the background you can use `screen` (Linux only) Example:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Start the screen
|
|
||||||
screen -S mcc
|
|
||||||
|
|
||||||
# Run it
|
|
||||||
./MinecraftClient
|
|
||||||
|
|
||||||
# Detach from the screen by pressing CTRL + A + D
|
|
||||||
|
|
||||||
# Re-attach if you want to have accces again
|
|
||||||
screen -r mcc
|
|
||||||
```
|
|
||||||
|
|
||||||
_Learn more on how to use the screen command: [YouTube](https://www.youtube.com/watch?v=_ZJiEX4rmN4)_
|
|
||||||
|
|
||||||
## Docker
|
|
||||||
|
|
||||||
See [Run using Docker](./guide/installation.md#using-docker)
|
|
||||||
|
|
||||||
## Command-line usage
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a plethora of useful command line parameters, here you can learn about them.
|
|
||||||
|
|
||||||
### For people not familiar with the command line
|
|
||||||
|
|
||||||
For people who are not familiar with the usage of programs in the command line (terminal emulators), here we will explain what every single thing means, if you're already experienced you can skip this.
|
|
||||||
|
|
||||||
In command line (terminal emulators) you can run programs by specifying their name and hitting enter, usually programs have additional way of being configured, started or provided some additional data in a different manner, this is achieved by using command line parameters.
|
|
||||||
|
|
||||||
Command line parameters are written after the name of the program, they're separated by spaces and they can have a few different formats, examples:
|
|
||||||
|
|
||||||
- `someparameter`
|
|
||||||
- `-some-parameter`
|
|
||||||
- `--some-other-parameter`
|
|
||||||
- `--some-setting="some value"`
|
|
||||||
- `-a=5`
|
|
||||||
|
|
||||||
Parameters with a single dash (`-`) are usually used for a single letter (short-hand) parameters, while the ones with a double dash (`--`) are being used for parameters with a longer/full name.
|
|
||||||
|
|
||||||
When you are reading examples, you will often see something like this: `<something here>`, this means that this is a place holder and it should be changed with some value, excluding the `<` and the `>`.
|
|
||||||
|
|
||||||
For example `<username>` you need to change to an username of your liking, example: `notch` (`<` and `>` should not be included).
|
|
||||||
|
|
||||||
`[` and `]` mean that a parameter is an optional one.
|
|
||||||
|
|
||||||
They also can hold some values, example from the MCC:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
```
|
|
||||||
|
|
||||||
When a parameter has a textual value that includes one more spaces, you will need to wrap it the value in double quotes (`"`), example: `--some-parameter="some text here with spaces in it"`
|
|
||||||
|
|
||||||
Here is an example for using a `--help` command line parameter for MCC that will print out a page on how to use MCC from the command line:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
```
|
|
||||||
|
|
||||||
### Quick usage of MCC with examples
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Linux and macOS, you need to type: `./MinecraftClient` instead of `MinecraftClient.exe`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
MinecraftClient.exe <username> <password> <server>
|
|
||||||
MinecraftClient.exe <username> <password> <server> "/mycommand"
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
MinecraftClient.exe --section.setting=value [--other settings]
|
|
||||||
MinecraftClient.exe <settings-file.ini> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Logging in as a user: notch, with a password: password123 onto a server with the ip: mc.someserver.com:25565
|
|
||||||
MinecraftClient.exe notch password123 mc.someserver.com:25565
|
|
||||||
|
|
||||||
# Overriding a setting from MinecraftClient.ini using a command line parameter
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
|
|
||||||
# Providing a custom settings ini file and overriding a language to Chinese
|
|
||||||
MinecraftClient.exe CustomSettingsFile.ini --language=zh
|
|
||||||
```
|
|
||||||
|
|
||||||
### Rules of using the command line parameters
|
|
||||||
|
|
||||||
You can mix and match arguments by following theses rules:
|
|
||||||
|
|
||||||
- First positional argument may be either the login or a settings file
|
|
||||||
- Other positional arguments are read in order: login, password, server, command
|
|
||||||
- Arguments starting with `--` can be in any order and position
|
|
||||||
|
|
||||||
Examples and further explanations:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically connect you to the chosen server.
|
|
||||||
- You may omit password and/or server to specify e.g. only the login
|
|
||||||
- To specify a server but ask password interactively, use `""` as password.
|
|
||||||
- To specify offline mode with no password, use `-` as password.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server> "/mycommand"
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically send `/mycommand` to the server and close.
|
|
||||||
- To send several commands and/or stay connected, use the 1ScriptScheduler1 bot instead.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will load the specified configuration file
|
|
||||||
- If the file contains login / password / server ip, it will automatically connect.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Specify settings on the command-line, see possible value in the configuration file
|
|
||||||
- Use `--section.setting=value` for settings outside the `[Main]` section
|
|
||||||
- Example: `--antiafk.enabled=true` for enabling the `AntiAFK` bot
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini> <login> <password> <server> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Load the specified configuration file and override some settings from the file
|
|
||||||
|
|
||||||
## 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`.
|
|
||||||
|
|
||||||
In scripts and remote control, no slash is needed to perform the command, eg. `quit`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Some commands may not be documented yet or are defined in description of Chat Bots, use `/help` to list them all, or you can contribute to this page.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `animation`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Swing your main or off hand.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/animation <mainhand|offhand>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bed`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to make the bot sleep easily, all about sleeping in one command.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `bed leave|sleep <x> <y> <z>|sleep <radius>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Leave a bed:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed leave
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed on 124 84 76:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 124 84 76
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep ~ ~ ~-2
|
|
||||||
```
|
|
||||||
|
|
||||||
Automatically find a bed in radius of 50 blocks and sleep in it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 50
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bots`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to list and unload a specific bot or all bots. Useful when debugging and developing scripts.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots <list|unload <bot name|all>>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Unload a bot called CustomScript
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload CustomScript
|
|
||||||
```
|
|
||||||
|
|
||||||
Unload all bots
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload all
|
|
||||||
```
|
|
||||||
|
|
||||||
### `changeslot`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Change your selected slot in the hotbar.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/changeslot <1-9>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `chunk`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Displays the chunk loading status in a nice way.
|
|
||||||
|
|
||||||
::: warning **To use this feature you need to enable the [Terrain and Movements](configuration.md#terrainandmovements)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need a terminal with emoji support, like Powershell 7, Windows Terminal or Alacritty, if you do not want emoji support and want to use cmd or powershell 5, disable emojis with: [`enableemoji`](configuration.md#enableemoji)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/chunk status [chunkX chunkZ|locationX locationY locationZ]
|
|
||||||
```
|
|
||||||
|
|
||||||
How it looks:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
### `dig`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Dig a block on a specific coordinate.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig 127 63 12
|
|
||||||
```
|
|
||||||
|
|
||||||
Using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig ~ ~-1 ~2
|
|
||||||
```
|
|
||||||
|
|
||||||
### `dropitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Drop all items of a specific type from your inventory.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem <itemtype>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All item types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem diamond
|
|
||||||
```
|
|
||||||
|
|
||||||
### `entity`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Attack an entity, use an entity or get a list of entities around you.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Entity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity <id|entitytype> <attack|use>
|
|
||||||
```
|
|
||||||
|
|
||||||
Get a list of entities around you:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All entity types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Mapping/EntityType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Attack a Zombie:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity Zombie attack
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execif`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute a command if a specific condition is met.
|
|
||||||
|
|
||||||
The condition is a C# expression and the local variables you set using [`set`](#set), [`setrnd`](#setrnd) or the configuration file can be used. The condition is always returned as a boolean, so only comparison can be done, if needed cast the expression result to bool.
|
|
||||||
|
|
||||||
Also the instance of MCC is available with `MCC.`.
|
|
||||||
|
|
||||||
::: tip **All local variables are treated as strings in the app, when comparing their values, you can use `<variable> == "<value>"`, or better use [`.Equals`](https://www.programiz.com/csharp-programming/library/string/equals) method**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `/execif <condition (C# expression)> ---> <command>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Setting a variable and using it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test=Something
|
|
||||||
/execif test == "Something" ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test2=1
|
|
||||||
/execif test2 == "1" ---> send Success 2!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Basic C# expression:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 + 2 + 3 == 6 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using MCC class:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif MCC.GetHealth() == 20.0 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using in combination with [`execmulti`](#execmulti):
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 == 1 ---> execmulti send 1 -> send 2 -> send 3
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execmulti`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute multiple commands in succession on a single line, useful for debugging or when using [`execif`](#execif)
|
|
||||||
|
|
||||||
Commands are separated by `->`
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `execmulti <command 1> -> <command 2> -> <command 3> -> ...`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/execmulti send 1 -> send 2 -> send 3 -> sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `quit`
|
|
||||||
|
|
||||||
- **Alias:** `exit`
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect from the server and close the application
|
|
||||||
|
|
||||||
### `reco`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect and reconnect to the server
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reco [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `reload`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Reloads settings from MinecraftClient.ini and Chat Bots.
|
|
||||||
|
|
||||||
::: tip **Some settings won't be reloaded since they are used before the client initialization. Also, settings provided by the command line paramteres will be overriden. This also does not reload the ReplayBot due to technical limitations.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reload
|
|
||||||
```
|
|
||||||
|
|
||||||
### `connect`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Go to the given server and resume the script
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/connect <server> [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`<server>` is either a server IP or a server alias defined in servers file, for more info check out [serverlist](configuration.html#serverlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `script`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Run a script containing a list of commands
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/script <script name>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `send`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Send a message or a command to the server
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/send <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `respawn`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use this to respawn if you are dead (like clicking "respawn" in-game)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/respawn
|
|
||||||
```
|
|
||||||
|
|
||||||
### `log`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Display some text in the console (useful for scripts)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/log <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
- Example:
|
|
||||||
|
|
||||||
```
|
|
||||||
/log this is some text
|
|
||||||
```
|
|
||||||
|
|
||||||
### `list`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
List players logged in to the server (uses tab list info sent by server)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/list
|
|
||||||
```
|
|
||||||
|
|
||||||
### `set`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a value which can be used as `%variable%` in further commands
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set <variable>=<value>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set abc=123
|
|
||||||
```
|
|
||||||
|
|
||||||
### `setrnd`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a `%variable%` randomly to one of the provided values
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> string1 "\"string2\" string3"
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> -7to10
|
|
||||||
```
|
|
||||||
|
|
||||||
(Set a `%variable%` to a number from -7 to 9)
|
|
||||||
|
|
||||||
### `sneak`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle sneaking.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/Sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `tps`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Get the server TPS (Ticks Per Second).
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/tps
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use item in the hand, this can be used to do a right click on items which open menus on servers.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useitem
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useblock`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Place a block from a hand on a specific coordinate or open an inventory:
|
|
||||||
|
|
||||||
- chest/trap chest
|
|
||||||
- furnace
|
|
||||||
- brewing stand
|
|
||||||
- dispenser/dropper
|
|
||||||
- hopper
|
|
||||||
- shulker
|
|
||||||
- loom
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **Not all inventories have a GUI representation in an ASCII art format.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock 43 72 7
|
|
||||||
```
|
|
||||||
|
|
||||||
### `follow`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Make the bot follow a player.
|
|
||||||
|
|
||||||
::: tip **This command is avaliable only with [Follow Player](chat-bots.md#follow-player) Chat Bot enabled.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Enity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow <player name|stop>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow milutinke
|
|
||||||
```
|
|
||||||
|
|
||||||
### `wait`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Wait X ticks (10 ticks = ~1 second. Only for scripts)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait <time>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait 20
|
|
||||||
```
|
|
||||||
|
|
||||||
### `move`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for moving when terrain and movements feature is enabled.
|
|
||||||
|
|
||||||
::: tip **You need to have [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Terrain and Movements](configuration.md#terrainandmovements) is currently not supported in `1.4.6 - 1.6`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/move <on|off|get|up|down|east|west|north|south|center|x y z|gravity [on|off]> [-f]: walk or start walking. "-f": force unsafe movements like falling or touching fire
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Enable gravity
|
|
||||||
|
|
||||||
```
|
|
||||||
/move gravity on
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move 125 72 34
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to a center of a block:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move center
|
|
||||||
```
|
|
||||||
|
|
||||||
### `look`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for looking at direction when terrain and movements is enabled
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look <x y z|yaw pitch|up|down|east|west|north|south>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look up
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/look east
|
|
||||||
```
|
|
||||||
|
|
||||||
### `inventory`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for inventory manipulation.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
MCC defines inventories as containers internally, so player's inventory, chests, droppers, dispensers, hoppers, chest minecarts, barrels, furnaces, etc... are all considered a container, and each one of them has it's ID, the words container and inventory can be used interchangeably.
|
|
||||||
|
|
||||||
Inventory has slots and each one of them has an id.
|
|
||||||
|
|
||||||
::: tip **This command DOES NOT physically open a container (eg. chest), for that you need to use [`useblock`](#useblock) command first.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
An example of player inventory with annotated IDs in ASCII art and a list of items:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <action> [action parameters] | /inventory <inventories/i> | /inventory <search/s> <item type> [amount]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **player and container can be simplified with p and c accordingly**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Actions:
|
|
||||||
|
|
||||||
- `click`
|
|
||||||
- `shiftclick`
|
|
||||||
- `drop`
|
|
||||||
|
|
||||||
Show/Preview items in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Click/Shift-Click on an item in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <click|shiftclick> <slot id> [left|right|middle]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **The default click is left click**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Close an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop item(s) from an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id> drop <slot id> <number of items|all>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To drop all items from a slot, you can use: `all`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive <slot id> <item type> <amount>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete <slot id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Show all available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory inventories
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for an item of specified type in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory search <item type>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Show player's inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player
|
|
||||||
```
|
|
||||||
|
|
||||||
Show/Preview items in an inventory using an id:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 3
|
|
||||||
```
|
|
||||||
|
|
||||||
Click on an item in player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player click 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Right-Click on an item in slot number/id `4` in an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 click 4 right
|
|
||||||
```
|
|
||||||
|
|
||||||
Close an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop a single item from a player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 36 1
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop all items from a player's inventory in slot number/id `37`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 37 all
|
|
||||||
```
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive 36 diamondblock 64
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory in slot number/id `36` when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for 10 Slime Blocks in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory s SlimeBlock 10
|
|
||||||
```
|
|
||||||
|
|
||||||
### `debug`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle debug messages, useful for chatbot developers.
|
|
||||||
|
|
||||||
### `help`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Show commands help.
|
|
||||||
|
|
||||||
::: tip **Use "/send /help" for server help**
|
|
||||||
:::
|
|
||||||
|
|
@ -1,28 +0,0 @@
|
||||||
---
|
|
||||||
home: true
|
|
||||||
heroImage: /images/MCC_logo_with_edge.png
|
|
||||||
tagline: 'Minecraft Console Client (MCC) is a lightweight open-source Minecraft Java client implemented in C#'
|
|
||||||
actions:
|
|
||||||
-
|
|
||||||
text: Installation
|
|
||||||
link: ./guide/installation.md
|
|
||||||
type: primary
|
|
||||||
-
|
|
||||||
text: Learn More →
|
|
||||||
link: ./guide/
|
|
||||||
type: secondary
|
|
||||||
actionText:
|
|
||||||
actionLink:
|
|
||||||
features:
|
|
||||||
-
|
|
||||||
title: Chat
|
|
||||||
details: Chat with other people on the server
|
|
||||||
-
|
|
||||||
title: Automation
|
|
||||||
details: Create bots to do automated tasks
|
|
||||||
-
|
|
||||||
title: Supported Versions
|
|
||||||
details: 1.4 - 1.19.2
|
|
||||||
footer: Made by MCC Team with ❤️
|
|
||||||
---
|
|
||||||
|
|
||||||
|
|
@ -1,163 +0,0 @@
|
||||||
# Introduction
|
|
||||||
|
|
||||||
- [About](#about)
|
|
||||||
- [Quick Intro (YouTube Videos)](#quick-intro)
|
|
||||||
- [Features](#features)
|
|
||||||
- [Why Minecraft Console Client?](#why-minecraft-console-client)
|
|
||||||
- [Getting Help](#getting-help)
|
|
||||||
- [Submitting a bug report or an idea/feature-request](#bugs-ideas-feature-requests)
|
|
||||||
- [Important notes on some features](#notes-on-some-features)
|
|
||||||
- [Credits](#credits)
|
|
||||||
- [Disclaimer](#disclaimer)
|
|
||||||
- [License](#license)
|
|
||||||
|
|
||||||
## About
|
|
||||||
|
|
||||||
**Minecraft Console Client (MCC)** is a lightweight cross-platform open-source **Minecraft** TUI client for **Java edition** that allows you to connect to any Minecraft Java server, send commands and receive text messages in a fast and easy way without having to open the main Minecraft game.
|
|
||||||
|
|
||||||
It also provides various automations that you can enable for administration and other purposes, as well as extensible C# API for creating Bots.
|
|
||||||
|
|
||||||
It was originally made by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/), now it's maintained by him and many other contributors from the community.
|
|
||||||
|
|
||||||
## Features
|
|
||||||
|
|
||||||
- Chat
|
|
||||||
|
|
||||||
- Send and receive chat messages
|
|
||||||
- [Log chat history](chat-bots.md#chat-log)
|
|
||||||
- [Get alerted on certain keywords](chat-bots.md#alerts)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
|
|
||||||
- [Anti AFK](chat-bots.md#anti-afk)
|
|
||||||
- [Auto Relog](chat-bots.md#auto-relog)
|
|
||||||
- [Script Scheduler](chat-bots.md#script-scheduler)
|
|
||||||
- [Remote Control](chat-bots.md#remote-control)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
- [Auto Attack](chat-bots.md#auto-attack)
|
|
||||||
- [Auto Fishing](chat-bots.md#auto-fishing)
|
|
||||||
- [Auto Eat](chat-bots.md#auto-eat)
|
|
||||||
- [Auto Craft](chat-bots.md#auto-craft)
|
|
||||||
- [Mailer Bot](chat-bots.md#mailer)
|
|
||||||
- [Auto Drop](chat-bots.md#auto-drop)
|
|
||||||
- [Replay Mod](chat-bots.md#replay-mod)
|
|
||||||
- [API for creating Bots in C#](creating-bots.md#creating-chat-bots)
|
|
||||||
- [Docker Support](installation.md#using-docker)
|
|
||||||
- [Inventory Handling](usage.md#inventory)
|
|
||||||
- [Terrain Traversing](usage.md#move)
|
|
||||||
- Entity Handling
|
|
||||||
|
|
||||||
_NOTE: Some of mentioned features are disabled by default and you will have to turn them on in the configuration file and some may require additional configuration on your part for your specific usage._
|
|
||||||
|
|
||||||
## Why Minecraft Console Client?
|
|
||||||
|
|
||||||
- Easy to use
|
|
||||||
- Helpful community
|
|
||||||
- Open-Source
|
|
||||||
- Fast performance
|
|
||||||
- Cross-Platform
|
|
||||||
- Docker Support
|
|
||||||
- 10 years of continuous development
|
|
||||||
- Active contributors
|
|
||||||
- Widely used
|
|
||||||
|
|
||||||
## Quick Intro
|
|
||||||
|
|
||||||
Don't have time to read through the documentation, we got you, our community has made some simple introduction videos about the **Minecraft Console Client**.
|
|
||||||
|
|
||||||
### The list of the tutorials:
|
|
||||||
|
|
||||||
Installation:
|
|
||||||
|
|
||||||
- [Installation on Windows by Daenges](https://www.youtube.com/watch?v=BkCqOCa2uQw)
|
|
||||||
- [Installation on Windows + Auto AFK and More by Dexter113](https://www.youtube.com/watch?v=FxJ0KFIHDrY)
|
|
||||||
|
|
||||||
Using Commands, Scripts and other features:
|
|
||||||
|
|
||||||
- [Minecraft Console Client | Tutorial | Commands, Scripts, AppVars, Matches, Tasks and C# Scripts by Daenges](https://youtu.be/JbDpwwETEnU)
|
|
||||||
- [Console Client Tutorial - Scripting by Zixxter](https://www.youtube.com/watch?v=XE7rYBFJxn0)
|
|
||||||
|
|
||||||
## Getting Help
|
|
||||||
|
|
||||||
MCC has a community that is willing to help, we have a Discussions section in out Git Hub repository.
|
|
||||||
|
|
||||||
Click [here](https://github.com/MCCTeam/Minecraft-Console-Client/discussions) to access it.
|
|
||||||
|
|
||||||
### Before getting help
|
|
||||||
|
|
||||||
- **Please use the search option here or in the discussion section and read the documentation so we avoid duplicate questions. Thank you!**
|
|
||||||
- **Please be kind and patient, respect others as they're the ones using their time to help you**
|
|
||||||
|
|
||||||
## Bugs, Ideas, Feature Requests
|
|
||||||
|
|
||||||
Bug reporting, idea submitting or feature requesting are done in the [Issues](https://github.com/MCCTeam/Minecraft-Console-Client/issues) section of our [Github repository]([here](https://github.com/MCCTeam/Minecraft-Console-Client)).
|
|
||||||
|
|
||||||
Navigate to the Issues section, search for a bug, idea or a feature using the search option here in the documentation and in the `Issues` section on Git Hub before making your own.
|
|
||||||
|
|
||||||
If you haven't found anything similar, go ahead and click on the `New issue` button, then choose what you want to do.
|
|
||||||
|
|
||||||
If you're reporting a bug, please be descriptive as much as possible, try to explain how to re-create the bug, attack screenshots and logs, make sure that you have [`debugmessages`](configuration.me#debugmessages) set to `true` before sending a bug report or taking a screenshot.
|
|
||||||
|
|
||||||
### Before submitting
|
|
||||||
|
|
||||||
- **Please use the search option here or in the `Issues` section and read the documentation so we avoid duplicate questions/ideas/reports. Thank you!**
|
|
||||||
- **Please be kind, patient and respect others. Thank you!**
|
|
||||||
|
|
||||||
## Notes on some features
|
|
||||||
|
|
||||||
### Inventory, Terrain and Entity Handling
|
|
||||||
|
|
||||||
Inventory handling is currently not supported in versions: `1.4.6 - 1.9`
|
|
||||||
|
|
||||||
Terrain handling is currently not supported in versions: `1.4.6 - 1.6`
|
|
||||||
|
|
||||||
Entity handling is currently not supported in versions: `1.4.6 - 1.9` (but `1.8` and `1.9` are being worked on, almost at the working state, only `EntityMetadata` packet remains to be fixed)
|
|
||||||
|
|
||||||
There features might not always be implemented in the latest version of the game, since they're often subjected to major changes by Mojang, and we need some time to figure out what has changed and to implement the required changes.
|
|
||||||
|
|
||||||
If there was a major game update, and the MCC hasn't been updated to support these features, if you're a programmer, feel free to contribute to the project.
|
|
||||||
|
|
||||||
## Credits
|
|
||||||
|
|
||||||
_Project initiated by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/)._
|
|
||||||
|
|
||||||
Many features would not have been possible without the help of our talented community:
|
|
||||||
|
|
||||||
**Maintainers**
|
|
||||||
|
|
||||||
ORelio, ReinforceZwei, milutinke, BruceChenQAQ, bradbyte
|
|
||||||
|
|
||||||
**Ideas**
|
|
||||||
|
|
||||||
ambysdotnet, Awpocalypse, azoundria, bearbear12345, bSun0000, Cat7373, dagonzaros, Dids, Elvang, fuckofftwice, GeorgH93, initsuj, JamieSinn, joshbean39, LehmusFIN, maski, medxo, mobdon, MousePak, TNT-UP, TorchRJ, yayes2, Yoann166, ZizzyDizzyMC and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BIdea%5D+is%3Aopen).
|
|
||||||
|
|
||||||
**Bug Hunters**
|
|
||||||
|
|
||||||
1092CQ, ambysdotnet, bearbear12345, c0dei, Cat7373, Chtholly, Darkaegis, dbear20, DigitalSniperz, doranchak, drXor, FantomHD, gerik43, ibspa, iTzMrpitBull, JamieSinn, k3ldon, KenXeiko, link3321, lyze237, mattman00000, Nicconyancat, Pokechu22, ridgewell, Ryan6578, Solethia, TNT-UP, TorchRJ, TRTrident, WeedIsGood, xp9kus, Yoann166 and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BBUG%5D+is%3Aopen+).
|
|
||||||
|
|
||||||
**Contributors**
|
|
||||||
|
|
||||||
Allyoutoo, Aragas, Bancey, bearbear12345, corbanmailloux, Daenges, dbear20, dogwatch, initsuj, JamieSinn, justcool393, lokulin, maxpowa, medxo, milutinke, Pokechu22, ReinforceZwei, repository, TheMeq, TheSnoozer, vkorn, v1RuX, yunusemregul, ZizzyDizzyMC, BruceChenQAQ, bradbyte _... And all the [GitHub contributors](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors)!_
|
|
||||||
|
|
||||||
**Libraries:**
|
|
||||||
|
|
||||||
Minecraft Console Client also borrows code from the following libraries:
|
|
||||||
|
|
||||||
| Name | Purpose | Author | License |
|
|
||||||
| ----------- | ---------------- | ---------------- | ------- |
|
|
||||||
| Biko | Proxy handling | Benton Stark | MIT |
|
|
||||||
| Heijden.Dns | DNS SRV Lookup | Geoffrey Huntley | MIT |
|
|
||||||
| DotNetZip | Zlib compression | Dino Chiesa | MS-PL |
|
|
||||||
|
|
||||||
## Disclaimer
|
|
||||||
|
|
||||||
Even if everything should work, we are not responsible for any damage this app could cause to your computer or your server. This app does not steal your password. If you don't trust it, don't use it or check & compile from the source code.
|
|
||||||
|
|
||||||
Also, remember that when you connect to a server with this program, you will appear where you left the last time. This means that **you can die if you log in in an unsafe place on a survival server!** Use the script scheduler bot to send a teleport command after logging in.
|
|
||||||
|
|
||||||
We remind you that **you may get banned** by your server for using this program. Use accordingly with server rules.
|
|
||||||
|
|
||||||
## License
|
|
||||||
|
|
||||||
Minecraft Console Client is a totally free of charge, open source project. The source code is available at [Github Repository](https://github.com/MCCTeam/Minecraft-Console-Client)
|
|
||||||
|
|
||||||
Unless specifically stated, source code is from the MCC Team or Contributors, and available under CDDL-1.0. More info about CDDL-1.0: [http://qstuff.blogspot.fr/2007/04/why-cddl.html](http://qstuff.blogspot.fr/2007/04/why-cddl.html) Full license at [http://opensource.org/licenses/CDDL-1.0](http://opensource.org/licenses/CDDL-1.0)
|
|
||||||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1,76 +0,0 @@
|
||||||
# Contributing
|
|
||||||
|
|
||||||
At this moment this page needs to be created.
|
|
||||||
|
|
||||||
For now you can use our article from the [Git Hub repository Wiki](https://github.com/MCCTeam/Minecraft-Console-Client/wiki/Update-console-client-to-new-version) written by [ReinforceZwei](https://github.com/ReinforceZwei).
|
|
||||||
|
|
||||||
## Translations
|
|
||||||
|
|
||||||
MCC now supports the following languages (Alphabetical order) :
|
|
||||||
* `de.ini` : Deutsch - German
|
|
||||||
* **`en.ini` : English - English**
|
|
||||||
* `fr.ini` : Français (France) - French
|
|
||||||
* `ru.ini` : Русский (Russkiy) - Russian
|
|
||||||
* `vi.ini` : Tiếng Việt (Việt Nam) - Vietnamese
|
|
||||||
* `zh-Hans.ini` : 简体中文 - Chinese Simplified
|
|
||||||
* `zh-Hant.ini` : 繁體中文 - Chinese Traditional
|
|
||||||
|
|
||||||
### Add new translation
|
|
||||||
|
|
||||||
1. First you need to get the name of the translated file.
|
|
||||||
* Visit [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c) and find the first occurrence of the language you need to translate in the table below.
|
|
||||||
* Use the language code of the row in the table as the name of the translation file.
|
|
||||||
* For example:
|
|
||||||
* `English` -> row `English 0x0009` -> `en` -> `en.ini`
|
|
||||||
* `Chinese (Traditional)` -> row `Chinese (Traditional) 0x7C04` -> `zh-Hant` -> `zh-Hant.ini`
|
|
||||||
|
|
||||||
2. Which system languages are recommended to use this translation?
|
|
||||||
* Still check the table in [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c), one language may have multiple rows.
|
|
||||||
* You will need to indicate which language codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `de.ini` applies to `de`, `de-AT`, `de-BE`, `de-DE`, ...
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh-Hans`, `zh`, `zh-CN`, `zh-SG`.
|
|
||||||
|
|
||||||
3. Which game languages are recommended to use this translation?
|
|
||||||
* Check out the table in [this link](https://github.com/MCCTeam/Minecraft-Console-Client/discussions/2239), where the `Locale Code` column indicates the language code in minecraft.
|
|
||||||
* You will need to indicate which locale codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `fr.ini` applies to `fr_ca`, `fr_fr`.
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh_cn`.
|
|
||||||
|
|
||||||
4. Add the new translation to the code. (Optional)
|
|
||||||
* **If you are not familiar with programming, you can skip this step and just write the above information in your PR or issue.**
|
|
||||||
* Add the newly created translation file `xx.ini` to the project `/Resources/lang/xx.ini`.
|
|
||||||
* Open `/DefaultConfigResource.resx`.
|
|
||||||
* Click `Add Resources`.
|
|
||||||
* Choose `/Resources/lang/xx.ini`.
|
|
||||||
* Rename the added resource file in `/DefaultConfigResource.resx` to `Translation_xx`.
|
|
||||||
* Open `/Translations.cs`.
|
|
||||||
* Find `public static Tuple<string, string[]> GetTranslationPriority();`
|
|
||||||
* Update the mapping of system language codes to translation files.
|
|
||||||
* Find `public static string[] GetTranslationPriority(string gameLanguage);`
|
|
||||||
* Update the mapping of game locale code to translation files.
|
|
||||||
|
|
||||||
5. Follow the section "Update existing translation".
|
|
||||||
|
|
||||||
### Update existing translation
|
|
||||||
|
|
||||||
1. Visit [the lang folder](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/Resources/lang), download `en.ini` and the language you want to translate(`xx.ini`).
|
|
||||||
|
|
||||||
2. Compare `en.ini` and `xx.ini` and update outdated or non-existent entries in `xx.ini`.
|
|
||||||
|
|
||||||
3. Once you finished the translation work, submit a pull request or send us the file through an [Issue](https://github.com/MCCTeam/Minecraft-Console-Client/issues) in case you are not familiar with Git.
|
|
||||||
|
|
||||||
### Translate README.md
|
|
||||||
|
|
||||||
1. Get the English version of the README.md from [here](https://raw.githubusercontent.com/MCCTeam/Minecraft-Console-Client/master/README.md).
|
|
||||||
|
|
||||||
2. See `Add new translation -> 1.` for the target language code. Assume it is `xx`.
|
|
||||||
|
|
||||||
3. Complete the translation according to the English README.md and name the translated version as `README-xx.md`.
|
|
||||||
|
|
||||||
4. In the English README, above the "About" section, add the name of the language and a hyperlink to `README-xx.md`.
|
|
||||||
|
|
||||||
## Contributors
|
|
||||||
|
|
||||||
[Check out our contributors on Github](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors).
|
|
||||||
|
|
@ -1,177 +0,0 @@
|
||||||
# Creating Chat Bots
|
|
||||||
|
|
||||||
- [Notes](#notes)
|
|
||||||
- [Requirements](#requirements)
|
|
||||||
- [Quick Introduction](#quick-introduction)
|
|
||||||
- [Examples](#examples)
|
|
||||||
- [C# API](#c#-api)
|
|
||||||
|
|
||||||
## Notes
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For now this page contains only the bare basics of the Chat Bot API, enough of details to teach you how to make basic Chat Bots. For more details you need to take a look at the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) and [Examples](#examples). This page will be improved in the future.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a rich C# API which allows you to create Chat Bots (effectively plugins) which can help you create complex automations which normal scripts may not be able to do.
|
|
||||||
|
|
||||||
## Requirements
|
|
||||||
|
|
||||||
- A basic knowledge of C# programming language
|
|
||||||
- A text editor
|
|
||||||
|
|
||||||
If you're not familiar with the C# programming language, we suggest taking a look at the following resources:
|
|
||||||
|
|
||||||
Crash courses:
|
|
||||||
|
|
||||||
- [C# Crash Course playlist by Teddy Smit](https://www.youtube.com/watch?v=67oWw9TanOk&list=PL82C6-O4XrHfoN_Y4MwGvJz5BntiL0z0D)
|
|
||||||
|
|
||||||
More in-depth:
|
|
||||||
|
|
||||||
- [Learn C# Youtube Playlist by Microsoft](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVxKLQCHpiUWun7vlJJvUiN)
|
|
||||||
- [Getting started with C# (An index of tutorials and the documentation) by Microsoft](https://docs.microsoft.com/en-us/dotnet/csharp/)
|
|
||||||
|
|
||||||
## Quick Introduction
|
|
||||||
|
|
||||||
This introduction assumes that you have the basic knowledge of C#.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Here we will use terms Chat Bot and Script interchangeably**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Create a new empty file and name it `ExampleChatBot.cs` in the same folder where you have your MCC installed.
|
|
||||||
|
|
||||||
Paste the following example code:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
MCC.LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
|
|
||||||
// The code and comments above are defining a "Script Metadata" section
|
|
||||||
|
|
||||||
// Every single chat bot (script) must be a class which extends the ChatBot class.
|
|
||||||
// Your class must be instantiates in the "Script Metadata" section and passed to MCC.LoadBot function.
|
|
||||||
class ExampleChatBot : ChatBot
|
|
||||||
{
|
|
||||||
// This method will be called when the script has been initialized for the first time, it's called only once
|
|
||||||
// Here you can initialize variables, eg. Dictionaries. etc...
|
|
||||||
public override void Initialize()
|
|
||||||
{
|
|
||||||
LogToConsole("An example Chat Bot has been initialized!");
|
|
||||||
}
|
|
||||||
|
|
||||||
// This is a function that will be run when we get a chat message from a server
|
|
||||||
// In this example it just detects the type of the message and prints it out
|
|
||||||
public override void GetText(string text)
|
|
||||||
{
|
|
||||||
string message = "";
|
|
||||||
string username = "";
|
|
||||||
text = GetVerbatim(text);
|
|
||||||
|
|
||||||
if (IsPrivateMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has sent you a private message: " + message);
|
|
||||||
}
|
|
||||||
else if (IsChatMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has said: " + message);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
Start MCC, connect to a server and run the following internal command: `/script ExampleChatBot.cs`.
|
|
||||||
|
|
||||||
If you did everything right you should see: `[Example Chat Bot] An example Chat Bot has been initialised!` message appear in your console log.
|
|
||||||
|
|
||||||
### Structure of Chat Bots
|
|
||||||
|
|
||||||
Chat Bot (Script) structure is the following:
|
|
||||||
|
|
||||||
```
|
|
||||||
<script metadata>
|
|
||||||
<chat bot class>
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** is a section with a custom format that mixes in C# with our format using comments. Every single Chat Bot (Script) must have this section at the beginning in order to work.
|
|
||||||
|
|
||||||
### Script Metadata Format
|
|
||||||
|
|
||||||
`//MCCScript 1.0` marks the beginning of the **Script Metadata** section, this must always be on the first line or the Chat Bot (Script) will not load and will throw an error.
|
|
||||||
|
|
||||||
`//MCCScript Extensions` marks the end of the **Script Metadata** section, this must be defined before a Chat Bot (Script) class.
|
|
||||||
|
|
||||||
In order for your Chat Bot (Script) to properly load in-between the `//MCCScript 1.0` and the `//MCCScript Extensions` lines you must instantiate your Chat Bot (Script) class and pass it to the `MCC.LoadBot` function.
|
|
||||||
|
|
||||||
Example code:
|
|
||||||
|
|
||||||
```
|
|
||||||
MCC.LoadBot(new YourChatBotClassNameHere());
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** section allows for including C# packages and libraries with: `//using <namespace>` and `/dll <dll name>`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Avoid adding whitespace between `//` and keywords**
|
|
||||||
:::
|
|
||||||
|
|
||||||
By the default the following packages are loaded:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Text.RegularExpressions;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.IO;
|
|
||||||
using System.Net;
|
|
||||||
using System.Threading;
|
|
||||||
using MinecraftClient;
|
|
||||||
using MinecraftClient.Mapping;
|
|
||||||
using MinecraftClient.Inventory;
|
|
||||||
```
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//using System.Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
```
|
|
||||||
|
|
||||||
Full Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
//using System.Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
|
|
||||||
MCC.LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
```
|
|
||||||
|
|
||||||
### Chat Bot Class
|
|
||||||
|
|
||||||
After the end of the **Script Metadata** section, you basically can define any number of classes you like, the only limitation is that the main class of your Chat Bot (Script) must extend `ChatBot` class.
|
|
||||||
|
|
||||||
There are no required methods, everything is optional.
|
|
||||||
|
|
||||||
When the Chat Bot (Script) has been initialized for the first time the `Initialize` method will be called. In it you can initialize variables, eg. Dictionaries, etc..
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For allocating resources like a database connection, we recommend allocating them in `AfterGameJoined` and freeing them in `OnDisconnect`** :::.
|
|
||||||
|
|
||||||
## Examples
|
|
||||||
|
|
||||||
You can find a lot of examples in our Git Hub Repository at [ChatBots](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/ChatBots) and [config](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/config).
|
|
||||||
|
|
||||||
## C# API
|
|
||||||
|
|
||||||
As of the time of writing, the C# API has been changed in forks that are yet to be merged, so for now you can use the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) for reference.
|
|
||||||
|
|
||||||
Each method is well documented with standard C# documentation comments.
|
|
||||||
|
|
||||||
In the future we will make a script to auto-generate this section based on the documentation in the code.
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -1,958 +0,0 @@
|
||||||
# Benutzung
|
|
||||||
|
|
||||||
How to run the program:
|
|
||||||
|
|
||||||
- [Running on Windows](#windows)
|
|
||||||
- [Running on Linux, macOS](#linux-macos)
|
|
||||||
- [Running using Docker](#docker)
|
|
||||||
|
|
||||||
Using the command line parameters:
|
|
||||||
|
|
||||||
- [Examples](#quick-usage-of-mcc-with-examples)
|
|
||||||
- [Command line parameters](#command-line-parameters)
|
|
||||||
- [Internal commands](#internal-commands)
|
|
||||||
|
|
||||||
## Windows
|
|
||||||
|
|
||||||
Simply run `MinecraftClient.exe`
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Windows it's best using [Windows Terminal](https://docs.microsoft.com/en-us/windows/terminal/install) for the best experience and looks. Some features like emojis in the [`/chunk`](#chunk) command do not work in CMD or Powershell 5**
|
|
||||||
:::
|
|
||||||
|
|
||||||
## Linux, macOS
|
|
||||||
|
|
||||||
To run the client you need to type the following command in your terminal emulator:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
./MinecraftClient
|
|
||||||
```
|
|
||||||
|
|
||||||
If you want to keep it running in the background you can use `screen` (Linux only) Example:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Start the screen
|
|
||||||
screen -S mcc
|
|
||||||
|
|
||||||
# Run it
|
|
||||||
./MinecraftClient
|
|
||||||
|
|
||||||
# Detach from the screen by pressing CTRL + A + D
|
|
||||||
|
|
||||||
# Re-attach if you want to have accces again
|
|
||||||
screen -r mcc
|
|
||||||
```
|
|
||||||
|
|
||||||
_Learn more on how to use the screen command: [YouTube](https://www.youtube.com/watch?v=_ZJiEX4rmN4)_
|
|
||||||
|
|
||||||
## Docker
|
|
||||||
|
|
||||||
See [Run using Docker](./guide/installation.md#using-docker)
|
|
||||||
|
|
||||||
## Command-line usage
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a plethora of useful command line parameters, here you can learn about them.
|
|
||||||
|
|
||||||
### For people not familiar with the command line
|
|
||||||
|
|
||||||
For people who are not familiar with the usage of programs in the command line (terminal emulators), here we will explain what every single thing means, if you're already experienced you can skip this.
|
|
||||||
|
|
||||||
In command line (terminal emulators) you can run programs by specifying their name and hitting enter, usually programs have additional way of being configured, started or provided some additional data in a different manner, this is achieved by using command line parameters.
|
|
||||||
|
|
||||||
Command line parameters are written after the name of the program, they're separated by spaces and they can have a few different formats, examples:
|
|
||||||
|
|
||||||
- `someparameter`
|
|
||||||
- `-some-parameter`
|
|
||||||
- `--some-other-parameter`
|
|
||||||
- `--some-setting="some value"`
|
|
||||||
- `-a=5`
|
|
||||||
|
|
||||||
Parameters with a single dash (`-`) are usually used for a single letter (short-hand) parameters, while the ones with a double dash (`--`) are being used for parameters with a longer/full name.
|
|
||||||
|
|
||||||
When you are reading examples, you will often see something like this: `<something here>`, this means that this is a place holder and it should be changed with some value, excluding the `<` and the `>`.
|
|
||||||
|
|
||||||
For example `<username>` you need to change to an username of your liking, example: `notch` (`<` and `>` should not be included).
|
|
||||||
|
|
||||||
`[` and `]` mean that a parameter is an optional one.
|
|
||||||
|
|
||||||
They also can hold some values, example from the MCC:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
```
|
|
||||||
|
|
||||||
When a parameter has a textual value that includes one more spaces, you will need to wrap it the value in double quotes (`"`), example: `--some-parameter="some text here with spaces in it"`
|
|
||||||
|
|
||||||
Here is an example for using a `--help` command line parameter for MCC that will print out a page on how to use MCC from the command line:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
```
|
|
||||||
|
|
||||||
### Quick usage of MCC with examples
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Linux and macOS, you need to type: `./MinecraftClient` instead of `MinecraftClient.exe`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
MinecraftClient.exe <username> <password> <server>
|
|
||||||
MinecraftClient.exe <username> <password> <server> "/mycommand"
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
MinecraftClient.exe --section.setting=value [--other settings]
|
|
||||||
MinecraftClient.exe <settings-file.ini> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Logging in as a user: notch, with a password: password123 onto a server with the ip: mc.someserver.com:25565
|
|
||||||
MinecraftClient.exe notch password123 mc.someserver.com:25565
|
|
||||||
|
|
||||||
# Overriding a setting from MinecraftClient.ini using a command line parameter
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
|
|
||||||
# Providing a custom settings ini file and overriding a language to Chinese
|
|
||||||
MinecraftClient.exe CustomSettingsFile.ini --language=zh
|
|
||||||
```
|
|
||||||
|
|
||||||
### Rules of using the command line parameters
|
|
||||||
|
|
||||||
You can mix and match arguments by following theses rules:
|
|
||||||
|
|
||||||
- First positional argument may be either the login or a settings file
|
|
||||||
- Other positional arguments are read in order: login, password, server, command
|
|
||||||
- Arguments starting with `--` can be in any order and position
|
|
||||||
|
|
||||||
Examples and further explanations:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically connect you to the chosen server.
|
|
||||||
- You may omit password and/or server to specify e.g. only the login
|
|
||||||
- To specify a server but ask password interactively, use `""` as password.
|
|
||||||
- To specify offline mode with no password, use `-` as password.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server> "/mycommand"
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically send `/mycommand` to the server and close.
|
|
||||||
- To send several commands and/or stay connected, use the 1ScriptScheduler1 bot instead.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will load the specified configuration file
|
|
||||||
- If the file contains login / password / server ip, it will automatically connect.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Specify settings on the command-line, see possible value in the configuration file
|
|
||||||
- Use `--section.setting=value` for settings outside the `[Main]` section
|
|
||||||
- Example: `--antiafk.enabled=true` for enabling the `AntiAFK` bot
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini> <login> <password> <server> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Load the specified configuration file and override some settings from the file
|
|
||||||
|
|
||||||
## 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`.
|
|
||||||
|
|
||||||
In scripts and remote control, no slash is needed to perform the command, eg. `quit`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Some commands may not be documented yet or are defined in description of Chat Bots, use `/help` to list them all, or you can contribute to this page.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `animation`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Swing your main or off hand.
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/animation <mainhand|offhand>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bed`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to make the bot sleep easily, all about sleeping in one command.
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
Basic usage: `bed leave|sleep <x> <y> <z>|sleep <radius>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Leave a bed:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed leave
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed on 124 84 76:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 124 84 76
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep ~ ~ ~-2
|
|
||||||
```
|
|
||||||
|
|
||||||
Automatically find a bed in radius of 50 blocks and sleep in it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 50
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bots`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to list and unload a specific bot or all bots. Useful when debugging and developing scripts.
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots <list|unload <bot name|all>>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Unload a bot called CustomScript
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload CustomScript
|
|
||||||
```
|
|
||||||
|
|
||||||
Unload all bots
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload all
|
|
||||||
```
|
|
||||||
|
|
||||||
### `changeslot`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Change your selected slot in the hotbar.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/changeslot <1-9>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `chunk`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Displays the chunk loading status in a nice way.
|
|
||||||
|
|
||||||
::: warning **To use this feature you need to enable the [Terrain and Movements](configuration.md#terrainandmovements)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need a terminal with emoji support, like Powershell 7, Windows Terminal or Alacritty, if you do not want emoji support and want to use cmd or powershell 5, disable emojis with: [`enableemoji`](configuration.md#enableemoji)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/chunk status [chunkX chunkZ|locationX locationY locationZ]
|
|
||||||
```
|
|
||||||
|
|
||||||
How it looks:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
### `dig`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Dig a block on a specific coordinate.
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig 127 63 12
|
|
||||||
```
|
|
||||||
|
|
||||||
Using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig ~ ~-1 ~2
|
|
||||||
```
|
|
||||||
|
|
||||||
### `dropitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Drop all items of a specific type from your inventory.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem <itemtype>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All item types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem diamond
|
|
||||||
```
|
|
||||||
|
|
||||||
### `entity`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Attack an entity, use an entity or get a list of entities around you.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Entity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity <id|entitytype> <attack|use>
|
|
||||||
```
|
|
||||||
|
|
||||||
Get a list of entities around you:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All entity types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Mapping/EntityType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Attack a Zombie:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity Zombie attack
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execif`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute a command if a specific condition is met.
|
|
||||||
|
|
||||||
The condition is a C# expression and the local variables you set using [`set`](#set), [`setrnd`](#setrnd) or the configuration file can be used. The condition is always returned as a boolean, so only comparison can be done, if needed cast the expression result to bool.
|
|
||||||
|
|
||||||
Also the instance of MCC is available with `MCC.`.
|
|
||||||
|
|
||||||
::: tip **All local variables are treated as strings in the app, when comparing their values, you can use `<variable> == "<value>"`, or better use [`.Equals`](https://www.programiz.com/csharp-programming/library/string/equals) method**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
Basic usage: `/execif <condition (C# expression)> ---> <command>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Setting a variable and using it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test=Something
|
|
||||||
/execif test == "Something" ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test2=1
|
|
||||||
/execif test2 == "1" ---> send Success 2!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Basic C# expression:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 + 2 + 3 == 6 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using MCC class:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif MCC.GetHealth() == 20.0 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using in combination with [`execmulti`](#execmulti):
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 == 1 ---> execmulti send 1 -> send 2 -> send 3
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execmulti`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute multiple commands in succession on a single line, useful for debugging or when using [`execif`](#execif)
|
|
||||||
|
|
||||||
Commands are separated by `->`
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
Basic usage: `execmulti <command 1> -> <command 2> -> <command 3> -> ...`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/execmulti send 1 -> send 2 -> send 3 -> sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `quit`
|
|
||||||
|
|
||||||
- **Alias:** `exit`
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect from the server and close the application
|
|
||||||
|
|
||||||
### `reco`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect and reconnect to the server
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reco [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `reload`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Reloads settings from MinecraftClient.ini and Chat Bots.
|
|
||||||
|
|
||||||
::: tip **Some settings won't be reloaded since they are used before the client initialization. Also, settings provided by the command line paramteres will be overriden. This also does not reload the ReplayBot due to technical limitations.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reload
|
|
||||||
```
|
|
||||||
|
|
||||||
### `connect`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Go to the given server and resume the script
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/connect <server> [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`<server>` is either a server IP or a server alias defined in servers file, for more info check out [serverlist](configuration.html#serverlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `script`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Run a script containing a list of commands
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/script <script name>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `send`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Send a message or a command to the server
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/send <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `respawn`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use this to respawn if you are dead (like clicking "respawn" in-game)
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/respawn
|
|
||||||
```
|
|
||||||
|
|
||||||
### `log`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Display some text in the console (useful for scripts)
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/log <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
- Example:
|
|
||||||
|
|
||||||
```
|
|
||||||
/log this is some text
|
|
||||||
```
|
|
||||||
|
|
||||||
### `list`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
List players logged in to the server (uses tab list info sent by server)
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/list
|
|
||||||
```
|
|
||||||
|
|
||||||
### `set`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a value which can be used as `%variable%` in further commands
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set <variable>=<value>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set abc=123
|
|
||||||
```
|
|
||||||
|
|
||||||
### `setrnd`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a `%variable%` randomly to one of the provided values
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> string1 "\"string2\" string3"
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> -7to10
|
|
||||||
```
|
|
||||||
|
|
||||||
(Set a `%variable%` to a number from -7 to 9)
|
|
||||||
|
|
||||||
### `sneak`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle sneaking.
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/Sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `tps`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Get the server TPS (Ticks Per Second).
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/tps
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use item in the hand, this can be used to do a right click on items which open menus on servers.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useitem
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useblock`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Place a block from a hand on a specific coordinate or open an inventory:
|
|
||||||
|
|
||||||
- chest/trap chest
|
|
||||||
- furnace
|
|
||||||
- brewing stand
|
|
||||||
- dispenser/dropper
|
|
||||||
- hopper
|
|
||||||
- shulker
|
|
||||||
- loom
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **Not all inventories have a GUI representation in an ASCII art format.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock 43 72 7
|
|
||||||
```
|
|
||||||
|
|
||||||
### `follow`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Make the bot follow a player.
|
|
||||||
|
|
||||||
::: tip **This command is avaliable only with [Follow Player](chat-bots.md#follow-player) Chat Bot enabled.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Enity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow <player name|stop>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow milutinke
|
|
||||||
```
|
|
||||||
|
|
||||||
### `wait`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Wait X ticks (10 ticks = ~1 second. Only for scripts)
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait <time>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait 20
|
|
||||||
```
|
|
||||||
|
|
||||||
### `move`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for moving when terrain and movements feature is enabled.
|
|
||||||
|
|
||||||
::: tip **You need to have [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Terrain and Movements](configuration.md#terrainandmovements) is currently not supported in `1.4.6 - 1.6`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/move <on|off|get|up|down|east|west|north|south|center|x y z|gravity [on|off]> [-f]: walk or start walking. "-f": force unsafe movements like falling or touching fire
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Enable gravity
|
|
||||||
|
|
||||||
```
|
|
||||||
/move gravity on
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move 125 72 34
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to a center of a block:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move center
|
|
||||||
```
|
|
||||||
|
|
||||||
### `look`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for looking at direction when terrain and movements is enabled
|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look <x y z|yaw pitch|up|down|east|west|north|south>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look up
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/look east
|
|
||||||
```
|
|
||||||
|
|
||||||
### `inventory`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for inventory manipulation.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
MCC defines inventories as containers internally, so player's inventory, chests, droppers, dispensers, hoppers, chest minecarts, barrels, furnaces, etc... are all considered a container, and each one of them has it's ID, the words container and inventory can be used interchangeably.
|
|
||||||
|
|
||||||
Inventory has slots and each one of them has an id.
|
|
||||||
|
|
||||||
::: tip **This command DOES NOT physically open a container (eg. chest), for that you need to use [`useblock`](#useblock) command first.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
An example of player inventory with annotated IDs in ASCII art and a list of items:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
- **Benutzung:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <action> [action parameters] | /inventory <inventories/i> | /inventory <search/s> <item type> [amount]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **player and container can be simplified with p and c accordingly**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Actions:
|
|
||||||
|
|
||||||
- `click`
|
|
||||||
- `shiftclick`
|
|
||||||
- `drop`
|
|
||||||
|
|
||||||
Show/Preview items in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Click/Shift-Click on an item in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <click|shiftclick> <slot id> [left|right|middle]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **The default click is left click**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Close an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop item(s) from an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id> drop <slot id> <number of items|all>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To drop all items from a slot, you can use: `all`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive <slot id> <item type> <amount>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete <slot id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Show all available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory inventories
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for an item of specified type in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory search <item type>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Show player's inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player
|
|
||||||
```
|
|
||||||
|
|
||||||
Show/Preview items in an inventory using an id:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 3
|
|
||||||
```
|
|
||||||
|
|
||||||
Click on an item in player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player click 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Right-Click on an item in slot number/id `4` in an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 click 4 right
|
|
||||||
```
|
|
||||||
|
|
||||||
Close an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop a single item from a player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 36 1
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop all items from a player's inventory in slot number/id `37`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 37 all
|
|
||||||
```
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive 36 diamondblock 64
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory in slot number/id `36` when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for 10 Slime Blocks in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory s SlimeBlock 10
|
|
||||||
```
|
|
||||||
|
|
||||||
### `debug`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle debug messages, useful for chatbot developers.
|
|
||||||
|
|
||||||
### `help`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Show commands help.
|
|
||||||
|
|
||||||
::: tip **Use "/send /help" for server help**
|
|
||||||
:::
|
|
||||||
|
|
@ -1,28 +0,0 @@
|
||||||
---
|
|
||||||
home: true
|
|
||||||
heroImage: /images/MCC_logo_with_edge.png
|
|
||||||
tagline: 'Minecraft Console Client (MCC) is a lightweight open-source Minecraft Java client implemented in C#'
|
|
||||||
actions:
|
|
||||||
-
|
|
||||||
text: Installation
|
|
||||||
link: ./guide/installation.md
|
|
||||||
type: primary
|
|
||||||
-
|
|
||||||
text: Learn More →
|
|
||||||
link: ./guide/
|
|
||||||
type: secondary
|
|
||||||
actionText:
|
|
||||||
actionLink:
|
|
||||||
features:
|
|
||||||
-
|
|
||||||
title: Chat
|
|
||||||
details: Chat with other people on the server
|
|
||||||
-
|
|
||||||
title: Automation
|
|
||||||
details: Create bots to do automated tasks
|
|
||||||
-
|
|
||||||
title: Supported Versions
|
|
||||||
details: 1.4 - 1.19.2
|
|
||||||
footer: Made by MCC Team with ❤️
|
|
||||||
---
|
|
||||||
|
|
||||||
|
|
@ -1,163 +0,0 @@
|
||||||
# Introduction
|
|
||||||
|
|
||||||
- [About](#about)
|
|
||||||
- [Quick Intro (YouTube Videos)](#quick-intro)
|
|
||||||
- [Features](#features)
|
|
||||||
- [Why Minecraft Console Client?](#why-minecraft-console-client)
|
|
||||||
- [Getting Help](#getting-help)
|
|
||||||
- [Submitting a bug report or an idea/feature-request](#bugs-ideas-feature-requests)
|
|
||||||
- [Important notes on some features](#notes-on-some-features)
|
|
||||||
- [Credits](#credits)
|
|
||||||
- [Disclaimer](#disclaimer)
|
|
||||||
- [License](#license)
|
|
||||||
|
|
||||||
## About
|
|
||||||
|
|
||||||
**Minecraft Console Client (MCC)** is a lightweight cross-platform open-source **Minecraft** TUI client for **Java edition** that allows you to connect to any Minecraft Java server, send commands and receive text messages in a fast and easy way without having to open the main Minecraft game.
|
|
||||||
|
|
||||||
It also provides various automations that you can enable for administration and other purposes, as well as extensible C# API for creating Bots.
|
|
||||||
|
|
||||||
It was originally made by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/), now it's maintained by him and many other contributors from the community.
|
|
||||||
|
|
||||||
## Features
|
|
||||||
|
|
||||||
- Chat
|
|
||||||
|
|
||||||
- Send and receive chat messages
|
|
||||||
- [Log chat history](chat-bots.md#chat-log)
|
|
||||||
- [Get alerted on certain keywords](chat-bots.md#alerts)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
|
|
||||||
- [Anti AFK](chat-bots.md#anti-afk)
|
|
||||||
- [Auto Relog](chat-bots.md#auto-relog)
|
|
||||||
- [Script Scheduler](chat-bots.md#script-scheduler)
|
|
||||||
- [Remote Control](chat-bots.md#remote-control)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
- [Auto Attack](chat-bots.md#auto-attack)
|
|
||||||
- [Auto Fishing](chat-bots.md#auto-fishing)
|
|
||||||
- [Auto Eat](chat-bots.md#auto-eat)
|
|
||||||
- [Auto Craft](chat-bots.md#auto-craft)
|
|
||||||
- [Mailer Bot](chat-bots.md#mailer)
|
|
||||||
- [Auto Drop](chat-bots.md#auto-drop)
|
|
||||||
- [Replay Mod](chat-bots.md#replay-mod)
|
|
||||||
- [API for creating Bots in C#](creating-bots.md#creating-chat-bots)
|
|
||||||
- [Docker Support](installation.md#using-docker)
|
|
||||||
- [Inventory Handling](usage.md#inventory)
|
|
||||||
- [Terrain Traversing](usage.md#move)
|
|
||||||
- Entity Handling
|
|
||||||
|
|
||||||
_NOTE: Some of mentioned features are disabled by default and you will have to turn them on in the configuration file and some may require additional configuration on your part for your specific usage._
|
|
||||||
|
|
||||||
## Why Minecraft Console Client?
|
|
||||||
|
|
||||||
- Easy to use
|
|
||||||
- Helpful community
|
|
||||||
- Open-Source
|
|
||||||
- Fast performance
|
|
||||||
- Cross-Platform
|
|
||||||
- Docker Support
|
|
||||||
- 10 years of continuous development
|
|
||||||
- Active contributors
|
|
||||||
- Widely used
|
|
||||||
|
|
||||||
## Quick Intro
|
|
||||||
|
|
||||||
Don't have time to read through the documentation, we got you, our community has made some simple introduction videos about the **Minecraft Console Client**.
|
|
||||||
|
|
||||||
### The list of the tutorials:
|
|
||||||
|
|
||||||
Installation:
|
|
||||||
|
|
||||||
- [Installation on Windows by Daenges](https://www.youtube.com/watch?v=BkCqOCa2uQw)
|
|
||||||
- [Installation on Windows + Auto AFK and More by Dexter113](https://www.youtube.com/watch?v=FxJ0KFIHDrY)
|
|
||||||
|
|
||||||
Using Commands, Scripts and other features:
|
|
||||||
|
|
||||||
- [Minecraft Console Client | Tutorial | Commands, Scripts, AppVars, Matches, Tasks and C# Scripts by Daenges](https://youtu.be/JbDpwwETEnU)
|
|
||||||
- [Console Client Tutorial - Scripting by Zixxter](https://www.youtube.com/watch?v=XE7rYBFJxn0)
|
|
||||||
|
|
||||||
## Getting Help
|
|
||||||
|
|
||||||
MCC has a community that is willing to help, we have a Discussions section in out Git Hub repository.
|
|
||||||
|
|
||||||
Click [here](https://github.com/MCCTeam/Minecraft-Console-Client/discussions) to access it.
|
|
||||||
|
|
||||||
### Before getting help
|
|
||||||
|
|
||||||
- **Please use the search option here or in the discussion section and read the documentation so we avoid duplicate questions. Thank you!**
|
|
||||||
- **Please be kind and patient, respect others as they're the ones using their time to help you**
|
|
||||||
|
|
||||||
## Bugs, Ideas, Feature Requests
|
|
||||||
|
|
||||||
Bug reporting, idea submitting or feature requesting are done in the [Issues](https://github.com/MCCTeam/Minecraft-Console-Client/issues) section of our [Github repository]([here](https://github.com/MCCTeam/Minecraft-Console-Client)).
|
|
||||||
|
|
||||||
Navigate to the Issues section, search for a bug, idea or a feature using the search option here in the documentation and in the `Issues` section on Git Hub before making your own.
|
|
||||||
|
|
||||||
If you haven't found anything similar, go ahead and click on the `New issue` button, then choose what you want to do.
|
|
||||||
|
|
||||||
If you're reporting a bug, please be descriptive as much as possible, try to explain how to re-create the bug, attack screenshots and logs, make sure that you have [`debugmessages`](configuration.me#debugmessages) set to `true` before sending a bug report or taking a screenshot.
|
|
||||||
|
|
||||||
### Before submitting
|
|
||||||
|
|
||||||
- **Please use the search option here or in the `Issues` section and read the documentation so we avoid duplicate questions/ideas/reports. Thank you!**
|
|
||||||
- **Please be kind, patient and respect others. Thank you!**
|
|
||||||
|
|
||||||
## Notes on some features
|
|
||||||
|
|
||||||
### Inventory, Terrain and Entity Handling
|
|
||||||
|
|
||||||
Inventory handling is currently not supported in versions: `1.4.6 - 1.9`
|
|
||||||
|
|
||||||
Terrain handling is currently not supported in versions: `1.4.6 - 1.6`
|
|
||||||
|
|
||||||
Entity handling is currently not supported in versions: `1.4.6 - 1.9` (but `1.8` and `1.9` are being worked on, almost at the working state, only `EntityMetadata` packet remains to be fixed)
|
|
||||||
|
|
||||||
There features might not always be implemented in the latest version of the game, since they're often subjected to major changes by Mojang, and we need some time to figure out what has changed and to implement the required changes.
|
|
||||||
|
|
||||||
If there was a major game update, and the MCC hasn't been updated to support these features, if you're a programmer, feel free to contribute to the project.
|
|
||||||
|
|
||||||
## Credits
|
|
||||||
|
|
||||||
_Project initiated by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/)._
|
|
||||||
|
|
||||||
Many features would not have been possible without the help of our talented community:
|
|
||||||
|
|
||||||
**Maintainers**
|
|
||||||
|
|
||||||
ORelio, ReinforceZwei, milutinke, BruceChenQAQ, bradbyte
|
|
||||||
|
|
||||||
**Ideas**
|
|
||||||
|
|
||||||
ambysdotnet, Awpocalypse, azoundria, bearbear12345, bSun0000, Cat7373, dagonzaros, Dids, Elvang, fuckofftwice, GeorgH93, initsuj, JamieSinn, joshbean39, LehmusFIN, maski, medxo, mobdon, MousePak, TNT-UP, TorchRJ, yayes2, Yoann166, ZizzyDizzyMC and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BIdea%5D+is%3Aopen).
|
|
||||||
|
|
||||||
**Bug Hunters**
|
|
||||||
|
|
||||||
1092CQ, ambysdotnet, bearbear12345, c0dei, Cat7373, Chtholly, Darkaegis, dbear20, DigitalSniperz, doranchak, drXor, FantomHD, gerik43, ibspa, iTzMrpitBull, JamieSinn, k3ldon, KenXeiko, link3321, lyze237, mattman00000, Nicconyancat, Pokechu22, ridgewell, Ryan6578, Solethia, TNT-UP, TorchRJ, TRTrident, WeedIsGood, xp9kus, Yoann166 and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BBUG%5D+is%3Aopen+).
|
|
||||||
|
|
||||||
**Contributors**
|
|
||||||
|
|
||||||
Allyoutoo, Aragas, Bancey, bearbear12345, corbanmailloux, Daenges, dbear20, dogwatch, initsuj, JamieSinn, justcool393, lokulin, maxpowa, medxo, milutinke, Pokechu22, ReinforceZwei, repository, TheMeq, TheSnoozer, vkorn, v1RuX, yunusemregul, ZizzyDizzyMC, BruceChenQAQ, bradbyte _... And all the [GitHub contributors](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors)!_
|
|
||||||
|
|
||||||
**Libraries:**
|
|
||||||
|
|
||||||
Minecraft Console Client also borrows code from the following libraries:
|
|
||||||
|
|
||||||
| Name | Purpose | Author | License |
|
|
||||||
| ----------- | ---------------- | ---------------- | ------- |
|
|
||||||
| Biko | Proxy handling | Benton Stark | MIT |
|
|
||||||
| Heijden.Dns | DNS SRV Lookup | Geoffrey Huntley | MIT |
|
|
||||||
| DotNetZip | Zlib compression | Dino Chiesa | MS-PL |
|
|
||||||
|
|
||||||
## Disclaimer
|
|
||||||
|
|
||||||
Even if everything should work, we are not responsible for any damage this app could cause to your computer or your server. This app does not steal your password. If you don't trust it, don't use it or check & compile from the source code.
|
|
||||||
|
|
||||||
Also, remember that when you connect to a server with this program, you will appear where you left the last time. This means that **you can die if you log in in an unsafe place on a survival server!** Use the script scheduler bot to send a teleport command after logging in.
|
|
||||||
|
|
||||||
We remind you that **you may get banned** by your server for using this program. Use accordingly with server rules.
|
|
||||||
|
|
||||||
## License
|
|
||||||
|
|
||||||
Minecraft Console Client is a totally free of charge, open source project. The source code is available at [Github Repository](https://github.com/MCCTeam/Minecraft-Console-Client)
|
|
||||||
|
|
||||||
Unless specifically stated, source code is from the MCC Team or Contributors, and available under CDDL-1.0. More info about CDDL-1.0: [http://qstuff.blogspot.fr/2007/04/why-cddl.html](http://qstuff.blogspot.fr/2007/04/why-cddl.html) Full license at [http://opensource.org/licenses/CDDL-1.0](http://opensource.org/licenses/CDDL-1.0)
|
|
||||||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1,76 +0,0 @@
|
||||||
# Contributing
|
|
||||||
|
|
||||||
At this moment this page needs to be created.
|
|
||||||
|
|
||||||
For now you can use our article from the [Git Hub repository Wiki](https://github.com/MCCTeam/Minecraft-Console-Client/wiki/Update-console-client-to-new-version) written by [ReinforceZwei](https://github.com/ReinforceZwei).
|
|
||||||
|
|
||||||
## Translations
|
|
||||||
|
|
||||||
MCC now supports the following languages (Alphabetical order) :
|
|
||||||
* `de.ini` : Deutsch - German
|
|
||||||
* **`en.ini` : English - English**
|
|
||||||
* `fr.ini` : Français (France) - French
|
|
||||||
* `ru.ini` : Русский (Russkiy) - Russian
|
|
||||||
* `vi.ini` : Tiếng Việt (Việt Nam) - Vietnamese
|
|
||||||
* `zh-Hans.ini` : 简体中文 - Chinese Simplified
|
|
||||||
* `zh-Hant.ini` : 繁體中文 - Chinese Traditional
|
|
||||||
|
|
||||||
### Add new translation
|
|
||||||
|
|
||||||
1. First you need to get the name of the translated file.
|
|
||||||
* Visit [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c) and find the first occurrence of the language you need to translate in the table below.
|
|
||||||
* Use the language code of the row in the table as the name of the translation file.
|
|
||||||
* For example:
|
|
||||||
* `English` -> row `English 0x0009` -> `en` -> `en.ini`
|
|
||||||
* `Chinese (Traditional)` -> row `Chinese (Traditional) 0x7C04` -> `zh-Hant` -> `zh-Hant.ini`
|
|
||||||
|
|
||||||
2. Which system languages are recommended to use this translation?
|
|
||||||
* Still check the table in [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c), one language may have multiple rows.
|
|
||||||
* You will need to indicate which language codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `de.ini` applies to `de`, `de-AT`, `de-BE`, `de-DE`, ...
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh-Hans`, `zh`, `zh-CN`, `zh-SG`.
|
|
||||||
|
|
||||||
3. Which game languages are recommended to use this translation?
|
|
||||||
* Check out the table in [this link](https://github.com/MCCTeam/Minecraft-Console-Client/discussions/2239), where the `Locale Code` column indicates the language code in minecraft.
|
|
||||||
* You will need to indicate which locale codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `fr.ini` applies to `fr_ca`, `fr_fr`.
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh_cn`.
|
|
||||||
|
|
||||||
4. Add the new translation to the code. (Optional)
|
|
||||||
* **If you are not familiar with programming, you can skip this step and just write the above information in your PR or issue.**
|
|
||||||
* Add the newly created translation file `xx.ini` to the project `/Resources/lang/xx.ini`.
|
|
||||||
* Open `/DefaultConfigResource.resx`.
|
|
||||||
* Click `Add Resources`.
|
|
||||||
* Choose `/Resources/lang/xx.ini`.
|
|
||||||
* Rename the added resource file in `/DefaultConfigResource.resx` to `Translation_xx`.
|
|
||||||
* Open `/Translations.cs`.
|
|
||||||
* Find `public static Tuple<string, string[]> GetTranslationPriority();`
|
|
||||||
* Update the mapping of system language codes to translation files.
|
|
||||||
* Find `public static string[] GetTranslationPriority(string gameLanguage);`
|
|
||||||
* Update the mapping of game locale code to translation files.
|
|
||||||
|
|
||||||
5. Follow the section "Update existing translation".
|
|
||||||
|
|
||||||
### Update existing translation
|
|
||||||
|
|
||||||
1. Visit [the lang folder](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/Resources/lang), download `en.ini` and the language you want to translate(`xx.ini`).
|
|
||||||
|
|
||||||
2. Compare `en.ini` and `xx.ini` and update outdated or non-existent entries in `xx.ini`.
|
|
||||||
|
|
||||||
3. Once you finished the translation work, submit a pull request or send us the file through an [Issue](https://github.com/MCCTeam/Minecraft-Console-Client/issues) in case you are not familiar with Git.
|
|
||||||
|
|
||||||
### Translate README.md
|
|
||||||
|
|
||||||
1. Get the English version of the README.md from [here](https://raw.githubusercontent.com/MCCTeam/Minecraft-Console-Client/master/README.md).
|
|
||||||
|
|
||||||
2. See `Add new translation -> 1.` for the target language code. Assume it is `xx`.
|
|
||||||
|
|
||||||
3. Complete the translation according to the English README.md and name the translated version as `README-xx.md`.
|
|
||||||
|
|
||||||
4. In the English README, above the "About" section, add the name of the language and a hyperlink to `README-xx.md`.
|
|
||||||
|
|
||||||
## Contributors
|
|
||||||
|
|
||||||
[Check out our contributors on Github](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors).
|
|
||||||
|
|
@ -1,177 +0,0 @@
|
||||||
# Creating Chat Bots
|
|
||||||
|
|
||||||
- [Notes](#notes)
|
|
||||||
- [Requirements](#requirements)
|
|
||||||
- [Quick Introduction](#quick-introduction)
|
|
||||||
- [Examples](#examples)
|
|
||||||
- [C# API](#c#-api)
|
|
||||||
|
|
||||||
## Notes
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For now this page contains only the bare basics of the Chat Bot API, enough of details to teach you how to make basic Chat Bots. For more details you need to take a look at the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) and [Examples](#examples). This page will be improved in the future.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a rich C# API which allows you to create Chat Bots (effectively plugins) which can help you create complex automations which normal scripts may not be able to do.
|
|
||||||
|
|
||||||
## Requirements
|
|
||||||
|
|
||||||
- A basic knowledge of C# programming language
|
|
||||||
- A text editor
|
|
||||||
|
|
||||||
If you're not familiar with the C# programming language, we suggest taking a look at the following resources:
|
|
||||||
|
|
||||||
Crash courses:
|
|
||||||
|
|
||||||
- [C# Crash Course playlist by Teddy Smit](https://www.youtube.com/watch?v=67oWw9TanOk&list=PL82C6-O4XrHfoN_Y4MwGvJz5BntiL0z0D)
|
|
||||||
|
|
||||||
More in-depth:
|
|
||||||
|
|
||||||
- [Learn C# Youtube Playlist by Microsoft](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVxKLQCHpiUWun7vlJJvUiN)
|
|
||||||
- [Getting started with C# (An index of tutorials and the documentation) by Microsoft](https://docs.microsoft.com/en-us/dotnet/csharp/)
|
|
||||||
|
|
||||||
## Quick Introduction
|
|
||||||
|
|
||||||
This introduction assumes that you have the basic knowledge of C#.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Here we will use terms Chat Bot and Script interchangeably**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Create a new empty file and name it `ExampleChatBot.cs` in the same folder where you have your MCC installed.
|
|
||||||
|
|
||||||
Paste the following example code:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
MCC.LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
|
|
||||||
// The code and comments above are defining a "Script Metadata" section
|
|
||||||
|
|
||||||
// Every single chat bot (script) must be a class which extends the ChatBot class.
|
|
||||||
// Your class must be instantiates in the "Script Metadata" section and passed to MCC.LoadBot function.
|
|
||||||
class ExampleChatBot : ChatBot
|
|
||||||
{
|
|
||||||
// This method will be called when the script has been initialized for the first time, it's called only once
|
|
||||||
// Here you can initialize variables, eg. Dictionaries. etc...
|
|
||||||
public override void Initialize()
|
|
||||||
{
|
|
||||||
LogToConsole("An example Chat Bot has been initialized!");
|
|
||||||
}
|
|
||||||
|
|
||||||
// This is a function that will be run when we get a chat message from a server
|
|
||||||
// In this example it just detects the type of the message and prints it out
|
|
||||||
public override void GetText(string text)
|
|
||||||
{
|
|
||||||
string message = "";
|
|
||||||
string username = "";
|
|
||||||
text = GetVerbatim(text);
|
|
||||||
|
|
||||||
if (IsPrivateMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has sent you a private message: " + message);
|
|
||||||
}
|
|
||||||
else if (IsChatMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has said: " + message);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
Start MCC, connect to a server and run the following internal command: `/script ExampleChatBot.cs`.
|
|
||||||
|
|
||||||
If you did everything right you should see: `[Example Chat Bot] An example Chat Bot has been initialised!` message appear in your console log.
|
|
||||||
|
|
||||||
### Structure of Chat Bots
|
|
||||||
|
|
||||||
Chat Bot (Script) structure is the following:
|
|
||||||
|
|
||||||
```
|
|
||||||
<script metadata>
|
|
||||||
<chat bot class>
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** is a section with a custom format that mixes in C# with our format using comments. Every single Chat Bot (Script) must have this section at the beginning in order to work.
|
|
||||||
|
|
||||||
### Script Metadata Format
|
|
||||||
|
|
||||||
`//MCCScript 1.0` marks the beginning of the **Script Metadata** section, this must always be on the first line or the Chat Bot (Script) will not load and will throw an error.
|
|
||||||
|
|
||||||
`//MCCScript Extensions` marks the end of the **Script Metadata** section, this must be defined before a Chat Bot (Script) class.
|
|
||||||
|
|
||||||
In order for your Chat Bot (Script) to properly load in-between the `//MCCScript 1.0` and the `//MCCScript Extensions` lines you must instantiate your Chat Bot (Script) class and pass it to the `MCC.LoadBot` function.
|
|
||||||
|
|
||||||
Example code:
|
|
||||||
|
|
||||||
```
|
|
||||||
MCC.LoadBot(new YourChatBotClassNameHere());
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** section allows for including C# packages and libraries with: `//using <namespace>` and `/dll <dll name>`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Avoid adding whitespace between `//` and keywords**
|
|
||||||
:::
|
|
||||||
|
|
||||||
By the default the following packages are loaded:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Text.RegularExpressions;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.IO;
|
|
||||||
using System.Net;
|
|
||||||
using System.Threading;
|
|
||||||
using MinecraftClient;
|
|
||||||
using MinecraftClient.Mapping;
|
|
||||||
using MinecraftClient.Inventory;
|
|
||||||
```
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//using System.Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
```
|
|
||||||
|
|
||||||
Full Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
//using System.Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
|
|
||||||
MCC.LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
```
|
|
||||||
|
|
||||||
### Chat Bot Class
|
|
||||||
|
|
||||||
After the end of the **Script Metadata** section, you basically can define any number of classes you like, the only limitation is that the main class of your Chat Bot (Script) must extend `ChatBot` class.
|
|
||||||
|
|
||||||
There are no required methods, everything is optional.
|
|
||||||
|
|
||||||
When the Chat Bot (Script) has been initialized for the first time the `Initialize` method will be called. In it you can initialize variables, eg. Dictionaries, etc..
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For allocating resources like a database connection, we recommend allocating them in `AfterGameJoined` and freeing them in `OnDisconnect`** :::.
|
|
||||||
|
|
||||||
## Examples
|
|
||||||
|
|
||||||
You can find a lot of examples in our Git Hub Repository at [ChatBots](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/ChatBots) and [config](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/config).
|
|
||||||
|
|
||||||
## C# API
|
|
||||||
|
|
||||||
As of the time of writing, the C# API has been changed in forks that are yet to be merged, so for now you can use the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) for reference.
|
|
||||||
|
|
||||||
Each method is well documented with standard C# documentation comments.
|
|
||||||
|
|
||||||
In the future we will make a script to auto-generate this section based on the documentation in the code.
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -1,958 +0,0 @@
|
||||||
# Usage
|
|
||||||
|
|
||||||
How to run the program:
|
|
||||||
|
|
||||||
- [Running on Windows](#windows)
|
|
||||||
- [Running on Linux, macOS](#linux-macos)
|
|
||||||
- [Running using Docker](#docker)
|
|
||||||
|
|
||||||
Using the command line parameters:
|
|
||||||
|
|
||||||
- [Examples](#quick-usage-of-mcc-with-examples)
|
|
||||||
- [Command line parameters](#command-line-parameters)
|
|
||||||
- [Internal commands](#internal-commands)
|
|
||||||
|
|
||||||
## Windows
|
|
||||||
|
|
||||||
Simply run `MinecraftClient.exe`
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Windows it's best using [Windows Terminal](https://docs.microsoft.com/en-us/windows/terminal/install) for the best experience and looks. Some features like emojis in the [`/chunk`](#chunk) command do not work in CMD or Powershell 5**
|
|
||||||
:::
|
|
||||||
|
|
||||||
## Linux, macOS
|
|
||||||
|
|
||||||
To run the client you need to type the following command in your terminal emulator:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
./MinecraftClient
|
|
||||||
```
|
|
||||||
|
|
||||||
If you want to keep it running in the background you can use `screen` (Linux only) Example:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Start the screen
|
|
||||||
screen -S mcc
|
|
||||||
|
|
||||||
# Run it
|
|
||||||
./MinecraftClient
|
|
||||||
|
|
||||||
# Detach from the screen by pressing CTRL + A + D
|
|
||||||
|
|
||||||
# Re-attach if you want to have accces again
|
|
||||||
screen -r mcc
|
|
||||||
```
|
|
||||||
|
|
||||||
_Learn more on how to use the screen command: [YouTube](https://www.youtube.com/watch?v=_ZJiEX4rmN4)_
|
|
||||||
|
|
||||||
## Docker
|
|
||||||
|
|
||||||
See [Run using Docker](./guide/installation.md#using-docker)
|
|
||||||
|
|
||||||
## Command-line usage
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a plethora of useful command line parameters, here you can learn about them.
|
|
||||||
|
|
||||||
### For people not familiar with the command line
|
|
||||||
|
|
||||||
For people who are not familiar with the usage of programs in the command line (terminal emulators), here we will explain what every single thing means, if you're already experienced you can skip this.
|
|
||||||
|
|
||||||
In command line (terminal emulators) you can run programs by specifying their name and hitting enter, usually programs have additional way of being configured, started or provided some additional data in a different manner, this is achieved by using command line parameters.
|
|
||||||
|
|
||||||
Command line parameters are written after the name of the program, they're separated by spaces and they can have a few different formats, examples:
|
|
||||||
|
|
||||||
- `someparameter`
|
|
||||||
- `-some-parameter`
|
|
||||||
- `--some-other-parameter`
|
|
||||||
- `--some-setting="some value"`
|
|
||||||
- `-a=5`
|
|
||||||
|
|
||||||
Parameters with a single dash (`-`) are usually used for a single letter (short-hand) parameters, while the ones with a double dash (`--`) are being used for parameters with a longer/full name.
|
|
||||||
|
|
||||||
When you are reading examples, you will often see something like this: `<something here>`, this means that this is a place holder and it should be changed with some value, excluding the `<` and the `>`.
|
|
||||||
|
|
||||||
For example `<username>` you need to change to an username of your liking, example: `notch` (`<` and `>` should not be included).
|
|
||||||
|
|
||||||
`[` and `]` mean that a parameter is an optional one.
|
|
||||||
|
|
||||||
They also can hold some values, example from the MCC:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
```
|
|
||||||
|
|
||||||
When a parameter has a textual value that includes one more spaces, you will need to wrap it the value in double quotes (`"`), example: `--some-parameter="some text here with spaces in it"`
|
|
||||||
|
|
||||||
Here is an example for using a `--help` command line parameter for MCC that will print out a page on how to use MCC from the command line:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
```
|
|
||||||
|
|
||||||
### Quick usage of MCC with examples
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Linux and macOS, you need to type: `./MinecraftClient` instead of `MinecraftClient.exe`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
MinecraftClient.exe <username> <password> <server>
|
|
||||||
MinecraftClient.exe <username> <password> <server> "/mycommand"
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
MinecraftClient.exe --section.setting=value [--other settings]
|
|
||||||
MinecraftClient.exe <settings-file.ini> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Logging in as a user: notch, with a password: password123 onto a server with the ip: mc.someserver.com:25565
|
|
||||||
MinecraftClient.exe notch password123 mc.someserver.com:25565
|
|
||||||
|
|
||||||
# Overriding a setting from MinecraftClient.ini using a command line parameter
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
|
|
||||||
# Providing a custom settings ini file and overriding a language to Chinese
|
|
||||||
MinecraftClient.exe CustomSettingsFile.ini --language=zh
|
|
||||||
```
|
|
||||||
|
|
||||||
### Rules of using the command line parameters
|
|
||||||
|
|
||||||
You can mix and match arguments by following theses rules:
|
|
||||||
|
|
||||||
- First positional argument may be either the login or a settings file
|
|
||||||
- Other positional arguments are read in order: login, password, server, command
|
|
||||||
- Arguments starting with `--` can be in any order and position
|
|
||||||
|
|
||||||
Examples and further explanations:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically connect you to the chosen server.
|
|
||||||
- You may omit password and/or server to specify e.g. only the login
|
|
||||||
- To specify a server but ask password interactively, use `""` as password.
|
|
||||||
- To specify offline mode with no password, use `-` as password.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server> "/mycommand"
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically send `/mycommand` to the server and close.
|
|
||||||
- To send several commands and/or stay connected, use the 1ScriptScheduler1 bot instead.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will load the specified configuration file
|
|
||||||
- If the file contains login / password / server ip, it will automatically connect.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Specify settings on the command-line, see possible value in the configuration file
|
|
||||||
- Use `--section.setting=value` for settings outside the `[Main]` section
|
|
||||||
- Example: `--antiafk.enabled=true` for enabling the `AntiAFK` bot
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini> <login> <password> <server> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Load the specified configuration file and override some settings from the file
|
|
||||||
|
|
||||||
## 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`.
|
|
||||||
|
|
||||||
In scripts and remote control, no slash is needed to perform the command, eg. `quit`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Some commands may not be documented yet or are defined in description of Chat Bots, use `/help` to list them all, or you can contribute to this page.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `animation`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Swing your main or off hand.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/animation <mainhand|offhand>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bed`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to make the bot sleep easily, all about sleeping in one command.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `bed leave|sleep <x> <y> <z>|sleep <radius>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Leave a bed:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed leave
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed on 124 84 76:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 124 84 76
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep ~ ~ ~-2
|
|
||||||
```
|
|
||||||
|
|
||||||
Automatically find a bed in radius of 50 blocks and sleep in it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 50
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bots`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to list and unload a specific bot or all bots. Useful when debugging and developing scripts.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots <list|unload <bot name|all>>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Unload a bot called CustomScript
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload CustomScript
|
|
||||||
```
|
|
||||||
|
|
||||||
Unload all bots
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload all
|
|
||||||
```
|
|
||||||
|
|
||||||
### `changeslot`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Change your selected slot in the hotbar.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/changeslot <1-9>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `chunk`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Displays the chunk loading status in a nice way.
|
|
||||||
|
|
||||||
::: warning **To use this feature you need to enable the [Terrain and Movements](configuration.md#terrainandmovements)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need a terminal with emoji support, like Powershell 7, Windows Terminal or Alacritty, if you do not want emoji support and want to use cmd or powershell 5, disable emojis with: [`enableemoji`](configuration.md#enableemoji)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/chunk status [chunkX chunkZ|locationX locationY locationZ]
|
|
||||||
```
|
|
||||||
|
|
||||||
How it looks:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
### `dig`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Dig a block on a specific coordinate.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig 127 63 12
|
|
||||||
```
|
|
||||||
|
|
||||||
Using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig ~ ~-1 ~2
|
|
||||||
```
|
|
||||||
|
|
||||||
### `dropitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Drop all items of a specific type from your inventory.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem <itemtype>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All item types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem diamond
|
|
||||||
```
|
|
||||||
|
|
||||||
### `entity`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Attack an entity, use an entity or get a list of entities around you.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Entity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity <id|entitytype> <attack|use>
|
|
||||||
```
|
|
||||||
|
|
||||||
Get a list of entities around you:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All entity types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Mapping/EntityType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Attack a Zombie:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity Zombie attack
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execif`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute a command if a specific condition is met.
|
|
||||||
|
|
||||||
The condition is a C# expression and the local variables you set using [`set`](#set), [`setrnd`](#setrnd) or the configuration file can be used. The condition is always returned as a boolean, so only comparison can be done, if needed cast the expression result to bool.
|
|
||||||
|
|
||||||
Also the instance of MCC is available with `MCC.`.
|
|
||||||
|
|
||||||
::: tip **All local variables are treated as strings in the app, when comparing their values, you can use `<variable> == "<value>"`, or better use [`.Equals`](https://www.programiz.com/csharp-programming/library/string/equals) method**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `/execif <condition (C# expression)> ---> <command>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Setting a variable and using it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test=Something
|
|
||||||
/execif test == "Something" ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test2=1
|
|
||||||
/execif test2 == "1" ---> send Success 2!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Basic C# expression:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 + 2 + 3 == 6 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using MCC class:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif MCC.GetHealth() == 20.0 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using in combination with [`execmulti`](#execmulti):
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 == 1 ---> execmulti send 1 -> send 2 -> send 3
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execmulti`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute multiple commands in succession on a single line, useful for debugging or when using [`execif`](#execif)
|
|
||||||
|
|
||||||
Commands are separated by `->`
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `execmulti <command 1> -> <command 2> -> <command 3> -> ...`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/execmulti send 1 -> send 2 -> send 3 -> sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `quit`
|
|
||||||
|
|
||||||
- **Alias:** `exit`
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect from the server and close the application
|
|
||||||
|
|
||||||
### `reco`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect and reconnect to the server
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reco [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `reload`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Reloads settings from MinecraftClient.ini and Chat Bots.
|
|
||||||
|
|
||||||
::: tip **Some settings won't be reloaded since they are used before the client initialization. Also, settings provided by the command line paramteres will be overriden. This also does not reload the ReplayBot due to technical limitations.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reload
|
|
||||||
```
|
|
||||||
|
|
||||||
### `connect`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Go to the given server and resume the script
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/connect <server> [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`<server>` is either a server IP or a server alias defined in servers file, for more info check out [serverlist](configuration.html#serverlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `script`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Run a script containing a list of commands
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/script <script name>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `send`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Send a message or a command to the server
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/send <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `respawn`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use this to respawn if you are dead (like clicking "respawn" in-game)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/respawn
|
|
||||||
```
|
|
||||||
|
|
||||||
### `log`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Display some text in the console (useful for scripts)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/log <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
- Example:
|
|
||||||
|
|
||||||
```
|
|
||||||
/log this is some text
|
|
||||||
```
|
|
||||||
|
|
||||||
### `list`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
List players logged in to the server (uses tab list info sent by server)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/list
|
|
||||||
```
|
|
||||||
|
|
||||||
### `set`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a value which can be used as `%variable%` in further commands
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set <variable>=<value>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set abc=123
|
|
||||||
```
|
|
||||||
|
|
||||||
### `setrnd`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a `%variable%` randomly to one of the provided values
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> string1 "\"string2\" string3"
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> -7to10
|
|
||||||
```
|
|
||||||
|
|
||||||
(Set a `%variable%` to a number from -7 to 9)
|
|
||||||
|
|
||||||
### `sneak`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle sneaking.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/Sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `tps`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Get the server TPS (Ticks Per Second).
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/tps
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use item in the hand, this can be used to do a right click on items which open menus on servers.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useitem
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useblock`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Place a block from a hand on a specific coordinate or open an inventory:
|
|
||||||
|
|
||||||
- chest/trap chest
|
|
||||||
- furnace
|
|
||||||
- brewing stand
|
|
||||||
- dispenser/dropper
|
|
||||||
- hopper
|
|
||||||
- shulker
|
|
||||||
- loom
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **Not all inventories have a GUI representation in an ASCII art format.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock 43 72 7
|
|
||||||
```
|
|
||||||
|
|
||||||
### `follow`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Make the bot follow a player.
|
|
||||||
|
|
||||||
::: tip **This command is avaliable only with [Follow Player](chat-bots.md#follow-player) Chat Bot enabled.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Enity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow <player name|stop>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow milutinke
|
|
||||||
```
|
|
||||||
|
|
||||||
### `wait`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Wait X ticks (10 ticks = ~1 second. Only for scripts)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait <time>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait 20
|
|
||||||
```
|
|
||||||
|
|
||||||
### `move`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for moving when terrain and movements feature is enabled.
|
|
||||||
|
|
||||||
::: tip **You need to have [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Terrain and Movements](configuration.md#terrainandmovements) is currently not supported in `1.4.6 - 1.6`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/move <on|off|get|up|down|east|west|north|south|center|x y z|gravity [on|off]> [-f]: walk or start walking. "-f": force unsafe movements like falling or touching fire
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Enable gravity
|
|
||||||
|
|
||||||
```
|
|
||||||
/move gravity on
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move 125 72 34
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to a center of a block:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move center
|
|
||||||
```
|
|
||||||
|
|
||||||
### `look`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for looking at direction when terrain and movements is enabled
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look <x y z|yaw pitch|up|down|east|west|north|south>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look up
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/look east
|
|
||||||
```
|
|
||||||
|
|
||||||
### `inventory`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for inventory manipulation.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
MCC defines inventories as containers internally, so player's inventory, chests, droppers, dispensers, hoppers, chest minecarts, barrels, furnaces, etc... are all considered a container, and each one of them has it's ID, the words container and inventory can be used interchangeably.
|
|
||||||
|
|
||||||
Inventory has slots and each one of them has an id.
|
|
||||||
|
|
||||||
::: tip **This command DOES NOT physically open a container (eg. chest), for that you need to use [`useblock`](#useblock) command first.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
An example of player inventory with annotated IDs in ASCII art and a list of items:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <action> [action parameters] | /inventory <inventories/i> | /inventory <search/s> <item type> [amount]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **player and container can be simplified with p and c accordingly**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Actions:
|
|
||||||
|
|
||||||
- `click`
|
|
||||||
- `shiftclick`
|
|
||||||
- `drop`
|
|
||||||
|
|
||||||
Show/Preview items in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Click/Shift-Click on an item in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <click|shiftclick> <slot id> [left|right|middle]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **The default click is left click**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Close an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop item(s) from an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id> drop <slot id> <number of items|all>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To drop all items from a slot, you can use: `all`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive <slot id> <item type> <amount>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete <slot id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Show all available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory inventories
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for an item of specified type in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory search <item type>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Show player's inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player
|
|
||||||
```
|
|
||||||
|
|
||||||
Show/Preview items in an inventory using an id:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 3
|
|
||||||
```
|
|
||||||
|
|
||||||
Click on an item in player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player click 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Right-Click on an item in slot number/id `4` in an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 click 4 right
|
|
||||||
```
|
|
||||||
|
|
||||||
Close an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop a single item from a player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 36 1
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop all items from a player's inventory in slot number/id `37`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 37 all
|
|
||||||
```
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive 36 diamondblock 64
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory in slot number/id `36` when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for 10 Slime Blocks in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory s SlimeBlock 10
|
|
||||||
```
|
|
||||||
|
|
||||||
### `debug`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle debug messages, useful for chatbot developers.
|
|
||||||
|
|
||||||
### `help`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Show commands help.
|
|
||||||
|
|
||||||
::: tip **Use "/send /help" for server help**
|
|
||||||
:::
|
|
||||||
|
|
@ -1,28 +0,0 @@
|
||||||
---
|
|
||||||
home: true
|
|
||||||
heroImage: /images/MCC_logo_with_edge.png
|
|
||||||
tagline: 'Minecraft Console Client (MCC) is a lightweight open-source Minecraft Java client implemented in C#'
|
|
||||||
actions:
|
|
||||||
-
|
|
||||||
text: Installation
|
|
||||||
link: ./guide/installation.md
|
|
||||||
type: primary
|
|
||||||
-
|
|
||||||
text: Learn More →
|
|
||||||
link: ./guide/
|
|
||||||
type: secondary
|
|
||||||
actionText:
|
|
||||||
actionLink:
|
|
||||||
features:
|
|
||||||
-
|
|
||||||
title: Chat
|
|
||||||
details: Chat with other people on the server
|
|
||||||
-
|
|
||||||
title: Automation
|
|
||||||
details: Create bots to do automated tasks
|
|
||||||
-
|
|
||||||
title: Supported Versions
|
|
||||||
details: 1.4 - 1.19.2
|
|
||||||
footer: Made by MCC Team with ❤️
|
|
||||||
---
|
|
||||||
|
|
||||||
|
|
@ -1,163 +0,0 @@
|
||||||
# Introduction
|
|
||||||
|
|
||||||
- [About](#about)
|
|
||||||
- [Quick Intro (YouTube Videos)](#quick-intro)
|
|
||||||
- [Features](#features)
|
|
||||||
- [Why Minecraft Console Client?](#why-minecraft-console-client)
|
|
||||||
- [Getting Help](#getting-help)
|
|
||||||
- [Submitting a bug report or an idea/feature-request](#bugs-ideas-feature-requests)
|
|
||||||
- [Important notes on some features](#notes-on-some-features)
|
|
||||||
- [Credits](#credits)
|
|
||||||
- [Disclaimer](#disclaimer)
|
|
||||||
- [License](#license)
|
|
||||||
|
|
||||||
## About
|
|
||||||
|
|
||||||
**Minecraft Console Client (MCC)** is a lightweight cross-platform open-source **Minecraft** TUI client for **Java edition** that allows you to connect to any Minecraft Java server, send commands and receive text messages in a fast and easy way without having to open the main Minecraft game.
|
|
||||||
|
|
||||||
It also provides various automations that you can enable for administration and other purposes, as well as extensible C# API for creating Bots.
|
|
||||||
|
|
||||||
It was originally made by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/), now it's maintained by him and many other contributors from the community.
|
|
||||||
|
|
||||||
## Features
|
|
||||||
|
|
||||||
- Chat
|
|
||||||
|
|
||||||
- Send and receive chat messages
|
|
||||||
- [Log chat history](chat-bots.md#chat-log)
|
|
||||||
- [Get alerted on certain keywords](chat-bots.md#alerts)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
|
|
||||||
- [Anti AFK](chat-bots.md#anti-afk)
|
|
||||||
- [Auto Relog](chat-bots.md#auto-relog)
|
|
||||||
- [Script Scheduler](chat-bots.md#script-scheduler)
|
|
||||||
- [Remote Control](chat-bots.md#remote-control)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
- [Auto Attack](chat-bots.md#auto-attack)
|
|
||||||
- [Auto Fishing](chat-bots.md#auto-fishing)
|
|
||||||
- [Auto Eat](chat-bots.md#auto-eat)
|
|
||||||
- [Auto Craft](chat-bots.md#auto-craft)
|
|
||||||
- [Mailer Bot](chat-bots.md#mailer)
|
|
||||||
- [Auto Drop](chat-bots.md#auto-drop)
|
|
||||||
- [Replay Mod](chat-bots.md#replay-mod)
|
|
||||||
- [API for creating Bots in C#](creating-bots.md#creating-chat-bots)
|
|
||||||
- [Docker Support](installation.md#using-docker)
|
|
||||||
- [Inventory Handling](usage.md#inventory)
|
|
||||||
- [Terrain Traversing](usage.md#move)
|
|
||||||
- Entity Handling
|
|
||||||
|
|
||||||
_NOTE: Some of mentioned features are disabled by default and you will have to turn them on in the configuration file and some may require additional configuration on your part for your specific usage._
|
|
||||||
|
|
||||||
## Why Minecraft Console Client?
|
|
||||||
|
|
||||||
- Easy to use
|
|
||||||
- Helpful community
|
|
||||||
- Open-Source
|
|
||||||
- Fast performance
|
|
||||||
- Cross-Platform
|
|
||||||
- Docker Support
|
|
||||||
- 10 years of continuous development
|
|
||||||
- Active contributors
|
|
||||||
- Widely used
|
|
||||||
|
|
||||||
## Quick Intro
|
|
||||||
|
|
||||||
Don't have time to read through the documentation, we got you, our community has made some simple introduction videos about the **Minecraft Console Client**.
|
|
||||||
|
|
||||||
### The list of the tutorials:
|
|
||||||
|
|
||||||
Installation:
|
|
||||||
|
|
||||||
- [Installation on Windows by Daenges](https://www.youtube.com/watch?v=BkCqOCa2uQw)
|
|
||||||
- [Installation on Windows + Auto AFK and More by Dexter113](https://www.youtube.com/watch?v=FxJ0KFIHDrY)
|
|
||||||
|
|
||||||
Using Commands, Scripts and other features:
|
|
||||||
|
|
||||||
- [Minecraft Console Client | Tutorial | Commands, Scripts, AppVars, Matches, Tasks and C# Scripts by Daenges](https://youtu.be/JbDpwwETEnU)
|
|
||||||
- [Console Client Tutorial - Scripting by Zixxter](https://www.youtube.com/watch?v=XE7rYBFJxn0)
|
|
||||||
|
|
||||||
## Getting Help
|
|
||||||
|
|
||||||
MCC has a community that is willing to help, we have a Discussions section in out Git Hub repository.
|
|
||||||
|
|
||||||
Click [here](https://github.com/MCCTeam/Minecraft-Console-Client/discussions) to access it.
|
|
||||||
|
|
||||||
### Before getting help
|
|
||||||
|
|
||||||
- **Please use the search option here or in the discussion section and read the documentation so we avoid duplicate questions. Thank you!**
|
|
||||||
- **Please be kind and patient, respect others as they're the ones using their time to help you**
|
|
||||||
|
|
||||||
## Bugs, Ideas, Feature Requests
|
|
||||||
|
|
||||||
Bug reporting, idea submitting or feature requesting are done in the [Issues](https://github.com/MCCTeam/Minecraft-Console-Client/issues) section of our [Github repository]([here](https://github.com/MCCTeam/Minecraft-Console-Client)).
|
|
||||||
|
|
||||||
Navigate to the Issues section, search for a bug, idea or a feature using the search option here in the documentation and in the `Issues` section on Git Hub before making your own.
|
|
||||||
|
|
||||||
If you haven't found anything similar, go ahead and click on the `New issue` button, then choose what you want to do.
|
|
||||||
|
|
||||||
If you're reporting a bug, please be descriptive as much as possible, try to explain how to re-create the bug, attack screenshots and logs, make sure that you have [`debugmessages`](configuration.me#debugmessages) set to `true` before sending a bug report or taking a screenshot.
|
|
||||||
|
|
||||||
### Before submitting
|
|
||||||
|
|
||||||
- **Please use the search option here or in the `Issues` section and read the documentation so we avoid duplicate questions/ideas/reports. Thank you!**
|
|
||||||
- **Please be kind, patient and respect others. Thank you!**
|
|
||||||
|
|
||||||
## Notes on some features
|
|
||||||
|
|
||||||
### Inventory, Terrain and Entity Handling
|
|
||||||
|
|
||||||
Inventory handling is currently not supported in versions: `1.4.6 - 1.9`
|
|
||||||
|
|
||||||
Terrain handling is currently not supported in versions: `1.4.6 - 1.6`
|
|
||||||
|
|
||||||
Entity handling is currently not supported in versions: `1.4.6 - 1.9` (but `1.8` and `1.9` are being worked on, almost at the working state, only `EntityMetadata` packet remains to be fixed)
|
|
||||||
|
|
||||||
There features might not always be implemented in the latest version of the game, since they're often subjected to major changes by Mojang, and we need some time to figure out what has changed and to implement the required changes.
|
|
||||||
|
|
||||||
If there was a major game update, and the MCC hasn't been updated to support these features, if you're a programmer, feel free to contribute to the project.
|
|
||||||
|
|
||||||
## Credits
|
|
||||||
|
|
||||||
_Project initiated by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/)._
|
|
||||||
|
|
||||||
Many features would not have been possible without the help of our talented community:
|
|
||||||
|
|
||||||
**Maintainers**
|
|
||||||
|
|
||||||
ORelio, ReinforceZwei, milutinke, BruceChenQAQ, bradbyte
|
|
||||||
|
|
||||||
**Ideas**
|
|
||||||
|
|
||||||
ambysdotnet, Awpocalypse, azoundria, bearbear12345, bSun0000, Cat7373, dagonzaros, Dids, Elvang, fuckofftwice, GeorgH93, initsuj, JamieSinn, joshbean39, LehmusFIN, maski, medxo, mobdon, MousePak, TNT-UP, TorchRJ, yayes2, Yoann166, ZizzyDizzyMC and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BIdea%5D+is%3Aopen).
|
|
||||||
|
|
||||||
**Bug Hunters**
|
|
||||||
|
|
||||||
1092CQ, ambysdotnet, bearbear12345, c0dei, Cat7373, Chtholly, Darkaegis, dbear20, DigitalSniperz, doranchak, drXor, FantomHD, gerik43, ibspa, iTzMrpitBull, JamieSinn, k3ldon, KenXeiko, link3321, lyze237, mattman00000, Nicconyancat, Pokechu22, ridgewell, Ryan6578, Solethia, TNT-UP, TorchRJ, TRTrident, WeedIsGood, xp9kus, Yoann166 and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BBUG%5D+is%3Aopen+).
|
|
||||||
|
|
||||||
**Contributors**
|
|
||||||
|
|
||||||
Allyoutoo, Aragas, Bancey, bearbear12345, corbanmailloux, Daenges, dbear20, dogwatch, initsuj, JamieSinn, justcool393, lokulin, maxpowa, medxo, milutinke, Pokechu22, ReinforceZwei, repository, TheMeq, TheSnoozer, vkorn, v1RuX, yunusemregul, ZizzyDizzyMC, BruceChenQAQ, bradbyte _... And all the [GitHub contributors](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors)!_
|
|
||||||
|
|
||||||
**Libraries:**
|
|
||||||
|
|
||||||
Minecraft Console Client also borrows code from the following libraries:
|
|
||||||
|
|
||||||
| Name | Purpose | Author | License |
|
|
||||||
| ----------- | ---------------- | ---------------- | ------- |
|
|
||||||
| Biko | Proxy handling | Benton Stark | MIT |
|
|
||||||
| Heijden.Dns | DNS SRV Lookup | Geoffrey Huntley | MIT |
|
|
||||||
| DotNetZip | Zlib compression | Dino Chiesa | MS-PL |
|
|
||||||
|
|
||||||
## Disclaimer
|
|
||||||
|
|
||||||
Even if everything should work, we are not responsible for any damage this app could cause to your computer or your server. This app does not steal your password. If you don't trust it, don't use it or check & compile from the source code.
|
|
||||||
|
|
||||||
Also, remember that when you connect to a server with this program, you will appear where you left the last time. This means that **you can die if you log in in an unsafe place on a survival server!** Use the script scheduler bot to send a teleport command after logging in.
|
|
||||||
|
|
||||||
We remind you that **you may get banned** by your server for using this program. Use accordingly with server rules.
|
|
||||||
|
|
||||||
## License
|
|
||||||
|
|
||||||
Minecraft Console Client is a totally free of charge, open source project. The source code is available at [Github Repository](https://github.com/MCCTeam/Minecraft-Console-Client)
|
|
||||||
|
|
||||||
Unless specifically stated, source code is from the MCC Team or Contributors, and available under CDDL-1.0. More info about CDDL-1.0: [http://qstuff.blogspot.fr/2007/04/why-cddl.html](http://qstuff.blogspot.fr/2007/04/why-cddl.html) Full license at [http://opensource.org/licenses/CDDL-1.0](http://opensource.org/licenses/CDDL-1.0)
|
|
||||||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1,76 +0,0 @@
|
||||||
# Contributing
|
|
||||||
|
|
||||||
At this moment this page needs to be created.
|
|
||||||
|
|
||||||
For now you can use our article from the [Git Hub repository Wiki](https://github.com/MCCTeam/Minecraft-Console-Client/wiki/Update-console-client-to-new-version) written by [ReinforceZwei](https://github.com/ReinforceZwei).
|
|
||||||
|
|
||||||
## Translations
|
|
||||||
|
|
||||||
MCC now supports the following languages (Alphabetical order) :
|
|
||||||
* `de.ini` : Deutsch - German
|
|
||||||
* **`en.ini` : English - English**
|
|
||||||
* `fr.ini` : Français (France) - French
|
|
||||||
* `ru.ini` : Русский (Russkiy) - Russian
|
|
||||||
* `vi.ini` : Tiếng Việt (Việt Nam) - Vietnamese
|
|
||||||
* `zh-Hans.ini` : 简体中文 - Chinese Simplified
|
|
||||||
* `zh-Hant.ini` : 繁體中文 - Chinese Traditional
|
|
||||||
|
|
||||||
### Add new translation
|
|
||||||
|
|
||||||
1. First you need to get the name of the translated file.
|
|
||||||
* Visit [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c) and find the first occurrence of the language you need to translate in the table below.
|
|
||||||
* Use the language code of the row in the table as the name of the translation file.
|
|
||||||
* For example:
|
|
||||||
* `English` -> row `English 0x0009` -> `en` -> `en.ini`
|
|
||||||
* `Chinese (Traditional)` -> row `Chinese (Traditional) 0x7C04` -> `zh-Hant` -> `zh-Hant.ini`
|
|
||||||
|
|
||||||
2. Which system languages are recommended to use this translation?
|
|
||||||
* Still check the table in [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c), one language may have multiple rows.
|
|
||||||
* You will need to indicate which language codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `de.ini` applies to `de`, `de-AT`, `de-BE`, `de-DE`, ...
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh-Hans`, `zh`, `zh-CN`, `zh-SG`.
|
|
||||||
|
|
||||||
3. Which game languages are recommended to use this translation?
|
|
||||||
* Check out the table in [this link](https://github.com/MCCTeam/Minecraft-Console-Client/discussions/2239), where the `Locale Code` column indicates the language code in minecraft.
|
|
||||||
* You will need to indicate which locale codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `fr.ini` applies to `fr_ca`, `fr_fr`.
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh_cn`.
|
|
||||||
|
|
||||||
4. Add the new translation to the code. (Optional)
|
|
||||||
* **If you are not familiar with programming, you can skip this step and just write the above information in your PR or issue.**
|
|
||||||
* Add the newly created translation file `xx.ini` to the project `/Resources/lang/xx.ini`.
|
|
||||||
* Open `/DefaultConfigResource.resx`.
|
|
||||||
* Click `Add Resources`.
|
|
||||||
* Choose `/Resources/lang/xx.ini`.
|
|
||||||
* Rename the added resource file in `/DefaultConfigResource.resx` to `Translation_xx`.
|
|
||||||
* Open `/Translations.cs`.
|
|
||||||
* Find `public static Tuple<string, string[]> GetTranslationPriority();`
|
|
||||||
* Update the mapping of system language codes to translation files.
|
|
||||||
* Find `public static string[] GetTranslationPriority(string gameLanguage);`
|
|
||||||
* Update the mapping of game locale code to translation files.
|
|
||||||
|
|
||||||
5. Follow the section "Update existing translation".
|
|
||||||
|
|
||||||
### Update existing translation
|
|
||||||
|
|
||||||
1. Visit [the lang folder](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/Resources/lang), download `en.ini` and the language you want to translate(`xx.ini`).
|
|
||||||
|
|
||||||
2. Compare `en.ini` and `xx.ini` and update outdated or non-existent entries in `xx.ini`.
|
|
||||||
|
|
||||||
3. Once you finished the translation work, submit a pull request or send us the file through an [Issue](https://github.com/MCCTeam/Minecraft-Console-Client/issues) in case you are not familiar with Git.
|
|
||||||
|
|
||||||
### Translate README.md
|
|
||||||
|
|
||||||
1. Get the English version of the README.md from [here](https://raw.githubusercontent.com/MCCTeam/Minecraft-Console-Client/master/README.md).
|
|
||||||
|
|
||||||
2. See `Add new translation -> 1.` for the target language code. Assume it is `xx`.
|
|
||||||
|
|
||||||
3. Complete the translation according to the English README.md and name the translated version as `README-xx.md`.
|
|
||||||
|
|
||||||
4. In the English README, above the "About" section, add the name of the language and a hyperlink to `README-xx.md`.
|
|
||||||
|
|
||||||
## Contributors
|
|
||||||
|
|
||||||
[Check out our contributors on Github](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors).
|
|
||||||
|
|
@ -1,177 +0,0 @@
|
||||||
# Creating Chat Bots
|
|
||||||
|
|
||||||
- [Notes](#notes)
|
|
||||||
- [Requirements](#requirements)
|
|
||||||
- [Quick Introduction](#quick-introduction)
|
|
||||||
- [Examples](#examples)
|
|
||||||
- [C# API](#c#-api)
|
|
||||||
|
|
||||||
## Notes
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For now this page contains only the bare basics of the Chat Bot API, enough of details to teach you how to make basic Chat Bots. For more details you need to take a look at the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) and [Examples](#examples). This page will be improved in the future.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a rich C# API which allows you to create Chat Bots (effectively plugins) which can help you create complex automations which normal scripts may not be able to do.
|
|
||||||
|
|
||||||
## Requirements
|
|
||||||
|
|
||||||
- A basic knowledge of C# programming language
|
|
||||||
- A text editor
|
|
||||||
|
|
||||||
If you're not familiar with the C# programming language, we suggest taking a look at the following resources:
|
|
||||||
|
|
||||||
Crash courses:
|
|
||||||
|
|
||||||
- [C# Crash Course playlist by Teddy Smit](https://www.youtube.com/watch?v=67oWw9TanOk&list=PL82C6-O4XrHfoN_Y4MwGvJz5BntiL0z0D)
|
|
||||||
|
|
||||||
More in-depth:
|
|
||||||
|
|
||||||
- [Learn C# Youtube Playlist by Microsoft](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVxKLQCHpiUWun7vlJJvUiN)
|
|
||||||
- [Getting started with C# (An index of tutorials and the documentation) by Microsoft](https://docs.microsoft.com/en-us/dotnet/csharp/)
|
|
||||||
|
|
||||||
## Quick Introduction
|
|
||||||
|
|
||||||
This introduction assumes that you have the basic knowledge of C#.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Here we will use terms Chat Bot and Script interchangeably**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Create a new empty file and name it `ExampleChatBot.cs` in the same folder where you have your MCC installed.
|
|
||||||
|
|
||||||
Paste the following example code:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
MCC. LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
|
|
||||||
// The code and comments above are defining a "Script Metadata" section
|
|
||||||
|
|
||||||
// Every single chat bot (script) must be a class which extends the ChatBot class.
|
|
||||||
// Your class must be instantiates in the "Script Metadata" section and passed to MCC. LoadBot function.
|
|
||||||
class ExampleChatBot : ChatBot
|
|
||||||
{
|
|
||||||
// This method will be called when the script has been initialized for the first time, it's called only once
|
|
||||||
// Here you can initialize variables, eg. Dictionaries. etc...
|
|
||||||
public override void Initialize()
|
|
||||||
{
|
|
||||||
LogToConsole("An example Chat Bot has been initialized!");
|
|
||||||
}
|
|
||||||
|
|
||||||
// This is a function that will be run when we get a chat message from a server
|
|
||||||
// In this example it just detects the type of the message and prints it out
|
|
||||||
public override void GetText(string text)
|
|
||||||
{
|
|
||||||
string message = "";
|
|
||||||
string username = "";
|
|
||||||
text = GetVerbatim(text);
|
|
||||||
|
|
||||||
if (IsPrivateMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has sent you a private message: " + message);
|
|
||||||
}
|
|
||||||
else if (IsChatMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has said: " + message);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
Start MCC, connect to a server and run the following internal command: `/script ExampleChatBot.cs`.
|
|
||||||
|
|
||||||
If you did everything right you should see: `[Example Chat Bot] An example Chat Bot has been initialised!` message appear in your console log.
|
|
||||||
|
|
||||||
### Structure of Chat Bots
|
|
||||||
|
|
||||||
Chat Bot (Script) structure is the following:
|
|
||||||
|
|
||||||
```
|
|
||||||
<script metadata>
|
|
||||||
<chat bot class>
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** is a section with a custom format that mixes in C# with our format using comments. Every single Chat Bot (Script) must have this section at the beginning in order to work.
|
|
||||||
|
|
||||||
### Script Metadata Format
|
|
||||||
|
|
||||||
`//MCCScript 1.0` marks the beginning of the **Script Metadata** section, this must always be on the first line or the Chat Bot (Script) will not load and will throw an error.
|
|
||||||
|
|
||||||
`//MCCScript Extensions` marks the end of the **Script Metadata** section, this must be defined before a Chat Bot (Script) class.
|
|
||||||
|
|
||||||
In order for your Chat Bot (Script) to properly load in-between the `//MCCScript 1.0` and the `//MCCScript Extensions` lines you must instantiate your Chat Bot (Script) class and pass it to the `MCC.LoadBot` function.
|
|
||||||
|
|
||||||
Example code:
|
|
||||||
|
|
||||||
```
|
|
||||||
MCC.LoadBot(new YourChatBotClassNameHere());
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** section allows for including C# packages and libraries with: `//using <namespace>` and `/dll <dll name>`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Avoid adding whitespace between `//` and keywords**
|
|
||||||
:::
|
|
||||||
|
|
||||||
By the default the following packages are loaded:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
using System;
|
|
||||||
using System. Collections.Generic;
|
|
||||||
using System. Text.RegularExpressions;
|
|
||||||
using System. Linq;
|
|
||||||
using System. Text;
|
|
||||||
using System. IO;
|
|
||||||
using System. Net;
|
|
||||||
using System. Threading;
|
|
||||||
using MinecraftClient;
|
|
||||||
using MinecraftClient. Mapping;
|
|
||||||
using MinecraftClient.
|
|
||||||
```
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//using System. Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
```
|
|
||||||
|
|
||||||
Full Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
//using System. Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
|
|
||||||
MCC. LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
```
|
|
||||||
|
|
||||||
### Chat Bot Class
|
|
||||||
|
|
||||||
After the end of the **Script Metadata** section, you basically can define any number of classes you like, the only limitation is that the main class of your Chat Bot (Script) must extend `ChatBot` class.
|
|
||||||
|
|
||||||
There are no required methods, everything is optional.
|
|
||||||
|
|
||||||
When the Chat Bot (Script) has been initialized for the first time the `Initialize` method will be called. In it you can initialize variables, eg. Dictionaries, etc..
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For allocating resources like a database connection, we recommend allocating them in `AfterGameJoined` and freeing them in `OnDisconnect`** :::.
|
|
||||||
|
|
||||||
## Examples
|
|
||||||
|
|
||||||
You can find a lot of examples in our Git Hub Repository at [ChatBots](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/ChatBots) and [config](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/config).
|
|
||||||
|
|
||||||
## C# API
|
|
||||||
|
|
||||||
As of the time of writing, the C# API has been changed in forks that are yet to be merged, so for now you can use the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) for reference.
|
|
||||||
|
|
||||||
Each method is well documented with standard C# documentation comments.
|
|
||||||
|
|
||||||
In the future we will make a script to auto-generate this section based on the documentation in the code.
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -1,958 +0,0 @@
|
||||||
# Usage
|
|
||||||
|
|
||||||
How to run the program:
|
|
||||||
|
|
||||||
- [Running on Windows](#windows)
|
|
||||||
- [Running on Linux, macOS](#linux-macos)
|
|
||||||
- [Running using Docker](#docker)
|
|
||||||
|
|
||||||
Using the command line parameters:
|
|
||||||
|
|
||||||
- [Examples](#quick-usage-of-mcc-with-examples)
|
|
||||||
- [Command line parameters](#command-line-parameters)
|
|
||||||
- [Internal commands](#internal-commands)
|
|
||||||
|
|
||||||
## Windows
|
|
||||||
|
|
||||||
Simply run `MinecraftClient.exe`
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Windows it's best using [Windows Terminal](https://docs.microsoft.com/en-us/windows/terminal/install) for the best experience and looks. Some features like emojis in the [`/chunk`](#chunk) command do not work in CMD or Powershell 5**
|
|
||||||
:::
|
|
||||||
|
|
||||||
## Linux, macOS
|
|
||||||
|
|
||||||
To run the client you need to type the following command in your terminal emulator:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
./MinecraftClient
|
|
||||||
```
|
|
||||||
|
|
||||||
If you want to keep it running in the background you can use `screen` (Linux only) Example:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Start the screen
|
|
||||||
screen -S mcc
|
|
||||||
|
|
||||||
# Run it
|
|
||||||
./MinecraftClient
|
|
||||||
|
|
||||||
# Detach from the screen by pressing CTRL + A + D
|
|
||||||
|
|
||||||
# Re-attach if you want to have accces again
|
|
||||||
screen -r mcc
|
|
||||||
```
|
|
||||||
|
|
||||||
_Learn more on how to use the screen command: [YouTube](https://www.youtube.com/watch?v=_ZJiEX4rmN4)_
|
|
||||||
|
|
||||||
## Docker
|
|
||||||
|
|
||||||
See [Run using Docker](./guide/installation.md#using-docker)
|
|
||||||
|
|
||||||
## Command-line usage
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a plethora of useful command line parameters, here you can learn about them.
|
|
||||||
|
|
||||||
### For people not familiar with the command line
|
|
||||||
|
|
||||||
For people who are not familiar with the usage of programs in the command line (terminal emulators), here we will explain what every single thing means, if you're already experienced you can skip this.
|
|
||||||
|
|
||||||
In command line (terminal emulators) you can run programs by specifying their name and hitting enter, usually programs have additional way of being configured, started or provided some additional data in a different manner, this is achieved by using command line parameters.
|
|
||||||
|
|
||||||
Command line parameters are written after the name of the program, they're separated by spaces and they can have a few different formats, examples:
|
|
||||||
|
|
||||||
- `someparameter`
|
|
||||||
- `-some-parameter`
|
|
||||||
- `--some-other-parameter`
|
|
||||||
- `--some-setting="some value"`
|
|
||||||
- `-a=5`
|
|
||||||
|
|
||||||
Parameters with a single dash (`-`) are usually used for a single letter (short-hand) parameters, while the ones with a double dash (`--`) are being used for parameters with a longer/full name.
|
|
||||||
|
|
||||||
When you are reading examples, you will often see something like this: `<something here>`, this means that this is a place holder and it should be changed with some value, excluding the `<` and the `>`.
|
|
||||||
|
|
||||||
For example `<username>` you need to change to an username of your liking, example: `notch` (`<` and `>` should not be included).
|
|
||||||
|
|
||||||
`[` and `]` mean that a parameter is an optional one.
|
|
||||||
|
|
||||||
They also can hold some values, example from the MCC:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
```
|
|
||||||
|
|
||||||
When a parameter has a textual value that includes one more spaces, you will need to wrap it the value in double quotes (`"`), example: `--some-parameter="some text here with spaces in it"`
|
|
||||||
|
|
||||||
Here is an example for using a `--help` command line parameter for MCC that will print out a page on how to use MCC from the command line:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
```
|
|
||||||
|
|
||||||
### Quick usage of MCC with examples
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Linux and macOS, you need to type: `./MinecraftClient` instead of `MinecraftClient.exe`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
MinecraftClient.exe <username> <password> <server>
|
|
||||||
MinecraftClient.exe <username> <password> <server> "/mycommand"
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
MinecraftClient.exe --section.setting=value [--other settings]
|
|
||||||
MinecraftClient.exe <settings-file.ini> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Logging in as a user: notch, with a password: password123 onto a server with the ip: mc.someserver.com:25565
|
|
||||||
MinecraftClient.exe notch password123 mc.someserver.com:25565
|
|
||||||
|
|
||||||
# Overriding a setting from MinecraftClient.ini using a command line parameter
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
|
|
||||||
# Providing a custom settings ini file and overriding a language to Chinese
|
|
||||||
MinecraftClient.exe CustomSettingsFile.ini --language=zh
|
|
||||||
```
|
|
||||||
|
|
||||||
### Rules of using the command line parameters
|
|
||||||
|
|
||||||
You can mix and match arguments by following theses rules:
|
|
||||||
|
|
||||||
- First positional argument may be either the login or a settings file
|
|
||||||
- Other positional arguments are read in order: login, password, server, command
|
|
||||||
- Arguments starting with `--` can be in any order and position
|
|
||||||
|
|
||||||
Examples and further explanations:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically connect you to the chosen server.
|
|
||||||
- You may omit password and/or server to specify e.g. only the login
|
|
||||||
- To specify a server but ask password interactively, use `""` as password.
|
|
||||||
- To specify offline mode with no password, use `-` as password.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server> "/mycommand"
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically send `/mycommand` to the server and close.
|
|
||||||
- To send several commands and/or stay connected, use the 1ScriptScheduler1 bot instead.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will load the specified configuration file
|
|
||||||
- If the file contains login / password / server ip, it will automatically connect.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Specify settings on the command-line, see possible value in the configuration file
|
|
||||||
- Use `--section.setting=value` for settings outside the `[Main]` section
|
|
||||||
- Example: `--antiafk.enabled=true` for enabling the `AntiAFK` bot
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini> <login> <password> <server> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Load the specified configuration file and override some settings from the file
|
|
||||||
|
|
||||||
## 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`.
|
|
||||||
|
|
||||||
In scripts and remote control, no slash is needed to perform the command, eg. `quit`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Some commands may not be documented yet or are defined in description of Chat Bots, use `/help` to list them all, or you can contribute to this page.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `animation`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Swing your main or off hand.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/animation <mainhand|offhand>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bed`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to make the bot sleep easily, all about sleeping in one command.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `bed leave|sleep <x> <y> <z>|sleep <radius>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Leave a bed:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed leave
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed on 124 84 76:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 124 84 76
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep ~ ~ ~-2
|
|
||||||
```
|
|
||||||
|
|
||||||
Automatically find a bed in radius of 50 blocks and sleep in it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 50
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bots`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to list and unload a specific bot or all bots. Useful when debugging and developing scripts.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots <list|unload <bot name|all>>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Unload a bot called CustomScript
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload CustomScript
|
|
||||||
```
|
|
||||||
|
|
||||||
Unload all bots
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload all
|
|
||||||
```
|
|
||||||
|
|
||||||
### `changeslot`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Change your selected slot in the hotbar.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/changeslot <1-9>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `chunk`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Displays the chunk loading status in a nice way.
|
|
||||||
|
|
||||||
::: warning **To use this feature you need to enable the [Terrain and Movements](configuration.md#terrainandmovements)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need a terminal with emoji support, like Powershell 7, Windows Terminal or Alacritty, if you do not want emoji support and want to use cmd or powershell 5, disable emojis with: [`enableemoji`](configuration.md#enableemoji)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/chunk status [chunkX chunkZ|locationX locationY locationZ]
|
|
||||||
```
|
|
||||||
|
|
||||||
How it looks:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
### `dig`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Dig a block on a specific coordinate.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig 127 63 12
|
|
||||||
```
|
|
||||||
|
|
||||||
Using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig ~ ~-1 ~2
|
|
||||||
```
|
|
||||||
|
|
||||||
### `dropitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Drop all items of a specific type from your inventory.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem <itemtype>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All item types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem diamond
|
|
||||||
```
|
|
||||||
|
|
||||||
### `entity`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Attack an entity, use an entity or get a list of entities around you.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Entity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity <id|entitytype> <attack|use>
|
|
||||||
```
|
|
||||||
|
|
||||||
Get a list of entities around you:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All entity types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Mapping/EntityType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Attack a Zombie:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity Zombie attack
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execif`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute a command if a specific condition is met.
|
|
||||||
|
|
||||||
The condition is a C# expression and the local variables you set using [`set`](#set), [`setrnd`](#setrnd) or the configuration file can be used. The condition is always returned as a boolean, so only comparison can be done, if needed cast the expression result to bool.
|
|
||||||
|
|
||||||
Also the instance of MCC is available with `MCC.`.
|
|
||||||
|
|
||||||
::: tip **All local variables are treated as strings in the app, when comparing their values, you can use `<variable> == "<value>"`, or better use [`.Equals`](https://www.programiz.com/csharp-programming/library/string/equals) method**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `/execif <condition (C# expression)> ---> <command>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Setting a variable and using it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test=Something
|
|
||||||
/execif test == "Something" ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test2=1
|
|
||||||
/execif test2 == "1" ---> send Success 2!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Basic C# expression:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 + 2 + 3 == 6 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using MCC class:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif MCC. GetHealth() == 20.0 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using in combination with [`execmulti`](#execmulti):
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 == 1 ---> execmulti send 1 -> send 2 -> send 3
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execmulti`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute multiple commands in succession on a single line, useful for debugging or when using [`execif`](#execif)
|
|
||||||
|
|
||||||
Commands are separated by `->`
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `execmulti <command 1> -> <command 2> -> <command 3> -> ...`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/execmulti send 1 -> send 2 -> send 3 -> sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `quit`
|
|
||||||
|
|
||||||
- **Alias:** `exit`
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect from the server and close the application
|
|
||||||
|
|
||||||
### `reco`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect and reconnect to the server
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reco [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `reload`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Reloads settings from MinecraftClient.ini and Chat Bots.
|
|
||||||
|
|
||||||
::: tip **Some settings won't be reloaded since they are used before the client initialization. Also, settings provided by the command line paramteres will be overriden. This also does not reload the ReplayBot due to technical limitations.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reload
|
|
||||||
```
|
|
||||||
|
|
||||||
### `connect`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Go to the given server and resume the script
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/connect <server> [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`<server>` is either a server IP or a server alias defined in servers file, for more info check out [serverlist](configuration.html#serverlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `script`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Run a script containing a list of commands
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/script <script name>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `send`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Send a message or a command to the server
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/send <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `respawn`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use this to respawn if you are dead (like clicking "respawn" in-game)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/respawn
|
|
||||||
```
|
|
||||||
|
|
||||||
### `log`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Display some text in the console (useful for scripts)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/log <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
- Example:
|
|
||||||
|
|
||||||
```
|
|
||||||
/log this is some text
|
|
||||||
```
|
|
||||||
|
|
||||||
### `list`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
List players logged in to the server (uses tab list info sent by server)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/list
|
|
||||||
```
|
|
||||||
|
|
||||||
### `set`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a value which can be used as `%variable%` in further commands
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set <variable>=<value>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set abc=123
|
|
||||||
```
|
|
||||||
|
|
||||||
### `setrnd`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a `%variable%` randomly to one of the provided values
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> string1 "\"string2\" string3"
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> -7to10
|
|
||||||
```
|
|
||||||
|
|
||||||
(Set a `%variable%` to a number from -7 to 9)
|
|
||||||
|
|
||||||
### `sneak`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle sneaking.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/Sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `tps`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Get the server TPS (Ticks Per Second).
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/tps
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use item in the hand, this can be used to do a right click on items which open menus on servers.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useitem
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useblock`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Place a block from a hand on a specific coordinate or open an inventory:
|
|
||||||
|
|
||||||
- chest/trap chest
|
|
||||||
- furnace
|
|
||||||
- brewing stand
|
|
||||||
- dispenser/dropper
|
|
||||||
- hopper
|
|
||||||
- shulker
|
|
||||||
- loom
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **Not all inventories have a GUI representation in an ASCII art format.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock 43 72 7
|
|
||||||
```
|
|
||||||
|
|
||||||
### `follow`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Make the bot follow a player.
|
|
||||||
|
|
||||||
::: tip **This command is avaliable only with [Follow Player](chat-bots.md#follow-player) Chat Bot enabled.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Enity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow <player name|stop>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow milutinke
|
|
||||||
```
|
|
||||||
|
|
||||||
### `wait`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Wait X ticks (10 ticks = ~1 second. Only for scripts)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait <time>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait 20
|
|
||||||
```
|
|
||||||
|
|
||||||
### `move`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for moving when terrain and movements feature is enabled.
|
|
||||||
|
|
||||||
::: tip **You need to have [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Terrain and Movements](configuration.md#terrainandmovements) is currently not supported in `1.4.6 - 1.6`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/move <on|off|get|up|down|east|west|north|south|center|x y z|gravity [on|off]> [-f]: walk or start walking. "-f": force unsafe movements like falling or touching fire
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Enable gravity
|
|
||||||
|
|
||||||
```
|
|
||||||
/move gravity on
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move 125 72 34
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to a center of a block:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move center
|
|
||||||
```
|
|
||||||
|
|
||||||
### `look`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for looking at direction when terrain and movements is enabled
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look <x y z|yaw pitch|up|down|east|west|north|south>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look up
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/look east
|
|
||||||
```
|
|
||||||
|
|
||||||
### `inventory`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for inventory manipulation.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
MCC defines inventories as containers internally, so player's inventory, chests, droppers, dispensers, hoppers, chest minecarts, barrels, furnaces, etc... are all considered a container, and each one of them has it's ID, the words container and inventory can be used interchangeably.
|
|
||||||
|
|
||||||
Inventory has slots and each one of them has an id.
|
|
||||||
|
|
||||||
::: tip **This command DOES NOT physically open a container (eg. chest), for that you need to use [`useblock`](#useblock) command first.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
An example of player inventory with annotated IDs in ASCII art and a list of items:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <action> [action parameters] | /inventory <inventories/i> | /inventory <search/s> <item type> [amount]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **player and container can be simplified with p and c accordingly**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Actions:
|
|
||||||
|
|
||||||
- `click`
|
|
||||||
- `shiftclick`
|
|
||||||
- `drop`
|
|
||||||
|
|
||||||
Show/Preview items in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Click/Shift-Click on an item in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <click|shiftclick> <slot id> [left|right|middle]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **The default click is left click**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Close an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop item(s) from an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id> drop <slot id> <number of items|all>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To drop all items from a slot, you can use: `all`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive <slot id> <item type> <amount>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete <slot id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Show all available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory inventories
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for an item of specified type in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory search <item type>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Show player's inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player
|
|
||||||
```
|
|
||||||
|
|
||||||
Show/Preview items in an inventory using an id:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 3
|
|
||||||
```
|
|
||||||
|
|
||||||
Click on an item in player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player click 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Right-Click on an item in slot number/id `4` in an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 click 4 right
|
|
||||||
```
|
|
||||||
|
|
||||||
Close an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop a single item from a player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 36 1
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop all items from a player's inventory in slot number/id `37`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 37 all
|
|
||||||
```
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive 36 diamondblock 64
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory in slot number/id `36` when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for 10 Slime Blocks in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory s SlimeBlock 10
|
|
||||||
```
|
|
||||||
|
|
||||||
### `debug`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle debug messages, useful for chatbot developers.
|
|
||||||
|
|
||||||
### `help`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Show commands help.
|
|
||||||
|
|
||||||
::: tip **Use "/send /help" for server help**
|
|
||||||
:::
|
|
||||||
|
|
@ -1,28 +0,0 @@
|
||||||
---
|
|
||||||
home: true
|
|
||||||
heroImage: /images/MCC_logo_with_edge.png
|
|
||||||
tagline: 'Minecraft Console Client (MCC) is a lightweight open-source Minecraft Java client implemented in C#'
|
|
||||||
actions:
|
|
||||||
-
|
|
||||||
text: Installation
|
|
||||||
link: ./guide/installation.md
|
|
||||||
type: primary
|
|
||||||
-
|
|
||||||
text: Learn More →
|
|
||||||
link: ./guide/
|
|
||||||
type: secondary
|
|
||||||
actionText:
|
|
||||||
actionLink:
|
|
||||||
features:
|
|
||||||
-
|
|
||||||
title: Chat
|
|
||||||
details: Chat with other people on the server
|
|
||||||
-
|
|
||||||
title: Automation
|
|
||||||
details: Create bots to do automated tasks
|
|
||||||
-
|
|
||||||
title: Supported Versions
|
|
||||||
details: 1.4 - 1.19.2
|
|
||||||
footer: Made by MCC Team with ❤️
|
|
||||||
---
|
|
||||||
|
|
||||||
|
|
@ -1,163 +0,0 @@
|
||||||
# Introduction
|
|
||||||
|
|
||||||
- [About](#about)
|
|
||||||
- [Quick Intro (YouTube Videos)](#quick-intro)
|
|
||||||
- [Features](#features)
|
|
||||||
- [Why Minecraft Console Client?](#why-minecraft-console-client)
|
|
||||||
- [Getting Help](#getting-help)
|
|
||||||
- [Submitting a bug report or an idea/feature-request](#bugs-ideas-feature-requests)
|
|
||||||
- [Important notes on some features](#notes-on-some-features)
|
|
||||||
- [Credits](#credits)
|
|
||||||
- [Disclaimer](#disclaimer)
|
|
||||||
- [License](#license)
|
|
||||||
|
|
||||||
## About
|
|
||||||
|
|
||||||
**Minecraft Console Client (MCC)** is a lightweight cross-platform open-source **Minecraft** TUI client for **Java edition** that allows you to connect to any Minecraft Java server, send commands and receive text messages in a fast and easy way without having to open the main Minecraft game.
|
|
||||||
|
|
||||||
It also provides various automations that you can enable for administration and other purposes, as well as extensible C# API for creating Bots.
|
|
||||||
|
|
||||||
It was originally made by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/), now it's maintained by him and many other contributors from the community.
|
|
||||||
|
|
||||||
## Features
|
|
||||||
|
|
||||||
- Chat
|
|
||||||
|
|
||||||
- Send and receive chat messages
|
|
||||||
- [Log chat history](chat-bots.md#chat-log)
|
|
||||||
- [Get alerted on certain keywords](chat-bots.md#alerts)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
|
|
||||||
- [Anti AFK](chat-bots.md#anti-afk)
|
|
||||||
- [Auto Relog](chat-bots.md#auto-relog)
|
|
||||||
- [Script Scheduler](chat-bots.md#script-scheduler)
|
|
||||||
- [Remote Control](chat-bots.md#remote-control)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
- [Auto Attack](chat-bots.md#auto-attack)
|
|
||||||
- [Auto Fishing](chat-bots.md#auto-fishing)
|
|
||||||
- [Auto Eat](chat-bots.md#auto-eat)
|
|
||||||
- [Auto Craft](chat-bots.md#auto-craft)
|
|
||||||
- [Mailer Bot](chat-bots.md#mailer)
|
|
||||||
- [Auto Drop](chat-bots.md#auto-drop)
|
|
||||||
- [Replay Mod](chat-bots.md#replay-mod)
|
|
||||||
- [API for creating Bots in C#](creating-bots.md#creating-chat-bots)
|
|
||||||
- [Docker Support](installation.md#using-docker)
|
|
||||||
- [Inventory Handling](usage.md#inventory)
|
|
||||||
- [Terrain Traversing](usage.md#move)
|
|
||||||
- Entity Handling
|
|
||||||
|
|
||||||
_NOTE: Some of mentioned features are disabled by default and you will have to turn them on in the configuration file and some may require additional configuration on your part for your specific usage._
|
|
||||||
|
|
||||||
## Why Minecraft Console Client?
|
|
||||||
|
|
||||||
- Easy to use
|
|
||||||
- Helpful community
|
|
||||||
- Open-Source
|
|
||||||
- Fast performance
|
|
||||||
- Cross-Platform
|
|
||||||
- Docker Support
|
|
||||||
- 10 years of continuous development
|
|
||||||
- Active contributors
|
|
||||||
- Widely used
|
|
||||||
|
|
||||||
## Quick Intro
|
|
||||||
|
|
||||||
Don't have time to read through the documentation, we got you, our community has made some simple introduction videos about the **Minecraft Console Client**.
|
|
||||||
|
|
||||||
### The list of the tutorials:
|
|
||||||
|
|
||||||
Installation:
|
|
||||||
|
|
||||||
- [Installation on Windows by Daenges](https://www.youtube.com/watch?v=BkCqOCa2uQw)
|
|
||||||
- [Installation on Windows + Auto AFK and More by Dexter113](https://www.youtube.com/watch?v=FxJ0KFIHDrY)
|
|
||||||
|
|
||||||
Using Commands, Scripts and other features:
|
|
||||||
|
|
||||||
- [Minecraft Console Client | Tutorial | Commands, Scripts, AppVars, Matches, Tasks and C# Scripts by Daenges](https://youtu.be/JbDpwwETEnU)
|
|
||||||
- [Console Client Tutorial - Scripting by Zixxter](https://www.youtube.com/watch?v=XE7rYBFJxn0)
|
|
||||||
|
|
||||||
## Getting Help
|
|
||||||
|
|
||||||
MCC has a community that is willing to help, we have a Discussions section in out Git Hub repository.
|
|
||||||
|
|
||||||
Click [here](https://github.com/MCCTeam/Minecraft-Console-Client/discussions) to access it.
|
|
||||||
|
|
||||||
### Before getting help
|
|
||||||
|
|
||||||
- **Please use the search option here or in the discussion section and read the documentation so we avoid duplicate questions. Thank you!**
|
|
||||||
- **Please be kind and patient, respect others as they're the ones using their time to help you**
|
|
||||||
|
|
||||||
## Bugs, Ideas, Feature Requests
|
|
||||||
|
|
||||||
Bug reporting, idea submitting or feature requesting are done in the [Issues](https://github.com/MCCTeam/Minecraft-Console-Client/issues) section of our [Github repository]([here](https://github.com/MCCTeam/Minecraft-Console-Client)).
|
|
||||||
|
|
||||||
Navigate to the Issues section, search for a bug, idea or a feature using the search option here in the documentation and in the `Issues` section on Git Hub before making your own.
|
|
||||||
|
|
||||||
If you haven't found anything similar, go ahead and click on the `New issue` button, then choose what you want to do.
|
|
||||||
|
|
||||||
If you're reporting a bug, please be descriptive as much as possible, try to explain how to re-create the bug, attack screenshots and logs, make sure that you have [`debugmessages`](configuration.me#debugmessages) set to `true` before sending a bug report or taking a screenshot.
|
|
||||||
|
|
||||||
### Before submitting
|
|
||||||
|
|
||||||
- **Please use the search option here or in the `Issues` section and read the documentation so we avoid duplicate questions/ideas/reports. Thank you!**
|
|
||||||
- **Please be kind, patient and respect others. Thank you!**
|
|
||||||
|
|
||||||
## Notes on some features
|
|
||||||
|
|
||||||
### Inventory, Terrain and Entity Handling
|
|
||||||
|
|
||||||
Inventory handling is currently not supported in versions: `1.4.6 - 1.9`
|
|
||||||
|
|
||||||
Terrain handling is currently not supported in versions: `1.4.6 - 1.6`
|
|
||||||
|
|
||||||
Entity handling is currently not supported in versions: `1.4.6 - 1.9` (but `1.8` and `1.9` are being worked on, almost at the working state, only `EntityMetadata` packet remains to be fixed)
|
|
||||||
|
|
||||||
There features might not always be implemented in the latest version of the game, since they're often subjected to major changes by Mojang, and we need some time to figure out what has changed and to implement the required changes.
|
|
||||||
|
|
||||||
If there was a major game update, and the MCC hasn't been updated to support these features, if you're a programmer, feel free to contribute to the project.
|
|
||||||
|
|
||||||
## Credits
|
|
||||||
|
|
||||||
_Project initiated by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/)._
|
|
||||||
|
|
||||||
Many features would not have been possible without the help of our talented community:
|
|
||||||
|
|
||||||
**Maintainers**
|
|
||||||
|
|
||||||
ORelio, ReinforceZwei, milutinke, BruceChenQAQ, bradbyte
|
|
||||||
|
|
||||||
**Ideas**
|
|
||||||
|
|
||||||
ambysdotnet, Awpocalypse, azoundria, bearbear12345, bSun0000, Cat7373, dagonzaros, Dids, Elvang, fuckofftwice, GeorgH93, initsuj, JamieSinn, joshbean39, LehmusFIN, maski, medxo, mobdon, MousePak, TNT-UP, TorchRJ, yayes2, Yoann166, ZizzyDizzyMC and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BIdea%5D+is%3Aopen).
|
|
||||||
|
|
||||||
**Bug Hunters**
|
|
||||||
|
|
||||||
1092CQ, ambysdotnet, bearbear12345, c0dei, Cat7373, Chtholly, Darkaegis, dbear20, DigitalSniperz, doranchak, drXor, FantomHD, gerik43, ibspa, iTzMrpitBull, JamieSinn, k3ldon, KenXeiko, link3321, lyze237, mattman00000, Nicconyancat, Pokechu22, ridgewell, Ryan6578, Solethia, TNT-UP, TorchRJ, TRTrident, WeedIsGood, xp9kus, Yoann166 and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BBUG%5D+is%3Aopen+).
|
|
||||||
|
|
||||||
**Contributors**
|
|
||||||
|
|
||||||
Allyoutoo, Aragas, Bancey, bearbear12345, corbanmailloux, Daenges, dbear20, dogwatch, initsuj, JamieSinn, justcool393, lokulin, maxpowa, medxo, milutinke, Pokechu22, ReinforceZwei, repository, TheMeq, TheSnoozer, vkorn, v1RuX, yunusemregul, ZizzyDizzyMC, BruceChenQAQ, bradbyte _... And all the [GitHub contributors](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors)!_
|
|
||||||
|
|
||||||
**Libraries:**
|
|
||||||
|
|
||||||
Minecraft Console Client also borrows code from the following libraries:
|
|
||||||
|
|
||||||
| Name | Purpose | Author | License |
|
|
||||||
| ----------- | ---------------- | ---------------- | ------- |
|
|
||||||
| Biko | Proxy handling | Benton Stark | MIT |
|
|
||||||
| Heijden.Dns | DNS SRV Lookup | Geoffrey Huntley | MIT |
|
|
||||||
| DotNetZip | Zlib compression | Dino Chiesa | MS-PL |
|
|
||||||
|
|
||||||
## Disclaimer
|
|
||||||
|
|
||||||
Even if everything should work, we are not responsible for any damage this app could cause to your computer or your server. This app does not steal your password. If you don't trust it, don't use it or check & compile from the source code.
|
|
||||||
|
|
||||||
Also, remember that when you connect to a server with this program, you will appear where you left the last time. This means that **you can die if you log in in an unsafe place on a survival server!** Use the script scheduler bot to send a teleport command after logging in.
|
|
||||||
|
|
||||||
We remind you that **you may get banned** by your server for using this program. Use accordingly with server rules.
|
|
||||||
|
|
||||||
## License
|
|
||||||
|
|
||||||
Minecraft Console Client is a totally free of charge, open source project. The source code is available at [Github Repository](https://github.com/MCCTeam/Minecraft-Console-Client)
|
|
||||||
|
|
||||||
Unless specifically stated, source code is from the MCC Team or Contributors, and available under CDDL-1.0. More info about CDDL-1.0: [http://qstuff.blogspot.fr/2007/04/why-cddl.html](http://qstuff.blogspot.fr/2007/04/why-cddl.html) Full license at [http://opensource.org/licenses/CDDL-1.0](http://opensource.org/licenses/CDDL-1.0)
|
|
||||||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1,76 +0,0 @@
|
||||||
# Contributing
|
|
||||||
|
|
||||||
At this moment this page needs to be created.
|
|
||||||
|
|
||||||
For now you can use our article from the [Git Hub repository Wiki](https://github.com/MCCTeam/Minecraft-Console-Client/wiki/Update-console-client-to-new-version) written by [ReinforceZwei](https://github.com/ReinforceZwei).
|
|
||||||
|
|
||||||
## Translations
|
|
||||||
|
|
||||||
MCC now supports the following languages (Alphabetical order) :
|
|
||||||
* `de.ini` : Deutsch - German
|
|
||||||
* **`en.ini` : English - English**
|
|
||||||
* `fr.ini` : Français (France) - French
|
|
||||||
* `ru.ini` : Русский (Russkiy) - Russian
|
|
||||||
* `vi.ini` : Tiếng Việt (Việt Nam) - Vietnamese
|
|
||||||
* `zh-Hans.ini` : 简体中文 - Chinese Simplified
|
|
||||||
* `zh-Hant.ini` : 繁體中文 - Chinese Traditional
|
|
||||||
|
|
||||||
### Add new translation
|
|
||||||
|
|
||||||
1. First you need to get the name of the translated file.
|
|
||||||
* Visit [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c) and find the first occurrence of the language you need to translate in the table below.
|
|
||||||
* Use the language code of the row in the table as the name of the translation file.
|
|
||||||
* For example:
|
|
||||||
* `English` -> row `English 0x0009` -> `en` -> `en.ini`
|
|
||||||
* `Chinese (Traditional)` -> row `Chinese (Traditional) 0x7C04` -> `zh-Hant` -> `zh-Hant.ini`
|
|
||||||
|
|
||||||
2. Which system languages are recommended to use this translation?
|
|
||||||
* Still check the table in [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c), one language may have multiple rows.
|
|
||||||
* You will need to indicate which language codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `de.ini` applies to `de`, `de-AT`, `de-BE`, `de-DE`, ...
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh-Hans`, `zh`, `zh-CN`, `zh-SG`.
|
|
||||||
|
|
||||||
3. Which game languages are recommended to use this translation?
|
|
||||||
* Check out the table in [this link](https://github.com/MCCTeam/Minecraft-Console-Client/discussions/2239), where the `Locale Code` column indicates the language code in minecraft.
|
|
||||||
* You will need to indicate which locale codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `fr.ini` applies to `fr_ca`, `fr_fr`.
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh_cn`.
|
|
||||||
|
|
||||||
4. Add the new translation to the code. (Optional)
|
|
||||||
* **If you are not familiar with programming, you can skip this step and just write the above information in your PR or issue.**
|
|
||||||
* Add the newly created translation file `xx.ini` to the project `/Resources/lang/xx.ini`.
|
|
||||||
* Open `/DefaultConfigResource.resx`.
|
|
||||||
* Click `Add Resources`.
|
|
||||||
* Choose `/Resources/lang/xx.ini`.
|
|
||||||
* Rename the added resource file in `/DefaultConfigResource.resx` to `Translation_xx`.
|
|
||||||
* Open `/Translations.cs`.
|
|
||||||
* Find `public static Tuple<string, string[]> GetTranslationPriority();`
|
|
||||||
* Update the mapping of system language codes to translation files.
|
|
||||||
* Find `public static string[] GetTranslationPriority(string gameLanguage);`
|
|
||||||
* Update the mapping of game locale code to translation files.
|
|
||||||
|
|
||||||
5. Follow the section "Update existing translation".
|
|
||||||
|
|
||||||
### Update existing translation
|
|
||||||
|
|
||||||
1. Visit [the lang folder](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/Resources/lang), download `en.ini` and the language you want to translate(`xx.ini`).
|
|
||||||
|
|
||||||
2. Compare `en.ini` and `xx.ini` and update outdated or non-existent entries in `xx.ini`.
|
|
||||||
|
|
||||||
3. Once you finished the translation work, submit a pull request or send us the file through an [Issue](https://github.com/MCCTeam/Minecraft-Console-Client/issues) in case you are not familiar with Git.
|
|
||||||
|
|
||||||
### Translate README.md
|
|
||||||
|
|
||||||
1. Get the English version of the README.md from [here](https://raw.githubusercontent.com/MCCTeam/Minecraft-Console-Client/master/README.md).
|
|
||||||
|
|
||||||
2. See `Add new translation -> 1.` for the target language code. Assume it is `xx`.
|
|
||||||
|
|
||||||
3. Complete the translation according to the English README.md and name the translated version as `README-xx.md`.
|
|
||||||
|
|
||||||
4. In the English README, above the "About" section, add the name of the language and a hyperlink to `README-xx.md`.
|
|
||||||
|
|
||||||
## Contributors
|
|
||||||
|
|
||||||
[Check out our contributors on Github](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors).
|
|
||||||
|
|
@ -1,177 +0,0 @@
|
||||||
# Creating Chat Bots
|
|
||||||
|
|
||||||
- [Notes](#notes)
|
|
||||||
- [Requirements](#requirements)
|
|
||||||
- [Quick Introduction](#quick-introduction)
|
|
||||||
- [Examples](#examples)
|
|
||||||
- [C# API](#c#-api)
|
|
||||||
|
|
||||||
## Notes
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For now this page contains only the bare basics of the Chat Bot API, enough of details to teach you how to make basic Chat Bots. For more details you need to take a look at the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) and [Examples](#examples). This page will be improved in the future.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a rich C# API which allows you to create Chat Bots (effectively plugins) which can help you create complex automations which normal scripts may not be able to do.
|
|
||||||
|
|
||||||
## Requirements
|
|
||||||
|
|
||||||
- A basic knowledge of C# programming language
|
|
||||||
- A text editor
|
|
||||||
|
|
||||||
If you're not familiar with the C# programming language, we suggest taking a look at the following resources:
|
|
||||||
|
|
||||||
Crash courses:
|
|
||||||
|
|
||||||
- [C# Crash Course playlist by Teddy Smit](https://www.youtube.com/watch?v=67oWw9TanOk&list=PL82C6-O4XrHfoN_Y4MwGvJz5BntiL0z0D)
|
|
||||||
|
|
||||||
More in-depth:
|
|
||||||
|
|
||||||
- [Learn C# Youtube Playlist by Microsoft](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVxKLQCHpiUWun7vlJJvUiN)
|
|
||||||
- [Getting started with C# (An index of tutorials and the documentation) by Microsoft](https://docs.microsoft.com/en-us/dotnet/csharp/)
|
|
||||||
|
|
||||||
## Quick Introduction
|
|
||||||
|
|
||||||
This introduction assumes that you have the basic knowledge of C#.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Here we will use terms Chat Bot and Script interchangeably**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Create a new empty file and name it `ExampleChatBot.cs` in the same folder where you have your MCC installed.
|
|
||||||
|
|
||||||
Paste the following example code:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
MCC.LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
|
|
||||||
// The code and comments above are defining a "Script Metadata" section
|
|
||||||
|
|
||||||
// Every single chat bot (script) must be a class which extends the ChatBot class.
|
|
||||||
// Your class must be instantiates in the "Script Metadata" section and passed to MCC.LoadBot function.
|
|
||||||
class ExampleChatBot : ChatBot
|
|
||||||
{
|
|
||||||
// This method will be called when the script has been initialized for the first time, it's called only once
|
|
||||||
// Here you can initialize variables, eg. Dictionaries. etc...
|
|
||||||
public override void Initialize()
|
|
||||||
{
|
|
||||||
LogToConsole("An example Chat Bot has been initialized!");
|
|
||||||
}
|
|
||||||
|
|
||||||
// This is a function that will be run when we get a chat message from a server
|
|
||||||
// In this example it just detects the type of the message and prints it out
|
|
||||||
public override void GetText(string text)
|
|
||||||
{
|
|
||||||
string message = "";
|
|
||||||
string username = "";
|
|
||||||
text = GetVerbatim(text);
|
|
||||||
|
|
||||||
if (IsPrivateMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has sent you a private message: " + message);
|
|
||||||
}
|
|
||||||
else if (IsChatMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has said: " + message);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
Start MCC, connect to a server and run the following internal command: `/script ExampleChatBot.cs`.
|
|
||||||
|
|
||||||
If you did everything right you should see: `[Example Chat Bot] An example Chat Bot has been initialised!` message appear in your console log.
|
|
||||||
|
|
||||||
### Structure of Chat Bots
|
|
||||||
|
|
||||||
Chat Bot (Script) structure is the following:
|
|
||||||
|
|
||||||
```
|
|
||||||
<script metadata>
|
|
||||||
<chat bot class>
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** is a section with a custom format that mixes in C# with our format using comments. Every single Chat Bot (Script) must have this section at the beginning in order to work.
|
|
||||||
|
|
||||||
### Script Metadata Format
|
|
||||||
|
|
||||||
`//MCCScript 1.0` marks the beginning of the **Script Metadata** section, this must always be on the first line or the Chat Bot (Script) will not load and will throw an error.
|
|
||||||
|
|
||||||
`//MCCScript Extensions` marks the end of the **Script Metadata** section, this must be defined before a Chat Bot (Script) class.
|
|
||||||
|
|
||||||
In order for your Chat Bot (Script) to properly load in-between the `//MCCScript 1.0` and the `//MCCScript Extensions` lines you must instantiate your Chat Bot (Script) class and pass it to the `MCC.LoadBot` function.
|
|
||||||
|
|
||||||
Example code:
|
|
||||||
|
|
||||||
```
|
|
||||||
MCC.LoadBot(new YourChatBotClassNameHere());
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** section allows for including C# packages and libraries with: `//using <namespace>` and `/dll <dll name>`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Avoid adding whitespace between `//` and keywords**
|
|
||||||
:::
|
|
||||||
|
|
||||||
By the default the following packages are loaded:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Text.RegularExpressions;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.IO;
|
|
||||||
using System.Net;
|
|
||||||
using System.Threading;
|
|
||||||
using MinecraftClient;
|
|
||||||
using MinecraftClient.Mapping;
|
|
||||||
using MinecraftClient.Inventory;
|
|
||||||
```
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//using System.Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
```
|
|
||||||
|
|
||||||
Full Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
//using System.Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
|
|
||||||
MCC.LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
```
|
|
||||||
|
|
||||||
### Chat Bot Class
|
|
||||||
|
|
||||||
After the end of the **Script Metadata** section, you basically can define any number of classes you like, the only limitation is that the main class of your Chat Bot (Script) must extend `ChatBot` class.
|
|
||||||
|
|
||||||
There are no required methods, everything is optional.
|
|
||||||
|
|
||||||
When the Chat Bot (Script) has been initialized for the first time the `Initialize` method will be called. In it you can initialize variables, eg. Dictionaries, etc..
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For allocating resources like a database connection, we recommend allocating them in `AfterGameJoined` and freeing them in `OnDisconnect`** :::.
|
|
||||||
|
|
||||||
## Examples
|
|
||||||
|
|
||||||
You can find a lot of examples in our Git Hub Repository at [ChatBots](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/ChatBots) and [config](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/config).
|
|
||||||
|
|
||||||
## C# API
|
|
||||||
|
|
||||||
As of the time of writing, the C# API has been changed in forks that are yet to be merged, so for now you can use the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) for reference.
|
|
||||||
|
|
||||||
Each method is well documented with standard C# documentation comments.
|
|
||||||
|
|
||||||
In the future we will make a script to auto-generate this section based on the documentation in the code.
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -1,958 +0,0 @@
|
||||||
# Usage
|
|
||||||
|
|
||||||
How to run the program:
|
|
||||||
|
|
||||||
- [Running on Windows](#windows)
|
|
||||||
- [Running on Linux, macOS](#linux-macos)
|
|
||||||
- [Running using Docker](#docker)
|
|
||||||
|
|
||||||
Using the command line parameters:
|
|
||||||
|
|
||||||
- [Examples](#quick-usage-of-mcc-with-examples)
|
|
||||||
- [Command line parameters](#command-line-parameters)
|
|
||||||
- [Internal commands](#internal-commands)
|
|
||||||
|
|
||||||
## Windows
|
|
||||||
|
|
||||||
Simply run `MinecraftClient.exe`
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Windows it's best using [Windows Terminal](https://docs.microsoft.com/en-us/windows/terminal/install) for the best experience and looks. Some features like emojis in the [`/chunk`](#chunk) command do not work in CMD or Powershell 5**
|
|
||||||
:::
|
|
||||||
|
|
||||||
## Linux, macOS
|
|
||||||
|
|
||||||
To run the client you need to type the following command in your terminal emulator:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
./MinecraftClient
|
|
||||||
```
|
|
||||||
|
|
||||||
If you want to keep it running in the background you can use `screen` (Linux only) Example:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Start the screen
|
|
||||||
screen -S mcc
|
|
||||||
|
|
||||||
# Run it
|
|
||||||
./MinecraftClient
|
|
||||||
|
|
||||||
# Detach from the screen by pressing CTRL + A + D
|
|
||||||
|
|
||||||
# Re-attach if you want to have accces again
|
|
||||||
screen -r mcc
|
|
||||||
```
|
|
||||||
|
|
||||||
_Learn more on how to use the screen command: [YouTube](https://www.youtube.com/watch?v=_ZJiEX4rmN4)_
|
|
||||||
|
|
||||||
## Docker
|
|
||||||
|
|
||||||
See [Run using Docker](./guide/installation.md#using-docker)
|
|
||||||
|
|
||||||
## Command-line usage
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a plethora of useful command line parameters, here you can learn about them.
|
|
||||||
|
|
||||||
### For people not familiar with the command line
|
|
||||||
|
|
||||||
For people who are not familiar with the usage of programs in the command line (terminal emulators), here we will explain what every single thing means, if you're already experienced you can skip this.
|
|
||||||
|
|
||||||
In command line (terminal emulators) you can run programs by specifying their name and hitting enter, usually programs have additional way of being configured, started or provided some additional data in a different manner, this is achieved by using command line parameters.
|
|
||||||
|
|
||||||
Command line parameters are written after the name of the program, they're separated by spaces and they can have a few different formats, examples:
|
|
||||||
|
|
||||||
- `someparameter`
|
|
||||||
- `-some-parameter`
|
|
||||||
- `--some-other-parameter`
|
|
||||||
- `--some-setting="some value"`
|
|
||||||
- `-a=5`
|
|
||||||
|
|
||||||
Parameters with a single dash (`-`) are usually used for a single letter (short-hand) parameters, while the ones with a double dash (`--`) are being used for parameters with a longer/full name.
|
|
||||||
|
|
||||||
When you are reading examples, you will often see something like this: `<something here>`, this means that this is a place holder and it should be changed with some value, excluding the `<` and the `>`.
|
|
||||||
|
|
||||||
For example `<username>` you need to change to an username of your liking, example: `notch` (`<` and `>` should not be included).
|
|
||||||
|
|
||||||
`[` and `]` mean that a parameter is an optional one.
|
|
||||||
|
|
||||||
They also can hold some values, example from the MCC:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
```
|
|
||||||
|
|
||||||
When a parameter has a textual value that includes one more spaces, you will need to wrap it the value in double quotes (`"`), example: `--some-parameter="some text here with spaces in it"`
|
|
||||||
|
|
||||||
Here is an example for using a `--help` command line parameter for MCC that will print out a page on how to use MCC from the command line:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
```
|
|
||||||
|
|
||||||
### Quick usage of MCC with examples
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Linux and macOS, you need to type: `./MinecraftClient` instead of `MinecraftClient.exe`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
MinecraftClient.exe <username> <password> <server>
|
|
||||||
MinecraftClient.exe <username> <password> <server> "/mycommand"
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
MinecraftClient.exe --section.setting=value [--other settings]
|
|
||||||
MinecraftClient.exe <settings-file.ini> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Logging in as a user: notch, with a password: password123 onto a server with the ip: mc.someserver.com:25565
|
|
||||||
MinecraftClient.exe notch password123 mc.someserver.com:25565
|
|
||||||
|
|
||||||
# Overriding a setting from MinecraftClient.ini using a command line parameter
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
|
|
||||||
# Providing a custom settings ini file and overriding a language to Chinese
|
|
||||||
MinecraftClient.exe CustomSettingsFile.ini --language=zh
|
|
||||||
```
|
|
||||||
|
|
||||||
### Rules of using the command line parameters
|
|
||||||
|
|
||||||
You can mix and match arguments by following theses rules:
|
|
||||||
|
|
||||||
- First positional argument may be either the login or a settings file
|
|
||||||
- Other positional arguments are read in order: login, password, server, command
|
|
||||||
- Arguments starting with `--` can be in any order and position
|
|
||||||
|
|
||||||
Examples and further explanations:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically connect you to the chosen server.
|
|
||||||
- You may omit password and/or server to specify e.g. only the login
|
|
||||||
- To specify a server but ask password interactively, use `""` as password.
|
|
||||||
- To specify offline mode with no password, use `-` as password.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server> "/mycommand"
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically send `/mycommand` to the server and close.
|
|
||||||
- To send several commands and/or stay connected, use the 1ScriptScheduler1 bot instead.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will load the specified configuration file
|
|
||||||
- If the file contains login / password / server ip, it will automatically connect.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Specify settings on the command-line, see possible value in the configuration file
|
|
||||||
- Use `--section.setting=value` for settings outside the `[Main]` section
|
|
||||||
- Example: `--antiafk.enabled=true` for enabling the `AntiAFK` bot
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini> <login> <password> <server> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Load the specified configuration file and override some settings from the file
|
|
||||||
|
|
||||||
## 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`.
|
|
||||||
|
|
||||||
In scripts and remote control, no slash is needed to perform the command, eg. `quit`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Some commands may not be documented yet or are defined in description of Chat Bots, use `/help` to list them all, or you can contribute to this page.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `animation`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Swing your main or off hand.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/animation <mainhand|offhand>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bed`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to make the bot sleep easily, all about sleeping in one command.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `bed leave|sleep <x> <y> <z>|sleep <radius>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Leave a bed:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed leave
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed on 124 84 76:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 124 84 76
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep ~ ~ ~-2
|
|
||||||
```
|
|
||||||
|
|
||||||
Automatically find a bed in radius of 50 blocks and sleep in it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 50
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bots`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to list and unload a specific bot or all bots. Useful when debugging and developing scripts.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots <list|unload <bot name|all>>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Unload a bot called CustomScript
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload CustomScript
|
|
||||||
```
|
|
||||||
|
|
||||||
Unload all bots
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload all
|
|
||||||
```
|
|
||||||
|
|
||||||
### `changeslot`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Change your selected slot in the hotbar.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/changeslot <1-9>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `chunk`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Displays the chunk loading status in a nice way.
|
|
||||||
|
|
||||||
::: warning **To use this feature you need to enable the [Terrain and Movements](configuration.md#terrainandmovements)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need a terminal with emoji support, like Powershell 7, Windows Terminal or Alacritty, if you do not want emoji support and want to use cmd or powershell 5, disable emojis with: [`enableemoji`](configuration.md#enableemoji)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/chunk status [chunkX chunkZ|locationX locationY locationZ]
|
|
||||||
```
|
|
||||||
|
|
||||||
How it looks:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
### `dig`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Dig a block on a specific coordinate.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig 127 63 12
|
|
||||||
```
|
|
||||||
|
|
||||||
Using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig ~ ~-1 ~2
|
|
||||||
```
|
|
||||||
|
|
||||||
### `dropitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Drop all items of a specific type from your inventory.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem <itemtype>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All item types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem diamond
|
|
||||||
```
|
|
||||||
|
|
||||||
### `entity`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Attack an entity, use an entity or get a list of entities around you.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Entity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity <id|entitytype> <attack|use>
|
|
||||||
```
|
|
||||||
|
|
||||||
Get a list of entities around you:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All entity types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Mapping/EntityType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Attack a Zombie:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity Zombie attack
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execif`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute a command if a specific condition is met.
|
|
||||||
|
|
||||||
The condition is a C# expression and the local variables you set using [`set`](#set), [`setrnd`](#setrnd) or the configuration file can be used. The condition is always returned as a boolean, so only comparison can be done, if needed cast the expression result to bool.
|
|
||||||
|
|
||||||
Also the instance of MCC is available with `MCC.`.
|
|
||||||
|
|
||||||
::: tip **All local variables are treated as strings in the app, when comparing their values, you can use `<variable> == "<value>"`, or better use [`.Equals`](https://www.programiz.com/csharp-programming/library/string/equals) method**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `/execif <condition (C# expression)> ---> <command>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Setting a variable and using it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test=Something
|
|
||||||
/execif test == "Something" ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test2=1
|
|
||||||
/execif test2 == "1" ---> send Success 2!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Basic C# expression:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 + 2 + 3 == 6 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using MCC class:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif MCC.GetHealth() == 20.0 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using in combination with [`execmulti`](#execmulti):
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 == 1 ---> execmulti send 1 -> send 2 -> send 3
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execmulti`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute multiple commands in succession on a single line, useful for debugging or when using [`execif`](#execif)
|
|
||||||
|
|
||||||
Commands are separated by `->`
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `execmulti <command 1> -> <command 2> -> <command 3> -> ...`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/execmulti send 1 -> send 2 -> send 3 -> sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `quit`
|
|
||||||
|
|
||||||
- **Alias:** `exit`
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect from the server and close the application
|
|
||||||
|
|
||||||
### `reco`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect and reconnect to the server
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reco [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `reload`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Reloads settings from MinecraftClient.ini and Chat Bots.
|
|
||||||
|
|
||||||
::: tip **Some settings won't be reloaded since they are used before the client initialization. Also, settings provided by the command line paramteres will be overriden. This also does not reload the ReplayBot due to technical limitations.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reload
|
|
||||||
```
|
|
||||||
|
|
||||||
### `connect`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Go to the given server and resume the script
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/connect <server> [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`<server>` is either a server IP or a server alias defined in servers file, for more info check out [serverlist](configuration.html#serverlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `script`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Run a script containing a list of commands
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/script <script name>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `send`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Send a message or a command to the server
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/send <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `respawn`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use this to respawn if you are dead (like clicking "respawn" in-game)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/respawn
|
|
||||||
```
|
|
||||||
|
|
||||||
### `log`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Display some text in the console (useful for scripts)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/log <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
- Example:
|
|
||||||
|
|
||||||
```
|
|
||||||
/log this is some text
|
|
||||||
```
|
|
||||||
|
|
||||||
### `list`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
List players logged in to the server (uses tab list info sent by server)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/list
|
|
||||||
```
|
|
||||||
|
|
||||||
### `set`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a value which can be used as `%variable%` in further commands
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set <variable>=<value>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set abc=123
|
|
||||||
```
|
|
||||||
|
|
||||||
### `setrnd`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a `%variable%` randomly to one of the provided values
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> string1 "\"string2\" string3"
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> -7to10
|
|
||||||
```
|
|
||||||
|
|
||||||
(Set a `%variable%` to a number from -7 to 9)
|
|
||||||
|
|
||||||
### `sneak`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle sneaking.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/Sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `tps`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Get the server TPS (Ticks Per Second).
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/tps
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use item in the hand, this can be used to do a right click on items which open menus on servers.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useitem
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useblock`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Place a block from a hand on a specific coordinate or open an inventory:
|
|
||||||
|
|
||||||
- chest/trap chest
|
|
||||||
- furnace
|
|
||||||
- brewing stand
|
|
||||||
- dispenser/dropper
|
|
||||||
- hopper
|
|
||||||
- shulker
|
|
||||||
- loom
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **Not all inventories have a GUI representation in an ASCII art format.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock 43 72 7
|
|
||||||
```
|
|
||||||
|
|
||||||
### `follow`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Make the bot follow a player.
|
|
||||||
|
|
||||||
::: tip **This command is avaliable only with [Follow Player](chat-bots.md#follow-player) Chat Bot enabled.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Enity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow <player name|stop>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow milutinke
|
|
||||||
```
|
|
||||||
|
|
||||||
### `wait`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Wait X ticks (10 ticks = ~1 second. Only for scripts)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait <time>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait 20
|
|
||||||
```
|
|
||||||
|
|
||||||
### `move`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for moving when terrain and movements feature is enabled.
|
|
||||||
|
|
||||||
::: tip **You need to have [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Terrain and Movements](configuration.md#terrainandmovements) is currently not supported in `1.4.6 - 1.6`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/move <on|off|get|up|down|east|west|north|south|center|x y z|gravity [on|off]> [-f]: walk or start walking. "-f": force unsafe movements like falling or touching fire
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Enable gravity
|
|
||||||
|
|
||||||
```
|
|
||||||
/move gravity on
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move 125 72 34
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to a center of a block:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move center
|
|
||||||
```
|
|
||||||
|
|
||||||
### `look`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for looking at direction when terrain and movements is enabled
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look <x y z|yaw pitch|up|down|east|west|north|south>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look up
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/look east
|
|
||||||
```
|
|
||||||
|
|
||||||
### `inventory`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for inventory manipulation.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
MCC defines inventories as containers internally, so player's inventory, chests, droppers, dispensers, hoppers, chest minecarts, barrels, furnaces, etc... are all considered a container, and each one of them has it's ID, the words container and inventory can be used interchangeably.
|
|
||||||
|
|
||||||
Inventory has slots and each one of them has an id.
|
|
||||||
|
|
||||||
::: tip **This command DOES NOT physically open a container (eg. chest), for that you need to use [`useblock`](#useblock) command first.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
An example of player inventory with annotated IDs in ASCII art and a list of items:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <action> [action parameters] | /inventory <inventories/i> | /inventory <search/s> <item type> [amount]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **player and container can be simplified with p and c accordingly**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Actions:
|
|
||||||
|
|
||||||
- `click`
|
|
||||||
- `shiftclick`
|
|
||||||
- `drop`
|
|
||||||
|
|
||||||
Show/Preview items in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Click/Shift-Click on an item in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <click|shiftclick> <slot id> [left|right|middle]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **The default click is left click**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Close an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop item(s) from an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id> drop <slot id> <number of items|all>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To drop all items from a slot, you can use: `all`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive <slot id> <item type> <amount>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete <slot id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Show all available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory inventories
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for an item of specified type in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory search <item type>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Show player's inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player
|
|
||||||
```
|
|
||||||
|
|
||||||
Show/Preview items in an inventory using an id:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 3
|
|
||||||
```
|
|
||||||
|
|
||||||
Click on an item in player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player click 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Right-Click on an item in slot number/id `4` in an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 click 4 right
|
|
||||||
```
|
|
||||||
|
|
||||||
Close an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop a single item from a player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 36 1
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop all items from a player's inventory in slot number/id `37`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 37 all
|
|
||||||
```
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive 36 diamondblock 64
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory in slot number/id `36` when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for 10 Slime Blocks in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory s SlimeBlock 10
|
|
||||||
```
|
|
||||||
|
|
||||||
### `debug`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle debug messages, useful for chatbot developers.
|
|
||||||
|
|
||||||
### `help`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Show commands help.
|
|
||||||
|
|
||||||
::: tip **Use "/send /help" for server help**
|
|
||||||
:::
|
|
||||||
|
|
@ -1,28 +0,0 @@
|
||||||
---
|
|
||||||
home: true
|
|
||||||
heroImage: /images/MCC_logo_with_edge.png
|
|
||||||
tagline: 'Minecraft Console Client (MCC) is a lightweight open-source Minecraft Java client implemented in C#'
|
|
||||||
actions:
|
|
||||||
-
|
|
||||||
text: Installation
|
|
||||||
link: ./guide/installation.md
|
|
||||||
type: primary
|
|
||||||
-
|
|
||||||
text: Learn More →
|
|
||||||
link: ./guide/
|
|
||||||
type: secondary
|
|
||||||
actionText:
|
|
||||||
actionLink:
|
|
||||||
features:
|
|
||||||
-
|
|
||||||
title: Chat
|
|
||||||
details: Chat with other people on the server
|
|
||||||
-
|
|
||||||
title: Automation
|
|
||||||
details: Create bots to do automated tasks
|
|
||||||
-
|
|
||||||
title: Supported Versions
|
|
||||||
details: 1.4 - 1.19.2
|
|
||||||
footer: Made by MCC Team with ❤️
|
|
||||||
---
|
|
||||||
|
|
||||||
|
|
@ -1,163 +0,0 @@
|
||||||
# Introduction
|
|
||||||
|
|
||||||
- [About](#about)
|
|
||||||
- [Quick Intro (YouTube Videos)](#quick-intro)
|
|
||||||
- [Features](#features)
|
|
||||||
- [Why Minecraft Console Client?](#why-minecraft-console-client)
|
|
||||||
- [Getting Help](#getting-help)
|
|
||||||
- [Submitting a bug report or an idea/feature-request](#bugs-ideas-feature-requests)
|
|
||||||
- [Important notes on some features](#notes-on-some-features)
|
|
||||||
- [Credits](#credits)
|
|
||||||
- [Disclaimer](#disclaimer)
|
|
||||||
- [License](#license)
|
|
||||||
|
|
||||||
## About
|
|
||||||
|
|
||||||
**Minecraft Console Client (MCC)** is a lightweight cross-platform open-source **Minecraft** TUI client for **Java edition** that allows you to connect to any Minecraft Java server, send commands and receive text messages in a fast and easy way without having to open the main Minecraft game.
|
|
||||||
|
|
||||||
It also provides various automations that you can enable for administration and other purposes, as well as extensible C# API for creating Bots.
|
|
||||||
|
|
||||||
It was originally made by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/), now it's maintained by him and many other contributors from the community.
|
|
||||||
|
|
||||||
## Features
|
|
||||||
|
|
||||||
- Chat
|
|
||||||
|
|
||||||
- Send and receive chat messages
|
|
||||||
- [Log chat history](chat-bots.md#chat-log)
|
|
||||||
- [Get alerted on certain keywords](chat-bots.md#alerts)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
|
|
||||||
- [Anti AFK](chat-bots.md#anti-afk)
|
|
||||||
- [Auto Relog](chat-bots.md#auto-relog)
|
|
||||||
- [Script Scheduler](chat-bots.md#script-scheduler)
|
|
||||||
- [Remote Control](chat-bots.md#remote-control)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
- [Auto Attack](chat-bots.md#auto-attack)
|
|
||||||
- [Auto Fishing](chat-bots.md#auto-fishing)
|
|
||||||
- [Auto Eat](chat-bots.md#auto-eat)
|
|
||||||
- [Auto Craft](chat-bots.md#auto-craft)
|
|
||||||
- [Mailer Bot](chat-bots.md#mailer)
|
|
||||||
- [Auto Drop](chat-bots.md#auto-drop)
|
|
||||||
- [Replay Mod](chat-bots.md#replay-mod)
|
|
||||||
- [API for creating Bots in C#](creating-bots.md#creating-chat-bots)
|
|
||||||
- [Docker Support](installation.md#using-docker)
|
|
||||||
- [Inventory Handling](usage.md#inventory)
|
|
||||||
- [Terrain Traversing](usage.md#move)
|
|
||||||
- Entity Handling
|
|
||||||
|
|
||||||
_NOTE: Some of mentioned features are disabled by default and you will have to turn them on in the configuration file and some may require additional configuration on your part for your specific usage._
|
|
||||||
|
|
||||||
## Why Minecraft Console Client?
|
|
||||||
|
|
||||||
- Easy to use
|
|
||||||
- Helpful community
|
|
||||||
- Open-Source
|
|
||||||
- Fast performance
|
|
||||||
- Cross-Platform
|
|
||||||
- Docker Support
|
|
||||||
- 10 years of continuous development
|
|
||||||
- Active contributors
|
|
||||||
- Widely used
|
|
||||||
|
|
||||||
## Quick Intro
|
|
||||||
|
|
||||||
Don't have time to read through the documentation, we got you, our community has made some simple introduction videos about the **Minecraft Console Client**.
|
|
||||||
|
|
||||||
### The list of the tutorials:
|
|
||||||
|
|
||||||
Installation:
|
|
||||||
|
|
||||||
- [Installation on Windows by Daenges](https://www.youtube.com/watch?v=BkCqOCa2uQw)
|
|
||||||
- [Installation on Windows + Auto AFK and More by Dexter113](https://www.youtube.com/watch?v=FxJ0KFIHDrY)
|
|
||||||
|
|
||||||
Using Commands, Scripts and other features:
|
|
||||||
|
|
||||||
- [Minecraft Console Client | Tutorial | Commands, Scripts, AppVars, Matches, Tasks and C# Scripts by Daenges](https://youtu.be/JbDpwwETEnU)
|
|
||||||
- [Console Client Tutorial - Scripting by Zixxter](https://www.youtube.com/watch?v=XE7rYBFJxn0)
|
|
||||||
|
|
||||||
## Getting Help
|
|
||||||
|
|
||||||
MCC has a community that is willing to help, we have a Discussions section in out Git Hub repository.
|
|
||||||
|
|
||||||
Click [here](https://github.com/MCCTeam/Minecraft-Console-Client/discussions) to access it.
|
|
||||||
|
|
||||||
### Before getting help
|
|
||||||
|
|
||||||
- **Please use the search option here or in the discussion section and read the documentation so we avoid duplicate questions. Thank you!**
|
|
||||||
- **Please be kind and patient, respect others as they're the ones using their time to help you**
|
|
||||||
|
|
||||||
## Bugs, Ideas, Feature Requests
|
|
||||||
|
|
||||||
Bug reporting, idea submitting or feature requesting are done in the [Issues](https://github.com/MCCTeam/Minecraft-Console-Client/issues) section of our [Github repository]([here](https://github.com/MCCTeam/Minecraft-Console-Client)).
|
|
||||||
|
|
||||||
Navigate to the Issues section, search for a bug, idea or a feature using the search option here in the documentation and in the `Issues` section on Git Hub before making your own.
|
|
||||||
|
|
||||||
If you haven't found anything similar, go ahead and click on the `New issue` button, then choose what you want to do.
|
|
||||||
|
|
||||||
If you're reporting a bug, please be descriptive as much as possible, try to explain how to re-create the bug, attack screenshots and logs, make sure that you have [`debugmessages`](configuration.me#debugmessages) set to `true` before sending a bug report or taking a screenshot.
|
|
||||||
|
|
||||||
### Before submitting
|
|
||||||
|
|
||||||
- **Please use the search option here or in the `Issues` section and read the documentation so we avoid duplicate questions/ideas/reports. Thank you!**
|
|
||||||
- **Please be kind, patient and respect others. Thank you!**
|
|
||||||
|
|
||||||
## Notes on some features
|
|
||||||
|
|
||||||
### Inventory, Terrain and Entity Handling
|
|
||||||
|
|
||||||
Inventory handling is currently not supported in versions: `1.4.6 - 1.9`
|
|
||||||
|
|
||||||
Terrain handling is currently not supported in versions: `1.4.6 - 1.6`
|
|
||||||
|
|
||||||
Entity handling is currently not supported in versions: `1.4.6 - 1.9` (but `1.8` and `1.9` are being worked on, almost at the working state, only `EntityMetadata` packet remains to be fixed)
|
|
||||||
|
|
||||||
There features might not always be implemented in the latest version of the game, since they're often subjected to major changes by Mojang, and we need some time to figure out what has changed and to implement the required changes.
|
|
||||||
|
|
||||||
If there was a major game update, and the MCC hasn't been updated to support these features, if you're a programmer, feel free to contribute to the project.
|
|
||||||
|
|
||||||
## Credits
|
|
||||||
|
|
||||||
_Project initiated by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/)._
|
|
||||||
|
|
||||||
Many features would not have been possible without the help of our talented community:
|
|
||||||
|
|
||||||
**Maintainers**
|
|
||||||
|
|
||||||
ORelio, ReinforceZwei, milutinke, BruceChenQAQ, bradbyte
|
|
||||||
|
|
||||||
**Ideas**
|
|
||||||
|
|
||||||
ambysdotnet, Awpocalypse, azoundria, bearbear12345, bSun0000, Cat7373, dagonzaros, Dids, Elvang, fuckofftwice, GeorgH93, initsuj, JamieSinn, joshbean39, LehmusFIN, maski, medxo, mobdon, MousePak, TNT-UP, TorchRJ, yayes2, Yoann166, ZizzyDizzyMC and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BIdea%5D+is%3Aopen).
|
|
||||||
|
|
||||||
**Bug Hunters**
|
|
||||||
|
|
||||||
1092CQ, ambysdotnet, bearbear12345, c0dei, Cat7373, Chtholly, Darkaegis, dbear20, DigitalSniperz, doranchak, drXor, FantomHD, gerik43, ibspa, iTzMrpitBull, JamieSinn, k3ldon, KenXeiko, link3321, lyze237, mattman00000, Nicconyancat, Pokechu22, ridgewell, Ryan6578, Solethia, TNT-UP, TorchRJ, TRTrident, WeedIsGood, xp9kus, Yoann166 and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BBUG%5D+is%3Aopen+).
|
|
||||||
|
|
||||||
**Contributors**
|
|
||||||
|
|
||||||
Allyoutoo, Aragas, Bancey, bearbear12345, corbanmailloux, Daenges, dbear20, dogwatch, initsuj, JamieSinn, justcool393, lokulin, maxpowa, medxo, milutinke, Pokechu22, ReinforceZwei, repository, TheMeq, TheSnoozer, vkorn, v1RuX, yunusemregul, ZizzyDizzyMC, BruceChenQAQ, bradbyte _... And all the [GitHub contributors](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors)!_
|
|
||||||
|
|
||||||
**Libraries:**
|
|
||||||
|
|
||||||
Minecraft Console Client also borrows code from the following libraries:
|
|
||||||
|
|
||||||
| Name | Purpose | Author | License |
|
|
||||||
| ----------- | ---------------- | ---------------- | ------- |
|
|
||||||
| Biko | Proxy handling | Benton Stark | MIT |
|
|
||||||
| Heijden.Dns | DNS SRV Lookup | Geoffrey Huntley | MIT |
|
|
||||||
| DotNetZip | Zlib compression | Dino Chiesa | MS-PL |
|
|
||||||
|
|
||||||
## Disclaimer
|
|
||||||
|
|
||||||
Even if everything should work, we are not responsible for any damage this app could cause to your computer or your server. This app does not steal your password. If you don't trust it, don't use it or check & compile from the source code.
|
|
||||||
|
|
||||||
Also, remember that when you connect to a server with this program, you will appear where you left the last time. This means that **you can die if you log in in an unsafe place on a survival server!** Use the script scheduler bot to send a teleport command after logging in.
|
|
||||||
|
|
||||||
We remind you that **you may get banned** by your server for using this program. Use accordingly with server rules.
|
|
||||||
|
|
||||||
## License
|
|
||||||
|
|
||||||
Minecraft Console Client is a totally free of charge, open source project. The source code is available at [Github Repository](https://github.com/MCCTeam/Minecraft-Console-Client)
|
|
||||||
|
|
||||||
Unless specifically stated, source code is from the MCC Team or Contributors, and available under CDDL-1.0. More info about CDDL-1.0: [http://qstuff.blogspot.fr/2007/04/why-cddl.html](http://qstuff.blogspot.fr/2007/04/why-cddl.html) Full license at [http://opensource.org/licenses/CDDL-1.0](http://opensource.org/licenses/CDDL-1.0)
|
|
||||||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1,76 +0,0 @@
|
||||||
# Contributing
|
|
||||||
|
|
||||||
At this moment this page needs to be created.
|
|
||||||
|
|
||||||
For now you can use our article from the [Git Hub repository Wiki](https://github.com/MCCTeam/Minecraft-Console-Client/wiki/Update-console-client-to-new-version) written by [ReinforceZwei](https://github.com/ReinforceZwei).
|
|
||||||
|
|
||||||
## Translations
|
|
||||||
|
|
||||||
MCC now supports the following languages (Alphabetical order) :
|
|
||||||
* `de.ini` : Deutsch - German
|
|
||||||
* **`en.ini` : English - English**
|
|
||||||
* `fr.ini` : Français (France) - French
|
|
||||||
* `ru.ini` : Русский (Russkiy) - Russian
|
|
||||||
* `vi.ini` : Tiếng Việt (Việt Nam) - Vietnamese
|
|
||||||
* `zh-Hans.ini` : 简体中文 - Chinese Simplified
|
|
||||||
* `zh-Hant.ini` : 繁體中文 - Chinese Traditional
|
|
||||||
|
|
||||||
### Add new translation
|
|
||||||
|
|
||||||
1. First you need to get the name of the translated file.
|
|
||||||
* Visit [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c) and find the first occurrence of the language you need to translate in the table below.
|
|
||||||
* Use the language code of the row in the table as the name of the translation file.
|
|
||||||
* For example:
|
|
||||||
* `English` -> row `English 0x0009` -> `en` -> `en.ini`
|
|
||||||
* `Chinese (Traditional)` -> row `Chinese (Traditional) 0x7C04` -> `zh-Hant` -> `zh-Hant.ini`
|
|
||||||
|
|
||||||
2. Which system languages are recommended to use this translation?
|
|
||||||
* Still check the table in [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c), one language may have multiple rows.
|
|
||||||
* You will need to indicate which language codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `de.ini` applies to `de`, `de-AT`, `de-BE`, `de-DE`, ...
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh-Hans`, `zh`, `zh-CN`, `zh-SG`.
|
|
||||||
|
|
||||||
3. Which game languages are recommended to use this translation?
|
|
||||||
* Check out the table in [this link](https://github.com/MCCTeam/Minecraft-Console-Client/discussions/2239), where the `Locale Code` column indicates the language code in minecraft.
|
|
||||||
* You will need to indicate which locale codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `fr.ini` applies to `fr_ca`, `fr_fr`.
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh_cn`.
|
|
||||||
|
|
||||||
4. Add the new translation to the code. (Optional)
|
|
||||||
* **If you are not familiar with programming, you can skip this step and just write the above information in your PR or issue.**
|
|
||||||
* Add the newly created translation file `xx.ini` to the project `/Resources/lang/xx.ini`.
|
|
||||||
* Open `/DefaultConfigResource.resx`.
|
|
||||||
* Click `Add Resources`.
|
|
||||||
* Choose `/Resources/lang/xx.ini`.
|
|
||||||
* Rename the added resource file in `/DefaultConfigResource.resx` to `Translation_xx`.
|
|
||||||
* Open `/Translations.cs`.
|
|
||||||
* Find `public static Tuple<string, string[]> GetTranslationPriority();`
|
|
||||||
* Update the mapping of system language codes to translation files.
|
|
||||||
* Find `public static string[] GetTranslationPriority(string gameLanguage);`
|
|
||||||
* Update the mapping of game locale code to translation files.
|
|
||||||
|
|
||||||
5. Follow the section "Update existing translation".
|
|
||||||
|
|
||||||
### Update existing translation
|
|
||||||
|
|
||||||
1. Visit [the lang folder](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/Resources/lang), download `en.ini` and the language you want to translate(`xx.ini`).
|
|
||||||
|
|
||||||
2. Compare `en.ini` and `xx.ini` and update outdated or non-existent entries in `xx.ini`.
|
|
||||||
|
|
||||||
3. Once you finished the translation work, submit a pull request or send us the file through an [Issue](https://github.com/MCCTeam/Minecraft-Console-Client/issues) in case you are not familiar with Git.
|
|
||||||
|
|
||||||
### Translate README.md
|
|
||||||
|
|
||||||
1. Get the English version of the README.md from [here](https://raw.githubusercontent.com/MCCTeam/Minecraft-Console-Client/master/README.md).
|
|
||||||
|
|
||||||
2. See `Add new translation -> 1.` for the target language code. Assume it is `xx`.
|
|
||||||
|
|
||||||
3. Complete the translation according to the English README.md and name the translated version as `README-xx.md`.
|
|
||||||
|
|
||||||
4. In the English README, above the "About" section, add the name of the language and a hyperlink to `README-xx.md`.
|
|
||||||
|
|
||||||
## Contributors
|
|
||||||
|
|
||||||
[Check out our contributors on Github](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors).
|
|
||||||
|
|
@ -1,177 +0,0 @@
|
||||||
# Creating Chat Bots
|
|
||||||
|
|
||||||
- [Notes](#notes)
|
|
||||||
- [Requirements](#requirements)
|
|
||||||
- [Quick Introduction](#quick-introduction)
|
|
||||||
- [Examples](#examples)
|
|
||||||
- [C# API](#c#-api)
|
|
||||||
|
|
||||||
## Notes
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For now this page contains only the bare basics of the Chat Bot API, enough of details to teach you how to make basic Chat Bots. For more details you need to take a look at the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) and [Examples](#examples). This page will be improved in the future.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a rich C# API which allows you to create Chat Bots (effectively plugins) which can help you create complex automations which normal scripts may not be able to do.
|
|
||||||
|
|
||||||
## Requirements
|
|
||||||
|
|
||||||
- A basic knowledge of C# programming language
|
|
||||||
- A text editor
|
|
||||||
|
|
||||||
If you're not familiar with the C# programming language, we suggest taking a look at the following resources:
|
|
||||||
|
|
||||||
Crash courses:
|
|
||||||
|
|
||||||
- [C# Crash Course playlist by Teddy Smit](https://www.youtube.com/watch?v=67oWw9TanOk&list=PL82C6-O4XrHfoN_Y4MwGvJz5BntiL0z0D)
|
|
||||||
|
|
||||||
More in-depth:
|
|
||||||
|
|
||||||
- [Learn C# Youtube Playlist by Microsoft](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVxKLQCHpiUWun7vlJJvUiN)
|
|
||||||
- [Getting started with C# (An index of tutorials and the documentation) by Microsoft](https://docs.microsoft.com/en-us/dotnet/csharp/)
|
|
||||||
|
|
||||||
## Quick Introduction
|
|
||||||
|
|
||||||
This introduction assumes that you have the basic knowledge of C#.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Here we will use terms Chat Bot and Script interchangeably**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Create a new empty file and name it `ExampleChatBot.cs` in the same folder where you have your MCC installed.
|
|
||||||
|
|
||||||
Paste the following example code:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
MCC.LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
|
|
||||||
// The code and comments above are defining a "Script Metadata" section
|
|
||||||
|
|
||||||
// Every single chat bot (script) must be a class which extends the ChatBot class.
|
|
||||||
// Your class must be instantiates in the "Script Metadata" section and passed to MCC.LoadBot function.
|
|
||||||
class ExampleChatBot : ChatBot
|
|
||||||
{
|
|
||||||
// This method will be called when the script has been initialized for the first time, it's called only once
|
|
||||||
// Here you can initialize variables, eg. Dictionaries. etc...
|
|
||||||
public override void Initialize()
|
|
||||||
{
|
|
||||||
LogToConsole("An example Chat Bot has been initialized!");
|
|
||||||
}
|
|
||||||
|
|
||||||
// This is a function that will be run when we get a chat message from a server
|
|
||||||
// In this example it just detects the type of the message and prints it out
|
|
||||||
public override void GetText(string text)
|
|
||||||
{
|
|
||||||
string message = "";
|
|
||||||
string username = "";
|
|
||||||
text = GetVerbatim(text);
|
|
||||||
|
|
||||||
if (IsPrivateMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has sent you a private message: " + message);
|
|
||||||
}
|
|
||||||
else if (IsChatMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has said: " + message);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
Start MCC, connect to a server and run the following internal command: `/script ExampleChatBot.cs`.
|
|
||||||
|
|
||||||
If you did everything right you should see: `[Example Chat Bot] An example Chat Bot has been initialised!` message appear in your console log.
|
|
||||||
|
|
||||||
### Structure of Chat Bots
|
|
||||||
|
|
||||||
Chat Bot (Script) structure is the following:
|
|
||||||
|
|
||||||
```
|
|
||||||
<script metadata>
|
|
||||||
<chat bot class>
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** is a section with a custom format that mixes in C# with our format using comments. Every single Chat Bot (Script) must have this section at the beginning in order to work.
|
|
||||||
|
|
||||||
### Script Metadata Format
|
|
||||||
|
|
||||||
`//MCCScript 1.0` marks the beginning of the **Script Metadata** section, this must always be on the first line or the Chat Bot (Script) will not load and will throw an error.
|
|
||||||
|
|
||||||
`//MCCScript Extensions` marks the end of the **Script Metadata** section, this must be defined before a Chat Bot (Script) class.
|
|
||||||
|
|
||||||
In order for your Chat Bot (Script) to properly load in-between the `//MCCScript 1.0` and the `//MCCScript Extensions` lines you must instantiate your Chat Bot (Script) class and pass it to the `MCC.LoadBot` function.
|
|
||||||
|
|
||||||
Example code:
|
|
||||||
|
|
||||||
```
|
|
||||||
MCC.LoadBot(new YourChatBotClassNameHere());
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** section allows for including C# packages and libraries with: `//using <namespace>` and `/dll <dll name>`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Avoid adding whitespace between `//` and keywords**
|
|
||||||
:::
|
|
||||||
|
|
||||||
By the default the following packages are loaded:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Text.RegularExpressions;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.IO;
|
|
||||||
using System.Net;
|
|
||||||
using System.Threading;
|
|
||||||
using MinecraftClient;
|
|
||||||
using MinecraftClient.Mapping;
|
|
||||||
using MinecraftClient.Inventory;
|
|
||||||
```
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//using System.Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
```
|
|
||||||
|
|
||||||
Full Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
//using System.Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
|
|
||||||
MCC.LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
```
|
|
||||||
|
|
||||||
### Chat Bot Class
|
|
||||||
|
|
||||||
After the end of the **Script Metadata** section, you basically can define any number of classes you like, the only limitation is that the main class of your Chat Bot (Script) must extend `ChatBot` class.
|
|
||||||
|
|
||||||
There are no required methods, everything is optional.
|
|
||||||
|
|
||||||
When the Chat Bot (Script) has been initialized for the first time the `Initialize` method will be called. In it you can initialize variables, eg. Dictionaries, etc..
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For allocating resources like a database connection, we recommend allocating them in `AfterGameJoined` and freeing them in `OnDisconnect`** :::.
|
|
||||||
|
|
||||||
## Examples
|
|
||||||
|
|
||||||
You can find a lot of examples in our Git Hub Repository at [ChatBots](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/ChatBots) and [config](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/config).
|
|
||||||
|
|
||||||
## C# API
|
|
||||||
|
|
||||||
As of the time of writing, the C# API has been changed in forks that are yet to be merged, so for now you can use the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) for reference.
|
|
||||||
|
|
||||||
Each method is well documented with standard C# documentation comments.
|
|
||||||
|
|
||||||
In the future we will make a script to auto-generate this section based on the documentation in the code.
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -1,958 +0,0 @@
|
||||||
# Utilisation
|
|
||||||
|
|
||||||
How to run the program:
|
|
||||||
|
|
||||||
- [Running on Windows](#windows)
|
|
||||||
- [Running on Linux, macOS](#linux-macos)
|
|
||||||
- [Running using Docker](#docker)
|
|
||||||
|
|
||||||
Using the command line parameters:
|
|
||||||
|
|
||||||
- [Examples](#quick-usage-of-mcc-with-examples)
|
|
||||||
- [Command line parameters](#command-line-parameters)
|
|
||||||
- [Internal commands](#internal-commands)
|
|
||||||
|
|
||||||
## Windows
|
|
||||||
|
|
||||||
Simply run `MinecraftClient.exe`
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Windows it's best using [Windows Terminal](https://docs.microsoft.com/en-us/windows/terminal/install) for the best experience and looks. Some features like emojis in the [`/chunk`](#chunk) command do not work in CMD or Powershell 5**
|
|
||||||
:::
|
|
||||||
|
|
||||||
## Linux, macOS
|
|
||||||
|
|
||||||
To run the client you need to type the following command in your terminal emulator:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
./MinecraftClient
|
|
||||||
```
|
|
||||||
|
|
||||||
If you want to keep it running in the background you can use `screen` (Linux only) Example:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Start the screen
|
|
||||||
screen -S mcc
|
|
||||||
|
|
||||||
# Run it
|
|
||||||
./MinecraftClient
|
|
||||||
|
|
||||||
# Detach from the screen by pressing CTRL + A + D
|
|
||||||
|
|
||||||
# Re-attach if you want to have accces again
|
|
||||||
screen -r mcc
|
|
||||||
```
|
|
||||||
|
|
||||||
_Learn more on how to use the screen command: [YouTube](https://www.youtube.com/watch?v=_ZJiEX4rmN4)_
|
|
||||||
|
|
||||||
## Docker
|
|
||||||
|
|
||||||
See [Run using Docker](./guide/installation.md#using-docker)
|
|
||||||
|
|
||||||
## Command-line usage
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a plethora of useful command line parameters, here you can learn about them.
|
|
||||||
|
|
||||||
### For people not familiar with the command line
|
|
||||||
|
|
||||||
For people who are not familiar with the usage of programs in the command line (terminal emulators), here we will explain what every single thing means, if you're already experienced you can skip this.
|
|
||||||
|
|
||||||
In command line (terminal emulators) you can run programs by specifying their name and hitting enter, usually programs have additional way of being configured, started or provided some additional data in a different manner, this is achieved by using command line parameters.
|
|
||||||
|
|
||||||
Command line parameters are written after the name of the program, they're separated by spaces and they can have a few different formats, examples:
|
|
||||||
|
|
||||||
- `someparameter`
|
|
||||||
- `-some-parameter`
|
|
||||||
- `--some-other-parameter`
|
|
||||||
- `--some-setting="some value"`
|
|
||||||
- `-a=5`
|
|
||||||
|
|
||||||
Parameters with a single dash (`-`) are usually used for a single letter (short-hand) parameters, while the ones with a double dash (`--`) are being used for parameters with a longer/full name.
|
|
||||||
|
|
||||||
When you are reading examples, you will often see something like this: `<something here>`, this means that this is a place holder and it should be changed with some value, excluding the `<` and the `>`.
|
|
||||||
|
|
||||||
For example `<username>` you need to change to an username of your liking, example: `notch` (`<` and `>` should not be included).
|
|
||||||
|
|
||||||
`[` and `]` mean that a parameter is an optional one.
|
|
||||||
|
|
||||||
They also can hold some values, example from the MCC:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
```
|
|
||||||
|
|
||||||
When a parameter has a textual value that includes one more spaces, you will need to wrap it the value in double quotes (`"`), example: `--some-parameter="some text here with spaces in it"`
|
|
||||||
|
|
||||||
Here is an example for using a `--help` command line parameter for MCC that will print out a page on how to use MCC from the command line:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
```
|
|
||||||
|
|
||||||
### Quick usage of MCC with examples
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Linux and macOS, you need to type: `./MinecraftClient` instead of `MinecraftClient.exe`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
MinecraftClient.exe <username> <password> <server>
|
|
||||||
MinecraftClient.exe <username> <password> <server> "/mycommand"
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
MinecraftClient.exe --section.setting=value [--other settings]
|
|
||||||
MinecraftClient.exe <settings-file.ini> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Logging in as a user: notch, with a password: password123 onto a server with the ip: mc.someserver.com:25565
|
|
||||||
MinecraftClient.exe notch password123 mc.someserver.com:25565
|
|
||||||
|
|
||||||
# Overriding a setting from MinecraftClient.ini using a command line parameter
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
|
|
||||||
# Providing a custom settings ini file and overriding a language to Chinese
|
|
||||||
MinecraftClient.exe CustomSettingsFile.ini --language=zh
|
|
||||||
```
|
|
||||||
|
|
||||||
### Rules of using the command line parameters
|
|
||||||
|
|
||||||
You can mix and match arguments by following theses rules:
|
|
||||||
|
|
||||||
- First positional argument may be either the login or a settings file
|
|
||||||
- Other positional arguments are read in order: login, password, server, command
|
|
||||||
- Arguments starting with `--` can be in any order and position
|
|
||||||
|
|
||||||
Examples and further explanations:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically connect you to the chosen server.
|
|
||||||
- You may omit password and/or server to specify e.g. only the login
|
|
||||||
- To specify a server but ask password interactively, use `""` as password.
|
|
||||||
- To specify offline mode with no password, use `-` as password.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server> "/mycommand"
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically send `/mycommand` to the server and close.
|
|
||||||
- To send several commands and/or stay connected, use the 1ScriptScheduler1 bot instead.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will load the specified configuration file
|
|
||||||
- If the file contains login / password / server ip, it will automatically connect.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Specify settings on the command-line, see possible value in the configuration file
|
|
||||||
- Use `--section.setting=value` for settings outside the `[Main]` section
|
|
||||||
- Example: `--antiafk.enabled=true` for enabling the `AntiAFK` bot
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini> <login> <password> <server> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Load the specified configuration file and override some settings from the file
|
|
||||||
|
|
||||||
## 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`.
|
|
||||||
|
|
||||||
In scripts and remote control, no slash is needed to perform the command, eg. `quit`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Some commands may not be documented yet or are defined in description of Chat Bots, use `/help` to list them all, or you can contribute to this page.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `animation`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Swing your main or off hand.
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/animation <mainhand|offhand>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bed`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to make the bot sleep easily, all about sleeping in one command.
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
Basic usage: `bed leave|sleep <x> <y> <z>|sleep <radius>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Leave a bed:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed leave
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed on 124 84 76:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 124 84 76
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep ~ ~ ~-2
|
|
||||||
```
|
|
||||||
|
|
||||||
Automatically find a bed in radius of 50 blocks and sleep in it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 50
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bots`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to list and unload a specific bot or all bots. Useful when debugging and developing scripts.
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots <list|unload <bot name|all>>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Unload a bot called CustomScript
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload CustomScript
|
|
||||||
```
|
|
||||||
|
|
||||||
Unload all bots
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload all
|
|
||||||
```
|
|
||||||
|
|
||||||
### `changeslot`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Change your selected slot in the hotbar.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/changeslot <1-9>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `chunk`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Displays the chunk loading status in a nice way.
|
|
||||||
|
|
||||||
::: warning **To use this feature you need to enable the [Terrain and Movements](configuration.md#terrainandmovements)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need a terminal with emoji support, like Powershell 7, Windows Terminal or Alacritty, if you do not want emoji support and want to use cmd or powershell 5, disable emojis with: [`enableemoji`](configuration.md#enableemoji)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/chunk status [chunkX chunkZ|locationX locationY locationZ]
|
|
||||||
```
|
|
||||||
|
|
||||||
How it looks:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
### `dig`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Dig a block on a specific coordinate.
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig 127 63 12
|
|
||||||
```
|
|
||||||
|
|
||||||
Using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig ~ ~-1 ~2
|
|
||||||
```
|
|
||||||
|
|
||||||
### `dropitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Drop all items of a specific type from your inventory.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem <itemtype>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All item types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem diamond
|
|
||||||
```
|
|
||||||
|
|
||||||
### `entity`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Attack an entity, use an entity or get a list of entities around you.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Entity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity <id|entitytype> <attack|use>
|
|
||||||
```
|
|
||||||
|
|
||||||
Get a list of entities around you:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All entity types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Mapping/EntityType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Attack a Zombie:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity Zombie attack
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execif`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute a command if a specific condition is met.
|
|
||||||
|
|
||||||
The condition is a C# expression and the local variables you set using [`set`](#set), [`setrnd`](#setrnd) or the configuration file can be used. The condition is always returned as a boolean, so only comparison can be done, if needed cast the expression result to bool.
|
|
||||||
|
|
||||||
Also the instance of MCC is available with `MCC.`.
|
|
||||||
|
|
||||||
::: tip **All local variables are treated as strings in the app, when comparing their values, you can use `<variable> == "<value>"`, or better use [`.Equals`](https://www.programiz.com/csharp-programming/library/string/equals) method**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
Basic usage: `/execif <condition (C# expression)> ---> <command>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Setting a variable and using it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test=Something
|
|
||||||
/execif test == "Something" ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test2=1
|
|
||||||
/execif test2 == "1" ---> send Success 2!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Basic C# expression:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 + 2 + 3 == 6 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using MCC class:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif MCC.GetHealth() == 20.0 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using in combination with [`execmulti`](#execmulti):
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 == 1 ---> execmulti send 1 -> send 2 -> send 3
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execmulti`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute multiple commands in succession on a single line, useful for debugging or when using [`execif`](#execif)
|
|
||||||
|
|
||||||
Commands are separated by `->`
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
Basic usage: `execmulti <command 1> -> <command 2> -> <command 3> -> ...`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/execmulti send 1 -> send 2 -> send 3 -> sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `quit`
|
|
||||||
|
|
||||||
- **Alias:** `exit`
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect from the server and close the application
|
|
||||||
|
|
||||||
### `reco`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect and reconnect to the server
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reco [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `reload`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Reloads settings from MinecraftClient.ini and Chat Bots.
|
|
||||||
|
|
||||||
::: tip **Some settings won't be reloaded since they are used before the client initialization. Also, settings provided by the command line paramteres will be overriden. This also does not reload the ReplayBot due to technical limitations.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reload
|
|
||||||
```
|
|
||||||
|
|
||||||
### `connect`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Go to the given server and resume the script
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/connect <server> [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`<server>` is either a server IP or a server alias defined in servers file, for more info check out [serverlist](configuration.html#serverlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `script`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Run a script containing a list of commands
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/script <script name>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `send`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Send a message or a command to the server
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/send <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `respawn`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use this to respawn if you are dead (like clicking "respawn" in-game)
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/respawn
|
|
||||||
```
|
|
||||||
|
|
||||||
### `log`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Display some text in the console (useful for scripts)
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/log <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
- Example:
|
|
||||||
|
|
||||||
```
|
|
||||||
/log this is some text
|
|
||||||
```
|
|
||||||
|
|
||||||
### `list`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
List players logged in to the server (uses tab list info sent by server)
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/list
|
|
||||||
```
|
|
||||||
|
|
||||||
### `set`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a value which can be used as `%variable%` in further commands
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set <variable>=<value>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set abc=123
|
|
||||||
```
|
|
||||||
|
|
||||||
### `setrnd`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a `%variable%` randomly to one of the provided values
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> string1 "\"string2\" string3"
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> -7to10
|
|
||||||
```
|
|
||||||
|
|
||||||
(Set a `%variable%` to a number from -7 to 9)
|
|
||||||
|
|
||||||
### `sneak`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle sneaking.
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/Sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `tps`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Get the server TPS (Ticks Per Second).
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/tps
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use item in the hand, this can be used to do a right click on items which open menus on servers.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useitem
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useblock`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Place a block from a hand on a specific coordinate or open an inventory:
|
|
||||||
|
|
||||||
- chest/trap chest
|
|
||||||
- furnace
|
|
||||||
- brewing stand
|
|
||||||
- dispenser/dropper
|
|
||||||
- hopper
|
|
||||||
- shulker
|
|
||||||
- loom
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **Not all inventories have a GUI representation in an ASCII art format.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock 43 72 7
|
|
||||||
```
|
|
||||||
|
|
||||||
### `follow`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Make the bot follow a player.
|
|
||||||
|
|
||||||
::: tip **This command is avaliable only with [Follow Player](chat-bots.md#follow-player) Chat Bot enabled.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Enity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow <player name|stop>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow milutinke
|
|
||||||
```
|
|
||||||
|
|
||||||
### `wait`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Wait X ticks (10 ticks = ~1 second. Only for scripts)
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait <time>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait 20
|
|
||||||
```
|
|
||||||
|
|
||||||
### `move`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for moving when terrain and movements feature is enabled.
|
|
||||||
|
|
||||||
::: tip **You need to have [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Terrain and Movements](configuration.md#terrainandmovements) is currently not supported in `1.4.6 - 1.6`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/move <on|off|get|up|down|east|west|north|south|center|x y z|gravity [on|off]> [-f]: walk or start walking. "-f": force unsafe movements like falling or touching fire
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Enable gravity
|
|
||||||
|
|
||||||
```
|
|
||||||
/move gravity on
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move 125 72 34
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to a center of a block:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move center
|
|
||||||
```
|
|
||||||
|
|
||||||
### `look`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for looking at direction when terrain and movements is enabled
|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look <x y z|yaw pitch|up|down|east|west|north|south>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look up
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/look east
|
|
||||||
```
|
|
||||||
|
|
||||||
### `inventory`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for inventory manipulation.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
MCC defines inventories as containers internally, so player's inventory, chests, droppers, dispensers, hoppers, chest minecarts, barrels, furnaces, etc... are all considered a container, and each one of them has it's ID, the words container and inventory can be used interchangeably.
|
|
||||||
|
|
||||||
Inventory has slots and each one of them has an id.
|
|
||||||
|
|
||||||
::: tip **This command DOES NOT physically open a container (eg. chest), for that you need to use [`useblock`](#useblock) command first.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
An example of player inventory with annotated IDs in ASCII art and a list of items:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
- **Utilisation:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <action> [action parameters] | /inventory <inventories/i> | /inventory <search/s> <item type> [amount]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **player and container can be simplified with p and c accordingly**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Actions:
|
|
||||||
|
|
||||||
- `click`
|
|
||||||
- `shiftclick`
|
|
||||||
- `drop`
|
|
||||||
|
|
||||||
Show/Preview items in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Click/Shift-Click on an item in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <click|shiftclick> <slot id> [left|right|middle]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **The default click is left click**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Close an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop item(s) from an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id> drop <slot id> <number of items|all>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To drop all items from a slot, you can use: `all`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive <slot id> <item type> <amount>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete <slot id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Show all available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory inventories
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for an item of specified type in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory search <item type>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Show player's inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player
|
|
||||||
```
|
|
||||||
|
|
||||||
Show/Preview items in an inventory using an id:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 3
|
|
||||||
```
|
|
||||||
|
|
||||||
Click on an item in player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player click 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Right-Click on an item in slot number/id `4` in an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 click 4 right
|
|
||||||
```
|
|
||||||
|
|
||||||
Close an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop a single item from a player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 36 1
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop all items from a player's inventory in slot number/id `37`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 37 all
|
|
||||||
```
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive 36 diamondblock 64
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory in slot number/id `36` when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for 10 Slime Blocks in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory s SlimeBlock 10
|
|
||||||
```
|
|
||||||
|
|
||||||
### `debug`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle debug messages, useful for chatbot developers.
|
|
||||||
|
|
||||||
### `help`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Show commands help.
|
|
||||||
|
|
||||||
::: tip **Use "/send /help" for server help**
|
|
||||||
:::
|
|
||||||
|
|
@ -1,28 +0,0 @@
|
||||||
---
|
|
||||||
home: true
|
|
||||||
heroImage: /images/MCC_logo_with_edge.png
|
|
||||||
tagline: 'Minecraft Console Client (MCC) is a lightweight open-source Minecraft Java client implemented in C#'
|
|
||||||
actions:
|
|
||||||
-
|
|
||||||
text: Installation
|
|
||||||
link: ./guide/installation.md
|
|
||||||
type: primary
|
|
||||||
-
|
|
||||||
text: Learn More →
|
|
||||||
link: ./guide/
|
|
||||||
type: secondary
|
|
||||||
actionText:
|
|
||||||
actionLink:
|
|
||||||
features:
|
|
||||||
-
|
|
||||||
title: Chat
|
|
||||||
details: Chat with other people on the server
|
|
||||||
-
|
|
||||||
title: Automation
|
|
||||||
details: Create bots to do automated tasks
|
|
||||||
-
|
|
||||||
title: Supported Versions
|
|
||||||
details: 1.4 - 1.19.2
|
|
||||||
footer: Made by MCC Team with ❤️
|
|
||||||
---
|
|
||||||
|
|
||||||
|
|
@ -1,163 +0,0 @@
|
||||||
# Introduction
|
|
||||||
|
|
||||||
- [About](#about)
|
|
||||||
- [Quick Intro (YouTube Videos)](#quick-intro)
|
|
||||||
- [Features](#features)
|
|
||||||
- [Why Minecraft Console Client?](#why-minecraft-console-client)
|
|
||||||
- [Getting Help](#getting-help)
|
|
||||||
- [Submitting a bug report or an idea/feature-request](#bugs-ideas-feature-requests)
|
|
||||||
- [Important notes on some features](#notes-on-some-features)
|
|
||||||
- [Credits](#credits)
|
|
||||||
- [Disclaimer](#disclaimer)
|
|
||||||
- [License](#license)
|
|
||||||
|
|
||||||
## About
|
|
||||||
|
|
||||||
**Minecraft Console Client (MCC)** is a lightweight cross-platform open-source **Minecraft** TUI client for **Java edition** that allows you to connect to any Minecraft Java server, send commands and receive text messages in a fast and easy way without having to open the main Minecraft game.
|
|
||||||
|
|
||||||
It also provides various automations that you can enable for administration and other purposes, as well as extensible C# API for creating Bots.
|
|
||||||
|
|
||||||
It was originally made by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/), now it's maintained by him and many other contributors from the community.
|
|
||||||
|
|
||||||
## Features
|
|
||||||
|
|
||||||
- Chat
|
|
||||||
|
|
||||||
- Send and receive chat messages
|
|
||||||
- [Log chat history](chat-bots.md#chat-log)
|
|
||||||
- [Get alerted on certain keywords](chat-bots.md#alerts)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
|
|
||||||
- [Anti AFK](chat-bots.md#anti-afk)
|
|
||||||
- [Auto Relog](chat-bots.md#auto-relog)
|
|
||||||
- [Script Scheduler](chat-bots.md#script-scheduler)
|
|
||||||
- [Remote Control](chat-bots.md#remote-control)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
- [Auto Attack](chat-bots.md#auto-attack)
|
|
||||||
- [Auto Fishing](chat-bots.md#auto-fishing)
|
|
||||||
- [Auto Eat](chat-bots.md#auto-eat)
|
|
||||||
- [Auto Craft](chat-bots.md#auto-craft)
|
|
||||||
- [Mailer Bot](chat-bots.md#mailer)
|
|
||||||
- [Auto Drop](chat-bots.md#auto-drop)
|
|
||||||
- [Replay Mod](chat-bots.md#replay-mod)
|
|
||||||
- [API for creating Bots in C#](creating-bots.md#creating-chat-bots)
|
|
||||||
- [Docker Support](installation.md#using-docker)
|
|
||||||
- [Inventory Handling](usage.md#inventory)
|
|
||||||
- [Terrain Traversing](usage.md#move)
|
|
||||||
- Entity Handling
|
|
||||||
|
|
||||||
_NOTE: Some of mentioned features are disabled by default and you will have to turn them on in the configuration file and some may require additional configuration on your part for your specific usage._
|
|
||||||
|
|
||||||
## Why Minecraft Console Client?
|
|
||||||
|
|
||||||
- Easy to use
|
|
||||||
- Helpful community
|
|
||||||
- Open-Source
|
|
||||||
- Fast performance
|
|
||||||
- Cross-Platform
|
|
||||||
- Docker Support
|
|
||||||
- 10 years of continuous development
|
|
||||||
- Active contributors
|
|
||||||
- Widely used
|
|
||||||
|
|
||||||
## Quick Intro
|
|
||||||
|
|
||||||
Don't have time to read through the documentation, we got you, our community has made some simple introduction videos about the **Minecraft Console Client**.
|
|
||||||
|
|
||||||
### The list of the tutorials:
|
|
||||||
|
|
||||||
Installation:
|
|
||||||
|
|
||||||
- [Installation on Windows by Daenges](https://www.youtube.com/watch?v=BkCqOCa2uQw)
|
|
||||||
- [Installation on Windows + Auto AFK and More by Dexter113](https://www.youtube.com/watch?v=FxJ0KFIHDrY)
|
|
||||||
|
|
||||||
Using Commands, Scripts and other features:
|
|
||||||
|
|
||||||
- [Minecraft Console Client | Tutorial | Commands, Scripts, AppVars, Matches, Tasks and C# Scripts by Daenges](https://youtu.be/JbDpwwETEnU)
|
|
||||||
- [Console Client Tutorial - Scripting by Zixxter](https://www.youtube.com/watch?v=XE7rYBFJxn0)
|
|
||||||
|
|
||||||
## Getting Help
|
|
||||||
|
|
||||||
MCC has a community that is willing to help, we have a Discussions section in out Git Hub repository.
|
|
||||||
|
|
||||||
Click [here](https://github.com/MCCTeam/Minecraft-Console-Client/discussions) to access it.
|
|
||||||
|
|
||||||
### Before getting help
|
|
||||||
|
|
||||||
- **Please use the search option here or in the discussion section and read the documentation so we avoid duplicate questions. Thank you!**
|
|
||||||
- **Please be kind and patient, respect others as they're the ones using their time to help you**
|
|
||||||
|
|
||||||
## Bugs, Ideas, Feature Requests
|
|
||||||
|
|
||||||
Bug reporting, idea submitting or feature requesting are done in the [Issues](https://github.com/MCCTeam/Minecraft-Console-Client/issues) section of our [Github repository]([here](https://github.com/MCCTeam/Minecraft-Console-Client)).
|
|
||||||
|
|
||||||
Navigate to the Issues section, search for a bug, idea or a feature using the search option here in the documentation and in the `Issues` section on Git Hub before making your own.
|
|
||||||
|
|
||||||
If you haven't found anything similar, go ahead and click on the `New issue` button, then choose what you want to do.
|
|
||||||
|
|
||||||
If you're reporting a bug, please be descriptive as much as possible, try to explain how to re-create the bug, attack screenshots and logs, make sure that you have [`debugmessages`](configuration.me#debugmessages) set to `true` before sending a bug report or taking a screenshot.
|
|
||||||
|
|
||||||
### Before submitting
|
|
||||||
|
|
||||||
- **Please use the search option here or in the `Issues` section and read the documentation so we avoid duplicate questions/ideas/reports. Thank you!**
|
|
||||||
- **Please be kind, patient and respect others. Thank you!**
|
|
||||||
|
|
||||||
## Notes on some features
|
|
||||||
|
|
||||||
### Inventory, Terrain and Entity Handling
|
|
||||||
|
|
||||||
Inventory handling is currently not supported in versions: `1.4.6 - 1.9`
|
|
||||||
|
|
||||||
Terrain handling is currently not supported in versions: `1.4.6 - 1.6`
|
|
||||||
|
|
||||||
Entity handling is currently not supported in versions: `1.4.6 - 1.9` (but `1.8` and `1.9` are being worked on, almost at the working state, only `EntityMetadata` packet remains to be fixed)
|
|
||||||
|
|
||||||
There features might not always be implemented in the latest version of the game, since they're often subjected to major changes by Mojang, and we need some time to figure out what has changed and to implement the required changes.
|
|
||||||
|
|
||||||
If there was a major game update, and the MCC hasn't been updated to support these features, if you're a programmer, feel free to contribute to the project.
|
|
||||||
|
|
||||||
## Credits
|
|
||||||
|
|
||||||
_Project initiated by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/)._
|
|
||||||
|
|
||||||
Many features would not have been possible without the help of our talented community:
|
|
||||||
|
|
||||||
**Maintainers**
|
|
||||||
|
|
||||||
ORelio, ReinforceZwei, milutinke, BruceChenQAQ, bradbyte
|
|
||||||
|
|
||||||
**Ideas**
|
|
||||||
|
|
||||||
ambysdotnet, Awpocalypse, azoundria, bearbear12345, bSun0000, Cat7373, dagonzaros, Dids, Elvang, fuckofftwice, GeorgH93, initsuj, JamieSinn, joshbean39, LehmusFIN, maski, medxo, mobdon, MousePak, TNT-UP, TorchRJ, yayes2, Yoann166, ZizzyDizzyMC and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BIdea%5D+is%3Aopen).
|
|
||||||
|
|
||||||
**Bug Hunters**
|
|
||||||
|
|
||||||
1092CQ, ambysdotnet, bearbear12345, c0dei, Cat7373, Chtholly, Darkaegis, dbear20, DigitalSniperz, doranchak, drXor, FantomHD, gerik43, ibspa, iTzMrpitBull, JamieSinn, k3ldon, KenXeiko, link3321, lyze237, mattman00000, Nicconyancat, Pokechu22, ridgewell, Ryan6578, Solethia, TNT-UP, TorchRJ, TRTrident, WeedIsGood, xp9kus, Yoann166 and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BBUG%5D+is%3Aopen+).
|
|
||||||
|
|
||||||
**Contributors**
|
|
||||||
|
|
||||||
Allyoutoo, Aragas, Bancey, bearbear12345, corbanmailloux, Daenges, dbear20, dogwatch, initsuj, JamieSinn, justcool393, lokulin, maxpowa, medxo, milutinke, Pokechu22, ReinforceZwei, repository, TheMeq, TheSnoozer, vkorn, v1RuX, yunusemregul, ZizzyDizzyMC, BruceChenQAQ, bradbyte _... And all the [GitHub contributors](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors)!_
|
|
||||||
|
|
||||||
**Libraries:**
|
|
||||||
|
|
||||||
Minecraft Console Client also borrows code from the following libraries:
|
|
||||||
|
|
||||||
| Name | Purpose | Author | License |
|
|
||||||
| ----------- | ---------------- | ---------------- | ------- |
|
|
||||||
| Biko | Proxy handling | Benton Stark | MIT |
|
|
||||||
| Heijden.Dns | DNS SRV Lookup | Geoffrey Huntley | MIT |
|
|
||||||
| DotNetZip | Zlib compression | Dino Chiesa | MS-PL |
|
|
||||||
|
|
||||||
## Disclaimer
|
|
||||||
|
|
||||||
Even if everything should work, we are not responsible for any damage this app could cause to your computer or your server. This app does not steal your password. If you don't trust it, don't use it or check & compile from the source code.
|
|
||||||
|
|
||||||
Also, remember that when you connect to a server with this program, you will appear where you left the last time. This means that **you can die if you log in in an unsafe place on a survival server!** Use the script scheduler bot to send a teleport command after logging in.
|
|
||||||
|
|
||||||
We remind you that **you may get banned** by your server for using this program. Use accordingly with server rules.
|
|
||||||
|
|
||||||
## License
|
|
||||||
|
|
||||||
Minecraft Console Client is a totally free of charge, open source project. The source code is available at [Github Repository](https://github.com/MCCTeam/Minecraft-Console-Client)
|
|
||||||
|
|
||||||
Unless specifically stated, source code is from the MCC Team or Contributors, and available under CDDL-1.0. More info about CDDL-1.0: [http://qstuff.blogspot.fr/2007/04/why-cddl.html](http://qstuff.blogspot.fr/2007/04/why-cddl.html) Full license at [http://opensource.org/licenses/CDDL-1.0](http://opensource.org/licenses/CDDL-1.0)
|
|
||||||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1,76 +0,0 @@
|
||||||
# Contributing
|
|
||||||
|
|
||||||
At this moment this page needs to be created.
|
|
||||||
|
|
||||||
For now you can use our article from the [Git Hub repository Wiki](https://github.com/MCCTeam/Minecraft-Console-Client/wiki/Update-console-client-to-new-version) written by [ReinforceZwei](https://github.com/ReinforceZwei).
|
|
||||||
|
|
||||||
## Translations
|
|
||||||
|
|
||||||
MCC now supports the following languages (Alphabetical order) :
|
|
||||||
* `de.ini` : Deutsch - German
|
|
||||||
* **`en.ini` : English - English**
|
|
||||||
* `fr.ini` : Français (France) - French
|
|
||||||
* `ru.ini` : Русский (Russkiy) - Russian
|
|
||||||
* `vi.ini` : Tiếng Việt (Việt Nam) - Vietnamese
|
|
||||||
* `zh-Hans.ini` : 简体中文 - Chinese Simplified
|
|
||||||
* `zh-Hant.ini` : 繁體中文 - Chinese Traditional
|
|
||||||
|
|
||||||
### Add new translation
|
|
||||||
|
|
||||||
1. First you need to get the name of the translated file.
|
|
||||||
* Visit [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c) and find the first occurrence of the language you need to translate in the table below.
|
|
||||||
* Use the language code of the row in the table as the name of the translation file.
|
|
||||||
* For example:
|
|
||||||
* `English` -> row `English 0x0009` -> `en` -> `en.ini`
|
|
||||||
* `Chinese (Traditional)` -> row `Chinese (Traditional) 0x7C04` -> `zh-Hant` -> `zh-Hant.ini`
|
|
||||||
|
|
||||||
2. Which system languages are recommended to use this translation?
|
|
||||||
* Still check the table in [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c), one language may have multiple rows.
|
|
||||||
* You will need to indicate which language codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `de.ini` applies to `de`, `de-AT`, `de-BE`, `de-DE`, ...
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh-Hans`, `zh`, `zh-CN`, `zh-SG`.
|
|
||||||
|
|
||||||
3. Which game languages are recommended to use this translation?
|
|
||||||
* Check out the table in [this link](https://github.com/MCCTeam/Minecraft-Console-Client/discussions/2239), where the `Locale Code` column indicates the language code in minecraft.
|
|
||||||
* You will need to indicate which locale codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `fr.ini` applies to `fr_ca`, `fr_fr`.
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh_cn`.
|
|
||||||
|
|
||||||
4. Add the new translation to the code. (Optional)
|
|
||||||
* **If you are not familiar with programming, you can skip this step and just write the above information in your PR or issue.**
|
|
||||||
* Add the newly created translation file `xx.ini` to the project `/Resources/lang/xx.ini`.
|
|
||||||
* Open `/DefaultConfigResource.resx`.
|
|
||||||
* Click `Add Resources`.
|
|
||||||
* Choose `/Resources/lang/xx.ini`.
|
|
||||||
* Rename the added resource file in `/DefaultConfigResource.resx` to `Translation_xx`.
|
|
||||||
* Open `/Translations.cs`.
|
|
||||||
* Find `public static Tuple<string, string[]> GetTranslationPriority();`
|
|
||||||
* Update the mapping of system language codes to translation files.
|
|
||||||
* Find `public static string[] GetTranslationPriority(string gameLanguage);`
|
|
||||||
* Update the mapping of game locale code to translation files.
|
|
||||||
|
|
||||||
5. Follow the section "Update existing translation".
|
|
||||||
|
|
||||||
### Update existing translation
|
|
||||||
|
|
||||||
1. Visit [the lang folder](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/Resources/lang), download `en.ini` and the language you want to translate(`xx.ini`).
|
|
||||||
|
|
||||||
2. Compare `en.ini` and `xx.ini` and update outdated or non-existent entries in `xx.ini`.
|
|
||||||
|
|
||||||
3. Once you finished the translation work, submit a pull request or send us the file through an [Issue](https://github.com/MCCTeam/Minecraft-Console-Client/issues) in case you are not familiar with Git.
|
|
||||||
|
|
||||||
### Translate README.md
|
|
||||||
|
|
||||||
1. Get the English version of the README.md from [here](https://raw.githubusercontent.com/MCCTeam/Minecraft-Console-Client/master/README.md).
|
|
||||||
|
|
||||||
2. See `Add new translation -> 1.` for the target language code. Assume it is `xx`.
|
|
||||||
|
|
||||||
3. Complete the translation according to the English README.md and name the translated version as `README-xx.md`.
|
|
||||||
|
|
||||||
4. In the English README, above the "About" section, add the name of the language and a hyperlink to `README-xx.md`.
|
|
||||||
|
|
||||||
## Contributors
|
|
||||||
|
|
||||||
[Check out our contributors on Github](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors).
|
|
||||||
|
|
@ -1,177 +0,0 @@
|
||||||
# Creating Chat Bots
|
|
||||||
|
|
||||||
- [Notes](#notes)
|
|
||||||
- [Requirements](#requirements)
|
|
||||||
- [Quick Introduction](#quick-introduction)
|
|
||||||
- [Examples](#examples)
|
|
||||||
- [C# API](#c#-api)
|
|
||||||
|
|
||||||
## Notes
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For now this page contains only the bare basics of the Chat Bot API, enough of details to teach you how to make basic Chat Bots. For more details you need to take a look at the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) and [Examples](#examples). This page will be improved in the future.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a rich C# API which allows you to create Chat Bots (effectively plugins) which can help you create complex automations which normal scripts may not be able to do.
|
|
||||||
|
|
||||||
## Requirements
|
|
||||||
|
|
||||||
- A basic knowledge of C# programming language
|
|
||||||
- A text editor
|
|
||||||
|
|
||||||
If you're not familiar with the C# programming language, we suggest taking a look at the following resources:
|
|
||||||
|
|
||||||
Crash courses:
|
|
||||||
|
|
||||||
- [C# Crash Course playlist by Teddy Smit](https://www.youtube.com/watch?v=67oWw9TanOk&list=PL82C6-O4XrHfoN_Y4MwGvJz5BntiL0z0D)
|
|
||||||
|
|
||||||
More in-depth:
|
|
||||||
|
|
||||||
- [Learn C# Youtube Playlist by Microsoft](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVxKLQCHpiUWun7vlJJvUiN)
|
|
||||||
- [Getting started with C# (An index of tutorials and the documentation) by Microsoft](https://docs.microsoft.com/en-us/dotnet/csharp/)
|
|
||||||
|
|
||||||
## Quick Introduction
|
|
||||||
|
|
||||||
This introduction assumes that you have the basic knowledge of C#.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Here we will use terms Chat Bot and Script interchangeably**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Create a new empty file and name it `ExampleChatBot.cs` in the same folder where you have your MCC installed.
|
|
||||||
|
|
||||||
Paste the following example code:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
MCC.LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
|
|
||||||
// The code and comments above are defining a "Script Metadata" section
|
|
||||||
|
|
||||||
// Every single chat bot (script) must be a class which extends the ChatBot class.
|
|
||||||
// Your class must be instantiates in the "Script Metadata" section and passed to MCC.LoadBot function.
|
|
||||||
class ExampleChatBot : ChatBot
|
|
||||||
{
|
|
||||||
// This method will be called when the script has been initialized for the first time, it's called only once
|
|
||||||
// Here you can initialize variables, eg. Dictionaries. etc...
|
|
||||||
public override void Initialize()
|
|
||||||
{
|
|
||||||
LogToConsole("An example Chat Bot has been initialized!");
|
|
||||||
}
|
|
||||||
|
|
||||||
// This is a function that will be run when we get a chat message from a server
|
|
||||||
// In this example it just detects the type of the message and prints it out
|
|
||||||
public override void GetText(string text)
|
|
||||||
{
|
|
||||||
string message = "";
|
|
||||||
string username = "";
|
|
||||||
text = GetVerbatim(text);
|
|
||||||
|
|
||||||
if (IsPrivateMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has sent you a private message: " + message);
|
|
||||||
}
|
|
||||||
else if (IsChatMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has said: " + message);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
Start MCC, connect to a server and run the following internal command: `/script ExampleChatBot.cs`.
|
|
||||||
|
|
||||||
If you did everything right you should see: `[Example Chat Bot] An example Chat Bot has been initialised!` message appear in your console log.
|
|
||||||
|
|
||||||
### Structure of Chat Bots
|
|
||||||
|
|
||||||
Chat Bot (Script) structure is the following:
|
|
||||||
|
|
||||||
```
|
|
||||||
<script metadata>
|
|
||||||
<chat bot class>
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** is a section with a custom format that mixes in C# with our format using comments. Every single Chat Bot (Script) must have this section at the beginning in order to work.
|
|
||||||
|
|
||||||
### Script Metadata Format
|
|
||||||
|
|
||||||
`//MCCScript 1.0` marks the beginning of the **Script Metadata** section, this must always be on the first line or the Chat Bot (Script) will not load and will throw an error.
|
|
||||||
|
|
||||||
`//MCCScript Extensions` marks the end of the **Script Metadata** section, this must be defined before a Chat Bot (Script) class.
|
|
||||||
|
|
||||||
In order for your Chat Bot (Script) to properly load in-between the `//MCCScript 1.0` and the `//MCCScript Extensions` lines you must instantiate your Chat Bot (Script) class and pass it to the `MCC.LoadBot` function.
|
|
||||||
|
|
||||||
Example code:
|
|
||||||
|
|
||||||
```
|
|
||||||
MCC.LoadBot(new YourChatBotClassNameHere());
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** section allows for including C# packages and libraries with: `//using <namespace>` and `/dll <dll name>`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Avoid adding whitespace between `//` and keywords**
|
|
||||||
:::
|
|
||||||
|
|
||||||
By the default the following packages are loaded:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Text.RegularExpressions;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.IO;
|
|
||||||
using System.Net;
|
|
||||||
using System.Threading;
|
|
||||||
using MinecraftClient;
|
|
||||||
using MinecraftClient.Mapping;
|
|
||||||
using MinecraftClient.Inventory;
|
|
||||||
```
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//using System.Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
```
|
|
||||||
|
|
||||||
Full Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
//using System.Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
|
|
||||||
MCC.LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
```
|
|
||||||
|
|
||||||
### Chat Bot Class
|
|
||||||
|
|
||||||
After the end of the **Script Metadata** section, you basically can define any number of classes you like, the only limitation is that the main class of your Chat Bot (Script) must extend `ChatBot` class.
|
|
||||||
|
|
||||||
There are no required methods, everything is optional.
|
|
||||||
|
|
||||||
When the Chat Bot (Script) has been initialized for the first time the `Initialize` method will be called. In it you can initialize variables, eg. Dictionaries, etc..
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For allocating resources like a database connection, we recommend allocating them in `AfterGameJoined` and freeing them in `OnDisconnect`** :::.
|
|
||||||
|
|
||||||
## Examples
|
|
||||||
|
|
||||||
You can find a lot of examples in our Git Hub Repository at [ChatBots](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/ChatBots) and [config](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/config).
|
|
||||||
|
|
||||||
## C# API
|
|
||||||
|
|
||||||
As of the time of writing, the C# API has been changed in forks that are yet to be merged, so for now you can use the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) for reference.
|
|
||||||
|
|
||||||
Each method is well documented with standard C# documentation comments.
|
|
||||||
|
|
||||||
In the future we will make a script to auto-generate this section based on the documentation in the code.
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -1,958 +0,0 @@
|
||||||
# Usage
|
|
||||||
|
|
||||||
How to run the program:
|
|
||||||
|
|
||||||
- [Running on Windows](#windows)
|
|
||||||
- [Running on Linux, macOS](#linux-macos)
|
|
||||||
- [Running using Docker](#docker)
|
|
||||||
|
|
||||||
Using the command line parameters:
|
|
||||||
|
|
||||||
- [Examples](#quick-usage-of-mcc-with-examples)
|
|
||||||
- [Command line parameters](#command-line-parameters)
|
|
||||||
- [Internal commands](#internal-commands)
|
|
||||||
|
|
||||||
## Windows
|
|
||||||
|
|
||||||
Simply run `MinecraftClient.exe`
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Windows it's best using [Windows Terminal](https://docs.microsoft.com/en-us/windows/terminal/install) for the best experience and looks. Some features like emojis in the [`/chunk`](#chunk) command do not work in CMD or Powershell 5**
|
|
||||||
:::
|
|
||||||
|
|
||||||
## Linux, macOS
|
|
||||||
|
|
||||||
To run the client you need to type the following command in your terminal emulator:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
./MinecraftClient
|
|
||||||
```
|
|
||||||
|
|
||||||
If you want to keep it running in the background you can use `screen` (Linux only) Example:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Start the screen
|
|
||||||
screen -S mcc
|
|
||||||
|
|
||||||
# Run it
|
|
||||||
./MinecraftClient
|
|
||||||
|
|
||||||
# Detach from the screen by pressing CTRL + A + D
|
|
||||||
|
|
||||||
# Re-attach if you want to have accces again
|
|
||||||
screen -r mcc
|
|
||||||
```
|
|
||||||
|
|
||||||
_Learn more on how to use the screen command: [YouTube](https://www.youtube.com/watch?v=_ZJiEX4rmN4)_
|
|
||||||
|
|
||||||
## Docker
|
|
||||||
|
|
||||||
See [Run using Docker](./guide/installation.md#using-docker)
|
|
||||||
|
|
||||||
## Command-line usage
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a plethora of useful command line parameters, here you can learn about them.
|
|
||||||
|
|
||||||
### For people not familiar with the command line
|
|
||||||
|
|
||||||
For people who are not familiar with the usage of programs in the command line (terminal emulators), here we will explain what every single thing means, if you're already experienced you can skip this.
|
|
||||||
|
|
||||||
In command line (terminal emulators) you can run programs by specifying their name and hitting enter, usually programs have additional way of being configured, started or provided some additional data in a different manner, this is achieved by using command line parameters.
|
|
||||||
|
|
||||||
Command line parameters are written after the name of the program, they're separated by spaces and they can have a few different formats, examples:
|
|
||||||
|
|
||||||
- `someparameter`
|
|
||||||
- `-some-parameter`
|
|
||||||
- `--some-other-parameter`
|
|
||||||
- `--some-setting="some value"`
|
|
||||||
- `-a=5`
|
|
||||||
|
|
||||||
Parameters with a single dash (`-`) are usually used for a single letter (short-hand) parameters, while the ones with a double dash (`--`) are being used for parameters with a longer/full name.
|
|
||||||
|
|
||||||
When you are reading examples, you will often see something like this: `<something here>`, this means that this is a place holder and it should be changed with some value, excluding the `<` and the `>`.
|
|
||||||
|
|
||||||
For example `<username>` you need to change to an username of your liking, example: `notch` (`<` and `>` should not be included).
|
|
||||||
|
|
||||||
`[` and `]` mean that a parameter is an optional one.
|
|
||||||
|
|
||||||
They also can hold some values, example from the MCC:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
```
|
|
||||||
|
|
||||||
When a parameter has a textual value that includes one more spaces, you will need to wrap it the value in double quotes (`"`), example: `--some-parameter="some text here with spaces in it"`
|
|
||||||
|
|
||||||
Here is an example for using a `--help` command line parameter for MCC that will print out a page on how to use MCC from the command line:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
```
|
|
||||||
|
|
||||||
### Quick usage of MCC with examples
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**On Linux and macOS, you need to type: `./MinecraftClient` instead of `MinecraftClient.exe`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --help
|
|
||||||
MinecraftClient.exe <username> <password> <server>
|
|
||||||
MinecraftClient.exe <username> <password> <server> "/mycommand"
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
MinecraftClient.exe --section.setting=value [--other settings]
|
|
||||||
MinecraftClient.exe <settings-file.ini> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Logging in as a user: notch, with a password: password123 onto a server with the ip: mc.someserver.com:25565
|
|
||||||
MinecraftClient.exe notch password123 mc.someserver.com:25565
|
|
||||||
|
|
||||||
# Overriding a setting from MinecraftClient.ini using a command line parameter
|
|
||||||
MinecraftClient.exe --debugmessages=false
|
|
||||||
|
|
||||||
# Providing a custom settings ini file and overriding a language to Chinese
|
|
||||||
MinecraftClient.exe CustomSettingsFile.ini --language=zh
|
|
||||||
```
|
|
||||||
|
|
||||||
### Rules of using the command line parameters
|
|
||||||
|
|
||||||
You can mix and match arguments by following theses rules:
|
|
||||||
|
|
||||||
- First positional argument may be either the login or a settings file
|
|
||||||
- Other positional arguments are read in order: login, password, server, command
|
|
||||||
- Arguments starting with `--` can be in any order and position
|
|
||||||
|
|
||||||
Examples and further explanations:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically connect you to the chosen server.
|
|
||||||
- You may omit password and/or server to specify e.g. only the login
|
|
||||||
- To specify a server but ask password interactively, use `""` as password.
|
|
||||||
- To specify offline mode with no password, use `-` as password.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <login> <password> <server> "/mycommand"
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will automatically send `/mycommand` to the server and close.
|
|
||||||
- To send several commands and/or stay connected, use the 1ScriptScheduler1 bot instead.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini>
|
|
||||||
```
|
|
||||||
|
|
||||||
- This will load the specified configuration file
|
|
||||||
- If the file contains login / password / server ip, it will automatically connect.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe --setting=value [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Specify settings on the command-line, see possible value in the configuration file
|
|
||||||
- Use `--section.setting=value` for settings outside the `[Main]` section
|
|
||||||
- Example: `--antiafk.enabled=true` for enabling the `AntiAFK` bot
|
|
||||||
|
|
||||||
```bash
|
|
||||||
MinecraftClient.exe <myconfig.ini> <login> <password> <server> [--other settings]
|
|
||||||
```
|
|
||||||
|
|
||||||
- Load the specified configuration file and override some settings from the file
|
|
||||||
|
|
||||||
## 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`.
|
|
||||||
|
|
||||||
In scripts and remote control, no slash is needed to perform the command, eg. `quit`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Some commands may not be documented yet or are defined in description of Chat Bots, use `/help` to list them all, or you can contribute to this page.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `animation`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Swing your main or off hand.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/animation <mainhand|offhand>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bed`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to make the bot sleep easily, all about sleeping in one command.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `bed leave|sleep <x> <y> <z>|sleep <radius>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Leave a bed:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed leave
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed on 124 84 76:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 124 84 76
|
|
||||||
```
|
|
||||||
|
|
||||||
Sleep in a bed using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep ~ ~ ~-2
|
|
||||||
```
|
|
||||||
|
|
||||||
Automatically find a bed in radius of 50 blocks and sleep in it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/bed sleep 50
|
|
||||||
```
|
|
||||||
|
|
||||||
### `bots`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to list and unload a specific bot or all bots. Useful when debugging and developing scripts.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots <list|unload <bot name|all>>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Unload a bot called CustomScript
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload CustomScript
|
|
||||||
```
|
|
||||||
|
|
||||||
Unload all bots
|
|
||||||
|
|
||||||
```
|
|
||||||
/bots unload all
|
|
||||||
```
|
|
||||||
|
|
||||||
### `changeslot`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Change your selected slot in the hotbar.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/changeslot <1-9>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `chunk`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Displays the chunk loading status in a nice way.
|
|
||||||
|
|
||||||
::: warning **To use this feature you need to enable the [Terrain and Movements](configuration.md#terrainandmovements)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need a terminal with emoji support, like Powershell 7, Windows Terminal or Alacritty, if you do not want emoji support and want to use cmd or powershell 5, disable emojis with: [`enableemoji`](configuration.md#enableemoji)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/chunk status [chunkX chunkZ|locationX locationY locationZ]
|
|
||||||
```
|
|
||||||
|
|
||||||
How it looks:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
### `dig`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Dig a block on a specific coordinate.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig 127 63 12
|
|
||||||
```
|
|
||||||
|
|
||||||
Using relative coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/dig ~ ~-1 ~2
|
|
||||||
```
|
|
||||||
|
|
||||||
### `dropitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Drop all items of a specific type from your inventory.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem <itemtype>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All item types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/dropitem diamond
|
|
||||||
```
|
|
||||||
|
|
||||||
### `entity`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Attack an entity, use an entity or get a list of entities around you.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Entity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity <id|entitytype> <attack|use>
|
|
||||||
```
|
|
||||||
|
|
||||||
Get a list of entities around you:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **All entity types can be found [here](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Mapping/EntityType.cs).**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Attack a Zombie:
|
|
||||||
|
|
||||||
```
|
|
||||||
/entity Zombie attack
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execif`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute a command if a specific condition is met.
|
|
||||||
|
|
||||||
The condition is a C# expression and the local variables you set using [`set`](#set), [`setrnd`](#setrnd) or the configuration file can be used. The condition is always returned as a boolean, so only comparison can be done, if needed cast the expression result to bool.
|
|
||||||
|
|
||||||
Also the instance of MCC is available with `MCC.`.
|
|
||||||
|
|
||||||
::: tip **All local variables are treated as strings in the app, when comparing their values, you can use `<variable> == "<value>"`, or better use [`.Equals`](https://www.programiz.com/csharp-programming/library/string/equals) method**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `/execif <condition (C# expression)> ---> <command>`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Setting a variable and using it:
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test=Something
|
|
||||||
/execif test == "Something" ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/set test2=1
|
|
||||||
/execif test2 == "1" ---> send Success 2!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Basic C# expression:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 + 2 + 3 == 6 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using MCC class:
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif MCC.GetHealth() == 20.0 ---> send Success!
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Using in combination with [`execmulti`](#execmulti):
|
|
||||||
|
|
||||||
```
|
|
||||||
/execif 1 == 1 ---> execmulti send 1 -> send 2 -> send 3
|
|
||||||
```
|
|
||||||
|
|
||||||
### `execmulti`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Allows you to execute multiple commands in succession on a single line, useful for debugging or when using [`execif`](#execif)
|
|
||||||
|
|
||||||
Commands are separated by `->`
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage: `execmulti <command 1> -> <command 2> -> <command 3> -> ...`
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/execmulti send 1 -> send 2 -> send 3 -> sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `quit`
|
|
||||||
|
|
||||||
- **Alias:** `exit`
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect from the server and close the application
|
|
||||||
|
|
||||||
### `reco`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Disconnect and reconnect to the server
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reco [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `reload`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Reloads settings from MinecraftClient.ini and Chat Bots.
|
|
||||||
|
|
||||||
::: tip **Some settings won't be reloaded since they are used before the client initialization. Also, settings provided by the command line paramteres will be overriden. This also does not reload the ReplayBot due to technical limitations.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/reload
|
|
||||||
```
|
|
||||||
|
|
||||||
### `connect`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Go to the given server and resume the script
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/connect <server> [account]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **`<server>` is either a server IP or a server alias defined in servers file, for more info check out [serverlist](configuration.html#serverlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **`[account]` is an account alias defined in accounts file, for more info check out [accountlist](configuration.html#accountlist)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
### `script`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Run a script containing a list of commands
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/script <script name>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `send`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Send a message or a command to the server
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/send <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
### `respawn`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use this to respawn if you are dead (like clicking "respawn" in-game)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/respawn
|
|
||||||
```
|
|
||||||
|
|
||||||
### `log`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Display some text in the console (useful for scripts)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/log <text>
|
|
||||||
```
|
|
||||||
|
|
||||||
- Example:
|
|
||||||
|
|
||||||
```
|
|
||||||
/log this is some text
|
|
||||||
```
|
|
||||||
|
|
||||||
### `list`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
List players logged in to the server (uses tab list info sent by server)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/list
|
|
||||||
```
|
|
||||||
|
|
||||||
### `set`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a value which can be used as `%variable%` in further commands
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set <variable>=<value>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/set abc=123
|
|
||||||
```
|
|
||||||
|
|
||||||
### `setrnd`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Set a `%variable%` randomly to one of the provided values
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> string1 "\"string2\" string3"
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/setrnd <variable> -7to10
|
|
||||||
```
|
|
||||||
|
|
||||||
(Set a `%variable%` to a number from -7 to 9)
|
|
||||||
|
|
||||||
### `sneak`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle sneaking.
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/Sneak
|
|
||||||
```
|
|
||||||
|
|
||||||
### `tps`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Get the server TPS (Ticks Per Second).
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/tps
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useitem`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Use item in the hand, this can be used to do a right click on items which open menus on servers.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useitem
|
|
||||||
```
|
|
||||||
|
|
||||||
### `useblock`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Place a block from a hand on a specific coordinate or open an inventory:
|
|
||||||
|
|
||||||
- chest/trap chest
|
|
||||||
- furnace
|
|
||||||
- brewing stand
|
|
||||||
- dispenser/dropper
|
|
||||||
- hopper
|
|
||||||
- shulker
|
|
||||||
- loom
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) and [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **Not all inventories have a GUI representation in an ASCII art format.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock <x> <y> <z>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/useblock 43 72 7
|
|
||||||
```
|
|
||||||
|
|
||||||
### `follow`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Make the bot follow a player.
|
|
||||||
|
|
||||||
::: tip **This command is avaliable only with [Follow Player](chat-bots.md#follow-player) Chat Bot enabled.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: tip **You need to have [Enity Handling](configuration.md#entityhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow <player name|stop>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Example:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/follow milutinke
|
|
||||||
```
|
|
||||||
|
|
||||||
### `wait`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Wait X ticks (10 ticks = ~1 second. Only for scripts)
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait <time>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/wait 20
|
|
||||||
```
|
|
||||||
|
|
||||||
### `move`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for moving when terrain and movements feature is enabled.
|
|
||||||
|
|
||||||
::: tip **You need to have [Terrain and Movements](configuration.md#terrainandmovements) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Terrain and Movements](configuration.md#terrainandmovements) is currently not supported in `1.4.6 - 1.6`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/move <on|off|get|up|down|east|west|north|south|center|x y z|gravity [on|off]> [-f]: walk or start walking. "-f": force unsafe movements like falling or touching fire
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Enable gravity
|
|
||||||
|
|
||||||
```
|
|
||||||
/move gravity on
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to coordinates:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move 125 72 34
|
|
||||||
```
|
|
||||||
|
|
||||||
Move to a center of a block:
|
|
||||||
|
|
||||||
```
|
|
||||||
/move center
|
|
||||||
```
|
|
||||||
|
|
||||||
### `look`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for looking at direction when terrain and movements is enabled
|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look <x y z|yaw pitch|up|down|east|west|north|south>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
```
|
|
||||||
/look up
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/look east
|
|
||||||
```
|
|
||||||
|
|
||||||
### `inventory`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Used for inventory manipulation.
|
|
||||||
|
|
||||||
::: tip **You need to have [Inventory Handling](configuration.md#inventoryhandling) enabled in order for this to work.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
::: warning **The [Inventory Handling](configuration.md#inventoryhandling) is currently not supported in `1.4.6 - 1.9`.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
MCC defines inventories as containers internally, so player's inventory, chests, droppers, dispensers, hoppers, chest minecarts, barrels, furnaces, etc... are all considered a container, and each one of them has it's ID, the words container and inventory can be used interchangeably.
|
|
||||||
|
|
||||||
Inventory has slots and each one of them has an id.
|
|
||||||
|
|
||||||
::: tip **This command DOES NOT physically open a container (eg. chest), for that you need to use [`useblock`](#useblock) command first.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
An example of player inventory with annotated IDs in ASCII art and a list of items:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
- **Usage:**
|
|
||||||
|
|
||||||
Basic usage:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <action> [action parameters] | /inventory <inventories/i> | /inventory <search/s> <item type> [amount]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **player and container can be simplified with p and c accordingly**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Actions:
|
|
||||||
|
|
||||||
- `click`
|
|
||||||
- `shiftclick`
|
|
||||||
- `drop`
|
|
||||||
|
|
||||||
Show/Preview items in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Click/Shift-Click on an item in an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> <click|shiftclick> <slot id> [left|right|middle]
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **The default click is left click**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Close an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|container|<id>> close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop item(s) from an inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory <player|id> drop <slot id> <number of items|all>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To drop all items from a slot, you can use: `all`**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive <slot id> <item type> <amount>
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete <slot id>
|
|
||||||
```
|
|
||||||
|
|
||||||
Show all available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory inventories
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for an item of specified type in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory search <item type>
|
|
||||||
```
|
|
||||||
|
|
||||||
- **Examples:**
|
|
||||||
|
|
||||||
Show player's inventory:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player
|
|
||||||
```
|
|
||||||
|
|
||||||
Show/Preview items in an inventory using an id:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 3
|
|
||||||
```
|
|
||||||
|
|
||||||
Click on an item in player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player click 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Right-Click on an item in slot number/id `4` in an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 click 4 right
|
|
||||||
```
|
|
||||||
|
|
||||||
Close an inventory with an id `2`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory 2 close
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop a single item from a player's inventory in slot number/id `36`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 36 1
|
|
||||||
```
|
|
||||||
|
|
||||||
Drop all items from a player's inventory in slot number/id `37`:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory player drop 37 all
|
|
||||||
```
|
|
||||||
|
|
||||||
Give an item to the player inventory from a creative menu when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativegive 36 diamondblock 64
|
|
||||||
```
|
|
||||||
|
|
||||||
::: tip **To find item types, check out [this list](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Inventory/ItemType.cs)**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Delete an item from a player's inventory in slot number/id `36` when in the creative mode:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory creativedelete 36
|
|
||||||
```
|
|
||||||
|
|
||||||
Search for 10 Slime Blocks in available inventories:
|
|
||||||
|
|
||||||
```
|
|
||||||
/inventory s SlimeBlock 10
|
|
||||||
```
|
|
||||||
|
|
||||||
### `debug`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Toggle debug messages, useful for chatbot developers.
|
|
||||||
|
|
||||||
### `help`
|
|
||||||
|
|
||||||
- **Description:**
|
|
||||||
|
|
||||||
Show commands help.
|
|
||||||
|
|
||||||
::: tip **Use "/send /help" for server help**
|
|
||||||
:::
|
|
||||||
|
|
@ -1,28 +0,0 @@
|
||||||
---
|
|
||||||
home: true
|
|
||||||
heroImage: /images/MCC_logo_with_edge.png
|
|
||||||
tagline: 'Minecraft Console Client (MCC) is a lightweight open-source Minecraft Java client implemented in C#'
|
|
||||||
actions:
|
|
||||||
-
|
|
||||||
text: Installation
|
|
||||||
link: ./guide/installation.md
|
|
||||||
type: primary
|
|
||||||
-
|
|
||||||
text: Learn More →
|
|
||||||
link: ./guide/
|
|
||||||
type: secondary
|
|
||||||
actionText:
|
|
||||||
actionLink:
|
|
||||||
features:
|
|
||||||
-
|
|
||||||
title: Chat
|
|
||||||
details: Chat with other people on the server
|
|
||||||
-
|
|
||||||
title: Automation
|
|
||||||
details: Create bots to do automated tasks
|
|
||||||
-
|
|
||||||
title: Supported Versions
|
|
||||||
details: 1.4 - 1.19.2
|
|
||||||
footer: Made by MCC Team with ❤️
|
|
||||||
---
|
|
||||||
|
|
||||||
|
|
@ -1,163 +0,0 @@
|
||||||
# Introduction
|
|
||||||
|
|
||||||
- [About](#about)
|
|
||||||
- [Quick Intro (YouTube Videos)](#quick-intro)
|
|
||||||
- [Features](#features)
|
|
||||||
- [Why Minecraft Console Client?](#why-minecraft-console-client)
|
|
||||||
- [Getting Help](#getting-help)
|
|
||||||
- [Submitting a bug report or an idea/feature-request](#bugs-ideas-feature-requests)
|
|
||||||
- [Important notes on some features](#notes-on-some-features)
|
|
||||||
- [Credits](#credits)
|
|
||||||
- [Disclaimer](#disclaimer)
|
|
||||||
- [License](#license)
|
|
||||||
|
|
||||||
## About
|
|
||||||
|
|
||||||
**Minecraft Console Client (MCC)** is a lightweight cross-platform open-source **Minecraft** TUI client for **Java edition** that allows you to connect to any Minecraft Java server, send commands and receive text messages in a fast and easy way without having to open the main Minecraft game.
|
|
||||||
|
|
||||||
It also provides various automations that you can enable for administration and other purposes, as well as extensible C# API for creating Bots.
|
|
||||||
|
|
||||||
It was originally made by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/), now it's maintained by him and many other contributors from the community.
|
|
||||||
|
|
||||||
## Features
|
|
||||||
|
|
||||||
- Chat
|
|
||||||
|
|
||||||
- Send and receive chat messages
|
|
||||||
- [Log chat history](chat-bots.md#chat-log)
|
|
||||||
- [Get alerted on certain keywords](chat-bots.md#alerts)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
|
|
||||||
- [Anti AFK](chat-bots.md#anti-afk)
|
|
||||||
- [Auto Relog](chat-bots.md#auto-relog)
|
|
||||||
- [Script Scheduler](chat-bots.md#script-scheduler)
|
|
||||||
- [Remote Control](chat-bots.md#remote-control)
|
|
||||||
- [Auto Respond](chat-bots.md#auto-respond)
|
|
||||||
- [Auto Attack](chat-bots.md#auto-attack)
|
|
||||||
- [Auto Fishing](chat-bots.md#auto-fishing)
|
|
||||||
- [Auto Eat](chat-bots.md#auto-eat)
|
|
||||||
- [Auto Craft](chat-bots.md#auto-craft)
|
|
||||||
- [Mailer Bot](chat-bots.md#mailer)
|
|
||||||
- [Auto Drop](chat-bots.md#auto-drop)
|
|
||||||
- [Replay Mod](chat-bots.md#replay-mod)
|
|
||||||
- [API for creating Bots in C#](creating-bots.md#creating-chat-bots)
|
|
||||||
- [Docker Support](installation.md#using-docker)
|
|
||||||
- [Inventory Handling](usage.md#inventory)
|
|
||||||
- [Terrain Traversing](usage.md#move)
|
|
||||||
- Entity Handling
|
|
||||||
|
|
||||||
_NOTE: Some of mentioned features are disabled by default and you will have to turn them on in the configuration file and some may require additional configuration on your part for your specific usage._
|
|
||||||
|
|
||||||
## Why Minecraft Console Client?
|
|
||||||
|
|
||||||
- Easy to use
|
|
||||||
- Helpful community
|
|
||||||
- Open-Source
|
|
||||||
- Fast performance
|
|
||||||
- Cross-Platform
|
|
||||||
- Docker Support
|
|
||||||
- 10 years of continuous development
|
|
||||||
- Active contributors
|
|
||||||
- Widely used
|
|
||||||
|
|
||||||
## Quick Intro
|
|
||||||
|
|
||||||
Don't have time to read through the documentation, we got you, our community has made some simple introduction videos about the **Minecraft Console Client**.
|
|
||||||
|
|
||||||
### The list of the tutorials:
|
|
||||||
|
|
||||||
Installation:
|
|
||||||
|
|
||||||
- [Installation on Windows by Daenges](https://www.youtube.com/watch?v=BkCqOCa2uQw)
|
|
||||||
- [Installation on Windows + Auto AFK and More by Dexter113](https://www.youtube.com/watch?v=FxJ0KFIHDrY)
|
|
||||||
|
|
||||||
Using Commands, Scripts and other features:
|
|
||||||
|
|
||||||
- [Minecraft Console Client | Tutorial | Commands, Scripts, AppVars, Matches, Tasks and C# Scripts by Daenges](https://youtu.be/JbDpwwETEnU)
|
|
||||||
- [Console Client Tutorial - Scripting by Zixxter](https://www.youtube.com/watch?v=XE7rYBFJxn0)
|
|
||||||
|
|
||||||
## Getting Help
|
|
||||||
|
|
||||||
MCC has a community that is willing to help, we have a Discussions section in out Git Hub repository.
|
|
||||||
|
|
||||||
Click [here](https://github.com/MCCTeam/Minecraft-Console-Client/discussions) to access it.
|
|
||||||
|
|
||||||
### Before getting help
|
|
||||||
|
|
||||||
- **Please use the search option here or in the discussion section and read the documentation so we avoid duplicate questions. Thank you!**
|
|
||||||
- **Please be kind and patient, respect others as they're the ones using their time to help you**
|
|
||||||
|
|
||||||
## Bugs, Ideas, Feature Requests
|
|
||||||
|
|
||||||
Bug reporting, idea submitting or feature requesting are done in the [Issues](https://github.com/MCCTeam/Minecraft-Console-Client/issues) section of our [Github repository]([here](https://github.com/MCCTeam/Minecraft-Console-Client)).
|
|
||||||
|
|
||||||
Navigate to the Issues section, search for a bug, idea or a feature using the search option here in the documentation and in the `Issues` section on Git Hub before making your own.
|
|
||||||
|
|
||||||
If you haven't found anything similar, go ahead and click on the `New issue` button, then choose what you want to do.
|
|
||||||
|
|
||||||
If you're reporting a bug, please be descriptive as much as possible, try to explain how to re-create the bug, attack screenshots and logs, make sure that you have [`debugmessages`](configuration.me#debugmessages) set to `true` before sending a bug report or taking a screenshot.
|
|
||||||
|
|
||||||
### Before submitting
|
|
||||||
|
|
||||||
- **Please use the search option here or in the `Issues` section and read the documentation so we avoid duplicate questions/ideas/reports. Thank you!**
|
|
||||||
- **Please be kind, patient and respect others. Thank you!**
|
|
||||||
|
|
||||||
## Notes on some features
|
|
||||||
|
|
||||||
### Inventory, Terrain and Entity Handling
|
|
||||||
|
|
||||||
Inventory handling is currently not supported in versions: `1.4.6 - 1.9`
|
|
||||||
|
|
||||||
Terrain handling is currently not supported in versions: `1.4.6 - 1.6`
|
|
||||||
|
|
||||||
Entity handling is currently not supported in versions: `1.4.6 - 1.9` (but `1.8` and `1.9` are being worked on, almost at the working state, only `EntityMetadata` packet remains to be fixed)
|
|
||||||
|
|
||||||
There features might not always be implemented in the latest version of the game, since they're often subjected to major changes by Mojang, and we need some time to figure out what has changed and to implement the required changes.
|
|
||||||
|
|
||||||
If there was a major game update, and the MCC hasn't been updated to support these features, if you're a programmer, feel free to contribute to the project.
|
|
||||||
|
|
||||||
## Credits
|
|
||||||
|
|
||||||
_Project initiated by [ORelio](https://github.com/ORelio) in 2012 on the [Minecraft Forum](http://www.minecraftforum.net/topic/1314800-/)._
|
|
||||||
|
|
||||||
Many features would not have been possible without the help of our talented community:
|
|
||||||
|
|
||||||
**Maintainers**
|
|
||||||
|
|
||||||
ORelio, ReinforceZwei, milutinke, BruceChenQAQ, bradbyte
|
|
||||||
|
|
||||||
**Ideas**
|
|
||||||
|
|
||||||
ambysdotnet, Awpocalypse, azoundria, bearbear12345, bSun0000, Cat7373, dagonzaros, Dids, Elvang, fuckofftwice, GeorgH93, initsuj, JamieSinn, joshbean39, LehmusFIN, maski, medxo, mobdon, MousePak, TNT-UP, TorchRJ, yayes2, Yoann166, ZizzyDizzyMC and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BIdea%5D+is%3Aopen).
|
|
||||||
|
|
||||||
**Bug Hunters**
|
|
||||||
|
|
||||||
1092CQ, ambysdotnet, bearbear12345, c0dei, Cat7373, Chtholly, Darkaegis, dbear20, DigitalSniperz, doranchak, drXor, FantomHD, gerik43, ibspa, iTzMrpitBull, JamieSinn, k3ldon, KenXeiko, link3321, lyze237, mattman00000, Nicconyancat, Pokechu22, ridgewell, Ryan6578, Solethia, TNT-UP, TorchRJ, TRTrident, WeedIsGood, xp9kus, Yoann166 and [many more](https://github.com/MCCTeam/Minecraft-Console-Client/issues?q=is%3Aissue+%5BBUG%5D+is%3Aopen+).
|
|
||||||
|
|
||||||
**Contributors**
|
|
||||||
|
|
||||||
Allyoutoo, Aragas, Bancey, bearbear12345, corbanmailloux, Daenges, dbear20, dogwatch, initsuj, JamieSinn, justcool393, lokulin, maxpowa, medxo, milutinke, Pokechu22, ReinforceZwei, repository, TheMeq, TheSnoozer, vkorn, v1RuX, yunusemregul, ZizzyDizzyMC, BruceChenQAQ, bradbyte _... And all the [GitHub contributors](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors)!_
|
|
||||||
|
|
||||||
**Libraries:**
|
|
||||||
|
|
||||||
Minecraft Console Client also borrows code from the following libraries:
|
|
||||||
|
|
||||||
| Name | Purpose | Author | License |
|
|
||||||
| ----------- | ---------------- | ---------------- | ------- |
|
|
||||||
| Biko | Proxy handling | Benton Stark | MIT |
|
|
||||||
| Heijden.Dns | DNS SRV Lookup | Geoffrey Huntley | MIT |
|
|
||||||
| DotNetZip | Zlib compression | Dino Chiesa | MS-PL |
|
|
||||||
|
|
||||||
## Disclaimer
|
|
||||||
|
|
||||||
Even if everything should work, we are not responsible for any damage this app could cause to your computer or your server. This app does not steal your password. If you don't trust it, don't use it or check & compile from the source code.
|
|
||||||
|
|
||||||
Also, remember that when you connect to a server with this program, you will appear where you left the last time. This means that **you can die if you log in in an unsafe place on a survival server!** Use the script scheduler bot to send a teleport command after logging in.
|
|
||||||
|
|
||||||
We remind you that **you may get banned** by your server for using this program. Use accordingly with server rules.
|
|
||||||
|
|
||||||
## License
|
|
||||||
|
|
||||||
Minecraft Console Client is a totally free of charge, open source project. The source code is available at [Github Repository](https://github.com/MCCTeam/Minecraft-Console-Client)
|
|
||||||
|
|
||||||
Unless specifically stated, source code is from the MCC Team or Contributors, and available under CDDL-1.0. More info about CDDL-1.0: [http://qstuff.blogspot.fr/2007/04/why-cddl.html](http://qstuff.blogspot.fr/2007/04/why-cddl.html) Full license at [http://opensource.org/licenses/CDDL-1.0](http://opensource.org/licenses/CDDL-1.0)
|
|
||||||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1,76 +0,0 @@
|
||||||
# Contributing
|
|
||||||
|
|
||||||
At this moment this page needs to be created.
|
|
||||||
|
|
||||||
For now you can use our article from the [Git Hub repository Wiki](https://github.com/MCCTeam/Minecraft-Console-Client/wiki/Update-console-client-to-new-version) written by [ReinforceZwei](https://github.com/ReinforceZwei).
|
|
||||||
|
|
||||||
## Translations
|
|
||||||
|
|
||||||
MCC now supports the following languages (Alphabetical order) :
|
|
||||||
* `de.ini` : Deutsch - German
|
|
||||||
* **`en.ini` : English - English**
|
|
||||||
* `fr.ini` : Français (France) - French
|
|
||||||
* `ru.ini` : Русский (Russkiy) - Russian
|
|
||||||
* `vi.ini` : Tiếng Việt (Việt Nam) - Vietnamese
|
|
||||||
* `zh-Hans.ini` : 简体中文 - Chinese Simplified
|
|
||||||
* `zh-Hant.ini` : 繁體中文 - Chinese Traditional
|
|
||||||
|
|
||||||
### Add new translation
|
|
||||||
|
|
||||||
1. First you need to get the name of the translated file.
|
|
||||||
* Visit [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c) and find the first occurrence of the language you need to translate in the table below.
|
|
||||||
* Use the language code of the row in the table as the name of the translation file.
|
|
||||||
* For example:
|
|
||||||
* `English` -> row `English 0x0009` -> `en` -> `en.ini`
|
|
||||||
* `Chinese (Traditional)` -> row `Chinese (Traditional) 0x7C04` -> `zh-Hant` -> `zh-Hant.ini`
|
|
||||||
|
|
||||||
2. Which system languages are recommended to use this translation?
|
|
||||||
* Still check the table in [this link](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c), one language may have multiple rows.
|
|
||||||
* You will need to indicate which language codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `de.ini` applies to `de`, `de-AT`, `de-BE`, `de-DE`, ...
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh-Hans`, `zh`, `zh-CN`, `zh-SG`.
|
|
||||||
|
|
||||||
3. Which game languages are recommended to use this translation?
|
|
||||||
* Check out the table in [this link](https://github.com/MCCTeam/Minecraft-Console-Client/discussions/2239), where the `Locale Code` column indicates the language code in minecraft.
|
|
||||||
* You will need to indicate which locale codes this translation applies to.
|
|
||||||
* For example:
|
|
||||||
* Translation `fr.ini` applies to `fr_ca`, `fr_fr`.
|
|
||||||
* Translation `zh-Hans.ini` applies to `zh_cn`.
|
|
||||||
|
|
||||||
4. Add the new translation to the code. (Optional)
|
|
||||||
* **If you are not familiar with programming, you can skip this step and just write the above information in your PR or issue.**
|
|
||||||
* Add the newly created translation file `xx.ini` to the project `/Resources/lang/xx.ini`.
|
|
||||||
* Open `/DefaultConfigResource.resx`.
|
|
||||||
* Click `Add Resources`.
|
|
||||||
* Choose `/Resources/lang/xx.ini`.
|
|
||||||
* Rename the added resource file in `/DefaultConfigResource.resx` to `Translation_xx`.
|
|
||||||
* Open `/Translations.cs`.
|
|
||||||
* Find `public static Tuple<string, string[]> GetTranslationPriority();`
|
|
||||||
* Update the mapping of system language codes to translation files.
|
|
||||||
* Find `public static string[] GetTranslationPriority(string gameLanguage);`
|
|
||||||
* Update the mapping of game locale code to translation files.
|
|
||||||
|
|
||||||
5. Follow the section "Update existing translation".
|
|
||||||
|
|
||||||
### Update existing translation
|
|
||||||
|
|
||||||
1. Visit [the lang folder](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/Resources/lang), download `en.ini` and the language you want to translate(`xx.ini`).
|
|
||||||
|
|
||||||
2. Compare `en.ini` and `xx.ini` and update outdated or non-existent entries in `xx.ini`.
|
|
||||||
|
|
||||||
3. Once you finished the translation work, submit a pull request or send us the file through an [Issue](https://github.com/MCCTeam/Minecraft-Console-Client/issues) in case you are not familiar with Git.
|
|
||||||
|
|
||||||
### Translate README.md
|
|
||||||
|
|
||||||
1. Get the English version of the README.md from [here](https://raw.githubusercontent.com/MCCTeam/Minecraft-Console-Client/master/README.md).
|
|
||||||
|
|
||||||
2. See `Add new translation -> 1.` for the target language code. Assume it is `xx`.
|
|
||||||
|
|
||||||
3. Complete the translation according to the English README.md and name the translated version as `README-xx.md`.
|
|
||||||
|
|
||||||
4. In the English README, above the "About" section, add the name of the language and a hyperlink to `README-xx.md`.
|
|
||||||
|
|
||||||
## Contributors
|
|
||||||
|
|
||||||
[Check out our contributors on Github](https://github.com/MCCTeam/Minecraft-Console-Client/graphs/contributors).
|
|
||||||
|
|
@ -1,177 +0,0 @@
|
||||||
# Creating Chat Bots
|
|
||||||
|
|
||||||
- [Notes](#notes)
|
|
||||||
- [Requirements](#requirements)
|
|
||||||
- [Quick Introduction](#quick-introduction)
|
|
||||||
- [Examples](#examples)
|
|
||||||
- [C# API](#c#-api)
|
|
||||||
|
|
||||||
## Notes
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For now this page contains only the bare basics of the Chat Bot API, enough of details to teach you how to make basic Chat Bots. For more details you need to take a look at the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) and [Examples](#examples). This page will be improved in the future.**
|
|
||||||
:::
|
|
||||||
|
|
||||||
**Minecraft Console Client** has a rich C# API which allows you to create Chat Bots (effectively plugins) which can help you create complex automations which normal scripts may not be able to do.
|
|
||||||
|
|
||||||
## Requirements
|
|
||||||
|
|
||||||
- A basic knowledge of C# programming language
|
|
||||||
- A text editor
|
|
||||||
|
|
||||||
If you're not familiar with the C# programming language, we suggest taking a look at the following resources:
|
|
||||||
|
|
||||||
Crash courses:
|
|
||||||
|
|
||||||
- [C# Crash Course playlist by Teddy Smit](https://www.youtube.com/watch?v=67oWw9TanOk&list=PL82C6-O4XrHfoN_Y4MwGvJz5BntiL0z0D)
|
|
||||||
|
|
||||||
More in-depth:
|
|
||||||
|
|
||||||
- [Learn C# Youtube Playlist by Microsoft](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVxKLQCHpiUWun7vlJJvUiN)
|
|
||||||
- [Getting started with C# (An index of tutorials and the documentation) by Microsoft](https://docs.microsoft.com/en-us/dotnet/csharp/)
|
|
||||||
|
|
||||||
## Quick Introduction
|
|
||||||
|
|
||||||
This introduction assumes that you have the basic knowledge of C#.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Here we will use terms Chat Bot and Script interchangeably**
|
|
||||||
:::
|
|
||||||
|
|
||||||
Create a new empty file and name it `ExampleChatBot.cs` in the same folder where you have your MCC installed.
|
|
||||||
|
|
||||||
Paste the following example code:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
MCC.LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
|
|
||||||
// The code and comments above are defining a "Script Metadata" section
|
|
||||||
|
|
||||||
// Every single chat bot (script) must be a class which extends the ChatBot class.
|
|
||||||
// Your class must be instantiates in the "Script Metadata" section and passed to MCC.LoadBot function.
|
|
||||||
class ExampleChatBot : ChatBot
|
|
||||||
{
|
|
||||||
// This method will be called when the script has been initialized for the first time, it's called only once
|
|
||||||
// Here you can initialize variables, eg. Dictionaries. etc...
|
|
||||||
public override void Initialize()
|
|
||||||
{
|
|
||||||
LogToConsole("An example Chat Bot has been initialized!");
|
|
||||||
}
|
|
||||||
|
|
||||||
// This is a function that will be run when we get a chat message from a server
|
|
||||||
// In this example it just detects the type of the message and prints it out
|
|
||||||
public override void GetText(string text)
|
|
||||||
{
|
|
||||||
string message = "";
|
|
||||||
string username = "";
|
|
||||||
text = GetVerbatim(text);
|
|
||||||
|
|
||||||
if (IsPrivateMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has sent you a private message: " + message);
|
|
||||||
}
|
|
||||||
else if (IsChatMessage(text, ref message, ref username))
|
|
||||||
{
|
|
||||||
LogToConsole(username + " has said: " + message);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
Start MCC, connect to a server and run the following internal command: `/script ExampleChatBot.cs`.
|
|
||||||
|
|
||||||
If you did everything right you should see: `[Example Chat Bot] An example Chat Bot has been initialised!` message appear in your console log.
|
|
||||||
|
|
||||||
### Structure of Chat Bots
|
|
||||||
|
|
||||||
Chat Bot (Script) structure is the following:
|
|
||||||
|
|
||||||
```
|
|
||||||
<script metadata>
|
|
||||||
<chat bot class>
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** is a section with a custom format that mixes in C# with our format using comments. Every single Chat Bot (Script) must have this section at the beginning in order to work.
|
|
||||||
|
|
||||||
### Script Metadata Format
|
|
||||||
|
|
||||||
`//MCCScript 1.0` marks the beginning of the **Script Metadata** section, this must always be on the first line or the Chat Bot (Script) will not load and will throw an error.
|
|
||||||
|
|
||||||
`//MCCScript Extensions` marks the end of the **Script Metadata** section, this must be defined before a Chat Bot (Script) class.
|
|
||||||
|
|
||||||
In order for your Chat Bot (Script) to properly load in-between the `//MCCScript 1.0` and the `//MCCScript Extensions` lines you must instantiate your Chat Bot (Script) class and pass it to the `MCC.LoadBot` function.
|
|
||||||
|
|
||||||
Example code:
|
|
||||||
|
|
||||||
```
|
|
||||||
MCC.LoadBot(new YourChatBotClassNameHere());
|
|
||||||
```
|
|
||||||
|
|
||||||
**Script Metadata** section allows for including C# packages and libraries with: `//using <namespace>` and `/dll <dll name>`.
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**Avoid adding whitespace between `//` and keywords**
|
|
||||||
:::
|
|
||||||
|
|
||||||
By the default the following packages are loaded:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Text.RegularExpressions;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.IO;
|
|
||||||
using System.Net;
|
|
||||||
using System.Threading;
|
|
||||||
using MinecraftClient;
|
|
||||||
using MinecraftClient.Mapping;
|
|
||||||
using MinecraftClient.Inventory;
|
|
||||||
```
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//using System.Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
```
|
|
||||||
|
|
||||||
Full Example:
|
|
||||||
|
|
||||||
```csharp
|
|
||||||
//MCCScript 1.0
|
|
||||||
|
|
||||||
//using System.Collections.Immutable
|
|
||||||
//dll MyDll.dll
|
|
||||||
|
|
||||||
MCC.LoadBot(new ExampleChatBot());
|
|
||||||
|
|
||||||
//MCCScript Extensions
|
|
||||||
```
|
|
||||||
|
|
||||||
### Chat Bot Class
|
|
||||||
|
|
||||||
After the end of the **Script Metadata** section, you basically can define any number of classes you like, the only limitation is that the main class of your Chat Bot (Script) must extend `ChatBot` class.
|
|
||||||
|
|
||||||
There are no required methods, everything is optional.
|
|
||||||
|
|
||||||
When the Chat Bot (Script) has been initialized for the first time the `Initialize` method will be called. In it you can initialize variables, eg. Dictionaries, etc..
|
|
||||||
|
|
||||||
::: tip
|
|
||||||
**For allocating resources like a database connection, we recommend allocating them in `AfterGameJoined` and freeing them in `OnDisconnect`** :::.
|
|
||||||
|
|
||||||
## Examples
|
|
||||||
|
|
||||||
You can find a lot of examples in our Git Hub Repository at [ChatBots](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/ChatBots) and [config](https://github.com/MCCTeam/Minecraft-Console-Client/tree/master/MinecraftClient/config).
|
|
||||||
|
|
||||||
## C# API
|
|
||||||
|
|
||||||
As of the time of writing, the C# API has been changed in forks that are yet to be merged, so for now you can use the [ChatBot.cs](https://github.com/MCCTeam/Minecraft-Console-Client/blob/master/MinecraftClient/Scripting/ChatBot.cs) for reference.
|
|
||||||
|
|
||||||
Each method is well documented with standard C# documentation comments.
|
|
||||||
|
|
||||||
In the future we will make a script to auto-generate this section based on the documentation in the code.
|
|
||||||
File diff suppressed because it is too large
Load diff
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue