Autor Wątek: SpaceSim z punktu widzenia myśliwca  (Przeczytany 3911 razy)

Offline Asmodeusz

  • Użytkownik
    • Bogumił Wiatrowski: Blog

# Kwiecień 12, 2010, 15:52:27
O czym jest gra: Dywizjon 303 XXV wieku, czyli wzorowany w pewnym stopniu na FreeSpace 2 symulator walk w przestrzeni kosmicznej. Gracz, pilot wojskowy, wykonuje kolejne misje jako dowódca eskadry i jednocześnie pilot lekkiego pojazdu kosmicznego (myśliwca lub bombowca). Multiplayer: gracze wspólnie, jako piloci tej samej formacji wykonują poszczególne misje trybu single player.

Założenia: gra ma dawać możliwie dużą swobodę w kwestii sposobów działania gracza. Docelowo, gracz ma mieć możliwość wyboru statku (z grupy dostępnych mu), wyposażenia (uzbrojenie, silniki, wyposażenie dodatkowe), sprzętu oraz typów (różne konfiguracje AI) załogi. Również sam przebieg misji będzie zaplanowany w sposób umożliwiający graczowi na samodzielny przydział priorytetów zadań i ich wykonanie w wybranej przez niego kolejności. W trakcie samej rozgrywki gracz powinien mieć możliwie dużą kontrolę nad statkiem - manewry w trzech osiach, sterowanie sposobem wyświetlania danych, systemami wewnętrznymi statku, wydawanie rozkazów podległym jednostkom, monitorowanie przebiegu misji itd.

Docelowo gra jest planowana jako trudna lub bardzo trudna, wymagająca dokładnego zapoznania się z materiałami dotyczącymi misji, parametrami statku i wyposażenia, mechaniką sterowania, ogólnymi założeniami. Gracz powinien umieć ocenić sytuację taktyczną i w odpowiedni sposób przydzielić zadania, wliczając w to ustalenie optymalnej kolejności ich wykonania. Gra nie zakłada systemu "żyć", w przypadku zniszczenia pojazdu gracza misja jest przerywana, umożliwiając ponowną próbę od punktu odprawy.
Przeciętny planowany czas wykonania pojedynczej misji: 15-40 minut.

Widok i sterowanie: widok z perspektywy pierwszej osoby, z wnętrza prowadzonego pojazdu. Poza obszarem przestrzeni, w którym toczy się misja, widoczny jest ujednolicony dla poszczególnych typów statków HUD (nakładany w formie półprzezroczystej na widok ekranu - rozwiązanie analogiczne do FreeSpace 2). Część danych HUD docelowo ma być wyświetlana jako "nakładka" na obiekty 3D widoczne w przestrzeni - jak np. dane o celowaniu/namierzaniu.

Model oświetlenia możliwie realistyczny, zakładający m.in. takie czynniki jak oślepienie światłem gwiazdy; wymuszający przez to planowanie działań uzależnione od elementów scenerii.

Sterowanie z poziomu klawiatury i myszy: mysz służy do obracania pojazdu w dwóch osiach (kursor) + rotacji (rolka) oraz wykonywania podstawowych akcji: strzał, namierzanie. Klawiatura przeznaczona jest do sterowania pozostałymi parametrami - wydawaniem rozkazów, kontrolowaniem prędkości, urządzeń pokładowych, danych taktycznych, wyznaczania celów itd. Opcjonalnie: sterowanie joystickiem (funkcje myszy+przepustnica) i klawiaturą.

Zwycięstwo i przegrana: ukończenie gry oznacza ukończenie ostatniej misji trybu dla jednego gracza. Ukończenie misji uzależnione jest od jej ustawień i dzieli się na cztery (niewidoczne dla gracza) poziomy: pełne zwycięstwo, zwycięstwo, sytuacja nierozstrzygnięta, porażka. Gra może być ukończona, gdy gracz osiąga same zwycięstwa, bez osiągania pełnych zwycięstw. W niektórych przypadkach ukończenie misji ze stanem "nierozstrzygnięta" traktowane jest jako porażka i wymaga powtórzenia misji - w innych umożliwia przejście do następnej, natomiast w sposób szkodliwy dla gracza wpływa na jej przebieg.

Na podstawie efektów ukończenia poprzednich misji obliczane są osiągnięcia gracza, na podstawie których otrzymuje on dostęp do nowego sprzętu i przydziałów (co umożliwia ominięcie końcowych misji danego etapu gry). Każda porażka (wliczając w to przerwanie misji przez gracza) są również uwzględniane w sumie wyników, wpływając na możliwości pojazdu gracza oraz wykonywane misje.

Do osiągnięcia pełnego zwycięstwa nie zawsze jest konieczne wykonanie wszystkich zadań z odprawy - rozkazy mogą zmienić się w trakcie misji, mogą pojawić się również sprzeczne polecenia (np. konieczność ochrony dwóch okrętów mając siły wyłącznie na osłonięcie jednego) - na podstawie danych z odprawy oraz przebiegu misji gracz powinien wybrać ważniejsze zadanie. W tym przypadku każdy wybór umożliwia ukończenie misji, zmieniając finalny efekt.

Mocne strony gry: Stopnień skomplikowania umożliwiający graczowi zauważenie własnego rozwoju i wzrostu opanowania poszczególnych elementów gry. Wrażenie kontroli większości czynników, które mogłyby zależeć od postaci. Możliwość podejmowania decyzji bez rozterek moralnych - bazując wyłącznie na ocenie taktycznej. Znaczna samodzielność w decydowaniu o przebiegu gry - zdarzenia w czasie misji bazujące na akcjach gracza.

Słabe strony gry: Wysoki początkowy poziom trudności, mogący zniechęcać do poznawania gry. Konieczność zapoznania się ze sterowaniem i teorią mechaniki gry celem skutecznego kontynuowania rozgrywki. Duża ilość danych, uniemożliwiająca skoncentrowanie się na samym aspekcie latania i strzelania.

Platforma: PC, Windows (DirectX9 single-screen lub DirectX10 single/multi-screen). Gotowy silnik graficzny (OGRE), gotowe rozwiązania do dźwięku (prawdopodobnie XAudio). Multiplayer: rozproszony, bazujący na lokalnych serwerach, z możliwością dołączenia wyłącznie w czasie odprawy (jak w większości RTS).

Braki, luki itd.
Na chwilę obecną zastanawiam się, jak wyeliminować wspomniane wcześniej wady. Ponadto, byłbym wdzięczny za sugestie i pomysły dotyczące pozostałych aspektów gry - zwłaszcza w kwestii głównej linii fabularnej. Jeśli też coś w moim oryginalnym pomyśle byłoby warte zmiany, będę wdzięczny za uwagi.

Inspiracje:
FreeSpace 2 - w dużym stopniu, zwłaszcza pod względem założeń ogólnych (sposób rozgrywki, częściowo HUD).
Mass Effect - fabularnie, poziom technologiczny.
MS Flight Simulator (seria) - częściowo sterowanie, częściowo stopień realizmu.
« Ostatnia zmiana: Maj 17, 2010, 02:21:13 wysłana przez Asmodeusz »

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline Avaj

  • Użytkownik

# Kwiecień 12, 2010, 22:07:11
mogą pojawić się również sprzeczne polecenia (np. konieczność ochrony dwóch okrętów mając siły wyłącznie na osłonięcie jednego) - na podstawie danych z odprawy oraz przebiegu misji gracz powinien wybrać ważniejsze zadanie.
Bardzo ciekaw jestem jak to zaprojektujesz. Jeżeli chodzi o mnie, to zawsze uważam takie misje za frustrujące i bym próbował wtedy zapisywać/ładować aż w końcu się uda obronić obydwa (lub porzucić grę z frustracji). Co jeśli np gracz oleje i żadnego z nich nie obroni?

Offline Liosan

  • Redaktor

# Kwiecień 12, 2010, 22:21:20
Freespace 2... dobra gra na wzór :) Tylko...

...mysz służy do obracania pojazdu w dwóch osiach (kursor) + rotacji (rolka)...

... jesteś absolutnie pewien, że to dobry pomysł? Bo ja np. mam pionową rolkę, która w ogóle mi się z obrotem statkiem nie kojarzy... Zresztą, w FS2 były jakieś opcje "roll", i w miarę przechodzenia gry coraz mniej pamiętałem, które to są ;) Moim zdaniem w kosmosie to się po prostu nie przydaje, no, chyba, że ja akurat nie wykonywałem żadnych takich manewrów :)

Brakuje mi przykładów konfiguracji (np. myśliwiec-bombowiec potrafię wymyślić, ale "sprzęt"? "wyposażenie"? "załoga"?! :) ).

Jak podejdziesz do problemu prędkości maksymalnej? Utrata sterowności?

Co do problemu skali trudności... ja głęboko wierzę w moc tutoriala na HUDzie :) Najpierw symulator lotów, poleć do przodu, przechyl się, spójrz tutaj, przeleć przez kółko, przemieść energię na doładowanie przedniej tarczy, namierz ruchomy cel torpedą jednocześnie unikając pocisków i manewrując między asteroidami...

@up: Nie widzę problemu, wystarczy dobitne potwierdzenie od dowództwa "Mission complete, soldier. You did what could be done, report for debriefing". We FS2 były conajmniej 2 misje, gdzie postawionego celu nijak nie da się osiągnąć :) Z drugiej strony, jest też druga strona medalu - gameplay musi zapewniać, że naprawdę nie da się ocalić obu statków :)

Liosan

Offline Avaj

  • Użytkownik

# Kwiecień 12, 2010, 23:17:00
Nie mogę się zbytnio o Freespace 2 wypowiedzieć bo praktycznie nie grałem. Jedyne shootery kosmiczne w jakie grałem to Tachyon:The Fringe i TIE Fighter z obydwoma dodatkami :)

Offline 0pako0

  • Użytkownik

# Kwiecień 13, 2010, 19:34:45
Niedawno był temat o grach astronomicznych. Trochę się wiąże. Pytanie czy to ma być shooter w kosmosie czy symulator myśliwca kosmicznego ? Chodzi mi o fizykę. Freespace, X-wing itp. to shootery, w które łatwo i przyjemnie się gra. Mniej jest natomiast symulatorów takich jak seria Elite albo Terminus... albo Asteroids  :D
Oczywiście jeżeli użyjesz realistycznej fizyki gra stanie się trudniejsza i zaciekawi raczej wyłącznie koneserów, a tego chciałeś chyba uniknąć.
To jest jak z grami wyścigowymi czasami lepiej uprościć fizykę jeżeli chce się żeby więcej osób w to grało. Niestety kosmiczne shooterki są kompletnie nierealistyczne. Więc robiąc coś bardziej realistycznego i ciekawie to przedstawiając, może udało by się trafić w jakąś niszę.

Jednak idąc jeszcze bardziej w stronę realizmu raczej trudno by było wytłumaczyć graczowi że asteroidy w polu asteroid oddalone są od siebie o setki tysięcy kilometrów, albo że mgławice są tak rzadkie że zazwyczaj nie widać "chmur" gołym okiem, a jeśli nawet to bezproblemowa widoczność i tak będzie sięgała milionów kilometrów.  ;D

Offline Asmodeusz

  • Użytkownik
    • Bogumił Wiatrowski: Blog

# Kwiecień 14, 2010, 00:14:56
Fizyka i realizm raczej bliżej gry zręcznościowej niż rzeczywistego symulatora. Nie zamierzam dokładnie odzwierciedlać praw fizyki, raczej zrobię coś w deseń lekko urealistycznionego shootera - większa prędkość przy zbliżaniu się do źródła grawitacji, bezwładność przy zmianie kierunku lotu (znacznie mniejsza niż wg. praw fizyki) itd.

@Java: celowo chcę umożliwić przejście misji bez realizacji wszystkich zadań. W wersji idealnej tylko gracz niemal zsynchronizowany z komputerem powinien być w stanie wykonać wszystkie wykonywalne zadania (włącznie z pobocznymi) w 100% idealnie, natomiast przeciętny gracz powinien być w stanie grę przejść bez zbyt częstego powtarzania misji. Trochę inne podejście do poziomu trudności - poziom jest jeden, mimo to dla każdego coś się znajdzie.

W wymienionych przypadkach prawdopodobnie sytuacja byłaby następująca:
gracz nie obronił żadnego celu - mission failed, na odprawie po misji informacja, że nie spełnił oczekiwań, gracz powtarza misję lub ją pomija (z konsekwencjami dla dalszej rozgrywki);
gracz obronił jeden cel - dokładnie jak napisał Liosan, gracz może powtórzyć misję lub grać dalej;
gracz jakimś cudem obronił oba cele - pełne zwycięstwo, achievment/medal (tego typu system byłby dla gracza motywujący) i gracz gra dalej.

@Liosan: fakt, rolka w tym wypadku jest złym pomysłem, acz do przekonfigurowania przez gracza - co kto lubi. Po prostu założyłem, że nie każdy ma dwa dodatkowe klawisze po lewej stronie myszy (jak ja w MS Sidewinder) - chciałem uniknąć podania abstrakcyjnego skojarzenia. Akurat w FS2 (zmodowanym) masowo używałem obrotu - umożliwiał znacznie łatwiejsze uchylanie się przed pociskami zza pleców (połączony z dość radykalnym manewrowaniem był jedyną szansą przetrwania na maksymalnym poziomie trudności). Sam chcę - w ramach zróżnicowania statków - zróżnicować też ich profil - zrobić statki spłaszczone (widok od tyłu) w pionie i poziomie. Jeśli pamiętasz z FS2, tam domyślne działka strzelały po bokach - umożliwiało to łatwiejsze ich uniknięcie (lot między strumieniami) lecąc pod kątem 90* względem ścigającego przeciwnika.

Konfiguracja na chwilę obecną byłaby rozszerzeniem FreeSpace2. Tam była możliwość wyboru przed misją (w większości przypadków) statku i uzbrojenia. Ja do tego chcę dodać znane graczowi parametry, informujące co może założyć na dany statek, dać też możliwość wyboru systemu napędowego, tarcz i prawdopodobnie kilku innych komponentów, mających pewien wpływ na ogół działania. Przykładowo: lepsza jednostka napędowa zwiększa siłę ciągu o 10% (co przekłada się na przyspieszenie i prędkość maksymalną), natomiast zmniejsza zapas energii myśliwca o 25%, co odbija się na sile dział czy tarczach. Albo też gracz decyduje się na "szturmową jednostkę napędową" o zwiększonej o 50% skuteczności dopalacza w zamian za zmniejszenie o 10% podstawowej prędkości maksymalnej oraz o 50% czasu działania dopalacza. Chcę, by gracz nie musiał w tym grzebać, ale by równocześnie miał możliwość dostosowania statku do własnych upodobań i celów misji. Jak to połączyć - nie wiem, prawdopodobnie przygotuję dla każdej misji rozsądne ustawienia domyślne (tak było w FS2).

W kwestii prędkości maksymalnej: podstawowe założenie jest takie, że suma prędkości obrotowej i lotu względem maksymalnej nie może przekraczać 1.2, z ograniczeniem do 1.0 dla każdej. W efekcie oznacza to fakt, że im szybciej lecimy, tym wolniej skręcamy - i na odwrót. Działanie dopalacza ma pozwolić po prostu przekroczyć 1.0 dla prędkości lotu - co może wyłączyć nam sterowność lub (powyżej 1.2) spowodować losowe szarpanie statkiem. Cel: zasugerowanie graczowi aktywnej walki zamiast taktyki "hit&run" - poza przypadkami, gdy wspomniane problemy będą rekompensowane korzyściami z "hit&run".

W tego typu grze szczegółowy tutorial (najlepiej rozbity na kilka części wplatanych w trakcie głównej linii kampanii) jest niezbędny. Ogarnięcie wszystkiego w FS2 było sporym wyzwaniem, tym bardziej biegłe posługiwanie się wszystkimi elementami sterowania. Nie bez powodu FreeSpace ma opinię gry dla czteroręcznych :D
Sama organizacja i "poziom szczegółowości" to inna kwestia - na pewno nie zamierzam robić czegoś na zasadzie "Podleć do przodu. Dobrze. Teraz się zatrzymaj." Raczej zamierzam zbudować tutorial wg. schematu "przypomnij sobie i przećwicz podstawy pilotażu; gdy będziesz gotów, strzel w dronę treningową, rozpocznie się test".

Offline Avaj

  • Użytkownik

# Kwiecień 14, 2010, 17:24:21
Teraz sobie zdałem sprawę że znam grę która dobrze rozwiązuje problem niezaliczania całości misji - Operation Flashpoint. Tam mogłeś zepsuć misję bez większych konsekwencji, co najwyżej w następnych misjach miałeś trudniej a gra dopiero się kończyła jeśli kilka razy pod rząd zepsułeś misję. Generalnie z doświadczenia wiem, że najgorsze co się może zdarzyć to brak skryptu, gdy zrobisz coś inaczej niż było przewidziane przez twórcę i nie masz żadnych rozkazów, nic się nie dzieje i j;]edyne co możesz zrobić to zacząć misję od nowa w nadziei że tym razem skrypt zaskoczy ;]

Offline Asmodeusz

  • Użytkownik
    • Bogumił Wiatrowski: Blog

# Kwiecień 14, 2010, 17:44:09
Generalnie z doświadczenia wiem, że najgorsze co się może zdarzyć to brak skryptu, gdy zrobisz coś inaczej niż było przewidziane przez twórcę i nie masz żadnych rozkazów, nic się nie dzieje i j;]edyne co możesz zrobić to zacząć misję od nowa w nadziei że tym razem skrypt zaskoczy ;]

To akurat kwestia dobrego designu samej misji, żeby do takiej sytuacji nie dopuścić. Samo sprawdzanie zakończenia widzę tak: gdy zmienił się status dowolnego z zadań, sprawdzane jest, czy misja jest zakończona (na razie nieistotne, czy to sukces, czy porażka). Jeśli tak - gracz dostaje informację o konieczności powrotu do bazy/na statek (za każdym razem gracz może samodzielnie zakończyć misję i sprawdzić wynik - np. zrezygnować z wykonywania zadań pobocznych). Po wybraniu powrotu, przeglądane są cele misji, sprawdzane jest, czy misja zakończyła się sukcesem (czy wykonano wszystkie wymagane cele misji).

Przykładowo: gracz ma za zadanie ochronić przez czas przelotu między "punktami skoku" jak najwięcej własnych transportowców (z ośmiu lecących), dodatkowym celem jest unieruchomienie wrogiego krążownika. Gracz umożliwił przelot 6 z 8 transportowców i unieruchomił krążownik. W tym momencie decyduje, że kontynuowanie misji w obecnym stanie pojazdu jest bardzo ryzykowne (zniszczenie własnego pojazdu = misja przegrana, niezależnie od realizacji celów) i decyduje się na powrót do bazy. Skrypt misji zakłada, że minimum do zakończenia misji z sukcesem to 4 transportowce ocalone, zakończenie dobre to 7 ocalonych, perfekcyjne - 8. Gracz włącza powrót do bazy - trafia na ekran odprawy z informacją, że misja została zrealizowana, choć rezultat nie jest najlepszy. Gdyby gracz się wycofał zanim 4 transportowce zdołały przelecieć do punktu skoku, odprawa byłaby przedstawiona dla rezultatu: porażka. Gdy gracz, odnosząc sukces, dodatkowo unieruchomi wrogi krążownik, otrzyma odznaczenie/awans - co umożliwia mu wcześniejszy dostęp do nowych statków lub wyposażenia.

EDIT: Przygotowałem wstępny projektu układu elementów HUD. Cały HUD docelowo ma być półprzezroczysty, jeszcze kilka informacji będę musiał rozmieścić (stan energetyczny statku itd.).


Sterowanie: (część, pomysł ustawień domyślnych - mam nadzieję, że przynajmniej częściowo oddaje ideę gry i dostępnych graczowi opcji sterowania)
Mouse move: yaw/pitch
Mouse4/Mouse5 | Left/Right: roll
Mouse1: strzel z dział
Mouse2: wystrzel pociski
Mouse 3 | E: przełącz cel na następnego (względem odległości) wroga
Mouse/rolka: przełączaj cele wg. listy monitorowanych (object status)
1-8: włącz/wyłącz działa (wg. kolejności - w tym przypadku 1 = Sony E127, 2 = Colt '55, 3 = Colt '44)
Ctrl+1-8: włącz tylko działo o danym numerze
Shift+1-8: włącz wszystkie działa z wyjątkiem wybranego
`: przełącz na następny typ pocisku
Tab: dopalacz (działa póki klawisz wciśnięty)
Up | A: zwiększ przyspieszenie
Down | Z: zmniejsz przyspieszenie
S | Page Up: zwiększ docelową prędkość (maksymalne przyspieszenie dla osiągnięcia danej prędkości)
X | Page Down: zmniejsz docelową prędkość (maksymalne przyspieszenie dla osiągnięcia danej prędkości)
Home | Ctrl+S: maksymalna prędkość
End | Ctrl+X: stop
T: ustaw cel: następny po obecnym celu obiekt (względem odległości)
R: ustaw cel: następny po obecnym celu sojusznik (względem odległości)
F: ustaw cel: następny cel z listy statusu obiektów (względem odległości)
C: call order menu - wywołuje menu wydawania rozkazów dla podległych jednostek
G: ustaw cel: kolejna broń zaznaczonego celu
B: ustaw cel: następny po obecnym pocisk (względem odległości)
Ctrl+B: ustaw cel: następny po obecnym pocisk skierowany w obecny cel (względem odległości do obecnego celu)
Shift+B: ustaw cel: następny po obecnym pocisk skierowany we mnie
Ctrl+E | Ctrl+Mouse3: ustaw cel: następny po obecnym namierzający mnie przeciwnik (względem odległości)
Backspace: ustaw prędkość docelową na równą prędkości celu
\: automatycznie dostosuj prędkość do prędkości celu
Enter | Spacja: rozpocznij blokowanie automatycznego namierzania dla pocisków
I: włącz/wyłącz informacje o atakujących mnie przeciwnikach
M: włącz/wyłącz monitoring stanu tarcz (automatyczna regeneracja)
L: włącz/wyłącz automatyczne zarządzanie energią
F1-F12: zwiększ priorytet energetyczny danego modułu
Ctrl+F1-F12: ustaw priorytet energetyczny danego modułu na maksymalny
Shift+F1-F12: zmniejsz priorytet energetyczny danego modułu
Ctrl+Shift+F1-F12: wyłącz dany moduł (ustaw zerowy priorytet energetyczny)
Esc: zresetuj ustawienia energetyczne do domyślnych
Pause/Break: pauza (możlwość wyjścia z misji/zakończenia gry)
Ctrl+Alt+Enter: zakończenie misji (powrót do bazy)
« Ostatnia zmiana: Kwiecień 14, 2010, 18:16:22 wysłana przez Asmodeusz »

Offline ConayR

  • Użytkownik

# Kwiecień 15, 2010, 04:18:19
A ja mam tylko jedno małe pytanie: jak zamierzasz rozwiązać problem orientacji w otwartej przestrzeni?

Offline Asmodeusz

  • Użytkownik
    • Bogumił Wiatrowski: Blog

# Kwiecień 15, 2010, 13:17:51
Radar 3D + wskazywanie kierunku do aktualnego celu.

Radar widzę jako kulę, w której centrum jest gracz, natomiast dookoła porozmieszczane są poszczególne obiekty (ikony obrazujące typ jednostki i kolor oznaczający przynależność - wróg, przyjaciel, neutralny). Wszystkie ikony mają bezwzględną wielkość identyczną - stąd im widoczna ikona jest większa, tym bliżej do "nieskończenie za graczem" jest przeciwnik.

Wskazywanie obecnego kierunku rozwiązano w FreeSpace 2 jako wskaźnik kierunku obrotu do zobaczenia celu, podaną liczbowo odległość od celu oraz graficzne oznaczenie wymaganego kąta obrotu do zobaczenia przeciwnika. Tego typu rozwiązanie (choć prawdopodobnie bez odległości, ta będzie podawana w informacjach o celu w prawym dolnym rogu) powinno być wystarczająco wygodne w walce kołowej.

Offline skowronkow

  • Użytkownik
    • skowronkow devsite

# Kwiecień 15, 2010, 13:34:55
Co do sukcesu wykonania misji, podobałoby mi się coś takiego(nawiązując do przykładu): jako cel misji dostajemy zadanie zniszczenia 2 nieźle napakowanych jednostek. Byłoby to bardzo wyśrubowane zadanie jeśli chodzi o stopień trudności, gdzie bardzo niewiele dzieli nas od sukcesu do porażki. Byłaby jednak wzmianka w odprawie, że jeśli nie wystarczy nam siły rażenia do ich pokonania, powinniśmy zniszczyć jeden i przemieścić się do wyznaczonej bazy posiłkowej, na drodze do której spotkalibyśmy jakiś w miarę prosty do pokonania patrol. Byłyby więc 2 drogi do sukcesu (niw więcej, żeby nie było zbyt wielu zależności), jednak każda trochę inaczej wynagradzałaby gracza.

Dodatkowo jeśli to przewidujesz była by możliwość wynajęcia kompana do pomocy za odpowiednie wynagrodzenie, dzięki czemu łatwiej wykonalibyśmy główny warunek.

Offline Asmodeusz

  • Użytkownik
    • Bogumił Wiatrowski: Blog

# Kwiecień 15, 2010, 13:40:43
Jak ma się wynajmowanie kompanów do regularnych przestrzennych sił wojskowych? Dostajesz przydział, dostajesz uprawnienia na konkretne wyposażenie + na dowodzenie konkretną ilością jednostek sojuszniczysz i działasz. Widać o tym nie wspomniałem - acz nie widzę możliwości wyjścia gracza powyżej stopnia sierżanta - od początku do końca jego zadaniem jest tylko wykonanie rozkazów (czasem też absurdalnych i sprzecznych) tak dobrze, jak to możliwe. Postać gracza nie ma żadnej własności - operuje na przydziałach od dowództwa.

Natomiast w kwestii takiego podejścia do misji: właśnie czegoś takiego chciałem uniknąć. Misje raczej widzę na zasadzie "wykonaj A, B, C, D, E, F; pamiętaj, że A i B są najważniejsze i od nich zależy najwięcej" - a sam gracz wybiera, które z zadań są ważniejsze, a które można poświęcić dla dobra całości.

Ponadto większość zadań raczej zamierzam oprzeć na działaniach myśliwskich, operacje bombowe stosując właściwie jako dodatek. Od niszczenia dużych okrętów są inne duże okręty - myśliwce mają po to, żeby wrogie myśliwce nie zrobiły im krzywdy ;-)

Offline Asmodeusz

  • Użytkownik
    • Bogumił Wiatrowski: Blog

# Kwiecień 22, 2010, 08:58:06
Będę wdzięczny za opinie i sugestie dotyczące tego:

Dylatacja czasu i podróże wewnątrzukładowe:
Jako, że mowa o zjawisku udowodnionym naukowo i dokładnie opisanym , osoby nieobeznane odsyłam do wiki. Pewnego rodzaju innowacją byłoby wprowadzenie w moim shooterze podróży wewnątrz układu planetarnego. Jak bym to widział w chwili obecnej: do dyspozycji gracza w czasie misji jest kilka "punktów węzłowych": statek matka, punkt celu misji, możliwe, że 1-2 dodatkowe punkty powiązane z zadaniem, między tymi punktami gracz może "skakać" z prędkością zbliżoną do prędkości światła.

Przykładowo: misja rozpoczyna się w pobliżu lotniskowca-bazy na obrzeżach układu, zadaniem eskadry dowodzonej przez gracza jest umożliwienie bezpiecznego dotarcia do lotniskowca transporterów lecących z położonej wewnątrz układu (odległość: 11AU) planety. Misja wyjątkowa pod względem organizacji, gdyż działania prowadzone są daleko od statku-matki. Statki dostępne dla eskadry rozwijają "prędkość skoku" od 0.8c do 2.5c (znajdzie się jakiś sposób na wyjaśnienie lotów FTL ;-) ). Gracz wykonuje skok całą eskadrą do punktu docelowego. I tu zaczyna się właściwa część pomysłu.

Otóż w momencie skoku rendering jest ograniczany (gracz właściwie widzi tylko animację skoku) na czas około 30-45 sekund. W trakcie tego skoku dla statków poruszających się z niskimi (względem c) prędkościami wirtualny upływ czasu, w tym obliczenia dotyczące AI i fizyki wykonywane są (zależnie od prędkości gracza) 5-30 razy częściej niż normalnie (w przeliczeniu na jednostkę czasu). Dodatkowo oczywiście możliwie dużo uproszczeń - gracz i tak nie widzi zachowania AI.

Jakie są tego zastosowania praktyczne? Po pierwsze: gracz ma możliwość wycofania się np. celem przegrupowania. Powinien jednak pamiętać, że kilkudziesięciosekundowy (dla gracza) skok oznacza kilkanaście minut czasu na drobne naprawy i przygotowanie się przez przeciwnika. Różne eventy związane z przebiegiem misji mogą nastąpić w trakcie, gdy gracz skacze między punktami węzłowymi. Druga sprawa: rozszerza to możliwości związane z wyborem statku. Zależnie od preferencji gracz może wybrać statek skaczący szybciej, dzięki czemu uzyska przewagę taktyczną nad przeciwnikiem (w związku z szybkością dotarcia na miejsce akcji - możliwe, że przed pojazdami wroga), natomiast kosztem innych parametrów wyposażenia. Lub też odwrotnie - może wyjść z założenia, że siłą ognia nadrobi kilka minut scenariusza bez jego udziału. Zupełnie inną opcją jest np. wyposażenie jednego skrzydła eskadry w szybsze statki i posłanie ich "przodem" celem zajęcia przeciwnika w czasie, gdy lepiej uzbrojona reszta dopiero dolatuje.

Związana z tym jest jeszcze jedna kwestia: transmisji wiadomości. W związku z ograniczeniami prędkości transmisji (live video między dwoma układami planetarnymi to absurd, nawet wewnątrz układu to lekka przesada) wszelkie rozkazy/komunikaty przesyłane na odległość większą niż 5 sekund świetlnych (liczba orientacyjna, dla gracza to i tak jest "gdzieś", a dokładnie 1.5 miliona kilometrów dalej) mają czas "dotarcia do celu" odpowiedni dla danej prędkości. Efekt praktyczny? Wezwanie posiłków może zająć nawet do 10 minut (około 5 na dotarcie wiadomości i drugie tyle na skok statków), również ostrzeżenie "wczesnego wykrywania" o zbliżającym się wrogu może dotrzeć później niż sam wróg. Wymusza to też na graczu planowanie taktyczne misji - np. wybór odpowiedniego momentu do wezwania bombowców (wezwane za wcześnie spotkają się z aktualnie obecnymi myśliwcami zanim myśliwce gracza zdążą się ich pozbyć, wezwane za późno - mogą trafić na kolejną falę myśliwców). Stwarza to kilka przydatnych możliwości fabularnych (przy układaniu misji), zwłaszcza gdyby komunikację oprzeć nie na falach, a na obiektach.

Załóżmy, że z racji ograniczonej prędkości światła, wszystkie wiadomości na większe odległości są przesyłane za pomocą dron komunikacyjnych - miniaturowych automatów korzystających z typowego dla myśliwców napędu, pozwalającego im przekroczyć kilkukrotnie wartość c w czasie skoku. Drona taka potrzebuje jednak kilka sekund po skoku na zidentyfikowanie jednostek znajdujących się w pobliżu i wysłanie do nich wiadomości; to daje przeciwnikowi możliwość zniszczenia jej zanim nada wiadomość. Daje to spore możliwości - pozwala ograniczyć graczowi ilość komunikatów wysyłanych na dużą odległość (albo dać wybór - więcej rakiet czy więcej wezwań transportera polowego z amunicją ;-) ), opóźniać (mniej lub bardziej celowo) otrzymywanie informacji przez obie strony (przyjmijmy, że sprytny gracz koncentruje się na niszczeniu dron wysyłanych przez przeciwnika po wsparcie - potencjalnie łatwiejsza misja, ale rozsądne AI szybko postara się wyeliminować takiego cwaniaka jak najszybciej), nadaje sens istnieniu jednostki-przekaźnika (gdyby drony mogły podobnie jak statki skakać tylko między wyznaczonymi punktami, gracz musiałby wysłać dronę najpierw do wspomnianego punktu lub trzymać tam jednostkę-przekaźnik, która wiadomość przesłaną "klasycznie" wyśle za pomocą mechanicznego posłańca) - jednostki, którą każda strona stara się chronić.

Co myślicie o takim pomyśle i jego wprowadzeniu do gry? Technicznie nie jest to nic nadzwyczaj skomplikowanego (sprowadza się do jednego, dodatkowego typu obiektów i wykonania kilku eventów bazujących na zasadzie "event E1: tworzy event E2 wywoływany za T czasu od teraz". Pytanie tylko, czy to ma sens, czy ktokolwiek będzie z tego skorzystał i czy nie będzie to bardziej wkurzać niż dodawać uroku grze?

P.S. ten pomysł to mały ukłon w stronę symulacji - idealnym wynikowym produktem byłby shooter z elementami symulatora (jako jeden z takich elementów widzę właśnie dylatację czasu i ograniczenie prędkości).

Offline Lamer

  • Użytkownik
    • www.inwriter.wordpress.com

# Kwiecień 22, 2010, 12:14:37
Jak dla mnie, to jeżeli chciałbym sobie tylko postrzelać w kosmosie, to wszelkie udziwnienia w postaci zabawy z teorią względności Einsteina byłby frustrujące. Jednakże ja jestem tylko lamerem, więc lamię strasznie na każdym kroku, zapewne są nie-lamerzy, którym się takie rozwiązanie szalenie spodoba.

Tak w ogóle to ja podobnie jak i ty mam aspiracje do bycia designerem, więc chciałbym wypowiedzieć się w sprawie mechaniki tych zjawisk. Oczywiście przypominam, że jestem lamerem, ale jeśli ci to pomoże, to byłby fajnie.

Skok czasoprzestrzenny- tunele czasoprzestrzenne nie są jedyną drogą na oddanie takiego skoku, oczywiście pod warunkiem, że trzymamy się ściśle pewnych założeń. Mimo wszystko jednak oddanie takiego skoku wymagałoby zużycia energii większej, niż ta zmagazynowana w naszej galaktyce. Istnieje teoria (chyba Hawking wspominał o niej) według której można rozciągać materię za pomocą jakiegoś oddziaływania, to nie wymaga już kosmicznej ilości energii, ani wytwarzania portu skoku. Wygląda to tak, że rozciągamy przestrzeń przed statkiem w taki sposób, żeby po powrocie przestrzeni do pierwotnego stanu nasz statek był w punkcie docelowym. Takie rozwiązanie nie wymaga żadnego napędu, nie są potrzebne ani silniki, ani nawet wioślarze, po prostu cała operacja rozbija się o modyfikowanie przestrzeni wokół obiektu, podobnie jak Ziemia modyfikuje oddziaływaniem grawitacyjnym przestrzeń w jej obrębie (na Ziemi czas płynie wolniej). Choć niestety to nie jest łatwe, bo wliczając ruch Ziemi po orbicie aż do ruchu gromady lokalnej, mamy aż 14 płaszczyzn ruchu. Wprawdzie zwykłe komputery ze standardowymi bramkami (1,0) nie dałby rady z taką ilością obliczeń, ale gdybyś wykorzystał komputery kubitowe (1-1,0-0). No chyba, że miałbyś pod ręką gwiazdę na Mózg Matrioszka, ale w mojej ocenie komputery kubitowe są bardziej "przenośne".

Transmisja wiadomości- tak w ogóle to nie doceniasz ludzi. Zakładasz, że są w stanie magazynować absurdalne ilości energii na skoki, ale jednocześnie są ograniczeni prędkością światła dla przypadku wystąpienia transmisji danych. Masz tutaj dwie opcje, pierwszą jest kot Schrodingera, czyli generalnie zasada superpozycji, oczywiście mają swoje ograniczenia (prędkość światła jeśli się nie mylę), ale możesz spróbować to nagiąć. Na przykład wymyślić, że stan układu definiowany w chwili nadania wiadomości będzie miał wpływ na jej odczyt w bazie dowództwa, nie wiem na ile to rozsądne i czy gracze tego nie wyśmieją, ale to jest pomysł "na szybko", oczywiście ty możesz posiedzieć nad tym dłużej i wymyślić coś lepszego (nie wiem, jakiś niezwykły stan splątania fotonów- cokolwiek).

Mamy też opcję drugą, czyli cząstek, które poruszałby się wyłącznie z prędkościami większymi od prędkości światła, wprawdzie istnieją hipotetyczne cząstki takie jak Tachion, ale niosą za sobą dziwne konsekwencje (np. nieograniczona prędkość), możesz wymyślić swoje hipotetyczne cząstki, które będą podlegały innym prawom. Możesz też wykorzystać istniejące teorie, tu wszystko zależy od wyobraźni.

***
To na tyle odnośnie twoich pytań, wiem, że to co opisałem pewnie większość z was wyśmieje, jako totalny stek bzdur. Opisałem rozwiązania, które ja bym zastosował, gdybym tworzył właśnie taką grę, zapewne rozwiązań tych problemów jest więcej, musisz tylko zdjąć ograniczenia narzucone przez innych fantastyków, a na pewno stworzysz rzeczy, które będą później wykorzystywane w innych grach/książkach/filmach, życzę powodzenia.

Offline doomtrader

  • Użytkownik

# Maj 01, 2010, 11:26:19
Proponuję odpalić stareńkiego Wing Commandera.