...: Strona :...
News
Archiwum
Redakcja
Chat ( 0 )
Forum
Księga Gości
Imprezy
Linki
Wymiana
Radio

- Download -
Programy
Gry
Zasoby
Music
Sound
Inne

- RPG Maker -
RPGMZ
RPGMV
RPGVXAce
RPGVX
RPGXP
RPGME
SimRPG95
RPG95
WRPGE

- Projekty -
Virtua Twierdza
Pogromca II

- Krypta -
Kompendium
Scenariusze
Questy
Artykuły

...: Buttony :...
Dragon Ball Nao
M.U.G.E.N Samouczek
Pokemon Valhalla
Pokemon Crystal PBF
Pillars of Eternity POLSKA - największy portal Pillars of Eternity (Project Eternity)
Kroniki Fallathanu - Prawdziwy mmoRPG w przeglądarce



Modules -  the greatest and ultimate place for every tracked-music sympathizer


Informacje || Zgłoś nowe materiały
Krypta >> Kompendium

Tytuł: Szybkość poruszania się postaci
Eksperymentował: Sozan
Opracował: almostnoruby
Email: sozan5@wp.pl, almostnoruby@live.com

Cel eksperymentu:
Sprawdzenie, ile danej postaci zajmuje (w klatkach) poruszenie się o jedną kratkę (tile) w RPG Makerze, wykrycie ewentualnych zależności i regularności z tym związanych.
- almostnoruby


Wstępniak
Niektórzy mają obsesję na temat ilości klatek. Używają monitorów z odświeżaniem 144Hz, w kieszeni mają urządzenia, które klatek potrafią wyświetlić dziewięćdziesiąt, i jak coś im się nie wyświetla w tej ultra płynności to od razu mają ból... wiadomo czego, nie będę się tu wyrażał. W tym eksperymencie właśnie trzeba będzie pobawić się w takiego "marudę", który liczy klatki na nagraniu żeby wypatrzeć czy wszystko współgra z jego wizją. Jak recenzent gier na Youtube, który liczy klatki na nagraniu, by tylko trochę pomarudzić, że jedna-dwie klatki spadają mu na nagraniu. Na szczęście tutaj ten zabieg będzie potrzebny do bardziej szczytnego celu. W RPG Makerze, przy wyborze prędkości zdarzenia czy bohatera podczas ruchu, nie ma jakiejś konkretnej jednostki, w której można byłoby dowiedzieć się, ile danemu dajmy na przykład NPC-owi zajmie przejście z punktu A do punktu B. Po prostu masz do wyboru prędkości odnoszące się do innej prędkości, a dokładniej - domyślnej prędkości chodzenia głównego bohatera na mapie. Tak więc masz 1/2 prędkości bohatera albo 2x szybciej... tylko... ile to jest? W nowszych Makerach to widać jeszcze gorzej, gdy podawana jako normalna prędkość nie jest za bardzo normalną prędkością, bo domyślnie ustawiana jest jej połowa. To powoduje drobny koszmarek na przykład przy tworzeniu cutscenek. Musisz wybierać na chybił-trafił, ile dany ruch może potrwać. Oczywiście - można to obejść albo po prostu posiedzieć te kilkanaście minut dłużej, by w końcu trafić z czasem, który nam odpowiada. Ale ten problem może wystąpić również przy innych rzeczach. Tak więc, co należy zrobić, by sprawdzić, ile klatek zdarzeniu zajmuje jeden krok?

Przygotowania
Do eksperymentu będą potrzebne:
  • Oczywiście, dowolnie wybrany RPG Maker;
  • Program do nagrywania wideo z ekranu - na przykład darmowy oCam, który zostanie tutaj omówiony;
  • Program, w którym można odtworzyć wideo klatka po klatce - na przykład Media Player Classic, który też zostanie tutaj omówiony.
Następnie, trzeba będzie przygotować mapkę z "poligonem doświadczalnym", na którym będziemy liczyć klatki. Powinien on mniej-więcej tak wyglądać:

Mapka, na której będzie przeprowadzany eksperyment. Więcej szczegółów poniżej.


Wszystkie postacie stojące w rządku dwa pola przed tym specjalnie zaznaczonym to są zdarzenia poruszające się każde z inną prędkością. Z czysto praktycznego punktu widzenia są posegregowane według prędkości - ta najwyżej porusza się najszybciej, ta najniżej - najwolniej. Łącznie reprezentują one wszystkie sześć prędkości, które są dostępne normalnie w RPG Makerze. Bohater stoi obok kryształu. W momencie, gdy gracz naciśnie przy krysztale Enter, ten zaświeci się, a postacie wykonają dwa kroki w prawo. Później ilość potrzebnych do przejścia klatek podzieli się przez dwa. Tylko kryształ trzeba odpowiednio zaskyptować (i tak, to jest prawidłowe określenie, słowo skrypty można odnieść również do zdarzeń). Chociaż to nie jest konieczne, na początku przydatnym bajerem jest zaświecenie tym kryształem, zmiana jego koloru czy coś w tym guście, żeby łatwo było można było zauważyć, przewijając klatki, w której zaczyna się ruch. Wybrany przeze mnie Maker (VX) ma o tyle fajną grafikę kryształu, że wystarczy ją obrócić, a zaczyna świecić, stąd ta część kodu. Ważne jest, aby fajeczka  w opcjach przy "czekaj na koniec ruchu" nie była odhaczona (nie szukać tej opcji na siłę, jest ona dopiero od RPGXP w górę...). Po tym, należy poruszyć wszystkimi testowymi zdarzeniami na raz. Czyli, z tym samym wymaganiem, co wcześniej (żeby nie czekać na koniec ruchu), należy przesunąć wszystkie postacie o dwa kroki w prawo.

Przebieg
Następnie trzeba nagrać wideo z tego fantastycznego wydarzenia jakim jest ruch zdarzeń o dwa kroki. Po odpaleniu programu do rejestracji wideo trzeba ustawić liczbę klatek na sekundę, w której działa RPG Maker. Zazwyczaj nie jest to problemem, a prawie wszystkie działają zgodnym chórem w 60 klatkach, z wyjątkiem... RPGXP. Tam jest klatek na sekundę czterdzieści (po ustawieniu opcji Smooth w menu dostępnym pod klawiszem F1, tak jest 20...). W oCam jest ta opcja dostępna pod kartą Menu => Options (Opcje) i jest pierwszą funkcją, jaka nam wyskoczy po otwarciu tego okna.

Jakby ktoś z jakiegoś powodu szukał.


Potem należy wybrać obszar, który zawiera okno z projektem, po czym nacisnąć Record. Podczas nagrania wystarczy kliknąć głównym bohaterem kryształu i poczekać chwilę, po czym można skończyć nagranie. Po skończeniu plik wyląduje (w przypadku omawianego programu) - w Dokumentach, w podfolderze prawidłowo nazwanym oCam. Teraz należy odtworzyć film w wybranym odtwarzaczu - omawiany tutaj będzie MPC-HC, ale za pomocą popularnego VLC też da się to sprawdzić. Po odpaleniu filmu należy spauzować go gdzieś blisko momentu odpalenia ruchu postaci. Następnie, za pomocą kombinacji klawiszy CTRL+Strzałka w lewo można przejść klatkę wideo wcześniej, a CTRL+Strzałka w prawo - klatkę później. Dzięki temu można znaleźć klatkę, która jest pierwszą, w której zaczyna się ruch (i zaświeci się kryształ):

Okno z pierwszą klatką ruchu w odtwarzaczu MPC-HC.


Po wykonaniu przesunięcia jeszcze o siedem klatek (jakby nie patrzeć, ta pierwsza która została znaleziona to jednak pierwsza...) postać na samym dole skończy swój ruch. W ciągu łącznie 8 klatek przesunęła się o dwa pola, czyli w ciągu 4 klatek przesunie się ona o cztery. Postać wyżej jest dopiero w połowie, potrzebuje dodatkowych ośmiu klatek. Można zauważyć, że ten cykl powtarza się w pewien sposób. Za każdym razem postaci zajmuje dwa razy więcej dojście do "mety". Czyli, przejście jednej kratki zajmuje postaci o prędkości 5 (2x szybciej) zajmuje 8 klatek , 4 (normalnie) - 16 klatek, i tak dalej...

Wynik
Dla większości RPG Makerów (testowałem na RPGVX, Sozan - na RPGMV) powinno wyjść:
PrędkośćIlosć klatek
1 (1/8 prędkości)128 (27)
2 (1/4 prędkości)64 (26)
3 (1/2 prędkości)32 (25)
4 (normalnie)16 (24)
5 (2x szybciej) 8 (23)
6 (4x szybciej)4 (22)
Wzór ogólny - t = 28-v, gdzie t to jest czas w klatkach, a v - prędkość od 1 do 6.