{"id":41125,"date":"2024-02-05T09:20:21","date_gmt":"2024-02-05T08:20:21","guid":{"rendered":"https:\/\/esx-scripts.com\/?p=41125"},"modified":"2026-08-09T14:39:02","modified_gmt":"2026-08-09T12:39:02","slug":"traducao-de-scripts-fivem-2","status":"publish","type":"post","link":"https:\/\/rpcrate.com\/pt\/fivem-scripts-translation\/","title":{"rendered":"Como Traduzir Scripts FiveM com Seguran\u00e7a (Manual + IA)"},"content":{"rendered":"<p><strong>Traduza os valores de localidade existentes do recurso, preservando chaves, espa\u00e7os reservados, c\u00f3digos de controle e sintaxe de arquivo.<\/strong> A edi\u00e7\u00e3o manual oferece controle m\u00e1ximo; a IA pode acelerar um lote revisado. Nenhum dos m\u00e9todos torna seguro traduzir todas as strings entre aspas no c\u00f3digo-fonte.<\/p>\n<h2 id=\"find-the-supported-locale-system\">Encontre o sistema de localidade compat\u00edvel<\/h2>\n<p>Leia a documenta\u00e7\u00e3o do recurso e <code data-no-translation=\"\" translate=\"no\">fxmanifest.lua<\/code>. Procure por diret\u00f3rios de localidade, dicion\u00e1rios JSON\/Lua, arquivos de tradu\u00e7\u00e3o NUI e uma configura\u00e7\u00e3o de idioma. Use o sistema que o criador fornece. N\u00e3o adicione <code data-no-translation=\"\" translate=\"no\">lua54<\/code> como uma corre\u00e7\u00e3o de tradu\u00e7\u00e3o; essa op\u00e7\u00e3o de manifesto est\u00e1 obsoleta e n\u00e3o tem rela\u00e7\u00e3o com a localiza\u00e7\u00e3o.<\/p>\n<h2 id=\"back-up-and-inventory-visible-strings\">Fa\u00e7a backup e inventarie as strings vis\u00edveis<\/h2>\n<ol>\n<li>Copie o recurso ou crie um branch de controle de vers\u00e3o.<\/li>\n<li>Registre a vers\u00e3o exata e o idioma configurado.<\/li>\n<li>Liste r\u00f3tulos vis\u00edveis para o jogador, notifica\u00e7\u00f5es, texto do menu e mensagens de ajuda.<\/li>\n<li>Exclua chaves, nomes de eventos, comandos, colunas de banco de dados, caminhos de arquivo e identificadores, a menos que a documenta\u00e7\u00e3o os marque explicitamente como traduz\u00edveis.<\/li>\n<li>Crie um gloss\u00e1rio para termos de framework, trabalhos, itens e terminologia do servidor.<\/li>\n<\/ol>\n<h2 id=\"manual-method-edit-values-only\">M\u00e9todo manual: edite apenas os valores<\/h2>\n<p>Em um editor com reconhecimento de sintaxe, como o Notepad++, altere o valor leg\u00edvel por humanos no lado direito, mantendo a chave e a estrutura intactas.<\/p>\n<pre data-no-translation=\"\" translate=\"no\"><code data-no-translation=\"\" translate=\"no\">{\n  \"garage_open\": \"Open garage\",\n  \"price_label\": \"Price: %s\"\n}<\/code><\/pre>\n<p>Para outro idioma, traduza <code data-no-translation=\"\" translate=\"no\">Open garage<\/code> e <code data-no-translation=\"\" translate=\"no\">Price<\/code>, mas preserve <code data-no-translation=\"\" translate=\"no\">garage_open<\/code>, <code data-no-translation=\"\" translate=\"no\">price_label<\/code> e <code data-no-translation=\"\" translate=\"no\">%s<\/code>. Mantenha sequ\u00eancias de escape, aspas, v\u00edrgulas, chaves, c\u00f3digos de cores como <code data-no-translation=\"\" translate=\"no\">~r~<\/code>, e tokens de formato como <code data-no-translation=\"\" translate=\"no\">%s<\/code>, <code data-no-translation=\"\" translate=\"no\">%d<\/code> ou <code data-no-translation=\"\" translate=\"no\">{name}<\/code> exatos.<\/p>\n<h2 id=\"ai-method-send-a-constrained-values-only-batch\">M\u00e9todo com IA: envie um lote restrito somente com valores<\/h2>\n<p>Forne\u00e7a apenas as entradas de localidade necess\u00e1rias para a tradu\u00e7\u00e3o \u2014 n\u00e3o o recurso privado completo, a configura\u00e7\u00e3o do servidor, a chave de licen\u00e7a, o webhook, os dados do jogador ou a exporta\u00e7\u00e3o do banco de dados. Indique o idioma de origem e de destino, o gloss\u00e1rio e os tokens invariantes. Exija o mesmo formato estruturado e pe\u00e7a ao modelo para deixar as chaves e todos os espa\u00e7os reservados inalterados.<\/p>\n<p>A sa\u00edda da IA \u00e9 um rascunho. Os modelos podem renomear uma chave, alterar a pontua\u00e7\u00e3o, traduzir um comando, descartar um espa\u00e7o reservado ou retornar JSON\/Lua inv\u00e1lidos, mesmo soando confiantes. Revise o diff entrada por entrada.<\/p>\n<h2 id=\"validate-before-starting-the-resource\">Valide antes de iniciar o recurso<\/h2>\n<ul>\n<li>Analise JSON com um analisador JSON e Lua com o fluxo de trabalho de lint\/teste compat\u00edvel com o projeto.<\/li>\n<li>Compare o conjunto completo de chaves com a localidade de origem.<\/li>\n<li>Verifique a paridade exata de espa\u00e7os reservados e c\u00f3digos de controle por entrada.<\/li>\n<li>Procure por altera\u00e7\u00f5es acidentais em comandos, nomes de eventos e URLs.<\/li>\n<li>Inspecione o diff em busca de coment\u00e1rios adicionados ou cercas de Markdown.<\/li>\n<\/ul>\n<h2 id=\"test-in-the-ui\">Teste na UI<\/h2>\n<p>Inicie o locale traduzido no ambiente de teste e percorra todos os fluxos vis\u00edveis: menu, notifica\u00e7\u00e3o, erro, confirma\u00e7\u00e3o, valida\u00e7\u00e3o de entrada e texto de ajuda. Verifique cortes de texto, quebras de linha, caracteres acentuados, erros de plural\/contexto e comportamento da direita para a esquerda, quando aplic\u00e1vel. Revise os logs do navegador\/NUI, do F8 e do servidor.<\/p>\n<h2 id=\"build-a-reusable-translation-memory\">Crie uma mem\u00f3ria de tradu\u00e7\u00e3o reutiliz\u00e1vel<\/h2>\n<p>Armazene pares de origem\/valor aprovados, decis\u00f5es de gloss\u00e1rio e notas do revisor fora do pacote do fornecedor. Quando o recurso for atualizado, compare o novo locale de origem com a vers\u00e3o anterior e traduza apenas as chaves adicionadas ou alteradas. Nunca sobrescreva \u00e0s cegas um novo locale do fornecedor com um arquivo completo antigo.<\/p>\n<h2 id=\"rollback-safely\">Reverta com seguran\u00e7a<\/h2>\n<p>Mantenha o locale e a configura\u00e7\u00e3o originais dispon\u00edveis. Se o parsing, a interface ou o comportamento em tempo de execu\u00e7\u00e3o regredir, restaure os arquivos que funcionavam, reinicie o recurso e confirme se o idioma padr\u00e3o funciona. Corrija a tradu\u00e7\u00e3o em uma nova vers\u00e3o, em vez de editar a produ\u00e7\u00e3o sem um diff.<\/p>","protected":false},"excerpt":{"rendered":"<p>Traduza os valores de localiza\u00e7\u00e3o existentes do recurso preservando chaves, espa\u00e7os reservados, c\u00f3digos de controle e a sintaxe do arquivo. A edi\u00e7\u00e3o manual oferece controle m\u00e1ximo; a IA pode acelerar um lote revisado. Nenhum dos m\u00e9todos torna seguro traduzir todas as strings entre aspas no c\u00f3digo-fonte.<\/p>","protected":false},"author":1,"featured_media":180133,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2877,1899],"tags":[3001],"class_list":["post-41125","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-free-fivem-job-scripts","category-tutorials","tag-fivem-script"],"_links":{"self":[{"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/posts\/41125","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/comments?post=41125"}],"version-history":[{"count":3,"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/posts\/41125\/revisions"}],"predecessor-version":[{"id":215701,"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/posts\/41125\/revisions\/215701"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/media\/180133"}],"wp:attachment":[{"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/media?parent=41125"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/categories?post=41125"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/tags?post=41125"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}