Arama butonu
Bu konudaki kullanıcılar: 1 misafir
42
Cevap
2129
Tıklama
7
Öne Çıkarma
Cevap: Fable Anniversary İSTEK(Yok mu çevirebilecek bir babayiğit) (3. sayfa)
M
2 hafta (59 mesaj)
Çavuş

Lost Chapter sürümünün Tr yaması var. Ben bu yaz oynadım. Anniversary sürüm ile aralarında pek bir fark yok. Sadece aşağı attığım kamera modunu kurun yoksa oyun mide bulandırıyor.

Kamera fix:
https://www.nexusmods.com/fablethelostchapters/mods/562



< Bu ileti mobil sürüm kullanılarak atıldı >

B
6 gün (38 mesaj)
Çavuş

Hocam, ben de bu işlerden az-çok anlıyorum ama çok fazla anlamıyorum. Deneme-yanılma yoluyla öğreniyorum. Yazacaklarım tamamen kendi çıkarımlarım; doğruluğu kesin değil. Lütfen biri gelip "bu yanlış, şu hiç doğru değil, boşuna uğraşmışsın" gibi şeyler söylemesin. Belki böyle yapıları bilen birisi çıkar da, benim uğraştığım hiçbir şeye gerek kalmadan kısa yoldan Türkçe yamayı yapar. Çünkü ben bu işlerin ustası falan değilim, sadece kurcalaya kurcalaya yapıyı anlamaya çalışıyorum.

Özet:

text.bbb dosyasını çevirmek tek başına yeterli değil; metinlerin doğru çalışması için text.iple dosyasının da bu değişikliklerle uyumlu olması gerekiyor. Oyunda metinler basit bir sırayla değil, FilelD / Key / Hash tabanlı bir sistemle çağrılıyor. Metin uzunlukları değiştiğinde text.bbb içindeki offset'ler kayıyor ve bu kaymalar doğru şekilde güncellenmesi gerekiyor.

Bu yüzden text.bbb değiştirildiğinde, text.iple doğrudan offset tutmasa bile, çağırdığı entry'lerin text.bbb içindeki yapıyla birebir uyumlu kalması gerekiyor.

İlginç olan kısım şu: text.bbb dururken text.iple dosyasını silince, metinler tamamen bozuluyor ve ekranda örnek olarak TEXT_GUI_MENU_NEW_GAME gibi ham anahtar isimler görünüyor.

< Resime gitmek için tıklayın >

Kısaca, metinlerin kendisi text.bbb dosyasında yer alıyor; ancak oyunun hangi metni nerede kullanacağını belirleyen yapı text.iple dosyası.

Oyunda metinlerle ilgili iki ana dosya bulunuyor: text.bbb ve text.iple.

text.bbb → Açıldığında içinden 27.000’den fazla ayrı giriş (entry) çıkıyor. Bu girişlerin isimleri doğrudan metin anahtarları şeklinde (TEXT_GUI_MENU_OPTIONS, TEXT_GUI_TEXT_CREDITS vb.) ve her biri tek bir cümle ya da kısa bir metin içeriyor. Yani burada klasik anlamda “tek dosyada tüm metinler” yapısı yok; her metnin ayrı bir entry olarak paketlendiği bir sistem kullanılmış.

text.iple → Bakıldığında ise yapı daha farklı. Normalde basit bir metin adres tablosu, sıralı offset değerlerinden oluşur (örneğin ilk metin 32. byte’tan başlar gibi). Ancak text.iple dosyasının başındaki değerler bu mantığa uymuyor. Bu da text.iple’nin basit bir offset listesi olmadığını; ek bilgiler içeren, anahtar tabanlı bir tablo veya hash benzeri bir yapı kullandığını gösteriyor. Yani oyun metinleri sırayla okumuyor, bu yapı üzerinden doğru metni arayıp buluyor.

Kısacası benim anladığım kadarıyla:

text.bbb → Metnin kendisini içeriyor

text.iple → Bu metinlerin oyunda nasıl ve nerede çağrılacağını belirliyor

text.dep → Uyumluluk

Çalışma mantığı;

