← Tüm rehberler
Rehber 1

İlk obby'ni yap

Lav, kontrol noktaları, kaybolan bir platform ve bitiş çizgisi olan bir engel parkuru.

Ücretsiz45 dakika · Başlangıç · Roblox Studio
1
Adım 1 / 10

Yeni bir yer oluştur

  1. Roblox Studio'yu aç ve giriş yap.
  2. New Experience'a tıkla ve Baseplate şablonunu seç.
  3. Artık düz, gri bir zemin var. Parkurun bunun üstünde duracak.

Daha fazla ayrıntı

  • Roblox Studio, Windows ve Mac için ücretsiz bir programdır. Henüz kurulu değilse create.roblox.com adresinden indir ve Roblox hesabınla giriş yap.
  • Baseplate şablonu, başlangıç ekranındaki şablon listesindedir. Boş, gri bir zemin gösteren şablondur.
  • Yer bir sekmede açılır. Sekmenin adı, yerinin adıdır.
  • Mac'te, bu rehber Ctrl dediğinde her seferinde Cmd tuşunu kullan.
İpucu. File → Save to Roblox ile sık sık kaydet. Studio eski sürümleri saklar, böylece her zaman geri dönebilirsin.
Bu adım bende çalışmıyor

Önce şu üç şeyi kontrol et

  • Her parçanın ve script'in adı rehberdekiyle tam olarak aynı, büyük harfleriyle birlikte.
  • Script doğru nesnenin içinde duruyor. Kod kutusunun üstündeki etikete bak.
  • Window menüsünden Output penceresini aç. Kırmızı yazı, script'i ve sorunlu satırı gösterir.

Hâlâ takıldın mı? Bize yaz →

2
Adım 2 / 10

Üç paneli öğren

  1. Ortadaki büyük 3D görünüm Viewport'tur. Burası senin oyun dünyan.
  2. Explorer, oyundaki her nesneyi listeler. Properties, seçtiğin nesnenin ayarlarını gösterir.
  3. Kamerayı hareket ettir: etrafa bakmak için sağ fare tuşunu basılı tut, W A S D ile uç, Q ve E ile aşağı ve yukarı git.
  4. Kayboldun mu? Herhangi bir parçayı seç ve F'ye bas. Kamera ona atlar.

Daha fazla ayrıntı

  • Explorer ve Properties pencerenin sağ tarafındadır. Explorer üstte, Properties onun altındadır.
  • Viewport'ta bir nesneye tıkla, Explorer'da da vurgulanır. Explorer'da adına tıkla, Viewport'ta seçilir.
  • Üstünde yuvarlak bir simge olan düz platform SpawnLocation'dır. Oyun başlayınca oyuncular onun üstünde belirir. Olduğu yerde bırak.
  • Hata mı yaptın? Son yaptığın şeyi geri almak için Ctrl+Z'ye bas. Bir adım daha geri gitmek için tekrar bas.
İpucu. Bir panel yoksa Window menüsünden aç. Eski sürümlerde View sekmesindedir.
Bu adım bende çalışmıyor

Önce şu üç şeyi kontrol et

  • Her parçanın ve script'in adı rehberdekiyle tam olarak aynı, büyük harfleriyle birlikte.
  • Script doğru nesnenin içinde duruyor. Kod kutusunun üstündeki etikete bak.
  • Window menüsünden Output penceresini aç. Kırmızı yazı, script'i ve sorunlu satırı gösterir.

Hâlâ takıldın mı? Bize yaz →

3
Adım 3 / 10

Başlangıç platformunu yap

  1. Home sekmesinde Part'a tıkla. Gri bir blok çıkar.
  2. Properties'te Size değerini 12, 1, 12 yap ve parçanın adını Start olarak değiştir.
  3. Anchored'ı aç. Anchored olan bir parça asla düşmez ve asla kımıldamaz.
  4. Color düğmesiyle beğendiğin bir renk seç.

