.NET Me.SubClass is null... why?

eccentric

Active Member
I start my C#/.NET bot and pretty frequently see that ISXEQ2.Extension.Me.SubClass is null, so the bot then has to exit because it doesn't know which class routine to run. I have to run it maybe 10 times in a row before I get a good SubClass string and can continue. Am I doing something wrong here, is there a condition I'm supposed to wait for?
 

Valerian

ISX Specialist
not sure. I know ISXEQ2 nulls out a lot of the TLOs when zoning, and they'd be null before isxeq2 is fully patched and loaded. other than that, no real idea.
 

Amadeus

The Maestro
Staff member
Yes, be sure that you check that ISXEQ2.IsReady is TRUE before doing anything. Other than that, as he said, if you're zoning it will return NULL on just about everything as well. I forget which datatype has "IsZoning", but one of them does if I recall.

By the way, Cybertech told me that Stardog actually ported a lot of his vanguard shit to EQ2 (all .NET), so you might want to get a copy of that stuff to compare things.
 

eccentric

Active Member
I can't find an IsReady, nor can I find an IsZoning in the .NET implementation. The object browser search also turns up blanks.

As an added dilemma, checking Me.IsCamping once per main script loop seems to lag it out and murders the FPS.
 

Amadeus

The Maestro
Staff member
Ok -- I'll have to patch the wrapper when I get back home; however, I'll attach a version that has ISXEQ2.IsReady and EQ2.Zoning. I'll try to finish the rest of those datatypes (and maybe all datatypes) over the holidays.

I'm not sure why Me.IsCamping would be causing problems. The extension isn't really doing much to get that data. I can look more into it when I get back as well. However, any time you do anything, my suggestion is not to check things every loop unless it's part of the script itself (ie, a custom C# object) ....since you're looping many times per second, it will get really laggy very quickly.

Also, do me a favor and harass "StardogWork" on IRC and get the .NET stuff he has for ISXEQ2 already done. He worked a long time on .NET with VG so has worked through a lot of the bullshit that comes along with InnerSpace+.NET stuff.
 

Amadeus

The Maestro
Staff member
Well, guess what, the wrapper source was updated in the past couple months and I didn't even know about it! So, here is an updated wrapper that should have quite a bit more shit in it than the one that is currently on the ISEQ2 patcher (including the things I mentioned in my previous posting and uielement related things.)

I will update it on the main patcher when I get home.
 

Attachments

eccentric

Active Member
I used this latest wrapper tonight and found a weird quirk. I find that my bot is permanently <10 FPS when I start it standing near several NPC's, and ~60FPS when I start it standing in an empty part of the map. Even though in both cases I don't enumerate any targets or actors at all yet and I commented out all calls to my logic.
 

Valerian

ISX Specialist
That probably has something to do with the actor events, I'm not much of a .net person, just know enough to get myself in trouble, and I simply copy/paste/edited the existing events and added the new actor events in. Those might need to be removed, or have some kind of toggle added to them. Might be up to amadeus or someone else more familiar with .net wrapper coding though
 

eccentric

Active Member
I've gotten more experience with the issue and now I find it doesn't really seem to matter who is or isn't nearby; out of every maybe 6 times I start the bot, one will give me almost unblemished frame rate and the other five will give me frame lag central. So I start and stop, start and stop, start and stop my bot till I get the high frame rate version.

If I start with low frame rate and run to an empty zone, the frame rate remains relatively low. If I start with high frame rate and run into the middle of a crowd, the frame rate remains relatively high. Like I said, the frame rate when it starts is the frame rate it remains until I stop the bot. The bot runs fine in both cases, though the lack of frames causes slower processing in the bot.

I'm trying to dig deeper into the issue but I'm running into dead ends. Either a slow component is failing to initialize 1/6 of the time or a fast component IS initializing 1/6 of the time. Who knows.
 

wired203

Active Member
Aye Pygar is right odd thing was XP would work like a charm, Vista it would bugger. Start it a few different times to get it to go good and let it run and you were good.

That is the link to the conversation from lax about the issue and his findings.

And that was the death to the .net harvest bot and I think blazers last real code outing for eq2.
 
Top Bottom