[#1] Galactica beta - WBGame
Witam

właśnie skończyłem testować swoją małą gierkę działającą na ekranie WB - nazwałem ją roboczo Galactica. Gra jest jeszcze w wersji BETA i czasem potrafi jeszcze się zbuntować, niemniej jest już grywalna.

Jest to gra inspirowana linuksowym Konquestem, w którego swego czasu się zagrywałem. Jakby ktoś nie wiedział, jest to gra turowa, w której gracz ma podbić pewną część przestrzeni kosmicznej, na którą składa się kilkanaście planet.

W mojej wersji gra wygląda tak:



Jakby ktoś miał ochotę pobawić się w betatestera - zapraszam. Co prawda nie mogę obiecać że wnioski i uwagi zostaną uwzględnione w kolejnych wersjach, ale jak ktoś polubił Konquesta to może polubi i Galacticę.

Kilka uwag co do zasad gry:
  • liczba planet 20
  • gracz zaczyna grę posiadając jedną planetę skolonizowaną (planeta A, kolor gracza niebieski)
  • w opozycji do gracza jest komputer, który zaczyna mając 3 planety (ot taki bonus aby nie było za łatwo)
  • 16 planet jest neutralnych
  • atakować i przemieszczać floty może Gracz i Komputer, planety neutralne są neutralne ;)
  • każda planeta produkuje jeden z 4 rodzajów statków kosmicznych: myśliwce, krążowniki, bombowce lub pancerniki
  • każda z planet ma różną moc produkcyjną - podczas jednej tury może wyprodukować od 5 do 15 statków
  • różne statki mają różną moc ataku: myśliwce 4, krążowniki 6, bombowce 8 a pancerniki 10. Tak więc np. 2 pancerniki są warte w bitwie tyle co 5 myśliwców
  • parametry takie jak: statek produkowany na planecie czy wielkość produkcji planety jest losowana, tak więc w zależności od szczęścia gra jest raz łatwiejsza, a raz trudniejsza
  • parametry planety nie należącej do Gracza są poznawane przy pierwszym kontakcie z planetą i pamiętane do końca gry
  • planety neutralne pracują na 1/3 mocy produkcyjnych, 100% osiągają pod kontrolą "okupanta"
  • ilość tur póki co jest nieograniczona
  • obsługa gry jest (mam nadzieję) intuicyjna, więc nie ma do niej instrukcji co i jak klikać, żeby grać (poza tym nie cierpię pisać dokumentacji)


Wymagania:
  • KS 3.0 (teoretycznie powinno wystarczyć 2.0, ale na 2.0 nie rysują się gadżety, do zbadania...
  • ekran publiczny co najmniej w hiresie
  • reqtools.library v38 (trochę na wyrost, może do wycięcia, ale póki co wymagane)
  • do rysowania gra korzysta z 8 kolorów z palety MagicWB, tak więc aby to jako tako wyglądało, trzeba zainstalowac MWB lub chociaż ustawić paletę z MWB na pierwszych ośmiu kolorach
  • AmigaPL do polskich literek



Co jest do zrobienia:
  • chyba najważniejsze - ekran historii pokazuje tylko 4 ostatnie zdarzenia, wypadałoby to przerobić w jakąś listę z paskiem przewijania
  • ikona gry, w 8 kolorach MWB ( a może jakaś zdolna graficznie dusza z forum pomoże, w zamian za podziękowania w ewentualnym galactica.guide?)
  • teksty wypisywane sa w oknie w statycznych pozycjach - błeee... jak ktoś używa jakiejś bardzo niestandardowej czcionki ekranowej może coś się porozjeżdżac, do poprawy
  • jakiś mały doc o grze (100* błeee....)
  • dopracowanie IQ Komputera
  • locale (?)
  • i jeszcze kilka rzeczy o których na szybko nie pamiętam


Acha, archiwum z grą mozna pobrac z dropboxa:
https://www.dropbox.com/s/qpddnadd4su94jo/gal06.lha

ps1. gierka jest napisana w AmigaE (pierwsza apka na Ami po ponad 10 latach), i muszę przyznać że mój zachwyt tym językiem jaki w sobie pielęgnowałem przez ostatnie lata prysł jak bańka mydlana. Brak tablic wielowymiarowych, czy niemożność zadeklarowania zmiennej w środku funkcji (np do obsługi pętli) doprowadzał mnie na skraj rozpaczy :D Niestety nowoczesne języki typu Java czy C# rozpuściły człowieka... Trzeba się będzie przeprosic z C++, dla Ami chyba najsensowniejsze rozwiązanie z punktu widzenia programisty, cóż że może trochę wolniejsze.

ps2. Galactica ma oczywiście status freeware.

vojo

Ostatnia aktualizacja: 25.06.2013 00:24:11 przez vojo
[#2] Re: Galactica beta - WBGame

@vojo, post #1

czy niemożność zadeklarowania zmiennej w środku funkcji


Jako wychowany na basicu, nie potrafię zrozumieć takich wymogów języka :P
[#3] Re: Galactica beta - WBGame

@vojo, post #1

Jakby co to pod MorphOSem działa :)
[#4] Re: Galactica beta - WBGame

@vojo, post #1

Brak tablic wielowymiarowych


ja wiem czy to wada, z tablic wiecej niz jednowymiarowej malo sie korzysta :), w koncu pamiec jest jednowymiarowa i bez problemu mozna zrobic dostep dwu, trzy... wymiarowy :)... latwiej tez zrobic przewymiarowanie...

czy niemożność zadeklarowania zmiennej w środku funkcji


bo E uczyc tworzenia kodu czytelnego... czyli zmienne mozna zdefiniowac tylko w jednym miejscu funkcji i nie moga sie wtedy powtarzac.

wezmy taki przyklad w C

void abc(int i) {
int i=i+i;
.....;
for (int i=0....) {
.....;
for (int i=1...)
....;
}
}

robi sie balgan z i :).

ps. mi tam E sie podoba.
[#5] Re: Galactica beta - WBGame

@vojo, post #1

Jak tylko znajdę chwilkę, to chętnie przetestuję. Widzę że coraz więcej dzieje się w sferze gier na Ami, chwała Wam za to, gratulacje OK
[#6] Re: Galactica beta - WBGame

@gx, post #4

ps. mi tam E sie podoba.


A zrobisz jakąś fajną grę? ;)
[#7] Re: Galactica beta - WBGame

@gx, post #4

pamiec jest jednowymiarowa i bez problemu mozna zrobic dostep dwu, trzy... wymiarowy

oraz
bo E uczyc tworzenia kodu czytelnego


moim zdaniem sie trochę wyklucza...

Bo czy nie jest bardziej czytelny zapis:
tablica[x][y] := ...


niż kombinowac z własną implementacją, która nigdy nie bedzie tak czytelna jak operator[][]?

Z innych bolączek E moge wymienić niemalże kompletny brak wsparcia dla typów float/double - dla mnie porażka :)
[#8] Re: Galactica beta - WBGame

@vojo, post #1

Nawet działa natywnie pod MorphOSem 3.2 na mini maku. Także nie jest źle. Jedynie w miejsce polskich znaków są krzaki. Ale raczej to normalne. Dopiero jak by powstały niezależnie polskie locale, można by je zapisać oprócz w AmigaPL również w ISO i wtedy było by git.
[#9] Re: Galactica beta - WBGame

@vojo, post #1

statków kosmicznych: myśliwce, krążowniki, bombowce lub pancerniki


Jako starego znawcę militariów drażni mnie takie pomieszanie z poplątaniem czyli bombowiec między krążownikiem i pancernikiem. Radził bym oprzeć się na jednym rodzaju nazewnictwa i użyć "niszczyciela, krążownika, pancernika i drednota". Ewentualnie skorzystaj z nazewnictwa ze starszych klonów tej gry, tu polecam napisaną w AMOSie ColonizationConquest.


Pozdrawiam
[#10] Re: Galactica beta - WBGame

@vojo, post #7

Z innych bolączek E moge wymienić niemalże kompletny brak wsparcia dla typów float/double


bo to jest AmigaE, a nie E, ma wiec duzo elementow jezyka ulatwiacych programowanie pod AmigaOS i tylko AmigaOS :)... Jak ktos chce liczyc zmiennoprzecinkowe to uzywa odp. dodatkowych blibliotek... A float jest, z tego co widze :).

moim zdaniem sie trochę wyklucza...


odnioslem to do definiowania zmiennych, a nie tablic wielowymiarowych, wiec co sie wyklucza ?.

niż kombinowac z własną implementacją, która nigdy nie bedzie tak czytelna jak operator[][]


ja wiem czy czytelniejszy, zawsze czytelniej jest uzyc gotowej procedury niz impelmentowac samemu, fakt, ale jednak nadal sadze, ze wskazniki i tablice jednowymiarowe, ktore w E latwo wymieniac miedzy soba (sa niemal tym samym), sa bardziej uniwersalne, zaimplementowane dzieki temu optymalnie, w AmigaE lepiej wiaza sie z systemem AmigaOS, wystarczaja w zupelnosci, a czytelnosc mozna poprawic juz samym zapisem, natomiast wlasna implemetacja tablic wielowymiarowych bedzie przewaznie optymalniejsza, bo uniwersalny dostep wymaga jednak wykonywania operacji mnozenia... a np: zakladajac, ze tablica ma wymiar[16 * 16 *16], dostep do elementu tablicy bedzie o wiele wydajniejszy :)..., przy tym zalozeniu trzech wymiarow, bo nadal mozna traktowac jako tablice jednowymiarowa... co sie przydaje, albo nawet przeniesc na wskaznik :).

