Skip to main content
O five-creator controla todo o fluxo visual do personagem desde o primeiro login. O fluxo é automático: ao entrar, após 10s o cliente chama five-creator:Server:Spawn. Se já há personagens na licença, abre o Selector; senão, abre o Creator. A UI é React/Vite compilada em web-side/dist/.

Funcionalidades

Selector

Tela de seleção (multichar) com peds animados e câmeras cinemáticas; criar, selecionar e deletar.

Creator

Criação com genética (pai/mãe, tom de pele, gênero, nome, idade), rosto, aparência e cabelo, com cutscene opcional.

Skinshop

Loja de roupas com cobrança por peça alterada.

Barbershop

Barbearia (cabelo, barba, maquiagem) com cobrança por item.

Tattooshop

Estúdio de tatuagem por gênero e parte do corpo.

Spawn

Escolha do local de nascimento após selecionar o personagem.
As imagens de preview (pais/mães, roupas, cortes, tatuagens, spawns) vêm de uma CDN externa em Config.AssetsUrl.

Dependências

vRP

Framework base.

oxmysql

Banco (exports.oxmysql:single_async no Selector).
Opcionais (runtime): sleepless_interact (pontos de interação das lojas), fortal-dui (DUI 3D nos pontos), survival (login de vida).

Configuração

Config.Cameras define posições de câmera por foco (fullbody, face, torso, eyes, hair, etc.), cada uma com distance, height e pointOffSet.
Também define Default.Appearance (traços faciais iniciais; -1 = nenhum), Default.Clothes (roupa inicial por gênero m/f), listas Fathers/Mothers (genética), e os sliders Characteristics, Appearance e Hair (cada um com title, min, max, step, camera).
Validação na criação: idade entre 18 e 60, nome e sobrenome com ≥ 4 caracteres.
Define também Spawns (5 poses de exibição dos personagens) e Cameras (5 sequências cinemáticas).
A quantidade de slots vem de vRP.Account(...)["Characters"] (não deste config). Config.Selector.Price (preço de slot) não está definido por padrão, defina se quiser exibir um valor.
Cada local: id (também a imagem spawn/<id>.png), name, coords.
Cada loja tem MarkerTitle, um bloco Command (Name + Permissions), um Map (itens/peças com preços) e Locations (pontos com radius e viewRadius).
  • Barbershop: Map em hair e makeup; todos os itens custam 250. 8 localizações.
  • Skinshop: Map por peça (mask=500, watch=700, arms=300, etc.). 18 localizações.
  • Tattooshop: Map[gênero][parteDoCorpo] com Price (250), Camera e List de overlays. 8 localizações.
O preço é cobrado por item alterado em relação ao atual. Dentro do criador, o preço é 0.

Comandos

Comandos administrativos para reabrir o seletor e as lojas, e para resetar personagens.
Config.Resetchar não vem definido por padrão, então /resetchar usa o nome e a permissão de fallback (Admin hier. 1). Defina Config.Resetchar = { Command = ..., Permissions = {...} } para customizar.

Localizações

Pontos do criador e seletor

O Selector usa 5 poses de exibição (Config.Selector.Spawns) na faixa de -789 a -802 / 330 a 341 / z ~202-206, com câmeras cinemáticas próprias.

Locais de spawn (Config.Spawn.Locations)

Barbearia (Config.Barbershop.Locations)

Loja de roupas (Config.Skinshop.Locations)

Estúdio de tatuagem (Config.Tattooshop.Locations)


Exports

Funções via Tunnel (interface five-creator, tabela vFunc): Eventos de integração públicos: barbershop:Open, skinshop:Open, tattooshop:Open, barbershop:Apply, skinshop:Apply, tattooshop:Apply, skinshop:setHat/setMask/setGlasses, etc.

Banco de Dados

O recurso utiliza duas tabelas para armazenar personagens e seus dados serializados.

Customização

Trocar imagens (CDN)

Todas as imagens vêm de Config.AssetsUrl. Caminhos montados automaticamente:
  • Pais: creator/fathers/<name>.png | Mães: creator/mothers/<name>.png
  • Roupas: skinshop/<section>/<genero>/<index>.webp
  • Cabelos: barbershop/<genero>/<index>.webp
  • Tatuagens: tattooshop/<genero>/<overlay>.webp
  • Spawn: spawn/<id>.png
Hospede suas imagens nessa estrutura e altere Config.AssetsUrl.

Outros ajustes

  • Tema: Config.ThemeColor / Config.Color (sobrescritos por Theme.main se existir).
  • Locais: adicione/remova em Locations (lojas) e Config.Spawn.Locations.
  • Preços: campo price/Price de cada item (0 = grátis). Cobra primeiro da carteira (dollars), depois do banco.
  • Cutscene: Config.Creator.Cutscene = false pula a introdução.