How to write my own plugin in Glider to support break points debugging?

Hi, I see that there are some plugins in LuaGlider  such as Corona, Moai, Gideros.   I want to create mobile games base on my  framework named “quick-cocos2dx” (support lua-socket) ,  and I want to make a new plugin to support break points debugging in that framework.

But I cann’t find any document about how to do this,  anybody knows? I really appreciate any help you can provide. :smiley:

Hello Idx,

Sorry for the delay in getting to you. Here is the lua glider plugin documentation:

www.mydevelopersgames.com/LuaGlider.pdf

In it you will find how to create plugins. Basically a plugin is a lua file with special global functions inside that hook into editor actions (like debug, run, etc.) You should also create a “stub” folder to add entries to the auto-complete system for your new plugin. 

To see examples on how plugins look like simply go to help-> user directory -> System plugins and you will see a list of plugins we made.

Regards,

M.Y. Developers

Thanks for the reply and the LuaGluder.pdf. 

I looked into the folder of  SystemPlugin/Corona and SystemPlugin/Moai,  there is a  “debuggerPlugin.lua”, how  and when this file be executed?  And I also find  “CiderDebugger.lua” and “moai-remote.lua” in the  folder of luagliderv19/,  I think they might be the key entrance for breakpoints debugging, but I cant understand how it works and how can I implement a similar debugger in my framework.

Thanks again.

Hello Idx,

Just want to make sure that you also sent us an email about this issue? If so we sent you a reply.

there is a  “debuggerPlugin.lua”, how  and when this file be executed?

In general this is not required. The debugger works better if there is some sort of periodic scheduling system available (like timer.performWithDelay in corona.) However. this is not strictly necessary and the debugger will work fine without it.

When you are having difficulty incorporating a new SDK system most likely the project folder is not self contained. If you move the folder containing main.lua to another location will the project still run? This is what Glider does when it builds your project so that it can safely apply project management steps (ie merging external libs) safely. If not then you will need to activate “forceInPlaceBuild”. Please see the marmalade plugin line 53 for more information.

Regards,

M.Y. Developers

Hello Idx,

Sorry for the delay in getting to you. Here is the lua glider plugin documentation:

www.mydevelopersgames.com/LuaGlider.pdf

In it you will find how to create plugins. Basically a plugin is a lua file with special global functions inside that hook into editor actions (like debug, run, etc.) You should also create a “stub” folder to add entries to the auto-complete system for your new plugin. 

To see examples on how plugins look like simply go to help-> user directory -> System plugins and you will see a list of plugins we made.

Regards,

M.Y. Developers

Thanks for the reply and the LuaGluder.pdf. 

I looked into the folder of  SystemPlugin/Corona and SystemPlugin/Moai,  there is a  “debuggerPlugin.lua”, how  and when this file be executed?  And I also find  “CiderDebugger.lua” and “moai-remote.lua” in the  folder of luagliderv19/,  I think they might be the key entrance for breakpoints debugging, but I cant understand how it works and how can I implement a similar debugger in my framework.

Thanks again.

Hello Idx,

Just want to make sure that you also sent us an email about this issue? If so we sent you a reply.

there is a  “debuggerPlugin.lua”, how  and when this file be executed?

In general this is not required. The debugger works better if there is some sort of periodic scheduling system available (like timer.performWithDelay in corona.) However. this is not strictly necessary and the debugger will work fine without it.

When you are having difficulty incorporating a new SDK system most likely the project folder is not self contained. If you move the folder containing main.lua to another location will the project still run? This is what Glider does when it builds your project so that it can safely apply project management steps (ie merging external libs) safely. If not then you will need to activate “forceInPlaceBuild”. Please see the marmalade plugin line 53 for more information.

Regards,

M.Y. Developers