Pliki .vol
Zapewne wielu z Was zastanawiało się, jak zmienić teren w grze Commandos. Mnie też nurtowało to pytanie. W końcu powoli doszedłem do tego. Cały teren włącznie z elementami nieinteraktywnymi jest zapisany w plikach .vol. Każda misja ma przyporządkowany swój plik .vol w postaci mapa00**.vol, gdzie ** to numer misji. Edytowanie pliku .vol nie jest takie proste. O ile usunięcie drzewa czy domu lub innych rzeczy nieinteraktywnych jest proste, to wyzwaniem jest
umożliwienie albo odbezpieczenia danego sektora (chodzi o to, że mimo usunięcia np. kamienia i zastąpienia go trawą, nadal nie można po nim przejść) lub jego zabezpieczenia (gdy np.: wstawimy dom lub kamień, to nasz komandos nie będzie go omijał, ale przez niego przenikał). Edytowanie terenu jest najtrudniejszą rzeczą podczas
edytowania misji. Jednak jego edycja może doprowadzić do zrobienia całkowicie nowej misji. Postanowiłem przedstawić pewien krótki opis pliku .vol. Każdy plik .vol rozpoczyna się tak: (przykład z misji 1):
MAPDIMXY 1453,2450
MAPTABPOLYS
{
POLY "ARBOL26",1400,3053,0,159,0,2 ;(tutaj pare oznaczeń)
RADIO 38 ;Radio
EXTRAINFO 0,0,0,0,0,0,0,0 ;Extra Info Bytes
TILE 1363,1818, 78, 156, 0, 0, 0,"ARBO0001.RLE"," "
TILE 1365,1820, 69, 150, 0, 0, 0,"-RUINA07.RLE"," "
(..)
Większość modeli nieinteraktywnych w grze jest definiowanych w taki właśnie sposób. Nie udało mi się rozgryźć wszystkiego, a zwłaszcza tego a więc po kolei:
MAPDIMXY 1453,2450 (oznacza wymiary, sekcja MAPA po wciśnięciu F9 podczas gry)
MAPTABPOLYS (oznacza rozpoczęcie definicji terenu)
{ (klamra rozpoczynająca definicję terenu)
POLY (informacja dla gry, że jest to tekstura)
"ARBOL26", (nazwa obiektu, może być dowolna)
1400, (koordynat obiektu X na mapie)
3053, (koordynat obiektu Y na mapie)
0, (koordynat Z na mapie, patrz tutaj)
159, (oznacza wysokość
0, (tego nie rozszyfrowałem)
2 (ilość tekstur)
następnie wystepuje sekcja EXTRAINFO dla której nie udało mi się znaleźć jej wykorzystania. Po tej sekcji wystepuje ilość linijek z teksturami, która musi być identyczna z podaną prze sekcji POLY (tutaj akurat dwie):
TILE (informuje że jest to tekstura)
1363, (koordynat X,looknij tutaj po opis)
1818, (koordynat Y,looknij tutaj po opis)
78, (tego niestety nie wiem)
156, (tego też)
0, (i tego)
0, (-"-)
0, (-"-)
"ARBO0001.RLE", (plik z teksturą, tutaj drzewo)
" " (dodatkowe ustawienia, nie wiem jakie)
Takich polygonów w pliku .vol jest wiele, są to kamienie, drzewa, woda, brzeg i inne rzeczy.
Gdzieś po środku pliku .vol natrafisz na taką sekcję:
POLY "BASE",726,1892,-10,5,4,885 ;(tutaj pare oznaczeń)
POINT 726,-1904 ;Coord. X, Coord. Y
POINT 726,1904 ;Coord. X, Coord. Y
POINT -726,1904 ;Coord. X, Coord. Y
POINT -726,-1904 ;Coord. X, Coord. Y
EXTRAINFO 0,0,0,0,0,0,0,0 ;Extra Info Bytes
TILE 201, -1, 14, 16, 0, 0, 0,"CESPED.BMP"," "
TILE 1394, -1, 60, 18, 0, 65, 0,"DLTA0008.RLE"," "
TILE 149, -1, 27, 20, 0, 0, 0,"CESPED.BMP"," "
Tutaj właśnie jest opisany dokładnie cały teren, coś w rodzaju podłoża pod budynki, kamienie. To tutaj
właśnie jest definicja, gdzie jest trawa a gdzie śnieg. Pierwszej linijki nie muszę tłumaczyć, jest opsiana
powyżej. Pamiętać należy, że liczba 885 musi równać się liczbie linijek z teksturami.
Nie wiem co oznacza sekcja POINTS wiem że linijka
POINT 726,1904 ;Coord. X, Coord. Y
oznacza środek mapy. Sekcja EXTRAINFO też pozostaje zagadką. Natomiast linijki TILE już częściowo rozgryzłem:
TILE (definicja tekstury)
201, (koordynat X)
-1, (koordynat Y)
14, (długość tektury)
16, (szerokość tekstury)
0, 0, 0, (nie wiem co oznaczają te zera)
"CESPED.BMP"," " (nazwa tekstury)
To na razie wszystko o plikach .vol .