<?xml version="1.0"?>
<rss version="2.0"><channel><title>Tutoriais de Programa&#xE7;&#xE3;o Latest Topics</title><link>https://xtibia.com/forum/forum/587-tutoriais-de-programa%C3%A7%C3%A3o/</link><description>Tutoriais de Programa&#xE7;&#xE3;o Latest Topics</description><language>en</language><item><title>[Tutorial] Ajustando andar diagonal</title><link>https://xtibia.com/forum/topic/246364-tutorial-ajustando-andar-diagonal/</link><description><![CDATA[
<p style="color:#353c41;">
	Bom, vou mostrar a vocês como editar o andar diagonal no otclient da maneira que vocês preferirem...
</p>

<p style="color:#353c41;">
	Atualmente, creio que quando você anda diagonalmente, tem um delay até que você possa andar novamente. Vou ensinar tirar esse delay, e deixar a velocidade ao gosto de vocês.
</p>

<p style="color:#353c41;">
	 
</p>

<p style="color:#353c41;">
	Em <strong>creature.cpp</strong> <strong>do server</strong>, procure pela linha:
</p>

<pre class="ipsCode prettyprint lang-c prettyprinted">
<span class="kwd">if</span><span class="pun">(</span><span class="pln">std</span><span class="pun">::</span><span class="pln">abs</span><span class="pun">(</span><span class="pln">newPos</span><span class="pun">.</span><span class="pln">x </span><span class="pun">-</span><span class="pln"> oldPos</span><span class="pun">.</span><span class="pln">x</span><span class="pun">)</span><span class="pln"> </span><span class="pun">&gt;=</span><span class="pln"> </span><span class="lit">1</span><span class="pln"> </span><span class="pun">&amp;&amp;</span><span class="pln"> std</span><span class="pun">::</span><span class="pln">abs</span><span class="pun">(</span><span class="pln">newPos</span><span class="pun">.</span><span class="pln">y </span><span class="pun">-</span><span class="pln"> oldPos</span><span class="pun">.</span><span class="pln">y</span><span class="pun">)</span><span class="pln"> </span><span class="pun">&gt;=</span><span class="pln"> </span><span class="lit">1</span><span class="pun">)</span><span class="pln">
	lastStepCost </span><span class="pun">=</span><span class="pln"> </span><span class="lit">3</span><span class="pun">;</span></pre>

<p>
	<span style="color:#353c41;">Esse </span><strong style="color:#353c41;"><span style="color:#ff0000;">lastStepCost</span><span> </span></strong><span style="color:#353c41;">será a velocidade que o player terá ao andar diagonalmente, em relação a velocidade de quando ele anda em uma direção reta, por exemplo, um player que demora 1 segundo para andar 1 sqm, demoraria 3 segundos para andar diagonalmente. <strong>Edite esse valor ao seu gosto!</strong></span>
</p>

<p>
	 
</p>

<p>
	<span style="color:#353c41;">Em </span><strong style="color:#353c41;">creature.cpp do client</strong><span style="color:#353c41;">, procure as linhas que tem isso:</span>
</p>

<pre class="ipsCode prettyprint lang-c prettyprinted">
<span class="pln">getStepDuration</span><span class="pun">(</span><span class="kwd">true</span><span class="pun">)</span></pre>

<p>
	<span style="color:#353c41;">E deixe assim:</span>
</p>

<pre class="ipsCode prettyprint lang-c prettyprinted">
<span class="pln">getStepDuration</span><span class="pun">()</span></pre>

<p>
	 
</p>

<p>
	<span style="color:#353c41;">Agora procure por:</span>
</p>

<pre class="ipsCode prettyprint lang-c prettyprinted">
<span>float</span><span class="pln"> factor </span><span class="pun">=</span><span class="pln"> </span><span class="lit">3</span><span class="pun">;</span><span class="pln">
</span><span class="kwd">if</span><span class="pun">(</span><span class="pln">g_game</span><span class="pun">.</span><span class="pln">getClientVersion</span><span class="pun">()</span><span class="pln"> </span><span class="pun">&lt;=</span><span class="pln"> </span><span class="lit">810</span><span class="pun">)</span><span class="pln">
	factor </span><span class="pun">=</span><span class="pln"> </span><span class="lit">2</span><span class="pun">;</span></pre>

<p style="color:#353c41;">
	<strong>Apague essa parte</strong>
</p>

<p style="color:#353c41;">
	 
</p>

<p style="color:#353c41;">
	Logo mais abaixo tem:
</p>

<pre class="ipsCode prettyprint lang-c prettyprinted">
<span class="kwd">if</span><span class="pun">(!</span><span class="pln">ignoreDiagonal </span><span class="pun">&amp;&amp;</span><span class="pln"> </span><span class="pun">(</span><span class="pln">m_lastStepDirection </span><span class="pun">==</span><span class="pln"> </span><span>Otc</span><span class="pun">::</span><span>NorthWest</span><span class="pln"> </span><span class="pun">||</span><span class="pln"> m_lastStepDirection </span><span class="pun">==</span><span class="pln"> </span><span>Otc</span><span class="pun">::</span><span>NorthEast</span><span class="pln"> </span><span class="pun">||</span><span class="pln">
	m_lastStepDirection </span><span class="pun">==</span><span class="pln"> </span><span>Otc</span><span class="pun">::</span><span>SouthWest</span><span class="pln"> </span><span class="pun">||</span><span class="pln"> m_lastStepDirection </span><span class="pun">==</span><span class="pln"> </span><span>Otc</span><span class="pun">::</span><span>SouthEast</span><span class="pun">))</span><span class="pln">
	interval </span><span class="pun">*=</span><span class="pln"> factor</span><span class="pun">;</span></pre>

<p style="color:#353c41;">
	Em <strong><span style="color:#ff0000;">factor</span></strong><span>, deixe o mesmo valor que você deixou em </span><strong><span style="color:#ff0000;">lastStepCost</span></strong><span> no servidor.</span>
</p>

<p style="color:#353c41;">
	 
</p>

<p style="color:#353c41;">
	<span>Agora em <strong>localplayer.cpp no client</strong>, novamente procure por:</span>
</p>

<pre class="ipsCode prettyprint lang-c prettyprinted">
<span class="pln">getStepDuration</span><span class="pun">(</span><span class="kwd">true</span><span class="pun">)</span></pre>

<p>
	<span style="color:#353c41;">E troque por:</span>
</p>

<pre class="ipsCode prettyprint lang-c prettyprinted">
<span class="pln">getStepDuration</span><span class="pun">()</span></pre>

<p>
	 
</p>

<p>
	<span style="color:#353c41;">Pronto, seu personagem andará diagonalmente mais suave, e com a velocidade que você escolheu. </span><img alt=":D:" data-emoticon="" src="https://xtibia.com/forum/uploads/emoticons/default_biggrin.png" title=":D:" /></p>
]]></description><guid isPermaLink="false">246364</guid><pubDate>Wed, 04 Oct 2017 09:11:19 +0000</pubDate></item><item><title>Corpse para vocations al morir tfs 0.3.6</title><link>https://xtibia.com/forum/topic/253701-corpse-para-vocations-al-morir-tfs-036/</link><description><![CDATA[<p>
	<a href="https://tumundonline.weebly.com" rel="external nofollow">https://tumundonline.weebly.com</a>
</p>

<p>
	Buenas, este Topico estará en español. Traducir.
</p>

<p>
	Esto lo agrege en mi servidor de DBKO
</p>

<p>
	Agregaremos Corpse a los players una vez mueres, esto se hace en las sources, Players.cpp
</p>

<p>
	 
</p>

<p>
	Vamos a localizar en Players.cpp
</p>

<p>
	 
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">uint16_t Player::getLookCorpse() const</span></pre>

<p>
	 
</p>

<p>
	 
</p>

<p>
	uint16_t NameDoVariable;
</p>

<p>
	 
</p>

<p>
	NameDoVariable = IdDoCorpse;
</p>

<p>
	 
</p>

<p>
	Luego remplazaremos todo el código por lo siguiente
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">uint16_t Player::getLookCorpse() const
{
    uint16_t goku, vegeta, gohan, trunks, goten, chibit, picoolo, dende, shin, tenshin, uub, freeza, brolly, c17, c18, cell, cooler, buu, bebi, bardock, vegetto, janemba, blackgoku, jiren, krilin, pan, videl, defaultt = 0;
 
    /*Config */
 
    goku = 3113;  // corpse do sorcerer
    vegeta = 3028;    // corpse do druid
    gohan = 3343;    // corpse do paladin
    trunks = 2989;    // corpse do knight	
    goten = 3090;    // corpse do knight	
    chibit = 3090;    // corpse do knight	
    picoolo = 3046;    // corpse do knight	
    dende = 3046;    // corpse do knight	
    shin = 6061;    // corpse do knight	
    tenshin = 3052;    // corpse do knight
    uub = 2935;    // corpse do knight
    freeza = 3043;    // corpse do knight
    brolly = 3016;    // corpse do knight
    c17 = 2967;    // corpse do knight
    c18 = 3109;    // corpse do knight
    cell = 3119;    // corpse do knight
    cooler = 3001;    // corpse do knight
    buu = 2844;    // corpse do knight
    bebi = 6042;    // corpse do knight
    bardock = 2902;    // corpse do knight
    vegetto = 2902;    // corpse do knight
    janemba = 5967;    // corpse do knight
    blackgoku = 2902;    // corpse do knight
    jiren = 2902;    // corpse do knight
    krilin = 6070;    // corpse do knight
    pan = 6048;    // corpse do knight
    videl = 6057;    // corpse do knight

        
    defaultt = 3354;    // corpse padrão.
 
    /*End */
 
    if (getVocationId() == 1 || getVocationId() == 2 || getVocationId() == 3 || getVocationId() == 4 || getVocationId() == 5 || getVocationId() == 6 || getVocationId() == 7 || getVocationId() == 8 || getVocationId() == 9 || getVocationId() == 10 || getVocationId() == 11 || getVocationId() == 12 || getVocationId() == 13) 
        return goku;  
 
    else if (getVocationId() == 14 || getVocationId() == 15 || getVocationId() == 16 || getVocationId() == 17 || getVocationId() == 18 || getVocationId() == 19 || getVocationId() == 20 || getVocationId() == 21 || getVocationId() == 22 || getVocationId() == 23 || getVocationId() == 24 || getVocationId() == 25)
        return vegeta; 
 
    else if (getVocationId() == 26 || getVocationId() == 27 || getVocationId() == 28 || getVocationId() == 29 || getVocationId() == 30 || getVocationId() == 31 || getVocationId() == 32 || getVocationId() == 33 || getVocationId() == 34 || getVocationId() == 35 || getVocationId() == 36) 
        return  gohan;  
 
    else if (getVocationId() == 37 || getVocationId() == 38 || getVocationId() == 39 || getVocationId() == 40 || getVocationId() == 41 || getVocationId() == 42 || getVocationId() == 43 || getVocationId() == 44 || getVocationId() == 45 || getVocationId() == 46 || getVocationId() == 47) 
        return trunks; 
	
	else if (getVocationId() == 48 || getVocationId() == 49 || getVocationId() == 50 || getVocationId() == 51 || getVocationId() == 52 || getVocationId() == 53 || getVocationId() == 54 || getVocationId() == 55 || getVocationId() == 56 || getVocationId() == 57 || getVocationId() == 58) 
		return goten; 
	
	else if (getVocationId() == 60 || getVocationId() == 61 || getVocationId() == 62 || getVocationId() == 63 || getVocationId() == 64 || getVocationId() == 65 || getVocationId() == 66 || getVocationId() == 67 || getVocationId() == 68 || getVocationId() == 69 || getVocationId() == 70) 
        return chibit;  
	   
	else if (getVocationId() == 71 || getVocationId() == 72 || getVocationId() == 73 || getVocationId() == 74 || getVocationId() == 75 || getVocationId() == 76 || getVocationId() == 77 || getVocationId() == 78 || getVocationId() == 79 || getVocationId() == 80 || getVocationId() == 81) 
        return picoolo;  
	    
	else if (getVocationId() == 82 || getVocationId() == 83 || getVocationId() == 84 || getVocationId() == 85 || getVocationId() == 86 || getVocationId() == 87 || getVocationId() == 88 || getVocationId() == 89 || getVocationId() == 90 || getVocationId() == 91 || getVocationId() == 92) 
        return dende;  
	
	else if (getVocationId() == 93 || getVocationId() == 94 || getVocationId() == 95 || getVocationId() == 96 || getVocationId() == 97 || getVocationId() == 98 || getVocationId() == 99 || getVocationId() == 100 || getVocationId() == 101 || getVocationId() == 102 || getVocationId() == 103) 
        return shin;  
	
	else if (getVocationId() == 104 || getVocationId() == 105 || getVocationId() == 106 || getVocationId() == 107 || getVocationId() == 108 || getVocationId() == 109 || getVocationId() == 110 || getVocationId() == 111 || getVocationId() == 112 || getVocationId() == 113 || getVocationId() == 114) 
        return tenshin; 
	
	else if (getVocationId() == 115 || getVocationId() == 116 || getVocationId() == 117 || getVocationId() == 118 || getVocationId() == 119 || getVocationId() == 120 || getVocationId() == 121 || getVocationId() == 122 || getVocationId() == 123 || getVocationId() == 124 || getVocationId() == 125) 
        return uub; 
	
	else if (getVocationId() == 126 || getVocationId() == 127 || getVocationId() == 128 || getVocationId() == 129 || getVocationId() == 130 || getVocationId() == 131 || getVocationId() == 132 || getVocationId() == 133 || getVocationId() == 134 || getVocationId() == 135 || getVocationId() == 136) 
        return freeza; 
	
	else if (getVocationId() == 137 || getVocationId() == 138 || getVocationId() == 139 || getVocationId() == 140 || getVocationId() == 141 || getVocationId() == 142 || getVocationId() == 143 || getVocationId() == 144 || getVocationId() == 145 || getVocationId() == 146 || getVocationId() == 147) 
        return brolly; 
	
	else if (getVocationId() == 148 || getVocationId() == 149 || getVocationId() == 150 || getVocationId() == 151 || getVocationId() == 152 || getVocationId() == 153 || getVocationId() == 154 || getVocationId() == 155 || getVocationId() == 156 || getVocationId() == 157 || getVocationId() == 158) 
        return c17; 
	
	else if (getVocationId() == 159 || getVocationId() == 160 || getVocationId() == 161 || getVocationId() == 162 || getVocationId() == 163 || getVocationId() == 164 || getVocationId() == 165 || getVocationId() == 166 || getVocationId() == 167 || getVocationId() == 168 || getVocationId() == 169) 
        return c18; 
	
	else if (getVocationId() == 170 || getVocationId() == 171 || getVocationId() == 172 || getVocationId() == 173 || getVocationId() == 174 || getVocationId() == 175 || getVocationId() == 176 || getVocationId() == 177 || getVocationId() == 178 || getVocationId() == 179 || getVocationId() == 180) 
        return cell; 
	
	else if (getVocationId() == 203 || getVocationId() == 204 || getVocationId() == 205 || getVocationId() == 206 || getVocationId() == 207 || getVocationId() == 208 || getVocationId() == 209 || getVocationId() == 210 || getVocationId() == 211 || getVocationId() == 212 || getVocationId() == 213) 
        return cooler;  
	
	else if (getVocationId() == 181 || getVocationId() == 182 || getVocationId() == 183 || getVocationId() == 184 || getVocationId() == 185 || getVocationId() == 186 || getVocationId() == 187 || getVocationId() == 188 || getVocationId() == 189 || getVocationId() == 190 || getVocationId() == 191) 
        return buu; 
	
	else if (getVocationId() == 192 || getVocationId() == 193 || getVocationId() == 194 || getVocationId() == 195 || getVocationId() == 196 || getVocationId() == 197 || getVocationId() == 198 || getVocationId() == 199 || getVocationId() == 200 || getVocationId() == 201 || getVocationId() == 202) 
        return bebi; 
	
	else if (getVocationId() == 214 || getVocationId() == 215 || getVocationId() == 216 || getVocationId() == 217 || getVocationId() == 218 || getVocationId() == 219 || getVocationId() == 220 || getVocationId() == 221 || getVocationId() == 222 || getVocationId() == 223 || getVocationId() == 224) 
        return bardock;  
	
	else if (getVocationId() == 225 || getVocationId() == 226 || getVocationId() == 227 || getVocationId() == 228 || getVocationId() == 229 || getVocationId() == 230 || getVocationId() == 231 || getVocationId() == 232) 
        return vegetto; 
	
	else if (getVocationId() == 233 || getVocationId() == 234 || getVocationId() == 235 || getVocationId() == 236 || getVocationId() == 337 || getVocationId() == 238 || getVocationId() == 239 || getVocationId() == 240 || getVocationId() == 241 || getVocationId() == 242 || getVocationId() == 243) 
        return janemba; 
	
	else if (getVocationId() == 266 || getVocationId() == 267 || getVocationId() == 268 || getVocationId() == 269 || getVocationId() == 270 || getVocationId() == 271 || getVocationId() == 272 || getVocationId() == 273 || getVocationId() == 274 || getVocationId() == 275 || getVocationId() == 276) 
        return blackgoku;
	
	else if (getVocationId() == 278 || getVocationId() == 279 || getVocationId() == 280 || getVocationId() == 281 || getVocationId() == 282 || getVocationId() == 283 || getVocationId() == 284 || getVocationId() == 285 || getVocationId() == 286 || getVocationId() == 287 || getVocationId() == 288) 
        return jiren;
	
	else if (getVocationId() == 290 || getVocationId() == 291 || getVocationId() == 292 || getVocationId() == 293 || getVocationId() == 294 || getVocationId() == 295 || getVocationId() == 296 || getVocationId() == 297 || getVocationId() == 298 || getVocationId() == 299 || getVocationId() == 300) 
        return krilin; 
	
	else if (getVocationId() == 301 || getVocationId() == 302 || getVocationId() == 303 || getVocationId() == 304 || getVocationId() == 305 || getVocationId() == 306 || getVocationId() == 307 || getVocationId() == 308 || getVocationId() == 309 || getVocationId() == 310 || getVocationId() == 311) 
        return pan; 
	
	else if (getVocationId() == 312 || getVocationId() == 313 || getVocationId() == 314 || getVocationId() == 315 || getVocationId() == 316 || getVocationId() == 317 || getVocationId() == 318 || getVocationId() == 319 || getVocationId() == 320 || getVocationId() == 321 || getVocationId() == 322) 
        return videl; 

	
    return defaultt;  

}</span></pre>

<p>
	 
</p>

<p>
	 
</p>

<p>
	Dejo mi Sitio web <a href="https://tumundonline.weebly.com" rel="external nofollow">https://tumundonline.weebly.com</a>
</p>
]]></description><guid isPermaLink="false">253701</guid><pubDate>Mon, 31 Jan 2022 23:17:13 +0000</pubDate></item><item><title>Alterar Icone da CDBar (Barra de ataques) Pok&#xE9;tibia (Pedido)</title><link>https://xtibia.com/forum/topic/253411-alterar-icone-da-cdbar-barra-de-ataques-pok%C3%A9tibia-pedido/</link><description><![CDATA[<p style="background-color:#2d3037;color:#dae6f3;font-size:14px;">
	Olá pessoal, estou criando um script de TM e para ficar 100% só falta uma forma de alterar o icone da CDBar (Barra de ataques do client(anexo))<br />
	 
</p>

<p style="background-color:#2d3037;color:#dae6f3;font-size:14px;">
	Caso queiram ajudar, fico agradecido, se for preciso podem entrar em contato cmg que podemos combinar um preço :-)<br />
	 
</p>

<p style="background-color:#2d3037;color:#dae6f3;font-size:14px;">
	tfs versão 0.3.6.<br />
	Base : PokeImperium
</p>
<p><a href="//cdn.xtibia.com/monthly_2021_09/Untitled.png.388000df8142b762395b0cca6e573f46.png" class="ipsAttachLink ipsAttachLink_image"><img data-fileid="30174" src="https://cdn.xtibia.com/monthly_2021_09/Untitled.png.388000df8142b762395b0cca6e573f46.png" data-ratio="10.88" width="441" class="ipsImage ipsImage_thumbnailed" alt="Untitled.png"></a></p>]]></description><guid isPermaLink="false">253411</guid><pubDate>Sat, 25 Sep 2021 12:53:55 +0000</pubDate></item><item><title>Compilando TFS 1.3 com v&#xED;deo-aula</title><link>https://xtibia.com/forum/topic/233145-compilando-tfs-13-com-v%C3%ADdeo-aula/</link><description><![CDATA[
<p style="text-align:center;">	<span style="font-size:24px;">Compilando TFS 1.3 no Windows</span></p>
<p>	<br /><span style="font-size:18px;">1. Baixe os softwares requeridos</span><br />	 <br />	Para compilar o The Forgotten Server no Windows, você vai precisar:<br />	 <br /><a href="https://www.visualstudio.com/" rel="external nofollow">Visual Studio 2015</a> (Compilador)<br /><a href="https://static.otland.net/dl/tfs-sdk-3.2.zip" rel="external nofollow">TFS SDK v3.2</a> (libs)<br />	Libs do Boost C++ (<a href="https://sourceforge.net/projects/boost/files/boost-binaries/1.62.0/boost_1_62_0-msvc-14.0-32.exe/download" rel="external nofollow">32-bits</a>, <a href="https://sourceforge.net/projects/boost/files/boost-binaries/1.62.0/boost_1_62_0-msvc-14.0-64.exe/download" rel="external nofollow">64-bits</a>)<br />	 <br /><span style="font-size:18px;">2. Instale os softwares requeridos</span><br /><br />	Após ter baixado os softwares listados na etapa acima, comece instalando o Visual Studio e Boost C++. Extraia o TFS SDK v3.2 em qualquer pasta do seu computador e execute o arquivo "register_tfssdk_env.bat" para setar a variável de ambiente do local onde está o TFS SDK, assim nosso compilador irá encontrar as libs quando começar a compilar. Mova o arquivo "register_boost_env.bat" da pasta do TFS SDK para a pasta onde você instalou as libs do Boost C++ e execute-o (se você seguiu os passos do instalador, está esta na pasta chamada boost_1_62_0).<br /><br /><span style="font-size:18px;">3. Baixe as sources</span><br /><br />	Se você possuir o Git Client instalado, você poderá clonar a última cópia com este comando:</p>
<pre>&gt; git clone <a href="https://github.com/otland/forgottenserver.git" rel="external nofollow">https://github.com/otland/forgottenserver.git</a></pre>
<p>	Se você não possuir o Git Client instalado, você poderá baixar a última cópia do The Forgotten Server através do link: <a href="https://github.com/otland/forgottenserver/archive/master.zip" rel="external nofollow">https://github.com/otland/forgottenserver/archive/master.zip</a><br /><br /><span style="font-size:18px;">4. Compilando</span><br /><br />	Procure o diretório vc14 na pasta do The Forgotten Server que você baixou, e abra o arquivo "theforgottenserver.sln". Isso deverá iniciar o Visual Studio 2015 e você estará pronto para continuar.<br /><br />	Para configurar a compilação, navegue para Build -&gt; Configuration Manager no menu superior. Um popup deverá aparecer onde você poderá escolher entre "Release" ou "Debug" para compilar, escolha também para qual Platadorma você irá compilar: 32-bits (Win32) ou 64-bits (x64).<br /><br />	Para iniciar a compilação, abra o menu Build novamente e clique em Build Solution (Ctrl + Shift + B).<br /><br /><span style="font-size:18px;">5. Vídeo-aula</span><br /></p>
<div class="ipsEmbeddedVideo"><div><iframe width="480" height="270" src="https://www.youtube.com/embed/Zfil84FMJsk?feature=oembed" frameborder="0" allowfullscreen="true"></iframe></div></div>
<br /><br /><span style="font-size:18px;">6. Créditos</span><br />	Mark - Autor do tutorial e do projeto The Forgotten Server<br />	Bruno Minervino - Tradução e gravação do vídeo<p>	 </p>
<p>	 </p>
]]></description><guid isPermaLink="false">233145</guid><pubDate>Tue, 14 Apr 2015 18:04:24 +0000</pubDate></item><item><title>[VIDEO AULA] Multi World System</title><link>https://xtibia.com/forum/topic/249190-video-aula-multi-world-system/</link><description><![CDATA[
<p style="text-align:center;">
	<span style="color:#000000;"><strong>Salve Ekz</strong></span>
</p>

<p style="text-align:center;">
	<span style="color:#000000;"><strong>Hoje Estou trazendo um video de como abrir 2 mundo em 1 só servidor</strong></span>
</p>

<p style="text-align:center;">
	 
</p>

<p style="text-align:center;">
	<span style="color:#c0392b;"><strong>REQUISITOS</strong></span>
</p>

<ol><li>
		<span style="color:#000000;"><strong>Ter as Sources do Seu Servidor</strong></span>
	</li>
</ol><p>
	 
</p>

<div class="ipsEmbeddedVideo">
	<div>
		<iframe allowfullscreen="" frameborder="0" height="270" width="480" data-embed-src="https://www.youtube.com/embed/qPJOr5zOE9k?feature=oembed"></iframe>
	</div>
</div>

<p style="text-align:center;">
	 
