بازی Cookie Clicker در نگاه اول ایدهای بسیار ساده دارد: روی یک کوکی بزرگ کلیک میکنید، کوکی بیشتری به دست میآورید و با خرید ساختمانها و ارتقاهای مختلف، سرعت تولید کوکی را افزایش میدهید. اما هرچه بیشتر وارد بازی شوید، متوجه میشوید با دنیایی بزرگ، عجیب و پر از شوخیهای ریزودرشت روبهرو هستید؛ دنیایی که ترجمهکردنش اصلاً به سادگی کلیککردن روی یک کوکی نیست!
مدتی بود که دوست داشتم Cookie Clicker را با زبان فارسی تجربه کنم. ترجمهٔ رسمی فارسی برای بازی وجود نداشت و استفاده از فونت و چیدمان انگلیسی نیز باعث میشد ساخت یک فارسیساز ساده کافی نباشد. در نتیجه تصمیم گرفتم خودم دستبهکار شوم و مودی بسازم که نهتنها نوشتهها را ترجمه کند، بلکه ظاهر بازی را نیز تا جای ممکن با زبان فارسی هماهنگ کند.
نتیجهٔ این تصمیم، مود Persian Translation and Font شد؛ یک فارسیساز کامل برای نسخهٔ استیم Cookie Clicker که آن را در Steam Workshop منتشر کردم.
نصب مستقیم از استیم: (نیاز هست ابتدا بازی را خریداری کرده باشید.)
https://steamcommunity.com/sharedfiles/filedetails/?id=3768250958
نصب از طریق گیتهاب با آموزشه نصب:
https://github.com/mahdimotamedi/cookie-clicker-persian-mod#installation
ترجمهٔ یک بازی بهظاهر ساده
قبل از شروع پروژه تصور میکردم بیشتر کار شامل ترجمهٔ چند منو، نام ساختمانها و توضیحات ارتقاها خواهد بود. خیلی زود مشخص شد که حجم متنهای Cookie Clicker بسیار بیشتر از چیزی است که در ظاهر بازی دیده میشود.
نسخهٔ فعلی فارسیساز برای بازی نسخهٔ ۲٫۰۵۳ آماده شده و شامل ترجمهٔ بیش از ۳۰۶۷ کلید اصلی است. علاوه بر منوها و متنهای پایه، بخشهای مختلفی مانند ارتقاها، دستاوردها، فروشگاه، مینیگیمها، پیامها و خبرهای متحرک بالای صفحه نیز ترجمه شدهاند.
خبرهای بالای صفحه یکی از جالبترین بخشهای کار بودند. این خبرها معمولاً کوتاه، طنزآمیز و گاهی کاملاً عجیب هستند. ترجمهٔ تحتاللفظی بسیاری از آنها نتیجهٔ خوبی نمیداد؛ بنابراین لازم بود ابتدا منظور شوخی یا فضای جمله را درک کنم و بعد معادل فارسی روانی برای آن پیدا کنم.
در واقع، این پروژه فقط جایگزینکردن کلمات انگلیسی با کلمات فارسی نبود. باید تلاش میکردم لحن عجیب و بامزهٔ بازی نیز در نسخهٔ فارسی حفظ شود.
پیدا کردن معادل برای اصطلاحات دنیای Cookie Clicker
یکی از چالشهای مهم، انتخاب معادل برای اصطلاحات اختصاصی بازی بود. بعضی کلمات معادل مستقیم و شناختهشدهای در فارسی نداشتند. برای نمونه، در ترجمهٔ مود از معادلهایی مانند «قندانه» برای Sugar Lump، «تراشهٔ آسمانی» برای Heavenly Chip، «چروکنده» برای Wrinkler و «آخرالزمان مادربزرگها» برای Grandmapocalypse استفاده شده است.
انتخاب چنین عبارتهایی به آزمونوخطای زیادی نیاز داشت. یک ترجمه ممکن بود از نظر لغوی درست باشد، اما هنگام نمایش در بازی طبیعی به نظر نرسد یا بیش از حد طولانی باشد. بعضی متنها نیز متغیرهایی مانند عدد، نام ساختمان یا مقدار تولید داشتند که باید بدون خرابشدن ساختار کد ترجمه میشدند.
در طول کار بارها بازی را اجرا کردم، بخشهای مختلف را دیدم و ترجمههایی را که روی صفحه مناسب نبودند تغییر دادم. دیدن یک عبارت داخل فایل ترجمه با دیدن همان عبارت در رابط واقعی بازی تفاوت زیادی دارد.
راستبهچپکردن رابط کاربری
مهمترین چالش فنی پروژه، پشتیبانی از زبان راستبهچپ بود.
رابط Cookie Clicker در اصل برای زبانهای چپبهراست طراحی شده است. حتی اگر تمام متنها را به فارسی ترجمه کنیم، بدون تغییر چیدمان، نوشتهها نامرتب دیده میشوند و ترکیب متن فارسی با اعداد، قیمتها و آیکونها ممکن است خوانایی مناسبی نداشته باشد.
برای حل این مشکل، بخشهای مختلف رابط مانند منوها، توضیحات، پنجرههای پیام، فروشگاه و فهرست آیتمها را راستبهچپ کردم. برای قسمتهایی که متن فارسی و عدد در کنار یکدیگر قرار میگیرند نیز تنظیمات جداگانهای در نظر گرفتم تا ترتیب نمایش قیمتها و مقادیر بههم نریزد.
این بخش از کار بیشترین آزمونوخطا را داشت. تغییر عمومی جهت صفحه همیشه جواب نمیداد، زیرا بعضی اجزای بازی باید ساختار قبلی خود را حفظ میکردند. در نتیجه لازم بود هر بخش بهصورت جداگانه بررسی شود و فقط عناصری که واقعاً به چیدمان راستبهچپ نیاز داشتند تغییر کنند.
اضافهکردن فونت فارسی
فونت نیز بخش مهم دیگری از فارسیسازی بود. فونتهای اصلی بازی برای نمایش انگلیسی طراحی شدهاند و استفاده از فونت پیشفرض سیستم، ظاهر یکپارچهای ایجاد نمیکرد.
برای خواناترشدن نوشتهها، فونت IRANSansX را با وزنهای مختلف به مود اضافه کردم. به این ترتیب متنهای معمولی، عنوانها و بخشهای ضخیم رابط میتوانند با وزن مناسب نمایش داده شوند و ظاهر کلی نسخهٔ فارسی منظمتر باشد.
اضافهکردن فونت فقط به معرفی یک فایل محدود نمیشد. باید مسیر فایلها در نسخهٔ نصبشده از ورکشاپ درست باشد و فونت بدون تأثیر منفی بر اندازه و جایگاه اجزای رابط بارگذاری شود. برخی نوشتهها پس از تغییر فونت بزرگتر یا کوچکتر از حالت اولیه دیده میشدند و به اصلاح فاصلهٔ خطوط و چیدمان نیاز داشتند.
مادربزرگهای ایرانی وارد بازی میشوند!
یکی از بخشهای بامزهٔ Cookie Clicker، مادربزرگهایی هستند که بازیکن برای تولید کوکی استخدام میکند. بازی به هر مادربزرگ یک نام تصادفی میدهد.
برای اینکه نسخهٔ فارسی کمی بومیتر و صمیمیتر شود، فهرستی از نامهای ایرانی مانند فاطمه، زهرا، مریم، پروین، مهری، نرگس، توران، گوهر، بیبیجان و ننهجان را به مود اضافه کردم. حالا در نسخهٔ فارسی، مادربزرگهای بازی نیز نامهای آشناتری دارند.
این تغییر کوچک از نظر فنی ضروری نبود، اما به نظرم همین جزئیات هستند که یک ترجمه را از جایگزینی سادهٔ متنها جدا میکنند و به آن هویت میدهند.
ساختار مود
مود از چند بخش اصلی تشکیل شده است. فایل lang.js ترجمههای فارسی را در خود نگه میدارد، فایل main.js مسئول ثبت مود، فعالکردن زبان فارسی، بارگذاری استایلها و اعمال تغییرات لازم در بازی است و فایل fonts.css فونت و تنظیمات رابط راستبهچپ را مدیریت میکند.
اطلاعاتی مانند نام مود، نویسنده، نسخهٔ بازی، نسخهٔ مود، فایل زبان و امکان دریافت دستاوردهای استیم نیز داخل فایل info.txt تعریف شدهاند. فعالبودن دستاوردهای استیم برایم مهم بود، زیرا نمیخواستم بازیکن بهخاطر استفاده از ترجمهٔ فارسی از دریافت Achievementها محروم شود.
کد پروژه را نیز بهصورت عمومی در گیتهاب قرار دادم تا علاقهمندان بتوانند ساختار مود را ببینند، مشکلات احتمالی را گزارش کنند یا در بهترشدن ترجمه مشارکت داشته باشند.
نتیجهٔ پروژه
فارسیساز Cookie Clicker یکی از آن پروژههایی بود که در ابتدا کوچک به نظر میرسید، اما هرچه جلوتر رفتم جزئیات بیشتری پیدا کرد. ترجمهٔ هزاران عبارت، هماهنگکردن متن راستبهچپ با رابط بازی، اضافهکردن فونت فارسی، بررسی فروشگاه و مینیگیمها و در نهایت آمادهسازی بستهٔ قابل انتشار در ورکشاپ، تجربهای آموزنده و جذاب بود.
دیدن اینکه یک بازی کاملاً انگلیسی با منوها، اصطلاحات و حتی نام مادربزرگهای فارسی اجرا میشود، حس بسیار خوبی دارد. امیدوارم این مود باعث شود بازیکنان فارسیزبان بیشتری بتوانند جزئیات، شوخیها و دنیای عجیب Cookie Clicker را راحتتر تجربه کنند.
این پروژه همچنان جای بهترشدن دارد و بازخورد کاربران میتواند در اصلاح ترجمهها، پیداکردن ایرادهای رابط و هماهنگکردن مود با نسخههای آیندهٔ بازی بسیار مؤثر باشد.
گاهی یک پروژه با یک سؤال ساده شروع میشود: «چرا این بازی فارسی نیست؟»
و گاهی پاسخ همان سؤال، به ترجمهٔ چند هزار عبارت، دهها بار اجرای دوبارهٔ بازی و انتشار اولین مود در Steam Workshop ختم میشود.