PS. uwierz mi, w C i tak zrezygnowalbys z obslugi tablic dwuwymiarowych na rzecz wskaznika :).
[#11] Re: Galactica beta - WBGame

@RadoslawF, post #9

Nazwy statków pochodzą z ogame (tfu!). Ale skoro stary znawca militariów mówi że bombowiec nie pasuje to może być inaczej. A jak w zestawie "niszczyciel, krążownik, pancernik i drednot" wygląda kolejność pod względem siły ataku, tzn który jest najsłabszy, a który najlepszy?
[#12] Re: Galactica beta - WBGame

@gilban, post #8

U mnie są polskie znaki :) Podstawowe fonty mam ustawione "ISOCourier" i "ISO_Arial", w MUI zaś DejavuSANS :)
[#13] Re: Galactica beta - WBGame

@gx, post #10

Ja wiem że w E można obejść pewne braki, i tak poza tym to jest to bardzo fajny język. Nawiasem mówiąc AmigaE to mój pierwszy poważny język w którym uczyłem się programowania, jeszcze w podstawówce (nie licząc czasu spędzonego nad przegadanym kursem asemblera prowadzonego przez Bartosza Pampucha w MA). Stąd do dzisiaj mam do niego ogromny sentyment.

Ale jak po pracy człowiek się przesiada na AmigaE to niestety widać i czuć że jest to język sprzed dwóch dekad, i po prostu czegoś mi w nim brakuje. Co nie zmienia faktu, że swoje zalety na poletku amigowym ma, choćby wsparcie AmigaOS (np OpenW()/CloseW i inne), tworzy bardzo mały i szybki kod, jest zgodny z systemem (vide potwierdzenia ze Galactica natywnie działa na MorphOS) itd itp
[#14] Re: Galactica beta - WBGame

@vojo, post #11

Kolejność jaką wymieniłem jest od najsłabszego do najmocniejszego.
I tylko wyjaśnienie odnośnie drednota, to miała być klasa większa od pancernika ale się nie przyjeła w naturze i zmarła między I a II wś, przykładowo Japończycy w czasie IIwś mieli super pancerniki a nie mieli drednotów. Ale nazwa drednot jest powszechnie znana i wykorzystywana w grach czy literaturze w tym SF, przykładem cykl Honor Harrington Webera.


Pozdrawiam
[#15] Re: Galactica beta - WBGame

@KJB, post #12

A skąd te czcionki można wziąć ?

Bo ja takowych w systemie takowych znaleźć nie mogę.

Courier to mam tylko cyrylicę (Courier Cyrillic) i Courier New Latin2. Arial tylko Latin2. W systemie oczywiście.
[#16] Re: Galactica beta - WBGame

@RadoslawF, post #14

A Nagato to pies? Generalnie drednot to ... pancernik:), typ pancernika. A nazwa wywodzi się od... pancernika:) o nazwie HMS Dreadnought :).

Ostatnia aktualizacja: 26.06.2013 11:27:19 przez fazior
[#17] Re: Galactica beta - WBGame

@RadoslawF, post #9

Jako starego znawcę militariów drażni mnie takie pomieszanie z poplątaniem czyli bombowiec między krążownikiem i pancernikiem.


Zaraz, zaraz! co ma piernik do wiatraka? Myśliwce i bombowce to jednostki małe, mające (w realiach kosmicznych) załogę składającą się z 1-2 osób, więc jeżeli gra to uwzględnia, to niby czemu zamiast myśliwca miałby być niszczyciel? Kwestia tego, jakie jednostki występują w grze.

Ewentualnie skorzystaj z nazewnictwa ze starszych klonów tej gry,


Jak wół jest tam napisane tam np. "FIGHTER" - czyli "myśliwiec".

link

tu polecam napisaną w AMOSie ColonizationConquest.


Gra się nazywała "Colonial Conquest".

link
[#18] Re: Galactica beta - WBGame

@fazior, post #16

Kiedy Drednota zwodowano uznano że to pierwszy egzemplarz nowej klasy okrętów. Klasę nazwano od nazwy tego pierwszego egzemplarza. A kiedy nazwa się nie przyjęła uznano że to tylko taka generacja pancernika, co też się nie bardzo przyjęło i w czasie IIwś o tej nazwie zapomniano.

Japonia poza Nagato miała też w czasie IIwś Fuso, ale ich przeciwnicy i tak klasyfikowali to jako pancerniki.


Pozdrawiam
[#19] Re: Galactica beta - WBGame

@OSH, post #17

Nie pasuje bombowiec, przy okazji zaproponowałem nazewnictwo bez myśliwca z uwagi na sporą różnicę miedzy siłą ognia klasycznego myśliwca a klasycznego niszczyciela. Przeliczając siłę na tonaż salwy burtowej krążownik da się porównać do powiedzmy kilku lub kilkunastu niszczycieli, do porównania salwy myśliwców do salwy krążownika potrzeba by ich kilkaset a może i więcej. Planując starcia w grze wygodny będzie przelicznik że jednostka A jest warta tyle co dwie jednostki B, jednostka B tyle co trzy C a C tyle co kilka D. Dobranie jednostki między którymi będzie różnica jak jeden do kilkuset nie ma dużego sensu.

Co do sensu występowania w grze bombowca to znasz jakiś popularny cykl SF w którym poza pancernikami, krążownikami i niszczycielami występują bombowce ?


Pozdrawiam
[#20] Re: Galactica beta - WBGame

@RadoslawF, post #19

Co do sensu występowania w grze bombowca to znasz jakiś popularny cykl SF w którym poza pancernikami, krążownikami i niszczycielami występują bombowce ?


Star Wars, Star Trek (no dobra, tam były to dość duże statki, ale jednoznacznie miały klasyfikację bombowców), StarCom, Babylon 5...




Ostatnia aktualizacja: 26.06.2013 16:45:30 przez OSH
[#21] [post oznaczony jako OT] wyświetl Re: Galactica beta - WBGame
[#22] [post oznaczony jako OT] wyświetl Re: Galactica beta - WBGame
[#23] [post oznaczony jako OT] wyświetl Re: Galactica beta - WBGame
[#24] [post oznaczony jako OT] wyświetl Re: Galactica beta - WBGame
[#25] [post oznaczony jako OT] wyświetl Re: Galactica beta - WBGame
[#26] Re: Galactica beta - WBGame

@gilban, post #15

Jeśli nie było ich standardowo w systemie, to chyba stąd je wziąłem.
[#27] Re: Galactica beta - WBGame

@RadoslawF, post #19

Co do sensu występowania w grze bombowca to znasz jakiś popularny cykl SF w którym poza pancernikami, krążownikami i niszczycielami występują bombowce ?

Mieszane nazewnictwo lotniczo-morskie wzięło się z cyklu StarWars (i występuje w wielu, wielu innych książkach i grach), ale np. universum Honor Harrington stara się odejść od tego przyjmując już tylko morskie oznaczenia.

Powodów jest kilka - tzw. myśliwce i bombowce to statki kosmiczne, które są na tyle małe, że są przenoszone przez inne statki, a dodatkowo nie mogą odbywać dłuższych lotów kosmicznych (w tzw. nadświetlnej) albo mogą walczyć w przestrzeni i w powietrzu (większe w powietrzu już nie). StarWars nie trzyma się tego kompletnie, tam X-Wing lata po Galaktyce jak poparzony a Star Destroyer - ogromny super niszczyciel (!) - spokojnie ląduje na planetach.
Honorverse jest lepiej dopracowany i zamiast myśliwców/bombowców występują tam kutry - najmniejsze jednostki przestrzenne. Bez opancerzenia, bez możliwości lotów nadświetlnych, szybkich, z kilkuosobową załogą (minimalną) a funkcja zależy od uzbrojenia (myśliwce - kilka małych rakiet, bombowce - 1-2 większe).

Mnie osobiście także razi myśliwiec i pancernik w jednej szufladce ale przyjmuję argumenty i podział na te do nadświetlnej i bez, a także z powodu funkcji: mały, tani, masowy = myśliwiec; ogromny, drogi, specjalne funkcje = pancernik.
Przestrzeń kosmiczna i powietrzna to 3D a flota morska to 2D. Biorąc wielkości i funkcje brakuje nam nazewnictwa więc się miesza.
[#28] Re: Galactica beta - WBGame

@vojo, post #1

Zamysl gry dobry, ale poki co graficznie biednie to wyglada, zobaczymy jaki bedzie efekt koncowy ;)
[#29] Re: Galactica beta - WBGame

@selur, post #28

W takich grach grafika jest na drugim planie. Liczy się pomysł oraz grywalność.
[#30] Re: Galactica beta - WBGame

@Skotos, post #27

Cykl StarWars to najgorszy wybór bo powstał jako scenariusz a był i jest rozbudowany równocześnie przez wielu autorów scenariuszy (w tym do filmów animowanych), książek i gier. W efekcie wychodzi totalny bałagan. W porównaniu do tego nazewnictwo i przyjęte zasady w cyklu o Honor Harrington są spójne, przejrzyste i najbardziej poprawne. I nie do końca jest prawdą że zamiast myśliwców czy bombowców występują tam kutry. Zbombardować instalacje na planecie teoretycznie może każdy okręt niezależnie od swoje wielkości, masy i oficjalnej klasyfikacji, stąd moja niechęć do bombowca w tego rodzaju grze. Z myśliwcami jest trochę inaczej, zawsze mogą znaleźć zatrudnienie jako maszyny zwiadowcze. W jednej z gier tego typu przed rozbudową floty przeznaczonej do walki produkowało się stado myśliwców i rozsyłało na wszystkie dostępne planety. Dzięki temu była informacja które z planet zajmuje przeciwnik i było wiadomo kiedy skolonizował kolejną. Z tego powodu istnienia myśliwca nie skrytykowałem ale w propozycji nazw ominąłem go. Latanie myśliwcami po galaktyce to bajka nie przystająca moim zdaniem do przyzwoitych standardów SF.


Pozdrawiam
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem