What is Decoda?

Decoda is an integrated development environment (IDE) and debugger for Lua. It can be used to debug embedded Lua scripts without requiring any modifications to the application they’re used within. We created Decoda because we needed a good tool that would help us quickly develop bug-free Lua code for our own projects.

I’ve made modifications to the original Lua source, will Decoda still work?

This depends on the nature of the modifications, but in general the answer is yes. If your modified version of Lua retains all of the original API functions (the function prototypes and general semantics) it should work fine.

Can I use Decoda to debug the mod I’ve developed for XYZ game?

Decoda is designed to debug applications without requiring any modifications. It does however require some way of locating the Lua API functions within the application’s executable. If the application dynamically links with Lua (i.e. has a lua.dll file) then Decoda can use that to locate the Lua functions.

If the application does not dynamically link with Lua, then you will need the symbolic information files (PDBs) for the application inorder to debug it with Decoda.

Does Decoda integate with source control?

Yes, Decoda includes support for Microsoft SCC plugins. SCC plugins are available for most popular source control systems including Microsoft Visual SourceSafe, Perforce, CVS and Subversion and can be obtained from the vendor or other third parties.

Decoda will automatically scan the Window’s registry for SCC plugins, so no special steps are required beyond following the vendor’s instructions for installing the plugin on your system.

Source control functions are accessed through the SCC menu or by right clicking on items in the Project Explorer window.

Is there a version of Decoda for Linux or Macintosh?

At the moment Decoda only supports Windows. Most the GUI is written in a platform independent way, but the backend is very Windows specific. Because Decoda is open source, we’re anxious to see ports to other platforms.

I’m getting warning XYZ when debugging my application and Decoda isn’t working!

All of the warnings are documented in the help file, along with possible solutions. To check the help, just put your cursor on the warning in the output window and press F1.

Does Decoda support debugging with LÖVE?

It does if you follow the instructions here!