Crusader Kings III’te 1.5 Yaması Modlama Geliştirmeleri

Crusader Kings III geliştirici günlüklerinde bu hafta 1.5 güncellemesindeki modlama geliştirmelerine dair bilgiler veriliyor.

Crusader Kings III için kaleme alınmış 87. geliştirici günlüğüne hoş geldiniz. Ben Matthew, CK3 ekibindeki Programcılardan birisiyim ve bugün sizlere 1.5 güncellemesiyle birlikte modlamada yaptığımız geliştirmelerden bahsedeceğim.

1.5 ile birlikte birçok farklı noktada modlamaya dair geliştirmemiz mevcut, bu günlükte bunların hepsinden bahsetmem mümkün değil fakat modların büyük çaplı hem de küçük çapta eğlenceli değişiklikler yapabilmesini sağlayan değişikliklerimiz var. Günlüğün sonuna 1.5 için script_docs dosyasını ekledim, yeni eklenen trigger ve effectleri merak eden modcular çıkış öncesinde buradan bilgi edinebilir.

Kraliyet Sarayı

Kraliyet Sarayı da modlanabiliyor, bunun için gfx/court_scene klasöründe değişiklikler yapabiliyorsunuz fakat scene_settings’in oyun içi editör üzerinden düzenlenmesi daha makul olacaktır. Bu editör sayesinde objeleri ve bu objelerin konumlarını çok daha hızlı bir şekilde düzenleyebilirsiniz.

court_scene_editor.png

Bu kısımda çok ayrıntılı bilgi vermeyeceğim zira her şey oldukça basit, objelerin konumunu ayarlıyorsunuz ve diğer ayarlamaların ardından istediğiniz yerde görünüyor.

Bahsetmek istediğim hususlardan birisi karakter konumları, karakterler tekil olarak konumlandırılmıyorlar en basitinden her sarayda İngiltere Kralı bulunmuyor. Bunun yerine karakter konumları belli başlı roller üzerinden belirleniyor. Örneğin arkada gördüğünüz 2 muhafız, muhafız ve şövalye rolünde.

Eğer bir karakter saray muhafızı veya şampiyon olarak atanmışsa bu durumda özel muhafız rolünde bulunuyor. Ek olarak saray soytarısı veya şair için de roller oluşturabiliyorsunuz.

poet_court_scene_role.PNG

Karakterler birden fazla role sahip olamıyorlar fakat bu şekilde oldukça komplike şartlar oluşturabiliyor, bu roller neticesinde animasyonlar belirleyebiliyorsunuz.

Eşcinsel Evliliği

1.5 ile birlikte eşcinsel evlilik desteği ekleniyor, bu sadece modlar için değil aynı zamanda oyun kurallarında bir seçenek olarak mevcut. Bu kuralı seçmeniz durumunda yapay zeka mantığı, etkileşimler ve içeriklerde değişiklikler meydana geliyor.

same_sex_marriage.png

Modlar bu özelliği bir oyun kuralı olmaksızın oyuna ekleyebiliyor veya örneğin kültürel bazda yansıtabiliyor.

Bu, hem geliştirici ekibi hem de topluluk tarafından uzun zamandır talep edilen ve nihayet 1.5 ile birlikte oyuna eklediğimiz için çok memnun olduğumuz bir özellik.

Kodlu Pencereler

CK3 bu zamana kadar çıkarttığımız, modlanabilirlik yönünden en gelişmiş oyunlarımızdan birisi. Bu sadece içerik itibariyle değil, aynı zamanda kodlamalar yönünden de geçerli. Yeni arayüz sistemimiz, özel arayüz modlarının ekleyebileceği veya düzenleyebileceği hususlar noktasında çok daha ileri bir noktada olmamızı sağlasa da, tamamiyle yeni unsurlar ekleyip bu esnada uyumluluğu da sağlamak noktasında eksikliklerimiz vardı.

1.5 ile birlikte “kodlu pencereler” adını verdiğimiz yeni bir sistem oluşturuyoruz. Bu sistem bir modun gui dosyalarında kendi pencerelerini kodlayabilmesini ve gui/scripted_widgets’te kendi gui dosyalarını listeleyebilmesini sağlıyor, örneğin:

gui/test_custom_widget.gui = my_first_cool_test_widget
gui/test_custom_widget.gui = my_second_cool_test_widget

Bu basit kod sayesinde desteklediğimiz diğer tüm pencereler gibi pencere oluşturabiliyorsunuz. Oluşturduğunuz bu pencereler özel verilere erişemiyor fakat global ve karakter bazlı verilere erişebiliyorlar.

scripted_widgets.png

Bu çok büyük bir geliştirmeymiş gibi görünmeyebilir fakat bu geliştirme sayesinde modlar diğer modlarla uyumlu bir şekilde büyük sistemler kurabilecekler.

Ayrıntılı Hesap

Modların yetersiz kaldığı alanlardan birisi oyunda prestij kazancı veya savaş açmanın dindarlık maliyeti gibi bilgi çubuklarındaki ayrıntılı hesapları kendi arayüzlerinde oluşturamamaktı. 1.5 ile birlikte GetScriptValueBreakdown arayüz fonksiyonuyla istediğiniz script_value değerinin nasıl hesaplandığını gösterebileceksiniz.

