Post Reply Home » Forums » EverQuest 2 » EverQuest 2 Premium Discussions

EQ2Extreme with Exhume : EverQuest 2 Premium Discussions

Posted: August 12th, 2007
godfetish
Must be hidden somewhere, but MobType comes up the same for all PC's and Skill_1 is odd...it comes up 1 for some PC's and 0 for others, but it isn't dependant on anything I can determine. Could be anything, but would require a lot of testing. Is there any other hidden fields? Or, depending on the amount of data, can you create an additional field that unknown data is fed into?

Edit:

After further testing, I found that Mob.Aggro does indicate PvP, but it seems iffy somewhat. +9 seems to be same faction as my Qeynos PC's and +2 seems to be FP...

Either way, this edit to DumpMobs from the example script shows the names of aggro PC's around you. Might not be as effective as a onscreen map showing everything, but on multiple monitors instead of outputting names, you target levels or sound an audible alarm...

Code: Select all

Sub DumpMobs
    dim Mobs
    dim count
    count = 0
    memo.SetCaption ""
    set Mobs = EQ.GetMobs(&H6000)    'TYPE_MOB
    
    for each Mob in Mobs
        if Mob.Aggro <= 4 then
            MemoWrite Mob.Name
            count = count + 1
        end if
    next
end sub
Posted: August 15th, 2007
gheezer
Update posted for the 08/14/2007 patch.

EDIT:
Update posted for the 08/16/2007 patch.

Some new functions were added:

Code: Select all

EQ2Mob properties 

Public Property Get IsAttacking() As Boolean 
Public Property Get IsCorpse() As Boolean 
Public Property Get IsGrouped() As Boolean 


EQ.PlayerStats properties 

Public Property Get Health() As Long 
Public Property Get Health_Max() As Long 
Public Property Get Power() As Long 
Public Property Get Power_Max() As Long 
Public Property Get Attack() As Integer 
Public Property Get Attack_Base() As Integer 
Public Property Get Mitigation() As Integer 
Public Property Get Mitigation_Percent() As Single '00.0% 
Public Property Get Strength() As Integer 
Public Property Get Stamina() As Integer 
Public Property Get Agility() As Integer 
Public Property Get Wisdom() As Integer 
Public Property Get Intelligence() As Integer 
Public Property Get Strength_Base() As Integer 
Public Property Get Stamina_Base() As Integer 
Public Property Get Agility_Base() As Integer 
Public Property Get Wisdom_Base() As Integer 
Public Property Get Intelligence_Base() As Integer 
Public Property Get Heat() As Integer 
Public Property Get Cold() As Integer 
Public Property Get Magic() As Integer 
Public Property Get Mental() As Integer 
Public Property Get Divine() As Integer 
Public Property Get Disease() As Integer 
Public Property Get Adventure_Exp() As Single '00.0% 
Public Property Get Tradeskill_Exp() As Single '00.0% 
Public Property Get Adventure_Vitality() As Single '00.0% 
Public Property Get Achievement_Points_Left() As Integer 
Public Property Get Achievement_Exp() As Single '00% 
Public Property Get Achievement_Items() As Long 
Public Property Get Achievement_Kills() As Long 
Public Property Get Achievement_Quests() As Long 
Public Property Get Achievement_Explorations() As Long 
Public Property Get Achievement_Collections() As Long 
Posted: August 16th, 2007
gheezer
Heh, edit doesn't change the date... so... *BUMP*
Posted: August 20th, 2007
rbatemanmi
Gheezer,

I'm curious, what TabCtl32.ocx did you register the test client against? I've been searching all of my systems for a matching control - but none of mine appear to have a matching tabctl...

Thanks!

G
Posted: August 21st, 2007
gheezer
I think it is the one that comes with Visual Studio 6.0 Service Pack 6
Posted: August 24th, 2007
gheezer
Update posted to http://gforge.xunleashed.com/gf/project/eq2extreme/frs/

For quickest response please use GForge for all updates, bugs, requests, etc...

Send me a PM if you have trouble accessing any of the EQ2Extreme gforge pages.
Posted: September 11th, 2007
lordbeowulf
First time trying a script ... whew ... hats off to you guys who know what you are doing!!!

I have a little buffbot script working using EQ2Extreme (works on VISTA ... yay) ...

As it is, I have to run EQ2Extreme, then, with Exhume <Open> to load my project in order for it to run.

1) Can I (or better posed, How do I) 'include' the EQ2Extreme.exe in my script? Would I have to compile my script to .exe?

2) Is the 'EQ2' Class actually 'EQ' ? (I only use the EQ.Player request currently, but noticed it was not EQ2.Player ... or does this question not make sense?)

3) Once I do the following:

Code: Select all

set oPlayer = EQ.Player
set oMaster = oPlayer.Target
... my expectation was that anytime I did a check using IsAttacking(), for example ...

Code: Select all

