بعد أن قمت بعكس هندسة ملفات .d2i من Dofus من أجل المتعة، قررت أن أصنع قارئًا بسيطًا لها.
ويستند هذا على الإصدار 2.10 .
يتوفر الآن إصدار TypeScript: https://github.com/crimson-med/d2i-reader
Dim MyReader As New FastReader( "MyFile.d2i" , True )
MyReader.GetText( 41903 )
MyReader.Dispose()
الحمل العادي:
تحميل سريع:
تنسيق D2I هو تنسيق تستخدمه Ankama لتخزين سلاسل الأحرف مثل أسماء العناصر أو مربعات الحوار والمزيد. يختلف هذا الملف حسب اللغة ولكن البنية تظل كما هي.
يتكون الملف من 4 أجزاء رئيسية:
يتكون كل جزء من هذه الأجزاء من فهرس ( 4 بايت ) يوضح حجم البيانات التالية باستثناء البيانات الإضافية.
تتكون البيانات من 3 أجزاء:
أصبحت الفهارس منذ التحديث 2.4X أكثر تعقيدًا مع إدخال علامات التشكيل (سلسلة الأحرف بدون علامات تشكيل أو أحرف كبيرة).
رسائل واجهة المستخدم هي رسائل يتم تقديمها في حزم معينة ولكنها لا تسمح بالحصول على معرف (عدد صحيح يشير إلى النص)
مثال: ui.message.check0
لم يكن لدي الوقت الكافي للنظر فيه، ولا أعرف محتواه أو فائدته في الوقت الحالي.