Tutorial Roblox Studio com código Lua

Como fazer Teleport no Roblox Studio?

Neste tutorial, você vai aprender como fazer teleport no Roblox Studio usando código em Lua, ProximityPrompt, Gamepass com Robux e salvamento no DataStore. A ideia é criar um sistema onde o jogador só consegue acessar uma ilha secreta depois de liberar a compra.

A aula é prática, direta e pensada para quem está começando a criar jogos no Roblox Studio, mas já quer colocar recursos mais profissionais dentro do próprio mapa.

🚀

Teleporte entre ilhas Leve o jogador de uma parte do mapa para outra.

🎮

Roblox Studio na prática Use scripts reais dentro de um projeto de jogo.

💎

Gamepass com Robux Crie acesso premium para áreas especiais.

💾

DataStore Salve o acesso do jogador para ele não perder a compra.

Aula prática com a Prof. Fernanda

Como fazer teleport no Roblox Studio com Gamepass e DataStore

Nesta aula, a Prof. Fernanda mostra como criar um sistema de teletransporte dentro do Roblox Studio, permitindo que o jogador acesse uma área especial do jogo depois de liberar a entrada por compra.

A proposta é criar um recurso mais avançado do que um teleport simples: aqui o jogador interage com o mapa, o servidor verifica o acesso e o sistema salva a compra para que ele não perca a liberação depois.

🧭

Teleporte por ProximityPrompt

O jogador se aproxima de um ponto do mapa e ativa o teleporte para outra área.

💰

Acesso premium com Robux

O sistema pode pedir uma compra antes de liberar a ilha secreta para o jogador.

💾

Salvamento com DataStore

A compra fica registrada para que o jogador continue com acesso mesmo depois de sair do jogo.

Thumbnail do vídeo Como fazer teleport no Roblox Studio
Assistir tutorial

Dica: assista ao vídeo primeiro e depois copie os scripts abaixo. Assim fica mais fácil entender onde cada código deve ser colocado dentro do Roblox Studio.

Antes de copiar o código

Como fazer teleport no Roblox Studio: prepare o projeto primeiro

Para o script funcionar corretamente, é importante que alguns objetos já estejam criados no Roblox Studio. Assim, o código consegue encontrar o destino, o ponto de retorno, o RemoteEvent e os prompts de interação.

⚠️

Importante: os nomes precisam bater com os nomes usados no código. Se um objeto estiver com nome diferente, o teleport pode não funcionar.

1

Crie o ponto de destino no mapa

No Workspace, tenha uma Part chamada Destino. Ela será usada como ponto para onde o jogador será teleportado ao acessar a ilha especial.

2

Use o SpawnLocation como retorno

O script usa o objeto SpawnLocation para levar o jogador de volta. Ele precisa existir dentro do Workspace com esse nome.

3

Adicione um RemoteEvent

Dentro do ReplicatedStorage, crie um RemoteEvent. Ele será a ponte entre o LocalScript e o Script do servidor.

4

Configure os ProximityPrompts

Os prompts que ativam o teleporte precisam estar com os nomes ilha1 e ilha2, porque esses nomes são verificados no LocalScript.

🚀

Depois disso, é hora de copiar o Script do Server

Com a estrutura pronta, o próximo passo é inserir o código do servidor, responsável por verificar a compra, salvar o acesso e teleportar o jogador.

Ir para o código
Código principal

Script do Server para fazer teleport no Roblox Studio

Este é o script responsável por verificar o acesso do jogador, chamar a compra, salvar a liberação no DataStore e mover o personagem para o destino correto.

Script do Server
ServerScriptService
local MarketPlace = game:GetService("MarketplaceService")
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local RemoteEvent= ReplicatedStorage.RemoteEvent
local Destino = game.Workspace.Destino
local SpawnLocation = game.Workspace.SpawnLocation

local DataStoreService = game:GetService("DataStoreService")
local MapDataStore = DataStoreService:GetDataStore("MapDataStore")

local PlayerData={}

local productIlha2 = 2736192007
local function teleport(player:Player, destino)
	local character = player.Character
	local HumanoidRootPart = character:FindFirstChild("HumanoidRootPart")

	if HumanoidRootPart then
		if destino=="ilha1" then
				--HumanoidRootPart.CFrame = Destino.CFrame
				HumanoidRootPart.CFrame = CFrame.new(Destino.Position + Vector3.new(0,5,0))
		end
		if destino=="ilha2" then
			HumanoidRootPart.CFrame = CFrame.new(SpawnLocation.Position + Vector3.new(0,5,0) )
		end

	end


end


local function addPlayerData(player:Player)
	local playerId= player.UserId

	if not PlayerData[playerId] then
		PlayerData[playerId]={
			player = playerId,
			inventory={ coins=0},
			velocity = 16,
			access = false,
		}

		local dataStore = MapDataStore:GetAsync(playerId)
		if dataStore then
			PlayerData[playerId] = dataStore
		end
	end
	print(PlayerData)
