System Menus Configuration
You can add custom system menus to the system tray, allowing users to access MOD functionality.
Overview
System menus allow users to:
- Access MOD functionality from the system tray icon
- Use keyboard shortcuts for quick actions
- Open global interfaces not tied to specific characters
- Trigger background scripts and maintenance tasks
Basic System Menu Configuration
Add system menu items to the systemMenus array in your mod.json:
{
"systemMenus": [
{
"text": "Open Dashboard",
"shortcut": {
"key": "KeyD",
"modifiers": "ALT"
},
"script": "my-mod/scripts/dashboard.js",
"webview": {
"source": "my-mod/dashboard.html",
"position": [
0,
0
],
"resolution": [
800,
600
],
"showToolbar": true,
"shadow": true,
"sounds": {
"open": "my-mod/sounds/dashboard-open.mp3",
"close": "my-mod/sounds/dashboard-close.mp3"
}
}
]
}
System Menu Properties
text (Required)
The display text that appears in the system tray menu.
shortcut (Optional)
Keyboard shortcut for quick access to the menu item.
Available Keys
Letter Keys:
KeyA,KeyB,KeyC, ...,KeyZ
Number Keys:
Digit0,Digit1,Digit2, ...,Digit9
Function Keys:
F1,F2,F3, ...,F12
Special Keys:
Space,Enter,Escape,Tab,BackspaceArrowUp,ArrowDown,ArrowLeft,ArrowRight
Available Modifiers
Cross-Platform:
CMD_OR_CTRL: Command key on macOS, Ctrl on Windows/LinuxSHIFT: Shift keyALT: Alt key (Option on macOS)
Platform-Specific:
SUPER: Windows key on Windows, Command on macOSCTRL: Control key (useCMD_OR_CTRLfor cross-platform compatibility)
script (Optional)
A script file to execute when the menu item is clicked. This script runs in the Deno runtime.
webview (Optional)
A webview interface to open when the menu item is clicked. The basic settings are the same as those described in menus.
Next Steps
- Startup Scripts - Learn about automatic script execution
- Webview UI Development - Build sophisticated interfaces
- TypeScript SDK - Access advanced programming capabilities