Skocz do zawartości

Sutikku

Użytkownicy
  • Postów

    738
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    5

Treść opublikowana przez Sutikku

  1. Sutikku

    Pixel Friends

    Fajnie jest, tylko pytanie czy split screen nie byłby lepszy, zamiast zmiany postaci. Wygodniej by się grało ze znajomymi. Duży plus, że postacie nie przyklejają się do bloków w trakcie skoku, co ostatnio widuję w każdej gmowej platformówce. Minus taki, że gra jest szybko nudząca, grając samemu i nie ma tak szczerze nic, co by wyróżniało tę grę, od pierdyliarda innych tego typu gier.
  2. Mogłeś to zrobić tak, że te piksele są ruchome. I nawet mogłyby mówić jakieś kwestie, krzyczeć, czy coś. I uciekać od kursora. Piksele to by były takie żyjące stworzonka które maltretujemy :) I żeby nie było zbyt łatwo, któreś z tych pikseli, byłyby fake-pikselami i były kółeczkami, więc trzeba uważać, żeby nie kliknąć tego. Jakoś mi szczególnie nie podeszło.
  3. Chodziło mi o to, że z tym instance_nearest() i place_meeting() byłyby problemy.
  4. Przy dużej liczbie obiektów, które są atakowane, to podejrzewam, że na moim złomku wywołałoby spadek fps.
  5. Ewentualnie. Jeśli będziesz to miał w kodzie kolizji z pociskiem, daj with(other)
  6. Sutikku

    DORG

    Aż mnie przestraszyłeś, idę robić kopię zapasową. Ja też odzyskałem wiele plików dzięki tego typu programom. O ile nic nie instalowałeś, to się dało odzyskać.
  7. Niech będzie później. Nie widzę problemu, jakiegoś wielkiego.
  8. Hmm. Bo, generalnie, zamiast wysyłać swoje pozycję co ruch, przewiduje się ruchy. W przykładzie networkingu dołączonego do gms, wysyłane są informacje o wciśnięciu klawisza. A serwer oblicza o ile ma nasz pan (ew. pani) się przesunąć. Dlatego też jak najwięcej serwer powinien ogarniać.
  9. To może błąd GMa który w złym miejscu Ci błąd pokazuje?
  10. Ja pamiętam, że kiedy wywoływałem funkcje właśnie instance_exists(), variable_exists(), wywalało błędy, jeśli obiektu nie było. Gdzieś kiedyś znalazłem coś takiego: if( string( ds_map_find_value( mapa, "wartosc" ) ) == "0" ) Ale to tylko gdybyś potrzebował czegoś takiego na gwałt. I nawet nie wiem czy to nadal działa. A tak teoretycznie, czy jego index się może nagle zmienić?
  11. Ja z takimi ruchomymi obiektami, też miałem listę. A u graczy to już jako obiekty. Tylko, że u mnie to były stworki które się od czasu do czasu pojawiały. Przy pojawianiu wysyłałem informację, gdzie się pojawia i ID tego stworka na serwerze. Jakoś tak GML var iid=nastepne_id_w_kolei var global.npc[iid]=instance_create(random(1024), random(1024, obj_npc); czyszcze_bufor(); wysłanie_short(1); wysłanie_int(iid); wysłanie_int(global.npc[iid].x); wysłanie_int(global.npc[iid].y); Gdzieś czytałem, że powinno się wszystko obliczać itd. na serwerze, ale ja zadawane obrażenia, po prostu wysyłałem do serwera (przypominam, że się ponoć nie powinno tak robić, zależy w sumie). Wysyłałem wtedy ID npc który został uderzony, a przy odbieraniu, wysyłałem informację do reszty graczy z serwera, że ten npc został uderzony, więc u nich ten NPC z tym ID straci to HP. A właśnie. Ja na serwerze lubiłem robić obiekty, bo z serwera miałem podgląd na to, co się dzieje w grze. Zamiast tego możesz zrobić tablicę dwuwymiarową oczywiście.
  12. To ja tylko dodam od siebie, że z średnikami wszystko ładniej wygląda. A tak to bym sprawdził czy zadziała jak tak zrobisz GML image_index=0; image_speed=cd1anim; atakuje=1; strzela=1; kol=instance_create(x,y,nic); with(kol) { sprite_index=k1; image_speed=image_speed; image_xscale=image_xscale; atak=a1+a1*da; sz=0; stun=0; o=0; typ=cd1typ; pan=id; } Przyznam się, że nie pamiętam jak zadziała takie image_speed=image_speed. Czy przypiszę wartość gracza, czy kol. Ewentualnie self dodaj ;x Bo wychodzi na to, że we wcześniejszych przypisaniach, wszystko działa.
  13. Robiłem parę gier multiplayer, żeby z kolegami pograć (ale na 39dll). Miałem to zorganizowane tak. Po wejściu na serwer dostajemy od serwera ID, a pod naszym ID w tablicy globalnej player, był socket, czy jak się to tam zwało. Informacje wysyłałem tak GML czyszczę_bufer(); short_wysłanie(0); int_wysłanie(moje_id); int_wysłanie(x); int_wysłanie(y); //short i int, w sensie, że różne te wielkości. Mam nadzieję, że wiesz co mam na myśli, bo nie wiem jak to powiedzieć</span> A odbierałem w ten sposób GML switch( odebranie(short) ) { case 0: var i_id=odebranie(int); global.player[i_id].x=odebranie(int); global.player[i_id].y=odebranie[int); break; } Zrobiłem sobie kiedyś skrypt który wyglądał tak: wysłanie(naglowek_wiadomosci, wiad1, wiad2, wiad3); A ogólnie to sprawdzałem ilość podanych argumentów i wtedy dopiero odbierałem je, bo były problemy. Mi tam taki sposób wysyłania i odbierania informacji bardzo pasował ;3
  14. gracz jest obiektem czy przypisujesz sobie gracz = obj_gracz; ?
  15. Sutikku

    Dyskusja

    Jak dla mnie lepszy. Przyzwyczaiłem się, że Twój avatar ma dwie klatki, to jakoś dam radę. Bo Chella to ni ciula spamiętać nie mogę ;v
  16. Chyba musisz zmienić kod rysowania surface GML draw_surface_ext(sLightMap,0,0,view_xview, view_yview,0,c_white,1); Ej, ale ja mogę walić jakimiś głupotami czasem.
  17. Chodzi o to o ile się nie mylę GML sLightMap = surface_create(room_width / downsample, room_height / downsample) Zmień to na GML sLightMap = surface_create(view_wview, view_hview)
  18. Weź spróbuj wkleić ten kod ale w with(other) {...} w obiekcie z którym kolidujesz.
  19. Samo instance_create(), nie może sprawiać problemów. A gdzie masz ten kod wpisany? Dodatkowo używaj alarmu, żeby nie spamiło tworzeniem instancji. Ja to zawsze robię w ten sposób. Robię specjalny alarm do wystrzału, a następnie GML if(alarm[0] == -1) { //kod na strzelanie alarm[0]=60; // Ustawia licznik i dopóki nie minie tych 60 stepów, to nie można ponownie wystrzelić }
  20. Można korzystać z tylu warunków? A weź spróbuj to skrócić. Tak, że jeden if, pod drugim ifem. Wiem, że miałem coś podobnego i chyba właśnie źle coś w ifach dałem.
  21. Sutikku

    Foto-galeria

    Ale osoby najbardziej aktywne mają te 15+. W okolicach 20 tak w sumie. Przynajmniej z moich obserwacji tak wynika.
  22. Ale to nie zmienia faktu, że miał rację, nie?
  23. A przepraszam, właśnie się dowiedziałem, że nie potrafię czytać ze zrozumieniem. No więc pomogę. GML var len = Odległość od środka działka, do miejsca w którym wychodzi kula var dir=direction, czyli obrót twojego działka instance_create(x+lengthdir_x(len, dir), y+lengthdir_y(len,dir), object); Te zmienne len i dir, dałem dla większego zrozumienia. Zamiast zmiennych od razu wklep wartość.
  24. Lengthdir_x i Lengthdir_y. Dodatkowo musisz ustawić origin sprite w środku. Jak nie rozumiesz jak tego użyć, napisz, a ja postaram się pomóc. EDIT: W sumie, jak lufa nie ma pełnego obrotu wystrzału, to nawet nie potrzebujesz tego lengthdir(). Po prostu jak masz instance_create(x, y, obj), to do x i y dodajesz jakieś zmienne, zależne od aktualnego obrotu. Chociaż lengthdiry, byłyby krótsze w użyciu o ile się nie mylę.
  25. Sutikku

    Galeria Grafik

    To tylko powiem, że najmniej fajnie, wyszedł dach tej chałupki. Ale no, generalnie wysuwiste ;d Robisz to do jakiejś swojej produkcji, czy tak o, cosik rysujesz?
×
×
  • Dodaj nową pozycję...