-
Total de itens
91 -
Registro em
-
Última visita
-
Dias Ganhos
11
Tudo que walefxavier postou
-
[Gesior Acc] Guild War System Com Escudos
tópico respondeu ao walefxavier de walefxavier em Tutoriais de Websites
Isbigo ,tente compila-lo para 64bit,pois o mesmo está em 32.Já aconteceu com um colega meu e isso resolveu. -
Vou ser sincero,conversei com o Folspa através do Msn,e estamos decidindo coisas de equipe,eu iria entrar para o projeto,mas ele é muito indeciso nas coisas,é como se ele não pensasse em mais nada,só na quilo que ele quer.Ainda avisei pra ele que estava fazendo um ot pra ele e não para "players".Na minha opinião,o projeto não vai dar certo,a não ser que voce aplique suas ideias em uma equipe séria,mas apenas as ideias rsrs.(Tomara que eu quebre a cara e seu projeto dê muito certo,pois o tibia ta precisando de ideias como as suas) Vlwws !
-
[Gesior Acc] Guild War System Com Escudos
tópico respondeu ao walefxavier de walefxavier em Tutoriais de Websites
Jeet ,coloque o nome do mapa de world e no config.lua coloque world.otbm ! redkiller,Isto acontece quando não se usa o distro certo. KibeMatheeus,postei no intuito de ajudar.Tudo que foi postado,foi eu que comprei,e não veio nada dentro das pastas falando que não podia postar. -
[Gesior Acc] Guild War System Com Escudos
tópico respondeu ao walefxavier de walefxavier em Tutoriais de Websites
Jeet é so voce prestar um pouquinho mais de atenção no tópico. Coloquei bem embaixo : sempre que tiver executeQuery em algum script troque por db.query. -
[8.60] The Pilgrims Alternative Tibia Server
tópico respondeu ao Folspa de walefxavier em Lixeira Pública
- Programação: *tayprog *Walef Xavier *Vaga Fechada Me tira por favor,não estou no seu projeto. -
[Gesior Acc] Guild War System Com Escudos
tópico respondeu ao walefxavier de walefxavier em Tutoriais de Websites
Ta faltando a tabela Guild_Wars,olhá lá em cima,é a 1° que coloquei.So executar ela no phpmyadmin. -
Muito Bom o Layout... Mas Seria melhor se o pessoal aqui do Xtibia começassem a fazer Layouts próprios daqui,originais.Porque ficar só copiando do outro forum é muita cara de pau,mesmo colocando os créditos.
-
[Gesior Acc] Guild War System Com Escudos
tópico respondeu ao walefxavier de walefxavier em Tutoriais de Websites
Isbigo,o fato de nenhum player estar conseguindo entrar no seu servidor não quer dizer que seja problema com o distro,podem ser muitas outras coisas,com o distro eu garanto que não é,pois,eu e muitos colegas meu donos de ot o usam.Fique observando o distro,pode ser FaTal Error.Quanto ao erro do lua por php,desculpem ae,o tutorial era grande,ficou complicado e acabei confundindo,mas ja arrumei. Drahibavi,não vi diferença no seu War System com os demais... -
[Gesior Acc] Guild War System Com Escudos
tópico respondeu ao walefxavier de walefxavier em Tutoriais de Websites
Posta sua dúvida aqui no tópico,voce foi logo no Yahoo...lá eu so vejo os emails,não converso.. -
Se voce usa o xampp olha se o apache está ligado e se está configurado pra entrar com a porta 8090.
-
Vai no seu Xampp/Htdocs/ em createaccount.php,apague tudo e coloque isto: <?PHP //CREATE ACCOUNT FORM PAGE if($action == "") { //Checking options $main_content .= '<script type="text/javascript"> var accountHttp; //sprawdza czy dane konto istnieje czy nie function checkAccount() { if(document.getElementById("account_name").value=="") { document.getElementById("acc_name_check").innerHTML = \'<b><font color="red">Please enter account name.</font></b>\'; return; } accountHttp=GetXmlHttpObject(); if (accountHttp==null) { return; } var account = document.getElementById("account_name").value; var url="ajax/check_account.php?account=" + account + "&uid="+Math.random(); accountHttp.onreadystatechange=AccountStateChanged; accountHttp.open("GET",url,true); accountHttp.send(null); } function AccountStateChanged() { if (accountHttp.readyState==4) { document.getElementById("acc_name_check").innerHTML=accountHttp.responseText; } } var emailHttp; //sprawdza czy dane konto istnieje czy nie function checkEmail() { if(document.getElementById("email").value=="") { document.getElementById("email_check").innerHTML = \'<b><font color="red">Please enter e-mail.</font></b>\'; return; } emailHttp=GetXmlHttpObject(); if (emailHttp==null) { return; } var email = document.getElementById("email").value; var url="ajax/check_email.php?email=" + email + "&uid="+Math.random(); emailHttp.onreadystatechange=EmailStateChanged; emailHttp.open("GET",url,true); emailHttp.send(null); } function EmailStateChanged() { if (emailHttp.readyState==4) { document.getElementById("email_check").innerHTML=emailHttp.responseText; } } function validate_required(field,alerttxt) { with (field) { if (value==null||value==""||value==" ") {alert(alerttxt);return false;} else {return true} } } function validate_email(field,alerttxt) { with (field) { apos=value.indexOf("@"); dotpos=value.lastIndexOf("."); if (apos<1||dotpos-apos<2) {alert(alerttxt);return false;} else {return true;} } } function validate_form(thisform) { with (thisform) { if (validate_required(account_name,"Please enter name of new account!")==false) {account_name.focus();return false;} if (validate_required(email,"Please enter your e-mail!")==false) {email.focus();return false;} if (validate_email(email,"Invalid e-mail format!")==false) {email.focus();return false;} if (verifpass==1) { if (validate_required(passor,"Please enter password!")==false) {passor.focus();return false;} if (validate_required(passor2,"Please repeat password!")==false) {passor2.focus();return false;} if (passor2.value!=passor.value) {alert(\'Repeated password is not equal to password!\');return false;} } if (verifya==1) { if (validate_required(verify,"Please enter verification code!")==false) {verify.focus();return false;} } if(rules.checked==false) {alert(\'To create account you must accept server rules!\');return false;} } } </script>'; //MainContent for the cReatiOn $main_content .= '<table width="100%" cellspacing="0" cellpadding="0" border="0" class="module-fourth"> <tbody><tr> <td class="module-fou-top-left"></td> <td class="module-fou-top"></td> <td class="module-fou-top-right"></td> </tr> <tr> <td class="module-fou-left"></td> <td class="module-fou-background"> <table width="100%" border="0"> To play on '.$config['server']['serverName'].' you need an account. All you have to do to create your new account is to enter your email address, password to new account, verification code from picture and to agree to the terms presented below. If you have done so, your account name, password and e-mail address will be shown on the following page and your account and password will be sent to your email address along with further instructions.<BR><BR> </tbody></table> </td> <td class="module-fou-right"></td> </tr> <tr> <td class="module-fou-bot-left"></td> <td class="module-fou-bot"></td> <td class="module-fou-bot-right"></td> </tr> </tbody></table>'; $main_content .= ' <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%> <FORM ACTION="?subtopic=createaccount&action=saveaccount" onsubmit="return validate_form(this)" METHOD=post> <TR><td style="background: url("images/header-3.gif") repeat-x scroll center top rgb(170, 89, 0); color: rgb(255, 255, 255);"><B>Create a '.$config['server']['serverName'].' Account</B></TD></TR> </table>'; $main_content .= '<TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%><TR class="darkBorder"><TD width="150" valign="top" ><B>Account name: </B></TD><TD colspan="2"><INPUT id="account_name" NAME="reg_name" onkeyup="checkAccount();" VALUE="" SIZE=30 MAXLENGTH=50><BR><font size="1" face="verdana,arial,helvetica">(Please enter your new account name)</font></TD></TR> <TR class="lightBorder"><TD width="150" valign="top"><b>Name status:</b></TD><TD colspan="2"><b><div id="acc_name_check">Please enter your account name.</div></b></TD></TR> <TR class="darkBorder"><TD width="150" valign="top"><B>Email address: </B></TD><TD colspan="2"><INPUT id="email" NAME="reg_email" onkeyup="checkEmail();" VALUE="" SIZE=30 MAXLENGTH=50><BR><font size="1" face="verdana,arial,helvetica">(Your email address is required to recovery a '.$config['server']['serverName'].' account)</font></TD></TR> <TR class="lightBorder"> <TD width="150"><b>Email status:</b></TD><TD colspan="2"><b><div id="email_check">Please enter your e-mail.</div></b></TD></TR>'; if(!$config['site']['create_account_verify_mail']) $main_content .= '<script type="text/javascript">var verifpass=1;</script> <TR class="darkBorder"><TD width="150" valign="top"><B>Password: </B></TD><TD colspan="2"><INPUT TYPE="password" id="passor" NAME="reg_password" VALUE="" SIZE=30 MAXLENGTH=50><BR><font size="1" face="verdana,arial,helvetica">(Here write your password to new account on '.$config['server']['serverName'].')</font></TD></TR> <TR class="lightBorder"><TD width="150" valign="top"><B>Repeat password: </B></TD><TD colspan="2"><INPUT TYPE="password" id="passor2" NAME="reg_password2" VALUE="" SIZE=30 MAXLENGTH=50><BR><font size="1" face="verdana,arial,helvetica">(Repeat your password)</font></TD></TR>'; else $main_content .= '<script type="text/javascript">var verifpass=0;</script>'; if($config['site']['verify_code']) $main_content .= '<script type="text/javascript">var verifya=1;</script><TR class="darkBorder"><TD width="150"><B>Code: </B></TD><TD colspan="2"><img src="imgverification/imagebuilder.php" border="0" alt="Image Verification is missing, please contact the administrator"></TD></TR> <TR class="lightBorder"><TD width="150" valign="top"><B>Verification Code: </B></TD><TD colspan="2"><INPUT id="verify" NAME="reg_code" VALUE="" SIZE=30 MAXLENGTH=50><BR><font size="1" face="verdana,arial,helvetica">(Here write verification code from picture)</font></TD></TR></table>'; else $main_content .= '<script type="text/javascript">var verifya=0;</script>'; $main_content .= ' <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%> <TR class="darkBorder"><TD width="150" valign="top"> <center> <B>'.$config['server']['serverName'].' Rules</B><BR> <TEXTAREA ROWS="16" WRAP="physical" COLS="63" READONLY="true">'; //load server rules from file include("tibiarules.php"); $main_content .= '</TEXTAREA> </TD></TR> </TD></TR> <TR class="darkBorder"><TD> <TABLE BORDER=0 CELLSPACING=5 CELLPADDING=0 width="100%"> <TR class="lightBorder"><TD> <INPUT TYPE="checkbox" NAME="rules" id="rules" value="true" /><label for="rules"><u> I agree to the '.$config['server']['serverName'].' Rules.</u></lable><BR> </TD></TR> <TR class="darkBorder"><TD> If you fully agree to these terms, click on the "I Agree" button in order to create a '.$config['server']['serverName'].' account.<BR> If you do not agree to these terms or do not want to create a '.$config['server']['serverName'].' account, please click on the "Cancel" button. </TD></TR></TABLE> </TD></TR> </TABLE></TD></TR> </TABLE> <BR> <TABLE BORDER=0 WIDTH=100%> <TR><TD ALIGN=center> <IMG SRC="'.$layout_name.'/images/general/blank.gif" WIDTH=120 HEIGHT=1 BORDER=0><BR> </TD><TD ALIGN=center VALIGN=top> <INPUT TYPE=image NAME="I Agree" SRC="'.$layout_name.'/images/buttons/sbutton_iagree.gif" BORDER=0 WIDTH=120 HEIGHT=18> </FORM> </TD><TD ALIGN=center> <FORM ACTION="?subtopic=latestnews" METHOD=post> <INPUT TYPE=image NAME="Cancel" SRC="'.$layout_name.'/images/buttons/sbutton_cancel.gif" BORDER=0 WIDTH=120 HEIGHT=18> </FORM> </TD><TD ALIGN=center> <IMG SRC="/images/general/blank.gif" WIDTH=120 HEIGHT=1 BORDER=0><BR> </TD></TR> </TABLE> </TD> <TD><IMG SRC="'.$layout_name.'/images/general/blank.gif" WIDTH=10 HEIGHT=1 BORDER=0></TD> </TR> </TABLE>'; } if($action == "saveaccount") { $reg_name = strtoupper(trim($_POST['reg_name'])); $reg_email = trim($_POST['reg_email']); $reg_password = trim($_POST['reg_password']); $reg_code = trim($_POST['reg_code']); //FIRST check //check e-mail if(empty($reg_name)) $reg_form_errors[] = "Please enter account name."; elseif(!check_account_name($reg_name)) $reg_form_errors[] = "Invalid account name format. Use only A-Z and numbers 0-9."; if(empty($reg_email)) $reg_form_errors[] = "Please enter your email address."; else { if(!check_mail($reg_email)) $reg_form_errors[] = "E-mail address is not correct."; } if($config['site']['verify_code']) { //check verification code $string = strtoupper($_SESSION['string']); $userstring = strtoupper($reg_code); session_destroy(); if(empty($string)) $reg_form_errors[] = "Information about verification code in session is empty."; else { if(empty($userstring)) $reg_form_errors[] = "Please enter verification code."; else { if($string != $userstring) $reg_form_errors[] = "Verification code is incorrect."; } } } //check password if(empty($reg_password) && !$config['site']['create_account_verify_mail']) $reg_form_errors[] = "Please enter password to your new account."; elseif(!$config['site']['create_account_verify_mail']) { if(!check_password($reg_password)) $reg_form_errors[] = "Password contains illegal chars (a-z, A-Z and 0-9 only!) or lenght."; } //SECOND check //check e-mail address in database if(empty($reg_form_errors)) { if($config['site']['one_email']) { $test_email_account = $ots->createObject('Account'); //load account with this e-mail $test_email_account->findByEmail($reg_email); if($test_email_account->isLoaded()) $reg_form_errors[] = "Account with this e-mail address already exist in database."; } $account_db = new OTS_Account(); $account_db->find($reg_name); if($account_db->isLoaded()) $reg_form_errors[] = 'Account with this name already exist.'; } // ----------creates account-------------(save in database) if(empty($reg_form_errors)) { //create object 'account' and generate new acc. number if($config['site']['create_account_verify_mail']) { $reg_password = ''; for ($i = 1; $i <= 6; $i++) $reg_password .= mt_rand(0,9); } $reg_account = $ots->createObject('Account'); $number = $reg_account->create(0, 9999999, $reg_name); // saves account information in database $reg_account->setPassword(password_ency($reg_password)); $reg_account->setEMail($reg_email); $reg_account->unblock(); $reg_account->save(); if($config['site']['newaccount_premdays']) { $reg_account->setCustomField("premdays", $config['site']['newaccount_premdays']); $reg_account->setCustomField("lastday", time()); } //show information about registration if($config['site']['send_emails'] && $config['site']['create_account_verify_mail']) { $mailBody = '<html> <body> <h3>Your account name and password!</h3> <p>You or someone else registred on server <a href="'.$config['server']['url'].'"><b>'.$config['server']['serverName'].'</b></a> with this e-mail.</p> <p>Account name: <b>'.$reg_name.'</b></p> <p>Password: <b>'.trim($reg_password).'</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>'; require("phpmailer/class.phpmailer.php"); $mail = new PHPMailer(); if ($config['site']['smtp_enabled'] == "yes") { $mail->IsSMTP(); $mail->Host = $config['site']['smtp_host']; $mail->Port = (int)$config['site']['smtp_port']; $mail->SMTPAuth = ($config['site']['smtp_auth'] ? true : false); $mail->Username = $config['site']['smtp_user']; $mail->Password = $config['site']['smtp_pass']; } else $mail->IsMail(); $mail->IsHTML(true); $mail->From = $config['site']['mail_address']; $mail->AddAddress($reg_email); $mail->Subject = $config['server']['serverName']." - Registration"; $mail->Body = $mailBody; if($mail->Send()) { $main_content .= 'Your account has been created. Check your e-mail. See you in Tibia!<BR><BR>'; $main_content .= '<TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=4> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Account Created</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['darkborder'].'"> <TABLE BORDER=0 CELLPADDING=1><TR><TD> <BR>Your account name is <b>'.$reg_name.'</b>. <BR><b><i>You will receive e-mail (<b>'.$reg_email.'</b>) with your password.</b></i><br>'; $main_content .= 'You will need the account name and your password to play on '.$config['server']['serverName'].'. Please keep your account name and password in a safe place and never give your account name or password to anybody.<BR><BR>'; $main_content .= '<br /><small>These informations were send on email address <b>'.$reg_email.'</b>. Please check your inbox/spam folder.'; } else { $main_content .= '<br /><small>An error occorred while sending email! Account not created. Try again.</small>'; $reg_account->delete(); } } else { $main_content .= 'Your account has been created. Now you can login and create your first character. See you in Tibia!<BR><BR>'; $main_content .= '<TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=4> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Account Created</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['darkborder'].'"> <TABLE BORDER=0 CELLPADDING=1><TR><TD> <BR>Your account name is <b>'.$reg_name.'</b><br>You will need the account name and your password to play on '.$config['server']['serverName'].'. Please keep your account name and password in a safe place and never give your account name or password to anybody.<BR><BR>'; if($config['site']['send_emails'] && $config['site']['send_register_email']) { $mailBody = '<html> <body> <h3>Your account name and password!</h3> <p>You or someone else registred on server <a href="'.$config['server']['url'].'"><b>'.$config['server']['serverName'].'</b></a> with this e-mail.</p> <p>Account name: <b>'.$reg_name.'</b></p> <p>Password: <b>'.trim($reg_password).'</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>'; require("phpmailer/class.phpmailer.php"); $mail = new PHPMailer(); if ($config['site']['smtp_enabled'] == "yes") { $mail->IsSMTP(); $mail->Host = $config['site']['smtp_host']; $mail->Port = (int)$config['site']['smtp_port']; $mail->SMTPAuth = ($config['site']['smtp_auth'] ? true : false); $mail->Username = $config['site']['smtp_user']; $mail->Password = $config['site']['smtp_pass']; } else $mail->IsMail(); $mail->IsHTML(true); $mail->From = $config['site']['mail_address']; $mail->AddAddress($reg_email); $mail->Subject = $config['server']['serverName']." - Registration"; $mail->Body = $mailBody; if($mail->Send()) $main_content .= '<br /><small>These informations were send on email address <b>'.$reg_email.'</b>.'; else $main_content .= '<br /><small>An error occorred while sending email (<b>'.$reg_email.'</b>)!</small>'; } } $main_content .= '</TD></TR></TABLE></TD></TR></TABLE><BR><BR>'; } else { //SHOW ERRORs if data from form is wrong $main_content .= '<div class="SmallBox" > <div class="MessageContainer" > <div class="BoxFrameHorizontal" style="background-image:url('.$layout_name.'/images/content/box-frame-horizontal.gif);" /></div> <div class="BoxFrameEdgeLeftTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif);" /></div> <div class="BoxFrameEdgeRightTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif);" /></div> <div class="ErrorMessage" > <div class="BoxFrameVerticalLeft" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif);" /></div> <div class="BoxFrameVerticalRight" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif);" /></div> <div class="AttentionSign" style="background-image:url('.$layout_name.'/images/content/attentionsign.gif);" /></div><b>The Following Errors Have Occurred:</b><br/>'; foreach($reg_form_errors as $show_msg) { $main_content .= '<li>'.$show_msg; } $main_content .= '</div> <div class="BoxFrameHorizontal" style="background-image:url('.$layout_name.'/images/content/box-frame-horizontal.gif);" /></div> <div class="BoxFrameEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif);" /></div> <div class="BoxFrameEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif);" /></div> </div></div><br/> <BR> <CENTER> <TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0><FORM ACTION=?subtopic=createaccount METHOD=post><TR><TD> <INPUT TYPE=hidden NAME=email VALUE=""> <INPUT TYPE=image NAME="Back" ALT="Back" SRC="'.$layout_name.'/images/buttons/sbutton_back.gif" BORDER=0 WIDTH=120 HEIGHT=18> </TD></TR></FORM></TABLE> </CENTER>'; } } // Do not remove !!!!!! // $main_content .= '<div align="right"><small><b>Dynamic World: <a href="http://dynamic-world.servegame.com">Bem vindo !</a></b></small></div><br />'; ?>
-
Vai lá em C:\Arquivos de programas\xampp\htdocs\pot\OTS_DB_SQLite.php ! Deve ter um ( ; ),retira ele.
-
[Gesior Acc] Guild War System Com Escudos
tópico respondeu ao walefxavier de walefxavier em Tutoriais de Websites
É,o mais recomendável seria instalar um site mesmo,pois,sem o site os jogadores não irão saber os comandos e nem teriam como saber se foram invitados para WAR. Vai na ABA aqui do Xtibia sobre divulgação de projetos,lá voce encontra muitos Web Makers,eles fazem um site pra voce. -
Caso queria uma pagina mostrando todos os jogadores VIP do Ot,siga esse tutorial: Pagina Mostrando Jogadores Vip do OtServer
-
Mais a OtServList não irá te banir,pois ja tive varios Ots SqL,e quando Nukam o ot com Mage Bomb loga 166 player de uma vez,e se agente não banir o ip do mage bomb,vai ficar os 166 player logados no seu ot e vai aparecer na OtServList Normalmente...
-
[Gesior Acc] Guild War System Com Escudos
tópico respondeu ao walefxavier de walefxavier em Tutoriais de Websites
O War.php foi eu que modifiquei... -
[Gesior Acc] Guild War System Com Escudos
um tópico no fórum postou walefxavier Tutoriais de Websites
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 ! -
Sim ! O dele é simplesmente pegar os 'viptime' da account !
-
É Uma pagina que consiste em alertar os jogadores a não caírem na lábia de jogadores hackers e/ou em páginas falsas.As dicas foram tiradas do site do tibia global,mas voce pode muda-las de acordo com sua necessidade. Crie um arquivo chamado hacker.php em Xampp/htdocs... Dentro,cole isto : <?PHP $main_content .= '<center><br><div><center><font color ="#660000" face="chiller" size="16">Ant-Hackers</b></font></center><br> Siga as dicas de seguranca com cuidado para evitar perder o acesso a sua conta. Dicas para manter sua account e senha segura<br><br> Como escolher um email para registrar uma conta. Um dos metodos mais usados para roubar os jogadores atualmente, e atraves da recover key, ou seja do email. Por este motivo, ao criar uma conta, voce deve usar sempre um email que apenas voce conheca. Nunca informe para outros jogadores qual email esta registrado em sua conta.<br><br> Proteja seu email e sua pergunta secreta. Atualmente uma grande falha nos emails e a pergunta secreta. Criada para facilitar a recuperacao do email em casos de perca, tambem pode ser usada para roubar seu email. Alguns jogadores se aproveitam desta falha, para tentar conseguir seu email atraves da pergunta secreta. Essas pessoas agem da seguinte maneira. Apos se tornarem amigo da possivel vitima, buscam saber o maximo de dados sobre a mesma, para assim responder a pergunta secreta e roubar seu email. Com o email em maos esta pessoa tem total liberdade para conseguir sua conta, usando o sistema de recover key em nosso site. Por isso voce deve ter muito cuidado com sua pergunta secreta, sempre crie uma resposta dificil, e nunca comente sobre ela com ninguem. Se sua pergunta secreta e facil, pedimos que a altere imediatamente, para garantir sua seguranca.<br><br> Nunca entregue sua conta para ninguem! Cada dia surge pessoas dizendo ser gamemasters ou membros da equipe. A intencao deles e conseguir sua conta e senha. Alguns tendem a dizer que e para corrigir erros, ou que voce ganhara dias de premiuns. Isso e totalmente falso. Tenha sempre em mente que nem um gamemasters ou membros da equipe World of Trevours ira pedir-lhe o numero da sua conta ou sua senha. Nunca entregue seus dados de login para outras pessoas.<br><br> Memorize bem os dados sua conta! Nunca guarde sua conta ou senha em seu computador. Evitando assim que se alguem tiver acesso ao seu computador, ele nao ira encontrar a sua senha ou numero de conta. Se tiver problemas para memorizar a sua conta dados, escreva em um pedaco de papel e mantenha em um local seguro. Certifique-se de que ninguem pode encontra-la, nem mesmo os seus amigos!<br><br> Memorize bem os dados sua conta! Sua senha deve conter uma mistura de letras maiusculas e minusculas, numeros e caracteres especiais. Nunca use sua senha igual ao numero da conta. Alem disso evite palavras comuns porque hackers podem adivinhar-las facilmente<br><br> Nao entrem em outros sites alem do www.Servereasy.org Hoje em dia existe muitos sites falsos que prometem itens ou ferramentas pra facilitar seu jogo. Sao sites que geralmente pedem pra voce digitar sua senha, mas o real objetivo e roubar sua conta. Lembre-se apenas o endereco www.Servereasy.org o levara para o site oficial!<br><br> Emails oficiais. Muitos jogadores mal intencionados criam emails falsos ate parecidos com os nossos para pedir sua account e senha, lembre-se nossos emails e As-Farc@msn.com e As-Farc@msn.com e apenas por eles entraremos em contato com voces, sendo que nunca pediremos seus dados de login.<br><br> Nao utilizamos Menssengers Nao utilizamos Messengers ou qualquer outra forma de comunicacao instantanea para dar suporte aos jogadores. Se alguem tentar entrar em contato com voce, simplesmente ignore. Nosso unico metodo de comunicacao e pelo forum ou pelos e - mails citados anteriormente<br><br> Cuidado ao baixar arquivos eles podem conter programas maliciosos! Algumas pessoas estao distribuindo programas maliciosos com cavalos de troia, key loggers, atraves de sites como orkut ou e-mail. Por isso sempre antes de abrir algum e-mail desconhecido tenha cuidado.<br><br> Atualize os programas do seu computador, periodicamente! e extremamente aconselhavel manter seu sistema operacional e outros softwares de seguranca sempre atualizados. Ja que atualizacoes podem corrigir falhas antigas que podem ser exploradas por pessoas mal intencionadas.<br><br> Nao jogue tibia em locais publicos! Nao e aconselhavel voce digitar sua senha em locais publicos como lan houses, colegios entre outros locais onde outras pessoas possam usar deste mesmo computador. Ja que locais como este normalmente apresentam programas maliciosos.<br><br> Nao compartilhe ou comercialize contas! Existe uma razao pela qual compartilhar e comercializar contas e proibido no Tibia. Lembre-se que voce esta correndo um grande risco ao dar seus dados para outra pessoa. Ou mesmo comprando contas de alguem, ja que o verdadeiro pode vir a recupera-la. Sabemos por experiencia que, mesmo amigos intimos, podem a vir roubar e arruinar a conta dos outros. Lembre se que nao iremos fornecer apoio em caso de contas perdidas devido a comercio ou compartilhamento.<br><br> Cuidado com falsas promessas. Sempre que for passada alguma informacao importante, tal como eventos, promocoes e outros, voce precisa ir direto ao site oficial do Trevours Server para confirmar se foi postada alguma noticia sobre isto, caso contrario estao tentando tirar alguma vantagem sobre voce.<br><br> Cuidado ao comprar casas. Ao comprar uma casa de outro jogador, ele usara um comando para dar trade e aparecera no documento a casa da troca, porem antes de aceitar a troca, voce precisa verificar se no documento ha a descricao da casa, caso contrario recuse o compra pois o jogador esta tentando lhe enganar.<br><br><br> Recuperando sua conta Remova o problema de seguranca. A primeira coisa que voce tem a fazer e descobrir como alguem conseguiu sua conta. Lembre-se de remover o problema de seguranca, ja que se isso nao for feito o hacker pode obter novamente o acesso a conta.<br><br> Recuperando seus dados. Apos remover os problemas de seguranca voce deve usar a Lost Account interface. Apos isso siga as instrucoes oferecidas.<br><br> Interferencia da Equipe A equipe dificilmente responde emails de jogadores que foram roubados, pois como citamos acima, o jogador precisa se precaver antes e nao depois que ja foi enganado ou perdeu seus dados de acesso ao game. Ser for possivel tentaremos resolver seus caso, mas tenha em mente que isso nao vem a ser nossa obrigacao. Dynamic World</b></div> '; ?> Agora vá em Xampp/Htdocs/index.php e adicione o seguinte: case "hacker"; $subtopic = "Hacker"; $topic = "Ant-Hackers"; include("hacker.php"); break; Para Finalizar vá em Xampp/Htdocs/Layouts/tibiacom/layout.php e adicione o seguinte: <a href='?subtopic=hacker'> <div id='submenu_hacker' 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_createaccount' class='ActiveSubmenuItemIcon' style='background-image:url(<?PHP echo $layout_name; ?>/images/menu/icon-activesubmenu.gif);'></div> <div class='SubmenuitemLabel'>Ant Hackers</div> <div class='RightChain' style='background-image:url(<?PHP echo $layout_name; ?>/images/general/chain.gif);'></div> </div> </a> As Dicas contidas na pagina podem ser modificadas de acordo com sua necessidade...
-
Tem que ser Vip System com a storage ... Use o sistema do Vodka !
-
[Gesior Acc] Sistema De Confirmação
tópico respondeu ao walefxavier de walefxavier em Tutoriais de Websites
Cria um outro tópico e explica melhor...! -
Voce fez o que o GmBeckman falo ? Vá ao phpmyadmin e coloque isso : ALTER TABLE `players` ADD `auction_balance` INT(15) NOT NULL
-
Sistema de Confirmação Para Todos Gesior Acc
-
Tipo,no script 1.5 é 50% de Exp,eu to querendo colocar 30%,vai ser 1.3? Script function onLogin(cid) local rate = 1.5 -- 50% local config = { welvip = "você tem "..((rate - 1)*100).."% de exp a mais agora!", not_vip = "Tornesse vip e ganhe "..((rate - 1)*100).."% a mais de experiencia!", s = 13540, -- storage vip } if getPlayerStorageValue(cid, config.s) - os.time() >= 1 then doPlayerSetExperienceRate(cid, rate) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, config.welvip) else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, config.not_vip) end return TRUE end
-
otserv 8.x Alissow Ots 4.11 [11/07/2010] 8.6 Completo!
tópico respondeu ao Alissow de walefxavier em OTServ Comum
Nun da pra baixar !!!
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.