CS Stories adiciona histórias em vídeo por tempo limitado ao seu telefone do FiveM. Os jogadores gravam vídeos curtos no jogo e os compartilham em um feed de stories. É um recurso independente que funciona com qualquer framework e pode ser integrado a qualquer telefone baseado em Lua NUI. Ele vem com uma configuração extensiva, eventos, exports e alguns arquivos de código-fonte de cliente e servidor, para que você possa personalizá-lo.
Recursos
- Short, temporary video stories with the uploader’s in-game location and name
- As histórias são exibidas por 24 horas por padrão e mantidas no armazenamento por 24 horas por padrão; duração máxima de 30 segundos por padrão (cerca de 5 MB por vídeo de duração máxima sem miniatura); limite de taxa para proteger seu armazenamento
- Os jogadores podem excluir suas próprias histórias; jogadores autorizados podem excluir as histórias de qualquer pessoa
- Feed de stories simples com navegação completa por mouse e teclado
- Alternar entre câmera traseira e frontal; modo de câmera experimental que permite ao jogador se movimentar enquanto grava
- Filtros de cor (tons de cinza, sépia, inverter, saturação e mais) e filtros de imagem com rastreamento facial de ped em tempo real (cachorro, gato e mais)
- Ajusta-se a diferentes resoluções de tela
- Muitos eventos e exports para verificar e controlar o recurso
- Integrações de telefone inclusas: gcphone e qb-phone (também utilizáveis para telefones baseados neles); as integrações podem ser ajustadas ou escritas para outros telefones
- Recurso complementar opcional histórias-cs-dw para publicar histórias no Discord para moderação ou registro (siga as políticas de webhook do Discord)
Requisitos
- Um telefone baseado em Lua NUI e o fio recurso
- O servidor de hospedagem incluso é obrigatório. Ele armazena vídeos, miniaturas e metadados, portanto, precisa de rede, largura de banda e armazenamento, além de uma porta TCP aberta extra (35540 por padrão). Ele também está disponível como um aplicativo node.js externo (cs-stories-ehs) que você pode executar em outra máquina.
- Se o seu telefone usa
fx_version "cerulean", roteie o servidor de hospedagem via HTTPS (por exemplo, com um domínio e Cloudflare) ou altere o fx_version do telefone para "bodacious".
Instalação
- Certificar-se fio está na sua pasta de resources, coloque
cs-stories nos seus recursos e adicione ensure cs-stories para a configuração do seu servidor antes do seu telefone.
- No arquivo do seu telefone
__resource.lua ou fxmanifest.lua, adicione '@cs-stories/client/hooks/core.lua' como o último script do cliente e '@cs-stories/server/hooks/core.lua' como o último script do servidor.
- No arquivo NUI do seu telefone (geralmente
index.html), adicionar <script type="text/javascript" src="nui://cs-stories/client/hooks/core.js"></script> logo antes </body>.
- Leia todas as opções em
config.js e ajuste-os para a sua configuração.
- Com o servidor de hospedagem interno, abra a porta TCP (35540 por padrão, de entrada) no seu firewall.
- Execute
refresh e ensure cs-stories. Se o seu telefone usa um loop de animação, adicione um not CS_STORIES.ACTIVE verifique antes de reproduzir a animação e, em seguida, certifique-se do seu telefone.
- Com o servidor de hospedagem externo: instale-o com
npm install, configure seu config.js, execute-o com node (por exemplo, com pm2) e adicione seu endereço IP a sv_proxyIPRanges na configuração do seu servidor.
Informações importantes
- Os jogadores recebem uma solicitação de permissão para o microfone. Se negarem por engano, devem excluir
%AppData%\CitizenFX\media_access.json para redefini-lo.
- Apenas a voz do jogador que está gravando é capturada, usando o microfone padrão do sistema. A fala é detectada com a função nativa integrada; com um VoIP externo como o TokoVoip, você precisa editar o gancho.
- Um jogador gravando não pode se mover (comportamento padrão da câmera GTA V) a menos que você use o modo de câmera experimental.
- Atrasos na renderização de vídeo ou travamentos podem ocorrer em resoluções muito altas ou em sistemas de spec muito baixa.
- A gravação usa a captura de jogo: tudo no jogo é gravado, incluindo configurações visuais e Modificações e UIs do jogo, mas não NUIs.
- Se o seu servidor roda atrás de um proxy reverso que não consegue lidar com uma porta TCP extra, hospede o servidor de stories externamente em outra máquina.
- O envio e a visualização de histórias consomem a largura de banda dos jogadores e do servidor de hospedagem. Se o seu servidor de hospedagem host possui largura de banda limitada, verifique seu uso e armazenamento regularmente.
- Os metadados da história são armazenados em Armazenamento KV do FiveM; em uma configuração de vários servidores compartilhados, defina
sv_kvsName para algo único.
- O vídeo e a localização são verificados, mas como o cliente os envia, não é possível confiar neles totalmente.
- Stories expirados são excluídos quando o recurso é iniciado, portanto a limpeza depende de com que frequência você reinicia.
Solução de problemas
- Erros ao visualizar ou enviar: consulte a nota sobre HTTPS/fx_version acima. Caso contrário, a causa geralmente é o bloqueio de TCP, uma configuração de rede complexa ou proteção anti-DDoS; tente uma porta alta diferente e certifique-se de que ela está aberta para TCP, ou hospede o servidor de stories externamente.
- Botão do aplicativo de histórias sem: certifique-se de usar o hook correto para o seu telefone e que seus eventos e elementos DOM correspondem. Alguns hooks adicionam o aplicativo à loja de aplicativos do telefone em vez da tela inicial.
- O yarn continua reinstalando: Editar
package.json, adicione ou remova um espaço e salve-o.