diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 4410b82..40b07ae 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -9,6 +9,7 @@ Matthew Allred ("Kameone") for design of the v1.1 UI and providing MacOS install
"nimets123" for the German translation and sound effects.
"nowoowoo" for a fix to the parser for SGF files with extra line breaks.
Sergio Villegas ("serpiente") for the Spanish translation.
+"divanorama" and Alexander Kiselev for the Russian translation.
Additional thanks to:
"Seventeen" for explanatory youtube videos.
diff --git a/README.md b/README.md
index 04c931e..0d66ddb 100644
--- a/README.md
+++ b/README.md
@@ -1,11 +1,11 @@
-# KaTrain v1.1
+# KaTrain v1.2
[](https://github.com/sanderland/katrain/releases)
[](https://en.wikipedia.org/wiki/MIT_License)


[](https://pepy.tech/project/katrain)
-[](https://liberapay.com/sanderbaduk/)
+[](https://liberapay.com/sanderbaduk/)
[](https://discord.com/channels/417022162348802048/629446365688365067)
KaTrain is a tool for analyzing and playing go with AI feedback from KataGo.
@@ -57,12 +57,12 @@ This section describes the available AIs, with strength based on their current O
* Recommended options for serious play include:
* **[9p+]** **KataGo** is full KataGo, above professional level. The analysis and feedback given is always based on this full strength KataGo AI.
+ * **[15k - 3d]** **Calibrated Rank Bot** was calibrated on various bots (e.g. GnuGo and Pachi at different strength settings) to play a balanced game from the opening to the endgame without making serious (DDK) blunders. Further discussion can be found on [this](https://github.com/sanderland/katrain/issues/44) thread.
* **[~3k]** **ScoreLoss** is KataGo analyzing as usual, but
choosing from potential moves depending on the expected score loss, leading to a varied style with mostly small mistakes.
* **[~4d]** **Policy** uses the top move from the policy network (it's 'shape sense' without reading).
* **[~5k]** **Policy Weighted** picks a random move weighted by the policy, leading to a varied style with mostly small mistakes, and occasional blunders due to a lack of reading.
* **[~8k]** **Blinded Policy** picks a number of moves at random and play the best move among them, being effectively 'blind' to part of the board each turn.
- * **[15k - 3d]** **Calibrated Rank Bot** was calibrated on various bots (e.g. GnuGo and Pachi at different strength settings) to play a balanced game from the opening to the endgame without making serious (DDK) blunders. Further discussion can be found on [this](https://github.com/sanderland/katrain/issues/44) thread.
* Options that are more on the 'fun and experimental' side include:
* Variants of **Blinded Policy**, which use the same basic strategy, but with a twist.:
* **[~5k]** **Local Style** will consider mostly moves close to the last move.
@@ -132,8 +132,8 @@ In addition to shortcuts mentioned above and those shown in the main menu:
## Support / Contribute
[](https://github.com/sanderland/katrain/issues)
-[](CONTRIBUTORS)
-[](https://liberapay.com/sanderbaduk/)
+[](CONTRIBUTORS)
+[](https://liberapay.com/sanderbaduk/)
[](https://github.com/sponsors/sanderland)
* Ideas, feedback, and contributions to code or translations are all very welcome.
diff --git a/katrain/core/constants.py b/katrain/core/constants.py
index 18a01c2..82ed6fe 100644
--- a/katrain/core/constants.py
+++ b/katrain/core/constants.py
@@ -30,10 +30,10 @@ AI_STRATEGIES_POLICY = [AI_WEIGHTED, AI_POLICY] + AI_STRATEGIES_PICK
AI_STRATEGIES = AI_STRATEGIES_ENGINE + AI_STRATEGIES_POLICY
AI_STRATEGIES_RECOMMENDED_ORDER = [
AI_DEFAULT,
+ AI_RANK,
AI_SCORELOSS,
AI_POLICY,
AI_WEIGHTED,
- AI_RANK,
AI_PICK,
AI_LOCAL,
AI_TENUKI,
diff --git a/katrain/core/lang.py b/katrain/core/lang.py
index d89a29c..eb0ec34 100644
--- a/katrain/core/lang.py
+++ b/katrain/core/lang.py
@@ -56,7 +56,7 @@ class Lang(Observable):
self.font_name = self.FONTS.get(lang) or DEFAULT_FONT
i18n_dir, _ = os.path.split(find_package_resource("katrain/i18n/__init__.py"))
locale_dir = os.path.join(i18n_dir, "locales")
- locales = gettext.translation("katrain", locale_dir, languages=[lang])
+ locales = gettext.translation("katrain", locale_dir, languages=[lang,DEFAULT_LANGUAGE])
self.ugettext = locales.gettext
# update all the kv rules attached to this text
diff --git a/screenshots/analysis.gif b/screenshots/analysis.gif
index 7cb4320..e876601 100644
Binary files a/screenshots/analysis.gif and b/screenshots/analysis.gif differ
diff --git a/screenshots/teaching.gif b/screenshots/teaching.gif
index bb4b479..b46e3a0 100644
Binary files a/screenshots/teaching.gif and b/screenshots/teaching.gif differ