frelo Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 Mam pytanie mam ztobionego ponga i nei wiem jak zrobić zeby komputer sam sterował palętką swoją tak aby chciał odbić pileczke i jescze jak robic trycb multiplayer ?? mam nadzieje ze pomożecie Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Roki Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 Jak nie umiesz napisać AI do ponga, to nie zrobisz multiplayer ;p Co do AI, masz kod, wklej w step(hardkorowy wróg xD) GML x=nazwapilki.x y=nazwapilki.y Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
frelo Opublikowano 30 Grudnia 2009 Autor Udostępnij Opublikowano 30 Grudnia 2009 dzięki wielkie. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ZeroXbot Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 Nie dam Ci kodu, ale powiem jak do niego dojść. Wyobraź sobie, że to ty jesteś komputerowym przeciwnikiem i zobacz jakie akcje wykonujesz i pod jakimi warunkami. Z tego, ci wyjdzie mniej więcej schemat jak się zachowywać, a później tylko napisać w GML ;) @Roki: Lol, tego nie można nazwać przeciwnikiem tylko nieprzepuszczalną barierą -_- Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Roki Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 Coś ty!? Dasz rade go pokonać, jeśli odbijesz piłke tak, że będzie leciała prawie równolegle do wroga... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
frelo Opublikowano 30 Grudnia 2009 Autor Udostępnij Opublikowano 30 Grudnia 2009 a mam jescze pytanko głupie takie jak zrobić żeby ruch myszak w lewo przsuwał apletke w lewo itp?? a i jescze hgdzie ten kod wkleic mam dokłądnie? ja tlyko na klockach robilemi nie wiem. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Roki Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 step paletki: Jeśli lata lewo/prawo: x=mouse_x Jeśli lata góra/dół y=mouse_y Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ZeroXbot Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 GML x=mouse_x; @Roki: W sumie jak teraz patrze na twój kod to to będzie paletka w piłce -_- Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Roki Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 Napisałem, że jeśli paletka lata lewo/prawo, albo góra/dół... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ZeroXbot Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 Lol, jak pisałem mojego posta to twojego jeszcze nie było. Chodziło mi o ten kod: GML x=nazwapilki.x y=nazwapilki.y Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Roki Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 Aha racja, sry ;p Myślałem że o ten drugi, racja, tamten jest zbugowany, nie napisałem co i jak... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
frelo Opublikowano 30 Grudnia 2009 Autor Udostępnij Opublikowano 30 Grudnia 2009 dzieki Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
frelo Opublikowano 30 Grudnia 2009 Autor Udostępnij Opublikowano 30 Grudnia 2009 kurde cos nei działa a nei da sie tego na klockach zrobić jakoś?? Chyba zrezygnuje z ponga, naucze sie kiedys GML i zrobie go od nowa. Doublepost. Warn +1 gnysek Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
klech Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 W create tacki uruchom time lines(np. za pomocą klocka Set time line) i chodzenie z góry na dół.W time lini w stepie 30 daj kod: GML distance=distance_to_object(obj_pilka); if distance=30 { move_towards_point(pilka.x,pilka.y,5) } I klocek Set time line. !UWAGA! Im większą wartoś podasz w if i w move-towards_point tym trudniejsza gra będzie. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
frelo Opublikowano 30 Grudnia 2009 Autor Udostępnij Opublikowano 30 Grudnia 2009 ok sprobuje z tym jescze byle zadziałalo tka jak powinno Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Dawidds Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 Takie troszkę bardziej rozwinięte: https://forum.gmclan.org/index.php?showtopic=16769 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Thobby Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 co do AI, to ja robiłem tak: step paletki: GML direction=point_direction(x,y,x,pilka.y); i zmieniasz speeda w zależności od poziomu trudności np.: GML if poziom=1 speed=3; else if poziom=2 speed=5; i tak dalej Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Muuuuczek567 Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 Można zrobić tak: GML if(x < pilka.x) x += /ileś tam/ if(x > pilka.x) x -= /ileś tam/ Daj to w Stepie bota. To chyba najłatwiejsze rozwiązanie, tyle że trzeba ustawić origin sprite'a paletki na środku. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Roki Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 Lepiej, x = pilka.x, tylko tak jak mówie, hardkorowy bot xD Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Jaklub Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 Lepiej, x = pilka.x, tylko tak jak mówie, hardkorowy bot xD jaki znowu bot, zwykła ściana. zachowaj tę metodę dla siebie Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Easeful Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 tego w ogole ai nie można nazwać... Jak nie umiesz napisać AI do ponga, to nie zrobisz multiplayer ;p Multiplayer - wsytarczy znać funkcje do 39dll AI - trzeba mocno myśleć logicznie, znać funkcje matematyczne z wyżej półki i być doświadczonym... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Roki Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 Ale żeby znać 39DLL trzeba znać podstawy... Nie zrobisz MMO nie znając kodu na ruszanie... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Dawidds Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 Easeful, to zależy o jakim ai mówimy, bo do ponga funkcje matematyczne z wyższej półki raczej nie są potrzebne, mocne logiczne myślenie raczej też nie. A ten temat jest właśnie o pongu, gdzie najprostsze ai ogranicza się do dwóch linii. Więc ten ktoś kogo zacytowałeś miał rację. Jak nie umiesz napisać AI do ponga, to nie zrobisz multiplayer ;p Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rudy Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 frelo, z tego, co zauważyłem, wolisz jeszcze klocki od kodu, więc pozwolę sobie przetłumaczyć AI kolegów z forum na klocki :) . AI 1: Hardkorowy bot: Zakłada move, sekcja jump, klocek z góry po lewej, dwa krzyżyki i strzałka, jak najedziesz myszką pisze "Jump to position". Wkładasz go do step. Jeśli przesuwasz się do góry/dołu: x = odległość od lewego krańca okna, np 600, albo room_width-40 y = obj_pilka.y (obj_pilka to nazwa piłki) Jeśli przesuwasz się na lewo/prawo: x = obj_pilka.x (obj_pilka to nazwa piłki) y = odległość od górnego krańca okna, np 420, albo room_height-40 AI 2: Bot z prędkością Zakłada move, sekcja move, klocek z góry po środku,niebieskie strzałki we wszystkich kierunkach ,jak najedziesz myszką pisze "Move free". Wkładasz go do step. Jeśli przesuwasz się do góry/dołu: direction = point_direction(x,y,x,obj_pilka.y) Jeśli przesuwasz się na lewo/prawo: direction = point_direction(x,y,obj_pilka.x,y) speed = szybkość przesuwania bota, np 3, 5 w zależności od tego, jaki chcesz mieć poziom trudności Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Slash (Pental) Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 Dawidds wspomniał, że to tak banalny temat, a tyle odpowiedzi :) . Chciałem tylko podać, że nikt nie podał prawdziwego rozwiązania. Zostały podane dwie sensowne opcje i obydwie mają ten sam błąd. Oczywiście chodzi mi o: GML if(x < pilka.x) x += /ileś tam/ if(x > pilka.x) x -= /ileś tam/ oraz GML direction=point_direction(x,y,x,pilka.y); W czym tkwi problem? Obydwa przypadki mają wspólną cechę - piłka po dotarciu do celu w wielu wypadkach będzie miała nowy, albowiem gdy jej pozycja pionowa ma wynosić 230, a jest na 229 (zakładamy, że jej prędkość to 5), to nagle wynosi 234, znowuż nie jest na swym miejscu i dotrze ponownie do 229. Rozwiązanie problemu dla obydwu przykładów: GML if ( y < pilka.y ) y = min( y + <szybkosc>, pilka.y ); else if ( y > pilka.y ) y = max( y - <szybkosc>, pilka.y ); Oraz drugi: GML if ( y != pilka.y ) { if ( distance_to_point( x, y, x, pilka.y ) < <szybkosc> ) y = pilka.y else direction = point_direction( x, y, x, pilka.y); } Któż by pomyślał, że takie proste zagadnienie może wywołać tyle kontrowersji :P ... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Dawidds Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 A moje to co : ( ? Podałem całego ponga z ai (i troszku lepszym niż te wymienione) i multi. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
klech Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 Odkryłem jeszcze inny sposób.W stepie dajesz: GML oy=obj_ball.y+random(10); oy=oy-random(10) move_towards_point(x,oy,3); A teraz tłumaczę(bo jesteś początkujący):najpierw ustalamy że oy równa się pozycja y pilki + liczba z przedziału 0-10 ,a potem na odwrót:odejmujemy.W funkcji x to pozycja x jaką ma na mapie tacka;oy nasze wcześniejsze równania ,a 3 prędkość.Wadą jest to że kiepsko to wygląda w grze.(ale działa:raz przepuści raz nie) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Easeful Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 ... Dawidds ale mi chodzi o takie AI co ty w swoim pongu zrobiłeś, takie inteligentne co pod ukos idzie itd Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Jaklub Opublikowano 30 Grudnia 2009 Udostępnij Opublikowano 30 Grudnia 2009 ... Dawidds ale mi chodzi o takie AI co ty w swoim pongu zrobiłeś, takie inteligentne co pod ukos idzie itd robienie DOBREGO online to też nie jest jakaś wybitnie łatwa robota - widać, że nie próbowałeś. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
PoxiPol Opublikowano 31 Grudnia 2009 Udostępnij Opublikowano 31 Grudnia 2009 https://forum.gmclan.org/index.php?showtopic=14406 OMG : O Przecie on nawet nie przeszukal forum, a tyle razy sie o to pytali... Hah przykladu nie ma i nie wiem gdzie jest ; p Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
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ę