end



RemoteEvent.OnServerEvent:Connect(function(player, data)
	print(data)
	if data=="ilha1" then
		print("precisa teleportar o player para a ilha 2")
		if not PlayerData[player.UserId].access then
			MarketPlace:PromptProductPurchase(player,productIlha2)
		else
			teleport(player,"ilha1")
		end

	end
	if data=="ilha2" then
		teleport(player, "ilha2")
	end
end)
local function processReceipt(receipt)
	print(receipt)
	local player = game.Players:GetPlayerByUserId(receipt.PlayerId)

	if not player then
		return Enum.ProductPurchaseDecision.NotProcessedYet
	end
	if receipt.ProductId == productIlha2 then
		PlayerData[receipt.PlayerId].access= true
		teleport(player, "ilha1")
		return Enum.ProductPurchaseDecision.PurchaseGranted
	end
end

MarketPlace.ProcessReceipt = processReceipt

Players.PlayerAdded:Connect(function(player:Player)
	addPlayerData(player)
end)

Players.PlayerRemoving:Connect(function(player)
	--PlayerData[player.UserId].access=false
	MapDataStore:SetAsync(player.UserId, PlayerData[player.UserId])
end)
💡

Onde colocar: este código deve ficar em um Script do lado do servidor. Depois dele, o próximo passo é adicionar o LocalScript que vai detectar o ProximityPrompt e enviar a ação para o servidor.

Código de interação

LocalScript para ativar o teleport no Roblox Studio

Este LocalScript detecta quando o jogador ativa o ProximityPrompt e envia para o servidor qual ação deve acontecer: ir para a ilha especial ou voltar para o ponto inicial.

LocalScript
StarterPlayerScripts
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local RemoteEvent= ReplicatedStorage.RemoteEvent
local ProximityPrompt  = game:GetService("ProximityPromptService")



ProximityPrompt.PromptTriggered:Connect(function(prompt, player)
	print("Chamei")
	print(prompt.Name)
	if prompt.Name=="ilha1" then
		print("teleportar o player para a ilha 2")
		RemoteEvent:FireServer("ilha1")
	end
	if prompt.Name=="ilha2" then
		print("ilha2")
		RemoteEvent:FireServer("ilha2")
	end

end)
🧭

Como esse bloco funciona: o LocalScript escuta o ProximityPrompt. Quando o jogador ativa o prompt chamado ilha1 ou ilha2, ele envia essa informação para o Script do Server usando o RemoteEvent.

Entenda o sistema

Como fazer teleport no Roblox Studio: o que acontece por trás do código?

Agora que você já viu o Script do Server e o LocalScript, vale entender o caminho completo: o jogador ativa o prompt, o cliente avisa o servidor, o servidor verifica o acesso e só então o personagem é teleportado.

1

O jogador ativa o ProximityPrompt

Quando o jogador se aproxima do ponto de interação e aperta o botão indicado, o ProximityPrompt é disparado.
PromptTriggered

2

O LocalScript identifica o nome

O LocalScript verifica se o prompt ativado se chama ilha1 ou ilha2. Esse nome define qual ação será enviada ao servidor.
prompt.Name

3

O RemoteEvent avisa o servidor

O cliente não faz o teleporte sozinho. Ele envia uma mensagem para o servidor, que vai decidir se o jogador pode ou não acessar a ilha.
RemoteEvent:FireServer

4

O servidor verifica o acesso

Se o jogador ainda não tem acesso liberado, o sistema chama a compra. Se ele já tem acesso, o teleporte acontece direto.
PlayerData[player.UserId].access

5

A compra pode liberar a ilha

Quando a compra é concluída, o servidor marca o acesso como verdadeiro e permite que o jogador entre na área especial.
ProcessReceipt

6

O personagem é teleportado

O script move o HumanoidRootPart para a posição de destino, deixando o jogador um pouco acima da Part para evitar travamentos.
CFrame.new

💾

O DataStore guarda o acesso do jogador

A parte mais importante desse sistema é que o acesso pode ser salvo. Assim, quando o jogador sair e voltar ao jogo, ele não precisa comprar novamente para acessar a ilha liberada.

Ver erros comuns
Se o teleport não funcionar

Erros comuns ao fazer teleport no Roblox Studio

Se o teleport não funcionar de primeira, não precisa apagar tudo. Na maioria das vezes, o problema está em nomes diferentes, objetos fora do lugar ou configurações que ainda não foram ativadas no projeto.

🔎

Nome do objeto diferente

O script procura objetos com nomes específicos. Confira se existem no Workspace:
Destino SpawnLocation

📦

RemoteEvent no lugar errado

O RemoteEvent precisa estar dentro do ReplicatedStorage e ser encontrado pelo script. Se ele estiver em outra pasta, a comunicação entre cliente e servidor pode falhar.
ReplicatedStorage.RemoteEvent

