szmalu Opublikowano 20 Maja 2012 Udostępnij Opublikowano 20 Maja 2012 Otóż generuję losowo pewne kombinacje obiektów. Jest możliwość, aby te losowe kombinacje nigdy się nie powtarzały? Nie mogę polecieć jakimś wzorem, bo nie mam na celu wykorzystania wszystkich opcji, tylko kilka losowych (ale niepowtarzalnych). Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 20 Maja 2012 Udostępnij Opublikowano 20 Maja 2012 Dodaj wszystkie typy obiektów do ds_listy. Losuj pozycję na tej liście, i usuń ten obiekt z niej. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
szmalu Opublikowano 20 Maja 2012 Autor Udostępnij Opublikowano 20 Maja 2012 Nie chodzi o to, żeby jeden obiekt występował tylko raz, tylko żeby raz występował cały ich układ na mapie. Nie mogę dodać do ds_listy wszystkich możliwych układów, bo są ich tysiące. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Lechu4444 Opublikowano 20 Maja 2012 Udostępnij Opublikowano 20 Maja 2012 Sam odpowiedziałeś na to pytanie skoro są ich tysiące to szansa jest 1 na 1000+ że układ się powtórzy czyli praktycznie jest to niemożliwe. W moim przekonaniu bawienie się w niepotrzebny skrypt który i tak wykona się raz na 10 lat jest niepotrzebny. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 20 Maja 2012 Udostępnij Opublikowano 20 Maja 2012 Masz np 3 typy obiektów i losowo je gdzieś tam ustawia na mapie i chcesz zrobić by nigdy nie zdarzyło się tak że po ponownym losowaniu ustawiły się tak samo? Jeżeli tak to użyteczne może się okazać ustawianie własnego seeda funkcji losujących. Za pierwszym razem ustal seeda takiego: GML liczba = current_time; random_set_seed(liczba) kolejne losowanie niech ma seeda zwiększanego o 1. GML liczba += 1; random_set_seed(liczba) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 22 Maja 2012 Administratorzy Udostępnij Opublikowano 22 Maja 2012 Stwórz sobie wzór na kombinację, bez randoma i nie będzie już powtarzalna. Np. y = ax + b jest niepowtarzalne... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
TheMarcQ Opublikowano 22 Maja 2012 Udostępnij Opublikowano 22 Maja 2012 Jest niepowtarzalne bo to funkcja liniowa i nawet nie da się z tego zrobić losowych kombinacji. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 22 Maja 2012 Administratorzy Udostępnij Opublikowano 22 Maja 2012 GML for(x=0; x<100; x+=10) { y = irandom_range(i,i+9); } No jak się nie da? Jest unikalne? Jest. Się nie powtarza nigdy ta sama liczba w trakcie jednego przebiegu ;) 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ę