Cleone — Desarrollador de sistemas de roleplay

¿Prefieres navegar sin escribir comandos? Ve directo a los proyectos
cleone@vps:~

// sobre-mi.txt

Sobre mí

Soy Luis, desarrollador enfocado en sistemas para servidores de roleplay (SA-MP / open.mp). Mi trabajo actual es tomar un servidor grande y legado —con más de 24,000 líneas de lógica amontonadas en un solo archivo— y reorganizarlo pieza por pieza en módulos claros, sin romper nada de lo que ya funciona para los jugadores. Además de arquitectura, desarrollo features nuevas de principio a fin, con un enfoque fuerte en no introducir bugs y en documentar todo lo que aprendo en el camino.

// ls proyectos/

Proyectos

  • clean-architecture-migration

    Un servidor de roleplay con años de código encima tenía casi toda su lógica en un solo archivo de más de 24,000 líneas, donde cambiar un comando podía romper otros cinco sin previo aviso. Reorganicé tres sistemas completos —bombas, garajes/teletransportes y trabajos del jugador— separando cada uno en piezas independientes con una regla estricta: si no podía probar que un cambio de comportamiento era intencional en el código original, no lo tocaba. Esa regla pagó dividendos: encontré un comando que ningún jugador podía ejecutar por un error de anidación invisible al compilador, y un bug de runtime en producción causado por confundir un identificador de objeto del juego con un índice de lista — el tipo de error que pasa la revisión de código y solo aparece bajo uso real.

    • [Pawn]
    • [SA-MP]
    • [open.mp]
    • [MySQL]
    • [Arquitectura de software]
    En progreso
  • registro-email-obligatorio

    El servidor necesitaba forzar email en el registro sin romper cuentas ya existentes, así que diseñé el flujo para tres casos distintos en vez de uno genérico: cuenta nueva, cuenta legacy migrando, y cambio normal desde configuración — cada uno con reglas propias sobre qué reutilizar del código existente y qué no, porque asumir que "registro" y "editar perfil" se comportaban igual habría introducido bugs sutiles. Construí también una herramienta de auditoría de colisión de IDs después de que mi propia primera revisión manual diera un falso positivo — un rango que reporté como "libre" en realidad pertenecía a un sistema ya migrado. Esa herramienta ahora es parte del flujo de trabajo para features futuras, no solo de esta.

    • [Pawn]
    • [SA-MP]
    • [Diseño de features]
    • [Bash]
    Completado
  • vehiculos-customizacion-cef

    Sistema de personalización visual de vehículos en tiempo real, con interfaz dentro del juego y persistencia en un servidor externo. El reto no fue mostrar el color — fue mantener sincronizados tres estados a la vez (vista previa local, lo que el jugador seleccionaba, y lo guardado en el servidor) cuando el juego usaba modo RGB directo y paleta indexada en distintos puntos del flujo, lo que causaba que la vista previa mintiera sobre lo que realmente se iba a guardar.

    • [Lua]
    • [CEF]
    • [API HTTP]
    Completado

// stack.json

Stack tecnológico

Lenguajes

  • Pawn
  • Lua
  • Bash

Bases de datos

  • MySQL / MariaDB

Herramientas

  • Git
  • Linux (CachyOS)
  • Nginx

Otros

  • CEF (interfaces embebidas en juego)
  • APIs HTTP

// contacto.sh

Contacto

¿Tienes un proyecto de roleplay o una idea que necesitas desarrollar? Escríbeme.