# LocalizationService

Roblox Engine API class from Roblox Studio 0.744.0.7441077 (version-7aaa6838d36c4448).

- Inherits from, nearest first: [Instance](https://rapi.sleaze.dev/classes/Instance.md), [Object](https://rapi.sleaze.dev/classes/Object.md)
- Tags: Not creatable, Not replicated, Service
- Memory category: Instances
- HTML page: https://rapi.sleaze.dev/classes/LocalizationService/
- Roblox documentation: https://create.roblox.com/docs/reference/engine/classes/LocalizationService

Handles automated translation.

## Properties

### ForcePlayModeGameLocaleId

```luau
LocalizationService.ForcePlayModeGameLocaleId: string = ""
```

- Tags: Hidden, Not replicated, Local user security, Read capabilities: Basic

### ForcePlayModeRobloxLocaleId

```luau
LocalizationService.ForcePlayModeRobloxLocaleId: string = ""
```

- Tags: Hidden, Not replicated, Local user security, Read capabilities: Basic

### RobloxForcePlayModeGameLocaleId

```luau
LocalizationService.RobloxForcePlayModeGameLocaleId: string = ""
```

- Tags: Hidden, Not replicated, Roblox script security, Read capabilities: Basic

### RobloxForcePlayModeRobloxLocaleId

```luau
LocalizationService.RobloxForcePlayModeRobloxLocaleId: string = ""
```

- Tags: Hidden, Not replicated, Roblox script security, Read capabilities: Basic

### GameSourceLanguageId

```luau
LocalizationService.GameSourceLanguageId: string = ""
```

- Tags: Hidden, Not scriptable, Capabilities: Basic

### IsImageCaptureEnabled

```luau
LocalizationService.IsImageCaptureEnabled: boolean = false
```

- Tags: Hidden, Not scriptable, Roblox script security, Read capabilities: Basic

### IsTextScraperRunning

```luau
LocalizationService.IsTextScraperRunning: boolean = false
```

- Tags: Hidden, Roblox script security, Read capabilities: Basic

### LocaleManifest

```luau
LocalizationService.LocaleManifest: string = ""
```

- Tags: Hidden, Not scriptable, Capabilities: Basic

### RobloxLocaleId

```luau
LocalizationService.RobloxLocaleId: string = ""
```

- Tags: Read only, Capabilities: Basic

The locale ID used for localizing core and internal features.

### ShouldUseCloudTable

```luau
LocalizationService.ShouldUseCloudTable: boolean = false
```

- Tags: Hidden, Not scriptable, Roblox script security, Read capabilities: Basic

### ShouldUseImageLocalizationTable

```luau
LocalizationService.ShouldUseImageLocalizationTable: boolean = false
```

- Tags: Hidden, Not scriptable, Roblox script security, Read capabilities: Basic

### SystemLocaleId

```luau
LocalizationService.SystemLocaleId: string = ""
```

- Tags: Read only, Capabilities: Basic

The locale ID that the local player has set for their operating system.

## Methods

### GetCorescriptLocalizations

```luau
LocalizationService:GetCorescriptLocalizations(): { Instance }
```

- Tags: Capabilities: Basic

Returns a list of [`LocalizationTable`](https://rapi.sleaze.dev/classes/LocalizationTable.md) objects used for localizing core scripts.

Returns: A list of [`LocalizationTable`](https://rapi.sleaze.dev/classes/LocalizationTable.md) objects used for localizing CoreScripts.

### GetCountryRegionForPlayerAsync

```luau
LocalizationService:GetCountryRegionForPlayerAsync(player: Instance): string
```

- Tags: Yields, Capabilities: Basic

Returns country/region code string according to player's client IP geolocation.

Parameters:

- `player`: The player that you are getting country/region information for.

Returns: A string indicating the country/region code of a player.

### GetIsLoadingInternalTranslations

```luau
LocalizationService:GetIsLoadingInternalTranslations(): boolean
```

- Tags: Roblox script security, Capabilities: Basic

### GetTableEntries

```luau
LocalizationService:GetTableEntries(instance: Instance? = nil): { any }
```

- Tags: Capabilities: Basic

Gets all entries used for automated localization.

Parameters:

- `instance`: The [`Instance`](https://rapi.sleaze.dev/classes/Instance.md) for which to retrieve the ordered localization table entries. If nil, only entries from the [`LocalizationService`](https://rapi.sleaze.dev/classes/LocalizationService.md) hierarchy and the cloud [`LocalizationTable`](https://rapi.sleaze.dev/classes/LocalizationTable.md) are returned.

Returns: An array of arrays, where each array is in the same format as described in [`LocalizationTable:GetEntries()`](https://rapi.sleaze.dev/classes/LocalizationTable.md).

### GetTranslatorForLocaleAsync

```luau
LocalizationService:GetTranslatorForLocaleAsync(locale: string): Instance
```

- Tags: Yields, Capabilities: Basic

Yields until the cloud [`LocalizationTable`](https://rapi.sleaze.dev/classes/LocalizationTable.md) for the argument locale has been loaded - if available. Returns a [`Translator`](https://rapi.sleaze.dev/classes/Translator.md) instance to be used for translations for the provided locale.

Parameters:

- `locale`: A Roblox supported language or locale code.

Returns: The [`Translator`](https://rapi.sleaze.dev/classes/Translator.md) instance for the specified locale.

### GetTranslatorForPlayerAsync

```luau
LocalizationService:GetTranslatorForPlayerAsync(player: Instance): Instance
```

- Tags: Yields, Capabilities: Basic

Yields until the cloud [`LocalizationTable`](https://rapi.sleaze.dev/classes/LocalizationTable.md) for the player's locale has been loaded - if available. Returns a [`Translator`](https://rapi.sleaze.dev/classes/Translator.md) instance to be used for translations for the provided locale.

Parameters:

- `player`: The [`Player`](https://rapi.sleaze.dev/classes/Player.md) that you are getting the [`Translator`](https://rapi.sleaze.dev/classes/Translator.md) for.

Returns: The [`Translator`](https://rapi.sleaze.dev/classes/Translator.md) instance for the specified locale.

### IsLoadingInternalTranslationsSettingChanged

```luau
LocalizationService:IsLoadingInternalTranslationsSettingChanged(newIsLoadingInternalTranslations: boolean)
```

- Tags: Roblox script security, Capabilities: Basic

### PromptDownloadGameTableToCSV

```luau
LocalizationService:PromptDownloadGameTableToCSV(table: Instance)
```

- Tags: Yields, Roblox script security, Capabilities: Basic

### PromptExportToCSVs

```luau
LocalizationService:PromptExportToCSVs()
```

- Tags: Yields, Roblox script security, Capabilities: Basic

### PromptImportFromCSVs

```luau
LocalizationService:PromptImportFromCSVs()
```

- Tags: Yields, Roblox script security, Capabilities: Basic

### PromptUploadCSVToGameTable

```luau
LocalizationService:PromptUploadCSVToGameTable(): Instance
```

- Tags: Yields, Roblox script security, Capabilities: Basic

### SetRobloxLocaleId

```luau
LocalizationService:SetRobloxLocaleId(locale: string)
```

- Tags: Roblox script security, Capabilities: Basic

### StartTextScraper

```luau
LocalizationService:StartTextScraper()
```

- Tags: Roblox script security, Capabilities: Basic

### StopTextScraper

```luau
LocalizationService:StopTextScraper()
```

- Tags: Roblox script security, Capabilities: Basic

### GetTranslatorForPlayer

```luau
LocalizationService:GetTranslatorForPlayer(player: Instance): Instance
```

- Tags: Deprecated, Capabilities: Basic
- Use instead: [`LocalizationService.GetTranslatorForPlayerAsync`](https://rapi.sleaze.dev/classes/LocalizationService.md)

**Deprecated:** This function has been deprecated by [`LocalizationService:GetTranslatorForPlayerAsync()`](https://rapi.sleaze.dev/classes/LocalizationService.md), which functions similarly except that it yields until the cloud table has loaded. Please use it in new work instead.

Returns a [`Translator`](https://rapi.sleaze.dev/classes/Translator.md) to be used for translations using the locale data loaded.

Parameters:

- `player`: The [`Player`](https://rapi.sleaze.dev/classes/Player.md) that you are getting the [`Translator`](https://rapi.sleaze.dev/classes/Translator.md) for.

Returns: The [`Translator`](https://rapi.sleaze.dev/classes/Translator.md) instance for the specified locale.

## Events

### AutoTranslateWillRun

```luau
LocalizationService.AutoTranslateWillRun: RBXScriptSignal<()>
```

- Tags: Roblox script security, Capabilities: Basic

### DynamicTranslationServerToClientResponse

```luau
LocalizationService.DynamicTranslationServerToClientResponse: RBXScriptSignal<(...: any)>
```

- Tags: Hidden, Roblox engine security, Capabilities: Basic

### TextScraperClientMessageWithPlayerSignal

```luau
LocalizationService.TextScraperClientMessageWithPlayerSignal: RBXScriptSignal<(version: number, player: Instance, ...: any)>
```

- Tags: Hidden, Roblox engine security, Capabilities: Basic

## Inherited members

- From [Instance](https://rapi.sleaze.dev/classes/Instance.md): `Archivable`, `archivable`, `Attributes`, `AttributesReplicate`, `AttributesSerialize`, `HistoryId`, `Name`, `Parent`, `PredictionMode`, `PropertyStatusStudio`, `RobloxLocked`, `SerializedOverrides`, `SourceAssetId`, `Tags`, `UniqueId`, `numExpectedDirectChildren`, `DataCost`, `Capabilities`, `DefinesCapabilities`, `IsInSandbox`, `Sandboxed`, `AddTag`, `ClearAllChildren`, `Clone`, `Destroy`, `FindFirstAncestor`, `FindFirstAncestorOfClass`, `FindFirstAncestorWhichIsA`, `FindFirstChild`, `FindFirstChildOfClass`, `FindFirstChildWhichIsA`, `FindFirstDescendant`, `GetActor`, `GetAttribute`, `GetAttributeChangedSignal`, `GetAttributes`, `GetChildren`, `GetDebugId`, `GetDescendants`, `GetFullName`, `GetStyled`, `GetStyledPropertyChangedSignal`, `GetTags`, `HasTag`, `IsAncestorOf`, `IsDescendantOf`, `IsPropertyModified`, `QueryDescendants`, `RemoveTag`, `ResetPropertyToDefault`, `SetAttribute`, `WaitForChild`, `Remove`, `children`, `clone`, `destroy`, `findFirstChild`, `getChildren`, `isDescendantOf`, `remove`, `AncestryChanged`, `AttributeChanged`, `ChildAdded`, `ChildRemoved`, `DescendantAdded`, `DescendantRemoving`, `Destroying`, `StyledPropertiesChanged`, `childAdded`
- From [Object](https://rapi.sleaze.dev/classes/Object.md): `ClassName`, `className`, `GetPropertyChangedSignal`, `IsA`, `isA`, `Changed`
