{"id":616,"date":"2020-07-16T21:32:02","date_gmt":"2020-07-16T15:32:02","guid":{"rendered":"http:\/\/jmalmenzar.com\/blog\/?p=616"},"modified":"2020-07-16T21:37:15","modified_gmt":"2020-07-16T15:37:15","slug":"translate-your-gb-studio-game-into-russian","status":"publish","type":"post","link":"http:\/\/jmalmenzar.com\/blog\/translate-your-gb-studio-game-into-russian\/","title":{"rendered":"Translate your GB Studio game into Russian"},"content":{"rendered":"\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"300\" src=\"http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/banner_ruso_gbstudio-1.jpg\" alt=\"\" class=\"wp-image-628\" srcset=\"http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/banner_ruso_gbstudio-1.jpg 640w, http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/banner_ruso_gbstudio-1-300x141.jpg 300w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"> After English, French and German I had the opportunity to translate <strong><a href=\"https:\/\/tfc.itch.io\/art-school-pocket\">Art School Pocket<\/a><\/strong> into Russian. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\"> The first problem I had was to represent the Cyrillic characters. The most immediate solution would be to write directly in Cyrillic and see what correspondence appears with regard to the character map that comes by default with the <strong><a href=\"https:\/\/www.gbstudio.dev\/\">GB Studio<\/a><\/strong>, but soon we will see that nothing will come out when running the game. <\/p>\n\n\n\n<!--more-->\n\n\n\n<p class=\"wp-block-paragraph\"> This is due to the fact that when working on Windows we use a higher encoding than the 8-bit one, the ASCII, which is the one used by GB Studio. Therefore we will need another one, also 8 bits, but that contains cyrillic characters, like KOI8. I modified the default character map by replacing the Russian letters in their corresponding spaces. You can download it from <a href=\"https:\/\/drive.google.com\/file\/d\/1stUcSRTTgYlMYmkwpJuIk97SiLZiIxTY\/view?usp=sharing\">this link<\/a>. <\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"331\" src=\"http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/ascii_koi8.png\" alt=\"\" class=\"wp-image-602\" srcset=\"http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/ascii_koi8.png 640w, http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/ascii_koi8-300x155.png 300w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Even if we try to write with Cyrillic characters now, it will still not appear in the game as we do not have Russian added to the list of Windows languages. For this specific case I have used a text editor that allows us to save the file using the coding we want, such as the <strong><a href=\"https:\/\/www.sublimetext.com\/\">Sublime Text<\/a><\/strong>. <\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"300\" src=\"http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/sublime-text-1.png\" alt=\"\" class=\"wp-image-620\" srcset=\"http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/sublime-text-1.png 640w, http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/sublime-text-1-300x141.png 300w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"560\" src=\"http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/sublime_text_guardar-1.jpg\" alt=\"\" class=\"wp-image-622\" srcset=\"http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/sublime_text_guardar-1.jpg 640w, http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/sublime_text_guardar-1-300x263.jpg 300w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">We write the text in Russian, preferably accompanied by its translation to have a reference, and save the file using KOI8 coding. Be careful with some punctuation marks such as quotes, brackets, etc. that may give errors when saving. <\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"200\" src=\"http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/sublime_text_error.png\" alt=\"\" class=\"wp-image-606\" srcset=\"http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/sublime_text_error.png 640w, http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/sublime_text_error-300x94.png 300w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Now we open the text file with the notepad and a nonsense will appear in front of us. These are the ASCII characters that correspond to the same position as the Cyrillic ones in KOI8 since Windows uses the UTF, which is a superior encoding. <\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"200\" src=\"http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/bloc-de-notas-1.png\" alt=\"\" class=\"wp-image-623\" srcset=\"http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/bloc-de-notas-1.png 640w, http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/bloc-de-notas-1-300x94.png 300w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">But copying this gibberish to the dialog box in GB Studio, together with <strong>the modified character set<\/strong>, will make the texts finally appear correctly in Cyrillic when we run the game. <\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"300\" src=\"http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/gbstudio-cuadro-texto-1.jpg\" alt=\"\" class=\"wp-image-625\" srcset=\"http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/gbstudio-cuadro-texto-1.jpg 640w, http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/gbstudio-cuadro-texto-1-300x141.jpg 300w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"479\" height=\"430\" src=\"http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/captura-1.png\" alt=\"\" class=\"wp-image-626\" srcset=\"http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/captura-1.png 479w, http:\/\/jmalmenzar.com\/blog\/wp-content\/uploads\/captura-1-300x269.png 300w\" sizes=\"auto, (max-width: 479px) 100vw, 479px\" \/><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">It is a solution that solves the problem, not as elegant as one would like, but one that is simple to perform for someone with no programming background.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Thanks to my good friend and co-founder of <strong><a href=\"http:\/\/theflyingcortijo.jmalmenzar.com\/\">The Flying Cortijo<\/a><\/strong>, <strong>Francisco Su\u00e1rez<\/strong>, who has advised and explained me everything about this mess of coding and characters.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>After English, French and German I had the opportunity to translate Art School Pocket into Russian. The first problem I had was to represent the Cyrillic characters. The most immediate solution would be to write directly in Cyrillic and see what correspondence appears with regard to the character map that comes by default with the&hellip;&nbsp;<a href=\"http:\/\/jmalmenzar.com\/blog\/translate-your-gb-studio-game-into-russian\/\" rel=\"bookmark\">Leer m\u00e1s &raquo;<span class=\"screen-reader-text\">Translate your GB Studio game into Russian<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","footnotes":""},"categories":[12,19],"tags":[],"class_list":["post-616","post","type-post","status-publish","format-standard","hentry","category-tutoriales","category-videojuegos"],"_links":{"self":[{"href":"http:\/\/jmalmenzar.com\/blog\/wp-json\/wp\/v2\/posts\/616","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/jmalmenzar.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/jmalmenzar.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/jmalmenzar.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/jmalmenzar.com\/blog\/wp-json\/wp\/v2\/comments?post=616"}],"version-history":[{"count":5,"href":"http:\/\/jmalmenzar.com\/blog\/wp-json\/wp\/v2\/posts\/616\/revisions"}],"predecessor-version":[{"id":648,"href":"http:\/\/jmalmenzar.com\/blog\/wp-json\/wp\/v2\/posts\/616\/revisions\/648"}],"wp:attachment":[{"href":"http:\/\/jmalmenzar.com\/blog\/wp-json\/wp\/v2\/media?parent=616"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/jmalmenzar.com\/blog\/wp-json\/wp\/v2\/categories?post=616"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/jmalmenzar.com\/blog\/wp-json\/wp\/v2\/tags?post=616"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}