[Emulador] ArrrQ ~ Developed in C#, Forms, SocketAsync

  • 36 Respuestas
  • 2758 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

*

Desconectado Psherk

[Emulador] ArrrQ ~ Developed in C#, Forms, SocketAsync
« en: Octubre 26, 2016, 04:45:12 am »
El desarrollo de esto es en forma de aprendizaje y de retomar la programación ya que hace más de un año no hago nada por el estilo.

ArrrQ Emulator
ArrrQ es un software desarrollado para emular Habbo, dicho proyecto es desarrollado en c# por mi (No tienes permiso para ver enlaces. Registrarme ó Logearme)

ArrrQ busca revolucionar el mundo de los retroserver, en este proyecto hemos dicho adiós a la consola y implementamos los forms para mejor visión y mayor facilidad en algunas acciones desde él.

Características
  • Forms
  • Mysql Connection
  • SocketAsync

Imágenes



Snnipets
Spoiler para Connection:
Código: c#
using MySql.Data.MySqlClient;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ArrrQ.Core.MySQL
{
    class Connection : IDisposable
    {
        public MySqlConnection _connection {get; private set;}
        public string ConnectionString { get; private set; }

        public Connection()
        {
            MainCore.Logger().setString("Starting MySQL connection...");
            try
            {
                MySqlConnectionStringBuilder connect = new MySqlConnectionStringBuilder();
                connect.Server = (string)MainCore.getConfiguration["MySQL"]["host"];
                connect.Port = (uint)MainCore.getConfiguration["MySQL"]["port"];
                connect.UserID = (string)MainCore.getConfiguration["MySQL"]["username"];
                connect.Password = (string)MainCore.getConfiguration["MySQL"]["password"];
                connect.Database = (string)MainCore.getConfiguration["MySQL"]["database"];
                connect.Pooling = true;
                connect.MinimumPoolSize = 5;
                connect.MaximumPoolSize = 100;
                _connection = new MySqlConnection(ConnectionString = connect.ConnectionString);
                _connection.Open();
                MainCore.Logger().setString("Connection MySQL started!");
            }
            catch (Exception e)
            {
                MainCore.Logger().setError(e);
                throw;
            }
        }

        public void Dispose()
        {
            if (_connection == null)
                return;
            _connection.Close();
        }
    }
}
Spoiler para Statement:
Código: c#
using MySql.Data.MySqlClient;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ArrrQ.Core.MySQL
{
    public class Statement
    {
        private string _sql;
        public object _send;
        private SQLType _type;
        private List<MySqlParameter> _parameters;

        public void SQL(string sql, SQLType x)
        {
            if (sql == "")
                return;

            _sql = sql;
            _type = x;
            _parameters = new List<MySqlParameter>();
        }

        public void addParameter(string x, object v)
        {
            _parameters.Add(new MySqlParameter(string.Format("?{0}", x), v));
        }

        private void Type()
        {
            try
            {
                switch(_type)
                {
                    case SQLType.String:
                    _send = MySqlHelper.ExecuteNonQuery(MainCore.getConnection().ConnectionString, _sql, _parameters.ToArray());
                    break;
                    case SQLType.DataRow:
                    _send = MySqlHelper.ExecuteDataRow(MainCore.getConnection().ConnectionString, _sql, _parameters.ToArray());
                    break;

                    case SQLType.DataTable:
                    _send = MySqlHelper.ExecuteDataset(MainCore.getConnection().ConnectionString, _sql, _parameters.ToArray()).Tables[0];
                    break;
                }
            }
            catch(Exception e)
            {
                _send = null;
            }
        }

        public T getData<T>()
        {
            this.Type();
            return (T)_send;
        }
       
        public void Finish()
        {
            _parameters.Clear();
            _sql = null;
            _send = null;
        }
    }

    public enum SQLType
    {
        String,
        DataRow,
        DataTable
    }
}
Spoiler para Ejemplo del uso:
Código: c#
try {
    Connection MysqlConnection = new Connection(); //Crea la conexión
    Statement execute = new Statement(); //Empezaremos la consulta
    execute.SQL("SELECT * FROM users WHERE id = ?id", SQLType.DataRow); //SQL tipo DataRow
    execute.addParameter("id", 1); //Parametros, reflejados en el sql ?id
    DataRow dRow = execute.getData<DataRow>(); //Convertimos resultados de consulta a DataRow
    Console.WriteLine("Username: {0} - Email: {1}", dRow["username"], dRow["email"]);
    execute.Finish(); //damos por terminado
}
catch (Exception e) {
    Console.WriteLine("Error {0}", e.ToString());
}

