Alat, pola, atau praktik terbaik apa yang akan Anda rekomendasikan untuk menerapkan mekanisme pencarian yang diberikan di bawah persyaratan yang tercantum?
Saya berbicara tentang arsitektur perangkat lunak (seberapa umum Anda seharusnya) dan pilihan untuk pengkabelan objek, berlangganan acara, dan representasi kondisi. Menyebutkan alat / pustaka yang telah berhasil Anda gunakan dipersilakan. Sunting: Jika Anda menggunakan skrip, pengaturan apa yang Anda rekomendasikan?
Persyaratan:
- 2Do mm sederhana (rpg)
- semua data game, termasuk pencarian, disimpan dalam basis data relasional
- setiap peristiwa dalam game dapat memicu pencarian baru untuk pemain atau memajukan pencarian yang ada
- sebuah quest dapat memiliki sejumlah kondisi yang harus dipenuhi sebelum pencarian tersedia untuk pemain
- sebuah quest dapat terdiri dari sejumlah sub-quests / langkah sewenang-wenang dengan kondisi arbitrer
pencarian akan berkisar dari yang sederhana:
berbicara dengan A - membunuh 5 B - berbicara dengan A - meningkatkan kesehatan secara permanen
cukup terlibat:
gunakan item di area X - pergi ke area Y - bot akan menelurkan - membunuh bot tanpa mengambil lebih dari 10% kerusakan - item bot drop - mengambil item - membuka portal - mengirim item ke J di belakang portal - menerima emas dan pengalaman - memungkinkan untuk melewati portal sekali lagi - kunci portal untuk pemain ini
contoh tingkat adalah suatu kemungkinan (pemain dapat menyelesaikan pencarian tertentu dalam tim atau isolasi yang akan menelurkan lokasi tingkat hanya untuk para peserta)
- Quests sebaiknya dikelola menggunakan editor dunia tanpa pengetahuan scripting atau pemrograman ( Edit: tidak mengadvokasi terhadap scripting secara umum)
- Saya menganggap C ++ sebagai bahasa implementasi
Saya berpikir bahwa jika saya bisa menggabungkan rantai peristiwa dan kondisi apa pun, kita dapat memodelkan pencarian yang lebih kompleks dan mungkin lebih menarik. Saya bereksperimen dengan memutar mesin ECA (Acara-Kondisi-Tindakan) saya sendiri tetapi itu mungkin berlebihan. Sangat sulit untuk memodelkan kondisi umum tanpa menggunakan skrip apa pun.