Kwasowa Grota Heroes VIIMight & Magic XHeroes III - Board GameHorn of the AbyssHistoria Światów MMSkarbiecCzat
Cmentarz jest opustoszały
Witaj Nieznajomy!
zaloguj się    załóż konto
Niebiańska Kuźnia  (WoG, HotA, VCMI)temat: [WoG, ERA] Skrypty ERM
komnata: Niebiańska Kuźnia (WoG, HotA, VCMI)
strona: 1 - 2 - 3 ... 66 - 67 - 68 ... 81 - 82 - 83

Altair PW
14 marca 2011, 17:51
"Wykonawcy nowego gaju" korzystali z rad (skryptów) "mistrza"(?) Altaira:

Sam skrypt znajdziesz tu: http://www.forum.acidcave.net/post.php?pid=45730

Kuririn PW
16 marca 2011, 15:31
Chciałbym przypisać jednostce atak "zabójcza chmura", lecz niewiedza w tym temacie jest bardzo głęboka :/ i znowu prośba do mistrza Altaira :D jak to można uczynić ;) chciałbym posiadać skrypt z umiejętnościami drakolisza lecz 2x większymi :D odp na magie blok itp. z góry dzięki.

TowDragon PW
25 marca 2011, 20:25
Hej!

Właśnie pracuję nad parserem ERMa i mam trochę problemów z nieudokumentowaną składnią, a użytkownicy HeroesCommunity jakoś nie palą się do pomocy, więc zapytam tutaj. Problematyczne linijki to (jak na razie):

!d!IF:M^Total number of resource piles: %V1.
(script00.erm, linia 1509) - nie wiem, co oznacza to 'd' pomiędzy wykrzyknikami receivera.

! !IF:V5/0;
(script03.erm, linia 377) - podobny problem, tym razem spacja

!!HEv269:A2/85/>0/>0; [Checks if attacking hero has an Hourglass artifact equipped]
(script06.erm, linia 158) - tym razem dziwią mnie te parametry '>0'

Pytania pewnie będą proste dla ERMowych wyjadaczy z tego forum, a odpowiedzi bardzo mi pomogą. Z góry dziękuję za pomoc :)

EDIT:
Czy to, że opcje do receiverów są zwykle postaci duża litera + ciąg parametrów oddzielonych '/', a każde dwie opcje są rozdzielone spacją to regułą, czy są od tego jakieś wyjątki?

EDIT2:
Kilka linii w skryptach kończy się dwukropkiem (np. script15.erm, linia 185), cz trafienie na nie nie powinno powodować czasem błędu? Czy też ma to jakieś znaczenie?

Altair PW
26 marca 2011, 21:42
Cytat:
!d!IF:M^Total number of resource piles: %V1.
(script00.erm, linia 1509) - nie wiem, co oznacza to 'd' pomiędzy wykrzyknikami receivera.

To nie jest zawarte w żadnej dokumentacji nawet tej nieoficjalnej.
Generalnie nie licząc tekstu zawartego w ^^ wszystkie nowe linijki nie zaczynające się zawierające (nie licząc spacji, tabów)
~#, !!, !?, !#, !$ powinny być pomijane tak jak komentarze. Powyższy kod nie raczej jest nigdy wykonywany.

Cytat:
! !IF:V5/0;
(script03.erm, linia 377) - podobny problem, tym razem spacja

Tu sytuacja podobna. Kod nie powinien teoretycznie działać.

Cytat:
!!HEv269:A2/85/>0/>0; [Checks if attacking hero has an Hourglass artifact equipped]
(script06.erm, linia 158) - tym razem dziwią mnie te parametry '>0'

Tu niestety nie wiem co autor skryptu miał na myśli. Wygląda na, że składnia '>0' miała ustawić flagę 1, która jest sprawdzana

Cytat:
Czy to, że opcje do receiverów są zwykle postaci duża litera + ciąg parametrów oddzielonych '/', a każde dwie opcje są rozdzielone spacją to regułą, czy są od tego jakieś wyjątki?

Z tego co wiem spacja jest opcjonalna.

Cytat:
Kilka linii w skryptach kończy się dwukropkiem (np. script15.erm, linia 185), cz trafienie na nie nie powinno powodować czasem błędu? Czy też ma to jakieś znaczenie?

Powinno, ale niekiedy błędy lubią się ujawniać w losowych momentach. :)

