-
[8.60] Baiak Sodoma (Cast System - War System - Offline Trainer - Vip System - Castle)
baixei sem scanear eu confio em você, te amo senpai oni chan >.<
-
Sistema de Addon Skill Bonuses
Saudações pessoal! Estou com uma dificuldade de encontrar onde está o arquivo configurável do sistema de Addons Bonuses (ele adiciona skills, mana/hp max e speed com os ADDONS e não outfits). do meu servidor 10.98 Ele funciona perfeitamente, porém estou na procura do arquivo configurável, já busquei nas Sources, creaturescripts, libs, até no XML, mas não encontrei nada. OTX compilado: Memoria OTs
-
Erro ao registrar novas contas
Diga em poucas palavras a base utilizada (Nome do servidor ou nome do website). Ex.gesior AAC Base: Site 10.98 Qual erro está surgindo/O que você procura? Saudações! Estou com um problemão envolvendo meu createaccount.php, ele não registra novas contas na DB nem conectando no DNS nem no LOCALHOST. Pensei que poderia ser algum erro de configuração de conexão do website com a DB mas quando logo na conta do admin eu consigo criar novos personagens e tudo mais. Você tem o código disponível? Se tiver publique-o aqui: <?php if(!defined('INITIALIZED')) exit; require 'config/namesblocked.php'; if(!$logged) { $voc = array(); // Rookgard Active ! if (isset($_POST['step']) && $_POST['step'] == 'docreate') { $erro = array(); # Nome da conta $accountname = isset($_POST['accountname']) ? $_POST['accountname'] : ''; if ($accountname == '') $erro['acc'] = 'Insira sua conta desejada:'; elseif (strlen($accountname) < 3) $erro['acc'] = 'Numero de caracteres muito curto!'; elseif (strlen($accountname) > 30) $erro['acc'] = 'Numero de caracteres muito grande!'; else { $accountname = strtoupper($accountname); if (!ctype_alnum($accountname)) $erro['acc'] = 'This account name has an invalid format. Your account name may only consist of numbers 0-9 and letters A-Z!'; elseif (!preg_match('/[A-Z0-9]/', $accountname)) $erro['acc'] = 'Your account name must include at least one letter A-Z!'; else { $acc = new Account($accountname, Account::LOADTYPE_NAME); if ($acc->isLoaded()) $erro['acc'] = 'This account name is already used. Please select another one!'; } } /*# Nome do personagem $charactername = isset($_POST['name']) ? trim($_POST['name']) : ''; if(empty($charactername)) $erro['name'] = 'Please enter a name for your character!'; elseif(strlen($charactername) < 2 || strlen($charactername) > 29) $erro['name'] = 'A name must have at least 2 but no more than 29 letters!'; elseif(preg_match('/[^a-zA-Z ]/', $charactername)) $erro['name'] = 'This name contains invalid letters. Please use only A-Z, a-z and space!'; elseif(!ctype_upper($charactername[0])) $erro['name'] = 'The first letter of a name has to be a capital letter!'; elseif(strpos($charactername, ' ') !== false) $erro['name'] = 'This name contains more than one space between words. Please use only one space between words!'; else { foreach(explode(' ', $charactername) as $k =>$v) { $words[$k] = str_split($v); $len = strlen($v); if($len == 1) { $erro['name'] = 'This name contains a word with only one letter. Please use more than one letter for each word!'; break; } elseif($len > 14) { $erro['name'] = 'This name contains a word that is too long. Please use no more than 14 letters for each word!'; break; } } if(!isset($e['name'])) { $total = 0; foreach($words as $k =>$p) { if(isset($erro['name'])) break; $total++; if($total > 3) { $erro['name'] = 'This name contains more than 3 words. Please choose another name!'; break; } $len = 0; foreach($p as $i =>$j) { $len++; if($i != 0 && ctype_upper($j)) { $erro['name'] = 'In names capital letters are only allowed at the beginning of a word!'; break; } elseif($i == $len-1) { $ff = null; for($h = 0; $h < strlen($v); $h++) { if(in_array(strtolower($v[$h]), array('a','e','i','o','u')) !== false) { $ff = true; break; } } if(!$ff) { $erro['name'] = 'This name contains a word without vowels. Please choose another name!'; break; } } } } } if(!isset($erro['name'])) { $charactername = strtolower($charactername); for($i = 0; $i < strlen($charactername); $i++) if($charactername[$i] == $charactername[($i+1)] && $charactername[$i] == $charactername[($i+2)]) { $erro['name'] = 'This character name is already used. Please select another one!'; break; } } if(!isset($erro['name'])) { foreach($nomesBloqueados as $v) if(strpos($charactername, $v) !== false) { $erro['name'] = 'This character name can not be used. Please select another one!'; break; } } if(!isset($erro['name'])) { $ple = new Player($charactername, Player::LOADTYPE_NAME); if($ple->isLoaded()) $erro['name'] = 'This character name is already used. Please select another one!'; } } if(!isset($_POST['sex']) || ($_POST['sex'] != 'male' && $_POST['sex'] != 'female')) $erro['sex'] = 'Please select the sex for your character!'; if(count($voc) != 0 && (!isset($_POST['vocation']) || !is_numeric($_POST['vocation']) || !isset($voc[$_POST['vocation']]))) $erro['vocation'] = 'Please select the vocation for your character!';*/ $email = isset($_POST['email']) ? $_POST['email'] : ''; if ($email == '') $erro['email'] = 'Please enter your email address!'; elseif (strlen($email) > 49) $erro['email'] = 'Your email address is too long!'; elseif (!filter_var($email, FILTER_VALIDATE_EMAIL)) $erro['email'] = 'This email address has an invalid format. Please enter a correct email address!'; else { $accMailCheck = new Account($email, Account::LOADTYPE_MAIL); if ($accMailCheck->isLoaded()) $erro['email'] = 'This email address is already used. Please enter another email address!'; } $password1 = isset($_POST['password1']) ? $_POST['password1'] : ''; $password2 = isset($_POST['password2']) ? $_POST['password2'] : ''; if (empty($password2)) $erro['pass'] = 'Please enter the password again!'; elseif ($password1 != $password2) $erro['pass'] = 'The two passwords do not match!'; else { $err = array(); if (strlen($password1) < 6 || strlen($password1) > 29) $err[] = 'The password must have at least 8 and less than 30 letters!'; if (!ctype_alnum($password1)) $err[] = 'The password contains invalid letters!'; if (count($err) != 0) { $erro['pass'] = ''; for ($i = 0; $i < count($err); $i++) $erro['pass'] .= ($i == 0 ? '' : '<br/>') . $err[$i]; } } if (!isset($_POST['agreeagreements']) || empty($_POST['agreeagreements'])) $erro['rules'] = 'You have to agree to the ' . $config['server']['serverName'] . ' Rules in order to create an account!'; if (count($erro) != 0) { $main_content = '<div class="SmallBox"><div class="MessageContainer"><div class="BoxFrameHorizontal" style="background-image:url(' . $layout_name . '/images/global/content/box-frame-horizontal.gif)"/></div><div class="BoxFrameEdgeLeftTop" style="background-image:url(' . $layout_name . '/images/global/content/box-frame-edge.gif)"/></div><div class="BoxFrameEdgeRightTop" style="background-image:url(' . $layout_name . '/images/global/content/box-frame-edge.gif)"/></div><div class="ErrorMessage"><div class="BoxFrameVerticalLeft" style="background-image:url(' . $layout_name . '/images/global/content/box-frame-vertical.gif)"/></div><div class="BoxFrameVerticalRight" style="background-image:url(' . $layout_name . '/images/global/content/box-frame-vertical.gif)"/></div><div class="AttentionSign" style="background-image:url(' . $layout_name . '/images/global/content/attentionsign.gif)"/></div><b>The Following Errors Have Occurred:</b><br/>'; foreach ($erro as $error) $main_content .= $error . '<br/>'; $main_content .= '</div><div class="BoxFrameHorizontal" style="background-image:url(' . $layout_name . '/images/global/content/box-frame-horizontal.gif)"/></div><div class="BoxFrameEdgeRightBottom" style="background-image:url(' . $layout_name . '/images/global/content/box-frame-edge.gif)"/></div><div class="BoxFrameEdgeLeftBottom" style="background-image:url(' . $layout_name . '/images/content/global/box-frame-edge.gif)"/></div></div></div><br/>'; } else { $reg_account = new Account(); $reg_account->setName(strtoupper($_POST['accountname'])); $reg_account->setPassword($_POST['password1']); $reg_account->setEMail($_POST['email']); $reg_account->setCreateDate(time()); $reg_account->setCreateIP(Visitor::getIP()); $reg_account->setFlag(Website::getCountryCode(long2ip(Visitor::getIP()))); $reg_account->save(); /*if($reg_account->getID() > 0) { $sample = (count($voc) == 0 ? 'Rook' : $voc[$_POST['vocation']]).' Sample'; $char_to_copy = new Player(); $char_to_copy->find($sample); if(!$char_to_copy->isLoaded()) die('Missing sample character ('.$sample.')'); $char_to_copy->getItems()->load(); $char_to_copy->setLookType(($_POST['sex'] == 'female' ? 136 : 128)); $char_to_copy->setID(null); // save as new character $char_to_copy->setLastIP(0); $char_to_copy->setLastLogin(0); $char_to_copy->setLastLogout(0); $char_to_copy->setName($_POST['name']); $char_to_copy->setAccount($reg_account); $char_to_copy->setSex(($_POST['sex'] == 'female' ? 0 : 1)); $char_to_copy->setPosX(0); $char_to_copy->setPosY(0); $char_to_copy->setPosZ(0); $char_to_copy->setCreateIP(Visitor::getIP()); $char_to_copy->setCreateDate(time()); $char_to_copy->setSave(); // make character saveable $char_to_copy->save(); // now it will load 'id' of new player }*/ //show information about registration if ($config['site']['send_emails']) { $reg_name = $reg_account->getName(); $reg_email = $reg_account->getEMail(); $mailBody = '<html> <body> <h3>Your account name and password!</h3> <p>You or someone else registred on server <a href="' . $config['server']['url'] . '"><b>' . htmlspecialchars($config['server']['serverName']) . '</b></a> with this e-mail.</p> <p>Account name: <b>' . htmlspecialchars($reg_name) . '</b></p> <br /> <p>After login you can:</p> <li>Create new characters <li>Change your current password <li>Change your current e-mail </body> </html> Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui.
-
-
Formação de Equipe QuasarOts 175x Mapa Próprio
Olá sou conhecido pelo nickname GoliathDH, tenho alta experiência com administração de OtServers, WebSites, DataBase entre outras áreas. Nesse post venho recrutar membros para a equipe de um novo servidor alternativo de Tibia com o intuito de fugir um pouco da "padronização" dos OtServers Globais com um mapa próprio e outras novidades garantindo total RPG , emoção e diversão durante todo período on-line do jogador. O mapa possuirá áreas , "hunts" e quests novas e originais mas ao mesmo tempo também abrangerá grande número de locais idênticos aos servidores globais (Quests e algumas Hunts por exemplo). Almejo membros que possuam compromisso de pelo menos 4 horas de trabalho sério, pois futuramente eles serão remunerados em R$ (reais) mensalmente o que envolve também fidelidade ao trabalho com o servidor (tudo o que envolverá a respeito do jogo/administração ficará entre os membros da Staff, fora que, durante todo período dentro da equipe todo e qualquer membro não terá privilégios em suas contas, como items VIP ou quaisquer vantagens excepcionais. Embora tendo em conta disso, membros terão suas contas Premium permanentemente até que sejam removidos da equipe por algum erro grave ou por própria escolha). Segue as vagas disponíveis e suas respectivas descrições: Requisitos Básicos: O indivíduo que ocupar uma das vagas disponíveis deverá usar sua criatividade em todos seus trabalhos em que a administração solicitar ,além de possuir um tempo e contato em disponibilidade (WhatsApp/Skype/E-Mail/ETC). Um bom português formal e no modo Padrão Culto da Língua (PCL) será altamente prezado no caso de haver vários candidatos à vaga. Para as vagas de Mapeador , scripter e Designer deverão enviar seus trabalhos para análise de eliminação para o seguinte e-mail: [email protected] ; Os melhores trabalhos serão selecionados, seus respectivos donos serão nomeados para a vaga e ainda os arquivos enviados serão introduzidos no servidor em homenagem a eles! (Areas de Map, scripts com créditos). Para caso de interesse por vaga de Mapper, Script e Designer favor ler o final do post com o tema para cada trabalho que será feito para eliminatória. Caso o trabalho fuja do tema, o candidato será automaticamente desclassificado. Mapeador - Mapper: O Mapper/Mapeador terá a função de criar novos locais para o entretenimento dos jogadores, seja quests, hunts ou cidades. (VAGA) - (VAGA) - (VAGA) Scripter: O Scripter é encarregado de criar/alterar módulos de jogo (seja .Lua, .XML, .SQL , etc) para o melhoramento do servidor. (VAGA) - (VAGA) Designer: O Designer será tarefado para o "Marketing" do servidor, seja para o client.exe, recursos para o website, banners ou até mesmo vídeos e SplashArt (VAGA) - (VAGA) Tutores: O Tutor irá coordenar e auxiliar os jogadores durante seu período on-line , será provavelmente o cargo que mais exigirá comprometimento com o jogo do indivíduo. Portanto somente serão nomeados tutores aqueles que possuírem uma formação na língua portuguesa excepcional. Para medir tal conhecimento, candidatos deverão enviar um E-Mail para [email protected] abordando o seguinte tema: " Porque eu gostaria de participar da equipe ". O texto pode ser impessoal o pessoal, sem nenhum gênero textual pré-requisitado. O texto deverá ter aproximadamente 25 linhas. (VAGA) - (VAGA) - (VAGA) - (VAGA) - (VAGA) - (VAGA) Moderador: O moderador possuirá apenas duas vagas disponíveis, porém somente serão nomeados moderadores aqueles que obterem melhor desempenho em suas funções, sendo assim, as duas vagas (Seja Scripter, Designer, Mapper ou Tutor) serão preenchidas com novos membros. Temas para o envio de E-Mail: Mapper: Area de hunt subterrânea, floresta , montanhas, ruínas ou piramide (com mínimo de 5 andares, seja subterrâneos ou não). - Caso o candidato queira combinar dois ou mais temas, terá pontos a mais na hora da eliminatória. Scripter: Magias novas em .Lua , Monstros equilibrados com máximo de 10.000 HP em .XML ou Quests/Task a gosto. Designer: Um wallpaper que será utilizado no arquivo .pic do cliente contendo qualquer imagem referente ao jogo com o logo escrito " Quasar Alternative Tibia Server ". ATENÇÃO PARA O E-MAIL: *Ressaltando que somente será válido o e-mail que for enviado para o endereço [email protected] *O assunto deverá conter a Vaga desejada, o Tema do trabalho, e seu NickName do Fórum em que você visualizou esse post. *Deverá ser enviado em anexo o arquivo .Lua, .XML, .otbm ou imagens (.bmp, .png , .gif etc...) *Envie o e-mail somente UMA vez -Se possível deixar um número de WhatsApp ou endereço de Skype para contato. Ignorar qualquer item em * resultará desclassificação imediata do candidato A seleção iniciará a partir do momento do envio desse post e terminará no dia 27/03/15. Caso ainda haja vagas, o término será adiado 5 ou 7 dias após essa data. Se seu trabalho for aprovado, enviaremos um e-mail ou mensagem por WhatsApp/Skype na data do término. Obrigado a todos!