Friday, 3rd September 2010.

Posted on Poniedziałek, 20th kwiecień 2009 by admin

Postanowiłem poprawić odrobinę kawałek kodu z Santic Engine odpowiadający za blokadę przy zbyt częstym i zbyt szybkim odświeżaniu gry. Wcześniejszy kod był mało wydajny, zapisywał ilość odświeżeń do bazy danych.

Oto nowy kod, do wstawienia w head.php gdzieś na dole. Stare anty-makro przyda się wykasować/zakomentować :)

if (!isset($_SESSION[‘time’])) $_SESSION[‘time’] = time();
if ($_SESSION[‘macro’] == ) $_SESSION[‘macro’] = 0;
$test = time() - $_SESSION[‘time’];
$_SESSION[‘time’] = time();
if ($test <= 0)
{
  $_SESSION[‘macro’] = $_SESSION[‘macro’] + 1;
  if ($_SESSION[‘macro’] >= 200)
  {
    $strDate = $db -> DBDate($newdate);
    $db -> Execute("INSERT INTO `log` (`owner`, `log`, `czas`) VALUES(1,’".$player -> user." ID: ".$player -> id." - macro IP: ".$player -> ip."’, ".$strDate.")");
    exit(‘Zbyt szybko i często od¶wieżasz stronę. Wpis został wysłany do dziennika władcy. Stosowanie makr będzie karane! Je¶li bł±d pojawił się podczas normalnej gry napisz do ID 1′);
  }
} else
{
  if ($_SESSION[‘macro’] >= $test * 5) $_SESSION[‘macro’] = $_SESSION[‘macro’] - $test * 5;
  else $_SESSION[‘macro’] = 0;
}

Poprawiona wersja :)

jeśli gracz kliknie 200 razy pod rząd w odstępach krótszych niż sekunda wyświetli mu się błąd :)

200 odświeżeń, każde z osobna w odstępie poniżej sekundy. Nabija non stop, czyli np jeśli ktoś odświeży 400 razy za szybko to musi poczekać 40 sekund bez lub z dłuższym odstępem odświeżania aż przejdzie poniżej limitu.

Odstęp można zmienić, np jeśli ktoś chce ustawić odstęp między odświeżeniami do 2 sekund:
if ($test <= 2)
ale z moich testów wynika że niektórzy w górach czy sprzedając jakieś przedmioty mieszczą się w takim limicie :P
Sugestie mile widziane

Tags: , ,
Posted in Santic Engine | Comments (0)

Posted on Poniedziałek, 6th kwiecień 2009 by admin

Czytając forum supportu Santic Engine moją uwagę zwróciła rozpaczliwa prośba najpierw olanego a następnie zakrzyczanego “nowego” który pytał o to czy ktoś mu napisze jakiś tam skrypt. Oczywiście że nikt mu nie napisze bo przede wszystkim długo to trwa, dana osoba niczego się nie nauczy i nikomu się nie chce poświęcać tyle swojego czasu za darmo. Taka natura rzeczy. Następnie spytał za ile taki skrypt ktoś mu napisze.

Wtedy pomyślałem, że brakuje na w społecznościach Vallheru i Santic Engine takich ogłoszeń, możliwości zamówienia i zapłacenia za dany skrypt czy jakąś inną konkretną usługę osobie która się na tym zna. Bywają przecież sytuacje gdy nie ma się czasu lub (częściej) umiejętności do napisania czy zrobienia konkretnej rzeczy. Nie jestem mistrzem PHP, ale mam sporo wiedzy i doświadczenia jeśli chodzi o Vallheru. Napisałem więc ogłoszenie na swoim i kilku innych forach. Zobaczymy jak to wyjdzie, czy będą w ogóle chętni. To może być kolejne ciekawe doświadczenie, choć pieniądze będą raczej rzędu “na zapiekankę” niż “na piwo” :) Read the rest of this entry…

Tags: , ,
Posted in Bez kategorii | Comments (2)

Posted on Wtorek, 24th marzec 2009 by admin

