{"id":277339,"date":"2016-03-31T10:00:05","date_gmt":"2016-03-31T06:00:05","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=277339"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=277339","title":{"rendered":"\u041a\u0430\u043a \u043e\u0434\u0438\u043d \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442 Jocly \u043f\u043e\u0434\u043a\u043e\u0432\u0430\u043b"},"content":{"rendered":"<p>       <img decoding=\"async\" align=\"left\" src=\"https:\/\/habrastorage.org\/files\/413\/c68\/18b\/413c6818b268431da04a72825c1c4fc9.PNG\"\/><b><i>\u2014\u00a0\u0423\u0447\u0435\u043d\u0438\u043a \u041f\u043e\u0447\u0442\u0430\u043b\u044c\u043e\u043d\u0430 \u0421\u0442\u044d\u043d\u043b\u0438 \u2014 \u043f\u0440\u043e\u0431\u043e\u0440\u043c\u043e\u0442\u0430\u043b \u0413\u0440\u043e\u0448 <br \/>  \u2014 \u0421\u0438\u0440\u043e\u0442\u0430, \u0441\u044d\u0440. \u041e\u0447\u0435\u043d\u044c \u043f\u0435\u0447\u0430\u043b\u044c\u043d\u0430\u044f \u0438\u0441\u0442\u043e\u0440\u0438\u044f\u2026 \u0425\u043e\u0440\u043e\u0448\u0438\u0439 \u043c\u0430\u043b\u044c\u0447\u0438\u043a, \u0435\u0441\u043b\u0438 \u0435\u0433\u043e \u043d\u0435 \u0437\u043b\u0438\u0442\u044c, <br \/>  \u2026 \u0435\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u043d\u0438\u043c\u0430\u0435\u0442\u0435, \u0447\u0442\u043e \u044f \u0438\u043c\u0435\u044e \u0432 \u0432\u0438\u0434\u0443.<br \/>  \u2014\u00a0\u042d\u2026 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e.\u00a0\u2014 \u0441\u043a\u0430\u0437\u0430\u043b \u041c\u043e\u043a\u0440\u0438\u0441\u0442 \u0438 \u043f\u043e\u0441\u043f\u0435\u0448\u043d\u043e \u043f\u043e\u0432\u0435\u0440\u043d\u0443\u043b\u0441\u044f \u043a \u0421\u0442\u044d\u043d\u043b\u0438 <br \/>  \u2014 \u0418\u0442\u0430\u043a, \u0437\u043d\u0430\u0435\u0448\u044c \u043a\u043e\u0435-\u0447\u0442\u043e \u043e \u0431\u0443\u043b\u0430\u0432\u043a\u0430\u0445?\u2026<br \/>  \u2014\u00a0\u041d\u0435\u0442\u0441\u044d\u0440!\u00a0\u2014 \u043e\u0442\u0432\u0435\u0442\u0438\u043b \u0421\u0442\u044d\u043d\u043b\u0438\u2026<br \/>  \u2014\u00a0\u041e \u0431\u0443\u043b\u0430\u0432\u043a\u0430\u0445 \u044f \u0437\u043d\u0430\u044e \u0432\u0441\u0451! &nbsp;<br \/>  &nbsp;<br \/>  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\u0441\u044d\u0440 \u0422\u0435\u0440\u0440\u0438 \u041f\u0440\u0430\u0442\u0447\u0435\u0442\u0442 &quot;<a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9E%D0%BF%D0%BE%D1%87%D1%82%D0%B0%D1%80%D0%B5%D0%BD%D0%B8%D0%B5\">\u041e\u043f\u043e\u0447\u0442\u0430\u0440\u0435\u043d\u0438\u0435<\/a>&quot;.<\/i><\/b>&nbsp;<\/p>\n<p>  \u0412 \u0434\u0430\u043b\u0451\u043a\u043e\u043c 1998 \u0433\u043e\u0434\u0443, <a href=\"http:\/\/www.zillions-of-games.com\/\">Zillions of Games<\/a> \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u043b\u0430 \u0444\u0443\u0440\u043e\u0440 \u0432 \u0441\u0440\u0435\u0434\u0435 \u043b\u044e\u0431\u0438\u0442\u0435\u043b\u0435\u0439 \u043d\u0430\u0441\u0442\u043e\u043b\u044c\u043d\u044b\u0445 \u0438\u0433\u0440, \u043d\u043e \u043e\u043d\u0430 \u043d\u0435 \u0431\u044b\u043b\u0430 \u043b\u0438\u0448\u0435\u043d\u0430 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u043e\u0432. \u0413\u043b\u0430\u0432\u043d\u044b\u043c \u0435\u0451 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u043e\u043c \u044f\u0432\u043b\u044f\u043b\u0430\u0441\u044c \u0437\u0430\u043a\u0440\u044b\u0442\u043e\u0441\u0442\u044c. \u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0438\u0433\u0440\u0430\u0442\u044c \u0432\u043e \u0447\u0442\u043e-\u0442\u043e \u0441\u0432\u0435\u0440\u0445 \u043d\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 48 \u0438\u0433\u0440, \u0432\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u0432 \u0434\u0435\u043c\u043e-\u043a\u043e\u043c\u043f\u043b\u0435\u043a\u0442, \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u043b\u043e\u0441\u044c \u043f\u043b\u0430\u0442\u0438\u0442\u044c \u0434\u0435\u043d\u044c\u0433\u0438 \u0437\u0430 \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u044e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b. \u0411\u044b\u043b\u043e \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c ZoG \u043d\u0430 \u0447\u0451\u043c-\u0442\u043e \u043a\u0440\u043e\u043c\u0435 Windows (\u0441 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u0432\u0435\u0440\u0441\u0438\u044f\u043c\u0438 \u044d\u0442\u043e\u0439 \u041e\u0421 \u0432\u043f\u043e\u043b\u043d\u0435 \u043c\u043e\u0433\u043b\u0438 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u0443\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b). \u0421\u0435\u0442\u0435\u0432\u043e\u0439 \u0440\u0435\u0436\u0438\u043c \u0431\u044b\u043b, \u043d\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u0438\u043b\u0438 \u0447\u0435\u0440\u0435\u0437 \u043c\u043e\u0434\u0435\u043c, Web \u043d\u0435 \u043f\u043e\u0434\u0440\u0430\u0437\u0443\u043c\u0435\u0432\u0430\u043b\u0441\u044f. \u0421 \u044d\u0442\u0438\u043c \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435\u043b\u044c\u0437\u044f \u043f\u043e\u0434\u0435\u043b\u0430\u0442\u044c, \u044d\u0442\u043e <b>\u0437\u0430\u043a\u0440\u044b\u0442\u044b\u0439<\/b> \u043f\u0440\u043e\u0434\u0443\u043a\u0442! \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u0432 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f, \u043e\u043d \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f. \u042f \u0434\u0443\u043c\u0430\u044e, \u0447\u0442\u043e \u043c\u043d\u043e\u0433\u0438\u0435 \u0431\u0443\u0434\u0443\u0442 \u0440\u0430\u0434\u044b \u0443\u0441\u043b\u044b\u0448\u0430\u0442\u044c, \u0447\u0442\u043e \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u0430, \u043b\u0438\u0448\u0451\u043d\u043d\u0430\u044f \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0445 \u0432\u044b\u0448\u0435 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u043e\u0432. \u0417\u043d\u0430\u043a\u043e\u043c\u044c\u0442\u0435\u0441\u044c, \u044d\u0442\u043e <a href=\"https:\/\/www.jocly.com\/#\/about\">Jocly<\/a>.<br \/>  <a name=\"habracut\"><\/a><br \/>  \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 Jocly \u0432\u0434\u043e\u0445\u043d\u043e\u0432\u043b\u044f\u043b\u0438\u0441\u044c \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u043c Zillions of Games, \u043d\u043e \u043f\u043e\u0448\u043b\u0438 \u043f\u043e \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0438\u0430\u043b\u044c\u043d\u043e \u0438\u043d\u043e\u043c\u0443 \u043f\u0443\u0442\u0438. \u0412\u043e \u0433\u043b\u0430\u0432\u0443 \u0443\u0433\u043b\u0430 \u0431\u044b\u043b \u0441 \u0441\u0430\u043c\u043e\u0433\u043e \u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d Web. \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c Jocly-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0432 \u043b\u044e\u0431\u043e\u043c \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u043c \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435, \u043d\u0430 \u043b\u044e\u0431\u043e\u0439 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435, \u0432\u043a\u043b\u044e\u0447\u0430\u044f \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0435! \u0412 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u0441\u043b\u0443\u0447\u0430\u0435\u0432, \u0432\u044b \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u043c 3D-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u043c, \u043d\u043e \u0435\u0441\u043b\u0438 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u0443\u0442 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c\u044e, Jocly \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0438\u0442\u0441\u044f \u043d\u0430 2D. \u041c\u043e\u0436\u043d\u043e \u0438\u0433\u0440\u0430\u0442\u044c \u043a\u0430\u043a \u0441 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043e\u043c, \u0442\u0430\u043a \u0438 \u0441 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u043b\u044e\u0434\u044c\u043c\u0438, \u043f\u0440\u043e\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0442\u044c \u0440\u0430\u043d\u0435\u0435 \u0441\u044b\u0433\u0440\u0430\u043d\u043d\u044b\u0435 \u043f\u0430\u0440\u0442\u0438\u0438 \u0438 \u0434\u0430\u0436\u0435 \u043e\u0431\u0449\u0430\u0442\u044c\u0441\u044f \u0441 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u0438\u0433\u0440\u043e\u043a\u0430\u043c\u0438 \u0447\u0435\u0440\u0435\u0437 \u0432\u0438\u0434\u0435\u043e-\u0447\u0430\u0442. \u0412\u043e\u0442 <a href=\"http:\/\/wiki.jocly.com\/index.php\/All_you_can_do_with_Jocly\">\u0437\u0434\u0435\u0441\u044c<\/a> \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043a\u0440\u0430\u0442\u043a\u043e\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0435\u0433\u043e <a href=\"http:\/\/wiki.jocly.com\/index.php\/Comparison_with_Zillions_of_Games\">\u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435<\/a> \u0441 Zillions of Games.<\/p>\n<p>  <img decoding=\"async\" align=\"left\" src=\"https:\/\/habrastorage.org\/files\/f65\/214\/e3d\/f65214e3df1b4f959438a9c0d8aab2ef.jpg\"\/>\u041a\u043e\u043d\u0435\u0447\u043d\u043e \u0436\u0435, \u0442\u0430\u043a\u0430\u044f \u043e\u0433\u0440\u043e\u043c\u043d\u0430\u044f \u0431\u043e\u0447\u043a\u0430 \u043c\u0451\u0434\u0430 \u043d\u0438\u043a\u0430\u043a \u043d\u0435 \u043c\u043e\u0433\u043b\u0430 \u043e\u0431\u043e\u0439\u0442\u0438\u0441\u044c \u0431\u0435\u0437 \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u043e\u0439 \u043b\u043e\u0436\u043a\u0438 \u0434\u0451\u0433\u0442\u044f (\u0445\u043e\u0442\u044f, \u044d\u0442\u043e \u043a\u043e\u043c\u0443 \u043a\u0430\u043a). Jocly \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u043a\u0430\u043a\u0438\u0445 \u043b\u0438\u0431\u043e <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9F%D1%80%D0%B5%D0%B4%D0%BC%D0%B5%D1%82%D0%BD%D0%BE-%D0%BE%D1%80%D0%B8%D0%B5%D0%BD%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D1%8B%D0%B9_%D1%8F%D0%B7%D1%8B%D0%BA\">DSL<\/a>, \u043d\u0430\u043f\u043e\u0434\u043e\u0431\u0438\u0435 <a href=\"https:\/\/ru.wikipedia.org\/wiki\/Zillions_of_Games\">ZRF<\/a> \u0438\u043b\u0438 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Game_Description_Language\">GDL<\/a> \u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432\u0435\u0441\u0442\u0438 \u043d\u0430 \u0447\u0438\u0441\u0442\u043e\u043c \u0438 \u043d\u0435\u0437\u0430\u043c\u0443\u0442\u043d\u0451\u043d\u043d\u043e\u043c JavaScript. \u0421\u0430\u043c\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 <a href=\"http:\/\/wiki.jocly.com\/index.php\/Comparison_with_Zillions_of_Games\">\u043f\u0440\u0438\u0437\u043d\u0430\u044e\u0442<\/a>, \u0447\u0442\u043e \u044d\u0442\u043e \u0431\u043e\u043b\u0435\u0435 \u0442\u0440\u0443\u0434\u043e\u0451\u043c\u043a\u0438\u0439 \u043f\u043e\u0434\u0445\u043e\u0434, \u043d\u043e \u0443 \u043d\u0435\u0433\u043e \u0435\u0441\u0442\u044c \u0433\u0438\u0433\u0430\u043d\u0442\u0441\u043a\u0438\u0439 \u043f\u043b\u044e\u0441 \u2014 \u043d\u0430 JavaScript \u043c\u043e\u0436\u043d\u043e \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0441\u0451 \u0447\u0442\u043e \u0443\u0433\u043e\u0434\u043d\u043e. \u0412\u0435\u0440\u043d\u0435\u0435 \u043c\u043e\u0436\u043d\u043e <b>\u0431\u044b\u043b\u043e \u0431\u044b<\/b> \u043e\u043f\u0438\u0441\u0430\u0442\u044c, \u0435\u0441\u043b\u0438 \u0431\u044b \u0441\u0430\u043c\u0430 Jocly \u043d\u0435 \u043d\u0430\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u043b\u0430 \u043f\u0430\u0440\u0443 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439. \u0412 \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u043b\u0438\u0448\u044c \u0438\u0433\u0440\u044b <b>\u0434\u0432\u0443\u0445<\/b> \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u0441 \u043f\u043e\u043b\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0435\u0439 \u0438 \u0431\u0435\u0437 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0441\u043e\u0431\u044b\u0442\u0438\u0439. \u042d\u0442\u0438 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e-\u0442\u0430\u043a\u0438 \u0441\u0443\u0440\u043e\u0432\u044b\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u0441\u0432\u044f\u0437\u0430\u043d\u044b, \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u044f \u043f\u043e\u043d\u0438\u043c\u0430\u044e, \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u043c\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430\u043c\u0438 AI (<a href=\"https:\/\/en.wikipedia.org\/wiki\/Alpha%E2%80%93beta_pruning\">Alpha\u2013beta<\/a> \u0438 <a href=\"http:\/\/wiki.jocly.com\/index.php\/Jocly_UCT\">UCT<\/a> <a href=\"https:\/\/en.wikipedia.org\/wiki\/Monte_Carlo_tree_search\">Monte Carlo<\/a>).&nbsp;<br \/>  &nbsp;<\/p>\n<p>  \u041a\u0430\u043a \u0431\u044b \u0442\u0430\u043c \u043d\u0438 \u0431\u044b\u043b\u043e, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438, \u043d\u0430 \u043c\u043e\u0439 \u0432\u0437\u0433\u043b\u044f\u0434, \u0441\u0434\u0435\u043b\u0430\u043b\u0438 \u0433\u043b\u0430\u0432\u043d\u043e\u0435 \u2014 \u043e\u0442\u0434\u0435\u043b\u0438\u043b\u0438 <b>\u043c\u043e\u0434\u0435\u043b\u044c<\/b> \u0438\u0433\u0440\u044b \u043e\u0442 \u0435\u0451 \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u043e\u0433\u043e <b>\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f<\/b>. \u0418 \u0442\u043e \u0438 \u0434\u0440\u0443\u0433\u043e\u0435 \u043c\u043e\u0436\u043d\u043e \u043f\u0438\u0441\u0430\u0442\u044c \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e! \u0420\u0430\u0431\u043e\u0442\u0430\u044f \u043d\u0430\u0434 \u043c\u043e\u0434\u0435\u043b\u044c\u044e, \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043e\u0442\u0432\u043b\u0435\u0447\u044c\u0441\u044f \u043e\u0442 \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u0432 \u0435\u0451 \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438, \u0430 \u0432\u043f\u043b\u043e\u0442\u043d\u0443\u044e \u0437\u0430\u043d\u044f\u0432\u0448\u0438\u0441\u044c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043c, \u0432\u043f\u043e\u043b\u043d\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u0435\u043d \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c, \u043f\u043e\u043c\u0438\u043c\u043e \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u043e\u0433\u043e 2D (\u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e-\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0433\u043e \u0432 ZoG), \u0435\u0449\u0451 \u0438 \u0447\u0435\u0441\u0442\u043d\u044b\u0439 3D-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441. \u042d\u0442\u043e <a href=\"http:\/\/wiki.jocly.com\/index.php\/XDView\">\u0441\u043b\u043e\u0436\u043d\u043e<\/a>, \u043d\u043e \u0432\u043f\u043e\u043b\u043d\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u0435\u043c\u043e. \u041f\u0440\u0438 \u0431\u043e\u043b\u044c\u0448\u043e\u043c \u0436\u0435\u043b\u0430\u043d\u0438\u0438, <a href=\"http:\/\/wiki.jocly.com\/index.php\/Changing_the_pieces_with_my_own_set\">\u043c\u043e\u0436\u043d\u043e<\/a> \u0434\u0430\u0436\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441\u0432\u043e\u0439 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u0434\u0438\u0437\u0430\u0439\u043d \u0444\u0438\u0433\u0443\u0440, \u043d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u0432 \u0435\u0433\u043e \u0432 <a href=\"http:\/\/www.blender.org\/\">Blender<\/a>-\u0435. <\/p>\n<p>  \u041b\u0443\u0447\u0448\u0438\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u043f\u043e\u043d\u044f\u0442\u044c \u2014 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0447\u0442\u043e-\u0442\u043e, \u043f\u0443\u0441\u0442\u044c \u0434\u0430\u0436\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0435, \u0441\u0430\u043c\u043e\u043c\u0443. \u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 <a href=\"http:\/\/wiki.jocly.com\/index.php\/Changing_the_pieces_with_my_own_set\">\u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b<\/a> \u043f\u043e \u043a\u0430\u0441\u0442\u043e\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0448\u0430\u0445\u043c\u0430\u0442 \u043d\u0430 <a href=\"http:\/\/wiki.jocly.com\">wiki<\/a> \u0430\u0432\u0442\u043e\u0440\u043e\u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0443\u0436\u0435 \u0431\u044b\u043b, \u044f \u0440\u0435\u0448\u0438\u043b \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432 \u0441\u0442\u043e\u0440\u043e\u043d\u0443 \u0448\u0430\u0448\u0435\u043a. \u0414\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0434\u0435\u0442\u0430\u043b\u0435\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b <a href=\"http:\/\/embed.jocly.net\/jocly\/plazza\/inspector#\/\">Jocly Inspector<\/a>. \u0412 \u043d\u0430\u043b\u0438\u0447\u0438\u0438 \u0438\u043c\u0435\u043b\u0438\u0441\u044c \u00ab\u041c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u044b\u0435\u00bb, \u00ab\u0410\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u0438\u0435\u00bb, \u00ab\u0418\u0441\u043f\u0430\u043d\u0441\u043a\u0438\u0435\u00bb, \u00ab\u0411\u0440\u0430\u0437\u0438\u043b\u044c\u0441\u043a\u0438\u0435 \u0448\u0430\u0448\u043a\u0438\u00bb. \u0412\u0441\u0451 \u0447\u0442\u043e \u0443\u0433\u043e\u0434\u043d\u043e, \u043a\u0440\u043e\u043c\u0435 &quot;<a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B5_%D1%88%D0%B0%D1%88%D0%BA%D0%B8\">\u0420\u0443\u0441\u0441\u043a\u0438\u0445 \u0448\u0430\u0448\u0435\u043a<\/a>&quot;. \u041d\u043e \u0435\u0441\u043b\u0438 \u0447\u0435\u0433\u043e-\u0442\u043e \u043d\u0435\u0442 \u2014 \u043d\u0430\u0434\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u044d\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c!<\/p>\n<p>  \u041b\u044e\u0431\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 Jocly \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043d\u0430 \u0441\u0432\u043e\u0451\u043c \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0435 (\u0441\u043e \u0441\u043b\u043e\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432, \u044d\u0442\u043e \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043a\u0430\u0441\u0442\u043e\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439). \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u043f\u043e\u043c\u043e\u0436\u0435\u0442 <a href=\"https:\/\/github.com\/mi-g\/jquery-jocly\">Jocly jQuery plugin<\/a>. \u0412\u043e\u0442 <a href=\"http:\/\/mi-g.github.io\/jquery-jocly\/index.html\">\u0437\u0434\u0435\u0441\u044c<\/a> \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u043d\u0435\u043f\u043b\u043e\u0445\u0430\u044f \u043f\u043e\u0434\u0431\u043e\u0440\u043a\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432, \u0441 \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u0435\u0439 \u0435\u0433\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439. \u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u0440\u0430\u0431\u043e\u0442\u044b, \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0432\u0441\u0435\u0433\u043e \u0442\u0440\u0438 \u0444\u0430\u0439\u043b\u0430: <a href=\"https:\/\/raw.githubusercontent.com\/mi-g\/jquery-jocly\/master\/jquery.jocly.min.js\">jquery.jocly.min.js<\/a>, <a href=\"https:\/\/raw.githubusercontent.com\/mi-g\/jquery-jocly\/master\/jquery.jocly.min.css\">jquery.jocly.min.css<\/a> \u0438 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 html-\u0444\u0430\u0439\u043b. \u0415\u0441\u043b\u0438 \u0434\u0435\u043b\u0430\u0442\u044c \u0432\u0441\u0451 \u00ab\u043f\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u043c\u0443\u00bb, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u043e\u043b\u043e\u0436\u0438\u0442\u044c \u0438\u0445 \u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043b\u044e\u0431\u043e\u0433\u043e Web-\u0441\u0435\u0440\u0432\u0435\u0440\u0430 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 <a href=\"https:\/\/httpd.apache.org\/\">Apache<\/a>), \u043d\u043e, \u043a\u0430\u043a \u043f\u043e\u043a\u0430\u0437\u0430\u043b\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0430, \u0435\u0441\u043b\u0438 \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 <a href=\"https:\/\/www.mozilla.org\/ru\/firefox\/new\/\">FireFox<\/a>, \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0432 \u043d\u0435\u0433\u043e \u043d\u0430\u0448 html-\u0444\u0430\u0439\u043b (\u0441 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430\u043c\u0438 \u0442\u0430\u043a\u043e\u0439 \u0444\u043e\u043a\u0443\u0441 \u043d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b).<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0412\u043e\u0442 \u0447\u0442\u043e \u043e\u043d \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"html\">&lt;!DOCTYPE html&gt; &lt;html&gt;   &lt;head&gt;     &lt;meta charset='utf-8'&gt; \t&lt;link rel=&quot;stylesheet&quot; href=&quot;jquery.jocly.min.css&quot;&gt; \t&lt;script src=&quot;http:\/\/code.jquery.com\/jquery-1.10.1.min.js&quot;&gt;&lt;\/script&gt; \t&lt;script src=&quot;jquery.jocly.min.js&quot;&gt;&lt;\/script&gt;      &lt;title&gt;Jocly development stub web page&lt;\/title&gt;     &lt;script&gt;     \t$(document).ready(function() {     \t\t$(&quot;#applet&quot;).jocly({});     \t\t$(&quot;#applet&quot;).jocly(&quot;localPlay&quot;,&quot;custom-draughts&quot;,{ });     \t\t$(&quot;#applet&quot;).jocly(&quot;setFeatures&quot;,{     \t\t\tnotifyEnd: false,     \t\t\thasEndSound: false,\t\t     \t\t});     \t\t$(&quot;#options&quot;).joclyListener(&quot;listen&quot;,&quot;viewOptions&quot;,function(message) {     \t\t\tconsole.log(&quot;viewOptions&quot;,message);     \t\t\t$(&quot;#options-skin&quot;).hide().children(&quot;option&quot;).remove();     \t\t\tif(message.options.skin && message.skins && message.skins.length&gt;0) {     \t\t\t\tmessage.skins.forEach(function(skin) {     \t\t\t\t\t$(&quot;&lt;option\/&gt;&quot;).attr(&quot;value&quot;,skin.name).text(skin.title).appendTo($(&quot;#options-skin&quot;));     \t\t\t\t});     \t\t\t\t$(&quot;#options-skin&quot;).show().val(message.options.skin);     \t\t\t}     \t\t\t$(&quot;#options-notation&quot;).hide();     \t\t\tif(message.options.notation!==undefined)     \t\t\t\t$(&quot;#options-notation&quot;).show().children(&quot;input&quot;).prop(&quot;checked&quot;,message.options.notation);     \t\t\t$(&quot;#options-moves&quot;).hide();     \t\t\tif(message.options.moves!==undefined)     \t\t\t\t$(&quot;#options-moves&quot;).show().children(&quot;input&quot;).prop(&quot;checked&quot;,message.options.moves);     \t\t\t$(&quot;#options-autocomplete&quot;).hide();     \t\t\tif(message.options.autocomplete!==undefined)     \t\t\t\t$(&quot;#options-autocomplete&quot;).show().children(&quot;input&quot;).prop(&quot;checked&quot;,message.options.autocomplete);     \t\t\t$(&quot;#options-sounds&quot;).hide();     \t\t\tif(message.options.sounds!==undefined)     \t\t\t\t$(&quot;#options-sounds&quot;).show().children(&quot;input&quot;).prop(&quot;checked&quot;,message.options.sounds);     \t\t\t$(&quot;#options&quot;).show();     \t\t});     \t\t$(&quot;#options&quot;).on(&quot;change&quot;,function() {     \t\t\tvar options={};     \t\t\tif($(&quot;#options-skin&quot;).is(&quot;:visible&quot;))      \t\t\t\toptions.skin=$(&quot;#options-skin&quot;).val();     \t\t\tif($(&quot;#options-notation&quot;).is(&quot;:visible&quot;))     \t\t\t\toptions.notation=$(&quot;#options-notation-input&quot;).prop(&quot;checked&quot;);     \t\t\tif($(&quot;#options-moves&quot;).is(&quot;:visible&quot;))     \t\t\t\toptions.moves=$(&quot;#options-moves-input&quot;).prop(&quot;checked&quot;);     \t\t\tif($(&quot;#options-autocomplete&quot;).is(&quot;:visible&quot;))     \t\t\t\toptions.autocomplete=$(&quot;#options-autocomplete-input&quot;).prop(&quot;checked&quot;);     \t\t\tif($(&quot;#options-sounds&quot;).is(&quot;:visible&quot;))     \t\t\t\toptions.sounds=$(&quot;#options-sounds-input&quot;).prop(&quot;checked&quot;);     \t\t\t$(&quot;#applet&quot;).jocly(&quot;viewOptions&quot;,options);     \t\t});     \t\tvar defaultLevel=0;     \t\t$(&quot;#mode-panel&quot;).joclyListener(&quot;listen&quot;,&quot;players&quot;,function(message) {     \t\t\tconsole.warn(&quot;players&quot;,message);     \t\t\tfunction UpdatePlayer(player,key,levels) {         \t\t\tif(player.type==&quot;computer&quot;) {         \t\t\t\tvar select=$(&quot;#select-level-&quot;+key);         \t\t\t\tselect.empty();         \t\t\t\tfor(var i=0;i&lt;levels.length;i++)         \t\t\t\t\t$(&quot;&lt;option\/&gt;&quot;).attr(&quot;value&quot;,i).text(levels[i].label).appendTo(select);         \t\t\t\tselect.val(player.level);         \t\t\t\t$(&quot;#level-&quot;+key).show();         \t\t\t} else         \t\t\t\t$(&quot;#level-&quot;+key).hide();        \t\t\t\t     \t\t\t}     \t\t\tUpdatePlayer(message.players[1],'a',message.levels);     \t\t\tUpdatePlayer(message.players[-1],'b',message.levels);     \t\t\tvar modeSelect=$(&quot;#mode&quot;);     \t\t\tmodeSelect.show();     \t\t\tif(message.players[1].type==&quot;self&quot; && message.players[-1].type==&quot;self&quot;)     \t\t\t\tmodeSelect.val(&quot;self-self&quot;);     \t\t\telse if(message.players[1].type==&quot;self&quot; && message.players[-1].type==&quot;computer&quot;)     \t\t\t\tmodeSelect.val(&quot;self-comp&quot;);     \t\t\telse if(message.players[1].type==&quot;computer&quot; && message.players[-1].type==&quot;self&quot;)     \t\t\t\tmodeSelect.val(&quot;comp-self&quot;);     \t\t\telse if(message.players[1].type==&quot;computer&quot; && message.players[-1].type==&quot;computer&quot;)     \t\t\t\tmodeSelect.val(&quot;comp-comp&quot;);     \t\t\telse     \t\t\t\tmodeSelect.hide();     \t\t\tmessage.levels.forEach(function(level,index) {     \t\t\t\tif(level.isDefault)     \t\t\t\t\tdefaultLevel=index;     \t\t\t});     \t\t\t$(&quot;#mode-panel&quot;).show();     \t\t});     \t\t$(&quot;#mode-panel&quot;).on(&quot;change&quot;,function() {     \t\t\tconsole.log(&quot;changed mode&quot;,$(&quot;#mode&quot;).val(),$(&quot;#select-level-a&quot;).val(),$(&quot;#select-level-b&quot;).val());     \t\t\tvar players;     \t\t\tswitch($(&quot;#mode&quot;).val()) {     \t\t\tcase &quot;self-self&quot;:     \t\t\t\tplayers={&quot;1&quot;:{type:&quot;self&quot;},&quot;-1&quot;:{type:&quot;self&quot;}};     \t\t\t\tbreak;     \t\t\tcase &quot;self-comp&quot;:     \t\t\t\tplayers={&quot;1&quot;:{type:&quot;self&quot;},&quot;-1&quot;:{type:&quot;computer&quot;,level:$(&quot;#select-level-b&quot;).val() || defaultLevel}};     \t\t\t\tbreak;     \t\t\tcase &quot;comp-self&quot;:     \t\t\t\tplayers={&quot;1&quot;:{type:&quot;computer&quot;,level:$(&quot;#select-level-a&quot;).val() || defaultLevel},&quot;-1&quot;:{type:&quot;self&quot;}};     \t\t\t\tbreak;     \t\t\tcase &quot;comp-comp&quot;:     \t\t\t\tplayers={&quot;1&quot;:{type:&quot;computer&quot;,level:$(&quot;#select-level-a&quot;).val() || defaultLevel},     \t\t\t\t\t&quot;-1&quot;:{type:&quot;computer&quot;,level:$(&quot;#select-level-b&quot;).val() || defaultLevel}};     \t\t\t\tbreak;     \t\t\t}     \t\t\t$(&quot;#applet&quot;).jocly(&quot;setPlayers&quot;,players);     \t\t});     \t\t$(&quot;#restart&quot;).on(&quot;click&quot;,function() {     \t\t\t$(&quot;#applet&quot;).jocly(&quot;restartGame&quot;);    \t\t\t     \t\t});     \t\t$(&quot;#takeback&quot;).on(&quot;click&quot;,function() {     \t\t\t$(&quot;#applet&quot;).jocly(&quot;takeBack&quot;);    \t\t\t     \t\t});         \t$(&quot;#fullscreen&quot;).on(&quot;click&quot;,function() {         \t\t$(&quot;#applet&quot;).joclyFullscreen();         \t});     \t});     &lt;\/script&gt;     &lt;style type=&quot;text\/css&quot;&gt; * { \tbox-sizing: border-box; } body { } #container { \twidth: 100%; \tdisplay: table; \ttable-layout: fixed; } #applet { \tdisplay: table-cell; \twidth: 60%; } #controls { \tdisplay: table-cell; \twidth: 33%; \tvertical-align: top; \tpadding: 0 .5em 0 .5em; } .box { \tbackground-color: #f0f0f0; \tborder: 2px solid #e0e0e0; \tborder-radius: 1em; \tpadding: 1em; }     &lt;\/style&gt;          &lt;script type=&quot;text\/jocly-model-view&quot; data-jocly-game=&quot;draughts\/custom-draughts&quot;&gt;     &lt;!-- \u0421\u044e\u0434\u0430 \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0438\u0433\u0440\u044b --&gt;     &lt;\/script&gt;   &lt;\/head&gt;   &lt;body&gt; \t&lt;div id=&quot;container&quot;&gt; \t\t&lt;div id=&quot;applet&quot;&gt;&lt;\/div&gt; \t\t&lt;div id=&quot;controls&quot;&gt; \t       \t&lt;div id=&quot;mode-panel&quot; style=&quot;display: none;&quot; class=&quot;box&quot;&gt; \t       \t\t&lt;h3&gt;Controls&lt;\/h3&gt; \t       \t\t&lt;button id=&quot;restart&quot;&gt;Restart game&lt;\/button&gt;&lt;br\/&gt;&lt;br\/&gt; \t       \t\t&lt;button id=&quot;takeback&quot;&gt;Take back&lt;\/button&gt;&lt;br\/&gt;&lt;br\/&gt; \t       \t\t&lt;select id=&quot;mode&quot;&gt; \t       \t\t\t&lt;option value=&quot;self-self&quot;&gt;Self \/ Self&lt;\/option&gt; \t       \t\t\t&lt;option value=&quot;self-comp&quot;&gt;Self \/ Computer&lt;\/option&gt; \t       \t\t\t&lt;option value=&quot;comp-self&quot;&gt;Computer \/ Self&lt;\/option&gt; \t       \t\t\t&lt;option value=&quot;comp-comp&quot;&gt;Computer \/ Computer&lt;\/option&gt; \t       \t\t&lt;\/select&gt;&lt;br\/&gt;&lt;br\/&gt; \t       \t\t&lt;label id=&quot;level-a&quot; for=&quot;select-level-a&quot;&gt;Computer(A) level&lt;br\/&gt; \t        \t\t&lt;select id=&quot;select-level-a&quot;&gt;&lt;\/select&gt;&lt;br\/&gt;&lt;br\/&gt; \t       \t\t&lt;\/label&gt; \t       \t\t&lt;label id=&quot;level-b&quot; for=&quot;select-level-b&quot;&gt;Computer(B) level&lt;br\/&gt; \t        \t\t&lt;select id=&quot;select-level-b&quot;&gt;&lt;\/select&gt;&lt;br\/&gt;&lt;br\/&gt; \t       \t\t&lt;\/label&gt; \t       \t\t&lt;button id=&quot;fullscreen&quot;&gt;Full screen&lt;\/button&gt;&lt;br\/&gt;&lt;br\/&gt; \t       \t&lt;\/div&gt; \t       \t&lt;br\/&gt; \t       \t&lt;div id=&quot;options&quot; style=&quot;display: none;&quot;  class=&quot;box&quot;&gt; \t       \t\t&lt;h3&gt;Options&lt;\/h3&gt; \t       \t\t&lt;select id=&quot;options-skin&quot;&gt;&lt;\/select&gt;&lt;br\/&gt;&lt;br\/&gt; \t       \t\t&lt;label id=&quot;options-notation&quot; for=&quot;options-notation-input&quot;&gt; \t       \t\t\t&lt;input id=&quot;options-notation-input&quot; type=&quot;checkbox&quot;\/&gt; Notation&lt;br\/&gt; \t       \t\t&lt;\/label&gt; \t       \t\t&lt;label id=&quot;options-moves&quot; for=&quot;options-moves-input&quot;&gt; \t       \t\t\t&lt;input id=&quot;options-moves-input&quot; type=&quot;checkbox&quot;\/&gt; Show possible moves&lt;br\/&gt; \t       \t\t&lt;\/label&gt; \t       \t\t&lt;label id=&quot;options-autocomplete&quot; for=&quot;options-autocomplete-input&quot;&gt; \t       \t\t\t&lt;input id=&quot;options-autocomplete-input&quot; type=&quot;checkbox&quot;\/&gt; Auto-complete moves&lt;br\/&gt; \t       \t\t&lt;\/label&gt; \t       \t\t&lt;label id=&quot;options-sounds&quot; for=&quot;options-sounds-input&quot;&gt; \t       \t\t\t&lt;input id=&quot;options-sounds-input&quot; type=&quot;checkbox&quot;\/&gt; Sounds&lt;br\/&gt; \t       \t\t&lt;\/label&gt; \t       \t&lt;\/div&gt; \t\t&lt;\/div&gt; \t&lt;\/div&gt;   &lt;\/body&gt; &lt;\/html&gt; <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  \u0414\u043b\u044f \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0438\u0433\u0440\u044b, \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0431\u044b \u043e\u0431\u043e\u0439\u0442\u0438\u0441\u044c \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c html-\u0444\u0430\u0439\u043b\u043e\u043c, \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u043c \u0432 <a href=\"http:\/\/wiki.jocly.com\/index.php\/Embed_a_game\">\u044d\u0442\u043e\u043c<\/a> \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0435, \u043d\u043e \u0441 \u0435\u0433\u043e <a href=\"https:\/\/github.com\/mi-g\/jquery-jocly\/blob\/master\/dev-stub.html\">\u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u043b\u043d\u044b\u043c<\/a> \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u043c \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0431\u0443\u0434\u0435\u0442 \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u0443\u0434\u043e\u0431\u043d\u0435\u0435. \u0422\u0435\u043f\u0435\u0440\u044c, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0432 html-\u0444\u0430\u0439\u043b <a href=\"http:\/\/wiki.jocly.com\/index.php\/Jocly_Basics\">JSON-\u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435<\/a> \u0438\u0433\u0440\u044b. \u0417\u0434\u0435\u0441\u044c \u0435\u0441\u0442\u044c \u0442\u043e\u043d\u043a\u0438\u0439 \u043c\u043e\u043c\u0435\u043d\u0442. \u041d\u0430\u0448 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0438\u0433\u0440\u044b \u0431\u0443\u0434\u0435\u0442 \u043d\u0430\u0437\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u00abcustom-draughts\u00bb (\u0441\u0435\u0439\u0447\u0430\u0441, \u044d\u0442\u043e \u0438\u043c\u044f \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u0444\u0430\u0439\u043b\u0435 \u0434\u0432\u0430\u0436\u0434\u044b). \u041c\u044b \u043c\u043e\u0436\u0435\u043c \u0432\u0437\u044f\u0442\u044c \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0438\u0433\u0440\u044b \u0438\u0437 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u043b\u044f Jocly Inspector-\u0430 \u0446\u0435\u043b\u0438\u043a\u043e\u043c, \u043d\u043e \u0435\u0441\u043b\u0438 \u043c\u044b \u0438\u0437\u043c\u0435\u043d\u044f\u0435\u043c \u043b\u0438\u0448\u044c \u0447\u0430\u0441\u0442\u044c \u0444\u0430\u0439\u043b\u043e\u0432, \u044d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0438\u0437\u043b\u0438\u0448\u043d\u0438\u043c. \u0412\u043f\u043e\u043b\u043d\u0435 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u043b\u0438\u0448\u044c \u0442\u0443 \u0447\u0430\u0441\u0442\u044c \u043c\u043e\u0434\u0435\u043b\u0438, \u0432 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u044b \u0432\u043d\u0435\u0441\u043b\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f, \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0435 Jocly \u0432\u043e\u0437\u044c\u043c\u0451\u0442 \u0441\u043e \u0441\u0432\u043e\u0435\u0433\u043e \u0441\u0430\u0439\u0442\u0430, \u043d\u043e \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u044d\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e, \u0438\u043c\u044f \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c: &quot;<b>draughts<\/b>\/custom-draughts&quot;. \u0427\u0430\u0441\u0442\u044c \u0438\u043c\u0435\u043d\u0438 \u043f\u0435\u0440\u0435\u0434 \u0441\u043b\u044d\u0448\u0435\u043c \u2014 \u0438\u043c\u044f, \u0441\u0432\u043e\u0435\u0433\u043e \u0440\u043e\u0434\u0430, \u00ab\u0440\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0439\u00bb \u0438\u0433\u0440\u044b, \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0431\u0443\u0434\u0435\u0442 \u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0432\u0441\u0451 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u044e\u0449\u0435\u0435. \u041f\u043e\u0432\u0442\u043e\u0440\u044e\u0441\u044c, \u044d\u0442\u0430 \u0447\u0430\u0441\u0442\u044c \u0438\u043c\u0435\u043d\u0438 <b>\u043d\u0435 \u043d\u0443\u0436\u043d\u0430<\/b>, \u0435\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043f\u043e\u043b\u043d\u043e\u0435 JSON-\u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0417\u0434\u0435\u0441\u044c \u0432\u0441\u0451 \u0447\u0442\u043e \u043d\u0430\u043c \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u0441\u044f<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"html\">    &lt;script type=&quot;text\/jocly-model-view&quot; data-jocly-game=&quot;draughts\/custom-draughts&quot;&gt;     { \t&quot;view&quot;: { \t    &quot;js&quot;: [ \t       &quot;checkers-xd-view.js&quot;, \t       &quot;draughts8-xd-view.js&quot; \t    ] \t}, \t&quot;model&quot;: {             &quot;js&quot;: [                &quot;checkersbase-custom-model.js&quot;,                &quot;draughts-model.js&quot;             ], \t    &quot;gameOptions&quot;: { \t      \t&quot;preventRepeat&quot;: true,       \t\t&quot;width&quot;: 4,       \t\t&quot;height&quot;: 8,       \t\t&quot;initial&quot;: { \t\t        &quot;a&quot;: [[0,0],[0,1],[0,2],[0,3],[1,0],[1,1],[1,2],[1,3],[2,0],[2,1],[2,2],[2,3]],         \t\t&quot;b&quot;: [[7,0],[7,1],[7,2],[7,3],[6,0],[6,1],[6,2],[6,3],[5,0],[5,1],[5,2],[5,3]]       \t\t},       \t\t&quot;variant&quot;: {                         &quot;compulsoryCatch&quot;: true,                         &quot;canStepBack&quot;: false,                         &quot;mustMoveForward&quot;: false, \t\t        &quot;mustMoveForwardStrict&quot;: true,                         &quot;lastRowFreeze&quot;: false,         \t\t&quot;lastRowCrown&quot;: true,         \t\t&quot;captureLongestLine&quot;: true,                         &quot;kingCaptureShort&quot;: false,                         &quot;canCaptureBackward&quot;: true,                         &quot;longRangeKing&quot;: true,                         &quot;captureInstantRemove&quot;: false,         \t\t&quot;lastRowFactor&quot;: 0.001       \t\t},       \t\t&quot;uctTransposition&quot;: &quot;state&quot;             } \t}     }     &lt;\/script&gt;      &lt;script type=&quot;text\/jocly-resources&quot; data-jocly-game=&quot;custom-draughts&quot;&gt;     {         &quot;checkersbase-custom-model.js&quot;: &quot;checkersbase-custom-model.js&quot;     }     &lt;\/script&gt; <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  \u0412 \u043f\u0435\u0440\u0432\u0443\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c, \u0432 \u0433\u043b\u0430\u0437\u0430 \u0431\u0440\u043e\u0441\u0430\u0435\u0442\u0441\u044f \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u0432 \u0434\u043e\u0441\u043a\u0438 \u0438 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0439 \u0440\u0430\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0444\u0438\u0433\u0443\u0440 (\u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u0434\u0430\u043b\u0435\u043a\u043e \u043d\u0435 \u0432\u043e \u0432\u0441\u0435\u0445 Jocly-\u0438\u0433\u0440\u0430\u0445). \u041d\u0435\u043c\u043d\u043e\u0433\u043e \u0441\u043b\u043e\u0436\u043d\u043e \u043f\u0440\u0438\u0432\u044b\u043a\u043d\u0443\u0442\u044c \u043a \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u0434\u043e\u0441\u043a\u0430 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043a\u0430\u043a 4&#215;8 (\u043d\u0435\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0435 \u0432 \u0434\u0438\u0430\u0433\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u0448\u0430\u0448\u0435\u0447\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u043f\u043e\u043b\u044f \u043c\u043e\u0434\u0435\u043b\u044c\u044e \u043d\u0435 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0442\u0441\u044f), \u0430 \u0432\u0441\u0435 \u0438\u043d\u0434\u0435\u043a\u0441\u044b \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u0444\u0438\u0433\u0443\u0440 \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0442\u0441\u044f \u0441 \u043d\u0443\u043b\u044f. \u0414\u0430\u043b\u0435\u0435 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0441\u043f\u0438\u0441\u043e\u043a \u0431\u0443\u043b\u0435\u0432\u0441\u043a\u0438\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a, \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u044b\u0439 (\u0441 \u0442\u043e\u0447\u043a\u0438 \u0437\u0440\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432) \u0434\u043b\u044f \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u043b\u044e\u0431\u044b\u0445 \u0448\u0430\u0448\u0435\u0447\u043d\u044b\u0445 \u0438\u0433\u0440. \u041c\u044b \u0435\u0433\u043e \u043f\u043e\u043f\u043e\u043b\u043d\u0438\u043c. \u041d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0432\u0441\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438, \u044f \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u043b \u043f\u043e\u043b\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a, \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0441\u0432\u043e\u0435\u0433\u043e \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430. \u0412\u0430\u0436\u043d\u043e \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u0432 &quot;<b>text\/jocly-resources<\/b>&quot; \u0432\u0441\u0435 \u0444\u0430\u0439\u043b\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u043e\u0442\u0434\u0430\u0432\u0430\u0442\u044c \u0441\u043e \u0441\u0432\u043e\u0435\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430. \u0424\u0430\u0439\u043b &quot;<b>checkersbase-custom-model.js<\/b>&quot; \u2014 \u0442\u0430 \u0447\u0430\u0441\u0442\u044c \u043c\u043e\u0434\u0435\u043b\u0438, \u0432 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0431\u0443\u0434\u0443\u0442 \u0432\u043d\u043e\u0441\u0438\u0442\u044c\u0441\u044f \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f. \u041f\u0435\u0440\u0432\u043e\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e, \u044d\u0442\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u043a\u043e\u043f\u0438\u044f \u0444\u0430\u0439\u043b\u0430 &quot;<b><a href=\"http:\/\/embed.jocly.net\/jocly\/plazza\/file-access?game=draughts&amp;file=checkersbase-model.js\">checkersbase-model.js<\/a><\/b>&quot;.<\/p>\n<p>  \u041d\u0430\u0441\u0442\u0430\u043b\u043e \u0432\u0440\u0435\u043c\u044f \u043f\u043e\u0434\u0443\u043c\u0430\u0442\u044c \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u043c\u0435\u043d\u044f\u0442\u044c. \u0427\u0435\u043c \u043e\u0442\u043b\u0438\u0447\u0430\u044e\u0442\u0441\u044f \u00ab\u0420\u0443\u0441\u0441\u043a\u0438\u0435 \u0448\u0430\u0448\u043a\u0438\u00bb \u043e\u0442 \u00ab\u0411\u0440\u0430\u0437\u0438\u043b\u044c\u0441\u043a\u0438\u0445\u00bb (\u0438\u043c\u0435\u044e\u0449\u0438\u0445\u0441\u044f \u0432 \u043a\u043e\u043c\u043f\u043b\u0435\u043a\u0442\u0435 Jocly)? \u041d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435, \u0432\u0441\u0435\u0433\u043e \u0434\u0432\u0443\u043c\u044f \u00ab\u043c\u0435\u043b\u043e\u0447\u0430\u043c\u0438\u00bb. \u00ab\u0411\u0440\u0430\u0437\u0438\u043b\u044c\u0441\u043a\u0438\u0435 \u0448\u0430\u0448\u043a\u0438\u00bb \u0438\u0433\u0440\u0430\u044e\u0442\u0441\u044f \u043f\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u043c \u00ab\u041c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u044b\u0445\u00bb \u0438\u043b\u0438 \u00ab\u041f\u043e\u043b\u044c\u0441\u043a\u0438\u0445 \u0448\u0430\u0448\u0435\u043a\u00bb, \u043d\u043e \u043d\u0430 \u0434\u043e\u0441\u043a\u0435 8&#215;8. \u0412 \u043d\u0438\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0443\u0435\u0442 \u00ab\u043f\u0440\u0430\u0432\u0438\u043b\u043e \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0430\u00bb: \u0438\u0437 \u0434\u0432\u0443\u0445 \u0438 \u0431\u043e\u043b\u0435\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u0432\u0437\u044f\u0442\u0438\u044f \u0438\u0433\u0440\u043e\u043a \u0434\u043e\u043b\u0436\u0435\u043d \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0442\u043e\u0442, \u043f\u0440\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u00ab\u0441\u0440\u0443\u0431\u0438\u0442\u00bb \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0448\u0430\u0448\u0435\u043a \u043f\u0440\u043e\u0442\u0438\u0432\u043d\u0438\u043a\u0430, \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043e\u0442 \u0438\u0445 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430. \u0412 \u00ab\u0420\u0443\u0441\u0441\u043a\u0438\u0445 \u0448\u0430\u0448\u043a\u0430\u0445\u00bb \u043e\u043f\u0446\u0438\u044e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c. \u0421 \u044d\u0442\u0438\u043c \u0432\u0441\u0451 \u043f\u0440\u043e\u0441\u0442\u043e, \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0431\u0443\u043b\u0435\u0432\u0441\u043a\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u043e\u0439 &quot;<b>captureLongestLine<\/b>&quot;.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u0441\u0442\u0430\u0442\u0438<\/b><\/p>\n<div class=\"spoiler_text\">\u0418\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c, \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043e \u0432 \u0448\u0430\u0448\u043a\u0430\u0445 \u043e\u0442 Jocly. \u0415\u0441\u043b\u0438 \u0441\u043e\u0441\u0442\u0430\u0432\u043d\u043e\u0439 \u0445\u043e\u0434 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043a\u0430\u043a \u0435\u0434\u0438\u043d\u043e\u0435 \u0446\u0435\u043b\u043e\u0435, \u0437\u0430\u0434\u0430\u0447\u0430 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u0442\u0440\u0438\u0432\u0438\u0430\u043b\u044c\u043d\u043e\u0439. \u0412 \u0441\u0430\u043c\u043e\u043c \u043a\u043e\u043d\u0446\u0435 \u043c\u0435\u0442\u043e\u0434\u0430 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0445\u043e\u0434\u043e\u0432 &quot;<b>Model.Board._GenerateMoves<\/b>&quot; \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442 \u043a\u043e\u0434\u0430:<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0412\u044b\u0431\u043e\u0440 \u0438\u0437 \u0441\u043f\u0438\u0441\u043a\u0430 \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0445\u043e\u0434\u043e\u0432<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"javascript\">... if(aGame.g.captureLongestLine) { \tvar moves0=this.mMoves; \tvar moves1=[]; \tvar bestLength=0; \tfor(var i in moves0) { \t\tvar move=moves0[i]; \t\tif(move.pos.length==bestLength) \t\t\tmoves1.push(move); \t\telse if(move.pos.length&gt;bestLength) { \t\t\tmoves1=[move]; \t\t\tbestLength=move.pos.length; \t\t} \t} \tthis.mMoves=moves1; } ... <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  \u0423 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u0445\u043e\u0434\u043e\u0432 (\u0432 \u0442\u043e\u043c \u0438\u043b\u0438 \u0438\u043d\u043e\u043c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0438) \u0438 \u0438\u0437 \u043d\u0435\u0433\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u043b\u0438\u0448\u044c \u0442\u0435 \u0445\u043e\u0434\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0435\u0440\u0443\u0442 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0444\u0438\u0433\u0443\u0440 (\u0432 \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0446\u0438\u0438 Jocly \u2014 \u0441\u043e\u0441\u0442\u043e\u044f\u0442 \u0438\u0437 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430 \u0448\u0430\u0433\u043e\u0432). \u0412 ZoG, \u0441 \u0435\u0451 \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u0435\u0439 \u00ab\u0447\u0430\u0441\u0442\u0438\u0447\u043d\u044b\u0445\u00bb \u0445\u043e\u0434\u043e\u0432, \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c \u0445\u0430\u0440\u0434\u043a\u043e\u0434\u043d\u0443\u044e \u043e\u043f\u0446\u0438\u044e &quot;<b>maximal captures<\/b>&quot; \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0447\u0442\u043e\u0431\u044b \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b.  <\/div>\n<\/div>\n<p>  \u0411\u043e\u043b\u044c\u0448\u0435 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u0435\u0442 \u0441 \u0434\u0440\u0443\u0433\u0438\u043c \u043f\u0440\u0430\u0432\u0438\u043b\u043e\u043c: \u0435\u0441\u043b\u0438 \u0448\u0430\u0448\u043a\u0430 \u0441\u0442\u0430\u043b\u0430 \u0434\u0430\u043c\u043a\u043e\u0439 \u0432 \u0445\u043e\u0434\u0435 \u0441\u0435\u0440\u0438\u0438 \u0432\u0437\u044f\u0442\u0438\u0439, \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u043e\u043d\u0430 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u0442 \u00ab\u0440\u0443\u0431\u043a\u0443\u00bb \u0431\u0435\u0437 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438, \u0443\u0436\u0435 \u043f\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u043c \u0434\u0430\u043c\u043a\u0438. \u0412 \u00ab\u041c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u044b\u0445\u00bb, \u0430 \u0442\u0430\u043a\u0436\u0435 \u00ab\u0411\u0440\u0430\u0437\u0438\u043b\u044c\u0441\u043a\u0438\u0445 \u0448\u0430\u0448\u043a\u0430\u0445\u00bb, \u0434\u0435\u0439\u0441\u0442\u0432\u0443\u0435\u0442 \u0434\u0440\u0443\u0433\u043e\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043e: \u0435\u0441\u043b\u0438 \u0448\u0430\u0448\u043a\u0430 \u043e\u043a\u0430\u0437\u0430\u043b\u0430\u0441\u044c \u043d\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u043b\u0438\u043d\u0438\u0438 \u0432 \u0445\u043e\u0434\u0435 \u0441\u0435\u0440\u0438\u0438 \u0432\u0437\u044f\u0442\u0438\u0439 \u0438 \u043c\u043e\u0436\u0435\u0442 \u0431\u0438\u0442\u044c \u0434\u0430\u043b\u044c\u0448\u0435 \u0432 \u0440\u043e\u043b\u0438 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0448\u0430\u0448\u043a\u0438, \u0442\u043e \u043e\u043d\u0430 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u0442 \u0431\u043e\u0439 \u0438 <b>\u043d\u0435 \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f<\/b>! \u041d\u0430\u0439\u0434\u0451\u043c \u0432 \u043a\u043e\u0434\u0435 \u0442\u043e \u043c\u0435\u0441\u0442\u043e, \u0433\u0434\u0435 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u0435:<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u042d\u0442\u043e \u043c\u0435\u0442\u043e\u0434 &#39;&#39;Model.Board.ApplyMove&#39;&#39;<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"diff\">Model.Board.ApplyMove = function(aGame,move) { +\tvar pieceCrowned=false; \tvar WIDTH=aGame.mOptions.width; \tvar HEIGHT=aGame.mOptions.height; \tvar pos0=move.pos[0]; \tvar pIndex=this.board[pos0]; \tvar piece=this.pieces[pIndex]; \tvar player=piece.s; \tpiece.l=pos0; \tvar toBeRemoved={}; \tthis.zSign=aGame.zobrist.update(this.zSign,&quot;board&quot;,piece.s+&quot;\/&quot;+piece.t,piece.p); \tfor(var i=1;i&lt;move.pos.length;i++) { \t\tvar pos=move.pos[i]; \t\tthis.board[piece.p]=-1; \t\tpiece.p=pos; +\t\tif (aGame.g.russianCustom==true) { +\t\t\tvar r=aGame.g.Coord[pos][0]; +\t\t\tif((player==JocGame.PLAYER_A && r==HEIGHT-1) || (player==JocGame.PLAYER_B && r==0)) { +\t\t\t\tpieceCrowned=true; +\t\t\t} +\t\t} \t\tthis.board[pos]=pIndex; \t\tvar caught=move.capt[i]; \t\tif(caught!=null) { \t\t\tif(this.board[caught]&gt;=0) \t\t\t\ttoBeRemoved[this.board[caught]]=true; \t\t\tthis.board[caught]=-1; \t\t} \t\tpos0=pos; \t} \tthis.zSign=aGame.zobrist.update(this.zSign,&quot;board&quot;,piece.s+&quot;\/&quot;+piece.t,pos); \tvar plp=move.capt[move.capt.length-1] \tpiece.plp=plp?plp:move.pos[move.pos.length-2]; \tfor(var index in toBeRemoved) { \t\tvar piece0=this.pieces[index]; \t\tvar other=(1-piece0.s)\/2; \t\tthis.pCount[other]--; \t\tswitch(piece0.t) { \t\t\tcase 0: this.spCount[other]--; break; \t\t\tcase 1: this.kpCount[other]--; break; \t\t} \t\tthis.zSign=aGame.zobrist.update(this.zSign,&quot;board&quot;,piece0.s+&quot;\/&quot;+piece0.t,piece0.p); \t\tthis.pieces[index]=null; \t} \tif(aGame.g.lastRowCrown && this.pieces[pIndex].t==0) { \t\tvar r=aGame.g.Coord[move.pos[move.pos.length-1]][0]; -\t\tif((player==JocGame.PLAYER_A && r==HEIGHT-1) || (player==JocGame.PLAYER_B && r==0)) { +\t\tif(pieceCrowned || (player==JocGame.PLAYER_A && r==HEIGHT-1) || (player==JocGame.PLAYER_B && r==0)) { \t\t\tvar piece0=this.pieces[pIndex]; \t\t\tpiece0.t=1; \t\t\tvar self=(1-player)\/2; \t\t\tthis.spCount[self]--; \t\t\tthis.kpCount[self]++; \t\t\tthis.zSign=aGame.zobrist.update(this.zSign,&quot;board&quot;,piece0.s+&quot;\/0&quot;,piece0.p); \t\t\tthis.zSign=aGame.zobrist.update(this.zSign,&quot;board&quot;,piece0.s+&quot;\/1&quot;,piece0.p); \t\t} \t} } <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  \u041c\u043e\u0436\u043d\u043e \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u0432\u043d\u0435\u0441\u0451\u043d\u043d\u044b\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0434\u0435\u043b\u044c \u0434\u043e\u0441\u043a\u0438, \u0445\u043e\u0434\u043e\u0432, \u0444\u0438\u0433\u0443\u0440 \u0438 \u043f\u0440\u043e\u0447\u0435\u0433\u043e, \u0434\u0430\u043b\u0435\u043a\u0438 \u043e\u0442 \u0438\u043d\u0442\u0443\u0438\u0442\u0438\u0432\u043d\u044b\u0445. \u0412 \u043a\u043e\u0434\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043c\u043d\u043e\u0433\u043e \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439 (\u0442\u0438\u043f\u0430 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f <a href=\"https:\/\/en.wikipedia.org\/wiki\/Zobrist_hashing\">Zobrist Hash<\/a>) \u0438 \u0432\u043e \u0432\u0441\u0451\u043c \u044d\u0442\u043e\u043c \u0441\u043e\u0432\u0441\u0435\u043c \u043d\u0435 \u0442\u0440\u0443\u0434\u043d\u043e \u0437\u0430\u0431\u043b\u0443\u0434\u0438\u0442\u044c\u0441\u044f. \u042d\u0442\u043e \u0432\u0430\u043c \u043d\u0435 ZRF! \u0421\u0443\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u043f\u0440\u043e\u0441\u0442\u0430 \u2014 \u043c\u044b \u0437\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u043c <b>\u0444\u0430\u043a\u0442<\/b> \u043f\u0440\u043e\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u044f \u0447\u0435\u0440\u0435\u0437 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044e\u044e \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c (\u043f\u0435\u0440\u0432\u0443\u044e \u0434\u043b\u044f \u0447\u0451\u0440\u043d\u044b\u0445) \u0438, \u0435\u0441\u043b\u0438 \u043e\u043d \u0438\u043c\u0435\u043b \u043c\u0435\u0441\u0442\u043e, \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0430\u0435\u043c \u0444\u0438\u0433\u0443\u0440\u0443 \u0442\u0430\u043a, \u043a\u0430\u043a \u0435\u0441\u043b\u0438 \u0431\u044b \u0432 \u043a\u043e\u043d\u0446\u0435 \u0445\u043e\u0434\u0430 \u043e\u043a\u0430\u0437\u0430\u043b\u0438\u0441\u044c \u043d\u0430 \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u0438 \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u044f. \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u043a\u0430\u043a \u0432\u0441\u0451 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442:<\/p>\n<p>  <iframe loading=\"lazy\" width=\"420\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/uKYhr1YFe90?feature=oembed\" frameborder=\"0\" allowfullscreen><\/iframe><\/p>\n<p>  \u0412\u0440\u043e\u0434\u0435 \u0431\u044b \u0432\u0441\u0451 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e. \u041d\u0435 \u0431\u0443\u0434\u0435\u043c \u043e\u0431\u0440\u0430\u0449\u0430\u0442\u044c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043f\u043e \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0438 \u0445\u043e\u0434\u0430, \u0430 \u043d\u0435 \u0432 \u0435\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435. \u0412 \u0440\u0430\u043c\u043a\u0430\u0445 \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043c\u043e\u0434\u0435\u043b\u0438, \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u0444\u0438\u0433\u0443\u0440\u044b \u043f\u043e\u0441\u0440\u0435\u0434\u0438 \u0445\u043e\u0434\u0430 \u2014 \u043d\u0435 \u043b\u0443\u0447\u0448\u0430\u044f \u0438\u0434\u0435\u044f (\u0432\u0441\u0451 \u0441\u043b\u043e\u043c\u0430\u0435\u0442\u0441\u044f, \u044f \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u043b)! \u041d\u043e \u0432\u0441\u0451 \u043b\u0438 \u043c\u044b \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u043e\u0442\u0440\u0435\u043b\u0438? \u0427\u0443\u0442\u044c-\u0447\u0443\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0438\u043c \u043f\u043e\u0437\u0438\u0446\u0438\u044e:<\/p>\n<p>  <iframe loading=\"lazy\" width=\"420\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/mHCBB7VVBLc?feature=oembed\" frameborder=\"0\" allowfullscreen><\/iframe><\/p>\n<p>  \u0414\u0430, \u044d\u0442\u043e \u0442\u043e \u0447\u0435\u0433\u043e \u043c\u044b \u0431\u043e\u044f\u043b\u0438\u0441\u044c. \u0414\u043e\u0439\u0434\u044f \u0434\u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u0438, \u0448\u0430\u0448\u043a\u0430 \u00ab\u043d\u0435 \u0437\u043d\u0430\u0435\u0442\u00bb, \u0447\u0442\u043e \u0434\u0430\u043b\u044c\u0448\u0435 \u043e\u043d\u0430 \u0438\u043c\u0435\u0435\u0442 \u043f\u0440\u0430\u0432\u043e \u00ab\u0435\u0441\u0442\u044c\u00bb \u043a\u0430\u043a \u0434\u0430\u043c\u043a\u0430! \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0435\u0439 \u043e\u0431\u044a\u044f\u0441\u043d\u0438\u0442\u044c. \u041f\u0440\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0438 \u0445\u043e\u0434\u0430, \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0442\u044c \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043e \u0442\u043e\u043c, \u043a\u0442\u043e \u043a\u043e\u0433\u043e \u0435\u0441\u0442, \u0443\u0436\u0435 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u0437\u0434\u043d\u043e. \u041b\u043e\u0433\u0438\u0447\u043d\u043e \u0438\u0441\u043a\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u043e\u0435 \u043c\u0435\u0441\u0442\u043e \u0432 \u043c\u0435\u0442\u043e\u0434\u0435 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0445\u043e\u0434\u043e\u0432, \u0430 \u0438\u043c\u0435\u043d\u043d\u043e \u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 &quot;<b>catchPieces<\/b>&quot;. \u0412 \u0435\u0451 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442\u0441\u044f \u0444\u043b\u0430\u0433 &quot;<b>king<\/b>&quot;, \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0449\u0438\u0439, \u0447\u0442\u043e \u043c\u044b \u0438\u043c\u0435\u0435\u043c \u0434\u0435\u043b\u043e \u0441 \u0434\u0430\u043c\u043a\u043e\u0439. \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0435\u0433\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043f\u0440\u0438 \u043f\u0440\u043e\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u0438:<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u042f \u043d\u0435 \u0441\u0440\u0430\u0437\u0443 \u0434\u043e\u0434\u0443\u043c\u0430\u043b\u0441\u044f \u0434\u043e \u0442\u0430\u043a\u043e\u0433\u043e<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"diff\">function catchPieces(pos,poss,capts,dirs,king) { \twhile(true) { \t\tvar nextPoss=[]; \t\tvar nextCapts=[]; \t\tvar nextDirs=[]; \t\taGame.CheckersEachDirection(pos,function(pos0,dir) { \t\t\tvar r; \t\t\tif(aGame.g.canCaptureBackward==false) \t\t\t\tr=aGame.g.Coord[pos][0]; \t\t\tvar dir0=aGame.Checkers2WaysDirections[dir]; +\t\t\tif (aGame.g.russianCustom==true) { +\t\t\t\tif($this.board[pos0]&gt;=0 && $this.pieces[$this.board[pos0]].s==-$this.mWho) { +\t\t\t\t\tvar pp=aGame.g.Graph[pos0][dir]; +\t\t\t\t\tif (aGame.g.Coord[pp]) { +\t\t\t\t\t\tvar rr=aGame.g.Coord[pp][0]; +\t\t\t\t\t\tvar HEIGHT=aGame.mOptions.height; +\t\t\t\t\t\tif(($this.mWho==JocGame.PLAYER_A && rr==HEIGHT-1) ||  +\t\t\t\t\t\t\t($this.mWho==JocGame.PLAYER_B && rr==0)) { +\t\t\t\t\t\t\tking=true; +\t\t\t\t\t\t} +\t\t\t\t\t} +\t\t\t\t} +\t\t\t} \t\t\tif(!king) { \t\t\t\tif($this.board[pos0]&gt;=0 && $this.pieces[$this.board[pos0]].s==-$this.mWho) { \t\t\t\t\tvar r0,forward; \t\t\t\t\tif(aGame.g.canCaptureBackward==false) { \t\t\t\t\t\tr0=aGame.g.Coord[pos0][0]; \t\t\t\t\t\tforward=false; \t\t\t\t\t\tif(($this.mWho==JocGame.PLAYER_A && r0&gt;=r) ||  \t\t\t\t\t\t\t($this.mWho==JocGame.PLAYER_B && r0&lt;=r)) \t\t\t\t\t\t\t\tforward=true; \t\t\t\t\t} \t\t\t\t\tif(aGame.g.canCaptureBackward || forward==true) { \t\t\t\t\t\tvar pos1=aGame.g.Graph[pos0][dir]; \t\t\t\t\t\tif(pos1!=null && ($this.board[pos1]==-1 || pos1==poss[0])) { \t\t\t\t\t\t\tvar keep=true; \t\t\t\t\t\t\tfor(var i=0;i&lt;dirs.length;i++) \t\t\t\t\t\t\t\tif((aGame.g.captureInstantRemove && capts[i]==pos0) || \t\t\t\t\t\t\t\t\t(aGame.g.captureInstantRemove==false &&  \t\t\t\t\t\t\t\t\t\tcapts[i]==pos0 && dirs[i]==dir0)) { \t\t\t\t\t\t\t\t\tkeep=false; \t\t\t\t\t\t\t\t\tbreak; \t\t\t\t\t\t\t\t} \t\t\t\t\t\t\tif(keep) { \t\t\t\t\t\t\t\tnextPoss.push(pos1); \t\t\t\t\t\t\t\tnextCapts.push(pos0); \t\t\t\t\t\t\t\tnextDirs.push(dir0); \t\t\t\t\t\t\t} \t\t\t\t\t\t} \t\t\t\t\t} \t\t\t\t} \t\t\t} else { \/\/ king \t\t\t\tif(aGame.g.longRangeKing) \t\t\t\t\twhile($this.board[pos0]==-1 ||  \t\t\t\t\t\t(aGame.g.king180deg && pos0!=null && capts.indexOf(pos0)&gt;=0)) \t\t\t\t\t\t\tpos0=aGame.g.Graph[pos0][dir]; \t\t\t\tif(pos0!=null) { \t\t\t\t\tif($this.board[pos0]&gt;=0 && $this.pieces[$this.board[pos0]].s==-$this.mWho) { \t\t\t\t\t\tvar caught=pos0; \t\t\t\t\t\tpos0=aGame.g.Graph[pos0][dir]; \t\t\t\t\t\tif(aGame.g.kingCaptureShort) { \t\t\t\t\t\t\tif($this.board[pos0]==-1 || pos0==poss[0]) { \t\t\t\t\t\t\t\tvar keep=true; \t\t\t\t\t\t\t\tfor(var i=0;i&lt;dirs.length;i++) \t\t\t\t\t\t\t\t\tif(!aGame.g.king180deg) { \t\t\t\t\t\t\t\t\t\tif((aGame.g.captureInstantRemove &&  \t\t\t\t\t\t\t\t\t\t\tcapts[i]==caught) || \t\t\t\t\t\t\t\t\t\t\t(aGame.g.captureInstantRemove==false &&  \t\t\t\t\t\t\t\t\t\t\tcapts[i]==caught &&  \t\t\t\t\t\t\t\t\t\t\t\t\tdirs[i]==dir0)) { \t\t\t\t\t\t\t\t\t\t\tkeep=false; \t\t\t\t\t\t\t\t\t\t\tbreak; \t\t\t\t\t\t\t\t\t\t} \t\t\t\t\t\t\t\t\t} else if(capts[i]==caught) { \t\t\t\t\t\t\t\t\t\tkeep=false; \t\t\t\t\t\t\t\t\t\tbreak;\t\t\t\t\t\t\t\t\t\t\t\t \t\t\t\t\t\t\t\t\t} \t\t\t\t\t\t\t\tif(keep) { \t\t\t\t\t\t\t\t\tnextPoss.push(pos0); \t\t\t\t\t\t\t\t\tnextCapts.push(caught); \t\t\t\t\t\t\t\t\tnextDirs.push(dir0); \t\t\t\t\t\t\t\t} \t\t\t\t\t\t\t\tpos0=aGame.g.Graph[pos0][dir]; \t\t\t\t\t\t\t} \t\t\t\t\t\t} else { \t\t\t\t\t\t\twhile($this.board[pos0]==-1 || pos0==poss[0]) { \t\t\t\t\t\t\t\tvar keep=true; \t\t\t\t\t\t\t\tfor(var i=0;i&lt;dirs.length;i++) \t\t\t\t\t\t\t\t\tif((aGame.g.captureInstantRemove && capts[i]==caught) || \t\t\t\t\t\t\t\t\t\t\t(aGame.g.captureInstantRemove==false &&  \t\t\t\t\t\t\t\t\t\t\tcapts[i]==caught && dirs[i]==dir0)) { \t\t\t\t\t\t\t\t\t\tkeep=false; \t\t\t\t\t\t\t\t\t\tbreak; \t\t\t\t\t\t\t\t\t} \t\t\t\t\t\t\t\tif(keep) { \t\t\t\t\t\t\t\t\tnextPoss.push(pos0); \t\t\t\t\t\t\t\t\tnextCapts.push(caught); \t\t\t\t\t\t\t\t\tnextDirs.push(dir0); \t\t\t\t\t\t\t\t} \t\t\t\t\t\t\t\tpos0=aGame.g.Graph[pos0][dir]; \t\t\t\t\t\t\t} \t\t\t\t\t\t} \t\t\t\t\t} \t\t\t\t} \t\t\t} \t\t\treturn true; \t\t}); \t\tif(nextPoss.length==0) { \t\t\tif(poss.length&gt;1) \t\t\t\t$this.mMoves.push({ pos: poss, capt: capts }); \t\t\tbreak; \t\t} \t\tif(!aGame.g.compulsoryCatch && poss.length&gt;1) { \t\t\tvar poss1=[]; \t\t\tfor(var i=0;i&lt;poss.length;i++) \t\t\t\tposs1.push(poss[i]); \t\t\tvar capts1=[]; \t\t\tfor(var i=0;i&lt;capts.length;i++) \t\t\t\tcapts1.push(capts[i]); \t\t\t$this.mMoves.push({ pos: poss1, capt: capts1 }); \t\t} \t\tif(nextPoss.length==1) { \t\t\tpos=nextPoss[0]; \t\t\tposs.push(pos); \t\t\tcapts.push(nextCapts[0]); \t\t\tdirs.push(nextDirs[0]); \t\t} else { \t\t\tfor(var i=0;i&lt;nextPoss.length;i++) { \t\t\t\tvar poss1=[]; \t\t\t\tfor(var j=0;j&lt;poss.length;j++) \t\t\t\t\tposs1.push(poss[j]); \t\t\t\tposs1.push(nextPoss[i]); \t\t\t\tvar capts1=[]; \t\t\t\tfor(var j=0;j&lt;capts.length;j++) \t\t\t\t\tcapts1.push(capts[j]); \t\t\t\tcapts1.push(nextCapts[i]); \t\t\t\tvar dirs1=[]; \t\t\t\tfor(var j=0;j&lt;dirs.length;j++) \t\t\t\t\tdirs1.push(dirs[j]); \t\t\t\tdirs1.push(nextDirs[i]); \t\t\t\tcatchPieces(nextPoss[i],poss1,capts1,dirs1,king); \t\t\t} \t\t\tbreak; \t\t} \t} } <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  \u041d\u0430\u043c \u0437\u0434\u043e\u0440\u043e\u0432\u043e \u043f\u043e\u0432\u0435\u0437\u043b\u043e \u0441 \u0442\u0435\u043c, \u0447\u0442\u043e \u043f\u0440\u0438\u0437\u043d\u0430\u043a \u0434\u0430\u043c\u043a\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442\u0441\u044f \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0438. \u0413\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 \u0445\u043e\u0434\u043e\u0432 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u043e\u0431\u0445\u043e\u0434 <b>\u0434\u0435\u0440\u0435\u0432\u0430<\/b> \u0432\u0441\u0435\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0441\u043e\u0441\u0442\u0430\u0432\u043d\u044b\u0445 \u0445\u043e\u0434\u043e\u0432. \u0415\u0441\u043b\u0438 \u0431\u044b \u043f\u0440\u0438\u0437\u043d\u0430\u043a \u0434\u0430\u043c\u043a\u0438 \u0438\u0437\u043c\u0435\u043d\u044f\u043b\u0441\u044f \u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u0435 \u0444\u0438\u0433\u0443\u0440\u044b, \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u0431\u044b \u0437\u0430\u0431\u043e\u0442\u0438\u0442\u044c\u0441\u044f \u043e\u0431 \u043e\u0442\u043a\u0430\u0442\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439, \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0445 \u0432 \u043c\u043e\u0434\u0435\u043b\u0438 \u0441\u0430\u043c\u0438\u043c \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u043c. \u0412 \u043f\u0440\u043e\u0442\u0438\u0432\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u043c\u043e\u0433\u043b\u0430 \u0431\u044b \u0432\u0435\u0441\u0442\u0438 \u0441\u0435\u0431\u044f <b>\u043d\u0435\u043f\u0440\u0435\u0434\u0441\u043a\u0430\u0437\u0443\u0435\u043c\u043e<\/b>. \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435, \u043a\u0430\u043a \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u0432 Axiom:<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">Custom Engine<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code>: Custom-Engine ( -- ) \t-10000 BestScore ! \t0 Nodes ! \t$FirstMove \tBEGIN \t\t$CloneBoard \t\tDUP $MoveString  \t\tCurrentMove! \t\tDUP .moveCFA EXECUTE \t\tMaxDepth Depth ! \t\t0 EvalCount ! \t\tBestScore @ 10000 turn-offset next-turn-offset Score \t\t0 5 $RAND-WITHIN + \t\tBestScore @ OVER &lt; \t\tIF \t\t\tDUP BestScore ! \t\t\tScore! \t\t\t0 Depth! \t\t\tDUP $MoveString BestMove! \t\tELSE \t\t\tDROP \t\tENDIF \t\t$DeallocateBoard \t\tNodes ++ \t\tNodes @ Nodes! \t\t$Yield \t\t$NextMove \t\tDUP NOT \tUNTIL \tDROP ; <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  \u0417\u0434\u0435\u0441\u044c, \u043c\u044b \u043a\u043e\u043f\u0438\u0440\u0443\u0435\u043c \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u0434\u043e\u0441\u043a\u0438 \u0432\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 (\u0432\u044b\u0437\u043e\u0432\u043e\u043c <b>$CloneBoard<\/b>), \u0437\u0430\u0442\u0435\u043c \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u00ab\u043b\u0443\u0447\u0448\u0438\u0439\u00bb \u0445\u043e\u0434, \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u0443\u0434\u0430\u043b\u044f\u0435\u043c \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0434\u043e\u0441\u043a\u0438 (<b>$DeallocateBoard<\/b>). \u0418 \u0442\u0430\u043a \u2014 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430! \u041a\u0430\u043a \u0431\u044b \u0442\u0430\u043c \u043d\u0438 \u0431\u044b\u043b\u043e, \u0442\u0435\u043f\u0435\u0440\u044c \u0432\u0441\u0451 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u043a\u0430\u043a \u0438 \u0431\u044b\u043b\u043e \u0437\u0430\u0434\u0443\u043c\u0430\u043d\u043e:<\/p>\n<p>  <iframe loading=\"lazy\" width=\"420\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/vW8jOS-Li60?feature=oembed\" frameborder=\"0\" allowfullscreen><\/iframe><\/p>\n<p>  \u041d\u0435 \u0441\u0442\u043e\u0438\u0442 \u0434\u0443\u043c\u0430\u0442\u044c, \u0447\u0442\u043e \u043d\u0430 \u044d\u0442\u043e\u043c \u0432\u0441\u0451 \u0437\u0430\u043a\u043e\u043d\u0447\u0435\u043d\u043e. \u0412 Jocly \u0435\u0449\u0451 \u0435\u0441\u0442\u044c, \u043d\u0430\u0434 \u0447\u0435\u043c \u043f\u043e\u043b\u043e\u043c\u0430\u0442\u044c \u0433\u043e\u043b\u043e\u0432\u0443! \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435, \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u043b\u0438 \u0432\u044b \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u043d\u0435 \u0442\u0430\u043a \u043d\u0430 \u044d\u0442\u043e\u043c \u0432\u0438\u0434\u0435\u043e \u0438\u0433\u0440\u044b \u0432 \u00abTurkish Draughts\u00bb?<\/p>\n<p>  <iframe loading=\"lazy\" width=\"420\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/w5FQPGAdKbY?feature=oembed\" frameborder=\"0\" allowfullscreen><\/iframe><\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041e\u0442\u0432\u0435\u0442<\/b><\/p>\n<div class=\"spoiler_text\">\u042d\u0442\u043e \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0437\u0430\u043f\u0443\u0442\u0430\u043d\u043d\u0430\u044f \u0442\u0435\u043c\u0430. \u0412 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u0448\u0430\u0448\u0435\u043a, \u0434\u0435\u0439\u0441\u0442\u0432\u0443\u0435\u0442 \u043f\u0440\u0430\u0432\u0438\u043b\u043e &quot;<a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A2%D1%83%D1%80%D0%B5%D1%86%D0%BA%D0%B8%D0%B9_%D1%83%D0%B4%D0%B0%D1%80\">\u0422\u0443\u0440\u0435\u0446\u043a\u043e\u0433\u043e \u0443\u0434\u0430\u0440\u0430<\/a>&quot;: \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0441\u043b\u043e\u0436\u043d\u043e\u0433\u043e \u0432\u0437\u044f\u0442\u0438\u044f, \u0444\u0438\u0433\u0443\u0440\u044b \u043f\u0440\u043e\u0442\u0438\u0432\u043d\u0438\u043a\u0430 \u043d\u0435 \u0443\u0431\u0438\u0440\u0430\u044e\u0442\u0441\u044f \u0441 \u0434\u043e\u0441\u043a\u0438 \u0441\u0440\u0430\u0437\u0443, \u0430 \u043b\u0438\u0448\u044c \u043f\u043e\u043c\u0435\u0447\u0430\u044e\u0442\u0441\u044f \u043a\u0430\u043a \u0432\u0437\u044f\u0442\u044b\u0435. \u0417\u0430\u0431\u0438\u0440\u0430\u044e\u0442\u0441\u044f \u043e\u043d\u0438 \u0432\u0441\u0435 \u0441\u0440\u0430\u0437\u0443, \u043f\u043e \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0438 \u0445\u043e\u0434\u0430. \u042d\u0442\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0443\u0435\u0442 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0435\u0437\u0434\u0435, \u043a\u0440\u043e\u043c\u0435\u2026 &quot;<a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A2%D1%83%D1%80%D0%B5%D1%86%D0%BA%D0%B8%D0%B5_%D1%88%D0%B0%D1%88%D0%BA%D0%B8\">\u0422\u0443\u0440\u0435\u0446\u043a\u0438\u0445 \u0448\u0430\u0448\u0435\u043a<\/a>&quot;! \u0412 \u00ab\u0422\u0443\u0440\u0435\u0446\u043a\u0438\u0445 \u0448\u0430\u0448\u043a\u0430\u0445\u00bb, \u0434\u0430\u043c\u043a\u0430 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u0433\u0440\u043e\u0437\u043d\u0443\u044e \u0441\u0438\u043b\u0443. \u0412\u044b\u043f\u043e\u043b\u043d\u044f\u044f \u0432\u0437\u044f\u0442\u0438\u0435, \u043e\u043d\u0430 \u00ab\u0440\u0430\u0441\u0447\u0438\u0449\u0430\u0435\u0442\u00bb \u0441\u0435\u0431\u0435 \u043c\u0435\u0441\u0442\u043e \u0434\u043b\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0445\u043e\u0434\u043e\u0432. \u0412\u0441\u0435\u0433\u043e \u043e\u0434\u043d\u0430 \u0434\u0430\u043c\u043a\u0430 <b>\u043c\u043e\u0436\u0435\u0442<\/b> \u0441\u044a\u0435\u0441\u0442\u044c \u0432\u0441\u044e \u0430\u0440\u043c\u0438\u044e \u043f\u0440\u043e\u0442\u0438\u0432\u043d\u0438\u043a\u0430 \u043e\u0434\u043d\u0438\u043c \u0445\u043e\u0434\u043e\u043c!<\/p>\n<p>  \u0421\u0443\u0434\u044f \u043f\u043e \u0432\u0438\u0434\u0435\u043e, \u0432 Jocly \u044d\u0442\u043e \u043d\u0435 \u0442\u0430\u043a. \u041d\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u043c \u0448\u0430\u0433\u0435 \u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u0434\u0430\u043c\u043a\u0430 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u0434\u043b\u0438\u043d\u043d\u0443\u044e \u0446\u0435\u043f\u043e\u0447\u043a\u0443 \u0432\u0437\u044f\u0442\u0438\u0439, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0435\u0439 \u043c\u0435\u0448\u0430\u0435\u0442 \u0440\u0430\u043d\u0435\u0435 \u0432\u0437\u044f\u0442\u0430\u044f \u0448\u0430\u0448\u043a\u0430, \u043d\u0435 \u0443\u0431\u0440\u0430\u043d\u043d\u0430\u044f \u0441 \u0434\u043e\u0441\u043a\u0438. \u041b\u044e\u0434\u0438, \u0434\u0430\u043b\u0451\u043a\u0438\u0435 \u043e\u0442 \u043d\u0430\u0441\u0442\u043e\u043b\u044c\u043d\u044b\u0445 \u0438\u0433\u0440, \u043c\u043e\u0433\u0443\u0442 \u0441\u0447\u0435\u0441\u0442\u044c \u044d\u0442\u043e \u043e\u0431\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u043e \u043d\u0435\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c, \u043d\u043e \u043d\u0438 \u043e\u0434\u0438\u043d \u0438\u0437 \u0441\u0435\u0440\u044c\u0451\u0437\u043d\u044b\u0445 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u0441\u0442\u0430\u043d\u0435\u0442 \u0438\u0433\u0440\u0430\u0442\u044c \u0432 \u00ab\u0422\u0443\u0440\u0435\u0446\u043a\u0438\u0435 \u0448\u0430\u0448\u043a\u0438\u00bb \u043f\u043e \u0442\u0430\u043a\u0438\u043c \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u043c! \u041f\u043e\u043a\u0430, \u044f \u043d\u0435 \u0437\u043d\u0430\u044e \u043a\u0430\u043a \u044d\u0442\u043e \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c. \u0422\u0440\u0435\u0431\u0443\u0435\u043c\u043e\u0435 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u043b\u043e\u0436\u043d\u0435\u0435, \u0447\u0435\u043c \u043a\u0430\u0441\u0442\u043e\u043c\u0438\u0437\u0430\u0446\u0438\u044f, \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u0430\u044f \u0432 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435. \u0412\u043d\u0435\u0441\u044f \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0432 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 \u0445\u043e\u0434\u043e\u0432, \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0434\u0430\u043c\u043a\u0443 \u00ab\u043d\u0435 \u0432\u0438\u0434\u0435\u0442\u044c\u00bb \u0440\u0430\u043d\u0435\u0435 \u0432\u0437\u044f\u0442\u044b\u0435 \u0448\u0430\u0448\u043a\u0438, \u043d\u043e, \u043a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442\u044c \u0434\u0430\u043c\u043a\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u043d\u0430 \u043f\u043e\u043b\u044f\u0445, \u0437\u0430\u043d\u044f\u0442\u044b\u0445 \u0432\u0437\u044f\u0442\u044b\u043c\u0438 \u0448\u0430\u0448\u043a\u0430\u043c\u0438, \u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435 \u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0445\u043e\u0434\u0430 \u043d\u0430 \u0442\u0430\u043a\u043e\u043c \u043f\u043e\u043b\u0435. \u042d\u0442\u043e \u0441\u043b\u043e\u0436\u043d\u043e \u0438 \u044f \u043d\u0435 \u0433\u043e\u0442\u043e\u0432 \u0441\u0435\u0439\u0447\u0430\u0441 \u044d\u0442\u0438\u043c \u0437\u0430\u043d\u0438\u043c\u0430\u0442\u044c\u0441\u044f, \u043d\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043a\u0442\u043e-\u0442\u043e \u0438\u0437 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435?  <\/div>\n<\/div>\n<p>  \u041c\u044b \u043f\u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u043b\u0438\u0441\u044c \u0441 \u0435\u0449\u0451 \u043e\u0434\u043d\u0438\u043c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u043c \u00ab\u0434\u0432\u0438\u0436\u043a\u043e\u043c\u00bb \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0430\u0431\u0441\u0442\u0440\u0430\u043a\u0442\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u043e\u043b\u044c\u043d\u044b\u0445 \u0438\u0433\u0440. \u0423 \u043d\u0435\u0433\u043e \u0435\u0441\u0442\u044c \u0441\u0432\u043e\u0438 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432 \u043d\u0451\u043c \u043d\u0435 \u043f\u0440\u043e\u0441\u0442. \u041d\u043e \u0443 \u043d\u0435\u0433\u043e \u0435\u0441\u0442\u044c \u0441\u0432\u043e\u0439, \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u043d\u043e \u0443\u0431\u0438\u0439\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u043a\u0438\u043b\u043b\u0435\u0440-\u0444\u0438\u0447! \u041e\u043d \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439, \u043a\u0440\u043e\u0441\u0441-\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435\u043d\u043d\u044b\u0439, Web-\u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0438, \u0441\u0430\u043c\u043e\u0435 \u0433\u043b\u0430\u0432\u043d\u043e\u0435, \u043e\u043d \u0432\u0441\u0451 \u0435\u0449\u0451 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c\u0438! \u041f\u0440\u043e\u0435\u043a\u0442 \u0436\u0438\u0432\u0451\u0442! \u0412\u043a\u043b\u044e\u0447\u0430\u0439\u0442\u0435\u0441\u044c \u0432 \u043d\u0435\u0433\u043e, \u0438, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u0436\u0438\u0442\u044c \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u0434\u043e\u043b\u044c\u0448\u0435 \u0447\u0435\u043c \u043b\u0435\u0433\u0435\u043d\u0434\u0430\u0440\u043d\u0430\u044f Zillions of Games.                 <\/p>\n<div class=\"clear\"><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habrahabr.ru\/post\/280334\/\"> https:\/\/habrahabr.ru\/post\/280334\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>       <img decoding=\"async\" align=\"left\" src=\"https:\/\/habrastorage.org\/files\/413\/c68\/18b\/413c6818b268431da04a72825c1c4fc9.PNG\"\/><b><i>\u2014\u00a0\u0423\u0447\u0435\u043d\u0438\u043a \u041f\u043e\u0447\u0442\u0430\u043b\u044c\u043e\u043d\u0430 \u0421\u0442\u044d\u043d\u043b\u0438 \u2014 \u043f\u0440\u043e\u0431\u043e\u0440\u043c\u043e\u0442\u0430\u043b \u0413\u0440\u043e\u0448 <br \/>  \u2014 \u0421\u0438\u0440\u043e\u0442\u0430, \u0441\u044d\u0440. \u041e\u0447\u0435\u043d\u044c \u043f\u0435\u0447\u0430\u043b\u044c\u043d\u0430\u044f \u0438\u0441\u0442\u043e\u0440\u0438\u044f\u2026 \u0425\u043e\u0440\u043e\u0448\u0438\u0439 \u043c\u0430\u043b\u044c\u0447\u0438\u043a, \u0435\u0441\u043b\u0438 \u0435\u0433\u043e \u043d\u0435 \u0437\u043b\u0438\u0442\u044c, <br \/>  \u2026 \u0435\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u043d\u0438\u043c\u0430\u0435\u0442\u0435, \u0447\u0442\u043e \u044f \u0438\u043c\u0435\u044e \u0432 \u0432\u0438\u0434\u0443.<br \/>  \u2014\u00a0\u042d\u2026 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e.\u00a0\u2014 \u0441\u043a\u0430\u0437\u0430\u043b \u041c\u043e\u043a\u0440\u0438\u0441\u0442 \u0438 \u043f\u043e\u0441\u043f\u0435\u0448\u043d\u043e \u043f\u043e\u0432\u0435\u0440\u043d\u0443\u043b\u0441\u044f \u043a \u0421\u0442\u044d\u043d\u043b\u0438 <br \/>  \u2014 \u0418\u0442\u0430\u043a, \u0437\u043d\u0430\u0435\u0448\u044c \u043a\u043e\u0435-\u0447\u0442\u043e \u043e \u0431\u0443\u043b\u0430\u0432\u043a\u0430\u0445?\u2026<br \/>  \u2014\u00a0\u041d\u0435\u0442\u0441\u044d\u0440!\u00a0\u2014 \u043e\u0442\u0432\u0435\u0442\u0438\u043b \u0421\u0442\u044d\u043d\u043b\u0438\u2026<br \/>  \u2014\u00a0\u041e \u0431\u0443\u043b\u0430\u0432\u043a\u0430\u0445 \u044f \u0437\u043d\u0430\u044e \u0432\u0441\u0451! &nbsp;<br \/>  &nbsp;<br \/>  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\u0441\u044d\u0440 \u0422\u0435\u0440\u0440\u0438 \u041f\u0440\u0430\u0442\u0447\u0435\u0442\u0442 &quot;<a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9E%D0%BF%D0%BE%D1%87%D1%82%D0%B0%D1%80%D0%B5%D0%BD%D0%B8%D0%B5\">\u041e\u043f\u043e\u0447\u0442\u0430\u0440\u0435\u043d\u0438\u0435<\/a>&quot;.<\/i><\/b>&nbsp;<\/p>\n<p>  \u0412 \u0434\u0430\u043b\u0451\u043a\u043e\u043c 1998 \u0433\u043e\u0434\u0443, <a href=\"http:\/\/www.zillions-of-games.com\/\">Zillions of Games<\/a> \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u043b\u0430 \u0444\u0443\u0440\u043e\u0440 \u0432 \u0441\u0440\u0435\u0434\u0435 \u043b\u044e\u0431\u0438\u0442\u0435\u043b\u0435\u0439 \u043d\u0430\u0441\u0442\u043e\u043b\u044c\u043d\u044b\u0445 \u0438\u0433\u0440, \u043d\u043e \u043e\u043d\u0430 \u043d\u0435 \u0431\u044b\u043b\u0430 \u043b\u0438\u0448\u0435\u043d\u0430 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u043e\u0432. \u0413\u043b\u0430\u0432\u043d\u044b\u043c \u0435\u0451 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u043e\u043c \u044f\u0432\u043b\u044f\u043b\u0430\u0441\u044c \u0437\u0430\u043a\u0440\u044b\u0442\u043e\u0441\u0442\u044c. \u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0438\u0433\u0440\u0430\u0442\u044c \u0432\u043e \u0447\u0442\u043e-\u0442\u043e \u0441\u0432\u0435\u0440\u0445 \u043d\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 48 \u0438\u0433\u0440, \u0432\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u0432 \u0434\u0435\u043c\u043e-\u043a\u043e\u043c\u043f\u043b\u0435\u043a\u0442, \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u043b\u043e\u0441\u044c \u043f\u043b\u0430\u0442\u0438\u0442\u044c \u0434\u0435\u043d\u044c\u0433\u0438 \u0437\u0430 \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u044e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b. \u0411\u044b\u043b\u043e \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c ZoG \u043d\u0430 \u0447\u0451\u043c-\u0442\u043e \u043a\u0440\u043e\u043c\u0435 Windows (\u0441 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u0432\u0435\u0440\u0441\u0438\u044f\u043c\u0438 \u044d\u0442\u043e\u0439 \u041e\u0421 \u0432\u043f\u043e\u043b\u043d\u0435 \u043c\u043e\u0433\u043b\u0438 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u0443\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b). \u0421\u0435\u0442\u0435\u0432\u043e\u0439 \u0440\u0435\u0436\u0438\u043c \u0431\u044b\u043b, \u043d\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u0438\u043b\u0438 \u0447\u0435\u0440\u0435\u0437 \u043c\u043e\u0434\u0435\u043c, Web \u043d\u0435 \u043f\u043e\u0434\u0440\u0430\u0437\u0443\u043c\u0435\u0432\u0430\u043b\u0441\u044f. \u0421 \u044d\u0442\u0438\u043c \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435\u043b\u044c\u0437\u044f \u043f\u043e\u0434\u0435\u043b\u0430\u0442\u044c, \u044d\u0442\u043e <b>\u0437\u0430\u043a\u0440\u044b\u0442\u044b\u0439<\/b> \u043f\u0440\u043e\u0434\u0443\u043a\u0442! \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u0432 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f, \u043e\u043d \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f. \u042f \u0434\u0443\u043c\u0430\u044e, \u0447\u0442\u043e \u043c\u043d\u043e\u0433\u0438\u0435 \u0431\u0443\u0434\u0443\u0442 \u0440\u0430\u0434\u044b \u0443\u0441\u043b\u044b\u0448\u0430\u0442\u044c, \u0447\u0442\u043e \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u0430, \u043b\u0438\u0448\u0451\u043d\u043d\u0430\u044f \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0445 \u0432\u044b\u0448\u0435 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u043e\u0432. \u0417\u043d\u0430\u043a\u043e\u043c\u044c\u0442\u0435\u0441\u044c, \u044d\u0442\u043e <a href=\"https:\/\/www.jocly.com\/#\/about\">Jocly<\/a>.  <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-277339","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/277339","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=277339"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/277339\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=277339"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=277339"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=277339"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}