Skip to content

Commit 2c85cfe

Browse files
[~] Improved README.md
[+] Added LOGO in README.md
1 parent f6c9055 commit 2c85cfe

File tree

3 files changed

+125
-92
lines changed

3 files changed

+125
-92
lines changed
File renamed without changes.

README.md

Lines changed: 125 additions & 92 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,30 @@
11
# DolphinMinecraftBot-Reloaded
2-
A lightweight, reliable, intelligent MC bot for general minecraft server, with high-scalability and performance. It integrated plugin loaders like bukkit and easy-used interface styled APIs, allows you to customize event handles.
2+
<p align="center">
3+
<img src="assets/logo.jpg" width="300" height="300">
4+
</p>
5+
<div align="center">
6+
✨ A lightweight, reliable, intelligent MC bot for general minecraft server, with high-scalability and performance. It integrated plugin loaders like bukkit and easy-used interface styled APIs, allows you to customize event handles. ✨
7+
</div>
8+
<p align="center">
9+
<a href="https://github.com/NeonAngelThreads/DolphinBot/releases">
10+
<img src="https://img.shields.io/github/v/release/NeonAngelThreads/DolphinBot" alt="Release"/>
11+
</a>
12+
<br>
13+
<a href="https://github.com/NeonAngelThreads/DolphinBot/commits/master/">
14+
<img src="https://img.shields.io/github/last-commit/NeonAngelThreads/DolphinBot" alt="Release"/>
15+
</a>
16+
<img src="https://img.shields.io/github/commit-activity/w/NeonAngelThreads/DolphinBot" alt="GitHub commit activity"/>
17+
<a href="https://github.com/NeonAngelThreads/DolphinBot/releases">
18+
<img src="https://img.shields.io/github/issues/NeonAngelThreads/DolphinBot" alt="Release"/>
19+
</a>
20+
<img src="https://img.shields.io/github/languages/code-size/NeonAngelThreads/DolphinBot" alt="GitHub code size"/>
321

22+
<p align="center">
23+
<a href="https://github.com/NeonAngelThreads/DolphinBot/blob/master/PluginDocs.md">📖Docs</a>
24+
·
25+
<a href="https://github.com/NeonAngelThreads/DolphinBot/issues">🐛Submit Suggestion/Bug</a>
26+
</p>
27+
</p>
428