Örneğin yukarıda oluşturduğum özel pencerede butona taht otoritemi yükseltme hesabının kodunu ekledim.

value_breakdowns.png

Olaylar ve Lokalizasyon

Modcularımızın işini kolaylaştırmak için olay penceresindeki debug butonlarda bazı değişiklikler yaptık. Artık her olay sağ üst köşede şu butonlara sahip:

event_utils.png

Sırayla bu butonlar şu işe yarıyor:

  • Olay içeriğini yeniden yükler.
  • Veri sistemini açıp kapatıyor, [ ] içerisinde olan kodların lokalizasyon üzerinden değil, direkt olarak yazılan şekliyle görünmesini sağlıyor.
  • Olay metnini kopyalıyor.
  • Bu olayın ne şartlar altında tetiklendiğini gösteriyor.
  • Tanımın oluşturulmasında hangi anahtarların kullanıldığına dair debug bilgisi içeriyor.

Veri sistemini açıp kapatmanız diğer pencerelerde istemediğiniz görüntülerin meydana gelmesiyle sonuçlanabilir, daha önce basitçe 4 rakamını gördüğünüz yerde bu sistemi kapattıktan sonra çok daha uzun bir kod göreceksiniz.

disabled_data_system.png

Konsol Komutları

1.5 ile birlikte mod oluşturmayı ve testler gerçekleştirmeyi kolaylaştıran yeni konsol komutları ekliyoruz. Bunları teker teker açıklamaktansa yama notlarından mevzubahis kısmı kopyalayacağım.

  • bypass_requirements komutu eklendi (bypass yazıldığında da çalışıyor), bu kod koşulları sağlamasanız bile kararları, etkileşimleri, planları, yasaları ve unvan oluşturma gibi hususları yapabilmenizi sağlıyor.
  • instasiege komutu eklendi.
  • save_every komutu eklendi ve başlangıç parametresi olarak -save_every=x oluşturuldu. Bu şekilde oyunun x yılda bir kayıt almasını sağlayabilir, normal otomatik kayıtların üstüne yazılmamasını sağlayabilirsiniz.
  • AI.try_send_decision komutu eklendi.
  • AI.try_send_interaction komutu eklendi.
  • Ironman.ToggleIgnore komutu eklendi, kapatıldığında kayıt dosyaları ironman değil gibi görünür.
  • ToggleShowAllKillers komutu eklendi.
  • complete_schemes, guaranteed_scheme_success/failure ve guaranteed_scheme_secrecy/failure komutları eklendi. success/secrecy komutları sadece oyuncuyu etkiliyor.
  • set_date komutu eklendi.
  • show_regions_in_tooltip komutu eklendi.
  • toggle_keys_on_map komutu eklendi.
  • yesman_instant ve instant_responses komutu eklendi.

bypass ve save_every komutları özellikle belli koşulları test ettiğiniz durumlar için oldukça kullanışlı.

Modifier Değişiklikleri

1.5 ile birlikte modifierlarda bazı geliştirmelerde bulunduk, artık bir dosyada geçersiz bir modifier türü girdiğinizde hatayla karşılaşacaksınız.

Bu durum 1.5’te özellikle binalardaki modifier desteğinde yaptığımız çalışmalarla birlikte değerlendirildiğinde oldukça kullanışlı. Artık binalar sadece size modifier sağlamakla kalmıyor, aynı zamanda geleneklere bağlı bir biçimde belli kültürel parametreler üzerinden özel modifierlar da sağlayabiliyorlar. Bunları karakter, bölge, kontluk ve düklük başkenti modifierları üzerinde kullanabiliyorsunuz.

Bunlara ek olarak province_terrain_modifier’ı arazi türüne, toprağın kıyı olup olmadığına, toprağın nehir kenarında olup olmadığına ve kültür parametresine göre kullanabiliyorsunuz.

building_culture_modifiers.PNG

Çıkış gününe kısa bir zaman kaldı, özellikle kraliyet saraylarında yapacağınız modlamaları merakla bekliyoruz. Günlüğü okuduğunuz için teşekkürler, benim için çıkış öncesi son dakika çalışmalarına geri dönme vakti.

Yazar: Ali Alper Duman

Yayın Direktörü @ Strategyturk

Yorumla

STRATEGYTURK

Strategyturk'te strateji oyunlarından haberleri, yama notlarını, geliştirici günlüklerini ve daha birçok içeriği Türk strateji oyuncularına Türkçe bir biçimde sunuyoruz. Aynı zamanda yeni çıkan strateji oyunlarının ve eklentilerinin incelemelerini yapıyor, bu oyunlara dair sürekli olarak içerik oluşturuyoruz.

Sosyal medya sayfalarımızı takip ederek strateji oyunlarındaki gelişmelerden haberdar olabilirsiniz.

Son Yorumlar

  • mahmut: ne zaman güncellenecek ? tarih verin bari
  • Ali: Yeni yamayı bekliyoruz , elinize sağlık

KATEGORİLER

ARŞİV