Ir para conteúdo

grafit

Membro
  • Registro em

  • Última visita

Tudo que grafit postou

  1. Não testei local exstorage = 1499 local COST = 8 -- Valor necessário para tirar red local moeda = 2160 -- moeda que será removida local REMOVE_FRAGS = "yes" -- "yes" ou "no" // para retirar todos os frags local EFFECT = CONST_ME_YELLOW_RINGS -- efeito usado quando tirar o red local battle = true -- players deve estar sem battle (true or false) function onSay(cid, words, param, channel) if (exhaustion.check(cid, exstorage) == true) then doPlayerSendCancel(cid, "You are exhausted") return true end if battle == true and getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE then doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Você não pode tirar red skull com battle.") return TRUE end if getCreatureSkullType(cid) == SKULL_RED then local query = db.getResult("SELECT `premdays` FROM `accounts` WHERE `id` = " .. getPlayerAccountId(cid) .. ";") local points = query:getDataInt("premdays") if getPlayerItemCount(cid,moeda) >= COST then db.executeQuery("UPDATE `killers` SET `unjustified` = 0 WHERE `id` IN (SELECT `kill_id` FROM `player_killers` WHERE `player_id` = " .. getPlayerGUID(cid) .. ")") doCreatureSetSkullType(cid,0) doPlayerSendTextMessage(cid, 27, "Sua red skull foi removida!") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_MAGIC_RED) doPlayerSetSkullEnd(cid, 0, getPlayerSkullType(cid)) doPlayerRemoveItem(cid,moeda,COST) doSendMagicEffect(getPlayerPosition(cid), effect) doRemoveCreature(cid) else doPlayerSendCancel(cid, "Você precisa de " ..COST.. " crystal coins para remover a red skull.") end else doPlayerSendCancel(cid, "Você não está red skull.") end exhaustion.set(cid, exstorage, 30) if (query ~= nil) then query:free() end return TRUE end
  2. Vai ter que editar nas sources.. Solução: configmanager.cpp procure e apague m_confString[ADVERTISING_BLOCK] = getGlobalString("advertisingBlock", ""); configmanager.h procure e apague ADVERTISING_BLOCK, game.cpp procure e apague std::string _text = asLowerCaseString(text); for(uint8_t i = 0; i < _text.length(); i++) { char t = _text; if(t != '-' && t != '.' && !(t >= 'a' && t <= 'z')) { _text.erase(i, 1); i--; } } StringVec strVector; strVector = explodeString(g_config.getString(ConfigManager::ADVERTISING_BLOCK), ";"); for(StringVec::iterator it = strVector.begin(); it != strVector.end(); ++it) { std::string words []= {(*it)}; int ii, length; length = sizeof(words)/sizeof(words[0]); for(ii=0; ii < int(length); ii++) { if (int(_text.find(words[ii])) > 0 || _text == words[ii]) { player->sendTextMessage(MSG_STATUS_SMALL, "You can't send this message, forbidden characters."); return false; break; } } } Créditos: Ninja
  3. Esse tira 8 dias de premium account e remove o red e os frags.. se quiser mudar pra dinheiro é só fazer algumas alterações local exstorage = 1499 -- quantos dias de premium precisa para tirar a red skull local COST = 8 -- "yes" ou "no" // para retirar todos os frags local REMOVE_FRAGS = "yes" -- efeto usado quando tirar o red local EFFECT = CONST_ME_YELLOW_RINGS local config = { battle = true, -- players deve estar sem battle (true or false) } function onSay(cid, words, param, channel) if (exhaustion.check(cid, exstorage) == true) then doPlayerSendCancel(cid, "You are exhausted") return true end if config.battle == true and getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE then doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Você não pode tirar red skull com battle.") return TRUE end if getCreatureSkullType(cid) == SKULL_RED then local query = db.getResult("SELECT `premdays` FROM `accounts` WHERE `id` = " .. getPlayerAccountId(cid) .. ";") local points = query:getDataInt("premdays") if points >= COST then local update = db.executeQuery("UPDATE `accounts` SET `premdays`= "..(points - COST).." WHERE `id`= " .. getPlayerAccountId(cid) .. "; ") if (update == true) then db.executeQuery("UPDATE `killers` SET `unjustified` = 0 WHERE `id` IN (SELECT `kill_id` FROM `player_killers` WHERE `player_id` = " .. getPlayerGUID(cid) .. ")") doCreatureSetSkullType(cid,0) doPlayerSendTextMessage(cid, 27, "Sua red skull foi removida!") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_MAGIC_RED) doPlayerSetSkullEnd(cid, 0, getPlayerSkullType(cid)) doWriteLogFile("./data/logs/removeskull.log", "Success: " .. getCreatureName(cid)) doSendMagicEffect(getPlayerPosition(cid), effect) doRemoveCreature(cid) end else doPlayerSendCancel(cid, "Você precisa de " ..COST.. " dias de VIP para remover a red skull.") end else doPlayerSendCancel(cid, "Você não está red skull.") end exhaustion.set(cid, exstorage, 30) if (query ~= nil) then query:free() end return TRUE end
  4. Eu procurei em muitos lugares esse script e não achei então eu resolvi fazer eu mesmo. O único pré-requisito para isso é ter o SHOP instalado http://www.tibiaking.com/forum/topic/22899-shop-system-completo-modern-aac/ Agora é só abrir o seu gifts.php que fica em pastadoseusite/gifts/gifts.php e procure esse script: elseif ($info['type'] == '4') { if ($SHOP->isOnline($destination) == 1) { $errors .= 'Sorry, but <b>'.$destination.'</b> is On-Line right now.<br>'; $finish = false; } else { if ($SQL->query('SELECT * FROM players WHERE name = "'.$_POST['other_char'].'"')->fetch()) { $finish = false; $errors .= 'Sorry, but <b>'.$_POST['other_char'].'</b> already exists.<br>'; } else { if(!$_POST['other_char']) { $finish = false; $errors .= 'Sorry, but you didn\'t put a new name for your character.<br>'; } else { if (!preg_match('/[^A-Za-z]/', $_POST['other_char'])) { $processed = 1; $finish = true; $SQL->query('UPDATE players SET name = "'.$_POST['other_char'].'" WHERE name = "'.$destination.'"'); } else { $finish = false; $errors .= 'Sorry, but <b>'.$_POST['other_char'].'</b> contains invalid characters (Use only: A-Z, a-z).<br>'; } } } } } Esse script é de mudar o nome do personagem. No meu arquivo ele fica na linha 223. Em baixo desse script adicione o seguinte: elseif ($info['type'] == '5') { if ($SHOP->isOnline($destination) == 1) { $errors .= 'Sorry, but <b>'.$destination.'</b> is On-Line right now.<br>'; $finish = false; } else { $sex = $SQL->query('SELECT sex FROM players WHERE name = "'.$destination.'"')->fetch(); if ($sex['sex'] == '0') { $processed = 1; $finish = true; $SQL->query('UPDATE players SET sex = 1 WHERE name = "'.$destination.'"'); } if ($sex['sex'] == '1') { $processed = 1; $finish = true; $SQL->query('UPDATE players SET sex = 0 WHERE name = "'.$destination.'"'); } } } Agora procure por: $types[1] = array(1 => 'Premium Account', 2 => 'Remove Skull', 3 => 'UnBan Account', 4 => 'Change Name'); E troque para $types[1] = array(1 => 'Premium Account', 2 => 'Remove Skull', 3 => 'UnBan Account', 4 => 'Change Name', 5 => 'Change Sex'); Agora procure por: if($info['type'] == '4') echo 'Character to Change Name:'; else echo 'Give item to player:'; echo '</td> e troque para: if($info['type'] == '4') echo 'Character to Change Name:'; elseif($info['type'] == '5') echo 'Character to Change Sex:'; else echo 'Give item to player:'; echo '</td> Agora por último, procure por: echo '<center>You have changed the name of <b>'.$destination.'</b> to <b>'.$_POST['other_char'].'</b>.</center>'; e adicione em baixo: elseif($info['type'] == '5') echo '<center>You have changed the sex of <b>'.$destination.'</b>.</center>'; Agora só adicionar a nova categoria (Change Sex) pelo shop admin e pronto Espero que gostem!
  5. Tudo bem! Mesmo assim obrigado pela ajuda. Qual a diferença de screen -R para screen -X?
  6. O screen -X funcionou da mesma maneira! Ele só mostra as informações até o tamanho que a tela permite.. queria um que mostrasse desde o inicio quando o servidor abriu
  7. Recentemente mudei o meu S.O para Linux(Debian 6) por ser mais seguro e mais rápido também.. Mas eu ainda sou iniciante na plataforma do Linux e não sei de muita coisa. No windows fica aberta a tela do servidor com todas as informações(quem entrou, quem saiu, bugs, etc , etc) No linux eu digito "screen -S server" e depois se eu entrar no servidor(pelo putty) eu digito "screen -R" e aparecem ALGUMAS informações.. Eu gostaria de saber se é possível aparecer todas informações do servidor como se fosse um GUI para Windows. Muitas informações de erros de scripts e etc ficam perdidas e eu precisaria ter elas para consertar os possiveis bugs Obrigado!
  8. Fala ai galera Eu tenho um globalevent e eu queria que ele adicionasse um item para todos os players online com x storage.. mas não está indo function onTime() local list = {} for i, tid in ipairs(getPlayersOnline()) do list[i] = tid end local nomes = getCreatureName(#list) if (getPlayerStorageValue(nomes,123123) == 1) then doPlayerAddItem(#list,2195,1) end end O erro que dá é: [Error - GlobalEvent Interface] data/globalevents/scripts/premio.lua:onTime Description: (LuaInterface::luaGetCreatureStorage) Creature not found [Error - GlobalEvents::timer] Couldn't execute event: gh
  9. grafit postou uma resposta no tópico em Suporte Tibia OTServer
    Eu gostaria de saber se é possível fazer alguma alteração nas sources do servidor para fazer com que ele aceite acentos no jogo. Obrigado!
  10. grafit postou uma resposta no tópico em Suporte Tibia OTServer
    Eu tenho um script de SHOP para modern aac mas eu queria colocar para quando alguem comprar um item ou item de addon, o player que for receber deverá estar offline... Se alguém puder ajudar fico grato!! Meu Script: <?PHP //Product Types //Categories : // //[ 1 - Account Modifications ] //1 - Premium //2 - Remove Skull (ANY) //3 - UnBan Account //4 - Change Name // //[ 2 - Items ] //5 - Items // //[ 3 - Container Fully of Items ] //6 - Bag of Items //7 - Backpack of Items // //[ 4 - Addons Items ] //8 - Addon Items // //HOWTO PUT IMAGES FOR TYPES 1-4 [ Account Modifications ] //Go to public/images/ folder and create a GIF image (Or put) //With the ID of the type [See at the top of the script] //Ex. Type (1) - Premium Account (public/images/1.gif) //Variables require("config.php"); include("config/functions.php"); require("config/config.php"); $this->load->helper("url"); $ots = POT::getInstance(); $ots->connect(POT::DB_MYSQL, connection()); $SQL = $ots->getDBHandle(); $SHOP = new shop; $ide = new IDE; $action = $this->uri->segment(4); $categories = array(1 => 'Personagem', 2 => 'Items', 3 => 'Items com Container', 4 => 'Addon Items'); if ($_SESSION['logged'] == 1) { if ($SHOP->isInstalled()) { if ($action == '') { if($ide->isAdmin()) { echo "<div class='toolbar' align='center'>"; echo "<a href='".WEBSITE."/index.php/p/v/gifts/admin'>Admin Panel</a>"; echo "</div>"; } alert("<b>LEMBRE-SE:</b><br><br>Se for comprar um item tem que ter lugar na backpack."); echo '<div id="accordion">'; $i = 0; foreach($categories as $key=>$value) { echo '<h3>'.$categories[$key].'</h3> <div>'; if($SQL->query('SELECT * FROM shop_offer WHERE category = '.$key.'')->fetch()) { echo '<table border="0" cellspacing="1" cellpadding="4" width="100%"> <tr> <td width="60%" class="white" style="text-align: center; font-weight: bold;">Produto</td> <td width="20%" class="white" style="text-align: center; font-weight: bold;">Valor</td> <td width="20%" class="white" style="text-align: center; font-weight: bold;"></td> </tr>'; foreach($SQL->query('SELECT * FROM shop_offer WHERE category = '.$key.'') as $item) { if (is_int($i / 2)) $bgcolor = "#ececec"; else $bgcolor = "#ffffff"; $i++; echo '<tr class="highlight" bgcolor="'.$bgcolor.'" style="text-align: center;"> '; if($item['category'] == '1') $image = 'public/images/'.$item['type'].'.gif'; else $image = 'public/images/items/'.$item['item'].'.gif'; echo ' <td><b>'.$item['name'].'</b><br>'.$item['description'].'</td> <td>'.$item['points'].' Dia(s) VIP</td> <td><button type="submit" onClick="window.location.href=\''.WEBSITE.'/index.php/p/v/gifts/buy/'.$item['id'].'\';" class="ide_button">Comprar</button></td> </tr>'; } echo '</table></div>'; } else { alert("Essa categoria nao tem produtos."); echo '</div>'; } } echo '</div>'; echo '<br><center><font style="color: #4F82CB; font-weight: bold; font-size: 12px">Voce tem: <font color="#4EBF37">'.$SHOP->points($_SESSION['name']).'</font> dias de VIP.</font></center>'; } elseif ($action == 'buy') { $product = $this->uri->segment(5); $productact = $this->uri->segment(6); if (!$product) { alert("Voce nao selecionou nenhum produto."); echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/gifts">Voltar ao SHOP</a></div>'; } else { if($SQL->query('SELECT * FROM shop_offer WHERE id = '.$product.'')->fetch()) { $info = $SQL->query('SELECT * FROM shop_offer WHERE id = '.$product.'')->fetch(); if($productact == '' || !$productact) { if ($SHOP->points($_SESSION['name']) < $info['points']) { alert("Voce nao tem dias de VIP suficientes para comprar esse produto. (<b>".$info['points']."</b>)"); echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/gifts">Voltar ao SHOP</a></div>'; } else { echo '<div id="accordion">'; echo '<h3>Produto Selecionado</h3> <div>'; echo '<table border="0" cellspacing="1" cellpadding="4" width="100%"> <tr> <td width="50%" class="white" style="text-align: center; font-weight: bold;">Produto</td> <td width="25%" class="white" style="text-align: center; font-weight: bold;">Valor</td> </tr>'; echo '<tr class="highlight" style="text-align: center"> '; if($info['category'] == '1') $image = 'public/images/'.$info['type'].'.gif'; else $image = 'public/images/items/'.$info['item'].'.gif'; echo ' <td><b>'.$info['name'].'</b><br>'.$info['description'].'</td> <td>'.$info['points'].' Dias de VIP</td> </tr>'; echo '</table></div> <h3>Selecionar Personagem</h3> <div> <center><table border="0" cellspacing="7" cellpadding="4" width="50%"> <tr> <td><form method="post" action="'.WEBSITE.'/index.php/p/v/gifts/buy/'.$info['id'].'/send">'; if($info['type'] == '4') echo 'Personagem para mudar o nome:'; else echo 'Dar item para outro player:'; echo '</td> <td><select name="my_char">'; foreach($SHOP->CharacterList($_SESSION['name']) as $row) echo '<option>'.$row['name'].'</option>'; echo '</select></td> </tr> <tr> <td>'; if($info['type'] == '4') echo 'Novo Nome:'; else echo 'Ou outro player:'; echo '</td> <td><input type="text" name="other_char" size="10"/></td> </tr> <tr> <td></td> <td><button type="submit" name="submit" value="true" class="ide_button">Comprar</td> </tr></table></center></div></div>'; echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/gifts/">Voltar</a></div>'; } } elseif ($productact == 'send') { if(!$_POST['submit']) header("Location: ".WEBSITE."/index.php/p/v/gifts"); else { if($info['type'] != '4') { if($_POST['other_char']) { if($SQL->query('SELECT * FROM players WHERE name = "'.$_POST['other_char'].'"')->fetch()) { $destination = $_POST['other_char']; $send = true; } else { alert('<b>'.$_POST['other_char'].'</b> doesn\'t exists.'); echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/gifts/buy/'.$info['id'].'">Voltar</a></div>'; $send = false; } } else { $destination = $_POST['my_char']; $send = true; } } else { $destination = $_POST['my_char']; $send = true; } if($send == true) { $errors = ''; $processed = 0; if ($info['type'] == '1') { $processed = 1; $finish = true; $SHOP->AddPremium($destination,$info['count']); } elseif ($info['type'] == '2') { $skulltime = $SQL->query('SELECT skull,skulltime FROM players WHERE name = "'.$destination.'"')->fetch(); if ($SHOP->isOnline($destination) == 1) { $errors .= 'Desculpe mas o personagem <b>'.$destination.'</b> ainda esta online.<br>'; $finish = false; } elseif ($skulltime['skull'] == '0' && $skulltime['skulltime'] == '0') { $errors .= 'O personagem <b>'.$destination.'</b> nao possui red skull.<br>'; $finish = false; } else { $processed = 1; $finish = true; $SQL->query('UPDATE players SET skull = 0, skulltime = 0 WHERE name = "'.$destination.'"'); } } elseif ($info['type'] == '3') { if ($SHOP->isOnline($destination) == 1) { $errors .= 'Desculpe mas o personagem <b>'.$destination.'</b> ainda esta online.<br>'; $finish = false; } else { if ($SHOP->isBanned($destination)->fetch()) { $processed = 1; $finish = true; $SHOP->UnBan($destination); } else { $errors .= 'Desculpe mas a conta <b>'.$destination.'</b>\'nao esta banida no momento.<br>'; $finish = false; } } } elseif ($info['type'] == '4') { if ($SHOP->isOnline($destination) == 1) { $errors .= 'Desculpe mas o personagem <b>'.$destination.'</b> ainda esta online.<br>'; $finish = false; } else { if ($SQL->query('SELECT * FROM players WHERE name = "'.$_POST['other_char'].'"')->fetch()) { $finish = false; $errors .= 'Desculpe mas o nome <b>'.$_POST['other_char'].'</b> ja existe.<br>'; } else { if(!$_POST['other_char']) { $finish = false; $errors .= 'Desculpe mas voce nao botou um nome novo para o personagem.<br>'; } else { if (!preg_match('/[^A-Za-z]/', $_POST['other_char'])) { $processed = 1; $finish = true; $SQL->query('UPDATE players SET name = "'.$_POST['other_char'].'" WHERE name = "'.$destination.'"'); } else { $finish = false; $errors .= 'Sorry, but <b>'.$_POST['other_char'].'</b> contains invalid characters (Use only: A-Z, a-z).<br>'; } } } } } else { $finish = true; } if ($finish == true) { echo '<div style="text-align: center; font-size: 15px; color: #4EBF37; font-weight: bold;">Transacao Completa</div><br>'; if($info['type'] == '4') echo '<center>Voce mudou o nome de <b>'.$destination.'</b> para <b>'.$_POST['other_char'].'</b>.</center>'; elseif($info['type'] == '3') echo '<center>Voce desbaniu a conta <b>'.$destination.'</b>\'.</center>'; else echo '<center>Voce comprou <b>'.$info['name'].'</b> e deu para <b>'.$destination.'</b>.</center>'; echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/gifts">Voltar ao SHOP</a></div>'; $SQL->query('UPDATE accounts SET premdays = '.($SHOP->points($_SESSION['name']) - $info['points']).' WHERE name = "'.$_SESSION['name'].'"'); $SQL->query('INSERT INTO shop_history (`id`, `product`, `session`, `player`, `date`, `processed`) VALUES (NULL, \''.$info['id'].'\',\''.$_SESSION['name'].'\', \''.$destination.'\', \''.time().'\',\''.$processed.'\')');; } else { alert($errors); echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/gifts/buy/'.$info['id'].'">Voltar ao SHOP</a></div>'; } } } } } else { header("Location: ".WEBSITE."/index.php/p/v/gifts"); } echo '<br><center><font style="color: #4F82CB; font-weight: bold; font-size: 12px">Voce tem: <font color="#4EBF37">'.$SHOP->points($_SESSION['name']).'</font> dias de VIP.</font></center>'; } } elseif ($action == 'history') { if ($SQL->query('SELECT * FROM shop_history WHERE session = "'.$_SESSION['name'].'" ORDER BY date DESC LIMIT 30')->fetch()) { echo '<div style="text-align: center; font-weight: bold;">Latest 30 Transactions</div> <table border="0" cellspacing="1" cellpadding="4" width="100%"> <tr> <td class="white" style="text-align: center; font-weight: bold;">Picture</td> <td class="white" style="text-align: center; font-weight: bold;">Product</td> <td class="white" style="text-align: center; font-weight: bold;">To</td> <td class="white" style="text-align: center; font-weight: bold;">Date</td> <td class="white" style="text-align: center; font-weight: bold;">Processed</td> </tr>'; foreach($SQL->query('SELECT `z`.`player` AS `destination`, `z`.`date` AS `date`, `z`.`processed` AS `processed`, `o`.`category` AS `category`,`o`.`type` AS `type`,`o`.`item` AS `item`,`o`.`name` AS `name` FROM `shop_history` z LEFT JOIN `shop_offer` o ON `z`.`product` = `o`.`id` WHERE `z`.`session` = \''.$_SESSION['name'].'\' ORDER BY `z`.`date` DESC LIMIT 30') as $hist) { echo '<tr class="highlight" style="text-align: center"><td>'; if($hist['category'] == '1') $image = 'public/images/'.$hist['type'].'.gif'; else $image = 'public/images/items/'.$hist['item'].'.gif'; if(!file_exists($image)) echo 'NO IMAGE'; else echo '<img height="32px" width="32px" src="'.WEBSITE.'/'.$image.'"/>'; echo '</td> <td>'.$hist['name'].'</td> <td>'.$hist['destination'].'</td> <td>'.date("d-m-Y - H:i a", $hist["date"]).'</td>'; if ($hist['processed'] == '1') echo '<td><img src="'.WEBSITE.'/public/images/true.gif"/></td>'; else echo '<td><img src="'.WEBSITE.'/public/images/false.gif"/></td>'; echo '</tr>'; } echo '</table>'; } else { alert('You didn\'t made any transactions'); } } elseif ($action == 'donate') { $show = $this->uri->segment(5); if ($show == 'history') { if ($SQL->query('SELECT * FROM shop_donation_history WHERE buyer = "'.$_SESSION['name'].'" ORDER BY date DESC LIMIT 30')->fetch()) { echo '<div style="text-align: center; font-weight: bold;">Latest 30 Donations</div> <table border="0" cellspacing="1" cellpadding="4" width="100%"> <tr> <td class="white" style="text-align: center; font-weight: bold;">Method</td> <td class="white" style="text-align: center; font-weight: bold;">ID/Mail</td> <td class="white" style="text-align: center; font-weight: bold;">To Account</td> <td class="white" style="text-align: center; font-weight: bold;">Points Added</td> <td class="white" style="text-align: center; font-weight: bold;">Date</td> </tr>'; foreach($SQL->query('SELECT * FROM shop_donation_history WHERE buyer = "'.$_SESSION['name'].'" ORDER BY date DESC LIMIT 30') as $hist) { echo '<tr class="highlight" style="text-align: center"> <td>'; echo ($hist['method'] == 'PayPal')?'<img src="https://www.paypal.com/en_US/i/logo/paypal_logo.gif" height="50px" width="100px">':($hist['method'] == 'ContenidoPago')?'<img src="http://www.contenidopago.com/img/logo_ft.jpg" height="50px" width="100px">':''; echo '</td> <td>'.$hist['receiver'].'</td> <td>'.$hist['account'].'</td> <td>'.$hist['points'].'</td> <td>'.date("d-m-Y - H:i a", $hist["date"]).'</td> </tr>'; } echo '</table>'; } else { alert('You didn\'t donated'); } } elseif (!$show || $show == '') { alert("".$config['server_name']."'s Administration <b>is not responsible</b> for <b>cases of loss of products</b>.<br><br> ".$config['server_name']."'s Administration <b>is responsible</b> for <b>cases of loss of points which have been sent to users</b>."); echo '<div id="accordion">'; foreach ($config['donations']['methods'] as $method => $active) { if ($active == true) { echo '<h3><a href="#">'.$method.'</a></h3> <div>'; if ($method == 'ContenidoPago') { alert("This brand new system consists on <b>donations by SMS</b>.<br> After donating you will receive <b>".$config['donations']['contenidopago']['Points']." Points</b>.<br><br> <b>REMEMBER:</b><br> You need to have <b>enough credit</b> to send <u>SMS</u>.<br><br> You <b>MUST</b> fill the <b>Account Name</b> and the <b>Code Received</b> fields with <u>a valid account name</u> and <u>a valid code</u>."); if(!isset($_POST['mysubmit'])) { echo '<form method="post" action="" > <fieldset style="border:1px solid #990000; width:450px; margin:auto;"> <legend style="font-weight:bold;font-size:12px;">Automatic SMS Donation</legend> <ol style="list-style:none;"> <li style="padding-bottom:5px;"><label style="width:100px;float:left;text-align:left;">Account Name:</label><input type="text" style="border:1px solid #CCCCCC;" size="30" name="name" /></li> <li style="padding-bottom:5px;"><label style="width:100px;float:left;text-align:left;">Code received:</label><input type="text" style="border:1px solid #CCCCCC;" size="30" name="codigo" /></li> </ol> <center><input type="submit" name="mysubmit" style="padding:3px;margin-bottom:10px;color:#FFFFFF;background-color:#990000;border:1px solid #000000;" value="Enviar" /></center> </fieldset> </form>'; } else { $codigo=$_POST['codigo']; $name=$_POST['name']; $QueryString = "LinkUrl=http://".urlencode($_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']); $QueryString .= "&codigo=" .urlencode($codigo); $QueryString .= "&idservicio=" .$config['donations']['contenidopago']['Product']; if(intval(get_cfg_var('allow_url_fopen')) && function_exists('file_get_contents')) { $result=@file_get_contents("http://contenidopago.com/codigoval.php?".$QueryString); } elseif(intval(get_cfg_var('allow_url_fopen')) && function_exists('file')) { if($content = @file("http://contenidopago.com/codigoval.php?".$QueryString)) $result=@join('', $content); } elseif(function_exists('curl_init')) { $ch = curl_init ("http://contenidopago.com/codigoval.php?".$QueryString); curl_setopt ($ch, CURLOPT_HEADER, 0); curl_exec ($ch); if(curl_error($ch)) alert("Error processing request"); curl_close ($ch); } else { alert("It appears that your web host has disabled all functions for handling remote pages and as a result the BackLinks software will not function on your web page. Please contact your web host for more information."); } if ($result =='ok') { if(!(empty($name))) { if(!$SQL->query("SELECT * FROM accounts WHERE name = '".$name."'")->fetch()) { alert('This username does not exist: <font color="blue">'.$name.'</font>'); } else { $SQL->query("UPDATE accounts SET premdays = premdays + ".$config['donations']['contenidopago']['Points']." WHERE name = '".$name."'"); alert("Codigo : $codigo validado, puntos sumados correctamente"); $SQL->query("INSERT INTO shop_donation_history (`id`, `method`, `receiver`, `buyer`, `account`, `points`, `date`) VALUES (NULL, 'ContenidoPago', '".$config['donations']['contenidopago']['Product']."', '".$_SESSION['name']."', '".$name."', '".$config['donations']['contenidopago']['Points']."', '".time()."');"); } } else { alert('You did not set the user!'); } } if ($result =='no') { alert('El codigo no es valido o ya esta usado'); } } echo '<center><iframe src ="http://www.contenidopago.com/prom/microcodigo.php" width="270px" height="340px" frameborder="0"> <p>Your browser does not support iframes.</p> </iframe></center>'; } elseif ($method == 'PayPal') { alert("The donation costs <b>".$config['donations']['paypal']['Amount']." ".$config['donations']['paypal']['Money']." (incl. VAT)</b>.<br> After the donation you will receive a total of <b>".$config['donations']['paypal']['Points']." points</b> automatically.<br><br> <b>REMEMBER:</b><br> You need a <u>creditcard</u> <b>or</b> a <u>PayPal account</u> with a minimun of <b>".$config['donations']['paypal']['Amount']." ".$config['donations']['paypal']['Money']."</b>.<br><br> You <b>MUST</b> fill the <b>Account Name</b> with a <u>valid one</u>."); echo '<center><form action="https://www.paypal.com/cgi-bin/webscr" method="post"> <input type="hidden" name="cmd" value="_donations"> <input type="hidden" name="business" value="'.$config['donations']['paypal']['Mail'].'"> <input type="hidden" name="lc" value="GB"> <input type="hidden" name="item_name" value="'.$config['donations']['paypal']['Product'].'"> <b>Account Name:</b> <input type="text" name="custom" value=""> <input type="hidden" name="item_number" value="1"> <input type="hidden" name="amount" value="'.$config['donations']['paypal']['Amount'].'"> <input type="hidden" name="currency_code" value="'.$config['donations']['paypal']['Money'].'"> <input type="hidden" name="no_note" value="0"> <input type="hidden" name="no_shipping" value="0"> <input type="hidden" name="notify_url" value="'.WEBSITE.'index.php/p/v/paypal"> <input type="hidden" name="return" value="'.WEBSITE.'"> <input type="hidden" name="session" value="'.$_SESSION['name'].'"> <input type="hidden" name="rm" value="0"> <input type="hidden" name="bn" value="PP-DonationsBF:btn_donateCC_LG_global.gif:NonHosted"><br> <input type="image" src="https://www.paypal.com/en_US/i/btn/btn_donate_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online."> <img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1"> </form></center>'; } echo '</div>'; } } echo '</div>'; } else { header("Location: ".WEBSITE."/index.php/p/v/gifts/donate"); } } elseif ($action == 'admin') { if($ide->isAdmin()) { $manage = $this->uri->segment(5); echo "<div class='toolbar' align='center'>"; echo "<a href='".WEBSITE."/index.php/p/v/gifts/admin/add/1'>Adicionar novo Produto</a> <br /> "; echo "<a href='".WEBSITE."/index.php/p/v/gifts/admin/delete'>Deletar um Produto</a> <br /> "; echo "<a href='".WEBSITE."/index.php/p/v/gifts/admin/points'>Adicionar/Remover dias de VIP</a>"; echo "</div>"; if ($manage == '' || !$manage) { echo '<center>Bem vindo ao Painel de admin do SHOP</center>'; } elseif ($manage == 'add') { $types[1] = array(1 => 'Premium Account', 2 => 'Remove Skull', 3 => 'UnBan Account', 4 => 'Change Name'); $types[2] = array(5 => 'Item'); $types[3] = array(6 => 'Bag with Items', 7 => 'Backpack with Items'); $types[4] = array(8 => 'Addon Items'); $step = $this->uri->segment(6); if ($step == '1') { echo '<form method="post" action="'.WEBSITE.'/index.php/p/v/gifts/admin/add/2">Categoria: <select name="category">'; foreach($categories as $key=>$value) { echo '<option value="'.$key.'">'.$categories[$key].'</option>'; } echo '</select> <button type="submit" class="ide_button">Selecionar Categoria</form>'; } elseif ($step == '2' && $_POST['category']) { echo '<form method="post" action="'.WEBSITE.'/index.php/p/v/gifts/admin/add/3"> <input type="hidden" name="category" value="'.$_POST['category'].'"/> Selecionar Produto: <select name="type">'; foreach($types[$_POST['category']] as $key=>$value) { echo '<option value="'.$key.'">'.$types[$_POST['category']][$key].'</option>'; } echo '</select> <button type="submit" class="ide_button">Selecionar</form>'; } elseif ($step == '3' && $_POST['category'] && $_POST['type']) { echo '<form method="post" action="'.WEBSITE.'/index.php/p/v/gifts/admin/add/4"> <input type="hidden" name="category" value="'.$_POST['category'].'"/> <input type="hidden" name="type" value="'.$_POST['type'].'"/> <table border="0" cellspacing="1" cellpadding="4" width="100%"> <tr> <td width="25%">Nome do Produto:</td> <td width="25%"><input name="name" type="text" size="18" maxlength="256" /></td> <td width="50%" style="font-size: 9px; color: red; font-weight: bold;">Nome do produto</td> </tr> <tr> <td width="25%">Valor:</td> <td width="25%"><input name="points" type="text" value="0" size="10" maxlength="11" /></td> <td width="50%" style="font-size: 9px; color: red; font-weight: bold;">Custo do produto em dias de VIP</td> </tr>'; if ($_POST['type'] == '1') { echo '<tr> <td width="25%">Dias de Premium:</td> <td width="25%"><input name="count" type="text" value="0" size="1" maxlength="3" /></td> <td width="50%" style="font-size: 9px; color: red; font-weight: bold;">Dias de premium account</td> </tr>'; } elseif ($_POST['type'] == '5' || $_POST['type'] == '6' || $_POST['type'] == '7' || $_POST['type'] == '8') { echo '<tr> <td width="25%">Item ID:</td> <td width="25%"><input name="item" type="text" value="0" size="3" maxlength="5" /></td> <td width="50%" style="font-size: 9px; color: red; font-weight: bold;">ID of item to give</td> </tr> <tr> <td width="25%">Quantidade:</td> <td width="25%"><input name="count" type="text" value="0" size="1" maxlength="3" /></td> <td width="50%" style="font-size: 9px; color: red; font-weight: bold;">Quantidade do Item (max. 100) (When selecting \'Backpack of Items\' or \'Bag of Items\' type, the ITEM with that count will fill the container!)</td> </tr>'; } echo '<tr> <td width="25%">Descricao:</td> <td width="25%"><textarea style="width: 120px; height: 80px;" name="description"></textarea></td> <td width="50%" style="font-size: 9px; color: red; font-weight: bold;">Descricao do produto</td> </tr> </table> <br><center><button type="submit" name="done" value="true" class="ide_button">Adicionar Produto</form></center>'; } elseif ($step == '4' && $_POST['done'] == 'true') { $errors = ''; if ($_POST['points'] || $_POST['item'] || $_POST['count']) { if($_POST['points']) { if (!(!preg_match('/[^0-9]/', $_POST['points']))) $errors .= '1'; } elseif($_POST['item']) { if (!(!preg_match('/[^0-9]/', $_POST['item']))) $errors .= '2'; } elseif($_POST['count']) { if (!(!preg_match('/[^0-9]/', $_POST['count']))) $errors .= '3'; } } if ($errors == '') { echo '<div style="text-align: center; font-size: 15px; color: #4EBF37; font-weight: bold;">Produto Adicionado!</div><br> <table border="0" cellspacing="1" cellpadding="4" width="100%"> <tr class="highlight"> <td style="font-weight: bold;" width="50%">Nome do Produto</td> <td width="50%">'.$_POST['name'].'</td> </tr> <tr class="highlight"> <td style="font-weight: bold;" width="50%">Categoria:</td> <td width="50%">'.$categories[$_POST['category']].'</td> </tr> <tr class="highlight"> <td style="font-weight: bold;" width="50%">Tipo:</td> <td width="50%">'.$types[$_POST['category']][$_POST['type']].'</td> </tr> <tr class="highlight"> <td style="font-weight: bold;" width="50%">Valor do Produto:</td> <td width="50%">'.$_POST['points'].'</td> </tr>'; if($_POST['type'] == '1') { echo '<tr class="highlight"><td style="font-weight: bold;" width="50%">Premium Days:</td> <td width="50%">'.$_POST['count'].'</td> </tr>'; } elseif ($_POST['type'] == '5' || $_POST['type'] == '6' || $_POST['type'] == '7' || $_POST['type'] == '8') { echo '<tr class="highlight"><td style="font-weight: bold;" width="50%">Item ID:</td> <td width="50%">'.$_POST['item'].'</td> </tr> <tr class="highlight"><td style="font-weight: bold;" width="50%">Count:</td> <td width="50%">'.$_POST['count'].'</td> </tr>'; } echo '<tr class="highlight"><td style="font-weight: bold;" width="50%">Description:</td> <td width="50%">'.$_POST['description'].'</td> </tr></table>'; $PostItem = (!isset($_POST['item']))?'0':$_POST['item']; $PostCount = (!isset($_POST['count']))?'0':$_POST['count']; $SQL->query("INSERT INTO shop_offer (`id`, `points`, `category`, `type`, `item`, `count`, `description`, `name`) VALUES (NULL, '".$_POST['points']."', '".$_POST['category']."', '".$_POST['type']."', '".$PostItem."', '".$PostCount."', '".$_POST['description']."', '".$_POST['name']."')"); echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/gifts">Voltar ao SHOP</a></div>'; } else { alert('Sorry but 1 or more spaces contains invalid characters.'); echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/gifts">Voltar ao SHOP</a></div>'; } } else { header("Location: ".WEBSITE."/index.php/p/v/gifts/admin/add/1"); } } elseif ($manage == 'delete') { $product = $this->uri->segment(6); if (!$product) { echo '<div id="accordion">'; $i = 0; foreach($categories as $key=>$value) { echo '<h3>'.$categories[$key].'</h3> <div>'; if($SQL->query('SELECT * FROM shop_offer WHERE category = '.$key.'')->fetch()) { echo '<table border="0" cellspacing="1" cellpadding="4" width="100%"> <tr> <td width="40%" class="white" style="text-align: center; font-weight: bold;">Produto</td> <td width="20%" class="white" style="text-align: center; font-weight: bold;">Valor</td> <td width="20%" class="white" style="text-align: center; font-weight: bold;"></td> </tr>'; foreach($SQL->query('SELECT * FROM shop_offer WHERE category = '.$key.'') as $item) { if (is_int($i / 2)) $bgcolor = "#ececec"; else $bgcolor = "#ffffff"; $i++; echo '<tr class="highlight" bgcolor="'.$bgcolor.'" style="text-align: center;"> '; if($item['category'] == '1') $image = 'public/images/'.$item['type'].'.gif'; else $image = 'public/images/items/'.$item['item'].'.gif'; echo ' <td><b>'.$item['name'].'</b><br>'.$item['description'].'</td> <td>'.$item['points'].'</td> <td><button type="submit" onClick="window.location.href=\''.WEBSITE.'/index.php/p/v/gifts/admin/delete/'.$item['id'].'\';" class="ide_button">Deletar</button></td> </tr>'; } echo '</table></div>'; } else { alert("Essa categoria nao possui ofertas."); echo '</div>'; } } echo '</div>'; } else { if($SQL->query('SELECT * FROM shop_offer WHERE id = '.$product.'')->fetch()) { $SQL->query('DELETE FROM shop_offer WHERE id = '.$product.''); $SQL->query('DELETE FROM shop_history WHERE product = '.$product.''); echo '<div style="text-align: center; font-size: 15px; color: #4EBF37; font-weight: bold;">Produto Deletado!</div><br> <center>Produto de id <b>'.$product.'</b> foi deletado do banco de dados.</center>'; echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/gifts">Voltar ao SHOP</a></div>'; } else { header("Location: ".WEBSITE."/index.php/p/v/gifts/admin/delete"); } } } elseif ($manage == 'points') { if (!isset($_POST['submit'])) { echo '<div id="accordion"> <h3>Adicionar dias de VIP</h3> <div> <table border="0" cellspacing="1" cellpadding="4" width="100%"> <tr> <form method="post" action="'.$_SERVER['PHP_SELF'].'"> <td>Selecionar Personagem:</td> <td><select name="player">'; foreach($SQL->query('SELECT * FROM players ORDER BY name DESC') as $player) { echo '<option value="'.$player['id'].'">'.$player['name'].'</option>'; } echo '</select></td> </tr><tr> <td>ou Nome do Personagem:</td> <td><input type="text" name="other_char" size="10"/></td> </tr><tr> <td>Dias de VIP para adicionar:</td> <td><input type="text" name="points" size="10"/></td> </tr><tr> <td></td> <td><button type="submit" name="submit" value="add" class="ide_button"><button class="ide_button">Adicionar dias de VIP</button></td> </tr> </table></form> </div> <h3>Remover dias de VIP</h3> <div> <table border="0" cellspacing="1" cellpadding="4" width="100%"> <tr> <form method="post" action="'.$_SERVER['PHP_SELF'].'"> <td>Selecionar Personagem</td> <td><select name="player">'; foreach($SQL->query('SELECT * FROM players ORDER BY name DESC') as $player) { echo '<option value="'.$player['id'].'">'.$player['name'].'</option>'; } echo '</select></td> </tr><tr> <td>ou Nome do Personagem:</td> <td><input type="text" name="other_char" size="10"/></td> </tr><tr> <td>Dias de VIP para remover:</td> <td><input type="text" name="points" size="10"/></td> </tr><tr> <td></td> <td><button type="submit" name="submit" value="remove" class="ide_button"><button class="ide_button">Remover dias de VIP</button></td> </tr> </table></form> </div> </div>'; } else { $errors = ""; if(!isset($_POST['other_char']) || $_POST['other_char'] == '') { $destination = $_POST['player']; } else { $ID = $SQL->query('SELECT id FROM players WHERE name = "'.$_POST['other_char'].'"')->fetch(); if($ID) $destination = $ID['id']; else $errors .= "Player <b>".$_POST['other_char']."</b> doesn't exists.<br>"; } if($_POST['points'] == '0' || $_POST['points'] < '0') $errors .= "Points quantity must be higher than 0!<br>"; elseif (!(!preg_match('/[^0-9]/', $_POST['points']))) $errors .= "Point quantity must be a <b>numeric value</b>!"; if(isset($destination)) { $player = $SQL->query('SELECT name FROM players WHERE id = "'.$destination.'"')->fetch(); $account = $SHOP->getPlayerAccount($player['name'])->fetch(); if ($_POST['submit'] == 'remove') { if ($SHOP->points($account['name']) == '0' || $SHOP->points($account['name']) < '0') $errors .= "Player <b>".$player['name']."</b> nao tem nenhum dia de vip.<br>"; } } if ($errors == '') { $player = $SQL->query('SELECT name FROM players WHERE id = "'.$destination.'"')->fetch(); $account = $SHOP->getPlayerAccount($player['name'])->fetch(); echo '<div style="text-align: center; font-size: 15px; color: #4EBF37; font-weight: bold;">Dias de VIP '; echo ($_POST['submit'] == 'add')?'adicionados':'removidos'; echo '!</div><br> <center>Voce '; echo ($_POST['submit'] == 'add')?'adicionou':'removeu'; echo ' <b>'.$_POST['points'].'</b> dias de vip na <b>'.$player['name'].'</b>\'s conta.</center>'; echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/gifts/admin/points">Voltar</a></div>'; if($_POST['submit'] == 'add') $SQL->query('UPDATE accounts SET premdays = '.($SHOP->points($account['name']) + $_POST['points']).' WHERE name = "'.$account['name'].'"'); elseif($_POST['submit'] == 'remove') $SQL->query('UPDATE accounts SET premdays = '.($SHOP->points($account['name']) - $_POST['points']).' WHERE name = "'.$account['name'].'"'); } else { alert($errors); echo '<div align="right"><a href="'.WEBSITE.'/index.php/p/v/gifts/admin/points">Voltar</a></div>'; } } } else { header("Location: ".WEBSITE."/index.php/p/v/gifts/admin"); } } else { header("Location: ".WEBSITE."/index.php"); } } else { header("Location: ".WEBSITE."/index.php/p/v/gifts"); } } elseif(!$SHOP->isInstalled()) { if($ide->isAdmin()) { $SHOP->install(); echo '<div style="text-align: center; font-size: 15px; color: #4EBF37; font-weight: bold;">Shop System Succesfully Installed!</div><br> <center>Your shop system has been installed succesfully!! click <a href="'.WEBSITE.'/index.php/p/v/gifts">HERE</a> to see your shop</center>'; } else { header("Location: ".WEBSITE."/index.php"); } } } else { alert("Voce deve estar logado na sua conta."); } ?>
  11. Eu tentei usar o 2008 32bit mas achei que "travava" de mais e acabei voltando para o 2003! O 2003 64bit é mais rápido ?
  12. De uma empresa brasileira, a bhservers. Eu possuo um 32bits mas estou pensando na possibilidade de colocar 64
  13. 4.5GB de RAM, 5,5GHZ de processador e uso windows 2003! --edit-- e o mapa que eu uso tem 50MB
  14. Eu não sei se isso ocorre com todos os servidores, mas o meu servidor ele é bem grande e pesado.. e quando ele chega a aprox 50/60horas de uptime ele começa a travar meu dedicado.. eu gostaria de saber se existe alguma solução pra isso. Obrigado!
  15. Desculpe reviver o tópico mas a maneira correta de resolver esse problema é ir no config.lua e procurar advertisingBlock o correto é deixar assim advertisingBlock = "" Caso não ache isso no seu config.lua adicione e o problema provavelmente vai solucionar
  16. já e não achei nada vou revirar as sources aqui
  17. já procurei em tudo... creaturescripts, actions, movements, globalevents e tudo que vc imaginar e não achei.. acho que seja só nas sources mesmo
  18. Orange skull é a skull nova do tibia que é mais conhecida como "revenge kill" Meu config.lua -- The OTX Server Config -- Owner Data ownerName = "" ownerEmail = "" url = " location = "Brazil" -- Messages motd = "Bem vindo ao Elorien Server!" serverName = "Elorien" loginMessage = "Bem vindo ao Elorien Server!" displayGamemastersWithOnlineCommand = false -- MySql sqlType = "mysql" sqlHost = "127.0.0.1" sqlPort = 3306 sqlUser = "root" sqlPass = "" sqlDatabase = "" sqlFile = "" sqlKeepAlive = 0 mysqlReadTimeout = 10 mysqlWriteTimeout = 10 mysqlReconnectionAttempts = 3 encryptionType = "sha1" --// encryptionType can be (plain, md5, sha1, sha256 or sha512). -- World / Ip / Port worldId = 0 ip = "127.0.0.1" worldType = "open" bindOnlyGlobalAddress = false loginPort = 7171 gamePort = "7172" statusPort = 7171 loginOnlyWithLoginServer = false -- Account manager accountManager = false namelockManager = false newPlayerChooseVoc = false newPlayerSpawnPosX = 0 newPlayerSpawnPosY = 0 newPlayerSpawnPosZ = 7 newPlayerTownId = 1 newPlayerLevel = 8 newPlayerMagicLevel = 0 generateAccountNumber = false generateAccountSalt = false -- Limits on frags / Time fragsLimit = 24 * 60 * 60 fragsSecondLimit = 7 * 24 * 60 * 60 fragsThirdLimit = 30 * 24 * 60 * 60 -- Red Skull Config fragsToRedSkull = 8 fragsSecondToRedSkull = 38 fragsThirdToRedSkull = 46 redSkullLength = 7 * 24 * 60 * 60 -- Black Skull Config fragsToBlackSkull = 10000 fragsSecondToBlackSkull = 10000 fragsThirdToBlackSkull = 10000 blackSkulledDeathHealth = 40 blackSkulledDeathMana = 0 blackSkullLength = 6 * 24 * 60 * 60 useBlackSkull = false -- Banishment Config -- killsBanLength works only if useBlackSkull option is disabled. notationsToBan = 5 warningsToFinalBan = 8 warningsToDeletion = 10 banLength = 7 * 24 * 60 * 60 killsBanLength = 7 * 24 * 60 * 60 finalBanLength = 30 * 24 * 60 * 60 ipBanLength = 1 * 24 * 60 * 60 fragsToBanishment = 10 fragsSecondToBanishment = 26 fragsThirdToBanishment = 40 -- Battle -- NOTE: showHealth/ManaChangeForMonsters inherites from showHealth/ManaChange. protectionLevel = 1 pvpTileIgnoreLevelAndVocationProtection = true allowFightback = true pzLocked = 40 * 1000 huntingDuration = 30 * 1000 criticalHitMultiplier = 1 displayCriticalHitNotify = true removeWeaponAmmunition = true removeWeaponCharges = true removeRuneCharges = true whiteSkullTime = 15 * 60 * 1000 advancedFragList = false useFragHandler = true noDamageToSameLookfeet = false showHealthChange = true showManaChange = true showHealthChangeForMonsters = false showManaChangeForMonsters = false fieldOwnershipDuration = 5 * 1000 stopAttackingAtExit = true loginProtectionPeriod = 1000 deathLostPercent = 7 stairhopDelay = 1 * 1000 pushCreatureDelay = 1 * 1000 deathContainerId = 1987 gainExperienceColor = 215 addManaSpentInPvPZone = true recoverManaAfterDeathInPvPZone = true squareColor = 0 -- RSA -- NOTE: These should not be changed unless you know what your doing! -- Prime1 - known as p; Prime2 - known as q; Public - known as e; -- Modulus - known as n; Private - known as d. -- How make custom client with custom RSA Key: http://vapus.net/customclient rsaPrime1 = "" rsaPrime2 = "" rsaPublic = "" rsaModulus = "" rsaPrivate = "" -- OTX Server Extras Features -- Battle optionalWarAttackableAlly = false fistBaseAttack = 7 criticalHitChance = 7 noDamageToGuildMates = false -- if true then no damage, if false then damage noDamageToPartyMembers = false -- if true then no damage, if false then damage -- Rook System rookLevelTo = 5 rookLevelToLeaveRook = 8 rookTownId = 1 useRookSystem = false -- Paralyze delay paralyzeDelay = 1300 -- Protocol Server -- The function no work (Fix please for Linux/Windows Users) -- clientVersionMin = "9.80" -- clientVersionMax = "9.81" premiumDaysToAddByGui = 0 -- Depot and Miscellaneous -- set playerFollowExhaust to 2000 if someone causes lags and kicks by following unreachable creatures too often useCapacity = true defaultDepotSize = 500 defaultDepotSizePremium = 1000 enableProtectionQuestForGM = true cleanItemsInMap = false playerFollowExhaust = 2000 -- 8.7x + config useMounts = true enableCooldowns = true unmountPlayerInPz = true tibiaClassicSlots = true monsterSpawnWalkback = true allowBlockSpawn = true -- Summons and monsters NoShareExpSummonMonster = false -- Others enableLootBagDisplay = false serverPreview = false levelToOfflineTraining = 9999999999 -- Connection config loginTries = 20 retryTimeout = 5 * 1000 loginTimeout = 60 * 1000 maxPlayers = 250 displayOnOrOffAtCharlist = false onePlayerOnlinePerAccount = true allowClones = 0 statusTimeout = 1000 replaceKickOnLogin = true forceSlowConnectionsToDisconnect = false premiumPlayerSkipWaitList = true packetsPerSecond = 50 -- Deathlist deathListEnabled = true deathListRequiredTime = 1 * 60 * 1000 deathAssistCount = 20 maxDeathRecords = 5 -- Guilds ingameGuildManagement = false levelToFormGuild = 20 premiumDaysToFormGuild = 0 guildNameMinLength = 4 guildNameMaxLength = 20 -- Highscores highscoreDisplayPlayers = 15 updateHighscoresAfterMinutes = 60 -- Houses buyableAndSellableHouses = true houseNeedPremium = false bedsRequirePremium = false levelToBuyHouse = 50 housesPerAccount = 1 houseRentAsPrice = true housePriceAsRent = true housePriceEachSquare = 1000 houseRentPeriod = "weekly" houseCleanOld = 8 * 24 * 60 * 60 guildHalls = false houseSkipInitialRent = true houseProtection = true -- Item usage timeBetweenActions = 190 timeBetweenExActions = 1000 timeBetweenCustomActions = 500 checkCorpseOwner = true hotkeyAimbotEnabled = true maximumDoorLevel = 999 tradeLimit = 100 canOnlyRopePlayers = false -- Map -- NOTE: storeTrash costs more memory, but will perform alot faster cleaning. -- houseDataStorage usage may be found at how-use-internal-functions.log mapAuthor = "Grafit" randomizeTiles = true houseDataStorage = "binary-tilebased" storeTrash = true cleanProtectedZones = true mapName = "bronson.otbm" -- For Windows(compiled with MSVC) and Linux use: -- OTX Server use default GroundCache -- GroundCache mode save memory: __GROUND_CACHE__ -- forgotten map on normal mode use memory: 361,512 KB -- forgotten map with groundCache mode use memory: 334,124 KB -- Mailbox mailMaxAttempts = 5 mailBlockPeriod = 30 * 60 * 1000 mailAttemptsFadeTime = 5 * 60 * 1000 mailboxDisabledTowns = "" -- Example disable rook depot (temple) "4" -- mailboxDisabledTowns = "4" -- Market marketEnabled = false marketOfferDuration = 30 * 24 * 60 * 60 premiumToCreateMarketOffer = true checkExpiredMarketOffersEachMinutes = 60 maxMarketOffersAtATimePerPlayer = 100 -- Startup -- For Linux use "-1" is default -- daemonize works only on *nix, same as niceLevel daemonize = false defaultPriority = "higher" niceLevel = 5 serviceThreads = 1 coresUsed = "-1" -- ("0, 1, 2, 3") -- For QuadCore ONLY Windows startupDatabaseOptimization = true removePremiumOnInit = true confirmOutdatedVersion = false skipItemsVersionCheck = false -- Muted buffer maxMessageBuffer = 4 -- Miscellaneous dataDirectory = "data/" logsDirectory = "data/logs/" disableOutfitsForPrivilegedPlayers = false bankSystem = false spellNameInsteadOfWords = false emoteSpells = false unifiedSpells = true promptExceptionTracerErrorBox = true storePlayerDirection = false savePlayerData = true monsterLootMessage = 3 monsterLootMessageType = 20 separateViplistPerCharacter = false vipListDefaultLimit = 60 vipListDefaultPremiumLimit = 120 -- Outfits allowChangeOutfit = true allowChangeColors = true allowChangeAddons = true addonsOnlyPremium = false -- Ghost mode ghostModeInvisibleEffect = true ghostModeSpellEffects = true -- Limits idleWarningTime = 14 * 60 * 1000 idleKickTime = 15 * 60 * 1000 expireReportsAfterReads = 1 playerQueryDeepness = -1 protectionTileLimit = 10 houseTileLimit = 10 tileLimit = 7 -- Premium-related freePremium = false premiumForPromotion = false updatePremiumStateAtStartup = true -- Blessings blessings = true blessingOnlyPremium = true blessingReductionBase = 30 blessingReductionDecrement = 5 eachBlessReduction = 8 useFairfightReduction = true pvpBlessingThreshold = 40 fairFightTimeRange = 60 -- Rates experienceStages = true rateExperience = 15 rateExperienceFromPlayers = 0 rateSkill = 13 rateMagic = 10 rateLoot = 1.0 rateSpawnMin = 1 rateSpawnMax = 1 formulaLevel = 3.0 formulaMagic = 1.0 -- Monster rates rateMonsterHealth = 1.0 rateMonsterMana = 1.0 rateMonsterAttack = 1.0 rateMonsterDefense = 1.0 -- Experience from players minLevelThresholdForKilledPlayer = 0.9 maxLevelThresholdForKilledPlayer = 1.1 -- Stamina System rateStaminaLoss = 0 rateStaminaGain = 0 rateStaminaThresholdGain = 12 staminaRatingLimitTop = 40 * 60 staminaRatingLimitBottom = 14 * 60 staminaLootLimit = 14 * 60 rateStaminaAboveNormal = 1.0 rateStaminaUnderNormal = 1.0 staminaThresholdOnlyPremium = true -- Party System experienceShareRadiusX = 30 experienceShareRadiusY = 30 experienceShareRadiusZ = 1 experienceShareLevelDifference = 2 / 3 extraPartyExperienceLimit = 20 extraPartyExperiencePercent = 5 experienceShareActivity = 2 * 60 * 1000 -- Global save globalSaveEnabled = false globalSaveHour = 8 globalSaveMinute = 0 shutdownAtGlobalSave = true cleanMapAtGlobalSave = false closeInstanceOnShutdown = true -- Spawns minRateSpawn = 1 maxRateSpawn = 3 deSpawnRange = 2 deSpawnRadius = 50 -- Summons maxPlayerSummons = 2 teleportAllSummons = false teleportPlayerSummons = true -- Logs disableLuaErrors = false adminLogs = true displayPlayersLogging = true prefixChannelLogs = "" runFile = "server/run.log" outputLog = "server/out.log" truncateLogOnStartup = false logPlayersStatements = true -- Manager -- NOTE: managerPassword left blank disables manager. managerPort = 7171 managerLogs = true managerPassword = "" managerLocalhostOnly = true managerConnectionsLimit = 1 -- Admin -- NOTE: adminPassword left blank disables manager. -- Set to anything if you set adminRequireLogin to false. -- adminEncryption available options: rsa1024xtea; -- remember to set correct data! adminPort = 7171 adminPassword = "" adminLocalhostOnly = true adminConnectionsLimit = 1 adminRequireLogin = true adminEncryption = "" adminEncryptionData = "" -- Don't edit use at your own risk saveGlobalStorage = false bufferMutedOnSpellFailure = false
  19. Estou tendo muitos problemas relacionados a orange skull no meu servidor.. eu queria tirar ela e já pensei em praticamente tudo e não consegui.. uso o OTXserver 2.51 versão 9.80 Obrigado desde já
  20. grafit postou uma resposta no tópico em Suporte Tibia OTServer
    To ligado.. mas tipo qual seria a solução pra isso? se eu aumentar o max_allowed_packet resolve?
  21. grafit postou uma resposta no tópico em Suporte Tibia OTServer
    Estou com esse erro [25/1/2014 0:10:56] mysql_real_query(): INSERT INTO `player_statements` (`player_id`, `channel_id`, `text`, `date`) VALUES (60, 0, 'ou brown musshor', 1390615846) - MYSQL ERROR: Lost connection to MySQL server during query (2013) [25/1/2014 0:10:58] > WARNING: MYSQL Lost connection, attempting to reconnect...Netow Whey has logged out. [25/1/2014 0:24:49] mysql_real_query(): UPDATE `players` SET `online` = 0 WHERE `id` = 508 LIMIT 1; - MYSQL ERROR: Lost connection to MySQL server during query (2013) [25/1/2014 0:24:49] Manu Bennett has logged out. [25/1/2014 0:24:49] > WARNING: MYSQL Lost connection, attempting to reconnect...Manu Bennett has logged in. Alguem sabe o que pode ser?
  22. grafit postou uma resposta no tópico em Suporte & Pedidos
    eu nao consigo mexer direito no github.... Comedinhass lá eles só tem a versão mais atual? se eu quiser achar uma versao anterior tfs não da pra pegar por lá ne
  23. vc usa internet sem fio?(roteador) entre nesse site e de um check para ver se a porta tá aberta http://ping.eu/port-chk/ no caso é porta 8090
  24. Eu estou tentando compilar o tfs 0.3.7 para 9.x mas no final aparecem esses erros 1>item.obj : error LNK2001: unresolved external symbol "public: __thiscall DepotLocker::DepotLocker(unsigned short)" (??0DepotLocker@@QAE@G@Z) 1>player.obj : error LNK2001: unresolved external symbol "public: __thiscall Inbox::Inbox(unsigned short)" (??0Inbox@@QAE@G@Z) 1>player.obj : error LNK2001: unresolved external symbol "public: void __thiscall DepotLocker::removeInbox(class Inbox *)" (?removeInbox@DepotLocker@@QAEXPAVInbox@@@Z) 1>player.obj : error LNK2001: unresolved external symbol "public: __thiscall DepotChest::DepotChest(unsigned short)" (??0DepotChest@@QAE@G@Z) 1>C:\Documents and Settings\Caio\Desktop\src\vc10\Release\tfs.exe : fatal error LNK1120: 4 unresolved externals Se alguém puder me ajudar fico grato!!! Obrigado
  25. grafit postou uma resposta no tópico em Suporte & Pedidos
    A maioria eu já estava ciente mas me digam uma coisa.. alguem sabe dizer se as novas versões do gesior vem "seguras" ? ou ainda tem as falhas de sempre

Informação Importante

Confirmação de Termo