Aşağıda listelenen şartlar altında verilen görev mekaniğini uygulamak için hangi araçları, kalıpları veya en iyi uygulamaları önerirsiniz?
Yazılım mimarisi (nasıl jenerik olmanız gerekir) ve nesne kablolaması, olay aboneliği ve koşulların gösterilmesi için seçenekler hakkında konuşuyorum. Başarılı bir şekilde kullandığınız araçlardan / kütüphanelerden bahsedilebilir. Düzenleme: Komut dosyası kullanıyorsanız, hangi kurulumu önerirsiniz?
Gereksinimler:
- basit 2D mmo (rpg)
- görevler dahil tüm oyun verileri ilişkisel bir veritabanında saklanır
- oyundaki herhangi bir etkinlik oyuncular için yeni bir arayışı veya mevcut görevlerin ilerlemesini tetikleyebilir
- bir görevin, oyunculara sunulmadan önce yerine getirilmesi gereken rastgele sayıda koşul olabilir
- bir görev, keyfi sayıda alt görev / adımdan oluşabilir
görevler basitten:
A ile konuş - 5 B öldür - A ile konuş - sağlığı kalıcı olarak artır
oldukça dahil olmak için:
X alanında ürün kullan - Y alanına git - bir bot ortaya çıkacak -% 10'dan fazla hasar almadan botu öldürecek - bot damla öğesi - eşyayı al - portal kilidini açıyor - portalın arkasındaki J'ye eşya teslim et - altın ve deneyim kazan - portalı bir kez daha geçmesine izin ver - bu oyuncu için portalı kilitle
seviye örnekleri bir olasılıktır (oyuncular sadece bu katılımcılar için seviye konumunu ortaya çıkaracak takımlardaki belirli görevleri veya izolasyonları tamamlayabilirler)
- Görevler tercihen komut dosyası yazmadan veya programlama bilgisi olmadan bir dünya editörü kullanılarak yönetilebilir olmalıdır ( Düzenleme: genel olarak komut dizilerine karşı savunmama)
- Uygulama dili olarak C ++ varsayıyorum
Herhangi bir olay ve koşul zincirini birleştirebilseydim daha karmaşık ve dolayısıyla daha ilgi çekici görevleri modelleyebileceğimizi düşünüyordum. Kendi ECA (Olaylar-Koşullar-Eylemler) motorumu yuvarlamayı denedim ama bu aşırı olabilir. Herhangi bir komut dosyası kullanmadan genel koşulları modellemek özellikle zordu.