Bagaimana saya bisa memastikan level prosedural dalam RTS adil?

10

Saya telah melihat bahwa simetri dan koherensi penting dalam desain level RTS, tetapi saya malas dan ingin melakukan level yang dihasilkan secara prosedural.

Bagaimana saya bisa memastikan saya menghasilkan lapangan bermain yang adil ketika secara prosedural membuat level untuk RTS?

James Pae
sumber
4
Ini secara bertahap semakin terkubur oleh usia, tetapi saya akan merekomendasikan mencari info tentang cara skrip pembuatan peta acak bekerja di game Age of Empires. Ini adalah file teks yang dapat diedit oleh pemain yang menjelaskan cara membuat peta skirmish dari berbagai jenis. Saya ingat mereka memiliki metode untuk meletakkan tambalan dan kelompok bidang / properti tertentu, untuk secara adil menempatkan hal-hal seperti sumber daya sehingga mereka dijamin akan tersedia, dan untuk mengukir jalur melalui medan untuk memastikan pemain dapat saling menjangkau. Mempelajari cara resep mereka bekerja harus memberi Anda beberapa ide untuk Anda sendiri.
DMGregory
2
Anda tidak menyebutkan apakah RTS Anda adalah satu orang atau multipemain. Jika satu orang, penyeimbangan beberapa tingkat dapat dilakukan dengan mengubah perilaku AI agar sesuai dengan keterampilan pemain. Dengan kata lain, AI mungkin memiliki akses ke sumber daya lebih dari pemain, tetapi permainan menyesuaikan seberapa agresif menggunakan sumber daya itu tergantung pada seberapa agresif pemain melakukan serangan atau mengeksploitasi sumber dayanya.
Mark Ripley
1
Untuk menambah apa yang dikatakan Mark, apa jenis keseimbangan yang Anda cari? Apa yang Anda gunakan untuk menyelesaikan peta?
Nicol Bolas

Jawaban:

26

Secara pribadi, saya menemukan simetri dalam desain level menjadi membosankan, dan saya tidak berpikir itu adalah kasus yang diperlukan untuk level yang adil; simetri adalah cara untuk memastikan bahwa setiap orang memiliki akses ke sumber daya yang sama dan hambatan yang sama berdasarkan tingkat yang secara harfiah dicerminkan untuk setiap pemain dengan cara tertentu. Saya pikir bagian penting adalah akses ke (secara kasar) keuntungan dan kerugian yang sama. Bukan karena simetri itu sendiri.

Saya juga berpikir bahwa permainan seimbang sehingga semua pihak memiliki kekuatan yang setara dan memiliki peluang yang sama membosankan. Anda jelas tidak menginginkan ketidakseimbangan total dari faktor-faktor tersebut, tetapi saya pikir itu dapat menciptakan dinamika permainan yang menarik untuk menawarkan setiap sisi peluang dan penghalang jalan yang sedikit berbeda.

Itulah jenis konteks desain yang saya pikirkan sebagai membingkai jawaban aktual untuk pertanyaan:


Jika simetri benar-benar penting bagi Anda, Anda hanya dapat secara prosedural menghasilkan sepotong level dan kemudian mencerminkan level tersebut di kedua sumbu. Potongan yang Anda hasilkan pada dasarnya seperempat tingkat dan Anda mencerminkannya sehingga setiap kuadran sama. Misalnya, peta ketinggian prosedural dengan setoran sumber daya yang tersebar secara acak:

masukkan deskripsi gambar di sini

Tapi seperti yang saya katakan di atas, itu tampak membosankan. Pendekatan yang lebih menarik mungkin untuk menghasilkan seluruh wilayah secara prosedural, tetapi ketika menempatkan sumber daya, pastikan untuk membatasi setiap kuadran untuk memiliki jumlah yang sama dari masing-masing (dalam beberapa toleransi untuk memberikan beberapa variabilitas). Anda mungkin ingin bias penempatan berbagai jenis sumber daya ke berbagai bidang (secara acak, dekat titik awal, dekat perbatasan) berdasarkan pada pentingnya sumber daya. Sebagai contoh:

masukkan deskripsi gambar di sini

