Skocz do zawartości

Ranmus

Filar Społeczności
  • Postów

    3 205
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    4

Treść opublikowana przez Ranmus

  1. Nie my tylko ja, a po drugie nie zrobiłeś gmclan'owy tylko jak pamiętam game makerowy i pytania były w większości o gmclan i o ciebie.
  2. O właśnie, może ja na szybko zrobię quiz gmclanowy. :)
  3. Ciulowy ten quiz. Odpowiedziałem na wszystkie pytania, potem pokazał się napis, że to już koniec i ... to wszystko. A gdzie wyniki? :/
  4. No i prawdopodobnie po sztucznej inteligencji... :/ https://gmclan.org/up1_6_xxx.html Jeśli wyłączę debugger i nie będzie wyświetlana mapa wzroku, namierzanie i priorytety obiektów, to to ma szybkość aż 180 fps'ów. A mam dopiero proste chodzenie. Trzeba jeszcze wziąść pod uwagę, że musi zostać coś na resztę gry. Jednak jedynym ratunkiem dla tego przykłądu jest konwersja na dll. Samo przerzucenie skryptu kolizji punktu i trojkata przyspieszylo do 250 fps, wiec jakbym przerzucil wyszukiwanie, priorytetowanie, pamiec i grupy na dll, to by bylo idealnie. :) Jednak jest jeden zasadniczy klopot. Jak przeniesc mape kolizji room'a do dll'a? Nie da sie. Wyrysowanie mapy kolizji do surface na poczatku rooma, potem zapis do bmp i odczyt w dll odpada - GM nie zapisuje duzych plansz a np. 4000x4000 zajmuje 65MB. Mozna tez zrobic odczyt wszystkich sprite'ow spoza gry, np. z zipa. Wtedy w dll musze odzwierciedlic silnik graficzny GM'a - odpada, za duzo z tym roboty. Ma ktos jakies pomysly? Chyba, ze napiszemy petycje do Marka Overmarsa, by w koncu wydal nowa wersje GM'a i dorobil obsluge wskaznikow dla zaawansowanych uzytkownikow. Wtedy wszystkie klopoty zwiazane z wolnoscia GM znikna. :) Ma ktos jakies wiesci czy i z jakimi zmianami szykuje sie nowa wersja GM?
  5. Ranmus

    Co to za gra?

    Terminal Velocity
  6. Włączyłem kanał RSS dla forum, dzięki czemu jak ktoś korzysta z czytnika, to będzie informowany o nowościach. Kanał ma pojemność najnowszych 20 tytułów, tak więc śledzącym na bieżąco nic nie powinno umknąć.
  7. Gra na parę kliknięć, mało trochę tego. I nie zrobiłeś limitu szybkości animacji tym niedźwiedziom.
  8. $plik = file_get_contents( "plik" ); if ( strpos( $plik, "fraza" ) === false ) { nie znaleziono... } else { znaleziono... }
  9. Dobra, zagrałem i przeszedłem całą grę. Ciekawa koncepcja fabuły, ale przyznam się, że na początku nie zważałem co ludziki mówią. Grafika bardzo fajna, dużo krwi itd. Widać, że lubisz takie psycho gierki. :) Może byś wysłał ją na gry.o2.pl albo na gry.wp.pl,, ponieważ oni czasem umieszczają np. gry amatorskie buziola, więc i twoje mogliby, czemu nie. :) Teraz czas na błędziki bo się ich nie ustrzegłeś: 1) Gracz może wskakiwać na boczne krawędzie planszy. 2) Ostatnie plansze chyba były robione jako pierwsze, ponieważ czcionka się nie zgadza, jest brzydsza, a i jak idę do tego rasta szefa, to mogę wskakiwać na ludzi. Gierka bardzo dobra, warto w nią zagrać, szkoda tylko, że na jeden raz. No to kiedy robisz coś w stylu Resident Evil lub Silent Hill? :]
  10. Jakbyś mógł Propaganja, to spróbuj wciskać gry na uploader naszej strony, bo potem jak będę za jakiś czas dodawał różne zasoby do strony, to bym chciał już mieć te gry pod ręką. :P
  11. Ranmus

    Co to za gra?

    BP: To jest screen z gry na PC? TO chyba jakaś podróbka Super Mario 64 na Nintendo 64, podobny zameczek, drzewa i w ogóle. :)
  12. 1) Narzędzia -> Opcje -> ikona Prywatność -> Wyczyść teraz pamięć podręczną 2) Odśwież stronę. Też raz tak miałem w FF 1.5 i zwykłe odświeżanie nieskutkowało, a gołym okiem widać, że przeglądarka nie odczytała szablonu css z pliku.
  13. Wiesz, już wcześniej byś znał odpowiedź gdybyś dokładniej przeanalizował kod goomana. :]
  14. Buziol aka Retrogradus: 1) RM_HTTP 2) G-JAVA Swoją drogą nie musiałeś zakładać nowego konta.
  15. Nie czego tylko czemu. Poza tym mi działa, ale nie lubię stosować write_ini_real, ponieważ zapisuje zamiast 1 to 1.00000000 czy jakoś tak, a ja z reguły nie potrzebuje takich liczb rzeczywistych, więc zawsze zamieniam na string, a potem zapisuję.
  16. To zastap funkcje na write_ini_string i argument daj string(1)
  17. 1) Nie przerzucam na dll, bo to nie ma sensu aktualnie gdyż, to co zyskam na szybkości, to stracę na wywoływaniu i przetwarzaniu danych zwrotnych. GM nie jest jest do takich rzeczy przystosowany, ponieważ nie obsługuje wskaźników na struktury dla zewnętrznych języków programowania. Wtedy to by miało sens i zrobiło z GM'a potęgę. 2) Silnik działa pod GM 6.1, bo pod nim go robię. 3) Tak, zrobię przykład, ale na razie go "robię". :) Mam już zaimplementowany wzrok, namierzanie i prosciutkie chodzenie na testy. Siedzę teraz nad priorytetowaniem przeciwników (jeżeli wróg widzi dwóch graczy, to kim ma się zająć i co zrobić). A potem biorę się za algorytm ruchu. W między czasie przerzucam na alarmy skrypty wyboru broni (bo od jej zasiegu zalezy podchodzenie) oraz reakcje na widok gracza, tak aby te skrypty nie musialy byc wykonywane co step lecz np. co 5, odciazajac lekko system. Broni, strzelania czy energii jako takich implementowac nie bede, bo nie mam na to checi i czasu (procz zasiegu, amunicji i mocy czyli czynnikow, od ktorych moze zalezec akcja wroga). 4) Co do zamulania, to o jakim komputerze mowa? :) Sprawdzam dzialanie na 3 wrogach i 2 graczach. Gdy juz bedzie cos naprawde sensownego, to sie zrobi stres testy. Poza tym jak napisalem w pkt. 3, bedzie troche zmiennych do okreslania czestotliwosci wykonywania danego skryptu. Poza tym jak na tym silniku ktos planuje zrobic gre np. dla jednego gracza, to moze wyciac troche kodu, np. liste widocznych przeciwnikow itd. Pomysle nad dodatkowa wersja "lite". :) Na razie robie takie cos, ze kazdy wrog zapisuje sobie priorytetowanego przeciwnika, na ktorym wywoluje jakas akcje, liste widzianych innych przeciwnikow oraz liste zapamietanych przeciwnikow (np. gdy sie znajdziesz w jego zasiegu wzroku, to on podazy za soba i jak go zgubisz, a on nie znajdzie cie tam gdzie ostatnim razem cie widzial - po rozejrzeniu sie -, to i tak ma juz ciebie zapamietanego w specjalnej liscie. Wprowadzilem to dlatego, by wlasnie np. ustalac grupy akcji. Np. gracz1 ma grupe 5 czyli jak go znajda, to zabija, a gracz2 ma grupe akcji 3 czyli jak go zauwaza to ma nie podchodzic. Jezeli gracz2 jednak podejdzie, to gracz2 dla wroga, ktory go obserwuje, stanie obiektem z grupy5 i tak go zapamieta. Wiec jak gracz2 zwieje i zgubi wroga, a potem znowu powroci, to worg juz sie nie bedzie cackal, tylko od razu strzelal czy gonil ( zalezy jakiego zasiegu ma bron) ). Poza tym jak niczego nie spieprze w miedzyczasie, to listy przeciwnikow moga pozwolic na ewentualna modyfikacje silnika by mozna bylo np. ustalic 3 grupy komputerowych przeciwnikow. Ale tego akurat nie obiecuje i zobaczy sie co wyjdzie. :]
  18. Nie przerzucam nic do dll'i, więc im mniej wrogów na planszy tym lepiej. ;P
  19. Jak masz zarejestrowanego to po co się pytasz? :) Tak, będzie tylko dla wersji zarejestrowanych, ponieważ silnik wykorzystuje wbudowany pathfinding, typy strukturalne takie jak listy czy mapy oraz kolizje liniowe. Od biedy można zrobić i dla wersji niezarejestrowanych, ale za dużo roboty a i GM nie wytrzymałby gdyby mu podać w skrypcie algorytm pathfingingu (na dużych mapach wyszukiwanie trwa kilkanaście sekund, a to ma być wyliczone w ułamku sekundy).
  20. Pewnie w GM zmienna liczbowa jest taka jak typ integer w delphi czyli od -2,147,483,648 do 2,147,483,647. Niestety Nie obsługuje on typu int64, bigint czy jak to się tam nazywa, więc albo zmniejszysz wartości liczbowe albo jakoś zasymulujesz wielkie liczby poprzez dwie składowe zmienne.
×
×
  • Dodaj nową pozycję...