Daha fazla ayrıntı

  • Yeni parça kameranın önünde belirir ve Explorer'daki adı Part'tır.
  • Adını değiştirmek için Explorer'da ona bir kez tıkla, F2'ye bas, Start yaz ve Enter'a bas.
  • Properties'te Size alanına tıkla, 12, 1, 12 yaz ve Enter'a bas. Üç sayı genişlik, yükseklik ve derinliktir.
  • Anchored, Properties'te bir onay kutusudur. İşaret varsa açıktır.
  • Platformu SpawnLocation'ın yanına taşımak için Move aracını (Ctrl+2) kullan, böylece oyuncular üstüne yürüyebilir.
Sık yapılan hata. Anchored'ı unutmak. Parça düzenlerken gayet iyi görünür, oyun başlayınca boşluğa düşer.
Bu adım bende çalışmıyor

Önce şu üç şeyi kontrol et

  • Her parçanın ve script'in adı rehberdekiyle tam olarak aynı, büyük harfleriyle birlikte.
  • Script doğru nesnenin içinde duruyor. Kod kutusunun üstündeki etikete bak.
  • Window menüsünden Output penceresini aç. Kırmızı yazı, script'i ve sorunlu satırı gösterir.

Hâlâ takıldın mı? Bize yaz →

4
Adım 4 / 10

Zıplamaları ekle

  1. Start'ı seç ve kopyalamak için Ctrl+D'ye bas. Kopyayı Move aracıyla (Ctrl+2) ileri çek.
  2. Scale aracıyla (Ctrl+3) küçült. 6, 1, 6 boyutu iyi çalışır.
  3. Platformlar arasında 5 ile 7 studs boşluk bırak. 6 ile 8 platformun olana kadar tekrarla.
  4. Parkur yukarı doğru çıksın diye bazı platformları biraz yükselt.

Daha fazla ayrıntı

  • Kopya tam olarak orijinalin üstünde belirir, bu yüzden hiçbir şey olmamış gibi görünür. Move aracının mavi veya kırmızı okunu sürükle, kopya dışarı kayar.
  • Scale aracıyla parçanın üstündeki küçük toplardan birini sürükleyerek boyutunu değiştir. Boyutu Properties'e de yazabilirsin.
  • Properties'teki Position alanı bir parçanın nerede olduğunu gösterir. İki platformun sayılarını karşılaştırarak aralarındaki boşluğu ölç.
  • Her platform Anchored olmalı. Anchored bir parçanın kopyaları da anchored olur, o yüzden bunu yalnızca yeni oluşturduğun parçalar için kontrol et.
  • Zıplamaları kendin denemek için F5'e, durdurmak için Shift+F5'e bas. Bunu her iki üç platformdan sonra yap.
İpucu. Varsayılan bir karakter 7.2 studs yükseğe zıplar ve yaklaşık 8 studs ileri atlar. 8 studs'tan büyük boşlukları geçmek neredeyse imkansızdır.
Bu adım bende çalışmıyor

Önce şu üç şeyi kontrol et

  • Her parçanın ve script'in adı rehberdekiyle tam olarak aynı, büyük harfleriyle birlikte.
  • Script doğru nesnenin içinde duruyor. Kod kutusunun üstündeki etikete bak.
  • Window menüsünden Output penceresini aç. Kırmızı yazı, script'i ve sorunlu satırı gösterir.

Hâlâ takıldın mı? Bize yaz →

5
Adım 5 / 10

Oyuncuyu başa döndüren lav ekle

  1. İki platformun arasına yeni bir Part ekle. Kırmızı yap, Material'i Neon olarak ayarla, Anchored'ı aç ve adını Lava koy.
  2. Explorer'da Lava'nın üstüne gel, + düğmesine tıkla ve Script'i seç.
  3. Zaten yazılı olan satırı sil ve bu kodu yapıştır.
Lava > Script
local lava = script.Parent

lava.Touched:Connect(function(hit)
	local humanoid = hit.Parent:FindFirstChildOfClass("Humanoid")
	if humanoid then
		humanoid.Health = 0
	end
end)

Her parça ne yapar

  • script.Parent, script'in içinde durduğu parçadır. Burada o parça lavdır.
  • Touched, bir şey parçaya her dokunduğunda çalışır. hit, ona dokunan şeydir, örneğin bir ayak.
  • hit.Parent karakterin tamamıdır. İçinde bir Humanoid varsa bu bir oyuncudur, o yüzden script Health değerini 0 yapar.