Anda dapat melakukan analisis pada gambar yang dihasilkan untuk mencoba menemukan tepi fitur - ngarai sempit, misalnya, yang dapat dianggap kemacetan. Anda dapat memutuskan untuk memutar ulang pembuatan medan untuk sebagian peta jika, misalnya, memiliki kemacetan yang lebih banyak atau jauh lebih sedikit atau fitur medan yang dapat dideteksi serupa daripada yang lain. Anda juga mungkin ingin melakukan analisis medan yang serupa untuk memastikan setiap sumber daya yang ditempatkan, dalam beberapa cara, dapat dijangkau.

Misalnya, Anda dapat memutuskan untuk menggulung kembali kuadran kiri bawah karena memiliki terlalu banyak air (merah) atau kuadran yang mengandung hijau karena mereka terlalu menguntungkan secara taktis (kemacetan ngarai potensial):

masukkan deskripsi gambar di sini

Anda juga dapat memilih untuk memandu pembuatan fitur secara manual; Anda dapat secara manual menempatkan elemen-elemen tertentu, seperti sungai yang membagi bagian-bagian level atau deposit sumber daya utama, dan menjalankan generasi prosedural setelahnya sehingga mempertahankan fitur penyetelan kunci yang ditempatkan dengan tangan sambil tetap menyediakan varietas organik dan menarik yang Anda inginkan. generasi prosedural.

Misalnya, medan yang dihasilkan yang melindungi sungai yang ditempatkan secara manual yang membagi peta menjadi dua dan tutupan hutan memberikan pertahanan ekstra di sekitar pangkalan:

masukkan deskripsi gambar di sini


sumber
2
Terima kasih, ini akan bekerja dengan baik dengan sistem chunk saya. Orang-orang tampak bingung dengan pernyataan "tapi saya malas". Saya bukan artis, dan saya menemukan noise dan generasi mesh lebih menarik.
James Pae
2
@JamesPae: " Saya bukan artis " Desain level bukan tentang seni . Ini tentang gameplay. Jadi pertanyaannya adalah, apakah Anda suka mendesain game?
Nicol Bolas
8
@JamesPae jika Anda tidak bisa membuat level yang menyenangkan, Anda akan memiliki waktu yang sangat sulit untuk membuat level yang dihasilkan secara prosedural Anda menyenangkan. Saya sarankan Anda membuat kerajinan setidaknya satu tingkat sehingga Anda dapat mempelajari apa yang akan menyenangkan sebelum menulis generator Anda
Evorlor
2
@Evorlor dia bilang dia tidak menikmatinya, bukan karena dia tidak bisa melakukannya. Mengapa semua orang mengabaikan hal ini sepanjang waktu?
Davor
5
Mengapa semua orang mengambil semuanya secara harfiah? Dia jelas membuat lelucon dengan pernyataan itu. Saya mengerti sudut pandang OP, ya mereka bisa membuat beberapa level, tetapi Anda masih memiliki level sebanyak yang Anda buat. Jika Anda menghabiskan upaya yang sama untuk menghasilkan generator level yang baik, Anda berpotensi menggunakan level yang tak terbatas untuk digunakan. Orang-orang memiliki pola pikir dan pendapat yang berbeda. Beberapa mungkin suka membuat kerajinan tingkat tinggi, beberapa mungkin menikmati benar-benar terlibat dalam membuat generator tingkat besar.
JamEngulfer
7

Dalam beberapa kasus, dimungkinkan untuk mengandalkan pemain itu sendiri untuk membangun peta asimetris yang seimbang dengan menggunakan mekanisme manipulasi ubin.

Di salah satu ujung spektrum, Anda dapat mengizinkan para pemain untuk membuat peta, baik sebagian atau seluruhnya, dengan memilih & menempatkan petak peta. Ada beberapa cara berbeda yang bisa dilakukan penyesuaian:

  • pemain memilih dari tumpukan ubin
  • lapisan pilih dari setumpuk ubin pribadi
  • ubin dipilih melalui fase penyusunan
  • beberapa ubin mungkin diperbaiki terlebih dahulu melalui skenario (yaitu selalu menumbuhkan sungai yang dijembatani di tengah peta)
  • pemain membeli ubin dari pasar pusat dengan beberapa sumber daya
  • pemain mungkin atau mungkin tidak diizinkan memegang tegel

Di ujung lain spektrum manipulasi ubin memungkinkan pemain untuk memanipulasi ubin peta. Dalam solusi ini, game dimulai dengan peta awal. Peta awal bisa simetris atau mungkin 'cukup adil' dengan menggunakan jawaban lain mana pun.

Selanjutnya, fase manipulasi peta terjadi di mana para pemain dapat melakukan beberapa hal berikut:

  • putar ubin
  • menukar ubin (berdekatan atau sebaliknya)
  • cermin ubin
  • dorong baris atau kolom ubin (ubin yang akan jatuh dari tepi membungkus)

Manipulasi ini dapat dieksekusi satu per satu, dalam hal ini satu pemain akan memiliki kesempatan untuk bereaksi terhadap manipulasi pemain lain, atau pemain dapat mengantre dari daftar perubahan yang dieksekusi. Selain itu, Anda dapat mengizinkan pemain untuk memanipulasi seluruh peta, atau membatasi hal-hal pada area awal mereka.

Kelemahan dari pendekatan ini adalah bahwa hasil akhir perlu dijaga terhadap hasil yang tidak diinginkan - yaitu memanipulasi pegunungan yang tidak mungkin dilalui sehingga bagian dari peta menjadi tidak dapat diakses. Solusi yang mungkin untuk kelemahan ini adalah:

  • memeriksa kemungkinan perpindahan & penolakan yang mengarah pada hasil ilegal
  • memungkinkan semua bergerak, tetapi membatalkan apa pun yang ilegal
  • membangun ubin agar tidak ada gerakan yang ilegal
  • mendesain mecahnics game lainnya (yaitu gerakan) sehingga tidak ada gerakan yang ilegal
Pikalek
sumber
2

Mintalah algoritma pembuatan peta Anda menghasilkan level simetris dengan menghasilkan level, mencerminkannya, dan menempatkan setiap pemain di satu sisi. Peta empat pemain dapat dibuat dengan memantulkannya pada sumbu x dan y.

Dengan begitu peta akan sama baik (atau buruk) untuk semua pemain. Efek samping yang perlu Anda perhatikan adalah bahwa itu berarti bahwa para pemain mengetahui posisi pemain lain dan tata letak bagian lain dari peta setelah menjelajahi bagian mereka sendiri.

Pilihan lain adalah membuat peta tanpa trik simetri ini, tetapi kemudian tunjukkan seluruh peta kepada para pemain dan minta setiap pemain memilih lokasi awal mereka dengan bebas.

Philipp
sumber
1

Salah satu pendekatan adalah menggunakan faktor-faktor lain untuk menyeimbangkan peta. Anda mungkin dapat mengotomatisasi ini dengan menggunakan beberapa algoritma analisis peta & menyediakan sumber daya tambahan awal ke lokasi yang dianggap tidak beruntung. Atau, Anda dapat menggunakan pemain sendiri untuk langkah ini. Contoh saat ini adalah penggunaan lelang terbalik dalam mode pengungkapan di Offworld Trading Company (OTC) untuk menemukan klaim awal Anda (yaitu memilih lokasi basis awal):

Seiring berlalunya waktu, hutang awal untuk pendirian awal turun. Ini pada akhirnya akan berubah menjadi uang awal jika dibutuhkan waktu yang cukup lama bagi 2 pemain terakhir untuk ditemukan. Begitu hanya ada satu pemain yang tersisa yang belum mendirikan markas mereka, nilai-nilai berhenti berubah dan pemain itu tidak lagi mendapatkan keuntungan dari menunggu untuk ditemukan.

Saya tidak ingat apakah itu wawancara 3 Moves Ahead atau Game Round Table Table , tetapi di salah satu dari mereka Soren Johnson (pengembang) mengatakan mekanik ini pada dasarnya mengubah masalah peta dari "bisakah saya menemukan lokasi terbaik pertama" menjadi " seberapa bagus lokasi terbaik kedua di peta. "

Manfaatnya adalah solusi ini memungkinkan peta yang sangat asimetris. Kerugiannya adalah bahwa seluruh peta diungkapkan kepada semua pemain, setidaknya di awal. Pendekatan OTC juga mengungkapkan lokasi basis pemain. Mekanik lain seperti penawaran buta, mungkin menghindari mengungkapkan lokasi pangkalan.

Pikalek
sumber