بومیسازی بازی با AI
Updated 2026-09-05
یک مسیر کامل بازیکن را ترجمه کنید، نه فهرستی جدا از رشتهها. با شناسههای پایدار شروع کنید، معنای gameplay را حفظ کنید و نتیجه را داخل بازی خروجیگرفتهشده بررسی کنید.
رشتههایی را استخراج کنید که بازیکنان واقعاً میبینند
با یک مسیر کامل شروع کنید: عنوان، تنظیمات، آموزش، بازخورد gameplay، برد یا باخت و شروع دوباره. پیام خطا و درخواست ذخیره را هم اضافه کنید، نه فقط دیالوگ را. برای هر پیام کلیدی پایدار بدهید تا اصلاحها بدون حدسزدن اینکه مترجم کدام عبارت انگلیسی یکسان را منظور کرده، اعمال شوند.
زمینه را کنار متن نگه دارید: صفحه، گوینده، عمل، لحن و محدودیت فضا. واژه charge میتواند به قیمت، حمله یا انرژی ذخیرهشده اشاره کند. یک فیلد زمینه کوتاه جلوی گسترش این ابهام در batch را میگیرد. شناسهها را از نثر جدا نگه دارید و فقط بهدلیل تغییر عبارت انگلیسی، کلیدها را تغییر نام ندهید.
یک جدول منبع تمیز در Godot آماده کنید
Godot ورودی ترجمه CSV با کلیدهای یکتا و ستونهای زبان را مستند میکند. ستونی که با زیرخط شروع شود میتواند نظرها را نگه دارد. مثال یک fixture اصلی انگلیسی است؛ ستونهای locale هدف را پس از بررسی ترجمه اضافه کنید. از ویرایشگر یا parser آگاه از CSV استفاده کنید تا نقلقولها، کاماها و شکست خط معتبر بمانند.
فهرست اصطلاحات کنترلها، آیتمها و مکانیکهای تکرارشونده را نگه دارید. به مترجم بگویید کدام اصطلاحها نام هستند و کدام را میتوان تطبیق داد. revision منبع را پیش از batch ثابت کنید و تغییرهای بعدی را بر اساس کلید پیگیری کنید. این کار اجازه میدهد پیامهای تغییرکرده را بررسی کنید، نه اینکه هر خط پذیرفتهشده را دوباره تولید کنید.
keys,en,_context
MENU_START,Start game,Title screen action
MENU_RESTART,Restart round,Shown after win or loss
SCORE_TOTAL,Score: {score},HUD; preserve the named placeholder
SAVE_FAILED,Progress could not be saved.,Error after a failed saveplaceholderها و واقعیتهای gameplay را محافظت کنید
متنی را که میتواند تغییر کند از مقادیری که بازی در زمان اجرا وارد میکند جدا کنید. Godot رشتههای ترجمهشده با آرگومانهای قالب نامگذاریشده را پشتیبانی میکند تا مترجم ترتیب جمله را تغییر دهد و متغیرها را حفظ کند. این مثال فرض میکند منبع ترجمه تنظیم شده و score_label یک مرجع Label موجود است.
مجموعه placeholder، کلیدهای لازم، اعداد داخل دستورها و markup مورد استفاده پروژه را اعتبارسنجی کنید. از یک بازبین انسانی بخواهید معنا را مستقل بررسی کند. ترجمهای که از نظر ساختار معتبر است هنوز میتواند دستور کنترل را برعکس یا هدف را تغییر دهد. بررسی ساختاری و تأیید زبانی را نتیجههای جدا نگه دارید تا هر شکست به بازبین درست برسد.
score_label.text = tr("SCORE_TOTAL").format({"score": score})بر اساس زمینه ترجمه کنید و پیامهای دشوار را بررسی کنید
صفحهها یا گفتوگوهای مرتبط را با هم batch کنید تا مدل اصطلاحات و صدا را حفظ کند. زمینه منبع، glossary تأییدشده، tokenهای محافظتشده و مخاطب موردنظر را همراه هر batch بدهید. خروجی ساختاریافته با کلیدهای شناسه اصلی بخواهید و پیش از ادغام، ورودیهای مفقود یا غیرمنتظره را رد کنید.
مکانیکهای مبهم، طنز، صدای شخصیت و متن حساس فرهنگی را به بازبین زبانی شایسته بسپارید. برچسب کوتاه دکمهها اغلب به قضاوت بیشتری از متن توصیفی بلند نیاز دارد، چون فضا کم است. اصلاحهای بازبین را در صورت مناسب بهروزرسانی اصطلاح یا زمینه تبدیل کنید تا batch بعدی همان سوءبرداشت را تکرار نکند.
ترجمهها را import و ثبت کنید
پس از import، منابع ترجمه موردنظر را در Godot، در Project Settings، Localization، Translations بررسی کنید. صرفاً وجود فایل CSV را نشانه ثبت موفق ندانید. مستندات نسخه موتور خود را ببینید و فهرست واقعی منابع را بررسی کنید.
زبان را در پروژه در حال اجرا عوض کنید و صفحههای دارای کلیدهای جدید را ببینید. اگر کلید عیناً نمایش داده شد، املای کلید، ثبت منبع و locale انتخابی را بررسی کنید. اگر متن ناپدید شد، فونت و پوشش glyph لازم را بررسی کنید. مجوز فونت و گزینههای fallback را با رکوردهای دارایی نگه دارید، چون ترجمه درست وقتی build نتواند آن را render کند بیفایده است.
پیش از ترجمه همهچیز، layout را تحت فشار بگذارید
از ابزار pseudolocalization در Godot استفاده کنید تا فرضهای layout را زود آشکار کنید. سپس رشتههای واقعی و بررسیشده زبان هدف را در همان صفحهها آزمایش کنید. برچسبهای طولانی، چند خط، ترتیب راستبهچپ، نشانهگذاری و اعداد ترکیبی میتوانند مشکلاتی را نشان دهند که تصویر زبان منبع نشان نمیدهد.
کنترلها را در کوچکترین اندازه پنجره پشتیبانیشده و با روش ورودی موردنظر بررسی کنید. مطمئن شوید برچسبها خوانا بمانند، کنترلهای همسایه را نپوشانند و بازیکن هنوز بتواند عملهای اصلی را انجام دهد. پیشروی دیالوگ و زمانبندی زیرنویس را در بازی تست کنید، نه فقط در spreadsheet. برای مسائل نیازمند قضاوت بصری، تصویرهایی از build واقعی حفظ کنید.
متن فروشگاه و پشتیبانی زبان را با بازی هماهنگ نگه دارید
توضیحات فروشگاه را از فهرست قابلیت تأییدشده ترجمه کنید. متن رابط، زیرنویس و پشتیبانی صوتی را جداگانه دنبال کنید و نمایش فروشگاه را با چیزی که build واقعاً ارائه میدهد هماهنگ کنید. اجازه ندهید توضیح بومیشده جذاب، حالت، پلتفرم یا قابلیت دسترسپذیریای را وعده دهد که منتشر نشده است.
Steam گردشکار بومیسازی و تنظیمات زبان خودش را دارد. پیش از ارسال، آنها را با بسته انتشار بازی تطبیق دهید. ترجمههای قابلمشاهده برای بازیکن که با AI کمک گرفتهاند را برای بررسی Content Survey جاری در فهرست مشارکت محصول قرار دهید. انتشار فروشگاه از آمادهکردن فایل بومیسازی جداست؛ مسئولیت بررسی و انتشار را صریح نگه دارید.
یک مسیر بومیشده را بپذیرید و سپس تغییرات را نگه دارید
برای هر locale هدف، مسیر انتخابی بازیکن را از یک دور کامل عبور دهید و طبق طراحی با حفظ ترجیح زبان دوباره اجرا کنید. کلیدهای مفقود، خطاهای قالب، مسائل بصری و اصلاحهای معنایی را در برابر revision منبع و build ثبت کنید. فقط وقتی بازبینهای مربوط یافتهها را حل کردند locale را بپذیرید.
در بهروزرسانیهای بعدی، ترجمههایی را که معنای منبعشان تغییر کرده بیاعتبار کنید و ورودیهای تأییدشده بدون تغییر را نگه دارید. این راهنما مراحل مبتنی بر مستندات و fixtureهای نمونه ارائه میکند و نتیجه اجرای بومیسازی گزارش نمیدهد. پیش از گسترش به اسکریپت کامل یا زبانهای بیشتر، همین مسیر کوچک را دامنه نخست اعتبارسنجی قرار دهید.
پرسشهای پرتکرار
آیا باید تمام اسکریپت بازی را در یک درخواست بفرستم؟
با صفحهها یا صحنههای منسجم و glossary مشترک شروع کنید. کلیدهای برگشتی را اعتبارسنجی و پیش از بزرگتر کردن batch یک مسیر کامل بازیکن را بررسی کنید.
آیا مدل میتواند کلیدهای ترجمه را تغییر نام دهد؟
کلیدها را پایدار و جدا از متن قابلویرایش نگه دارید. فقط بهعنوان مهاجرت عمدی کد و محتوا نام آنها را تغییر دهید، نه بهعنوان اثر جانبی ترجمه.
چرا بازی بهجای ترجمه کلید نشان میدهد؟
locale انتخابی، کلید دقیق و منابع ترجمه ثبتشده را بررسی کنید. وجود فایل CSV در پروژه برای تشخیص کافی نیست.
آیا pseudolocalization کیفیت ترجمه را ثابت میکند؟
به آشکارکردن مشکلات layout و بومیسازی کمک میکند. معنای واقعی زبان هدف همچنان به بررسی زبانی و آزمون درون بازی نیاز دارد.
آیا ادعاهای زبان فروشگاه باید از spreadsheet ترجمه پیروی کنند؟
آنها باید از build آزمایششده پیروی کنند. رابط، زیرنویس و صدا را جدا دنبال و با تنظیمات فروشگاه تطبیق دهید.