🧭

Prompt com nome diferente

O LocalScript verifica o nome do prompt ativado. Por isso, os ProximityPrompts precisam usar os nomes esperados:
ilha1 ilha2

🧍

Personagem ainda não carregou

O teleport acontece no HumanoidRootPart. Se o personagem ainda não carregou corretamente, o script pode não encontrar essa parte do corpo.
HumanoidRootPart

💰

ID do produto não corresponde

Para usar compra com Robux no seu próprio jogo, o Developer Product precisa existir no projeto e o ID usado no sistema precisa corresponder ao produto correto.
productIlha2

💾

DataStore não salvou

Para testar salvamento no Roblox Studio, verifique se o jogo está publicado e se o acesso a serviços de API está ativado nas configurações do jogo.
DataStoreService

Antes de mudar o código, confira a estrutura do projeto

Quando o assunto é teleport no Roblox Studio, pequenos detalhes fazem diferença. Primeiro confira nomes, pastas e objetos. Depois teste novamente o sistema.

Programação For Kids

Seu filho quer ir além de copiar scripts? Ele pode aprender a criar jogos de verdade.

Tutoriais como este ajudam bastante, mas quando a criança entende a lógica por trás do código, ela começa a criar com mais autonomia, corrigir erros e transformar ideias em projetos próprios.

Na Programação For Kids, crianças e adolescentes aprendem programação criando jogos, desafios e projetos práticos no Roblox Studio, com uma linguagem simples e divertida.

🎮

Aprender criando projetos reais

Roblox Studio • Lua • lógica • criatividade

🧠

Desenvolve raciocínio lógico com desafios práticos dentro do Roblox Studio.

🚀

Transforma o interesse por jogos em aprendizado de tecnologia e criação.

🏆

Ajuda a criança a sair do “só jogar” para entender como os jogos funcionam.

Ideal para pais: uma forma mais produtiva de aproveitar o interesse do filho por Roblox, com aprendizado guiado e projetos que fazem sentido para a idade.

Perguntas frequentes

FAQ sobre como fazer teleport no Roblox Studio

Separei as principais dúvidas de quem está criando um sistema de teletransporte no Roblox Studio, principalmente quando envolve ProximityPrompt, Gamepass, Robux e DataStore.

Para fazer teleport no Roblox Studio, você precisa mover o personagem do jogador para uma nova posição no mapa. Neste tutorial, o teleporte é feito usando HumanoidRootPart.CFrame, levando o jogador até uma Part de destino.

O código usa o CFrame do HumanoidRootPart para mudar a posição do personagem. No exemplo da aula, o jogador é enviado para o objeto chamado Destino, com um pequeno ajuste de altura para evitar travar dentro da Part.

O Script do Server deve ficar em uma área do servidor, como o ServerScriptService. Ele é responsável por verificar o acesso do jogador, chamar a compra, salvar os dados e executar o teleporte.

O LocalScript pode ficar em uma área executada pelo jogador, como StarterPlayerScripts. Ele escuta o ProximityPrompt e envia para o servidor a informação sobre qual teleporte foi ativado.

Não é obrigatório, mas o ProximityPrompt deixa a interação mais fácil para o jogador. Com ele, o jogador se aproxima de um ponto do mapa, aperta o botão indicado e ativa o teleporte.

Sim. Neste tutorial, o sistema verifica se o jogador tem acesso liberado. Se não tiver, o script pode chamar uma compra com Robux antes de permitir a entrada na ilha especial.

O acesso pode ser salvo usando DataStoreService. Assim, quando o jogador sair e voltar ao jogo, o sistema pode recuperar os dados e manter a ilha liberada.

Os erros mais comuns são nomes diferentes dos objetos, RemoteEvent no lugar errado, ProximityPrompt com nome incorreto, personagem ainda não carregado ou DataStore não configurado corretamente.

🎮

Quer continuar aprendendo Roblox Studio?

Depois de entender o teleport, o próximo passo é criar sistemas mais completos: lojas, ataques, skins, mapas, moedas e recursos interativos.

Conhecer curso Roblox
BLOG PROGRAMAÇÃO FOR KIDS

Programação para Crianças: Como Aprender Criando Jogos de Forma Divertida

Descubra como a programação para crianças pode desenvolver raciocínio lógico, criatividade e autonomia através de jogos, desafios e projetos práticos no Roblox e em outras plataformas.

Para pais, crianças e adolescentes Aprendizado criativo Roblox • Lógica • Tecnologia
Programação para crianças aprendendo com jogos
1
    1
    Seu Carrinho
    como-futuro-programador-do-zero-ao-primeiro-jogo (1)
    Combo do Zero ao Primeiro Jogo
    Qtd: 1
    Preço: O preço original era: R$ 99,80.O preço atual é: R$ 75,00.
    Economize R$ 24,80
    R$ 75,00