Skip to content

Repository files navigation

MuDevs Lic Emulator

Build Latest release

Servidor de licencias local con interfaz gráfica para MuDevs 21.1.2. El programa escucha únicamente en 127.0.0.1:1235, inicia el servicio de forma automática y muestra en pantalla cada autorización y revalidación.

Características

  • Aplicación portable para Windows x64 y .NET Framework 4.8.
  • Autenticación inicial de 96 bytes.
  • Revalidaciones compactas de 16 bytes.
  • Conexiones persistentes con TCP keepalive.
  • Lectura segura de frames TCP fragmentados o consecutivos.
  • Soporte observado para los comandos 0x16, 0x0BCA y 0x7E2.
  • Compatibilidad con ConnectServer, DataServer, JoinServer, GameServer y los editores que utilizan el mismo protocolo.
  • Status y MaxUsers configurables desde el botón C.
  • Product, Code, CustomerName y HWID se conservan desde el request.
  • Registro visual de sesiones, respuestas y errores.

Descargar

La forma más sencilla es descargar el paquete de la sección Releases. No es necesario instalar DLL adicionales.

El archivo SHA256SUMS.txt de cada release permite comprobar la integridad de la descarga.

Uso rápido

  1. Instala o habilita Microsoft .NET Framework 4.8.

  2. Agrega estas entradas al archivo hosts de Windows:

    127.0.0.1 l1.mudevs.com
    127.0.0.1 l2.mudevs.com
    127.0.0.1 l3.mudevs.com
    
  3. Ejecuta MuDevsLicEmulator.exe.

  4. Confirma que la ventana muestre SERVER: ONLINE // 127.0.0.1:1235.

  5. Inicia los componentes de MuDevs que quieras utilizar.

El botón STOP SERVER libera el puerto sin cerrar la aplicación. El botón C permite cambiar el estado de respuesta y la cantidad máxima de usuarios.

Compatibilidad conocida

Product Componente Estado
1 ConnectServer Verificado
2 DataServer Verificado
3 JoinServer Verificado
4 GameServer Verificado
5 Client Editor Verificado con comando 0x7E2
6 Server/Mu Editor Compatible con el protocolo compartido

EXDataServer y ChatServer no enviaron requests de licencia durante las pruebas aisladas realizadas, por lo que normalmente no necesitan una regla especial.

Qué descubrimos del protocolo

Los clientes envían frames C2 con el tamaño codificado en big-endian. El comando, Product y demás valores numéricos del payload se codifican en little-endian.

Secuencia Uso Respuesta
0x00 Autorización inicial 96 bytes
0x01+ Revalidación de una sesión activa 16 bytes

La secuencia, y no el comando, determina el tipo de respuesta. Después de la primera autorización la conexión queda abierta para futuras comprobaciones.

La respuesta inicial conserva el comando, Product, Code, CustomerName y HWID. También incluye el estado de autorización y MaxUsers. La respuesta compacta contiene la secuencia, el estado y MaxUsers.

Compilar

Requisitos:

  • Windows 10/11 x64.
  • .NET Framework 4.8.
  • PowerShell 5 o posterior para crear el paquete ZIP y los checksums.

Desde una consola de Windows:

build.cmd

Los resultados se generan en dist\:

  • MuDevsLicEmulator.exe
  • MuDevsLicEmulator-vX.Y.Z-win-x64.zip
  • SHA256SUMS.txt

También puedes abrir MuDevsLicEmulator.csproj en Visual Studio y compilar la configuración Release|x64. GitHub Actions ejecuta el mismo build.cmd en cada push, pull request y tag v*.

Agradecimientos

Investigación, implementación e interfaz por rivotril_.

Un agradecimiento especial a evtnlife/mudevs-license-server. Su servicio y proxy publicados ayudaron a contrastar el comportamiento de las sesiones persistentes y las respuestas de 96/16 bytes. Este proyecto mantiene una implementación propia orientada a escritorio, con framing exacto, configuración dinámica y compatibilidad adicional con Client Editor 0x7E2.

La música integrada es Game 8-Bit On, de moodmode, Content ID 278083, utilizada bajo la Pixabay Content License.

Aviso

Este proyecto no es oficial ni está afiliado con MuDevs. Úsalo únicamente en sistemas y archivos sobre los que tengas autorización.

About

Local GUI license protocol emulator for MuDevs 21.1.2 on Windows x64.

Topics

Resources

Stars

6 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages