/rbxlx-env

Roblox development with a reasonable editor.

Primary LanguageEmacs Lisp

Build Status

Extract and reintegrate Lua code from Roblox Place (.rbxlx) files. Rojo does something similar, with considerably more fanfare.

Install

Clone this repo then:

curl -fsSL https://raw.githubusercontent.com/cask/cask/master/go | python

Basic Usage

cd rbxlx-env
cp [your .rbxlx file] .
make unfurl

This extracts all scripts into ./src. You may now apply all your normal tools, e.g., git, emacs, luacheck, etc. To reconstitute the .rbxlx file from (the presumably modified) ./src

make furl

Typical Linux Workflow

Identify the parent directory of your .rbxlx file in $HOME/.wine. A typical Wine installation might have it in $HOME/.wine/drive_c/users/$(whoami). Assuming this

cd rbxlx-env
ln -s $HOME/.wine/drive_c/users/$(whoami) ./drive_c
ln -s `realpath ./[your rbxlx file]` drive_c
make

Continue using Roblox Studio for all non-editing tasks, i.e., creating and manipulating game objects in Explorer. Suppose you create a new LocalScript named "Sword" in ReplicatedStorage, and now want to edit it with a reasonable editor. Save in Studio and run

make unfurl

The new LocalScript will now appear in ./src under ReplicatedStorage/Sword. I recommend Projectile to sanely navigate the source.