Kwasowa Grota Heroes VIIMight & Magic XDark MessiahHorn of the AbyssHistoria Światów MMSkarbiecCzat
Cmentarz jest opustoszały



Scenki Dialogowe

Scenki dialogowe to kolejna (oprócz map) rzecz, do której tworzenia Edytor jest praktycznie niezbędny. Ich wyświetlanie podczas gry warunkuje się odpowiednim skryptem, ale o tym później. Najpierw zobaczcie, jak taka scenka wygląda (zanim rozpoczniemy pracę nad własną).

Żeby otworzyć scenkę, w opcji "Zaznacz tablice", wybierz "DialogScene", zapisz, po czym z bazy danych wybierz sekcję o tej samej nazwie. Znajdź dowolną scenkę i kliknij na nią dwukrotnie - podobnie jak w przypadku oryginalnych map i aren, tak i po wybraniu scenki otworzy nam się pełen trójwymiarowy widok mapy. W danych znajdziecie oprócz właściwych dialogów m.in. scenki "prezentacji" animacji i modeli jednostek Twierdzy oraz alternatywnych ulepszeń innych frakcjiUber niespodzianka w scence Fortecy!, parę scenek testowych oraz specjalną scenkę z Duncanem i Freydą.

Uwaga! Niektóre scenki są uszkodzone i próba ich załadowania poskutkuje crashem edytora.
Uwaga #2! Scenki można też otworzyć wspomnianą tutaj metodą otwierania zasobów.

Pamiętacie moją poradę? Przed otwarciem scenki otwórzcie sobie najpierw "pustą" mapę, żeby prawidłowo załadować tekstury!

Jeśli chcecie mieć w edytorze taki widok na scenkę, jaki będzie w grze, w pliku konfiguracyjnym edytora (tak, w tym samym, w którym ustawialiście setvar map_editor_mode = 9) ustawcie setvar dialog_scene_editor_fixed_window = 1. Podobny efekt uzyskacie za pomocą klawiszy W i F8 już po otworzeniu scenki.

Aby wyłączyć siatkę w podglądzie dowolnego pliku z danych gry (nie tylko scenek dialogowych), naciśnij klawisz G na klawiaturze. Aby rozpocząć odtwarzanie scenki, wciśnij P lub F1. Klawisze S i F4 zatrzymują odtwarzanie.

Naoglądaliście się już dosyć scenek i chcecie w końcu stworzyć własną? Proszę bardzo!

Jeśli chcesz mieć dostęp do swojej scenki w dowolnym momencie, przed rozpoczęciem pracy zapisz mapę czy cokolwiek, nad czym wcześniej pracowałeś. Potem użyjcie opcji "Zasoby -> Zamknij modyfikację", zapisz zmiany i poczekaj chwilę. Edytor powinien wówczas zapisywać wszystkie postępy bezpośrednio, bez pakowania, w folderze data i będzie dawał do nich dostęp w dowolnym momencie.
Najlepiej po uruchomieniu edytora otworzyć "pustą" mapę dwukrotnie i dopiero zamknąć, żeby tekstury w scence odpowiednio się wczytały.

Jeśli zaś chcesz, aby scenka była zapisywana w obrębie pliku Twojej mapy, nic nie zamykaj, tylko otwórz tę mapę... i tyle. Dalej postępujemy niezależnie od wybranej metody zapisu.

Osobiście, niezależnie od tego gdzie chcemy finalnie umieścić dialog, najlepiej go mieć w folderze data i na koniec skopiować do pliku .h5m mapy. To powinno oszczędzić naprawdę wielu problemów z pakowaniem, wypakowywaniem, znikaniem itp.

UWAGA: Kiedy już raz wybierzesz metodę zapisu, trzymaj się jej, tj. jeśli umieszczasz scenkę w pliku mapy, zawsze otwieraj ją dopiero po uruchomieniu tej właśnie mapy, a jeśli scenka ma być "na zewnątrz", to zawsze przed jej otwarciem użyj opcji "Zamknij modyfikację". W przeciwnym razie pliki scenki będą porozrzucane w różnych miejscach i może być później problem z zebraniem jej w kupę. Poza tym pojawią się też problemy z wybieraniem plików AdvMapMonster i AdvMapHero z mapy.

