ترجمة المحتوى الديناميكي تلقائيًا

*This content is translated using AI (Beta) and may contain errors. To view this page in English, click here.

تكتشف سير العمل القياسية لترجمة المحتوى السلاسل الموجودة في لعبتك بناءً على مدى تكرار عرضها من قبل اللاعبين وتضيفها إلى جدولLocalization الخاص بك للترجمة. قد تفوت السلاسل غير الشائعة و/أو السلاسل الناتجة أثناء اللعب، مثل النصوص المولدة ديناميكيًا أو النصوص التي أنشأها اللاعبون. يمكنك استخدام واجهة برمجة التطبيقات لترجمة النصوص لإنشاء ترجمات لهذه السلاسل في الوقت الفعلي، مما يضمن أن تكون لعبتك مترجمة بالكامل.

ترجمة النص إلى لغة اللاعب

لترجمة النص إلى لغة اللاعب، مرر Player.LocaleId كرمز لغة الهدف. أدناه مثال على كيفية الحصول على معرف locale للاعب في نص العميل ثم تمريره إلى Script في ServerScriptService لإجراء طلب الترجمة.

  • واجهة برمجة تطبيقات الترجمة هي Open Cloud API، مما يعني أنك بحاجة إلى مسار لإجراء طلب. في هذه الحالة، تحتاج إلى معرف الكون، والذي يمكن العثور عليه في قائمة الخيارات في مربع اللعبة على Creator Hub.
  • يجب عليك أيضًا تضمين حزمة عميل Open Cloud في لعبتك؛ يتطلب النص الخادم ذلك.
نص العميل

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local httpRequestFunction = ReplicatedStorage:WaitForChild("TranslateTextFunction")
-- النص المراد ترجمته
local textToTranslate = "هذا هو النص التجريبي لترجمته"
-- الحصول على locale للاعب
local Players = game:GetService("Players")
local player = Players.LocalPlayer
-- الحصول على معرف locale للاعب المحلي أو تعيينه إلى أي سلسلة locale مدعومة
local locale = player.LocaleId
local translatedText = httpRequestFunction:InvokeServer(textToTranslate, locale)
print("النص المترجم: ", translatedText)
نص الخادم في ServerScriptService

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local ServerScriptService = game:GetService("ServerScriptService")
local oc = require(ServerScriptService.OpenCloud.V2)
-- العثور على https://create.roblox.com/dashboard/creations في قائمة الخيارات لمربع اللعبة
local universeID = <your_universe_id>
-- إنشاء RemoteFunction
local remoteFunction = Instance.new("RemoteFunction")
remoteFunction.Name = "TranslateTextFunction"
remoteFunction.Parent = ReplicatedStorage
remoteFunction.OnServerInvoke = function(player, text, locale, uni)
print(player.Name .. " طلب ترجمة النص: " .. text .. " إلى locale: " .. locale)
-- إعداد طلب الترجمة
local request : oc.TranslateTextRequest = {
path = oc:UniversePath(universeID),
text = text,
-- رموز اللغة المستهدفة تدعم قائمة من عدة لغات للترجمة.
-- هنا نقوم بتمرير لغة واحدة فقط:
-- اللغة المستخرجة من اللاعب في النص المحلي
target_language_codes = {locale}
}
local result = oc:TranslateText(request)
if result.Error == nil then
return result.Response.translations[locale] -- بفرض أن translations[locale] تحتوي على النص المترجم
else
return "خطأ: " .. result.Error.message
end
end

الاختبار

واجهة برمجة تطبيقات الترجمة في الوقت الفعلي تدعم حاليًا فقط مصادقة RCC. نتيجة لذلك، يجب عليك نشر كودك إلى مثيل اختبار من أجل اختبار واجهة برمجة التطبيقات من الاستوديو. استخدم الاختبار التعاوني لنشر النص إلى مثيل اختبار وتجربة تغييراتك.

مرجع واجهة برمجة التطبيقات للترجمة

معلمات طلب الواجهة

اسم المعلمةالنوعالوصف
pathstringمسار الكون. مطلوب.
textstringالنص المراد ترجمته. مطلوب.
source_language_codestringرمز اللغة IETF BCP-47 الذي يمثل لغة النص المدخل. إذا لم يتم تقديمه، سيقوم النظام بالكشف تلقائيًا عن اللغة المصدر.
target_language_codesArray<string>قائمة من رموز اللغات المستهدفة بتنسيق IETF BCP-47 للترجمة.

حقول استجابة واجهة برمجة التطبيقات

اسم الحقلالنوعالوصف
source_language_codestringرمز لغة IETF BCP-47 الذي يمثل اللغة المكتشفة أو المحددة من قبل المستخدم للنص المصدر.
translationsDictionary<string, string>خريطة تحتوي على الترجمات المطلوبة. المفتاح هو رمز لغة IETF BCP-47، والقيمة هي النص المترجم لتلك اللغة. ستحتوي الخريطة على جميع الترجمات المطلوبة. إذا تم تصفية النص المصدر، ستكون هذه الخريطة فارغة.

الحدود

تستخدم Roblox الصيغة التالية لتقليل الطلبات على هذه الواجهة بناءً على عدد اللاعبين في لعبتك:

عدد الطلبات القصوى في الدقيقة لكل لعبة = 600 + (1.5 * عدد المستخدمين المتزامنين)

هناك أيضًا حد مشترك قدره 150 طلبًا لكل دقيقة، لكل خادم لعبة لجميع واجهات برمجة التطبيقات الخاصة بـ Open Cloud.

اللغات المدعومة

تدعم واجهة برمجة التطبيقات للترجمة في الوقت الفعلي حاليًا اللغات التالية، والتي تختلف قليلاً عن اللغات المدعومة للترجمة التلقائية.

اللغةرمز اللغة
الصينية (المبسطة)zh-cn
الصينية (التقليدية)zh-tw
الإنجليزيةen-us
الفرنسيةfr-fr
الألمانيةde-de
الإندونيسيةid-id
الإيطاليةit-it
اليابانيةja-jp
الكوريةko-kr
البولنديةpl-pl
البرتغاليةpt-br
الروسيةru-ru
الإسبانيةes-es
التايلانديةth-th
التركيةtr-tr
الفيتناميةvi-vn
©2026 شركة Roblox Corporation. تُعد منصّة Roblox، وشعار Roblox وشعار "توسيع حدود المخيلة"، من ضمن علاماتنا التجارية المسجّلة وغير المسجّلة في الولايات المتحدة وبلدان أخرى.