FlexMatchaturan set definisi properti - Amazon GameLift

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

FlexMatchaturan set definisi properti

Bagian ini mendefinisikan setiap properti dalam skema kumpulan aturan. Untuk bantuan tambahan dalam membuat kumpulan aturan, lihat Membangun set FlexMatch aturan.

name

Label deskriptif untuk kumpulan aturan. Nilai ini tidak terkait dengan nama yang ditetapkan ke GameLift MatchmakingRuleSetsumber daya Amazon. Nilai ini termasuk dalam data perjodohan yang menjelaskan kecocokan yang telah selesai, tetapi tidak digunakan oleh proses Amazon apa pun. GameLift

Nilai yang diizinkan: String

Wajib? Tidak

ruleLanguageVersion

Versi bahasa ekspresi FlexMatch properti yang digunakan.

Nilai yang diizinkan: “1.0”

Wajib? Ya

playerAttributes

Kumpulan data pemain yang disertakan dalam permintaan pencocokan dan digunakan dalam proses pencocokan. Anda juga dapat mendeklarasikan atribut di sini agar data pemain disertakan dalam data pencocokan yang diteruskan ke server game, meskipun data tersebut tidak digunakan dalam proses pencocokan.

Wajib? Tidak

name

Nama unik untuk atribut pemain yang akan digunakan oleh pembuat kecocokan. Nama ini harus cocok dengan nama atribut pemain yang dirujuk dalam permintaan pencocokan.

Nilai yang diizinkan: String

Wajib? Ya

type

Jenis data nilai atribut pemain.

Nilai yang diizinkan: "string", "number", "string_list", "string_number_map"

Wajib? Ya

default

Nilai default untuk digunakan saat permintaan pencocokan tidak menyediakannya untuk pemain.

Nilai yang diizinkan: Setiap nilai yang diizinkan untuk atribut pemain.

Wajib? Tidak

algorithm

Pengaturan konfigurasi opsional untuk menyesuaikan proses pencocokan.

Wajib? Tidak

strategy

Metode untuk digunakan saat membangun kecocokan. Jika properti ini tidak disetel, perilaku defaultnya adalah "exhaustiveSearch".

Nilai yang diizinkan:

  • "exhaustiveSearch" – Metode pencocokan standar. FlexMatchmembentuk kecocokan di sekitar tiket tertua dalam batch dengan mengevaluasi tiket lain di pangkalan berdasarkan serangkaian aturan kecocokan khusus. Strategi ini digunakan untuk kecocokan dengan 40 pemain atau kurang. Saat menggunakan strategi ini, batchingPreference harus diatur ke "random" atau "sorted".

  • “balanced” — Metode yang dioptimalkan untuk membentuk kecocokan besar dengan cepat. Strategi ini hanya digunakan untuk kecocokan dengan 41 hingga 200 pemain. Ini membentuk kecocokan dengan menyortir kolam tiket, membangun kecocokan potensial dan menugaskan pemain ke tim, dan kemudian menyeimbangkan setiap tim dalam kecocokan menggunakan atribut pemain yang ditentukan. Misalnya, strategi ini dapat digunakan untuk menyamakan tingkat keterampilan rata-rata semua tim dalam suatu kecocokan. Saat menggunakan strategi ini, balancedAttribute harus disetel, dan batchingPreference harus disetel ke "Populasi terbesar" atau "Wilayah tercepat". Sebagian besar jenis aturan khusus tidak dikenali dengan strategi ini.

Wajib? Ya

batchingPreference

Metode pra-penyortiran yang digunakan sebelum mengelompokkan tiket untuk pembuatan kecocokan. Pra-penyortiran kolam tiket menyebabkan tiket dikelompokkan bersama berdasarkan karakteristik tertentu, yang cenderung meningkatkan keseragaman antar pemain di kecocokan akhir.