Modyfikację Profile z poprzedniego wpisu już wgrałem do gry Santic. Potrzebne było kika poprawek, a oto instrukcja:

1. Kopiujemy wszystkie pliki .js do katalogu js/profile/.
2. Następnie edytujemy plik account.php. Jako że w Santic Engine profile zostały przeniesione do osobnej tabeli, kod odrobinę od tej modyfikacji się różni. Wstawiamy poniższe linie:

if (isset($_GET[‘view’]) && $_GET[‘view’] == "profile")
{
        $ADODB_CACHE_DIR = ‘tmp’;
        $db -> cacheFlush("SELECT profile FROM profile WHERE id=?", array($player -> id));

        $objprofil = $db -> SelectLimit("SELECT * FROM profile WHERE id=".$player -> id, 1);
        if (!isset($objprofil -> fields[‘id’])) $db -> Execute("INSERT INTO `profile` (`id`, `profile`) VALUES(".$player -> id.", ”)");
        $profil = $objprofil -> fields[‘profile’];
        $objprofil -> Close();

        require_once(‘includes/bbcodeprof.php’);
        $profil = htmltobbcode($profil);
        $smarty -> assign(array("Profileinfo" => PROFILE_INFO,
        "Newprofile" => NEW_PROFILE,
        "Profile" => $profil,
        "Change" => CHANGE));
        if (isset($_GET[’step’]) && $_GET[’step’] == "profile")
        {
                if ($player -> rank == ‘Tester’) error(‘Załóż konto aby mieć peĹ‚ny dostÄ™p do gry!’);
                if (empty ($_POST[‘profile’]))  error (EMPTY_FIELDS);
                require_once(‘includes/bbcodeprof.php’);
                $_POST[‘profile’] = bbcodetohtml($_POST[‘profile’]);
                if (isset($_POST[‘podglad’]))
                {
                        $strProfil = "PodglÄ…d profilu:".$_POST[‘profile’]."";
                        $_POST[‘profile’] = htmltobbcode($_POST[‘profile’]);
                        $smarty -> assign(array("Podglad" => $strProfil, "Profile" => $_POST[‘profile’]));
                }
        if (isset($_POST[‘zapisz’]))
        {
                $strProfile = $db -> qstr($_POST[‘profile’], get_magic_quotes_gpc());
                $db -> Execute("UPDATE profile SET profile = ".$strProfile." WHERE id = ‘".$player -> id."’");
                $_POST[‘profile’] = htmltobbcode($_POST[‘profile’]);
                $smarty -> assign (array("Profile" => $_POST[‘profile’],
                "Profileview" => bbcodetohtml($_POST[‘profile’]),
                "Newprofile2" => NEW_PROFILE2));
        }
}
}

Read the rest of this entry…

Tags:
Posted in Santic Engine | Comments (16)

Posted on Wtorek, 24th marzec 2009 by admin

Pobierz mod kwiaciarnia
Gracze mogą między sobą przesyłać bukiety z bilecikiem i podpisem. Dodatkowo w bogactwach pokazuje listę bukietów, które otrzymaliśmy od innych.

Pobierz mod profile
Rozbudowany panel edycji profilu - edycja własnego koloru czcionki, trochę bbcode, dynamiczna instrukcja bbcode (po najechaniu na tag bbcode niżej w ramce wyświetla się jego opis) oraz możliwość zrobienia podglądu profilu przed jego zapisaniem

Screen 1
Screen 2

Autorem obu modyfikacji jest Khulmar, admin gry smoczadolina.pl :)

W następnym wpisie dodam szczegółową instrukcję wgrywania tych modyfikacji.

Posted in Bez kategorii | Comments (3)

Posted on Piątek, 13th marzec 2009 by admin

Po “naprodukowaniu” odrobiny contentu czas na opowiedzenie krótkiej historii o Santic.

