Extensions unable to find save files if loaded from .iss

Moderator: MacroQuest Developers

iluvseq
Clueless Mudslinger
Posts: 269
Joined: Mon Apr 14, 2003 10:05 am

Extensions unable to find save files if loaded from .iss

Post by iluvseq » Thu Aug 10, 2006 1:49 pm

Since isxeq is best loaded once a character is already logged in, I use a small script, loadisxeq.iss to handle loading isxeq and the extensions I commonly use.

This script lives in the InnerSpace/Scripts directory and contains:

Code: Select all

function main()
{
  ext -require isxeq
  ext isxeqchatwnd
  ext isxeqcustombinds
  ext isxeqitemdisplay
  ext isxeqlabels
  ext isxeqmap
}
This works fine to load up the extensions.

However, extensions loaded in this manner can't seem to find their .xml configurations. They save configs in the InnerSpace/Scripts directory, but don't load the saved settings.

If I manually load the extensions using the console, they save/load their settings from .xml files located in the InnerSpace/ directory.

What am I doing wrong?

onetimehero
a ghoul
a ghoul
Posts: 105
Joined: Fri Sep 05, 2003 2:42 pm

Post by onetimehero » Thu Aug 10, 2006 3:44 pm

Try this:

Code: Select all


function main() 
{ 
  cd ${LavishScript.HomeDirectory}
  ext -require isxeq 
  ext isxeqchatwnd 
  ext isxeqcustombinds 
  ext isxeqitemdisplay 
  ext isxeqlabels 
  ext isxeqmap 
}

Hmm. That's odd.

Lax
We're not worthy!
We're not worthy!
Posts: 3524
Joined: Thu Oct 17, 2002 1:01 pm
Location: ISBoxer
Contact:

Post by Lax » Thu Aug 10, 2006 11:12 pm

Ahhh.. interesting observation. The extensions are loading their configs based on the LavishScript CWD, and when they are loaded from a script, that will be the script's CWD. Extensions should not be using the script CWD for their config ;)

Just a thought, but why not just add extension loads to your startup sequence for EQ instead of a script?
Lax Lacks
Master of MQ2 Disaster
Purveyor of premium, EULA-safe MMORPG Multiboxing Software
* Multiboxing with ISBoxer: Quick Start Video
* EQPlayNice, WinEQ 2.0

iluvseq
Clueless Mudslinger
Posts: 269
Joined: Mon Apr 14, 2003 10:05 am

Post by iluvseq » Thu Aug 10, 2006 11:59 pm

Onetimehero's suggestion worked!

To answer Lax's question: I used to have them load in the startup sequence, but that means they load long before character select. It was my impression based on some crashes I had and research done on these forums that it's better to load extensions once you've loaded a character and are in the world. Is this not accurate?

Lax
We're not worthy!
We're not worthy!
Posts: 3524
Joined: Thu Oct 17, 2002 1:01 pm
Location: ISBoxer
Contact:

Post by Lax » Fri Aug 11, 2006 12:22 am

The problem with specific extensions is that they may use character-specific settings, but not wait until a character is actually loaded. This problem exists because MQ2 didn't load plugins at other times, so plugin developers never had to worry about it, whereas IS extensions *can* be loaded before the game runs any of its own code.

The right thing to do would be to report the bug with the specific extensions that you find it in, and then that bug should be fixed. Simply loading an extension should *never* cause a crash. But sure, as a temporary solution, you can certainly wait until your character is logged in.
Lax Lacks
Master of MQ2 Disaster
Purveyor of premium, EULA-safe MMORPG Multiboxing Software
* Multiboxing with ISBoxer: Quick Start Video
* EQPlayNice, WinEQ 2.0