Skocz do zawartości
FrozenShade

Skullstone - podziemiowy RPG w starym stylu.

Rekomendowane odpowiedzi

O http://steamspy.com/ słyszałeś? Żadne zliczanie komentarzy, tam jest wszystko i widać co i jak się sprzedaje. I wg tego narzędzia to nawet kompletnie gówniane gry notują jakąś sprzedaż (i zwroty też). Bundle to później, dużo później, jak już Steamowa sprzedaż się wyczerpie. 500 euro mnie nie ucieszy, ja to muszę rozdzielić między cały zespół, to ja większą premię w pracy dostaję niż by mi wyszło zarobku z takiej gry...

Cenę ustalimy na sam koniec, z tego co ja się zdążyłem dowiedzieć to korzystnie jest dać cenę nawet wyższą a potem robić obniżki, bo to zawsze niby jakaś 'okazja'. Temat sprzedaży na pewno będę konsultował z ludźmi, którzy już na Steamie się wystawiali, nie zrobię nic na hurra ani po swojemu. Póki co to kodzę a największe zmartwienie to promocja w mediach, ale już pewna osoba się za to wzięła.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Krótka historia pewnego feature:

Zaczęło się od jedzenia. Nie, nie przyssałem się do lodówki w akcie niemocy twórczej....

Postacie w grze muszą coś jeść, muszą, bo tak sobie kiedyś wymyśliłem. Dawno temu wymyśliłem żeby skopiować rozwiązanie z Dungeon Mastera, ale w miarę prezentowania projektu na forach okazywało się, że ludzie wytykają nam zrzynanie z Grimrocka (lol). Grimrock skopiował mechanikę jedzenia z DMa, gdybym więc i ja skopiował to rozwiązanie to hejterzy zawyli by: jedzenie zostało skopiowane z Grimrocka!!!111

Pomyślałem, popytałem się, ostatecznie wyszło:

- regen hp i mp jest bardzo powolny

- jedzenie przyspiesza regen hp i mp do czasu aż osiągną one odpowiedni poziom.

- jeść można tylko poza walką, w trakcie jedzenia postać porusza się wolniej i nie może atakować.

 

Z powyższych założeń od razu wynika, że jedzenia będzie musiało być dużo. I musi być co najmniej kilka rodzajów żarcia, przyspieszających regen na różne poziomy. Zrypany po walce wojownik/tank ma dostać kawał mięcha który zregeneruje mu 80% hp i 80% mp a mag, który stał z tyłu i wycpykał się z połowy mp ma dostać ziemniaka, który regeneruje odpowiednio mniej...

Będziemy mieli więc 3 podstawowe rodzaje jedzenia: wysokiej jakości, otrzymywane głównie z questów, średniej jakości będące dropem z potworków i niskiej, znajdywane w korytarzach.

Nie popełnię głupoty z Dungeon Mastera, ochoczo i bezmyślnie skopiowanej do Grimrocka, gdzie drużyna bohaterów wędrując po jakiś prastarych lochach znajdywała jadalne chlebki, serki i jabłka... W lochach znajdziemy grzyby, ze 3-4 rodzaje, bo to będzie w miarę sensowne - grzyby lubią takie środowiska. No może jeszcze jakieś porosty. Idziemy sobie więc korytarzem i uskuteczniamy grzybobranie ;)

I w tym momencie aż się prosi, żeby te grzybki jakoś fajnie w tych korytarzach porozkładać. Itemy (bo grzybki były by itemami, jak pochodnie, kamienie, bronie...) są umieszczane w przestrzeni 3D na podstawie kilku parametrów: współrzędne x+y kratki, kierunek (krawędź kratki), przesunięcie (lewo/prawo) względem środka krawędzi kratki. Chodzi o to, żeby gracz nie położył itema w miejscu, z którego nie będzie mógł go podnieść, żeby uprościć do maksimum obsługę położenia itemka, podnoszenia (testy, czy można podnieść), nie korzystać z fizyki podczas rzucania itemów. Lecący item ma pozycję startu, czas startu i zasięg a jego pozycja w danej chwili to zwykłe f(t). Kolizji nie ma, przy przejsciu z jednej kratki na drugą jest wykonywany test, czy kratka jest pusta, czy są zamknięte drzwi, czy może item ma zadać damage drużynie/potworowi. Opadający item ląduje zawsze na krawędzi kratki, jego opis (x,y, kierunek, przesunięcie) pozwoli w każdej chwili na odtworzenie jego położenia. Wszystko pięknie, działa idealnie a w warstwie logiki pozwalało na bardzo sprawne wyliczanie wszystkiego, co nam było potrzebne....

Tylko, że grzybki mogły by rosnąć na ścianach.... Było by to takie fajne urozmaicenie, a i w Grimrocku takich rzeczy nie było ;)

Wymyśliłem więc, że Item może mieć 'overridowaną' pozycję. Tzn jego x,y,kierunek i przesunięcie nadal były by używane do testów dostępności danego itemka (żeby nie podnosić przez zamknięte drzwi albo z odległości kilku kratek), ale na scenie 3D item pojawiał by się w customizowanej pozycji. Przyklejony gdzieś do ściany na przykład... Bardzo łatwo coś takiego zrobić z poziomu edytora, wystarczy pobrać punkt przecięcia promienia ustawianego kursorem myszy z pierwszą napotkaną geometrią (ścianą).

