Zwiedzamy poziomy - edycja all.spawn

Zwiedzamy poziomy - edycja all.spawn

Postprzez utak3r w 09 Sty 2010, 13:26

Pamiętacie funkcję jump_to_level z wersji alpha? Niestety, została ona na trwałe usunięta z wersji końcowej. Na szczęście, są inne sposoby na to, aby sobie pozwiedzać lokacje :)

Potrzebne do tego będzie nam narzędzie acdc.pl. Niestety, należy sobie znaleźć wersję, która pasuje do posiadanej przez nas nie tylko wersji gry, ale i wersji ewentualnie nałożonego moda. Oczywiście, musimy mieć również zainstalowany interpreter Perla. Jeżeli już go mamy, przystępujemy do pracy. Pokażę to na przykładzie lokacji Prypeć, ale analogicznie przygotowuje się pliki pod każdy level.

1. Wchodzimy do katalogu gamedata\spawns.
2. Dekompilujemy spawna:

Kod: Zaznacz wszystko
acdc.pl -d all.spawn


3. wykonujemy kopię zapasową plików: all.spawn, alife_l01_escape.ltx i alife_l11_pripyat.ltx.
4. otwieramy do edycji: alife_l01_escape.ltx, alife_l11_pripyat.ltx oraz alife_l10_radar.ltx.
5. w alife_l01_escape.ltx odnajdujemy łańcuch:

Kod: Zaznacz wszystko
section_name = actor


i WYCINAMY całą sekcję.

6. Wstawiamy ją na początku pliku alife_l11_pripyat.ltx.
7. W pliku alife_l10_radar.ltx szukamy sekcji nazwanych:

Kod: Zaznacz wszystko
section_name = level_changer


Będzie ich kilka, szukamy tej, która ma nadaną nazwę:

Kod: Zaznacz wszystko
name = exit_to_pripyat_01


8. W sekcji aktora, interesują nas wartości:

Kod: Zaznacz wszystko
position = -246.726303100586,-24.7932605743408,-134.433868408203
direction = 0.00431653670966625,-1.39625442028046,-0.00068671052576974
game_vertex_id = 4
level_vertex_id = 11713
upd:position = -246.726303100586,-24.7932605743408,-134.433868408203
upd:o_torso = -1.39625442028046,0.00431653670966625,0


Zamieniamy je na analogiczne, znalezione w przejściu level_changer, ale uwaga - te, oznaczone jako destination! czyli z tej sekcji:

Kod: Zaznacz wszystko
; cse_alife_level_changer properties
dest_game_vertex_id = 2269
dest_level_vertex_id = 145458
dest_position = 34.8646354675293,-2.15999984741211,-290.553436279297
dest_direction = -2.49865606747335e-005,1.60740029811859,-1.28936753753806e-005
dest_level_name = L11_Pripyat
dest_graph_point = start_actor_01


W sekcji aktora pola pozycji i kierunku obrotu podajemy dwukrotnie, nie zapomnieć o tym! Parametr direction można pominąć, nic się nie stanie, ale pomyłka w position, bądź brak zmiany tego parametru w sekcji upd: spowoduje wylądowanie gdzieś poza mapą, w pustce, gdzie widać tylko niebo ;)

9. Jeżeli nie uśmiecha nam się wylądowanie w Prypeci z wyposażeniem w postaci kurtki, latarki i lornetki... ;) zaglądamy do podsekcji [spawn] i ją edytujemy na przykład tak:

Kod: Zaznacz wszystko
custom_data = <<END
[dont_spawn_character_supplies]

[spawn]
military_outfit
wpn_spas12
wpn_ak74
ammo_5.45x39_fmj = 20
ammo_12x70_buck = 20
wpn_addon_scope
wpn_binoc
wpn_knife
medkit = 10
conserva = 5
detector_simple
device_torch
END


10. Zapisujemy wszystkie pliki i kompilujemy:

Kod: Zaznacz wszystko
acdc.pl -c all.ltx


Powstanie plik o nazwie all.spawn.new, zmieniamy mu nazwę na Prypec.spawn.

11. Uruchamiamy grę. Gdy już pojawi się główne menu, naciskamy klawisz S. Pojawi się takie oto okno:

Image

Wybieramy nasz nowy plik Prypec.spawn i... zwiedzamy Prypeć :)
Oczywiście, o fabule nie mamy co myśleć w większości przypadków - brakuje nam ukończenia poprzednich, wymaganych zadań.

Z każdą kolejną lokacją postępujemy tak samo, pamiętając o tym, że w całym spawnie może istnieć tylko jedna sekcja actor. Każdy kolejny produkt nazywamy jako kolejny_level.spawn i możemy wtedy podróżować po lokacjach bez przeszkód.

Miłych podróży!
Image
Awatar użytkownika
utak3r
Modder

Posty: 2200
Dołączenie: 11 Lis 2009, 18:15
Ostatnio był: 31 Lip 2023, 16:01
Miejscowość: Szczecin
Frakcja: Powinność
Ulubiona broń: GP 37
Kozaki: 376

Reklamy Google

Powróć do Tutoriale

Kto jest na forum

Użytkownicy przeglądający to forum: Brak zarejestrowanych użytkowników oraz 1 gość