Pular para o conteúdo
RPScripts

Como Reduzir a Densidade de NPCs no FiveM de Forma Segura

Por Luke

Como reduzir a densidade de NPCs no FiveM

A densidade de pedestres e tráfego ambiente pode ser reduzida por um recurso cliente que aplica multiplicadores de densidade a cada frame. Isso altera o mundo que os jogadores veem; não garante uma melhoria de desempenho do servidor ou de FPS. Verifique se seu recurso de população existente já controla essas configurações antes de adicionar outro.

A configuração e os exemplos de código aqui são voltados ao FiveM para GTA V Legacy. O Enhanced tem regras diferentes de runtime e de compatibilidade; verifique as alterações de Legacy para Enhanced do Cfx.re antes de aplicá-las a um servidor Enhanced.

Crie o recurso

Crie resources/[local]/npc_reducer/. Adicione fxmanifest.lua:

fx_version 'cerulean'
game 'gta5'
client_script 'client.lua'

Adicione client.lua ao lado do manifesto. Este exemplo começa com metade do multiplicador padrão:

local density = 0.5

CreateThread(function()
    while true do
        Wait(0)
        SetPedDensityMultiplierThisFrame(density)
        SetScenarioPedDensityMultiplierThisFrame(density, density)
        SetVehicleDensityMultiplierThisFrame(density)
        SetRandomVehicleDensityMultiplierThisFrame(density)
        SetParkedVehicleDensityMultiplierThisFrame(density)
    end
end)

Inicie e ajuste

Adicione ensure npc_reducer à configuração do servidor. Para um recurso recém-criado, use o processo normal de atualização/início ou um reinício controlado do servidor. Verifique os logs do servidor e do F8 em busca de erros de carregamento.

Edite o valor e reinicie o recurso para carregar o código cliente alterado. A edição de um arquivo por si só não altera o código já em execução nos clientes conectados. Mantenha a espera do frame: esses efeitos nativos se aplicam ao frame atual.

Teste o efeito na jogabilidade

Compare a mesma rota antes e depois da mudança. Verifique o tráfego da cidade, veículos estacionados, cenários e trabalhos que dependem de pedestres do ambiente. Entidades de missão geradas por script podem ser controladas separadamente. Se outro script de população sobrescrever os valores, defina um único recurso responsável em vez de adicionar mais loops concorrentes.

Meça o tempo de frame do cliente e o custo do recurso usando a mesma cena. Para reverter, pare o recurso e remova sua entrada de inicialização; verifique o comportamento anterior da população após reconectar.

Referências

Primeiro recurso Lua do Cfx.re; Documentação das funções nativas do CitizenFX.

Seleção premium para o seu servidor

  • elevador de carro
    • ESX
    • QBCore
    • vRP
    US$ 4,99€ 4,99£ 3,99AU$ 7,99R$ 25,99CHF 4,99JP¥ 790
  • Pré-visualização do recurso KS Loadingscreen FiveM
      US$ 13,99€ 12,99£ 10,99AU$ 20,99R$ 71,99CHF 11,99JP¥ 2.220
    • Polícia de Origen
      • QBCore
      US$ 23,00€ 20,99£ 17,99AU$ 33,99R$ 116,99CHF 18,99JP¥ 3.640
    • Mirror Park Hood
        US$ 8,00€ 7,99£ 6,99AU$ 11,99R$ 40,99CHF 6,99JP¥ 1.270
      • Polícia de Origen
        • ESX
        US$ 23,00€ 20,99£ 17,99AU$ 33,99R$ 116,99CHF 18,99JP¥ 3.640
      Ver a loja