Shin0bi PW
27 marca 2011, 11:25
Jak powinien wyglądać następujący skrypt (o ile w ogóle jest możliwy)?

Jednostka X tylko i wyłącznie pod dowództwem bohatera Y otrzymuje zdolność Z?

*zdolność - chodzi mi głównie o zdolności z tych tablic:

Tablice

EDIT: Mógłbym jeszcze prosić o skrypt, który sprawia, że po upływie XX dni gracz czerwony wygrywa?

TowDragon PW
27 marca 2011, 18:57
Cytat:
To nie jest zawarte w żadnej dokumentacji nawet tej nieoficjalnej.
Generalnie nie licząc tekstu zawartego w ^^ wszystkie nowe linijki nie zaczynające się zawierające (nie licząc spacji, tabów)
~#, !!, !?, !#, !$ powinny być pomijane tak jak komentarze. Powyższy kod nie raczej jest nigdy wykonywany.

Ok, dzięki, a co robią ~# i !$? Tego też nie ma w oficjalnej dokumentacji (ani tej do WoGa 3.58f, ani tej nowszej po rosyjsku).


Cytat:
Tu niestety nie wiem co autor skryptu miał na myśli. Wygląda na, że składnia '>0' miała ustawić flagę 1, która jest sprawdzana

No to na razie przyjmę, że tak jest.

Dzięki za odpowiedzi, jak będę miał jeszcze jakieś pytania to będę pisał.

Altair PW
27 marca 2011, 20:26
Co do ~# to występuje na początku skryptu 00. Nie jestem do końca pewien czy pełni to jakąś specjalną rolę czy to tylko wymyślna forma komentarza.

Zaś !$ to (Post Triggers) przeciwieństwo zwykłego !?. W przeciwieństwie do niego jest wykonywany po (a nie przed) domyślnej funkcjonalności obiektu.

EDIT: Przy okazji dobrze by było wprowadzić komendę sprawdzającą wersję VCMI i parsera ERM:
!!UN:V?$1/?$2;

Dla rozróżnienia VCMI od WoGa do numeru wersji powinna być dodana jakaś stała np. 1000 lub 10000. Z pewnością ułatwi to pisanie skryptów oraz późniejszą migrację do VCMI.

Warmonger PW
29 marca 2011, 09:18
Zaraz, zaraz... nie chcesz chyba pisać nowych skryptów ERM po wyjściu VCMI? Wsparcie tego języka to tylko dodatek do projektu (konieczny, co prawda), a nie cel sam w sobie. ERM jest przeżytkiem.

Acid Dragon PW
29 marca 2011, 11:01
Nawet jeśli, to pisanie skryptów w ERM może być ciągle prostsze dla osób, które jakoś to opanowały, a nie znają zastosowanego przez Was mechanizmu skryptowego tudzież C++.

Co innego rozbudowa ERM, szeroko pojęte "wspieranie" i poprawianie błędów - to wydaje mi się już zbędne.

TowDragon PW
29 marca 2011, 17:55
Na pewno pozwolimy skryptom ERM sprawdzać, czy czasem nie działają na VCMI. Patrząc na różne sztuczki używane w skryptach ERM nie mam wątpliwości, że wiele skryptów będzie musiało być poprawionych, aby poprawnie działały pod naszym silnikiem. W ramach projektu na uczelnię i osobistego rozwoju planujemy jednak trochę rozszerzyć ten język - powinno to też ułatwić poprawianie istniejących skryptów. Wolałbym na razie nie ujawniać, w jakim kierunku ERM będzie rozszerzany, gdyż nie jest to jeszcze do końca przemyślane, ale zmiany te nie wpłyną na kompatybilność z istniejącymi skryptami ERM i pozwolą na poprawianie ich korzystając z dużo przyjemniejszej składni.

Altair PW
29 marca 2011, 18:31
Warmonger :
Zaraz, zaraz... nie chcesz chyba pisać nowych skryptów ERM po wyjściu VCMI? Wsparcie tego języka to tylko dodatek do projektu (konieczny, co prawda), a nie cel sam w sobie. ERM jest przeżytkiem.

Ja tylko troszczę się o bezbolesną migrację na nowy system skryptowy. Naprawdę wisi mi jakiego użyjecie języka skryptowego, ja mogę pisać nawet w asemblerze. Miejcie jednak na uwadze, że tysiące graczy z dnia na dzień nie przesiądą się ot tak na VCMII. Wielu jest przywiązanych do WoGowych skryptów, których tak łatwo nie przepiszecie na nowy język. Istnieje ponadto mnóstwo innych skryptów ERM, których tak z dnia na dzień nie da się przepisać.

TowDragon:
Na pewno pozwolimy skryptom ERM sprawdzać, czy czasem nie działają na VCMI. Patrząc na różne sztuczki używane w skryptach ERM nie mam wątpliwości, że wiele skryptów będzie musiało być poprawionych, aby poprawnie działały pod naszym silnikiem. W ramach projektu na uczelnię i osobistego rozwoju planujemy jednak trochę rozszerzyć ten język - powinno to też ułatwić poprawianie istniejących skryptów. Wolałbym na razie nie ujawniać, w jakim kierunku ERM będzie rozszerzany, gdyż nie jest to jeszcze do końca przemyślane, ale zmiany te nie wpłyną na kompatybilność z istniejącymi skryptami ERM i pozwolą na poprawianie ich korzystając z dużo przyjemniejszej składni.

Jeśli planujecie rozszerzyć ERM to nie piszcie, że jest przeżytkiem.

Warmonger PW
29 marca 2011, 21:15
Może na początku należałoby wyjaśnić, że w obecnej chwili nie planujemy jeszcze skryptów, które miałyby faktycznie działać. Parser ERM jest projektem zawieszonym w próżni i nie ma żadnego wpływu na zachowanie gry - tak pozostanie jeszcze przez długi czas.

Nie oznacza to, że przed napisaniem czegoś bardziej konkretnego nie możemy pewnych kwestii przedyskutować.
Moja wizja jest zbieżna z wizją Altaira - to znaczy przetłumaczenie ERM na kod bardziej przyjaznego języka, jakim jest Python. Na pewno będzie to zadanie trudne, czasochłonne i niekoniecznie w stu procentach możliwe. Nie widzę jednak powodu, aby dodatkowo rozszerzać ERM. Wystarczy, że konsola wyrzuci błąd o niewspieranej / wadliwej instrukcji i to do autora skryptu będzie należało jego poprawienie, by działał pod VCMI.
Jeszcze raz powtórzę, że to jest miły dodatek, a nie podstawowy cel - być może nigdy nie uda się w pełni go zrealizować.

Kuririn PW
30 marca 2011, 23:03
Hmm...

... mam takie małe pytanie co do woga o erm:)a mianowicie:
Czy jest taka techniczna możliwość ataku na odległość, chciałem aby jednostka atakowała bezpostaciowo atakiem magicznym Implozja itp.

Bardzo prosiłbym o Skrypt teleportacji jak u diabłów. Z góry Dzięki :)

AmiDaDeer PW
31 marca 2011, 18:54
Cytat:
Bardzo prosiłbym o Skrypt teleportacji jak u diabłów.
Nie ma takowego. To kwestia umiejętnego pominięcia animacji ruchu u jednostki latającej.

Kuririn PW
5 kwietnia 2011, 12:20
Gdzie znajduje się skrypt do wilkołaka, który jest odpowiedzialny za likantropie. Z góry dzięki :)

Kuririn PW
9 kwietnia 2011, 20:44
Mam z Drwalem siekiery mały co dla niektórych ale dla nas wielki problem, otóż chodzi o mod FU2. Ul. czarciego lorda będzie biczownik :]Chcielibyśmy aby jednostka ul.czarciego lorda również wskrzeszała demony. Ale za groma jasnego nie wiemy gdzie w całym erm znajduje się skrypt na wskrzeszanie, bądź to jest przez edycje exe. prosiłbym o pomoc!!!

SkorpionXAP PW
10 kwietnia 2011, 16:17
Witam, chciałbym żeby:
1.Budynek o typie 62 i podtypie 42 działał jak fort na wzgórzu.
2.Budynek 62(typ), 02(podtyp) działał tak jak w kampanii przebudzenie bogów (druga misja), tz. jest zamkiem ludzi, tylko zeby był zamkiem "Twierdza" i po zbudowaniu budynku nie było tak że wraca do pierwotnego wyglądu.
3.Jaki jest skrypt że ulepsza jednego potwora w drugiego, zaś tego drugiego w trzeciego? Dwa odzielne na ulepszenie zadziałają?
4.Jak budynek przekształcić w siedzibę stworzeń które będę mógł rekrutować?

