Menyelesaikan Proyek

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

Selamat! Anda baru saja membuat pertempuran bertahan hidup bermain banyak pemain! Di seluruh seri ini, Anda telah:

  • Skrip modular yang dibuat yang menangani berbagai fungsi permainan seperti teleportasi pemain.
  • Belajar cara menulis acara khusus untuk memulai dan mengakhiri pertandingan
  • Gunakan array untuk mengelola pemain saat mereka bergabung, menang, atau meninggalkan game.

Tapi, permainan Anda hampir siap untuk orang lain untuk bermain. Atau, tarik pemain ke permainan Anda dengan membuat arena Anda unik dan membuat thumbnailmata yang menarik.

Peningkatan Opsional

Berikut adalah beberapa cara untuk meningkatkan pengalaman Anda.

Tingkatkan Visi Peta

Memiliki peta yang menarik secara visual menetapkan kesan pertama yang kuat untuk game Anda, menggairahkan orang untuk mulai bermain. Butuh waktu untuk mengubah tingkat box hitam 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, berikut adalah beberapa contoh peta yang dibangun oleh pengembang Roblox.

Peta oleh Luxeyes
Peta oleh Janedel

Anda dapat membangun di Studio, atau menggunakan aset pra-dibuat. Di bawah ini adalah beberapa sumber daya yang direkomendasikan oleh Roblox yang dapat digunakan untuk membangun lingkungan. Setiap paket termasuk model berkualitas tinggi, sepenuhnya bertekstur.

Mengubah Forcefield

Selama game, Anda mungkin pernah melihat medan gaya saat pemain respawn. Perubah panjang medan gaya saat pemain respawn di SpawnLocation properties.

  1. Klik di Spawn Location yang relevan.
  2. Di Properties > Forcefield,ubah nilai Durasi.

Playtest dan Konfirmasi Variabel

Game yang sukses di Roblox sering diputar ulang untuk memastikan permainan itu menyenangkan dan adil.

Mainkan game Anda dengan rekan dan periksa untuk mengikuti:

  • Apakah durasi pertandingan merasa benar? Apakah pertandingan berakhir terlalu cepat tanpa pemain yang menang, atau memakan waktu terlalu lama?
  • Apakah ukuran peta terasa benar? Apakah ada area yang terasa terlalu kosong? Apakah akan memakan waktu lama untuk berlari ke pemain lain?

Uji, gunakan, dan modifikasi variabel untuk meningkatkan gameplay. Beberapa contoh:

  • Ubah GameSettings.matchDuration untuk membuat pertandingan lebih panjang di peta yang lebih besar.
  • Buat durasi istirahat lebih panjang jika pemain merasa terlalu tiba-tiba.

Jadikan Lobi Sosial

Game populer di Roblox sering menambahkan mini-game untuk mengundang pemain untuk bersenang-senang dan bersosial saat mereka menunggu istirahat. Ini dapat mencakup menempatkan bagian bola dengan fisika sehingga pemain dapat bermain, atau bahkan kursus rintangan mini.

Tantangan Opsional

Banyak pengalaman Roblox terus mendapatkan update bahkan setelah mereka rilis. Berikut adalah beberapa tantangan opsi yang dapat menambahkan fitur baru untuk proyek Anda.

Perangkap

Buat peta lebih menantang dengan menambahkan perangkap atau rintangan yang merusak pemain. Pelajari lebih lanjut di Membuat Perangkap.

Menghitung Skor

Buat papan peringkat yang melacak berapa kali seseorang memenangkan putaran. Kode satu menggunakan artikel ini di Leaderboards .

Kekuatan bertambah

Buat bagian bertindak yang membuat perubahan seperti mengubah kecepatan pemain atau kekuatan alat. Ingat, setelah akhir mencocokkan, gunakan resetMatch() untuk merekam set powerup. Untuk referensi, belajar lebih lanjut dalam tutorial Powerups.

Tambahkan Lebih Banyak Aren

Bangun lebih banyak arena dengan pengaturan dan kode yang berbeda. Setel saat pemain memulai mencocokkan, dan kemudian atribusikan pemain ke lokasi spawn yang diperlukan. Periksa kotak kode di bawah ini jika Anda memerlukan petunjuk atau untuk 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 yang sedang dimainkan
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
-- menghasilkan tabel dengan poin berteluran saat ini
function MapManager.getSpawnLocations()
local spawnPoints = activeMap:FindFirstChild("SpawnLocations")
local availableSpawnPoints = spawnPoints:GetChildren()
return availableSpawnPoints
end
return MapManager