Nilai yang diizinkan:

  • "random" – Hanya berlaku dengan strategy = "exhaustiveSearch". Tidak ada pra-penyortiran dilakukan; tiket di kolam di-batch secara acak. Ini adalah perilaku default untuk strategi pencarian lengkap.

  • "sorted" – Hanya berlaku dengan strategy = "exhaustiveSearch". Kolam tiket diurutkan sebelumnya berdasarkan atribut pemain yang tercantum di sortbyAttributes.

  • "largestPopulation" – Hanya berlaku dengan strategy = "balanced". Kolam tiket diurutkan sebelumnya berdasarkan wilayah tempat pemain melaporkan tingkat latensi yang dapat diterima. Ini adalah perilaku default untuk strategi yang seimbang.

  • "fastestRegion" – Hanya berlaku dengan strategy = "balanced". Kolam tiket diurutkan terlebih dahulu berdasarkan wilayah tempat pemain melaporkan tingkat latensi terendah mereka. Kecocokan yang dihasilkan membutuhkan waktu lebih lama untuk diselesaikan, tetapi latensi untuk semua pemain cenderung rendah.

Wajib? Ya

balancedAttribute

Nama atribut pemain untuk digunakan saat membuat kecocokan besar dengan strategi seimbang.

Nilai yang diizinkan: Atribut apa pun yang dinyatakan dalam playerAttributes dengan type = "number".

Wajib? Ya, jika strategy = "balanced".

sortByAttributes

Daftar atribut pemain untuk digunakan saat menyortir kolam tiket sebelum di-batch. Properti ini hanya digunakan saat pra-penyortiran dengan strategi pencarian lengkap. Urutan daftar atribut menentukan urutan penyortiran. FlexMatchmenggunakan konvensi penyortiran standar untuk nilai alfa dan numerik.

Nilai yang diizinkan: Atribut apa pun yang dinyatakan dalam playerAttributes.

Wajib? Ya, jika batchingPreference = "sorted".

backfillPriority

Metode prioritas untuk mencocokkan tiket backfill. Properti ini menentukan kapan FlexMatch memproses tiket isi ulang dalam batch. Ini hanya digunakan saat pra-penyortiran dengan strategi pencarian lengkap. Jika properti ini tidak disetel, perilaku defaultnya adalah "normal".

Nilai yang diizinkan:

  • "normal" – Jenis permintaan tiket (isi ulang atau kecocokan baru) tidak dipertimbangkan saat membentuk kecocokan.

  • “tinggi” - Kumpulan tiket diurutkan berdasarkan jenis permintaan (dan kemudian berdasarkan usia), dan FlexMatch upaya untuk mencocokkan tiket isi ulang terlebih dahulu.

  • “rendah” - Kumpulan tiket diurutkan berdasarkan jenis permintaan (dan kemudian berdasarkan usia), dan FlexMatch upaya untuk mencocokkan tiket non-isi ulang terlebih dahulu.

Wajib? Tidak

expansionAgeSelection

Metode untuk menghitung waktu tunggu untuk perluasan aturan kecocokan. Perluasan digunakan untuk melonggarkan syarat kecocokan jika kecocokan belum diselesaikan setelah beberapa waktu berlalu. Waktu tunggu dihitung berdasarkan usia tiket yang sudah ada di kecocokan yang telah terisi sebagian. Jika properti ini tidak disetel, perilaku defaultnya adalah "newest".

Nilai yang diizinkan:

  • "newest" – Waktu tunggu perluasan dihitung berdasarkan tiket dengan stempel waktu pembuatan terbaru dalam kecocokan yang sebagian telah selesai. Perluasan cenderung dipicu lebih lambat, karena satu tiket yang lebih baru dapat memulai kembali jam waktu tunggu.

  • "oldest" – Waktu tunggu perluasan dihitung berdasarkan tiket dengan stempel waktu pembuatan tertua dalam kecocokan. Ekspansi cenderung dipicu lebih cepat.

Wajib? Tidak

teams

Konfigurasi tim dalam pencocokan. Berikan nama tim dan rentang ukuran untuk setiap tim. Kumpulan aturan harus menentukan setidaknya satu tim.

name

Nama unik untuk tim. Nama tim dapat dirujuk dalam aturan dan perluasan. Pada kecocokan yang sukses, pemain ditugaskan berdasarkan nama tim dalam data pencocokan.

Nilai yang diizinkan: String

Wajib? Ya

maxPlayers

Jumlah maksimum pemain yang dapat ditetapkan ke tim.

Nilai yang diizinkan: Jumlah

Wajib? Ya

minPlayers

Jumlah minimum pemain yang harus ditetapkan ke tim sebelum kecocokan dianggap layak.

Nilai yang diizinkan: Jumlah

Wajib? Ya

quantity