Wiem że jest tego dużo i jest to trudne, ale bardzo proszę o pomoc.

EDIT
5. W twierdzy zamiast goblinów rekrutuję chłopów, a zamiast hobgoblinów - rozbójników.
6. W twierdzy zamiast wilczych jeźdzców rekrutuję nomandów.

EDIT2
Gdzie tu jest błąd?

ZVSE
!#MA:U139/0
!#MA:U142/10
!#MA:U33/116
!#MA:U116/117
!#UN:T6/0/0/139;
!#UN:T6/0/1/143;
!#UN:T6/1/0/142;
!#UN:T6/2/0/137;
!#UN:T6/2/1/171;
!#HE144:X4/139/1/4/3;
!#HE144:L1^LaveresMaly.pcx^;
!#HE144:L2^LaveresDuzy.pcx^;


EDIT3
Gdzie są mapy kampanii WoGowych?

Irhak PW
10 kwietnia 2011, 19:10
hmm.. nie znam się zbyt dobrze na ERM, ale mogę z niektórymi rzeczami pomóc...
3. Powinno...
5 i 6 wiążą się z EDIT2?
EDIT3 - Zh1-Zh4 w h3bitmap.lod... wyciągniesz najpierw kampanie, a potem z nich scenariusze ;)

Shin0bi PW
10 kwietnia 2011, 20:31
Hmm, a czy po każdej MA nie powinno być na końcu" ; "?

AltairAltairPowinno :)


Punkty 1, 4 - najprościej to zrobić używając patcha do edytora map. (do pobrania z Gildii erm)

Punkt 2 - nie bardzo wiem o co chodzi.

Punkt 3 - Jeśli chodzi ci o to, by jakiś konkretny bohater mógł ulepszać stwory, to sam kiedyś prosiłem o podobny skrypt. Wystarczyło zajrzeć parę stron wcześniej do tego tematu. Skrypt napisany przez Altaira:


!?CM2;
!!VRz990:S^tekst specjalizacji^;
!!UN:G2/NUMER BOHATERA/2/990;
!!HE-1:N?y1;
!!FU&y1<>NUMER BOHATERA:E;**wyjdz jesli inny bohater
!!CM:I?y1 S?y2;
!!VRy5:S0;
!!VRy5&y1>=68/y1<=75:S1;
!!FU&y5<1:E;
!!FU&y2<>12:E;
!!VRy1:-68;

!!HE-1:C0/y1/?y2/?y3;
!!FU&y2<0|y3<1:E;
!!HE-1&y2=14|y2=15:X6/y2/?y1/56;**[centaury i centaury bojowe (14, 15) do szkieletów (56)]
!!HE-1&y2=16|y2=18:X6/y2/?y1/58;**[krasnoludy i krasnoludy bojowe (16, 18) do ożywieńców (58)]
można dodawać kolejne linijki

Altair PW
10 kwietnia 2011, 20:46
kuririn01:
Mam z Drwalem siekiery mały co dla niektórych ale dla nas wielki problem, otóż chodzi o mod FU2. Ul. czarciego lorda będzie biczownik :]Chcielibyśmy aby jednostka ul.czarciego lorda również wskrzeszała demony. Ale za groma jasnego nie wiemy gdzie w całym erm znajduje się skrypt na wskrzeszanie, bądź to jest przez edycje exe. prosiłbym o pomoc!!!

Przykro mi nie umiem pomóc.

SkorpionXAP:
1.Budynek o typie 62 i podtypie 42 działał jak fort na wzgórzu.
AD1
Najprostszy skrypt jaki istnieje:
ZVSE
!?OB62/42;
!!HE-1:D;

SkorpionXAP:
Budynek 62(typ), 02(podtyp) działał tak jak w kampanii przebudzenie bogów (druga misja), tz. jest zamkiem ludzi, tylko zeby był zamkiem "Twierdza" i po zbudowaniu budynku nie było tak że wraca do pierwotnego wyglądu.

Nie da się.

SkorpionXAP:
4.Jak budynek przekształcić w siedzibę stworzeń które będę mógł rekrutować?

Było. Poszukaj w tym temacie.

strona: 1 - 2 - 3 ... 66 - 67 - 68 ... 81 - 82 - 83
temat: [WoG, ERA] Skrypty ERM

powered by phpQui
beware of the two-headed weasel