#1 2008-05-04 11:27:12

Matill

Administrator

Skąd: Poland
Zarejestrowany: 2007-12-21
Posty: 39
Punktów :   

Kulisy techniczne gier MMO RPG!

W godzinach szczytu w Tibii przebywa nawet do 60 tysięcy osób. Jak tak dużo osób może grać w jednym momencie? Jaki sprzęt jest niezbędny do tego, aby wszyscy cieszyli się płynną grą? Dzisiaj chcemy wam uchylić rąbka tajemnicy i wprowadzić was w nasz świat od nieco innej, technicznej strony .


Za każdym razem, gdy logujesz się w naszej grze, wiele operacji, zapisanych w naszych serwerach jest sprawdzanych, m.in: Który outfit został ustawiony jako domyślny? Czy twoja postać spała w łóżku i czy regenerowała punkty hp i manę? Czy ów bohater wciąż jest właścicielem swojego domu, czy właśnie dobiegło to końca? Czy wciąż jest właścicielem konta premium czy zaloguje się w świątyni w mieście poza obszarem premium? Ponadto twoja postać musi się zalogować w tym samym miejscu, w którym się wylogowała i dodatkowo musi pojawić się informacja o dacie twojej ostatniej wizyty. Wszystkie te drobiazgowe i mało znaczące dla ciebie operacje są wykonywane od momentu wybrania twojej postaci do zalogowania się na niej. W większości wypadków nie zajmuje to więcej niż 2 sekundy. Czas w grach MMORPG typu Tibia odgrywa bardzo ważną rolę. To oznacza, że wszystkie akcje, które chcesz zrobić, muszą być wykonane jak najszybciej. Jeżeli chcesz, aby twoja postać ruszyła się, ona wykonuje ten ruch w momencie naciśnięcia klawisza a nie 3 sekundy później. Jest to bardzo ważne m.in podczas walki z różnymi potworami lub postaciami. W rezultacie wszystkie urządzenia i algorytmy są ciągle w miarę możliwości polepszane aby utrzymać jak najmniejszy czas reagowania twojej postaci. O jakich urządzeniach mówimy ? Wyjaśnimy to wam w dalszej części artykułu.

Wiele gier on-line opiera się na jednym serwerze. Gracz pobiera klienta, następnie instaluje go na swoim komputerze, po czym loguje się do gry poprzez internet. Jednak jest kilka różnic, jeśli chodzi o Tibię. Ów gra jest utrzymywana przez 200 różnych serwerów. 18 serwerów jest odpowiedzialnych za oficjalną witrynę- www.tibia.com UWAGA. Są serwery na których oddzielnie umieszczamy obrazki i zdjęcia, inne odpowiadają za informacje dotyczące loginu postaci, jeszcze inne przechowują statystyki, no i wreszcie takie, dzięki którym możesz pobrać odpowiedniego klienta. Kilka innych przechowuje informacje z forum. Za każdym razem, kiedy odwiedzasz naszą stronę, najpierw zostajesz połączony z serwerami, które przeniosą cię na inne w zależności od tego, jaką operację wykonasz. W ten sposób nasza strona działa o wiele szybciej, aniżeli miałoby to być wykonywane poprzez użycie jednego serwera. Jednak sama gra wykorzystuje o wiele więcej serwerów. Najważniejsze są serwery odpowiedzialne za płynność gry, logowanie i te w których przechowujemy bazę danych naszych graczy. Jednak twój komputer nie może się połączyć z tymi serwerami dopóty, dopóki nie będziesz miał zainstalowanego i w pełni sprawnego klienta.

Klient.
Klient to program instalowany na Twoim komputerze. Za jego pomocą możesz widzieć całą mapę świata. Twoja postać jest zawsze skoncentrowana na środku mapy. Dzięki temu możesz widzieć wszystkie otaczające cię postacie i efekty specjalne, m.in czary. Na twoim komputerze zawsze zapisywane są rzeczy takie jak: tekstura mapy, wygląd potworów, twoje outfity i konfiguracje hotkey'ów. Za każdym razem, gdy chcesz wykonać dowolną operację, klient wysyła informację do odpowiedniego serwera. Bez niego wszystkie nie byłyby one wysyłane do serwerów i gra nie miałaby miejsca.

Login serwer.
Zanim zaczniesz swoją grę, musisz zalogować się, co wiąże się z połączeniem do odpowiedniego serwera. Zawsze, kiedy się logujesz, login serwer weryfikuje twoje hasło w bazie haseł i identyfikuje twoje konto. Po tym, jak wybierzesz swoją postać, odpowiedni serwer definiując odpowiednie algorytmy przenosi cię na twój świat. Posiadamy kilka login serwerów rozmieszczonych w różnych miejscach na całym świecie. Jest to ważne rozwiązanie, ponieważ nasza gra jest cały czas płynna, nawet w przypadku, kiedy któryś z tych serwerów jest nieczynny, po prostu zostaniesz przeniesiony na inny. Dodatkowo na nich przechowujemy wszystkie aktualizacje obejmujące grę, więc za każdym razem, kiedy się logujesz, zostaje sprawdzane to, czy posiadasz najnowszą wersję klienta. Jeśli posiadasz starszą wersję, automatycznie zostanie ona aktualizowana na nowszą wersję.


Baza danych.
Najważniejsze dane są zapisywane na serwerach bazy danych. Za każdym razem, gdy próbujesz się zalogować, login serwer pobiera stosowne informacje z serwera bazy danych. Tutaj sprawdzamy m.in to, czy wpisane hasło jest poprawne, jak i nanosimy odpowiednie poprawki, na przykład zmiana hasła ale najważniejszą funkcją jest "zapamiętywanie" cech twoich postaci. Jesteś tutorem lub członkiem gildii? Posiadasz konto premium? Wszystkie te informacje są przechowywane na serwerach bazy danych.


Serwer gry.
Po tym, jak wszystkie informacje, dotyczące twojej postaci zostaną pozytywnie zweryfikowane, klient łączy się z serwerami gry. W Tibii, każdy z 74 światów ma swój własny serwer, na każdym z nich może się połączyć tysiąc graczy. Takie rozwiązanie jest stosowane w grach z bardzo rozległymi mapami. Inne, mniejsze gry on-line takie jak TibiaME posiadają kilka różnych światów ulokowanych na jednym serwerze.
Serwery gry spełniają wiele rozmaitych funkcji tj: informowanie twojego klienta m.in o tym, że zostałeś zaatakowany, obliczają, ile potrzebujesz uderzeń aby awansować w odpowiednim skillu, sprawdzają, czy jakieś potwory są niedaleko twojej postaci. Serwery gry wysyłają również do twojego klienta informacje, aby sprawdzić, czy jesteś zalogowany. Jeżeli nie otrzymają reakcji, twoja postać zostanie wylogowana po jakimś czasie.
Jak już wspomnieliśmy wszystkie operacje są wykonywane w bardzo szybkim czasie. Jest tak, ponieważ mapa całego świata Tibijskiego jest zapisywana w serwerach gry. Jest to wiele szybsze rozwiązanie aniżeli przechowywanie mapy w serwerach bazy danych. Dodatkowo wszystkie przedmioty istniejące w Tibii, potwory, przedmioty w twoich depozytach, informacje dotyczące questów i czarów są przechowywane w każdym z tych serwerów. Gdyby informacje tego typu, byłyby wysyłane do każdego świata przez serwery bazy danych trwałoby to zdecydowanie dłużej.
Największym problemem okazały się połączenia pomiędzy serwerami gry a klientem. Jedyną rzeczą, dzięki której możemy zapewnić dobrą szybkość tych połączeń jest wybór dużej liczby serwerów umieszczonych u licznych usługodawców. Dzięki temu nawet jeżeli u jednego dostawcy serwery są nieczynne, pozostałe działają bez zarzutów. Był to jedyny czynnik, dzięki któremu przenieśliśmy chwilowo światy z amerykańskich serwerów na inne.
Za każdym razem jak będziesz chciał się wlogować, twój klient połączy się z naszymi serwerami. Wtedy to login serwer sprawdza twoje informacje w bazie danych, po czym widzisz listę twoich postaci. Po wybraniu odpowiedniej postaci, login serwer przeniesie cię na serwer gry dla odpowiedniego świata. Po zalogowaniu klient utrzymuje kontakt z naszymi serwerami co pozwala ci na wykonywanie wielu operacji twoją postacią, jak i sprawdzanie, czy cały czas twój klient utrzymuje kontakt.
Jak widzicie Tibia działa dzięki pracy wielu serwerów. Cały czas pracujemy nad tym, abyś mógł poruszać sie po Tibijskim świecie coraz płynniej. Nawet, jeśli napotkasz niewielkie problemy techniczne, masz świadomość, że Tibia jest grą, która działa płynnie i która jest stale ulepszana .

Offline

 

Stopka forum

RSS
Powered by PunBB 1.2.23
© Copyright 2002–2008 PunBB
Polityka cookies - Wersja Lo-Fi


Darmowe Forum | Ciekawe Fora | Darmowe Fora
www.darkdragonl2w.pun.pl www.najlepszemotylki.pun.pl www.secentrum.pun.pl www.wrzesniowki2009.pun.pl www.nyanfriends.pun.pl