529
## Why DolphinBot?
630
- **High performance**, DolphinBot allows you to start multiple bot instances at one client with low CPU usage.
@@ -9,13 +33,19 @@ A lightweight, reliable, intelligent MC bot for general minecraft server, with h
933
It integrates a bukkit-like plugin API, allowing you to develop custom plugins at very short time.
1034
- **Advanced logging system**, DolphinAPI also implemented `TextComponent` serializer to parse rich colors and styles for server messages, with more useful information.
1135
- **Easy to use**, directly run, you can put the bot profile(s) into config file instead of defining on command-line, fast start.
12-
### **Shortcuts**: [Custom plugin developing guideline](PluginDocumentation.md)
36+
### **Shortcuts**: [Custom plugin developing guideline](PluginDocs.md)
1337
## Features:
1438
- Easy to register custom commands starting with `!` by using CommandBuilder DolphinAPIs
1539
- Bypassing human verification in most servers including `2b2t.xin`.
1640
- Supporting to configure the bot clusters, and start at once.
1741
- Supporting colourful console logging strings expression `colorizeText("&6Hello &lWorld")`.
1842
- Automatic answer questions in `2b2t.xin` for speeding up login process.
43+
## Introduction:
44+
Implemented Event APIs:
45+
- [`Command Systems`](https://github.com/NeonAngelThreads/DolphinBot/)
46+
- [`Packet Handlers`](https://github.com/NeonAngelThreads/DolphinBot/)
47+
48+
Command-line Arguments
1949
## Getting Started
2050
In this section, you will understand below how-tos:
2151
- **1. How to directly start a single bot with command-line.**
@@ -27,94 +57,93 @@ In this section, you will understand below how-tos:
2757
1. **Download the Client**
2858
Download the jar archive file: `DolphinBot-[version].jar`.
2959
Requirements: **Java version >= 17**
30-
2. **Configuration of the Bot**
31-
1. **Configuring Bot Profile**
32-
There are two different ways to set bot config:
33-
34-
- If you want to quickly start for simplicity and only one bot started, you can use **Command-line setting**
35-
- If you would like to start multiple bot at once, and access advanced options, you can use **Config file setting**
36-
37-
1. **Command-line Setting**
38-
In-game profile should be defined on below boot command-line.
39-
An example of argument list:
40-
```bash
41-
java -jar "DolphinBot-[version].jar" -username=[username] -password=[password] -skin-recorder=[enable/disable]
42-
```
43-
`--username` : Bot displaying name in game.
44-
`--password` : Password for login or register.
45-
`--auto-reconnect` : whether reconnect to server when got kicked or disconnect by some reasons.
46-
`--skin-recorder` : whether automatic capture and save online players' skins.
60+
2. **Configuration of the Bot**
61+
**Configuring Profile**
62+
There are two different ways to set bot config:
63+
- If you want to quickly start for simplicity and only one bot started, you can use **Command-line setting**
64+
- If you would like to start multiple bot at once, and access advanced options, you can use **Config file setting**
65+
66+
1. **Command-line Setting**
67+
In-game profile should be defined on below boot command-line.
68+
An example of argument list:
69+
```bash
70+
java -jar "DolphinBot-[version].jar" -username=[username] -password=[password] -skin-recorder=[enable/disable]
71+
```
72+
`--username` : in-game displaying name of bot.
73+
`--password` : password for login or register.
74+
`--auto-reconnect` : whether reconnect to server when got kicked or disconnect by some reasons.
75+
`--skin-recorder` : whether automatic capture and save online players' skins.
4776
48-
**Warning:** command-line has high authority than config file, meaning that if options are duplicated, will only recognize
49-
command-line, and ignore config file one.
50-
Optionally, you can specify more option by adding argument:
51-
`--owner` : Specifying only who can use this bot.
52-
2. **Config File Setting**
53-
Config files include functional config `mc.bot.config.json` and profile config `bot.profiles.json`
54-
You can also move above profile arguments into config file ``bot.profiles.json`` following below formats, all config values in it will be loaded.
55-
DolphinBot will apply command-line options first, duplicated options in config file will be ignored.
56-
To specify the path of config file is optional, Use option `-config-file` to locate config directory or file.
57-
For example:
58-
```bash
59-
java -jar "DolphinBot-[version].jar" -config-file=path/to/config.json
60-
```
61-
If the path you specified is a directory instead of a file, Dolphin will extract config file as default config in this directory.
62-
```bash
63-
java -jar "DolphinBot-[version].jar" -config-file=path/to/config_directory
64-
```
65-
If the `--config-file` parameter is absented, DolphinBot will create a default file on jar directory.
66-
```bash
67-
java -jar "DolphinBot-[version].jar"
68-
```
77+
**Warning:** command-line has high authority than config file, meaning that if options are duplicated, will only recognize
78+
command-line, and ignore config file one.
79+
Optionally, you can specify more option by adding argument:
80+
`--owner` : Specifying only who can use this bot.
81+
2. **Config File Setting**
82+
Config files include functional config `mc.bot.config.json` and profile config `bot.profiles.json`
83+
You can also move above profile arguments into config file ``bot.profiles.json`` following below formats, all config values in it will be loaded.
84+
DolphinBot will apply command-line options first, duplicated options in config file will be ignored.
85+
To specify the path of config file is optional, Use option `-config-file` to locate config directory or file.
86+
For example:
87+
```bash
88+
java -jar "DolphinBot-[version].jar" -config-file=path/to/config.json
89+
```
90+
If the path you specified is a directory instead of a file, Dolphin will extract config file as default config in this directory.
91+
```bash
92+
java -jar "DolphinBot-[version].jar" -config-file=path/to/config_directory
93+
```
94+
If the `--config-file` parameter is absented, DolphinBot will create a default file on jar directory.
95+
```bash
96+
java -jar "DolphinBot-[version].jar"
97+
```
6998
70-
In the profile config file, you can create `profiles` key in `bot.profiles.json` to specify multiple bot profiles to log to a server.
71-
**Warning**: Defining multiple bots may trigger the anti-bot or anti-cheat, and some servers with strict policy may prohibit it.
72-
```json
73-
{
74-
"profiles": {
75-
"bot#1": {
76-
"name": "Player494",
77-
"password": "123example",
78-
"owner": "player_name",
99+
In the profile config file, you can create `profiles` key in `bot.profiles.json` to specify multiple bot profiles to log to a server.
100+
**Warning**: Defining multiple bots may trigger the anti-bot or anti-cheat, and some servers with strict policy may prohibit it.
101+
```json
102+
{
103+
"profiles": {
104+
"bot#1": {
105+
"name": "Player494",
106+
"password": "123example",
107+
"owner": "player_name",
79108
80-
"enabled_plugins": [
81-
"QuestionAnswerer",
82-
"MessageDisplay",
83-
"HumanVerify"
84-
]
85-
},
86-
"bot#2": {
87-
"name": "Player495",
88-
"password": "password",
89-
"owner": "player_name",
109+
"enabled_plugins": [
110+
"QuestionAnswerer",
111+
"MessageDisplay",
112+
"HumanVerify"
113+
]
114+
},
115+
"bot#2": {
116+
"name": "Player495",
117+
"password": "password",
118+
"owner": "player_name",
90119
91-
"enabled_plugins": [
92-
"HumanVerify"
93-
]
94-
},
95-
"bot#3": {"...": "..."}
96-
}
120+
"enabled_plugins": [
121+
"HumanVerify"
122+
]
123+
},
124+
"bot#3": {"...": "..."}
97125
}
98-
```
99-
where `enabled_plugins` key represents which plugins should enable on the bot.
100-
In this case, if you want to load `bot#1` as your single bot, you should add below argument:
101-
```bash
102-
java -jar "DolphinBot-[version].jar" -config-file=path/to/config_directory -profiles="bot#1"
103-
```
104-
or
105-
```bash
106-
java -jar "DolphinBot-[version].jar" -profiles="bot#1"
107-
```
108-
If you want to start multiple bot simultaneously, specify multiple profile name as a list in option `-profiles`, for
109-
each profile name, should be split with ";".
110-
**Examples:**
111-
```bash
112-
java -jar "DolphinBot-[version].jar" -profiles="bot#1;bot#2"
113-
```
114-
```bash
115-
java -jar "DolphinBot-[version].jar" -profiles="bot#1;bot#2;bot#3;..."
116-
```
117-
- **Warning**: If the `--profiles` option is absented, it will load all bots in profile config by default.
126+
}
127+
```
128+
where `enabled_plugins` key represents which plugins should enable on the bot.
129+
In this case, if you want to load `bot#1` as your single bot, you should add below argument:
130+
```bash
131+
java -jar "DolphinBot-[version].jar" -config-file=path/to/config_directory -profiles="bot#1"
132+
```
133+
or
134+
```bash
135+
java -jar "DolphinBot-[version].jar" -profiles="bot#1"
136+
```
137+
If you want to start multiple bot simultaneously, specify multiple profile name as a list in option `-profiles`, for
138+
each profile name, should be split with ";".
139+
**Examples:**
140+
```bash
141+
java -jar "DolphinBot-[version].jar" -profiles="bot#1;bot#2"
142+
```
143+
```bash
144+
java -jar "DolphinBot-[version].jar" -profiles="bot#1;bot#2;bot#3;..."
145+
```
146+
- **Warning**: If the `--profiles` option is absented, it will load all bots in profile config by default.
118147
2. **Advanced Configurations (optional)**
119148
If you want to access more advanced configs, you can edit `mc.bot.config.json`.
120149
Every single config option is equilibrium to option that defined by command line, and all config value including
@@ -133,10 +162,14 @@ In this section, you will understand below how-tos:
133162
"reconnect-delay": 3000
134163
}
135164
```
136-
`server`: For defining server address.
137-
`port`: For defining server port.
138-
`auto-reconnecting`: Whether reconnect to server when got kicked or disconnect by some reasons.
139-
`packet-filter-delay`: Max receiving delay(millis) between every target packet.
140-
`max-chunk-view`: Max scale of chunk packet receiving.
141-
`connect-timing-out`: How long millis does it take to determine a connection time out.
142-
`reconnect-delay`: Min delay(millis) for cooling down when reconnect a server.
165+
Config Options:
166+
167+
Config | Description
168+
----------------------- | -----------
169+
`server` | For defining server address.
170+
`port` | For defining server port.
171+
`auto-reconnecting` | Whether reconnect to server when got kicked or disconnect by some reasons.
172+
`packet-filter-delay` | Max receiving delay(millis) between every target packet.
173+
`max-chunk-view` | Max scale of chunk packet receiving.
174+
`connect-timing-out` | How long millis does it take to determine a connection time out.
175+
`reconnect-delay` | Min delay(millis) for cooling down when reconnect a server.

assets/logo.jpg

278 KB
Loading

0 commit comments

Comments
 (0)