Skip to content

Repository files navigation

🚀 Roblox Binary Place Explorer & Script Injector (.NET 8 C#)

C#PlatformFormatLicense

Librería y herramienta de alto rendimiento en C# (.NET 8) para leer, explorar, editar, inyectar scripts Luau, exportar y guardar archivos binarios de Roblox Studio (.rbxl / .rbxmx) con Preservación Quirúrgica del 100% de Chunks (mallas 3D, terrenos, físicas, uniones e iluminación intactos).


🌟 Características Principales

  • Preservación Quirúrgica de Chunks: Mantiene el 100% de los objetos 3D (Part, MeshPart, Terrain, Weld, Lighting), editando e inyectando scripts sin corromper el mapa.
  • 📦 Inyección y Creación Dinámica de Scripts: Inserta Script, LocalScript y ModuleScript en cualquier carpeta o servicio (ReplicatedStorage, ServerScriptService, Workspace, StarterGui, etc.).
  • 🛡️ Sistema de Backups Rotativo FIFO (Máximo 5): Crea copias de seguridad automáticas en %LocalAppData%\RobloxScriptExplorer\Backups\ antes de modificar cualquier archivo.
  • 🧊 Exportación a Modelos Roblox (.rbxmx) y Luau (.luau): Exporta scripts, interfaces y modelos directamente a archivos Luau limpios y modelos arrastrables en Roblox Studio.
  • 🚀 Bajo Consumo de Memoria RAM (40 MB): Optimizado con purga automática del Working Set (MemoryOptimizer.TrimMemory).
  • 💻 Arquitectura Desacoplada: El núcleo lógico (Logica/) es 100% independiente de la interfaz gráfica y puede ser importado en herramientas de consola, scripts de automatización o bots.

📁 Estructura del Código (Logica/)

MóduloDescripción
RbxlPlaceManager.csFachada principal de alto nivel (LoadAsync, SaveAsync, CreateScript, DeleteInstance, ExportCompleteProject).
RobloxBinaryFormat.csCapa binaria de bajo nivel (Descompresión LZ4, decodificación/codificación zigzag de deltas, validación de encabezado mágico de 14 bytes <roblox!\x89\xff\r\n\x1a\n).
PropChunkHelper.csSerialización y escalado exacto de propiedades binarias (Source, Name, Capabilities, UniqueId, Enums).
BackupService.csMotor de copias de seguridad automáticas con límite rotativo de 5 versiones por mapa.
MemoryOptimizer.csMódulo de optimización y purga de memoria RAM en tiempo real vía APIs de Windows (EmptyWorkingSet).
RobloxInstance.csModelo de datos y diagnóstico para instancias de Roblox.
RobloxClassInfo.csMetadatos y definición de clases del motor de Roblox Studio.

💻 Ejemplos de Uso en C# (Para Desarrolladores e IAs)

Ejemplo 1: Cargar un mapa e Inyectar 2 Scripts en 2 Carpetas Diferentes

usingSystem;usingSystem.Linq;usingSystem.Threading.Tasks;usingRobloxScriptExplorer.Logica;classProgram{staticasyncTaskMain(){// 1. Inicializar el motor y cargar el archivo .rbxlvarmanager=newRbxlPlaceManager();awaitmanager.LoadAsync(@"C:\RobloxPlaces\MiJuego.rbxl",(status,progress)=>{Console.WriteLine($"[{progress*100:F0}%] {status}");});// 2. Inyectar Script en ReplicatedStoragevarrepStorage=manager.Instances.Values.FirstOrDefault(i =>i.Name=="ReplicatedStorage"&&i.IsService);if(repStorage!=null){varmoduleScript=manager.CreateScript("SharedConfig","ModuleScript",repStorage.Id);moduleScript.Properties["Source"]="local Config = { Version = '1.0.0' }\nreturn Config\n";Console.WriteLine($"✅ Módulo inyectado en ReplicatedStorage (ID: {moduleScript.Id})");}// 3. Inyectar Script en ServerScriptServicevarserverScripts=manager.Instances.Values.FirstOrDefault(i =>i.Name=="ServerScriptService"&&i.IsService);if(serverScripts!=null){varserverScript=manager.CreateScript("AntiCheatService","Script",serverScripts.Id);serverScript.Properties["Source"]="print('🛡️ Servicio de Seguridad Iniciado')\n";Console.WriteLine($"✅ Script de Servidor inyectado en ServerScriptService (ID: {serverScript.Id})");}// 4. Guardar y Reemplazar con Auto-VerificaciónstringbackupCreado=awaitmanager.SaveAsync(@"C:\RobloxPlaces\MiJuego.rbxl");Console.WriteLine($"🎉 Guardado con éxito. Backup seguro en: {backupCreado}");}}

Ejemplo 2: Modificar el Código de un Script Existente

varmanager=newRbxlPlaceManager();awaitmanager.LoadAsync(@"C:\RobloxPlaces\MiJuego.rbxl");// Buscar el script por su nombrevarscript=manager.Instances.Values.FirstOrDefault(i =>i.Name=="GameManager"&&i.IsScript);if(script!=null){script.Properties["Source"]="-- Código Luau actualizado automáticamente\nprint('Actualizado!')\n";awaitmanager.SaveAsync();}

Ejemplo 3: Exportar todo el Proyecto a Código Fuente Luau (.luau)

varmanager=newRbxlPlaceManager();awaitmanager.LoadAsync(@"C:\RobloxPlaces\MiJuego.rbxl");// Genera una estructura completa de carpetas con archivos .luau, modelos .rbxmx y un manifest JSONstringcarpetaDestino=manager.ExportCompleteProject(@"C:\RobloxProyectos\Exportados");Console.WriteLine($"Proyecto exportado en: {carpetaDestino}");

🏷️ Temas y Palabras Clave para GitHub / Tags

roblox, rbxl, rbxm, roblox-studio, roblox-binary-format, luau, csharp, dotnet8, script-injection, roblox-parser, place-file-editor, roblox-tools


📥 Cómo Importar Archivos de Modelo e Interfaces (.rbxmx) en Roblox Studio

Los archivos exportados en formato .rbxmx son paquetes oficiales de Roblox que contienen modelos 3D, interfaces gráficas, sonidos y scripts Luau con su código integrado.

🟢 Método Recomendado: Clic Derecho -> "Insert from File..."

  1. Abre Roblox Studio con tu mapa cargado o una plantilla en blanco.
  2. En la ventana del Explorador (Explorer), localiza el servicio correspondiente (por ejemplo: StarterGui, Workspace o ReplicatedStorage).
  3. Haz clic derecho sobre el servicio de destino.
  4. Selecciona Insert from File... (Insertar desde archivo...).
  5. Elige el archivo .rbxmx exportado (ej: StarterGui.rbxmx).
  6. ¡Listo! Todo el contenido, scripts e interfaces aparecerán instantáneamente en su lugar correcto.

🟢 Método Rápido: Arrastrar y Soltar (Drag & Drop)

  • También puedes arrastrar el archivo .rbxmx con el ratón y soltarlo directamente sobre la ventana del visor 3D o el Explorador de Roblox Studio.

📄 Licencia

Este proyecto está bajo la Licencia MIT - eres libre de usarlo, modificarlo e integrarlo en tus propios proyectos personales o comerciales.

About

High-performance C# .NET 8 standalone tool to parse, explore, edit, inject Luau scripts, and export Roblox binary place (.rbxl) and model (.rbxmx) files with 100% chunk preservation.

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages