Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Pytania z zakresu mechaniki gier
Forum PHP.pl > Forum > PHP
set4812
Wiec mam np pomysł na gre w myslach zanim cos napisze to sobie wyobrazam. I mam problem z wyobrazeniem sobie np szansy procentowej np na znalezienie przedmiotu oraz ciekawi mnie czy w grach cron uruchamia sie tak czesto i aktualizuje wszystkie budowy prace itp czy jakos inczej to działa.
Dziekuje pozdrawiam set4812
erix
http://rtfm.killfile.pl
set4812
Hm odkąd moderator otowrzył ponownie temat ponownie nie usłyszałem odpowiedzi dlatego ponaglam pytanie czy wszystkie zmiany odbywaja sie za pomoca crona??
#luq
Bo nie zadałeś pytania? winksmiley.jpg

Szansa procentowa - no to ustalasz sobie, że jest 90% szans znalezienia, e nie wiem, drewnianego krzesła, po zabiciu potwora a 10% na super, hiper, mega miecz. Wystarczy że losujesz (pseudolosowo, naturalnie) z przedziału od 0 do 9. 9 to miecz, reszta to krzesło.

Cron - nie oczywiście, że nie na cronie to polega. Jeśli gracz ma otwartą przeglądarkę i buduje mi się budynek, wyświetla się czas do zakończenia a user coś sobie tam robi w tej grze, licznik dochodzi do 0, następuje zwolnienie blokady, tfu... wysłanie zapytania Ajax`owego do serwera który aktualizuje level danego budynku (lvl++), jeśli user`a nie ma to taka aktualizacja może odbyć się zaraz po jego zalogowaniu do gry. W końcu w tabelcy, nazwijmy ją - event ma datę rozpoczęcia budowy i zakończenia, więc wiemy ile trzeba dodać surowców (cześć po starym wydobyciu, część po nowym per godzina) jeśli rozbudowana była kopalnia or sth.
set4812
a jak 40% to tez od 0 do 9 powyzej np 4 rzecz??
Mikz
Cytat(set4812 @ 2.07.2010, 21:18:02 ) *
a jak 40% to tez od 0 do 9 powyzej np 4 rzecz??


Ech... losujemy od 0 do 99 i dodajemy 1 (mamy wynik od 1 do 100).
Jeżeli wynik jest niższy lub równy ustalonej wartości procentowej to losowanie się powiodło i masz swój przedmiot. Jeżeli wyższy, losowanie się nie powiodło i nie masz.

Czy naprawdę liczysz na to że uda Ci się napisać grę przeglądarkową jeżeli nie potrafisz zaprojektować nawet logiki losowania?
Wicepsik
Wszystko zależy od Ciebie, które czynniki będą bardziej lub mniej wpływały na zdobycie przedmiotu. Może być to poziom postaci albo jego poszczególne statystyki.
thek
Jeśli nie potrafisz przemyśleć powiązań między wszystkim to ja nie widzę jak Ty masz zamiar dojść choćby do sensownego projektu. O oprogramowaniu tego, gdzie ów projekt będziesz musiał na zarąbistą liczbę wzorów matematycznych przełożyć nawet nie wspomnę. Powiem tylko tyle, że ja mam dopiero wycinek swojego własnego systemu gry przeglądarkowej i obejmuje on między innymi generator przedmiotów bardzo zbliżony już do tego znanego choćby z serii Diablo. Powiem tylko tyle że jest on oparty na tabelach: prefix, suffix, base_item, set, unique, i jeszcze kilku smile.gif A to tylko podstawy, które są wstępem do już napisanego generatora itemów wypadających z wrogów, możliwych do spotkania w sklepie i całość jest w wartościach nieprocentowych, gdyż każda z szans dodatkowo jest modyfikowalna dynamicznie, gdyż w projekcie są ujęte efekty mające wpływ albo na pojedynczych graczy (umiejętności i przedmioty podnoszące/obniżające szczęście), albo cały świat (systemy eventów obejmujące cały serwer). Powiem Ci tylko tyle, że za ich pomocą wygenerowanie jakoś 30 itemów to chwilka. Całość krokami wygląda mniej więcej tak:
1. Losuję co dostaje (1% unique, 3% set, 5% rare, 35% magic, reszta - wielkie... nic)
2. W zależności od poziomu gracza losuję dla niego unique i set jakiś z zakresu +/-X poziomów lub też +/-X% levelu zależnie co większe. Początkujący do pierwszego wariantu, zaawansowani do drugiego.
3. Jeśli to magic daję mu 30% szans na wylosowanie prefixa oraz suffixa oraz jeśli wstrzelił się i wylosował jeden bądź drugi to dostaje 15% szans na wylosowanie drugiego. Stąd mogą wystąpić kombinacje: item, prefix-item, item-suffix, prefix-item-suffix i tak aż do 2*prefix-item-2*suffix
4. Rare ma to samo niemal tylko dochodzi 3-krotność suffix i prefix oraz są dużo wyższe szanse - 80,40,20 i itemy przez to mocno powerowe.

