Witaj Nieznajomy!
|
temat: [przyklejony] ERM poziom - "Impossible" komnata: Niebiańska Kuźnia (WoG, HotA, VCMI) |
wróć do komnaty |
strona: 1 - 2 - 3 - 4 | |
Altair |
W tym temacie zamieszczane będą skrypty ERM (oraz fragmenty kodów), triki i sztuczki których napisanie jest b. trudne, a czasem wręcz wydaje się niemożliwe. Przez "bardzo trudne" rozumiem modyfikowanie czegoś co nie jest ujęte w żadnej oficjalnej dokumentacji. Od prostych trików używających nieznane (lub zapomniane) funkcje po ekstremalne skrypty pracujące na pamięci. Oczywiście nie ukrywam, że jest temat dla bardziej obeznanych z ERM. Znających oficjalną dokumentację i umiejących z niej korzystać. Poniżej zbiór takich skryptów aktualnie prezentowanych na AC: Na początek coś prostego: Każdy kto grał w H2 pamięta, że aby zdobyć niektóre artefakty (leżące na ziemi) należało posiadać umiejętność (m.in dowodzenie) lub zapłacić złotem. Mało kto wie, ale ta funkcja pozostała także w H3 (O czym można się przekonać eksportując sobie pliki tekstowe). Są to prawdopodobnie pozostałości jakiś wersji alfa H3. Skrypt na to jest bardzo prosty: ______________________________________________________________ ZVSE !#ARx/y/p:Vnr;** nr od 0 do 6 Uwagi - żeby nie było zbyt pięknie są pewne ograniczenia. Artefakt ten MUSI być dodany na mapę w edytorze. Nie może zawierać jakiegokolwiek tekstu, strażników itp. ______________________________________________________________ Skrypt na szkieletornie (ta w nektropolis): !?GM0; !!FU22221:P; !?FU22222; !!VRy1:S8072312;**wog 3.58F !!VRy2:Sx1*4; !!VRy1:+y2; !!UN:Cy1/4/?x9; !!UN:Cy1/4/x2; !?FU22221; !!FU22222:P24/172;**jednorożec w zmorę !!FU22222:P172/172;** zmora nie podlega transformacji ;P !#FU22221:P; Wystarczy dodawać linijki z !!FU22222:Ptyp_stwora/typ_po_tranformacji; Uwagi - skrypt pozwala zmieniać przypisane transformacje stworów. Jednak tam modyfikacja nie jest zapisywana w stanie gry. Dlatego komenda !?GM0; jest tu niezbędna. ______________________________________________________________ Własne klasy bohaterów: ZVSE !#VRz500:S^Czarodziejka^; !?FU29001; !!VRy1:Sx1 *64 +6805612; !!VRy2:Sx2*512+40225400; !!UN:Cy1/4/y2; !#FU29001:P5/500; Wystarczy wywołać !!FU29001:Pnr_klasy/nr_zmiennej_z; Uwagi - oczywiście od teraz każda zmiana zmiennej z500 zmieni nazwę klasy. Działa to globalnie na wszystkich bohaterów danej klasy. ______________________________________________________________ Kolejny skrypt był już kiedyś prezentowany. To zbalansowany pożeracz dusz. Aktualna wersja 2.0 została poprawiona i przetestowana na różnych komputerach i dla różnych wersji językowych (polskiej i angielskiej). http://www.erm.acidcave.net/download.php#42 Uwagi - może nie działać z "mieszanymi" wersjami językowymi. ______________________________________________________________ Wkrótce dodam kolejne. :) |
Alamar |
Cytat: Zagraj w czyste RoE, to tę funkcję znajdziesz bez problemu.
Każdy kto grał w H2 pamięta, że aby zdobyć niektóre artefakty (leżące na ziemi) należało posiadać umiejętność (m.in dowodzenie) lub zapłacić złotem. Mało kto wie, ale ta funkcja pozostała także w H3 (O czym można się przekonać eksportując sobie pliki tekstowe). Są to prawdopodobnie pozostałości jakiś wersji alfa H3. |
Altair |
Być może, ale w czyste RoE grałem chyba wieki temu. ;) |
Altair |
Tak jak obiecałem kolejna porcja ekstremalnych skryptów. Jedynym z najbardziej irytujących błędów ERMu WOGa 3.58F jest błędne działanie komendy !!MR:N (Niewtajemniczonych informuję, że powinna zwracać nr sloty/oddziałów na polu bitwy w który trafi zaklęcie punktowe lub obszarowe). Rozwiązaniem tego problemu jest poniższy skrypt: ______________________________________________________________ !?MR2; !!UN:C42147184/4/?y1; !!VRy1:+56; !!UN:Cy1/4/?y2; !!BU:Ey2/?y3; W zmiennej y3 zwracany jest numer oddziału. ______________________________________________________________ Czarny Rynek jest jednym z nielicznych obiektów w 3.58F, który nie da się w żaden zwykły sposób zmodyfikować. Po wielu bezowocnych poszukiwaniach na jednym z zagranicznych for udało mi się znaleźć rozwiązanie: !?PI; !!FU888:Pnr_slotu/nr_artefaktu/x/y/p; !?FU888; !!VRx1:-1; !!OBx3/x4/x5:C?y80; !!UN:C6919480/4/?y81; !!VRy81:+128644; !!UN:Cy81/4/?y81; !!VRy82:Sy80*28; !!VRy83:Sx1*4; !!VRy81:+y82; !!VRy81:+y83; !!UN:Cy81/4/x2; Powyższy skrypt na początku rozgrywki zmienia artefakty dla danego Rynku o współrzędnych x, y, p. Uwaga! Akceptowane są tylko artefakty, próba dodania zwojów skończy się crashem. ______________________________________________________________ Na koniec rzucanie zaklęć przez zwykłe jednostki z uwzględniam magicznych odporności. Czyli np. Gremlin rzucający pole minowe, harpia rzucająca klątwę. A wszystko to w stylu Czarodziejskiego Smoka. Skrypt poniżej: Oczywiście dostępne są także inne style np. Wielkiego dżina (losowe zaklęcie wspomagające). Wystarczy dodać kolejny parametr do składni !#FU11111 !#FU11111:Pnr_stworzenia/zaklęcie/liczba_tur_lub_moc/nr_stworzenie_wzorcowego. Czyli w wypadku losowych zaklęć będzie to numer dżina. !?FU11111; !!VRx10:Sx4; !!VRv1:C8/7/2; !!VRx4&x10>0:Sx10+7960963; !!VRx5&x10>0:Sx10+7960775; !!VRx6&x10>0:Sx10+7960587; !!UN&x10>0:Cx4/1/?y1 Cx5/1/?y2 Cx6/1/?y3; ** Cx7/1/?y4 Cx8/1/?y5 Cx9/1/?y6; !!VRv1&x10>0:Cy1/y2/y3/y4/y5/y6; !!VRx4:Sx1+7960963; !!VRx5:Sx1+7960775; !!VRx6:Sx1+7960587; !!UN:Cx4/1/v1 Cx5/1/v2 Cx6/1/v3; **UN&x10>0:Cx7/1/y4 Cx8/1/y5 Cx9/1/y6; !!MA:Bx1/3; !!VRy1:S8700+x1; !!VRvy1:Sx2*10000+x3; !#FU11111:Pnr_stworzenia/zaklęcie/liczba_tur_lub_moc;**tą linijkę można kopiować !?FU11112; !!BMx16:T?y1 N?y2 H?y3; !!FU&y1<0|y1>196/y2<1/y3<1:E; !!VRy4:S8700+y1; !!FU&vy4<1:E; !!VRy5:Svy4:10000; !!BMx16:U4/y5; !?BR&1000; !!DO11112/0/41/1:P; !?BG0; !!VRv9215:C-1/-1/-1/-1/-1; !!BG:A?y10 N?y11; !!FU&y10<>10|y11<0/y11>41:E; !!BMy11:T?y3; !!FU|y3<0/y3>196:E; !!VRy4:Sy3+8700; !!FU&vy4<1:E; !!BG:E?v9215; !!VRv9216:Sy3; !!VRy5:Svy4:10000; !!BMy11:Gy5/?v9217/?v9218; !?BG1&v9215<>-1; !!BM21:P?y1; !!VRy7:Sv9216+8700; !!FU&vy7<1:E; !!VRy5:Svy7:10000; !!VRy6:Sy5*10000; !!VRy8:Svy7-y6; !!FU&y8<1:E; !!BMv9215:Gy5/?y1/?y3; !!BMv9215&v9217>0:Gy5/v9217/v9218; !!BMv9215&y3=>v9218/y8>v9217/y1>0:Gy5/y8/y3; !!VRv9215:S-1; !!BU:R; Jednak jest jedno "ale". "Umagiczniać" można tylko stworzenia od Archanioła w wzwyż. Póki co nie sposobu na resztę jednostek z Castle (Należałoby przekopiować tablice umiejętności i znieść ograniczenie dla castle). ______________________________________________________________ |
Altair |
Kolejne skrypty. Pierwszy pozwala przypisać niektóre umiejętności jednostkom (Od Jednorożca do Drakolicza). Nie sprawdzałem czy zapisują się one wraz z grą dlatego dla pewności można użyć !?GM0; ZVSE !?FU22228; !!VRx1:-22; !!VRy1:S7961304+x1; !!UN:Cy1/1/x2; !?PI; !!FU22228:Pnr_stworzenia/nr_umiejętności; !?GM0; !!FU22228:Pnr_stworzenia/nr_umiejętności; Czyli np. Chcemy ustawić jednorożcowi umiejętność "Postarzania" zamiast oślepiania piszemy: !!FU22228:P24/4; Oto inne umiejętności: 1 oślepienie 2 zaraza 3 klątwa 4 starość 5 skamienienie 6 paraliż 7 trucizna 8 zionięcie kwasem 9 brak efektu ______________________________________________________________ Drugi Skrypt pozwala ustawiać premie do ataku obrony, moc i wiedzy dla artefaktów bez użycia !?AE; (działa także na puste artefakty) ZVSE !?PI; !!FU9129:Pnr_artefaktu/atak/obrona/moc/wiedza; !?GM0; !!FU9129:Pnr_artefaktu/atak/obrona/moc/wiedza; !?FU9129; artefakty funkcji !!VRy1:S8073100; **S8094552 !!VRy2:Sx1*4+y1; !!UN:Cy2/1/x2; !!VRy2:+1; !!UN:Cy2/1/x3; !!VRy2:+1; !!UN:Cy2/1/x4; !!VRy2:+1; !!UN:Cy2/1/x5; Czyli aby przypisać "pustym butom" +1 ataku, +2 obrony, +3 mocy, +4 wiedzy wystarczy użyć: !!FU9129:P169/1/2/3/4; |
Altair |
Kolejny skrypt pozwalający niestrzelające jednostki zmieniać w strzelające (Z którego korzystają m.in twórcy Gaju): !?FU8900; !!VRx3&x1=1/x2<2:S16; !!VRx3&x1=1/x2>197:S16; !!FU|x2<2/x2>197:E; !!UN:V?y1/?y2;**test wersji !!VRx2&y1=358:+7961526; **dla 3.58f !!VRx2&y1=359:+7994814; **dla 3.59 + era !!UN&x1=0:Cx2/1/x3; !!UN&x1=1:Cx2/1/?x3; !?PI; **ustawiamy flagę strzelania !!MA:Xnr_stwora/?i; !!VRi:|4; !!MA:Xnr_stwora/i; !!FU8900:P0/nr_stwora/typ_pocisku; **potrzebne aby działało po wczytaniu save'a !?GM0; !!FU8900:P0/nr_stwora/typ_pocisku; typy pocisku: 0 - Łucznik 1 - Mnich 2 - Elf 3 - Master Gremlin; 4 - Mag 5 - Tytan 6 - Gog 7 - Lisz 8 - Meduza 9 - Ork 10 - Cyklop 11 - Reptilion 12 - Żywiołak lodu 13 - Niziołek 14 - Katapulta 15 - Balista Na koniec kilka uwag. Powyższa wersja będzie działać poprawnie zarówno pod 3.58F jak i 3.59 (Era). Jest wysoce prawdopodobne, że otrzymacie komunikat o braku pliku dźwiękowego strzału np. xxxxshot.82m. Plik musicie umieścić w katalogu data. Jeśli chcemy przypisać więcej niż jednemu stworowi zdolność strzelania to dodajemy TYLKO dodatkowe linijki np.: !!MA:Xnr_stwora/?i; !!VRi:|4; !!MA:Xnr_stwora/i; !!MA:Xnr_stwora2/?i; !!VRi:|4; !!MA:Xnr_stwora2/i; oraz !!FU8900:P0/nr_stwora/typ_pocisku; !!FU8900:P0/nr_stwora2/typ_pocisku2; W żadnym wypadku nie należy powielać, dublować, multiplikować reszty skryptu (która ma pozostać w jednej kopii) |
majaczek |
Jak dodać umiejętność w stylu "Stack Experience" dla commandera, który jest prawdziwym commanderem (nie "monster commander")? bebechy polecenie !!EA działają, ale rezultaty są ignorowane przez grę... jest na to jakiś !!UN:C ? |
gruziak97 |
Mam pytanie dotyczące skryptu dodającego umiejętność strzelania: Co powinienem wstawić za typ_pocisku? Czy to działa na zasadzie jak numery stworzeń tzn. jakaś liczba odpowiada jakiemuś pociskowi np. 1 bełtowi kusznika? Trochę inna sprawa: Czy po dodaniu tych linii do jakiegoś skryptu z data\s będzie to działać? |
majaczek |
Rozumiem że kod na ustawienie pustego artefaktu nie działa z wtyczką Emerald (która daje możliwość dodania nowych pustych artefaktów i w tym celu zmienia miejsce w pamięci informacji o artefakcie aby się zmieściła)? Co do sztuczek na strzelanie/czarowanie stworka to czy będą działać z wtyczką Amethyst (umozliwia dodanie nowych stworków)? bo nie mam pojęcia czy potrzebna informacja zmieniła miejsce w pamięci czy nie... Czy istnieje możliwość napisania wersji skryptu zgodną z Amethystem/Emeraldem/inną_wtyczką_ERY? podejrzewam że zmiana adresu na właściwy powinna wystarczyć, a ten można sprawdzić czytając źródełko wtyczki. Co do właściwości Commanderów, Bersy udostępnił mi potrzebne adresy, więc jak będę miał czas je sprawdzić, to zapodam skrypt wyłączający różne różnice między Commanderem a zwykłą jednostką (Każdy z podanych adresów przez Bersyego na coś takiego pozwala, muszę tylko wiedzieć który adres odpowiada za którą cechę). Jeśli ktoś mimo wszystko chciałby mnie wyręczyć mogę zapodać tą listę adresów wraz z wartościami początkowymi (wystarczy sprawdzić która za co odpowiada i czy nie trzeba "wyłączyć" kilku na raz aby wyłączyć jedną cechę), które oczywiście zawierają początek lub koniec zakresu numerów stworzeń dla Commandera, więc "wyłączenie" polega na taką zamianę niektórych z nich by dany kawałek kodu nigdy się nie wykonał (tj. zmienić zakres na pusty). |
Altair |
Cytat: Mam pytanie dotyczące skryptu dodającego umiejętność strzelania: Co powinienem wstawić za typ_pocisku? Czy to działa na zasadzie jak numery stworzeń tzn. jakaś liczba odpowiada jakiemuś pociskowi np. 1 bełtowi kusznika? Trochę inna sprawa: Czy po dodaniu tych linii do jakiegoś skryptu z data\s będzie to działać? Powinno działać. Aczkolwiek są pewne restrykcje. Np. stworzenie musi posiadać animacje strzelania i gra "chyba" musi być o tym jakoś poinformowana. Lista typów pocisków była już chyba gdzieś podawana na forum. Cytat: Co do sztuczek na strzelanie/czarowanie stworka to czy będą działać z wtyczką Amethyst (umozliwia dodanie nowych stworków)? bo nie mam pojęcia czy potrzebna informacja zmieniła miejsce w pamięci czy nie... Czy istnieje możliwość napisania wersji skryptu zgodną z Amethystem/Emeraldem/inną_wtyczką_ERY? podejrzewam że zmiana adresu na właściwy powinna wystarczyć, a ten można sprawdzić czytając źródełko wtyczki. Nie mam pojęcia. Zgaduje, że nie, ale nic nie stoi na przeszkodzie by to poprawić. Niestety nie śledzę na bieżąco rozwoju ERY i pluginów do niej dlatego bardzo proszę o link. Jak znajdę czas (pewnie w czerwcu lub lipcu) postaram się zaktualizować skrypty. Swoją drogą za dużo robi się tych wersji, pluginów i innych skryptowych modyfikacji i przydałaby się jakaś unifikacja. Dlatego pół roku temu zacząłem projekt "Aquamarine Library" zbierający istniejące UN:C'owe skrypty i pozwalające na pisanie skryptów nie martwiąc się o wersję WoGa (3.58F, ERA). Oczywiście nie wszystko da się przenieść, ale póki co się udało: zebranie poprawek (MR:N, TR:T, HE:F), skryptów do kontroli zaklęć (SP), autosawu, czarnego rynku (itd.) wszystko działające od 3.58F wzwyż. Raz napisane skrypty będą działać niezależnie od wersji, a w razie pojawienia się nowinek (nowych wersji ERY) wystarczy zaktualizować wersję (Aquamarine Library) |
gruziak97 |
Cytat: Np. stworzenie musi posiadać animacje strzelania i gra "chyba" musi być o tym jakoś poinformowana. A w jaki sposób mam ją "poinformować"? Sam skrypt tego nie zrobi? Cytat: Lista typów pocisków była już chyba gdzieś podawana na forum. A mógłbyś ją jeszcze raz podać, albo czy znajdę ją w ERM help, w tych listach Format X? |
Irhak |
Cytat: We flagach jednostki masz m.in. strzelca. IMO to trzeba dać, aby gra była poinformowana (o ile nie ma tego w powyższym skrypcie).
A w jaki sposób mam ją "poinformować"? Sam skrypt tego nie zrobi? |
gruziak97 |
A czy to nie informuje gry? **ustawiamy flagę strzelania !!MA:Xnr_stwora/?i; !!VRi:|32789; !!MA:Xnr_stwora/i; Skoro jest opisane jako ustawianie flagi strzelania? |
Irhak |
EKHM!: (o ile nie ma tego w powyższym skrypcie) Nie jestem przekonany co do liczby jedynie, ale skoro to rzekomo działa... |
gruziak97 |
Chciałem się upewnić. W każdym razie dzięki. Pewnie niedługo to przetestuje i się okaże, chociaż myślę, że jest dobrze, skoro nikt nic jeszcze nie pisał. @DOWN Dzięki Altair. |
Altair |
Dodałem typy pocisków. |
TopFunny525 |
Altair, takie dwa pytania. Pierwsze gdzie znajduje się ten dźwięk strzału(pierwotnie?) A drugie, napiszesz skrypt na zmianę umiejętności bohatera? Np. Chciałbym dać Ash(z inferno heretyk), umiejętność Expert magii ognia(taką jaką ma Adrienne w swojej kampanii). Czy pomożesz? |
gruziak97 |
Co prawda nie jestem Altair, ale chyba mogę pomóc. Cytat: Pierwsze gdzie znajduje się ten dźwięk strzału(pierwotnie?) Altair: Oznacza to, że tego pliku w ogóle niema. Musisz go sam dodać i wrzucić do katalogu data. Natomiast już istniejące dźwięki znajdują się w archiwum heroes3.snd w data.Jest wysoce prawdopodobne, że otrzymacie komunikat o braku pliku dźwiękowego strzału np. xxxxshot.82m. Plik musicie umieścić w katalogu data. Cytat: Skorzystaj z zakładki HE w ERMHelp.A drugie, napiszesz skrypt na zmianę umiejętności bohatera? Np. Chciałbym dać Ash(z inferno heretyk), umiejętność Expert magii ognia(taką jaką ma Adrienne w swojej kampanii). Czy pomożesz? EDIT U mnie działa coś takiego: !#HE@:S#/$; @nr bohatera (format H w ERMHelp) #nr umiejętności (format SS w ERMHelp) $poziom umiejętności 0-brak 1-podstawowy 2-zaawansowany 3-ekspert |
TopFunny525 |
Dzięki Gruziak:). A jak wejść do Archiwum snd?(tego który napisałeś związku z dźwiękami? |
gruziak97 |
Wystarczy MMarchive :) |
strona: 1 - 2 - 3 - 4 |
temat: [przyklejony] ERM poziom - "Impossible" | wróć do komnaty |
powered by phpQui
beware of the two-headed weasel