Projekt Legion PC
Przeglądając strony poświęcone starym grą zauważyłem spory sentyment i
zainteresowanie Amigową produkcją polskiej grupy GOBI o nazwie Legion.
Istnieją rzesze fanów, którzy grają po dziś w tą znakomitą produkcję.
Dla wszystkich wiernych wyznawców Legiona postanowiłem przepisać kod z
AMOSa (oryginalny kod źródłowy jest dostępny w sieci) na C++, tak aby
udostępnić tą grę szerokiej rzeszy odbiorców (nie wszyscy mają jeszcze
Amigi, a emulatory nie są idealne).
Założenia:
- Grafika, muzyka, dźwięki będą oryginalne
- Bazą będzie biblioteka SDL, tak więc Legion będzie dostępny
nie tylko pod Windą, ale także na innych systemach, które obsługują SDL
(np. Linux, Mac OS).
Informacje, postęp prac:
- 2008-02-20 - pomysł na napisanie Legionu
- 2008-02-21 - rozgryzienie formatu orginalnych plików z
danymi do gry, przeklepanie części kodu (częściowo działa już intro)
- 2008-02-22 - utworzenie (szumnie powiedziane) tej strony ;-)
- 2008-02-23 - walka z technologią - napisanie procedur
robiących to samo co niektóre funkcjonalności AMOSa
- 2008-02-24 - zakończenie prac nad intrem, ropoczęcie prac
na menu głównym gry
- 2008-02-25
- dziś zrobię i umieszczę na tej stronie kilka screenshotów, a pod
koniec tygodnia pojawi się pierwsza wersja demo Legionu PC :-)
- 2008-02-27
- zrobione generowanie wiosek i rysowanie mapy świata. Doklepane
zostało kilka kolejnych procedur robiących to samo co funkcje AMOSa,
tak więc coraz więcej czasu mogę poświęcać na pisanie logiki gry, a nie
na walkę z technologia.
- 2008-02-27 - w najbliższą sobotę, tj.
2008-03-01 umieszczę na tej stronie pierwszą, roboczą, niekompletną i
nie doskonałą wersję Legionu PC. Są tacy, którzy wątpią w realność tego
projektu, więc publikacja taka powinna ich przekonać (chociaż przyznam,
że nie lubię prezentować niekompletnych rezultatów swojej pracy).
- 2008-03-01
- testy tego co już zostało zrobione na kilku komputerach, garść
poprawek wynikających z przeprowadzonych testów i publikacja wersji
demo gry.
- 2008-03-05
- przepisywanie kodu gry zakończone w 30%. Postęp prac wynosi nieco
więcej ze względu na to, że w początkowym etepie prac musiałem
rozwiązać wiele problemów technicznych i napisać kilkadziesiąt funkcji
bibliotecznych emulujących funkcjonalności AMOSa. W tej chwili głównie
przepisuję orginalny kod gry.
- 2008-03-06 - rozpoczynając nową
świecką tradycję, w sobotę 2008-03-08 opublikuję drugą wersję demo. Na
pewno można już będzie poklikać sobie po mapie świata.
- 2008-03-10
- niestety z powodu braku wolnego czasu nie udało mi się wiele zdziałać
w ciągu weekendu :-( Natomiast z powodu problemów leżących po stronie
freehost.pl
nie mogłem wykonać aktualizacji tej strony, w tym nie mogłem wgrać
nowej wersji demo gry do działu Download :-(
- 2008-03-12 - prace trwają: kod gry przepisany w 45% :-).
Nadal nie mam możliwości aktualizacji strony domowej projektu :-(
- 2008-03-13
- udało mi się w końcu dokonać aktualizacji tej stronki... Nie można
jednak polegać na freehost.pl (o ile programistą jestem z zawodu i co
nieco potrafię, to na "webmasterce" nie znam się wcale (czego
najlepszym przykładem jest ta bardzo nie wypasiona stronka) i
wybrałem serwis oferujący jak najmniej restrykcyjny regulamin ;-) ).
Trzeba będzie się jednak przeprowadzić z tą stronką na jakiś
bardziej stabilny serwis.... Acha, wesja gry, która dostępna jest
w dziale download prezentuje stan prac aktualny na dzień
2008-03-09. Od tego czasu prace poszły sporo na przód, ale za to
stabilność gry nieco się pogorszyła i muszę dopracować kilka szczegółów
zanim udostępnie Wam wyniki prac.
- 2008-03-13
- jak pomyślałem, tak też zrobiłem: strona projektu przeniesiona na
serwis yoyo.pl, a więc nowy oficjalny adres strony domowej projektu to
http://www.legionpc.yoyo.pl/
- 2008-03-13
- założyłem forum projektu. Mam nadzieję, że dzieki Waszej pomocy uda
mi się szybciej i lepiej doprowadzić projekt do szczęśliwego końca :-)
- 2008-03-18 - kod gry przepisany w 50%.
- 2008-04-02 - po blisko 2 tygodniowej przerwie w realizacji projektu (święta i inne rewolucje w życiu prywatnym) wracam do pracy.
- 2008-05-18 - Prace trwają. Kod przepisany w 65%. W dziale download
umiescilem najnowsza wersje gry. Wiele funkcjonalnosci jeszcze nie
dziala lub dziala nie do konca poprawnie. Mozna juz jednak wykonac
akcje w terenie czy stoczyc walke z wrogim legionem.
- 2008-05-25 - Kod przepisany w 70%. Poprawilem kilka bledow na mapie
swiata. W dziale download tradycyjnie umiescilem najnowsza wersje gry.
- 2008-06-04 - Kod przepisany w 75%. Działają już sklepy. Zapraszam do działu download.
- 2008-06-12
- Uzyskanie zgody autorów oryginalnego Amigowego Legionu na publikacje
plików z danymi gry wraz z Legionem PC. Dzięki.
- 2008-06-24
- Kod przepisany w 93%. Działa zdecydowana wiekszość funkcjonalności,
chociaż znajdzie się zapewne również garść błędów ;-)
- 2008-07-14
- Kod przepisany w 99%. Do zrobienia pozostała obsługa klawiatury
(skrolowanie świata) i obcinanie obiektów ruchomych na bagnach czy
murach. Poza tym wszystko powinno działać (niestety mogą jeszcze
występować jakieś błędy - zgłaszajcie je na forum - bardzo ułatwi mi to
dalsze prace).
- 2008-07-18 - Poprawiłem kilka błędów (szczegóły na forum).
- 2008-07-31
- Przepisywanie gry zakończone w 100% - wszystkie funkcjonalności
zaimplementowane :-) Rezultat prac dostępny w dziale download.
Oczywiście to jeszcze nie koniec prac nad projektem - trzeba jeszcze
zrobić polską wersję językową oraz rozprawić się z błędami (a kilka ich
jest).
- 2008-08-12
- Zrobiłem polską wersję językową. Znalazłem i poprawiłem poważny błąd
powodujący losowe zamykanie aplikacji po wydaniu komendy "Gadaj".
Poprawiłem również kilka mniej poważnych błędów. Miłej zabawy.
- 2008-09-21
- Po dłuższej niż zwykle przerwie publikuję kolejną wersję Legiona.
Poprawiłem kilka poważnych błędów (np. nieruchome, puste armie
przeciwników) oraz dorobiłem opcję "fullscreen". Miłej zabawy.
- 2008-11-30
- Na sam koniec listopada przygotowałem małą, nową wercję Legiona.
Poprawiłem między innymi błąd przy rysowaniu zniszczonego muru. Oprócz
poprawy błędów w samym Legionie poprawiłem i przebudowałem Engine2d
(biblioteka mojej produkcji), na którym bazuje Legion. Podsumowując:
całość powinna działać lepiej i nieco płynniej. Miłego grania. Jak
zwykle czekam na uwagi.
- 2009-01-18
- Po dłuższym przestoju w pracach nad projektem przysiadłem trochę przy
kompie i poprawiłem kilka dokuczliwych błędów (głównie
interfejsopwych). Poprawiłem (a właściwie napisałem na nowo) kod
odpowiedzialny za wprowadzanie nazw wiosek, postaci, nazw plików, etc.
Dodałem również w pliku konfiguracyjnym możliwość wyboru tempa akcji.
Miłej zabawy :-)
- 2009-01-25
- Poprawiłem sporo mniejszych i wiekszych błędów. Praktycznie
rozprawiłem się ze wszystkimi znanymi mi błędami wersji PC. Gra się
dużo wygodniej :-)
- 2009-04-04 - Poprawiłem kilka błędów oraz
"popełniłem" wiele udoskonaleń (w tym dodałem zaawansowane filtry do
skalowania grafiki znane i stosowane w emulatorach konsoli gier).
- 2009-05-24
- Tym razem skupiłem się na wyszukaniu błędów powodujących zawieszanie
się gry, nagłe wychodzenie z programu, czyli generalnie popracowałem
nad ustabilizowaniem kodu. Namierzyłem i poprawiłem kilka błędów w
obsłudze pamięci oraz dwa w konwerterach (grafiki i muzyki), które
powodowały odczyty lub zapisy nie po tej pamięci co trzeba. Teraz
Legion nie powinien się wieszać (a przynajmniej tak często jak to
niektórzy zgłaszali na forum (dzięki za cenne info o problemie)).
- 2009-08-16 - Publikuję kod źródłowy gry dla wszystkich chętnych do stworzenia własnego
portu Legionu. Aby jednak nie było za "słodko" i aby nie powstało wiele
"tanich podróbek" w stylu "pozmieniam napisy, skompiluję i będę miał
swój Legion", opublikowane źródła nie zawierają biblioteki
realizujących rysowanie po ekranie czy granie muzyczki. Doświadczeni i
wystarczająco zmotywowani programiści dadzą sobie radę z tym, co
opublikowałem.Reszcie wystarczy skompilowana wersje ;-)