forked from miitchy/LiteBans
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfig.yml
312 lines (247 loc) · 12.2 KB
/
config.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
# LiteBans config.yml generated by version 2.2.5
# If bungeecord is set to true, banned players will be kicked from BungeeCord itself.
# (Players will not be kicked to the lobby when they are banned.)
# This option has no effect if the plugin is running directly under BungeeCord.
bungeecord: false
# If this option is enabled and the server is connected to a remote database (e.g. MySQL),
# LiteBans will synchronize across all servers connected to that database with sync enabled.
sync: true
# If enabled, broadcasts will be synchronized.
sync_broadcasts: true
# If enabled, notifications will be synchronized.
sync_notifications: true
# If enabled, dupeip notifications will be synchronized.
# This will appear multiple times if a player joins multiple servers, so you might want to leave this disabled.
sync_dupeip_notifications: false
# The server name is an identifier used in cross-server synchronization.
# It represents a single plugin instance (or group of instances) and can be updated at any time.
# If you need per-server bans, you have to change server_name on all instances
# The "$serverScope" and "$serverOrigin" variables can be used in messages.
# Maximum length is 32 characters.
server_name: 'litebans'
# This option decides which server(s) will be affected in commands by default.
default_server_scope: '*'
sql:
# H2, MySQL, MariaDB, and PostgreSQL are supported database drivers.
driver: H2
## MySQL/PostgreSQL settings ##
# If using H2, the database will be stored in the LiteBans plugin folder,
# and most of these settings won't apply.
# Database server address.
address: localhost:3306
# Database name, username and password.
database: 'litebans'
username: ''
password: ''
table_prefix: 'litebans_'
# LiteBans utilizes connection pooling for extra performance and reliability.
# min_connections: Minimum amount of pooled connections.
# max_connections: Maximum amount of pooled connections. See: https://github.com/brettwooldridge/HikariCP/wiki/About-Pool-Sizing
# timeout: Connection timeout.
# idle_timeout: Maximum amount of time a pooled connection can remain idle before it is closed for inactivity.
pool:
min_connections: 1
max_connections: 10
timeout: 30 seconds
idle_timeout: 1 minute
# Database engine. Only applies to MySQL.
engine: InnoDB
options: 'useSSL=false'
# Format: <name>:<class>[:URL:version]
# SQLite is only included here for backwards compatibility, it is no longer supported (use H2 instead).
drivers:
- version:1
- 'mysql:com.mysql.jdbc.Driver:https://repo1.maven.org/maven2/mysql/mysql-connector-java/{}/mysql-connector-java-{}.jar:6.0.6'
- 'pgsql:org.postgresql.Driver:https://repo1.maven.org/maven2/org/postgresql/postgresql/{}/postgresql-{}.jar:9.4-1201-jdbc41'
- 'mariadb:org.mariadb.jdbc.Driver:https://repo1.maven.org/maven2/org/mariadb/jdbc/mariadb-java-client/{}/mariadb-java-client-{}.jar:2.0.3'
- 'sqlite:org.sqlite.JDBC:https://repo1.maven.org/maven2/org/xerial/sqlite-jdbc/{}/sqlite-jdbc-{}.jar:3.8.11.1'
- 'h2:org.h2.Driver:https://repo1.maven.org/maven2/com/h2database/h2/{}/h2-{}.jar:1.4.196'
durations:
# Can be bypassed with the permission "litebans.unlimited.ban"
tempban_max: 7 days
# Can be bypassed with the permission "litebans.unlimited.mute"
mute_max: 1 day
# If true, players will not get an error when using a duration higher than the configured limit.
# The duration will be rounded down to the maximum duration instead.
round_down: true
mutes:
enabled: true
# All of these commands can not be used while muted.
command_blacklist:
- /me
- /say
- /tell
- /whisper
- /reply
- /pm
- /message
- /msg
- /emsg
- /epm
- /etell
- /ewhisper
- /w
- /m
- /t
- /r
mutechat_command_blacklist:
- /me
- /say
# If enabled, muted players cannot use commands containing ":", for example: "/minecraft:me".
prevent_bypass: true
# If set, a ban or mute reason must be provided, otherwise players will get an error.
# When set to false, "default_ban_reason" and "default_mute_reason" in messages.yml are used as reasons when no reason is provided.
require_ban_mute_reason: false
warnings:
# Warnings will expire after this duration has passed.
expire_after: 7 days
# Warning actions.
# Format: <amount>[+]:<action>
# If '+' is provided after the amount, the action will execute if the player has that amount of warnings or more.
actions:
- '3:/kick -s:$silent $player Final warning: $reason'
- '4:/tempban -s:$silent $player 1 day Reached 4 warnings: $list'
# If enabled, the console will execute warning actions.
# Otherwise, the player who executes the last warning also executes the warning action.
actions_execute_as_console: false
# If enabled, all active warnings will be deactivated after a warning action is executed.
delete_warnings_after_action: false
notify:
# If enabled, players with the permission 'litebans.notify' or 'litebans.notify.banned_join' will be notified when a banned player tries to join.
banned_player_join: true
# If enabled, /dupeip output will be shown on join if the player meets certain conditions.
dupeip_on_join: true
# Notify if the player has a banned account on the same IP.
dupeip_on_banned_account: true
# If enabled, muted accounts will be detected with /dupeip.
# This is disabled by default since it can add quite a lot of query overhead on larger servers especially if dupeip_on_join is enabled.
dupeip_show_muted_accounts: false
# If you set this to a lower value, players with X accounts will send dupeip notifications.
dupeip_on_join_threshold: 9999999
# Log all notifications to the console?
notify_console: true
exempt:
enable: true
# By default, the first loaded world is used for permission checks.
permission_world: default
# Permission groups that are exempt from bans, mutes, warnings, and kicks.
exempt_groups: []
# Players who are exempt from bans, mutes, warnings, and kicks.
# Format: <name/UUID>[:type]
# Type can be ban, mute, warning, or kick.
# Example:
# exempt_players: ['Player', 'Player:kick', 'Player2']
exempt_players: []
geoip:
enable: false
# Anyone from these locations will not be able to join.
# A full list of countries that can be blacklisted:
# https://dev.maxmind.com/geoip/legacy/codes/iso3166/
# Example:
# blacklist: ['Australia', 'Brazil', 'Canada', 'Denmark']
blacklist: []
# If the whitelist is not empty, all countries which are not found in the list will be blocked.
whitelist: []
download:
# Download links for the API and database. They are downloaded to the 'plugins/LiteBans/geoip' folder.
# You shouldn't need to change these, but if it isn't working, you can search for these files.
api:
- https://repo1.maven.org/maven2/com/maxmind/geoip2/geoip2/2.1.0/geoip2-2.1.0.jar
- https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-databind/2.4.3/jackson-databind-2.4.3.jar
- https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-core/2.4.3/jackson-core-2.4.3.jar
- https://repo1.maven.org/maven2/com/maxmind/db/maxmind-db/1.0.0/maxmind-db-1.0.0.jar
- https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-annotations/2.4.3/jackson-annotations-2.4.3.jar
# Will be extracted and saved as 'GeoLite2-Country.mmdb'.
db: https://geolite.maxmind.com/download/geoip/database/GeoLite2-Country.mmdb.gz
# After configuring import options, run "/litebans import start" to begin the import.
# The import process occurs while the server is running, no downtime is required.
import:
# You can import from: MaxBans, Ultrabans, BanHammer, BanManagerv4, BanManagerv5, BungeeAdminTools, LiteBans, Vanilla.
# Vanilla means importing from banned-players.json, which is also used by Essentials.
from: maxbans
# If enabled, importing will be done from a SQLite database instead of a MySQL database.
# You can ignore this if importing from banned-players.json.
# If importing from LiteBans, H2 will be used instead of SQLite.
sqlite: true
# SQLite file locations:
# MaxBans: plugins/MaxBans/bans.db
# Ultrabans: plugins/Ultrabans/banlist.db
# BanHammer: plugins/BanHammer/BanHammer.db
# LiteBans: plugins/LiteBans/litebans.sqlite (legacy)
sqlite_file: plugins/MaxBans/bans.db
import_ipbans: true
## MySQL import settings ##
import_mysql_address: localhost:3306
import_mysql_database: maxbans
import_mysql_username: ''
import_mysql_password: ''
# Use display names?
# This means that when moderators and punished players change their name using /nick,
# this name will be used in broadcasts and other messages instead of their regular name.
# The BungeeCord version of the plugin cannot detect Spigot-side display names.
use_display_names: false
# Instead of "CONSOLE", this name will be used to represent the console.
console_sender_name: Console
# Players in this list will not be shown in /dupeip or /alts output.
# Names, UUIDs and IP addresses can be specified.
hidden_dupeip_players: []
# A player cannot be warned again while they are on cooldown.
# This prevents two moderators from warning the same player for the same reason.
warning_cooldown: 30
# If enabled, online player names will be auto-completed.
# Example: /ban Pl -> /ban Player
autocomplete_online_player_names: false
# This allows /dupeip and /ipreport to scan every single IP address that a player has ever joined with.
# If set to false, it will only scan the last IP address.
dupeip_scan_all_ips: false
# /ipreport will not show accounts that have no other players attached by default.
ipreport_minimum_accounts: 1
# If disabled, all previous IP addresses will be recorded, allowing /iphistory to work.
delete_previous_history: true
# If enabled, all previous login history will be unbanned when unbanning a player.
unban_all_history: false
# This is the amount of bans shown on each page for /banlist.
# Note that ban entries can span 2-3 lines.
banlist_bans_per_page: 5
# Only show active bans for /banlist?
banlist_show_active_only: false
# If enabled, AuthMe will be detected and IP history will only be added after a player has successfully logged in.
# This option will only work under Spigot, since AuthMe is a Spigot plugin.
support_authme: true
lockdown:
# If enabled, /lockdown will continue after restarts.
persist_enabled: true
debug_level: 0
# If enabled, this performs an additional two database queries on each join
# in order to provide case-insensitive name bans.
ban_names: false
# If a kick message contains any of these, it will not be added to the database.
# You can set this list to [''] if you don't want any kicks to be added to the database.
ignored_kick_messages: ['restarting']
# This option controls how often notifications are sent from a single player.
# When a player tries to join when banned or talk while muted,
# you won't see any more messages from them for a short while.
notification_throttle_ticks: 12000
# If enabled, LiteBans will use the database server's time rather than the local system time.
use_database_time: false
# If enabled, the plugin will notify you when an update is available.
update_check: true
# If enabled, players will be checked for bans after they have joined. (Spigot only)
check_after_join: false
# If enabled, ProtocolLib will be detected and chat events will be cancelled before they can be processed by any other plugins.
# This can help prevent plugin conflicts which allow muted players to chat.
# This option will only work under Spigot, since ProtocolLib is a Spigot plugin.
use_protocollib: true
# This option controls the behaviour of the "-N" flag. This flag prevents active bans/mutes from being overridden.
# If enabled, the "-N" flag will only prevent bans from being overridden if the active ban has a lower duration.
override_lower_duration: true
# This option allows you to disable recording IP history on specific servers under BungeeCord.
# Example: ignored_history_servers: ['Lobby']
ignored_history_servers: []
# If enabled, the local system timezone will be used.
# UTC time will be stored in the database, but dates will be formatted using the timezone offset.
use_timezone: true
# This option controls how often the database is polled for sync data (cross-server punishments, kicks, notifications).
sync_poll_ticks: 20
# If this is set above 0, the plugin will skip polling up to N times while no players are online.
sync_poll_skip: 5