Daha fazla ayrıntı

  • Material, Properties'te bir listedir. Ona tıkla ve Neon'u seç. Neon parçayı parlatır.
  • Script'i eklediğinde yeni bir sekmede açılır ve içinde tek satır kod olur. Kodun içine tıkla, hepsini seçmek için Ctrl+A'ya, üstüne yapıştırmak için Ctrl+V'ye bas.
  • Yerinin adını taşıyan sekmeye tıklayarak dünyana geri dön.
  • Denemek için: F5'e bas ve lavın içine yürü. Karakterin dağılır ve başlangıçta geri gelir.
  • Lavı geniş ve yassı yap, örneğin Size 12, 1, 6, ve platformlardan biraz daha aşağıya koy, böylece kaçırılan bir zıplama lavın içine düşer.
Bu adım bende çalışmıyor

Önce şu üç şeyi kontrol et

  • Her parçanın ve script'in adı rehberdekiyle tam olarak aynı, büyük harfleriyle birlikte.
  • Script doğru nesnenin içinde duruyor. Kod kutusunun üstündeki etikete bak.
  • Window menüsünden Output penceresini aç. Kırmızı yazı, script'i ve sorunlu satırı gösterir.

Hâlâ takıldın mı? Bize yaz →

6
Adım 6 / 10

Kontrol noktaları ekle

  1. Explorer'da Workspace'in üstüne gel, + düğmesine tıkla ve bir Folder ekle. Adını Checkpoints koy.
  2. Parkur boyunca üç tane Anchored parça yerleştir ve onları klasörün içine sürükle. Adlarını 1, 2 ve 3 yap. 1 numaralı parça başlangıç platformunda olsun.
  3. ServerScriptService'in üstüne gel, + düğmesine tıkla ve bir Script ekle. Bu kodu yapıştır.
ServerScriptService > Script
local Players = game:GetService("Players")
local checkpoints = workspace:WaitForChild("Checkpoints")

Players.PlayerAdded:Connect(function(player)
	local stats = Instance.new("Folder")
	stats.Name = "leaderstats"
	stats.Parent = player

	local stage = Instance.new("IntValue")
	stage.Name = "Stage"
	stage.Value = 1
	stage.Parent = stats

	player.CharacterAdded:Connect(function(character)
		local root = character:WaitForChild("HumanoidRootPart")
		local point = checkpoints:FindFirstChild(tostring(stage.Value))
		if point then
			task.wait(0.1)
			root.CFrame = point.CFrame + Vector3.new(0, 4, 0)
		end
	end)
end)

for _, point in ipairs(checkpoints:GetChildren()) do
	point.Touched:Connect(function(hit)
		local player = Players:GetPlayerFromCharacter(hit.Parent)
		local stats = player and player:FindFirstChild("leaderstats")
		if not stats then return end

		local number = tonumber(point.Name)
		if number == stats.Stage.Value + 1 then
			stats.Stage.Value = number
		end
	end)
end

Her parça ne yapar

  • leaderstats özel bir klasör adıdır. İçindeki değerler oyuncu listesinde görünür, böylece herkes senin Stage değerini görür.
  • Bir karakter doğduğunda script onu, adı oyuncunun Stage değerine eşit olan kontrol noktasına taşır.
  • Bir kontrol noktasına dokunmak Stage değerini sadece sıradaki noktaysa artırır. Bu, oyuncuların bölümleri atlamasını engeller.

Daha fazla ayrıntı

  • Folder, bilgisayardaki bir klasör gibi başka nesneleri tutar. Oyunda kendi başına hiçbir şey yapmaz.
  • Bir parçayı klasöre sürüklemek için Explorer'da adını Checkpoints adının üstüne sürükle ve bırak. Parça bir adım sağa kayar ve klasörün altında durur.
  • Kontrol noktası parçalarını ince ve geniş yap, örneğin Size 6, 0.4, 6, ve platformların üstüne yerleştir. Farklı bir renk oyuncuların onları fark etmesine yardım eder.
  • Denemek için: F5'e bas ve sağ üst köşedeki oyuncu listesine bak. Orada Stage 1 yazar. 2. kontrol noktasına dokun, 2 olarak değişir.
  • Kontrol noktalarına sırayla dokunulmalı. 2'den önce 3'e dokunmak hiçbir şey yapmaz.
