![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 25.02.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Jestem w trakcie pisania dużgo projektu,serwera do gry. Zakładam osiągnięcie więcej niż 550 graczy w jednej chwili. Jest problem dlatego, że niestety MUSZĘ mieć około 100 kolumn w bazie. Do tego powinno dojść około 700 postaci, bo nie każdy gra w jednej chwili ale tam są te 'Postacie graczy'. Dlatego podczas uruchamiania serwera, zamykania, crashingu, wychodzenia gracza z serwera, wchodzenia gracza na serwer muszę jakoś umiejętnie pobrać te dane. Przy starcie i zamknięciu serwera dane wszystkich osób z serwera co są aktywne. Ale jak gracz wchodzi na serwer to mogę tylko jego. Myślałem nad czymś takim: ?Wczytywanie wszystkich graczy
Potem przypisuję postacID do stałej player by skrypty wiedziały o którego gracza chodzi. Jeżeli chodzi o inne skrypt to zamierzam się odwoływać w sposób p[ source ].Coś_co_chce. Działać na takiej tablicy i jak serwer zostanie zamknięy, gracz wyjdzie czy coś to całą zrzucić do bazy zapytaniem. Jak ktoś wie jak to zoptymalizować albo coś zmienić to będę wdzięczny. http://lua-users.org/wiki/TablesTutorial (IMG:style_emoticons/default/smile.gif) . Ten post edytował php'master 26.02.2011, 16:11:00 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 873 Pomógł: 152 Dołączył: 9.04.2006 Skąd: Berlin Ostrzeżenie: (0%) ![]() ![]() |
Przy starcie nie masz co pobierać danych graczy. Pobierz tylko przy logowaniu się gracza na serwer i dopisz do listy, a jak się wylogowuje uaktualniasz bazę danych i czyścisz go z listy. Do tego dla bezpieczeńśtwa co pare min. robisz zapis całego stanu gry.
Bardzo niekonsekwentnie nazywasz sobie zmienne. Kod p[ source ].characterName = gracze.NazwaPostaci Tak po angielsku a w bazie po polsku. Łatwiej dla ciebie będzie przypisywać sobie tak jak masz w bazie. Ogólnie dbać musisz o pamięć, 100 kolumn to w miarę dużo. Może powiesz czego gra będzie dotyczyć? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 17:26 |