1 Ostatnio edytowany przez gieniowski (2010-01-03 21:30:32)

Witam wszystkich!

Będzie krótko i na temat. Przez ostatni miesiąc pracowałem nad grą Robbo którą to przeniosłem na komórkową platformę J2ME (Java mobile). Moim głównym celem było uzyskanie kopii jak najbardziej wiernej oryginałowi. Mało skromnie muszę przyznać, że jestem zadowolony z tego czego udało mi się dokonać :D
Oto co zawiera gra:
-56 etapów z Robbo i 4 z Robbo 2 (na razie)
-wszystkie elementy oryginalnej gry
-oryginalna grafika wraz z kolorystyką
-większość dźwięków (niestety gorsza jakość, ale tego nie da się łatwo przeskoczyć w J2ME); dodatkowo gdzieś siedzi bug powodujący problem z tym co jest...
-usunięty licznik punktów i żyć
-możliwość rozpoczęcia gry od dowolnego ukończonego etapu

Gra jest testowana na Sony Ericsson G900, W880i, K750i oraz Nokia E51 (nie za dobrze działa z dźwiękiem).

Link do gry:
fftactics.republika.pl/NewRobbo.jar

Pozdrawiam i życzę miłego grania!

PS.
Obecna wersja jest całkiem dobrze przetestowana, ale w razie błędów i ewentualnych propozycji proszę pisać w tym wątku. Pewnie uda się co nieco naprawić.

2 Ostatnio edytowany przez epi (2010-01-03 22:09:06)

Wow, wygląda bardzo ładnie.
Na Nokii 3110c jest jednak niegrywalna, tzn. są dwa bugi:
- czasami przewijanie ekranu się zapętla, tzn. przechodzę w dół, ekran skroluje się tak jak trzeba, ale zaraz potem skroluje się z powrotem i tak w kółko.
- czasami jedno krótkie wciśnięcie klawisza powoduje dwa kolejne ruchy w danym kierunku.

Hitler, Stalin, totalniak, SSman, NKWDzista, kaczor dyktator, za długo byłem w ChRL, wypowiadam się afektywnie.

3

Na Nokia 5800XM też działa, ale nie da się grać ze względu na brak multitouch (strzelanie) :)

Czy możecie wyjaśnić, Stirlitz, dlaczego wasz służbowy adres stirlitz@rsha.gov.de ma aliasa justas@gru.su?
Nie czytam PM. Proszę używać e-mail.

4 Ostatnio edytowany przez wieczor (2010-01-03 22:19:39)

Ekhm... To Twoje? Ma jakieś 2 czy 3 lata.... :D

http://lstela.republika.pl/programy_robbo.html

The problem is not the problem; the problem is your attitude about the problem

5

Nie, nie, nie. To nie moje. Ale odnalazłem to gdy kończyłem pracę nad tą wersją. Dobra robota, zmotywowała mnie do wrzucenia dźwięku do mojej wersji.

Ale tak na prawdę, historia mojej wersji też ma jakieś 3 lata. Pierwotna gra powstała ok. 3 lata temu. Znudzony 56 levelami postanowiłem dodać nowe. Gdy wróciłem do poprzedniego kodu źródłowego złapałem się za głowę i coś mnie naszło żeby całą grę napisać od nowa. Tak więc obecna wersja jest dużo wydajniejsza i łatwiejsza w modyfikacjach.

Co do błędów, postaram się dodać odpowiednie opcje na czułość przesuwania ekranu (wydaje mi się że problemem jest mała rozdzielczość wyświetlacza) i opcję strzelania jednym przyciskiem w obecnym kierunku. Podwójny ruch na razie pozostaje dla mnie tajemnicą nie do rozwiązania (spotkałem się z tym na jakimś modelu motorli, jednak nie mogę tego przetestować w domu...).

6 Ostatnio edytowany przez grzeniu (2010-01-07 18:34:07)

gieniowski, twoje robbo chodzi spox na moim k750i. poniżej fotka:
http://img40.imageshack.us/img40/544/newrobbonasek750i.th.jpg
Twoja wersja jest równie dobra jak Łukasza Steli. Dla porównania poniżej fotka z tej wersji gry.
http://img683.imageshack.us/img683/3934/robbo.th.jpg

Tutaj: http://atariarea.krap.pl/forum/viewtopic.php?id=4048 znajduje się wątek poświęcony wersji Łukasza.

Btw. Fotki można wrzucić do Atariki do opisu gry Robbo.

STYMulator JIL ST YM2149 mjuz:k @ gnu/linux
SIUP (SIo2Usb2Pc) - SIO2PC USB Edition
PIN ready logo
3M / InD: ... na kasetach były zabezpieczenia w postaci tzw. "mikropierdnięcie" ...

7

