Líderes
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 04/06/13 em %
-
Evolera.pl v3 - UPDATE 12.11 EVOLUTION MEGA EDIT
Tony Araujo e 2 outros reagiu a LuckinhaSan por um tópico no fórum
Evolera v3 - SPECIAL EDITION 12.11 Equilíbrio De Profissões Nossa principal tarefa era equilibrar profissão, foi feito todos os esforços para fazer com que pareça profissional. Nesta edição ninguém reclamou dos ataques fracos de qualquer profissão. Bob Marley - Event Nosso convidado especial apareceu, NPC que nos dá missões incríveis. Eu acho que ele capturou um determinado grupo social para ots! Governor - Quest Quest Hardcore Oficialmente achamos ser a mais difícil missão no ot. Pode-se obter itens que não está no shoopie sms. Itens de hardcore aos equipamentos para cada profissão. Sacred Dragon Tales - Event Assim, as 10 missões de um dragão misterioso, cada missão é única. Dragão misterioso tem para você uma série de valiosos prêmios na forma de experience e itens. New Quest Room: Sala de quest totalmente reconstruída, agora parece muito mais agradável e linda! Reconstruiu a cidade/templo: A nova cidade é jescze mais misteriosa, esconde um monte de missões secretas, missões e locais para os quais podemos obter apenas alguns. O templo atualizou, agora com mais espaço, temos acrescentado novos teleports e npceki Novos monstros! Ghastly dragons Medusa Drakeny Helish Tortoisy Halloween Pumpkiny Rainbow Margarothy Sacred Dragon Child Sacred Mastery Novos NPC's! Bob Marley Governor Gladia Tommy Rastaman Uncle Fester Bob Marley Mother Novos Items! Armor-Noob Helmet-Noob Dark monk armor Guardian boots Dragon scale boots Lucky Charm Crystal-Tp Hardcore Set Hardcore Weapons E todos items Zaoan Novos Scripts! Agora, o seu progresso que você será capaz de verificar o log de quest Ou Lotto [sistema de bilhete! Ticket] Melhoria Tetris e Snake Boomberman Trem-atacante Monki Faster [você não pode matá-los] Segredos do sistema ou quests escondidas, missões, npceki lugar secreto Addons em nosso ots está ficando em 2 maneiras através de Missões Addon e Dolla Outfiter [alavanca dando addons no templo] agora muda roupas por 30min. Muito mais ataques e eventos Bounty Hunters [ou hunted system] Novos Systemas! War System Outfit system Afk system Extensive reporting system players New channels like "Yahoo" Castle System Vote System Boomberman system Tetris system Casino System Soccer System Snake system Addon Bonuses Lottery System Comandos para players! / Balance - controle de balanço ! Online - quem está online - Online ! Uptime - mostra quantas horas servidor Stoji ! Deathlist - lista de mortes ! Pvp - verifica se o servidor está pvp ou non-pvp ! serverinfo - informações do servidor / Commands - uma lista de comandos ! Soft - correção softy ! Firewalker - reparos FWB ! Backpack - mochila compra ! Aol - comprar Amulet of Loss ! Bless - abençoar compra 100% ! Premium - prêmio de compra ! spells - lista de spells ! Changesex - mudança de sexo ! Frags - mostra o número de frags ! it - guilda roupas mudança ! After - mudança de roupas festa ! Buyhouse - compra uma casa ! Sellhouse - vende uma casa ! Leavehouse - sair de casa ! Createguild - criar guildas ! Joinguild - Junte-se a guilda ! Afk on /! Afk off - afk sistema ! so - comando para votar ! Did not - comando para votar ! Bomb - bomba que você colocou no boomberman ! Ticket - Lotto sistema / War - todos os comandos para os goods Novos Eventos! Metin Stones Castle War Sacred Dragon Nesta edição, foi corrigido todos os erros de novos hosters [houses e problemas no map] Todos os créditos vão para Alex. Screens - Download - Via MediaFire Download - Via 4Shared3 pontos -
[Arquivado]Faça parte de nossa história
MarceloCB e um outro reagiu a arturDM por um tópico no fórum
Gostei da ideia, irei levar em pauta hoje na reunião, mas não será como você dissera.. Uma vez que os outfits serão por vocação e mais de uma raça existirá.2 pontos -
Alguem poderia mudar o ip do meu client?
Churuchuchu e um outro reagiu a Roksas por uma questão
Prontinho amigo, consegui lembrar o IP do primeiro cliente que você postou aqui no tópico, mudei o IP dos 2. Agora você tem 2 opções de uso: 1ª Opção (Pokemon_Nibe) = http://www.4shared.com/file/yxv5CEdZ/POKEMON_NIBE.html 2ª Opção (PDA_SLICER) = http://www.4shared.com/file/Td6dYhMi/PDA_SLICER.html2 pontos -
Se você usa alguma distro que não seja TFS 0.4, mude para ela, ou vice-versa. Atenciosamente, Thiagobji.2 pontos
-
Mensagem que aparece quando players criam novos chars
Roksas e um outro reagiu a MasterDino por uma questão
Cara ela aparece apenas 1 vez pra player, mais ela sempre vai aparecer para account manager. caso nao queira que isso aconteça faça assim, vai em creaturescripts/scripts crie um arquivo .lua com o nome de welcome.lua e coloque isso dentro: local texto = [[ESCREVA AQUI! ]] function onLogin(cid) if getPlayerStorageValue(cid, 12233) == -1 and getPlayerVocation(cid) > 0 then doShowTextDialog(cid, 2175, texto) setPlayerStorageValue(cid, 12233, 1) end return TRUE end salve e feche. registre a tag em creaturescripts.xml <event type="login" name="Welcome" event="script" value="welcome.lua"/> depois edite a vocation do account manager para "0". aqui eu testei e funfo, distro 8.54 se der problemas denovo, avise2 pontos -
Mostrando suas Hunts
kttallan reagiu a BananaFight por um tópico no fórum
Bom, como acho que todos ja viram o map do servidor de poketibia (Pxg) ele mostra icones, nomes etc no minimap, e hoje vim trazer isso para vocês Nome: Map IconDescrição: Adiciona um icone no minimapAutor: Eduardo Vicente (Banana Fight)Website: www.xtibia.com Versão 1.0 Features: Criar Icones no minimap Instalação dentro de modules/game_minimap/minimap.lua embaixo de : function toggle()if minimapButton:isOn() thenminimapWindow:close()minimapButton:setOn(false)elseminimapWindow:open()minimapButton:setOn(true)endend Você adiciona a função : function setMonsterCave(posx, posy, posz, icon, description)local pos = {}pos.x = posxpos.y = posypos.z = poszminimapWidget:addFlag(pos, icon, description)endfunction removeMonsterCave(posx, posy, posz, icon, description)local pos = {}pos.x = posxpos.y = posypos.z = poszminimapWidget:removeFlag(pos, icon, description)end Como usar setMonsterCave(Posição X do map, Posição Y do map,Posição Z do map, "Nome da Imagem", "Descrição que vai aparecer") Obs: como eu usei uma função que já existe você vai te que seguir um padrão na hora de adicionar o nome da sua imagem. Exemplo: O nome da minha imagem é "dragonicon.png", para que eu possa usar ela no script eu tenho que adicionar essa imagem dentro da pasta "data/images/game/minimap/", e vou ter que renomear essa imagem para "flagdragonicon.png", Ai depois de ter feito isso dentro do meu script quando eu for fazer o script adicionar essa imagem eu vou fazer da seguinte maneira : setMonsterCave(32238, 32240, 7, "dragonicon", "Dragon Cave") Se você ainda não entendeu é da seguinte forma, você tem uma imagem com nome "test.png", você vai adiciona a imagem no lugar certo, com o nome "flagtest.png", ai dentro do script você só usa "test", pois o script já sabe que vai ter que juntar flag+nome da imagem que você adicionou+.png. Obs 2: Sua imagem tem que ter o fundo transparente Obs 3: quando mais transparente for a imagem, mais do map aparece e causa o efeito igual ao do PXG, do map se abrindo. Exemplo de uso : arquivo : minimap.lua function init()minimapButton = modules.client_topmenu.addRightGameToggleButton('minimapButton', tr('Minimap') .. ' (Ctrl+M)', '/images/topbuttons/minimap', toggle)minimapButton:setOn(true)minimapWindow = g_ui.loadUI('minimap', modules.game_interface.getRightPanel())minimapWindow:setContentMinimumHeight(64)minimapWidget = minimapWindow:recursiveGetChildById('minimap')local gameRootPanel = modules.game_interface.getRootPanel()g_keyboard.bindKeyPress('Alt+Left', function() minimapWidget:move(1,0) end, gameRootPanel)g_keyboard.bindKeyPress('Alt+Right', function() minimapWidget:move(-1,0) end, gameRootPanel)g_keyboard.bindKeyPress('Alt+Up', function() minimapWidget:move(0,1) end, gameRootPanel)g_keyboard.bindKeyPress('Alt+Down', function() minimapWidget:move(0,-1) end, gameRootPanel)g_keyboard.bindKeyDown('Ctrl+M', toggle)g_keyboard.bindKeyDown('Ctrl+Shift+M', toggleFullMap)minimapWindow:setup()connect(g_game, {onGameStart = online,onGameEnd = offline,})connect(LocalPlayer, {onPositionChange = updateCameraPosition})if g_game.isOnline() thenonline()setMonsterCave(32239, 32240, 7, "dragon", "hihi")removeMonsterCave(32239, 32240, 7, "dragon", "hihi")endend1 ponto -
Olá galerinha do Xtibia, estou aqui para postar um bom servidor derivado. Não queria estar postando esse servidor meio que forçado, tendo em vista que foi roubado e tem gente por de trás ganhando dinheiro sujo. Então sem mais delongas, ai esta o NtoShinobi que esta sendo vendido por alguem popular aqui do forum, que prefiro não citar o nome. ------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------ Mapa do servidor conta com 4 vilas -Amegakure -Suna -Mist -Konoha Consta com 14 vocações -Naruto - Sasuke - Sakura - Rock Lee- Neji - Hinata - Kiba - Shikamaru - Tenten - Gaara - Killer Bee - Kakashi - Itachi - [sistema de Graduação] -Genin -Chunin -Jounin -Anbu [sistema de Saga] -transformar -reverter -Serve para trocar a roupa do seu persoangem, ganha umas roupas novas a cada 25 level upado, dependendo da vocação, isso varia muito. -Exemplo, Naruto tem umas 10 roupas, enquanto tenten tem apenas 4. Nada afeta ao personagem, apenas visualmente mesmo. -Caso deseja alterar para ter efeito em alguma coisa, você pode editar em vocations.xml [sistema de Recompensa] -Npc Oinin coloca a cabeça de jogadores a venda por um determinado preço, e se alguem matar o jogador que tem recompensa ganha algo em troca. [Eventos do Servidor] -Evento Guerra Ninja -Evento Assassin -Evento Roube a Bandeira -Evento Tsuki no Me [sistema de Jutsus] -Posso dizer que todos os jutsus são adequados com o anime NARUTO, dando mais realidade no jogo de naruto. -Exemplo, chidori do sasuke, o personagem ao relizar pula até o jogador para acertar o jutsu. [boss] -Tem o enrredo da historia, ao qual deve matar os Boss do jogo, que na verdade são os membros da Akatsuki. -Cada Boss se encontra em uma parte do mapa, logo abaixo vai ter os detalhes do Mapa! [Task] -Npc Anbu, ele se localiza acima dos trainers, ele realiza as famosas task do opentibia no naruto. Bom.. O melhor mesmo é vocês abrirem e verem do que estou falando, e se adequarem ao jogo. =) Algumas imagems: Desde já aviso, que um bom dedicado é o começo para tudo. Eu iniciei o projeto com dedicado fracos, o que causava lag e kicks. Na minha humilde opnião, a ServerSoft é uma boa empresa de host para opentibia, tendo em vista que a equipe da mesma tem conhecimento com o mundo Opentibia. É isso ae galera, conforme o tempo eu estarei postando umas atualizaçõezinhas Link do download - Atualizado dia 29/03/2013 Updates Não irei mais atualizar o servidor por enquanto, pois existem muitos ladrões de conteudos e créditos no forum, então por hora ficara assim. LINKS PARA INICIANTES Para quem nunca criou um servidor de uma pesquisada na area de iniciantes clicando aqui. Para saber como criar um client proprio clique aqui. Ou então entre no site http://vapus.net/customclient e crie por la mesmo. E claro, todos os devidos créditos pelo projeto, mesmo sendo um único script. Naruto Open Wings v1.2 {o começo de tudo} Lks {RobinHood} Jhon992 Eskylo Vodkart Demonbholder Oneshot Slicer SkyMagmum Kydrai Christian Letti LuckOake Acredito que tem os créditos de todos(msm sendo 1 script.lua), mesmo aqueles que nem sabe que ajudaram. Caso faltou alguem é só falar =)1 ponto
-
[Gesior Acc] Guild War System Com Escudos
guiduarteee reagiu a walefxavier por um tópico no fórum
Vou postar o tão famoso Guild War System Com Escudos. Vou começar pelo site : Vá em Xampp/Htdocs e crie e um arquivo chamado wars.php,dentro add isto: <?php $main_content = "<h1 align=\"center\">Guild Wars</h1> <script type=\"text/javascript\"><!-- function show_hide(flip) { var tmp = document.getElementById(flip); if(tmp) tmp.style.display = tmp.style.display == 'none' ? '' : 'none'; } --></script> <a onclick=\"show_hide('information'); return false;\" style=\"cursor: pointer;\"><h1><center>» Click to se the commands «<center></h1></a> <table width=\"100%\" border=\"0\" cellspacing=\"1\" cellpadding=\"4\" id=\"information\" style=\"display: none;\";> <tr align=\"center\"><b>You must send this commands in GUILD CHAT.</tr> <tr style=\"background: #512e0b;\"><td align=\"center\" class=\"white\"><b>Command</b></td><td colspan=\"2\" align=\"center\" class=\"white\"><b>Description</b></td></tr> <tr style=\"background: #F1E0C6;\"><td><b>/war invite, guild name, fraglimit</b></td><td>Sends an invitation to start the war. Example: <font color=red><BR>/war invite, Chickens, 150<BR></font><B>(Invite a guild to war with 150 frags count.)</B></td></tr> <tr style=\"background: #D4C0A1;\"><td><b>/war invite, guild name, fraglimit, money</b></td><td>Send the invitation to start the war. Example: <font color=red><BR>/war invite, Chickens, 150, 10000</font><br><B> (Invite a guild to war with 150 frags count and payment of 10000 gold coins <- you need donate to guild to use it.)<B></td></tr> <tr style=\"background: #F1E0C6;\"><td><b>/war accept, guild name</b></td><td>Accepts the invitation to start a war. Example: <font color=red><BR>/war accept, Chickens</font><BR><B>(Accept the war against guild \"Chickens\".)</b></td></tr> <tr style=\"background: #D4C0A1;\"><td><b>/war reject, guild name</b></td><td>Rejects the invitation to start a war. Example: <font color=red><BR>/war reject, Chickens</font><BR><B>(Reject a invitation to war from Chickens.)</B></td></tr> <tr style=\"background: #F1E0C6;\"><td><b>/war cancel, guild name</b></td><td>Cancels the invitation. Example: <font color=red><BR>/war cancel, Chickens</font><br><b>(Cancel my guild invitation to war with Chickens.)</b></td></tr> <tr style=\"background: #D4C0A1;\"><td><b>/balance</b></td><td>See the guild balance - balance of money.</td></tr> <tr style=\"background: #F1E0C6;\"><td><b>/balance donate value</b></td><td>Deposits money on the guild's bank account. All players can donate. Example: <font color=red><BR>/balance donate 100000 </font><BR><B>(You will donate 100k to your guild balance.)</B></td></tr> <tr style=\"background: #D4C0A1;\"><td><b>/balance pick value</b></td><td>Withdraws money from the guild's bank account. Can be used only by the guild leader. Example: <font color=red><BR>/balance pick 100000 </font><BR><B>(You will withdraw 100k from your guild balance.)</B></td></tr> </table> <table width=\"100%\" border=\"0\" cellspacing=\"1\" cellpadding=\"4\"> <tr> <td style=\"background: #512e0b\" class=\"white\" width=\"150\"><b>Aggressor</b></td> <td style=\"background: #512e0b\" class=\"white\"><b>Information</b></td> <td style=\"background: #512e0b\" class=\"white\" width=\"150\"><b>Enemy</b></td> </tr><tr style=\"background: #F1E0C6;\">"; $count = 0; foreach($SQL->query('SELECT * FROM `guild_wars` WHERE `status` IN (1,4) OR ((`end` >= (UNIX_TIMESTAMP() - 604800) OR `end` = 0) AND `status` IN (0,5));') as $war) { $a = $ots->createObject('Guild'); $a->load($war['guild_id']); if(!$a->isLoaded()) continue; $e = $ots->createObject('Guild'); $e->load($war['enemy_id']); if(!$e->isLoaded()) continue; $alogo = $a->getCustomField('logo_gfx_name'); if(empty($alogo) || !file_exists('guilds/' . $alogo)) $alogo = 'default_logo.gif'; $elogo = $e->getCustomField('logo_gfx_name'); if(empty($elogo) || !file_exists('guilds/' . $elogo)) $elogo = 'default_logo.gif'; $count++; $main_content .= "<tr style=\"background: " . (is_int($count / 2) ? $config['site']['darkborder'] : $config['site']['lightborder']) . ";\"> <td align=\"center\"><a href=\"?subtopic=guilds&action=show&guild=".$a->getId()."\"><img src=\"guilds/".$alogo."\" width=\"64\" height=\"64\" border=\"0\"/><br />".$a->getName()."</a></td> <td align=\"center\">"; switch($war['status']) { case 0: { $main_content .= "<b>Pending acceptation</b><br />Invited on " . date("M d Y, H:i:s", $war['begin']) . " for " . ($war['end'] > 0 ? (($war['end'] - $war['begin']) / 86400) : "unspecified") . " days. The frag limit is set to " . $war['frags'] . " frags, " . ($war['payment'] > 0 ? "with payment of " . $war['payment'] . " bronze coins." : "without any payment.")."<br />Will expire in three days."; break; } case 3: { $main_content .= "<s>Canceled invitation</s><br />Sent invite on " . date("M d Y, H:i:s", $war['begin']) . ", canceled on " . date("M d Y, H:i:s", $war['end']) . "."; break; } case 2: { $main_content .= "Rejected invitation<br />Invited on " . date("M d Y, H:i:s", $war['begin']) . ", rejected on " . date("M d Y, H:i:s", $war['end']) . "."; break; } case 1: { $main_content .= "<font size=\"6\"><span style=\"color: red;\">" . $war['guild_kills'] . "</span> : <span style=\"color: lime;\">" . $war['enemy_kills'] . "</span></font><br /><br /><span style=\"color: darkred; font-weight: bold;\">On a brutal war</span><br />Began on " . date("M d Y, H:i:s", $war['begin']) . ($war['end'] > 0 ? ", will end up at " . date("M d Y, H:i:s", $war['end']) : "") . ".<br />The frag limit is set to " . $war['frags'] . " frags, " . ($war['payment'] > 0 ? "with payment of " . $war['payment'] . " bronze coins." : "without any payment."); break; } case 4: { $main_content .= "<font size=\"6\"><span style=\"color: red;\">" . $war['guild_kills'] . "</span> : <span style=\"color: lime;\">" . $war['enemy_kills'] . "</span></font><br /><br /><span style=\"color: darkred;\">Pending end</span><br />Began on " . date("M d Y, H:i:s", $war['begin']) . ", signed armstice on " . date("M d Y, H:i:s", $war['end']) . ".<br />Will expire after reaching " . $war['frags'] . " frags. ".($war['payment'] > 0 ? "The payment is set to " . $war['payment'] . " bronze coins." : "There's no payment set."); break; } case 5: { $main_content .= "<i>Ended</i><br />Began on " . date("M d Y, H:i:s", $war['begin']) . ", ended on " . date("M d Y, H:i:s", $war['end']) . ". Frag statistics: <span style=\"color: red;\">" . $war['guild_kills'] . "</span> to <span style=\"color: lime;\">" . $war['enemy_kills'] . "</span>."; break; } default: { $main_content .= "Unknown, please contact with gamemaster."; break; } } $main_content .= "<br /><br /><a onclick=\"show_hide('war-details:" . $war['id'] . "'); return false;\" style=\"cursor: pointer;\">» Details «</a></td> <td align=\"center\"><a href=\"?subtopic=guilds&action=show&guild=".$e->getId()."\"><img src=\"guilds/".$elogo."\" width=\"64\" height=\"64\" border=\"0\"/><br />".$e->getName()."</a></td> </tr> <tr id=\"war-details:" . $war['id'] . "\" style=\"display: none; background: " . (is_int($count / 2) ? $config['site']['darkborder'] : $config['site']['lightborder']) . ";\"> <td colspan=\"3\">"; if(in_array($war['status'], array(1,4,5))) { $deaths = $SQL->query('SELECT `pd`.`id`, `pd`.`date`, `gk`.`guild_id` AS `enemy`, `p`.`name`, `pd`.`level` FROM `guild_kills` gk LEFT JOIN `player_deaths` pd ON `gk`.`death_id` = `pd`.`id` LEFT JOIN `players` p ON `pd`.`player_id` = `p`.`id` WHERE `gk`.`war_id` = ' . $war['id'] . ' AND `p`.`deleted` = 0 ORDER BY `pd`.`date` DESC')->fetchAll(); if(!empty($deaths)) { foreach($deaths as $death) { $killers = $SQL->query('SELECT `p`.`name` AS `player_name`, `p`.`deleted` AS `player_exists`, `k`.`war` AS `is_war` FROM `killers` k LEFT JOIN `player_killers` pk ON `k`.`id` = `pk`.`kill_id` LEFT JOIN `players` p ON `p`.`id` = `pk`.`player_id` WHERE `k`.`death_id` = ' . $death['id'] . ' ORDER BY `k`.`final_hit` DESC, `k`.`id` ASC')->fetchAll(); $count = count($killers); $i = 0; $others = false; $main_content .= date("j M Y, H:i", $death['date']) . " <span style=\"font-weight: bold; color: " . ($death['enemy'] == $war['guild_id'] ? "red" : "lime") . ";\">+</span> <a href=\"index.php?subtopic=characters&name=" . urlencode($death['name']) . "\"><b>".$death['name']."</b></a> "; foreach($killers as $killer) { $i++; if($killer['is_war'] != 0) { if($i == 1) $main_content .= "killed at level <b>".$death['level']."</b> by "; else if($i == $count && $others == false) $main_content .= " and by "; else $main_content .= ", "; if($killer['player_exists'] == 0) $main_content .= "<a href=\"index.php?subtopic=characters&name=".urlencode($killer['player_name'])."\">"; $main_content .= $killer['player_name']; if($killer['player_exists'] == 0) $main_content .= "</a>"; } else $others = true; if($i == $count) { if($others == true) $main_content .= " and few others"; $main_content .= ".<br />"; } } } } else $main_content .= "<center>There were no frags on this war so far.</center>"; } else $main_content .= "<center>This war did not began yet.</center>"; $main_content .= "</td> </tr>"; } if($count == 0) $main_content .= "<tr style=\"background: ".$config['site']['darkborder'].";\"> <td colspan=\"3\">Currently there are no active wars.</td> </tr>"; $main_content .= "</table>"; $main_content .= '<div align="right"><small><b>Customized by: <a href="http://www.xtibia.com/forum/user/240289-walef-xavier">Walef Xavier</a></b></small></div><br />'; ?> Agora vá em Xampp/Htdocs/index.php e add o seguinte: case "wars"; $subtopic = "wars"; $topic = "Guild Wars"; include("wars.php"); break; Agora para finalizar a parte do site vá em Xampp/Htdocs/Layout/Tibiacom/layout.php e add o seguinte: <a href='?subtopic=wars'> <div id='submenu_wars' class='Submenuitem' onMouseOver='MouseOverSubmenuItem(this)' onMouseOut='MouseOutSubmenuItem(this)'> <div class='LeftChain' style='background-image:url(<?PHP echo $layout_name; ?>/images/general/chain.gif);'></div> <div id='ActiveSubmenuItemIcon_polls' class='ActiveSubmenuItemIcon' style='background-image:url(<?PHP echo $layout_name; ?>/images/menu/icon-activesubmenu.gif);'></div> <div class='SubmenuitemLabel'><font color=red>Guild Wars</font></div> <div class='RightChain' style='background-image:url(<?PHP echo $layout_name; ?>/images/general/chain.gif);'></div> </div> </a> Agora vamos para seu Ot: Va em GlobalEvents/scripts/start.lua e add o seguinte: db.executeQuery("DELETE FROM `guild_wars` WHERE `status` = 0 AND `begin` < " .. (os.time() - 2 * 86400) .. ";") db.executeQuery("UPDATE `guild_wars` SET `status` = 5, `end` = " .. os.time() .. " WHERE `status` = 1 AND `end` > 0 AND `end` < " .. os.time() .. ";") Agora vá em Lib e crie um arquivo .lua chamado 101-war,dentro add o seguinte: WAR_GUILD = 0 WAR_ENEMY = 1 Agora para finalizar vamos colocar os comandos em Talkactions ! Vá em Talkactions/scripts e crie dois arquivos chamados war.lua e balance.lua,dentro add o seguinte: War.lua function onSay(cid, words, param, channel) local guild = getPlayerGuildId(cid) if(not guild or getPlayerGuildLevel(cid) < GUILDLEVEL_LEADER) then doPlayerSendChannelMessage(cid, "", "You cannot execute this talkaction.", TALKTYPE_CHANNEL_W, 0) return true end local t = string.explode(param, ",") if(not t[2]) then doPlayerSendChannelMessage(cid, "", "Not enough param(s).", TALKTYPE_CHANNEL_W, 0) return true end local enemy = getGuildId(t[2]) if(not enemy) then doPlayerSendChannelMessage(cid, "", "Guild \"" .. t[2] .. "\" does not exists.", TALKTYPE_CHANNEL_W, 0) return true end if(enemy == guild) then doPlayerSendChannelMessage(cid, "", "You cannot perform war action on your own guild.", TALKTYPE_CHANNEL_W, 0) return true end local enemyName, tmp = "", db.getResult("SELECT `name` FROM `guilds` WHERE `id` = " .. enemy) if(tmp:getID() ~= -1) then enemyName = tmp:getDataString("name") tmp:free() end if(isInArray({"accept", "reject", "cancel"}, t[1])) then local query = "`guild_id` = " .. enemy .. " AND `enemy_id` = " .. guild if(t[1] == "cancel") then query = "`guild_id` = " .. guild .. " AND `enemy_id` = " .. enemy end tmp = db.getResult("SELECT `id`, `begin`, `end`, `payment` FROM `guild_wars` WHERE " .. query .. " AND `status` = 0") if(tmp:getID() == -1) then doPlayerSendChannelMessage(cid, "", "Currently there's no pending invitation for a war with " .. enemyName .. ".", TALKTYPE_CHANNEL_W, 0) return true end if(t[1] == "accept") then local _tmp = db.getResult("SELECT `balance` FROM `guilds` WHERE `id` = " .. guild) local state = _tmp:getID() < 0 or _tmp:getDataInt("balance") < tmp:getDataInt("payment") _tmp:free() if(state) then doPlayerSendChannelMessage(cid, "", "Your guild balance is too low to accept this invitation.", TALKTYPE_CHANNEL_W, 0) return true end db.query("UPDATE `guilds` SET `balance` = `balance` - " .. tmp:getDataInt("payment") .. " WHERE `id` = " .. guild) end query = "UPDATE `guild_wars` SET " local msg = "accepted " .. enemyName .. " invitation to war." if(t[1] == "reject") then query = query .. "`end` = " .. os.time() .. ", `status` = 2" msg = "rejected " .. enemyName .. " invitation to war." elseif(t[1] == "cancel") then query = query .. "`end` = " .. os.time() .. ", `status` = 3" msg = "canceled invitation to a war with " .. enemyName .. "." else query = query .. "`begin` = " .. os.time() .. ", `end` = " .. (tmp:getDataInt("end") > 0 and (os.time() + ((tmp:getDataInt("begin") - tmp:getDataInt("end")) / 86400)) or 0) .. ", `status` = 1" end query = query .. " WHERE `id` = " .. tmp:getDataInt("id") if(t[1] == "accept") then doGuildAddEnemy(guild, enemy, tmp:getDataInt("id"), WAR_GUILD) doGuildAddEnemy(enemy, guild, tmp:getDataInt("id"), WAR_ENEMY) end tmp:free() db.query(query) doBroadcastMessage(getPlayerGuildName(cid) .. " has " .. msg, MESSAGE_EVENT_ADVANCE) return true end if(t[1] == "invite") then local str = "" tmp = db.getResult("SELECT `guild_id`, `status` FROM `guild_wars` WHERE `guild_id` IN (" .. guild .. "," .. enemy .. ") AND `enemy_id` IN (" .. enemy .. "," .. guild .. ") AND `status` IN (0, 1)") if(tmp:getID() ~= -1) then if(tmp:getDataInt("status") == 0) then if(tmp:getDataInt("guild_id") == guild) then str = "You have already invited " .. enemyName .. " to war." else str = enemyName .. " have already invited you to war." end else str = "You are already on a war with " .. enemyName .. "." end tmp:free() end if(str ~= "") then doPlayerSendChannelMessage(cid, "", str, TALKTYPE_CHANNEL_W, 0) return true end local frags = tonumber(t[3]) if(frags ~= nil) then frags = math.max(10, math.min(1000, frags)) else frags = 100 end local payment = tonumber(t[4]) if(payment ~= nil) then payment = math.max(100000, math.min(1000000000, payment)) tmp = db.getResult("SELECT `balance` FROM `guilds` WHERE `id` = " .. guild) local state = tmp:getID() < 0 or tmp:getDataInt("balance") < payment tmp:free() if(state) then doPlayerSendChannelMessage(cid, "", "Your guild balance is too low for such payment.", TALKTYPE_CHANNEL_W, 0) return true end db.query("UPDATE `guilds` SET `balance` = `balance` - " .. payment .. " WHERE `id` = " .. guild) else payment = 0 end local begining, ending = os.time(), tonumber(t[5]) if(ending ~= nil and ending ~= 0) then ending = begining + (ending * 86400) else ending = 0 end db.query("INSERT INTO `guild_wars` (`guild_id`, `enemy_id`, `begin`, `end`, `frags`, `payment`) VALUES (" .. guild .. ", " .. enemy .. ", " .. begining .. ", " .. ending .. ", " .. frags .. ", " .. payment .. ");") doBroadcastMessage(getPlayerGuildName(cid) .. " has invited " .. enemyName .. " to war till " .. frags .. " frags.", MESSAGE_EVENT_ADVANCE) return true end if(not isInArray({"end", "finish"}, t[1])) then return false end local status = (t[1] == "end" and 1 or 4) tmp = db.getResult("SELECT `id` FROM `guild_wars` WHERE `guild_id` = " .. guild .. " AND `enemy_id` = " .. enemy .. " AND `status` = " .. status) if(tmp:getID() ~= -1) then local query = "UPDATE `guild_wars` SET `end` = " .. os.time() .. ", `status` = 5 WHERE `id` = " .. tmp:getDataInt("id") tmp:free() doGuildRemoveEnemy(guild, enemy) doGuildRemoveEnemy(enemy, guild) db.query(query) doBroadcastMessage(getPlayerGuildName(cid) .. " has " .. (status == 4 and "mend fences" or "ended up a war") .. " with " .. enemyName .. ".", MESSAGE_EVENT_ADVANCE) return true end if(status == 4) then doPlayerSendChannelMessage(cid, "", "Currently there's no pending war truce from " .. enemyName .. ".", TALKTYPE_CHANNEL_W, 0) return true end tmp = db.getResult("SELECT `id`, `end` FROM `guild_wars` WHERE `guild_id` = " .. enemy .. " AND `enemy_id` = " .. guild .. " AND `status` = 1") if(tmp:getID() ~= -1) then if(tmp:getDataInt("end") > 0) then tmp:free() doPlayerSendChannelMessage(cid, "", "You cannot request ending for war with " .. enemyName .. ".", TALKTYPE_CHANNEL_W, 0) return true end local query = "UPDATE `guild_wars` SET `status` = 4, `end` = " .. os.time() .. " WHERE `id` = " .. tmp:getDataInt("id") tmp:free() db.query(query) doBroadcastMessage(getPlayerGuildName(cid) .. " has signed an armstice declaration on a war with " .. enemyName .. ".", MESSAGE_EVENT_ADVANCE) return true end doPlayerSendChannelMessage(cid, "", "Currently there's no active war with " .. enemyName .. ".", TALKTYPE_CHANNEL_W, 0) return true end balance.lua local function isValidMoney(value) if(value == nil) then return false end return (value > 0 and value <= 99999999999999) end function onSay(cid, words, param, channel) local guild = getPlayerGuildId(cid) if(guild == 0) then return false end local t = string.explode(param, ' ', 1) if(getPlayerGuildLevel(cid) == GUILDLEVEL_LEADER and isInArray({ 'pick' }, t[1])) then if(t[1] == 'pick') then local money = { tonumber(t[2]) } if(not isValidMoney(money[1])) then doPlayerSendChannelMessage(cid, '', 'Invalid amount of money specified.', TALKTYPE_CHANNEL_W, 0) return true end local result = db.getResult('SELECT `balance` FROM `guilds` WHERE `id` = ' .. guild) if(result:getID() == -1) then return false end money[2] = result:getDataLong('balance') result:free() if(money[1] > money[2]) then doPlayerSendChannelMessage(cid, '', 'The balance is too low for such amount.', TALKTYPE_CHANNEL_W, 0) return true end if(not db.query('UPDATE `guilds` SET `balance` = `balance` - ' .. money[1] .. ' WHERE `id` = ' .. guild .. ' LIMIT 1;')) then return false end doPlayerAddMoney(cid, money[1]) doPlayerSendChannelMessage(cid, '', 'You have just picked ' .. money[1] .. ' money from your guild balance.', TALKTYPE_CHANNEL_W, 0) else doPlayerSendChannelMessage(cid, '', 'Invalid sub-command.', TALKTYPE_CHANNEL_W, 0) end elseif(t[1] == 'donate') then local money = tonumber(t[2]) if(not isValidMoney(money)) then doPlayerSendChannelMessage(cid, '', 'Invalid amount of money specified.', TALKTYPE_CHANNEL_W, 0) return true end if(getPlayerMoney(cid) < money) then doPlayerSendChannelMessage(cid, '', 'You don\'t have enough money.', TALKTYPE_CHANNEL_W, 0) return true end if(not doPlayerRemoveMoney(cid, money)) then return false end db.query('UPDATE `guilds` SET `balance` = `balance` + ' .. money .. ' WHERE `id` = ' .. guild .. ' LIMIT 1;') doPlayerSendChannelMessage(cid, '', 'You have transfered ' .. money .. ' money to your guild balance.', TALKTYPE_CHANNEL_W, 0) else local result = db.getResult('SELECT `name`, `balance` FROM `guilds` WHERE `id` = ' .. guild) if(result:getID() == -1) then return false end doPlayerSendChannelMessage(cid, '', 'Current balance of guild ' .. result:getDataString('name') .. ' is: ' .. result:getDataLong('balance') .. ' bronze coins.', TALKTYPE_CHANNEL_W, 0) result:free() end return true end Agora vá em Talkactions/talkactions.xml e add as duas tags: <talkaction words="/war" channel="0" event="script" value="war.lua" desc="(Guild channel command) War management."/> <talkaction words="/balance" channel="0" event="script" value="balance.lua" desc="(Guild channel command) Balance management."/> Pronto,seu Guild War Systema está instalado...mas para funcionar necessitará das tabelas na sua database e do Tfs 0.4 .Vou posta-los abaixo,respectivamente. . Tabelas . Para quem ainda não sabe add tabelas a sua database,vou ensinar: Acesse seu phpmyadmin,digite sua senha (caso tenha),clique no nome da sua database a esquerda,assim que carregar a sua database clique em SQL lá em cima...Aparecerá um espaço em branco lá voce irá add as seguintes tabelas...e depois clicar em Executar. CREATE TABLE IF NOT EXISTS `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`) ) ENGINE=InnoDB; ALTER TABLE `guild_wars` ADD CONSTRAINT `guild_wars_ibfk_1` FOREIGN KEY (`guild_id`) REFERENCES `guilds` (`id`) ON DELETE CASCADE, ADD CONSTRAINT `guild_wars_ibfk_2` FOREIGN KEY (`enemy_id`) REFERENCES `guilds` (`id`) ON DELETE CASCADE; ALTER TABLE `guilds` ADD `balance` BIGINT UNSIGNED NOT NULL AFTER `motd`; CREATE TABLE IF NOT EXISTS `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 ) ENGINE = InnoDB; ALTER TABLE `guild_kills` ADD CONSTRAINT `guild_kills_ibfk_1` FOREIGN KEY (`war_id`) REFERENCES `guild_wars` (`id`) ON DELETE CASCADE, ADD CONSTRAINT `guild_kills_ibfk_2` FOREIGN KEY (`death_id`) REFERENCES `player_deaths` (`id`) ON DELETE CASCADE, ADD CONSTRAINT `guild_kills_ibfk_3` FOREIGN KEY (`guild_id`) REFERENCES `guilds` (`id`) ON DELETE CASCADE; ALTER TABLE `killers` ADD `war` INT NOT NULL DEFAULT 0; Pronto o Guild Wars System está totalmente instalado...falta apenas o Tfs 0.4 ! O meu The Forggoten Server 0.4 também comprei do mesmo cara que me vendeu o GWS,tenho um também que comprei na ChaitoSoft,mais conversei com eles por Msn e não permitirão que eu postasse pra ninguem,rsrs. Então vou postar o link do download e o scan: TFS 0.4 DEV Scan Ai está a DEV.... Também será necessario usar o items.xml e items.otb , a não ser que o que vc tenha seja compativel com o distro. Item.xml e otb Scan Obs: Este distro não carrega scripts que tenha a função "dbExecute.query",sempre que tiver mude para "db.query" .Todo o script ja está configurado para funcionar assim,não se preucupe. Só isso,obrigado a todos...que Deus Abençoe voces sempre !1 ponto -
Faz tempo que estou querendo colaborar com Xtibia, e hoje lá vai um mini tutorial para ajudar quem estiver com alguma dificuldade ao tentar abrir o seu map no remeres. Eu procurei diversos Tutoriais para tentar sanar meu problema com map editor, não encontrando nenhum que resolvesse eu fiz um teste e deu certo, e agora vou compartilhar. "Meu problema não era quando eu tentava criar um mapa do zero, mas sim quando eu queria editar os mapas de outros autores." para executar este tutorial eu usei o seguinte mapa: Map:> mastermap.otbm Autor:> Brun123 Tutorial: Se ao tentar abrir seu Map com o Remeres e ele aparecer com o "chão" vermelho em algumas partes, ou com partes do tibia como na imagem abaixo: Feche o Remeres e faça o seguinte: ►►Vá na pasta "C:\Arquivos de Programa\Remere's Map Editor\data\854" (Porque a pasta "854"?Essa é a pasta com os arquivos compatíveis com a versão do poketibia 8.54) Se você fizer tudo certo irá ver esses arquivos dentro da pasta: ►► Minimize esta pasta e agora vá em seu "Ot" ...data\ e copie os arquivos "items.xml" e "items.otb" e cole-os na pasta "C:\Arquivos de Programa\Remere's Map Editor\data\854" (vai perguntar se deseja substituir clique em ok) ►► Agora procure pelo arquivo "creatures.xml" na pasta do seu "Ot" e também cole-o na pasta "C:\Arquivos de Programa\Remere's Map Editor\data\854" e pronto. Atenção: para visualizar seu mapa e fazer edições nele abra-o diretamente sem abrir o Remere's por exemplo clique duas vezes em "mastermap.otbm" Ao abrir o mapa diretamente pelo Remeres ficará assim: Você só estará vendo seu minimap apertando a tecla "M", mas o resto do conteúdo não. Ao abrir seu mapa cicando duas vezes no ìcone "seu mapa.otbm" o Remeres irá carregar as configurações e aperecerá essa informação: Clique em "ok" e seu mapa será carregado. Depois poderá aparecer esta outra informação no seu editor: Caso essa mensagem apareça é por que o mapa foi salvo em uma versão mais antiga do Remeres e fica ao seu critério atualizar ou não. ►E como meu já disse abra seu mapa diretamente sem executar o Remere Clicando diretamente no icone do "seumap.otb": Você verá que seu mapa agora está completo sem nenhum erro! Mas espere, ao clicar em Pallete/Creature Pallete não estiver visualizando as imagens de seus pokemons, Shiny/pokes e nem dos NPC's então você deverá exporta-los: ►Vá no menu superior do Remere e Clique em "File" depois em "Import►Import Monsters/NPC..." Irá abrir uma janela para que você aponte onde estão esses arquivos tipo "xml". Eles estão em "...\data\monster\pokes" aperte "Ctrl+A" para selecionar todos os aquivos tipo "xml" depois clique em "Abrir". ►Faça a mesma coisa com os demais arquivos: Seus "NPC's" estão em "...\data\NPC" Carregue esses Arquivos também. Seus "Pokemons Shiny" estão em "...\data\monster\pokes\Shiny". Pronto tudo carregado com êxito e você pode editar o mapa do jeito que quiser. Meu primeiro Tutorial espero ter postado no lugar certo e que possa ajudar quem está com o mesmo problema que eu tive. Desculpem algum erro ou se fui muito repetitivo, pois eu vi que em alguns tutoriais tem muito Flood por causa dos usuários que não entenderam bem o que foi escrito. Falow ai galera, e quem sabe até um próximo tutorial ! Pasta Data do Remere's com as modificações do tutorial >> http://ads.tt/4ZGomA1 ponto
-
[9.7] Global Compacto (TPS)
Khinzer reagiu a mkbrabsolute por um tópico no fórum
Olá XTibianos, tenho este servidor há algum tempo no meu computador onde fiquei modificando nas horas vagas, mas este servidor também há donwload no blacktibia, no entanto peguei a base, customizei retirei alguns bugs e estou disponibilizando a vocês meus queridos miguxos! Mapa Global Compacto Com Teleports! Citys: *Carlin *Thais *Venore *Ab'dendriel *Edron *Yalahar *Port hope *Darashia *Ankrahmun *Liberty bay *Farmine *Cidade Premium Quests: xDemon Helmet xBlue Legs xDemon Oak xInquisition xPits of Inferno xAnnihilator xHell Quest xSoul Scroll xHOTA xHorned Helmet xDraken Set xYalahari Set xNovas Quests! Addon por Quest Todas Mounts do 9.10 !commands Novos Eventos Sistema de PET! Task! GNOME BASE 100% FULL Zombie Event Dota Event Tormenta de Fogo Defend The King V5.0 WOE 100% War System 100% COM ESCUDINHOS <- mai é gay memo Diversas coisas e sistemas! Account Manager: 1/1 Conta do ADM: absolute/tibia Junto com o download contém: OT RESTARTER + PORTSAFE ANTI NUKER! Compatível com: Windows 32Bits/64Bits Linux 34Bits/64Bits (COMPILAR) Diversos S.O COMPILANDO. IMAGENS: Créditos: Galaxi (BlackTIbia) (BASE DO OT) MKBRABSOLUTE (Modificar, Organizar, testar, retirar bug's e trazer ao Xtibia!) Crystal TeaM (base diversa) TFS TEAM E os demais aí Espero que gostem e não esqueçam de clicar no REP+! Postando, porque de graça é mais gostoso!1 ponto -
[Video Aula - Completa] Como Add Novos Pokemons no PDA
Elder Skrill reagiu a Gabrieltxu por um tópico no fórum
Conteudo Retirado.1 ponto -
Criando Um Cliente 100% Proprio
LuisMatheuziin reagiu a Tony por um tópico no fórum
Olá pessoal do Xtibia! Hoje vou ensinar a vocês como criar um cliente 100% próprio para seu servidor de tibia. :forward: Créditos :back: :star2: Jakiin :star2: Trazer ao x-tibia :star2: TiraDuvidas :star2: Fazer o Tutorial Este tópico recebeu destaque em nosso portal!1 ponto -
Poketibia Erondio-Site e Suas versões!
Dnick reagiu a Gabrieltxu por um tópico no fórum
•[Pokemon] Servidor Erondino-Site v13• obs: Nesse Topíco Irei Postar Todas as Atualizaçoes melhor do que ir Criando um Topico Toda Hora que Atualizar Versoes Antigas! \/ Atualização dia 30/03/13 13.1 • Menu: ├ Informações; ├ Ediçoes; ├ Erros; ├ Prints; ├ Download; └ Creditos. • Informações Basicas • • Edições / Ajustes • • Erros Do Servidor • • Download's • >Server: http://www.4shared.c..._Site_v131.html >Client separado: http://www.4shared.c...ite_v131_C.html →Creditos← >Erondino >Hobab >Bradd Rullex >Rafael Bode >Bruno Carvalho >Gilmar (Configuraçao do site) >Flare (Imagen Do client)1 ponto -
PS: Ainda tem Uns Bugs... E Eu sei... tive uma grande ajuda do Gears... e também do DuMal E tem algumas partes incompletas e outras com um pouco da montanha vermelha! Obrigado por verem meu Show off ^^ depois estarei postando mais imagens Abraços.1 ponto
-
Novos Pokemons
JonPiress reagiu a Faelzdanil por um tópico no fórum
Ola povo lindo ! Estou trazendo outro conteúdo pra vocês... Agora são os novos Pokemons que a PXG lançou. Não são exatamente novos, e sim com um design diferente e melhorado. Esses pokemons são: Arcanine / Shiny Arcanine; - Contendo Ride Blastoise / Shiny Blastoise; - Contendo Surf Charizard / Shiny Charizard; - Contendo Fly Venusaur / Shiny Venusaur; - Contendo Ride Kabutops; - Contendo Surf Ancient Blastoise; Ancient Charizard; Uma imagem mostrando como eles estão: Bom como podem ter notado, estão bem diferentes e mais bonitos. ( amei o arcanine ) Então é isso ai, espero que tenham gostado. Downloads: Formatos .IDC Link 1 ( SpeedyShare ) Link 2 ( MediaFire ) Link 3 ( 4Shared ) Scan Download: Formatos .bmp Link 1 ( SpeedyShare ) Scan Corpse Kabutops Link 1 ( SpeedyShare ) Créditos: PokeXGames @FlamesAdmin1 ponto -
Novidades - 03/04
Natanael Beckman reagiu a jb2 por um tópico no fórum
Olá galera da XTibia, trago a vocês novidades sobre o projeto WebATS Manager. O projeto esta em total andamento, para quem não conhece (ou não sabe oque é) o WebATS Manager aqui temos um tópico explicando. Pois bem, decidimos de começo já lançar o projeto com o template do Tibia Global, por ter uma maior aceitação da galera fã e administradora de servidores. Algumas prints: Ainda temos um longo caminho pela frente, trata-se de um projeto imenso e que trará grandes benefícios aos donos de servidores. E o melhor, totalmente free! Temos total apoio da comunidade XTibia, a qual nos abraço e apoio o projeto, e temos apoio já de grandes servidores que serão lançados já com o WebATS Manager. Quem sai ganhando é o administrador de servidor que terá uma aplicação estável, atualizada e sempre corrigida, e uma comunidade imensa para auxiliar-lo! E o jogador, que tem um WebSite completo! Gosto do projeto? Visite nossa sessão: http://www.xtibia.co...um/901-web-ats/ Além de gostar deseja participar? http://www.xtibia.co...re-para-equipe/ Abraços, e espero que tenham gostado da notícia! www.webats.xtibia.com1 ponto -
Conteudo: Source Naruto Shinobi (By RobinHood) Criado por: Lks e sua equipe. Liberado por: Beeki Re-Upado por: Stigal Complementos: Junto com a sources vem Server+Modern Acc Para Narutibia! Topico Do Servidor: Click Aqui! - Link Download: (4Shared) - http://www.4shared.c...ce_NTO_Sh.html? Scan - Click Aqui! - Atenciosamente, Stigal.1 ponto
-
[8.54] Naruto Atarashi Online V.1 Beta
Junior001 reagiu a SkyDarkyes por um tópico no fórum
Ow pode falar que dia +- sai as sources?o Junior001 Ta me cobrando aqui no skype? Cara ta louco pelas sources1 ponto -
1 ponto
-
[8.54] Pokemon Server
Roksas reagiu a LucaSAyreeS por um tópico no fórum
● Sistemas - Pokeball Icons - Bike System - Addon System - Respawn de shinys e lendários - Boost System - TV System - Pokemons com level - Duel System - Nick System - Shiny Stone System - Barra Cooldown e Pokes & Mapa Svke - Evolução System - TM System ● Screenshots ●Explicações De Alguns System - Poke Ícons: Pokemons ficam com seus ícones na pokebola. - TM System: Adiciona novos ataques ao seu pokemon. - Addon System: Você pode colocar addons em seus pokemons. - Evolução System: Seus pokemons evolui conforme o level deles. - Shiny Stone System: Você pode transforma um pokemon normal em shiny com uma certa stone ●Download & Scan http://www.4shared.com/rar/TY9UXFWk/pouncServer.html https://www.virustot...sis/1359677498/ OPS: Existe mais system no server só que não achei necessidade de comentar esses.1 ponto -
kk muito bom ms banana... ja tinha pensado q isso seria uma flag mas... xD -ps: o deles eh gif heim... uahuahauh-1 ponto
-
Amigo, apenas troque o .EXE ( o client) por esse: http://www.4shared.com/file/ckCKP2D2/PDA_SLICER_1.html1 ponto
-
1 ponto
-
Gostei dessa ideia de MarceloCB1 ponto
-
Como colocar para dar item Random nesse script?
TiagoBordin1988 reagiu a Roksas por uma questão
Thiago, troque por:1 ponto -
[Show Off]1º Andar Cp Gabriel Txu Editado
Togaxtibia reagiu a randerjp por um tópico no fórum
Fala Ai Xtibia Hj Eu Vou Mostrar Um Pedaço Do Cp(1º Andar) Que Eu Fis Usando Gabriel Txu De Base Se Ficou Feio Nao Liguem Pois Sou Mapper Iniciante xD1 ponto -
Como colocar para dar item Random nesse script?
Roksas reagiu a PsyMcKenzie por uma questão
Testa ai manolo: function loseOnZombieArena(cid) kickPlayerFromZombiesArea(cid) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "BOOM! Você está morto.") local players = getZombiesEventPlayers() if(#players <= 1) then local winner = players[1] local items = {2160, 7958, 2352, 12610} if(winner) then doPlayerAddItem(cid,items[math.random(1,#items)], math.random(1, 100)) doPlayerSendTextMessage(winner, MESSAGE_STATUS_CONSOLE_BLUE, "Você Ganhou o Evento Zombie !!! Parabéns.") doBroadcastMessage("After " .. os.time() - getPlayerZombiesEventStatus(winner) .. " segundos de evento " .. getCreatureName(winner) .. " você ganhou o Evento Zombie contra " .. getStorage(ZE_ZOMBIES_SPAWNED) .. " zombies !!!") kickPlayerFromZombiesArea(winner) else doBroadcastMessage("Zombie Evento Acabou !!! Não teve vencedor ?!?!?! Como Assim ?") end doSetStorage(ZE_STATUS, 0) doSetStorage(ZE_PLAYERS_NUMBER, ZE_DEFAULT_NUMBER_OF_PLAYERS) doSetStorage(ZE_ZOMBIES_TO_SPAWN, 0) doSetStorage(ZE_ZOMBIES_SPAWNED, 0) local width = (math.max(ZE_spawnFromPosition.x, ZE_spawnToPosition.x) - math.min(ZE_spawnFromPosition.x, ZE_spawnToPosition.x)) / 2 + 1 local height = (math.max(ZE_spawnFromPosition.y, ZE_spawnToPosition.y) - math.min(ZE_spawnFromPosition.y, ZE_spawnToPosition.y)) / 2 + 1 local centerPos = {x=math.min(ZE_spawnFromPosition.x, ZE_spawnToPosition.x)+width,y=math.min(ZE_spawnFromPosition.y, ZE_spawnToPosition.y)+height,z=ZE_spawnFromPosition.z} for z = math.min(ZE_spawnFromPosition.z, ZE_spawnToPosition.z), math.max(ZE_spawnFromPosition.z, ZE_spawnToPosition.z) do centerPos.z = z for i, uid in pairs(getSpectators(centerPos, width, height, false)) do if(isMonster(uid)) then doRemoveCreature(uid) end end end end end function onStatsChange(target, cid, changetype, combat, value) if((cid and isMonster(cid) and getCreatureName(cid) == "Zombie Event") or (isInRange(getThingPosition(target), ZE_spawnFromPosition, ZE_spawnToPosition) and changetype == STATSCHANGE_HEALTHLOSS and math.abs(value) >= getCreatureHealth(target))) then doCreatureAddHealth(target, getCreatureMaxHealth(target)) loseOnZombieArena(target) return false end return true end1 ponto -
[Encerrado] Exani Hur up/down
Roksas reagiu a PsyMcKenzie por um tópico no fórum
Em data/spells/spells.xml, adicione a tag: <instant name="Levitate" words="exani hur" lvl="12" mana="50" prem="1" aggressive="0" exhaustion="1000" params="1" needlearn="0" function="Levitate"> <vocation name="Sorcerer" /> <vocation name="Druid" /> <vocation name="Paladin" /> <vocation name="Knight" /> <vocation name="Master Sorcerer" /> <vocation name="Elder Druid" /> <vocation name="Royal Paladin" /> <vocation name="Elite Knight" /> </instant>1 ponto -
[GESIOR] VictorWEBMaster 2019v
Piabeta Kun reagiu a VictorWEBMaster por um tópico no fórum
Eh, vou postar a db full. Acho que os sistemas de automatização não estão funcionando. Att, Victor. Nova versao!!! Ps: os bugs que foram informados acima virão fixados na próxima versão. http://www.4shared.com/rar/b0zMaKpm/Website_Version_1147.html1 ponto -
de acordo com o vital a ideia é do Metalchau Mapa da ideia http://www.mediafire...587t5wgm0fd5hvw1 ponto
-
Regras da Seção
Lordfireot reagiu a Roksas por um tópico no fórum
Regras da Seção "Anúncio de OTServers - Servidores Derivados" Esta seção é apenas para posts de servidores já online Postagens de servidores que não sejam do tipo de Servidor Open PVP, serão automaticamente fechadas. Floods implicarão no alerta imediato dos usuários que os cometerem, dependendo de uma conclusão geral da equipe se haverá ou não fechamento do tópico. É permitido reviver tópicos, mas sem flood, podendo fazer double post, UMA VEZ POR DIA (algumas vezes o dono do server foi o último a postar antes do tópico "morrer") mas com as condições dos itens abaixo: Somente é permitido reviver o tópico com alguma atualização do servidor, o que deixa eliminado posts como: "Entrem, temos mais de 200 players online!" ou algo do gênero. Com isso fica permitido reviver tópicos com frases de exemplo: "Estamos com uma Nova área de Hunt"; "Foi implantado Vip System no Servidor;" e afins. É permitido postar 1 vez por semana um novo tópico de seu servidor (não sendo obrigatório). Tópicos com mais de 1 mês sem respostas serão enviados para a lixeira sem aviso prévio! O Post de seu OTServer terá que ter obrigatoriamente as informações abaixo: Se o seu tópico não tiver essas informações acima o usuário será notificado via PM para editar seu tópico em 24 horas, caso contrário, o tópico será fechado. Regras sujeitas a mudanças sem prévios avisos.1 ponto -
1 ponto
-
tinha esquecido do return TRUE, editado. abç1 ponto
-
[Encerrado] Problema ao ligar server Poketibia
BrutalPoke reagiu a mkbrabsolute por um tópico no fórum
Está faltando DLL'S, caso use windows, pegue um servidor legal e troque o executável e os arquivos .dll Tenha uma excelente Noite!1 ponto -
[AJUDA] BUG Templante
Roksas reagiu a Piabeta Kun por uma questão
não precisa mais é bom, porem isso parece um simples erro de cache..... resolvido?1 ponto -
[Encerrado] Por que todos usam 8.54
tiagoduuarte reagiu a PostadorHunter por um tópico no fórum
todas a versões inferiores a 9.6 tem um limite de 65535 sprites1 ponto -
[8.54] Naruto Atarashi Online V.1 Beta
SkyDarkyes reagiu a Junior001 por um tópico no fórum
SIm queremos MUITOOOO uma v2 Eu queria mesmo é a Source :X se alguem tiver ae poderia min passar ???1 ponto -
Novo Servidor de Narutibia Aberto hoje 24h- dedicado
Riddlebrown reagiu a mkbrabsolute por um tópico no fórum
Na boa, não costumo ver notícias de pokemon/servidores derivados, mas entrei no seu site e paguei um pau! site show, tomara que o servidor também seja. Vi que está Tibia lá no TOPO, editei talvez possa lhe ajudar Boa Sorte Amigo.1 ponto -
1 ponto
-
Bom como é de se ver essa seção é tão morta que nem tutorial aqui tem Com o intuito de reviver a seção resolvi procurar alguns tutoriais na net e encontrei esse que donos de PokeTibias/Otserv's proprios gostariam de usar em seu client Gogo ? Qual o foco do tutorial? Tuotirla de como traduzir clients, auh yeah. Oque precisaremos? Precisaremos de um programinha chamado XV132 Download Depois de você ter feito o down, utilize algum descompactador de arquivos no File baixado. Feito isso, abra o arquivo "XVI32" que possui um ícone com números Azuis/branco. Antes de usar o Open no arquivo tibia.exe , faça um BACKUP. Com O programa aberto,clique em File, e em seguida Open... ; selecione o seu arquivo Tibia.exe. Para traduzirmos, devemos achar a palavra na qual desejamos. No meu caso, Enter Game. Pressione : CTRL+F Desmarque a Opção Case Sensitive Marque a Opção Text String. Quando você achar o texto que pesquisou, fica ao seu critério edita-lo da maneira que você quiser. Lembrando: Nem todos os caracteres podem ser encontrados, por isso, faça um BACKUP antes de edita-los. Créditos: ApenasOtserv ( Download e tutorial) Gears ( Formatação do texto ) Link original Bjos, Comentem e me repute *-*1 ponto
-
Rs, e por acaso eles estão na área certa? Pois é acho que não @topic O topico não é meu, logo não tem imagens1 ponto
-
[Encerrado]Equipe Pokemon DG 24/7
randerjp reagiu a ChronosPKM por um tópico no fórum
COMENTARIO RETIRADO PELO AUTOR.1 ponto -
Bordering/Formatos/Coerência/Jogabilidade Bom eu estava observando alguns tutoriais e encontrei algo parecido com isso em um outro site, gostaria de compartilhar com vocês, alterei as imagens e partes do texto para melhor visualização. Créditos: river e AundSoul. #1 - Formato do piso Após ter coberto o piso no formato desejado, pegue o id da pedra lisa e faça as bordas sempre do exterior ao centro. Evite colocar somente no centro, pois deixa a imagem suja. Não use a borda automática do RME. Para desativar, pressione a tecla "A" ou acesse o local: Edit>Border Options>Border Automatic e verifique se está desativado. #2 - Bordas Após isso, os grounds utilizados possuem bordas grossas e finas fazendo com que fiquem assim, sempre tomando cuidado para fazer da forma correta: Obs: Na borda de montanha não modifiquei porque não gosto da borda fina dessa montanha, vai de cada um. #3 - Alternando bordas Agora observaremos uma técnica que se encaixa em todos os grounds: Técnica de Linha - É a estilização de borda mais simples. Até a borda automática do RME pode desenvolvê-la; Técnica de Ziguezague - Semelhante ao da linha, porém com uma "quebra" na linha dando-a um formato de ziguezague; Técnica de "T" - Coloque uma borda diagonal, imagine-a girando para algum lado e posicione-a dando-a um formato de T. #4 - Técnica de bordeamento Aqui está um exemplo de como deveria ficar. No próximo passo vamos aprender como fazer para estilizá-las assim. #5 - Breve resultado Vamos começar a detalhar de verdade. Às montanhas onde há muita natureza em volta (exemplos: floresta, pântano, etc),onde podem nascer até arvores. Já na nature nem se fala. Começamos adicionando o gravel, lembre-se nunca use o gravel por cima do grass, não fica legal, já na montanha depende do ground que você está usando, tome cuidado. #6 - Inserindo o carpetbrush Na imagem abaixo, você pode perceber uma outra técnica que costumo usar. OBS: Se você simplesmente desenhar um id em cima do outro, não será possível obter o resultado desejado. É preciso colocar os dois IDs a serem somados, em diferentes locais e puxar um deles para cima do outro. #7 - Inserindo uma outra técnica Agora vamos detalhar, cuidado, sobre o grass é liberado agora não recomendo usar tufos de gramas na montanha, uso os musgos que fazem o papel de natureza, além de pedras cogumelos e sua criatividade na hora de detalhar. 8# - Resultado 9# - Jogabilidade Sempre que você acabar um mapa aperte "O" no seu RME para ver a área jogável de seu mapa, isso é muito importante, porque o player precisa de espaço dentro do jogo, salve-se exceções e contextos. 10# - Coerência Certifique-se de que seu mapa não está ficando non-sense, pense nos detalhes e no ambiente em que ele vai se encontrar. Exemplos: gravel - vejo seguido mapas de terra com gravel de pedra, tente cuidar, pode ter gravel de pedra em terra? Claro que pode mas tente colocar próximo a uma pedra dando um certo aspecto de realidade ao seu mapa. tufos - geralmente em uma mata fechada existe grama alta, mas tome cuidado os tufos grandes dão um tom de poluição visual, tome cuidado utilize os tufos menores e use os maiores na parte menos "explorada" da floresta. caves - pense na criatura que você irá botar ali, se for um humano, animal, etc. Tente imaginar seu mapa antes de colocá-lo no RME. montanhas - depende muito do estilo que você está usando, mas geralmente os topos são menos explorados, tente imaginar em uma montanha de verdade. 11# - Considerações finais Geralmente mapas simples são mais agradáveis que mapas over-detailed, cuide para que fique coerente e jogável e lembre-se: "Qualquer um pode ser mapper, basta ter vontade e um pouco de treino". Não sei nem para quê serve esse botão de "REP" no tópico, mas se puder curtir, eu agradeço. Vão treinando aí, que se eu animar, volto com mais aulas! Obrigado pela atenção, atenciosamente AundSoul. AundSoul1 ponto
-
Aeeeew Parabéns Manow muito bom até quem fim um servidor de narutibia que da gosto de comerça um projeto kkk vai ajudar muita gente msm xD Levo meu rep++++1 ponto
-
continuação, quero comentários http://3.imgland.net/rOALpb.png1 ponto
-
[Encerrado] [Server] De Narutibia 7.81
Riddlebrown reagiu a Civoniark por um tópico no fórum
Caro , Pandawa... Olhei da cabeça aos pés os Tópicos de Download de servidor aqui. Porém só achei 2 e 1 eu acho que nem é servidor mais é bom o Topico. http://www.xtibia.com/forum/topic/80073-ot-narutonarutibia-781/ http://www.xtibia.com/forum/topic/178359-dream-naruto-online-v4-dno-v4/ Só achei esses dois de NaruTibia aqui... Porém vou lhê dar 2 Dicas... 1 - Você pode sim baixar o Dream , Ai depois você procura outro " MAPA " e só trouca o " MAPA " do Servidor. 2 - Você pode pedir na aréa de Mapping um Mapa de NaruTibia , Para o seu servidor... Caso não tenha gostado do Mapa deixe um Recado aqui no Topico mesmo , Que procurarei por outros na Web...1 ponto -
[Help] Bug World
EoErickSouza reagiu a pessoa93 por uma questão
Estou sem config.lua aqui pra te mostrar a linha mais aonde fica o nome do mapa pode ser que esteja assim: test.otbm ou test Vou tentar dar um exemplo: Map name: "test.otbm" tem que estar assim ou Map name: "test"1 ponto -
[Encerrado] Bug Shop Gesior
cruelShark reagiu a CoLoRaDo por um tópico no fórum
use o que eu uso que não da erro nenhum: local SHOP_MSG_TYPE = MESSAGE_EVENT_ORANGE local SQL_interval = 30 function onThink(interval, lastExecution) local result_plr = db.getResult("SELECT * FROM z_ots_comunication WHERE `type` = 'login';") if(result_plr:getID() ~= -1) then while(true) do local id = tonumber(result_plr:getDataInt("id")) local action = tostring(result_plr:getDataString("action")) local delete = tonumber(result_plr:getDataInt("delete_it")) local cid = getCreatureByName(tostring(result_plr:getDataString("name"))) if isPlayer(cid) then local itemtogive_id = tonumber(result_plr:getDataInt("param1")) local itemtogive_count = tonumber(result_plr:getDataInt("param2")) local container_id = tonumber(result_plr:getDataInt("param3")) local container_count = tonumber(result_plr:getDataInt("param4")) local add_item_type = tostring(result_plr:getDataString("param5")) local add_item_name = tostring(result_plr:getDataString("param6")) local received_item = 0 local full_weight = 0 if add_item_type == 'container' then container_weight = getItemWeightById(container_id, 1) if isItemRune(itemtogive_id) == TRUE then items_weight = container_count * getItemWeightById(itemtogive_id, 1) else items_weight = container_count * getItemWeightById(itemtogive_id, itemtogive_count) end full_weight = items_weight + container_weight else full_weight = getItemWeightById(itemtogive_id, itemtogive_count) if isItemRune(itemtogive_id) == TRUE then full_weight = getItemWeightById(itemtogive_id, 1) else full_weight = getItemWeightById(itemtogive_id, itemtogive_count) end end local free_cap = getPlayerFreeCap(cid) if full_weight <= free_cap then if add_item_type == 'container' then local new_container = doCreateItemEx(container_id, 1) local iter = 0 while iter ~= container_count do doAddContainerItem(new_container, itemtogive_id, itemtogive_count) iter = iter + 1 end received_item = doPlayerAddItemEx(cid, new_container) else local new_item = doCreateItemEx(itemtogive_id, itemtogive_count) doItemSetAttribute(new_item, "description", "This item can only be used by the player ".. getPlayerName(cid) .."!") doItemSetAttribute(new_item, "aid", getPlayerGUID(cid)+10000) received_item = doPlayerAddItemEx(cid, new_item) end if received_item == RETURNVALUE_NOERROR then doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, 'You received >> '.. add_item_name ..' << from OTS shop.') db.query("DELETE FROM `z_ots_comunication` WHERE `id` = " .. id .. ";") db.query("UPDATE `z_shop_history_item` SET `trans_state`='realized', `trans_real`=" .. os.time() .. " WHERE id = " .. id .. ";") else doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, '>> '.. add_item_name ..' << from OTS shop is waiting for you. Please make place for this item in your backpack/hands and wait about '.. SQL_interval ..' seconds to get it.') end else doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, '>> '.. add_item_name ..' << from OTS shop is waiting for you. It weight is '.. full_weight ..' oz., you have only '.. free_cap ..' oz. free capacity. Put some items in depot and wait about '.. SQL_interval ..' seconds to get it.') end end if not(result_plr:next()) then break end end result_plr:free() end return true end e também adicione isso a sua database: 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`) ); 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`) ); 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` 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`) ); 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`) ); e no globalevents.xml add isso: <globalevent name="shop" interval="30" event="script" value="shop.lua"/>1 ponto -
Ai galera esse post eu retirei aki do Xtibia msm apenas copiei!! ai vai um tutorial ensinando colocar seu ot e seu site online Todos os Créditos para Mesenga Está dividido em: 1º Passo: Preparando o XAMPP 2º Passo: Criando a Database 3º Passo: Criando o banco de dados 4º Passo: Criando uma conta GOD EXTRA 5º Passo: Criando o site para os players entrarem F.A.Q. - Perguntas e respostas -Baixando o Xampp- Xampp download: http://www.baixaki.com.br/download/xampp.htm Tamanho: 44,20MB Depois de baixar instale o XAMPP 1º Passo: Preparando o XAMPP ( Créditos ao Lord Joel por lembrar do security) Abra o XAMPP, depois disso verifique se está tudo corretamente ligado clicando no XAMPP_Panel Mini F.A.Q. Mas meu apache não esta ligando! Vá até C:\xampp\apache\conf\httpd.conf: Procure por “Listen 80″, mude para “Listen 8090″ Procure por “ServerName localhost:80″, mude para “ServerName localhost:8090″ C:\xampp\apache\conf\extra\httpd-ssl.conf Procure por “Listen 443″, mude para “Listen 4499″ Procure por “<VirtualHost _default_:443>”, mude para “<VirtualHost _default_:4499>” Procure por “ServerName localhost:443″, mude para “ServerName localhost:4499″ Explicação: O IIS (Internet Information Service) do windows é padrão para rodar em port 80, então você não conseguira abrir o apache pois vai dar conflito com esta porta que já esta sendo usada, então trocamos! Mesenga, ainda não funcionou =/ Então recomendo você baixar a versão 1.6.5 por conter a antiga base que pega em todos os windows Download aqui: AQUI Continuando... Agora acesse a página: http://localhost/security/xamppsecurity.php caso tiver trocado o port acesse: http://localhost:8090/security/xamppsecurity.php Vá na pasta do seu OT, abra o config.lua Você irá encontrar linhas parecidadas com essas: -- Database sqlType = "sqlite" >> mude para mysql, pois agora usaremos um servidor mysql sqlHost = "localhost" >> não mexa sqlPort = 3306 >> não mexa sqlUser = "root" >> esse é o usuário usado para acessar o servidor XAMPP, NÃO MUDE sqlPass = "" >> password (senha) que você usou no passo 1 sqlDatabase = "" >> vamos definir um nome para nossa database, ex: theforgottenserver sqlFile = "Styller.s3db" >> isso não irá servir mais pois usaremos um servidor MySql sqlKeepAlive = 0 >> não mexa mysqlReadTimeout = 10 >> não mexa mysqlWriteTimeout = 10 >> não mexa passwordType = "plain" >> não mexa No meu caso ficou assim: -- Database sqlType = "mysql" sqlHost = "localhost" sqlPort = 3306 sqlUser = "root" sqlPass = "123" sqlDatabase = "styller" sqlFile = "Styller.s3db" sqlKeepAlive = 0 mysqlReadTimeout = 10 mysqlWriteTimeout = 10 passwordType = "plain" 2º Passo: Criando a Database abra internet e digite http://localhost caso tiver mudado o port: http://localhost:8090 escolha Português BR depois disso procure PhpMyAdmin e clique tenha certeza que estará nessa página: http://localhost/phpmyadmin/ caso estiver com port trocado: http://localhost:8090/phpmyadmin/ 3º Passo: Criando o banco de dados Na tela a seguir, você vera onde tem a parte Criar novo banco de dados, digite o mesmo nome que você colocou no config.lua em sqlDatabase= Agora clique criar Na tela seguinte clique em "importar" e escolha o arquivo "schema.mysql", em alguns ots o nome é "algumacoisa.sql", ex: forgotten.sql (no caso do The Forgotten Server) vai isso,dependendo do server que estiver usando, o numero de importações varia: 4º Passo: Criando uma conta GOD Entre no server e crie uma conta com o Account manager pra ficar mais facil, e também crie 1 player. Após criado a account e o player, volte a janela do XAMPP na database e clica em accounts, depois vá em visualizar depois clique no pincel Irá aparecer uma tela com os dados da conta, altere apenas o necessário... mude o type de 1 para 5 e group id de 1 (se quiser conta normal com GOD) e 5 (se quiser conta GOD com GOD) depois clique em "executar" o char ainda não é God apenas a conta, então vá em players na coluna da esquerda... clique no lápis de novamente.... Troque Group de 1 para 6, agora sim, seu char eh god. se quiser GM troque para 4 ou 5 (Sênior GM) Group id 1 = Player Group id 2 = Tutor Group id 3 = Sênior Tutor Group id 4 = GM Group id 5 = Sênior GM Group id 6 = GOD *IDs acima baseados no Styller OT 8.52 Seu server está pronto para rodar! EXTRA 5º Passo: Criando o site para os players entrarem -Download do site- Baixe um dos Websites "SQL" na seção de downloads do Xtibia >> http://www.xtibia.com/forum/Websites-OTserv-f312.html Recomendados: Gesior acc maker: http://www.xtibia.com/forum/Gesior-034-t116556.html Nicaw Acc Maker website http://www.xtibia.com/forum/Nicaw-Aacmaker...sql-t81939.html Todos os sites já vem com configurador, então entre em: http://localhost caso tiver trocado o port já sabe: http://localhost:8090 e Configure-o! -Vamos configurar o Gesior Acc Maker!- Baixe o Gesior Acc Maker http://www.xtibia.com/forum/Gesior-034-t116556.html Ligue o XAMPP e o OT Vá em C:\Xampp\htdocs e delete tudo o que tem dentro da pasta Agora extraia seu site pra lá, feito isso entre em http://localhost ou http://localhost:8090 você verá uma tela assim: clique em Set server path Agora no campo em que aparece digite o diretório no qual se encontra o ot, ex: C:\OTx Agora é só ir clicando um por um e configurar a seu gosto 1º Quadrado preto: 1. Set server path --> escolhe o diretório do OT 2. Check DataBase connection --> você só pode proseguir se não tiver nehum erro nessa parte 3. Add tables and columns to DB --> isso carrega uma parte do site 4. Add samples to DB --> isso carrega uma parte do site (vocações) 5. Set Admin Account --> escolhe o account do admin do site Quadrado Vermelho: 6. Load Monsters from OTS --> vai dar load automatico nos monstros do OT, verifique se não há nehum erro 7. Load Spells from OTS --> ele vai carregar todas as spells do OT, verifique se não há nehum erro antes de proceguir Pronto, o site está configurado e pronto para criar contas. Para outras opções clique em ADMIN PAINEL F.A.Q. - Perguntas e respostas @Todos Duvidas: -Como faço minha account de GM/GOD? Siga o passo 4 eu nao encontro schema.mysql od está isso?? Em alguns servidores o nome é theforgottenserver.sql Qual vai ser meu site pros outros poder entra fazer acc? seu site vai ser http://seuip:8090 ou se quiser por http://seuip:xxxx sendo "xxxx" um número de port variando entre 80 e 9000, faça o seguinte: vá em "C:\xampp\apache\conf" e abra o arquivo httpd.conf procure por: #Listen 12.34.56.78:80 Listen 80 Nas duas linhas ponha Um número variando de 80 à 9000 no lugar do 80 exemplo: #Listen 12.34.56.78:8090 Listen 8090 Agora procure a linha: ServerName localhost:80 e troque pelo mesmo número que você colocou exemplo: ServerName localhost:8090 -No seu está dando o seguinte problema: [28/06/2008 03:15:49] Failed to connect to database. MYSQL ERROR: Access denied for user 'root'@'localhost' (using password: YES) [28/06/2008 03:15:49] > ERROR: Couldn't estabilish connection to SQL database! Antes de colocar oSERVER ONLINE, certifique-se de que o XAMPP está aberto Até a proxima!1 ponto
-
Deixe Seu Ot E Seu Site Online Com Xampp
cocotonete reagiu a CarlosPain por um tópico no fórum
Bom.. eu sei que já existem vários tutoriais com esse pelo XTibia, e embora seja copiado de outro membro, tá legal, bem formatado e talz. Aprovado.1 ponto
