Co ten Rave znów wyrabia?...

Tematy różne, różniste.
ODPOWIEDZ
Awatar użytkownika
Rave

Golden Forki 2010 - Dema (miejsce 2)
Posty: 2041
Rejestracja: 15 kwie 2009, 21:33
Lokalizacja: '; DROP TABLE 'Messages'

Co ten Rave znów wyrabia?...

Post autor: Rave »

Tajny projekt, nie mówcie nikomu ;):
Obrazek

W sumie nie wiem czy nie powinienem tego dać do Sceny, no ale najwyżej Michu czy Jazz przeniesie.

Powód dla którego to robię to głównie żeby się sprawdzić, jako hobby - no a jeśli coś z tego wyjdzie to fajnie. Używam Mono, więc będzie to zgodne z Linuksem, OSX i Windą. Runtime (Game.exe ;)) będzie napisany w oparciu o Monogame, a edytor jest pisany z użyciem Gtk#.

Tak jak mówiłem, nie wiem czy mi się uda, więc się tego nie spodziewajcie za szybko (czy w ogóle), ale jeśli mi wyjdzie, to edytor będzie oparty o GPL, natomiast Runtime gry w oparciu albo o MIT albo BSD, aby umożliwić sprzedaż gotowych projektów. Na pierwszy rzut idą edytor map (do 99 warstw) oraz proste eventy. Potem zajmę się wstępną implementacją silnika. Wersja 1.0 będzie gdy program osiągnie funkcjonalność porównywalną z RM 2000 (oprócz nobrainerów typu więcej warstw czy obsługa grafiki 32bit), natomiast na późniejszy okres planuję poniższe funkcje:

- Edytor drzewek dialogowych podobny nieco do tego jak działa Twine. Standardowa funkcja wiadomości pozostanie podobnie jak Pokaż Wybór, po prostu owy edytor pozwoli uniknąć bólu głowy zarówno przy tłumaczeniu gry (drzewka dialogowe będą w bazie danych, na podobnej zasadzie co typowe zdarzenia) jak i debugowaniu eventów (bo trzeba często przebić się przez setki wiadomości, szczególnie w cutscenkach, więc jak coś nie działa jak trzeba...).
- Skrypty (prawdopodobnie używając Lua)
- Obsługa wielu języków (aby przetłumaczyć na angielski oraz inne)
- Eksport do html5.
- Inteligentne wsadzanie RTP w eksporcie. Program przeskanuje eventy i bazę danych i zapisze w projekcie tylko te zasoby które były użyte, dodatkowo wyczyści bazę danych ze wszelkich odwołań do zasobów które nie są użyte we właściwej grze. Czyli np. w bazie danych jest potwór, powiedzmy Żubr używający obrazu Żubr.png, który jest używany w grupie potworów Stwory Leśne, ale owa grupa nie jest nigdy wywoływana w grze (ani przez zdarzenie rozpocznij walkę, ani przez losowe), to eksporter wywali grupę Stwory Leśne, wywali potwora Żubr i wywali plik Żubr.png.
Awatar użytkownika
GameBoy

Golden Forki 2009 - Pełne Wersje (miejsce 1); Puchar Ligi Mapperów II (zwycięstwo); TA Sprite Contest 6 (miejsce 3)(miejsce 3)
Posty: 1769
Rejestracja: 11 lip 2009, 13:47
Lokalizacja: Wieluń

Re: Co ten Rave znów wyrabia?...

Post autor: GameBoy »

Masz coś poza wczytaniem grafiki tilesetu? =)

Ciężko tu cokolwiek o tym napisać, więc powiem tylko, że dialogi jako drzewka jak w Twine to naprawdę świetny pomysł.
Awatar użytkownika
Rahim
Posty: 1380
Rejestracja: 10 gru 2012, 09:03
Lokalizacja: Zülpich

Re: Co ten Rave znów wyrabia?...

Post autor: Rahim »

