Gạch · bei.pm
Các định dạng tệp được mô tả trên trang này dựa trên phân tích kỹ thuật về sở hữu trí tuệ của Dynamix, Inc. và Sierra Entertainment.
Sở hữu trí tuệ này hiện là một phần của tập đoàn Activision Publishing, Inc.- / Activision Blizzard, Inc. và hiện đang thuộc sở hữu của Microsoft Corp..
Các thông tin đã được thu thập thông qua Reverse Engineering và phân tích dữ liệu nhằm mục đích lưu trữ và tương tác với dữ liệu lịch sử.
Không có thông số kỹ thuật nào thuộc quyền sở hữu hoặc bí mật nào được sử dụng.
Trò chơi hiện có thể được mua dưới dạng tải về tại gog.com.
Địa chỉ | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | ký tự | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 50 | 42 | 4d | 50 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | P | B | M | P | . | . | . | . | . | . | . | . | . | . | . | . |
Địa chỉ lệch | Loại dữ liệu | Tên gọi | Giải thích |
---|---|---|---|
0x0000 | uint(32) | Bytes kỳ diệu | |
0x0004 | uint(24) | Chiều dài khối | |
0x0007 | uint(8) | Cờ |
Các Tiles là định dạng đồ họa Bitmap đặc thù của Outpost-2. Chúng trải dài qua 13 Tilesets, được gọi là "wells" (well0000.bmp
đến well0012.bmp
), nằm trong khối maps.vol.
Các Tilesets / Wells chứa những nội dung sau:
Tên tệp | Nội dung |
---|---|
well0000.bmp | Một đồ họa màu xanh kích thước 32x32px - lý tưởng để kiểm tra xem trình tải ảnh của bạn có hoạt động hay không |
well0001.bmp | Chứa đá sáng màu, dãy núi trên đá sáng màu và vô số biến thể của các hố va chạm vào đá sáng màu |
well0002.bmp | Chứa các 'Doodads' đá sáng màu - tức là các yếu tố có thể được đặt lên đá sáng màu để làm phong phú thêm (hoặc cố ý như cấu trúc, chẳng hạn như tường), bao gồm cả thực vật |
well0003.bmp | Chứa một cấu trúc dạng vỏ trên đá sáng màu |
well0004.bmp | Chứa đá tối màu, dãy núi trên đá tối màu và vô số biến thể của các hố va chạm vào đá tối màu |
well0005.bmp | Chứa các 'Doodads' đá tối màu - tức là các yếu tố có thể được đặt lên đá tối màu để làm phong phú thêm (hoặc cố ý như cấu trúc, chẳng hạn như tường) |
well0006.bmp | Chứa một cấu trúc dạng vỏ trên đá tối màu, cũng như các chuyển tiếp giữa đá sáng và đá tối |
well0007.bmp | Chứa dung nham bao gồm 4-5 khung hình animation cho mỗi loại |
well0008.bmp | Chứa cát và vô số biến thể của các hố va chạm vào cát |
well0009.bmp | Chứa các 'Doodads' cát - tức là các yếu tố có thể được đặt lên cát để làm phong phú thêm (hoặc cố ý như cấu trúc, chẳng hạn như tường) |
well0010.bmp | Chứa 48 chuyển tiếp từ cát sang đá sáng và đá tối |
well0011.bmp | Chứa các cực băng của bản đồ, với đá tối là nền |
well0012.bmp | Chứa các cực băng của bản đồ, với đá sáng là nền |
Thật sự khuyên rằng nên thực hiện một cách chính xác, không nên render các ô (tiles) trước để lưu vào bộ nhớ cache, vì dữ liệu cho chu kỳ ngày/đêm vẫn cần phải được xử lý - và sẽ có rất nhiều dữ liệu phát sinh.
Các ô là hình ảnh 8bpp với bảng màu chỉ mục có độ phân giải 32x32 pixel, được sắp xếp theo chiều dọc. Trong một bộ ô (tileset) như vậy, có thể có nhiều hơn nữa.
Container chính bao gồm 2 phần: head
và data
.
Tiêu đề Gạch
Địa chỉ | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | ký tự | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 68 | 65 | 61 | 64 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | h | e | a | d | . | . | . | . | . | . | . | . | . | . | . | . |
0x0010 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Địa chỉ lệch | Loại dữ liệu | Tên gọi | Giải thích |
---|---|---|---|
0x0000 | uint(32) | Bytes kỳ diệu | |
0x0004 | uint(24) | Chiều dài khối | |
0x0007 | uint(8) | Cờ | |
0x0008 | uint(32) | Phiên bản / Cờ? | Đây có thể là một chỉ định phiên bản của định dạng tệp; trong tất cả các tệp tôi có, giá trị ở đây là |
0x000c | uint(32) | Chiều rộng (Độ phân giải ngang) | Chỉ ra chiều rộng của tệp hình ảnh (tính bằng pixel). Tại tất cả các giếng của Outpost 2, giá trị |
0x0010 | uint(32) | Chiều cao (Độ phân giải dọc) | Cho biết chiều cao của tệp hình ảnh (tính bằng pixel). Ở tất cả các giếng của Outpost 2, giá trị |
0x0014 | uint(32) | Độ sâu màu? | Ý nghĩa của giá trị này thì không rõ ràng. Bởi vì nó có giá trị |
0x0018 | uint(32) | Độ sâu màu 2? | Ý nghĩa của giá trị này chưa được biết đến. Có thể đây là độ sâu màu 'mục tiêu'. |
Theo những thông tin này, còn có một tệp bảng màu ở định dạng RIFF chuẩn. Thông số kỹ thuật chính xác có thể tìm thấy - vì các bảng màu cũng xuất hiện ở nơi khác - tại Bảng màu.
Dữ liệu gạch
Địa chỉ | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | ký tự | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 64 | 61 | 74 | 61 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | d | a | t | a | . | . | . | . | . | . | . | . | . | . | . | . |
Địa chỉ lệch | Loại dữ liệu | Tên gọi | Giải thích |
---|---|---|---|
0x0000 | uint(32) | Bytes kỳ diệu | |
0x0004 | uint(24) | Chiều dài khối | |
0x0007 | uint(8) | Cờ |
Cuối cùng, dữ liệu pixel đã được hiển thị, từ góc trên bên trái theo hàng đến góc dưới bên phải.
Giá trị dữ liệu đối với các hình ảnh thường được trình bày dưới dạng bitmap 8bpp tương ứng với chỉ số của màu trong bảng màu.
Động cơ trò chơi vẽ các ô *có khả năng* theo yêu cầu.
Điều này dường như liên quan đến chu kỳ ngày-đêm, với 32 cấp độ của từng ô. Trong đó, có vẻ như giá trị độ sáng được trừ đi 'một chút'. Các giá trị chính xác vẫn chưa được xác định, tôi đang làm việc dựa trên cơ sở tính toán
v *= (daylight / 48) + 0.25;
với dữ liệu HSV của các pixel, trong đó daylight là một giá trị từ 0-31 và v là một giá trị từ 0-1. Hơn nữa, cần lưu ý rằng trên bản đồ vẫn còn một dải 16 ô ở bên trái và bên phải (để tạo ra các đơn vị không nhìn thấy).
Bên cạnh đó, chu kỳ ngày-đêm dường như chỉ cập nhật một cột của bản đồ cho mỗi chu kỳ trò chơi.
Một chu kỳ ngày-đêm được tăng tốc sẽ trông như sau: