From 7c75c8385954942603384da29ff76d8dab9e259e Mon Sep 17 00:00:00 2001 From: Peter Osterlund Date: Sun, 19 Apr 2020 22:13:33 +0200 Subject: [PATCH] Set engine strength using Elo value Remove the Strength preferences setting. Add a new left drawer menu item to set the current engine strength in terms of Elo. Supported for all engines that implement the standard UCI options UCI_LimitStrength and UCI_Elo. Elo settings are remembered individually for each engine. --- .../java/org/petero/droidfish/DroidFish.java | 244 +++++++++++++----- .../org/petero/droidfish/GUIInterface.java | 2 +- .../activities/util/SeekBarPreference.java | 4 +- .../droidfish/engine/DroidComputerPlayer.java | 63 ++++- .../droidfish/engine/ExternalEngine.java | 4 - .../droidfish/engine/InternalStockFish.java | 9 +- .../droidfish/engine/NetworkEngine.java | 4 - .../petero/droidfish/engine/UCIEngine.java | 5 +- .../droidfish/engine/UCIEngineBase.java | 44 +++- .../petero/droidfish/engine/UCIOptions.java | 2 +- .../engine/cuckoochess/CuckooChessEngine.java | 9 +- .../gamelogic/DroidChessController.java | 106 +++++--- .../droidfish/gamelogic/SearchListener.java | 3 + .../src/main/res/layout/set_strength.xml | 39 +++ DroidFishApp/src/main/res/layout/title.xml | 1 + .../src/main/res/values-be/strings.xml | 3 - .../src/main/res/values-de/strings.xml | 3 - .../src/main/res/values-es/strings.xml | 3 - .../src/main/res/values-fr/strings.xml | 3 - .../src/main/res/values-it/strings.xml | 3 - .../src/main/res/values-ko/strings.xml | 3 - .../src/main/res/values-nl/strings.xml | 3 - .../src/main/res/values-pl/strings.xml | 3 - .../src/main/res/values-pt/strings.xml | 3 - .../src/main/res/values-ru/strings.xml | 3 - .../src/main/res/values-tr/strings.xml | 3 - .../src/main/res/values-uk/strings.xml | 3 - .../src/main/res/values-zh-rCN/strings.xml | 3 - DroidFishApp/src/main/res/values/strings.xml | 6 +- DroidFishApp/src/main/res/xml/preferences.xml | 6 - README.md | 51 ++-- doc/droidfish_manual.pdf | Bin 90555 -> 90562 bytes 32 files changed, 409 insertions(+), 232 deletions(-) create mode 100644 DroidFishApp/src/main/res/layout/set_strength.xml diff --git a/DroidFishApp/src/main/java/org/petero/droidfish/DroidFish.java b/DroidFishApp/src/main/java/org/petero/droidfish/DroidFish.java index 8506bf6..ebcf892 100644 --- a/DroidFishApp/src/main/java/org/petero/droidfish/DroidFish.java +++ b/DroidFishApp/src/main/java/org/petero/droidfish/DroidFish.java @@ -48,6 +48,7 @@ import org.petero.droidfish.activities.util.PGNFile; import org.petero.droidfish.activities.util.PGNFile.GameInfo; import org.petero.droidfish.activities.Preferences; import org.petero.droidfish.book.BookOptions; +import org.petero.droidfish.engine.DroidComputerPlayer.EloData; import org.petero.droidfish.engine.EngineUtil; import org.petero.droidfish.engine.UCIOptions; import org.petero.droidfish.gamelogic.DroidChessController; @@ -136,6 +137,7 @@ import android.view.View.OnTouchListener; import android.view.WindowManager; import android.webkit.WebView; import android.widget.ArrayAdapter; +import android.widget.CheckBox; import android.widget.EditText; import android.widget.ImageButton; import android.widget.ImageView.ScaleType; @@ -1094,8 +1096,7 @@ public class DroidFish extends Activity mEcoHints = getIntSetting("ecoHints", ECO_HINTS_AUTO); String engine = settings.getString("engine", "stockfish"); - int strength = settings.getInt("strength", 1000); - setEngineStrength(engine, strength); + setEngine(engine); mPonderMode = settings.getBoolean("ponderMode", false); if (!mPonderMode) @@ -1308,16 +1309,16 @@ public class DroidFish extends Activity getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); } - private void setEngineStrength(String engine, int strength) { + private void setEngine(String engine) { if (!storageAvailable()) { if (!"stockfish".equals(engine) && !"cuckoochess".equals(engine)) engine = "stockfish"; } - ctrl.setEngineStrength(engine, strength); - setEngineTitle(engine, strength); + ctrl.setEngine(engine); + setEngineTitle(engine, ctrl.eloData().getEloToUse()); } - private void setEngineTitle(String engine, int strength) { + private void setEngineTitle(String engine, int elo) { String eName = ""; if (EngineUtil.isOpenExchangeEngine(engine)) { String engineFileName = new File(engine).getName(); @@ -1336,10 +1337,10 @@ public class DroidFish extends Activity eName = getString("cuckoochess".equals(engine) ? R.string.cuckoochess_engine : R.string.stockfish_engine); - boolean analysis = (ctrl != null) && ctrl.analysisMode(); - if ((strength < 1000) && !analysis) - eName = String.format(Locale.US, "%s: %d%%", eName, strength / 10); } + if (ctrl != null && !ctrl.analysisMode()) + if (elo != Integer.MAX_VALUE) + eName = String.format(Locale.US, "%s: %d", eName, elo); engineTitleText.setText(eName); } @@ -1363,10 +1364,9 @@ public class DroidFish extends Activity } @Override - public void updateEngineTitle() { + public void updateEngineTitle(int elo) { String engine = settings.getString("engine", "stockfish"); - int strength = settings.getInt("strength", 1000); - setEngineTitle(engine, strength); + setEngineTitle(engine, elo); } @Override @@ -1433,31 +1433,34 @@ public class DroidFish extends Activity } private class DrawerItem { - int id; - int itemId; // Item string resource id + DrawerItemId id; + private int resId; // Item string resource id - DrawerItem(int id, int itemId) { + DrawerItem(DrawerItemId id, int resId) { this.id = id; - this.itemId = itemId; + this.resId = resId; } @Override public String toString() { - return getString(itemId); + return getString(resId); } } - static private final int ITEM_NEW_GAME = 0; - static private final int ITEM_EDIT_BOARD = 1; - static private final int ITEM_SETTINGS = 2; - static private final int ITEM_FILE_MENU = 3; - static private final int ITEM_RESIGN = 4; - static private final int ITEM_FORCE_MOVE = 5; - static private final int ITEM_DRAW = 6; - static private final int ITEM_SELECT_BOOK = 7; - static private final int ITEM_MANAGE_ENGINES = 8; - static private final int ITEM_SET_COLOR_THEME = 9; - static private final int ITEM_ABOUT = 10; + private enum DrawerItemId { + NEW_GAME, + SET_STRENGTH, + EDIT_BOARD, + SETTINGS, + FILE_MENU, + RESIGN, + FORCE_MOVE, + DRAW, + SELECT_BOOK, + MANAGE_ENGINES, + SET_COLOR_THEME, + ABOUT, + } /** Initialize the drawer part of the user interface. */ private void initDrawers() { @@ -1466,14 +1469,15 @@ public class DroidFish extends Activity rightDrawer = findViewById(R.id.right_drawer); final DrawerItem[] leftItems = new DrawerItem[] { - new DrawerItem(ITEM_NEW_GAME, R.string.option_new_game), - new DrawerItem(ITEM_EDIT_BOARD, R.string.option_edit_board), - new DrawerItem(ITEM_FILE_MENU, R.string.option_file), - new DrawerItem(ITEM_SELECT_BOOK, R.string.option_select_book), - new DrawerItem(ITEM_MANAGE_ENGINES, R.string.option_manage_engines), - new DrawerItem(ITEM_SET_COLOR_THEME, R.string.option_color_theme), - new DrawerItem(ITEM_SETTINGS, R.string.option_settings), - new DrawerItem(ITEM_ABOUT, R.string.option_about) + new DrawerItem(DrawerItemId.NEW_GAME, R.string.option_new_game), + new DrawerItem(DrawerItemId.SET_STRENGTH, R.string.set_engine_strength), + new DrawerItem(DrawerItemId.EDIT_BOARD, R.string.option_edit_board), + new DrawerItem(DrawerItemId.FILE_MENU, R.string.option_file), + new DrawerItem(DrawerItemId.SELECT_BOOK, R.string.option_select_book), + new DrawerItem(DrawerItemId.MANAGE_ENGINES, R.string.option_manage_engines), + new DrawerItem(DrawerItemId.SET_COLOR_THEME, R.string.option_color_theme), + new DrawerItem(DrawerItemId.SETTINGS, R.string.option_settings), + new DrawerItem(DrawerItemId.ABOUT, R.string.option_about), }; leftDrawer.setAdapter(new ArrayAdapter<>(this, R.layout.drawer_list_item, @@ -1484,9 +1488,9 @@ public class DroidFish extends Activity }); final DrawerItem[] rightItems = new DrawerItem[] { - new DrawerItem(ITEM_RESIGN, R.string.option_resign_game), - new DrawerItem(ITEM_FORCE_MOVE, R.string.option_force_computer_move), - new DrawerItem(ITEM_DRAW, R.string.option_draw) + new DrawerItem(DrawerItemId.RESIGN, R.string.option_resign_game), + new DrawerItem(DrawerItemId.FORCE_MOVE, R.string.option_force_computer_move), + new DrawerItem(DrawerItemId.DRAW, R.string.option_draw), }; rightDrawer.setAdapter(new ArrayAdapter<>(this, R.layout.drawer_list_item, @@ -1504,7 +1508,7 @@ public class DroidFish extends Activity } /** React to a selection in the left/right drawers. */ - private void handleDrawerSelection(int itemId) { + private void handleDrawerSelection(DrawerItemId id) { drawerLayout.closeDrawer(Gravity.LEFT); drawerLayout.closeDrawer(Gravity.RIGHT); leftDrawer.clearChoices(); @@ -1512,30 +1516,33 @@ public class DroidFish extends Activity setAutoMode(AutoMode.OFF); - switch (itemId) { - case ITEM_NEW_GAME: + switch (id) { + case NEW_GAME: showDialog(NEW_GAME_DIALOG); break; - case ITEM_EDIT_BOARD: + case SET_STRENGTH: + reShowDialog(SET_STRENGTH_DIALOG); + break; + case EDIT_BOARD: startEditBoard(ctrl.getFEN()); break; - case ITEM_SETTINGS: { + case SETTINGS: { Intent i = new Intent(DroidFish.this, Preferences.class); startActivityForResult(i, RESULT_SETTINGS); break; } - case ITEM_FILE_MENU: + case FILE_MENU: if (storageAvailable()) reShowDialog(FILE_MENU_DIALOG); break; - case ITEM_RESIGN: + case RESIGN: if (ctrl.humansTurn()) ctrl.resignGame(); break; - case ITEM_FORCE_MOVE: + case FORCE_MOVE: ctrl.stopSearch(); break; - case ITEM_DRAW: + case DRAW: if (ctrl.humansTurn()) { if (ctrl.claimDrawIfPossible()) ctrl.stopPonder(); @@ -1543,20 +1550,20 @@ public class DroidFish extends Activity DroidFishApp.toast(R.string.offer_draw, Toast.LENGTH_SHORT); } break; - case ITEM_SELECT_BOOK: + case SELECT_BOOK: if (storageAvailable()) reShowDialog(SELECT_BOOK_DIALOG); break; - case ITEM_MANAGE_ENGINES: + case MANAGE_ENGINES: if (storageAvailable()) reShowDialog(MANAGE_ENGINES_DIALOG); else reShowDialog(SELECT_ENGINE_DIALOG_NOMANAGE); break; - case ITEM_SET_COLOR_THEME: + case SET_COLOR_THEME: showDialog(SET_COLOR_THEME_DIALOG); break; - case ITEM_ABOUT: + case ABOUT: showDialog(ABOUT_DIALOG); break; } @@ -2025,6 +2032,7 @@ public class DroidFish extends Activity static private final int DELETE_NETWORK_ENGINE_DIALOG = 25; static private final int CLIPBOARD_DIALOG = 26; static private final int SELECT_FEN_FILE_DIALOG = 27; + static private final int SET_STRENGTH_DIALOG = 28; /** Remove and show a dialog. */ void reShowDialog(int id) { @@ -2036,6 +2044,7 @@ public class DroidFish extends Activity protected Dialog onCreateDialog(int id) { switch (id) { case NEW_GAME_DIALOG: return newGameDialog(); + case SET_STRENGTH_DIALOG: return setStrengthDialog(); case PROMOTE_DIALOG: return promoteDialog(); case BOARD_MENU_DIALOG: return boardMenuDialog(); case FILE_MENU_DIALOG: return fileMenuDialog(); @@ -2076,6 +2085,106 @@ public class DroidFish extends Activity return builder.create(); } + private Dialog setStrengthDialog() { + EloStrengthSetter m = new EloStrengthSetter(); + return m.getDialog(); + } + + /** Handle user interface to set engine strength. */ + private class EloStrengthSetter { + private final EloData eloData = ctrl.eloData(); + + private CheckBox checkBox; + private TextView eloLabel; + private EditText editTxt; + private SeekBar seekBar; + + private int progressToElo(int p) { + return eloData.minElo + p; + } + + private int eloToProgress(int elo) { + return elo - eloData.minElo; + } + + private void updateText(int elo) { + String txt = Integer.valueOf(elo).toString(); + if (!txt.equals(editTxt.getText().toString())) { + editTxt.setText(txt); + editTxt.setSelection(txt.length()); + } + } + + private void updateEnabledState(boolean enabled) { + eloLabel.setEnabled(enabled); + editTxt.setEnabled(enabled); + seekBar.setEnabled(enabled); + } + + public Dialog getDialog() { + if (!eloData.canChangeStrength()) { + DroidFishApp.toast(R.string.engine_cannot_reduce_strength, Toast.LENGTH_LONG); + return null; + } + AlertDialog.Builder builder = new AlertDialog.Builder(DroidFish.this); + builder.setTitle(R.string.set_engine_strength); + View content = View.inflate(DroidFish.this, R.layout.set_strength, null); + builder.setView(content); + + checkBox = content.findViewById(R.id.strength_checkbox); + eloLabel = content.findViewById(R.id.strength_elolabel); + editTxt = content.findViewById(R.id.strength_edittext); + seekBar = content.findViewById(R.id.strength_seekbar); + + checkBox.setChecked(eloData.limitStrength); + seekBar.setMax(eloToProgress(eloData.maxElo)); + seekBar.setProgress(eloToProgress(eloData.elo)); + updateText(eloData.elo); + updateEnabledState(eloData.limitStrength); + + checkBox.setOnCheckedChangeListener((button, isChecked) -> { + updateEnabledState(isChecked); + }); + seekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() { + @Override + public void onStopTrackingTouch(SeekBar seekBar) { } + @Override + public void onStartTrackingTouch(SeekBar seekBar) { } + @Override + public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { + updateText(progressToElo(progress)); + } + }); + editTxt.addTextChangedListener(new TextWatcher() { + @Override + public void onTextChanged(CharSequence s, int start, int before, int count) { + String txt = editTxt.getText().toString(); + try { + int elo = Integer.parseInt(txt); + int p = eloToProgress(elo); + if (p != seekBar.getProgress()) + seekBar.setProgress(p); + updateText(progressToElo(p)); + } catch (NumberFormatException ignore) { + } + } + @Override + public void beforeTextChanged(CharSequence s, int start, int count, int after) { } + @Override + public void afterTextChanged(Editable s) { } + }); + + builder.setNegativeButton(R.string.cancel, null); + builder.setPositiveButton(android.R.string.ok, (dialog, which) -> { + boolean limitStrength = checkBox.isChecked(); + int elo = progressToElo(seekBar.getProgress()); + ctrl.setStrength(limitStrength, elo); + }); + + return builder.create(); + } + } + private void startNewGame(int type) { if (type != 2) { int gameModeType = (type == 0) ? GameMode.PLAYER_WHITE : GameMode.PLAYER_BLACK; @@ -2091,7 +2200,7 @@ public class DroidFish extends Activity ctrl.newGame(gameMode, tcData); ctrl.startGame(); setBoardFlip(true); - updateEngineTitle(); + updateEngineTitle(ctrl.eloData().getEloToUse()); // Game mode affects Elo setting } private Dialog promoteDialog() { @@ -2502,9 +2611,8 @@ public class DroidFish extends Activity editor.putString("engine", engine); editor.apply(); dialog.dismiss(); - int strength = settings.getInt("strength", 1000); setEngineOptions(false); - setEngineStrength(engine, strength); + setEngine(engine); }); builder.setOnCancelListener(dialog -> { if (!abortOnCancel) @@ -2845,8 +2953,7 @@ public class DroidFish extends Activity int numPV = this.numPV; final int maxPV = ctrl.maxPV(); if (gameMode.analysisMode()) { - numPV = Math.min(numPV, maxPV); - numPV = Math.max(numPV, 1); + numPV = Math.min(Math.max(numPV, 1), maxPV); if (maxPV > 1) { lst.add(getString(R.string.num_variations)); actions.add(MULTIPV_SET); } @@ -2988,11 +3095,9 @@ public class DroidFish extends Activity seekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() { @Override - public void onStopTrackingTouch(SeekBar seekBar) { - } + public void onStopTrackingTouch(SeekBar seekBar) { } @Override - public void onStartTrackingTouch(SeekBar seekBar) { - } + public void onStartTrackingTouch(SeekBar seekBar) { } @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { int nPV = progressToNumPV(progress, maxPV); @@ -3014,11 +3119,9 @@ public class DroidFish extends Activity } } @Override - public void beforeTextChanged(CharSequence s, int start, int count, int after) { - } + public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override - public void afterTextChanged(Editable s) { - } + public void afterTextChanged(Editable s) { } }); builder.setNegativeButton(R.string.cancel, null); @@ -3349,9 +3452,8 @@ public class DroidFish extends Activity editor.putString("engine", engine); editor.apply(); dialog.dismiss(); - int strength = settings.getInt("strength", 1000); setEngineOptions(false); - setEngineStrength(engine, strength); + setEngine(engine); } dialog.cancel(); reShowDialog(NETWORK_ENGINE_DIALOG); @@ -3553,22 +3655,22 @@ public class DroidFish extends Activity @Override public void reportInvalidMove(Move m) { String msg = String.format(Locale.US, "%s %s-%s", - getString(R.string.invalid_move), - TextIO.squareToString(m.from), TextIO.squareToString(m.to)); + getString(R.string.invalid_move), + TextIO.squareToString(m.from), TextIO.squareToString(m.to)); DroidFishApp.toast(msg, Toast.LENGTH_SHORT); } @Override public void reportEngineName(String engine) { String msg = String.format(Locale.US, "%s: %s", - getString(R.string.engine), engine); + getString(R.string.engine), engine); DroidFishApp.toast(msg, Toast.LENGTH_SHORT); } @Override public void reportEngineError(String errMsg) { String msg = String.format(Locale.US, "%s: %s", - getString(R.string.engine_error), errMsg); + getString(R.string.engine_error), errMsg); DroidFishApp.toast(msg, Toast.LENGTH_LONG); } diff --git a/DroidFishApp/src/main/java/org/petero/droidfish/GUIInterface.java b/DroidFishApp/src/main/java/org/petero/droidfish/GUIInterface.java index 4ccb089..5a96bfe 100644 --- a/DroidFishApp/src/main/java/org/petero/droidfish/GUIInterface.java +++ b/DroidFishApp/src/main/java/org/petero/droidfish/GUIInterface.java @@ -86,7 +86,7 @@ public interface GUIInterface { void setRemainingTime(int wTime, int bTime, int nextUpdate); /** Update engine title text. */ - void updateEngineTitle(); + void updateEngineTitle(int elo); /** Update title with the material difference. */ void updateMaterialDifferenceTitle(Util.MaterialDiff diff); diff --git a/DroidFishApp/src/main/java/org/petero/droidfish/activities/util/SeekBarPreference.java b/DroidFishApp/src/main/java/org/petero/droidfish/activities/util/SeekBarPreference.java index b33d64c..2808351 100644 --- a/DroidFishApp/src/main/java/org/petero/droidfish/activities/util/SeekBarPreference.java +++ b/DroidFishApp/src/main/java/org/petero/droidfish/activities/util/SeekBarPreference.java @@ -91,9 +91,7 @@ public class SeekBarPreference extends Preference implements OnSeekBarChangeList builder.setView(selectPercentageBinding.getRoot()); String title = ""; String key = getKey(); - if (key.equals("strength")) { - title = getContext().getString(R.string.edit_strength); - } else if (key.equals("bookRandom")) { + if (key.equals("bookRandom")) { title = getContext().getString(R.string.edit_randomization); } builder.setTitle(title); diff --git a/DroidFishApp/src/main/java/org/petero/droidfish/engine/DroidComputerPlayer.java b/DroidFishApp/src/main/java/org/petero/droidfish/engine/DroidComputerPlayer.java index f8efffc..08dce30 100644 --- a/DroidFishApp/src/main/java/org/petero/droidfish/engine/DroidComputerPlayer.java +++ b/DroidFishApp/src/main/java/org/petero/droidfish/engine/DroidComputerPlayer.java @@ -109,7 +109,7 @@ public class DroidComputerPlayer { int movesToGo; // Number of moves to next time control String engine; // Engine name (identifier) - int strength; // Engine strength setting (0 - 1000) + int elo; // Engine UCI_Elo setting, or Integer.MAX_VALUE for full strength int numPV; // Number of PV lines to compute boolean ponderEnabled; // True if pondering enabled, for engine time management @@ -145,14 +145,14 @@ public class DroidComputerPlayer { * @param ponderEnabled True if pondering is enabled in the GUI. Can affect time management. * @param ponderMove Move to ponder, or null for non-ponder search. * @param engine Chess engine to use for searching. - * @param strength Engine strength setting. + * @param elo Engine Elo strength setting. */ public static SearchRequest searchRequest(int id, long now, Position prevPos, ArrayList mList, Position currPos, boolean drawOffer, int wTime, int bTime, int wInc, int bInc, int movesToGo, boolean ponderEnabled, Move ponderMove, - String engine, int strength) { + String engine, int elo) { SearchRequest sr = new SearchRequest(); sr.searchId = id; sr.startTime = now; @@ -168,7 +168,7 @@ public class DroidComputerPlayer { sr.bInc = bInc; sr.movesToGo = movesToGo; sr.engine = engine; - sr.strength = strength; + sr.elo = elo; sr.numPV = 1; sr.ponderEnabled = ponderEnabled; sr.ponderMove = ponderMove; @@ -204,7 +204,7 @@ public class DroidComputerPlayer { sr.isAnalyze = true; sr.wTime = sr.bTime = sr.wInc = sr.bInc = sr.movesToGo = 0; sr.engine = engine; - sr.strength = 1000; + sr.elo = Integer.MAX_VALUE; sr.numPV = numPV; sr.ponderEnabled = false; sr.ponderMove = null; @@ -310,6 +310,56 @@ public class DroidComputerPlayer { } } + public static class EloData { + public boolean limitStrength = false; // True if engine strength reduction is enabled + public int elo = 0; // Current strength setting + public int minElo = 0; // Smallest possible Elo value + public int maxElo = 0; // Largest possible Elo value + + /** Return true if engine is able to change the playing strength. */ + public boolean canChangeStrength() { + return minElo < maxElo; + } + + /** Get current Elo setting. + * Return MAX_VALUE if reduced strength not enabled or not supported. */ + public int getEloToUse() { + if (canChangeStrength() && limitStrength) + return elo; + return Integer.MAX_VALUE; + } + } + + /** Return engine Elo strength data. */ + public synchronized EloData getEloData() { + EloData ret = new EloData(); + UCIEngine uci = uciEngine; + if (uci != null) { + UCIOptions opts = uci.getUCIOptions(); + UCIOptions.OptionBase lsOpt = opts.getOption("UCI_LimitStrength"); + UCIOptions.OptionBase eloOpt = opts.getOption("UCI_Elo"); + if (lsOpt instanceof UCIOptions.CheckOption && + eloOpt instanceof UCIOptions.SpinOption) { + ret.limitStrength = ((UCIOptions.CheckOption)lsOpt).value; + UCIOptions.SpinOption eloSpin = (UCIOptions.SpinOption)eloOpt; + ret.elo = eloSpin.value; + ret.minElo = eloSpin.minValue; + ret.maxElo = eloSpin.maxValue; + } + } + return ret; + } + + /** Set engine UCI strength parameters. */ + public void setStrength(int elo) { + Map opts = new TreeMap<>(); + boolean limitStrength = elo != Integer.MAX_VALUE; + opts.put("UCI_LimitStrength", limitStrength ? "true" : "false"); + if (limitStrength) + opts.put("UCI_Elo", String.valueOf(elo)); + setEngineUCIOptions(opts); + } + /** Return all book moves, both as a formatted string and as a list of moves. */ public final Pair> getBookHints(Position pos, boolean localized) { return book.getAllBookMoves(pos, localized); @@ -571,7 +621,7 @@ public class DroidComputerPlayer { // Set strength and MultiPV parameters clearInfo(); - uciEngine.setStrength(searchRequest.strength); + uciEngine.setEloStrength(searchRequest.elo); if (maxPV > 1) { int num = Math.min(maxPV, searchRequest.numPV); uciEngine.setOption("MultiPV", num); @@ -721,6 +771,7 @@ public class DroidComputerPlayer { uci.writeLineToEngine("ucinewgame"); uci.writeLineToEngine("isready"); engineState.setState(MainState.WAIT_READY); + listener.notifyEngineInitialized(); } break; } diff --git a/DroidFishApp/src/main/java/org/petero/droidfish/engine/ExternalEngine.java b/DroidFishApp/src/main/java/org/petero/droidfish/engine/ExternalEngine.java index d3b97ad..f58013f 100644 --- a/DroidFishApp/src/main/java/org/petero/droidfish/engine/ExternalEngine.java +++ b/DroidFishApp/src/main/java/org/petero/droidfish/engine/ExternalEngine.java @@ -236,10 +236,6 @@ public class ExternalEngine extends UCIEngineBase { return true; } - @Override - public void setStrength(int strength) { - } - @Override public String readLineFromEngine(int timeoutMillis) { String ret = inLines.readLine(timeoutMillis); diff --git a/DroidFishApp/src/main/java/org/petero/droidfish/engine/InternalStockFish.java b/DroidFishApp/src/main/java/org/petero/droidfish/engine/InternalStockFish.java index ce1c290..3ddf57c 100644 --- a/DroidFishApp/src/main/java/org/petero/droidfish/engine/InternalStockFish.java +++ b/DroidFishApp/src/main/java/org/petero/droidfish/engine/InternalStockFish.java @@ -46,9 +46,9 @@ public class InternalStockFish extends ExternalEngine { } @Override - protected boolean configurableOption(String name) { + protected boolean editableOption(String name) { name = name.toLowerCase(Locale.US); - if (!super.configurableOption(name)) + if (!super.editableOption(name)) return false; if (name.equals("skill level") || name.equals("write debug log") || name.equals("write search log")) @@ -56,11 +56,6 @@ public class InternalStockFish extends ExternalEngine { return true; } - @Override - public final void setStrength(int strength) { - setOption("Skill Level", strength/50); - } - private long readCheckSum(File f) { try (InputStream is = new FileInputStream(f); DataInputStream dis = new DataInputStream(is)) { diff --git a/DroidFishApp/src/main/java/org/petero/droidfish/engine/NetworkEngine.java b/DroidFishApp/src/main/java/org/petero/droidfish/engine/NetworkEngine.java index fc12b15..cc6c3ae 100644 --- a/DroidFishApp/src/main/java/org/petero/droidfish/engine/NetworkEngine.java +++ b/DroidFishApp/src/main/java/org/petero/droidfish/engine/NetworkEngine.java @@ -228,10 +228,6 @@ public class NetworkEngine extends UCIEngineBase { return true; } - @Override - public void setStrength(int strength) { - } - @Override public String readLineFromEngine(int timeoutMillis) { String ret = engineToGui.readLine(timeoutMillis); diff --git a/DroidFishApp/src/main/java/org/petero/droidfish/engine/UCIEngine.java b/DroidFishApp/src/main/java/org/petero/droidfish/engine/UCIEngine.java index 852e728..ecd3caa 100644 --- a/DroidFishApp/src/main/java/org/petero/droidfish/engine/UCIEngine.java +++ b/DroidFishApp/src/main/java/org/petero/droidfish/engine/UCIEngine.java @@ -67,8 +67,9 @@ public interface UCIEngine { /** Write a line to the engine. \n will be added automatically. */ void writeLineToEngine(String data); - /** Set the engine strength, allowed values 0 - 1000. */ - void setStrength(int strength); + /** Temporarily set the engine Elo strength to use for the next search. + * Integer.MAX_VALUE means full strength. */ + void setEloStrength(int elo); /** Set an engine integer option. */ void setOption(String name, int value); diff --git a/DroidFishApp/src/main/java/org/petero/droidfish/engine/UCIEngineBase.java b/DroidFishApp/src/main/java/org/petero/droidfish/engine/UCIEngineBase.java index b540e45..4350720 100644 --- a/DroidFishApp/src/main/java/org/petero/droidfish/engine/UCIEngineBase.java +++ b/DroidFishApp/src/main/java/org/petero/droidfish/engine/UCIEngineBase.java @@ -27,6 +27,7 @@ import java.util.Arrays; import java.util.Locale; import java.util.Map; import java.util.Properties; +import java.util.TreeMap; import org.petero.droidfish.EngineOptions; import org.petero.droidfish.engine.cuckoochess.CuckooChessEngine; @@ -80,14 +81,15 @@ public abstract class UCIEngineBase implements UCIEngine { iniOptions.load(is); } catch (IOException ignore) { } + Map opts = new TreeMap<>(); for (Map.Entry ent : iniOptions.entrySet()) { if (ent.getKey() instanceof String && ent.getValue() instanceof String) { String key = ((String)ent.getKey()).toLowerCase(Locale.US); String value = (String)ent.getValue(); - if (configurableOption(key)) - setOption(key, value); + opts.put(key, value); } } + setUCIOptions(opts); } @Override @@ -125,12 +127,11 @@ public abstract class UCIEngineBase implements UCIEngine { /** Get engine UCI options file. */ protected abstract File getOptionsFile(); - /** Return true if the UCI option can be changed by the user. */ - protected boolean configurableOption(String name) { + /** Return true if the UCI option can be edited in the "Engine Options" dialog. */ + protected boolean editableOption(String name) { name = name.toLowerCase(Locale.US); if (name.startsWith("uci_")) { - String[] allowed = { "uci_limitstrength", "uci_elo" }; - return Arrays.asList(allowed).contains(name); + return false; } else { String[] ignored = { "hash", "ponder", "multipv", "gaviotatbpath", "syzygypath" }; @@ -138,6 +139,17 @@ public abstract class UCIEngineBase implements UCIEngine { } } + /** Return true if the UCI option can be modified by the user, either directly + * from the "Engine Options" dialog or indirectly, for example from the + * "Set Engine Strength" dialog. */ + private boolean configurableOption(String name) { + if (editableOption(name)) + return true; + name = name.toLowerCase(Locale.US); + String[] configurable = { "uci_limitstrength", "uci_elo" }; + return Arrays.asList(configurable).contains(name); + } + @Override public void shutDown() { if (processAlive) { @@ -221,7 +233,7 @@ public abstract class UCIEngineBase implements UCIEngine { int maxV = Integer.parseInt(maxVal); if (minV <= defV && defV <= maxV) option = new UCIOptions.SpinOption(name, minV, maxV, defV); - } catch (NumberFormatException ex) { + } catch (NumberFormatException ignore) { } } } else if (type.equals("combo")) { @@ -241,8 +253,7 @@ public abstract class UCIEngineBase implements UCIEngine { } if (option != null) { - if (!configurableOption(name)) - option.visible = false; + option.visible = editableOption(name); options.addOption(option); } return option; @@ -253,6 +264,21 @@ public abstract class UCIEngineBase implements UCIEngine { return options.contains(optName); } + @Override + public final void setEloStrength(int elo) { + String lsName = "UCI_LimitStrength"; + boolean limit = elo != Integer.MAX_VALUE; + UCIOptions.OptionBase o = options.getOption(lsName); + if (o instanceof UCIOptions.CheckOption) { + // Don't use setOption() since this value reflects current search parameters, + // not user specified strength settings, so should not be saved in .ini file. + writeLineToEngine(String.format(Locale.US, "setoption name %s value %s", + lsName, limit ? "true" : "false")); + } + if (limit) + setOption("UCI_Elo", elo); + } + @Override public final void setOption(String name, int value) { setOption(name, String.format(Locale.US, "%d", value)); diff --git a/DroidFishApp/src/main/java/org/petero/droidfish/engine/UCIOptions.java b/DroidFishApp/src/main/java/org/petero/droidfish/engine/UCIOptions.java index f382823..697616f 100644 --- a/DroidFishApp/src/main/java/org/petero/droidfish/engine/UCIOptions.java +++ b/DroidFishApp/src/main/java/org/petero/droidfish/engine/UCIOptions.java @@ -41,7 +41,7 @@ public class UCIOptions implements Serializable, Cloneable { private static final long serialVersionUID = 1L; public String name; public Type type; - public boolean visible = true; + public boolean visible = true; // True if visible in "Engine Options" dialog @Override public OptionBase clone() throws CloneNotSupportedException { diff --git a/DroidFishApp/src/main/java/org/petero/droidfish/engine/cuckoochess/CuckooChessEngine.java b/DroidFishApp/src/main/java/org/petero/droidfish/engine/cuckoochess/CuckooChessEngine.java index 330d6a2..d6a485e 100644 --- a/DroidFishApp/src/main/java/org/petero/droidfish/engine/cuckoochess/CuckooChessEngine.java +++ b/DroidFishApp/src/main/java/org/petero/droidfish/engine/cuckoochess/CuckooChessEngine.java @@ -74,9 +74,9 @@ public class CuckooChessEngine extends UCIEngineBase { } @Override - protected boolean configurableOption(String name) { + protected boolean editableOption(String name) { name = name.toLowerCase(Locale.US); - if (!super.configurableOption(name)) + if (!super.editableOption(name)) return false; if (name.equals("strength")) return false; @@ -88,11 +88,6 @@ public class CuckooChessEngine extends UCIEngineBase { return true; } - @Override - public final void setStrength(int strength) { - setOption("strength", strength); - } - private void mainLoop(LocalPipe is, LocalPipe os) { String line; while ((line = is.readLine()) != null) { diff --git a/DroidFishApp/src/main/java/org/petero/droidfish/gamelogic/DroidChessController.java b/DroidFishApp/src/main/java/org/petero/droidfish/gamelogic/DroidChessController.java index ca9eb54..4824a46 100644 --- a/DroidFishApp/src/main/java/org/petero/droidfish/gamelogic/DroidChessController.java +++ b/DroidFishApp/src/main/java/org/petero/droidfish/gamelogic/DroidChessController.java @@ -41,6 +41,7 @@ import org.petero.droidfish.book.BookOptions; import org.petero.droidfish.book.EcoDb; import org.petero.droidfish.engine.DroidComputerPlayer; import org.petero.droidfish.engine.UCIOptions; +import org.petero.droidfish.engine.DroidComputerPlayer.EloData; import org.petero.droidfish.engine.DroidComputerPlayer.SearchRequest; import org.petero.droidfish.engine.DroidComputerPlayer.SearchType; import org.petero.droidfish.gamelogic.Game.CommentInfo; @@ -60,7 +61,6 @@ public class DroidChessController { private PGNOptions pgnOptions; private String engine = ""; - private int strength = 1000; private int numPV = 1; private SearchListener listener; @@ -146,13 +146,15 @@ public class DroidChessController { if (!gameMode.playerWhite() || !gameMode.playerBlack()) setPlayerNames(game); // If computer player involved, set player names updateGameMode(); - abortSearch(); - updateComputeThreads(); - gui.updateEngineTitle(); - updateGUI(); + gui.updateEngineTitle(getEloToUse()); // Game mode affects Elo setting + restartSearch(); } } + private int getEloToUse() { + return eloData().getEloToUse(); + } + public final GameMode getGameMode() { return gameMode; } @@ -179,30 +181,49 @@ public class DroidChessController { engineOptions = options; if (computerPlayer != null) computerPlayer.setEngineOptions(engineOptions); - if (restart && (game != null)) { - abortSearch(); - updateComputeThreads(); - updateGUI(); - } + if (restart) + restartSearch(); } } - /** Set engine and engine strength. Restart computer thinking if appropriate. - * @param engine Name of engine. - * @param strength Engine strength, 0 - 1000. */ - public final synchronized void setEngineStrength(String engine, int strength) { - boolean newEngine = !engine.equals(this.engine); - if (newEngine || (strength != this.strength)) { - this.engine = engine; - this.strength = strength; - if (game != null) { - abortSearch(); - updateComputeThreads(); - updateGUI(); - } + private void restartSearch() { + if (game != null) { + abortSearch(); + updateComputeThreads(); + updateGUI(); } } + /** Set engine. Restart computer thinking if appropriate. */ + public final synchronized void setEngine(String engine) { + if (!engine.equals(this.engine)) { + this.engine = engine; + restartSearch(); + } + } + + /** Set engine strength. Restart computer thinking if appropriate. */ + public final synchronized void setStrength(boolean limitStrength, int elo) { + EloData d = eloData(); + int oldElo = d.getEloToUse(); + d.limitStrength = limitStrength; + d.elo = elo; + int newElo = d.getEloToUse(); + if (oldElo != newElo) { + if (computerPlayer != null) + computerPlayer.setStrength(newElo); + restartSearch(); + gui.updateEngineTitle(newElo); + } + } + + /** Return engine Elo strength data. */ + public final synchronized EloData eloData() { + if (computerPlayer == null) + return new EloData(); + return computerPlayer.getEloData(); + } + /** Set engine UCI options. */ public final synchronized void setEngineUCIOptions(Map uciOptions) { if (computerPlayer != null) @@ -233,8 +254,7 @@ public class DroidChessController { DataInputStream dis = new DataInputStream(bais)) { game.readFromStream(dis, version); game.tree.translateMoves(); - } catch (IOException ignore) { - } catch (ChessParseError ignore) { + } catch (IOException|ChessParseError ignore) { } } @@ -383,9 +403,7 @@ public class DroidChessController { if (humansTurn()) { int varNo = game.tree.addMove("--", "", 0, "", ""); game.tree.goForward(varNo); - abortSearch(); - updateComputeThreads(); - updateGUI(); + restartSearch(); gui.setSelection(-1); } } @@ -596,11 +614,8 @@ public class DroidChessController { clampedNumPV = Math.max(clampedNumPV, 1); boolean modified = clampedNumPV != this.numPV; this.numPV = numPV; - if (modified) { - abortSearch(); - updateComputeThreads(); - updateGUI(); - } + if (modified) + restartSearch(); } /** Request computer player to make a move immediately. */ @@ -757,7 +772,7 @@ public class DroidChessController { } else if (currTime < 999950) { statStrTmp.append(String.format(Locale.US, " t:%.1f", currTime / 1000.0)); } else { - statStrTmp.append(String.format(Locale.US, " t:%d", (int)((currTime + 500) / 1000))); + statStrTmp.append(String.format(Locale.US, " t:%d", (currTime + 500) / 1000)); } statStrTmp.append(" n:"); appendWithPrefix(statStrTmp, currNodes); @@ -900,18 +915,25 @@ public class DroidChessController { } @Override - public void notifySearchResult(final int id, final String cmd, final Move ponder) { + public void notifySearchResult(int id, String cmd, Move ponder) { new Thread(() -> gui.runOnUIThread(() -> makeComputerMove(id, cmd, ponder))).start(); } @Override - public void notifyEngineName(final String engineName) { + public void notifyEngineName(String engineName) { gui.runOnUIThread(() -> { updatePlayerNames(engineName); gui.reportEngineName(engineName); }); } + @Override + public void notifyEngineInitialized() { + gui.runOnUIThread(() -> { + gui.updateEngineTitle(eloData().getEloToUse()); + }); + } + @Override public void reportEngineError(final String errMsg) { gui.runOnUIThread(() -> gui.reportEngineError(errMsg)); @@ -998,7 +1020,7 @@ public class DroidChessController { game.haveDrawOffer(), wTime, bTime, wInc, bInc, movesToGo, gui.ponderMode(), fPonderMove, - engine, strength); + engine, getEloToUse()); computerPlayer.queueSearchRequest(sr); } else { computerPlayer.queueStartEngine(searchId, engine); @@ -1033,8 +1055,9 @@ public class DroidChessController { String engine = "Computer"; if (computerPlayer != null) { engine = computerPlayer.getEngineName(); - if (strength < 1000) - engine += String.format(Locale.US, " (%.1f%%)", strength * 0.1); + int elo = getEloToUse(); + if (elo != Integer.MAX_VALUE) + engine += String.format(Locale.US, " (%d)", elo); } String player = gui.playerName(); String white = gameMode.playerWhite() ? player : engine; @@ -1045,8 +1068,9 @@ public class DroidChessController { private synchronized void updatePlayerNames(String engineName) { if (game != null) { - if (strength < 1000) - engineName += String.format(Locale.US, " (%.1f%%)", strength * 0.1); + int elo = getEloToUse(); + if (elo != Integer.MAX_VALUE) + engineName += String.format(Locale.US, " (%d)", elo); String white = gameMode.playerWhite() ? game.tree.white : engineName; String black = gameMode.playerBlack() ? game.tree.black : engineName; game.tree.setPlayerNames(white, black); diff --git a/DroidFishApp/src/main/java/org/petero/droidfish/gamelogic/SearchListener.java b/DroidFishApp/src/main/java/org/petero/droidfish/gamelogic/SearchListener.java index 8949e7e..951e998 100644 --- a/DroidFishApp/src/main/java/org/petero/droidfish/gamelogic/SearchListener.java +++ b/DroidFishApp/src/main/java/org/petero/droidfish/gamelogic/SearchListener.java @@ -84,4 +84,7 @@ public interface SearchListener { /** Report engine error. */ void reportEngineError(String errMsg); + + /** Report that engine has been initialized. */ + void notifyEngineInitialized(); } diff --git a/DroidFishApp/src/main/res/layout/set_strength.xml b/DroidFishApp/src/main/res/layout/set_strength.xml new file mode 100644 index 0000000..2d9f0e5 --- /dev/null +++ b/DroidFishApp/src/main/res/layout/set_strength.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + diff --git a/DroidFishApp/src/main/res/layout/title.xml b/DroidFishApp/src/main/res/layout/title.xml index 6a964c5..350f193 100644 --- a/DroidFishApp/src/main/res/layout/title.xml +++ b/DroidFishApp/src/main/res/layout/title.xml @@ -44,6 +44,7 @@ android:gravity="center" android:textSize="14sp" android:tag="title" + android:ellipsize="middle" android:text="@string/app_name" /> Прылады Загрузіць/Захаваць партыю Зрабіць ход - Змяніць ровень складанасці Змяніць рандамізацыю (выпадковасць) Няправільны фармат ліку Задаць кірунак ходу @@ -273,8 +272,6 @@ Паварочваць дошку: гулец Скарыстаць імя гульца для аўтаматычнага павароту дошкі Налады рухавічка - Сіла гульні - Падтрымваецца толькі ўнутранымі рухавічкамі. Рэжым аналізу заўсёды скарыстае поўную сілу. Разважанне Дазволіць рухавічку абдумванне падчас чакання ходу апанента. Падтрымваецца большасцю рухавічкоў. Хэш-табліца diff --git a/DroidFishApp/src/main/res/values-de/strings.xml b/DroidFishApp/src/main/res/values-de/strings.xml index b0f8abc..6e313ec 100644 --- a/DroidFishApp/src/main/res/values-de/strings.xml +++ b/DroidFishApp/src/main/res/values-de/strings.xml @@ -50,7 +50,6 @@ Um gegebenenfalls Strom zu sparen, ist es empfehlenswert, dass Sie diese Paramet Hilfsmittel Partie laden/speichern Gehe zu Zug - Spielstärke ändern Randomisierung ändern Ungültiges Zahlenformat Seite am Zug @@ -273,8 +272,6 @@ Um gegebenenfalls Strom zu sparen, ist es empfehlenswert, dass Sie diese Paramet Spielfeld nach Namen drehen Spielfeld in Abhängigkeit vom Spielernamen drehen Engine-Einstellungen - Spielstärke - Wird nur von internen Engines unterstützt. Im Analyse-Modus wird stets die volle Stärke verwendet. Vorausberechnung Vorausberechnung von Zügen durch die Engine, wenn der Spieler am Zug ist (von den meisten Engines unterstützt) Hash-Tabelle diff --git a/DroidFishApp/src/main/res/values-es/strings.xml b/DroidFishApp/src/main/res/values-es/strings.xml index 8f5d069..ca437a5 100644 --- a/DroidFishApp/src/main/res/values-es/strings.xml +++ b/DroidFishApp/src/main/res/values-es/strings.xml @@ -50,7 +50,6 @@ Si está usted utilizando la batería, se recomienda que cambie los ajustes para Herramientas Cargar/Guardar Partida Ir a la jugada - Editar Fuerza de juego Editar Aleatoriedad Formato de número no válido Turno de juego @@ -273,8 +272,6 @@ Si está usted utilizando la batería, se recomienda que cambie los ajustes para Invertir tablero : Jugador Utilizar el nombre del jugador para invertir el tablero automáticamente Ajustes del Motor/Programa - Fuerza/Nivel de Juego - Soportado únicamente por los motores internos. El modo análisis siempre utiliza fuerza máxima. Pensar siempre Dejar calcular al motor mientras espera la jugada del oponente. Lo incorporan la mayoría de los motores. Tablas Hash diff --git a/DroidFishApp/src/main/res/values-fr/strings.xml b/DroidFishApp/src/main/res/values-fr/strings.xml index 799ba2c..e1e3ff4 100644 --- a/DroidFishApp/src/main/res/values-fr/strings.xml +++ b/DroidFishApp/src/main/res/values-fr/strings.xml @@ -50,7 +50,6 @@ Lorsque que vous êtes sur batterie, il est recommandé de changer les paramètr Outils Charger/Sauvegarder une partie Aller au coup - Modifier le niveau Modifier la randomisation Format du nombre non valide Camp au trait @@ -273,8 +272,6 @@ Lorsque que vous êtes sur batterie, il est recommandé de changer les paramètr Disposition de l\'échiquier: Joueur Utiliser le nom du joueur pour disposer automatiquement l\'échiquier Paramètres du module - Niveau de jeu - Supporté uniquement par les modules internes. Le mode Analyse utilisera toujours le niveau maximal. Réflexion permanente Laisser le module actif lors du coup de l\'opposant. Supporté par la plupart des modules. Table de hachage diff --git a/DroidFishApp/src/main/res/values-it/strings.xml b/DroidFishApp/src/main/res/values-it/strings.xml index 65a11ae..246bdfc 100644 --- a/DroidFishApp/src/main/res/values-it/strings.xml +++ b/DroidFishApp/src/main/res/values-it/strings.xml @@ -50,7 +50,6 @@ Se l\'alimentazione è a batteria, è consigliabile modificare le impostazioni p Strumenti Apri/Salva partita Vai alla mossa - Imposta la Forza del motore Modifica la casualizzazione Formato del numero non valido Lato che muove @@ -273,8 +272,6 @@ Se l\'alimentazione è a batteria, è consigliabile modificare le impostazioni p Gira la scacchiera: Giocatore Usa il nome del giocatore per girare la scacchiera automaticamente Impostazioni del motore - Forza di gioco - Supportato solo dai motori interni. La modalità di analisi utilizza sempre la massima forza. Sto riflettendo Lascia che il motore rifletta nell\'attesa della mossa dell\'avversario. Supportato dalla maggior parte dei motori. Tabella hash diff --git a/DroidFishApp/src/main/res/values-ko/strings.xml b/DroidFishApp/src/main/res/values-ko/strings.xml index 2a6bc86..ba22c05 100644 --- a/DroidFishApp/src/main/res/values-ko/strings.xml +++ b/DroidFishApp/src/main/res/values-ko/strings.xml @@ -54,7 +54,6 @@ DroidFish는 백그라운드에 실행 중인 상태에서 다음과 같이 설 도구 게임 저장/불러오기 이동으로 가기 - 강도 조정 랜덤화 편집 잘못된 숫자 형식 이동할 사이드 @@ -277,8 +276,6 @@ DroidFish는 백그라운드에 실행 중인 상태에서 다음과 같이 설 플립 보드 : 플레이어 자동 플립 보드를 위해 플레이어 이름을 사용합니다 엔진 설정 - 플레이 강도 - 내장 엔진에서만 지원합니다. 분석 모드에서는 항상 최고 강도를 사용합니다. 숙고하기 상대방의 이동을 기다리는 동안 엔진이 생각하도록 합니다. 대부분의 엔진에 의해 지원됩니다. 해시 테이블 diff --git a/DroidFishApp/src/main/res/values-nl/strings.xml b/DroidFishApp/src/main/res/values-nl/strings.xml index b2f14dc..880f9d4 100644 --- a/DroidFishApp/src/main/res/values-nl/strings.xml +++ b/DroidFishApp/src/main/res/values-nl/strings.xml @@ -50,7 +50,6 @@ Als uw telefoon op batterij werkt is het aan te raden om deze instellingen te wi Tools Laad/Bewaar Partij Ga naar zet - Speelsterkte bewerken Willekeurigheid bewerken Ongeldig nummer formaat Speler aan zet @@ -273,8 +272,6 @@ Als uw telefoon op batterij werkt is het aan te raden om deze instellingen te wi Draai bord:Speler Draai bord automatisch op spelers naam Engine instellingen - Speel sterkte - Alleen ondersteund door interne engines. Analyse gebruikt altijd de hoogste denksterkte. Peinzen Laat de engine verder denken tijdens wachten op de zet van de tegenstander. Hashtabel diff --git a/DroidFishApp/src/main/res/values-pl/strings.xml b/DroidFishApp/src/main/res/values-pl/strings.xml index 17c852d..03d9860 100644 --- a/DroidFishApp/src/main/res/values-pl/strings.xml +++ b/DroidFishApp/src/main/res/values-pl/strings.xml @@ -50,7 +50,6 @@ Jeśli pracujesz na baterii, zalecana jest zmiana ustawień, w celu oszczędzani Narzędzia Załaduj/zapisz partię Idź do posunięcia - Edytuj siłę gry Zmień losowość Niepoprawny format liczby Strona na posunięciu @@ -273,8 +272,6 @@ Jeśli pracujesz na baterii, zalecana jest zmiana ustawień, w celu oszczędzani Obracanie szachownicy: gracz Używaj nazwy gracza, żeby obracać szachownicę automatycznie Ustawienia silnika - Siła gry - Wspierane wyłącznie przez lokalne silniki szachowe. Tryb analizy zawsze używa maksymalnej siły gry. Namysł Silnik szachowy będzie liczył pozycję czekając na posunięcie przeciwnika. Wspierane przez większość silników. Tablica haszująca diff --git a/DroidFishApp/src/main/res/values-pt/strings.xml b/DroidFishApp/src/main/res/values-pt/strings.xml index 37ac6fb..106c4ca 100644 --- a/DroidFishApp/src/main/res/values-pt/strings.xml +++ b/DroidFishApp/src/main/res/values-pt/strings.xml @@ -50,7 +50,6 @@ Se você está usando somente a bateria, recomenda-se que você mude as configur Ferramentas Carregar/Salvar partida Ir para o lance - Alterar nível Alterar aleatoriedade Formato de número inválido Lado a mover @@ -273,8 +272,6 @@ Se você está usando somente a bateria, recomenda-se que você mude as configur Inverter tabuleiro: jogador Usar o nome do jogador para virar o tabuleiro automaticamente Configurações do software de Xadrez - Nível de jogo - Somente suportado pelo software interno. Modo análise sempre usa força total. Análise constante Deixar o software analisando enquanto espera o lance do oponente. Suportado pela maioria dos softwares. Tabela hash diff --git a/DroidFishApp/src/main/res/values-ru/strings.xml b/DroidFishApp/src/main/res/values-ru/strings.xml index 86f7830..69f0465 100644 --- a/DroidFishApp/src/main/res/values-ru/strings.xml +++ b/DroidFishApp/src/main/res/values-ru/strings.xml @@ -50,7 +50,6 @@ Инструменты Загрузить/Сохранить партию Сделать ход - Изменить уровень сложности Изменить рандомизацию (случайность) Неправильный формат числа Задать направление хода @@ -273,8 +272,6 @@ Поворачивать доску: игрок Использовать имя игрока для автоматического поворота доски Настройки движка - Сила игры - Поддерживается только внутренними движками. Режим анализа всегда использует полную силу. Размышление Позволить движку обдумывание во время ожидания хода оппонента. Поддерживается большинством движков. Хэш-таблица diff --git a/DroidFishApp/src/main/res/values-tr/strings.xml b/DroidFishApp/src/main/res/values-tr/strings.xml index d991494..f9009ab 100644 --- a/DroidFishApp/src/main/res/values-tr/strings.xml +++ b/DroidFishApp/src/main/res/values-tr/strings.xml @@ -50,7 +50,6 @@ Pil gücüyle çalışıyorsanız, pil gücünden tasarruf etmek için ayarları Araçlar Oyun Yükle/Kaydet Harekete git - Gücü ayarla Rasgeleliği ayarla Geçersiz sayı formatı Hareket tarafı @@ -273,8 +272,6 @@ Pil gücüyle çalışıyorsanız, pil gücünden tasarruf etmek için ayarları Tahtayı Dödür: Oyuncu Tahtayı döndürmek için Oyuncu Adını kullan Motor Ayarları - Oynama zorluğu - Sadece dahili motorlar destekler. Analiz modu daima tam gücü kullanır. Düşünme Rakibini beklerken bilgisayarın düşünmesine izin ver. Çoğu motor destekler. Hash Tablosu diff --git a/DroidFishApp/src/main/res/values-uk/strings.xml b/DroidFishApp/src/main/res/values-uk/strings.xml index fe34cb8..2893a98 100644 --- a/DroidFishApp/src/main/res/values-uk/strings.xml +++ b/DroidFishApp/src/main/res/values-uk/strings.xml @@ -50,7 +50,6 @@ Інструменти Завантажити/Зберегти партію Зробити хід - Змінити рівень складності Змінити рандомізацію (випадковість) Неправильний формат числа Задати напрямок ходу @@ -273,8 +272,6 @@ Повертати дошку: гравець Використовувати ім\'я гравця для автоматичного повороту дошки Налаштування рушія - Сила ігри - Підтримується тільки внутрішніми рушіями. Режим аналізу завжди використовує повну силу. Розважання Дозволити рушію обдумування під час очікування ходу опонента. Підтримується більшістю рушіїв. Геш-таблиця diff --git a/DroidFishApp/src/main/res/values-zh-rCN/strings.xml b/DroidFishApp/src/main/res/values-zh-rCN/strings.xml index 87e6af6..abda69b 100644 --- a/DroidFishApp/src/main/res/values-zh-rCN/strings.xml +++ b/DroidFishApp/src/main/res/values-zh-rCN/strings.xml @@ -50,7 +50,6 @@ 工具 加载/保存对局 转到着法 - 编辑棋力 编辑随机性 编号格式无效 轮走棋方 @@ -273,8 +272,6 @@ 翻转棋盘: 棋手 以棋手名字自动翻转棋盘 引擎设置 - 对弈棋力 - 支持内置引擎。分析模式总是使用最强棋力 思考 引擎在等待对手走棋时思考。支持大多数引擎 哈希表 diff --git a/DroidFishApp/src/main/res/values/strings.xml b/DroidFishApp/src/main/res/values/strings.xml index a30aaad..219608f 100644 --- a/DroidFishApp/src/main/res/values/strings.xml +++ b/DroidFishApp/src/main/res/values/strings.xml @@ -50,7 +50,9 @@ If you are running on battery power, it is recommended that you change settings Tools Load/Save Game Goto move - Edit Strength + Limit Strength + Set Engine Strength + Engine cannot reduce playing strength Edit Randomization Invalid number format Side to Move @@ -273,8 +275,6 @@ If you are running on battery power, it is recommended that you change settings Flip Board: Player Use Player Name to flip board automatically Engine Settings - Playing Strength - Only supported by internal engines. Analysis mode always uses full strength. Pondering Let engine think while waiting for opponent\'s move. Supported by most engines. Hash Table diff --git a/DroidFishApp/src/main/res/xml/preferences.xml b/DroidFishApp/src/main/res/xml/preferences.xml index ac9d15f..1881ec8 100644 --- a/DroidFishApp/src/main/res/xml/preferences.xml +++ b/DroidFishApp/src/main/res/xml/preferences.xml @@ -30,12 +30,6 @@ - - *Settings* -> *Engine Settings* -> *Hash Table* to diff --git a/doc/droidfish_manual.pdf b/doc/droidfish_manual.pdf index 2ee356dfaacfa829e66aa40d8202b5ccbe41468f..61712317f2e499d68bdf715757ee21de34a3223b 100644 GIT binary patch delta 83728 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 delta 83713 zcmY(qQ*@wB*R|WRosQK}$F^W81cE+w6Eh?-={w`w!~4>R^qrW?gg6 z{sD-N0SII=1rae?Mmknlvcub}f3PfxDD-3iBL^cVA0Mo~_tA5@x}CG#7yY@P2>2J3yL%AV1A%>e zV8{7Q$*{?!iv3H)_8=mGX3WcDjNvJ7OnG1_n`+i{o;kVaV1J(; zLm`v>g>b&jpr&Ek5BDpy*Vt9?bi9}a2GzJ$XpDd9H@yN;F(?{8%6DjL)!F5UDxAM_ zS5|u7fQ$O}2{rA}fPO&CH8dm8ay;(eZ75EKoOcO7fvBtyfx=BVcWe`&KFm0M@o?hc zq9$=Qa!rUL&QPXAye1@-2z}QSh@R*ll|;2vMuc%M*I8D~7fMtLRezM&MqphK;fnFl z)T3$a&5hzpWW=KNCV`BNU-G2I!1#9z8C&9&Z?Q8xY6w*UV}hMBPiq{2cU8Rbg+6MI z`g__QY*$HsbH-WCaO7+Cd2?erg$*vpp;E~Gg}`GY!CZ^MG51+!}$N`+h`oFxa0Z}(0O2Iq95sm?&ug^krK;DH$j1!sLy?~AddB|unCED*@SIPY>xpm_1StDz1 zm&6UO?1M(L;a>n#L!%!zfo@)D01;--VHhGh6iTAaehgE~{rv0 zXef|vd4Xm?SvqcME^ok(z^IY^Yq=GH5i5Tas|NqzXdfu|$PHGB+179;Z;#@VJ+k3a zFSh;Z2KOuH%AyzT8MdGuOvFWqk~eU5mG)R_JV7SDXn9aMI{7miBg!mc><#;Z@WKCB~a~7 zM+=N1C=lqCg}H~bT!Rtx>~I$ZcM@HlFzGVB8ox9?bq1UC^v2L4tL6UDug0EIO)V+U z-H=}9PMxlI65X+4+UB#RL~UO|$=V}x<$d`vudzj7l8q8>2clVW2BQffo2Vn?l;bd7 z-njV3kurVz+I^b~4 z7y`kQC#8w_j>ImGx`UcZX28cD1=B4%?BuK~3_TE?zO zbbImmbnVUqjpkppQFV!ibU)Kef~py_hpJREY>Tg#7VT!{oWRW)zO7N0cp0du;o0Xw zqpDIEqCD(wT^$5^g0nuV^Moo4yXGy>%<^(H?^>k7>5QO9E B@@0AH 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

YtPnn}S+8;FJ9xb56r%l$_&CUJJy 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 aG3%b&xNrKbL`FF-GfQ(WRaIAiH!c9?e&9|3