1. Zaznacz tablicę "DialogScene" i otwórz Okno Bazy Danych Gry 0, jeśli nie zrobiłeś tego wcześniej.
2. Wybierz sobie lokalizację dla swojej scenki i kliknij prawym przyciskiem myszy na nazwie folderu, w którym chcesz ją umieścić. Może to być gdziekolwiek, ale będziesz musiał wpisać tę lokalizację w skrypcie, który scenkę odtworzy, a więc nie przeginaj ;) Z menu, które Ci się otworzy, wybierz opcję "Nowy obiekt".

Jeśli zaś chcesz wrzucić scenkę "na zewnątrz" plików gry, kliknij prawym przyciskiem myszy gdziekolwiek i wybierz opcję "Nowy obiekt źródłowy".

3. W oknie, które się pojawi, wpisz nazwę swojej scenki i wybierz mapę, na której chcesz ją odegrać - my posłużymy się mapą z gry, ale można też samodzielnie stworzyć odpowiednią mapę i wpisać "ścieżkę" do niej. Ale uwaga! Taka mapka nie powinna zawierać umieszczonych na niej bohaterów czy stworzeń! Tego typu obiekty ustawimy dopiero w toku pracy nad scenkę, w przeciwnym razie nie będą funkcjonalne. Do scenki możesz nawet dodać obiekty otoczenia, których na oryginalnej mapie nie było, jeśli tylko będzie to potrzebne.

Przy wpisywaniu nazwy scenki i podczas pracy z nią, w nazewnictwie czegokolwiek należy wystrzegać się polskich znaków!

Akcja naszej scenki będzie się rozgrywać w nocy, na pustyni. W naszym więc przypadku wybór padnie na mapę "Sand_Big_02", jedną z aren bitewnych, a ponieważ oświetlenie może się zmieniać w trakcie odtwarzania scenki, to nie będzie stanowić problemu podmienienie go na nocne. Zresztą, później o tym napiszę.

Dialogi z oryginalnej gry umieszczone były na mapach z folderu /Maps/SmallSpecialArenas/. Nimi też możecie się posłużyć, są bogatsze od bitewnych i mają ciekawe rozmieszczenie obiektów.


Opcja "Eksportuj obiekt po utworzeniu" jest opcjonalna, możecie ją wybrać lub nie, ale zdaje mi się, że i tak Edytor eksportuje pliki tylko z odpowiednią wtyczką (nie, nie wiem jaką).

4. W wybranej lokalizacji widzimy folder z naszą scenką w środku. Klikamy dwukrotnie na "DialogScene", a na pytanie o zapisanie zmian odpowiadamy, oczywiście, "Tak".


5. Otwiera nam się okno z siatką, którą wyłączamy klawiszem "G". Może się ona przydać jeszcze w przyszłości, przy ustawianiu obiektów czy określaniu położenia efektów specjalnych bądź punktów docelowych dla ruchu bohaterów scenki. Włączamy ją z powrotem również klawiszem "G".


Objaśnienie oznaczeń:

1 - okno właściwości zaznaczonego pliku. To za jego pomocą będziemy edytować znaczącą część właściwości scenki. Jeśli coś się nie zgadza we właściwościach z tym, co powinno w nich być (w oknie jest podgląd właściwości nieodpowiedniego pliku) lub jeśli okno jest puste, w Bazie Danych Gry 0 kliknij raz na dowolny plik lub folder (inny niż scenka), a potem znowu na plik scenki. Teraz powinno być dobrze.
2 - okno obiektów. Takie okno występuje też w standardowym trybie Edytora, a tutaj służy do wybierania jednostek bądź bohaterów, których chcemy ustawić na mapie jako aktorów. Można też wybrać stąd brakujące dekoracje.
3 - okno Bazy Danych Gry 0, które już znamy - tutaj właściwie nic się nie zmieniło. Klikając dwukrotnie na plik scenki i ewentualnie potwierdzając zapisanie postępów, możemy ją przeładować (przydatne np. kiedy kamera działa nie tak, jak powinna).
4 - okno "robocze". To tutaj mamy podgląd tworzonej scenki, ustawiamy aktorów, kamerę itp.. Żeby taką scenkę oglądać tak, jak będzie wyświetlana w grze, naciśnij na klawiaturze klawisz W lub F8.

