
Ved Emotive Reactions combina emotes configurados do jogador com animações de NPCs próximos e respostas de texto opcionais. A versão 1.0.0 é independente de framework no núcleo, mas a configuração fornecida seleciona notificações qb. O uso standalone exige revisar essa opção, sem presumir que todos os padrões funcionam sem QBCore.
Configure o modo de comando e as notificações
Mantenha fxmanifest.lua, config.lua e os diretórios client e server em ved-emotivereactions. Use ensure ved-emotivereactions após a dependência de notificação escolhida. O modo padrão é command, com /react wave como exemplo. Os emotes configurados são wave, salute3 e dance.
NotificationFramework seleciona qb, esx, oxlib ou a alternativa nativa. Compare client/utils.lua com a API de notificação realmente instalada. O README pede aos usuários de ox_lib que ativem seu import de inicialização no manifesto. Reduza os logs de depuração padrão após testar, antes da operação normal.
Seleção de NPCs e limites de requisições
Os padrões consideram no máximo dois NPCs elegíveis em sete metros, ignoram NPCs hostis ou fugindo e aplicam dez segundos de espera por NPC. Probabilidades dos emotes e multiplicadores de zona significam que um NPC próximo não responderá necessariamente. O texto pode aparecer no chat, acima do NPC ou nos dois locais.
O servidor verifica o nome do emote, o tipo das coordenadas e um limite de cinco requisições por janela de 60 segundos. A permissão ACE ved.emotivereactions.bypass ignora esse limite. As coordenadas ainda vêm do cliente e não são comparadas com a posição real no servidor; seleção e reações ocorrem no cliente solicitante. Esses controles não garantem segurança geral nem sincronização multijogador.
Revise o modo loop antes de ativá-lo
Em client/emote_detection.lua, animDuration é declarada localmente dentro do ramo do modo loop, mas usada depois dele para calcular a espera restante. Essa referência posterior não acessa a variável local e pode provocar aritmética com nil no modo loop. Corrija o escopo e teste detecções repetidas antes de sair do modo de comando.
Teste também dicionários de animação inválidos, cancelamento, desaparecimento de NPCs e outros scripts de emotes. A espera pelo carregamento não tem timeout e o código limpa tarefas dos peds. Código verificado em 10 de setembro de 2026 na revisão 0f4cd049f781c5f266be130b8a9159308065badb; não houve teste de gameplay, desempenho ou sincronização.