Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Bardzo zawansowane API.
php'master
post
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

  1. local gracze = exports.sql:query_assoc_single( "SELECT * FROM postacie WHERE graczID = " .. tonumber( userID ) .. " AND postacID = " .. tonumber( charID ) )
  2.  
  3. p[ source ].money = gracze.Pieniadze
  4. p[ source ].characterName = gracze.NazwaPostaci
  5.  
  6. ...i tak około 100 kolumn.


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
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
bim2
post
Post #2





Grupa: Zarejestrowani
Postów: 1 873
Pomógł: 152
Dołączył: 9.04.2006
Skąd: Berlin

Ostrzeżenie: (0%)
-----


Kolegów moich dwóch właśnie do OTSów robi skrypty w lua (IMG:style_emoticons/default/smile.gif) Nie jest z tym językiem tak źle właśnie ze względu na Tibię. :]

Co do sprawdzania czy ktoś jest adminem. Ja przy wczytywaniu danych gracza sprawdziłbym czy jest adminem i wrzucił do osobnej tablicy adminów jego id np. I pamiętaj, jak wczytujesz graczy do tablicy to najlepszym wyjściem będzie jako klucz wrzucić id gracza.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 13.10.2025 - 00:34