الأحجام · bei.pm

نُشر في 19.11.2015·محدث في 13/02/2025·عَرَبِيٌّ
تمت ترجمة هذا النص تلقائيًا بواسطة OpenAI GPT-4o Mini.

تنسيق الملفات الموصوفة في هذه الصفحة يستند إلى التحليل الفني للملكية الفكرية من قبل Dynamix, Inc. و Sierra Entertainment.
الملكية الفكرية هي اليوم جزء من مجموعة Activision Publishing, Inc. / Activision Blizzard, Inc. وهي حالياً مملوكة لـ Microsoft Corp..

تم جمع المعلومات من خلال الهندسة العكسية و تحليل البيانات لأغراض الأرشفة والتشغيل المتداخل مع البيانات التاريخية.
لم يتم استخدام أي مواصفات ملكية أو سرية.

يمكن شراء اللعبة حاليًا كتنزيل من gog.com.

تعتبر الأحجام حاوية بيانات للعبة، مشابهة لصيغة أرشيف مثل أداة Tarball. على الأقل في Outpost 2، يعرف هذا التنسيق الملفات فقط - وليس المجلدات. من المحتمل أنه يمكن محاكاة هذه الأخيرة من خلال أسماء الملفات المناسبة.

يتكون الحجم من رأس الحجم بالإضافة إلى عدة كتل حجم، تمثل الملفات المحددة.

"الأحجام" هي الملفات التي تنتهي بالامتداد 'vol' في دليل اللعبة.

عنوان x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF حرف
0x0000 56 4f 4c 20 -- -- -- -- -- -- -- -- -- -- -- -- V O L . . . . . . . . . . . .
الإزاحة نوع البيانات التسمية شرح
0x0000 uint(32) بايتات سحرية
0x0004 uint(24) طول الكتلة
0x0007 uint(8) الأعلام

رأس الحجم

عنوان x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF حرف
0x0000 76 6f 6c 68 -- -- -- -- -- -- -- -- -- -- -- -- v o l h . . . . . . . . . . . .
الإزاحة نوع البيانات التسمية شرح
0x0000 uint(32) بايتات سحرية
0x0004 uint(24) طول الكتلة
0x0007 uint(8) الأعلام

رأس الحجم لا يحتوي بدوره على أي بيانات مستخدمة.
إنه يعمل فقط كحاوية.

يجب أن تحتوي أول بيانات في رأس الحجم على سلاسل الحجم؛ تليها معلومات الحجم.

سلاسل الحجم

عنوان x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF حرف
0x0000 76 6f 6c 69 -- -- -- -- -- -- -- -- -- -- -- -- v o l i . . . . . . . . . . . .
الإزاحة نوع البيانات التسمية شرح
0x0000 uint(32) بايتات سحرية
0x0004 uint(24) طول الكتلة
0x0007 uint(8) الأعلام
عنوان x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF حرف
0x0000 76 6f 6c 73 -- -- -- -- -- -- -- -- -- -- -- -- v o l s . . . . . . . . . . . .
الإزاحة نوع البيانات التسمية شرح
0x0000 uint(32) بايتات سحرية
0x0004 uint(24) طول الكتلة
0x0007 uint(8) الأعلام
0x0008 uint(32) طول الحمولة

يشير إلى عدد البايتات من البيانات التالية التي تعتبر بيانات مفيدة بالفعل.

بينما تُعتبر البيانات المتبقية من قائمة سلاسل حجم البيانات نفايات.

في الملفات ذات التواريخ الأحدث، تكون هذه 'البيانات المتبقية' 0x00، مما قد يدل على عيوب في أدوات التطوير أثناء تطوير اللعبة، بمعنى أن مطوراً لم يهتم بت inicialization الصحيح للذاكرة إلا في وقت متأخر جداً، لأن ذلك ليس له تأثير على اللعبة سواء كانت البيانات مُهيأة أم لا.

0x000c uint(8)[] قائمة أسماء الملفات

هذه قائمة بأسماء الملفات منتهية بـ0 بايت، والتي - على الأقل في هذا الجزء من البيانات - تتوقع فقط أحرف ASCII.

ليس من الضروري تقييم هذه الكتلة من البيانات بدقة أثناء تحليل البيانات، حيث يتم الإشارة مباشرة إلى مواضع أسماء الملفات في معلومات الحجم.

سلاسل الحجم هي قائمة بأسماء الملفات الموجودة داخل الحجم.

معلومات الحجم

عنوان x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF حرف
0x0000 76 6f 6c 69 -- -- -- -- -- -- -- -- -- -- -- -- v o l i . . . . . . . . . . . .
الإزاحة نوع البيانات التسمية شرح
0x0000 uint(32) بايتات سحرية
0x0004 uint(24) طول الكتلة
0x0007 uint(8) الأعلام

تحتوي معلومات الحجم على تفاصيل أكثر عن الملفات. وهي نوع من إدخالات الدليل FAT (FAT = جدول تخصيص الملفات) بطريقة ما.

عدد الملفات يتم حسابه من خلال حجم الكتلة مقسومًا على طول إدخالات الدليل - 14 بايت.

تتكون إدخالات الدليل الفردية من التكوين التالي:

عنوان x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF حرف
0x0000 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
الإزاحة نوع البيانات التسمية شرح
0x0000 uint(32) إزاحة اسم الملف

يشير إلى الموضع (!) داخل قائمة أسماء الملفات (سلاسل الحجم) حيث يوجد اسم ملف معين.

وهو يتعلق ببداية كتلة البيانات.

0x0004 uint(32) تعويض الملف

يشير إلى الموضع داخل ملف الحجم الكامل حيث توجد الملف.

0x0008 uint(32) حجم الملف

يحدد حجم الملف بالبايت.

0x000c uint(16) أعلام؟

يبدو أن هناك معلومات إضافية عن ترميز الملف.

  • 0x03 يتم تعيينه عندما يكون الملف مضغوطًا. يبدو أن شجرة هوفمان تستخدم هنا.
  • 0x80 يبدو أنه يتم تعيينه دائمًا.

كتلة الحجم

عنوان x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF حرف
0x0000 56 42 4c 48 -- -- -- -- -- -- -- -- -- -- -- -- V B L H . . . . . . . . . . . .
الإزاحة نوع البيانات التسمية شرح
0x0000 uint(32) بايتات سحرية
0x0004 uint(24) طول الكتلة
0x0007 uint(8) الأعلام

كتلة الحجم هي حاوية، تستقبل الملفات. تحتوي فقط مرة أخرى - نظرًا لتنسيق الكتلة - على حجم الملف بشكل متكرر، وتتبعها مباشرة البيانات المستخدمة.