Ambil nilai konfigurasi, terjemahan, token dinamis, dan aset dari mod lain dengan token Content Patcher khusus.
Token Kompatibilitas Lintas-Mod menambahkan beberapa token Content Patcher khusus dan kustom yang memungkinkan Anda (jika Anda seorang pembuat mod) mengakses nilai konfigurasi, terjemahan, dan token dinamis dari mod lain, termasuk mod yang tidak dirancang khusus untuk Content Patcher. Token ini dapat berguna jika Anda benar-benar tidak memiliki cara lain untuk memastikan kompatibilitas sempurna antara mod Anda dan mod mereka, jika Anda perlu mengubah beberapa hal berdasarkan nilai-nilai yang disebutkan di atas.
InstalasiPenggunaan Untuk PemainMod ini tidak berfungsi sendiri. Tidak ada manfaatnya memasangnya sebagai pengguna jika mod lain yang Anda gunakan tidak memerlukannya.
Penggunaan Untuk Penulis Mod Patcher KontenMod ini menambahkan empat token:
- Spiderbuttons.CMCT/Konfigurasi
- Spiderbuttons.CMCT/Terjemahan
- Spiderbuttons.CMCT/Dinamis
- Spiderbuttons.CMCT/Aset
Masing-masing token ini akan memungkinkan Anda mengambil nilai konfigurasi, string terjemahan, nilai token dinamis, atau kunci aset internal. Keempatnya
memerlukan argumen masukan. Argumen masukan pertama akan selalu berupa UniqueID mod yang ingin Anda dapatkan nilainya. Argumen masukan kedua akan bergantung pada token yang dimaksud:
- Konfigurasi: Nama nilai konfigurasi yang akan dicari. Jika nilai konfigurasi bersarang, Anda harus menyertakan jalur konfigurasi lengkap berdasarkan struktur JSON.
- Terjemahan: Kunci i18n untuk terjemahan yang Anda inginkan. Kunci ini akan selalu mengambil terjemahan untuk bahasa yang sedang dipilih.
- Dinamis: Nama token dinamis.
- Aset: Jalur aset dari mod lain relatif terhadap milik mereka berkas manifest.json.
Jika Anda menggunakan salah satu token ini, Anda
harus tetapkan mod lain sebagai dependensi. Jika tidak, itu
mungkin berfungsi, tetapi juga mungkin menimbulkan beberapa kesalahan aneh. Berikut adalah empat contoh, satu untuk setiap token, menggunakan
Cari Apa Saja,
Topi Tikus Lacey, Dan
Buku Tambahan Button untuk demonstrasi:
- {{Spiderbuttons.CMCT/Konfigurasi: Pathoschild.LookupAnything, Kontrol.ToggleSearch}}
- {{Spiderbuttons.CMCT/Translation: ichortower.HatMouseLacey, houseDisplayName}}
- {{Spiderbuttons.CMCT/Dynamic: ichortower.HatMouseLacey, Lacey}}
- {{Spiderbuttons.CMCT/Aset: Spiderbuttons.ButtonsExtraBooks, aset/Buku/lembar.png}}
KeterbatasanSaat ini, ada dua hal utama yang saya anggap sebagai batasan:
- Terjemahan yang menerima token sebagai input (yaitu nilai i18n yang memiliki {{token}} sendiri di dalam i18n itu sendiri) tidak bekerja dengan benar dan hanya akan mengambil string literal dengan token yang masih ada dengan kurung kurawal.
- Token dinamis hanya diinisialisasi saat penyimpanan dimuat, bukan saat game diluncurkan. Hal ini mungkin penting atau mungkin tidak penting bagi Anda.
Perlu juga disebutkan bahwa Anda harus menggunakan token Dinamis
sesedikit mungkinTanpa membahas terlalu teknis tentang cara kerja Content Patcher, mengingat cara saya mengimplementasikan token, mereka akan selalu memberi sinyal bahwa perubahan mereka harus disebarkan meskipun token dinamis yang diperiksa dari mod lain tidak berubah. Hal ini tidak terlalu buruk jika token Anda hanya memperbarui OnDayStart seperti yang dilakukan token secara default, tetapi berpotensi menjadi mahal jika Anda memperbaruinya dengan OnTimeChange atau OnLocationChange!
Kode Sumber