A jednak ;d Zycze powodzenia i widze ze sie udalo za to zabrac ;) jak bedzie wygladac sekwencja animacji charsetow?
simple
Posty: 16
Rejestracja: 05 gru 2014, 13:59

Re: Co ten Rave znów wyrabia?...

Post autor: simple »

Tez planowalem sobie rpgmakera zrobic.
Z tym ze dzialal by na troche innych zasadach.
Mianowicie w rpgmakerze sa tile co sie wklada w odpowiedni grid,
przez to mapa wyglada tak czasem kwadratowo.
U mnie byloby tak ze tworzy sie mape na podobnych zasadach co Unity2D
bez gridow,tilow i innych badziewi tylko same sprite'y z przedtem ustawionym przez uzytkownika pivotem.
Sprity by dalo sie wrzucic byle gdzie. tez bylyby warstwy i sortowanie sprite'ow (od gory do dolu).
Nie trza było by wtedy tak jak do tej pory wrzucac gorna czesc sprite na top-layer a dolna sprite na bottom-layer
by odpowiednio zakrywalo. Wszystko by poprostu sortowalo odpowiednio w jednej warstwie.
Latwo tez dzieki takiemu systemowi zrobic gre izometrycza (z odpowiednim zakrywaniem).

Do kolizji uzyc box2d. Ustawiac kolizje na mapie dzieki b2PolygonShape.

A skrypty zamiast ruby czy lua uzyc gamemonkey podobne do lua,
ale prosciej da sie zaimplementowac wiele rzeczy latwiej niz w lua.
Ostatnio zmieniony 07 lis 2015, 11:43 przez simple, łącznie zmieniany 1 raz.
Awatar użytkownika
GameBoy

Golden Forki 2009 - Pełne Wersje (miejsce 1); Puchar Ligi Mapperów II (zwycięstwo); TA Sprite Contest 6 (miejsce 3)(miejsce 3)
Posty: 1769
Rejestracja: 11 lip 2009, 13:47
Lokalizacja: Wieluń

Re: Co ten Rave znów wyrabia?...

Post autor: GameBoy »

U mnie byloby tak ze tworzy sie mape na podobnych zasadach co Unity2D
bez gridow,tilow i innych badziewi
Wbrew pozorom (?) siatka ogromnie ułatwia, usprawnia i przyśpiesza budowanie map.
Awatar użytkownika
Rave

Golden Forki 2010 - Dema (miejsce 2)
Posty: 2041
Rejestracja: 15 kwie 2009, 21:33
Lokalizacja: '; DROP TABLE 'Messages'

Re: Co ten Rave znów wyrabia?...

Post autor: Rave »

Ozzaku pisze:A jednak ;d Zycze powodzenia i widze ze sie udalo za to zabrac ;) jak bedzie wygladac sekwencja animacji charsetow?
Na takiej zasadzie jak w XP, z tym że wszędzie gdzie się będzie charset wybierało będzie można ustawić ilość klatek na kierunek (wartość domyślna 4) więc będzie można robić charsety z dowolną ilością klatek animacji.

//edit: Na tym screenie tego nie widać, ale to nie tylko wyświetlanie tilesetu, można tile wybierać (na razie pojedyncze ponieważ najpierw chcę ogarnąć podstawowe edytowanie mapy, potem się będę brał za wybieranie kilku tili na raz, np. całego drzewka).

Nie wiem czy jeszcze GreyInvidia nas odwiedza, ale gdy już program będzie funkcjonalny, chciałbym żeby ogarnął RTP.

Trochę więcej o zasobach:

Tilesety będą mogły mieć dowolne rozmiary (zarówno szerokość jak i wysokość). Na razie rozmiar tile jest ustawiony "na twardo" na 32x32, ale będzie można to zmienić w ustawieniach tilesetu.

Co do autotili to nie wiem jak je ugryźć. Chciałbym użyć formatu z XP, jednak nie potrafię zakodować ich obsługi. Pierwsza wersja nie będzie więc ich obsługiwać, może któryś z kontrybutorów będzie umiał napisać ich obsługę. Na każdej mapie będą dostępne wszystkie autotilesy z projektu (będą mieć osobną kartę)+1 tileset.