Créditos
  • LittleJ ~ HabboEncoding
  • Itachi
  • Joopie1994 ~ HabboEncryption

Repositorio del proyecto: No tienes permiso para ver enlaces. Registrarme ó Logearme
« Última modificación: Febrero 07, 2017, 07:03:34 pm por xJosue- »

*

Desconectado gersilva96

Re:[Emulador] ArrrQ ~ Developed in C#, Forms, SocketAsync
« Respuesta #1 en: Octubre 26, 2016, 05:19:24 am »
Me parece genial tu idea! Espero que puedas continuarlo y terminarlo. Y bueno cuando estés más avanzado también compartir imágenes! Éxitos!

*

Desconectado Josemy

Re:[Emulador] ArrrQ ~ Developed in C#, Forms, SocketAsync
« Respuesta #2 en: Octubre 26, 2016, 11:03:48 am »
Si necesitas más ayuda aquí estoy.
« Última modificación: Enero 14, 2017, 12:49:50 am por xJosue- »

*

Desconectado grillo

Re:[Emulador] ArrrQ ~ Developed in C#, Forms, SocketAsync
« Respuesta #3 en: Octubre 26, 2016, 02:22:34 pm »
Muy interesante :D si te interesa testearlo en algun momento mandame mensaje a skype: grillo1311
No tienes permiso para ver enlaces. Registrarme ó Logearme

Venta de cuentas pokemon go a buen precio.
Solo cuentas sobre nivel 30, mas información mensaje privado o en el siguiente chat de discord: No tienes permiso para ver enlaces. Registrarme ó Logearme
[/font][/size][/color]

*

Desconectado Psherk

Re:[Emulador] ArrrQ ~ Developed in C#, Forms, SocketAsync
« Respuesta #4 en: Octubre 26, 2016, 06:04:07 pm »
No tienes permiso para ver enlaces. Registrarme ó Logearme
Si necesitas ayuda aquí estoy.
Si, tú y todos me pueden ayudar en algo.
¿Qué es lo nuevo que tiene Habbo o qué ha cambiado desde hace un año?

*

Desconectado Josemy

Re:[Emulador] ArrrQ ~ Developed in C#, Forms, SocketAsync
« Respuesta #5 en: Octubre 26, 2016, 09:26:00 pm »
No tienes permiso para ver enlaces. Registrarme ó Logearme
No tienes permiso para ver enlaces. Registrarme ó Logearme
Si necesitas ayuda aquí estoy.
Si, tú y todos me pueden ayudar en algo.
¿Qué es lo nuevo que tiene Habbo o qué ha cambiado desde hace un año?
Nuevas cosas para sacarle el dinero a la gente.

*

Desconectado CristianDvlpr

Re:[Emulador] ArrrQ ~ Developed in C#, Forms, SocketAsync
« Respuesta #6 en: Octubre 27, 2016, 02:50:14 pm »
No tienes permiso para ver enlaces. Registrarme ó Logearme
No tienes permiso para ver enlaces. Registrarme ó Logearme
Si necesitas ayuda aquí estoy.
Si, tú y todos me pueden ayudar en algo.
¿Qué es lo nuevo que tiene Habbo o qué ha cambiado desde hace un año?
1. Nuevo catálogo
2. Nuevo método de cambios
3. La camara

Enviado desde mi Aquaris X5 mediante Tapatalk

Odio los mapas, me gusta perderme - Juancho Marqués

*

Desconectado Psherk

Re:[Emulador] ArrrQ ~ Developed in C#, Forms, SocketAsync
« Respuesta #7 en: Octubre 27, 2016, 11:53:22 pm »
Estaba arreglando un par de cosas en el sistema de sockets, ya funcionan con normalidad y tenemos flujo de paquetes.

Lo más seguro es que en algún momento empezaré a implementar No tienes permiso para ver enlaces. Registrarme ó Logearme.

« Última modificación: Octubre 28, 2016, 08:09:05 pm por Psherk »

*

Desconectado Psherk

Re:[Emulador] ArrrQ ~ Developed in C#, Forms, SocketAsync
« Respuesta #8 en: Octubre 30, 2016, 08:45:42 pm »
Proyecto subido al repositorio: No tienes permiso para ver enlaces. Registrarme ó Logearme

