Selamat! Anda baru saja membuat pertempuran royale multiplayer! Selama seri ini, Anda memiliki:
- Membuat skrip modular yang menangani fungsi permainan berbeda seperti teleportasi pemain.
- Pelajari cara mengkodekan acara khusus untuk awal dan akhir pertandingan
- Gunakan array untuk mengelola pemain saat mereka bergabung, menang, atau meninggalkan permainan.
Tetapi, permainan Anda hampir siap untuk dimainkan oleh orang lain. Tarik pemain ke permainan Anda dengan membuat arena unik dan membuat thumbnail yang menarik mata.
Peningkatan opsional
Di bawah ini adalah beberapa cara untuk meningkatkan pengalaman Anda.

Tingkatkan visual peta
Memiliki peta yang menarik secara visual menetapkan kesan pertama yang kuat untuk game Anda, mendorong orang untuk mulai bermain.Luangkan waktu untuk mengubah tingkat graybox Anda menjadi peta nyata.
Ingat menulis deskripsi pengaturan untuk game Anda di awal seri ini? Saat Anda membangun, pastikan peta Anda memiliki pengaturan yang jelas.Untuk inspirasi, di bawah ini adalah beberapa contoh peta yang dibangun oleh pengembang Roblox.


Anda dapat membangun di Studio, atau menggunakan aset premade.Di bawah ini adalah beberapa aset yang disarankan diunggah oleh Roblox yang dapat digunakan untuk membangun lingkungan.Setiap paket termasuk model berkualitas tinggi dan bertekstur penuh.
Mengubah Medan Kekuatan
Selama game, Anda mungkin telah memperhatikan medan gaya saat pemain respawn. Ubah berapa lama medan gaya berlangsung di properti SpawnLocation.
- Klik pada Lokasi Spawn yang relevan.
- Di Properti > Medan Gaya, ubah nilai Durasi.
Tes uji dan konfirmasi variabel
Permainan berhasil di Roblox sering diuji untuk memastikan permainan berjalan menyenangkan dan adil.
Tes permainan Anda dengan rekan dan periksa hal mengikuti:
- Apakah durasi pertandingan terasa benar? Apakah pertandingan berakhir terlalu cepat tanpa pemain pemenang, atau terlalu lama?
- Apakah ukuran peta terasa benar? Apakah ada area yang terasa terlalu kosong? Apakah akan membutuhkan waktu lama untuk berlari ke pemain lain?
Tes, evaluasi, dan modifikasi variabel untuk meningkatkan gameplay. Beberapa contoh:
- Ubah GameSettings.matchDuration untuk membuat pertandingan lebih lama di peta yang lebih besar.
- Buat durasi istirahat lebih lama jika pemain merasa terlalu tiba-tiba.
Jadikan lobi sosial
Permainan populer di Roblox sering menambahkan mini-permainan untuk mendorong pemain untuk bersenang-senang dan menjadi sosial saat mereka menunggu jeda.Ini dapat termasuk menempatkan bagian bola dengan fisika sehingga pemain dapat bermain, atau bahkan rintangan mini.
Tantangan opsional
Banyak pengalaman Roblox terus mendapatkan pembaruan bahkan setelah dirilis.Di bawah ini adalah beberapa tantangan opsional yang dapat menambahkan fitur baru untuk proyek Anda.
Perangkap
Buat peta lebih menantang dengan menambahkan perangkap atau hambatan yang merusak pemain. Pelajari lebih lanjut di Membuat Perangkap.
Skor pelacakan
Buat papan peringkat yang melacak berapa kali seseorang memenangkan ronde. Kode satu menggunakan artikel ini di Papan Peringkat.
Kekuatan tambahan
Buat bagian yang ditulis yang membuat perubahan seperti mengubah kecepatan pemain atau kekuatan serangan alat.Ingat, setelah akhir mencocokkan, gunakan resetMatch() untuk membuat ulang kumpulan powerup.Untuk referensi, pelajari lebih lanjut di tutorial Powerups.
Tambahkan lebih banyak arena
Bangun lebih banyak arena dengan pengaturan dan kode yang berbeda dan pilih peta secara acak.Setiap kali pemain memulai mencocokkan, skrip modul bernama MapManager akan memilih peta acak, lalu menugaskan pemain ke lokasi spawn yang diperlukan.Periksa kotak kode di bawah ini jika Anda membutuhkan petunjuk atau melihat satu implementasi.
--[[
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
-- Menyimpan semua peta yang dapat diputar di antara
local availableMaps = mapsFolder:GetChildren()
-- Menyimpan peta saat ini dalam bermain
local activeMap
-- Digunakan untuk mendapatkan peta acak.
local randomGenerator = Random.new()
-- Mendapatkan peta acak dari tabel peta yang tersedia
function MapManager.pickNewMap()
local whichMapKey = randomGenerator:NextInteger(1, #availableMaps)
activeMap = availableMaps[whichMapKey]
print("New map: " .. activeMap.Name)
end
-- 返回一张表 dengan titik spawn peta saat ini
function MapManager.getSpawnLocations()
local spawnPoints = activeMap:FindFirstChild("SpawnLocations")
local availableSpawnPoints = spawnPoints:GetChildren()
return availableSpawnPoints
end
return MapManager