<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	>

<channel>
	<title>Anorowy Blog</title>
	<atom:link href="http://blog.santic.pl/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://blog.santic.pl</link>
	<description>Blog o grze Santic, Santic Engine, PHP, Vallheru ... I o mnie :)</description>
	<pubDate>Tue, 21 Apr 2009 22:12:24 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Anty-makro</title>
		<link>http://blog.santic.pl/?p=93</link>
		<comments>http://blog.santic.pl/?p=93#comments</comments>
		<pubDate>Mon, 20 Apr 2009 13:14:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Santic Engine]]></category>

		<category><![CDATA[anty-makro]]></category>

		<category><![CDATA[vallheru]]></category>

		<guid isPermaLink="false">http://blog.santic.pl/?p=93</guid>
		<description><![CDATA[


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 &#40;!isset&#40;$_SESSION&#91;&#8216;time&#8217;&#93;&#41;&#41; $_SESSION&#91;&#8216;time&#8217;&#93; = time&#40;&#41;;
if &#40;$_SESSION&#91;&#8216;macro&#8217;&#93; == &#8221;&#41; $_SESSION&#91;&#8216;macro&#8217;&#93; = 0;
$test [...]]]></description>
			<content:encoded><![CDATA[<div style="float:right;margin: 12px;"><script type="text/javascript"><!--
google_ad_client = "pub-4540724639599151";
/* 250x250, utworzono 09-04-07 */
google_ad_slot = "7030850647";
google_ad_width = 250;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div><p>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.</p>
<p>Oto nowy kod, do wstawienia w head.php gdzieś na dole. Stare anty-makro przyda się wykasować/zakomentować :)</p>
<div class="codesnip-container" >
<div class="codesnip" style="font-family: monospace;"><span class="kw1">if</span> <span class="br0">&#40;</span>!<a href="http://www.php.net/isset" onclick="pageTracker._trackPageview('/outgoing/www.php.net/isset?referer=');"><span class="kw3">isset</span></a><span class="br0">&#40;</span><span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st0">&#8216;time&#8217;</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st0">&#8216;time&#8217;</span><span class="br0">&#93;</span> = <a href="http://www.php.net/time" onclick="pageTracker._trackPageview('/outgoing/www.php.net/time?referer=');"><span class="kw3">time</span></a><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
<span class="kw1">if</span> <span class="br0">&#40;</span><span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st0">&#8216;macro&#8217;</span><span class="br0">&#93;</span> == <span class="st0">&#8221;</span><span class="br0">&#41;</span> <span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st0">&#8216;macro&#8217;</span><span class="br0">&#93;</span> = <span class="nu0">0</span>;<br />
<span class="re0">$test</span> = <a href="http://www.php.net/time" onclick="pageTracker._trackPageview('/outgoing/www.php.net/time?referer=');"><span class="kw3">time</span></a><span class="br0">&#40;</span><span class="br0">&#41;</span> - <span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st0">&#8216;time&#8217;</span><span class="br0">&#93;</span>;<br />
<span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st0">&#8216;time&#8217;</span><span class="br0">&#93;</span> = <a href="http://www.php.net/time" onclick="pageTracker._trackPageview('/outgoing/www.php.net/time?referer=');"><span class="kw3">time</span></a><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
<span class="kw1">if</span> <span class="br0">&#40;</span><span class="re0">$test</span> &lt;= <span class="nu0">0</span><span class="br0">&#41;</span><br />
<span class="br0">&#123;</span><br />
&nbsp; <span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st0">&#8216;macro&#8217;</span><span class="br0">&#93;</span> = <span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st0">&#8216;macro&#8217;</span><span class="br0">&#93;</span> + <span class="nu0">1</span>;<br />
&nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st0">&#8216;macro&#8217;</span><span class="br0">&#93;</span> &gt;= <span class="nu0">200</span><span class="br0">&#41;</span><br />
&nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; <span class="re0">$strDate</span> = <span class="re0">$db</span> -&gt; <span class="me1">DBDate</span><span class="br0">&#40;</span><span class="re0">$newdate</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; <span class="re0">$db</span> -&gt; <span class="me1">Execute</span><span class="br0">&#40;</span><span class="st0">&quot;INSERT INTO `log` (`owner`, `log`, `czas`) VALUES(1,&#8217;&quot;</span>.<span class="re0">$player</span> -&gt; <span class="me1">user</span>.<span class="st0">&quot; ID: &quot;</span>.<span class="re0">$player</span> -&gt; <span class="me1">id</span>.<span class="st0">&quot; - macro IP: &quot;</span>.<span class="re0">$player</span> -&gt; <span class="me1">ip</span>.<span class="st0">&quot;&#8217;, &quot;</span>.<span class="re0">$strDate</span>.<span class="st0">&quot;)&quot;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; <a href="http://www.php.net/exit" onclick="pageTracker._trackPageview('/outgoing/www.php.net/exit?referer=');"><span class="kw3">exit</span></a><span class="br0">&#40;</span><span class="st0">&#8216;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&#8242;</span><span class="br0">&#41;</span>;<br />
&nbsp; <span class="br0">&#125;</span><br />
<span class="br0">&#125;</span> <span class="kw1">else</span> <br />
<span class="br0">&#123;</span><br />
&nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st0">&#8216;macro&#8217;</span><span class="br0">&#93;</span> &gt;= <span class="re0">$test</span> * <span class="nu0">5</span><span class="br0">&#41;</span> <span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st0">&#8216;macro&#8217;</span><span class="br0">&#93;</span> = <span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st0">&#8216;macro&#8217;</span><span class="br0">&#93;</span> - <span class="re0">$test</span> * <span class="nu0">5</span>;<br />
&nbsp; <span class="kw1">else</span> <span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st0">&#8216;macro&#8217;</span><span class="br0">&#93;</span> = <span class="nu0">0</span>;<br />
<span class="br0">&#125;</span></div>
</div>
<p>Poprawiona wersja :)</p>
<p>jeśli gracz kliknie 200 razy pod rząd w odstępach krótszych niż sekunda wyświetli mu się błąd :) </p>
<p>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.</p>
<p>Odstęp można zmienić, np jeśli ktoś chce ustawić odstęp między odświeżeniami do 2 sekund:<br />
if ($test <= 2)<br />
ale z moich testów wynika że niektórzy w górach czy sprzedając jakieś przedmioty mieszczą się w takim limicie :P<br />
Sugestie mile widziane</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.santic.pl/?feed=rss2&amp;p=93</wfw:commentRss>
		</item>
		<item>
		<title>Modyfikacje na zlecenie</title>
		<link>http://blog.santic.pl/?p=73</link>
		<comments>http://blog.santic.pl/?p=73#comments</comments>
		<pubDate>Mon, 06 Apr 2009 15:50:24 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Bez kategorii]]></category>

		<category><![CDATA[modyfikacje]]></category>

		<category><![CDATA[modyfikacje na zlecenie]]></category>

		<category><![CDATA[Santic Engine]]></category>

		<guid isPermaLink="false">http://blog.santic.pl/?p=73</guid>
		<description><![CDATA[Czytając forum supportu Santic Engine moją uwagę zwróciła rozpaczliwa prośba najpierw olanego a następnie zakrzyczanego &#8220;nowego&#8221; 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 [...]]]></description>
			<content:encoded><![CDATA[<p>Czytając <a href="http://support.santic.pl" onclick="pageTracker._trackPageview('/outgoing/support.santic.pl?referer=');">forum supportu</a> Santic Engine moją uwagę zwróciła rozpaczliwa prośba najpierw olanego a następnie zakrzyczanego &#8220;nowego&#8221; 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. </p>
<p>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 &#8220;na zapiekankę&#8221; niż &#8220;na piwo&#8221; :)<span id="more-73"></span></p>
<p>Jeszcze moje spostrzeżenie a propos ogłoszeń. W <a href="http://www.mmocenter.pl/f92-sprzedam/modyfikacje-na-zlecenie-4771.html" onclick="pageTracker._trackPageview('/outgoing/www.mmocenter.pl/f92-sprzedam/modyfikacje-na-zlecenie-4771.html?referer=');">tym</a> ogłoszeniu od razu zostałem spytany o fakturę przez dociekliwego administratora. Rozśmieszyła mnie ta sytuacja, od razu było widać że mnie chce podpuścić :)</p>
<p>Dostałem już pierwszą prośbę - pocięcie layoutu. Nic trudnego, choć w sumie zaznaczyłem że layoutami się nie zajmuję. Szybko się uwinąłem i podesłałem screena do poprawek. Poczekam na pieniądze i wyślę pliki :) Zamieszczę go tutaj jeśli dostanę zgodę.</p>
<p><a href="http://blog.santic.pl/?page_id=76">Tutaj</a> jest link do szczegółów modyfikacji.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.santic.pl/?feed=rss2&amp;p=73</wfw:commentRss>
		</item>
		<item>
		<title>Mniej lub bardziej szczegółowa instrukcja instalacji modyfikacji Profile</title>
		<link>http://blog.santic.pl/?p=56</link>
		<comments>http://blog.santic.pl/?p=56#comments</comments>
		<pubDate>Tue, 24 Mar 2009 17:25:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Santic Engine]]></category>

		<category><![CDATA[modyfikacje]]></category>

		<guid isPermaLink="false">http://blog.santic.pl/?p=56</guid>
		<description><![CDATA[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 &#40;isset&#40;$_GET&#91;&#8216;view&#8217;&#93;&#41; &#38;&#38; $_GET&#91;&#8216;view&#8217;&#93; == &#34;profile&#34;&#41;
&#123;
&#160; &#160; [...]]]></description>
			<content:encoded><![CDATA[<p>Modyfikację Profile z <a href="http://blog.santic.pl/?p=52">poprzedniego wpisu</a> już wgrałem do gry Santic. Potrzebne było kika poprawek, a oto instrukcja:</p>
<p>1. Kopiujemy wszystkie pliki .js do katalogu js/profile/.<br />
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:</p>
<div class="codesnip-container" >
<div class="codesnip" style="font-family: monospace;"><span class="kw1">if</span> <span class="br0">&#40;</span><a href="http://www.php.net/isset" onclick="pageTracker._trackPageview('/outgoing/www.php.net/isset?referer=');"><span class="kw3">isset</span></a><span class="br0">&#40;</span><span class="re0">$_GET</span><span class="br0">&#91;</span><span class="st0">&#8216;view&#8217;</span><span class="br0">&#93;</span><span class="br0">&#41;</span> &amp;&amp; <span class="re0">$_GET</span><span class="br0">&#91;</span><span class="st0">&#8216;view&#8217;</span><span class="br0">&#93;</span> == <span class="st0">&quot;profile&quot;</span><span class="br0">&#41;</span><br />
<span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$ADODB_CACHE_DIR</span> = <span class="st0">&#8216;tmp&#8217;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$db</span> -&gt; <span class="me1">cacheFlush</span><span class="br0">&#40;</span><span class="st0">&quot;SELECT profile FROM profile WHERE id=?&quot;</span>, <a href="http://www.php.net/array" onclick="pageTracker._trackPageview('/outgoing/www.php.net/array?referer=');"><span class="kw3">array</span></a><span class="br0">&#40;</span><span class="re0">$player</span> -&gt; <span class="me1">id</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$objprofil</span> = <span class="re0">$db</span> -&gt; <span class="me1">SelectLimit</span><span class="br0">&#40;</span><span class="st0">&quot;SELECT * FROM profile WHERE id=&quot;</span>.<span class="re0">$player</span> -&gt; <span class="me1">id</span>, <span class="nu0">1</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>!<a href="http://www.php.net/isset" onclick="pageTracker._trackPageview('/outgoing/www.php.net/isset?referer=');"><span class="kw3">isset</span></a><span class="br0">&#40;</span><span class="re0">$objprofil</span> -&gt; <span class="me1">fields</span><span class="br0">&#91;</span><span class="st0">&#8216;id&#8217;</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="re0">$db</span> -&gt; <span class="me1">Execute</span><span class="br0">&#40;</span><span class="st0">&quot;INSERT INTO `profile` (`id`, `profile`) VALUES(&quot;</span>.<span class="re0">$player</span> -&gt; <span class="me1">id</span>.<span class="st0">&quot;, &#8221;)&quot;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$profil</span> = <span class="re0">$objprofil</span> -&gt; <span class="me1">fields</span><span class="br0">&#91;</span><span class="st0">&#8216;profile&#8217;</span><span class="br0">&#93;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$objprofil</span> -&gt; <span class="me1">Close</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">require_once</span><span class="br0">&#40;</span><span class="st0">&#8216;includes/bbcodeprof.php&#8217;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$profil</span> = htmltobbcode<span class="br0">&#40;</span><span class="re0">$profil</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$smarty</span> -&gt; <span class="me1">assign</span><span class="br0">&#40;</span><a href="http://www.php.net/array" onclick="pageTracker._trackPageview('/outgoing/www.php.net/array?referer=');"><span class="kw3">array</span></a><span class="br0">&#40;</span><span class="st0">&quot;Profileinfo&quot;</span> =&gt; PROFILE_INFO,<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="st0">&quot;Newprofile&quot;</span> =&gt; NEW_PROFILE,<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="st0">&quot;Profile&quot;</span> =&gt; <span class="re0">$profil</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="st0">&quot;Change&quot;</span> =&gt; CHANGE<span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><a href="http://www.php.net/isset" onclick="pageTracker._trackPageview('/outgoing/www.php.net/isset?referer=');"><span class="kw3">isset</span></a><span class="br0">&#40;</span><span class="re0">$_GET</span><span class="br0">&#91;</span><span class="st0">&#8217;step&#8217;</span><span class="br0">&#93;</span><span class="br0">&#41;</span> &amp;&amp; <span class="re0">$_GET</span><span class="br0">&#91;</span><span class="st0">&#8217;step&#8217;</span><span class="br0">&#93;</span> == <span class="st0">&quot;profile&quot;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><span class="re0">$player</span> -&gt; <span class="me1">rank</span> == <span class="st0">&#8216;Tester&#8217;</span><span class="br0">&#41;</span> error<span class="br0">&#40;</span><span class="st0">&#8216;ZaĹ‚ĂłĹĽ konto aby mieÄ‡ peĹ‚ny dostÄ™p do gry!&#8217;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><a href="http://www.php.net/empty" onclick="pageTracker._trackPageview('/outgoing/www.php.net/empty?referer=');"><span class="kw3">empty</span></a> <span class="br0">&#40;</span><span class="re0">$_POST</span><span class="br0">&#91;</span><span class="st0">&#8216;profile&#8217;</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>&nbsp; error <span class="br0">&#40;</span>EMPTY_FIELDS<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">require_once</span><span class="br0">&#40;</span><span class="st0">&#8216;includes/bbcodeprof.php&#8217;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$_POST</span><span class="br0">&#91;</span><span class="st0">&#8216;profile&#8217;</span><span class="br0">&#93;</span> = bbcodetohtml<span class="br0">&#40;</span><span class="re0">$_POST</span><span class="br0">&#91;</span><span class="st0">&#8216;profile&#8217;</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><a href="http://www.php.net/isset" onclick="pageTracker._trackPageview('/outgoing/www.php.net/isset?referer=');"><span class="kw3">isset</span></a><span class="br0">&#40;</span><span class="re0">$_POST</span><span class="br0">&#91;</span><span class="st0">&#8216;podglad&#8217;</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$strProfil</span> = <span class="st0">&quot;PodglÄ…d profilu:&quot;</span>.<span class="re0">$_POST</span><span class="br0">&#91;</span><span class="st0">&#8216;profile&#8217;</span><span class="br0">&#93;</span>.<span class="st0">&quot;&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$_POST</span><span class="br0">&#91;</span><span class="st0">&#8216;profile&#8217;</span><span class="br0">&#93;</span> = htmltobbcode<span class="br0">&#40;</span><span class="re0">$_POST</span><span class="br0">&#91;</span><span class="st0">&#8216;profile&#8217;</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$smarty</span> -&gt; <span class="me1">assign</span><span class="br0">&#40;</span><a href="http://www.php.net/array" onclick="pageTracker._trackPageview('/outgoing/www.php.net/array?referer=');"><span class="kw3">array</span></a><span class="br0">&#40;</span><span class="st0">&quot;Podglad&quot;</span> =&gt; <span class="re0">$strProfil</span>, <span class="st0">&quot;Profile&quot;</span> =&gt; <span class="re0">$_POST</span><span class="br0">&#91;</span><span class="st0">&#8216;profile&#8217;</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><a href="http://www.php.net/isset" onclick="pageTracker._trackPageview('/outgoing/www.php.net/isset?referer=');"><span class="kw3">isset</span></a><span class="br0">&#40;</span><span class="re0">$_POST</span><span class="br0">&#91;</span><span class="st0">&#8216;zapisz&#8217;</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$strProfile</span> = <span class="re0">$db</span> -&gt; <span class="me1">qstr</span><span class="br0">&#40;</span><span class="re0">$_POST</span><span class="br0">&#91;</span><span class="st0">&#8216;profile&#8217;</span><span class="br0">&#93;</span>, <a href="http://www.php.net/get_magic_quotes_gpc" onclick="pageTracker._trackPageview('/outgoing/www.php.net/get_magic_quotes_gpc?referer=');"><span class="kw3">get_magic_quotes_gpc</span></a><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$db</span> -&gt; <span class="me1">Execute</span><span class="br0">&#40;</span><span class="st0">&quot;UPDATE profile SET profile = &quot;</span>.<span class="re0">$strProfile</span>.<span class="st0">&quot; WHERE id = &#8216;&quot;</span>.<span class="re0">$player</span> -&gt; <span class="me1">id</span>.<span class="st0">&quot;&#8217;&quot;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$_POST</span><span class="br0">&#91;</span><span class="st0">&#8216;profile&#8217;</span><span class="br0">&#93;</span> = htmltobbcode<span class="br0">&#40;</span><span class="re0">$_POST</span><span class="br0">&#91;</span><span class="st0">&#8216;profile&#8217;</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$smarty</span> -&gt; <span class="me1">assign</span> <span class="br0">&#40;</span><a href="http://www.php.net/array" onclick="pageTracker._trackPageview('/outgoing/www.php.net/array?referer=');"><span class="kw3">array</span></a><span class="br0">&#40;</span><span class="st0">&quot;Profile&quot;</span> =&gt; <span class="re0">$_POST</span><span class="br0">&#91;</span><span class="st0">&#8216;profile&#8217;</span><span class="br0">&#93;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="st0">&quot;Profileview&quot;</span> =&gt; bbcodetohtml<span class="br0">&#40;</span><span class="re0">$_POST</span><span class="br0">&#91;</span><span class="st0">&#8216;profile&#8217;</span><span class="br0">&#93;</span><span class="br0">&#41;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="st0">&quot;Newprofile2&quot;</span> =&gt; NEW_PROFILE2<span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="br0">&#125;</span><br />
<span class="br0">&#125;</span></div>
</div>
<p><span id="more-56"></span><br />
w miejsce starej edycji profilu: if (isset($_GET['view']) &amp;&amp; $_GET['view'] == &#8220;profile&#8221;). Zdaję się na wasz spryt :)</p>
<p>3. Wstawiamy nowy kod do pliku templates/account.tpl:</p>
<div class="codesnip-container" >
<div class="codesnip" style="font-family: monospace;"><span class="br0">&#123;</span><span class="kw1">if</span> <span class="re0">$View</span> == <span class="st0">&quot;profile&quot;</span><span class="br0">&#125;</span><br />
&lt;script src=<span class="st0">&quot;js/profile/domel.js&quot;</span> type=<span class="st0">&quot;text/javascript&quot;</span>&gt;&lt;/script&gt; &lt;script src=<span class="st0">&quot;js/profile/script.js&quot;</span> type=<span class="st0">&quot;text/javascript&quot;</span>&gt;&lt;/script&gt;<br />
&lt;script src=<span class="st0">&quot;js/profile/color-picker.js&quot;</span> type=<span class="st0">&quot;text/javascript&quot;</span>&gt;&lt;/script&gt; &lt;script src=<span class="st0">&quot;js/profile/bbcode.js&quot;</span>&gt;&lt;/script&gt;&lt;/code&gt;</p>
<p><span class="br0">&#123;</span><span class="kw1">if</span> <span class="re0">$Step</span> == <span class="st0">&quot;profile&quot;</span><span class="br0">&#125;</span><br />
<span class="br0">&#123;</span><span class="re0">$Podglad</span><span class="br0">&#125;</span><br />
<span class="br0">&#123;</span><span class="re0">$Message</span><span class="br0">&#125;</span><br />
<span class="br0">&#123;</span>/<span class="kw1">if</span><span class="br0">&#125;</span></p>
<p>&lt;form id=<span class="st0">&quot;generator&quot;</span> action=<span class="st0">&quot;account.php?view=profile&amp;amp;step=profile&quot;</span> method=<span class="st0">&quot;post&quot;</span>&gt;<br />
&lt;table border=<span class="st0">&quot;0&quot;</span> cellspacing=<span class="st0">&quot;0&quot;</span> cellpadding=<span class="st0">&quot;2&quot;</span> width=<span class="st0">&quot;400&quot;</span> align=<span class="st0">&quot;center&quot;</span>&gt;<br />
&lt;tbody&gt;<br />
&lt;tr&gt;<br />
&lt;td align=<span class="st0">&quot;left&quot;</span>&gt;&lt;span <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span>&gt;<br />
&lt;input <span class="kw2">class</span>=<span class="st0">&quot;button&quot;</span> style=<span class="st0">&quot;font-weight: bold; width: 100%;&quot;</span> onclick=<span class="st0">&quot;bbstyle(2)&quot;</span> onmouseover=<span class="st0">&quot;helpline(&#8217;b')&quot;</span> name=<span class="st0">&quot;addbbcode2&quot;</span> type=<span class="st0">&quot;button&quot;</span> value=<span class="st0">&quot; B &quot;</span> accesskey=<span class="st0">&quot;b&quot;</span> /&gt;<br />
&lt;/span&gt;&lt;/td&gt;<br />
&lt;td&gt;&lt;span <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span>&gt;<br />
&lt;input <span class="kw2">class</span>=<span class="st0">&quot;button&quot;</span> style=<span class="st0">&quot;font-style: italic; width: 100%;&quot;</span> onclick=<span class="st0">&quot;bbstyle(4)&quot;</span> onmouseover=<span class="st0">&quot;helpline(&#8217;i')&quot;</span> name=<span class="st0">&quot;addbbcode4&quot;</span> type=<span class="st0">&quot;button&quot;</span> value=<span class="st0">&quot; i &quot;</span> accesskey=<span class="st0">&quot;i&quot;</span> /&gt;<br />
&lt;/span&gt;&lt;/td&gt;<br />
&lt;td&gt;&lt;span <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span>&gt;<br />
&lt;input <span class="kw2">class</span>=<span class="st0">&quot;button&quot;</span> style=<span class="st0">&quot;text-decoration: underline; width: 100%;&quot;</span> onclick=<span class="st0">&quot;bbstyle(6)&quot;</span> onmouseover=<span class="st0">&quot;helpline(&#8217;u')&quot;</span> name=<span class="st0">&quot;addbbcode6&quot;</span> type=<span class="st0">&quot;button&quot;</span> value=<span class="st0">&quot; u &quot;</span> accesskey=<span class="st0">&quot;u&quot;</span> /&gt;<br />
&lt;/span&gt;&lt;/td&gt;<br />
&lt;td&gt;&lt;span <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span>&gt;<br />
&lt;input <span class="kw2">class</span>=<span class="st0">&quot;button&quot;</span> style=<span class="st0">&quot;width: 100%;&quot;</span> onclick=<span class="st0">&quot;bbstyle(8)&quot;</span> onmouseover=<span class="st0">&quot;helpline(&#8217;q')&quot;</span> name=<span class="st0">&quot;addbbcode8&quot;</span> type=<span class="st0">&quot;button&quot;</span> value=<span class="st0">&quot; Cytat &quot;</span> accesskey=<span class="st0">&quot;q&quot;</span> /&gt;<br />
&lt;/span&gt;&lt;/td&gt;<br />
&lt;td&gt;&lt;span <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span>&gt;<br />
&lt;input <span class="kw2">class</span>=<span class="st0">&quot;button&quot;</span> style=<span class="st0">&quot;width: 100%;&quot;</span> onclick=<span class="st0">&quot;bbstyle(16)&quot;</span> onmouseover=<span class="st0">&quot;helpline(&#8217;p')&quot;</span> name=<span class="st0">&quot;addbbcode16&quot;</span> type=<span class="st0">&quot;button&quot;</span> value=<span class="st0">&quot; Img &quot;</span> accesskey=<span class="st0">&quot;p&quot;</span> /&gt;</p>
<p>&lt;/span&gt;&lt;/td&gt;<br />
&lt;td&gt;&lt;span <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span>&gt;<br />
&lt;input <span class="kw2">class</span>=<span class="st0">&quot;button&quot;</span> style=<span class="st0">&quot;width: 100%;&quot;</span> onclick=<span class="st0">&quot;bbstyle(0)&quot;</span> onmouseover=<span class="st0">&quot;helpline(&#8217;f')&quot;</span> name=<span class="st0">&quot;addbbcode0&quot;</span> type=<span class="st0">&quot;button&quot;</span> value=<span class="st0">&quot; Center &quot;</span> accesskey=<span class="st0">&quot;f&quot;</span> /&gt;<br />
&lt;/span&gt;&lt;/td&gt;<br />
&lt;td&gt;&lt;span <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span>&gt;<br />
&lt;input <span class="kw2">class</span>=<span class="st0">&quot;button&quot;</span> style=<span class="st0">&quot;text-decoration: underline; width: 100%;&quot;</span> onclick=<span class="st0">&quot;bbstyle(18)&quot;</span> onmouseover=<span class="st0">&quot;helpline(&#8217;w')&quot;</span> name=<span class="st0">&quot;addbbcode18&quot;</span> type=<span class="st0">&quot;button&quot;</span> value=<span class="st0">&quot; Right &quot;</span> accesskey=<span class="st0">&quot;w&quot;</span> /&gt;<br />
&lt;/span&gt;&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td colspan=<span class="st0">&quot;9&quot;</span>&gt;<br />
&lt;table border=<span class="st0">&quot;0&quot;</span> cellspacing=<span class="st0">&quot;0&quot;</span> cellpadding=<span class="st0">&quot;0&quot;</span> width=<span class="st0">&quot;100%&quot;</span>&gt;<br />
&lt;tbody&gt;<br />
&lt;tr&gt;<br />
&lt;td&gt;&lt;span <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span>&gt;Kolor:</p>
<p>&lt;select onmouseover=<span class="st0">&quot;helpline(&#8217;s&#8217;)&quot;</span> name=<span class="st0">&quot;addbbcode20&quot;</span>&gt; &lt;option <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span> style=<span class="st0">&quot;color:black;&quot;</span> value=<span class="st0">&quot;#FFFFFF&quot;</span>&gt;DomyĹ›lny&lt;/option&gt; &lt;option <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span> style=<span class="st0">&quot;color:darkred;&quot;</span> value=<span class="st0">&quot;darkred&quot;</span>&gt;Ciemnoczerwony&lt;/option&gt; &lt;option <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span> style=<span class="st0">&quot;color:red;&quot;</span> value=<span class="st0">&quot;red&quot;</span>&gt;Czerwony&lt;/option&gt; &lt;option <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span> style=<span class="st0">&quot;color:orange;&quot;</span> value=<span class="st0">&quot;orange&quot;</span>&gt;PomaraĹ„czowy&lt;/option&gt; &lt;option <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span> style=<span class="st0">&quot;color:brown;&quot;</span> value=<span class="st0">&quot;brown&quot;</span>&gt;BrÄ…zowy&lt;/option&gt; &lt;option <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span> style=<span class="st0">&quot;color:yellow;&quot;</span> value=<span class="st0">&quot;yellow&quot;</span>&gt;Ĺ»ĂłĹ‚ty&lt;/option&gt; &lt;option <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span> style=<span class="st0">&quot;color:green;&quot;</span> value=<span class="st0">&quot;green&quot;</span>&gt;Zielony&lt;/option&gt; &lt;option <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span> style=<span class="st0">&quot;color:olive;&quot;</span> value=<span class="st0">&quot;olive&quot;</span>&gt;Oliwkowy&lt;/option&gt; &lt;option <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span> style=<span class="st0">&quot;color:cyan;&quot;</span> value=<span class="st0">&quot;cyan&quot;</span>&gt;BĹ‚Ä™kitny&lt;/option&gt; &lt;option <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span> style=<span class="st0">&quot;color:blue;&quot;</span> value=<span class="st0">&quot;blue&quot;</span>&gt;Niebieski&lt;/option&gt; &lt;option <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span> style=<span class="st0">&quot;color:darkblue;&quot;</span> value=<span class="st0">&quot;darkblue&quot;</span>&gt;Ciemnoniebieski&lt;/option&gt; &lt;option <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span> style=<span class="st0">&quot;color:indigo;&quot;</span> value=<span class="st0">&quot;indigo&quot;</span>&gt;Purpurowy&lt;/option&gt; &lt;option <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span> style=<span class="st0">&quot;color:violet;&quot;</span> value=<span class="st0">&quot;violet&quot;</span>&gt;Fioletowy&lt;/option&gt; &lt;option <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span> style=<span class="st0">&quot;color:white;&quot;</span> value=<span class="st0">&quot;white&quot;</span>&gt;BiaĹ‚y&lt;/option&gt; &lt;option <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span> style=<span class="st0">&quot;color:black;&quot;</span> value=<span class="st0">&quot;black&quot;</span>&gt;Czarny&lt;/option&gt; &lt;/select&gt;</p>
<p>&lt;/span&gt;&lt;/td&gt;<br />
&lt;td&gt;&lt;label id=<span class="st0">&quot;type&quot;</span> <span class="kw2">class</span>=<span class="st0">&quot;sort&quot;</span> <span class="kw1">for</span>=<span class="st0">&quot;color1&quot;</span>&gt;Kolor wĹ‚asny:&lt;/label&gt;<br />
&lt;span&gt;<span class="co2">#&lt;/span&gt;</span><br />
&lt;input id=<span class="st0">&quot;color1&quot;</span> <span class="kw2">class</span>=<span class="st0">&quot;color&quot;</span> style=<span class="st0">&quot;width: 70px; font-size: 12px;&quot;</span> onmouseover=<span class="st0">&quot;helpline(&#8217;x')&quot;</span> name=<span class="st0">&quot;color1&quot;</span> type=<span class="st0">&quot;text&quot;</span> value=<span class="st0">&quot;000000&quot;</span> /&gt;&lt;/td&gt;<br />
&lt;td align=<span class="st0">&quot;right&quot;</span>&gt;&lt;span <span class="kw2">class</span>=<span class="st0">&quot;gensmall&quot;</span>&gt;&lt;a <span class="kw2">class</span>=<span class="st0">&quot;genmed&quot;</span> onmouseover=<span class="st0">&quot;helpline(&#8217;a')&quot;</span> href=<span class="st0">&quot;javascript:bbstyle(-1)&quot;</span>&gt;Zamknij Tagi&lt;/a&gt;&lt;/span&gt;&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;/tbody&gt;&lt;/table&gt;<br />
&lt;/td&gt;&nbsp; &nbsp;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td colspan=<span class="st0">&quot;9&quot;</span>&gt;&lt;span <span class="kw2">class</span>=<span class="st0">&quot;gensmall&quot;</span>&gt;<br />
&lt;input <span class="kw2">class</span>=<span class="st0">&quot;helpline&quot;</span> style=<span class="st0">&quot;width: 400px; font-size: 10px;&quot;</span> maxlength=<span class="st0">&quot;100&quot;</span> name=<span class="st0">&quot;helpbox&quot;</span> readonly=<span class="st0">&quot;readonly&quot;</span> size=<span class="st0">&quot;45&quot;</span> type=<span class="st0">&quot;text&quot;</span> value=<span class="st0">&quot;Rada: Style mogÄ… byÄ‡ stosowane szybko do zaznaczonego tekstu&quot;</span> /&gt;<br />
&lt;/span&gt;&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td colspan=<span class="st0">&quot;9&quot;</span>&gt;&lt;span <span class="kw2">class</span>=<span class="st0">&quot;gen&quot;</span>&gt;<br />
&lt;textarea <span class="kw2">class</span>=<span class="st0">&quot;post&quot;</span> style=<span class="st0">&quot;width: 400px;&quot;</span> onclick=<span class="st0">&quot;storeCaret(this);&quot;</span> onkeyup=<span class="st0">&quot;storeCaret(this);&quot;</span> cols=<span class="st0">&quot;30&quot;</span> rows=<span class="st0">&quot;20&quot;</span> name=<span class="st0">&quot;profile&quot;</span>&gt;<span class="br0">&#123;</span><span class="re0">$Profile</span><span class="br0">&#125;</span>&lt;/textarea&gt;<br />
&lt;input style=<span class="st0">&quot;width: 200px; font-size: 12px;&quot;</span> name=<span class="st0">&quot;podglad&quot;</span> type=<span class="st0">&quot;submit&quot;</span> value=<span class="st0">&quot;PodglÄ…d&quot;</span> /&gt;&lt;input style=<span class="st0">&quot;width: 200px; font-size: 12px;&quot;</span> name=<span class="st0">&quot;zapisz&quot;</span> type=<span class="st0">&quot;submit&quot;</span> value=<span class="st0">&quot;{$Change}&quot;</span> /&gt;</p>
<p>Przed zapisaniem profilu, moĹĽesz zrobiÄ‡ jego podglÄ…d widoczny tylko dla Ciebie i sprawdziÄ‡ co trzeba ewentualnie jeszcze dodaÄ‡/poprawiÄ‡</p>
<p>* - oznacza iĹĽ uĹĽyty tag jest otwarty</p>
<p>&lt;/span&gt;&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;/tbody&gt;&lt;/table&gt;<br />
&lt;table border=<span class="st0">&quot;0&quot;</span>&gt;<span class="br0">&#123;</span>/<span class="kw1">if</span><span class="br0">&#125;</span></div>
</div>
<p>Z Khulmar-owego pliku wyrzuciłem zbędne opisy a także zmieniłem szerokości tabel tak aby mieściła się w mojej grze.</p>
<p>4. Wrzucami pliki obrazków z katalogu images do images.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.santic.pl/?feed=rss2&amp;p=56</wfw:commentRss>
		</item>
		<item>
		<title>Dwie przydatne modyfikacje: Kwiaciarnia oraz wstawianie bbcode</title>
		<link>http://blog.santic.pl/?p=52</link>
		<comments>http://blog.santic.pl/?p=52#comments</comments>
		<pubDate>Tue, 24 Mar 2009 16:05:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Bez kategorii]]></category>

		<guid isPermaLink="false">http://blog.santic.pl/?p=52</guid>
		<description><![CDATA[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 [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://smoczadolina.pl/modyfikacje/kwiatki.zip" onclick="pageTracker._trackPageview('/outgoing/smoczadolina.pl/modyfikacje/kwiatki.zip?referer=');">Pobierz mod kwiaciarnia</a><br />
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.</p>
<p><a href="http://smoczadolina.pl/modyfikacje/profile.zip" onclick="pageTracker._trackPageview('/outgoing/smoczadolina.pl/modyfikacje/profile.zip?referer=');">Pobierz mod profile</a><br />
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</p>
<p><a href="http://smoczadolina.pl/images/screen1.png" title="screen modyfikacji profile" / onclick="pageTracker._trackPageview('/outgoing/smoczadolina.pl/images/screen1.png?referer=');">Screen 1</a><br />
<a href="http://smoczadolina.pl/images/screen2.png" title="screen modyfikacji profile" / onclick="pageTracker._trackPageview('/outgoing/smoczadolina.pl/images/screen2.png?referer=');">Screen 2</a></p>
<p>Autorem obu modyfikacji jest Khulmar, admin gry smoczadolina.pl :)</p>
<p>W następnym wpisie dodam szczegółową instrukcję wgrywania tych modyfikacji.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.santic.pl/?feed=rss2&amp;p=52</wfw:commentRss>
		</item>
		<item>
		<title>Jak to było z Santic Engine&#8230;</title>
		<link>http://blog.santic.pl/?p=48</link>
		<comments>http://blog.santic.pl/?p=48#comments</comments>
		<pubDate>Thu, 12 Mar 2009 23:19:42 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Bez kategorii]]></category>

		<category><![CDATA[Historia Santic]]></category>

		<category><![CDATA[Santic]]></category>

		<category><![CDATA[Santic Engine]]></category>

		<guid isPermaLink="false">http://blog.santic.pl/?p=48</guid>
		<description><![CDATA[Po &#8220;naprodukowaniu&#8221; odrobiny contentu czas na opowiedzenie krótkiej historii o Santic.
Gra Santic na początku nazywała się Incubus, jakieś&#8230; 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 [...]]]></description>
			<content:encoded><![CDATA[<p>Po &#8220;naprodukowaniu&#8221; odrobiny contentu czas na opowiedzenie krótkiej historii o Santic.</p>
<p>Gra Santic na początku nazywała się Incubus, jakieś&#8230; 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 &#8220;porządnej&#8221; 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. <span id="more-48"></span></p>
<p>W międzyczasie kupiłem domenę incu.pl którą zmieniłem później na santic.pl. Tak, Santic wzięło się od firmy moich rodziców, ta domena akurat nie była im potrzebna. Prowadzą firmę produkującą buty. A wracając do tematu, gdy moja gra się rozwijała, Vallheru powoli padało. Gdy połączyło się z dwoma innymi grami to już było po prostu zagarnięcie graczy i likwidacja projektu. Orodlin nigdy nie pokazał kawałka kodu, mocno się reklamował i mocno próbował rekrutować kolejnych administratorów gier. Całkiem nieźle im wyszła gra, choć patrząc na ilość osób które przyłożyło rękę do tego silnika - można było zrobić coś lepszego i to udostępnić. Jaki ma sens tworzenie świetnej gry przez kilka-kilkanaście osób, wchłaniając trzy inne po drodze jeśli nie udostępnia się silnika? Ubolewałem nad tym. Czytałem tu i tam o możliwym udostępnieniu części kodu bez tego i siamtego, ale też się nie doczekałem. </p>
<p>Więc pokazałem swoje nieIdealneNieOptymalne wypociny. Ale wszyscy skorzystają, inni mając mój kod, ja mając mniej błędów i link w stopce wielu gier :) (czyt. satysfakcję). Na początku znalazło się kilku chętnych do pomocy, teraz są hm&#8230; niemrawi :) zobaczymy jak to będzie, support się ładnie rozkręcił, jest już kilka gier działających całkiem sprawnie na Santic Engine + kilkadziesiąt zainstalowanych. Myślę że silnik będzie się rozwijał równolegle z grą, może nie tak ściśle jak to było w Vallheru i z większą równowagą pomiędzy samą grą a jej dostępnym silnikiem. W Vallheru sama gra była jedynie dodatkiem do silnika, wszystko ładnie testowane i nowe wersje były wypuszczane co kilka miesięcy. Ja wolę mimo bardziej chaotycznych zmian - szybsze działanie. Od 0.2.2 będę dokładniej dokumentował zmiany, coraz więcej gier powstaje na Santic Engine i nie można zapominać o tych którzy wcześniej założyli gry. Zobaczymy jak to wyjdzie&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.santic.pl/?feed=rss2&amp;p=48</wfw:commentRss>
		</item>
		<item>
		<title>Instalacja ręczna Santic Engine 0.2.2</title>
		<link>http://blog.santic.pl/?p=43</link>
		<comments>http://blog.santic.pl/?p=43#comments</comments>
		<pubDate>Thu, 12 Mar 2009 22:44:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Bez kategorii]]></category>

		<category><![CDATA[instalacja]]></category>

		<category><![CDATA[instalacja ręczna]]></category>

		<category><![CDATA[Santic Engine]]></category>

		<guid isPermaLink="false">http://blog.santic.pl/?p=43</guid>
		<description><![CDATA[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:
&#60;?php
require_once(&#8217;adodb/adodb.inc.php&#8217;);
$db = new NewADOConnection();
//Tę część musisz dostosować do swojego serwera!
$db -&#62; Connect(&#8221;localhost&#8221;, &#8220;root&#8221;, &#8220;&#8221;, &#8220;engine&#8221;);
$gamename= &#8220;Santic&#8221;;
$gamemail = &#8220;rpg@santic.pl&#8221;;
$gameadress = &#8220;http://santic.pl/&#8221;;
$adminname = &#8220;Anor&#8221;;
$adminmail = &#8220;rpg@santic.pl&#8221;;
$city1 = &#8220;Pierwsze&#8221;;
$city1a = &#8220;Pierwszym&#8221;;
$city1b = &#8220;Pierwszego&#8221;;
$city2 = &#8220;MiastoDrugie&#8221;;
$city3 = &#8220;MiastoTrzecie&#8221;;
$pllimit = [...]]]></description>
			<content:encoded><![CDATA[<p>Jeżeli nie powiedzie się instalacja instalatorem, pozostaje nam zrobić to, co zrobiłby za nas instalator.<br />
<a href="http://webmade.org/porady/ogolne/chmod.php" onclick="pageTracker._trackPageview('/outgoing/webmade.org/porady/ogolne/chmod.php?referer=');">Nadajemy uprawnienia plikom</a>:<br />
includes/config.php<br />
templates_c<br />
avatars<br />
images/tribes<br />
cache<br />
mailer/mailerconfig.php</p>
<p>a następnie otwieramy plik config.php:<span id="more-43"></span></p>
<div class="codesnip-container" >&lt;?php<br />
require_once(&#8217;adodb/adodb.inc.php&#8217;);<br />
$db = new NewADOConnection();<br />
//Tę część musisz dostosować do swojego serwera!<br />
$db -&gt; Connect(&#8221;localhost&#8221;, &#8220;root&#8221;, &#8220;&#8221;, &#8220;engine&#8221;);<br />
$gamename= &#8220;Santic&#8221;;<br />
$gamemail = &#8220;rpg@santic.pl&#8221;;<br />
$gameadress = &#8220;http://santic.pl/&#8221;;<br />
$adminname = &#8220;Anor&#8221;;<br />
$adminmail = &#8220;rpg@santic.pl&#8221;;</p>
<p>$city1 = &#8220;Pierwsze&#8221;;<br />
$city1a = &#8220;Pierwszym&#8221;;<br />
$city1b = &#8220;Pierwszego&#8221;;<br />
$city2 = &#8220;MiastoDrugie&#8221;;<br />
$city3 = &#8220;MiastoTrzecie&#8221;;<br />
$pllimit = 200;</p>
<p>$ADODB_FETCH_MODE = ADODB_FETCH_ASSOC;<br />
$db -&gt; Execute(&#8221;SET NAMES utf8&#8243;);<br />
?&gt;</p></div>
<p>Wpisujemy do linii:</p>
<div class="codesnip-container" >$db -&gt; Connect(&#8221;localhost&#8221;, &#8220;root&#8221;, &#8220;&#8221;, &#8220;engine&#8221;);</div>
<p>po kolei dane które dostaliśmy od unl.pl po recznym zalozeniu u nich bazy danych. Trzeba najpierw wejść do nich do Direct Admina i tam założyć bazę danych podając swoje hasło i nazwę bazy danych. Po jej zalozeniu pojawiają się na samym środku dane do połączenia z baza.</p>
<p>Wpisujemy do tej linii po kolei:<br />
pierwsze pole zamiast localhost, host bazy danych.<br />
drugie pole - login do bazy danych, na unl to jest chyba login do panelu, ten który dostaje się w mailu.<br />
trzecie pole - hasło do bazy danych, wpisywane przy jej tworzeniu<br />
czwarte pole - nazwa bazy danych, tez wpisywane przy jej tworzeniu</p>
<p>Resztę w config.php można zmienić później jak już połączenie z baza będzie działało.</p>
<div class="codesnip-container" >$gamename= &#8220;Santic&#8221;; //nazwa gry<br />
$gamemail = &#8220;rpg@santic.pl&#8221;; //email gry, z niego będą wysyłane wiadomości do graczy<br />
$gameadress = &#8220;http://santic.pl/&#8221;; //adres gry<br />
$adminname = &#8220;Anor&#8221;; //nazwa admina<br />
$adminmail = &#8220;rpg@santic.pl&#8221;; //email admina<br />
//a tutaj nazwy miast i ich odmiany<br />
$city1 = &#8220;Pierwsze&#8221;;<br />
$city1a = &#8220;Pierwszym&#8221;;<br />
$city1b = &#8220;Pierwszego&#8221;;<br />
$city2 = &#8220;MiastoDrugie&#8221;;<br />
$city3 = &#8220;MiastoTrzecie&#8221;;<br />
$pllimit = 200; //limit graczy online</div>
<p>Druga rzecz którą musimy zrobić, to zalogować się do panelu Phpmyadmin, i tam ręcznie wgrać bazę danych. Aby to zrobić (już po stworzeniu pustej bazy danych) klikamy przycisk import. Wybieramy plik install/db/mysql40.sql i jeśli wszystko dobrze poszło można już próbować wejść na stronę gry. Jeżeli wszystko działa, usuwamy katalog install.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.santic.pl/?feed=rss2&amp;p=43</wfw:commentRss>
		</item>
		<item>
		<title>Odchudzanie adodb</title>
		<link>http://blog.santic.pl/?p=28</link>
		<comments>http://blog.santic.pl/?p=28#comments</comments>
		<pubDate>Thu, 12 Mar 2009 22:25:25 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Santic Engine]]></category>

		<category><![CDATA[ADOdb]]></category>

		<guid isPermaLink="false">http://blog.santic.pl/?p=28</guid>
		<description><![CDATA[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 [...]]]></description>
			<content:encoded><![CDATA[<p>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.</p>
<p>Santic Engine/Vallheru działa normalnie nawet gdy adodb będzie składał się tylko z tych plików:<span id="more-28"></span><br />
adodb.inc.php<br />
adodb-active-record.inc.php<br />
adodb-csvlib.inc.php<br />
adodb-exceptions.inc.php<br />
adodb-iterator.inc.php<br />
adodb-lib.inc.php<br />
adodb-time.inc.php<br />
drivers/adodb-mysql.inc.php<br />
co może okazać się znacznie lepszym rozwiązaniem.</p>
<p>Tak czy siak skrypt Polmisiltha jest dużo mniejszy i wydaje się być szybszy. Powinienem zrobić jakieś testy, może dodam je w następnym wpisie. Polecam zrobienie własnych prób.</p>
<p>Czego ten skrypt nie ma? Prawie wszystkiego co występuje w adodb ale z czego zwykły administrator Vallheru nie korzysta. Mi najbardziej brakuje cache zapytań. Ciekawy o adodb cache znajdziecie <a href="http://albi.vxe.pl/2008/09/12/funkcje-adodb-i-wykonywanie-zapytan-cz-3/" onclick="pageTracker._trackPageview('/outgoing/albi.vxe.pl/2008/09/12/funkcje-adodb-i-wykonywanie-zapytan-cz-3/?referer=');">tutaj</a>. Zamieniłem adodb od Santic Engine 0.2 na tę wersję i jak na razie nie było żadnych skarg.</p>
<h3>Instrukcja instalacji:</h3>
<p>Podmienić na plik adodb/adodb.inc.php i zmienić linijkę w pliku includes/config.php<br />
$db = NewADOConnection(&#8217;mysql&#8217;);<br />
na<br />
$db = new NewADOConnection();</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.santic.pl/?feed=rss2&amp;p=28</wfw:commentRss>
		</item>
		<item>
		<title>Konto testowe</title>
		<link>http://blog.santic.pl/?p=18</link>
		<comments>http://blog.santic.pl/?p=18#comments</comments>
		<pubDate>Thu, 12 Mar 2009 22:07:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Santic Engine]]></category>

		<category><![CDATA[modyfikacje]]></category>

		<guid isPermaLink="false">http://blog.santic.pl/?p=18</guid>
		<description><![CDATA[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 (&#8217;2&#8242;, &#8216;Tester&#8217;, &#8216;test&#8217;, &#8216;098f6bcd4621d373cade4e832627b4f6&#8242;, &#8216;Tester&#8217;, &#8216;0&#8242;, &#8216;0.00&#8242;, &#8216;0.00&#8242;, &#8216;0.00&#8242;);
Następnie w pliku start.php dodajemy linijki: (wstawiamy gdzieś [...]]]></description>
			<content:encoded><![CDATA[<p>Opiszę w skrócie jak dodać konto testowe:</p>
<p>Przez panel Phpmyadmin dodajemy nowego gracza o ID 2, imię Tester, email test, hasło 098f6bcd4621d373cade4e832627b4f6      a ranga Tester. Zapytanie wygląda tak:</p>
<div class="codesnip-container" >INSERT INTO `players` (`id`, `user`, `email`, `pass`, `rank`, `credits`, `energy`, `max_energy`) VALUES (&#8217;2&#8242;, &#8216;Tester&#8217;, &#8216;test&#8217;, &#8216;098f6bcd4621d373cade4e832627b4f6&#8242;, &#8216;Tester&#8217;, &#8216;0&#8242;, &#8216;0.00&#8242;, &#8216;0.00&#8242;, &#8216;0.00&#8242;);</div>
<p>Następnie w pliku start.php dodajemy linijki: (wstawiamy gdzieś w środku, byle nie pomiędzy nawiasami)<span id="more-18"></span></p>
<div class="codesnip-container" >if ($player -> rank == &#8216;Tester&#8217;){<br />
$db -> Execute(&#8221;UPDATE `players` SET `tribe`=0, `level`=1, `exp`=0, `age`=0, `ajax`=&#8217;T', `style`=&#8217;layout_beige.css&#8217;, `ukryty`=&#8217;N', `credits`=0, `energy`=0, `max_energy`=0, `strength`=3, `agility`=3, `ap`=15, `platinum`=0, `hp`=15, `max_hp`=15, `bank`=0, `ability`=0.01, `corepass`=&#8217;N', `trains`=5, `inteli`=3, `pw`=0, `atak`=0.01, `unik`=0.01, `magia`=0.01, `immu`=&#8217;Y', `pm`=6, `szyb`=3, `wytrz`=3, `alchemia`=0.01, `wisdom`=3, `shoot`=0.01, `fletcher`=0.01, `rasa`=&#8221;, `klasa`=&#8221;, `rasa2`=&#8221;, `deity`=&#8221;, `gender`=&#8221;, `leadership`=0.01, `wins`=0, `losses`=0, `lastkilled`=&#8217;&#8230;&#8217;, `lastkilledby`=&#8217;&#8230;&#8217;, `breeding`=0.01, `mining`=0.01, `ikona`=&#8221;, `apmax`=0, `cube`=1, `opis`=&#8221;, `atakowany`=&#8217;N', `opis`=&#8221;, `tag`=&#8221;, `lumberjack`=0.01, `herbalist`=0.01, `crime`=1, `maps`=0, `jeweller`=0.01, `profesja`=&#8221; WHERE `id`=2&#8243;) or die($db -> ErrorMsg());<br />
$db -> Execute(&#8221;DELETE FROM `mail` WHERE `owner`=2&#8243;) or die($db -> ErrorMsg());<br />
$db -> Execute(&#8221;DELETE FROM `log` WHERE `owner`=2&#8243;) or die($db -> ErrorMsg());<br />
$db -> Execute(&#8221;DELETE FROM `equipment` WHERE `owner`=2&#8243;) or die($db -> ErrorMsg());<br />
$db -> Execute(&#8221;DELETE FROM `notatnik` WHERE `gracz`=2&#8243;) or die($db -> ErrorMsg());<br />
$db -> Execute(&#8221;DELETE FROM `profile` WHERE `id`=2&#8243;) or die($db -> ErrorMsg());<br />
}</div>
<p>Kolejna rzecz - guzik logowania do konta testowego:</p>
<div class="codesnip-container" >&lt;form style=&#8221;margin: 0;&#8221; action=&#8221;start.php&#8221; method=&#8221;post&#8221;&gt; &lt;input name=&#8221;email&#8221; type=&#8221;hidden&#8221; value=&#8221;test&#8221; /&gt;<br />
&lt;input name=&#8221;pass&#8221; type=&#8221;hidden&#8221; value=&#8221;test&#8221; /&gt;<br />
&lt;input type=&#8221;submit&#8221; value=&#8221;Konto testowe&#8221; /&gt;&lt;/form&gt;</div>
<p>Wstawiamy go gdzieś na stronie głównej.</p>
<p>A teraz najbardziej żmudne - ograniczamy konto testowe.<br />
Wstawiamy kod:</p>
<div class="codesnip-container" >if ($player -&gt; rank == &#8216;Tester&#8217;) error(&#8217;Załóż konto aby mieć dostęp do wszystkich lokacji!&#8217;);</div>
<p>we wszystkich miejscach które chcemy zablokować dla konta testowego. Na przykład wyłączenie zmiany avatara: wstawiamy w pliku account.php podaną wyżej linię tuż za:</p>
<div class="codesnip-container" >if (isset($_GET['view']) &amp;&amp; $_GET['view'] == &#8220;avatar&#8221;)<br />
{</div>
<p>Takich miejsc do zablokowania jest dużo, na przykład zmiana imienia, rozmowy w karczmie, bank.</p>
<p>I to chyba byłoby na tyle, zrobienie konta testowego jest bardzo przydatne, jest dużo mniej kont &#8220;śmieciowych&#8221; na które ktoś loguje się raz, łatwiej zachęcić gracza do zajrzenia do gry gdy nie trzeba czekać na rejestrację.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.santic.pl/?feed=rss2&amp;p=18</wfw:commentRss>
		</item>
		<item>
		<title>Zakładanie gry na unl.pl dla &#8220;zielonych&#8221; ;)</title>
		<link>http://blog.santic.pl/?p=13</link>
		<comments>http://blog.santic.pl/?p=13#comments</comments>
		<pubDate>Thu, 05 Mar 2009 13:55:04 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Santic Engine]]></category>

		<category><![CDATA[początki]]></category>

		<category><![CDATA[zakładanie gry]]></category>

		<guid isPermaLink="false">http://blog.santic.pl/?p=13</guid>
		<description><![CDATA[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.
Po rejestracji potrzebna będzie baza danych. W innych darmowych hostingach może to inaczej wyglądać, dane bazy danych [...]]]></description>
			<content:encoded><![CDATA[<h3>Jak zacząć?</h3>
<p>Znaleść darmowy serwer z PHP i SQL. Wybór jest duży, ja pokażę na przykładzie unl.pl</p>
<p>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.<span id="more-13"></span></p>
<p>Po rejestracji potrzebna będzie baza danych. W innych darmowych hostingach może to inaczej wyglądać, dane bazy danych mogą być podane na samym początku, ale my klikamy Konfiguracja MySQL w Twoje konto a następnie Załóż nową bazę danych. Wklepujemy hasło i bazę danych, i zapisujemy dane które dostaniemy po kliknięciu Załóż.</p>
<p style="text-align: left;">Kolej na skopiowanie plików gry na serwer. Ściągamy na swój dysk <a title="Santic Engine" href="https://sourceforge.net/projects/santic" target="_blank" onclick="pageTracker._trackPageview('/outgoing/sourceforge.net/projects/santic?referer=');">Santic Engine</a>, lub jeśli ktoś woli <a href="http://sourceforge.net/projects/vallheru" target="_blank" onclick="pageTracker._trackPageview('/outgoing/sourceforge.net/projects/vallheru?referer=');">Vallheru</a>. Santic Engine bazuje na Vallheru i jest znacznie szybszy i bezpieczniejszy, ale to temat na inny wpis :) Aby połączyć się z serwerem unl i wgrać na niego pliki, potrzebny jest nam program do łączenia się przez ftp, np. <a href="http://totalcmd.pl/download/app/new/" target="_blank" onclick="pageTracker._trackPageview('/outgoing/totalcmd.pl/download/app/new/?referer=');">Total Commander</a> czy <a href="http://winscp.net/eng/download.php" target="_blank" onclick="pageTracker._trackPageview('/outgoing/winscp.net/eng/download.php?referer=');">WinSCP</a> (ja używam winscp portable executive, choć TC jest bardziej popularny). Instalujemy go i łączymy się z unl.pl. Instrukcja jak połączyć się używając Total Commandera jest <a href="http://totalcmd.pl/faq/7" target="_blank" onclick="pageTracker._trackPageview('/outgoing/totalcmd.pl/faq/7?referer=');">tutaj</a>. Ja używam drugiego z opisanych na tej stronie sposobów.</p>
<p style="text-align: left;">Sesja: dowolna nazwa,</p>
<p style="text-align: left;">Nazwa hosta: nazwaStrony.unl.pl</p>
<p style="text-align: left;">Użytkownik: login do panelu DirectAdmin</p>
<p style="text-align: left;">Hasło: hasło do panelu DirectAdmin</p>
<p style="text-align: left;">I łączymy się. W lewym okienku szukamy naszej gry i wchodzimy do katalogu Santic Engine, a w prawym wchodzimy do /public_html. Zaznaczamy całość plików i klikamy kopiuj. Po zakończeniu operacji kasujemy domyślny plik index.html (na unl.pl).</p>
<p style="text-align: left;">
<h3 style="text-align: left;">Instalacja gry:</h3>
<p>Grę można zainstalować na dwa sposoby, automatycznym skryptem lub ręcznie. Uruchamiamy plik http://twojaNazwa.unl.pl/install/install.php. Zacznie on od sprawdzenia czy wszystkie uprawnienia zostały dobrze ustawione. Gra musi mieć możliwość zapisywania swoich plików tymczasowych, avatarów itp. <a href="http://webmade.org/porady/ogolne/chmod.php" target="_blank" onclick="pageTracker._trackPageview('/outgoing/webmade.org/porady/ogolne/chmod.php?referer=');">Instrukcja nadawania uprawnień</a>. Pliki którym trzeba nadać uprawnienia zapisu:</p>
<p>includes/config.php<br />
templates_c<br />
avatars<br />
images/tribes<br />
cache<br />
mailer/mailerconfig.php.</p>
<p>Gdy instalator sprawdzi poprawność uprawnień czas wpisać dane połączenia bazy danych, nazwy miast, dane gry.</p>
<p>Dane połączenia z bazą danych to po prostu te dane które dostaliśmy jako wynik tworzenia bazy danych.</p>
<p>Jeśli wszystko jest ok, wybieramy sposób wysyłania maili. Nie wiem czy na unl jest funkcja mail, ale nią się posłużę. Jeśli nie będzie, trzeba skonfigurować zewnętrzny serwer SMTP, czyli wysyłanie maili z zewnętrznej poczty.</p>
<p>Po zakończonej instalacji dostajemy login i hasło do gry: Twój login do gry to Admin, a hasło: Admin1</p>
<p>Kasujemy katalog install, to ważne, nie chcemy przecież żeby ktoś nam znowu zainstalował grę&#8230;</p>
<p>Cóż, wszystko gotowe, sprawdzamy czy gra działa jak trzeba pod adresem twojagra.unl.pl :)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.santic.pl/?feed=rss2&amp;p=13</wfw:commentRss>
		</item>
		<item>
		<title>Pierwszy wpis</title>
		<link>http://blog.santic.pl/?p=8</link>
		<comments>http://blog.santic.pl/?p=8#comments</comments>
		<pubDate>Mon, 02 Mar 2009 19:08:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Bez kategorii]]></category>

		<guid isPermaLink="false">http://santic.pl/blog/?p=8</guid>
		<description><![CDATA[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ć. Troszkę o sobie, własnych spostrzeżeniach i przemyśleniach, troszkę o mojej grze [...]]]></description>
			<content:encoded><![CDATA[<p>Witam na moim blogu :)</p>
<p>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ść :))</p>
<p>No dobrze, o czym mam zamiar pisać.<span id="more-8"></span> Troszkę o sobie, własnych spostrzeżeniach i przemyśleniach, troszkę o mojej grze a troszkę o silniku mojej gry :) Nie spodziewajcie się wielkich filozoficznych wywodów, po pierwsze nikomu nie chciałoby się ich czytać na czyimś blogu, po drugie mi nie chciałoby się ich pisać. Więc będę raczej przekazywał jakieś pożyteczne czy interesujące informacje. Ale też nie jestem dziennikarzem, jestem (bio)informatykiem :) Brak polskich znaków (nie ortografii!) może się zdarzyć.</p>
<p>Nie wiem też czy uda mi się utrzymać regularność wpisów w tym blogu, ale jeśli ktokolwiek ma tutaj zaglądać - muszę :) A niewielu się to udaje. Tak więc zobaczymy co z tego wyjdzie.</p>
<p>Wygląd bloga jest jaki jest, schludny ale jeden z domyślnych. Na razie wolę coś napisać niż szperać w googlu i szukać czegoś ładnego :)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.santic.pl/?feed=rss2&amp;p=8</wfw:commentRss>
		</item>
	</channel>
</rss>