6. Teraz ustawiamy w wybranym miejscu swoich aktorów. Możemy zacząć od dwóch, a potem dodawać następnych, w miarę postępu prac. To już zależy od tego, czy masz gotową koncepcję, czy dopiero rozwijasz ją w trakcie. Aktorów odpowiednio obracamy, najlepiej się to robi poprzez naciśnięcie klawisza Ctrl i kliknięcie w miejscu, w stronę którego ma się zwrócić nasz aktor. Możemy też podjąć pierwsze próby ustawienia kamery.

W naszym przypadku rozmowę prowadzić będą tylko czarnoksiężnik i Wiedźma Cienia, a reszta jednostek będzie stanowić barwne tło.


7. Aby ustawić "kamerę" w odpowiednim miejscu, odpowiednio ustawiamy widok (jak pewnie zauważyłeś, kamera działa tutaj nieco inaczej niż w standardowym trybie; jeśli obraz jest zbyt wykoślawiony, scenkę zapisz i załaduj od nowa, tak samo jak poprzednio.

Po ustawieniu kamery, naciskamy klawisz "E", zaznaczamy opcję "Nowa kamera" i nadajemy ujęciu nazwę (1). Najlepiej, żeby była rozpoznawalna, bo może się przydać więcej niż raz. Jeśli kamera ma się skupiać na jednym z aktorów, dobrze jest to uwzględnić w jej właściwościach (2).

Uwaga: Naprawdę warto wybrać aktora, na którym ma się skupiać kamera, bo później będzie można wykorzystywać ją dla innych aktorów, po prostu używając innych aktorów głównych w ujęciu z następnego punktu. Z drugiej strony, jeśli jesteśmy perfekcjonistami, albo po prostu zależy nam na precyzji, aktora nie wybieramy ani tu, ani tu.

Jeśli zamiast tworzyć nową kamerę, rozwiniemy listę i wybierzemy jedną z istniejących (3), po naciśnięciu "OK" Edytor natychmiast przełączy nas na jej widok.


Co do bohaterów, to aby kamera na takowym się skupiła, musimy odszukać jego imię skryptowe, a nie takie jakie ma on w grze (jak na obrazku: Kythra to w plikach gry "Menel"bez komentarza)

Ja ustawię od razu dwie kamery - bliższą i dalszą, aby w następnym podpunkcie móc uzyskać efekt "przejścia".

8. Teraz naciskamy klawisz "T", aby stworzyć ujęcie. Wybieramy dwie kamery (może być jedna, do przejścia potrzebne są dwie), dajemy im tego samego aktora, co poprzednio, nazywamy całe ujęcie i zapisujemy.


Zaznaczenie "Okręgi" i wpisanie ilości oznaczy ilość okręgów, jaka zostanie zatoczona przy przejściu od jednej kamery do drugiej.
"Odwróć kierunek" spowoduje ruch po okręgu w kierunku przeciwnym do ruchu wskazówek zegara. Działa również bez opcji "Okręgi", po prostu odwraca kierunek przejścia.
"Ignoruj rotację poziomą" każe ujęciu ignorować okręgi. Jeśli nie majstrowaliście przy tej opcji, nie musicie tego zaznaczać.

9. Mając gotowe ujęcie, naciskamy spację. Otwarte w ten sposób okno dialogowe to lista sentencji, które będą odtwarzane w scence.


Klikamy "Dodaj" i wyświetla nam się następne okno. W nim to ustawiamy właściwości scenki.
Wybieramy zatem:

1. Bohatera (tym razem "zwykłe" imię, dla ułatwienia (w przypadku jednostek) podane są tu koordynaty);
2. "Domyślna nazwa stworzenia" to opcja, która pozwala nadać specjalne imię zwykłej jednostce (np. "Alaryk", "Ugrul", "Pelt" itp. Nie działa jeśli wybierzemy bohatera);
3. Tekst (wpisujemy tekst, który zostanie wypowiedziany przez aktora; jeśli nie wpiszemy nic, jego imię również nie powinno się wyświetlić);
4. Kamerę (ujęcie);
5. Dźwięk - dźwięk wypowiedzi, można też zaimportować własny plik .wav (5a). Można też wyciszyć dźwięki otoczenia (5b) lub/i muzykę stanowiącą akompaniament do scenki (5c);
6. Oświetlenie - jeśli wybierzemy tutaj jakieś oświetlenie, to w kiedy sentencja będzie odtwarzana, domyślne oświetlenie zostanie zmienione na to wybrane. Ja tutaj nie wybiorę nic, bo jest sposób na zmianę oświetlenia dla całej scenki, od początku do końca jej trwania.
7. Czas trwania wypowiedzi - jest to czas jaki upłynie od zakończenia odtwarzania dźwięku do zakończenia sentencji i przejścia do następnej;
8. Pole animacji jest obecnie nieaktywne, a w podstawce i Kuźni Przeznaczenia pozwalało na szybkie wybranie animacji bohatera scenki. Dało się też zrobić to przez okno właściwości scenki, a teraz jest to jedyne wyjście. O dodawaniu animacji w następnym punkcie;

Klikamy OK i teraz sentencja pokaże nam się w oknie z sentencjami. Można teraz edytować ją ("Edytuj"), stworzyć nową ("Dodaj"), usunąć już istniejącą ("Usuń") bądź dodać nową, poprzedzającą tę, która jest aktualnie zaznaczona ("Wstaw"). Kolejność sentencji odpowiada kolejności ich odtwarzania. Przycisk "Anuluj" zamyka okno (ale nic nie anuluje :P).

Teraz dopiero możesz na próbę odtworzyć scenkę, wcześniej, bez sentencji, powodowałoby to crash.
Każda sentencja musi mieć wybranego aktora i zestaw kamer, w przeciwnym razie edytor również się rozsypie, a wszystkie postępy zostaną stracone. Dlatego też na wszelki wypadek przed pierwszym odtworzeniem zapisz wszystkie zmiany i zamknij edytor, po czym uruchom go ponownie.

10. Upewnij się, że masz włączone okno "Właściwości wybranego obiektu". Wygląda ono mniej-więcej tak:


Jeśli nie, to włącz je za pomocą opcji Podgląd -> Właściwości zaznaczonego okna.

W oknie Bazy Danych Gry 0 znajdź swoją scenkę i kliknij jej plik DialogScene jeden raz. Jeśli okno właściwości wyświetla inny plik, w Bazie Danych kliknij raz na czymkolwiek innym niż Twoja scenka i znowu na scenkę. Teraz powinno działać.

Teraz parę słów wyjaśnienia: głównymi elementami scenki są te w kolumnie najbardziej po lewej, tj. "Map", "SoundSet", "Music", "MusicVolume", "CustomSceneAmbientLight", "sentences", "objects", "ModelsLOD", "CameraShiftZ", "Anim3DSoundVolume", "Name". Każdy z nich możecie zmodyfikować wedle uznania.

A oto, co oznacza każdy z nich:

Map - mapa, na której rozgrywa się scenka. W każdym momencie można wybrać inną istniejącą mapę i załadować scenkę od nowa już na niej.
SoundSet - zestaw dźwięków, zwykle charakterystyczny dla danego terytorium, można też wybrać taki specjalnie dla scenki (wielokropek) lub stworzyć własny za pomocą komendy "Nowy".
Music - muzyka odtwarzana do scenki.
MusicVolume - głośność muzyki (w procentach).
CustomSceneAmbientLight - oświetlenie scenki, zastępujące to z mapki. To właśnie tu ustawię nocne oświetlenie dla scenki (Nekropolis light).
sentences - lista sentencji, do której niebawem wrócimy.
objects - lista obiektów, które umieściliśmy na potrzeby scenki, a wcześniej nie było ich na mapie, w tym stworzenia i bohaterowie.
ModelsLOD - niedziałający parametr, który w podstawce i Kuźni Przeznaczenia służył do ustawiania budynków na potrzeby scenek.
CameraShiftZ - parametr, który według nazwy powinien mieć związek z ustawieniem kamery, ale ja osobiście żadnego takiego związku nie zaobserwowałem. Ot, jest i tyle.
Anim3DSoundVolume - głośność dźwięków towarzyszących animacjom (w procentach).
Name - plik tekstowy z nazwą scenki, o ile się dobrze orientuję, to dotyczy on scenek z kampanii, które można odtworzyć w grze za pomocą menu Opcje -> Zapisane Dialogi. Jak chcesz, to możesz nadać swojej scence nazwę, ale wątpię żeby kiedykolwiek się to mogło przydać (chyba że zamierzasz ją dodać do własnej kampanii...).

W moim przypadku zestaw wygląda następująco:


Teraz więcej o sekcji sentences. Otóż jest to ni mniej, ni więcej, tylko lista sentencji utworzonych w scence. Ponieważ jak dotąd utworzyliśmy tylko jedną sentencję, po rozwinięciu listy zobaczymy tylko jedną sentencję (oraz jej zawartość). Ręczna modyfikacja zawartości sentencji jest niemalże konieczna jeśli chcemy stworzyć porządną scenkę; w oknie "ze spacji" po prostu nie widać wszystkich dostępnych możliwości jakie mamy do dyspozycji.


Znakomita większość tych elementów jest modyfikowalna (linki możemy tworzyć automatycznie przez wybranie wielokropka i wybranie żądanego pliku z plików gry), a poniżej wyjaśniam, co można uzyskać z pomocą każdego z nich:

text - tekst sentencji, ten sam, który wpisany został w "okienku ze spacji", format .txt;
sound - dźwięk, który jest odtwarzany przy sentencji, też wybierany w "okienku ze spacji", jest to plik .XDB z podanym ID wave'a (.wav), który znajduje się w plikach gry (bez rozszerzenia) lub został zaimportowany (ale też zmienia mu się wtedy nazwa, traci on rozszerzenie i zostaje on umieszczony w specjalnej lokalizacji - Edytor robi to wszystko sam);
heroLink - link do bohatera scenki, odnosi się on do pliku inLine bohatera (AdvMapHero), który jest specyficzny dla każdej jednej mapy czy scenki. Podanie odnośnika do bohatera z innej scenki wymaże nam odnośnik albo spowoduje crash edytora przy próbie odtworzenia scenki;
monsterLink - jw., tyle że link jest do pliku AdvMapMonster jednostki, jest to używane zamiennie z heroLink;
MonsterCustomName - specjalne imię dla bohatera-jednostki, tworzone w "okienku ze spacji", format .txt;
cameraSet - niedziałający aktualnie link do pliku ujęcia;
NewCameraSet - link do pliku z ujęciem. Po kliknięciu na niego i wybraniu wielokropka otwiera nam się okno, za którego pomocą można ręcznie zmodyfikować ustawienia kamery. Przydatne jeśli chcemy uzyskać bardzo precyzyjny efekt.
StopAmbient - true albo false, jest to wspomniana już opcja wyłączenia dźwięków otoczenia;
StopMusic - true albo false, służy do wyłączania muzyki;
DynamicCamera - zawsze true. Ciekaw jestem, co by się stało, gdyby spoza edytora, ręcznie zmienić wartość na false... ale wątpię, żeby cokolwiek się stało;
duration - czas trwania scenki po zakończeniu odtwarzania dźwięku, w sekundach, podany w "okienku ze spacji";
soundDuration - chyba nic nie robi, a w każdym razie nic nie odnotowałem;
CustomAmbientLight - link do oświetlenia specjalnego dla danej sentencji;
ActorAnimationIndex, AnimName, AnimDelay - w podstawce i Kuźni za ich pomocą można było ustawić animację bohatera sentencji bez używania CustomAnimations. Zapewne celem uniknięcia zbędnego bałaganu, parametry te są obecnie nieaktywne;

CustomSounds - dodatkowe dźwięki. Dodajemy klikając prawym przyciskiem myszy i wybierając "Dodaj", można mieć ich dowolną (byle rozsądną) liczbę.
Delay - czas (w sekundach) jaki upłynie do rozpoczęcia odtwarzania dźwięku;
sound - odnośnik do pliku Sound dźwięku;
Duration - czas odtwarzania dźwięku w sekundach; po jego upłynięciu dźwięk przestaje być odtwarzany;

CustomEffects - dodatkowe efekty specjalne. Dodajemy je tak samo jak dźwięki, ale mają więcej parametrów:
Delay - czas w sekundach do rozpoczęcia odtwarzania efektu specjalnego (wartość ujemna spowoduje odtworzenie efektu już na początku, "od środka");
Effect - odnośnik do pliku Effect efektu specjalnego;
Pos - miejsce, w którym jest odtwarzany efekt. UWAGA! wszystkie koordynaty muszą zostać podwojone i zwiększone o 1 (podglądasz je na dolnym pasku po najechaniu kursorem na docelowe pole), aby efekt został odtworzony na pożądanym polu.
x - pozycja efektu w poziomie (horyzontalnie);
y - pozycja efektu w stronę góry mapy (wertykalnie);
z - wysokość, na jakiej odtwarzany jest efekt, większość map wymaga wartości od 3 do 8, aby ją znaleźć, będziesz musiał zastosować metodę prób i błędów;
Rot - kąt (w stopniach, rzecz jasna liczony w kierunku przeciwnym do ruchu wskazówek zegara), dookoła którego zostanie obrócony efekt (osią obrotu jest pionowa oś z)
MovementSpeed - dla efektu, który ma się przemieszczać; rzekomo w metrach na sekundę. Prawdopodobnie chodzi tu o pola na sekundę, ale pewności nie ma. Żeby efekt mógł się przemieszczać, przynajmniej jeden z jego elementów (instancji) musi mieć ustawioną nieskończoną liczbę cykli (Cycles --- 0);
MovePoints - punkty, do których kolejno będzie przemieszczał się efekt specjalny (MovementSpeed musi być większy od 0), podawane w taki sam sposób jak pozycja. Można ich dodać ile dusza zapragnie.
x - nowa pozycja efektu w poziomie (horyzontalnie);
y - nowa pozycja efektu w pionie (wertykalnie);
z - wysokość, na jaką wzniesie się efekt;
ConstantPitch - działanie nieznane, być może żadne;

CustomAnimations - lista animacji odtwarzanych podczas sentencji:
HeroLink - link do bohatera (AdvMapHero), który ma wykonać jakiś ruch;
MonsterLink - link do jednostki (AdvMapCreature)Jeżeli pliki scenki są rozrzucone w różnych miejscach, to w tym miejscu mogą pojawić się problemy z wyświetlaniem zestaw dostępnych jednostek, której animacja ma zostać odtworzona; zamiennie z HeroLink;
AnimationIndex - niedziałający aktualnie parametr;
AnimationDelay - czas (sekundy) jaki upłynie od początku sentencji do odtworzenia danej animacji, można wybrać ujemny;
AnimName - nazwa skryptowa animacji, która ma zostać odtworzona (np. attack00, stir00, cast, happy itp., ważne są wielkie i małe litery), zestaw animacji danego stworzenia możesz podejrzeć w jego "arenowym" zestawie animacji (jego nazwa brzmi zazwyczaj "Nazwajednostki-arena.xdb", możesz go znaleźć, wybierając odpowiednią tablicę i przeszukując Bazę Danych Gry 0, podgląd będzie w oknie "Właściwości zaznaczonego obiektu"), niewpisanie niczego w tym polu spowoduje odtworzenie pierwszej animacji z listy;
MovePoints - jeśli wybierzemy animację ruchu (move, Czarny Jeździec posiada dodatkowo specialmove), będziemy musieli określić punkty, które "zaliczać" będzie wykonawca owego ruchu, w tym przypadku są one takie jak koordynaty danych pól:
x - współrzędna X
y - współrzędna Y
FinalAngle - kąt (w stopniach, kierunek przeciwny do ruchu wskazówek zegara), pod którym zatrzyma się jednostka po zakończeniu ruchu (tylko dla animacji ruchu - move);
MovementSpeed - teoretycznie prędkość ruchu, a praktyce parametr nie działa;

MusicVolumePercent - głośność muzyki w procentach, 0 jest traktowane jak 100%, aby wyciszyć muzykę, wybierz StopMusic --- true;
MusicFadeOutDuration - przez dany czas muzyka będzie stopniowo wyciszana (do zera);
MusicOverride - stary temat muzyczny zostanie zastąpiony przez nowy:
Music - melodia zastępująca;
StartTime - początek zastępowania;
TimeShift - czas zastępowania;

AdditionalCameras - dodatkowe ujęcie w danej sentencji. Dobra rzecz, ubogaca scenki.
NewCameraSet - link do dodatkowego ujęcia; jeśli wybierzesz wielokropek, to w następnym oknie pojawi się lista wszystkich ujęć, w tym tych, które zostały stworzone dla Twojej scenki - będą się one znajdowały w jej folderze, a ich nazwa będzie wyglądała tak*nazwa*cam-set;
StartDelay - czas (w sekundach), po którym "wejdzie" nowe ujęcie;

Anim3DSoundVolumeCustom - głośność w procentach wszystkich standardowych dźwięków, tj. animacji, efektów itp; 0 jest traktowane jak 100%, analogicznie do muzyki, żeby dźwięki wyciszyć, należy wybrać StopAmbient --- true.


Scenki dialogowe "odpala się" funkcją
StartDialogScene('lokalizacja');
Gdzie lokalizacja to odnośnik do pliku DialogScene scenki. W moim przypadku scenka jest odtwarzana na początku mapy, więc funkcja "odpalania" znajduje się "na czysto" w pliku skryptu i wygląda tak:
StartDialogScene("/DialogScenes/Mapka_probna/DialogScene.xdb#xpointer(/DialogScene)");
Gdyby odtworzenie scenki miało być warunkowane przez określone zdarzenie, trzeba napisać odpowiednią funkcję skryptową, np. gdyby scenka miała być odtworzona z nastaniem drugiego dnia, wyglądałoby to tak:
Trigger(NEW_DAY_TRIGGER, "scenka");
function scenka()
if ( GetDate(MONTH) == 1 ) and ( GetDate(WEEK) == 1 ) and (GetDate(DAY_OF_WEEK) == 2 ) then
StartDialogScene("/DialogScenes/Mapka_probna/DialogScene.xdb#xpointer(/DialogScene)");
end;
end;

Stąd możecie pobrać mapkę, po której uruchomieniu odtworzy Wam się scenka, a zaraz po niej nastąpi zwycięstwo (funkcja Win(); powoduje natychmiastowe zwycięstwo gracza ludzkiego). Możecie też otworzyć mapę w edytorze map, a w Bazie Danych Gry 0 w folderze DialogScenes/Mapka_probna znajdziecie plik DialogScene, który po dwukrotnym kliknięciu powoduje wczytanie scenki przez edytor.

W scence czarnoksiężnik wykonuje ruch, choć domyślnie nie znajduje się on w jego zestawie animacji. Aby to było możliwe, do jego pliku AnimSet dodałem animację "move" i podałem odnośnik do odpowiedniej animacji z "mapowego" zestawu. W większości przypadków działa to bez żadnych problemów, ale czasem może okazać się niemożliwe. Zmodyfikowany plik AnimSet również znajduje się w plikach mapki.
© 2003-21 Kwasowa Grota. Wszelkie prawa zastrzeżone. Jakiekolwiek kopiowanie, publikowanie lub modyfikowanie tekstów grafiki i innych materiałów chronionych prawem autorskim znajdujących się na stronie bez wyraźnej zgody autorów jest zabronione.
Komnaty "Heroes V". Redakcja, kontakt