Zgodnie z zapowiedziami z ubiegłego roku, zrobiłem generator manifestu scenerii (wykazu plików używanych przez scenerię). Manifest scenerii wygląda podobnie jak lista katalogowa paczki. Czyli jest to nazwa pliku razem ze ścieżką, długość pliku (dziesiętnie), suma kontrolna CRC32 zawartości (szesnastkowo) oraz data modyfikacji. Przykładowo manifest dla scenerii
Manewrowo2 z paczki
Mariusz/defiler wygląda tak:
SCENERY:scenery/manewrowo2.scn=2180,FE9B2167,2006-06-09 12:08:12
scenery/manewrowo.scm=469757,F872E739,2004-05-20 20:00:08
scenery/manewrowo_r.scm=1252,136E2519,2006-06-09 12:18:32
scenery/mc/krakowT-magazyn1.inc=301,5F1D266A,2003-10-04 00:59:08
scenery/mc/rudawa-budgosp1.inc=288,8A0553D4,2003-09-12 16:16:24],
scenery/pm/biurowiec1.inc=267,5977A60D,2003-10-29 15:58:28
scenery/pm/biurowiec2.inc=266,2188164B,2003-10-29 15:58:08
scenery/pm/biurowiec3.inc=266,A5B90FBA,2003-10-29 15:24:08
scenery/pm/espefa.inc=204,A82F71ED,2008-01-12 02:16:02
scenery/pm/hala1.inc=203,2CF753BC,2008-01-12 02:15:56
scenery/pm/hala2.inc=203,2B6EAC4A,2004-05-18 00:13:28
scenery/pm/hala3.inc=203,9E3B236A,2008-01-12 02:16:00
scenery/pm/magazyn01.inc=261,B834C248,2003-10-29 16:33:34
scenery/pm/mir.inc=254,60B7E09B,2003-10-29 22:17:42
scenery/tr/L-STB1-3K.inc=559,13EFF5F6,2003-04-23 02:15:38
scenery/ZwrL34R300B.inc=1069,E381DB43,2004-05-17 21:49:16
scenery/ZwrP34R300.inc=7593,7B7095FC,2003-03-15 21:24:12
scenery/ZwrP34R300B.inc=1166,A0DD6A34,2004-05-17 21:49:12
scenery/images/manewrowo.jpg=11109,5D94E6AA,2004-05-20 17:34:14
textures/Asphalt1.bmp=24630,04BAD7CA,2003-01-25 01:38:02
textures/Asphalt1_side1.tga=24594,64E6BC92,2003-01-25 01:48:50
textures/AsphaltDark1_DashedWhite.bmp=49206,25661503,2003-01-25 01:13:16
textures/AsphaltDark1_side1.tga=24594,CAC09482,2002-04-11 20:13:04
textures/Concrete1.tga=49170,A8B90436,2003-03-11 18:23:30
textures/Fence-Concrete1.tga=262188,86C94897,2003-07-26 14:30:06
textures/Forest01.tga=262162,1728FBF4,2003-06-24 03:19:18
textures/Forest02topslope.tga=49170,5DF4D96F,2003-01-13 02:03:26
textures/grass.bmp=49206,89FE20ED,2003-12-18 18:27:12
textures/pm/Jelcz-pakaszara1.bmp=49206,A15D69D9,2002-05-17 17:11:42
textures/pm/Jelcz-pakaszaraMiS1.bmp=49206,B9A96A62,2003-12-24 23:53:44
textures/pm/transit_niebieski.bmp=49206,4CF9DBB1,2003-06-04 12:23:08
textures/pm/transit_pomaranczowy.bmp=49206,7A5D1475,2003-06-04 14:28:32
textures/podklad1.bmp=12342,9F3EE916,2003-02-13 16:18:12
textures/Rail_screw_uNused1.BMP=12342,65E9352F,2002-03-12 16:29:56
textures/Rail_screw_used1.BMP=12342,AF40D565,2002-03-12 16:32:46
textures/roof/roof-asphaltstrip1.tga=12306,88BE2417,2003-09-15 09:38:36
textures/sky.bmp=786486,68F6DDA8,2004-05-18 01:22:36
textures/TpBpS-new2.tex=196620,7C089365,2002-03-25 17:32:40
textures/TpD-old1.tex=196620,89AC08DB,2003-03-28 00:40:38
textures/tr/BetonRelief1.BMP=12342,0559E70B,2003-02-09 22:34:34
textures/tr/Wys-ni-K.tga=131090,81858FED,2002-11-27 20:07:18
textures/WzL.BMP=3126,6C338E60,2002-03-14 16:23:00
textures/WzP.BMP=3126,936DD422,2003-03-15 21:22:48
textures/WzW.bmp=12342,6D9D16B9,2003-02-27 14:12:30
textures/zwrot34R300pods-new.tex=98316,B2FC1120,2002-03-25 14:30:14
models/bud/budkablaszana.t3d=8555,5305CCB3,2002-11-29 00:29:20
models/mc/KrakowT-magazyn1.t3d=6996,C8CBEC1C,2003-10-04 00:57:14
models/mc/rudawa-budgosp1.t3d=9612,395260BF,2003-09-12 16:50:16
models/pm/biurowiec1.t3d=6563,EA192CAE,2003-10-29 15:58:46
models/pm/biurowiec2.t3d=4265,2977BD8E,2003-10-29 15:17:18
models/pm/biurowiec3.t3d=4265,A7E43C49,2003-10-29 15:23:42
models/pm/espefa.t3d=2518,A51B48C1,2003-04-30 00:02:48
models/pm/hala1.t3d=3859,4638B79C,2003-04-30 00:02:34
models/pm/hala2.t3d=5375,1925681D,2004-05-18 00:23:44
models/pm/hala3.t3d=2498,9B466677,2004-05-18 00:16:42
models/pm/jelcz315.t3d=29543,E9CA5168,2002-10-30 21:45:48
models/pm/magazyn01.t3d=1784,FC050B8E,2003-10-29 16:32:42
models/pm/mir.t3d=10506,A69F8E94,2003-11-05 22:03:52
models/pm/Transit.t3d=25562,B8EDBC2D,2003-06-19 00:42:18
models/tr/-3K.t3d=3217,FE34B6B3,2003-02-09 18:55:34
models/tr/STB1.t3d=2069,C75CB1D9,2003-02-20 15:48:46
models/WzA.t3d=3828,F76095CA,2003-03-15 21:23:30
Akurat dla tej scenerii wszystkie pliki są w obecne paczce. Gdyby brakowało jakiegoś pliku, po znaku równości pojawiła by się gwiazdka. W manifeście scenerii nie ma plików z katalogu
dynamic, z dwóch powodów. Po pierwsze, sceneria jest niezależna od rodzaju wstawionych pojazdów. Po drugie, analizowanie pojazdów i zależności w plikach do nich należących nie działa jeszcze poprawnie.
Pliki manifestów mogą służyć do następujących celów:
- dobieranie takich plików, jakich użył autor scenerii (jeśli wygeneruje on manifest u siebie),
- tworzenie paczki zawierającej pliki różniące się pomiędzy dwoma użytkownikami,
- wyszukiwanie odpowiednich plików w dostępnych paczkach,
- ustalanie rozbieżności w plikach, akceptowanych przez scenerię (dopuszczalnych opcji, np. inna wersja trakcji),
- odtwarzanie stanu poprzedniego po zainstalowaniu kolejnych dodatków,
- tworzenie kopii zapasowych zmodyfikowanych ręcznie plików,
- wskazanie brakujących lub wadliwych plików początkującemu użytkownikowi,
- tworzenie paczki całościowej.
Obecnie manifesty można np. porównać w programie
Total Commander. W dalszej kolejności proces tworzenia i przetwarzania manifestów będzie coraz bardziej upraszczany i automatyzowany. Pojawią się także oddzielne manifesty dla pojazdów.
Generator manifestu scenerii dostępny jest od wersji 1.0.50 mojego programu. Korzystanie z niego nie jest jeszcze w pełni dopracowane. Robi się to w następujący sposób:
- ustaw tryb pracy, w którym widoczna jest zakładka
Debugger,
- wybierz scenerię na zakładce
Wczytanie,
- na zakładce
Struktura przyciśnij przycisk
Wczytaj wszystkie include (może to potrwać kilka minut),
- na zakładce
Debugger przyciśnij przycisk
Generuj manifest scenerii,
- w głównym katalogu zostanie utworzony plik o nazwie takiej jak sceneria i rozszerzeniu CSV,
- z wygenerowanego pliku usuń linie zawierające tekstury z katalogu
dynamic.
2008-04-27 W wersji 1.0.53 jest możliwość generowania manifestu w dwóch formatach. Pierwszy to CSV, gdzie nazwy plików i ich sygnatury (długość, CRC32 i data) są rozdzielone przecinkami. Struktura ta jest identyczna jak struktura katalogowanych paczek. Drugi format to INI - w tym przypadku pliki są podzielone hierarchicznie według wzajemnych wywołań. Pliki są podzielone na sekcje według pliku nadrzędnego, a w informacji o pliku, po nazwie pliku jest znak równości.