[Kroniki Fallathanu] #6 Update kodu gry

Kroniki Fallathanu mmoRPGKroniki Fallathanu przeżyły kolejną aktualizację kodu gry. Oto co się zmieniło.

Poprawki:
1. Walka: Biegłość gdy walczy się z więcej niż jednym przeciwnikiem jest już poprawnie naliczana.
2. Walka: Złapanie rany jest możliwe tylko jeśli ktoś nas trafił i przebił się przez obronę.
3. Jubilernia: Nie wyświetlają się przedmioty na liście do ulepszenia jeśli wystawiliśmy je na stragan.
4. Profil postaci: Nie wyświetlały się poprawnie zależności przy rozwijaniu Atutów.
5. Wiadomości prywatne: Można już używać trójkątnych nawiasów w treści.
6. Profil: Poprawione przekierowanie po zmianie Zajęcia.

Sygnatura Kronik Fallathanu

Generowanie sygnaturek w PHP z użyciem GD

Pewnie nie raz chcielibyście pochwalić się znajomym swoimi osiągnięciami w jakiejś grze przez przeglądarkę. Wasza grafika chwały mogłoby wyglądać np. tak:

Takie efektowne odznaczenie można zrobić przy użyciu kodu PHP. Oczywiście może ono wyglądać totalnie inaczej, ale to już zależy od waszej fantazji. Poniżej możecie zobaczyć kod, który generuje podobne sygnaturki:

Jak pozwolić graczowi wybrać ID

Dodałem dzisiaj w Kronikach Fallathanu opcję, której nie widziałem w żadnej innej grze 😉 Polega ona na tym, iż nowy (lub stary) gracz, który się rejestruje w grze, może sobie wybrać ID (oczywiście z tych, które mu gra umożliwia wybrać).

Zaletą takiego rozwiązania jest to, iż nie trzeba się martwić o potworne luki w numeracji, minusem jest to, że nowi gracze wymieszają się ze starymi. Oczywiście jeśli nie zwracamy uwagi na numerki to minus nie będzie dla nas żadnym minusem.

Połączenie FCKEditor i AJAX (jquery)

Ostatnio natrafiłem na problem, w jaki sposób wyciągnąć dane z formularza FCKEditora i przesłać je za pomocą AJAX.  Sprawa wygląda tak, że formularz edytora wrzucam do warstwy generowanej przez JQuery, a następnie wysyłam go za pomocą JQuery dalej. Nie mogłem się przez to przegryźć. Rozwiązaniem okazało się API edytora, wystarczy tylko jedna linijka kodu by problem przeskoczyć:

Nowy serwer

Od 6 marca jesteśmy w posiadaniu nowego serwera, który jak każdy nowy serwer sprawia trochę kłopotów :) (kochane kłopoty). Wszystko zaczęło się od tego że po wykupieniu root serwera nie otrzymałem do niego dostępu, czekałem na email dobry tydzień. W międzyczasie posłałem kilka rozpaczliwych emaili do serwerowni ale bez odzewu, dopiero email przesłany przez stronę www dał rezultat w postaci odpowiedzi, która zawierała informację, że na razie serwer nie zostanie udostępniony ponieważ są kłopoty z podpięciem go do power panelu (taki webowy system zarządzania). W końcu wpadłem na podstępny pomysł by wyłudzić hasło do serwera z zastrzeżeniem że Power Panel nie jest mi potrzebny. Udało się to dopiero po przefaksowaniu ksera dowodu osobistego :D

Zwiększ popularność strony w toplistach

Jeśli posiadacie grę www możecie w łatwy sposób zwiększyć jej popularność w toplistach dzięki prostemu skryptowi. Skrypt ten umożliwia wypłacanie graczom ekwiwalentów za klikanie w topki.

Jeśli w grze mamy coś co graczom potrzebne jest do szczęścia: energia, ptk ruchu itd., możemy dać śladowe ilości tego graczom w zamian za kliknięcie w topkę.

W Kronikach Fallathanu rozdaję za kliknięcie energię, przy czym mam to powiązane jeszcze z linkami referencyjnymi, dzięki którym można ilość zdobywanej energii podnieść.

WebServ instalacja

W poprzedniej części dowiedzieliśmy się, że do postawienia strony potrzebny jest nam serwer. Aby nie wydawać pieniędzy najlepiej postawić serwer na webserwie, którego konfigurację opiszę poniżej.

Do rozpoczęcia pracy potrzebna jest nam instalka Webserva i trochę czasu. Webserva instalujemy w domyślnej konfiguracji, jedyne co musimy wybrać to wersja PHP oraz MySQL. Robimy to tak jak przedstawiono na obrazku:

webserv1-300x233

Lighttpd – testowy serwer www

Jak pewnie wiecie od rana dzisiaj serwer zamulał strasznie. Było to spowodowane wykorzystaniem przez apachea całej dostępnej pamięci RAM. Przyczyna problemu jest nieznana jednak podejrzewam że ma to związek z nieoptymalnym skryptem, który może zdestabilizować pracę całego serwera. Niestety jeśli chodzi o apachea takie problemy mogą się powtarzać dlatego postanowiłem zmienić serwer www. Ogólnie przetestowałem kilka opcji (nginx oraz lighttpd). Oba rozwiązania są szybkie i wydajne jednak lighttpd bardziej przypadł mi do gustu.