Tebrikler! Az önce bir çok oyunculu savaş royale'ı oluşturdun! Bu seri üzerinde şunlar var:
- Oyuncuların ışınlanması gibi farklı oyun işlevlerini ele alan modüler kodlar oluşturuldu.
- Maçların başlangıcı ve sonu için özel etkinlikleri kodlamayı öğrendi
- Oyuncuların oyuna katılması, kazanması veya ayrılması sırasında yönetmek için kullanılan düzenekler.
Ancak, oyununuz diğerlerinin oynaması için neredeyse hazır. Arenanızı benzersiz kılarak ve dikkat çekici bir küçük resimoluşturarak oyuncuları oyununuza çekin.
Opsiyonel geliştirmeler
Aşağıda, deneyiminizi geliştirmenin birkaç yolu bulunmaktadır.

Harita görselini geliştir
Görsel olarak ilginç bir haritaya sahip olmak, oyununuz için güçlü bir ilk izlenim bırakır ve insanları oynamaya teşvik eder.Graybox seviyenizi gerçek bir haritaya dönüştürmek için biraz zaman ayırın.
Bu serinin başında oyununuz için bir ayar açıklaması yazmayı hatırlıyor musunuz? İnşa ederken, haritanızın açık bir ayara sahip olduğundan emin olun.Inspirasyon için, aşağıda Roblox geliştiricileri tarafından inşa edilen bazı örnek haritalar bulunmaktadır.


Stüdyoda inşa edebilir veya önceden hazırlanmış varlıkları kullanabilirsiniz.Aşağıda, bir çevre oluşturmak için kullanılabilecek Roblox tarafından yüklenen bazı önerilen varlıklar bulunmaktadır.Her paket yüksek kaliteli, tamamen dokulu modeller içerir.
Kuvvet alanını değiştirmek
Bir oyun sırasında, oyuncular yeniden doğduğunda bir güç alanı fark etmiş olabilirsiniz. SpawnLocation özelliklerinde güç alanının ne kadar sürdüğünü değiştirin.
- İlgili Oluşturma Konumuna tıklayın.
- Özellikler > Forcefield'da, Süre değerini değiştirin.
Oynatma ve değişkenleri onayla
Roblox'taki başarılı oyunlar, oyun deneyiminin eğlenceli ve adil olmasını sağlamak için sık sık test edilir.
Oyununuzu arkadaşlarla oynayın ve takip edilenkontrol edin:
- Bir maçın süresi doğru mu hissediyor? Maçlar kazanan bir oyuncu olmadan çok çabuk bitiyor mu, yoksa çok uzun sürüyor mu?
- Haritanın boyutu doğru mu hissediyor? Çok boş hisseden bölgeler var mı? Başka bir oyuncuya girmek uzun sürecek mi?
oynanışgeliştirmek için değişkenleri test et, değerlendir ve modifiye et. Bazı örnekler:
- Daha büyük bir haritada maçları daha uzun yapmak için GameSettings.matchDuration değiştirin.
- Oyuncular bunun çok ani olduğunu düşünüyorsa mola süresini daha uzun yapın.
Lobiyi sosyal hale getir
Roblox'taki popüler oyunlar, oyuncuların eğlenmelerini ve sosyalleşmelerini teşvik etmek için sıklıkla mini oyunlar ekler. Bir mola beklerken.Buna, oyuncuların oynayabilmesi için fiziği olan küre parçaları koymak ve hatta mini engel parkurları dahil edilebilir.
Opsiyonel zorluklar
Birçok Roblox deneyimi, serbest bırakıldıktan sonra bile güncellemeler almaya devam ediyor.Aşağıda, projeniz için yeni özellikler ekleyebilecek bazı seçenekli zorluklar bulunmaktadır.
Tuzaklar
Oyunculara zarar veren tuzaklar veya engeller ekleyerek haritaları daha zorlu hale getirin. Daha fazlasını Tuzak Oluşturma 'da öğrenin.
Takip puanı
Birinin bir turu kaç kez kazandığını izleyen bir lider tablosu oluşturun. Bu makaleyi kullanarak Lider tabloları üzerinde bir tanesini kodlayın.
Güçlendirmeler
oyuncuhızını veya aletin saldırı gücünü değiştirmek gibi değişiklikler yapacak kodlanmış parçalar oluşturun.Unutma, bir eşleşmesonundan sonra, güçlendirmelerin setini yeniden oluşturmak için resetMatch() kullan.Referans için, Güçlendirmeler eğitiminde daha fazla bilgi edinin.
Daha fazla arenaya ekleyin
Farklı ayarlarla daha fazla arenayı inşa edin ve rastgele bir harita seçimi kodlayın.Oyuncular bir eşleşmebaşlattığında, MapManager adlı bir modül senaryosu rastgele bir harita seçecek ve ardından oyuncuları bu doğma konumlarına gerektiği gibi atayacaktır.İpuçlarına veya bir uygulamanın görüntülenmesine ihtiyacınız varsa aşağıdaki kod kutusunu kontrol edin.
--[[
Setup Notes:
1. In Workspace, create a folder named Maps. Store all parts of a map in individual folders.
2. For each individual map, include a folder named SpawnLocations
3. When starting a match, use pickNewMap() to get a random map. When assigning player spawn points, use
GetSpawnLocations() to get a table with all locations.
]]
local MapManager = {}
local mapsFolder = workspace.Maps
-- Aralarında döndürülebilecek tüm haritaları depolar
local availableMaps = mapsFolder:GetChildren()
-- Mevcut haritayı oynatırken saklar
local activeMap
-- Rastgele haritalar almak için kullanılır.
local randomGenerator = Random.new()
-- Mevcut haritalardan rastgele bir harita alır Available maps tablosundan
function MapManager.pickNewMap()
local whichMapKey = randomGenerator:NextInteger(1, #availableMaps)
activeMap = availableMaps[whichMapKey]
print("New map: " .. activeMap.Name)
end
-- haritaların mevcut oluşturma noktalarıyla bir tablo döndürür
function MapManager.getSpawnLocations()
local spawnPoints = activeMap:FindFirstChild("SpawnLocations")
local availableSpawnPoints = spawnPoints:GetChildren()
return availableSpawnPoints
end
return MapManager