![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 333 Pomógł: 137 Dołączył: 25.03.2008 Skąd: jesteś?? Ostrzeżenie: (0%) ![]() ![]() |
Hej, tworzę stronę gdzie każdy ma daną ilość punktów, wygranych, przegranych i wyjść z gry.
Stworzyłem jak na razie takie założenia, wygrany ma +5, przegrany -3, osoba która wyszła z gry podczas jej trwania -10, w grze zawsze występuje 5 osób, istnieją dwie drużyny każda po 5. Gracze wchodzą do gry i po uzbieraniu 10 gra automatycznie jest stratowana, a oni przydzielanie dowiedzionych drużyn tak by gra była jak najbardziej zrównoważona. Nie koniecznie wiem jaki algorytm można by zastosować by teamy były jak najbardziej zrównoważone, można by przydzielać graczy w systemie 1-2-2-2-2-2-1, od największej ilości punktów do najmniejszej, lecz jeśli pierwszy gracz posiada 2000pkt, a reszta ~1200pkt to teamy nadal nie będą w najlepszej kondycji. Przydzielanie najlepszego do pierwszego teamu, a następnie reszty od najlepszego do najgorszego do drugiego aż do wyrównania różnicy też może nie zawsze dać dobry rezultat. Trzeba pamiętać, że nawet najlepszy gracz z gromadą osób nie umiejących grać nie da sobie rady z samymi średnio zaawansowanymi. Gracze z małą ilością wygranych (procentowo) lub z małą ilością punktów powinni mieć jakieś inne/specjalne uprawniania do rozkładania ich po równo w drużynach. Co o tym myślicie? Moim zdaniem najlepszym pomysłem na daną chwilę jest dodanie najlepszego do #1, reszty do #2 do czasu gdy ich pkt nie będzie większe nić #1, a jeśli go przewyższy znów do #2 na identycznych zasadach, gracze rozdawani od największej ilości punktów, jeśli w końcowym rozrachunku drożyny będą różniły się większą ilością pkt. niż 10% (liczba strzelona nieco w ciemno) gra może zostać automatycznie zamknięta, a gracze proszeni o wejście do nowej. Moim pytaniem związanym z php, a w zasadzie z samym algorytmem było by jak coś takiego najlepiej zapisać pamiętając o ograniczeniach z strony php, kod będzie w przeszłości odpalany co kilkanaście sekund więc jego optymalność, a w zasadzie optymalność algorytmu musi być dosyć spora, macie jakiś pomysł na spisanie go lub opracowanie innego? Mam nadzieje, że nie namieszałem za mocno. (IMG:style_emoticons/default/smile.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 729 Pomógł: 346 Dołączył: 4.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
Może głupie, ale:
1. drużyna pierwsza dostaje gracza z najwyższą ilością punktów 2. drużyna druga dostaje następnego w kolejności porównanie która drużyna ma większą ilość punktów (oczywiście pierwsza:P) 3. drużyna druga dostaje 3 gracza w kolejności punktów 4. drużyna pierwsza dostaje 4 gracza w kolejności punktów porównanie która drużyna ma większą ilość punktów 5. drużyna z mniejszą ilością punktów dostaje 5 gracza w kolejności punktów 6. drużyna z większą ilością punktów dostaje 6 gracza w kolejności punktów itd. do końca Bądź druga opcja 1. drużyna pierwsza dostaje gracza z najwyższą ilością punktów 2. drużyna druga dostaje następnego w kolejności porównanie która drużyna ma większą ilość punktów (oczywiście pierwsza:P) 3. drużyna pierwsza dostaje 10 gracza w kolejności punktów 4. drużyna druga dostaje 9 gracza w kolejności punktów porównanie która drużyna ma większą ilość punktów 5. drużyna z większą ilością punktów dostaje 8 gracza w kolejności punktów 6. drużyna z mniejszą ilością punktów dostaje 7 gracza w kolejności punktów itd. do końca No i 3 opcja 1. drużyna pierwsza dostaje gracza z najwyższą ilością punktów 2. drużyna druga dostaje następnego w kolejności porównanie która drużyna ma większą > ilość punktów (oczywiście pierwsza:P) 3. drużyna pierwsza > dostaje 10 gracza w kolejności punktów 4. drużyna druga dostaje 3 gracza w kolejności punktów porównanie która drużyna ma większą > ilość punktów 5. drużyna z większą > ilością punktów dostaje 9 gracza w kolejności punktów 6. drużyna z mniejszą ilością punktów dostaje 4 gracza w kolejności punktów itd. do końca edit. Jeszcze czwarta opcja: 1. drużyna pierwsza dostaje gracza z najwyższą ilością punktów 2. drużyna druga dostaje następnego w kolejności porównanie która drużyna ma większą > ilość punktów (oczywiście pierwsza:P) 3. drużyna pierwsza > dostaje 10 gracza w kolejności punktów 4. drużyna druga dostaje 3 gracza w kolejności punktów porównanie która drużyna ma większą > ilość punktów 5. drużyna z większą > ilością punktów dostaje 4 gracza w kolejności punktów 6. drużyna z mniejszą ilością punktów dostaje 9 gracza w kolejności punktów itd. do końca Najgorzej się te algorytmy niestety sprawdzą w sytuacji np. : 1 gracz 1000 punktów reszta po 100 itp. Przydałoby się sprawdzić jak się ma średnia wszystkich punktów do punktów najlepszego (jeszcze przed dzieleniem) w sytuacji 190 średnia, a 1000 najlepszy nie ma nawet jak równo podzielić. A co do różnic to 10% będziesz miał naprawdę rzadko różnicy (wiem, że w ciemno strzelałeś) Ten post edytował lobopol 12.08.2010, 17:17:50 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 26.09.2025 - 07:28 |