LavishScript ISX Extension
ISXEQ2 and OgreBotAPI support for LavishScript (requires base "LavishScript by user01" plugin)
Overview
This extension adds comprehensive ISXEQ2 and OgreBotAPI support to the LavishScript development environment. It extends the base LavishScript plugin with EverQuest 2 automation capabilities, providing intelligent autocomplete, documentation links, and advanced language features for ISX development.
Dependencies
⚠️ REQUIRED: This extension depends on the LavishScript by user01 base plugin.
- Base Plugin:
user01x.lavishscript-by-user01
- Install Order: Install the base LavishScript plugin first, then this ISX extension
- Architecture: This extension dynamically registers additional parsers with the base plugin
Features
🎯 ISXEQ2 API Support
- 21+ Top-Level Objects (TLOs): Me, Target, Actor, Zone, EQ2Mail, EQ2UIPage, etc.
- 60+ Data Types: character, actor, item, spell, zone, etc. with full inheritance
- Complete Member/Method Access: All ISXEQ2 API members and methods with parameter hints
- Wiki Integration: Hover documentation with direct links to ISXEQ2 wiki pages
🤖 OgreBotAPI Integration
- Complete Function Library: All OgreBotAPI functions, members, methods, and atoms
- Smart Autocomplete:
OgreBotAPI.
for members/functions, OgreBotAPI:
for methods
- Parameter Information: Detailed parameter hints with types and descriptions
- Real-time Updates: Definitions loaded from official OgreBotAPI source files
📋 Console Command Support
- Comprehensive Command Set: All OgreConsole commands with aliases
- Dual Prefixes:
oc !c -
and oc !ci -
(case-insensitive) autocomplete
- Parameter Mapping: Intelligent parameter extraction from command implementations
- Cascading Aliases: Support for multiple command aliases that map to same functionality
🔧 Advanced Language Features
- Intelligent Bracket Completion: Parameter hints for
[
syntax with automatic closing
- Context-Aware Suggestions: Different completions based on TLO vs method vs variable context
- Cross-File Symbol Resolution: Works across include files and project dependencies
- Error Detection: Validates ISXEQ2 usage patterns and API calls
Usage Examples
ISXEQ2 TLO Access
echo Player name: ${Me.Name}
echo Target health: ${Target.Health}
echo Zone name: ${Zone.Name}
call Actor[npc].Target
OgreBotAPI Functions
call OgreBotAPI.Initialize
if ${OgreBotAPI.IsRunning}
call OgreBotAPI:DoSomething
Console Commands
oc !c -campspot
oc !ci -AutoSell
oc !c -changecombatsettingswhen
Installation
Install Base Plugin First:
Install: LavishScript by user01 (user01x.lavishscript-by-user01)
Install ISX Extension:
Install: LavishScript ISX Extension (this extension)
Verify Installation:
- Open Command Palette (
Ctrl+Shift+P
)
- Run:
ISX: Test Extension Connection
- Check output panel for successful initialization
Commands
ISX: Test Extension Connection
- Verify extension is working and show parser status
ISX: Show Extension Status
- Display current extension status in output panel
Configuration
This extension uses the same configuration as the base LavishScript plugin. No additional settings required.
File Support
.iss
files: InnerSpace Script files with full ISXEQ2/OgreBotAPI support
.lib
files: InnerSpace Library files with complete API integration
Development
Extension Architecture
- Modular Design: Clean separation between base LavishScript and ISX-specific features
- Dynamic Registration: Parsers register with base plugin at runtime
- Parser System: Individual parsers for ISXEQ2, OgreBotAPI, and console commands
- API Integration: Uses official ISXEQ2 wiki data and OgreBotAPI definitions
Data Sources
- ISXEQ2 API: Comprehensive YAML configuration extracted from official wiki
- OgreBotAPI: Live definitions from OgreBotAPI source files
- Console Commands: Parser implementation from Object_Everquest2CommandParser
- Wiki Links: Direct integration with ISXEQ2 and OgreBotAPI documentation
Discord
Find me in the ISXGames Discord for support, questions, and community discussion:
Contributions & Tips
If this extension helps your EverQuest 2 automation development, consider supporting continued development:
Cryptocurrency Donations:
- Bitcoin (BTC):
1HUixTpx719Jeo5ruEeZkhHDcddKybYK2Y
- Ethereum (ETH):
0x01B54939a97F235cB050ce105214D6c098D37BcE
Acknowledgments
- LavishSoftware: For the LavishScript platform and comprehensive API documentation
- OgreBot Team: For the extensive OgreBotAPI framework and community support
- ISXEQ2 Community: For maintaining the wiki and providing automation tools
- ISXGames Community: For testing, feedback, and collaborative development
License
This extension is provided as-is for the LavishScript and EverQuest 2 automation communities under community development principles.
Version: 1.0.4
Requires: LavishScript by user01 v1.59.0+
Platform: VSCode 1.74.0+
Language: LavishScript (.iss, .lib files)