To o czym wspominasz byłoby dla mnie przy losowaniu na pierwszym kroku jeszcze. To najprostsze co może być z generowaniem przedmiotów. Jeśli na tym etapie utknąłeś to jak zamierzasz rozwiązać walkę, w której uzbrojenie, opancerzenie, skille, czary mają jednocześnie wpływ na wynik walki? A co dopiero mówić o współczynnikach szybkości ataku czy innych efektach, które większość gier po prostu ignoruje bo by system był zajechany obliczeniami i nadawał jedynie dla ograniczonej, małej liczby graczy. Rzuciłeś się na coś, czego nie rozumiesz, nie wiesz z czym zjeść, a chcesz mieć bo jest modne. Zacznij wpierw od przeróbek już istniejących systemów bo pisanie wszystkiego od zera to coś co Ci po prostu nie wyjdzie bo nie ma szans na to. Pomysł to nie wszystko. Trzeba mieć jeszcze wiedzę by to przekuć na matematykę oraz algorytmy i umiejętności w używaniu dostępnych narzędzi. Możesz mieć wypasiony serwer, drogie oprogramowanie, ale nic nie zrobisz, skoro poza pomysł to nie wyjdzie z braku właściwego rozplanowania wszystkiego, ujęcia w algorytmy oraz przekuciu na kod w określonym języku/kach (bo nie ograniczysz się do jednego w przypadku gier przeglądarkowych).
bolverk
[Mały offtop] Jest taka gra jak Adom(Ancient Domains of Mystery) gra zajmuje jedyne 1MB a oferuje prawie nieograniczone możliwości rozgrywki. Gdyby właśnie za nią ktoś się wziął z dostatecznie dużą wiedzą PHP itp. i z pomocą Thomasa Biskupa - twórcy ADOMa. To wróżę mu sporą karierę. Ach, gdyby był ADOM jako sieciówka do pogrania:) Kto grał w gry RPG a nie wie czym jest Adom ten nigdy nie grał w RPG smile.gif
paxton
@Thek, wydaje mi się ze zbytnio go straszysz, nie okłamujmy się, w PHP wcale zbyt skomplikowanych obliczeń się nie robi, bo po prostu nie ma na czym, to nie fizyka.

Pisałem już jakiś czas temu grę, i było wiele obliczeń dot. przebiegu walki a czynikkow była masa, lecz obliczenia schodzili jedynie to dodawania, odejmowania, dzielenia, mnożenia i na końcu losowania, prawda zajmuje to trochę czasu i trzeba bardzo logicznie myśleć, ale nie przesadzajmy, to nie jest kwestia pisania silnika do gry 3D. Tak samo wydaje mi się, ze serwer utrzyma masę tego typu obliczeń, bo tak na prawdę, jaka gra WWW jest tak złożona? Tak czy tak, jeśli wykładasz się na takich podstawowych obliczeniach, nie wróżę ci sukcesywnej gry.
thek
Ależ nie straszę paxton. Popatrz jakie rzeczy mu wypunktowałem... Sama najprostsza matma na poziomie podstawówki smile.gif Nic niż wspomniane dodawanie, mnożenie, procenty i tak dalej. I też wspomniałem, że ma to być po prostu do kupy logicznie złożone. Prawda est jednak taka, że przekombinowany lub zbyt prosty silnik to złe rozwiązania. Za trudny odstraszy graczy i sprawi, że będzie dla pr0, którzy będą w stanie zrozumieć jego niuanse. Inaczej odstawią oni wszystkich. Za prosty sprawi, iż ludzie znudzą się grą szybko. Ciężko znaleźć złoty środek i stąd tyle projektów gier nie daje rady. Albo się zakłada z góry słabe zainteresowanie, albo płacze i szuka dużego medialnego wsparcia.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.