Você não está conectado. Conecte-se ou registre-se

Power Pixel » Games » MMO & RPG » Habbo Hotel » Tutoriais » [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF

[TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF

Ir à página : 1, 2, 3  Seguinte

Ver o tópico anterior Ver o tópico seguinte Ir em baixo  Mensagem [Página 1 de 3]

1 [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF em Dom 9 Jul 2017 - 17:54

Maloma

Membro Ouro


avatar
Olá amigos, trouxe para vocês hoje um sistema de verificação de e-mail, talvez outras pessoas tenham o mesmo em maneira diferente, por exemplo, em PHP.

Ao entrar no jogo, aparecerá um alerta onde irá pedir uma chave de segurança, ou melhor, um código de verificação.

Lembrando que esse sistema é para os usuários da equipe, após então você colocar o código de verificação, automaticamente irá aparecer o MOD Tools e enfim, os comandos da equipe.  Caso o contrário, você não poderá executar comandos e nem terá o MOD Tools dentro do servidor.

Essa chave de segurança (código de verificação) será enviada por e-mail.

COMENTE PARA VISUALIZAR AS IMAGENS!!
Imagem 1:



Imagem 2:


Imagem 3:


Imagem 4:



Como pode ver na terceira imagem, o código foi enviado do e-mail, mas, depois explico como iremos ativar. Na quarta imagem estaremos vendo como colocar o código corretamente, se colocar de uma maneira errada, não irá aparecer MOD Tools e comandos e então aparecerá um alerta avisando do erro. Agora, vamos ao código para que o sistema funcione!

No primeiro passo iremos a PlusEnvironment.cs e buscaremos por;
Código:
public static string SWFRevision = "";
E logo em baixo disso iremos adicionar esse código aqui;
Código:
public static string source;

No segundo passo iremos até Habbo.cs e buscaremos por;
Código:
public Habbo(int Id, string Username,
E em cima desse código nós iremos colocar;
Código:
internal bool PinStaff;

Depois buscaremos o seguinte;
Código:
            //TODO: Nope.
            this.InitPermissions();
E em cima do mesmo, colocaremos;
Código:
this.PinStaff = false;

No terceiro passo iremos a GameClient.cs e buscaremos por;
Código:
                    if (!string.IsNullOrWhiteSpace(PlusEnvironment.GetDBConfig().DBData["welcome_message"]))
                        SendMessage(new MOTDNotificationComposer(PlusEnvironment.GetDBConfig().DBData["welcome_message"]));
Em cima desse código, buscaremos;
Código:
                    if (userData.user.GetPermissions().HasRight("mod_tickets"))
                    {
                        SendMessage(new ModeratorInitComposer(
                          PlusEnvironment.GetGame().GetModerationManager().UserMessagePresets,
                          PlusEnvironment.GetGame().GetModerationManager().RoomMessagePresets,
                          PlusEnvironment.GetGame().GetModerationManager().UserActionPresets,
                          PlusEnvironment.GetGame().GetModerationTool().GetTickets));
                    }
E agora trocamos esse código, por este;
Código:
                    /*
                    if (userData.user.GetPermissions().HasRight("mod_tickets"))
                    {
                        SendMessage(new ModeratorInitComposer(
                          PlusEnvironment.GetGame().GetModerationManager().UserMessagePresets,
                          PlusEnvironment.GetGame().GetModerationManager().RoomMessagePresets,
                          PlusEnvironment.GetGame().GetModerationManager().UserActionPresets,
                          PlusEnvironment.GetGame().GetModerationTool().GetTickets));
                    }
                    */
Agora, em baixo de;
Código:
                    if (!string.IsNullOrWhiteSpace(PlusEnvironment.GetDBConfig().DBData["welcome_message"]))
                        SendMessage(new MOTDNotificationComposer(PlusEnvironment.GetDBConfig().DBData["welcome_message"]));
Colocaremos o seguinte; (Aqui é onde modificaremos o RANK para que apareça o alerta de PIN).
Código:
                    var rank = userData.user.Rank;
                    if (rank == 5 || rank == 6 || rank == 7 || rank == 8 || rank == 9) //editamos los rank a los que queremos pedir pin.
                    {

                        ServerPacket verify = new ServerPacket(ServerPacketHeader.VerifyMobilePhoneWindowComposer);
                        verify.WriteInteger(1);
                        verify.WriteInteger(1);
                        SendMessage(verify);


                        int PasswordLength = 10;
                        string _allowedChars = "ABCDEFGHJKLMNPQRSTUVWXYZ23456789!@$?";
                        Byte[] randomBytes = new Byte[PasswordLength];
                        char[] chars = new char[PasswordLength];
                        int allowedCharCount = _allowedChars.Length;

                        for (int i = 0; i < PasswordLength; i++)
                        {
                            Random randomObj = new Random();
                            randomObj.NextBytes(randomBytes);
                            chars[i] = _allowedChars[(int)randomBytes[i] % allowedCharCount];
                        }

                        var clave = new string(chars);

                        System.Net.Mail.MailMessage mail = new System.Net.Mail.MailMessage();
                        mail.From = new MailAddress("AQUITUGMAIL@GMAIL.COM"); //aqui tu GMAIL
                        try
                        {
                            DataRow UserData = null;
                            using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor())
                            {
                                dbClient.SetQuery("SELECT `id`,`username`,`mail` FROM users WHERE `username` = @Username LIMIT 1");
                                dbClient.AddParameter("Username", userData.user.Username);
                                UserData = dbClient.getRow();
                            }

                            mail.To.Add(Convert.ToString(UserData["mail"]));
                        }
                        catch
                        {
                        }

                        mail.Subject = "Clave para activar tu cuenta";
                        mail.Body = "Clave para activar tu cuenta staff, Clave acceso: " + clave + "";

                        SmtpClient smtp = new SmtpClient();

                        smtp.Host = "smtp.gmail.com";
                        smtp.Port = 587;
                        smtp.Credentials = new NetworkCredential("AQUITUGMAIL@GMAIL.COM", "TU CLAVE DE GMAIL");
                        smtp.EnableSsl = true;
                        try
                        {
                            smtp.Send(mail);
                            SendNotification("Te hemos mandando una clave a tu Email para poder activar tu cuenta, comprueba tu correo.");
                        }
                        catch (Exception ex)
                        {
                            Console.Write(ex.Message);
                        }


                        PlusEnvironment.source = clave;
                        userData.user.PinStaff = true;

                    }
                    else
                    {
                        if (userData.user.GetPermissions().HasRight("mod_tickets"))
                        {
                            SendMessage(new ModeratorInitComposer(
                              PlusEnvironment.GetGame().GetModerationManager().UserMessagePresets,
                              PlusEnvironment.GetGame().GetModerationManager().RoomMessagePresets,
                              PlusEnvironment.GetGame().GetModerationManager().UserActionPresets,
                              PlusEnvironment.GetGame().GetModerationTool().GetTickets));
                        }
                    }


Agora no quarto passo criaremos uma pasta em Plus.Communication.Packets.Incoming e iremos chamar a mesma de PINSMS e dentro dessa nova pasta iremos adicionar uma classe chamada PinStaffSms;
Código:
using Plus.Communication.Packets.Outgoing;
using Plus.Communication.Packets.Outgoing.Catalog;
using Plus.Communication.Packets.Outgoing.Moderation;
using Plus.Communication.Packets.Outgoing.Notifications;
using Plus.HabboHotel.GameClients;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Security.Cryptography;
using System.Text;
using System.Threading.Tasks;

namespace Plus.Communication.Packets.Incoming.PINSMS
{
    class PinStaffSms : IPacketEvent
    {
        public void Parse(HabboHotel.GameClients.GameClient Session, ClientPacket Packet)
        {
            string clave = Packet.PopString();

            if (clave == PlusEnvironment.source)
            {
                StringBuilder HabboInfo = new StringBuilder();
                HabboInfo.Append("Hola " + Session.GetHabbo().Username + "\r");
                HabboInfo.Append("Te has identificado correctamente");
                Session.SendNotification(HabboInfo.ToString());
                Session.GetHabbo().PinStaff = false;

                if (Session.GetHabbo().GetPermissions().HasRight("mod_tickets"))
                {
                    Session.SendMessage(new ModeratorInitComposer(
                      PlusEnvironment.GetGame().GetModerationManager().UserMessagePresets,
                      PlusEnvironment.GetGame().GetModerationManager().RoomMessagePresets,
                      PlusEnvironment.GetGame().GetModerationManager().UserActionPresets,
                      PlusEnvironment.GetGame().GetModerationTool().GetTickets));
                }

            }
            else
            {
                Session.SendNotification("Error de clave, prueba de nuevo");
                ServerPacket verify= new ServerPacket(ServerPacketHeader.VerifyMobilePhoneWindowComposer);
                verify.WriteInteger(1);
                verify.WriteInteger(1);
                Session.SendMessage(verify);
                return;

            }


            ServerPacket error = new ServerPacket(ServerPacketHeader.SMSErrorComposer);
            error.WriteInteger(2);
            error.WriteInteger(2);
            Session.SendMessage(error);


            ServerPacket verify2 = new ServerPacket(ServerPacketHeader.VerifyMobilePhoneWindowComposer);
            verify2.WriteInteger(-1);
            verify2.WriteInteger(-1);
            Session.SendMessage(verify2);
        }
    }
}

No quinto passo, vamos a ChatEvent.cs e buscaremos por;
Código:
            if (Session == null || Session.GetHabbo() == null || !Session.GetHabbo().InRoom)
                return;
E em baixo adicionamos o seguinte;
Código:
            if (Session.GetHabbo().PinStaff)
            {
                Session.SendWhisper("No has activado tu cuenta, nada de hablar.");
                return;
            }

Sexto passo, adicionamos os IDS dos Packets de alertas para mostrar..  ServerPacketHeader.cs
Código:
        public const int SMSErrorComposer = 3747;
        public const int VerifyMobilePhoneWindowComposer = 2685;
Agora criaremos o ID do Packet para enviar.. ClientPacketHeader.cs
Código:
        public const int SmsVerification = 2069;

No sétimo passo iremos a PacketManager.cs e buscaremos por;
Código:
private void RegisterNux()
E dentro desse private adicionamos o seguinte;
Código:
this._incomingPackets.Add(ClientPacketHeader.SmsVerification, new PinStaffSms());

A PRODUCTION que utilizei nesse tutorial foi PRODUCTION-201609061203-935497134, vocês terão que adicionar as IDS da release. Bom, agora vamos para a parte do GMAIL (E-mail), link para enviar e-mails a partir de C# de erros livres.
[Você precisa estar registrado e conectado para ver este link.]

Aqui irá dizer se você deve ou não permitir aplicações menos seguras e você terá que permitir, pronto. Enfim, qualquer coisa sobre o assunto, não hesite em comentar.

Créditos:
Habbo
antonyxxx10
eu por postar no ppf :*



Última edição por Maloma em Dom 9 Jul 2017 - 19:30, editado 1 vez(es)

Ver perfil do usuário

pedxz

Administrator


avatar
acho o sistema o pouco inútil, mas obrigado pela partilha

Ver perfil do usuário

Vedox

Membro Bronze


avatar

Acho também um pouco inutil!
 Qual pack está a usar ae?

Ver perfil do usuário https://mesthost.com

n4zun

Membro Prata


avatar
Irei dar uma olhada, belo tutorial! Obrigado por compartilhar.

Ver perfil do usuário http://beeg.com

Visi0n

Membro Platina


avatar
Eu também achei o sistema meio inútil, mas pode ser que as pessoas gostem e façam utilização.

Ver perfil do usuário

Saigon

Membro Elite


avatar
Uma dúvida, como ele identifica o e-mail? Os códigos irão dar erro por conta do size.

Ver perfil do usuário

Maloma

Membro Ouro


avatar
[Você precisa estar registrado e conectado para ver este link.] escreveu:Uma dúvida, como ele identifica o e-mail? Os códigos irão dar erro por conta do size.
Já arrumei o problema do size, obrigada por lembrar.
Você irá colocar o e-mail, aí ele enviará um código para o seu e-mail que colocou e então você terá que verificar o código.

Ver perfil do usuário

joa0

Membro


avatar
comoentando ppara visuaiza a s imagens

Ver perfil do usuário

Sprilts2

Membro


avatar
Belo tutorial, obrigado pelo esforço em traze-lo para nós

Ver perfil do usuário

Aladim.

Membro Bronze


avatar
VAMOS VER AS IMAGENS ...

Ver perfil do usuário

GustP

Membro Ouro


avatar
ótimo sistema Maloma Smile, sempre trazendo bons conteúdos!!!

Ver perfil do usuário http://www.desempregado.com/

Recofire

Membro Bronze


avatar
Comentando p ver

Ver perfil do usuário
Estarei testando, obrigado por compartilhar

Ver perfil do usuário

oparango

Membro


avatar
Estarei testando, obrigado por compartilhar

Ver perfil do usuário

Callie

Membro


avatar
comentando para ver

Ver perfil do usuário

xNectar

Membro Prata


avatar
Incrível este sistema.- Obrigado por trazer pro fórum PT.

Ver perfil do usuário
Comentando para visualizar.

Ver perfil do usuário

pedxz

Administrator


avatar
MODERAÇÃO
Usuário: Aladim.
Quantidade: +1
Motivo: Postagem inútil
[Você precisa estar registrado e conectado para ver este link.]

Ver perfil do usuário

Tylin

Membro Bronze


avatar
Parabéns Maloma, irei testa.. <3

Ver perfil do usuário http://www.criandomeuhp.com/

-Four

Novato


avatar
teste para ver as imagens

Ver perfil do usuário

21 Re: [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF em Seg 10 Jul 2017 - 22:01

edgecry

Membro


avatar
Adooorei <3 obrigadooo

Ver perfil do usuário

22 Re: [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF em Seg 10 Jul 2017 - 22:13

Wickfield

Membro Bronze


avatar
Comentando pra ver.

Ver perfil do usuário http://colordesign.tk

23 Re: [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF em Seg 10 Jul 2017 - 22:18

cometando pra ver

Ver perfil do usuário

24 Re: [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF em Seg 10 Jul 2017 - 22:47

Anitta

Membro


avatar
Comentando para visualizar

Ver perfil do usuário

25 Re: [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF em Seg 10 Jul 2017 - 23:05

lost12

Membro


avatar
quero ver esse sistema funfando

Ver perfil do usuário http://www.socialbr.br22.net

26 Re: [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF em Ter 11 Jul 2017 - 18:04

Tobby

Membro


avatar
obrigado por postar!comentando para ver as imagens

Ver perfil do usuário

27 Re: [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF em Ter 11 Jul 2017 - 19:29

edinei07

Membro Prata


avatar
obrigado por compartilhar com o nosso forum! Mas estou comentando para ver as imagens

Ver perfil do usuário

28 Re: [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF em Ter 11 Jul 2017 - 22:59

iCliquei

Membro


avatar
Comentando para visualizar

Ver perfil do usuário http://pixelsdourado.com.br

29 Re: [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF em Qui 13 Jul 2017 - 11:38

roxmt008

Membro



Comentando para ver

Ver perfil do usuário

30 Re: [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF em Qui 13 Jul 2017 - 14:25

Comentando para ver as imagens

Ver perfil do usuário

31 Re: [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF em Qui 13 Jul 2017 - 14:38

Wiz-Khalifa

Membro Platina


avatar
comentando pra ver

Ver perfil do usuário

32 Re: [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF em Qui 13 Jul 2017 - 17:55

Comentando para ver.

Ver perfil do usuário

33 Re: [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF em Qui 13 Jul 2017 - 18:19

Bela função é belo tutorial

Ver perfil do usuário

edgecry

Membro


avatar
ótimooo, me ajudou mt <3

Ver perfil do usuário

35 Re: [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF em Ter 25 Jul 2017 - 17:42

Peans

Membro


avatar
Comentando pra ver

Ver perfil do usuário

36 Re: [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF em Ter 25 Jul 2017 - 17:48

Comentando para ver,

Ver perfil do usuário

37 Re: [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF em Qua 26 Jul 2017 - 17:53

bon tutorial brow, bom demais

Ver perfil do usuário

hoded

Membro


avatar
Obrigado por compartilhar isto!

Ver perfil do usuário

39 Re: [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF em Dom 30 Jul 2017 - 19:17

Arkadia

Membro Bronze


avatar
comentando para ver!

Ver perfil do usuário

40 Re: [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF em Dom 30 Jul 2017 - 19:35

tsuname7.s

Membro Bronze


avatar
comentando p ver

Ver perfil do usuário

GMTrident

Membro


avatar
Comentando para ver

Ver perfil do usuário

wall-ace

Membro


avatar
comentando para ver >4

Ver perfil do usuário http://luxushotel.com.br
É um sistema bem útil em questão de segurança com a Staff, caso algum membro da Staff seja hackeado.

Ver perfil do usuário

Cl4ush

Administrator


avatar
É um sistema muito bom para segurança das contas, obrigado por compartilhar!



[info]Leia as regras do fórum para não ser punido, [Você precisa estar registrado e conectado para ver este link.][/info]



[Você precisa estar registrado e conectado para ver esta imagem.][Você precisa estar registrado e conectado para ver esta imagem.]

      
Ver perfil do usuário http://alunoqaluno.hol.es/

-Lucas

VIP


avatar
comentando...

Ver perfil do usuário

b3ta

Membro Platina


avatar
Bom tutorial!
Não curto Habbo mas gosto de ver os tutoriais kkkk.

Ver perfil do usuário http://mylocalhost.org

ThuG - LovE

Membro Elite


avatar
Ótimo tutorial, [Você precisa estar registrado e conectado para ver este link.]. Assim ajudará muitos.

Ver perfil do usuário http://www.power-pixel.net
Comentando para vê imagens...

Ver perfil do usuário

Flash Reverso

Honorário


avatar
MODERAÇÃO
Usuário: B0T
Quantidade: Não recebeu ocorrências por ser novato.
Motivo: Postagem inútil
[Você precisa estar registrado e conectado para ver este link.]

Ver perfil do usuário

50 Re: [TUTORIAL] SISTEMA DE IDENTIFICADOR STAFF em Sab 12 Ago 2017 - 15:33

Deputado

Membro


avatar
Muito bom vou testar

Ver perfil do usuário

Conteúdo patrocinado



Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo  Mensagem [Página 1 de 3]

Ir à página : 1, 2, 3  Seguinte

Permissão deste fórum:
Você não pode responder aos tópicos neste fórum