civ.org.pl forums > Space 4X - Projekt gry - Strategia Kosmiczna 4x > Pomysł na MINI strategię kosmiczną
Zmień język na polski. Switch to English.

Print This Topic        Mark Topic as Unread 

civ.org.pl forums > Strategie Kosmiczne 4X > Projekt gry - Strategia Kosmiczna 4x
Poster
Message    
Madlok
Status: Veteran

Posts: 299
Registered: Mar 20, 2009
IP: Logged
Pomysł na MINI strategię kosmiczną [post #1]

Wklejam to co dziś wklepałem. Chodzi o to, że coś tam ogarniam z najprostszego języka programowania i najprostszej biblioteki graficznej i może kiedyś... coś tam...
Można krytykować albo i rżnąć pomysły do woli.


Typy planet

CODE:
produkcja produkcja bazowy produkcja koszt budowy kopalń: zaopatrzenia: wzrost paliwa: i utrzymania populacji: budynków: ziemio-podobna 100% 100% 100.3% 100% 100% pustynna 100% 30% 100.2% 400% 200% raj 100% 200% 100.4% 100% 100% wodna 20% 80% 100.1% 80% 200% wulkaniczna 600% 50% 100.0% 500% 400% lodowa 50% 50% 100.1% 60% 200%

Poziomy podatków
każda planeta może mieć inny
podatkami zbiera się zaopatrzenie
CODE:
poziom: wpływy: wzrost niezadowolenia na turę: zerowe 10% - 0.4% niskie 60% 0.0% średnie 100% + 0.3% wysokie 140% + 0.6% bardzo wysokie 200% + 1.8%

Niezadowolenie nie może być większe niż 100%

Wzór na rozmnażanie się populacji co turę
populacja * wzrost bazowy - populacja * niezadowolenie * 200.6%
czyli na planecie ziemio-podobnej niezadowolenie 50% ma hamować wzrost populacji

Pracownicy budynków też się rozmnażają, ale tutaj niezadowolenie ani warunki na planecie nie mają znaczenia i zawsze jest to wzrost 100.2% Ilość pracowników na budynek jest stała, więc populacja, która się rozmnożyła w budynkach trafia do puli zwykłej populacji.

Surowce

# Metal
Potrzebny w stoczniach i koszarach. Powstaje w kopalniach i w małych ilościach przez podatki.

# Zaopatrzenie
Potrzebne wszędzie, czyli w statkach, budynkach i legionach. Powstaje przez ściąganie podatków. Nie ma fabryk zaopatrzenia, bo jakby były, to trzeba by wymyślić kolejny surowiec, np. kredyty, który byłby potrzebny, żeby te fabryki działały, a kredyty pochodziłyby z podatków.

# Populacja
Potrzeba do ściągania podatków, głównie zaopatrzenia. Potrzebni też jako pracownicy budynków i składnik statków (jako załoga) oraz legionów.
Ilość populacji dla przejrzystości jest w widoku pokazywana w tysiącach.
Budowa budynku i legionu kosztuje 10k, transportowca 1k, statku wojennego 5k.

# Paliwo
Potrzebne statkom. Powstaje w kopalniach.

Statki
- statek wojenny - walczy z innymi statkami, tworzą floty
- transportowiec - przewozi surowce, ludzi, wojsko, paliwo

Jednostki lądowe
- legion - walczy z legionami, podbija planety, walczy z buntami

Budynki
Wszystkie budynki zużywają zaopatrzenie. Jeśli go nie ma w wystarczającej ilości, budynek się wyłącza.
Zawsze można dany budynek wyłączyć, zużywa wtedy minimalną ilość zaopatrzenia.
Jeśli nie ma nawet minimalnej ilości zaopatrzenia, to budynek ulega zniszczeniu, a byli pracownicy stają się niezadowoleni. Budynek można też samemu zniszczyć i ma to taki sam efekt.

kopalnia metalu - wydobywa metal, zużywa zaopatrzenie, wytwarza zanieczyszczenia
kopalnia paliwa - to samo, tylko dotyczy paliwa
stocznia wojenna - z metalu buduje statki, zużywa zaopatrzenie
stocznia transportowa - to samo, tylko dotyczy transportowców
koszary - produkuje legiony, zmniejsza koszty określonej ilości legionów na planecie
administracja rządowa - zmniejsza ryzyko buntów, walczy z buntami

Floty
Ze statków wojennych można tworzyć floty. Minimum to dwa statki, jeśli z jakiegoś powodu we flocie będzie jeden statek, flota natychmiast przestaje istnieć.
Flota statków zawsze porusza się jako całość.
Do floty można przyłączać statki i odłączać je od niej. Transfery między flotami, to tak naprawdę usunięcie statku z danej floty i przyłączenie go do innej. Połączenie flot to transfer statków z jednej floty do drugiej i usunięcie pustej floty.
Flota daje bonus do walki za koncentrację ognia. Im większa flota tym większy bonus.
Poszczególne statki gromadzą doświadczenie z każdą turą, gdy są we flocie, do pewnego limitu.
Usunięcie statku z floty kasuje jego całe doświadczenie. Usunięcie statku z floty zmniejsza też doświadczenie pozostałych statków o małą cześć. Przy usuwaniu statku z floty usuwany jest automatycznie statek z najmniejszym doświadczeniem, żeby zminimalizować straty.
Im większa flota tym wolniej się porusza.

Legiony
Jest kilka typów legionów, w zależności gdzie powstały lub gdzie się szkoliły:
legion ziemski, pustynny, wodny, arktyczny, wulkaniczny. Legion walczący w swoim terenie zwielokrotnia siłę. Przeszkolenie legionu wymaga m.in. zawiezienia go na planetę o danym typie. Na planetach ziemio-podobnych i typu raj, można szkolić i tworzyć, oprócz typu ziemskiego, typ pustynny, morski i arktyczny.

[Edited by Madlok on Mar 10, 2015 at 22:19]
Mar 10, 2015 at 22:14

Print
Kex
Status: Elite

Posts: 760
Registered: Aug 19, 2010
IP: Logged
Re: Pomysł na MINI strategię kosmiczną [post #2]

Wiesz,nawet mimo faktu,że to wersja MINI,to i tak zapewne wielu czynników nie uwzględniłeś. Na przykład co ze statkami? Wszystkie będą tak samo silne i będzie się liczyła tylko ilość? Nie będzie żadnego rozwoju naukowego? Takich pytań można stawiać więcej,ale finalnie i tak dojdziemy do jednego - ile będzie dróg do zwycięstwa? Przy takich prostych założeniach jest spore prawdopodobieństwo,że będzie jedna optymalna droga i zwycięstwo będzie zależeć tylko do tego,kto lepiej dostosuje się do schematu lub komu lepiej wylosuje planety.

Mar 11, 2015 at 07:21

Print
Madlok
Status: Veteran

Posts: 299
Registered: Mar 20, 2009
IP: Logged
Re: Pomysł na MINI strategię kosmiczną [post #3]

Tak, statki wojenne mają być tylko jednego typu i nie ma być żadnych bitew taktycznych, tylko wzór matematyczny plus losowość. Gracz ma mieć wpływ na to ile statków gdzie wyśle i jak je podzieli na floty. Później ewentualnie może dojdzie coś takiego jak rozkazy taktyczne dla flot, ale to wymaga już lepszego obmyślenia, chociaż technicznie byłoby łatwe do zrobienia.
Statków ma by dziesiątki lub nawet setki we flotach.
Transportowce chyba nie będą tworzyć flot, a ich prędkość poruszania się będzie średnia, czyli mniej niż małych flot, ale więcej niż dużych.

Ma być jeszcze mgła wojny:
Im mniej statków na polu, tym trudniejsze do wykrycia.
Jeśli statki się nie poruszają, to są dodatkowo trudniejsze do wykrycia.
Zasięg radarów jest stały, ale im więcej statków na danym polu, tym ich wspólna skuteczność radaru jest większa, ale nie liniowo, tylko im więcej, tym zysk mniejszy.

Terenami specjalnymi w kosmosie mają być mgławice i tunele.
Te pierwsze to pewnie będzie spowolnienie prędkości statków, trudniejsze wykrywanie i redukcja bonusu za koncentrację ognia.
Tunel to połączenie dwóch oddalonych od siebie pól, tak jakby sąsiadowały ze sobą, ale pewnie radary nie będą przez nie widzieć.

Rozwój technologiczny wymagałoby dużo roboty i dużo wymyślania. Teraz mam tylko pomysł taki, że dość łatwo dałoby się wprowadzić poziomy techniczne dla poszczególnych planet, co miałoby wpływ na produkcję.

Wzoruję się na grze Anacreon, ale w niektórych dziedzinach chcę ją uprościć, a w niektórych ulepszyć.

Drogą do zwycięstwa ma być znalezienie najlepszego schematu dla danej mapy i ruchów przeciwników. Ale uniwersalna zasada to posiadać większą siłę militarną w momencie wojny i w miejscu bitwy, niż przeciwnik.

[Edited by Madlok on Mar 11, 2015 at 09:21]

Mar 11, 2015 at 09:18

Print
Kex
Status: Elite

Posts: 760
Registered: Aug 19, 2010
IP: Logged
Re: Pomysł na MINI strategię kosmiczną [post #4]

Bez bitew według mnie taka strategia sporo straci. Jednak jest satysfakcja,gdy się wykombinuje sposób,by pokonać silniejszego przeciwnika.
Tyle że taką metodą,to wyjdzie,że później zabraknie projektowania statków,później znów czegoś innego. W efekcie może wyjść pełnoprawna strategia.
W każdym razie ... chcesz działać,to działaj.

Mar 11, 2015 at 17:39

Print
Madlok
Status: Veteran

Posts: 299
Registered: Mar 20, 2009
IP: Logged
Re: Pomysł na MINI strategię kosmiczną [post #5]

Żeby były bitwy, to statki musiałyby mieć więcej parametrów, musiałoby być ich więcej rodzajów itd. A to są dodatkowe rzeczy, które trzeba obmyślić, zrobić do nich interface, testować, balansować. Każdy dodatkowy button, czy jakaś grafika, którą można klikać czy przenosić myszą, to dodatkowe utrudnienie dla mnie.

Ja to zaledwie niedawno nauczyłem się mniej więcej jak działa kamera, czyli przesuwanie mapy w grach. Klikanie na buttony gdzieś tam robiłem, ale już zapomniałem jak XD. Właśnie niedawno zacząłem robić kod pod jakąś grę, i doszedłem do momentu, w którym musiałem się zdecydować w końcu co to ma być za gra.
Zdecydowałem się na kosmiczną strategię, bo robienie czegoś takiego sprawi mi frajdę, a i grafiki nie trzeba za bardzo, bo planety i statki to można w paincie narysować.

[Edited by Madlok on Mar 11, 2015 at 19:15]

Mar 11, 2015 at 19:14

Print
Madlok
Status: Veteran

Posts: 299
Registered: Mar 20, 2009
IP: Logged
Re: Pomysł na MINI strategię kosmiczną [post #6]

Na razie wygląda to tak XD
https://www.youtube.com/watch?v=6TLci7nmJ3I

Mar 16, 2015 at 15:21

Print
Merthen
Status: Moderator

Posts: 5146
Registered: Aug 25, 2008
IP: Logged
Re: Pomysł na MINI strategię kosmiczną [post #7]

inni gadają (Ci inni to m.in ja ) ja tworzę - takie podejście mi się podoba
Dobrze ze nie porywasz się od razu na szerokie wody ale lepiej jakbyś ściągnął sobie np. darmową wersję silnika unity i nie męczył się tak w pytonie. Wtedy zbudujesz mini ale nowoczesną strategię.
Co do zasad: mini to mini - zbuduj to co zaprojektowałeś, potem możesz ją rozbudowywać bez końca .

Mar 26, 2015 at 06:38

Print
Madlok
Status: Veteran

Posts: 299
Registered: Mar 20, 2009
IP: Logged
Re: Pomysł na MINI strategię kosmiczną [post #8]

Inny framework to kwestia przyszłości. Pygame to taka zabawka, nie da się przy użyciu samego Pygame zrobić fajnej gry, która by mogła chodzić w dużej rozdzielczości z dużą ilością elementów na ekranie i jeszcze z bajerami typu częściowa przezroczystość. Ja chcę przede wszystkim nauczyć się robienia gier, które miały by wszystko co powinna mieć taka gra, czyli możliwość ustawienia różnych opcji, możliwość zapisu gry, multiplayer, mgła wojny, minimapa, scrolling mapy, różne scenariusze, może jakieś AI itd. Nie znalazłem tutoriali, które by tego uczyły.

Na razie jestem o dziwo zadowolony z szybkości działania gry. Ponad 40 FPS przy sporej ilości sprite'ów na ekranie, szybko poruszającej się kamerze i oknie 1366x768. Animacji prawie nie będzie, AI będzie myśleć dopiero, jak będzie jego kolej.

Co do gadania i robienia, to sam dogadywałem innym, to teraz mam. Na swoim kanale mam już 4 filmiki w playliście i zamierzam tymi filmikami dokumentować tempo swoich prac.

[Edited by Madlok on Mar 26, 2015 at 12:22]

Mar 26, 2015 at 12:05

Print
Madlok
Status: Veteran

Posts: 299
Registered: Mar 20, 2009
IP: Logged
Re: Pomysł na MINI strategię kosmiczną [post #9]

Przez ostatnie dni próbowałem doprowadzić koncepcję tych flot z dwóch rodzajów statków do jakiegoś ostatecznego kształtu. Nie udało mi się osiągnąć niczego, co by było fajne i proste.
Zmieniam zdanie i koncepcja teraz wygląda podobnie do Anacreona:
- Są poziomy technologiczne, ale nie ma żadnego drzewa, tylko jedna linia technologii. Poziom planety stolicy jest jednocześnie poziomem imperialnym.
- Każda planeta ma osobny poziom technologiczny. Jeśli jest niższy niż poziom imperialny, to produkcja bardziej zaawansowanych statków jest wolniejsza albo bardziej kosztowna. Produkcja zaopatrzenia, wzrost populacji i możliwości utrzymania dużej populacji cierpią najbardziej przy niskim poziomie planety; wydobycie metalu i paliwa cierpi mniej.

Statki wg poziomów technologicznych:
- Pierwszym dostępnym statkiem jest transportowiec, szybkość 4.
- Później dochodzi zwykły statek wojenny, szybkość 5.
- Rajder, szybkość 10. Lepsze radary, gorszy pancerz. Jeśli zaatakował z zaskoczenia, to na początku bitwy ma kilka darmowych ataków. Droższy niż zwykły statek. W bitwie ustawia się po bokach i próbuje atakować od tyłu lub tylne szeregi (transportowce, monitory).
- Monitor, szybkość 2. Potężny atak, ale kiepski pancerz. Najdroższy. W bitwie będzie się możliwie ustawiał za osłoną dwóch pierwszych rodzajów statków.

Analogia do XIX wiecznej sztuki wojennej z piechotą, kawalerią i artylerią.
Chociaż statki różnią się poziomem technologicznym, to każdy rodzaj powinien być przydatny, nowsze rodzaje są lepsze w czymś, ale płacą słabością w czymś innym.

Odległości między planetami takie, żeby konieczne było stosowanie flot transportowców jako ruchome punkty uzupełniania paliwa dla rajderów.

Bitwy taktyczne albo będą do oglądania, albo tylko jako raport do przeczytania, ale nie będzie to wyliczane tylko z jednego prostego wzoru, bo istnieje pojęcie przedniego i tylnego szeregu oraz oskrzydlanie, więc koniecznych jest kilka wzorów i warunków ich użycia.

Znaczenie podziału na floty:
- Poruszanie się z prędkością najwolniejszej jednostki.
- Flota zawsze walczy i porusza się jak jedna całość.
- Jeśli na jednym polu jest kilka flot i zostaną zaatakowane, to poszczególne floty mogą wchodzić do walki z opóźnieniem.
- Paliwo i zaopatrzenie jest wspólne dla floty i zawsze równo dzielone.
- Paliwo i zaopatrzenie z kontenerów transportowców może być automatycznie transferowane do statków z tej floty.
- Dowódca (tak, możliwe, że będą) oddziałuje tylko na swoją flotę.
- Dzielić, łączyć floty, transferować statki i towary między flotami gracz może tylko w fazie rozkazów.

Jeszcze mi przyszło do głowy czy nie zrobić tak, żeby wolne statki we flocie mogły być jakoś holowane przez szybsze, co by umożliwiało tworzenie flot szybszych niż najwolniejszy statek. Na przykład monitor + 4 transportowce lecą z szybkością 3.

[Edited by Madlok on Jun 17, 2015 at 19:33]

Jun 17, 2015 at 19:18

Print
Andrev
Status: Regular

Posts: 156
Registered: Sept 29, 2008
IP: Logged
Re: Pomysł na MINI strategię kosmiczną [post #10]

Quote:
Madlok wrote:
Znaczenie podziału na floty:
- Poruszanie się z prędkością najwolniejszej jednostki.

Jeszcze mi przyszło do głowy czy nie zrobić tak, żeby wolne statki we flocie mogły być jakoś holowane przez szybsze, co by umożliwiało tworzenie flot szybszych niż najwolniejszy statek. Na przykład monitor + 4 transportowce lecą z szybkością 3.


A nie jest lepszą opcją po prostu zwiększenie konsumpcji paliwa?
Jeżeli najwolniejsza jednostka pali 100% paliwa przy prędkosci 2, to przecież może zużywać 150% dla prędkości 3, 225% (150% x 150%) dla 4 itp...

[Edited by Andrev on Jul 12, 2015 at 07:21]
Jul 11, 2015 at 23:15

Print
Madlok
Status: Veteran

Posts: 299
Registered: Mar 20, 2009
IP: Logged
Re: Pomysł na MINI strategię kosmiczną [post #11]

Na tę chwilę (bo pomysły się ciągle zmieniały i prototyp gry chcę zrobić uproszczony) myślę to jednak rozwiązać tak:
- Każdy typ statku ma parametr prędkość maksymalna i zużycie paliwa.
- Prędkość maksymalna floty liczona jest jako średnia z prędkości statków, które w niej są (że niby najszybsze jakoś tam holują najwolniejsze).
- Zużycie paliwa floty na jedno pole ruchu (czyli to co jest najważniejsze dla gracza i gry) ma być sumą zużyć paliwa wszystkich statków podzieloną przez prędkość maksymalną floty.

Zmiennego zużycia dla różnych prędkości nie planowałem. To by komplikowało obliczanie zużycia na pole, ponieważ trzeba by wiedzieć z góry na ile pól flota się przemieści albo wprowadzić nowe tryby dla flot - prędkości. Za bardzo skomplikowane, chyba że ktoś widzi jakieś inne rozwiązanie.

Planuję tylko, żeby szybsze typy statków miały większe zużycie na pole niż wolniejsze.
Powiedzmy, że mamy typ A o prędkości 3 pola i zużyciu 3 oraz typ B o prędkości 1 i zużyciu 1. Oba mają te same zużycie na pole. Dlatego typ A powinien mieć raczej zużycie 4. Jeśli 1 statek typu A i 1 typu B utworzą flotę, to prędkość maksymalna floty (czyli tak naprawdę ile pól może się maksymalnie ruszyć w jednej turze) będzie wynosić 2 (średnia arytmetyczna) a zużycie na pole (nieważne ile pól się tak naprawdę ruszy) będzie wynosić 2,5. W sumie ruszając się o 2 pola zużyją 5.
Gdyby każdy z tych statków chciał te dwa pola pokonać osobno (czyli każdy jako jednostatkowa flota), to zajęło by im to w sumie 2 tury (statek B rusza tylko 1 pole na turę, statek A mógłby gdyby chciał pokonać to w 1 turę, bez znaczenia dla jego zużycia paliwa) a ich łączne zużycie paliwa wyniosłoby 4,66. Mniej paliwa, ale tura wolniej.
Obliczenia robiłem teraz na szybko, więc nie jestem 100% ich pewien. Wychodzi na to, że jakiś tam efekt "więcej paliwa za większą szybkość" zrobił się sam, w przypadku mieszania typów statków we flotach.

[Edited by Madlok on Jul 12, 2015 at 12:13]

Jul 12, 2015 at 12:06

Print
Andrev
Status: Regular

Posts: 156
Registered: Sept 29, 2008
IP: Logged
Re: Pomysł na MINI strategię kosmiczną [post #12]

Quote:
Madlok wrote:
Zmiennego zużycia dla różnych prędkości nie planowałem. To by komplikowało obliczanie zużycia na pole, ponieważ trzeba by wiedzieć z góry na ile pól flota się przemieści albo wprowadzić nowe tryby dla flot - prędkości.

Nie rozumiem. Przecież gracz ma informację o ilości paliwa i jego zużyciu (ilość statków, prędkość), więc łatwo można obliczyć czy dla nowej pozycji x,y wystarczy paliwa czy nie.
Jak nie - to taki ruch jest zabroniony.
Jul 12, 2015 at 14:14

Print
Madlok
Status: Veteran

Posts: 299
Registered: Mar 20, 2009
IP: Logged
Re: Pomysł na MINI strategię kosmiczną [post #13]

Ale floty mają czasami ruszać się w pościgu za inną flotą albo uciekając przed jakąś, wtedy nie wiadomo o ile się przesuną.

Jul 12, 2015 at 16:57

Print
Andrev
Status: Regular

Posts: 156
Registered: Sept 29, 2008
IP: Logged
Re: Pomysł na MINI strategię kosmiczną [post #14]

Quote:
Madlok wrote:
Ale floty mają czasami ruszać się w pościgu za inną flotą albo uciekając przed jakąś, wtedy nie wiadomo o ile się przesuną.

ucieczka:
Załóżmy że bitwa się kończy przez decyzję gracza (np. poprzez osiągniecie poziomu strat własnych) lub poprzez upływ limitu czasu bitwy. Nieważne - bitwa się kończy.
IMO gracz jest odpowiedzialny za ucieczkę flot. Zawsze można wysłać flotę ratunkową lub konwój z paliwem. Wracamy więc do punktu wyjścia: flota chce przemieścić się na odległość R przy ilości posiadanego paliwa X. Odległość ucieczki jest więc limitowana stanem paliwa, a więc wiemy czy flota osiągnie punkt x,y przy posiadanej ilości paliwa.

pościg:
Nie wiem jak to wygląda w twoim projekcie, ale zakładam, że patrol / pościg odbywa się automatycznie, bez kontroli gracza, i wygląda to w ten sposób:
- następuje przemieszczenie się floty ściganej,
- jeżeli uciekająca flota pozostaje w zasięgu skanerów to jej pozycja jest nadal znana,
- obliczany jest odległość do celu,
- następuje przemieszczenie się floty pościgowej z maksymalną dostępną prędkością (limitowaną ilością paliwa)

Przy włączonej opcji patrolu pętla przechwycenia jest rozwiązywana na nowo aż do:
- przechwycenia celu,
- wyczerpania zadanego % paliwa,
- zgubienia kontaktu z wrogiem,
- oddalenie się od bazy na odległość Y

Wynika z tego, że sama opcja przemieszczenia się flot musi być rozbita na dwie fazy:
1. ruch flot które nie ścigają innych flot
2. ruch flot które ścigają inne floty, (pętla warunkowa trwająca dopóki wszystkie floty będące celem nie zostaną przemieszczone).
Faza bitwy: jeżeli flota dopędziła przeciwnika (znajdują się w tej samej lokalizacji) rozwiązywane jest równianie bitwy.

[Edited by Andrev on Jul 12, 2015 at 21:06]
Jul 12, 2015 at 21:06

Print
^ Początek strony ^



Username: Password: Lost your password?

tForum version b0.94.1.2 (© 2003 tForumDevTeam)

The comments published here represent only the personal opinions of the respective users. civ.org.pl and it's staff is not held responsible for the contents of the posts.

Publikowane komentarze są prywatnymi opiniami użytkowników portalu. Portal civ.org.pl ani jego redakcja nie ponosi odpowiedzialności za treść opinii.


hosted by artserwis.pl - praca, konkursy, portfolia dla twórców.