Audio to będzie OGG (bez obsługi tagów LOOPSTART/LOOPLENGTH, chyba że MonoGame będzie to obsługiwać "by default") i modułki (prawdopodobnie użyję libmodplug która obsługuje wiele formatów, w tym niektóre dość dziwne).

Co do kolizji, to będzie je można ustawiać zarówno w bazie danych jak i na mapie (tym drugim nie trzeba się przejmować, to się przyda jak np. będziesz chciał zrobić mapę opartą o panoramy czy przy ustawianiu "sekretów" które aby się dostać do nich wymagają wejścia na tile które normalnie jest nie do wejścia, domyślna kolizja będzie ustawiana po zmianie tila na kolizję z bazy).

Jeśli mi się uda, to polska scena (a z dodaniem opcji lokalizacyjnych będzie i zagraniczna) mieć otwartą i legalną alternatywę która nie ssie (jak powiedzmy RPGToolkit, jak się go obsługuje, I don't even) i która naprawdę działa (Open RPG Maker ma autora-idiotę który za dużo się bawi i zamiast udostępnić źródła tego co ma z silnika to odmawia pomocy co spowoduje że OpenRM będzie wydany na długo po wydaniu HL3).

No ale zobaczymy. @Jazz, jak się projekt rozwinie (broń Boże nie teraz!), można liczyć na dział dla tego programu?
Awatar użytkownika
pakitos
Posty: 151
Rejestracja: 26 sie 2009, 08:15
Lokalizacja: kraina sera

Re: Co ten Rave znów wyrabia?...

Post autor: pakitos »

Może coś z tego się przyda?
http://www.saltgames.com/2010/a-bitwise ... -tilemaps/
http://www.codeproject.com/Articles/106 ... n-a-Tile-M
Swoją drogą też kiedyś myślałem o zrobieniu podróbki RM ;) Powodzenia.
co
Awatar użytkownika
Hyster
Posty: 74
Rejestracja: 02 paź 2006, 13:24
Kontakt:

Re: Co ten Rave znów wyrabia?...

Post autor: Hyster »

A może na początek kontrybucje dla istniejących, open-sourceowych silników?
https://github.com/showcases/game-engines

Można przyjrzeć się jak to wygląd w praktyce, nieco poćwiczyć, a przy okazji przyszłym pracodawcom podajesz linka to swojego profila na githubie i od razu Cię biorą :D

Myślę, żeby zacząć kodzić coś w godocie, ale to trzeba się dobrze wczuć w open-source'owy projekt :D
Awatar użytkownika
Rave

Golden Forki 2010 - Dema (miejsce 2)
Posty: 2041
Rejestracja: 15 kwie 2009, 21:33
Lokalizacja: '; DROP TABLE 'Messages'

Re: Co ten Rave znów wyrabia?...

Post autor: Rave »

Ogarniałem open-source'owe silniki, ale poza czystymi frameworkami (allegro, sdl, sfml, monogame) żadne nie spełniają wymagań do zrobienia części "silnikowej" klona rm, a z drugiej strony czyste frameworki posiadają wszystkie funkcjonalności. Ja jestem w stanie to zrobić, tylko to zajmie czas. Jednak pierwszy działający kod wyląduje na bitbuckecie (jestem uczulony na gita i wolę mercurial), żeby inni mogli kontrybuować. Tak jak mówiłem, edytor będzie oparty o GPL, a silnik najprawdopodobniej albo mit/x11 albo bsd.

Na razie jednak projekt jest zapauzowany bo mam własną grę w Unity którą mam zamiar sprzedawać, ale raczej nie będzie problemów ze zrobieniem edytora i silnika. Największe problemy przewiduję z edytorem mapy, reszta powinna pójść gładko bo już podobne rzeczy robiłem (np. moje doświadczenie z rysowaniem wykresów "w kodzie" mogę użyć do robienia wykresów statystyk).
ODPOWIEDZ