pazio Opublikowano 23 Czerwca 2014 Udostępnij Opublikowano 23 Czerwca 2014 witajcie to znowu ja czekając na odpowiedź dotyczącą punktów postanowiłem że zabiorę się za sesję kwalifikacyjną oraz zrobię aleje serwisową czyli pitstop jakoś marnie to wychodzi ale udało mi się zrobić prosty licznik ,który nie chce się zatrzymać :rolleyes: :rolleyes: :rolleyes: a teraz jednak mam takie dwa pytanka 1)jak zrobić by po okrążeniu przeze mnie wykonanym licznik wyświetlał czas przejechany moim bolidem? 2)jak zrobić by AI wbijał do alei serwisowej i zmieniał opony(oczywiście co kilka okrążeń) byłbym bardzo szczęśliwy jakby ktoś wytłumaczył to np.pokazując za pomocą kodów albo przykładem czekam i pozdrawiam Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kriso99 Opublikowano 23 Czerwca 2014 Udostępnij Opublikowano 23 Czerwca 2014 oj, oj. wiem ze to nie odpowiedz, ale zaraz bedziesz nam kazał zrobić całą grę. zrób najpierw jakąś inną gierke topdown, prostą strzelanie, chodzenie, jakieś proste boty, przełączanie dzwigni, otwieranie drzwi... 1)przy przejechaniu okrążenia zapisuj czas do zmiennej napis po czym zeruj zmienna czas przez cały czas jak bolid jedzie dodawaj do zmiennej czas okreslona ilosc(sekundy czy milisekundy) poprzekroczeniu mety napis=czas czas=0 i ponownie 2)bardziej rozbudowane zagadnienie na poczatku wylosuj sobie co ile zmienia koła, czy cokolwiek np. zamiana_co_ile=4+random(8) div 1 i wtedy if okrazenie= zmiana_co_ile div okrazenie to wjedzie do "PitStopu" Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 23 Czerwca 2014 Udostępnij Opublikowano 23 Czerwca 2014 kriso99: random(8) div 1 to irandom(8). 'i' od 'integer'. Poza tym dobry tok myślenia. ;) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 23 Czerwca 2014 Administratorzy Udostępnij Opublikowano 23 Czerwca 2014 1) Przepisywać zmienną z aktualnym czasem do zmiennej ktora pokazuje ostatni czas mijając metę 2) zrobić ifa który w odpowiednim momencie nakazuje skręcic. Ciężko powiedzieć, są setki sposobów na AI jazdy do wyścigów, dobierz coś najlepszego dla siebie :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kriso99 Opublikowano 23 Czerwca 2014 Udostępnij Opublikowano 23 Czerwca 2014 @threef tylko ze jak dawałem zawsze irandom to zawsze ta sama liczbe losowal... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 23 Czerwca 2014 Udostępnij Opublikowano 23 Czerwca 2014 Bo w GM:Studio trzeba używać randomize() żeby gra wybierała co uruchomienie nowy seed. ;) random() też będzie zwarać te same liczby. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 23 Czerwca 2014 Administratorzy Udostępnij Opublikowano 23 Czerwca 2014 Bo w GM:Studio trzeba używać randomize() żeby gra wybierała co uruchomienie nowy seed. ;) random() też będzie zwarać te same liczby. Nie trzeba. Jak testujesz, to zawsze jest seed ten sam ustawiony, żeby było łatwiej debugować, więc MOŻNA na czas testowania dodać, ale w finalnej wersji nie jest potrzebne. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
pazio Opublikowano 23 Czerwca 2014 Autor Udostępnij Opublikowano 23 Czerwca 2014 ja próbowałem to zrobić za pomocą random ale dziwnie to wychodziło Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 23 Czerwca 2014 Udostępnij Opublikowano 23 Czerwca 2014 Wait, what? Jestem prawie pewien że to działa jak wszędzie. W dokumentacji na ten temat nic nie ma. A chociażby robiąc grę na Pixel Heaven mój ostatni build (bez randomize()) był z takim seedem że gracz ginął w pierwszej sekundzie gry. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
pazio Opublikowano 23 Czerwca 2014 Autor Udostępnij Opublikowano 23 Czerwca 2014 chodzi o to że zjeżdżał często do pit stopu a mi chodzi o to żeby tak jak w formule zjechał od 3 do 4 razy no chyba że miał kolizje to 5 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
pazio Opublikowano 24 Czerwca 2014 Autor Udostępnij Opublikowano 24 Czerwca 2014 GML if room = Polska {path_start(rai1,path_speed,1,false)} else path_end = rai1 random = path_start = rai1 random = path_start = rai2 zrobiłem takie coś ale nie chce mi używać mój AI tego drugiego patha Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kriso99 Opublikowano 24 Czerwca 2014 Udostępnij Opublikowano 24 Czerwca 2014 polecam dokumentacje, zanin cokolwiek zaczniesz e: random dziala tak: random(100) i poda ci liczbe pomiedzy 0, a 100 choose dziala tak: choose(1, 100) poda liczbe 0 lub 100 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 24 Czerwca 2014 Administratorzy Udostępnij Opublikowano 24 Czerwca 2014 Wait, what? Jestem prawie pewien że to działa jak wszędzie. W dokumentacji na ten temat nic nie ma. A chociażby robiąc grę na Pixel Heaven mój ostatni build (bez randomize()) był z takim seedem że gracz ginął w pierwszej sekundzie gry. http://docs.yoyogames.com/source/dadiospic.../randomize.html Please note, that when using the random number functions in GameMaker: Studio the initial seed is always the same, as this makes tracing errors and debugging far easier. Should you wish to test with true random, you should call this function at the start of your game. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
pazio Opublikowano 25 Czerwca 2014 Autor Udostępnij Opublikowano 25 Czerwca 2014 dzięki wielkie Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Piedro Opublikowano 25 Czerwca 2014 Udostępnij Opublikowano 25 Czerwca 2014 To wszystko i więcej znajdziesz w dokumentacji GM-a pod klawiszem [F1] (w oknie GM-a oczywiście), a przetłumaczoną wersję pod tym linkiem Dokumentacja. Działy są po prawej. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
pazio Opublikowano 25 Czerwca 2014 Autor Udostępnij Opublikowano 25 Czerwca 2014 dzięki wam wszystkim ale czemu ten kod który napisałem był zły nawet jak zrobiłem random(100) to też źle było a wykombinowałem że jeśli mam path do bolidu ai to skopiuje go i ten drugi będzie wybierany losowo ale niestety tylko mój bot używa tego pierwszego path'a Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kriso99 Opublikowano 25 Czerwca 2014 Udostępnij Opublikowano 25 Czerwca 2014 bo losuje moze wylosowac tez 89.7384729 a irandom losuje liczby całkowite choose wybiera z wpisanych wartości (10,20,30)- wybierze jedna z tych trzech liczb Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 25 Czerwca 2014 Udostępnij Opublikowano 25 Czerwca 2014 Ten który podałeś ostatni? GML path_end = rai1 random = path_start = rai1 random = path_start = rai2 Przecież ten kawałek w ogóle nie ma sensu. Miałeś algebrę w szkole? xD Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
pazio Opublikowano 25 Czerwca 2014 Autor Udostępnij Opublikowano 25 Czerwca 2014 :rolleyes: :rolleyes: :rolleyes: xD chodziło mi o to że jeżeli path się rozpocznie i mój bot przejedzie ten path to path_end(zakończy się path)i będzie wybierany losowo (random = path_start = rai1) bo mi chdzi o to że po zakończeniu tego patha(wystartuje i dojedzie do końca)to żeby następny był wybierany losowo Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 25 Czerwca 2014 Udostępnij Opublikowano 25 Czerwca 2014 random(), path_start() i path_end() to funkcje. Funkcjom nie przypisuje się wartości, one je zwracają na podstawie argumentów które podajesz w nawiasie. Sprawdzenie GML if(path_position=1) powie czy obiekt pokonał całą drogę i dotarł do końca. Jeżeli się tak stanie wtedy możesz wylosować nowy path tak jak radzi kriso99, używając choose. 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ę