Script Merger nedir

Script Merger AnotherSymbiote tarafından geliştirilen komut dosyası ve xml modları arasındaki çakışmaları bulmak ve çakışan dosyaları bir araya getirerek çözmek için kullanılan bir araçtır.

Çok farklı modlar bile aynı kaynak dosyada, oyun komut dosyasında veya xml parametreleri dosyası üzerinde değişiklik yapabilir. Ancak dosyayı farklı yerlerde değiştirirlerse, yine de birlikte çalışabilirler. Bununla birlikte, Witcher 3 motoru modları çok iyi işlemez: bulduğu ilk dosyayı basitçe yükler, diğer modlardan aynı isimde diğer tüm dosyalar göz ardı edilir. Bu, sadece bir modun gerçekte yüklenmesine ve diğer modların hiçbirinin veya bir kısmının yüklenmesine sebep olur , bu da çoğu zaman derleme hatalarına veya modların düzgün çalışmamasına neden olur.

Mod değiştirme önceliğinin değiştirilmesinin sorunu çözmeyeceğini anlamak önemlidir: sadece en yüksek önceliğe sahip belirli bir modun tam olarak yüklenmesine izin verir, ancak diğer tüm modlar halen düzgün çalışmayacaktır.

Oyunun aynı dosyayı değiştiren tüm yüklü modları tam olarak tanımasını sağlamak için, tüm bu değişiklikleri tek bir dosyada birleştirmeniz ve bu yeni dosya için en yüksek önceliği ayarlamanız gerekir; bu tam olarak Script Merger‘in yaptığı şeydir.

Script Merger, vanilla(oyunun orjinal hali) ve modlanmış dosyaları karşılaştırmak ve hepsini bir araya getirmek için kdiff3 yardımcı programını kullanır. Birleştirilmiş dosya daha sonra diğer tüm modlara göre en yüksek önceliğe sahip özel “mod” (mod0000_MergedFiles) ‘a eklenir – bu, oyunu birleştirilen dosyayı ilk olarak yükler ve diğerlerini yok sayar, böylece uyumluluk sorunu çözülür.

Programın ekran görüntüsü:

Script Merger 1

 

Script Merger Kurulumu

Script Merger’i yüklemek için paketi The Witcher 3 Nexus‘tan indirin ve istediğiniz herhangi bir klasöre paketini çıkarın, ancak, aracı “Program Files” ya da diğer sistem korumalı klasörlerden birine kurmayın! Aracı “Witcher 3” klasörüne veya “Mods” klasörüne yükleyebilirsiniz, ancak yine de sadece bu tür araçlar için ayrı bir klasör oluşturmanızı önerilir.

“WitcherScriptMerger.exe” dosyasını çalıştırın ve oyun yolunu ayarlayın:

Script Merger 2

Programı görev çubuğuna sabitleyebilir veya kolay erişim için bir simge oluşturabilirsiniz.

Bundan sonra, her şeyin doğru şekilde kurulduğundan emin olmak için “Menu -> File -> Dependency Locations” ı kontrol etmenizi öneririz (renkler yeşil olmalıdır):

Script Merger 3

 

Script Merger Ayarları

Bir sonraki adım aracı “Menu -> Options” ile ayarlamaktır:

  • Show Status Bar“— bulunan / birleştirilmiş istatistikleri görmek için açın.
  • Merging…“— Birleşme sürecini hızlandırmak için özellikle bir programlayıcı / modder değilseniz, her şeyi kapatmanızı öneririm—bu mesajlar size zaten pek bir şey söylemeyecek. Ancak, bazı modları birleştirmekle ilgili sorunlar yaşıyorsanız ve ne olduğunu / aradığınızı anlayamıyorsanız—  “Review Each Merge” dışındaki her şeyi açın. “Review Each Merge” seçeneği, her birleştirme üzerinde tam bir manuel kontrol isteyenler için faydalıdır; bu seçeneği açmak, birleştirilen her dosya için kdiff3 arabiriminin gösterilmesine neden olur.
  • Refreshing Conflicts“— “Check Non-Bundled XML Files“ hariç her şeyi açın—bu özellik buglu ve istenildiği gibi çalışmıyor, bu da sık sık karışıklığa ve bozulmalara neden olur. Ayrıca, olası çakışmaları kaçırmamaya dikkat etmek için “Auto-Collapse Tree If…” alt menüsündeki tüm seçenekleri kapatmanızı öneririm.

