Problem
When a script fails during loading or runs slowly, it is difficult to identify the responsible file, handler, module, or line of code.
Proposal
Add administrative diagnostics for scripts and modules.
Possible commands:
/ignis scripts
/ignis modules
/ignis errors
/ignis profile
The diagnostics should expose:
- Loaded, failed, and disabled scripts.
- Module/package names and source paths.
- Lua stack traces with source lines where possible.
- Load and reload errors retained until cleared or replaced.
- Handler execution time and slow-handler warnings.
- Basic execution counts and cumulative time.
Initial scope
- Start with script/module status and useful stack traces.
- Add profiling behind an explicit command or configuration option.
- Avoid collecting expensive timing data permanently.
- Keep output readable in the server console and in-game for operators.
Open questions
- Should profiling be per script, module, event, or command?
- Should diagnostic history survive a reload?
- What threshold should trigger a slow-handler warning?
Problem
When a script fails during loading or runs slowly, it is difficult to identify the responsible file, handler, module, or line of code.
Proposal
Add administrative diagnostics for scripts and modules.
Possible commands:
The diagnostics should expose:
Initial scope
Open questions