Servidor com NPCs (bots): possibilidades no open.mp
NPCs dão vida ao mundo: um motorista de ônibus que faz a rota, um vendedor na loja, um guarda no banco. No universo SA-MP e open.mp, existem algumas formas de criar NPCs.
NPCs gravados (recordings)
O método clássico do SA-MP:
- Você grava um trajeto (a pé ou de veículo) com as funções de gravação;
- O NPC conecta como um "jogador" e reproduz a gravação;
- Ótimo para rotas fixas: ônibus, trens, aviões, patrulhas.
Cada NPC ocupa um slot de jogador e roda um script próprio.
NPCs controlados pelo servidor
A comunidade desenvolveu bibliotecas que controlam NPCs dinamicamente pelo servidor (andar até um ponto, seguir, atirar, entrar em veículos), como as da família FCNPC. No open.mp, o projeto também trabalha em recursos nativos de NPC. Verifique a documentação e o status atual do open.mp e dos componentes da comunidade antes de planejar o seu sistema, pois essa área evolui rápido.
Ideias de uso
- Transporte público: ônibus e trens em rota;
- Lojas e bancos: atendentes parados em interiores;
- Missões: inimigos para missões cooperativas;
- Ambientação: pedestres e tráfego em áreas principais;
- Treino: alvos em servidores de DM.
Limites e cuidados
- NPCs contam como jogadores para o limite de slots e aparecem na contagem (configure para não inflar a lista pública de forma enganosa);
- NPCs com lógica complexa consomem CPU, principalmente com cálculo de rotas;
- Proteja comandos e sistemas para que NPCs não recebam dinheiro, salário ou punições por engano (
IsPlayerNPC).
public OnPlayerConnect(playerid)
{
if (IsPlayerNPC(playerid)) return 1; // não inicia login para NPCs
// ...
return 1;
}
Comece pequeno
Alguns NPCs bem colocados (um ônibus, um guarda, um vendedor) fazem mais efeito que 100 NPCs sem propósito. Meça o impacto no consumo de CPU antes de aumentar.
Hospede seu servidor com a VittHost
Nos planos OPENMP-BR da VittHost, você acompanha CPU e memória no painel Pterodactyl e escolhe o plano conforme a quantidade de NPCs. Servidores no Brasil, proteção DDoS, MySQL incluso, compatibilidade total com scripts SA-MP e teste grátis de 3 dias.