“Conflicts” penceresi, bulunan tüm çakışmaları görüntüler (yüklü tüm modları değil) ve “Refresh” butonu, mods klasörünü tekrar tarar. “Merges” penceresi, birleştirilmiş tüm dosyaları görüntüler (yine, sahip olduğunuz tüm dosyaları değil).

Scriptleri Birleştirmek(Merge)

“Scripts” ağacı, oyun scriptleri arasındaki çözülmemiş çakışmaları gösterir. Bir çatışmayı çözmek için ilgili dosyayı seçin ve aşağıdaki “Create Selected Merge” düğmesini tıklayın:

Script Merger 4

 

Tüm scriptleri seçebilir ve her şeyi birleştirmek için düğmeye basabilirsiniz. Birleştirme(Merge) başarılı olursa, bir mesaj göreceksiniz:

Script Merger 5

Birkaç mod birleştiriyorsanız, birkaç kez benzer mesajlar görünecektir. Program tüm çakışmaları otomatik olarak çözemiyorsa, çatışmaları manuel olarak çözmeniz gereken kdiff3 arayüzü açılacaktır. Nasıl yapılacağına dair kılavuzlar ve video talimatları için Script Merger açıklama sayfasına bakın.

“Bundled texts” ağacı, birlikte verilen xml dosyalarını gösterir ve bunları birleştirmek, scriptleri birleştirmekle aynı şekilde çalışır. Süreç bu ağaçta daha yavaştır çünkü birleşmenin paketlerini açıp demetleri paketlemesi gerekir.

“Bundled Non-text — Not Mergeable” ağacı, dokular ve menü dosyaları gibi ikili dosyalar arasındaki çakışmaları gösterir (redswf). Bu çatışmalar, Script Merger ile çözülemez, uyumluluk talimatları için ilgili mod (ların) açıklamasına bakınız.

Mod Önceliğini Ayarlamak

Bir mod, onun için belirli bir öncelik belirlemenizi isteyebilir. Bu modun adına sağ tıklayın (hangi ağaçta olduğu önemli değildir) ve “Set Overall Mod Priority…” seçeneğini seçin:

Script Merger 6

 

Önceliği “1” olarak ayarlamak bu modun ilk önce yüklenmesini sağlayacaktır (ancak yine de “mod0000_MergedFiles” öğesinden sonra):

Script Merger 7

 

Bir birleştirme(Merge) silmek için sağdaki “Merges” penceresinde ilgili birleştirilmiş dosyayı seçin ve “Delete Selected Merge” düğmesine basın:

Script Merger 8

 

Birkaç birleştirmeyi veya tümünü silmeniz münkündür. Bir başka kullanışlı özellik birleştirilmiş bir dosyaya hızlı erişimdir. Sağdaki “Merges” penceresindeki bir dosyaya sağ tıklayın ve “Open Merged File” düğmesine basın:

Script Merger 9

 

Güçlü bir araç olmasına rağmen, Script Merger ‘in doğaüstü özelliklere sahip değildir. Çakışmaların çözülmesi mod yazarının olası çakışmaları en aza indirmeye çalışıp çalışmadığına bağlı olduğunu unutmayın. Ayrıca, bazı modların bir araya getirilmesi mümkün değildir, örneğin, aynı şeyi değiştiren modlar: bira üretiminin nasıl çalıştığını değiştiren iki simya modu, hasarın hesaplanma şeklini değiştiren iki savaş modu, vb.

Ayrıca bir mod kurduğunuzda, güncellediğinizde veya kaldırdığınızda Script merger’i çalıştırıp gerekli düzenlemeleri tekrar yapmanız gerektiğini de unutmayın.