untitled00449.png

 

Ale ale... w grze mamy jeszcze coś takiego jak dekoracje - nie tylko naścienne drobiazgi typu pajęczyna, ale też całkowicie przerobione ściany - w zamyśle wnęki z gratami, posągami, ołtarzami... A co, gdyby tam teraz ukrywać jakieś przedmioty?

untitled00450.png

No, kto znajdzie? Młotek, pochodnia i nóż zostały ukryte pomiędzy nieoteksturowanymi beczkami. Takich cudów nie ma w Grimrocku.

 

Takim oto sposobem opracowanie nowego sposobu odżywiania się postaci doprowadziło do całkiem fajnego urozmaicenia samej gry.

 

Edytowane przez FrozenShade

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Wystartowała strona internetowa: http://skullstonegame.com

Bez wodotrysków, na głupim wordpressie bo nikomu się nie chciało być pro webmasterem, a tym bardziej mi, bo nienawidzę webówki. Najważniejsza i tak jest dla nas podstrona /press

 

Ajjj, skleiło mi posty....

Komiks promujący łażenie po podziemiach...

skullstone_komiks_3.jpg

Edytowane przez FrozenShade

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Te steki to ze smoka czy takiej naprawdę dużej krowy? :D A jedzenie flaków potworów daje jakieś negatywne efekty? Np. zatrucie, chorobę czy osłabienie kondycji/many?

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Nie wiem z czego grafik robił te steki, ale oprócz tapetowania można by nimi zakrywać dziury-pułapki w podłodze lub używać jako tarczy. Myślę też o zjeżdżaniu na nich ze schodów.

Flaki to flaki, skoro je znaleźliśmy i są 'consumable' to będzie można je zjeść bez żadnego ryzyka. Już nie przesadzajmy. Są po prostu zaplanowane jako kolejne źródło pożywienia dla postaci - o żarcie będzie trochę trudno, żarcie to jedyny sposób na regenerowanie sił naszych bohaterów, ponieważ naturalny regen jest strasznie powolny i zostaje tylko na awaryjne sytuacje.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Któregoś pięknego dnia zrobię ładny wpis na temat multilanguage, na razie screen z dowodem, że działa i kawałek xmla. Niektórym samo to powinno wystarczyć do zrozumienia koncepcji.

multilang2.PNG

 

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Co jest złego w XMLu? Czytelny, szybko się pisze z palca i czyta w kodzie. Trzymam w tym, oprócz słownika, cała bazę itemów, questów, specyfikacje mobów i coś tam jeszcze.

Temat może i nie jest skomplikowany, takie coś da się zrobić na co najmniej kilka sposobów, z czego nie wszystkie jednak są dobre... Widywałem też rozwiązania tak złe, że samo patrzenie bolało....

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

XML w sumie jest dość przestarzały. Bardzo dużo programistów od niego już odchodzi na rzecz... JSON ;p Którego sam bardzo nie lubię (jest to twór tworzony specjalnie pod JavaScript, więc po co ruszać go z jego naturalnego habitatu?) dlatego gdy robię coś w C# co wymaga zapisu danych używam Protocol Buffers od Google (Ponoć technologia jeszcze od JSON). https://developers.google.com/protocol-buffers/docs/overview Na tym etapie projektu zapewne nie warto już tego zmieniać, ale obczaj sobie, może w przyszłym zastosujesz. 

Edytowane przez Danieo

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Nigdy nie przepadałem za XMLem. Od dawna wszelkie dane konfiguracyjne trzymam w YAMLu - dużo bardziej czytelnym i prostszym formacie. 

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

XML i JSON to to samo, mogą nieść te same dane, różnią się tylko wyglądem. JSON jest natywny dla JS, jego przewaga nad XML jest taka, że JSON zawierający te same dane co XML jest krótszy, co może się jeszcze gdzieś liczyć. Z drugiej strony XML zawierający te same dane co JSON jest dłuższy, ale bardziej czytelny - a o to w tym momencie chodzi, o czytelność dla człowieka.

 

Ja mógł bym sobie wpakować to wszystko w SQLite albo upakować binarnie we własnym formacie... ale PO CO? Podstawa to łatwy dostęp zarówno z poziomu programu (który wczyta i tak wszystko na raz przy starcie, narzut czasu mnie nie interesuje, poza tym przy tej ilości danych jest on pomijalny) i łatwość edycji używając nawet głupiego notatnika.

 

EDIT: co do YAMLa - do dziś mam ból głowy jak przypomnę sobie Pythona, gdzie wcięcia definiowały bloki kodu. Podziękuję.

 

EDIT2: jak by na to nie patrzeć, plik jest tylko nośnikiem danych. Po wczytaniu z niego danych staje sie abstrakcją. 'Esencja' multilanga jest piętro wyżej.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się


  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników, przeglądających tę stronę.

×