Jumlah tim jenis ini untuk dibuat dalam kecocokan. Tim dengan jumlah lebih besar dari 1 ditetapkan dengan nomor tambahan ("Merah_1", "Merah_2", dll.). Jika properti ini tidak diatur, nilai default adalah “1".

Nilai yang diizinkan: Jumlah

Wajib? Tidak

rules

Kumpulan pernyataan aturan yang menentukan cara mengevaluasi pemain untuk kecocokan.

Wajib? Tidak

name

Nama unik untuk aturan. Semua aturan dalam kumpulan aturan harus memiliki nama yang unik. Nama aturan direferensikan dalam log peristiwa dan metrik yang melacak aktivitas yang terkait dengan aturan.

Nilai yang diizinkan: String

Wajib? Ya

description

Deskripsi teks untuk aturan. Informasi ini dapat digunakan untuk mengidentifikasi tujuan aturan. Ini tidak digunakan dalam proses perjodohan.

Nilai yang diizinkan: String

Wajib? Tidak

type

Jenis pernyataan aturan. Setiap jenis aturan memiliki properti tambahan yang harus ditetapkan. Untuk detail lebih lanjut tentang struktur dan penggunaan setiap jenis aturan, lihatFlexMatchjenis aturan.

Nilai yang diizinkan:

  • “AbsoluteSort” - Mengurutkan menggunakan metode penyortiran eksplisit yang memesan tiket dalam batch berdasarkan apakah atribut pemain tertentu dibandingkan dengan tiket tertua dalam batch.

  • "collection" – Mengevaluasi nilai dalam koleksi, seperti atribut pemain yang merupakan koleksi, atau kumpulan nilai untuk beberapa pemain.

  • "comparison" – Membandingkan dua nilai.

  • “compound” - Mendefinisikan aturan perjodohan majemuk menggunakan kombinasi logis dari aturan lain dalam set aturan. Didukung hanya untuk pertandingan 40 atau lebih sedikit pemain.

  • "distance" – Mengukur jarak antara nilai angka.

  • “BatchDistance” - Mengukur perbedaan antara nilai atribut dan menggunakannya untuk mengelompokkan permintaan pertandingan.

  • “DistanceSort” - Menyortir menggunakan metode penyortiran eksplisit yang memesan tiket dalam batch berdasarkan bagaimana atribut pemain tertentu dengan nilai numerik dibandingkan dengan tiket tertua dalam batch.

  • "latency" – Mengevaluasi data latensi regional yang dilaporkan untuk permintaan pencocokan.

Wajib? Ya

expansions

Aturan untuk melonggarkan persyaratan kecocokan dari waktu ke waktu ketika kecocokan tidak dapat diselesaikan. Siapkan perluasan sebagai serangkaian langkah yang diterapkan secara bertahap agar kecocokan lebih mudah ditemukan. Secara default, FlexMatch menghitung waktu tunggu berdasarkan usia tiket terbaru yang ditambahkan ke pertandingan. Anda dapat mengubah cara menghitung waktu tunggu perluasan menggunakan properti algoritme expansionAgeSelection.

Waktu tunggu perluasan adalah nilai absolut, jadi setiap langkah harus memiliki waktu tunggu lebih lama dari langkah sebelumnya. Misalnya, untuk menjadwalkan rangkaian perluasan bertahap, Anda dapat menggunakan waktu tunggu 30 detik, 40 detik, dan 50 detik. Waktu tunggu tidak boleh melebihi waktu maksimum yang diizinkan untuk permintaan kecocokan, yang diatur dalam konfigurasi pencocokan.

Wajib? Tidak

target

Aturan menyetel elemen agar rileks. Anda dapat mengendurkan properti ukuran tim atau properti pernyataan aturan apa pun. Sintaksnya adalah "<component name>[<rule/team name>].<property name>". Misalnya, untuk mengubah ukuran minimum tim: teams[Red, Yellow].minPlayers. Untuk mengubah persyaratan keterampilan minimum dalam pernyataan aturan perbandingan bernama "minSkill": rules[minSkill].referenceValue.

Wajib? Ya

steps
waitTimeSeconds

Lama waktu, dalam detik, untuk menunggu sebelum menerapkan nilai baru untuk elemen kumpulan aturan target.

Wajib? Ya

value

Nilai baru untuk elemen kumpulan aturan target.