If oMaster.IsAttacking then 
the flag would be an updated variable (since my understanding is that I'm looking at the memory location for the flag?)??

However, I find that I can only get the updated variable if I 're' set the variables again?

4) Any chance to get a GetMobByName() as MobObj?

Thanks Gheezer ... keep up the hard work ... good stuff!
Posted: September 11th, 2007
gheezer
1) The compile to .exe function in Exhume doesn't include an instance of EQ2 so no, it won't work. If you want to make an .exe then you can use a COM capable compiler like VB6, C#, VB.NET, etc...

2) EQ2 is the class name and EQ is an instance of EQ2, so you have to use the EQ object in your scripts. You can use the EQ2 class to get type information but not instance data.

3) EQ.Player and EQ.Target return a copy of the object and not a reference to the object in memory. So instead of creating a new variable just use EQ.Player or EQ.Target to make sure you have updated information.

Code: Select all

If EQ.Target.IsAttacking Then
4) I will see if I can add that function, but for now you could use the following: (This is off the top of my head so may need work)

Code: Select all

Public Function GetMobByName(sName)
    Dim oMob

    Set GetMobByName = Nothing

    For Each oMob In EQ.GetMobs(EQ2.TYPE_ALL)
        If oMob.Name = sName Then
            Set GetMobByName = oMob
            Exit For
        End If
    Next
End Function
Posted: September 11th, 2007
User avatar
Premium
Total Posts:6718 Joined:2004
That said, the next version of XUM is supposed to support the compile to exe with xum loaders (like eq2extreme and my lotroExtreme, etc).
No they havnt given a eta on the next version, but I did receive some betas so I'm going to guess its getting close.

_________________
Use Search first, ask questions later!
Posted: September 11th, 2007
lordbeowulf
Gheezer wrote:1) The compile to .exe function in Exhume doesn't include an instance of EQ2 so no, it won't work. If you want to make an .exe then you can use a COM capable compiler like VB6, C#, VB.NET, etc...

I feel like I should be doing something different than

1. starting eq2extreme.exe
2. then in the exhume workspace simply opening my project (replacing eq2extreme.vbs project)
3. running my new project

... all in order to ...erm ... run my project. it works though, so not complaining!

Basically I'm hoping to do the equivalent of this ... with Exhume/EQ2Extreme ...

Code: Select all

set EQ2_SvcObj = XUScriptPlugin.GetService("EQ2Service.Service")
if Err.number = 0 then
    XUScriptPlugin.staStatus.Text = "EQ2Service failed to load"
end if
Any suggestions?

By the way, when I exit Exhume after doing this ... Vista pops up an alert box saying "EQ2Extreme has stopped working ..."

Thanks!
Posted: September 12th, 2007
User avatar
Premium
Total Posts:6718 Joined:2004
Well, in XUM you dont need to get the service, because itsl already loaded.

Just instead of EQ2_SvcObj , its just EQ2.

ie eq2.SomeFunction

See his list of API commands that he currently has available.

_________________
Use Search first, ask questions later!
Posted: September 12th, 2007
lordbeowulf
wyvernx wrote:Well, in XUM you dont need to get the service, because itsl already loaded.

Just instead of EQ2_SvcObj , its just EQ2.

ie eq2.SomeFunction

See his list of API commands that he currently has available.
Right right ... I'm not really trying to load your eq2service ... i was just trying to give a conceptual example of 'importing' eq2extreme into myproject.vbs (without having to run eq2extreme first) ... but that was stupid since I was using a bad example to illustrate my concept .... not to mention have no real clue of any of this! *ahem*

Anyway, I'm using the commands ... it is how I have to 'run' the script that doesn't feel right ...

1. Run eq2extreme.exe ...
2. load myproject.vbs (which unloads the eq2extreme.vbs)
3. run myproject.vbs script

Again ... not complaining ... and maybe that is how it should be ... but it just ... feels like I'm doing something wrong ... or there is a smarter way to do that. For example, should I have the myproject.vbs call and run eq2extreme.exe so that the commands are 'loaded' and then continue on with my script.
Posted: September 12th, 2007
User avatar
Premium
Total Posts:6718 Joined:2004
OH, I see. Yes, you can load eq2extreme via a COM create call just like the eq2 service without havintg to load eq2extreme, but you will not have access to any exhume functions if you do.

So yes its a little ackward and I'm hoping that it will be fixed so that you can default a specific script or get the compile to exe working very shortly.

_________________
Use Search first, ask questions later!
Posted: September 13th, 2007
gheezer
New version posted on GForge for GU38
Posted: September 13th, 2007
lordbeowulf
Gheezer wrote:New version posted on GForge for GU38
Ahhh ... thanks Gheez ... nice turnaround!
Want Advertisements After The Last Post Removed? Create A Free Account!
blue large dotWho is online
Users browsing this forum: No registered users and 34 guests
Post Reply