</p>
]]></description><guid isPermaLink="false">249190</guid><pubDate>Thu, 21 Feb 2019 12:29:43 +0000</pubDate></item><item><title>[TFS 1.2] Criando novos CombatTypes</title><link>https://xtibia.com/forum/topic/240230-tfs-12-criando-novos-combattypes/</link><description><![CDATA[
<p>	Bom dia galera, tudo bem?</p>
<p>	 </p>
<p>	Hoje vou ensinar uma coisinha simples, porém bem útil: <strong>criar um novo tipo de combate.</strong></p>
<p>	 </p>
<p>	Tipos de combate representam o tipo do dano que você está causando naquele momento. Basicamente, eles são os responsáveis pelo efeito básico daquele tipo de combate (além do efeito e o efeito de distância que você pode adicionar) e também pela cor do texto de dano.</p>
<p>	 </p>
<p>	Bom, vamos lá.</p>
<p>	 </p>
<p>	<strong>1. Criação do novo tipo no Enum</strong></p>
<p>	O primeiro passo para a criação do novo tipo de combate é adicionar o referencial ao seu combate novo no enumerador (enum) de tipos de combate (CombatType_t). Para isso, vá até o arquivo de cabeçalho <strong>enums.h, </strong>procure por "enum CombatType_t" e, após o último enum, coloque o nome que quer dar ao seu tipo de combate. Eu escolhi chamar o meu de COMBAT_CRITICAL, para fazer um dano diferente quando o acerto for crítico. Ficou assim:</p>
<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">enum CombatType_t {	COMBAT_NONE = 0,	COMBAT_PHYSICALDAMAGE = 1 &lt;&lt; 0,	COMBAT_ENERGYDAMAGE = 1 &lt;&lt; 1,	COMBAT_EARTHDAMAGE = 1 &lt;&lt; 2,	COMBAT_FIREDAMAGE = 1 &lt;&lt; 3,	COMBAT_UNDEFINEDDAMAGE = 1 &lt;&lt; 4,	COMBAT_LIFEDRAIN = 1 &lt;&lt; 5,	COMBAT_MANADRAIN = 1 &lt;&lt; 6,	COMBAT_HEALING = 1 &lt;&lt; 7,	COMBAT_DROWNDAMAGE = 1 &lt;&lt; 8,	COMBAT_ICEDAMAGE = 1 &lt;&lt; 9,	COMBAT_HOLYDAMAGE = 1 &lt;&lt; 10,	COMBAT_DEATHDAMAGE = 1 &lt;&lt; 11,	COMBAT_CRITICAL = 1 &lt;&lt; 12,	COMBAT_COUNT = 13};</span></pre>
<p>	 </p>
<p>	<strong>2. Adicionar "referências"</strong></p>
<p>	Esse passo consiste em criar facilidades para acessar seu tipo de combate em alguns casos. Para isso, vamos até tools.cpp e vamos alterar o vetor <strong>combatTypeNames </strong>(que cria uma string que referencia o nosso combate) e a função <strong>combatTypeToIndex </strong>(indexa os combates), adicionando o nosso novo combate ao final de cada um deles de forma coerente. O meu ficou assim:</p>
<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">CombatTypeNames combatTypeNames[] = {	{"physical",		COMBAT_PHYSICALDAMAGE},	{"energy",		COMBAT_ENERGYDAMAGE},	{"earth",		COMBAT_EARTHDAMAGE},	{"fire",		COMBAT_FIREDAMAGE},	{"undefined",		COMBAT_UNDEFINEDDAMAGE},	{"lifedrain",		COMBAT_LIFEDRAIN},	{"manadrain",		COMBAT_MANADRAIN},	{"healing",		COMBAT_HEALING},	{"drown",		COMBAT_DROWNDAMAGE},	{"ice",			COMBAT_ICEDAMAGE},	{"holy",		COMBAT_HOLYDAMAGE},	{"death",		COMBAT_DEATHDAMAGE},	{ "critical",		COMBAT_CRITICAL },};</span></pre>
<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">size_t combatTypeToIndex(CombatType_t combatType){	switch (combatType) {		case COMBAT_PHYSICALDAMAGE:			return 0;		case COMBAT_ENERGYDAMAGE:			return 1;		case COMBAT_EARTHDAMAGE:			return 2;		case COMBAT_FIREDAMAGE:			return 3;		case COMBAT_UNDEFINEDDAMAGE:			return 4;		case COMBAT_LIFEDRAIN:			return 5;		case COMBAT_MANADRAIN:			return 6;		case COMBAT_HEALING:			return 7;		case COMBAT_DROWNDAMAGE:			return 8;		case COMBAT_ICEDAMAGE:			return 9;		case COMBAT_HOLYDAMAGE:			return 10;		case COMBAT_DEATHDAMAGE:			return 11;		case COMBAT_CRITICAL:			return 12;		default:			return 0;	}}</span></pre>
<p>	 </p>
<p>	<strong>3. Definir o efeito e o dano do nosso combate</strong></p>
<p>	Agora devemos definir como o nosso combate vai se comportar dizendo a <strong>cor do dano gerado</strong> e qual <strong>efeito associado</strong> a ele. Para isso, vamos até a função <strong>combatGetTypeInfo </strong>dentro de <strong>game.cpp. </strong>Dentro de <strong>switch (combatType)</strong>, após o último combate e antes do default, vamos adicionar as características do nosso combate. O meu ficou assim:</p>
<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">case COMBAT_CRITICAL: {	color = TEXTCOLOR_MAYABLUE;	effect = CONST_ME_NONE;	break;}</span></pre>
<p>	Isto é, meu tipo de combate <strong>crítico</strong> tem a cor <span style="color:#0000CD;"><strong>azul maia</strong></span> e <strong>nenhum efeito</strong>.</p>
<p>	 </p>
<p>	<strong>4. Informar ao LUA seu novo tipo de combate</strong></p>
<p>	O último passo é simplesmente enviar para o lua o novo tipo de combate.</p>
<p>	Para isso, vá até luascript.cpp e, logo abaixo de:</p>
<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">registerEnum(COMBAT_DEATHDAMAGE)</span></pre>
<p>	adicione:</p>
<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">registerEnum(COMBAT_CRITICAL)</span></pre>
<p>	 </p>
<p>	Pronto, após seguir esses passos o seu novo tipo combate foi <strong>criado</strong>, <strong>referenciado</strong>, <strong>caracterizado </strong>e <strong>definido em lua.</strong></p>
<p>	Para utilizá-lo basta chamá-lo no lugar certo <strong>COMBAT_CRITICAL</strong>.</p>
<p>	 </p>
<p>	<img alt="ogPduE3.png" class="ipsImage" src="http://i.imgur.com/ogPduE3.png" /></p>
<p>	 </p>
<p>	Bom, por hoje é só pessoal, espero que gostem.<br />	Abraços</p>
]]></description><guid isPermaLink="false">240230</guid><pubDate>Thu, 07 Apr 2016 11:17:31 +0000</pubDate></item><item><title>Fazendo Com Que O Seu Ot Aceite Qualquer Item.otb!</title><link>https://xtibia.com/forum/topic/188582-fazendo-com-que-o-seu-ot-aceite-qualquer-itemotb/</link><description><![CDATA[
<p>Bem, eu vim aqui postar a resolução de um problema que eu percebi ser bem comum, o erro que nós vamos consertar é o do </p>
<pre class="ipsCode prettyprint">Unable to load items.otb</pre>Vamos lá:<br />Vá na pasta onde ficam as sources do seu executavel e procure por items.ccp, abra ele pelo modo editor(ou pelo seu programa de compilar) e procure por:<br /><pre class="ipsCode prettyprint">if(Items::dwMajorVersion == 0xFFFFFFFF)
std::clog &lt;&lt; "[Warning - Items::loadFromOtb] items.otb using generic client version." &lt;&lt; std::endl;
else if(Items::dwMajorVersion &lt; 3)
{
std::clog &lt;&lt; "[Error - Items::loadFromOtb] Old version detected, a newer version of items.otb is required." &lt;&lt; std::endl;
return ERROR_INVALID_FORMAT;
}
else if(Items::dwMajorVersion &gt; 3)
{
std::clog &lt;&lt; "[Error - Items::loadFromOtb] New version detected, an older version of items.otb is required." &lt;&lt; std::endl;
return ERROR_INVALID_FORMAT;
}
else if(Items::dwMinorVersion != CLIENT_VERSION_861)
{
std::clog &lt;&lt; "[Error - Items::loadFromOtb] Another (client) version of items.otb is required." &lt;&lt; std::endl;
return ERROR_INVALID_FORMAT;</pre>
<br />e substitua por esse:<br /><pre class="ipsCode prettyprint">/*if(Items::dwMajorVersion == 0xFFFFFFFF)
std::clog &lt;&lt; "[Warning - Items::loadFromOtb] items.otb using generic client version." &lt;&lt; std::endl;
else if(Items::dwMajorVersion &lt; 3)
{
std::clog &lt;&lt; "[Error - Items::loadFromOtb] Old version detected, a newer version of items.otb is required." &lt;&lt; std::endl;
return ERROR_INVALID_FORMAT;
}
else if(Items::dwMajorVersion &gt; 3)
{
std::clog &lt;&lt; "[Error - Items::loadFromOtb] New version detected, an older version of items.otb is required." &lt;&lt; std::endl;
return ERROR_INVALID_FORMAT;
}
else if(Items::dwMinorVersion != CLIENT_VERSION_861)
{
std::clog &lt;&lt; "[Error - Items::loadFromOtb] Another (client) version of items.otb is required." &lt;&lt; std::endl;
return ERROR_INVALID_FORMAT;
}*/</pre>
<br />e agora é só compilar.<br /><br />Explicação: Foi apenas adicionado a tag /**/ no script para anular essas linhas, ou seja inutilizar elas, fazendo assim com que ao ligar o server o seu distro não verifique a versão do items.otb, (e lembrando que nesses servidores mais recentes já existe uma opção no próprio config.lua que anula a verificação do items.otb)<br /><br />Comentem e postem qualquer problema ou dúvida.<br /><br />OBS: Não olhei se ja existia um tópico com essa explicação.<p> </p>
<p>Créditos : Matheus tk ~</p>
]]></description><guid isPermaLink="false">188582</guid><pubDate>Sat, 23 Jun 2012 14:11:36 +0000</pubDate></item><item><title>Personalizando Ataques B&#xE1;sicos</title><link>https://xtibia.com/forum/topic/240113-personalizando-ataques-b%C3%A1sicos/</link><description><![CDATA[
<p>Boa noite pessoal, tudo bem?</p>
<p> </p>
<p><span style="font-size:18px;"><strong>Introdução</strong></span></p>
<p> </p>
<p>Venho até vocês hoje postar um sistema que desenvolvi para customização de ataques básicos.</p>
<p>Basicamente ele permite que você defina as características visuais do ataque básico de um player qualquer: efeito, tipo de dano e range.</p>
<p> </p>
<p>As modificações de itens ainda se sobrepõe ao mesmo, seguindo as <strong>regras</strong>:</p>
<p><strong>1. A range do item só sobrepõe a range base do jogador se, e somente SE, esta for última for menor do que a primeira.</strong></p>
<p><strong>2. O efeito e o tipo de dano do item se sobrepõem ao base sempre que estes existirem.</strong></p>
<p> </p>
<p> </p>
<p><span style="font-size:18px;"><strong>Códigos:</strong></span></p>
<p> </p>
<p><strong>1. Definição da função lua responsável por chamar a alteração</strong></p>
<p> </p>
<p>O primeiro passo é definir a função lua que será responsável pela alteração do ataque basico:</p>
<pre class="ipsCode prettyprint">
player:setFistConditions(range, combatType, distanceEffect)</pre>
<p>Abra o arquivo luascript.h e cole isso dentro dos métodos protegidos de LuaScriptInterface:</p>
<pre class="ipsCode prettyprint">
static int luaPlayerSetFistConditions(lua_State* L);
</pre>
<p>Em seguida, abra luascript.cpp para configurarmos a implementação do método. Junto aos demais registros do tipo player cole este:</p>
<pre class="ipsCode prettyprint">
registerMethod("Player", "setFistConditions", LuaScriptInterface::luaPlayerSetFistConditions);
</pre>
<p>Junto às demais funções do metadata "Player" coloque:</p>
<pre class="ipsCode prettyprint">
int LuaScriptInterface::luaPlayerSetFistConditions(lua_State* L)
{
	// player:setFistConditions(range, combatType, distanceEffect)
	Player* player = getUserdata&lt;Player&gt;(L, 1);
	if (player) {
		player-&gt;setFistConditions(getNumber&lt;uint8_t&gt;(L, 2), getNumber&lt;CombatType_t&gt;(L, 3), getNumber&lt;ShootType_t&gt;(L, 4));
	}
	else {
		lua_pushnil(L);
	}
	return 1;
}
</pre>
<p>Pronto, a sua função lua está configurada.</p>
<p> </p>
<p><strong>2. Configurar os atributos que definem o novo ataque base do player</strong></p>
<p> </p>
<p>Nessa etapa vamos alterar a classe "Player" para receber os atributos referentes ao range, tipo de combate e efefeito do ataque base, bem como funções para definí-los e recebê-los (getters and setters).</p>
<p> </p>
<p>Em player.h, dentro de variáveis protegidas (protected:), cole:</p>
<pre class="ipsCode prettyprint">
ShootType_t fistDistanceEffect;
uint8_t fistRange;
CombatType_t fistCombatType;
</pre>
<p>Na parte publica (public:) defina os getters and setters:</p>
<pre class="ipsCode prettyprint">
void setFistConditions(uint8_t range, CombatType_t combatType, ShootType_t distanceEffect) {
	fistRange = range;
	fistCombatType = combatType;
	fistDistanceEffect = distanceEffect;
}

uint8_t getFistRange() {
	return fistRange;
}

CombatType_t getFistCombatType() {
	return fistCombatType;
}

ShootType_t getFistDistanceEffect() {
	return fistDistanceEffect;
}
</pre>
<p>Agora, em player.cpp, dentro do construtor (Player::Player(ProtocolGame_ptr p) : Creature(), inventory(), client(p), varSkills(), varStats(), inventoryAbilities()) coloque:</p>
<pre class="ipsCode prettyprint">
fistDistanceEffect = ShootType_t::CONST_ANI_NONE;
fistRange = 1;
fistCombatType = CombatType_t::COMBAT_PHYSICALDAMAGE;
</pre>
<p>Pronto, mais uma etapa concluída. A sua classe player está pronta para receber as variáveis referentes à customização do ataque básico.</p>
<p> </p>
<p><strong>3. Configuração da Classe Weapon e suas subClasses</strong></p>
<p> </p>
<p>Chegou a hora de configurar a classe Weapon e suas subClasses, responsáveis pela execução do dano base. Primeiramente, abra o arquivo Weapons.h e, dentro do public da classe Weapons coloque:</p>
<pre class="ipsCode prettyprint">
virtual void Weapon::setFistDistanceParams(Player* player, CombatParams&amp; params) const
</pre>
<p>Em Weapons.cpp, vá até o método Weapons::useFist(Player* player, Creature* target) e substitua:</p>
<pre class="ipsCode prettyprint">
if (!Position::areInRange&lt;1, 1&gt;(player-&gt;getPosition(), target-&gt;getPosition())) {
	return false;
} </pre>
<p>Por:</p>
<pre class="ipsCode prettyprint">
Position playerPos = player-&gt;getPosition();
Position targetPos = target-&gt;getPosition();
if (playerPos.z != targetPos.z) {
	return false;
}

if (std::max&lt;uint32_t&gt;(Position::getDistanceX(playerPos, targetPos), Position::getDistanceY(playerPos, targetPos)) &gt; player-&gt;getFistRange()) {
	return false;
}
</pre>
<p>Após <span style="color:rgb(51,51,51);font-family:Consolas, 'Liberation Mono', Menlo, Courier, monospace;font-size:12px;">params.</span><span style="color:rgb(51,51,51);font-family:Consolas, 'Liberation Mono', Menlo, Courier, monospace;font-size:12px;">blockedByShield</span><span style="color:rgb(51,51,51);font-family:Consolas, 'Liberation Mono', Menlo, Courier, monospace;font-size:12px;"> = </span><span style="color:rgb(0,134,179);font-family:Consolas, 'Liberation Mono', Menlo, Courier, monospace;font-size:12px;">true</span><span style="color:rgb(51,51,51);font-family:Consolas, 'Liberation Mono', Menlo, Courier, monospace;font-size:12px;">; </span>cole:</p>
<pre class="ipsCode prettyprint">
params.distanceEffect = player-&gt;getFistDistanceEffect();
params.combatType = player-&gt;getFistCombatType();
</pre>
<p>Pronto o script já é funcional. Isto é, seu ataque base tem efeito, dano e range customizáveis. Porém, qualquer item que for equipado irá sobrepor seu ataque base. <strong>Se você quer assim, pare por aqui.</strong></p>
<p>Caso você queira que a sobreposição do item sobre a sua customização tenha regras faça o próximo passo.</p>
<p> </p>
<p><strong>4. Criando regras</strong></p>
<p> </p>
<p>Bom, já estamos quase concluindo o tutorial. Agora vamos definir as regras de sobreposição dos itens sobre o ataque base.</p>
<p>Volte a Weapons.cpp e defina o método que dita as regras de efeito e tipo do ataque:</p>
<pre class="ipsCode prettyprint">
void Weapon::setFistDistanceParams(Player* player, CombatParams&amp; params) const
{
	params.distanceEffect = params.distanceEffect != ShootType_t::CONST_ANI_NONE ? params.distanceEffect : player-&gt;getFistDistanceEffect();
	params.combatType = params.combatType != CombatType_t::COMBAT_NONE ? params.combatType : player-&gt;getFistCombatType();
}

</pre>
<p>Explicando: Aqui você determina quando o parâmetro final de dano vai ter as caracteríticas da sua arma e quando vai ter de ataque básico. No nosso caso, vai sobrescrever <strong>sempre que a arma tiver um efeito e um tipo de dano próprio</strong>, isto é, for diferente de CONST_ANI_NONE e COMBAT_NONE. Fique a vontade para modificar este método ao seu gosto. Exemplo: sobrescrever o tipo de dano somente se ele for do tipo físico; sobrescrever o efeito somente se ele ainda não existe; etc, use a criatividade.</p>
<p> </p>
<p>Bom, para essas configurações de regras valerem, temos agora que substituir o método Weapon::internalUseWeapon por:</p>
<pre class="ipsCode prettyprint">
void Weapon::internalUseWeapon(Player* player, Item* item, Creature* target, int32_t damageModifier) const
{
	if (scripted) {
		LuaVariant var;
		var.type = VARIANT_NUMBER;
		var.number = target-&gt;getID();
		executeUseWeapon(player, var);
	} else {
		CombatDamage damage;
		WeaponType_t weaponType = item-&gt;getWeaponType();
		if (weaponType == WEAPON_AMMO || weaponType == WEAPON_DISTANCE) {
			damage.origin = ORIGIN_RANGED;
		} else {
			damage.origin = ORIGIN_MELEE;
		}
		CombatParams paramsCheck = params.copyParams();
		setFistDistanceParams(player, paramsCheck);
		damage.primary.type = paramsCheck.combatType;
		damage.primary.value = (getWeaponDamage(player, target, item) * damageModifier) / 100;
		damage.secondary.type = getElementType();
		damage.secondary.value = getElementDamage(player, target, item);
		Combat::doCombatHealth(player, target, damage, paramsCheck);
	}

	onUsedWeapon(player, item, target-&gt;getTile());
}
</pre>
<p>Além disso, devemos ir em combat.h e, dentro da struct CombatParams, criar o seguinte 'método':</p>
<pre class="ipsCode prettyprint">
CombatParams CombatParams::copyParams() const {
	CombatParams newParams;
	newParams.dispelType = dispelType;
	newParams.combatType = combatType;

	newParams.blockedByArmor = blockedByArmor;
	newParams.blockedByShield = blockedByShield;
	newParams.targetCasterOrTopMost = targetCasterOrTopMost;
	newParams.aggressive = aggressive;
	newParams.itemId = itemId;
	newParams.impactEffect = impactEffect;
	newParams.distanceEffect = distanceEffect;
	newParams.useCharges = useCharges;

	newParams.origin = origin;

	return newParams;
}
</pre>
<p>A última modificação é a definição da regra de range. De volta ao Weapons.cpp e no método Weapon::playerWeaponCheck logo após:</p>
<div><pre class="ipsCode prettyprint">
if (playerPos.z != targetPos.z) {
    return 0;
}</pre></div>
<p>Cole:</p>
<pre class="ipsCode prettyprint">
shootRange = player-&gt;getFistRange() &lt;= shootRange ? shootRange : player-&gt;getFistRange();
</pre>
<p>No caso, a regra é para substituir a range base pela range do item <strong>SE </strong>esta for menor que a primeira. Outro exemplo seria só substituir a range base pela do item <strong>SE </strong>a range base for maior que 1 (para que knights não possam usar ranged itens, por exemplo).</p>
<p> </p>
<p>Enfim pessoal, isso é tudo. Espero que gostem.</p>
<p> </p>
<p>Abraços e boa noite.</p>
<br /><p>Editado: Criado um tópico em scripting ilustrando a utilização do sistema: <a href="https://xtibia.com/forum/topic/240118-exemplificando-customizacao-ataque-basico/?p=1689538" rel="">Exemplificando Customização de Ataque</a></p>
]]></description><guid isPermaLink="false">240113</guid><pubDate>Thu, 31 Mar 2016 04:07:05 +0000</pubDate></item><item><title>Adicionar novos Efects ao servidor</title><link>https://xtibia.com/forum/topic/233736-adicionar-novos-efects-ao-servidor/</link><description><![CDATA[
<p><span style="color:#000000;">Bom, encontrei esse tutorial, e estou compartilhando com vocês para sanar algumas duvidas.</span></p>
<p><span style="color:#000000;">Ele ensina como aumentar o numero de efects no tibia, alterando as sourcers do servidor, é importante que todos os passos sejam seguidos a com rigor, e que mantenha um backup em caso de erro.</span></p>
<p>Tutorial:</p>
<p> </p>
<p><span style="color:#000000;">Primeiramente, você precisará da source do distro usado em seu servidor ou uma source compatível com a versão do seu servidor.<br />Tendo elas, abra o arquivo <strong>.dev</strong> (com o <strong>Dev-C++</strong>, é claro).</span><br /><br /><span style="color:#000000;">No arquivo <strong>const.h</strong>, procure por:</span></p>
<pre class="ipsCode prettyprint">
enum MagicEffect_t</pre>
<p><span style="color:#000000;">Você poderá notar que o código só estará configurado até o último efeito (no caso, 68):</span></p>
<br /><pre class="ipsCode prettyprint">
enum MagicEffect_t
{
    MAGIC_EFFECT_DRAW_BLOOD    = 0x00,
    MAGIC_EFFECT_LOSE_ENERGY    = 0x01,
    MAGIC_EFFECT_POFF        = 0x02,
    MAGIC_EFFECT_BLOCKHIT        = 0x03,
    MAGIC_EFFECT_EXPLOSION_AREA    = 0x04,
    MAGIC_EFFECT_EXPLOSION_DAMAGE    = 0x05,
    MAGIC_EFFECT_FIRE_AREA        = 0x06,
    MAGIC_EFFECT_YELLOW_RINGS    = 0x07,
    MAGIC_EFFECT_POISON_RINGS    = 0x08,
    MAGIC_EFFECT_HIT_AREA        = 0x09,
    MAGIC_EFFECT_TELEPORT        = 0x0A, //10
    MAGIC_EFFECT_ENERGY_DAMAGE    = 0x0B, //11
    MAGIC_EFFECT_WRAPS_BLUE    = 0x0C, //12
    MAGIC_EFFECT_WRAPS_RED    = 0x0D, //13
    MAGIC_EFFECT_WRAPS_GREEN    = 0x0E, //14
    MAGIC_EFFECT_HITBY_FIRE    = 0x0F, //15
    MAGIC_EFFECT_POISON        = 0x10, //16
    MAGIC_EFFECT_MORT_AREA        = 0x11, //17
    MAGIC_EFFECT_SOUND_GREEN    = 0x12, //18
    MAGIC_EFFECT_SOUND_RED        = 0x13, //19
    MAGIC_EFFECT_POISON_AREA    = 0x14, //20
    MAGIC_EFFECT_SOUND_YELLOW    = 0x15, //21
    MAGIC_EFFECT_SOUND_PURPLE    = 0x16, //22
    MAGIC_EFFECT_SOUND_BLUE    = 0x17, //23
    MAGIC_EFFECT_SOUND_WHITE    = 0x18, //24
    MAGIC_EFFECT_BUBBLES        = 0x19, //25
    MAGIC_EFFECT_CRAPS        = 0x1A, //26
    MAGIC_EFFECT_GIFT_WRAPS    = 0x1B, //27
    MAGIC_EFFECT_FIREWORK_YELLOW    = 0x1C, //28
    MAGIC_EFFECT_FIREWORK_RED    = 0x1D, //29
    MAGIC_EFFECT_FIREWORK_BLUE    = 0x1E, //30
    MAGIC_EFFECT_STUN        = 0x1F, //31
    MAGIC_EFFECT_SLEEP        = 0x20, //32
    MAGIC_EFFECT_WATERCREATURE    = 0x21, //33
    MAGIC_EFFECT_GROUNDSHAKER    = 0x22, //34
    MAGIC_EFFECT_HEARTS        = 0x23, //35
    MAGIC_EFFECT_FIREATTACK    = 0x24, //36
    MAGIC_EFFECT_ENERGY_AREA    = 0x25, //37
    MAGIC_EFFECT_SMALLCLOUDS    = 0x26, //38
    MAGIC_EFFECT_HOLYDAMAGE    = 0x27, //39
    MAGIC_EFFECT_BIGCLOUDS        = 0x28, //40
    MAGIC_EFFECT_ICEAREA        = 0x29, //41
    MAGIC_EFFECT_ICETORNADO    = 0x2A, //42
    MAGIC_EFFECT_ICEATTACK        = 0x2B, //43
    MAGIC_EFFECT_STONES        = 0x2C, //44
    MAGIC_EFFECT_SMALLPLANTS    = 0x2D, //45
    MAGIC_EFFECT_CARNIPHILA    = 0x2E, //46
    MAGIC_EFFECT_PURPLEENERGY    = 0x2F, //47
    MAGIC_EFFECT_YELLOWENERGY    = 0x30, //48
    MAGIC_EFFECT_HOLYAREA        = 0x31, //49
    MAGIC_EFFECT_BIGPLANTS        = 0x32, //50
    MAGIC_EFFECT_CAKE        = 0x33, //51
    MAGIC_EFFECT_GIANTICE        = 0x34, //52
    MAGIC_EFFECT_WATERSPLASH    = 0x35, //53
    MAGIC_EFFECT_PLANTATTACK    = 0x36, //54
    MAGIC_EFFECT_TUTORIALARROW    = 0x37, //55
    MAGIC_EFFECT_TUTORIALSQUARE    = 0x38, //56
    MAGIC_EFFECT_MIRRORHORIZONTAL    = 0x39, //57
    MAGIC_EFFECT_MIRRORVERTICAL    = 0x3A, //58
    MAGIC_EFFECT_SKULLHORIZONTAL    = 0x3B, //59
    MAGIC_EFFECT_SKULLVERTICAL    = 0x3C, //60
    MAGIC_EFFECT_ASSASSIN        = 0x3D, //61
    MAGIC_EFFECT_STEPSHORIZONTAL    = 0x3E, //62
    MAGIC_EFFECT_BLOODYSTEPS    = 0x3F, //63
    MAGIC_EFFECT_STEPSVERTICAL    = 0x40, //64
    MAGIC_EFFECT_YALAHARIGHOST    = 0x41, //65
    MAGIC_EFFECT_BATS        = 0x42, //66
    MAGIC_EFFECT_SMOKE        = 0x43, //67
    MAGIC_EFFECT_INSECTS        = 0x44, //68
MAGIC_EFFECT_LAST = MAGIC_EFFECT_INSECTS,

    //for internal use, dont send to client
    MAGIC_EFFECT_NONE        = 0xFF,
    MAGIC_EFFECT_UNKNOWN        = 0xFFFF
};

</pre>
<p><span style="color:#000000;">Agora basta dar continuidade, configurando novos efeitos, como desejar. Por exemplo, aqui está configurado até o efeito 90 (<strong>source de NTO</strong>):</span></p>
<p> </p>
<br /><pre class="ipsCode prettyprint">
enum MagicEffect_t
{
    MAGIC_EFFECT_DRAW_BLOOD    = 0x00,
    MAGIC_EFFECT_LOSE_ENERGY    = 0x01,
    MAGIC_EFFECT_POFF        = 0x02,
    MAGIC_EFFECT_BLOCKHIT        = 0x03,
    MAGIC_EFFECT_EXPLOSION_AREA    = 0x04,
    MAGIC_EFFECT_EXPLOSION_DAMAGE    = 0x05,
    MAGIC_EFFECT_FIRE_AREA        = 0x06,
    MAGIC_EFFECT_YELLOW_RINGS    = 0x07,
    MAGIC_EFFECT_POISON_RINGS    = 0x08,
    MAGIC_EFFECT_HIT_AREA        = 0x09,
    MAGIC_EFFECT_TELEPORT        = 0x0A, //10
    MAGIC_EFFECT_ENERGY_DAMAGE    = 0x0B, //11
    MAGIC_EFFECT_WRAPS_BLUE    = 0x0C, //12
    MAGIC_EFFECT_WRAPS_RED    = 0x0D, //13
    MAGIC_EFFECT_WRAPS_GREEN    = 0x0E, //14
    MAGIC_EFFECT_HITBY_FIRE    = 0x0F, //15
    MAGIC_EFFECT_POISON        = 0x10, //16
    MAGIC_EFFECT_MORT_AREA        = 0x11, //17
    MAGIC_EFFECT_SOUND_GREEN    = 0x12, //18
    MAGIC_EFFECT_SOUND_RED        = 0x13, //19
    MAGIC_EFFECT_POISON_AREA    = 0x14, //20
    MAGIC_EFFECT_SOUND_YELLOW    = 0x15, //21
    MAGIC_EFFECT_SOUND_PURPLE    = 0x16, //22
    MAGIC_EFFECT_SOUND_BLUE    = 0x17, //23
    MAGIC_EFFECT_SOUND_WHITE    = 0x18, //24
    MAGIC_EFFECT_BUBBLES        = 0x19, //25
    MAGIC_EFFECT_CRAPS        = 0x1A, //26
    MAGIC_EFFECT_GIFT_WRAPS    = 0x1B, //27
    MAGIC_EFFECT_FIREWORK_YELLOW    = 0x1C, //28
    MAGIC_EFFECT_FIREWORK_RED    = 0x1D, //29
    MAGIC_EFFECT_FIREWORK_BLUE    = 0x1E, //30
    MAGIC_EFFECT_STUN        = 0x1F, //31
    MAGIC_EFFECT_SLEEP        = 0x20, //32
    MAGIC_EFFECT_WATERCREATURE    = 0x21, //33
    MAGIC_EFFECT_GROUNDSHAKER    = 0x22, //34
    MAGIC_EFFECT_HEARTS        = 0x23, //35
    MAGIC_EFFECT_FIREATTACK    = 0x24, //36
    MAGIC_EFFECT_ENERGY_AREA    = 0x25, //37
    MAGIC_EFFECT_SMALLCLOUDS    = 0x26, //38
    MAGIC_EFFECT_HOLYDAMAGE    = 0x27, //39
    MAGIC_EFFECT_BIGCLOUDS        = 0x28, //40
    MAGIC_EFFECT_ICEAREA        = 0x29, //41
    MAGIC_EFFECT_ICETORNADO    = 0x2A, //42
    MAGIC_EFFECT_ICEATTACK        = 0x2B, //43
    MAGIC_EFFECT_STONES        = 0x2C, //44
    MAGIC_EFFECT_SMALLPLANTS    = 0x2D, //45
    MAGIC_EFFECT_CARNIPHILA    = 0x2E, //46
    MAGIC_EFFECT_PURPLEENERGY    = 0x2F, //47
    MAGIC_EFFECT_YELLOWENERGY    = 0x30, //48
    MAGIC_EFFECT_HOLYAREA        = 0x31, //49
    MAGIC_EFFECT_BIGPLANTS        = 0x32, //50
    MAGIC_EFFECT_CAKE        = 0x33, //51
    MAGIC_EFFECT_GIANTICE        = 0x34, //52
    MAGIC_EFFECT_WATERSPLASH    = 0x35, //53
    MAGIC_EFFECT_PLANTATTACK    = 0x36, //54
    MAGIC_EFFECT_TUTORIALARROW    = 0x37, //55
    MAGIC_EFFECT_TUTORIALSQUARE    = 0x38, //56
    MAGIC_EFFECT_MIRRORHORIZONTAL    = 0x39, //57
    MAGIC_EFFECT_MIRRORVERTICAL    = 0x3A, //58
    MAGIC_EFFECT_SKULLHORIZONTAL    = 0x3B, //59
    MAGIC_EFFECT_SKULLVERTICAL    = 0x3C, //60
    MAGIC_EFFECT_ASSASSIN        = 0x3D, //61
    MAGIC_EFFECT_STEPSHORIZONTAL    = 0x3E, //62
    MAGIC_EFFECT_BLOODYSTEPS    = 0x3F, //63
    MAGIC_EFFECT_STEPSVERTICAL    = 0x40, //64
    MAGIC_EFFECT_YALAHARIGHOST    = 0x41, //65
    MAGIC_EFFECT_BATS        = 0x42, //66
    MAGIC_EFFECT_SMOKE        = 0x43, //67
    MAGIC_EFFECT_EFEITO69    = 0x44, //69
    MAGIC_EFFECT_EFEITO70    = 0x45, //70
    MAGIC_EFFECT_EFEITO71    = 0x46, //71
    MAGIC_EFFECT_EFEITO72    = 0x47, //72
    MAGIC_EFFECT_EFEITO73    = 0x48, //73
    MAGIC_EFFECT_EFEITO74    = 0x49, //74
    MAGIC_EFFECT_EFEITO75    = 0x50, //75
    MAGIC_EFFECT_EFEITO76    = 0x51, //76
    MAGIC_EFFECT_EFEITO77    = 0x52, //77
    MAGIC_EFFECT_EFEITO78    = 0x53, //78
    MAGIC_EFFECT_EFEITO79    = 0x54, //79
    MAGIC_EFFECT_EFEITO80    = 0x55, //80
    MAGIC_EFFECT_EFEITO81 = 0x56, //81
    MAGIC_EFFECT_EFEITO82    = 0x57, //82
    MAGIC_EFFECT_EFEITO83    = 0x58, //83
    MAGIC_EFFECT_EFEITO84    = 0x59, //84
    MAGIC_EFFECT_EFEITO85    = 0x60, //85
    MAGIC_EFFECT_EFEITO86    = 0x61, //86
    MAGIC_EFFECT_EFEITO87    = 0x62, //87
    MAGIC_EFFECT_EFEITO88    = 0x63, //88
    MAGIC_EFFECT_EFEITO89    = 0x64, //89
    MAGIC_EFFECT_EFEITO90    = 0x65, //90
    MAGIC_EFFECT_LAST        = MAGIC_EFFECT_EFEITO90,