​Metin Kimliği Sorgusu: Kod içerisinden veya bir UI betiğinden bir StringID (metin ID'si) (örneğin: STR_QUEST_01) çağrılır.

​Dizin Arama: Motor, bellekte duran text.iple tablosuna gider ve STR_QUEST_01 kimliğine karşılık gelen bayt ofsetini (örneğin: 0x0004A2F0) bulur.

​Veri Erişimi: Motor, text.bbb dosyası içerisinde bu ofset adresine "zıplar" (seek) ve oradaki veriyi (metni) okur.

Normalde oyun Unreal Engine 4 veya 5 tabanlı olsaydı, yama yapmak çok daha kolay olabilirdi. Fable Anniversary, Unreal Engine 3 üzerine kurulmuş ve bunun üstünde Lionhead’in kendi özel motor katmanlarını kullanan bir yapı olduğu için, metin sistemi ve dosya yapısını çözmek ciddi şekilde daha zor hâle geliyor.

Eğer bu yapıya benzer sistemlerle daha önce çalışmış biri varsa, benim yaptığım denemelerle hiç uğraşmadan çok daha temiz bir şekilde Türkçe yamayı çıkarabilir.

Düzenleme (7 şubat): Oyundaki bazı menü metinleri belki daha fazlası olabilir text.bbb'nin içinde yok, oyunun EXE'si içinde hardcoded şeklinde olma ihtimali yüksek (ben öyle düşünüyorum) ve text.iple dosyası düşündüğümden daha farklı ve karmaşık bi yapıda. Şuanda iyi ilerliyorum. Eğer bir şey başarırsam/yapabilirsem konu açarım.





< Bu mesaj bu kişi tarafından değiştirildi beroos -- 8 Şubat 2026; 1:26:0 >

< Bu ileti Android uygulamasından atıldı >
Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @Cemo94
C
5 gün (3697 mesaj)
Yarbay
Konu Sahibi

quote:

Yazacaklarım tamamen kendi çıkarımlarım; doğruluğu kesin değil. Lütfen biri gelip "bu yanlış, şu hiç doğru değil, boşuna uğraşmışsın" gibi şeyler söylemesin.


Kimsenin haddine değil bunu söylemek hocam
söyleyecek olan buyursun kendi uğraşsın.

Hocam Gemini bu duruma şöyle diyor;


Fable Anniversary çevirisiyle uğraşırken bu iki dosya arasındaki ilişkiyi fark etmen harika; çünkü çoğu kişi sadece .bbb dosyasına odaklanıp oyunun neden hala İngilizce kaldığını veya neden çöktüğünü anlamaya çalışırken pes ediyor.
Haklısın, text.bbb asıl metin verilerini tutarken, text.iple (Index/Pointer File) bu metinlerin oyun motoru tarafından nerede ve nasıl okunacağını belirleyen bir nevi "adres defteri" görevi görür.
İşte bu süreci sağlıklı bir şekilde yürütmen için bilmen gereken kritik noktalar:
Neden İkisi Birden Gerekiyor?
• Adresleme Sorunu: .bbb dosyası içindeki bir cümleyi değiştirdiğinde, eğer yeni cümlen orijinalinden daha uzun veya kısa olursa, dosyanın bayt yapısı kayar. .iple dosyası bu yeni adresleri (offset) güncellemezse, oyun yanlış yerden okuma yapar ve büyük ihtimalle çöker.
• Karakter Kodlaması: Fable Anniversary, özel karakterler ve Türkçe font desteği konusunda biraz nazlıdır. Sadece metni çevirmek yetmez, oyunun bu karakterleri tanıması için font dosyalarına da müdahale gerekebilir.
İzlemen Gereken Adımlar
1. Doğru Tool Seçimi: Manuel olarak bu dosyaları eşlemek imkansıza yakındır. Genellikle Fable topluluklarında paylaşılan Fable Text Editor veya BBB/IPLE unpacker araçlarını kullanmalısın.
2. Repack İşlemi: * Önce .bbb içindeki metinleri dışarı aktar (export).
• Çevirini yap.
• Geri paketlerken (import) aracın mutlaka yeni bir .iple dosyası oluşturduğundan veya mevcut olanı güncellediğinden emin ol.
3. Encoding (Kodlama): Metinleri düzenlerken dosya formatının UTF-16 LE (Little Endian) veya aracın istediği spesifik formatta olduğundan emin olmalısın; aksi halde oyunda "kutu kutu" veya garip semboller görürsün.
Önemli Bir İpucu
Eğer cümlen orijinalinden çok daha uzunsa, bazı durumlarda oyun arayüzü (UI) metni kesebilir. Bu yüzden çeviri yaparken mümkün olduğunca orijinal karakter sayısına yakın kalmak işini kolaylaştıracaktır.



< Bu ileti iOS uygulamasından atıldı >
Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @beroos
B
dün (38 mesaj)
Çavuş

Hocam tüm her şey text.iple dosyasına bağlı büyük ihtimal. Biz, oyun metinleri text.bbb den okuyor sanıyorduk. Ama oyun text.bbb ye bakmıyormuş.

text.iple dosyasının, bulunduğu klasörden ve oyunun seçili dilinden bağımsız çalıştığını fark ettim. Örneğin Fransızca klasöründen yalnızca text.bbb dosyasını alıp İngilizce klasörüne atarsak oyun yine İngilizce açılıyor. Ancak oyun yerine text.iple dosyasını atarsak, oyun ayarlarında İngilizce seçili olsa bile bütün metinler Fransızca oluyor. Bu yüzden text.iple dosyasının düşündüğümden çok daha karmaşık bir yapıya sahip olduğunu anladım.

Yani kısaca, oyun dili ingilice olsun, klasördeki text.iple dosyası hangi dilin text.iple'si ise oyun o dili kullanıyor. text.bbb dosyasına bakmıyor.

text.bbb dosyası hakkında ise metinler bir kısmı bu dosyada bile yer almıyor; dolayısıyla bu metinlerin ya EXE içinde hardcoded şekilde ya da başka bir yerde tutulduğunu düşünüyorum.

Reddit'te birisinin "Her şeyin text.iple dosyasına bağlı olduğunu anladım" yazısını gördüm ve bende şu anda tüm dikkatimi text.iple dosyasına çevirdim.

Süreçte iyi ilerliyorum fakat yine de "daha pratik bir yolu var mı?" diye düşünüyorum; belki de gereğinden uzun bir yöntemle ilerliyorumdur.





< Bu mesaj bu kişi tarafından değiştirildi beroos -- 8 Şubat 2026; 16:29:0 >

< Bu ileti mobil sürüm kullanılarak atıldı >
Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @Cemo94
C
16 sa. (3697 mesaj)
Yarbay
Konu Sahibi

Hocam belki dediğin gibi daha pratik bir yolu vardır ama bu yamayla uğraşmaya herkes korktuğu için sanki senin gittiğin yol tek yol gibi düşünüyorum

Şaka bir yana ciddi ilerleme kaydettiğini düşünüyorum hocam emeklerin için tekrar teşekkür ediyorum. Bu .iple dosyasını da hallettikten sonra umarım başka bir problem çıkmaz. Yeni Fable oyunundan önce şu oyunu ağız tadıyla oynarız inşallah



< Bu ileti iOS uygulamasından atıldı >


Bu mesajda bahsedilenler: @beroos
DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.