Skocz do zawartości

Ranking


Popularna zawartość

Wyświetla najczęściej polubioną zawartość od 11/10/18 uwzględniając wszystkie działy

  1. 5 punktów
    Jeżeli chodzi o opinię graczy to jeszcze nie trafiłem na to by ktoś pisał jakieś hejty pod grą zrobioną z GMa chyba że jest kiepska. Za to spotkałem się z opiniami o unity że ludzie widząc to logo dają od razu refound na steamie albo innych hejterów który piszą recenzję negatywną i nakłaniają do zmienienia silnika na jakiegoś unreala czy coś zamiast unity. Negatywne opinie o GMie to ja widuję jedynie u jakiś urażonych polaczków pseudo gamedevów którzy nie mogą znieść tego że ktoś robi grę na gotowym silniku zamiast marnować całe życie na nauce wynajdowania koła na nowo tworząc własny silnik. Ale po co się tym przejmować? To nawet nie są gracze i nie twój target.
  2. 4 punkty
    Milion lat tu nie wbijałem, ale co mi tam - mam ochotę się pochwalić:
  3. 3 punkty
    Cześć, Zastanawiam się nad stworzeniem petycji, skierowanej do Marka Overmarsa ( lub kogokolwiek, kto jest teraz szefem GameMakera), dotyczącą zmiany nazwy programu. GameMaker... serio? Rozumiem, że taka nazwa miała sens w 2000 roku w czasach GameMaker 5.0 i gry robiło się tam głównie z klocków... ale teraz jest to narzędzie rozbudowane, z własny językiem programowania, w którym można robić gry zarabiające duży hajs. Ba! Powstają nawet mały firmy developerskie (np. MoaCube), które specjalizują sie w tworzeniu gier w GMS:2, jest to więc narzędzie, z którego korzystają już nie tylko hobbyści ale też i profesjonaliści... a ta nazwa? GameMaker? Nie uważacie że jest to oznaka braku szacunku dla developera, który poświęcił kilka lat na to aby opanować GML? GameMaker brzmi jak jakiś RPG maker, i od razu kojarzy się z jakimś scamem. Zanim ktoś z was stwierdzi, że troluję lub prowokuję, to zastanówmy się nad jedną rzeczą: Czy nie jest tak, że każdy, kto powie w towarzytwie, że stworzył grę w GameMakerze jest traktowany niepoważnie, i to wcale nie dlatego że GMS:2 to program ułomny czy też wybrakowany ( w rzeczywistości ma nawet kilka plusów, których nie ma Unity), ale przez tą nazwę, która jest totalnym nieporozumieniem i jest nieadekwatna do możliwości programu. Czemu GM nie może nazywać się jakoś bardziej normalnie jak Unity czy też Godot? Pozdrawiam, nowy_user
  4. 3 punkty
    Nie ma szefa GameMakera, właścicielem jest spółka PlayTech i skoro nie zmieniła nazwy, to znaczy, że ta jest marketingowo dobra - na pewno robili ankiety na ten temat na jakiejś grupie. Ogólnie się pośmiałem, czas wracać do obowiązków.
  5. 3 punkty
    nie dostalem serduszka, ja tez bym gral jakby co
  6. 3 punkty
    No to się robi Różnie można adresować, to też zależy w którym evencie to robisz. Ogólnie są dwie formy adresowania, pierwsza formą jest adresowanie podając pojedynczą kropkę a druga forma to użycie keyword with W obu przypadkach podajesz nazwę obiektu albo id instancji albo keyword other/self np: obj_mojObiekt.z inst_4DB70D2.z // (w GMS2) (100012).z // (w GMS1 i niżej) other.z self.z za pomocą formy obj_mojObiekt.z odnosisz się do wszystkich instancji o nazwie podanego obiektu, dlatego w tej formie jest to mało użyteczne. Bo gdybyś chciał odczytać zmienną 'z' to odczytałoby ci zmienną z instancji o największym id ze wszystkich obiektów tej nazwy dlatego że GM próbował by kolejno 'zaglądać' do każdej takiej instancji więc nadpisywał by wynik tak długo aż zostanie mu ostatnia i zwróci wartość właśnie tej ostatniej instancji. Ta forma ma większy użytek gdy chcesz zmienić zmienną we wszystkich obiektach tej nazwy jednocześnie np: obj_mojObiekt.z = 100 // i teraz każdy obiekt obj_mojObiekt ma 'z' o wartosci 100 to samo działanie z użyciem with wygląda następująco: with (obj_mojObiekt) { z = 100 } gdybyś jednak chciał użyć with do odczytania zmiennej 'z' to sprawa się komplikuje, zrobiłbyś to na dwa sposoby: // sposób pierwszy var tymczasowaZmienna; with (obj_mojObiekt) { tymczasowaZmienna = z } show_debug_message(tymczasowaZmienna) // konsola wyswietli wartość 'z' // sposób drugi jakasZmiennaLokalna = 0 with (obj_mojObiekt) { other.jakasZmiennaLokalna = z } // przypisałeś wartość zmiennej jakasZmiennaLokalna do wartosci 'z' obiektu obj_mojObiekt Jednak to tylko jest mało użyteczne adresowanie po nazwie obiektu, dużo bardziej użyteczne jest adresowanie bezpośrednio po id instancji ale takie id najpierw trzeba znać. Musisz sobie zwracać uwagę na to jakie funkcje zwracają id instancji, do tych najpopularniejszych należą instance_create(x, y, obj); instance_create_depth(x, y, depth, obj); // tylko dla GMS2 instance_create_layer(x, y, layer_id, obj); // tylko dla GMS2 instance_nearest(x, y, obj); // grupa funkcji z kolizji wykrywania kolizji: collision_*(); // np. collision_circle( x1, y1, rad, obj, prec, notme ); Tak więc, podam kilka praktycznych przykładów: 1. // EVENT STEP var ID; ID = instance_nearest(x, y, obj_skrzynka); show_debug_message(ID.z) // konsola zacznie wyświetlać wartość 'z' skrzynki do której jesteś najbliżej 2. // EVENT STEP var ID; ID = collision_circle( x, y, 128, obj_skrzynka, 0, true ); if (ID != noone) { show_debug_message(ID.z) // konsola zacznie wyświetlać wartość 'z' skrzynki która jest w zasięgu okręgu } /* ten if jest tutaj potrzebny poniważ funkcje collision_* zwracają także keyword noone w przypadku gdy do kolizji nie dojdzie w dodatku gdy w zasięgu jest więcej skrzynek to odczyta wartość z instancji o najwyższym id czyli tego obiektu który ostatni nadpisze zmienną ID*/ 3. // EVENT PRZYCISKU STRZAŁU var ID; ID = instance_create(x, y, obj_bullet); ID.z = z+64; /* nowo utworzona instancja obiektu pocisków: obj_bullet będzie miała na start przypisaną wartość 'z' do wartości 'z' gracza + wysokość gdzie znajduje się pistolet*/ Kolejną najciekawszą sprawą adresowania zmiennych jest użycie keywordu other Jak mogłeś wcześniej zobaczyć, użyłem słówka other wewnątrz with, w tym przypadku other będzie miało wartość id instancji z którego wywołujesz with. Jednak gdyby użyć other w którymś z eventów kolizji to wtedy other przyjmuje wartość id instancji z którą kolizja nastąpiła i tutaj mogę np podać przykład niszczenia się pocisku o ścianę z którą się zderza, będzie to wyglądało tak: // EVENT COLLISION WITH obj_sciana if (z > other.z && z <other.z+other.wysokosc_sciany) { instance_destroy(); }
  7. 2 punkty
    Ja rozumiem, że w 2000 roku ten wstyd był nieco uzasadniony, GameMaker nie oferował wtedy zbyt wiele, a gry tworzyło się z klocków. Wtedy ta nazwa była jak najbardziej na miejscu i nie winię za to Marca Overmarsa, że tak postanowił wtedy nazwać swój produkt. Od tego czasu wiele się zmieniło, możliwości GM'a poszły mocno w górę, GMS ma swój własny język programowania, roszerzeżenia pozwalające pisać skrypty w JS itp. Cena też zresztą mocno podskoczyła. Community urosło, ilość opublikowanych płatnych gier także przyprawia o zawrót głowy. Zmieniło się prawie wszystko... oprócz tej zawstydzającej nazwy. Wyobraźcie sobie, że postanowiliście na jakiś czas zostać indie game developerem i jako narzędzie wybraliście sobie GMS:2 . Prawda jest taka, że jeśli masz odpowiednie umiejętności, wytrwałość, oszczędności i odrobine szczęścia, to możesz nawet zarobić parę $ i utrzymać się przez jakiś czas - przynajmniej jeśli nie masz kredytu ani żony & dzieci. W ten sposób możesz spełnić swoje marzenie o byciu twórcą niezależnych gier i z tego żyć... wszystko pięknie, do czasu... gdy podczas zlotu rodzinnego, twój jajogłowy kuzyn którzy 'przepisuje' jakieś proste kody w bankowej korporacji zapyta Cię, w czym tworzysz te gry. Co mu wtedy odpowiecie aby nie wybuchł ze śmiechu?
  8. 2 punkty
    A byście widzieli jakie oburzenie widziałem jakiś rok temu na chyba 9gagu czy czymś takim, jak ktoś wstawił dowód że hearthstone jest stworzony w Unity :DDD
  9. 2 punkty
    Ale ludzie mają kontakt z mnóstwem bodźców ze świata zewnętrznego których przetwarzanie sprawia, że myślimy w taki charakterystyczny sposób. Jeśli taki "byt" myślałby sobie w abstrakcyjne przestrzeni, bez bodźców ze świata rzeczywistego to zapewne nie za wiele by "wymyślił", albo "myślałby" w zupełnie abstrakcyjny sposób. Ciekawy eksperyment - to na pewno, ale myślę, że skutek byłby zupełnie inny niż byśmy tego chcieli :/
  10. 1 punkt
    DLC powinno być pobieralnym plikiem, wtedy sobie tak od nie odblokują. I najlepiej wtedy w pełnej grze mieć sekretny klucz, oraz wynik hashowania pliku DLC, ale nigdy zawartości DLC - wtedy znalezienie treści tego pliku jest niemal niemożliwe (no, może z tęczowej tablicy przypadkiem by trafili, ale to jest 0,0001% szansy). Oczywiście wtedy jest szansa, że DLC będzie piracone... no i tak to wygląda zawsze.
  11. 1 punkt
    Ma, od chyba początku istnienia. I co to zmienia? Gdyby YYG uważało, że nazwa marketingowo jest zła, zmieniłaby ją przy okazji premiery GMS2 2 lata temu. Ale nie zmieniła, a pamiętaj, że poza YoYoGames siedziała nad tym firma PlayTech, mająca w 2017 roku 800 milionów euro przychodu. Więc tam byle bubki nie pracują - ot chociażby, PlayTech jest firmą dzięki której od 2 dni LOTTO można kupić na komórce, oraz firmą która obsługuje jedyne w polsce legalne kasyno online (tez Totalizatora Sportowego). Tak więc nawet polski rząd korzysta z ich usług (bo właścicielem Totalizatora jest skarb państwa). Twoje osobiste obiekcje mają się nijak, do decyzji panów w garniturkach na górze
  12. 1 punkt
    ja jak najbardziej rozumiem autora tematu, ale faktem jest, że GM to po prostu marka i działa. a że nazwa jest reliktem lat 2000s, no to już taki los
  13. 1 punkt
    Profesjonalne gierki w Unity, gdzie masz licencję, to chyba nie zawierają takiej wprost informacji, że są w Unity i ludzie też o tym nie wiedzą? Czy to czasem nie wina splash-screena, że Unity jest tak postrzegane ? Akurat mało gram na PC, ale znam sporo gierek na PlayStation w Unity i one nie są złe (aczkolwiek złych Sony praktycznie nie dopuszcza, chociaż Black Tiger jakoś przeszedł :P).
  14. 1 punkt
    Może zrobię później GIFora a może nie! W każdym razie śmiga jak złoto i nie było z tym wiele roboty poza dodaniem obsługi padem. Na touchscreenie dało się przejść całość od pierwszego odpalenia.
  15. 1 punkt
    Screena to ja też umiem odpalić, gdzieś mam jeszcze Magi 2 na PSP nawet, pokaż mnie to w ruchu
  16. 1 punkt
  17. 1 punkt
    Wydaje mi się, że już człowiek potrzebuje bodźców z zewnątrz, by mógł o czymkolwiek myśleć i cokolwiek konstruktywnego stworzyć. A przy maszynie jest to jeszcze ważniejsze, bo maszyny same z siebie nie myślą, mogą tylko "sztucznie myśleć" i maszyny póki im czegoś nie rozkażemy (np. w postaci programu) to nie zrobią nic. Więc taki robot potrzebuje co najmniej jednego człowieka, od którego by się uczył wszystkiego i analizował (matematycznie?). Za to drugi pomysł z tymi zmiennymi, wydaje mi się, że to po prostu określenie celów maszyny, których wykonanie nie jest zero-jedynkowe, tj. może coś wykonać w 50% (ale dąży do 100%). Ciekawa byłaby maszyna, która nie wiedziałby jak dojść do jakiegoś "ludzkiego" celu, powoli ucząc się jak to zrobić (ale potrzebowałaby wejścia, tj bodźców). Chyba, że źle zrozumiałem drugą część. Szczególnie to: Mi hormony kojarzą się z nastrojem/motywacją/innymi ludzkimi rzeczami. Generalnie tu też możnaby nieźle poszaleć. Robot mógłby mieć kilka czynników losowych w zachowaniu. Po wykonaniu/powiedzeniu czegoś przy uwzględnieniu losowej zmiennej (np. o marginesie błędu 5% wyniku końcowego) maszyna mogłaby analizować jaki wpływ miało to na otoczenie i co jest git, a co nie jest.
  18. 1 punkt
    Pierwszy Pixel po kilku latach(jeszcze nieskończony), robię go na podstawie Mojej karykatury Adasia: Edit: Chyba koniec, nie chce Mi się już przy tym siedzieć.
  19. 1 punkt
    Tak jest. Całkiem fajnie działa.
  20. 1 punkt
  21. 1 punkt
    Ta gra to.. Puru. Ale tak, ciągle będzie "purowata" jeśli chodzi o historię i nasze zadania. Walka to bardzo podrasowana wersja tego co było w Dragon Quest IX. System walki powstawał prawie rok
  22. 1 punkt
    Fakt, niepotrzebnie wspomniałem o self bo sam go nie użyłem ani razu w życiu Także nim sobie głowy nie zaprzątaj.
  23. 1 punkt
    W większości przypadków self praktycznie Ci się nie przyda, osobiście sam nie stosowałem tego rodzaju odwołania i nie potrafię powiedzieć, do czego byłoby to użyteczne, ponieważ i tak blok kodu jest wykonywany w kontekście self.
  24. 1 punkt
  25. 1 punkt
  26. 1 punkt
    O kij, siema Saus, kopę lat.
  27. 1 punkt
    @LionX Dagger robił grę o kucach, zapewne chodzi o NHFEA, to też muszę przyznać, że styl mógł się skojarzyć
  28. 1 punkt
    Cześć, mi to wygląda na to, że Twój obiekt obj_krew nie ma zmiennej 'z'. Zmienne przeważnie tworzy się w Create Event, bo jest to event, który jest wykonywany wraz z funkcją instance_create i potem te zmienne są dostępne w referencjach na instancję zaraz po jej stworzeniu (np. "other.zmienna = 10", czy "var inst=instance_create(x,y,obj_krew); inst.zmienna = 10"). Artykułów dot. zmiennych na GMClan jest kilka, np. https://gmclan.org/index.php?czytajart=30 , przejrzyj listę artykułów na stronie https://gmclan.org/index.php?artykuly=17 mogą Ci się przydać w zrozumieniu zmiennych, argumentów, funkcji, operacji na nich itd. EDIT: v
  29. 1 punkt
    Nigdy nie robiłem gry o kucach
  30. 1 punkt
    Chłopaki, jak to widzicie?
  31. 1 punkt
    zamiast z napisz other.z (albo o_NazwaObiektu.z)
  32. 1 punkt
    Wyrażenie other jest tak jakby referencją na instancję, także każdy parametr instancji jest dostępny poprzez other.parametr_instancji, polecam przejrzeć dokumentację: https://docs.yoyogames.com/source/dadiospice/002_reference/001_gml language overview/keywords.html
  33. 1 punkt
    Aaaa ja majstruję takie cuś;>
  34. 1 punkt
    Jeżeli używasz tego kodu na obj_pocisk co Ci przesłałem, to ten pocisk nie używa zmiennej direction, dlatego direction zawsze będzie równe 0. Spróbuj odczytać kierunek pocisku od jego zmiennych motion_xyz. Jest to wektor lotu pocisku i można za jego pomocą policzyć wektor normalny w którym kierunku leci pocisk na płaszczyźnie 2D tj.: // normalizujemy wektor 2D motion_xy var motionlen = sqrt(other.motion_x*other.motion_x + other.motion_y*other.motion_y); var xdir = other.motion_x / motionlen; var ydir = other.motion_y / motionlen; // teraz przesuwamy wroga x += xdir * 5; y += ydir * 5;
  35. 1 punkt
    Modeluję sobie postaci a'la Disney/Pixar. Celuję w coś jak modele z gry Spy Party
  36. 1 punkt
    Nigdy się nie wypowiadałem na temat twoich prac bo zwyczajnie nie trafia do mnie ten styl, nie rozmyślałem też nad tym co dana praca ma przedstawiać ale kurde ten autoportret to mi się bardzo podoba, może dlatego że odchodzi trochę od stylu.
  37. 1 punkt
    Coraz bardziej dopieszczone te artworki, podoba mnie się.
  38. 1 punkt
  39. 1 punkt
    Funkcja place_meeting bierze pod uwagę maski obu instancji, maskę obj_pocisk i obj_wrog. Jeszcze istnieje taka funkcja jak position_meeting do sprawdzania kolizji tylko punktowo
  40. 1 punkt
    dzieci neo jezus maryja jak ja dawno tego nie słyszałem od razu czuję się jakieś 7 lat młodszy
  41. 1 punkt
    Masz rację, zdaje Ci się. :P Jeżeli coś z WinXP odpala się na Win98, to jest duża szansa, że i na Win95 się odpali, gdyż Win95 i Win98 są z tej samej linii, więc kompatybilność między sobą zachowują znacznie większą niż wobec WinXP. Natomiast WinXP przecież pochodzi z rodziny systemów NT, więc napisałeś kuriozum. O jakie NT Ci chodziło? Server NT? 2000? Vista? 7? 8? Między systemami NT a 9x są istotne różnice strukturalne. Od kernela zaczynając, na stosie sieciowym kończąc. A to, że stare programy odpalają się często na nowszych systemach, to przecież dlatego, że Microsoft w tym celu gwarantuje jakąś tam kompatybilność wsteczną API. Ba... systemy Windows z serii NT, czyli o historii liczącej ~ półtorej dekady, są między sobą bardziej kompatybilne niż systemy linuksowe z tak dużej rozpiętości czasowej. Ba, często distra są między sobą niekompatybilne - to jest dopiero problem i śmiech na sali. Przy tym Windows wypada świetnie. A o reactosie nie warto rozmawiać, bo ten projekt nie ma szansy nigdy zaistnieć na poważnie. Rozwija się znacznie wolniej niż Windows, więc go nigdy nie dogoni. To nie jest profesjonalny OS. On się nadaje tylko jako zastępcza darmówka Windowsa do prostych zadań. Serio, olej ten system i wróć do Linuksa lub zainteresuj się jakimś poważniejszym projektem alternatywnego OS'a, chociażby Haiku będącego darmową implementacją BeOSa. ReactOS to wynajdowanie na nowo koła, ba... piątego koła u wozu.
  42. 1 punkt
    Fervi Tak czy inaczej muszą ci uwierzyć. A jak coś im nie będzie pasowało no to możesz powiedzieć ,że gra była darmowa do pobrania. A jeżeli będą mieli jakieś zastrzeżenia to już ich problem. Nie mają dowodu ,że to jest pirackie (bo nie jest). Z resztą czego ty się przejmujesz ? LionX Racja nakazu rewizji nie dostaje się na prawo i lewo.
×