    //for internal use, dont send to client
    MAGIC_EFFECT_NONE        = 0xFF,
    MAGIC_EFFECT_UNKNOWN        = 0xFFFF
};
</pre>
<p><span style="color:#000000;">Não esqueça de deixar <strong>MAGIC_EFFECT_LAST</strong>, sempre como sendo o último efeito configurado. Por exemplo, se o meu último efeito configurado é <strong>MAGIC_EFFECT_EFEITO71    = 0x46, //71</strong>, então, ficará como:</span></p>
<pre class="ipsCode prettyprint">
MAGIC_EFFECT_LAST        = MAGIC_EFFECT_EFEITO71,
</pre>
<p><span style="color:#000000;">No arquivo <strong>tools.cpp</strong>, procure por:</span></p>
<pre class="ipsCode prettyprint">
MagicEffectNames magicEffectNames[] =
</pre>
<p><span style="color:#000000;">Basta configurar os efeitos novamente, assim como no arquivo anterior (<strong>const.h</strong>). Ficando assim (<strong>no caso, também até o 90</strong>):</span></p>
<br /><pre class="ipsCode prettyprint">
MagicEffectNames magicEffectNames[] =
{
{"redspark", MAGIC_EFFECT_DRAW_BLOOD},
{"bluebubble", MAGIC_EFFECT_LOSE_ENERGY},
{"poff", MAGIC_EFFECT_POFF},
{"yellowspark", MAGIC_EFFECT_BLOCKHIT},
{"explosionarea", MAGIC_EFFECT_EXPLOSION_AREA},
{"explosion", MAGIC_EFFECT_EXPLOSION_DAMAGE},
{"firearea", MAGIC_EFFECT_FIRE_AREA},
{"yellowbubble", MAGIC_EFFECT_YELLOW_RINGS},
{"greenbubble", MAGIC_EFFECT_POISON_RINGS},
{"blackspark", MAGIC_EFFECT_HIT_AREA},
{"teleport", MAGIC_EFFECT_TELEPORT},
{"energy", MAGIC_EFFECT_ENERGY_DAMAGE},
{"blueshimmer", MAGIC_EFFECT_WRAPS_BLUE},
{"redshimmer", MAGIC_EFFECT_WRAPS_RED},
{"greenshimmer", MAGIC_EFFECT_WRAPS_GREEN},
{"fire", MAGIC_EFFECT_HITBY_FIRE},
{"greenspark", MAGIC_EFFECT_POISON},
{"mortarea", MAGIC_EFFECT_MORT_AREA},
{"greennote", MAGIC_EFFECT_SOUND_GREEN},
{"rednote", MAGIC_EFFECT_SOUND_RED},
{"poison", MAGIC_EFFECT_POISON_AREA},
{"yellownote", MAGIC_EFFECT_SOUND_YELLOW},
{"purplenote", MAGIC_EFFECT_SOUND_PURPLE},
{"bluenote", MAGIC_EFFECT_SOUND_BLUE},
{"whitenote", MAGIC_EFFECT_SOUND_WHITE},
{"bubbles", MAGIC_EFFECT_BUBBLES},
{"dice", MAGIC_EFFECT_CRAPS},
{"giftwraps", MAGIC_EFFECT_GIFT_WRAPS},
{"yellowfirework", MAGIC_EFFECT_FIREWORK_YELLOW},
{"redfirework", MAGIC_EFFECT_FIREWORK_RED},
{"bluefirework", MAGIC_EFFECT_FIREWORK_BLUE},
{"stun", MAGIC_EFFECT_STUN},
{"sleep", MAGIC_EFFECT_SLEEP},
{"watercreature", MAGIC_EFFECT_WATERCREATURE},
{"groundshaker", MAGIC_EFFECT_GROUNDSHAKER},
{"hearts", MAGIC_EFFECT_HEARTS},
{"fireattack", MAGIC_EFFECT_FIREATTACK},
{"energyarea", MAGIC_EFFECT_ENERGY_AREA},
{"smallclouds", MAGIC_EFFECT_SMALLCLOUDS},
{"holydamage", MAGIC_EFFECT_HOLYDAMAGE},
{"bigclouds", MAGIC_EFFECT_BIGCLOUDS},
{"icearea", MAGIC_EFFECT_ICEAREA},
{"icetornado", MAGIC_EFFECT_ICETORNADO},
{"iceattack", MAGIC_EFFECT_ICEATTACK},
{"stones", MAGIC_EFFECT_STONES},
{"smallplants", MAGIC_EFFECT_SMALLPLANTS},
{"carniphila", MAGIC_EFFECT_CARNIPHILA},
{"purpleenergy", MAGIC_EFFECT_PURPLEENERGY},
{"yellowenergy", MAGIC_EFFECT_YELLOWENERGY},
{"holyarea", MAGIC_EFFECT_HOLYAREA},
{"bigplants", MAGIC_EFFECT_BIGPLANTS},
{"cake", MAGIC_EFFECT_CAKE},
{"giantice", MAGIC_EFFECT_GIANTICE},
{"watersplash", MAGIC_EFFECT_WATERSPLASH},
{"plantattack", MAGIC_EFFECT_PLANTATTACK},
{"tutorialarrow", MAGIC_EFFECT_TUTORIALARROW},
{"tutorialsquare", MAGIC_EFFECT_TUTORIALSQUARE},
{"mirrorhorizontal", MAGIC_EFFECT_MIRRORHORIZONTAL},
{"mirrorvertical", MAGIC_EFFECT_MIRRORVERTICAL},
{"skullhorizontal", MAGIC_EFFECT_SKULLHORIZONTAL},
{"skullvertical", MAGIC_EFFECT_SKULLVERTICAL},
{"assassin", MAGIC_EFFECT_ASSASSIN},
{"stepshorizontal", MAGIC_EFFECT_STEPSHORIZONTAL},
{"bloodysteps", MAGIC_EFFECT_BLOODYSTEPS},
{"stepsvertical", MAGIC_EFFECT_STEPSVERTICAL},
{"yalaharighost", MAGIC_EFFECT_YALAHARIGHOST},
{"bats", MAGIC_EFFECT_BATS},
{"smoke", MAGIC_EFFECT_SMOKE},
{"efeito69", MAGIC_EFFECT_EFEITO69},
{"efeito70", MAGIC_EFFECT_EFEITO70},
{"efeito71", MAGIC_EFFECT_EFEITO71},
{"efeito72", MAGIC_EFFECT_EFEITO72},
{"efeito73", MAGIC_EFFECT_EFEITO73},
{"efeito74", MAGIC_EFFECT_EFEITO74},
{"efeito75", MAGIC_EFFECT_EFEITO75},
{"efeito76", MAGIC_EFFECT_EFEITO76},
{"efeito77", MAGIC_EFFECT_EFEITO77},
{"efeito78", MAGIC_EFFECT_EFEITO78},
{"efeito79", MAGIC_EFFECT_EFEITO79},
{"efeito80", MAGIC_EFFECT_EFEITO80},
{"efeito81", MAGIC_EFFECT_EFEITO81},
{"efeito82", MAGIC_EFFECT_EFEITO82},
{"efeito83", MAGIC_EFFECT_EFEITO83},
{"efeito84", MAGIC_EFFECT_EFEITO84},
{"efeito85", MAGIC_EFFECT_EFEITO85},
{"efeito86", MAGIC_EFFECT_EFEITO86},
{"efeito87", MAGIC_EFFECT_EFEITO87},
{"efeito88", MAGIC_EFFECT_EFEITO88},
{"efeito89", MAGIC_EFFECT_EFEITO89},
{"efeito90", MAGIC_EFFECT_EFEITO90}
};
</pre>
<p><span style="color:#000000;">Não esqueça de configurar exatamente como em <strong>const.h</strong>. Por exemplo, se no arquivo anterior o efeito 71 está configurado como:</span></p>
<pre class="ipsCode prettyprint">
MAGIC_EFFECT_EFEITO71    = 0x46, //71</pre>
<p><span style="color:#000000;">Então, você terá que configurar o mesmo efeito com os mesmos caracteres do nome desse efeito em <strong>tools.cpp</strong> (no código, digo configurar os caracteres exatamente iguais aos do arquivo anterior, após a vírgula <strong>&gt;</strong>):</span></p>
<pre class="ipsCode prettyprint">
{"efeito71", MAGIC_EFFECT_EFEITO71},</pre>
<p><span style="color:#000000;">Compile e adicione o executável do distro à seu servidor.</span></p>
<p> </p>
<p><span style="color:#000000;">Vamos a configuração no seu servidor. Vá até o diretório da pasta lib (<strong>data/lib</strong>) e abra o arquivo <u>000-constant.lua</u>. Nele, procure por:</span></p>
<pre class="ipsCode prettyprint">
CONST_ME_</pre>
<p><span style="color:#000000;">E então configure, logo após o último efeito (no caso, 68 seria: <strong>CONST_ME_INSECTS = 68</strong>), todos os efeitos com os mesmos caracteres dos quais você adicionou na source em <strong>const.h</strong> e <strong>tools.cpp</strong>. Se você configurou por exemplo, até o efeito número 80 nos arquivos anteriores, então no script da lib ficaria dessa forma:</span></p>
<pre class="ipsCode prettyprint">
CONST_ME_DRAWBLOOD = 0
CONST_ME_LOSEENERGY = 1
CONST_ME_POFF = 2
CONST_ME_BLOCKHIT = 3
CONST_ME_EXPLOSIONAREA = 4
CONST_ME_EXPLOSIONHIT = 5
CONST_ME_FIREAREA = 6
CONST_ME_YELLOW_RINGS = 7
CONST_ME_GREEN_RINGS = 8
CONST_ME_HITAREA = 9
CONST_ME_TELEPORT = 10
CONST_ME_ENERGYHIT = 11
CONST_ME_MAGIC_BLUE = 12
CONST_ME_MAGIC_RED = 13
CONST_ME_MAGIC_GREEN = 14
CONST_ME_HITBYFIRE = 15
CONST_ME_HITBYPOISON = 16
CONST_ME_MORTAREA = 17
CONST_ME_SOUND_GREEN = 18
CONST_ME_SOUND_RED = 19
CONST_ME_POISONAREA = 20
CONST_ME_SOUND_YELLOW = 21
CONST_ME_SOUND_PURPLE = 22
CONST_ME_SOUND_BLUE = 23
CONST_ME_SOUND_WHITE = 24
CONST_ME_BUBBLES = 25
CONST_ME_CRAPS = 26
CONST_ME_GIFT_WRAPS = 27
CONST_ME_FIREWORK_YELLOW = 28
CONST_ME_FIREWORK_RED = 29
CONST_ME_FIREWORK_BLUE = 30
CONST_ME_STUN = 31
CONST_ME_SLEEP = 32
CONST_ME_WATERCREATURE = 33
CONST_ME_GROUNDSHAKER = 34
CONST_ME_HEARTS = 35
CONST_ME_FIREATTACK = 36
CONST_ME_ENERGYAREA = 37
CONST_ME_SMALLCLOUDS = 38
CONST_ME_HOLYDAMAGE = 39
CONST_ME_BIGCLOUDS = 40
CONST_ME_ICEAREA = 41
CONST_ME_ICETORNADO = 42
CONST_ME_ICEATTACK = 43
CONST_ME_STONES = 44
CONST_ME_SMALLPLANTS = 45
CONST_ME_CARNIPHILA = 46
CONST_ME_PURPLEENERGY = 47
CONST_ME_YELLOWENERGY = 48
CONST_ME_HOLYAREA = 49
CONST_ME_BIGPLANTS = 50
CONST_ME_CAKE = 51
CONST_ME_GIANTICE = 52
CONST_ME_WATERSPLASH = 53
CONST_ME_PLANTATTACK = 54
CONST_ME_TUTORIALARROW = 55
CONST_ME_TUTORIALSQUARE = 56
CONST_ME_MIRRORHORIZONTAL = 57
CONST_ME_MIRRORVERTICAL = 58
CONST_ME_SKULLHORIZONTAL = 59
CONST_ME_SKULLVERTICAL = 60
CONST_ME_ASSASSIN = 61
CONST_ME_STEPSHORIZONTAL = 62
CONST_ME_BLOODYSTEPS = 63
CONST_ME_STEPSVERTICAL = 64
CONST_ME_YALAHARIGHOST = 65
CONST_ME_BATS = 66
CONST_ME_SMOKE = 67
CONST_ME_INSECTS = 68
CONST_ME_EFEITO69 = 69
CONST_ME_EFEITO70 = 70
CONST_ME_EFEITO71 = 71
CONST_ME_EFEITO72 = 72
CONST_ME_EFEITO73 = 73
CONST_ME_EFEITO74 = 74
CONST_ME_EFEITO75 = 75
CONST_ME_EFEITO76 = 76
CONST_ME_EFEITO77 = 77
CONST_ME_EFEITO78 = 78
CONST_ME_EFEITO79 = 79
CONST_ME_EFEITO80 = 80
CONST_ME_EFEITO81 = 81
CONST_ME_EFEITO82 = 82
CONST_ME_EFEITO83 = 83
CONST_ME_EFEITO84 = 84
CONST_ME_EFEITO85 = 85
CONST_ME_EFEITO86 = 86
CONST_ME_EFEITO87 = 87
CONST_ME_EFEITO88 = 88
CONST_ME_EFEITO89 = 89
CONST_ME_EFEITO90 = 90
CONST_ME_NONE = 255
CONST_ME_LAST = CONST_ME_EFEITO90</pre>
<p>Pronto novos efeitos adicionados.</p>
<p> </p>
<p>Creditos: Bizzle</p>
<p> </p>
<p> </p>
<p>Espero que o tutorial seja de utilidade.</p>
<p>Att~~ Krono</p>
]]></description><guid isPermaLink="false">233736</guid><pubDate>Tue, 05 May 2015 19:17:39 +0000</pubDate></item><item><title>[TUTORIAL] Resolvendo qualquer erro na data base</title><link>https://xtibia.com/forum/topic/233368-tutorial-resolvendo-qualquer-erro-na-data-base/</link><description><![CDATA[
<p><span style="font-size:14px;">Opa, galerinha do XTibia, resolvi trazer a solução de uns problemas que vejo que ocorrem com uma certa frequência: <strong>Os erros da data base. </strong></span><br /><br /><span style="font-size:14px;">Neste tutorial vou ensinar a resolver os erros do tipo <strong>No such table</strong>, <strong>Insert into</strong>, <strong>No such column</strong>, <strong>... has no column named... </strong> etc.</span><br /><br /><span style="font-size:18px;"><u><strong>1°) NO SUCH TABLE</strong></u></span><br /><br />Bom, para o erro <strong>No such</strong> <strong>table, </strong>basta vc visualizar qual <strong>table</strong> está faltando. Para isso basta ler o erro na distro:<br /><img src="http://i.imgur.com/ggyQEm0.png" alt="ggyQEm0.png" /><br /><br />No caso da imagem, está faltando a <strong>table</strong>: <strong>player_statements</strong><br />Para resolver este e qualquer outro problema deste tipo, <span style="color:#ff0000;">caso sua data base seja <span style="font-size:18px;"><strong>sqlite</strong></span></span>,<br />basta abrir sua data base pelo <strong>Sqlite Studio</strong>(<span style="color:#0000ff;">download: </span><a href="http://sqlitestudio.pl/?act=download" rel="external nofollow">http://sqlitestudio.pl/?act=download</a>) e clicar em <strong>Open SQL query editor:</strong><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents"><p><br /><img src="http://i.imgur.com/ep8IwcQ.png" alt="ep8IwcQ.png" /><br /></p></div>
</div>
<p><br /><br />Mas caso sua data base seja <strong><span style="font-size:18px;"><span style="color:#ff0000;">Mysql </span></span></strong>abra pelo <strong>phpMyadmin</strong>, ou por outro editor de sua preferencia.<br /><br /><u><span style="font-size:18px;"><strong>1.1</strong>°) <strong>EXECUTANDO OS COMANDOS PARA RESOLVER O PROBLEMA</strong></span></u><br />Bom, dependendo da <strong>table</strong> que estiver faltando, vc irá colocar seu respectivo comando, segue abaixo<strong> TODOS</strong> os comandos básicos necessários para que sua data base fique <strong>Ok! : <span style="font-size:18px;"><span style="color:#ff0000;">(VC VAI PEGAR O COMANDO REFERENTE À TABLE QUE VC QUER!!!)</span></span></strong><br /><br /><br /><strong><span style="color:#0000cd;">account_viplist</span></strong><br /><span style="color:#0000cd;"></span></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `account_viplist`;
CREATE TABLE `account_viplist`
(
	`account_id` INT NOT NULL,
	`world_id` TINYINT(4) UNSIGNED NOT NULL DEFAULT 0,
	`player_id` INT NOT NULL,
	`description` VARCHAR( 128 ) NOT NULL,
	`icon` INT( 11 ) UNSIGNED NOT NULL,
	`notify` BOOLEAN NOT NULL,
	KEY (`account_id`), KEY (`player_id`), KEY (`world_id`), UNIQUE (`account_id`, `player_id`),
	FOREIGN KEY (`account_id`) REFERENCES `accounts`(`id`) ON DELETE CASCADE,
	FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS account_viplist;
CREATE TABLE account_viplist ( 
    account_id  INTEGER         NOT NULL,
    world_id    INTEGER         NOT NULL
                                DEFAULT '0',
    player_id   INTEGER         NOT NULL,
    description VARCHAR( 128 )  NOT NULL
                                DEFAULT '''',
    icon        INTEGER         NOT NULL
                                DEFAULT '0',
    notify      BOOLEAN         NOT NULL
                                DEFAULT '''',
    UNIQUE ( account_id, player_id ),
    FOREIGN KEY ( account_id ) REFERENCES accounts ( id ),
    FOREIGN KEY ( player_id ) REFERENCES players ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">accounts</span></strong><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `accounts`;
CREATE TABLE `accounts`
(
	`id` INT NOT NULL AUTO_INCREMENT,
	`name` VARCHAR(32) NOT NULL DEFAULT '',
	`password` VARCHAR(255) NOT NULL/* VARCHAR(32) NOT NULL COMMENT 'MD5'*//* VARCHAR(40) NOT NULL COMMENT 'SHA1'*/,
	`salt` VARCHAR(40) NOT NULL DEFAULT '',
	`premdays` INT NOT NULL DEFAULT 5,
	`lastday` INT UNSIGNED NOT NULL DEFAULT 0,
	`email` VARCHAR(255) NOT NULL DEFAULT '',
	`key` VARCHAR(32) NOT NULL DEFAULT '0',
	`blocked` TINYINT(1) NOT NULL DEFAULT FALSE COMMENT 'internal usage',
	`warnings` INT NOT NULL DEFAULT 0,
	`group_id` INT NOT NULL DEFAULT 1,
        `viptime` INT( 11 ) NOT NULL DEFAULT '0',
	PRIMARY KEY (`id`), UNIQUE (`name`)
) ENGINE = InnoDB;

INSERT INTO `accounts` VALUES (1, '1', '1', '', 65535, 0, '', '0', 0, 0, 1, 65535);
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS accounts;
CREATE TABLE accounts ( 
    id       INTEGER         PRIMARY KEY
                             NOT NULL,
    name     VARCHAR( 255 )  NOT NULL,
    password VARCHAR( 255 )  NOT NULL,
    salt     VARCHAR( 40 )   NOT NULL
                             DEFAULT '''',
    premdays INTEGER         NOT NULL
                             DEFAULT '0',
    lastday  INTEGER         NOT NULL
                             DEFAULT '0',
    email    VARCHAR( 255 )  NOT NULL
                             DEFAULT '''',
    [key]    VARCHAR( 32 )   NOT NULL
                             DEFAULT '0',
    blocked  BOOLEAN         NOT NULL
                             DEFAULT 'FALSE',
    warnings INTEGER         NOT NULL
                             DEFAULT '0',
    group_id INTEGER         NOT NULL
                             DEFAULT '1',
    viptime  INTEGER         NOT NULL
                             DEFAULT '0',
    UNIQUE ( name ) 
);
INSERT INTO `accounts` VALUES (1, '1', '1', '', 65535, 0, '', '0', 0, 0, 1, 65535);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">bans</span></strong><br /><strong><span style="color:#0000cd;"></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `bans`;
CREATE TABLE `bans` (
  `id` int(11) NOT NULL,
  `type` int(11) NOT NULL,
  `value` int(11) NOT NULL,
  `param` int(11) NOT NULL,
  `active` tinyint(1) NOT NULL DEFAULT '1',
  `expires` int(11) NOT NULL,
  `added` int(11) NOT NULL,
  `admin_id` int(11) NOT NULL,
  `comment` text NOT NULL,
  `reason` int(11) NOT NULL,
  `action` int(11) NOT NULL,
  `statement` varchar(255) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS bans;
CREATE TABLE bans (
    id          INTEGER         PRIMARY KEY
                                NOT NULL,
    type        INTEGER         NOT NULL,
    value       INTEGER         NOT NULL,
    param       INTEGER         NOT NULL
                                DEFAULT '11',
    active      BOOLEAN         NOT NULL
                                DEFAULT '1',
    expires     INTEGER         NOT NULL,
    added       INTEGER         NOT NULL,
    admin_id    INTEGER         NOT NULL
                                DEFAULT '0',
    comment     TEXT            NOT NULL,
    reason      INTEGER         NOT NULL
                                DEFAULT '0',
    action    INTEGER         NOT NULL
                                DEFAULT '0',
    statement VARCHAR( 255 )  NOT NULL
                                DEFAULT ''''
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">environment_killers</span></strong><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `environment_killers`;
CREATE TABLE `environment_killers`
(
	`kill_id` INT NOT NULL,
	`name` VARCHAR(255) NOT NULL,
	FOREIGN KEY (`kill_id`) REFERENCES `killers`(`id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `environment_killers`;
CREATE TABLE environment_killers ( 
    kill_id INTEGER         NOT NULL,
    name    VARCHAR( 255 )  NOT NULL,
    FOREIGN KEY ( kill_id ) REFERENCES killers ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">global_storage</span></strong><br /><strong><span style="color:#0000cd;"></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `global_storage`;
CREATE TABLE `global_storage`
(
	`key` VARCHAR(32) NOT NULL,
	`world_id` TINYINT(4) UNSIGNED NOT NULL DEFAULT 0,
	`value` TEXT NOT NULL,
	UNIQUE  (`key`, `world_id`)
) ENGINE = InnoDB;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS global_storage;
CREATE TABLE global_storage ( 
    [key]    VARCHAR( 32 )   NOT NULL,
    world_id INTEGER         NOT NULL
                             DEFAULT '0',
    value    VARCHAR( 255 )  NOT NULL
                             DEFAULT '0',
    UNIQUE ( [key], world_id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><span style="color:#0000cd;"><strong>guild_invites</strong></span><br /><span style="color:#0000cd;"><strong></strong></span></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `guild_invites`;
CREATE TABLE `guild_invites`
(
	`player_id` INT NOT NULL DEFAULT 0,
	`guild_id` INT NOT NULL DEFAULT 0,
	UNIQUE (`player_id`, `guild_id`),
	FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE,
	FOREIGN KEY (`guild_id`) REFERENCES `guilds`(`id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS guild_invites;
CREATE TABLE guild_invites ( 
    player_id INTEGER NOT NULL,
    guild_id  INTEGER NOT NULL,
    UNIQUE ( player_id, guild_id ),
    FOREIGN KEY ( player_id ) REFERENCES players ( id ),
    FOREIGN KEY ( guild_id ) REFERENCES guilds ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">guild_kills</span></strong><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `guild_kills`;
CREATE TABLE `guild_kills`
(
	`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
	`guild_id` INT NOT NULL,
	`war_id` INT NOT NULL,
	`death_id` INT NOT NULL,
	FOREIGN KEY (`guild_id`) REFERENCES `guilds`(`id`) ON DELETE CASCADE,
	FOREIGN KEY (`war_id`) REFERENCES `guild_wars`(`id`) ON DELETE CASCADE,
	FOREIGN KEY (`death_id`) REFERENCES `player_deaths`(`id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS guild_kills;
CREATE TABLE guild_kills ( 
    id       INT PRIMARY KEY
                 NOT NULL,
    guild_id INT NOT NULL,
    war_id   INT NOT NULL,
    death_id INT NOT NULL 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">guild_ranks</span></strong><br /><strong><span style="color:#0000cd;"></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `guild_ranks`;
CREATE TABLE `guild_ranks`
(
	`id` INT NOT NULL AUTO_INCREMENT,
	`guild_id` INT NOT NULL,
	`name` VARCHAR(255) NOT NULL,
	`level` INT NOT NULL COMMENT '1 - leader, 2 - vice leader, 3 - member',
	PRIMARY KEY (`id`),
	FOREIGN KEY (`guild_id`) REFERENCES `guilds`(`id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS guild_ranks;
CREATE TABLE guild_ranks ( 
    id       INTEGER         PRIMARY KEY,
    guild_id INTEGER         NOT NULL,
    name     VARCHAR( 255 )  NOT NULL,
    level    INTEGER         NOT NULL,
    FOREIGN KEY ( guild_id ) REFERENCES guilds ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><span style="color:#0000cd;"><strong>guild_wars</strong></span><br /><span style="color:#0000cd;"><strong></strong></span></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `guild_wars`;
CREATE TABLE `guild_wars`
(
	`id` INT NOT NULL AUTO_INCREMENT,
	`guild_id` INT NOT NULL,
	`enemy_id` INT NOT NULL,
	`begin` BIGINT NOT NULL DEFAULT 0,
	`end` BIGINT NOT NULL DEFAULT 0,
	`frags` INT UNSIGNED NOT NULL DEFAULT 0,
	`payment` BIGINT UNSIGNED NOT NULL DEFAULT 0,
	`guild_kills` INT UNSIGNED NOT NULL DEFAULT 0,
	`enemy_kills` INT UNSIGNED NOT NULL DEFAULT 0,
	`status` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,
	PRIMARY KEY (`id`), KEY `status` (`status`),
	KEY `guild_id` (`guild_id`), KEY `enemy_id` (`enemy_id`),
	FOREIGN KEY (`guild_id`) REFERENCES `guilds`(`id`) ON DELETE CASCADE,
	FOREIGN KEY (`enemy_id`) REFERENCES `guilds`(`id`) ON DELETE CASCADE
) ENGINE=InnoDB;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS guild_wars;
CREATE TABLE guild_wars ( 
    id          INTEGER       NOT NULL,
    guild_id    INT           NOT NULL,
    enemy_id    INT           NOT NULL,
    begin       BIGINT        NOT NULL
                              DEFAULT '0',
    end         BIGINT        NOT NULL
                              DEFAULT '0',
    frags       INT           NOT NULL
                              DEFAULT '0',
    payment     BIGINT        NOT NULL
                              DEFAULT '0',
    guild_kills INT           NOT NULL
                              DEFAULT '0',
    enemy_kills INT           NOT NULL
                              DEFAULT '0',
    status      TINYINT( 1 )  NOT NULL
                              DEFAULT '0',
    PRIMARY KEY ( id ),
    FOREIGN KEY ( guild_id ) REFERENCES guilds ( id ),
    FOREIGN KEY ( enemy_id ) REFERENCES guilds ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><span style="color:#0000cd;"><strong>guilds</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `guilds`;
CREATE TABLE `guilds`
(
	`id` INT NOT NULL AUTO_INCREMENT,
	`world_id` TINYINT(4) UNSIGNED NOT NULL DEFAULT 0,
	`name` VARCHAR(255) NOT NULL,
	`ownerid` INT NOT NULL,
	`creationdata` INT NOT NULL,
	`checkdata` INT NOT NULL,
	`motd` VARCHAR(255) NOT NULL,
	`balance` BIGINT UNSIGNED NOT NULL DEFAULT 0,
	PRIMARY KEY (`id`),
	UNIQUE (`name`, `world_id`)
) ENGINE = InnoDB;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS guilds;
CREATE TABLE guilds ( 
    id           INTEGER         PRIMARY KEY,
    world_id     INTEGER         NOT NULL
                                 DEFAULT '0',
    name         VARCHAR( 255 )  NOT NULL,
    ownerid      INTEGER         NOT NULL,
    creationdata INTEGER         NOT NULL,
    checkdata    INTEGER         NOT NULL,
    motd         VARCHAR( 255 )  NOT NULL
                                 DEFAULT '''',
    balance      BIGINT          NOT NULL
                                 DEFAULT '0',
    UNIQUE ( name, world_id ),
    FOREIGN KEY ( ownerid ) REFERENCES players ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><span style="color:#0000cd;"><strong>house_auctions</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `house_auctions`;
CREATE TABLE `house_auctions`
(
	`house_id` INT UNSIGNED NOT NULL,
	`world_id` TINYINT(4) UNSIGNED NOT NULL DEFAULT 0,
	`player_id` INT NOT NULL,
	`bid` INT UNSIGNED NOT NULL DEFAULT 0,
	`limit` INT UNSIGNED NOT NULL DEFAULT 0,
	`endtime` BIGINT UNSIGNED NOT NULL DEFAULT 0,
	UNIQUE (`house_id`, `world_id`),
	FOREIGN KEY (`house_id`, `world_id`) REFERENCES `houses`(`id`, `world_id`) ON DELETE CASCADE,
	FOREIGN KEY (`player_id`) REFERENCES `players` (`id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS house_auctions;
CREATE TABLE house_auctions ( 
    house_id  INTEGER NOT NULL,
    world_id  INTEGER NOT NULL
                      DEFAULT '0',
    player_id INTEGER NOT NULL,
    bid       INTEGER NOT NULL
                      DEFAULT '0',
    [limit]   INTEGER NOT NULL
                      DEFAULT '0',
    endtime   INTEGER NOT NULL
                      DEFAULT '0',
    UNIQUE ( house_id, world_id ),
    FOREIGN KEY ( house_id, world_id ) REFERENCES houses ( id, world_id ),
    FOREIGN KEY ( player_id ) REFERENCES players ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><span style="color:#0000cd;"><strong>house_data</strong></span><br /><span style="color:#0000cd;"><strong></strong></span></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `house_data`;
CREATE TABLE `house_data`
(
	`house_id` INT UNSIGNED NOT NULL,
	`world_id` TINYINT(4) UNSIGNED NOT NULL DEFAULT 0,
	`data` LONGBLOB NOT NULL,
	UNIQUE (`house_id`, `world_id`),
	FOREIGN KEY (`house_id`, `world_id`) REFERENCES `houses`(`id`, `world_id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS house_data;
CREATE TABLE house_data ( 
    house_id INTEGER  NOT NULL,
    world_id INTEGER  NOT NULL
                      DEFAULT '0',
    data     LONGBLOB NOT NULL,
    UNIQUE ( house_id, world_id ),
    FOREIGN KEY ( house_id, world_id ) REFERENCES houses ( id, world_id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">house_lists</span></strong><br /><strong><span style="color:#0000cd;"></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `house_lists`;
CREATE TABLE `house_lists`
(
	`house_id` INT UNSIGNED NOT NULL,
	`world_id` TINYINT(4) UNSIGNED NOT NULL DEFAULT 0,
	`listid` INT NOT NULL,
	`list` TEXT NOT NULL,
	UNIQUE (`house_id`, `world_id`, `listid`),
	FOREIGN KEY (`house_id`, `world_id`) REFERENCES `houses`(`id`, `world_id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS house_lists;
CREATE TABLE house_lists ( 
    house_id INTEGER NOT NULL,
    world_id INTEGER NOT NULL
                     DEFAULT '0',
    listid   INTEGER NOT NULL,
    list     TEXT    NOT NULL,
    UNIQUE ( house_id, world_id, listid ),
    FOREIGN KEY ( house_id, world_id ) REFERENCES houses ( id, world_id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">houses</span></strong><br /><strong><span style="color:#0000cd;"></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `houses`;
CREATE TABLE `houses`
(
	`id` INT UNSIGNED NOT NULL,
	`world_id` TINYINT(4) UNSIGNED NOT NULL DEFAULT 0,
	`owner` INT NOT NULL,
	`paid` INT UNSIGNED NOT NULL DEFAULT 0,
	`warnings` INT NOT NULL DEFAULT 0,
	`lastwarning` INT UNSIGNED NOT NULL DEFAULT 0,
	`name` VARCHAR(255) NOT NULL,
	`town` INT UNSIGNED NOT NULL DEFAULT 0,
	`size` INT UNSIGNED NOT NULL DEFAULT 0,
	`price` INT UNSIGNED NOT NULL DEFAULT 0,
	`rent` INT UNSIGNED NOT NULL DEFAULT 0,
	`doors` INT UNSIGNED NOT NULL DEFAULT 0,
	`beds` INT UNSIGNED NOT NULL DEFAULT 0,
	`tiles` INT UNSIGNED NOT NULL DEFAULT 0,
	`guild` TINYINT(1) UNSIGNED NOT NULL DEFAULT FALSE,
	`clear` TINYINT(1) UNSIGNED NOT NULL DEFAULT FALSE,
	UNIQUE (`id`, `world_id`)
) ENGINE = InnoDB;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS houses;
CREATE TABLE houses ( 
    id          INTEGER         NOT NULL,
    world_id    INTEGER         NOT NULL
                                DEFAULT '0',
    owner       INTEGER         NOT NULL,
    paid        INTEGER         NOT NULL
                                DEFAULT '0',
    warnings    INTEGER         NOT NULL
                                DEFAULT '0',
    lastwarning INTEGER         NOT NULL
                                DEFAULT '0',
    name        VARCHAR( 255 )  NOT NULL,
    town        INTEGER         NOT NULL
                                DEFAULT '0',
    size        INTEGER         NOT NULL
                                DEFAULT '0',
    price       INTEGER         NOT NULL
                                DEFAULT '0',
    rent        INTEGER         NOT NULL
                                DEFAULT '0',
    doors       INTEGER         NOT NULL
                                DEFAULT '0',
    beds        INTEGER         NOT NULL
                                DEFAULT '0',
    tiles       INTEGER         NOT NULL
                                DEFAULT '0',
    guild       BOOLEAN         NOT NULL
                                DEFAULT 'FALSE',
    clear       BOOLEAN         NOT NULL
                                DEFAULT 'FALSE',
    UNIQUE ( id, world_id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">killers</span></strong><br /><strong><span style="color:#0000cd;"></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `killers`;
CREATE TABLE `killers`
(
	`id` INT NOT NULL AUTO_INCREMENT,
	`death_id` INT NOT NULL,
	`final_hit` TINYINT(1) UNSIGNED NOT NULL DEFAULT FALSE,
	`unjustified` TINYINT(1) UNSIGNED NOT NULL DEFAULT FALSE,
	`war` INT NOT NULL DEFAULT 0,
	PRIMARY KEY (`id`),
	FOREIGN KEY (`death_id`) REFERENCES `player_deaths`(`id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS killers;
CREATE TABLE killers ( 
    id          INTEGER PRIMARY KEY,
    death_id    INTEGER NOT NULL,
    final_hit   BOOLEAN NOT NULL
                        DEFAULT 'FALSE',
    unjustified BOOLEAN NOT NULL
                        DEFAULT 'FALSE',
    war         BIGINT  NOT NULL
                        DEFAULT '0',
    FOREIGN KEY ( death_id ) REFERENCES player_deaths ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><span style="color:#0000cd;"><strong>market_history</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `market_history`;
CREATE TABLE `market_history` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `world_id` tinyint(4) unsigned NOT NULL DEFAULT '0',
  `player_id` int(11) NOT NULL,
  `sale` tinyint(1) NOT NULL DEFAULT '0',
  `itemtype` int(10) unsigned NOT NULL,
  `amount` smallint(5) unsigned NOT NULL,
  `price` int(10) unsigned NOT NULL DEFAULT '0',
  `expires_at` bigint(20) unsigned NOT NULL,
  `inserted` bigint(20) unsigned NOT NULL,
  `state` tinyint(1) unsigned NOT NULL,
  PRIMARY KEY (`id`),
  KEY `player_id` (`player_id`,`sale`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS market_history;
CREATE TABLE market_history ( 
    id         INTEGER          PRIMARY KEY
                                NOT NULL,
    player_id  INTEGER          NOT NULL,
    sale       BOOLEAN          NOT NULL
                                DEFAULT '0',
    itemtype   UNSIGNED INTEGER NOT NULL,
    amount     UNSIGNED INTEGER NOT NULL,
    price      UNSIGNED INTEGER NOT NULL
                                DEFAULT '0',
    expires_at UNSIGNED INTEGER NOT NULL,
    inserted   UNSIGNED INTEGER NOT NULL,
    state      UNSIGNED INTEGER NOT NULL,
    world_id   TINYINT( 4 )     NOT NULL
                                DEFAULT ( 0 ),
    FOREIGN KEY ( player_id ) REFERENCES players ( id ) ON DELETE CASCADE 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">market_offers</span></strong><br /><strong><span style="color:#0000cd;"></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `market_offers`;
CREATE TABLE `market_offers` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `world_id` tinyint(4) unsigned NOT NULL DEFAULT '0',
  `player_id` int(11) NOT NULL,
  `sale` tinyint(1) NOT NULL DEFAULT '0',
  `itemtype` int(10) unsigned NOT NULL,
  `amount` smallint(5) unsigned NOT NULL,
  `created` bigint(20) unsigned NOT NULL,
  `anonymous` tinyint(1) NOT NULL DEFAULT '0',
  `price` int(10) unsigned NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`),
  KEY `sale` (`sale`,`itemtype`),
  KEY `created` (`created`),
  KEY `market_offers_ibfk_1` (`player_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS market_offers;
CREATE TABLE market_offers ( 
    id        INTEGER          PRIMARY KEY
                               NOT NULL,
    player_id INTEGER          NOT NULL,
    sale      BOOLEAN          NOT NULL
                               DEFAULT '0',
    itemtype  UNSIGNED INTEGER NOT NULL,
    amount    UNSIGNED INTEGER NOT NULL,
    created   UNSIGNED INTEGER NOT NULL,
    anonymous BOOLEAN          NOT NULL
                               DEFAULT '0',
    price     UNSIGNED INTEGER NOT NULL
                               DEFAULT '0',
    world_id  TINYINT( 4 )     NOT NULL
                               DEFAULT ( 0 ),
    FOREIGN KEY ( player_id ) REFERENCES players ( id ) ON DELETE CASCADE 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">player_deaths</span></strong><br /><strong><span style="color:#0000cd;"></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `player_deaths`;
CREATE TABLE `player_deaths` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `player_id` int(11) NOT NULL,
  `date` bigint(20) unsigned NOT NULL,
  `level` int(10) unsigned NOT NULL,
  PRIMARY KEY (`id`),
  KEY `date` (`date`),
  KEY `player_deaths_ibfk_1` (`player_id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=42 ;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS player_deaths;
CREATE TABLE player_deaths ( 
    id        INTEGER PRIMARY KEY,
    player_id INTEGER NOT NULL,
    date      INTEGER NOT NULL,
    level     INTEGER NOT NULL,
    FOREIGN KEY ( player_id ) REFERENCES players ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><span style="color:#0000cd;"><strong>player_depotitems</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `player_depotitems`;
CREATE TABLE `player_depotitems`
(
	`player_id` INT NOT NULL,
	`sid` INT NOT NULL COMMENT 'any given range, eg. 0-100 is reserved for depot lockers and all above 100 will be normal items inside depots',
	`pid` INT NOT NULL DEFAULT 0,
	`itemtype` INT NOT NULL,
	`count` INT NOT NULL DEFAULT 0,
	`attributes` BLOB NOT NULL,
	KEY (`player_id`), UNIQUE (`player_id`, `sid`),
	FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS player_depotitems;
CREATE TABLE player_depotitems ( 
    player_id  INTEGER NOT NULL,
    sid        INTEGER NOT NULL,
    pid        INTEGER NOT NULL
                       DEFAULT '0',
    itemtype   INTEGER NOT NULL,
    count      INTEGER NOT NULL
                       DEFAULT '0',
    attributes BLOB    NOT NULL,
    UNIQUE ( player_id, sid ),
    FOREIGN KEY ( player_id ) REFERENCES players ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">player_inboxitems</span></strong><br /><strong><span style="color:#0000cd;"></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `player_inboxitems`;
CREATE TABLE IF NOT EXISTS `player_inboxitems` (
  `player_id` int(11) NOT NULL,
  `sid` int(11) NOT NULL,
  `pid` int(11) NOT NULL DEFAULT '0',
  `itemtype` smallint(6) NOT NULL,
  `count` smallint(5) NOT NULL DEFAULT '0',
  `attributes` blob NOT NULL,
  UNIQUE KEY `player_id_2` (`player_id`,`sid`),
  KEY `player_id` (`player_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS player_inboxitems;
CREATE TABLE player_inboxitems ( 
    player_id  INT( 11 )      NOT NULL,
    sid        INT( 11 )      NOT NULL,
    pid        INT( 11 )      NOT NULL
                              DEFAULT ( 0 ),
    itemtype   SMALLINT( 6 )  NOT NULL,
    count      SMALLINT( 5 )  NOT NULL
                              DEFAULT ( 0 ),
    attributes BLOB           NOT NULL 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">player_items</span></strong><br /><strong><span style="color:#0000cd;"></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `player_items`;
CREATE TABLE `player_items`
(
	`player_id` INT NOT NULL,
	`pid` INT NOT NULL DEFAULT 0,
	`sid` INT NOT NULL DEFAULT 0,
	`itemtype` INT NOT NULL DEFAULT 0,
	`count` INT NOT NULL DEFAULT 0,
	`attributes` BLOB NOT NULL,
	KEY (`player_id`), UNIQUE (`player_id`, `sid`),
	FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS player_items;
CREATE TABLE player_items ( 
    player_id  INT  NOT NULL,
    sid        INT  NOT NULL,
    pid        INT  NOT NULL
                    DEFAULT '0',
    itemtype   INT  NOT NULL,
    count      INT  NOT NULL
                    DEFAULT '0',
    attributes BLOB NOT NULL,
    UNIQUE ( player_id, sid ),
    FOREIGN KEY ( player_id ) REFERENCES players ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">player_killers</span></strong><br /><strong><span style="color:#0000cd;"></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `player_killers`;
CREATE TABLE `player_killers`
(
	`kill_id` INT NOT NULL,
	`player_id` INT NOT NULL,
	FOREIGN KEY (`kill_id`) REFERENCES `killers`(`id`) ON DELETE CASCADE,
	FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS player_killers;
CREATE TABLE player_killers ( 
    kill_id   INTEGER NOT NULL,
    player_id INTEGER NOT NULL,
    FOREIGN KEY ( kill_id ) REFERENCES killers ( id ),
    FOREIGN KEY ( player_id ) REFERENCES players ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">player_namelocks</span></strong><br /><strong><span style="color:#0000cd;"></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `player_namelocks`;
CREATE TABLE `player_namelocks`
(
	`player_id` INT NOT NULL,
	`name` VARCHAR(255) NOT NULL,
	`new_name` VARCHAR(255) NOT NULL,
	`date` BIGINT NOT NULL DEFAULT 0,
	KEY (`player_id`),
	FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS player_namelocks;
CREATE TABLE player_namelocks ( 
    player_id INTEGER         NOT NULL,
    name      VARCHAR( 255 )  NOT NULL,
    new_name  VARCHAR( 255 )  NOT NULL,
    date      INTEGER         NOT NULL
                              DEFAULT '0',
    FOREIGN KEY ( player_id ) REFERENCES players ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">player_skills</span></strong><br /><strong><span style="color:#0000cd;"></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `player_skills`;
CREATE TABLE `player_skills`
(
	`player_id` INT NOT NULL,
	`skillid` TINYINT(2) NOT NULL DEFAULT 0,
	`value` INT UNSIGNED NOT NULL DEFAULT 0,
	`count` INT UNSIGNED NOT NULL DEFAULT 0,
	KEY (`player_id`), UNIQUE (`player_id`, `skillid`),
	FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS player_skills;
CREATE TABLE player_skills ( 
    player_id INTEGER NOT NULL,
    skillid   INTEGER NOT NULL,
    value     INTEGER NOT NULL
                      DEFAULT '0',
    count     INTEGER NOT NULL
                      DEFAULT '0',
    UNIQUE ( player_id, skillid ),
    FOREIGN KEY ( player_id ) REFERENCES players ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">player_spells</span></strong><br /><strong><span style="color:#0000cd;"></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `player_spells`;
CREATE TABLE `player_spells`
(
	`player_id` INT NOT NULL,
	`name` VARCHAR(255) NOT NULL,
	KEY (`player_id`), UNIQUE (`player_id`, `name`),
	FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS player_spells;
CREATE TABLE player_spells ( 
    player_id INTEGER         NOT NULL,
    name      VARCHAR( 255 )  NOT NULL,
    UNIQUE ( player_id, name ),
    FOREIGN KEY ( player_id ) REFERENCES players ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">player_statements</span></strong><br /><strong><span style="color:#0000cd;"></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `player_statements`;
CREATE TABLE `player_statements`
(
	`id` INT NOT NULL AUTO_INCREMENT,
	`player_id` INT NOT NULL,
	`channel_id` INT NOT NULL DEFAULT 0,
	`text` VARCHAR (255) NOT NULL,
	`date` BIGINT NOT NULL DEFAULT 0,
	PRIMARY KEY (`id`), KEY (`player_id`), KEY (`channel_id`),
	FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS player_statements;
CREATE TABLE player_statements ( 
    id         INTEGER         PRIMARY KEY,
    player_id  INTEGER         NOT NULL,
    channel_id INTEGER         NOT NULL
                               DEFAULT '0',
    text       VARCHAR( 255 )  NOT NULL,
    date       INTEGER         NOT NULL
                               DEFAULT '0',
    FOREIGN KEY ( player_id ) REFERENCES players ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">player_storage</span></strong><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `player_storage`;
CREATE TABLE `player_storage`
(
	`player_id` INT NOT NULL,
	`key` VARCHAR(32) NOT NULL DEFAULT '0',
	`value` TEXT NOT NULL,
	KEY (`player_id`), UNIQUE (`player_id`, `key`),
	FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS player_storage;
CREATE TABLE player_storage ( 
    player_id INTEGER         NOT NULL,
    [key]     VARCHAR( 32 )   NOT NULL,
    value     VARCHAR( 255 )  NOT NULL
                              DEFAULT '0',
    UNIQUE ( player_id, [key] ),
    FOREIGN KEY ( player_id ) REFERENCES players ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">player_viplist</span></strong><br /><strong><span style="color:#0000cd;"></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `player_viplist`;
CREATE TABLE `player_viplist`
(
	`player_id` INT NOT NULL,
	`vip_id` INT NOT NULL,
	`description` VARCHAR( 128 ) NOT NULL,
	`icon` INT( 11 ) UNSIGNED NOT NULL,
	`notify` BOOLEAN NOT NULL,
	KEY (`player_id`), KEY (`vip_id`), UNIQUE (`player_id`, `vip_id`),
	FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE,
	FOREIGN KEY (`vip_id`) REFERENCES `players`(`id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS player_viplist;
CREATE TABLE player_viplist ( 
    player_id   INTEGER         NOT NULL,
    vip_id      INTEGER         NOT NULL,
    description VARCHAR( 128 )  NOT NULL
                                DEFAULT '''',
    icon        INTEGER         NOT NULL
                                DEFAULT '0',
    notify      BOOLEAN         NOT NULL
                                DEFAULT '''',
    UNIQUE ( player_id, vip_id ),
    FOREIGN KEY ( player_id ) REFERENCES players ( id ),
    FOREIGN KEY ( vip_id ) REFERENCES players ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">players</span></strong><br /><strong><span style="color:#0000cd;"></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `players`;
CREATE TABLE `players` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NOT NULL,
  `world_id` tinyint(4) unsigned NOT NULL DEFAULT '0',
  `group_id` int(11) NOT NULL DEFAULT '1',
  `account_id` int(11) NOT NULL DEFAULT '0',
  `level` int(11) NOT NULL DEFAULT '10',
  `vocation` int(11) NOT NULL DEFAULT '0',
  `health` int(11) NOT NULL DEFAULT '150',
  `healthmax` int(11) NOT NULL DEFAULT '150',
  `experience` bigint(20) unsigned NOT NULL DEFAULT '0',
  `lookbody` int(11) NOT NULL DEFAULT '0',
  `lookfeet` int(11) NOT NULL DEFAULT '0',
  `lookhead` int(11) NOT NULL DEFAULT '0',
  `looklegs` int(11) NOT NULL DEFAULT '0',
  `looktype` int(11) NOT NULL DEFAULT '136',
  `lookaddons` int(11) NOT NULL DEFAULT '0',
  `lookmount` int(11) NOT NULL DEFAULT '0',
  `maglevel` int(11) NOT NULL DEFAULT '0',
  `mana` int(11) NOT NULL DEFAULT '0',
  `manamax` int(11) NOT NULL DEFAULT '0',
  `manaspent` bigint(20) unsigned NOT NULL DEFAULT '0',
  `soul` int(10) unsigned NOT NULL DEFAULT '0',
  `town_id` int(11) NOT NULL DEFAULT '2',
  `posx` int(11) NOT NULL DEFAULT '32369',
  `posy` int(11) NOT NULL DEFAULT '32241',
  `posz` int(11) NOT NULL DEFAULT '7',
  `conditions` blob NOT NULL,
  `cap` int(11) NOT NULL DEFAULT '0',
  `sex` int(11) NOT NULL DEFAULT '0',
  `lastlogin` bigint(20) unsigned NOT NULL DEFAULT '0',
  `lastip` int(10) unsigned NOT NULL DEFAULT '0',
  `save` tinyint(1) NOT NULL DEFAULT '1',
  `skull` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `skulltime` int(11) NOT NULL DEFAULT '0',
  `rank_id` int(11) NOT NULL DEFAULT '0',
  `guildnick` varchar(255) NOT NULL DEFAULT '',
  `lastlogout` bigint(20) unsigned NOT NULL DEFAULT '0',
  `blessings` tinyint(2) NOT NULL DEFAULT '0',
  `pvp_blessing` tinyint(1) NOT NULL DEFAULT '0',
  `balance` bigint(20) unsigned NOT NULL DEFAULT '0',
  `stamina` bigint(20) unsigned NOT NULL DEFAULT '151200000' COMMENT 'stored in miliseconds',
  `direction` int(11) NOT NULL DEFAULT '2',
  `loss_experience` int(11) NOT NULL DEFAULT '100',
  `loss_mana` int(11) NOT NULL DEFAULT '100',
  `loss_skills` int(11) NOT NULL DEFAULT '100',
  `loss_containers` int(11) NOT NULL DEFAULT '100',
  `loss_items` int(11) NOT NULL DEFAULT '100',
  `premend` int(11) NOT NULL DEFAULT '0' COMMENT 'NOT IN USE BY THE SERVER',
  `online` tinyint(1) NOT NULL DEFAULT '0',
  `marriage` int(10) unsigned NOT NULL DEFAULT '0',
  `promotion` int(11) NOT NULL DEFAULT '0',
  `deleted` int(11) NOT NULL DEFAULT '0',
  `description` varchar(255) NOT NULL DEFAULT '',
  `comment` text NOT NULL,
  `create_ip` int(11) NOT NULL DEFAULT '0',
  `create_date` int(11) NOT NULL DEFAULT '0',
  `hide_char` int(11) NOT NULL DEFAULT '0',
  `signature` text NOT NULL,
  `offlinetraining_time` smallint(5) unsigned NOT NULL DEFAULT '43200',
  `offlinetraining_skill` int(11) NOT NULL DEFAULT '-1',
  `cast` tinyint(4) NOT NULL DEFAULT '0',
  `castViewers` int(11) NOT NULL DEFAULT '0',
  `castDescription` varchar(255) NOT NULL,
  `created` int(11) NOT NULL DEFAULT '0',
  `nick_verify` int(11) NOT NULL DEFAULT '0',
  `old_name` varchar(255) NOT NULL DEFAULT '',
  `worldtransfer` int(11) NOT NULL DEFAULT '0',
  `show_outfit` tinyint(4) NOT NULL DEFAULT '1',
  `show_eq` tinyint(4) NOT NULL DEFAULT '1',
  `show_bars` tinyint(4) NOT NULL DEFAULT '1',
  `show_skills` tinyint(4) NOT NULL DEFAULT '1',
  `show_quests` tinyint(4) NOT NULL DEFAULT '1',
  `stars` int(10) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`),
  UNIQUE KEY `name` (`name`,`deleted`),
  KEY `account_id` (`account_id`),
  KEY `group_id` (`group_id`),
  KEY `online` (`online`),
  KEY `deleted` (`deleted`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=21 ;

INSERT INTO `players` VALUES (1, 'Account Manager', 0, 1, 1, 8, 0, 180, 180, 4200, 0, 0, 0, 0, 110, 0, 0, 0, 35, 35, 0, 0, 2, 32369, 32241, 7, '', 400, 0, 1400804121, 202641162, 0, 0, 0, 0, '', 0, 0, 0, 0, 201660000, 0, 100, 100, 100, 100, 100, 0, 0, 0, 0, 0, '', '', 0, 0, 0, '', 43200, -1, 0, 0, '', 0, 0, '', 0, 1, 1, 1, 1, 1, 0);
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS players;
CREATE TABLE players (
    id                    INTEGER           PRIMARY KEY
                                            NOT NULL,
    name                  VARCHAR( 255 )    NOT NULL,
    world_id              INTEGER           NOT NULL
                                            DEFAULT '0',
    group_id              INTEGER           NOT NULL
                                            DEFAULT '1',
    account_id            INTEGER           NOT NULL,
    level                 INTEGER           NOT NULL
                                            DEFAULT '1',
    vocation              INTEGER           NOT NULL
                                            DEFAULT '0',
    health                INTEGER           NOT NULL
                                            DEFAULT '100',
    healthmax             INTEGER           NOT NULL
                                            DEFAULT '100',
    experience            INTEGER           NOT NULL
                                            DEFAULT '0',
    lookbody              INTEGER           NOT NULL
                                            DEFAULT '10',
    lookfeet              INTEGER           NOT NULL
                                            DEFAULT '10',
    lookhead              INTEGER           NOT NULL
                                            DEFAULT '10',
    looklegs              INTEGER           NOT NULL
                                            DEFAULT '10',
    looktype              INTEGER           NOT NULL
                                            DEFAULT '136',
    lookaddons            INTEGER           NOT NULL
                                            DEFAULT '0',
    lookmount             INTEGER           NOT NULL
                                            DEFAULT '0',
    maglevel              INTEGER           NOT NULL
                                            DEFAULT '0',
    mana                  INTEGER           NOT NULL
                                            DEFAULT '100',
    manamax               INTEGER           NOT NULL
                                            DEFAULT '100',
    manaspent             INTEGER           NOT NULL
                                            DEFAULT '0',
    soul                  INTEGER           NOT NULL
                                            DEFAULT '0',
    town_id               INTEGER           NOT NULL,
    posx                  INTEGER           NOT NULL
                                            DEFAULT '32369',
    posy                  INTEGER           NOT NULL
                                            DEFAULT '32241',
    posz                  INTEGER           NOT NULL
                                            DEFAULT '7',
    conditions            BLOB              NOT NULL,
    cap                   INTEGER           NOT NULL
                                            DEFAULT '0',
    sex                   INTEGER           NOT NULL
                                            DEFAULT '0',
    lastlogin             INTEGER           NOT NULL
                                            DEFAULT '0',
    lastip                INTEGER           NOT NULL
                                            DEFAULT '0',
    save                  BOOLEAN           NOT NULL
                                            DEFAULT 'TRUE',
    skull                 INTEGER           NOT NULL
                                            DEFAULT '0',
    skulltime             INTEGER           NOT NULL
                                            DEFAULT '0',
    rank_id               INTEGER           NOT NULL,
    guildnick             VARCHAR( 255 )    NOT NULL
                                            DEFAULT '''',
    lastlogout            INTEGER           NOT NULL
                                            DEFAULT '0',
    blessings             INTEGER           NOT NULL
                                            DEFAULT '0',
    pvp_blessing          BOOLEAN           NOT NULL
                                            DEFAULT 'FALSE',
    balance               INTEGER           NOT NULL
                                            DEFAULT '0',
    stamina               INTEGER           NOT NULL
                                            DEFAULT '151200000',
    direction             INTEGER           NOT NULL
                                            DEFAULT '2',
    loss_experience       INTEGER           NOT NULL
                                            DEFAULT '100',
    loss_mana             INTEGER           NOT NULL
                                            DEFAULT '100',
    loss_skills           INTEGER           NOT NULL
                                            DEFAULT '100',
    loss_containers       INTEGER           NOT NULL
                                            DEFAULT '100',
    loss_items            INTEGER           NOT NULL
                                            DEFAULT '100',
    premend               INTEGER           NOT NULL
                                            DEFAULT '0',
    online                INTEGER           NOT NULL
                                            DEFAULT '0',
    marriage              INTEGER           NOT NULL
                                            DEFAULT '0',
    promotion             INTEGER           NOT NULL
                                            DEFAULT '0',
    deleted               INTEGER           NOT NULL
                                            DEFAULT '0',
    description           VARCHAR( 255 )    NOT NULL
                                            DEFAULT '''',
    comment               TEXT            NOT NULL,
    create_ip             INT( 11 )       NOT NULL
                                          DEFAULT '0',
    create_date           INT( 11 )       NOT NULL
                                          DEFAULT '0',
    hide_char             INT( 11 )       NOT NULL
                                          DEFAULT '0',
    signature             TEXT            NOT NULL,
    offlinetraining_time  SMALLINT UNSIGNED NOT NULL
                                            DEFAULT '43200',
    offlinetraining_skill INT               NOT NULL
                                            DEFAULT '-1',
    cast                  TINYINT( 4 )    NOT NULL
                                          DEFAULT '0',
    castViewers           INT( 11 )       NOT NULL
                                          DEFAULT '0',
    castDescription       VARCHAR( 255 )  NOT NULL,
    created               INT( 11 )       NOT NULL
                                          DEFAULT '0',
    nick_verify           INT( 11 )       NOT NULL
                                          DEFAULT '0',
    old_name              VARCHAR( 255 )  NOT NULL
                                          DEFAULT '',
    worldtransfer         INT( 11 )       NOT NULL
                                          DEFAULT '0',
    show_outfit           TINYINT( 4 )    NOT NULL
                                          DEFAULT '1',
    show_eq               TINYINT( 4 )    NOT NULL
                                          DEFAULT '1',
    show_bars             TINYINT( 4 )    NOT NULL
                                          DEFAULT '1',
    show_skills           TINYINT( 4 )    NOT NULL
                                          DEFAULT '1',
    show_quests           TINYINT( 4 )    NOT NULL
                                          DEFAULT '1',
    stars                 INT( 10 )       NOT NULL
                                          DEFAULT '0',
    ip                    VARCHAR( 17 )     NOT NULL
                                            DEFAULT '0',
    UNIQUE ( name, deleted ),
    FOREIGN KEY ( account_id ) REFERENCES accounts ( id )
);
INSERT INTO `players` VALUES (1, 'Account Manager', 0, 1, 1, 8, 0, 180, 180, 4200, 0, 0, 0, 0, 110, 0, 0, 0, 35, 35, 0, 0, 2, 32369, 32241, 7, '', 400, 0, 1400804121, 202641162, 0, 0, 0, 0, '', 0, 0, 0, 0, 201660000, 0, 100, 100, 100, 100, 100, 0, 0, 0, 0, 0, '', '', 0, 0, 0, '', 43200, -1, 0, 0, '', 0, 0, '', 0, 1, 1, 1, 1, 1, 0, 0);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">server_config</span></strong><br /><strong><span style="color:#0000cd;"></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `server_config`;
CREATE TABLE `server_config`
(
	`config` VARCHAR(35) NOT NULL DEFAULT '',
	`value` VARCHAR(255) NOT NULL DEFAULT '',
	UNIQUE (`config`)
) ENGINE = InnoDB;

INSERT INTO `server_config` VALUES ('db_version', 31);
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS server_config;
CREATE TABLE server_config ( 
    config VARCHAR( 35 )   NOT NULL
                           DEFAULT '''',
    value  VARCHAR( 255 )  NOT NULL
                           DEFAULT '''',
    UNIQUE ( config ) 
);
INSERT INTO `server_config` VALUES ('db_version', 31);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">server_motd</span></strong><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `server_motd`;
CREATE TABLE `server_motd`
(
	`id` INT UNSIGNED NOT NULL,
	`world_id` TINYINT(4) UNSIGNED NOT NULL DEFAULT 0,
	`text` TEXT NOT NULL,
	UNIQUE (`id`, `world_id`)
) ENGINE = InnoDB;

INSERT INTO `server_motd` VALUES (1, 0, 'Welcome to The Forgotten Server!');
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS server_motd;
CREATE TABLE server_motd ( 
    id       INTEGER NOT NULL,
    world_id INTEGER NOT NULL
                     DEFAULT '0',
    text     TEXT    NOT NULL
                     DEFAULT '''',
    UNIQUE ( id, world_id ) 
);
INSERT INTO `server_motd` VALUES (1, 0, 'Welcome to The Forgotten Server!');
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><span style="color:#0000cd;"><strong>server_record</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `server_record`;
CREATE TABLE `server_record`
(
	`record` INT NOT NULL,
	`world_id` TINYINT(4) UNSIGNED NOT NULL DEFAULT 0,
	`timestamp` BIGINT NOT NULL,
	UNIQUE (`record`, `world_id`, `timestamp`)
) ENGINE = InnoDB;

INSERT INTO `server_record` VALUES (0, 0, 0);
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS server_record;
CREATE TABLE server_record ( 
    record    INTEGER NOT NULL,
    world_id  INTEGER NOT NULL
                      DEFAULT '0',
    timestamp INTEGER NOT NULL,
    UNIQUE ( record, world_id, timestamp ) 
);
INSERT INTO `server_record` VALUES (0, 0, 0);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">server_reports</span></strong><br /><strong><span style="color:#0000cd;"></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `server_reports`;
CREATE TABLE `server_reports`
(
	`id` INT NOT NULL AUTO_INCREMENT,
	`world_id` TINYINT(4) UNSIGNED NOT NULL DEFAULT 0,
	`player_id` INT NOT NULL DEFAULT 1,
	`posx` INT NOT NULL DEFAULT 32369,
	`posy` INT NOT NULL DEFAULT 32241,
	`posz` INT NOT NULL DEFAULT 7,
	`timestamp` BIGINT NOT NULL DEFAULT 0,
	`report` TEXT NOT NULL,
	`reads` INT NOT NULL DEFAULT 0,
	PRIMARY KEY (`id`),
	KEY (`world_id`), KEY (`reads`),
	FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS server_reports;
CREATE TABLE server_reports ( 
    id        INTEGER PRIMARY KEY,
    world_id  INTEGER NOT NULL
                      DEFAULT '0',
    player_id INTEGER NOT NULL
                      DEFAULT '0',
    posx      INTEGER NOT NULL
                      DEFAULT '0',
    posy      INTEGER NOT NULL
                      DEFAULT '0',
    posz      INTEGER NOT NULL
                      DEFAULT '0',
    timestamp INTEGER NOT NULL
                      DEFAULT '0',
    report    TEXT    NOT NULL
                      DEFAULT '''',
    reads     INTEGER NOT NULL
                      DEFAULT '0' 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">tile_items</span></strong><br /><strong><span style="color:#0000cd;"></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `tile_items`;
CREATE TABLE `tile_items`
(
	`tile_id` INT UNSIGNED NOT NULL,
	`world_id` TINYINT(4) UNSIGNED NOT NULL DEFAULT 0,
	`sid` INT NOT NULL,
	`pid` INT NOT NULL DEFAULT 0,
	`itemtype` INT NOT NULL,
	`count` INT NOT NULL DEFAULT 0,
	`attributes` BLOB NOT NULL,
	UNIQUE (`tile_id`, `world_id`, `sid`), KEY (`sid`),
	FOREIGN KEY (`tile_id`) REFERENCES `tiles`(`id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p><span style="color:#800000;"><strong></strong></span></p>
</div>
</div>
<p></p>
<p> </p>
<p><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS tile_items;
CREATE TABLE tile_items ( 
    tile_id    INTEGER NOT NULL,
    world_id   INTEGER NOT NULL
                       DEFAULT '0',
    sid        INTEGER NOT NULL,
    pid        INTEGER NOT NULL
                       DEFAULT '0',
    itemtype   INTEGER NOT NULL,
    count      INTEGER NOT NULL
                       DEFAULT '0',
    attributes BLOB    NOT NULL,
    UNIQUE ( tile_id, world_id, sid ),
    FOREIGN KEY ( tile_id ) REFERENCES tiles ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">tile_store</span></strong><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `tile_store`;
CREATE TABLE `tile_store`
(
	`house_id` INT UNSIGNED NOT NULL,
	`world_id` TINYINT(4) UNSIGNED NOT NULL DEFAULT 0,
	`data` LONGBLOB NOT NULL,
	FOREIGN KEY (`house_id`) REFERENCES `houses` (`id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS tile_store;
CREATE TABLE tile_store ( 
    house_id INTEGER  NOT NULL,
    world_id INTEGER  NOT NULL
                      DEFAULT '0',
    data     LONGBLOB NOT NULL,
    FOREIGN KEY ( house_id ) REFERENCES houses ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><strong><span style="color:#0000cd;">tiles</span></strong><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `tiles`;
CREATE TABLE `tiles`
(
	`id` INT UNSIGNED NOT NULL,
	`world_id` TINYINT(4) UNSIGNED NOT NULL DEFAULT 0,
	`house_id` INT UNSIGNED NOT NULL,
	`x` INT(5) UNSIGNED NOT NULL,
	`y` INT(5) UNSIGNED NOT NULL,
	`z` TINYINT(2) UNSIGNED NOT NULL,
	UNIQUE (`id`, `world_id`),
	KEY (`x`, `y`, `z`),
	FOREIGN KEY (`house_id`, `world_id`) REFERENCES `houses`(`id`, `world_id`) ON DELETE CASCADE
) ENGINE = InnoDB;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS tiles;
CREATE TABLE tiles ( 
    id       INTEGER NOT NULL,
    world_id INTEGER NOT NULL
                     DEFAULT '0',
    house_id INTEGER NOT NULL,
    x        INTEGER NOT NULL,
    y        INTEGER NOT NULL,
    z        INTEGER NOT NULL,
    UNIQUE ( id, world_id ),
    FOREIGN KEY ( house_id, world_id ) REFERENCES houses ( id, world_id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p> </p>
<p> </p>
<p><span style="color:#0000cd;"><strong>announcements</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `announcements`;
CREATE TABLE IF NOT EXISTS `announcements` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `title` varchar(50) NOT NULL,
  `text` varchar(255) NOT NULL,
  `date` varchar(20) NOT NULL,
  `author` varchar(50) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS announcements;
CREATE TABLE announcements ( 
    id     INT( 10 )       NOT NULL,
    title  VARCHAR( 50 )   NOT NULL,
    text   VARCHAR( 255 )  NOT NULL,
    date   VARCHAR( 20 )   NOT NULL,
    author VARCHAR( 50 )   NOT NULL,
    PRIMARY KEY ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p> </p>
<p> </p>
<p><span style="color:#0000cd;"><strong>pagsegurotransacoes</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `pagsegurotransacoes`;
CREATE TABLE IF NOT EXISTS `pagsegurotransacoes` (
  `TransacaoID` varchar(36) NOT NULL,
  `VendedorEmail` varchar(200) NOT NULL,
  `Referencia` varchar(200) DEFAULT NULL,
  `TipoFrete` char(2) DEFAULT NULL,
  `ValorFrete` decimal(10,2) DEFAULT NULL,
  `Extras` decimal(10,2) DEFAULT NULL,
  `Anotacao` text,
  `TipoPagamento` varchar(50) NOT NULL,
  `StatusTransacao` varchar(50) NOT NULL,
  `CliNome` varchar(200) NOT NULL,
  `CliEmail` varchar(200) NOT NULL,
  `CliEndereco` varchar(200) NOT NULL,
  `CliNumero` varchar(10) DEFAULT NULL,
  `CliComplemento` varchar(100) DEFAULT NULL,
  `CliBairro` varchar(100) NOT NULL,
  `CliCidade` varchar(100) NOT NULL,
  `CliEstado` char(2) NOT NULL,
  `CliCEP` varchar(9) NOT NULL,
  `CliTelefone` varchar(14) DEFAULT NULL,
  `NumItens` int(11) NOT NULL,
  `Data` datetime NOT NULL,
  `ProdQuantidade_x` int(5) NOT NULL,
  `status` tinyint(1) unsigned NOT NULL DEFAULT '0',
  UNIQUE KEY `TransacaoID` (`TransacaoID`,`StatusTransacao`),
  KEY `Referencia` (`Referencia`),
  KEY `status` (`status`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS pagsegurotransacoes;
CREATE TABLE pagsegurotransacoes ( 
    TransacaoID      VARCHAR( 36 )     NOT NULL,
    VendedorEmail    VARCHAR( 200 )    NOT NULL,
    Referencia       VARCHAR( 200 )    DEFAULT 'NULL'
                                       COLLATE 'SQLITESTUDIO_DICTIONARY',
    TipoFrete        CHAR( 2 )         DEFAULT 'NULL',
    ValorFrete       DECIMAL( 10, 2 )  DEFAULT 'NULL',
    Extras           DECIMAL( 10, 2 )  DEFAULT 'NULL',
    Anotacao         TEXT,
    TipoPagamento    VARCHAR( 50 )     NOT NULL,
    StatusTransacao  VARCHAR( 50 )     NOT NULL,
    CliNome          VARCHAR( 200 )    NOT NULL,
    CliEmail         VARCHAR( 200 )    NOT NULL,
    CliEndereco      VARCHAR( 200 )    NOT NULL,
    CliNumero        VARCHAR( 10 )     DEFAULT 'NULL',
    CliComplemento   VARCHAR( 100 )    DEFAULT 'NULL',
    CliBairro        VARCHAR( 100 )    NOT NULL,
    CliCidade        VARCHAR( 100 )    NOT NULL,
    CliEstado        CHAR( 2 )         NOT NULL,
    CliCEP           VARCHAR( 9 )      NOT NULL,
    CliTelefone      VARCHAR( 14 )     DEFAULT 'NULL',
    NumItens         INT( 11 )         NOT NULL,
    Data             DATETIME          NOT NULL,
    ProdQuantidade_x INT( 5 )          NOT NULL,
    status           TINYINT( 1 )      NOT NULL
                                       DEFAULT '0',
    UNIQUE ( TransacaoID, StatusTransacao ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><span style="color:#0000cd;"><strong>player_advances</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `player_advances`;
CREATE TABLE IF NOT EXISTS `player_advances` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `cid` int(11) DEFAULT NULL,
  `skill` int(11) DEFAULT NULL,
  `oldlevel` int(11) DEFAULT NULL,
  `newlevel` int(11) DEFAULT NULL,
  `time` int(11) DEFAULT NULL,
  UNIQUE KEY `id` (`id`),
  KEY `cid` (`cid`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=3337 ;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS player_advances;
CREATE TABLE player_advances ( 
    id       INT( 11 )  NOT NULL,
    cid      INT( 11 )  DEFAULT NULL,
    skill    INT( 11 )  DEFAULT NULL,
    oldlevel INT( 11 )  DEFAULT NULL,
    newlevel INT( 11 )  DEFAULT NULL,
    time     INT( 11 )  DEFAULT NULL,
    UNIQUE ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><span style="color:#0000cd;"><strong>reports</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `reports`;
CREATE TABLE IF NOT EXISTS `reports` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `world_id` tinyint(4) unsigned NOT NULL DEFAULT '0',
  `player_id` int(11) NOT NULL DEFAULT '1',
  `posx` int(11) NOT NULL DEFAULT '32369',
  `posy` int(11) NOT NULL DEFAULT '32241',
  `posz` int(11) NOT NULL DEFAULT '7',
  `timestamp` bigint(20) NOT NULL DEFAULT '0',
  `report` text NOT NULL,
  `reads` int(11) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`),
  KEY `world_id` (`world_id`),
  KEY `reads` (`reads`),
  KEY `player_id` (`player_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS reports;
CREATE TABLE reports ( 
    id        INT( 11 )     NOT NULL,
    world_id  TINYINT( 4 )  NOT NULL
                            DEFAULT '0',
    player_id INT( 11 )     NOT NULL
                            DEFAULT '1',
    posx      INT( 11 )     NOT NULL
                            DEFAULT '32369',
    posy      INT( 11 )     NOT NULL
                            DEFAULT '32241',
    posz      INT( 11 )     NOT NULL
                            DEFAULT '7',
    timestamp BIGINT( 20 )  NOT NULL
                            DEFAULT '0',
    report    TEXT          NOT NULL,
    reads     INT( 11 )     NOT NULL
                            DEFAULT '0',
    PRIMARY KEY ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
</div>
</div>
<p><br /></p>
<p><span style="color:#0000cd;"><strong>thanks</strong></span><br /><span style="color:#0000cd;"><strong></strong></span></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `thanks`;
CREATE TABLE IF NOT EXISTS `thanks` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `account_id` varchar(30) NOT NULL,
  `forum_id` text NOT NULL,
  `player_name` text NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS thanks;
CREATE TABLE thanks ( 
    id          INT( 10 )      NOT NULL,
    account_id  VARCHAR( 30 )  NOT NULL,
    forum_id    TEXT           NOT NULL,
    player_name TEXT           NOT NULL,
    PRIMARY KEY ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
</div>
</div>
<p><br /></p>
<p><span style="color:#0000cd;"><strong>z_bug_logs</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `z_bug_logs`;
CREATE TABLE IF NOT EXISTS `z_bug_logs` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `account_id` int(11) NOT NULL,
  `status` tinyint(1) NOT NULL DEFAULT '0',
  `description` text NOT NULL,
  `time` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS z_bug_logs;
CREATE TABLE z_bug_logs ( 
    id          INT( 11 )     NOT NULL,
    account_id  INT( 11 )     NOT NULL,
    status      TINYINT( 1 )  NOT NULL
                              DEFAULT '0',
    description TEXT          NOT NULL,
    time        INT( 11 )     NOT NULL,
    PRIMARY KEY ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
</div>
</div>
<p><br /></p>
<p><span style="color:#0000cd;"><strong>z_featured_article</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `z_featured_article`;
CREATE TABLE IF NOT EXISTS `z_featured_article` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `title` varchar(50) NOT NULL,
  `text` varchar(255) NOT NULL,
  `date` varchar(30) NOT NULL,
  `author` varchar(50) NOT NULL,
  `read_more` varchar(100) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `z_featured_article`;
CREATE TABLE z_featured_article ( 
    id        INT( 11 )       NOT NULL,
    title     VARCHAR( 50 )   NOT NULL,
    text      VARCHAR( 255 )  NOT NULL,
    date      VARCHAR( 30 )   NOT NULL,
    author    VARCHAR( 50 )   NOT NULL,
    read_more VARCHAR( 100 )  NOT NULL,
    PRIMARY KEY ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
</div>
</div>
<p><br /></p>
<p><span style="color:#0000cd;"><strong>z_forum</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `z_forum`;
CREATE TABLE IF NOT EXISTS `z_forum` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `sticky` tinyint(1) NOT NULL DEFAULT '0',
  `closed` tinyint(1) NOT NULL DEFAULT '0',
  `first_post` int(11) NOT NULL DEFAULT '0',
  `last_post` int(11) NOT NULL DEFAULT '0',
  `section` int(3) NOT NULL DEFAULT '0',
  `replies` int(20) NOT NULL DEFAULT '0',
  `views` int(20) NOT NULL DEFAULT '0',
  `author_aid` int(20) NOT NULL DEFAULT '0',
  `author_guid` int(20) NOT NULL DEFAULT '0',
  `post_text` text NOT NULL,
  `post_topic` varchar(255) NOT NULL,
  `post_smile` tinyint(1) NOT NULL DEFAULT '0',
  `post_date` int(20) NOT NULL DEFAULT '0',
  `last_edit_aid` int(20) NOT NULL DEFAULT '0',
  `edit_date` int(20) NOT NULL DEFAULT '0',
  `post_ip` varchar(15) NOT NULL DEFAULT '0.0.0.0',
  `icon_id` tinyint(4) NOT NULL DEFAULT '1',
  `post_icon_id` tinyint(10) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `section` (`section`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS z_forum;
CREATE TABLE z_forum ( 
    id            INT( 11 )       NOT NULL,
    sticky        TINYINT( 1 )    NOT NULL
                                  DEFAULT '0',
    closed        TINYINT( 1 )    NOT NULL
                                  DEFAULT '0',
    first_post    INT( 11 )       NOT NULL
                                  DEFAULT '0',
    last_post     INT( 11 )       NOT NULL
                                  DEFAULT '0',
    section       INT( 3 )        NOT NULL
                                  DEFAULT '0',
    replies       INT( 20 )       NOT NULL
                                  DEFAULT '0',
    views         INT( 20 )       NOT NULL
                                  DEFAULT '0',
    author_aid    INT( 20 )       NOT NULL
                                  DEFAULT '0',
    author_guid   INT( 20 )       NOT NULL
                                  DEFAULT '0',
    post_text     TEXT            NOT NULL,
    post_topic    VARCHAR( 255 )  NOT NULL,
    post_smile    TINYINT( 1 )    NOT NULL
                                  DEFAULT '0',
    post_date     INT( 20 )       NOT NULL
                                  DEFAULT '0',
    last_edit_aid INT( 20 )       NOT NULL
                                  DEFAULT '0',
    edit_date     INT( 20 )       NOT NULL
                                  DEFAULT '0',
    post_ip       VARCHAR( 15 )   NOT NULL
                                  DEFAULT '0.0.0.0',
    icon_id       TINYINT( 4 )    NOT NULL
                                  DEFAULT '1',
    post_icon_id  TINYINT( 10 )   NOT NULL,
    PRIMARY KEY ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
</div>
</div>
<p><br /></p>
<p><span style="color:#0000cd;"><strong>z_helpdesk</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `z_helpdesk`;
CREATE TABLE IF NOT EXISTS `z_helpdesk` (
  `account` varchar(255) NOT NULL,
  `type` int(11) NOT NULL,
  `status` int(11) NOT NULL,
  `text` text NOT NULL,
  `id` int(11) NOT NULL,
  `subject` varchar(255) NOT NULL,
  `priority` int(11) NOT NULL,
  `reply` int(11) NOT NULL,
  `who` int(11) NOT NULL,
  `uid` int(11) NOT NULL AUTO_INCREMENT,
  `tag` int(11) NOT NULL,
  `registered` int(11) NOT NULL,
  PRIMARY KEY (`uid`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=26 ;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS z_helpdesk;
CREATE TABLE z_helpdesk ( 
    account    VARCHAR( 255 )  NOT NULL,
    type       INT( 11 )       NOT NULL,
    status     INT( 11 )       NOT NULL,
    text       TEXT            NOT NULL,
    id         INT( 11 )       NOT NULL,
    subject    VARCHAR( 255 )  NOT NULL,
    priority   INT( 11 )       NOT NULL,
    reply      INT( 11 )       NOT NULL,
    who        INT( 11 )       NOT NULL,
    uid        INT( 11 )       NOT NULL,
    tag        INT( 11 )       NOT NULL,
    registered INT( 11 )       NOT NULL,
    PRIMARY KEY ( uid ) 
);
</pre>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
</div>
</div>
<p><br /></p>
<p><span style="color:#0000cd;"><strong>z_monsters</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `z_monsters`;
CREATE TABLE IF NOT EXISTS `z_monsters` (
  `hide_creature` tinyint(1) NOT NULL DEFAULT '0',
  `name` varchar(255) NOT NULL,
  `mana` int(11) NOT NULL,
  `exp` int(11) NOT NULL,
  `health` int(11) NOT NULL,
  `speed_lvl` int(11) NOT NULL DEFAULT '1',
  `use_haste` tinyint(1) NOT NULL,
  `voices` text NOT NULL,
  `immunities` varchar(255) NOT NULL,
  `summonable` tinyint(1) NOT NULL,
  `convinceable` tinyint(1) NOT NULL,
  `race` varchar(255) NOT NULL,
  `loot` text NOT NULL,
  `gfx_name` varchar(255) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `z_monsters`;
CREATE TABLE z_monsters ( 
    hide_creature TINYINT( 1 )    NOT NULL
                                  DEFAULT '0',
    name          VARCHAR( 255 )  NOT NULL,
    mana          INT( 11 )       NOT NULL,
    exp           INT( 11 )       NOT NULL,
    health        INT( 11 )       NOT NULL,
    speed_lvl     INT( 11 )       NOT NULL
                                  DEFAULT '1',
    use_haste     TINYINT( 1 )    NOT NULL,
    voices        TEXT            NOT NULL,
    immunities    VARCHAR( 255 )  NOT NULL,
    summonable    TINYINT( 1 )    NOT NULL,
    convinceable  TINYINT( 1 )    NOT NULL,
    race          VARCHAR( 255 )  NOT NULL,
    loot          TEXT            NOT NULL,
    gfx_name      VARCHAR( 255 )  NOT NULL 
);
</pre>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
</div>
</div>
<p><br /></p>
<p><span style="color:#0000cd;"><strong>z_network_box</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<br /><pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `z_network_box`;
CREATE TABLE IF NOT EXISTS `z_network_box` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `network_name` varchar(10) NOT NULL,
  `network_link` varchar(50) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS z_network_box;
CREATE TABLE z_network_box ( 
    id           INT( 11 )      NOT NULL,
    network_name VARCHAR( 10 )  NOT NULL,
    network_link VARCHAR( 50 )  NOT NULL,
    PRIMARY KEY ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
</div>
</div>
<p><br /></p>
<p><span style="color:#0000cd;"><strong>z_news_tickers</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<br /><pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `z_news_tickers`;
CREATE TABLE IF NOT EXISTS `z_news_tickers` (
  `date` int(11) NOT NULL DEFAULT '1',
  `author` int(11) NOT NULL,
  `image_id` int(3) NOT NULL DEFAULT '0',
  `text` text NOT NULL,
  `hide_ticker` tinyint(1) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS z_news_tickers;
CREATE TABLE z_news_tickers ( 
    date        INT( 11 )     NOT NULL
                              DEFAULT '1',
    author      INT( 11 )     NOT NULL,
    image_id    INT( 3 )      NOT NULL
                              DEFAULT '0',
    text        TEXT          NOT NULL,
    hide_ticker TINYINT( 1 )  NOT NULL 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><span style="color:#0000cd;"><strong>z_ots_comunication</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `z_ots_comunication`;
CREATE TABLE IF NOT EXISTS `z_ots_comunication` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NOT NULL,
  `type` varchar(255) NOT NULL,
  `action` varchar(255) NOT NULL,
  `param1` varchar(255) NOT NULL,
  `param2` varchar(255) NOT NULL,
  `param3` varchar(255) NOT NULL,
  `param4` varchar(255) NOT NULL,
  `param5` varchar(255) NOT NULL,
  `param6` varchar(255) NOT NULL,
  `param7` varchar(255) NOT NULL,
  `delete_it` int(2) NOT NULL DEFAULT '1',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS z_ots_comunication;
CREATE TABLE z_ots_comunication ( 
    id        INT( 11 )       NOT NULL,
    name      VARCHAR( 255 )  NOT NULL,
    type      VARCHAR( 255 )  NOT NULL,
    [action]  VARCHAR( 255 )  NOT NULL,
    param1    VARCHAR( 255 )  NOT NULL,
    param2    VARCHAR( 255 )  NOT NULL,
    param3    VARCHAR( 255 )  NOT NULL,
    param4    VARCHAR( 255 )  NOT NULL,
    param5    VARCHAR( 255 )  NOT NULL,
    param6    VARCHAR( 255 )  NOT NULL,
    param7    VARCHAR( 255 )  NOT NULL,
    delete_it INT( 2 )        NOT NULL
                              DEFAULT '1',
    PRIMARY KEY ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
</div>
</div>
<p><br /></p>
<p><span style="color:#0000cd;"><strong>z_polls</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<br /><pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `z_polls`;
CREATE TABLE IF NOT EXISTS `z_polls` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `question` varchar(255) NOT NULL,
  `end` int(11) NOT NULL,
  `start` int(11) NOT NULL,
  `answers` int(11) NOT NULL,
  `votes_all` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS z_polls;
CREATE TABLE z_polls ( 
    id        INT( 11 )       NOT NULL,
    question  VARCHAR( 255 )  NOT NULL,
    [end]     INT( 11 )       NOT NULL,
    start     INT( 11 )       NOT NULL,
    answers   INT( 11 )       NOT NULL,
    votes_all INT( 11 )       NOT NULL,
    PRIMARY KEY ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p><br /></p>
</div>
</div>
<p><br /><br /><span style="color:#0000cd;"><strong>z_polls_answers</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `z_polls_answers`;
CREATE TABLE IF NOT EXISTS `z_polls_answers` (
  `poll_id` int(11) NOT NULL,
  `answer_id` int(11) NOT NULL,
  `answer` varchar(255) NOT NULL,
  `votes` int(11) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS z_polls_answers;
CREATE TABLE z_polls_answers ( 
    poll_id   INT( 11 )       NOT NULL,
    answer_id INT( 11 )       NOT NULL,
    answer    VARCHAR( 255 )  NOT NULL,
    votes     INT( 11 )       NOT NULL 
);
</pre>
<p><strong></strong></p>
</div>
</div>
<p></p>
<p> </p>
</div>
</div>
<p><br /></p>
<p><span style="color:#0000cd;"><strong>z_poll_votes</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<br /><pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `z_poll_votes`;
CREATE TABLE IF NOT EXISTS `z_poll_votes` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`answer_id` int(11) ,
`poll_id` int(11) ,
`account_id` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS z_poll_votes;
CREATE TABLE z_poll_votes (
    id         INT( 11 )  NOT NULL,
    answer_id  INT( 11 ),
    poll_id    INT( 11 ),
    account_id INT( 11 )  NOT NULL,
    PRIMARY KEY ( id )
);
</pre>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
<p><span style="color:#0000cd;"><strong>z_shop_history_item</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `z_shop_history_item`;
CREATE TABLE IF NOT EXISTS `z_shop_history_item` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `to_name` varchar(255) NOT NULL DEFAULT '0',
  `to_account` int(11) NOT NULL DEFAULT '0',
  `from_nick` varchar(255) NOT NULL,
  `from_account` int(11) NOT NULL DEFAULT '0',
  `price` int(11) NOT NULL DEFAULT '0',
  `offer_id` varchar(255) NOT NULL DEFAULT '',
  `trans_state` varchar(255) NOT NULL,
  `trans_start` int(11) NOT NULL DEFAULT '0',
  `trans_real` int(11) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS z_shop_history_item;
CREATE TABLE z_shop_history_item ( 
    id           INT( 11 )       NOT NULL,
    to_name      VARCHAR( 255 )  NOT NULL
                                 DEFAULT '0',
    to_account   INT( 11 )       NOT NULL
                                 DEFAULT '0',
    from_nick    VARCHAR( 255 )  NOT NULL,
    from_account INT( 11 )       NOT NULL
                                 DEFAULT '0',
    price        INT( 11 )       NOT NULL
                                 DEFAULT '0',
    offer_id     VARCHAR( 255 )  NOT NULL
                                 DEFAULT '',
    trans_state  VARCHAR( 255 )  NOT NULL,
    trans_start  INT( 11 )       NOT NULL
                                 DEFAULT '0',
    trans_real   INT( 11 )       NOT NULL
                                 DEFAULT '0',
    PRIMARY KEY ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
</div>
</div>
<p><br /></p>
<p><span style="color:#0000cd;"><strong>z_shop_history_pacc</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `z_shop_history_pacc`;
CREATE TABLE IF NOT EXISTS `z_shop_history_pacc` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `to_name` varchar(255) NOT NULL DEFAULT '0',
  `to_account` int(11) NOT NULL DEFAULT '0',
  `from_nick` varchar(255) NOT NULL,
  `from_account` int(11) NOT NULL DEFAULT '0',
  `price` int(11) NOT NULL DEFAULT '0',
  `pacc_days` int(11) NOT NULL DEFAULT '0',
  `trans_state` varchar(255) NOT NULL,
  `trans_start` int(11) NOT NULL DEFAULT '0',
  `trans_real` int(11) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS z_shop_history_pacc;
CREATE TABLE z_shop_history_pacc ( 
    id           INT( 11 )       NOT NULL,
    to_name      VARCHAR( 255 )  NOT NULL
                                 DEFAULT '0',
    to_account   INT( 11 )       NOT NULL
                                 DEFAULT '0',
    from_nick    VARCHAR( 255 )  NOT NULL,
    from_account INT( 11 )       NOT NULL
                                 DEFAULT '0',
    price        INT( 11 )       NOT NULL
                                 DEFAULT '0',
    pacc_days    INT( 11 )       NOT NULL
                                 DEFAULT '0',
    trans_state  VARCHAR( 255 )  NOT NULL,
    trans_start  INT( 11 )       NOT NULL
                                 DEFAULT '0',
    trans_real   INT( 11 )       NOT NULL
                                 DEFAULT '0',
    PRIMARY KEY ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
</div>
</div>
<p><br /></p>
<p><span style="color:#0000cd;"><strong>z_shop_offer</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `z_shop_offer`;
CREATE TABLE IF NOT EXISTS `z_shop_offer` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `points` int(11) NOT NULL DEFAULT '0',
  `itemid1` int(11) NOT NULL DEFAULT '0',
  `count1` int(11) NOT NULL DEFAULT '0',
  `itemid2` int(11) NOT NULL DEFAULT '0',
  `count2` int(11) NOT NULL DEFAULT '0',
  `offer_type` varchar(255) DEFAULT NULL,
  `offer_description` text NOT NULL,
  `offer_name` varchar(255) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS z_shop_offer;
CREATE TABLE z_shop_offer ( 
    id                INT( 11 )       NOT NULL,
    points            INT( 11 )       NOT NULL
                                      DEFAULT '0',
    itemid1           INT( 11 )       NOT NULL
                                      DEFAULT '0',
    count1            INT( 11 )       NOT NULL
                                      DEFAULT '0',
    itemid2           INT( 11 )       NOT NULL
                                      DEFAULT '0',
    count2            INT( 11 )       NOT NULL
                                      DEFAULT '0',
    offer_type        VARCHAR( 255 )  DEFAULT NULL,
    offer_description TEXT            NOT NULL,
    offer_name        VARCHAR( 255 )  NOT NULL,
    PRIMARY KEY ( id ) 
);
</pre>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
</div>
</div>
<p><br /></p>
<p><span style="color:#0000cd;"><strong>z_spells</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `z_spells`;
CREATE TABLE IF NOT EXISTS `z_spells` (
  `name` varchar(255) NOT NULL,
  `spell` varchar(255) NOT NULL,
  `spell_type` varchar(255) NOT NULL,
  `mana` int(11) NOT NULL DEFAULT '0',
  `lvl` int(11) NOT NULL DEFAULT '0',
  `mlvl` int(11) NOT NULL DEFAULT '0',
  `soul` int(11) NOT NULL DEFAULT '0',
  `pacc` varchar(255) NOT NULL,
  `vocations` varchar(255) NOT NULL,
  `conj_count` int(11) NOT NULL DEFAULT '0',
  `hide_spell` int(11) NOT NULL DEFAULT '0'
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS z_spells;
CREATE TABLE z_spells ( 
    name       VARCHAR( 255 )  NOT NULL,
    spell      VARCHAR( 255 )  NOT NULL,
    spell_type VARCHAR( 255 )  NOT NULL,
    mana       INT( 11 )       NOT NULL
                               DEFAULT '0',
    lvl        INT( 11 )       NOT NULL
                               DEFAULT '0',
    mlvl       INT( 11 )       NOT NULL
                               DEFAULT '0',
    soul       INT( 11 )       NOT NULL
                               DEFAULT '0',
    pacc       VARCHAR( 255 )  NOT NULL,
    vocations  VARCHAR( 255 )  NOT NULL,
    conj_count INT( 11 )       NOT NULL
                               DEFAULT '0',
    hide_spell INT( 11 )       NOT NULL
                               DEFAULT '0' 
);
</pre>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
</div>
</div>
<p><br /></p>
<p><span style="color:#0000cd;"><strong>z_news_big</strong></span><br /></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><br /><span style="color:#800000;"><strong>Mysql</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS `z_news_big`;
CREATE TABLE IF NOT EXISTS `z_news_big` 
(
`hide_news` tinyint(1) NOT NULL DEFAULT '0',
`date` int(11) NOT NULL DEFAULT '0',
`author` varchar(255) NOT NULL,
`author_id` int(11) NOT NULL,
`image_id` int(3) NOT NULL DEFAULT '0',
`topic` varchar(255) NOT NULL,
`text` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
</pre>
<p> </p>
</div>
</div>
<p><br /><br /><span style="color:#800000;"><strong>Sqlite</strong></span><br /><strong></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p></p>
<pre class="ipsCode prettyprint lang-auto">
DROP TABLE IF EXISTS z_news_big;
CREATE TABLE z_news_big ( 
    hide_news TINYINT( 1 )    NOT NULL
                              DEFAULT '0',
    date      INT( 11 )       NOT NULL
                              DEFAULT '0',
    author    VARCHAR( 255 )  NOT NULL,
    author_id INT( 11 )       NOT NULL,
    image_id  INT( 3 )        NOT NULL
                              DEFAULT '0',
    topic     VARCHAR( 255 )  NOT NULL,
    text      TEXT            NOT NULL 
);
</pre>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
</div>
</div>
<p><br /><br /></p>
<p style="text-align:center;"><strong><u><span style="font-size:18px;">2°) No such column / "NOME DA TABLE" has no column named "NOME DA COLUMN QUE FALTA" / Insert into </span></u></strong><br /><span style="font-size:18px;"><span style="font-size:14px;">Bom, para resolver esse problema vc deve identificar em qual<strong> TABLE</strong> está essa coluna que falta. Para isso, basta ler o erro como na imagem:</span></span><br /><img src="http://i.imgur.com/A6vmUAz.png" alt="A6vmUAz.png" /><br /><br />No caso da imagem, está faltando a <strong>column WORLD_ID</strong> dentro da <strong>table MARKET_OFFERS.</strong> Para resolver, vc deve executar excluir a sua <strong>table </strong><strong>MARKET_OFFERS </strong>existante em sua data base, e em seguida, executar o domando da da <strong>market_offers, </strong>encontrado acima, logicamente isso só se aplica ao caso da imagem, depende do seu caso, vc deve excutar o comando da <strong>table</strong> que estiver sendo referida no erro. Mas antes de executá-lo vc deve excluir a sua table <strong>EXISTENTE,</strong> para então executar o comando.<br /><br /><strong>ESTA FORMA DE RESOLUÇÃO SE APLICA AOS TRÊS CASOS: NO SUCH COLUMN, ...HAS NO COLUMN NAMED... e INSERT INTO.</strong><br /><br /><br /><br /><strong><span style="color:#ff0000;">Bom galera, é isso.</span></strong><br /><br /><strong><span style="color:#ff0000;">SE ENCONTRAREM, OU SE DEPARAREM COM ALGUM ERRO, BASTA ME PEDIR AJUDA QUE EU DAREI TOTAL SUPORTE PARA VOCÊS!</span></strong><br /><br /><strong><span style="font-size:14px;"><span style="color:#ff0000;">SE ESTIVER FALTANDO MAIS ALGUMA TABLE QUE EU NÃO COLOQUEI AQUI, PF ME INFORMEM E EU ATUALIZAREI O TÓPICO!!!</span></span></strong><br /><br /><br /><span style="font-size:14px;"><span style="color:#008000;"><strong>Lembrem-se, se eu te ajudei, por favor, deem <span style="font-size:24px;">REP++</span></strong></span></span> <span style="color:#008000;"><strong>pois foi meio trabalhoso fazer este tutorial todo... ^^</strong></span><br /><br /><span style="font-size:18px;"><span style="color:#008000;"><strong>ESTOU A DISPOSIÇÃO DE TODOS!</strong></span></span></p>
<p style="text-align:center;"> </p>
<p style="text-align:center;"><br /><span style="font-size:18px;"><span style="color:rgb(0,0,128);"><strong>Espero ter ajudado!!</strong></span></span></p>
<p style="text-align:center;"><span style="font-size:18px;"><span style="color:rgb(0,0,128);"><strong>E isso é tudo, pessoal! ^^</strong></span></span></p>
<p style="text-align:center;"> </p>
<p style="text-align:center;"> </p>
<p style="text-align:center;"><span style="color:#ff0000;"><strong>Créditos</strong></span></p>
<p style="text-align:center;"><strong>Eu (<a contenteditable="false" data-ipshover="" href="https://xtibia.com/forum/profile/381660-danihcv/" data-ipshover-target="http://www.xtibia.com/forum/profile/381660-danihcv/?do=hovercard" data-mentionid="381660" rel="">@Danihcv</a>)</strong></p>
<p style="text-align:center;"><br /><span style="font-size:18px;"><span style="font-size:14px;"><span style="color:rgb(0,0,128);"><strong>Abraços.</strong></span></span></span></p>
]]></description><guid isPermaLink="false">233368</guid><pubDate>Tue, 21 Apr 2015 01:32:31 +0000</pubDate></item><item><title>1# Programando - IDE'S</title><link>https://xtibia.com/forum/topic/245441-1-programando-ides/</link><description><![CDATA[
<p>	Bom Dia, Boa Tarde e Boa Noite, Dependendo do Horário que estão vendo esse tópico, hoje eu venho trazer conteúdo para o fórum é algo que poderá ajudar á muitos que está começando no ramo de ots e querem se especializar em uma área mais á fundo e ampliar seus horizontes, bom vamos la estarei deixando umas ferramentas que podem ser útil para vocês.</p>
<p>	 </p>
<p>	IDE/Compiladores:</p>
<p>	 </p>
<p>	<a href="http://www.bloodshed.net/devcpp.html" rel="external nofollow">Dev-C++</a> (Distribuições para Windows e Linux)</p>
<p>	<a href="http://falconcpp.sourceforge.net" rel="external nofollow">Falcon C++</a> (Distribuições para Windows e Linux)</p>
<p>	<a href="https://www.visualstudio.com/pt-br/vs/" rel="external nofollow">Visual Studio (2017)</a> (Distribuições apenas para Windows)</p>
<p>	<a href="http://www.codeblocks.org" rel="external nofollow">CodeBlocks</a> (Distribuições para Windows e Linux)</p>
<p>	<a href="http://www.eclipse.org/cdt/" rel="external nofollow">Eclipse CDT</a> (Distribuições para Windows e Linux)</p>
<p>	<a href="https://edn.embarcadero.com/article/20633" rel="external nofollow">Borland C++</a> (Distribuições para Windows e Linux)</p>
<p>	<a href="https://netbeans.org/downloads/" rel="external nofollow">NetBeans</a> (Distribuições para Windows e Linux)</p>
<p>	<a href="https://www.jetbrains.com/resharper-cpp/download/" rel="external nofollow">ReSharper C++</a> (Distribuições para Windows e Linux)</p>
<p>	<a href="https://www.jetbrains.com/clion/download/" rel="external nofollow">CLion</a> (Distribuições para Windows e Linux)</p>
<p>	<a href="http://www.scintilla.org/SciTEDownload.html" rel="external nofollow">SciTE</a> (Distribuições para Windows e Linux)</p>
<p>	 </p>
<p>	PS: Existem Milhares, essas são as que já passei durante o período em que Codo e Programo em C/C++.</p>
<p>	 </p>
<p>	<span style="color:#2980b9;">Como Escolher á Melhor IDE para Utilizar?</span></p>
<p>	 </p>
<p>	Sem Dúvidas essa é uma Escolha Difícil pois no início tudo é difícil eu recomendo se você quer uma IDE que seja leve, Use o <span style="color:#27ae60;">Falcon C++ </span>mais se você quer uma IDE que seja boa e um pouco mais pesada utilize o <span style="color:#27ae60;">VS 2017 </span>porém todas as IDE's citadas aqui são boas e não são pesadas á um nível que seu computador consuma mais de 80% da RAM, rs.</p>
<p>	 </p>
<p>	Bom é isso esse foi meu primeiro tutorial, espero que tenham gostado, se quiser mais conteúdo do tipo deixe seu Gostei (Famoso <span style="color:#27ae60;">REP+</span>) e seu Feedback é de muita importância para mim.</p>
<p>	 </p>
<p>	Abraço do Padrinho.</p>
]]></description><guid isPermaLink="false">245441</guid><pubDate>Sun, 11 Jun 2017 19:18:36 +0000</pubDate></item><item><title>[LAUNCHER] AutoUpdate</title><link>https://xtibia.com/forum/topic/244934-launcher-autoupdate/</link><description><![CDATA[
<p style="text-align:center;">	<span style="font-size:24px;"><u><strong><span style="font-family:georgia, serif;">Desculpem se não estiver na área correta</span></strong></u></span></p>
<p style="text-align:center;">	 </p>
<p style="text-align:center;">	<span style="font-size:24px;"><u><strong><span style="font-family:georgia, serif;">hoje eu vim trazer um vídeo onde encino a editar um launcher: 
</span></strong></u></span></p>
<div class="ipsEmbeddedVideo">
<u><strong></strong></u><div><u><strong><iframe width="480" height="270" src="https://www.youtube.com/embed/PunuI985fQI?feature=oembed" frameborder="0" allowfullscreen="true"></iframe></strong></u></div>
<u><strong></strong></u>
</div>
<u><strong> </strong></u><p style="text-align:center;">	 </p>
<p style="text-align:center;">	 </p>
<p style="text-align:center;">	<span style="font-size:24px;"><u><strong><span style="font-family:georgia, serif;">créditos pelo launcher</span></strong></u></span></p>
<p style="text-align:center;">	 </p>
<p style="text-align:center;">	<font face="georgia, serif"><span style="font-size:24px;"><b><u>Aberos</u></b></span></font></p>
<p style="text-align:center;">	 </p>
<p style="text-align:center;">	<img alt="Launcher.png" class="ipsImage ipsImage_thumbnailed" data-fileid="22885" src="https://cdn.xtibia.com/monthly_2017_04/Launcher.png.183c37fc5e026aae37eca1fa2587bd70.png" /></p>
<p>	 </p>
<p><a class="ipsAttachLink ipsAttachLink_image" href="//cdn.xtibia.com/monthly_2017_04/Launcher.png.183c37fc5e026aae37eca1fa2587bd70.png" data-fileid="22885" rel=""><img src="https://cdn.xtibia.com/monthly_2017_04/Launcher.png.183c37fc5e026aae37eca1fa2587bd70.png" data-fileid="22885" class="ipsImage ipsImage_thumbnailed" alt="Launcher.png.183c37fc5e026aae37eca1fa2587bd70.png" /></a></p>
]]></description><guid isPermaLink="false">244934</guid><pubDate>Fri, 07 Apr 2017 03:23:11 +0000</pubDate></item><item><title>Passando Um Otserv Para 8.60</title><link>https://xtibia.com/forum/topic/137248-passando-um-otserv-para-860/</link><description><![CDATA[
<p><strong>Fala ae galerinha do xtibia...</strong></p>
<p><strong>Bom vejo que muitos programadores ainda estão em dúvida para passar o seu ot para 8.6 ...</strong></p>
<p><strong>Bom então estou fazendo um tutorial...</strong></p>
<p><span style="text-decoration:underline;"><strong>Testado em tfs 0.3.6pl1</strong></span></p>
<p> </p>
<div style="text-align:center;">
<p><span style="font-size:24px;"><em><span style="text-decoration:underline;"><strong>Sources:</strong></span></em></span></p>
<br /><br /></div>
<p></p>
<p><strong>Em House.cpp:</strong></p>
<p>Procure:</p>
<p></p>
<pre class="ipsCode">std::string metachars = ".[{}()\\+|^{:content:}quot;;</pre>
<div></div>
<p></p>
<p> </p>
<p>Substitua por:</p>
<p></p>
<pre class="ipsCode">std::string metachars = ".[{}()\\+|^$*?"; </pre>
<div></div>
<p></p>
<p> </p>
<p>Procure:</p>
<p></p>
<pre class="ipsCode"> if(metachars.find(*it) != std::string::npos)
outExp += "\\"; </pre>
<div></div>
<p></p>
<p> </p>
<p>Subistitua por:</p>
<p></p>
<pre class="ipsCode"> if(metachars.find(*it) != std::string::npos)
outExp += ""; </pre>
<div></div>
<p></p>
<p> </p>
<p>Procure:</p>
<p></p>
<pre class="ipsCode"> replaceString(outExp, "*", ".*");
replaceString(outExp, "?", ".?");</pre>
<div></div>
<p></p>
<p>Subistitua por:</p>
<p></p>
<pre class="ipsCode"> replaceString(outExp, "*", "");
replaceString(outExp, "?", "");</pre>
<div></div>
<p></p>
<p> </p>
<p><strong>Em resources.h:</strong></p>
<p>Procure:</p>
<p></p>
<pre class="ipsCode">#define CLIENT_VERSION_MIN 854
#define CLIENT_VERSION_MAX 854
#define CLIENT_VERSION_STRING "Only clients with protocol 8.54 are allowed!"

#define STATUS_SERVER_NAME "TheForgottenServer"
#define STATUS_SERVER_VERSION "0.3.6"
#define STATUS_SERVER_CODENAME "Crying Damson"
#define STATUS_SERVER_PROTOCOL "8.54"</pre>
<div></div>
<p></p>
<p> </p>
<p>Substitua por:</p>
<p></p>
<pre class="ipsCode">#define CLIENT_VERSION_MIN 860
#define CLIENT_VERSION_MAX 860
#define CLIENT_VERSION_STRING "Only clients with protocol 8.60 are allowed!"

#define STATUS_SERVER_NAME "TheForgottenServer"
#define STATUS_SERVER_VERSION "0.3.6"
#define STATUS_SERVER_CODENAME "Crying Damson"
#define STATUS_SERVER_PROTOCOL "8.60"</pre>
<div></div>
<p></p>
<p> </p>
<p><strong>Em itemloader.h:</strong></p>
<p>Procure:</p>
<p></p>
<pre class="ipsCode">CLIENT_VERSION_854 = 16</pre>
<div></div>
<p></p>
<p> </p>
<p>Substitua e adicione por:</p>
<p></p>
<pre class="ipsCode"> CLIENT_VERSION_854 = 16,
CLIENT_VERSION_855 = 17,
CLIENT_VERSION_856 = 18,
CLIENT_VERSION_857 = 19,
CLIENT_VERSION_860 = 20</pre>
<div></div>
<p></p>
<p> </p>
<p><strong>Em items.cpp:</strong></p>
<p>Procure:</p>
<p></p>
<pre class="ipsCode">else if(Items::dwMinorVersion != CLIENT_VERSION_854)</pre>
<div></div>
<p></p>
<p> </p>
<p>Substitua e adicione por:</p>
<p></p>
<pre class="ipsCode">else if(Items::dwMinorVersion != 19)</pre>
<div></div>
<p></p>
<p> </p>
<p><strong>Em protocolgame.cpp:</strong></p>
<p>Procure:</p>
<p></p>
<pre class="ipsCode">void ProtocolGame::parseAttack(NetworkMessage&amp; msg)
{
uint32_t creatureId = msg.GetU32();
addGameTask(&amp;Game::playerSetAttackedCreature, player-&gt;getID(), creatureId);
}
</pre>
<div></div>
<p></p>
<p>Substitua por:</p>
<p></p>
<pre class="ipsCode">void ProtocolGame::parseAttack(NetworkMessage&amp; msg)
{
uint32_t creatureId = msg.GetU32();
msg.GetU32();
msg.GetU32();
addGameTask(&amp;Game::playerSetAttackedCreature, player-&gt;getID(), creatureId);
}</pre>
<div></div>
<p></p>
<p> </p>
<p>Também procure:</p>
<p></p>
<pre class="ipsCode">void ProtocolGame::sendCancelTarget()
{
NetworkMessage_ptr msg = getOutputBuffer();
if(msg)
{
TRACK_MESSAGE(msg);
msg-&gt;AddByte(0xA3);
}
}</pre>
<div></div>
<p></p>
<p> </p>
<p>Substitua por:</p>
<p></p>
<pre class="ipsCode">void ProtocolGame::sendCancelTarget()
{
NetworkMessage_ptr msg = getOutputBuffer();
if(msg)
{
TRACK_MESSAGE(msg);
msg-&gt;AddByte(0xA3);
msg-&gt;AddU32(0);
}
}</pre>
<div></div>
<p></p>
<p> </p>
<p><strong>Em spells.cpp (somente em spells.cpp)</strong></p>
<p>Procure:</p>
<p></p>
<pre class="ipsCode">g_game.transformItem(item, item-&gt;getID(), std::max((int32_t)0, ((int32_t)item-&gt;getCharges()) - 1));</pre>
<div></div>
<p></p>
<p> </p>
<p>Substitua por:</p>
<p></p>
<pre class="ipsCode">g_game.transformItem(item, item-&gt;getID(), std::max((int32_t)0, ((int32_t)item-&gt;getItemCount()) - 1));</pre>
<div></div>
<p></p>
<p> </p>
<p><strong>Em tools.cpp:</strong></p>
<p>Procure:</p>
<p></p>
<pre class="ipsCode">{"insects", MAGIC_EFFECT_INSECTS}</pre>
<div></div>
<p></p>
<p> </p>
<p>Substitua por:</p>
<p></p>
<pre class="ipsCode">{"insects", MAGIC_EFFECT_INSECTS},
{"dragonhead", MAGIC_EFFECT_DRAGONHEAD}
</pre>
<div></div>
<p></p>
<p> </p>
<p><strong>Em const.h:</strong></p>
<p>Procure:</p>
<p></p>
<pre class="ipsCode">MAGIC_EFFECT_INSECTS		= 0x44, //68
MAGIC_EFFECT_LAST		= MAGIC_EFFECT_INSECTS,</pre>
<div></div>
<p></p>
<p> </p>
<p>Substitua por:</p>
<p></p>
<pre class="ipsCode">MAGIC_EFFECT_INSECTS		= 0x44, //68,
MAGIC_EFFECT_DRAGONHEAD		= 0x45, //69
MAGIC_EFFECT_LAST		= MAGIC_EFFECT_DRAGONHEAD,</pre>
<div></div>
<p></p>
<p> </p>
<p><strong>Em game.cpp:</strong></p>
<p>Procure:</p>
<p></p>
<pre class="ipsCode">
void Game::showHotkeyUseMessage(Player* player, Item* item)
{
       int32_t subType = -1;
       if(item-&gt;hasSubType() &amp;&amp; !item-&gt;hasCharges())
               subType = item-&gt;getSubType();

       const ItemType&amp; it = Item::items[item-&gt;getID()];
       uint32_t count = player-&gt;__getItemTypeCount(item-&gt;getID(), subType, false);

       char buffer[40 + it.name.size()];
       if(count == 1)
               sprintf(buffer, "Using the last %s...", it.name.c_str());
       else
               sprintf(buffer, "Using one of %d %s...", count, it.pluralName.c_str());

       player-&gt;sendTextMessage(MSG_INFO_DESCR, buffer);
}</pre>
<div></div>
<p></p>
<p> </p>
<p>Substitua por:</p>
<p></p>
<pre class="ipsCode">
void Game::showHotkeyUseMessage(Player* player, Item* item)
{
       const ItemType&amp; it = Item::items[item-&gt;getID()];
       uint32_t count = player-&gt;__getItemTypeCount(item-&gt;getID(), -1);

       char buffer[40 + it.name.size()];
       if(count == 1)
               sprintf(buffer, "Using the last %s...", it.name.c_str());
       else
               sprintf(buffer, "Using one of %d %s...", count, it.pluralName.c_str());

       player-&gt;sendTextMessage(MSG_INFO_DESCR, buffer);
}</pre>
<div></div>
<p></p>
<p> </p>
<p><strong>Em npc.cpp:</strong></p>
<p>Procure:</p>
<p></p>
<pre class="ipsCode">
li.itemId = intValue;</pre>
<div></div>
<p></p>
<p> </p>
<p>Embaixo adicione:</p>
<p></p>
<pre class="ipsCode">
const ItemType&amp; it = Item::items[li.itemId];</pre>
<div></div>
<p></p>
<p> </p>
<p>Também procure:</p>
<p></p>
<pre class="ipsCode">
if(readXMLInteger(tmpNode, "subtype", intValue))
li.subType = intValue;</pre>
<div></div>
<p></p>
<p> </p>
<p>Embaixo adicione:</p>
<p></p>
<pre class="ipsCode">
else
{
if(it.stackable)
li.subType = 1;
else if(it.isFluidContainer() || it.isSplash())
li.subType = 0;
}</pre>
<div></div>
<p></p>
<p> </p>
<p><strong>Em item.cpp:</strong></p>
<p>Procure:</p>
<p></p>
<pre class="ipsCode">
s &lt;&lt; "(";
if(!it.runeSpellName.empty())
s &lt;&lt; "\"" &lt;&lt; it.runeSpellName &lt;&lt; "\", ";

s &lt;&lt; "Charges:" &lt;&lt; subType &lt;&lt;")";</pre>
<div></div>
<p></p>
<p> </p>
<p>Embaixo adicione:</p>
<p></p>
<pre class="ipsCode">
if(!it.runeSpellName.empty())
s &lt;&lt; "(\"" &lt;&lt; it.runeSpellName &lt;&lt; "\")";</pre>
<div></div>
<p></p>
<p> </p>
<p> </p>
<p><strong>Em luascript.cpp</strong><strong>:</strong></p>
<p>Procure por:</p>
<p></p>
<pre class="ipsCode">	//getCreatureHealth(cid)
lua_register(m_luaState, "getCreatureHealth", LuaScriptInterface::luaGetCreatureHealth);</pre>
<div></div>
<p></p>
<p> </p>
<p>Embaixo adicione:</p>
<p></p>
<pre class="ipsCode">		//getItemParent(uid)
lua_register(m_luaState, "getItemParent", LuaScriptInterface::luaGetItemParent);</pre>
<div></div>
<p></p>
<p> </p>
<p>Também procure por:</p>
<p> </p>
<pre class="ipsCode">int32_t LuaScriptInterface::luaGetCreatureHealth(lua_State* L)
{
//getCreatureHealth(cid)
ScriptEnviroment* env = getEnv();
if(Creature* creature = env-&gt;getCreatureByUID(popNumber(L)))
	lua_pushnumber(L, creature-&gt;getHealth());
else
{
	errorEx(getError(LUA_ERROR_CREATURE_NOT_FOUND));
	lua_pushboolean(L, false);
}
return 1;
}</pre>
<div></div>
<p></p>
<p> </p>
<p>Substitua por:</p>
<p> </p>
<pre class="ipsCode">int32_t LuaScriptInterface::luaGetItemParent(lua_State* L)
{
//getItemParent(uid)
ScriptEnviroment* env = getEnv();

Item* item = env-&gt;getItemByUID(popNumber(L));
if(!item)
{
	errorEx(getError(LUA_ERROR_ITEM_NOT_FOUND));
	lua_pushnil(L);
	return 1;
}

Item* container = item-&gt;getParent()-&gt;getItem();
pushThing(L, container, env-&gt;addThing(container));
return 1;
}</pre>
<div></div>
<p></p>
<p> </p>
<p><strong>Em luascript.h</strong><strong>:</strong></p>
<p>Procure por:</p>
<p></p>
<pre class="ipsCode">static int32_t luaDoRemoveItem(lua_State* L);</pre>
<div></div>
<p></p>
<p> </p>
<p>Embaixo adicione:</p>
<p> </p>
<pre class="ipsCode">static int32_t luaGetItemParent(lua_State* L);</pre>
<div></div>
<p></p>
<p> </p>
<p></p>
<div style="text-align:center;">
<p><span style="font-size:24px;"><em><span style="text-decoration:underline;"><strong>Pasta Data:</strong></span></em></span></p>
<br /><br /></div>
<div style="text-align:left;">
<div style="text-align:center;">
<strong>Na pasta data\actions\scripts\liquids\potions.lua</strong>:</div>
<br /><br />Delete tudo e adicione:<br /><br /><pre class="ipsCode">local config = {
removeOnUse = "no",
usableOnTarget = "yes", -- can be used on target? (fe. healing friend)
splashable = "no",
realAnimation = "no", -- make text effect visible only for players in range 1x1
healthMultiplier = 1.0,
manaMultiplier = 1.0
}

config.removeOnUse = getBooleanFromString(config.removeOnUse)
config.usableOnTarget = getBooleanFromString(config.usableOnTarget)
config.splashable = getBooleanFromString(config.splashable)
config.realAnimation = getBooleanFromString(config.realAnimation)

local POTIONS = {
[8704] = {empty = 7636, splash = 2, health = {50, 100}}, -- small health potion
[7618] = {empty = 7636, splash = 2, health = {100, 200}}, -- health potion
[7588] = {empty = 7634, splash = 2, health = {200, 400}, level = 50, vocations = {3, 4, 7, 8}, vocStr = "knights and paladins"}, -- strong health potion
[7591] = {empty = 7635, splash = 2, health = {500, 700}, level = 80, vocations = {4, 8}, vocStr = "knights"}, -- great health potion
[8473] = {empty = 7635, splash = 2, health = {800, 1000}, level = 130, vocations = {4, 8}, vocStr = "knights"}, -- ultimate health potion

[7620] = {empty = 7636, splash = 7, mana = {70, 130}}, -- mana potion
[7589] = {empty = 7634, splash = 7, mana = {110, 190}, level = 50, vocations = {1, 2, 3, 5, 6, 7}, vocStr = "sorcerers, druids and paladins"}, -- strong mana potion
[7590] = {empty = 7635, splash = 7, mana = {200, 300}, level = 80, vocations = {1, 2, 5, 6}, vocStr = "sorcerers and druids"}, -- great mana potion

[8472] = {empty = 7635, splash = 3, health = {200, 400}, mana = {110, 190}, level = 80, vocations = {3, 7}, vocStr = "paladins"} -- great spirit potion
}

local exhaust = createConditionObject(CONDITION_EXHAUST)
setConditionParam(exhaust, CONDITION_PARAM_TICKS, (getConfigInfo('timeBetweenExActions') - 100))

function onUse(cid, item, fromPosition, itemEx, toPosition)
local potion = POTIONS[item.itemid]
if(not potion) then
	return false
end

if(not isPlayer(itemEx.uid) or (not config.usableOnTarget and cid ~= itemEx.uid)) then
	if(not config.splashable) then
		return false
	end

	if(toPosition.x == CONTAINER_POSITION) then
		toPosition = getThingPos(item.uid)
	end

	doDecayItem(doCreateItem(2016, potion.splash, toPosition))
	doTransformItem(item.uid, potion.empty)
	return true
end

if(hasCondition(cid, CONDITION_EXHAUST_HEAL)) then
	doPlayerSendDefaultCancel(cid, RETURNVALUE_YOUAREEXHAUSTED)
	return true
end

if(((potion.level and getPlayerLevel(cid) &lt; potion.level) or (potion.vocations and not isInArray(potion.vocations, getPlayerVocation(cid)))) and
	not getPlayerCustomFlagValue(cid, PLAYERCUSTOMFLAG_GAMEMASTERPRIVILEGES))
then
	doCreatureSay(itemEx.uid, "Only " .. potion.vocStr .. (potion.level and (" of level " .. potion.level) or "") .. " or above may drink this fluid.", TALKTYPE_ORANGE_1)
	return true
end

local health = potion.health
if(health and not doCreatureAddHealth(itemEx.uid, math.ceil(math.random(health[1], health[2]) * config.healthMultiplier))) then
	return false
end

local mana = potion.mana
if(mana and not doPlayerAddMana(itemEx.uid, math.ceil(math.random(mana[1], mana[2]) * config.manaMultiplier))) then
	return false
end

doSendMagicEffect(getThingPos(itemEx.uid), CONST_ME_MAGIC_BLUE)
if(not realAnimation) then
	doCreatureSay(itemEx.uid, "Aaaah...", TALKTYPE_ORANGE_1)
else
	for i, tid in ipairs(getSpectators(getCreaturePosition(cid), 1, 1)) do
		if(isPlayer(tid)) then
			doCreatureSay(itemEx.uid, "Aaaah...", TALKTYPE_ORANGE_1, false, tid)
		end
	end
end

doAddCondition(cid, exhaust)

local v = getItemParent(item.uid)
if(not potion.empty or config.removeOnUse) then
	return true
end

if fromPosition.x == CONTAINER_POSITION then
	for _, slot in ipairs({CONST_SLOT_LEFT, CONST_SLOT_RIGHT, CONST_SLOT_AMMO}) do
		local tmp = getPlayerSlotItem(cid, slot)
		if tmp.itemid == potion.empty and tmp.type &lt; 100 then
			doChangeTypeItem(item.uid, item.type - 1)
			return getPlayerFreeCap(cid) &gt;= getItemInfo(potion.empty).weight and doChangeTypeItem(tmp.uid, tmp.type + 1) or doPlayerAddItem(cid, potion.empty, 1)
		end
	end
else
	doChangeTypeItem(item.uid, item.type - 1)
	doCreateItem(potion.empty, 1, fromPosition)
	return true
end

if v.uid == 0 then
	if item.type == 1 and isInArray({CONST_SLOT_LEFT, CONST_SLOT_RIGHT, CONST_SLOT_AMMO}, fromPosition.y) then
		doTransformItem(item.uid, potion.empty)
	else
		-- serversided autostack should take care of this
		doPlayerAddItem(cid, potion.empty, 1)
		doChangeTypeItem(item.uid, item.type - 1)
	end
	return true
else
	doChangeTypeItem(item.uid, item.type - 1)
	local size = getContainerSize(v.uid)
	for i = 0, size-1 do
		local tmp = getContainerItem(v.uid, i)
		if tmp.itemid == potion.empty and tmp.type &lt; 100 then
			return getPlayerFreeCap(cid) &gt;= getItemInfo(potion.empty).weight and doChangeTypeItem(tmp.uid, tmp.type + 1) or doPlayerAddItem(cid, potion.empty, 1)
		end
	end

	if getContainerSize(v.uid) &lt; getContainerCap(v.uid) then
		doAddContainerItem(v.uid, potion.empty)
	else
		doPlayerAddItem(cid, potion.empty, 1)
	end
end
return true
end</pre>
<div></div>
<p><br /><br /> <br /><br /><strong>Na pasta data\lib\000-constant.lua</strong>:<br /><br />Procure<br /><br /></p>
<pre class="ipsCode"> maleOutfits = {128, 129, 130, 131, 132, 133, 134, 143, 144, 145, 146, 151, 152, 153, 154, 251, 268, 273, 278, 289, 325, 328, 335}
femaleOutfits = {136, 137, 138, 139, 140, 141, 142, 147, 148, 149, 150, 155, 156, 157, 158, 252, 269, 270, 279, 288, 324, 329, 336}</pre>
<div></div>
<p><br /><br /> <br /><br />Subistitua por:<br /><br /></p>
<pre class="ipsCode">maleOutfits = {128, 129, 130, 131, 132, 133, 134, 143, 144, 145, 146, 151, 152, 153, 154, 251, 268, 273, 278, 289, 325, 328, 335, 367}
femaleOutfits = {136, 137, 138, 139, 140, 141, 142, 147, 148, 149, 150, 155, 156, 157, 158, 252, 269, 270, 279, 288, 324, 329, 336, 366}</pre>
<div></div>
<p><br /><br /> <br /><br /><strong>Em Data\xml\outfit.xml:</strong><br /><br />Delete tudo e Adicione<br /><br /></p>
<pre class="ipsCode"> 
&lt;?xml version="1.0"?&gt;
&lt;outfits&gt;
&lt;outfit id="1"&gt;
&lt;list gender="0" lookType="136" name="Citizen"/&gt;
&lt;list gender="1" lookType="128" name="Citizen"/&gt;
&lt;/outfit&gt;

&lt;outfit id="2"&gt;
&lt;list gender="0" lookType="137" name="Hunter"/&gt;
&lt;list gender="1" lookType="129" name="Hunter"/&gt;
&lt;/outfit&gt;

&lt;outfit id="3"&gt;
&lt;list gender="0" lookType="138" name="Mage"/&gt;
&lt;list gender="1" lookType="130" name="Mage"/&gt;
&lt;/outfit&gt;

&lt;outfit id="4"&gt;
&lt;list gender="0" lookType="139" name="Knight"/&gt;
&lt;list gender="1" lookType="131" name="Knight"/&gt;
&lt;/outfit&gt;

&lt;outfit id="5" premium="yes"&gt;
&lt;list gender="0" lookType="140" name="Noblewoman"/&gt;
&lt;list gender="1" lookType="132" name="Nobleman"/&gt;
&lt;/outfit&gt;

&lt;outfit id="6" premium="yes"&gt;
&lt;list gender="0" lookType="141" name="Summoner"/&gt;
&lt;list gender="1" lookType="133" name="Summoner"/&gt;
&lt;/outfit&gt;

&lt;outfit id="7" premium="yes"&gt;
&lt;list gender="0" lookType="142" name="Warrior"/&gt;
&lt;list gender="1" lookType="134" name="Warrior"/&gt;
&lt;/outfit&gt;

&lt;outfit id="8" premium="yes"&gt;
&lt;list gender="0" lookType="147" name="Barbarian"/&gt;
&lt;list gender="1" lookType="143" name="Barbarian"/&gt;
&lt;/outfit&gt;

&lt;outfit id="9" premium="yes"&gt;
&lt;list gender="0" lookType="148" name="Druid"/&gt;
&lt;list gender="1" lookType="144" name="Druid"/&gt;
&lt;/outfit&gt;

&lt;outfit id="10" premium="yes"&gt;
&lt;list gender="0" lookType="149" name="Wizard"/&gt;
&lt;list gender="1" lookType="145" name="Wizard"/&gt;
&lt;/outfit&gt;

&lt;outfit id="11" premium="yes"&gt;
&lt;list gender="0" lookType="150" name="Oriental"/&gt;
&lt;list gender="1" lookType="146" name="Oriental"/&gt;
&lt;/outfit&gt;

&lt;outfit id="12" premium="yes"&gt;
&lt;list gender="0" lookType="155" name="Pirate"/&gt;
&lt;list gender="1" lookType="151" name="Pirate"/&gt;
&lt;/outfit&gt;

&lt;outfit id="13" premium="yes"&gt;
&lt;list gender="0" lookType="156" name="Assassin"/&gt;
&lt;list gender="1" lookType="152" name="Assassin"/&gt;
&lt;/outfit&gt;

&lt;outfit id="14" premium="yes"&gt;
&lt;list gender="0" lookType="157" name="Beggar"/&gt;
&lt;list gender="1" lookType="153" name="Beggar"/&gt;
&lt;/outfit&gt;

&lt;outfit id="15" premium="yes"&gt;
&lt;list gender="0" lookType="158" name="Shaman"/&gt;
&lt;list gender="1" lookType="154" name="Shaman"/&gt;
&lt;/outfit&gt;

&lt;outfit id="16" premium="yes"&gt;
&lt;list gender="0" lookType="252" name="Norsewoman"/&gt;
&lt;list gender="1" lookType="251" name="Norseman"/&gt;
&lt;/outfit&gt;

&lt;outfit id="17" premium="yes"&gt;
&lt;list gender="0" lookType="269" name="Nightmare"/&gt;
&lt;list gender="1" lookType="268" name="Nightmare"/&gt;
&lt;/outfit&gt;

&lt;outfit id="18" premium="yes"&gt;
&lt;list gender="0" lookType="270" name="Jester"/&gt;
&lt;list gender="1" lookType="273" name="Jester"/&gt;
&lt;/outfit&gt;

&lt;outfit id="19" premium="yes"&gt;
&lt;list gender="0" lookType="279" name="Brotherhood"/&gt;
&lt;list gender="1" lookType="278" name="Brotherhood"/&gt;
&lt;/outfit&gt;

&lt;outfit id="20" premium="yes"&gt;
&lt;list gender="0" lookType="288" name="Demonhunter"/&gt;
&lt;list gender="1" lookType="289" name="Demonhunter"/&gt;
&lt;/outfit&gt;

&lt;outfit id="21" premium="yes"&gt;
&lt;list gender="0" lookType="324" name="Yalaharian"/&gt;
&lt;list gender="1" lookType="325" name="Yalaharian"/&gt;
&lt;/outfit&gt;

&lt;outfit id="22" premium="yes"&gt;
&lt;list gender="0" lookType="336" name="Warmaster"/&gt;
&lt;list gender="1" lookType="335" name="Warmaster"/&gt;
&lt;/outfit&gt;

&lt;outfit id="23" default="0"&gt;
&lt;list gender="0" lookType="329" name="Wife"/&gt;
&lt;list gender="1" lookType="328" name="Husband"/&gt;
&lt;/outfit&gt;

&lt;outfit id="24" premium="yes"&gt;
&lt;list gender="0" lookType="366" name="Wayfarer"/&gt;
&lt;list gender="1" lookType="367" name="Wayfarer"/&gt;
&lt;/outfit&gt;
&lt;/outfits&gt; </pre>
<div></div>
<p><br /><br /> <br /><br /><strong>Em data\items\items.xml</strong><strong><span style="text-decoration:underline;">:</span></strong><br /><br />Delete onde estão configurada as runas a seguinte linha <strong>(Em Todas)</strong><br /><br /></p>
<pre class="ipsCode">&lt;attribute key="charges" value="x" /&gt;</pre>
<div></div>
<p><br /><br />X: Qualquer numero<br /><br /> <br /><br /></p>
<div style="text-align:center;">
<p><span style="font-size:24px;"><em><span style="text-decoration:underline;"><strong>Arquivos para procurar e repassar:</strong></span></em></span><br /><br /><span style="font-size:24px;"><span style="font-size:10px;">Bom gente eu não gravei como era o antigo desse então procure uma frase e repasse</span></span><br /><br /><span style="font-size:24px;"><span style="font-size:10px;"> </span></span><br /><br /></p>
<div style="text-align:left;">
<p><strong>Em container.cpp:</strong><br /><br />Procure e repasse:<br /><br /></p>
<pre class="ipsCode">Cylinder* Container::__queryDestination(int32_t&amp; index, const Thing* thing, Item** destItem,
uint32_t&amp;)
{
if(index == 254 /*move up*/)
{
	index = INDEX_WHEREEVER;
	*destItem = NULL;

	Container* parentContainer = dynamic_cast&lt;Container*&gt;(getParent());
	if(parentContainer)
		return parentContainer;

	return this;
}
else if(index == 255 /*add wherever*/){
	index = INDEX_WHEREEVER;
	*destItem = NULL;
}
else if(index &gt;= (int32_t)capacity()){
		/*
		if you have a container, maximize it to show all 20 slots
		then you open a bag that is inside the container you will have a bag with 8 slots
		and a "grey" area where the other 12 slots where from the container
		if you drop the item on that grey area
		the client calculates the slot position as if the bag has 20 slots
		*/
		index = INDEX_WHEREEVER;
	*destItem = NULL;
}

const Item* item = thing-&gt;getItem();
if(item == NULL){
	return this;
}

if(item-&gt;isStackable()){
	if(item-&gt;getParent() != this){
		//try find a suitable item to stack with
		uint32_t n = 0;
		for(ItemList::iterator cit = itemlist.begin(); cit != itemlist.end(); ++cit){
			if((*cit) != item &amp;&amp; (*cit)-&gt;getID() == item-&gt;getID() &amp;&amp; (*cit)-&gt;getItemCount() &lt; 100){
				*destItem = (*cit);
				index = n;
				return this;
			}

			++n;
		}
	}
}

if(index != INDEX_WHEREEVER){
	Thing* destThing = __getThing(index);
	if(destThing)
		*destItem = destThing-&gt;getItem();

	Cylinder* subCylinder = dynamic_cast&lt;Cylinder*&gt;(*destItem);

	if(subCylinder){
		index = INDEX_WHEREEVER;
		*destItem = NULL;
		return subCylinder;
	}
}

return this;
}</pre>
<div></div>
<p><br /><br /></p>
</div>
<p><br /><br /></p>
</div>
<p></p>
<p><strong>Em item.cpp:</strong></p>
<p>Procure e repasse:</p>
<p></p>
<pre class="ipsCode">void Item::setDefaultSubtype()
{
setItemCount(1);
const ItemType&amp; it = items[id];
if(it.charges)
	setCharges(it.charges);
}</pre>
<div></div>
<p></p>
<p> </p>
<p><strong>Em player.cpp</strong><strong>:</strong></p>
<p>Procure e repasse:</p>
<p></p>
<pre class="ipsCode">Cylinder* Player::__queryDestination(int32_t&amp; index, const Thing* thing, Item** destItem,
uint32_t&amp; flags)
{
if(index == 0 /*drop to capacity window*/ || index == INDEX_WHEREEVER){
	*destItem = NULL;

	const Item* item = thing-&gt;getItem();
	if(item == NULL){
		return this;
	}

	//find an appropiate slot
	std::list&lt;Container*&gt; containerList;
	for(int i = SLOT_FIRST; i &lt; SLOT_LAST; ++i){
		Item* inventoryItem = inventory[i];

		if(inventoryItem == tradeItem){
			continue;
		}

		if(inventoryItem == tradeItem){
			continue;
		}

			if(inventoryItem){
				//try find an already existing item to stack with
			if(inventoryItem != item &amp;&amp; item-&gt;isStackable() &amp;&amp; inventoryItem-&gt;getID() == item-&gt;getID() &amp;&amp; inventoryItem-&gt;getItemCount() &lt; 100){
				*destItem = inventoryItem;
				index = i;
				return this;
			}
			//check sub-containers
			else if(Container* subContainer = inventoryItem-&gt;getContainer()){
				Cylinder* tmpCylinder = NULL;
				int32_t tmpIndex = INDEX_WHEREEVER;
				Item* tmpDestItem = NULL;

				tmpCylinder = subContainer-&gt;__queryDestination(tmpIndex, item, &amp;tmpDestItem, flags);
				if(tmpCylinder &amp;&amp; tmpCylinder-&gt;__queryAdd(tmpIndex, item, item-&gt;getItemCount(), flags) == RET_NOERROR){
					index = tmpIndex;
					*destItem = tmpDestItem;
					return tmpCylinder;
				}

				containerList.push_back(subContainer);
			}
		}
		//empty slot
		else if(__queryAdd(i, item, item-&gt;getItemCount(), flags) == RET_NOERROR){
			index = i;
			*destItem = NULL;
			return this;
		}
	}

	//check deeper in the containers
	for(std::list&lt;Container*&gt;::iterator it = containerList.begin(); it != containerList.end(); ++it){
		for(ContainerIterator iit = (*it)-&gt;begin(); iit != (*it)-&gt;end(); ++iit){
			if(Container* subContainer = (*iit)-&gt;getContainer()){

				if(subContainer == tradeItem){
					continue;
				}

				Cylinder* tmpCylinder = NULL;
				int32_t tmpIndex = INDEX_WHEREEVER;
				Item* tmpDestItem = NULL;

				tmpCylinder = subContainer-&gt;__queryDestination(tmpIndex, item, &amp;tmpDestItem, flags);
				if(tmpCylinder &amp;&amp; tmpCylinder-&gt;__queryAdd(tmpIndex, item, item-&gt;getItemCount(), flags) == RET_NOERROR){
					index = tmpIndex;
					*destItem = tmpDestItem;
					return tmpCylinder;
				}
			}
		}
	}
	return this;
}

Thing* destThing = __getThing(index);
if(destThing)
	*destItem = destThing-&gt;getItem();

Cylinder* subCylinder = dynamic_cast&lt;Cylinder*&gt;(destThing);

if(subCylinder){
	index = INDEX_WHEREEVER;
	*destItem = NULL;
	return subCylinder;
}
else
	return this;
}</pre>
<div></div>
<p></p>
<p> </p>
<p></p>
<div style="text-align:center;"><p><span style="font-size:24px;"><span style="text-decoration:underline;"><em><strong>Downloads:</strong></em></span></span><br /><br /></p></div>
<p></p>
</div>
<div style="text-align:center;"></div>
<p>Items.otb (8.6): <a href="http://www.speedyshare.com/files/23327316/items.rar" rel="external nofollow">Clique Aqui</a></p>
<p>Items.xml (8.6): <a href="http://www.speedyshare.com/files/23441734/items.xml" rel="external nofollow">Clique aqui</a></p>
<p> </p>
<p> </p>
<p><strong>Creditos á:</strong></p>
<p><strong><span style="text-decoration:underline;">darkhaos</span></strong> - Sources</p>
<p><strong><span style="text-decoration:underline;">Tauku</span></strong> - Sources</p>
<p><span style="text-decoration:underline;"><strong>BlueSilver</strong></span> - Sources</p>
<p><span style="text-decoration:underline;"><strong>Doidin</strong></span> - Data</p>
<p><span style="text-decoration:underline;"><strong>Cykotitan</strong></span> <span style="text-decoration:underline;">(O do xtibia)</span> - Sources/Data</p>
<p><strong><span style="text-decoration:underline;">Eu</span></strong> - Data/Sources</p>
<p><span style="text-decoration:underline;"><strong>Outros</strong></span> - Data/Sources</p>
<div style="text-align:center;">
<p><strong>Tutorial atualizado: </strong><strong><span style="text-decoration:underline;"><em>24/09/2010</em></span></strong></p>
<br /><br /></div>
<p></p>
<div style="text-align:center;">
<p><span style="text-decoration:underline;"><strong>Agora Funciona 99,9% perfeito (deve estar faltando um detalhe ou outro)</strong></span></p>
<br /><br /><span style="text-decoration:underline;"><strong>Recomendo fazer tudo o que está mandando para não ocorrer erros</strong></span><br /><br /></div>
<p></p>
<p></p>
]]></description><guid isPermaLink="false">137248</guid><pubDate>Thu, 15 Jul 2010 23:12:13 +0000</pubDate></item><item><title>[TUTORIAL] DDOS-DEFLATE</title><link>https://xtibia.com/forum/topic/242218-tutorial-ddos-deflate/</link><description><![CDATA[
<h3 style="font-family:'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;font-weight:normal;line-height:1.1;color:rgb(102,102,102);margin-top:20px;margin-bottom:10px;font-size:24px;font-style:normal;letter-spacing:normal;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);">	Instalando Dos-Deflate</h3>
<h2 style="font-family:Ubuntu, sans-serif;font-weight:700;line-height:36px;color:rgb(51,51,51);margin-top:0px;margin-bottom:0px;font-size:24px;font-style:normal;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);letter-spacing:-2px;">	Dos-Deflate - Segurança</h2>
<div style="color:rgb(51,51,51);font-family:'Open Sans', sans-serif;font-size:14px;font-style:normal;font-weight:normal;letter-spacing:normal;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);">	 </div>
<blockquote style="padding:0px 0px 0px 15px;margin:0px 0px 18px;font-size:13px;border-left:5px solid rgb(238,238,238);color:rgb(51,51,51);font-style:normal;font-weight:normal;letter-spacing:normal;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;line-height:18px;">	<p style="margin:0px 0px 3px;color:rgb(51,51,51);font-size:16px;line-height:22.5px;">		Proteção DDoS: <a href="http://deflate.medialayer.com/" rel="external nofollow">http://deflate.medialayer.com/</a>	</p>	<p style="margin:0px 0px 3px;color:rgb(51,51,51);font-size:16px;line-height:22.5px;">		Antes de iniciar a <span style="color:rgb(0,0,0);">Instalação</span>, é necessário uma observação sobre a utilização dos serviços.	</p>	<ul style="margin:0px 0px 9px 25px;list-style-type:disc;color:rgb(51,51,51);padding:0px;"><li>			Possivel visualizar os IPs que pode causar DDoS pelo comando SSH <span style="color:rgb(255,0,0);"><strong style="font-weight:700;">vi /usr/local/ddos/ignore.ip.list</strong></span>		</li>
<li>			Para configurar acesse <span style="color:rgb(255,0,0);"><strong style="font-weight:700;">vi /usr/local/ddos/ddos.conf</strong></span>		</li>		<li>			<span lang="pt" xml:lang="pt"><span>Os endereços de IP são</span> <span>automaticamente</span> <span>desbloqueada</span> <span>após</span> <span>um limite de tempo</span> <span>pré-configurado</span> <span>(default:</span> <span>600 segundos)</span></span>		</li>		<li>			<span lang="pt" xml:lang="pt"><span>O script</span> <span>pode ser executado</span> <span>em uma frequência</span> <span>escolhido através do</span> <span>arquivo de configuração</span> <span>(default:</span> <span>1 minuto)</span></span>		</li>		<li>			<span lang="pt" xml:lang="pt"><span>Você pode receber</span> <span>alertas por email</span> <span>quando os endereços</span> <span>IP</span> <span>são bloqueados</span>.</span>		</li>		<li>			<span style="font-size:16px;line-height:22.5px;"> </span>		</li>	</ul><p style="margin:0px 0px 3px;font-size:16px;line-height:22.5px;">		<b style="font-weight:700;">Instalação</b>	</p>	<pre style="font-family:Menlo, Monaco, Consolas, 'Courier New', monospace;font-size:12.025px;padding:8.5px;margin:0px 0px 9px;line-height:1.42857;color:rgb(51,51,51);background-color:rgb(245,245,245);border:1px solid;white-space:pre-wrap;"><b style="font-weight:700;">wget <a href="http://www.inetbase.com/scripts/ddos/install.shchmod" rel="external nofollow">http://www.inetbase.com/scripts/ddos/install.shchmod</a> 0700 install.sh./install.sh </b></pre>	<p style="margin:0px 0px 3px;font-size:16px;line-height:22.5px;">		<b style="font-weight:700;">Desinstalar</b>	</p>	<pre style="font-family:Menlo, Monaco, Consolas, 'Courier New', monospace;font-size:12.025px;padding:8.5px;margin:0px 0px 9px;line-height:1.42857;color:rgb(51,51,51);background-color:rgb(245,245,245);border:1px solid;white-space:pre-wrap;"><b style="font-weight:700;">wget <a href="http://www.inetbase.com/scripts/ddos/uninstall.ddoschmod" rel="external nofollow">http://www.inetbase.com/scripts/ddos/uninstall.ddoschmod</a> 0700 uninstall.ddos./uninstall.ddos</b></pre>
</blockquote>
<p>	 </p>
<p>	<b style="font-weight:700;">CREDITOS: WEBLARA</b></p>
]]></description><guid isPermaLink="false">242218</guid><pubDate>Tue, 20 Sep 2016 15:27:17 +0000</pubDate></item><item><title>[c++] code list</title><link>https://xtibia.com/forum/topic/241051-c-code-list/</link><description><![CDATA[
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-family:'times new roman', times, serif;"><span style="font-size:16px;">Olá! Ultimamente eu vi que tem pessoas que dizem:</span></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-family:'times new roman', times, serif;"><span style="font-size:16px;">"Nem vou sair do PDA, pois é muito complicado usar source"</span></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-family:'times new roman', times, serif;"><span style="font-size:16px;">Então vi que o pessoal não sabe procurar no google, nem nos fóruns nem nada pra poder achar algo interessante... então resolvi fazer uma lista de tutorias em C++</span></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-family:'times new roman', times, serif;"><span style="font-size:16px;">Essa lista vai ser mais pensada para Derivados, em especial os de pokemons, mas claro que vão poder usar em qual quer outro tipo de servidor, vai depender de sua criatidade!</span></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-family:'times new roman', times, serif;"><span style="font-size:16px;"><s>Outro motivo de eu fazer isso, é que sempre q preciso de code q esqueci de anotar o link, preciso procurar dnv kk</s></span></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<font face="times new roman, times, serif"><span style="font-size:16px;line-height:25.6px;">Obs: Codes são apenas para TFS 0.3.6 e 0.4</span></font></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<font face="times new roman, times, serif"><span style="font-size:16px;line-height:25.6px;">Caso esteja ALL é por que funciona em ambas versões aciam!</span></font></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-family:'times new roman', times, serif;"><span style="font-size:16px;">Então vamos lá!</span></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<strong><span style="font-size:20px;"><font face="times new roman, times, serif"><span style="line-height:25.6px;">Extra (Adicionar)</span></font></span></strong></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<a href="" rel="">ShootEffect</a></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<a href="" rel="">MagicEffec</a>t</p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<strong><span style="font-size:20px;">Functions LUA</span></strong></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">[ALL] <a href="" rel="">doPlayerOpenChannel(cid, channelid)</a></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">Função: Abrir um determinado channel</span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">[TFS 0.3.6] <a href="" rel="">doSetCreatureNick(cid, nick)</a></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">Função: Muda nome da criatura especificada</span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">[ALL] <a href="" rel="">doCreateMonsterNick(MonsterName, nick, position)</a></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">Função: Cria uma criatura com nome diferente</span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">[ALL] <a href="" rel="">doCreatureCastSpell(cid, spellname)</a></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">Função: Faz criatura executar uma spell</span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<strong><span style="font-size:20px;">Creaturescripts</span></strong></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">[ALL] <a href="" rel="">onMove(...</a>)</span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">Função: Sempre que mover algum item, ele é executado</span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">[0.3.6] <a href="" rel="">onSpawn(cid)</a></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">Função: Executa sempre que uma criatura aparece</span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">[ALL] <a href="" rel="">onOpenContainer(cid, item)</a></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">Função: Executa sempre que abrir algum container</span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<strong><span style="font-size:20px;">Features:</span></strong></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">[ALL] <a href="" rel="">Teleport Summon</a></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">Função: Quando summon se distânciar 6 SQM's de distância, summon é teleportado para o lado do player</span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">[TFS 0.4] <a href="" rel="">Passive System</a></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">Função: Caso o monstro for passivo, ele só vai atacar o player, se o player atacar ele primeiro</span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">[ALL] <a href="" rel="">Ghost System</a></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">Função: Fazer criatura passar pelas paredes</span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">[ALL] <a href="" rel="">Heal Color</a></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">Função: Muda a cor de heal padrão do server</span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">[ALL] <a href="" rel="">Monster Level</a></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">Função: Adicionar level system nos monstros</span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">[ALL] <a href="" rel="">Auto Stacking Items</a></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">Função: Sempre que por um item stackable no mesmo lugar, ele se junta</span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">[ALL] <a href="" rel="">Extended Limit Effects</a></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">Função: Aumenta o limite padrão (256) para um valor muito maior!</span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">[ALL] <a href="" rel="">Player canWalkthrough</a></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-size:16px;">Função: Player pode passar por cima de player</span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-family:'times new roman', times, serif;"><span style="font-size:16px;">Pronto! </span></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	<span style="font-family:'times new roman', times, serif;"><span style="font-size:16px;">A maioria dos links que eu acho interessante, eu já coloquei, ainda tenho outros links, só que são de outros fóruns, pretendo trazer o conteúdo pra o XTibia e irei atualizar o tópico com o tempo!</span></span></p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
<p>
</p>
<p style="text-align:center;"></p>
<p>
	 </p>
<p> </p>
<p> </p>
]]></description><guid isPermaLink="false">241051</guid><pubDate>Sat, 11 Jun 2016 11:20:16 +0000</pubDate></item><item><title>Aula de algoritmo</title><link>https://xtibia.com/forum/topic/240196-aula-de-algoritmo/</link><description><![CDATA[
<p><em><strong>Olá, eu decidi fazer esse tutorial para ajudar as pessoas ter uma logica de programação. Eu estou cursando analise e desenvolvimento de sistema, estou no primeiro período, então eu não manjo muito, mas oque eu sei já serve de alguma coisa.  Quem nunca programou, Aconselho fazer download de um interpretador muito bom chamado "UAL". Pois o UAL é um interpretador que interpreta uma Pseudolinguagem como o PORTUGOL e o ILA. muito útil para quem quer começar a programar em C e C++. </strong></em></p>
<p> </p>
<p><em><strong>Vou ensinar algo bem importante: A base para o aprendizado de qualquer programador, a lógica de programação.</strong></em></p>
<p><em><strong>Vamos nos aprofundar na estruturação e construção de um algoritmo agora.</strong></em></p>
<p> </p>
<p><em><strong>Considere o seguinte o problema.</strong></em></p>
<p>Você, como qualquer ser humano normal, esquece constantemente de pagar contas e, por isso, resolve acabar com esse problema desenvolvendo um programa para auxiliá-lo no cálculo dos juros. para isso, é necessário ler o valor da prestação que deveria ter sido paga e o valor dos juros para calcular o novo valor, correto ?</p>
<p>No <strong>primeiro momento</strong><em>, </em>é necessário<em> compreender o problema; os dados que serão processados e qual a sua origem; compreender o que deve ser feito e qual o conteúdo do dado de informação (Saída). Para o exemplo apresentado, podemos identificar o seguinte:</em></p>
<p> </p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<p><span style="font-size:18px;"><strong>1 - <span style="font-size:14px;">As informações serão digitadas, sendo compostas por dois dados numéricos: O valor da prestação e o valor do juros.</span></strong></span></p>
<p><span style="font-size:18px;"><strong>2 - <span style="font-size:14px;">O algoritmo deverá calcular o novo valor da conta, já que com os juros, que também será valor numérico.</span></strong></span></p>
<p><span style="font-size:18px;"><strong>3 - <span style="font-size:14px;">O algoritmo deverá mostrar o novo valor em tela (Saída).</span></strong></span></p>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
<p><em><span style="color:#000000;">No <strong>segundo momento</strong>, é necessário identificar as operações e ações a serem executadas sobre os dados para obter o resultado final. Vamos estruturar:</span></em></p>
<p> </p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<p><strong>- Entradas e saídas de dados;</strong></p>
<p><strong>- Variáveis e constantes necessárias;</strong></p>
<p><strong>- Cálculos;</strong></p>
<p><strong>- Decisões através de comparações;</strong></p>
<p><strong>- Ciclos ou repetições. </strong></p>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
<p><span style="color:#ff0000;"><strong><em>Obs:</em></strong></span></p>
<p> </p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<p><strong>São necessárias duas operações de entrada de dados, uma para ler o valor da conta e uma para ler o valor do juros.</strong></p>
<p> </p>
<p><strong>É necessário realizar um processamento para calcular juros e acrescer este valor na conta.</strong></p>
<p> </p>
<p><strong>É necessária uma operação de saída para apresentar o novo valor da conta.</strong> </p>
</div>
</div>
<p> </p>
<p> </p>
<p><em>Agora vamos escolher uma linguagem a ser utilizada para estruturar a sequência de execução das ações conforme a necessidade da linguagem. exemplo, <strong>linguagem natural</strong>:</em> </p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<p>1. Início</p>
<p>2. Obtenha o valor da conta</p>
<p>3. Obtenha o índice de juros</p>
<p>4. Multiplique o índice de juros pelo valor da conta</p>
<p>5. Some o valor dos juros ao valor da conta</p>
<p>6. Exiba o novo valor da conta</p>
<p>7. Fim</p>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
<p><em><strong>Exemplo de como ficaria no UAL:</strong></em></p>
<p> </p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<p> </p>
<p><em><strong>Algoritmo</strong></em></p>
<pre class="ipsCode prettyprint">
prog juros
real conta, juros, valorJuros, novoValor;
leia conta;
leia juros;
valorJuros &lt;- conta * juros;
novoValor &lt;- valorJuros + conta;
imprima novoValor;
fimprog
</pre>
<p><em><strong>Explicação</strong></em></p>
<pre class="ipsCode prettyprint">
DADOS DE ENTRADA
Quantidade:2                Nomes: conta,juros
Tipos:real, real

Dados Intermediários
Quantidade:2                Nomes: valorJuros, NovoValor
tipos: real, real

Procedimento
1. Obter conta e juros
2. valorJuros &lt;- conta*juros             "&lt;-" Comando de atribuição para aquela variável
3. Exibir novo Valor
</pre>
<p>Atenção, o comando "leia" é para ler a entrada de dados, então, precisamos entrar com dados que não seja inteiro(<strong>int</strong>), e nem <strong>strings</strong> ( caracteres, letras ), tem q ser fracionário. por isso usamos o tipo <strong>real</strong> pois são números fracionários. </p>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
<p><em><strong>Agora olha como fica no C++</strong></em></p>
<p> </p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<p><em><strong>Algoritmo</strong></em></p>
<pre class="ipsCode prettyprint">
#include &lt;iostream&gt;
using namespace std;

int main() {
   float conta, juros, valorJuros, novoValor;
   cin &gt;&gt; conta;
   cin &gt;&gt; juros;
   valorJuros = conta * juros;
   novoValor = valorJuros + conta;
   cout &lt;&lt; novoValor;

}
</pre>
<p><strong><em>Comparação</em></strong></p>
<pre class="ipsCode prettyprint">
Comandos do UAL e do c++
     --------------------
       UAL    e   C++
       Prog   |   int main
       real   |   float
       leia   |   cin
       imprima |  cout
      -------------------
O comando de atribuição no UAL é "&lt;-" e no c++ é "=".
</pre>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
<p> </p>
<p><em>Se gostarem eu darei continuidade <img src="https://cdn.xtibia.com/emoticons/wink.png" alt=";)" />      Flw galerinha</em></p>
<p> </p>
<p> </p>
<p> </p>
]]></description><guid isPermaLink="false">240196</guid><pubDate>Mon, 04 Apr 2016 21:47:50 +0000</pubDate></item><item><title>Compilando TFS 0.4 no Linux</title><link>https://xtibia.com/forum/topic/239213-compilando-tfs-04-no-linux/</link><description><![CDATA[
<p><em><strong>Fala galera, eu estava com problema na compilação do TFS 0.4 no linux, pois não achava nenhum tutorial sobre... Eu consegui uma SUPER AJUDA ESPECIAL de um membro aqui chamado <a href="https://xtibia.com/forum/user/145911-fireelement/" rel=""><span style="color:#ff0000;">@Fir3element</span></a>, esse cara me ajudou demais, tanto na liberação da source TFS 0.4 rev 3777 com suporte a MSVC quanto na compilação em Linux.</strong></em></p>
<p> </p>
<p><em><strong>Bom, chega de enrolação e vamos ao que interessa.</strong></em></p>
<p> </p>
<p><em><strong>Eu usei o Ubuntu 12.04 64 bits, TFS 0.4 rev3777 do Fir3element.</strong></em></p>
<p> </p>
<p><em><strong>Todos os Downloads estarão no final do tópico.</strong></em></p>
<p> </p>
<p> </p>
<p><span style="color:#FF0000;"><strong>Let's go!!!!</strong></span></p>
<p> </p>
<p> </p>
<p><span style="color:#ff0000;"><strong>1º - Liberar root</strong></span></p>
<p> </p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<p><strong>Abra o terminal e digite:</strong></p>
<pre class="ipsCode prettyprint">
sudo su
</pre>
<p><strong>Digite a senha do seu usuário do ubuntu.</strong></p>
<p> </p>
<p><strong>Pronto, acesso root liberado para usar os comandos!</strong></p>
<p> </p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents"><p><img src="http://i65.tinypic.com/eqsdac.png" alt="eqsdac.png" /></p></div>
</div>
<p> </p>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
<p><span style="color:#ff0000;"><strong>2º - Instalando as LIBs do TFS</strong></span></p>
<p> </p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<p><strong>Digite o seguinte:</strong></p>
<pre class="ipsCode prettyprint">
apt-get install autoconf build-essential pkg-config automake libboost-all-dev libgmp3-dev libxml2-dev liblua5.1-0-dev libmysqlclient-dev libssl-dev libsqlite3-dev
</pre>
<p><strong>Vai perguntar se quer continuar, digite "y" ou "s" dependendo do idioma da máquina. Pode demorar um pouquinho.</strong></p>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
<p><span style="color:#ff0000;"><strong>3º - Passe o arquivo 3777-master.rar para a raiz(file system ou sistema de arquivos)</strong></span></p>
<p> </p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<p><strong>Execute o seguinte comando:</strong></p>
<pre class="ipsCode prettyprint">
apt-get install unrar
</pre>
<p><strong>Ele vai instalar um descompactador(igual o Winrar), e agora é possível você extrair a source. Extraia a mesma dentro do File System(raiz).</strong></p>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
<p><span style="color:#ff0000;"><strong>4º - Vamos começar o processo de compilação.</strong></span></p>
<p> </p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<p><strong>Digite:</strong></p>
<pre class="ipsCode prettyprint">
cd /3777-master
</pre>
<pre class="ipsCode prettyprint">
chmod -R 777 src
</pre>
<pre class="ipsCode prettyprint">
cd src
</pre>
<pre class="ipsCode prettyprint">
./autogen.sh
</pre>
<pre class="ipsCode prettyprint">
./configure --enable-mysql --enable-root-permission --enable-server-diag
</pre>
<pre class="ipsCode prettyprint">
./build.sh</pre>
<p><strong>Pronto, seu TFS 0.4 está sendo compilado para o Linux.</strong></p>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
<p><span style="color:#ff0000;"><strong>5º - O arquivo executável, estará localizado dentro da pasta src, chamado "theforgottenserver" sem nenhuma extensão.</strong></span></p>
<p> </p>
<p><span style="color:#ff0000;"><strong>Para usá-lo, coloque-o na pasta de seu server, abra o terminal e digite o seguinte:</strong></span></p>
<p> </p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p> </p>
<pre class="ipsCode prettyprint">
cd /NOME DA PASTA
</pre>
<pre class="ipsCode prettyprint">
./theforgottenserver
</pre>
<p><strong>E pronto.</strong></p>
<p><strong>Para finalizá-lo, abra um novo terminal e digite:</strong></p>
<pre class="ipsCode prettyprint">
killall theforgottenserver
</pre>
<p><strong>Pronto <img src="http://www.tibiaking.com/forum/uploads/emoticons/default_happy.png" title="^^" alt="default_happy.png" /></strong></p>
<p> </p>
</div>
</div>
<p> </p>
<p> </p>
<p><strong>Pronto galera, Tutorial testado e aprovado por mim(<span style="color:#FF0000;">Sekk</span>)</strong></p>
<p> </p>
<p><span style="font-size:16px;"><span style="color:#0000FF;"><strong>Downloads:</strong></span></span></p>
<p><strong><span style="color:#FF0000;">Ubuntu 12.04</span> - <a href="http://releases.ubuntu.com/12.04.5/" rel="external nofollow">http://releases.ubuntu.com/12.04.5/</a> (Não postarei scan pois é do site oficial do Ubuntu.)</strong></p>
<p><strong><span style="color:#FF0000;">Source TFS 0.4 rev3777</span> - </strong><strong><a href="https://github.com/Fir3element/3777/archive/master.zip" rel="external nofollow">https://github.com/Fir3element/3777/archive/master.zip</a></strong></p>
<p><strong><span style="color:#FF0000;">Scan da source</span> - <a href="https://www.virustotal.com/pt/file/4ad91b1993200dde9a5c77d2b99a1e8d80158bc95f0a6b3fb857e60eaab6fa0a/analysis/1454367244/" rel="external nofollow">https://www.virustotal.com/pt/file/4ad91b1993200dde9a5c77d2b99a1e8d80158bc95f0a6b3fb857e60eaab6fa0a/analysis/1454367244/</a></strong></p>
<p> </p>
<p><strong>Créditos TOTAIS:</strong></p>
<p><a href="https://xtibia.com/forum/user/145911-fireelement/" rel=""><span style="color:#ff0000;"><strong>@</strong></span></a></p>
]]></description><guid isPermaLink="false">239213</guid><pubDate>Mon, 01 Feb 2016 23:07:24 +0000</pubDate></item><item><title>Aumentando o ShootEffect  /x</title><link>https://xtibia.com/forum/topic/239670-aumentando-o-shooteffect-x/</link><description><![CDATA[
<p style="text-align:center;">
	CONTEÚDO REMOVIDO: AGORA VOCÊ VAI TER QUE TER CRIATIVIDADE OU SE PENDURAR-SE NAS COSTA DE ALGUÉM, MENOS NA MINHA <img alt=";)" data-emoticon="" src="https://cdn.xtibia.com/emoticons/wink.png" title=";)" />  - BOA SORTE!
</p>

<div style="background-color:#ffffff;color:#212121;font-size:0px;text-align:left;">
	<pre dir="ltr" style="background-color:transparent;border:none;color:#212121;font-size:29px;padding:0px .14em 0px 0px;text-align:center;">
<span lang="en" xml:lang="en">error 404 - I do not serve the forum I retired. </span></pre>
</div>
]]></description><guid isPermaLink="false">239670</guid><pubDate>Tue, 01 Mar 2016 15:28:47 +0000</pubDate></item><item><title>Vamos Programar? - Introdu&#xE7;&#xE3;o</title><link>https://xtibia.com/forum/topic/238286-vamos-programar-introdu%C3%A7%C3%A3o/</link><description><![CDATA[
<p style="text-align:center;"><span style="font-size:24px;"><span style="font-family:georgia, serif;"><strong>Vamos Programar?</strong></span></span></p>
<p> </p>
<p><span style="font-size:18px;"><span style="font-family:georgia, serif;"><strong>Introdução</strong></span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">Olá, pessoal.</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">Acredito que ninguém aqui me conheça, mas sou Oneshot, ou Bruno Lopes, um programador por passatempo. Desenvolvi muitos trabalhos para fóruns em geral, principalmente o XTibia, até que levei uma flecha no joelho...</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">... Brincadeiras a parte, eu gostaria muito de voltar a escrever tutoriais e quem sabe desenvolver novos recursos para a comunidade, depende muito do meu tempo disponível.</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">Para essa primeira parte do tutorial, eu gostaria de tratar de um assunto que é subestimado por muitos... Não, eu não vou falar de lógica da programação, de Lua, ou de C++... eu vou falar sobre o editor de texto, a principal ferramenta de um programador.</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">Muitos aqui, provavelmente começam sua vida de scripter utilizando o Notepad++ no Windows, ou talvez um gedit em alguns flavors do Linux, talvez até o vim, se você for muito hardcore</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">Eu já usei vários editores de texto, e ultimamente tenho recomendado um editor de texto excelente, desenvolvido pela equipe do Github, chamado Atom. Eu poderia muito bem fazer deste tópico, um comparativo entre os editores de texto e até alguns IDEs (ou Integrated Development Environment), mas vou fazer deste, um tutorial para configuração do Atom e espero que vocês gostem.</span></span></p>
<p> </p>
<p><span style="font-size:18px;"><span style="font-family:georgia, serif;"><strong>Atom</strong></span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">Atom, conforme o criador, é um editor de texto totalmente personalizável, você pode editar todos os tipos de configurações dentro dele, mas também se não quiser, não é necessário.</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">E acho que esse é o diferencial do Atom, existem muitos plugins de excelente qualidade, e você não vai precisar usar ele só para programar Lua, pode usar ele em um monte de sintaxes diferentes e se ele não tiver uma sintaxe, basta baixar um plugin que certamente existirá com a sintaxe, snippets (trechos de código pré-configurados), entre outros.</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">Você vai baixar o Atom no site deles, <a href="http://atom.io/" rel="external nofollow">http://atom.io/</a>, no momento que escrevo esse artigo/tutorial, estou no Windows 10 (Ao invés do Fedora), então veja abaixo: </span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;"><img src="http://i.imgur.com/TP2jXCg.png" alt="TP2jXCg.png" /></span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">Depois de baixar o instalador para sua plataforma (Ele está disponível para Windows, Linux e Mac), basta instalar o aplicativo, conforme os padrões do seu sistema (Next, Next, Next no Windows e por aí vai)</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">Depois disso o Atom é apresentado da seguinte forma:</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;"><img src="http://i.imgur.com/MzzPKct.png" alt="MzzPKct.png" /></span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">Não tão dessa forma... estou com o tema da interface Seti-UI.</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">Se você for curioso, pode então ler a <a href="https://atom.io/docs" rel="external nofollow">documentação</a> do Atom, e eu recomendo, pois você vai aprender muito lá, e se tiver noções de programação, já poderá aprender a personalizar seu Atom.</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">Vamos baixar alguns plugins, para isso você pode ir no menu <strong>Packages &gt; Settings View &gt; Install Packages/Themes </strong>ou pressionar <strong>Ctrl+Shift+P</strong> (No caso do Windows), digitar <strong>Install </strong>e escolher a opção, e eu uso muito essa segunda forma:</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;"><img src="http://i.imgur.com/zLUqJ7P.png" alt="zLUqJ7P.png" /></span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">No menu que irá abrir, você pode procurar diversos plugins e temas, na página inicial ele mostra os plugins em destaque:</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;"><img src="http://i.imgur.com/5dRRHGC.png" alt="5dRRHGC.png" /></span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">Daqui não tem segredo, pesquise o nome do plugin, ele vai aparecer e então clique em Install, abaixo deixo alguns plugins que eu uso, e nem todos são voltados para Open Tibia.</span></span></p>
<p> </p>
<ul><li>
<span style="font-size:14px;"><span style="font-family:georgia, serif;"><strong>Plugins</strong></span></span><ul><li><span style="font-size:14px;"><span style="font-family:georgia, serif;"><strong>​</strong>Open Recent - Abre arquivos recentes</span></span></li>
<li><span style="font-size:14px;"><span style="font-family:georgia, serif;">Minimap - Mostra um minimapa com todo o código do arquivo</span></span></li>
<li><span style="font-size:14px;"><span style="font-family:georgia, serif;">Highlight Selected - Quando você seleciona uma palavra, ele seleciona todas as ocorrências</span></span></li>
<li><span style="font-size:14px;"><span style="font-family:georgia, serif;">Pigments - Voltado para Front-End, mostra a cor de um código hexadecimal de um arquivo CSS</span></span></li>
<li><span style="font-size:14px;"><span style="font-family:georgia, serif;">Linter* - Uma função muito presente em IDEs, que mostra algum erro no código, como um ';' faltando</span></span></li>
<li><span style="font-size:14px;"><span style="font-family:georgia, serif;">Auto-Detect-Indentation - Detecta a indentação de um arquivo e configura a indentação do seu TAB automaticamente)</span></span></li>
<li><span style="font-size:14px;"><span style="font-family:georgia, serif;">Atom-Beautify - Um "embelezador" de código</span></span></li>
<li><span style="font-size:14px;"><span style="font-family:georgia, serif;">Emmet - Para front-ends preguiçosos.</span></span></li>
<li><span style="font-size:14px;"><span style="font-family:georgia, serif;">language-lua - Para adicionar a sintaxe Lua no atom</span></span></li>
</ul></li>
<li>
<span style="font-size:14px;"><span style="font-family:georgia, serif;">​<strong>Temas</strong></span></span><ul><li><span style="font-size:14px;"><span style="font-family:georgia, serif;"><strong>​</strong>Seti-UI - Um excelente tema com ícones para cada tipo de arquivo.</span></span></li>
<li><span style="font-size:14px;"><span style="font-family:georgia, serif;">Atom-Monokai - Um tema de sintaxe bem parecido com o Sublime.</span></span></li>
</ul></li>
</ul><p><span style="font-size:14px;"><span style="font-family:georgia, serif;">E tem muitos outros plugins excelentes... No caso do Linter, você precisa baixar o plugin principal, e então o plugin secundário para a linguagem que você pretende utilizar (Não sei se existe um Linter para Lua)</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">Depois disso, você pode ir na opção <strong>Themes </strong>e mudar o tema de interface e de sintaxe:</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;"><img src="http://i.imgur.com/cJybv8v.png" alt="cJybv8v.png" /></span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">E por último, mudar algumas configurações a seu gosto:</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;"><img src="http://i.imgur.com/7w7cMeu.png" alt="7w7cMeu.png" /></span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">Cada configuração tem sua explicação em inglês.</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">Esse é o Atom, configurado com os plugins do tutorial, com sintaxe Lua, a linha branca cruzando o arquivo é um separador que delimita 80 caracteres e quebra o código que passar disso, dando mais legibilidade.</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;"><img src="http://i.imgur.com/ttAXkSb.png" alt="ttAXkSb.png" /></span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">E o mais legal é que o Atom tem um modo de identificar funções diferente do Notepad++, então ele identifica até as funções Open Tibia no seu código.</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;"><img src="http://i.imgur.com/SIOfonV.png" alt="SIOfonV.png" /></span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">Legal, né?</span></span></p>
<p> </p>
<p><span style="font-size:18px;"><span style="font-family:georgia, serif;"><strong>Conclusão</strong></span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">Bom, é isso aí, esssa foi a primeira parte de uma sequência de tutoriais que pretendo fazer quando tiver tempo livre, afinal não consigo largar o Open Tibia.</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">Espero que gostem.</span></span></p>
<p> </p>
<p><span style="font-size:14px;"><span style="font-family:georgia, serif;">Abraços.</span></span></p>
]]></description><guid isPermaLink="false">238286</guid><pubDate>Sat, 12 Dec 2015 16:28:18 +0000</pubDate></item><item><title>Colet&#xE2;nea De Tutoriais De Programa&#xE7;&#xE3;o Open Tibia</title><link>https://xtibia.com/forum/topic/111007-colet%C3%A2nea-de-tutoriais-de-programa%C3%A7%C3%A3o-open-tibia/</link><description><![CDATA[
<p><strong><span style="color:#008000;"><span style="font-size:14px;">Coletânea de Tutoriais de Programação Open Tibia</span></span></strong><br /><br />Todos os tutoriais não obsoletos da seção estão aqui.<br />Se tem mais na seção é porque serão movidos.<br /><br /><br /><span style="font-size:12px;"><strong><span style="color:#FF0000;">Compilação Windows</span></strong></span></p>
<p><strong><span style="color:#008000;">[X]</span></strong> <a href="https://xtibia.com/forum/topic/90003-tutorial-decente-de-como-se-compilar-um-otserv/" rel=""><span>Tutorial Decente De Como Se Compilar Um Otserv</span></a><br /><strong>~&gt;</strong> <a href="https://xtibia.com/forum/topic/89173-aprenda-a-compilar-o-the-forgotten-server/" rel="">Aprenda A Compilar O The Forgotten Server!</a></p>
<br /><br /><p> </p>
]]></description><guid isPermaLink="false">111007</guid><pubDate>Fri, 10 Apr 2009 14:36:02 +0000</pubDate></item><item><title>(Tutorial) Cliente Pr&#xF3;prio Sem .spr</title><link>https://xtibia.com/forum/topic/168502-tutorial-cliente-pr%C3%B3prio-sem-spr/</link><description><![CDATA[
<p><span style="font-family:'Comic Sans MS';"><span style="color:#000000;"><span style="font-size:12px;">Para fazer seu client você vai precisar:</span></span></span></p>
<p><span style="font-family:'Comic Sans MS';"><span style="color:#000000;"><span style="font-size:12px;"> </span></span></span></p>
<p><span style="font-family:'Comic Sans MS';"><span style="color:#000000;"><span style="font-size:12px;">1º Cliente (Pode ser qualquer Client Wodbo - Tibia - Naruto - Pokemon)</span></span></span></p>
<p><span style="font-family:'Comic Sans MS';"><span style="color:#000000;"><span style="font-size:12px;">2º MoleBox (</span></span></span><a href="http://www.baixaki.com.br/download/molebox.htm" rel="external nofollow"><span style="font-family:'Comic Sans MS';"><span style="color:#000000;"><span style="font-size:12px;">Download</span></span></span></a><span style="font-family:'Comic Sans MS';"><span style="color:#000000;"><span style="font-size:12px;">)</span></span></span></p>
<p><span style="font-family:'Comic Sans MS';"><span style="color:#000000;"><span style="font-size:12px;"> </span></span></span></p>
<p><span style="font-family:'Comic Sans MS';"><span style="color:#000000;"><span style="font-size:12px;"> </span></span></span></p>
<p><span style="font-family:'Comic Sans MS';"><span style="color:#000000;"><span style="font-size:12px;">Obs: NÂO TEM COMO BLOQUEAR PARA NINGUEM COPIAR SUAS SPRITES! Existem Vários programas que desfazem essa Compilação.</span></span></span></p>
<p><span style="font-family:'Comic Sans MS';"><span style="color:#000000;"><span style="font-size:12px;"> </span></span></span></p>
<p><span style="font-family:'Comic Sans MS';"><span style="color:#000000;"><span style="font-size:12px;">Agora vou mostra um exemplo compilando o tíbia 8.6 </span></span></span></p>
<p><span style="font-family:'Comic Sans MS';"><span style="color:#000000;"><span style="font-size:12px;"> </span></span></span></p>
<p><span style="font-family:'Comic Sans MS';"><span style="color:#000000;"><span style="font-size:12px;">Tutorial em Imagens!</span></span></span></p>
<p> </p>
<p> </p>
<p> </p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;">Abra o Molebox</span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;">Entre em Package Options</span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents"><p><img src="http://img34.imageshack.us/img34/7453/molebox1.png" alt="molebox1.png" /></p></div>
</div>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;">Em seguida selecione o executável do teu Cliente</span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents"><p><img src="http://img860.imageshack.us/img860/8150/molebox2.png" alt="molebox2.png" /></p></div>
</div>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;">No próximo passo selecione um local para salvar seu novo Cliente</span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents"><p><img src="http://img821.imageshack.us/img821/9215/molebox3.png" alt="molebox3.png" /></p></div>
</div>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;">Em seguida marque a opção "compress"</span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents"><p><img src="http://img839.imageshack.us/img839/5843/molebox9.png" alt="molebox9.png" /></p></div>
</div>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;">Pressione o botão "Add Files"</span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents"><p><img src="http://img695.imageshack.us/img695/5043/molebox4.png" alt="molebox4.png" /></p></div>
</div>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;">Selecione os Arquivos mostrados na imagem</span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents"><p><img src="http://img217.imageshack.us/img217/3589/molebox5.png" alt="molebox5.png" /></p></div>
</div>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;">Aperte OK</span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents"><p><img src="http://img28.imageshack.us/img28/7720/molebox6.png" alt="molebox6.png" /></p></div>
</div>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
</div>
</div>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;">Em seguida aperte "Pack"</span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents">
<p><img src="http://img688.imageshack.us/img688/3594/molebox7.png" alt="molebox7.png" /></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
</div>
</div>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;">Aguarde até que todos os arquivos sejam Compilados</span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<p><strong><span style="font-family:'Comic Sans MS';"><span style="color:#00BFFF;"><span style="font-size:12px;"> </span></span></span></strong></p>
<div class="ipsSpoiler" data-ipsspoiler="">
<div class="ipsSpoiler_header"><span></span></div>
<div class="ipsSpoiler_contents"><p><img src="http://img690.imageshack.us/img690/7342/molebox8.png" alt="molebox8.png" /></p></div>
</div>
<p><strong><span style="color:#00BFFF;"><span style="font-size:12px;">[/font]</span></span></strong><strong>[/size]</strong><strong>[/color]</strong><strong>[/font]</strong></p>
</div>
</div>
<p> </p>
<p> </p>
<p> </p>
<p> :star: <span style="font-family:'Comic Sans MS';"><span style="color:#4B0082;"><span style="font-size:12px;"><strong>CREDITOS</strong></span></span></span> :star:</p>
<p> </p>
<p> <span style="color:#000000;"><span style="font-size:12px;"><span style="font-family:'Comic Sans MS';"><strong>:star2: Jakiin :star2: </strong></span></span></span></p>
<p><span style="color:#000000;"><span style="font-size:12px;"><span style="font-family:'Comic Sans MS';"><strong> :star2: ADM Babidy  :star2: </strong></span></span></span></p>
]]></description><guid isPermaLink="false">168502</guid><pubDate>Sat, 24 Sep 2011 15:00:56 +0000</pubDate></item><item><title>[V&#xED;deo-Aula] Linha de Comando MySQL</title><link>https://xtibia.com/forum/topic/236582-v%C3%ADdeo-aula-linha-de-comando-mysql/</link><description><![CDATA[
<p style="text-align:center;">O vídeo é bem antigo, mas continua valendo.</p>
<p style="text-align:center;"><br /></p>
<p style="text-align:center;">Nesta vídeo-aula, explico os comandos básicos da sintaxe do Mysql, através da linha de comando.</p>
<p style="text-align:center;"><br /></p>
<p style="text-align:center;"></p>
<p>
</p>
<div class="ipsEmbeddedVideo"><div><iframe width="459" height="344" src="https://www.youtube.com/embed/GGUeS2TV50I?feature=oembed" frameborder="0" allowfullscreen="true"></iframe></div></div>
<p style="text-align:center;"><br /></p>
<p style="text-align:center;"><br /></p>
<p style="text-align:center;">Espero que possa ajudar alguém.</p>
<p style="text-align:center;"><br /></p>
]]></description><guid isPermaLink="false">236582</guid><pubDate>Wed, 02 Sep 2015 14:26:09 +0000</pubDate></item><item><title>[LINUX] Montando OTserver em Debian perfeito.</title><link>https://xtibia.com/forum/topic/233067-linux-montando-otserver-em-debian-perfeito/</link><description><![CDATA[
<p style="text-align:center;"><span style="font-size:24px;">Linux Debian 7.5</span></p>
<p>Porque Debian?</p>
<p>O sistema operacional Debian é bem mais leve que os outros atuais, por exemplo, eu estava utilizando, <strong>Ubuntu Server 14.04 64bits</strong> e migrei pra <strong>Debian 7.5 stable (wheezy)(64bits)</strong> o processamento da <strong>CPU</strong> caiu cerca de <strong>25%</strong> meu <strong>TFS</strong> está trabalhando mais tranquilo isso é maravilhoso pois algo que me atormentava muito era o exagero de alto processamento da <strong>CPU</strong>. Claro que teve varias outras melhorias, porém vou deixa como destaque principal essa do processamento que ficou bem mais leve.</p>
<p> </p>
<p><span style="font-size:12px;"><strong>Downloads necessarios:</strong></span><br /><strong><a href="http://ip.da.maquina/phpmyadmin" rel="external nofollow">http://ip.da.maquina/phpmyadmin</a> acesse seu phpmyadmin usando user: root e a senha é a que você botou na instalação do mysql, crie o seu banco de dados e vamos já upa a database....<br /><br />Via ftp na pasta var/www/ renomeie usando o f2 o nome da pasta phpmyadmin para outro nome, qualquer um, eu particularmente sempre boto outros nomes, não deixo phpmyadmin, exemplo, 65fs98a97ds56aq.<br /><br />Upando a database, usando o shell vamos para a pasta onde se encontra o seu banco de dados, que enviamos via ftp, no caso, a pasta home:</strong></p>
<pre class="ipsCode prettyprint">
cd /home</pre>
<p><span style="color:rgb(255,0,0);"><strong>psenha</strong> <em>Ae você bota a senha do seu mysql se você não sabe entre em contato com quem você alugou seu dedicado.</em></span></p>
<pre class="ipsCode prettyprint">
mysql -u root -psenha</pre>
<p><span style="color:rgb(255,0,0);"><em>No comando abaixo você bota o nome da sua database que criamos agora pouco na web.</em></span></p>
<pre class="ipsCode prettyprint">
USE seubancodedados</pre>
<p><em>Aqui você bota o nome do arquivo.sql que enviamos por ftp:</em></p>
<pre class="ipsCode prettyprint">
source arquivo.sql</pre>
<p>Só esperar finalizar após concluir ok, database upada pode conferir pelo seu navegador de internet como todas as tabelas estarão la do jeito que você configurou no windows.</p>
<p> </p>
<p>Galera ai o resto vocês já sabem sobre o config.lua,dados da database, senha, ip, rates, feito isso vamos pro site.</p>
<p> </p>
<p>Via ftp acesse sua pasta htdocs selecione todos os arquivos dentro dela e mande para a pasta var/www, quando concluir apenas altere o a seguinte arquivo, config.ini, em server path, altere, no caso ali o nome da pasta do meu OT é otserver:</p>
<div>
<pre class="ipsCode prettyprint">
install = "no"
server_path = "/home/otserver/"
signatures = "0"</pre>
<p>Se tiver feito até agora tudo certo, o seu site vai estar funcionando perfeitamente.</p>
<p> </p>
<p>Go go go!</p>
</div>
<p>Você já testou o server em sua casa, configurou a pasta data utilizando a mesma REV, pronto enviar a pasta via ftp substituindo a pasta que existe la. Feito isso vamos para o shell acesse a pasta do ot:</p>
<pre class="ipsCode prettyprint">
cd /home/otserver./theforgottenserver</pre>
<p><span style="color:rgb(255,0,0);">Se aparecer algo bla bla </span><strong>(Y or N?)</strong><span style="color:rgb(255,0,0);"> digita </span><strong>Y</strong><span style="color:rgb(255,0,0);"> e da enter.</span><br /><br />Ai vai abri normalmente aparece carregando o server se der algum erro vai dizer pra quem sabe ler vai ser moleza!<br />Abriu o server entrou com seu god testou tudo ok, feche o server, ctrl+c, agora vamos abrir o server oficial pra não cair e poder fechar o shell sem cair o ot.</p>
<p>Vamos nós, no shell volte para o root usando:<br /><br /><em><span style="color:rgb(255,0,0);">Até voltar ao root:</span></em></p>
<pre class="ipsCode prettyprint">
cd /</pre>
<p><em>Vamos adicionar um usuario:</em></p>
<pre class="ipsCode prettyprint">
adduser tfs</pre>
<p>No caso ai o nome do usuário que estou adicionando é tfs, pode ser otserver, seu nome, você escolhe, quando você executa o comando vai pedi uma senha bote mesma da sua maquina da enter vai pedi seu nome pais e talz bota nada não só da enter ate finalizar o processo feito isso, OK.</p>
<p> </p>
<p>Agora baixe esse arquivo em seu computador extraia ele e envia por ftp para a pasta home/otserver:</p>
<p> </p>
<p><strong><span style="color:rgb(0,0,255);"><a href="https://www.mediafire.com/?0be0tt4pzh5wbdb" rel="external nofollow">TFS.SH</a></span></strong></p>
<pre class="ipsCode prettyprint">
cd /home/otserverchmod 777 -R tfs.sh</pre>
<p>Feito né? Ok agora vamos abrir o OT pra ele não fechar e quando ele cair por algum erro ele volta sozinho. Em root utilizando o shell execute os comandos:<br /><br /><span style="color:rgb(255,0,0);"><em>Isso indica que você esta utilizando o usuario tfs:</em></span></p>
<pre class="ipsCode prettyprint">
su tfs</pre>
<pre class="ipsCode prettyprint">
cd /home/otserver</pre>
<pre class="ipsCode prettyprint">
./theforgottenserver.sh&amp;</pre>
<p>Ai ele começa a carrega normal e pronto THE END.</p>
<p> </p>
<p><span style="font-family:arial, helvetica, sans-serif;"><span style="color:rgb(51,51,51);">Caso queria fechar o server:</span></span></p>
<pre class="ipsCode prettyprint">
su tfs</pre>
<pre class="ipsCode prettyprint">
cd /home/otserver</pre>
<pre class="ipsCode prettyprint">
ps x</pre>
<p><span style="font-family:arial, helvetica, sans-serif;"><span style="color:rgb(51,51,51);">Vai aparece uma lista de coisas abertas e cada uma com o numero do processo:</span></span><br /><br /><img src="http://imageshack.com/a/img829/250/hg4r.png" alt="hg4r.png" /><br /><br /><span style="font-family:arial, helvetica, sans-serif;"><span style="color:rgb(51,51,51);">Pra fechar o server vai ter que mata dois processo, o bash e o tfs, ambos com interrogação do lado veja que tem dois bash killa somente o com a interrogação(?).<br />Sempre primeiro o bash:</span></span></p>
<pre class="ipsCode prettyprint">
kill -9 21748</pre>
<p><span style="font-family:arial, helvetica, sans-serif;"><span style="color:rgb(51,51,51);">Depois o server:</span></span></p>
<pre class="ipsCode prettyprint">
kill -9 21750</pre>
<p><span style="font-family:arial, helvetica, sans-serif;"><span style="color:rgb(51,51,51);">Pronto.</span></span></p>
<p> </p>
<p>Recomendo para a proteção do seu site:<br /><a href="http://www.faqforge.com/linux/prevent-dos-attacks-on-apache-webserver-for-debian-linux-with-mod_evasive/" rel="external nofollow">Prevent DOS attacks on apache webserver for DEBIAN linux with mod_evasive</a></p>
]]></description><guid isPermaLink="false">233067</guid><pubDate>Mon, 13 Apr 2015 00:48:52 +0000</pubDate></item><item><title>[2015] Compilando o (TFS) 0.4_SVN DEV_r3884 e 0.3.6 (8.60) 32 Bits Testado no WIN7</title><link>https://xtibia.com/forum/topic/234468-2015-compilando-o-tfs-04_svn-dev_r3884-e-036-860-32-bits-testado-no-win7/</link><description><![CDATA[
<p> Primeiro abre o compilador<img src="http://i.imgur.com/tnDySfh.png" alt="tnDySfh.png" /></p>
<p>vai ta assim depois abri o devcpp<img src="http://i.imgur.com/EB3v2hK.png" alt="EB3v2hK.png" /></p>
<p><img src="http://i.imgur.com/8YsDV3p.png" alt="8YsDV3p.png" /></p>
<p>Agora vai aparece uma janela assim</p>
<p><img src="http://i.imgur.com/7Wmzp80.png" alt="7Wmzp80.png" /></p>
<p>Depois se vai da CTRL + O</p>
<p> </p>
<p>ou clica nesse icone:</p>
<p><img src="http://i.imgur.com/wkSNJFE.png" alt="wkSNJFE.png" /></p>
<p> </p>
<p>Ai depois de ter descompactado a source de .rar para .arquivo você vai abri a source </p>
<p><img src="http://i.imgur.com/l1D1jRk.png" alt="l1D1jRk.png" /></p>
<p>vai vim </p>
<p><img src="http://i.imgur.com/c03Xa7I.png" alt="c03Xa7I.png" /></p>
<p><img src="http://i.imgur.com/fRNDvkv.png" alt="fRNDvkv.png" /></p>
<p> </p>
<p>E abrir</p>
<p> </p>
<p>depois que carregar você edita da sua preferencia em conhecimento em c++ e faça um bom uso.</p>
<p> </p>
<p>Depois clicke Nesse botão:</p>
<p><img src="http://i.imgur.com/MUDzMqi.png" alt="MUDzMqi.png" /></p>
<p> </p>
<p>Ou aperte CTRL + F9</p>
<p> </p>
<p>e espere compilar</p>
<p> </p>
<p>O arquivo .exe vai aparece em C:\Users\Seunome\Desktop\trunk.r3884\dev-cpp</p>
<p> </p>
<p>vai ta assim '<strong><span style="color:#008000;">TheForgottenServer</span></strong>'</p>
<p> </p>
<p> </p>
<p><strong><span style="color:#a52a2a;">Download do Compilador</span></strong>:</p>
<p> </p>
<p><strong><span style="color:#8b4513;">Samuel DEV C++</span></strong>: <a href="http://www.mediafire.com/download/iygsjids3tjoo7y/Samuel+Dev+C%2B%2B.rar" rel="external nofollow">http://www.mediafire.com/download/iygsjids3tjoo7y/Samuel+Dev+C%2B%2B.rar</a></p>
<p> </p>
<p> </p>
<p><strong><span style="color:#ff0000;">Download's das Sources</span></strong>:</p>
<p> </p>
<p><strong><span style="color:rgb(47,79,79);">trunk.r3884_SVN.rar</span></strong>: <a href="http://www.mediafire.com/download/sfrcx4ntof227b5/trunk.r3884_SVN.rar" rel="external nofollow">http://www.mediafire.com/download/sfrcx4ntof227b5/trunk.r3884_SVN.rar</a></p>
<p> </p>
<p><strong><span style="color:#ffd700;">trunk.0.3.6.rar</span></strong>: <a href="http://www.mediafire.com/download/qm1ywzcirtiwvqs/trunk.0.3.6.rar" rel="external nofollow">http://www.mediafire.com/download/qm1ywzcirtiwvqs/trunk.0.3.6.rar</a></p>
<p> </p>
<p><strong><span style="color:#0000ff;">Scan</span></strong>:</p>
<p> </p>
<p><strong><span style="color:#dda0dd;">Samuel DEV C++</span></strong>:<strong><span style="color:#dda0dd;"> </span></strong><a href="https://www.virustotal.com/pt/file/4fece7a13fffd3cbab6e61874fa213b2f90e8578685bb7ec6a5171af142f699d/analysis/1433403056/" rel="external nofollow">https://www.virustotal.com/pt/file/4fece7a13fffd3cbab6e61874fa213b2f90e8578685bb7ec6a5171af142f699d/analysis/1433403056/</a></p>
<p> </p>
<p><strong><span style="color:#800080;"><span style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;">trunk.0.3.6.rar</span></span></strong><span style="color:rgb(51,51,51);font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;">: </span><a href="https://www.virustotal.com/pt/file/f3fae1e49b247627ecd5f0697b6d56ce82332f5bd662b8ec1d3e40668278cd05/analysis/1433394020/" rel="external nofollow">https://www.virustotal.com/pt/file/f3fae1e49b247627ecd5f0697b6d56ce82332f5bd662b8ec1d3e40668278cd05/analysis/1433394020/</a></p>
<p> </p>
<p><strong><span style="color:#00ffff;"><span style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;">trunk.r3884_SVN.rar</span></span></strong><span style="color:rgb(51,51,51);font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;">: </span><a href="https://www.virustotal.com/pt/file/2015784032a1d2754b3f88671f73badca9cd82ecf8ed1e239f0bcf5f3d970942/analysis/1433395280/" rel="external nofollow">https://www.virustotal.com/pt/file/2015784032a1d2754b3f88671f73badca9cd82ecf8ed1e239f0bcf5f3d970942/analysis/1433395280/</a></p>
]]></description><guid isPermaLink="false">234468</guid><pubDate>Thu, 04 Jun 2015 07:26:49 +0000</pubDate></item><item><title>Devcpp E Code::blocks Para Tfs 0.4</title><link>https://xtibia.com/forum/topic/154599-devcpp-e-codeblocks-para-tfs-04/</link><description><![CDATA[
<p>Olá pessoal eu separei todas as libs para instalar manualmente o DevCpp e Code:: Blocks, de forma que, quando você precisar atualizar alguma LIB é começar fáceis e rápidos com a boa vontade de DevCpp ou Download Code::Blocks</p>
<p> </p>
<p>Começando com o DevCpp download</p>
<p><a href="http://depositfiles.com/files/sgvk08akf" rel="external nofollow">Devcpp-4.9.9.2 Download</a></p>
<p> </p>
<p>Ou Code::Blocks</p>
<p><a href="http://depositfiles.com/files/ryvdh799u" rel="external nofollow">Code::Blocks 10.05 Download</a></p>
<p> </p>
<p>In the case of the Code::Blocks, you'll have to download the Packman.exe to install in which case the DevCpp already comes installed Packman.exe!</p>
<p><a href="http://depositfiles.com/files/63djgihvy" rel="external nofollow">Packman.exe Download</a></p>
<p> </p>
<p>Bem, depois de baixar e instalar DevCpp de ir para a dir "C:\Dev-Cpp" e Packman.exe aberto é desinstalar todos os libs existentes</p>
<p> </p>
<p>Agora, se você baixou e instalou o Code::Blocks baixe o Packman.exe e extraia ele na pasta "C:\Arquivos De Programas\CodeBlocks\MinGW"</p>
<p> </p>
<p>Agora, se algum dos dois compiladores que você instalou, se você seguiu passo a passo corretamente, você pode simplesmente instalar as bibliotecas packman.exe basta abri-lo e instalar as bibliotecas irá agora fornecer o link de todas as libs abaixo</p>
<p><a href="http://depositfiles.com/files/o8jes968e" rel="external nofollow">Zlib_1.2.3.DevPak Download</a></p>
<p><a href="http://depositfiles.com/files/begiwddl5" rel="external nofollow">GMP_4.3.1.DevPak Download</a></p>
<p><a href="http://depositfiles.com/files/yh8o1hd8p" rel="external nofollow">LuaLib_5.1.4.DevPak Download</a></p>
<p><a href="http://depositfiles.com/files/0dotrjw3d" rel="external nofollow">Incov 1.9.2.DevPak Download</a></p>
<p><a href="http://depositfiles.com/files/e1g3mq97i" rel="external nofollow">LibSQLLite 3.6.19.DevPak Download</a></p>
<p><a href="http://depositfiles.com/files/q1xanuycu" rel="external nofollow">OpenSSL 0.9.8A.DevPak Download</a></p>
<p><a href="http://depositfiles.com/files/th3f578e0" rel="external nofollow">LibXML 2.7.3.DevPak Download</a></p>
<p><a href="http://depositfiles.com/files/4vls89b4j" rel="external nofollow">LibMySQL 6.0.2.DevPak Download</a></p>
<p><a href="http://depositfiles.com/files/96xcag6ej" rel="external nofollow">Crypto 5.6.0.DevPak Download</a></p>
<p><a href="http://depositfiles.com/files/wuoc1g4j3" rel="external nofollow">Boost 1.46.1.DevPak Download</a></p>
<p><a href="http://depositfiles.com/files/d0rl3xatu" rel="external nofollow">MinGW 4.4.0.DevPak Download</a></p>
]]></description><guid isPermaLink="false">154599</guid><pubDate>Mon, 04 Apr 2011 03:16:52 +0000</pubDate></item></channel></rss>
