الرسوم المتحركة · bei.pm
تنسيق الملفات الموصوفة في هذه الصفحة يستند إلى التحليل الفني للملكية الفكرية من قبل Dynamix, Inc. و Sierra Entertainment.
الملكية الفكرية هي اليوم جزء من مجموعة Activision Publishing, Inc. / Activision Blizzard, Inc. وهي حالياً مملوكة لـ Microsoft Corp..
تم جمع المعلومات من خلال الهندسة العكسية و تحليل البيانات لأغراض الأرشفة والتشغيل المتداخل مع البيانات التاريخية.
لم يتم استخدام أي مواصفات ملكية أو سرية.
يمكن شراء اللعبة حاليًا كتنزيل من gog.com.
الآن نأتي إلى الفئة العليا من التخصصات ضمن تنسيقات بيانات Outpost 2:
الرسوم المتحركة.
تبدأ قوائم الرسوم المتحركة بعنوان رئيسي عالمي، والذي يخدم بشكل أساسي للتحقق من البيانات. تلي ذلك تعريفات الرسوم المتحركة المحددة، والتي تنقسم إلى 3 مستويات:
-
الرسوم المتحركة
الرسوم المتحركة هي الكيان الأعلى؛ تمثل رسوم متحركة لوحدة أو مبنى أو "رسوم متحركة جزيئية" (مثل اصطدام نيزك، الطقس، انفجار) في وضعية معينة. -
الإطار
الإطار هو صورة واحدة داخل رسوم متحركة. يمكن أن تحتوي الرسوم المتحركة على إطار واحد أو أكثر. -
الإطار الفرعي
الإطار الفرعي هو المعلومات التي تشير إلى أنه يجب رسم صورة معينة تحت معايير معينة في موقع معين من الإطار. يمكن أن يحتوي الإطار على إطار فرعي واحد أو أكثر.
بعد ذلك، تأتي على الفور تعريفات الرسوم المتحركة الفردية.
عنوان | 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(32) | عدد الإدخالات الاختيارية | كم عدد "المدخلات الاختيارية" الموجودة. |
الرسوم المتحركة
عنوان | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | حرف | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
0x0010 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
0x0020 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
الإزاحة | نوع البيانات | التسمية | شرح |
---|---|---|---|
0x0000 | uint(32) | غير معروف 1 | معلومات غير معروفة |
0x0004 | uint(32) | صندوق التحديد: اليسار | يعطي بداية الجانب الأيسر (بالبكسل) لـ Bounding Box. |
0x0008 | uint(32) | صندوق التحديد: أعلى | يحدد الجزء العلوي من Bounding Box (بالبكسل). |
0x000c | uint(32) | صندوق الحدود: العرض | يدل على عرض Bounding Box (بالبكسل). |
0x0010 | uint(32) | صندوق الإحاطة: الارتفاع | يشير إلى ارتفاع Bounding Box (بوكس الحدود) بوحدات البكسل. |
0x0014 | uint(32) | إزاحة: X | يحدد النقطة الوسطى الأفقية للرسوم المتحركة |
0x0018 | uint(32) | الإزاحة: Y | حدد منتصف العمودي للرسوم المتحركة |
0x001c | uint(32) | غير معروف 2 | معلومات غير معروفة |
0x0020 | uint(32) | عدد الإطارات | يحدد عدد إطارات الرسوم المتحركة الموجودة في هذه الرسوم المتحركة |
0x0024 | uint(32) | عدد النوافذ | يحدد عدد النوافذ التي يجب استخدامها عند الرسم |
بيانات الطبقة العليا، الخاصة بالرسوم المتحركة، هي في المقام الأول بيانات إدارية - حيث تشير Boundingbox إلى إحداثيات العلامة حول السيارة/المبنى، عندما يتم اختيارها، كما تحدد أيضًا المنطقة التي يجب أن تكون قابلة للنقر.
يحدد الإزاحة في المقام الأول "نقطة الصفر"؛ النقطة التي يجب إضافتها أو طرحها من إحداثيات اللعبة الداخلية. يمكن القول بطريقة رياضية: إن الإزاحة تشير هنا إلى أصل الإحداثيات.
بالنسبة للنوافذ، فهي، مثل الإزاحة، تتكون من 4 قيم uint(32) لكل نافذة، تحدد منطقة تعتبر قابلة للاستخدام للإطارات الفرعية الفردية. لا يجوز الرسم خارج النوافذ، طالما أنه مخصص لذلك في صورة البت.
إطار
عنوان | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | حرف | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
الإزاحة | نوع البيانات | التسمية | شرح |
---|---|---|---|
0x0000 | uint(8) | عدد الإطارات الفرعية وبديل 1، 2 | تحتوي هذه القيمة على:
|
0x0001 | uint(8) | غير معروف 1 و تبديل لـ اختياري 3، 4 | تحتوي هذه القيمة على:
|
0x0002 | uint(8) | اختياري 1 | غير معروف |
0x0003 | uint(8) | اختياري 2 | غير معروف |
0x0004 | uint(8) | اختياري 3 | غير معروف |
0x0005 | uint(8) | اختياري 4 | غير معروف |
الإطار الفرعي
عنوان | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | حرف | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
الإزاحة | نوع البيانات | التسمية | شرح |
---|---|---|---|
0x0000 | uint(16) | معرف البت ماب | حدد أي صورة نقطية يجب استخدامها لهذه الإطار الفرعي |
0x0002 | uint(8) | غير معروف 1 | غير معروف - لكنني أشتبه بشدة في أن هذا يتعلق بأولوية العرض (طبقة Z). |
0x0003 | uint(8) | معرف الإطار الفرعي | يشير إلى أي إطار فرعي نتواجد فيه |
0x0004 | sint(16) | تعويض - أفقي | يحدد المكان الذي يجب أن يتم فيه وضع الإطار الفرعي داخل الإطار الرئيسي، أو عدد البيكسلات التي يجب أن يتم تحريك الصورة bitmap أفقيًا. |
0x0006 | sint(16) | الإزاحة - عمودي | حدد المكان داخل الإطار الذي يجب أن يتم فيه وضع الإطار الفرعي، أو بمقدار عدد البكسلات التي يجب أن يتم فيها نقل الصورة عمودياً |
وبذلك يمكننا الآن تجميع إطارات فردية، وكذلك الرسوم المتحركة الكاملة، وهنا نوضح ذلك بشكل مثالي من خلال رسوم متحركة أكثر تعقيدًا، وهي الرسوم المتحركة ذات الفهرس 500
الرسوم المتحركة 500
الرسوم المتحركة 500 توضح كيفية تفريغ شاحنة بليموث محملة بالمعادن العادية. هذه واحدة من القلائل التي تستخدم وظيفة النوافذ.
وهكذا يمكن تجميع الرسوم المتحركة بالكامل.
لسوء الحظ، لا يزال هناك مشكلة في فتحة التحميل العلوية، حيث لم يتم تعيين البت المناسب في معلومات نوع الرسوم.
إليكم بعض الرسوم المتحركة الجميلة الأخرى من اللعبة: