Update config.yml
Browse files- config.yml +102 -205
config.yml
CHANGED
|
@@ -1,249 +1,146 @@
|
|
| 1 |
-
token: "lip_NzWp9zQDpAm0C4O9mBeA"
|
| 2 |
url: "https://lichess.org/" # Lichess base URL.
|
| 3 |
|
| 4 |
engine: # Engine settings.
|
| 5 |
-
dir: "./fairy"
|
| 6 |
-
name: "stockfish"
|
| 7 |
-
debug:
|
| 8 |
-
|
| 9 |
-
|
| 10 |
-
#
|
| 11 |
-
working_dir: "" # Directory where the chess engine will read and write files. If blank or missing, the current directory is used.
|
| 12 |
-
# NOTE: If working_dir is set, the engine will look for files and directories relative to this directory, not where lichess-bot was launched. Absolute paths are unaffected.
|
| 13 |
-
protocol: "uci" # "uci", "xboard" or "homemade"
|
| 14 |
-
ponder: true # Think on opponent's time.
|
| 15 |
|
| 16 |
polyglot:
|
| 17 |
-
enabled: false
|
| 18 |
book:
|
| 19 |
-
standard:
|
| 20 |
- engines/book1.bin
|
| 21 |
-
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
|
| 25 |
-
# etc.
|
| 26 |
-
# Use the same pattern for 'chess960', 'giveaway' (antichess), 'crazyhouse', 'horde', 'kingofthehill', 'racingkings' and '3check' as well.
|
| 27 |
-
min_weight: 1 # Does not select moves with weight below min_weight (min 0, max: 100 if normalization isn't "none" else 65535).
|
| 28 |
-
selection: "weighted_random" # Move selection is one of "weighted_random", "uniform_random" or "best_move" (but not below the min_weight in the 2nd and 3rd case).
|
| 29 |
-
max_depth: 20 # How many moves from the start to take from the book.
|
| 30 |
-
normalization: "none" # Normalization method for the book weights. One of "none", "sum", or "max".
|
| 31 |
|
| 32 |
draw_or_resign:
|
| 33 |
-
resign_enabled: false
|
| 34 |
-
resign_score: -1000
|
| 35 |
-
resign_for_egtb_minus_two: true
|
| 36 |
-
resign_moves: 3
|
| 37 |
-
offer_draw_enabled: true
|
| 38 |
-
offer_draw_score: 0
|
| 39 |
-
offer_draw_for_egtb_zero: true
|
| 40 |
-
offer_draw_moves: 10
|
| 41 |
-
offer_draw_pieces: 10
|
| 42 |
|
| 43 |
online_moves:
|
| 44 |
-
max_out_of_book_moves: 10
|
| 45 |
-
max_retries: 2
|
| 46 |
-
# max_depth: 10 # How many moves from the start to take from online books. Default is no limit.
|
| 47 |
chessdb_book:
|
| 48 |
-
enabled: false
|
| 49 |
-
min_time: 20
|
| 50 |
-
max_time: 10800
|
| 51 |
-
move_quality: "good"
|
| 52 |
-
min_depth: 20
|
| 53 |
lichess_cloud_analysis:
|
| 54 |
-
enabled: false
|
| 55 |
-
min_time: 20
|
| 56 |
-
max_time: 10800
|
| 57 |
-
move_quality: "best"
|
| 58 |
-
max_score_difference: 50
|
| 59 |
min_depth: 20
|
| 60 |
min_knodes: 0
|
| 61 |
lichess_opening_explorer:
|
| 62 |
enabled: false
|
| 63 |
min_time: 20
|
| 64 |
-
max_time: 10800
|
| 65 |
-
source: "masters"
|
| 66 |
-
player_name: ""
|
| 67 |
-
sort: "winrate"
|
| 68 |
-
min_games: 10
|
| 69 |
online_egtb:
|
| 70 |
-
enabled: false
|
| 71 |
-
min_time: 20
|
| 72 |
-
max_time: 10800
|
| 73 |
-
max_pieces: 8
|
| 74 |
-
source: "lichess"
|
| 75 |
-
move_quality: "best"
|
| 76 |
|
| 77 |
-
lichess_bot_tbs:
|
| 78 |
syzygy:
|
| 79 |
-
enabled: false
|
| 80 |
-
paths:
|
| 81 |
- "engines/syzygy"
|
| 82 |
-
max_pieces: 7
|
| 83 |
-
move_quality: "best"
|
| 84 |
gaviota:
|
| 85 |
-
enabled: false
|
| 86 |
paths:
|
| 87 |
- "engines/gaviota"
|
| 88 |
max_pieces: 5
|
| 89 |
-
min_dtm_to_consider_as_wdl_1: 120
|
| 90 |
-
move_quality: "best"
|
| 91 |
-
|
| 92 |
-
# engine_options: # Any custom command line params to pass to the engine.
|
| 93 |
-
# cpuct: 3.1
|
| 94 |
-
|
| 95 |
-
homemade_options:
|
| 96 |
-
# Hash: 256
|
| 97 |
|
| 98 |
-
uci_options: #
|
| 99 |
-
|
| 100 |
-
|
| 101 |
-
# Hash: 512 # Max memory (in megabytes) the engine can allocate.
|
| 102 |
-
# SyzygyPath: "./syzygy/" # Paths to Syzygy endgame tablebases that the engine reads.
|
| 103 |
-
Skill Level: 5
|
| 104 |
-
# movetime: 3000 # Search exactly 3000 milliseconds (3 seconds).
|
| 105 |
|
| 106 |
-
|
| 107 |
-
# cores: "4"
|
| 108 |
-
# memory: "4096"
|
| 109 |
-
# egtpath: # Directory containing egtb (endgame tablabases), relative to this project. For 'xboard' engines.
|
| 110 |
-
# gaviota: "Gaviota path"
|
| 111 |
-
# nalimov: "Nalimov Path"
|
| 112 |
-
# scorpio: "Scorpio Path"
|
| 113 |
-
# syzygy: "Syzygy Path"
|
| 114 |
-
# go_commands: # Additional options to pass to the XBoard go command.
|
| 115 |
-
# depth: 5 # Search depth ply only.
|
| 116 |
|
| 117 |
-
|
| 118 |
-
|
| 119 |
-
|
| 120 |
-
|
| 121 |
-
|
| 122 |
-
|
| 123 |
-
max_takebacks_accepted: 0 # The number of times to allow an opponent to take back a move in a game.
|
| 124 |
-
quit_after_all_games_finish: false # If set to true, then pressing Ctrl-C to quit will only stop lichess-bot after all current games have finished.
|
| 125 |
|
| 126 |
correspondence:
|
| 127 |
-
move_time: 60
|
| 128 |
-
checkin_period: 300
|
| 129 |
-
disconnect_time: 150
|
| 130 |
-
ponder: false
|
| 131 |
-
|
| 132 |
-
challenge:
|
| 133 |
-
concurrency:
|
| 134 |
-
sort_by: "best"
|
| 135 |
-
preference: "none"
|
| 136 |
-
accept_bot: true
|
| 137 |
-
only_bot: false
|
| 138 |
-
max_increment: 20
|
| 139 |
-
min_increment: 0
|
| 140 |
-
max_base: 1800
|
| 141 |
-
min_base: 0
|
| 142 |
-
max_days: 14
|
| 143 |
-
|
| 144 |
-
|
| 145 |
-
variants: # Chess variants to accept (https://lichess.org/variant).
|
| 146 |
- standard
|
| 147 |
-
|
| 148 |
-
# - antichess
|
| 149 |
-
# - atomic
|
| 150 |
-
- chess960
|
| 151 |
-
# - crazyhouse
|
| 152 |
-
# - horde
|
| 153 |
-
# - kingOfTheHill
|
| 154 |
-
# - racingKings
|
| 155 |
-
# - threeCheck
|
| 156 |
-
time_controls: # Time controls to accept (bots are not allowed to play ultraBullet).
|
| 157 |
- bullet
|
| 158 |
- blitz
|
| 159 |
- rapid
|
| 160 |
- classical
|
| 161 |
-
|
| 162 |
-
|
| 163 |
-
-
|
| 164 |
-
|
| 165 |
-
|
| 166 |
-
# - user1
|
| 167 |
-
# - user2
|
| 168 |
-
# online_block_list: # The urls from which to retrieve a list of bot names that will not be challenged. The list should be a text file where each line contains the name of a blocked bot
|
| 169 |
-
# - example.com/blocklist
|
| 170 |
-
# allow_list: # List of users from which challenges are exclusively accepted, all others being declined. If empty, challenges from all users may be accepted.
|
| 171 |
-
# - user3
|
| 172 |
-
# - user4
|
| 173 |
-
# recent_bot_challenge_age: 60 # Maximum age of a bot challenge to be considered recent in seconds
|
| 174 |
-
# max_recent_bot_challenges: 2 # Maximum number of recent challenges that can be accepted from the same bot
|
| 175 |
-
# min_rating: 0 # Minimum rating of the challenger to accept a challenge.
|
| 176 |
-
# max_rating: 4000 # Maximum rating of the challenger to accept a challenge. The maximum rating in lichess is 4000.
|
| 177 |
-
# rating_difference: 300 # Maximum rating difference between the bot and the challenger. Overrides min_rating and max_rating if set.
|
| 178 |
-
bullet_requires_increment: false # Require that bullet game challenges from bots have a non-zero increment
|
| 179 |
-
max_simultaneous_games_per_user: 5 # Maximum number of simultaneous games with the same user
|
| 180 |
|
| 181 |
greeting:
|
| 182 |
-
|
| 183 |
-
|
| 184 |
-
|
| 185 |
-
|
| 186 |
-
hello: "Hi! I'm {me}. Good luck! Type !help for a list of commands I can respond to." # Message to send to opponent chat at the start of a game
|
| 187 |
-
goodbye: "Good game!" # Message to send to opponent chat at the end of a game
|
| 188 |
-
hello_spectators: "Hi! I'm {me}. Type !help for a list of commands I can respond to." # Message to send to spectator chat at the start of a game
|
| 189 |
-
goodbye_spectators: "Thanks for watching!" # Message to send to spectator chat at the end of a game
|
| 190 |
-
|
| 191 |
-
# pgn_directory: "game_records" # A directory where PGN-format records of the bot's games are kept
|
| 192 |
-
# pgn_file_grouping: "game" # How to group games into files. Options are "game", "opponent", and "all"
|
| 193 |
-
# "game" (default) - every game is written to a different file named "{White name} vs. {Black name} - {lichess game ID}.pgn"
|
| 194 |
-
# "opponent" - every game with a given opponent is written to a file named "{Bot name} games vs. {Opponent name}.pgn"
|
| 195 |
-
# "all" - every game is written to a single file named "{Bot name} games.pgn"
|
| 196 |
|
| 197 |
matchmaking:
|
| 198 |
-
allow_matchmaking: false
|
| 199 |
-
allow_during_games: false
|
| 200 |
-
challenge_variant: "random"
|
| 201 |
-
challenge_timeout: 30
|
| 202 |
-
challenge_initial_time:
|
| 203 |
- 60
|
| 204 |
- 180
|
| 205 |
-
challenge_increment:
|
| 206 |
- 1
|
| 207 |
- 2
|
| 208 |
-
|
| 209 |
-
|
| 210 |
-
|
| 211 |
-
|
| 212 |
-
|
| 213 |
-
opponent_rating_difference: 300 # The maximum difference in rating between the bot's rating and opponent's rating.
|
| 214 |
-
rating_preference: "none" # One of "none", "high", "low".
|
| 215 |
-
challenge_mode: "random" # Set it to the mode in which challenges are sent. Possible options are 'casual', 'rated' and 'random'.
|
| 216 |
-
challenge_filter: none # If a bot declines a challenge, do not issue a similar challenge to that bot. Possible options are 'none', 'coarse', and 'fine'.
|
| 217 |
-
# block_list: # The list of bots that will not be challenged
|
| 218 |
-
# - user1
|
| 219 |
-
# - user2
|
| 220 |
-
# online_block_list: # The urls from which to retrieve a list of bot names that will not be challenged. The list should be a text file where each line contains the name of a blocked bot
|
| 221 |
-
# - example.com/blocklist
|
| 222 |
-
include_challenge_block_list: false # Do not challenge bots in the challenge: block_list in addition to the matchmaking block list.
|
| 223 |
-
|
| 224 |
-
# overrides: # List of overrides for the matchmaking specifications above. When a challenge is created, either the default specification above or one of the overrides will be randomly chosen.
|
| 225 |
-
# bullet_only_horde: # Name of the override. Can be anything as long as each override has a unique name ("bullet_only_horde" and "easy_chess960" in these examples).
|
| 226 |
-
# challenge_variant: "horde" # List of options to override. Only the options mentioned will change when making the challenge. The rest will follow the default matchmaking options above.
|
| 227 |
-
# challenge_initial_time:
|
| 228 |
-
# - 1
|
| 229 |
-
# - 2
|
| 230 |
-
# challenge_increment:
|
| 231 |
-
# - 0
|
| 232 |
-
# - 1
|
| 233 |
-
#
|
| 234 |
-
# easy_chess960:
|
| 235 |
-
# challenge_variant: "chess960"
|
| 236 |
-
# opponent_min_rating: 400
|
| 237 |
-
# opponent_max_rating: 1200
|
| 238 |
-
# opponent_rating_difference:
|
| 239 |
-
# challenge_mode: casual
|
| 240 |
-
#
|
| 241 |
-
# no_pressure_correspondence:
|
| 242 |
-
# challenge_initial_time:
|
| 243 |
-
# challenge_increment:
|
| 244 |
-
# challenge_days:
|
| 245 |
-
# - 2
|
| 246 |
-
# - 3
|
| 247 |
-
# challenge_mode: casual
|
| 248 |
-
#
|
| 249 |
-
# The following configurations cannot be overridden: allow_matchmaking, challenge_timeout, challenge_filter and block_list.
|
|
|
|
| 1 |
+
token: "lip_NzWp9zQDpAm0C4O9mBeA" # Your Lichess OAuth2 Token.
|
| 2 |
url: "https://lichess.org/" # Lichess base URL.
|
| 3 |
|
| 4 |
engine: # Engine settings.
|
| 5 |
+
dir: "./fairy" # Directory containing the engine.
|
| 6 |
+
name: "stockfish" # Binary name of the engine.
|
| 7 |
+
debug: false
|
| 8 |
+
working_dir: ""
|
| 9 |
+
protocol: "uci"
|
| 10 |
+
ponder: false # Engine does not support pondering.
|
|
|
|
|
|
|
|
|
|
|
|
|
| 11 |
|
| 12 |
polyglot:
|
| 13 |
+
enabled: false
|
| 14 |
book:
|
| 15 |
+
standard:
|
| 16 |
- engines/book1.bin
|
| 17 |
+
min_weight: 1
|
| 18 |
+
selection: "weighted_random"
|
| 19 |
+
max_depth: 20
|
| 20 |
+
normalization: "none"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 21 |
|
| 22 |
draw_or_resign:
|
| 23 |
+
resign_enabled: false
|
| 24 |
+
resign_score: -1000
|
| 25 |
+
resign_for_egtb_minus_two: true
|
| 26 |
+
resign_moves: 3
|
| 27 |
+
offer_draw_enabled: true
|
| 28 |
+
offer_draw_score: 0
|
| 29 |
+
offer_draw_for_egtb_zero: true
|
| 30 |
+
offer_draw_moves: 10
|
| 31 |
+
offer_draw_pieces: 10
|
| 32 |
|
| 33 |
online_moves:
|
| 34 |
+
max_out_of_book_moves: 10
|
| 35 |
+
max_retries: 2
|
|
|
|
| 36 |
chessdb_book:
|
| 37 |
+
enabled: false
|
| 38 |
+
min_time: 20
|
| 39 |
+
max_time: 10800
|
| 40 |
+
move_quality: "good"
|
| 41 |
+
min_depth: 20
|
| 42 |
lichess_cloud_analysis:
|
| 43 |
+
enabled: false
|
| 44 |
+
min_time: 20
|
| 45 |
+
max_time: 10800
|
| 46 |
+
move_quality: "best"
|
| 47 |
+
max_score_difference: 50
|
| 48 |
min_depth: 20
|
| 49 |
min_knodes: 0
|
| 50 |
lichess_opening_explorer:
|
| 51 |
enabled: false
|
| 52 |
min_time: 20
|
| 53 |
+
max_time: 10800
|
| 54 |
+
source: "masters"
|
| 55 |
+
player_name: ""
|
| 56 |
+
sort: "winrate"
|
| 57 |
+
min_games: 10
|
| 58 |
online_egtb:
|
| 59 |
+
enabled: false
|
| 60 |
+
min_time: 20
|
| 61 |
+
max_time: 10800
|
| 62 |
+
max_pieces: 8
|
| 63 |
+
source: "lichess"
|
| 64 |
+
move_quality: "best"
|
| 65 |
|
| 66 |
+
lichess_bot_tbs:
|
| 67 |
syzygy:
|
| 68 |
+
enabled: false
|
| 69 |
+
paths:
|
| 70 |
- "engines/syzygy"
|
| 71 |
+
max_pieces: 7
|
| 72 |
+
move_quality: "best"
|
| 73 |
gaviota:
|
| 74 |
+
enabled: false
|
| 75 |
paths:
|
| 76 |
- "engines/gaviota"
|
| 77 |
max_pieces: 5
|
| 78 |
+
min_dtm_to_consider_as_wdl_1: 120
|
| 79 |
+
move_quality: "best"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 80 |
|
| 81 |
+
uci_options: # UCI options passed to the engine.
|
| 82 |
+
Move Overhead: 100
|
| 83 |
+
Skill Level: 5 # 1=1000 Elo, 5=1500 Elo (default), 10=2000 Elo
|
|
|
|
|
|
|
|
|
|
|
|
|
| 84 |
|
| 85 |
+
silence_stderr: false
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 86 |
|
| 87 |
+
abort_time: 30
|
| 88 |
+
fake_think_time: false
|
| 89 |
+
rate_limiting_delay: 0
|
| 90 |
+
move_overhead: 2000
|
| 91 |
+
max_takebacks_accepted: 0
|
| 92 |
+
quit_after_all_games_finish: false
|
|
|
|
|
|
|
| 93 |
|
| 94 |
correspondence:
|
| 95 |
+
move_time: 60
|
| 96 |
+
checkin_period: 300
|
| 97 |
+
disconnect_time: 150
|
| 98 |
+
ponder: false
|
| 99 |
+
|
| 100 |
+
challenge:
|
| 101 |
+
concurrency: 1
|
| 102 |
+
sort_by: "best"
|
| 103 |
+
preference: "none"
|
| 104 |
+
accept_bot: true
|
| 105 |
+
only_bot: false
|
| 106 |
+
max_increment: 20
|
| 107 |
+
min_increment: 0
|
| 108 |
+
max_base: 1800
|
| 109 |
+
min_base: 0
|
| 110 |
+
max_days: 14
|
| 111 |
+
min_days: 1
|
| 112 |
+
variants:
|
|
|
|
| 113 |
- standard
|
| 114 |
+
time_controls:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 115 |
- bullet
|
| 116 |
- blitz
|
| 117 |
- rapid
|
| 118 |
- classical
|
| 119 |
+
modes:
|
| 120 |
+
- casual
|
| 121 |
+
- rated
|
| 122 |
+
bullet_requires_increment: false
|
| 123 |
+
max_simultaneous_games_per_user: 5
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 124 |
|
| 125 |
greeting:
|
| 126 |
+
hello: "Hi! I'm {me}, HectoChess1000 Model 1 C14. Good luck! Type !help for commands."
|
| 127 |
+
goodbye: "Good game!"
|
| 128 |
+
hello_spectators: "Hi! I'm {me}, HectoChess1000 Model 1 C14. Type !help for commands."
|
| 129 |
+
goodbye_spectators: "Thanks for watching!"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 130 |
|
| 131 |
matchmaking:
|
| 132 |
+
allow_matchmaking: false
|
| 133 |
+
allow_during_games: false
|
| 134 |
+
challenge_variant: "random"
|
| 135 |
+
challenge_timeout: 30
|
| 136 |
+
challenge_initial_time:
|
| 137 |
- 60
|
| 138 |
- 180
|
| 139 |
+
challenge_increment:
|
| 140 |
- 1
|
| 141 |
- 2
|
| 142 |
+
opponent_rating_difference: 300
|
| 143 |
+
rating_preference: "none"
|
| 144 |
+
challenge_mode: "random"
|
| 145 |
+
challenge_filter: none
|
| 146 |
+
include_challenge_block_list: false
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|