
Nesse post vou mostrar como fazer um personagem perseguir o player através do mapa no Roblox Studio.

1 - Part ➔ Block: Criando um portal onde os inimigos vão nascer Esse portal foi criado utilizando a ferramenta Part ➔ Sphere. No portal inserimos ParticleEmitter e efeito de Transparência 2 - Part ➔ Sphere: Criando um inimigo utilizando a Sphere O Inimigo foi criado utilizando a ferramenta Part ➔ Sphere, uma bola gigante. Definimos a cor, mudamos o "Material" para "Neon" que gera o efeito de brilho. Para o script de perseguição funcionar você precisa: ➔ Transformar a Sphere em "Model" através do agrupamento "CTRL + G" ➔ Inserir o objeto "Humanoide" ➔ Inserir o "Surface" no Objeto 3 - Script de Perseguição: Script que faz o Inimigo perseguir o Player Movendo objetos
local objeto = script.Parent while (true) do wait(0.1) objeto.Position = objeto.Position + Vector3.new (0,0,1) endComo fazer um objeto perseguir o player
- O Bloco tem que ter HumanoidRootPart
- Tem que transformar em Surface
local distanciamax = 200 -- 20 metros para o NPC perSeguir o jogador local distanciamin = 20 -- 5 de distancia minima para o bot parar function jogador() repeat wait() until game.Players.NumPlayers >= 1 -- esperar até que a quantidade de jogadores for maior que 1 ou igual local NPC = script.Parent local NPCHumanoidRoot = NPC.HumanoidRootPart local NPCHumanoid = NPC.Humanoid for i,v in pairs(game.Players:GetPlayers()) do -- Pegar a lista dos jogadores repeat wait() until v.Character -- Aguardar o character do player -- perseguição if (v.Character.HumanoidRootPart.Position - NPCHumanoidRoot.Position).Magnitude <= distanciamax and (v.Character.HumanoidRootPart.Position - NPCHumanoidRoot.Position).Magnitude >= distanciamin then NPCHumanoid:MoveTo(v.Character.HumanoidRootPart.Position - Vector3.new(0,distanciamin,0)) if v.Character.Humanoid.Jump == true then -- se o jogador pular o npc também irá pular NPCHumanoid.Jump = true end NPCHumanoidRoot.Touched:Connect(function(hit) -- dar dano no jogador wait(1) if hit.Parent:FindFirstChild("Humanoid") then wait(1) hit.Parent:FindFirstChild("Humanoid"):TakeDamage(0.05) end end) end end end while wait() do jogador() endOutras referências Vídeo 1 https://www.youtube.com/watch?v=M_JCH4ibqMo Vídeo 2 https://www.youtube.com/watch?v=KldFdpHTUEk Vídeo 3 https://www.youtube.com/watch?v=NuRUbwsSRY4 Vídeo 4 https://www.youtube.com/watch?v=fxpJjF0frQI Vídeo 5 https://www.youtube.com/watch?v=C80p_WXSoB0 Vídeo 6 https://www.youtube.com/watch?v=IQBEH9OMBm4
Fabio Bmed nas Redes Sociais
![]() | ![]() | ![]() | ![]() | ![]() | ![]() |