ნაწილები · bei.pm

გამოქვეყნებულია 19.11.2015-ზე·განახლებულია 13.02.2025·გეორგიული
ეს ტექსტი ავტომატურად ითარგმნა OpenAI GPT-4o Mini-ს მიერ.

ამ გვერდზე აღწერილი ფაილების ფორმატები ეფუძნება Dynamix, Inc. და Sierra Entertainment-ის ინტელექტუალური საკუთრების ტექნიკურ ანალიზს.
ინტელექტუალური საკუთრება დღეს არის Activision Publishing, Inc.-ის / Activision Blizzard, Inc.-ის მასის ნაწილი და ამჟამად ეკუთვნის Microsoft Corp..

მعلوماتები შეიკრიბა Reverse Engineering და დატების ანალიზის საშუალებით არქივირების და ისტორიული მონაცემებთან ინტერპერატიულობის მიზნით.
არ ყოფილა გამოყენებული რაიმე სამ Proprietary ან კონფიდენციალური სპეციფიკაციები.

ამჟამად თამაში შესაძლებელია შეძენა gog.com-ზე როგორც ჩამოსატვირთი.

ხარისხები წარმოადგენს მონაცემთა კონტეინერს თამაშისთვის, მსგავსი არქივის ფორმატთან, როგორიცაა Tarball. მინიმუმ Outpost 2-ში ეს ფორმატი მხოლოდ ფაილებზე მუშაობს - არა ფolders-ზე. სავარაუდოდ, ეს შეიძლება შეიქმნას შესაბამისი ფაილების სახელების გამოყენებით.

ხარისხი შედგება ხარისხის თავიდან და რამდენიმე ხარისხის ბლოკებისგან, რომლებიც კონკრეტულ ფაილებს შეესაბამება.

"ხარისხები" არის ფაილები, რომელთა გაფართოება '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) Payload-ის სიგრძე

აჩვენებს, რამდენი ბიტი არის ნამდვილი მონაცემები შემდეგი ინფორმაციისგან.

ნაშთი, დარჩენილი მონაცემები ვოლიუმ-სტრინგების სიიდან აშკარად უნდა ჩაითვალოს როგორც ნაგავი.

ფაილებში, რომლებიც უფრო გვიან თარიღდება, ეს 'დარჩენილი მონაცემები' არის 0x00, რაც შეიძლება მიუთითებდეს იმაზე, რომ თამაშის განვითარების პროცესში იყო პრობლემები ინსტრუმენტების ნაკრებთან, ანუ, რომ მפתარებმა ძალიან გვიან დაიწყეს ბუფერის სწორი ინიციალიზაციის მოგვარება, რადგან თამაშზე არ აქვს გავლენა, არის თუ არა მონაცემები ინიციალიზებული თუ არა.

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 = ფაილის განაწილების ცხრილი)

ფაილების რაოდენობა მიიღება ბლოკის ზომის გაყოფით directory ჩანაწერების სიგრძეზე - 14 ბაიტი.

ცალკეული დირექტორიის ჩანაწერები თითოეულ შემთხვევაში შემდეგი სტრუქტურისთვის არიან განკუთვნილნი:

მისამართი x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF სიმბოლო
0x0000 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
ოფსეტი მონაცემთა ტიპი სახელი განმარტება
0x0000 uint(32) ფაილების სახელების_offset

Გი показывает, на каком смещении (!) в списке имен файлов (строки томов) находится имя файла.

Გი относится к началу блока полезных данных.

0x0004 uint(32) ფაილის ოფსეტი

მიცემს ინფორმაციას, რომელი ოფსეტია მთლიანი ვოლუმის ფაილის ფარგლებში, სადაც ფაილი მდებარეობს.

0x0008 uint(32) ფაილის ზომა

აჩვენებს, თუ რამდენი_byte_არის ფაილში.

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) გამოიძახეთ

ვოლიუმის ბლოკი არის კონტეინერი, რომელიც შეიცავს ფაილებს. ის მოიცავს მხოლოდ ერთხელ - ბლოკის ფორმატის გამო - გადაჭარბებულად ფაილის ზომას და მის შემდეგ პირდაპირ მოჰყვება მომხმარებელის მონაცემები.