Pular para o conteúdo

10% de desconto, aplicado no checkout

RPScriptsRPScripts

Do GCPhone ou Quasar para o LB Phone: plano de migração

Por Luke, RPScripts

Etapas ilustradas de migração de dados do GCPhone e Quasar Smartphone para LB Phone

Antes de começar: não existe conversor oficial

Trocar de celular merece um bom planejamento, porque um celular guarda números, contatos, mensagens e as ligações com seus scripts de inventário, banco e empregos. Um ponto logo de início: nem a documentação do LB Phone nem os nossos guias documentam uma ferramenta que copie dados do GCPhone ou do Quasar Smartphone para o LB Phone. O guia de instalação oficial descreve uma instalação limpa, não uma importação de dados.

Isso deixa duas opções honestas: um recomeço bem comunicado ou uma conversão personalizada que você mesmo desenvolve ou contrata. Este guia cobre o plano para as duas. Não anuncie a troca aos seus jogadores como sem perdas antes de conferir registros representativos e as relações entre eles.

Passo 1: decida o que você quer manter

Faça uma lista por tipo de dado: números de telefone, contatos, mensagens, histórico de chamadas, fotos e contas de redes sociais. Para cada um, decida se ele vai migrar, ser recriado ou começar do zero. Exija um plano de conversão para cada tipo de dado que você quer manter, incluindo personagens offline e celulares únicos.

Três decisões definem toda a migração:

  • De quem é o número: do personagem ou do item de celular? O recurso de celulares únicos do LB Phone dá a cada item de celular um número próprio e precisa de um inventário com suporte a metadados.
  • Como você resolve colisões de números, por exemplo quando dois personagens acabam com o mesmo número.
  • Se as URLs de fotos e anexos continuam acessíveis. O LB Phone usa o próprio método de upload, Fivemanage por padrão.

Começar do zero é a escolha mais simples. Se o que mais importa aos jogadores são os contatos, recriá-los pode ser um meio-termo (veja o passo 6).

Passo 2: faça backup do banco de dados e do celular antigo

A LB Scripts pede que você sempre faça um backup antes de qualquer alteração no banco de dados. Faça backup de duas coisas:

  1. O banco de dados. O guia da LB mostra como exportá-lo com o HeidiSQL: clique com o botão direito no banco, escolha "Export database as SQL", deixe as caixas "Create" marcadas e as caixas "Drop" desmarcadas e escolha um nome de arquivo. Para um backup completo da migração, garanta que a exportação inclua os dados, além da estrutura.
  2. O recurso do celular antigo e a configuração dele, por exemplo em ZIP. Guarde uma cópia de rollback do recurso antigo e dos dados do celular. No Quasar, faça backup também da configuração atual do celular.

Passo 3: monte um servidor de teste a partir do backup

Nunca rode a migração primeiro na sua cidade em produção. Restaure o backup num banco separado e rode uma cópia do seu servidor apontando para ele. Todos os passos seguintes acontecem nesse servidor de teste até o passo 9.

Passo 4: confira quais tabelas o LB Phone apagaria

Este é o passo que decide se os dados sobrevivem. Antes de rodar o arquivo SQL do LB Phone, o guia oficial manda apagar todas as tabelas que começam com phone_. Num servidor novo, tudo bem. Num servidor com um celular antigo, isso pode apagar o histórico dele.

Vindo do GCPhone / Re-Ignited

O base.sql do GCPhone adiciona uma coluna phone_number à tabela users e cria phone_app_chat, phone_calls, phone_messages e phone_users_contacts. O base.sql do Re-Ignited cria as mesmas quatro tabelas. As quatro começam com phone_, então o passo de instalação do LB Phone removeria os contatos, mensagens, chamadas e chats do GCPhone. A coluna phone_number em users e as tabelas separadas twitter_* do twitter.sql não batem com o prefixo.

Por isso: exporte essas quatro tabelas (e users.phone_number) antes da instalação do LB, ou renomeie-as no servidor de teste com um prefixo como old_phone_, para ainda poder lê-las no passo 6. Anote qual edição você usa, porque o Re-Ignited traz arquivos separados para ESX 1.1 e ESX 1.2.

Vindo do Quasar Smartphone

Confira primeiro a sua edição. A linha atual, Smartphone 2026 ou V3, usa o prefixo qs_phone_ em todas as tabelas, então elas não batem com a regra phone_ do LB Phone. Apague só as tabelas que começam exatamente com phone_ e confira cada uma antes de apagar.

A linha mais antiga Smartphone PRO é diferente. A página da RPScripts do QS Smartphone (Legacy 1.7.96) informa que os arquivos esx.sql e qb.sql dele apagam e recriam as tabelas do celular. Abra o arquivo SQL que você instalou e liste os nomes das tabelas antes de apagar qualquer coisa. Apps, adaptadores de voz e add-ons de uma edição do Quasar não fazem parte automaticamente de outra, e os apps DLC gratuitos do Quasar precisam do celular base do Quasar, então esses apps não vão para o LB Phone.

Passo 5: instale o LB Phone no servidor de teste

Remova ou pare primeiro o celular antigo. O próprio guia do Quasar manda remover qualquer outro celular antes de instalar um, citando o lb-phone entre outros, porque esses celulares usam o mesmo item, as mesmas teclas e os mesmos eventos, e rodar dois ao mesmo tempo causa erros e chamadas com falha. O mesmo vale no sentido contrário. Pare o celular antigo em vez de apagar os arquivos dele, para poder voltar atrás.

Depois siga o guia de instalação oficial do LB:

  • MariaDB 10.11 ou mais recente, oxmysql, artifacts do servidor atualizados, loaf_bcrypt recomendado.
  • Depois das conferências do passo 4, apagar as tabelas phone_ e rodar o lb-phone/phone.sql com o HeidiSQL.
  • Iniciar seu framework, o oxmysql e o inventário antes do celular. A página do produto dá ensure oxmysql, ensure lb-phoneprop, ensure lb-phone.
  • Definir o método de upload no config.lua e as chaves em lb-phone/server/apiKeys.lua.

Se você usa celulares únicos, configure o item phone no seu inventário como descreve o guia de celulares únicos da LB; no ox_inventory isso inclui remover o bloco de integração do NPWD para Item('phone'.

Passo 6: migre ou recrie os dados e compare

Não existe importador documentado, então qualquer dado que você mantenha precisa de um passo personalizado. O LB Phone documenta, porém, exports de servidor que um desenvolvedor pode usar. Por exemplo, AddContact adiciona um contato a um número de telefone e SendMessage envia uma mensagem entre dois números. Um desenvolvedor pode ler a tabela de contatos antiga do passo 4 e recriar os contatos com AddContact quando os jogadores tiverem seus novos números do LB. É um script personalizado, não uma ferramenta oficial de migração, e as nossas fontes não documentam se os números antigos podem ser mantidos.

Antes de confiar no resultado, compare os dados:

  • Conte os registros por tipo de dado antes e depois, por exemplo contatos por personagem.
  • Confira registros representativos e as relações entre eles à mão: o contato certo no número certo, num personagem online e num offline.
  • Procure duplicados e colisões de números.
  • Confira os links antigos de fotos. As URLs de anexos salvas podem deixar de funcionar depois da troca.

Passo 7: adapte os scripts que chamavam o celular antigo

Alertas de emprego, dispatch ou scripts de garagem costumam chamar o celular antigo por exports ou eventos. Quando esse celular sai, essas chamadas falham; "No such export" significa que o recurso chamado não foi iniciado ou tem outro nome. A documentação da LB lista os exports e eventos do próprio LB Phone, por exemplo SendMessage, SendNotification e EmergencyNotification. Ela não documenta aliases para os exports do gcPhone ou do Quasar, então todo script que chamava o celular antigo precisa ser adaptado aos exports do LB Phone. O Re-Ignited inicia o gcphone antes dos recursos de emprego, o que é uma boa pista de quais scripts dependem dele.

Passo 8: teste com dois personagens

Teste com dois personagens comuns no servidor de teste: chamadas nos dois sentidos, mensagens e anexos depois de um reinício, a entrega de um celular único, transferências bancárias e apps de emprego. Teste reconexões, números duplicados e alertas de emprego antes de substituir o celular em produção. Se as videochamadas não mostram ninguém, configure um servidor TURN; o LB Phone tem suporte integrado à Cloudflare.

Passo 9: troque o servidor em produção

Só faça a troca quando os passos 6 a 8 tiverem passado. Uma ordem sensata:

  1. Avise os jogadores com antecedência sobre o que migra e o que não migra, principalmente se o histórico do celular deles não for junto.
  2. Pare o servidor e faça um backup novo como no passo 2.
  3. Rode exatamente os passos que funcionaram no servidor de teste, na mesma ordem: proteger ou exportar as tabelas antigas, instalar o LB Phone e rodar seu script de conversão, se tiver um.
  4. Inicie o servidor e faça uma versão curta dos testes do passo 8.

Planejando a troca? Garanta o LB Phone v2 na RPScripts e teste primeiro no seu servidor de staging.

Passo 10: tenha um plano de rollback

Guarde a cópia de rollback do recurso do celular antigo e dos dados dele até ter certeza de que não vai mais precisar. Escreva o rollback antes do dia da troca: parar o servidor, restaurar o backup do banco do passo 9, trocar as linhas ensure de volta para o celular antigo e restaurar os scripts de emprego que você alterou no passo 7. Teste esse rollback uma vez também no servidor de teste, para saber que ele funciona.

FAQ

Existe uma ferramenta oficial para levar os dados do GCPhone ou do Quasar para o LB Phone?

Não na documentação do LB Phone nem na RPScripts. As opções são uma conversão personalizada ou começar do zero.

Instalar o LB Phone vai apagar meus dados do GCPhone?

Pode, sim. O guia da LB manda apagar todas as tabelas phone_ antes de rodar o arquivo SQL, e as tabelas de contatos, mensagens, chamadas e chat do gcPhone começam todas com phone_. Faça backup e exporte essas tabelas antes.

Vai apagar meus dados do Quasar Smartphone V3?

As tabelas do V3 começam com qs_phone_, então não batem com a regra phone_. Mesmo assim, faça backup antes e confira cada tabela antes de apagar.

Posso manter o celular antigo rodando junto com o LB Phone?

Não. Segundo o guia do Quasar, rodar dois celulares ao mesmo tempo causa erros e chamadas com falha. Pare o celular antigo, mas guarde os arquivos e dados dele para um rollback.

Posso recriar os contatos automaticamente?

Um desenvolvedor pode usar o export documentado AddContact do LB Phone num script personalizado. Não é uma ferramenta oficial de migração.

Para esta escolha de celular, compare os Scripts de telefone: o LB Phone v2 faz parte da seleção atual para vários frameworks, o GKSPhone (ESX) é especificamente o pacote antigo para ESX 1.1/1.2 (1.2 FIX 5), e o CodeM Phone (mPhone 2.0) exige verificar as dependências do pacote. A documentação atual do GKSPHONE V2 descreve outro produto, diferente do download GKSPhone linkado aqui. Nenhum deles comprova uma migração sem perda dos dados do seu celular. A RPScripts vende esses pacotes.