piątek, 15 lipca 2016
Gothic 2 Noc Kruka - Ciekawostka #1
Zapewne większość wie, że bandytę przed jaskinią Brago (chodzi o tych bandytów na początku gry, koło Cavalorna) można za pomocą niezastąpionej sztuki dialogu i negocjacji wprowadzić w taki stan, że będzie niezwykle skłonny dostarczyć bohaterowi wielu pożytecznych informacji. Wielu też wie, że można mu powiedzieć o tym, że zamierza się z Cavalornem zaatakować ich kryjówkę, a ten "da" trochę doświadczenia i ucieknie (wielu też wie, że ucieka do krzaków, w których siedzi Młody wilk, do którego warto najpierw pójść i "zebrać" z niego doświadczenie). Większość też go (rzeczonego Bandytę) wtedy zabija. Ale, jak się okazuje, można to całe zdarzenie przeprowadzić jeszcze optymalniej. Otóż należy porozmawiać z Malethem (pasterzem z farmy Lobarta) o rzeczonych bandytach. Wtedy będzie można porozmawiać z naszym Bandytą o tym, że farmerzy o nich wiedzą, to znowu bohater "uzyska" więcej doświadczenia, a Bandyta ucieknie tym razem do obozowiska Cavalorna.
Modding #5 - Tworzenie przedmiotów
Tak więc wytłumaczę zasady tworzenia nowych przedmiotów. Nowy przedmiot należy dać w tym samym folderze co inne, a nazwa pliku może być dowolna, ale musi mieć IT_ na początku (a plik ma być w formacie takim jak inne).
INSTANCE RodzajPrzedmiotu_EwentualnyNapisAddonLubInny_NazwaPoAngielsku (C_Item)
INSTANCE musi być, bo to znaczy, że teraz będziemy coś definiować
Nazwa, którą podałem jest tylko sugerowana, może być Dupa, ale jakakolwiek by nie była powinna być czytelna i musi być unikatowa
(C_Item) mówi Gothikowi, że to jest przedmiot
{
Klamra otwiera definicję przedmiotu
name = "Nazwa";
Jest to nazwa, która jest wyświetlana, gdy przedmiot leży na ziemi, nie w ekwipunku
mainflag = KATEGORIA_PRZEDMIOTU;
Dzięki temu Gothic wie jak ma traktować ten przedmiot (ogólnie)
Oto kategorie główne występujące w Gothiku:
ITEM_KAT_NF - Broń do walki w zwarciu ("Near Fight")
ITEM_KAT_FF - Broń do walki na odległość ("Far Fight")
ITEM_KAT_MUN - Amunicja do broni do walki na odległość
ITEM_KAT_ARMOR - Zbroje
ITEM_KAT_FOOD - Jedzenie
ITEM_KAT_DOCS - Dokumenty (listy, książki, itd.)
ITEM_KAT_POTIONS - Mikstury
ITEM_KAT_LIGHT - Pochodnie
ITEM_KAT_RUNE - Runy i zwoje
ITEM_KAT_MAGIC - Przedmioty magiczne (pierścienie, amulety, itd.)
ITEM_KAT_NONE - To co nie pasuje nigdzie indziej (np. muszle)
ITEM_KAT_KEYS - klucze
flags = FLAGA;
Dzięki temu Gothic wie jak ma traktować ten przedmiot (szczególnie)
Oto flagi występujące w Gothiku (używane):
Bronie:
ITEM_SWD - Miecze jednoręczne
ITEM_AXE - Topory jednoręczne
ITEM_2HD_SWD - Miecze dwuręczne
ITEM_2HD_AXE - Topory dwuręczne
ITEM_BOW - Łuki
ITEM_CROSSBOW - Kusze
Przedmioty magiczne:
ITEM_RING - Pierścienie
ITEM_AMULET - Amulety
ITEM_BELT - Pasy
Inne:
ITEM_MISSION - Ważne, taki przedmiot nie może być usunięty (czyli np. NPC, który ma taki przedmiot w ekwipunku nie zniknie po śmierci
ITEM_MULTI - Czasami trzeba dać, żeby można było "kumulować" przedmiot w ekwipunku
ITEM_TORCH - Pochodnie
value = Liczba;
Wartość przedmiotu
damagetype = TYP_OBRAŻEŃ;
Tylko do broni, oto typy obrażeń (używane do broni):
DAM_BLUNT - Obuchowe (do młotów, maczug, itp.)
DAM_EDGE - Sieczne (do mieczy, toporów, itp.)
DAM_FIRE - Ogień
DAM_FLY- "Latające", jak się to da, to po trafieniu "delikwent" odlatuje (jak u trolla)
DAM_MAGIC - Magiczne
DAM_POINT - Od pocisków
damageTotal = Liczba;
Obrażenia broni - tylko do broni
damage [TYP_OBRAŻEŃ] = Liczba;
Jeśli broń ma więcej niż jeden typ obrażeń można dla każdego typu ustawić wartość
wear = MIEJSCE_ZAŁOŻENIA;
Od miejsca założenia zależne jest to jak ubierany będzie przedmiot
WEAR_TORSO dla zbroi
WEAR_EFFECT dla amuletów itp.
protection [RODZAJ_OBRAŻEŃ] = Liczba;
Ochrona przed danym typem obrażeń, dla każdego trzeba podać osobno
Rodzaje ochron używane w zbrojach, są takie same jak przy obrażeniach (zamiast DAM, należy wpisać PROT), z tym, że PROT_FLY nie jest używane (czyt. nigdy nie ustawiamy PROT_FLY, ponieważ gdy ochrona celu przed obrażeniami "latającymi" jest wyższa niż obrażenia "latające" przeciwnika, to cel nie poleci)
cond_atr[2] = ATRYBUT;
Atrybut wymagany do założenia przedmiotu (oczywiście tylko przedmioty, które można założyć), tą dwójkę należy zignorować bo to raczej porzucony pomysł (ale chyba musi być)
Oto zmienne atrybutów:
ATR_HITPOINTS - Aktualne punkty trafień (moja ulubiona nazwa na punkty oznaczające "poziom życia")
ATR_HITPOINTS_MAX - Maksymalne punkty trafień
ATR_MANA - Aktualna mana
ATR_MANA_MAX - Maksymalna mana
ATR_DEXTERITY - Zręczność
ATR_STRENGTH - Siła
cond_value[2] = Liczba;
Wartość atrybutu ustalonego powyżej, wymagana do założenia
on_equip = Nazwa_Funkcji;
Tu można wpisać nazwę funkcji (tylko nazwę, bez nawiasów), która ma się wykonać po założeniu przedmiotu, oczywiście tylko dla tych przedmiotów, które można założyć
on_unequip = Nazwa_Funkcji;
Jak wyżej, ale przy zdejmowaniu przedmiotu
on_state[0] = Funkcja;
Tylko dla przedmiotów z warunkiem sceneName
Funkcja (bez nawiasów trzeba podać) wykona się podczas "utylizacji" przedmiotu
visual = "Nazwa.3DS";
Nazwa modelu tego przedmiotu (raczej musi być format .3DS)
visual_change = "Nazwa.ASC";
Model dla zbroi, należy podać nazwę pliku w formacie .ASC
effect = "NAZWA_EFEKTU";
Nazwy efektów można znaleźć w pliku VisualFxInst.d w folderze System
visual_skin = liczba;
Dla sprytnego zmieniania tekstur zbroi, opisane będzie później dokładnie. Powinno być 0.
scemeName = "NAZWA_SCENY";
Przedmiot, który ma coś tu wpisane można "zutylizować" klikając na niego w ekwipunku. Nazw scen najlepiej szukać przy innych przedmiotach
material = MATERIAŁ;
Od tego zależy jakie dźwięki przedmiot będzie wydawał (np. przy upuszczaniu)
Oto materiały jakie występują w grze:
MAT_WOOD - Drewno
MAT_STONE - Kamień
MAT_METAL - Metal
MAT_LEATHER - Skóra (ale i materiał)
MAT_CLAY - Glina (?)
MAT_GLAS - Szkło (?)
munition = Instancja_Amunicji;
Dla broni dystansowych, instancja amunicji do tej broni
spell = Nazwa_Zaklecia;
Dla run i zwojów
range = Liczba;
Zasięg broni (cm), tylko dla broni do walki wręcz
mag_circle = Liczba;
Krąg magii wymagany do użycia przedmiotu (raczej runy)
description = "Nazwa";
Nazwa w ekwipunku, można też napisać:
description = name;
Wtedy nazwa w ekwipunku jest taka sama jak name
TEXT[Liczba] = Słowo; COUNT[Liczba] = Liczba;
To służy do opisu przedmiotu
TEXT jest z lewej strony i jest tekstem
COUNT jest z prawej strony i jest liczbą
Każdego może być po 6, dając indeks (0-5) ustawia się miejsce, w którym się znajduje (wiersz)
};
Przede wszystkim nowe przedmioty należy tworzyć na bazie starych (kopiować, a następnie przerabiać tylko to, co chce się zmienić).
Tam gdzie napisałem, że coś raczej jest do czegoś znaczy, że nie jestem pewien, ale w oryginale jest tylko tak używane.
INSTANCE RodzajPrzedmiotu_EwentualnyNapisAddonLubInny_NazwaPoAngielsku (C_Item)
INSTANCE musi być, bo to znaczy, że teraz będziemy coś definiować
Nazwa, którą podałem jest tylko sugerowana, może być Dupa, ale jakakolwiek by nie była powinna być czytelna i musi być unikatowa
(C_Item) mówi Gothikowi, że to jest przedmiot
{
Klamra otwiera definicję przedmiotu
name = "Nazwa";
Jest to nazwa, która jest wyświetlana, gdy przedmiot leży na ziemi, nie w ekwipunku
mainflag = KATEGORIA_PRZEDMIOTU;
Dzięki temu Gothic wie jak ma traktować ten przedmiot (ogólnie)
Oto kategorie główne występujące w Gothiku:
ITEM_KAT_NF - Broń do walki w zwarciu ("Near Fight")
ITEM_KAT_FF - Broń do walki na odległość ("Far Fight")
ITEM_KAT_MUN - Amunicja do broni do walki na odległość
ITEM_KAT_ARMOR - Zbroje
ITEM_KAT_FOOD - Jedzenie
ITEM_KAT_DOCS - Dokumenty (listy, książki, itd.)
ITEM_KAT_POTIONS - Mikstury
ITEM_KAT_LIGHT - Pochodnie
ITEM_KAT_RUNE - Runy i zwoje
ITEM_KAT_MAGIC - Przedmioty magiczne (pierścienie, amulety, itd.)
ITEM_KAT_NONE - To co nie pasuje nigdzie indziej (np. muszle)
ITEM_KAT_KEYS - klucze
flags = FLAGA;
Dzięki temu Gothic wie jak ma traktować ten przedmiot (szczególnie)
Oto flagi występujące w Gothiku (używane):
Bronie:
ITEM_SWD - Miecze jednoręczne
ITEM_AXE - Topory jednoręczne
ITEM_2HD_SWD - Miecze dwuręczne
ITEM_2HD_AXE - Topory dwuręczne
ITEM_BOW - Łuki
ITEM_CROSSBOW - Kusze
Przedmioty magiczne:
ITEM_RING - Pierścienie
ITEM_AMULET - Amulety
ITEM_BELT - Pasy
Inne:
ITEM_MISSION - Ważne, taki przedmiot nie może być usunięty (czyli np. NPC, który ma taki przedmiot w ekwipunku nie zniknie po śmierci
ITEM_MULTI - Czasami trzeba dać, żeby można było "kumulować" przedmiot w ekwipunku
ITEM_TORCH - Pochodnie
value = Liczba;
Wartość przedmiotu
damagetype = TYP_OBRAŻEŃ;
Tylko do broni, oto typy obrażeń (używane do broni):
DAM_BLUNT - Obuchowe (do młotów, maczug, itp.)
DAM_EDGE - Sieczne (do mieczy, toporów, itp.)
DAM_FIRE - Ogień
DAM_FLY- "Latające", jak się to da, to po trafieniu "delikwent" odlatuje (jak u trolla)
DAM_MAGIC - Magiczne
DAM_POINT - Od pocisków
damageTotal = Liczba;
Obrażenia broni - tylko do broni
damage [TYP_OBRAŻEŃ] = Liczba;
Jeśli broń ma więcej niż jeden typ obrażeń można dla każdego typu ustawić wartość
wear = MIEJSCE_ZAŁOŻENIA;
Od miejsca założenia zależne jest to jak ubierany będzie przedmiot
WEAR_TORSO dla zbroi
WEAR_EFFECT dla amuletów itp.
protection [RODZAJ_OBRAŻEŃ] = Liczba;
Ochrona przed danym typem obrażeń, dla każdego trzeba podać osobno
Rodzaje ochron używane w zbrojach, są takie same jak przy obrażeniach (zamiast DAM, należy wpisać PROT), z tym, że PROT_FLY nie jest używane (czyt. nigdy nie ustawiamy PROT_FLY, ponieważ gdy ochrona celu przed obrażeniami "latającymi" jest wyższa niż obrażenia "latające" przeciwnika, to cel nie poleci)
cond_atr[2] = ATRYBUT;
Atrybut wymagany do założenia przedmiotu (oczywiście tylko przedmioty, które można założyć), tą dwójkę należy zignorować bo to raczej porzucony pomysł (ale chyba musi być)
Oto zmienne atrybutów:
ATR_HITPOINTS - Aktualne punkty trafień (moja ulubiona nazwa na punkty oznaczające "poziom życia")
ATR_HITPOINTS_MAX - Maksymalne punkty trafień
ATR_MANA - Aktualna mana
ATR_MANA_MAX - Maksymalna mana
ATR_DEXTERITY - Zręczność
ATR_STRENGTH - Siła
cond_value[2] = Liczba;
Wartość atrybutu ustalonego powyżej, wymagana do założenia
on_equip = Nazwa_Funkcji;
Tu można wpisać nazwę funkcji (tylko nazwę, bez nawiasów), która ma się wykonać po założeniu przedmiotu, oczywiście tylko dla tych przedmiotów, które można założyć
on_unequip = Nazwa_Funkcji;
Jak wyżej, ale przy zdejmowaniu przedmiotu
on_state[0] = Funkcja;
Tylko dla przedmiotów z warunkiem sceneName
Funkcja (bez nawiasów trzeba podać) wykona się podczas "utylizacji" przedmiotu
visual = "Nazwa.3DS";
Nazwa modelu tego przedmiotu (raczej musi być format .3DS)
visual_change = "Nazwa.ASC";
Model dla zbroi, należy podać nazwę pliku w formacie .ASC
effect = "NAZWA_EFEKTU";
Nazwy efektów można znaleźć w pliku VisualFxInst.d w folderze System
visual_skin = liczba;
Dla sprytnego zmieniania tekstur zbroi, opisane będzie później dokładnie. Powinno być 0.
scemeName = "NAZWA_SCENY";
Przedmiot, który ma coś tu wpisane można "zutylizować" klikając na niego w ekwipunku. Nazw scen najlepiej szukać przy innych przedmiotach
material = MATERIAŁ;
Od tego zależy jakie dźwięki przedmiot będzie wydawał (np. przy upuszczaniu)
Oto materiały jakie występują w grze:
MAT_WOOD - Drewno
MAT_STONE - Kamień
MAT_METAL - Metal
MAT_LEATHER - Skóra (ale i materiał)
MAT_CLAY - Glina (?)
MAT_GLAS - Szkło (?)
munition = Instancja_Amunicji;
Dla broni dystansowych, instancja amunicji do tej broni
spell = Nazwa_Zaklecia;
Dla run i zwojów
range = Liczba;
Zasięg broni (cm), tylko dla broni do walki wręcz
mag_circle = Liczba;
Krąg magii wymagany do użycia przedmiotu (raczej runy)
description = "Nazwa";
Nazwa w ekwipunku, można też napisać:
description = name;
Wtedy nazwa w ekwipunku jest taka sama jak name
TEXT[Liczba] = Słowo; COUNT[Liczba] = Liczba;
To służy do opisu przedmiotu
TEXT jest z lewej strony i jest tekstem
COUNT jest z prawej strony i jest liczbą
Każdego może być po 6, dając indeks (0-5) ustawia się miejsce, w którym się znajduje (wiersz)
};
Przede wszystkim nowe przedmioty należy tworzyć na bazie starych (kopiować, a następnie przerabiać tylko to, co chce się zmienić).
Tam gdzie napisałem, że coś raczej jest do czegoś znaczy, że nie jestem pewien, ale w oryginale jest tylko tak używane.
Subskrybuj:
Posty (Atom)