Na Noki E51 chodzi bez problemu. Szkoda ze nia da sie odpalic na Nokia N-Gage, ale to juz troche historyczy ale wciaz niezly sprzet ;)

LG KU990 - odpala się, ale czy działa w 100% ok to nie wiem, bo nigdy nie grałem w Robbo :(

Atari: FireBee, (Falcon030 CT60e SuperVidel SvEthlana CTPCI), TT, (520ST Pak030 Frak PuPla Panther), (520ST 4MB ST RAM 8MB TT RAM CosmosEx SC1435), (1040STFM UltraSatan SM124), (1040STE 4MB ST RAM 8MB TT RAM CosmosEx NetUSBee SM144 SC1224), 260ST, 520 ST+, (MEGA ST SM125), (65XE Rapidus U1MB VBXE SIDE2 SIO2PC), (Jaguar SkunkBoard), Lynx II, 2x Portfolio

9

gieniowski napisał/a:

Podwójny ruch na razie pozostaje dla mnie tajemnicą nie do rozwiązania (spotkałem się z tym na jakimś modelu motorli, jednak nie mogę tego przetestować w domu...).

Jak dla mnie wygląda to tak, jak by brakowało opóźnienia w automatycznym powtarzaniu naciśnięcia klawisza. Widać to już na ekranie wyboru levelu (w menu głównym jest OK, ale tam w ogóle po każdym przesunieciu kursora trzeba puścić klawisz i nacisnąć ponownie). Nokia 6300. A poza tym jest super :).

10

Na moim Sony Ericssonie W960i też chodzi płynnie. Sprawdzę jeszcze, jak z dźwiękiem. U mnie również występuje ten podwójny ruch - pomaga szybkie wciśnięcie i puszczenie klawisza ruchu. Przydałaby się obsługa wybierania pozycji z menu na wyświetlaczach dotykowych; działa "pacnięcie" w napis BACK. :)

Powszechnie wiadomo, że kamień potrafi myśleć. Na tym fakcie opiera się cała elektronika.

Terry Pratchett - Równoumagicznienie

11 Ostatnio edytowany przez gieniowski (2010-01-06 00:17:13)

Nowsza wersja Robbo z poprawkami:

poprawki:
-animacja kapsuły
-laser nie startuje z drugiego pola
-skrzynka na kółkach nie startuje z drugiego pola
-dodane opóźnienie pomiędzy strzelaniem
-działko obrotowe nie może obrócić się o 180 stopni
-Robbo znika po dotknięciu aktywnej kapsuły
-usunięty błąd z podwójnym ruchem Robbo w niektórych modelach telefonu (nie mam jak tego przetestować)

nowości:
-czułość przesuwania ekranu (liczba kratek od granicy ekranu powodująca przewijanie) z myślą dla ekranów z małą rozdzielczością
-nowy typ strzelania:
A - to co dotychczas
B - fire a następnie kierunek (nie razem) z myślą dla ekranów dotykowych bez multitouch.

Link do ściągnięcia w pierwszym poście.

12

W nokii 3110c błąd z podwójnym ruchem niestety występuje nadal, bardzo często i w praktyce uniemożliwia granie. Ten ze skrolowaniem przy ustawieniu scroll=3 również się zdarza, ale tylko przy ruchu w poziomie (a mam widocznych 8 pól w poziomie, więc spokojnie mieszczą się 3 pola odstępu od każdej krawędzi). Przy scroll=2 działa już poprawnie, ale z kolei muszę bardzo się zbliżyć do dolnej krawędzi (pola na dole ekranu nie są widoczne w całości, może w tym rzecz).

W każdym razie ogromne gratulacje za to, co już zostało zrobione. Gra zachowuje w pełni klimat oryginału a przy tym ruch robota i przewijanie planszy jest bardziej dynamiczne, co moim zdaniem wpływa dodatnio na grywalność. Mam nadzieję, że te drobne bugi w sterowaniu zostaną poprawione przed 11. stycznia, wtedy bardzo mi się przyda. ;)

Hitler, Stalin, totalniak, SSman, NKWDzista, kaczor dyktator, za długo byłem w ChRL, wypowiadam się afektywnie.

13 Ostatnio edytowany przez FUJI (2010-01-06 11:50:10)

Potwierdzam, że nadal występuje przeskakiwanie po dwa pola (a nawet o więcej, jak się ustawi większą wartość FPS). Może dodatkowy tryb obsługi, w którym po każdym ruchu robocika trzeba puścić klawisz (joystick) i nacisnąć ponownie (jak w menu głównym) ? Przynajmniej jako tymczasowe obejście... Choć nadal mi się wydaje, że powinno pomóc coś w stylu POKE 729,25 ...

EDIT: Aha, tę przypadłość ma też ta druga wersja Robbo na komórkę, więc wina prawie na pewno jest po stronie telefonów i jakoś przydało by się to obejść.

14

Nowa wersja do pobrania (link w pierwszym poście).
Został dodany splash screen dla dużych ekranów, dźwięki zostały usprawnione plus drobne szczegóły w engine.
Podwójny ruch nadal nierozwiązany... Wydaje mi się, że jest on związany z prędkością animacji i tym, że procek nie nadąża utrzymać stałych FPS...
Menu główne a wybór etapu i gra właściwa korzystają z innej metody sprawdzania przycisków, stąd różnice w zachowaniu. Tymczasowe rozwiązanie z kolejnym klikaniem w kierunek odpada gdyż przy odrobinę trudniejszym etapie nie ma racji bytu.

15 Ostatnio edytowany przez epi (2010-01-08 11:36:27)

A to nie wystarczy zablokować ruch przez kilkaset ms od poprzedniego w tym samym kierunku, jeśli klawisz nie został w międzyczasie puszczony?

Hitler, Stalin, totalniak, SSman, NKWDzista, kaczor dyktator, za długo byłem w ChRL, wypowiadam się afektywnie.

16

Nowa wersja gry dostępna. Jak zawsze do ściągnięcia pod linkiem z pierwszego posta.
W grze jest kilka poprawek technicznych. Dodałem opcję zmiany sterowania na starą wersję używaną w pierwszej wersji java mobile. Może to rozwiąże problem podwójnego ruchu.

Ta wersja jest w stanie odczytywać pliki z mapami eksportowanymi z robbo kreatora dostępnego pod http://www.poklik.ovh.org/robbokreator/
Pliki należy umieścić w folderze levels/custom zgodnie z numeracją oraz wpisać do pliku config liczbę etapów (na potrzeby menu).

17 Ostatnio edytowany przez epi (2010-01-10 23:41:12)

Jest gorzej. W "nowej wersji sterowania" podwójny ruch jak był, tak jest, a w "starej wersji", no cóż - albo zupełny brak reakcji, albo od razu ruch o 3 pola.

Hitler, Stalin, totalniak, SSman, NKWDzista, kaczor dyktator, za długo byłem w ChRL, wypowiadam się afektywnie.

18

Opóźnienie powinno być PO pierwszym ruchu Robba, a nie przed. Poza tym, tak na początek, to ja bym je skrócił o połowę, jeżeli się da.

autor dzieła zatytułowanego 'Robbo - nieznane opowieści' napisał/a:

...Śrubka była tuż tuż, prawie w zasięgu chwytaka. W pobliżu czaił się obrzydliwy stwór.
- Ej, ty! Robbo! Tylko nie przeskocz od razu o dwa pola! - wykrzyknął Gracz.
Robbo przez dłuższą chwilę przetwarzał wydane mu polecenie, po czym...
Zebrałeś śrubkę!
... przeskoczył o trzy pola!
Biedny Robbo!

- Ech, wiedziałem, że powinieniem był poprawić ten drajwer od serwo. - pomyślał Gracz i wziął się za naprawę.
...

A czy dało by się zmienić częstotliwość przetwarzania zdarzeń (naciśnięć klawiszy, ruchów stworków itd.) bez zmiany FPS ? Może tędy droga ?

19

Witam. Niestety nie mam pojęcia dlaczego podwójny|potrójny ruch występuje. Wydaje mi się, że jest to związane z tym, że telefon nie jest w stanie utrzymać narzuconej prędkości animacji. Stąd zmniejszenie FPS w jakiś sposób pomaga w rozwiązaniu problemu.
http://fftactics.republika.pl/RobboNewTest.java
Pod linkiem zamieściłem wersję gry z jeszcze innym podejściem do sterowania. UWAGA: ta gra umożliwia tylko chodzenie i tylko przy ustawionej opcji sterowania "old". Zainteresowanych proszę o feeback. Rozwiązanie zastosowane tutaj jest takie jak przy trzymaniu przycisków klawiatury. Pierwszy ruch od razu, kolejne po krótkim opóźnieniu.
Pod linkiem http://fftactics.republika.pl/game.zip jest umieszczona moja stara wersja gry. Proszę sprawdzić jak ona działa. Tam w pętli jest ustawiony zwykły Thread.Sleep (100) co nie jest gwarancją stałej prędkości animacji ale może okazać się wystarczające. Ta wersja jest też dużo mniej zoptymalizowana, tak więc może działać baaardzo wolno na niektórych modelach telefonów.

20

