Skocz do zawartości

Ruch RPG


Rekomendowane odpowiedzi

Czy mógłby ktoś mógłby mi pomóc zrobić taki ruch RPG, jaki jest w Heroes 4... :( Napewno ktoś wie, jak to wygląda. Jeżeli plansza jest odkryta w tym miejscu, i jak sie kliknie, to pojawia się taka strzałeczka złożona z powyginanych prostokątów, i są poomijane wszystkie przeszkody. Na końcu bohater rusza w tym kierunku i te powyginane prostokąty, jak on na nie nachodzi, to one znikają... Proszę o pomoc! Z góry dziękuję! Pozdro! :(

Odnośnik do komentarza
Udostępnij na innych stronach

Mam GM 6.1... :P Jak zadziała, to normalnie super wielkie dzięki! ;) Ekhem... Tu jest z 30 funkcji! Ludzie! Ja nie znam aż tak dobrze angielskiego! Mam pytanko. Czy ma ktoś przetłumaczoną tą stronkę Helpa o Motion Planning? :] A jak nie, to proszę mi te funkcje, które będą mi potrzebne - przetłumaczyć... :P

Odnośnik do komentarza
Udostępnij na innych stronach

  • Filar Społeczności

"Tylko"? Nie myliłem się, bez napisania własnego dll'a się nie obędzie, ponieważ wyliczanie najkrótszej drogi algorytmem A* jest w GM za wooooolne. A gotową siatką w gm tego nie zrobisz, bo ona zwraca ścieżkę, która nie jest jest tablicą z kolejnym polami a zwykłą krzywą o długości od 0 do 1. Można by sprawdzać ułamkami czy to kolejny grid, ale przy większych dystansach to nie da zadowalającego efektu, tak więc "tylko" nie ma nic do rzeczy. Wątpie by ci ktoś ten przykład zrobił. :)

 

Musisz w jakimś języku programowania napisać dll, który zawierałby engine siatki. Do tego skrypty odznaczania i zaznaczani pól, kreacji siatki o danych rozmiarach, wyliczający trasę oraz zwracający zserializowaną tablicę kolejnych pozycji (tablicę skonwertowaną na string, którą w gm znowu przerobisz na tablicę, bo z dll'a da się importować tylko zwykłe zmienne i stringi).

 

Dopiero wtedy możesz zacząc myśleć o strzałeczkach.

Odnośnik do komentarza
Udostępnij na innych stronach

:blink: Nie no, przecież zanim ja zaczne robić swoje DLL'e, to miną jeszcze z 2 lata... :crying: A ty byś tego Ranma_Man w jakiś sposób nie wykombinował? To nie musi być wcale długa strzałka... Chodzi mi o strzałeczke długości ekranu, ale jak jest powyginana, to napewno jeszcze mniej zajmie. Ranma_man postaraj się to zrobić... Please! :crying:

Odnośnik do komentarza
Udostępnij na innych stronach

  • Filar Społeczności

Ale to wcale nie zależy od długości i stopnia wygięcia strzałek, bo to skrypt by sam generował. Tutaj chodzi o dane. Nie wiem, może w purebasicu spróbuję stworzyć taki ogólnodostępny dll w celu potrenowania pisanie w tym toolsie, ale nie obiecuję na 100%.

Odnośnik do komentarza
Udostępnij na innych stronach

Moim zdaniem troche zle podchodzicie do tematu... Mapa w herosach to jedna wielka tablica 2-wymiarowa. A przeciez mając tablice nie trzeba juz tak skomplikowanych algorytmow motion planning jak A*. Wystarczą zwykle operacje na tablicach , jedna flaga ( pole wolne / zajete ) i strzalka w 8 kierunkach. No ale jesli sie upieracie... ;)

Odnośnik do komentarza
Udostępnij na innych stronach

Wykonujac kolejno kroki :

 

1) zaznaczyc miejsce ( kratkę ) docelową jako nr 1 ( długosc drogi w grafie )

2) oznaczyc wszystkie przylegle z nią i obdazone flagą "puste pole" pola flagą ostatni numer + 1 ( dlugosc drogi w grafie rosnie o jeden )

3) krok drugi powtarzac dla wszystkich kratek z dlugoscią drogi n-1 az do momentu znalezienia kratki z ktorej obiekt ma sie poruszac

4) przesuwac obiekt do przyleglego pola w najmniejszym numerze ( dlugosc drogi )

 

jasne ? czy dac rysunek ? ;)

 

droga0oy.jpg

 

uzyskanych w ten sposob drog bedzie kilka ale kazda bedzie najkrutsza. Co wiecej skrypt mozna bardzo latwo przerobic dodajac do kolejnych pol zmienną powiedzmy... " wspolczynnik trudnosci przemierzenia pola" i w ten sposob uzyskamy skrypt ktory znajdzie najkrutsza droge np w trudnym terenie

Odnośnik do komentarza
Udostępnij na innych stronach

  • Filar Społeczności

No wiesz, to nie ma znaczenia jaki algorytm polecisz, czy ten wyzej czy A* czy algo Dijkstry. GM to GM, on takie rzeczy wolno wylicza, dlatego uwazam, ze bez dll'a sie nie obedzie. A w tym wypadku to juz nie bedzie znaczenia jakie algo - najlepiej te co najlepsza droge wynajduje, bo i tak szybko bedzie wyliczac.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...