Gra Santic na początku nazywała się Incubus, jakieś… 2 lata i 4 miesiące temu. Powstała gdy zacząłem się interesować bezpłatnymi skryptami open source. Wcześniej PHP nie interesowało mnie specjalnie, HTML-a nauczyłem się jeszcze w gimnazjum. Padło na Vallheru, gdyż grałem wcześniej trochę, co prawda sporo mniej niż mój brat ale spodobał mi się sam silnik. Zainstalowałem na serwerze firmy rodziców i jako zaawansowany użytkownik internetu poszukałem “porządnej” domeny. Porządna domena to była dla mnie połowa sukcesu, nic mnie wtedy tak nie odstraszało jak nieciekawa domena. Incubus.waw.pl nie było złe. Poznawałem PHP razem z rozwojem gry, po 3 miesiącach miałem około 200 graczy :) Niestety jak się później okazało początek rozwoju mojej gry nałożył się z końcem rozwoju Vallheru. Read the rest of this entry…

Tags: , ,
Posted in Bez kategorii | Comments (8)

Posted on Czwartek, 12th marzec 2009 by admin

Jeżeli nie powiedzie się instalacja instalatorem, pozostaje nam zrobić to, co zrobiłby za nas instalator.
Nadajemy uprawnienia plikom:
includes/config.php
templates_c
avatars
images/tribes
cache
mailer/mailerconfig.php

a następnie otwieramy plik config.php: Read the rest of this entry…

Tags: , ,
Posted in Bez kategorii | Comments (0)

Posted on Czwartek, 12th marzec 2009 by admin

W tym wpisie zaprezentuję skrypt Polmisiltha który bez większych problemów działa jako zamiennik adodb w Santic Engine/Vallheru. Nie do końca wiem jak wygląda sprawa wydajności, i w dodatku Kiri zwróciła uwagę na mysql_pconnect dzięki któremu następuje połączenie z bazą danych więc trzeba uważać bo może się okazać że okrojone adodb będzie dużo lepszym rozwiązaniem.

Santic Engine/Vallheru działa normalnie nawet gdy adodb będzie składał się tylko z tych plików: Read the rest of this entry…

Tags: ,
Posted in Santic Engine | Comments (0)

Posted on Czwartek, 12th marzec 2009 by admin

Opiszę w skrócie jak dodać konto testowe:

Przez panel Phpmyadmin dodajemy nowego gracza o ID 2, imię Tester, email test, hasło 098f6bcd4621d373cade4e832627b4f6      a ranga Tester. Zapytanie wygląda tak:

INSERT INTO `players` (`id`, `user`, `email`, `pass`, `rank`, `credits`, `energy`, `max_energy`) VALUES (’2′, ‘Tester’, ‘test’, ‘098f6bcd4621d373cade4e832627b4f6′, ‘Tester’, ‘0′, ‘0.00′, ‘0.00′, ‘0.00′);

Następnie w pliku start.php dodajemy linijki: (wstawiamy gdzieś w środku, byle nie pomiędzy nawiasami) Read the rest of this entry…

Tags: ,
Posted in Santic Engine | Comments (2)

Posted on Czwartek, 5th marzec 2009 by admin

Jak zacząć?

Znaleść darmowy serwer z PHP i SQL. Wybór jest duży, ja pokażę na przykładzie unl.pl

Wchodzimy na stronę http://unl.pl i klikamy link rejestracji. Uzupełniamy dane i czekamy na maila.  Po aktywacji logujemy się i naszym oczom ukazuje się DirectAdmin. Read the rest of this entry…

Tags: , ,
Posted in Santic Engine | Comments (3)

Posted on Poniedziałek, 2nd marzec 2009 by admin

Witam na moim blogu :)

Jeśli czytasz ten wpis, pewnie dawno pojawiły się następne. Pierwszy raz zainstalowałem wordpress-a i jak na razie mi się podoba, ma wszystko czego potrzeba. Brakuje tylko wyłączania emotikonek (albo nie umiem ich znaleść :))

No dobrze, o czym mam zamiar pisać. Read the rest of this entry…

Posted in Bez kategorii | Comments (4)

Modyfikacje na zlecenie O mnie