Sık yapılan hata. Parçalara Checkpoint1 veya One adını vermek. Script tam olarak 1, 2 ve 3 adlarını arar.
Bu adım bende çalışmıyor

Önce şu üç şeyi kontrol et

  • Her parçanın ve script'in adı rehberdekiyle tam olarak aynı, büyük harfleriyle birlikte.
  • Script doğru nesnenin içinde duruyor. Kod kutusunun üstündeki etikete bak.
  • Window menüsünden Output penceresini aç. Kırmızı yazı, script'i ve sorunlu satırı gösterir.

Hâlâ takıldın mı? Bize yaz →

7
Adım 7 / 10

Kaybolan bir platform yap

  1. Parkurun ortasından bir platform seç ve ona bir Script ekle.
  2. Bu kodu yapıştır ve göz kırpışını izlemek için Play'e bas.
Platform > Script
local platform = script.Parent

while true do
	task.wait(2)
	platform.Transparency = 1
	platform.CanCollide = false

	task.wait(2)
	platform.Transparency = 0
	platform.CanCollide = true
end

Her parça ne yapar

  • while true do sonsuza kadar tekrar eder.
  • task.wait(2) 2 saniye bekletir.
  • Transparency 1 parçayı görünmez yapar. CanCollide false oyuncuların içinden düşmesini sağlar.

Daha fazla ayrıntı

  • Script'i eklemek için Explorer'da platformun adının üstüne gel, + düğmesine tıkla ve Script'i seç, lavda yaptığın gibi.
  • Platform 2 saniye görünür, 2 saniye kaybolur. Oyuncuların zıplamayı doğru zamanda yapması gerekir.
  • İlk sayı platformun ne kadar görünür kalacağıdır. İkinci sayı ne kadar kaybolacağıdır.
  • Bu script'i başlangıç platformuna ya da bir kontrol noktasına koyma, yoksa oyuncular gelir gelmez düşer.
İpucu. Platformu daha hızlı veya yavaş yapmak için iki sayıyı değiştir.
Bu adım bende çalışmıyor

Önce şu üç şeyi kontrol et

  • Her parçanın ve script'in adı rehberdekiyle tam olarak aynı, büyük harfleriyle birlikte.
  • Script doğru nesnenin içinde duruyor. Kod kutusunun üstündeki etikete bak.
  • Window menüsünden Output penceresini aç. Kırmızı yazı, script'i ve sorunlu satırı gösterir.

Hâlâ takıldın mı? Bize yaz →

8
Adım 8 / 10

Bitiş çizgisini yap

  1. Sona büyük bir Anchored parça koy ve adını Finish yap. Oyuncular hedefi görsün diye altın rengi yap.
  2. Finish'e bir Script ekle ve bu kodu yapıştır.
Finish > Script
local Players = game:GetService("Players")
local finish = script.Parent
local cooldown = {}

finish.Touched:Connect(function(hit)
	local player = Players:GetPlayerFromCharacter(hit.Parent)
	local stats = player and player:FindFirstChild("leaderstats")
	if not stats or cooldown[player] then return end

	cooldown[player] = true
	stats.Stage.Value = 1
	player:LoadCharacter()

	task.wait(2)
	cooldown[player] = nil
end)

Her parça ne yapar

  • GetPlayerFromCharacter, bitişe hangi oyuncunun dokunduğunu bulur.
  • cooldown tablosu, kodun aynı saniyede birçok kez çalışmasını engeller.
  • Stage tekrar 1 olur ve LoadCharacter oyuncuyu yeni bir tur için başlangıca gönderir.

Daha fazla ayrıntı

  • Altın yapmak için Properties'te Color alanına tıkla ve bir sarı seç. Material olarak Neon onu parlak yapar.
  • Size 12, 1, 12 iyi bir bitiş boyutudur. Son zıplamadan sonra, diğerlerinden biraz daha yüksek bir yere koy.
  • Denemek için: F5'e bas, parkuru bitir ve altın parçaya bas. Başlangıca dönersin ve Stage yine 1 gösterir.
  • 2 saniyelik bekleme süresi var, çünkü tek bir adım parçaya birçok kez dokunur.
Bu adım bende çalışmıyor