Pierwszy link (RobboNewTest.java) niestety nie działa (strona o podanym adresie nie istnieje...).  Stara wersja gry z drugiego linku działa tak jak wszystkie nowsze (podwójny ruch) i wcale nie wolniej. Uparciuch z tego robocika, zawziął się i już ;).
Zauważyłem jeszcze jeden efekt, który może mieć związek. Otóż przy ustawieniu typu strzału na A (czyli konieczność naciśnięcia fire i kierunek jednocześnie) ja mogę też strzelać w ten sam sposób, jak przy ustawieniu typu B, jeżeli odpowiednio szybko nacisnę klawisze po sobie. Strzelanie działa też, jak się naciśnie klawisze w odwrotnej kolejności (najpierw kierunek potem fire).
Jak się nie da tego poprawić, to w sumie nic straconego. Każdy kiedyś zmieni telefon na nowszy, ja chyba nawet niedługo...

21

Przepraszam za pomyłkę w pierwszym linku: poprawny jest: http://fftactics.republika.pl/NewRobboTest.jar zamiast RobboNewTest.java... Przypominam, że to jest wersja całkowicie testowa, chodzi o sprawdzenie jak będzie poruszał się Robbo.
@FUJI - takie różne kombinacje przyciskami działają Ci z tego względu, że samo sterowanie jest odczytywane asynchronicznie (niezależnie) względem wątku głównego z grą. Teraz jak Ci się uda pomiędzy jedną a drugą klatką animacji wcisnąć fire (ustawić flagę na strzał) oraz dodać kierunek, to przy wykonaniu nowej animacji Robbo po prostu strzeli.

22

No, muszę powiedzieć, że w NewRobboTest jest jakby lepiej - nigdy nie zdarza się przeskok o dwa pola po jednokrotnym naciśnięciu klawisza (joysticka). Natomiast ujemne strony, być może wynikaja z testowego charakteru zmian:
- szybkie dwukrotne naciśnięcie klawisza pozwala przeskoczyć magnesy (i trzeba to koniecznie sprawdzić na innych telefonach i z obiema opcjami Control type)
- ruch robocika przy przytrzymanym klawiszu jest o wiele za wolny.

A czy brak synchronizacji kontrolera z innymi zdarzeniami w grze nie jest niezgodny z oryginałem ? W sumie nie wiem, jak to wyglądało od strony programowej, ale zawsze mi się zdawało, że ruchy Robba są jakoś zsynchronizowana z ruchami stworków, wystrzałami z działek itd. Np. chyba było tak, że jak się uciekało przed laserem, to odległość od jego końca się nie zmieniała.

23

Widze ze kolory sa wierne orginalowi ale ludek tez troche poza tym odlot :(

24

W grze znalazłem dwa błędy:
1.Zebranie śrubki w momencie kiedy liczba śrubek do zebrania wynosi 0 powoduje zawieszenie gry.
2.W etapie 35 w komnacie z 3 miśkami jeden z nich "zawiesza się" i krąży cały czas na 4 polach przy śrubce, co uniemożliwia przejście tego etapu(w oryginalnym Robbo wszystkie stworki krążą przy krawędzi komnaty).

25 Ostatnio edytowany przez gieniowski (2010-01-23 23:10:07)

http://fftactics.republika.pl/NewRobbo.jar

Najnowsza wersja gry. W grze znajduje się połowa gry Robbo Forever przygotowanej w zeszłym roku przez użytkowników atarionline.pl (w przyszłości będzie cała gra).
Poprawki uwzględniają też statystyki pojawiania się elementów losowych ze znaku zapytania.

@hydralisk - problem ze śrubkami wkradł się do ostatniej wersji, ale w najnowszej jest już usunięty. Etap 35 i jeszcze kilka innych czeka na poprawki. Błąd jest spowodowany moim błędnym założeniem co do inicjalizacji ruchu przeciwników. Założyłem, że inicjalizacja przeciwników w robbo działa tak samo jak w robbo konstruktorze. A tak nie jest i wyszło to całkiem późno na wierzch i teraz jest związane z formatem zapisu etapów. Obecnie mogę czytać trzy formaty plików, i cały robbo 1 jest zrobiony w moim pierwszym formacie który jest niedoskonały. Z czasem całkowicie porzucę ten format i problem będzie rozwiązany, ale wcześniej muszę przerysować wszystkie etapy.

Wracając do problemu z podwójnym ruchem... Przepraszam, ale na razie to zostawiam. Nie mogę tego przetestować u siebie, a takie domyślanie się co można zrobić jest trochę niewydajne.
NewRobboTest działało jakby lepiej (ale też synchronizacja padła) ze względu na totalne olanie pętli gry i użycie podstawowych metod obsługi przycisków (tak samo jak na klawiaturze przy pisaniu). Wydaje mi się, że jak spróbuję w ten sposób napisać obsługę przycisków, to dojdę do tego samego rozwiązania które jest zrobione przez twórców javy i które wykorzystuję obecnie.

ps. dodałem możliwość odblokowania wszystkich etapów poprzez kombinację [lewo, prawo, prawo, lewo, gwiazdka lub kratka] na ekranie wyboru etapu. Jednak przejście etapu po takim zabiegu nie powoduje odblokowania nowych etapów na stałe.