En este momento se encuentra en estado base, a cualquiera que quiera emprender con algún proyecto les servirá de ayuda.

Hoy le dedicaré algún tiempo y empezaré con la consola de amigos y navegador.

*

Desconectado Psherk

Re:[Emulador] ArrrQ ~ Developed in C#, Forms, SocketAsync
« Respuesta #9 en: Noviembre 03, 2016, 11:11:54 pm »
Hasta el momento he avanzado en las siguientes cosas:

Navegador:
Amig@s (carga, consola, enviar y recibir mensajes):
Perfiles:

En unos días estaré mostrando más avances, tanto como montando el progreso en el repositorio.

*

Desconectado DoneteRVL

Re:[Emulador] ArrrQ ~ Developed in C#, Forms, SocketAsync
« Respuesta #10 en: Noviembre 03, 2016, 11:17:51 pm »
Me alegra que sigas con el proyecto, espero que te salga todo bien :)

- Saludos

*

Desconectado Fénix

Re:[Emulador] ArrrQ ~ Developed in C#, Forms, SocketAsync
« Respuesta #11 en: Noviembre 05, 2016, 12:19:09 am »
Amigo Las Imagenes no se ven...
« Última modificación: Noviembre 05, 2016, 01:15:58 am por xJosue- »



*

Desconectado Psherk

Re:[Emulador] ArrrQ ~ Developed in C#, Forms, SocketAsync
« Respuesta #12 en: Noviembre 13, 2016, 08:11:36 pm »
Hola a todos, desde la última vez he adelantado poco al desarrollo del emulador, pero no piensen que no le pongo empeño ya que no es así, todo lo contrarío ya que el tiempo disponible lo estoy utilizando para hacer más fácil las cosas.

En estos momentos he hecho dos pequeños proyectos de consola el cual uno busca la estructura del packet, y el otro el cual compara parámetros con los dos script uno antiguo y el nuevo para así actualizar la id, este anterior apenas estoy por empezar el desarrollo.

Esto me ahorrara mucho trabajo para así adelantar el emulador más rápido.

Acá una imagen:

*

Desconectado Psherk

Re:[Emulador] ArrrQ ~ Developed in C#, Forms, SocketAsync
« Respuesta #13 en: Febrero 07, 2017, 07:31:37 pm »

Actualización 07/02/2017
  • Se añadieron herramientas al form principal (Enviar alertas, créditos, puntos, dar rango, configuración y actualizaciones automáticas
  • Sistema de sockets mejorado (SocketAsync)
  • Actualizado a la PRODUCTION-201701242205-837386173 (actual en .com)
  • Perfiles
  • Amigos (consola)
  • Ciudadania Habbo (camino de talentos)

Imágenes:






Vídeo (quedo algo mal el gift pero se ve): No tienes permiso para ver enlaces. Registrarme ó Logearme

Quiero dejarles claro que tuve un pequeño percance, ya que lo que llevaba lo perdí a causa de un problema en mi disco duro y toco cambiarlo; contacte con el hotel brasilero el cual lo di para testear y este nunca me contesto, me bloqueo de skype. Descargué lo que deje en el repositorio y empece el día de ayer con esto.
« Última modificación: Febrero 07, 2017, 07:49:13 pm por Psherk »

*

Desconectado antoniocrevi

Re:[Emulador] ArrrQ ~ Developed in C#, Forms, SocketAsync
« Respuesta #14 en: Febrero 07, 2017, 10:32:03 pm »
Simplemente, increible, eres un máquina, desde luego xD  <3_<3 <3_<3 <3_<3


 

Temas relacionados

  Asunto / Iniciado por Respuestas Último mensaje
1 Respuestas
484 Vistas
Último mensaje Julio 25, 2016, 01:08:43 am
por .Ruz
Venta de Emulador

Iniciado por Crixus « 1 2 » Desarrollo

27 Respuestas
1687 Vistas
Último mensaje Septiembre 30, 2016, 11:12:24 pm
por huenter
7 Respuestas
1514 Vistas
Último mensaje Octubre 02, 2016, 12:22:53 am
por FaynnWay
12 Respuestas
1633 Vistas
Último mensaje Enero 04, 2017, 11:55:53 pm
por Skylake
31 Respuestas
2971 Vistas
Último mensaje Marzo 08, 2017, 12:31:43 pm
por Fénix