Önce şu üç şeyi kontrol et

  • Her parçanın ve script'in adı rehberdekiyle tam olarak aynı, büyük harfleriyle birlikte.
  • Script doğru nesnenin içinde duruyor. Kod kutusunun üstündeki etikete bak.
  • Window menüsünden Output penceresini aç. Kırmızı yazı, script'i ve sorunlu satırı gösterir.

Hâlâ takıldın mı? Bize yaz →

9
Adım 9 / 10

Oyununu test et

  1. Oynamak için F5'e bas. Parkuru baştan sona koş.
  2. Bile bile lavın içine düş. Son kontrol noktanda geri gelmen gerekir.
  3. Durdurmak için Shift+F5'e bas.
  4. Window menüsünden Output penceresini aç. Kırmızı yazı, bir script'te hata olduğu anlamına gelir ve satır numarasını gösterir.

Daha fazla ayrıntı

  • F5 oyunu, içinde karakterinle birlikte başlatır. Oyun çalışırken araç çubuğu değişir.
  • Oyun çalışırken yaptığın değişiklikler durdurunca kaybolur. Önce her zaman Shift+F5'e bas, sonra düzenle.
  • Output penceresinde kırmızı bir satıra tıkla, Studio script'i hatalı satırda açar.
  • Bir şey çalışmadığında üç şeyi kontrol et: parçanın adı, script'in nerede durduğu ve Anchored'ın açık olup olmadığı.
Sık yapılan hata. Oyun başlayınca bir platform düşüyorsa: Anchored kapalıdır. Bir parçaya dokununca hiçbir şey olmuyorsa: script yanlış nesnenin içindedir veya bir adda yazım hatası vardır.
Bu adım bende çalışmıyor

Önce şu üç şeyi kontrol et

  • Her parçanın ve script'in adı rehberdekiyle tam olarak aynı, büyük harfleriyle birlikte.
  • Script doğru nesnenin içinde duruyor. Kod kutusunun üstündeki etikete bak.
  • Window menüsünden Output penceresini aç. Kırmızı yazı, script'i ve sorunlu satırı gösterir.

Hâlâ takıldın mı? Bize yaz →

10
Adım 10 / 10

Yayınla

  1. File → Publish to Roblox'u seç. Oyuna bir ad ve kısa bir açıklama ver.
  2. Creator Hub web sitesinde oyununu aç ve Maturity anketini doldur. Başkalarının oynayabilmesi için Roblox bunu ister.
  3. Oyunu Public yap ve bağlantıyı bir arkadaşına gönder.

Daha fazla ayrıntı

  • İlk yayınlayışında Studio senden bir ad ve bir açıklama ister. Create'e tıkla. Bundan sonra File → Publish to Roblox en yeni değişikliklerini gönderir.
  • Creator Hub, create.roblox.com web sitesidir. Aynı hesapla giriş yap ve listeden oyununa tıkla.
  • Maturity anketi oyunda neler olduğunu sorar. Dürüstçe cevapla. Bunun gibi bir obby'de şiddet ve korkutucu hiçbir şey yoktur.
  • Roblox, bir oyun herkese açık olmadan önce daha fazlasını isteyebilir, örneğin hesapta yaş doğrulaması. Sayfa neyin eksik olduğunu söyler.
  • 18 yaşından küçükse bu adımı bir ebeveynle birlikte yap.
İpucu. Sen izlerken bir arkadaşından oynamasını iste. Takıldığı yerler, ilk düzeltmen gereken yerlerdir.
Bu adım bende çalışmıyor

Önce şu üç şeyi kontrol et

  • Her parçanın ve script'in adı rehberdekiyle tam olarak aynı, büyük harfleriyle birlikte.
  • Script doğru nesnenin içinde duruyor. Kod kutusunun üstündeki etikete bak.
  • Window menüsünden Output penceresini aç. Kırmızı yazı, script'i ve sorunlu satırı gösterir.

Hâlâ takıldın mı? Bize yaz →

Şimdi sen değiştir

  • Dördüncü bir kontrol noktası ekle. Adını ne koymalısın?
  • Farklı hızlarda göz kırpan üç kaybolan platform yap.
  • Lavı, sağlığın sadece yarısını alacak şekilde değiştir. İpucu: humanoid.Health = humanoid.Health - 50