Mod Sistemi Dersleri (Yeni konular eklendi)

Users who are viewing this thread

Status
Not open for further replies.
Diabelica said:
Bu kısımda modül sistemindeki en büyük ve en önemli dosyalardan ; Mount & Blade oyunundaki tüm diyalogları içeren module_dialogs.py dosyasını inceleyeceğiz.Herhangi bir yaratmak istediğiniz yeni diyalog bu doyanın içine gidecek.Bu dosya ayrıca en alt kısmında daha kendi diyalogları olmayan birlikler için ataç diyaloglar içerir.

7.1 -- Module_Dialogs kırılmaları.

Dosya hemen bir python listesi ile başlar ve bu listeyi oyundaki ilk dialoglardan biri ile Constable Harek in River Pirate lar ile ilgili açıklaması ile takip eder.Hatırlanması gereken önemli ir gerçek oyun module diyaloglarını yukarıdan aşağıya ; durumun kriterlerine uyan ilk satırı kullanarak tarar.Başka başka durumlarda (bu haritadaki bir karşılaşmadan bir NPC ile bir sahnede konuşmaya kadar) kullanılan satırları ayırt eder.

Her diyalog satırının bir tupple olduğunu fark edeceksiniz.Satırları birleştiren birazdan inceleyeceğimiz diyalog-ifadeleri (dialog-states)dir.

Bir dialog tupplenın örneği

  [trp_constable_hareck,"start", [], "What do you want?", "constable_hareck_talk",[]],

Bu iyi bir örnek olarak kullanılabilecek basit harika bir tupple.Bir satır diyalogunun yapması gereken her şeyi yapıyor.Bir sahnede Constable Hareck’ e yaklaşıldığında “Constable Hareck _Talk” dialog-ifadesini verip mouse ile tıklanıldığında “What do you want” tekstini gösteriyor.

Tupple alan kırılmaları.

1)Diaylog yapılan kişi.Bu oyuncunun kimle konuşuyorsa onunla eşleşmeli
2)Başlangıç dialog-ifadesi. Bu satırın nasıl açılacağını ifade eder.


DEVAM EDECEK İŞ ZAMANI
Diabelica ben devam etmek istiyorum. Umarım kızmazın.

1)Diyalog yapılan kişi.Bu oyuncunun kimle konuşuyorsa onunla eşleşmeli
2)Başlangıç dialog-ifadesi. Bu satırın nasıl açılacağını ifade eder.
3)Kondisyon bloğu.
4)Diyalog yazısı. Buraya yazdığınız yazılar oyunda görünür.
5)Diyalog Bölümünün bitişi. Bu dizinden sonra ne yapılacağı karar verilir.
6)Sonuç Bölümü.

Constable Hareck Konuşmasından örnek:
1 ) Konuşulan karakter = trp_constable_hareck
2 ) Diyaloğun başlayış durum = "start"
3 ) Kondüsyon aralığı = []
4 ) Diyalog yazısı = "What do you want?"
5 ) Diyalog durumunun bitişi = "constable_hareck_talk"
6 ) Sonuç Bölümü = []

Diyalog durumunun bitişi çok önemlidir. Bu block sayesinde diyalog düzgünce kurulabilir.

Diyalog bitiş durumu ("constable_hareck_talk") diyaloğu yönetir ve sonraki diyalog yazısına geçmenizi sağlar. Bu block, istediğiniz şekilde olabilir(türkçe karakterler hariç).

Eğer bir diyalog "start_npc_talk" ile bitiyorsa, sonra ki diyalog başlayış durumuda "start_npc_talk" olmalıdır. Eğer böyle olmazsa, diyalog ekranı o bölümde kitlenir ve öyle kalır. Bunun için diyalog bitişini ve başlayışını kontrol etmeniz gerekir.

UYARI: Modül sisteminde diyalog bitiş/başlayış durumunun tutmaması durumunda build_module.bat size uyarı vermeyecektir. Tekrar tekrar kontrol edin.

Eğer diyaloğun bitip pencerenin kapanmasını istiyorsanız, diyaloğun bitiş durumuna "close_window" dizinini eklemelisiniz.("" de dahil)

Yeni bir diyalog yaratılırken, seçtiğiniz diyalog durumuna göre özellikler kazandırırsınız(ilk diyalog durumu). İlk diyalog durumları:

"start" -- Diyaloğun başlatılması için kullanılır.
"party_encounter" -- Başka bir partiyle karşılaşıldığında kullanılır.
"party_relieved" -- Eğer dost bir partiye yardıma gittiyseniz bu diyalog açılır. Önce savaşı kazanmanız gerekir.
"prisoner_liberated" -- Bir düşman partiyi yendiğinizde ve NPC'ler(hero) esir kaldığında kullanılır.
"enemy_defeated" -- Eğer siz düşman tarafından yenildiyseniz ve düşman partide bir HERO varsa, o zaman bu diyalog açılır.
"event_triggered" -- Ne zaman bir diyalog triggerlandığında açılır.
"member_chat" -- Parti üyesi ile diyalog kurulması için kullanılır.
"prisoner_chat" -- Esir ile diyalog kurulması için kullanılır.

Eğer dikkat ederseniz, constable hareck'in diyaloğunda sadece "start" var. Normal şehir için konuşmalar için bunu kullanabilirsiniz.
 
Status
Not open for further replies.
Back
Top Bottom