-- 🌍 AUTO TRANSLATE SYSTEM 126 COUNTRY -- SubscribeToFredbear555 local Players = game:GetService("Players") local HttpService = game:GetService("HttpService") local Player = Players.LocalPlayer -------------------------------------------------- -- 🌐 COUNTRY → LANGUAGE (126) -------------------------------------------------- local CountryLang = { AF="fa", AM="hy", AZ="az", BD="bn", BH="ar", BN="ms", CN="zh", ID="id", IN="hi", IR="fa", IQ="ar", IL="he", JP="ja", KR="ko", MY="ms", PH="en", PK="ur", SA="ar", SG="en", TH="th", TR="tr", VN="vi", YE="ar", AL="sq", AT="de", BE="fr", BG="bg", BY="ru", CH="de", CZ="cs", DE="de", DK="da", ES="es", FI="fi", FR="fr", GB="en", GR="el", HR="hr", HU="hu", IE="en", IT="it", NL="nl", NO="no", PL="pl", PT="pt", RO="ro", RU="ru", SE="sv", UA="uk", AR="es", BO="es", BR="pt", CA="en", CL="es", CO="es", CR="es", DO="es", EC="es", GT="es", MX="es", NI="es", PA="es", PE="es", PY="es", SV="es", US="en", VE="es", DZ="ar", EG="ar", GH="en", KE="en", MA="ar", NG="en", SN="fr", SO="so", TN="ar", TZ="sw", UG="en", ZA="en", AU="en", NZ="en" } -------------------------------------------------- -- 🌍 DETECT COUNTRY (IP API) -------------------------------------------------- local function getCountryCode() local success, res = pcall(function() return HttpService:JSONDecode( game:HttpGet("http://ip-api.com/json") ) end) if success and res and res.countryCode then return res.countryCode end -- fallback LocaleId return string.split(Player.LocaleId,"-")[2] or "US" end local CountryCode = getCountryCode() local TARGET_LANG = CountryLang[CountryCode] or string.sub(Player.LocaleId,1,2) or "en" -------------------------------------------------- -- 🌐 TRANSLATE API (LibreTranslate) -------------------------------------------------- local function Translate(text) if not text or text == "" then return text end if #text > 400 then return text end -- anti lag local success, result = pcall(function() return HttpService:JSONDecode( HttpService:PostAsync( "https://libretranslate.com/translate", HttpService:JSONEncode({ q = text, source = "auto", target = TARGET_LANG, format = "text" }), Enum.HttpContentType.ApplicationJson ) ) end) if success and result and result.translatedText then return result.translatedText end return text end -------------------------------------------------- -- 🔄 TRANSLATE OBJECT -------------------------------------------------- local TranslatedCache = {} local function TranslateObject(obj) if not obj:IsA("TextLabel") and not obj:IsA("TextButton") and not obj:IsA("TextBox") then return end if TranslatedCache[obj] then return end TranslatedCache[obj] = true task.spawn(function() local original = obj.Text local translated = Translate(original) if obj and obj.Parent then obj.Text = translated end end) end -------------------------------------------------- -- 🔁 SCAN GUI -------------------------------------------------- local function ScanGUI(gui) for _,v in ipairs(gui:GetDescendants()) do TranslateObject(v) end end -------------------------------------------------- -- 🛡️ AUTO REFRESH SYSTEM (AMAN) -------------------------------------------------- local function HookPlayerGui() local gui = Player:WaitForChild("PlayerGui") ScanGUI(gui) gui.DescendantAdded:Connect(function(obj) task.wait(0.1) TranslateObject(obj) end) end -------------------------------------------------- -- 🚀 START -------------------------------------------------- HookPlayerGui() print("🌍 Auto Translate ON | Country:", CountryCode, "| Lang:", TARGET_LANG)