taultunleashed logoEQ2MegaBot’ v2.5 Released - Buff Bot AND HUNTER BOT! : EverQuest 2 Premium Discussions
newtopic  postreply
 [ 130 posts ]  1, 2, 3, 4, 5 ... 9  Next
blue large dot

EQ2MegaBot’ v2.5 Released - Buff Bot AND HUNTER BOT! : EverQuest 2 Premium Discussions

Posted: May 31st, 2005, 5:06 am
 
richyrich
richyrich's Reps:
User avatar
v2.5 05/30/05 is Finally RELEASED - Find in Download area of EQ2
http://www.xunleashed.com/dload.php?act ... ile_id=168

Lot of new stuff in v2.5 and a lot cleaner for solo Hunter bots.
Please read the details below.

1) New INI Variables Added

a) HealOthersSTR (Boolean)
i) Set to TRUE if you want to heal everyone is the group. Set to FALSE if you just want to HEAL yourself. What this can be used for is if you are a Monk and use Mend, it only works on you, so set it to FALSE so it doesn't try to trigger a mend when other people need a heal. Another reason would be if you had multiple bots in a group and some you only wanted to heal themselves

b) MaxTargettingDistance (Numeric)
i) Used to determine how close you need to be before you start combat. Depends on what you are using in InitialCombatSequence and what the range is. Might need some experimentation to get it right If the bot keeps stopping too far away to engage, make this smaller. If you set it to 0, it will run right up to a mob before attacking (thought if the mob is aggro, it will jump you first and the bot will stop then and there and start fighting)

c) NonAttackableObjects (String)
i) You do not need to put anything in this list, the script will create and update the INI as it finds objects that are not attackable. The purpose it to keep the bot from trying to "consider" these objects each time it targets them - since the bot can see the name, it will compare and just quickly skip them. It is also used in the retrieval of valid mob targets - sometimes things come up that are not attackable, but have a level that fits into your fighting range, but comparing to this list, they will not be a valid target the bot will try to run to

d) UsingModifiedLootUI (Boolean)
i) If you are using modified loot UI eq2ui_inventory_loot.xml that allows for the ENTER key to Loot All, then set this to TRUE. You can IGNORE LootX,Y in this case as they will not be used. If you are NOT using the modified UI, set to FALSE and make sure the LootX,Y are setup to click the loot All button

e) HealSequence2STR (Sequence)
i) This is a second level of healing if you want to cast a different set of heals when health is even lower than the one above. Examples of uses are for a Monk, you can put your MEND in the HealSequenceSTR and set HealPercentSTR=75, then set this heal as Feigh Death and HealPercent2STR=15. Other uses could be for Reactive heals in the one above, and direct heals in this one... if it is not set, the regular heals above will always be cast

f) HealPercent2STR (Numeric)
i) The trigger to cast the HealSequence2STR above

g) MinHealCheckForPlayers (Numeric)
i) This is a check made when people manually ask for a heal, if their heal is above this number, then the bot respond saying they are not getting a heal. Is is good for when a person spams heals to the bot, the bot will ignore the heal requests once you are healed above this number, thus conserving mana. DEFAULT: 90


2) Removed INI Variable: MaxShots. It was a hold over from the DAOC days when I had to have a RangeAttack() and DoMelee - not needed it’s gone! For that matter, the whole RangeAttack() code is gone, was just junking things up.

3) Removed INI Variable: ConserveMana. Hold over from DAOC – with new Sequences, doesn’t make sense.

4) Removed INI Variable: MouseToggleSTR. Since I now use the LEFT/RIGHT keys to turn, don’t need this anymore

5) New logic to turn using LEFT/RIGHT keys vs. the mouse and mouse toggle. Very smooth turning, very little “jiggle”.

6) Removed the hack that I put in to stafe left/right on a mob target to try to force facing them. Just make sure your view options are set to “View Relative” and “Enable Combat Auto Face Avatar”

7) Changed the level >41 Green target from 4 to 6 - thanks psirusmojo

8) Changed the loot from BEFORE Recover() to AFTER you are recovered. Reason is you can open a box and die from it before you were fully healed, or using the Trigger Default key, if you target a mob, it will attack it, and you might not have been ready for it.

9) New code for looting, will look for things to loot, go to them and loot them. Works with multiple targets & chests. Will only try once per loot item, but I’ve found that 99% of the time it gets it!

10) Added a new modified UI for looting using Enter to loot instead of trying to click on the button. If the loot window didn’t move at times, would be no problem, but I’ve found that it just comes up in a random spot at times, messing up the logic.
a) Highly recommend that you use the modified Loot UI. It will allow for a loot with the ENTER key only, don’t need to click on a button. This file is found EQ2MegaBot directory called “eq2ui_inventory_loot.xml”. The easiest thing to do is to copy it to an existing UI you are using, such as EQ2MAP. Just copy this file in the active UI you are using and restart the game. You should test it to ensure the ENTER is doing LOOT ALL before running the script. If you are not using any modified UI, I’m not going to get into the details of how to do it, so I would suggest installed EQ2MAP as it is awesome!

11) Fixed a bug where the BUFFBOT was mistakenly thinking a fight was over, and could cause them to go back into fight mode and mess things up. I’m using a more complex regexp to do this – now very accurate

12) Fixed looking for YELLED FOR HELP. Now it will properly see if any group member yells for help, send escape to untarget the mob, hit your sprint key, and go out of fight mode so they don’t go nuts while you are trying to run. You have to remember to put them back into fight mode when you start fighting again with the FightBackSTR command

13) Added new logic to look for ALL GROUP MEMBERS, not just masters for starting a fight (and their pets of course). Before only valid masters would trigger a start to a fight. Now if anyone in your current group enters battle (or their pets), the buffbot will start it’s fight/heal process. Valid Masters can still only give commands to the bot to respond to.

14) The bot will now start using 6 locs per second (LPS) as its default, which is a normal run for the bot. If you are using SOW or any other speed buff, it will see that after a few runs and readjust the LPS. You will notice this as the first few runs you may OVERSHOOT the target, turn around and come back. As it goes on, and the LPS is set correctly, you will stop overshooting things and start hitting them dead on.
a) You may notice this with looting at first too. If you loot the first few things and keep overshooting them, wait until a run cycle which will set the LPS correct. Please give me feedback on this to make sure it is working for everyone. You can see your MAX LPS on the status window now, so you know when it is above 6, it is starting to catch up with your run speed.

15) Added an additional check for if the mob is engaged AFTER you run to it. This will help with trying to attack a mob that is not engaged, you run to it, it is now engaged, but you just stand there and try to attack, but can’t.

16) Changed the targeting logic around so it does a much better job of not trying to run to things outside of your RandomRunRange + MaxTargettingDistance. It will also do a better job of finding mobs in the area before trying to move.

17) Updated the install docs at the top to be a little clearer and give links to things you need to install

18) Added a new line to the status window for details on mob currently targeted. Very handy for setting the MaxTargettingDistance variable as you can now check to see how far things are you can use for your initial PULL spell and set it more accurately

19) Updated LogOut() Logic so if you do a normal LogOut() (from either a request or the max script timer) it does a “/camp”, but if you are dead it does a “/quit” as the camp doesn’t work when you are dead.

20) Added logic so that when the message comes up “You are too busy to loot right now”, it knows the loot window is already open and drop out of the mouse click loop and loots

21) Changed how healing works if you are soloing… since you can heal through the mob you are fighting, if you are a HUNTER bot and soloing, the heals will just be cast on the mob and reflect back on you, works much better.
a) The bot knows you are in solo mode as it doesn’t see anyone in the group – and a flag will come up next to your name saying (solo) so you know this logic is kicking in properly

22) Added the second level heal which can be used for multiple purposes, see new INI vars at the top of list

23) Fixed a problem with BeforeCompbatSequence not being able to finish being cast before TargetMonster() would kick in and send an Escape, thus messing up the last sequence.

24) In general – a lot cleaner SOLO HUNTER BOT play. Spent a lot of time watching and optimizing the solo hunter play so now I find that I can stay alive as a solo bot a lot better, even with multiple mobs

Enjoy!


Posted: May 31st, 2005, 5:42 am
 
redman
redman's Reps:
User avatar
There is actually a use for "StopFightingPowerSTR" when soloing. If I get a group of 4-5 easy mobs, I want to blast hard early in the fight but save power for heals at the end. Typically in this situation, I'm down to 20% power or so when down to the last 2 mobs, and I'd rather just rely on heals at that point and melee dps. I THINK it already works like this but just mentioning that it is actually usefull.

I always keep enough power for a heal or two.

RedMan


Posted: May 31st, 2005, 6:53 am
 
redman
redman's Reps:
User avatar
I have this mostly working... a couple of questions...

It seems to be mashing a couple of buttons repeatedly. It's not switching quick bars but whatever bar I have up, its hitting 4 and 6 repeatedly. On my setup, I have hotkeys mapped to the numbers on the top of the keyboard AND to the same numbers on the numeric keypad. 4 and 6 on the keypad are left and right arrows.

Here's a log
(!empty($user->lang['QUOTE'])) ? $user->lang['QUOTE'] : ucwords(strtolower(str_replace('_', ' ', 'QUOTE'))):
31/05/2005 10:12:38 AM: ** Entering CheckForRequestAndProcess()
31/05/2005 10:12:38 AM: ** Entering CheckForRequest()
31/05/2005 10:12:38 AM: ** Entering GetLocation()
31/05/2005 10:12:38 AM: TimerCheck(locTimer) Timer: 1.0 CurTimer: 0.5 TimerUp=False
31/05/2005 10:12:38 AM: Turn to: 259 - CUR ANGLE: 187 Angle Diff: 72
31/05/2005 10:12:38 AM: Angle Diff=72
31/05/2005 10:12:38 AM: A2=72 factor=0.135 t=533.333333333333
31/05/2005 10:12:38 AM: + TURN RIGHT Turning MS=533.333333333333
31/05/2005 10:12:39 AM: CheckForAdd()
31/05/2005 10:12:39 AM: LOG TXT=< ** (1117548758)[Tue May 31 10:12:38 2005] There is no eligible target for this art. ** (1117548759)[Tue May 31 10:12:39 2005] There is no eligible target for this art.>
31/05/2005 10:12:39 AM: ** Your Health/Power= 100% / 100% - Monster Health = 0% - Pet Health - 100%
31/05/2005 10:12:39 AM: ** Entering CheckForRequestAndProcess()
31/05/2005 10:12:39 AM: ** Entering CheckForRequest()
31/05/2005 10:12:39 AM: ** Checking to see if we are being attacked...
31/05/2005 10:12:39 AM: ** Checking to see if any MASTERs or Pets are being attacked...
31/05/2005 10:12:39 AM: Checking for people talking to us - objRegEx = ([\w]*)\\/a tells you,"([\w *\.\?\!\']*)"
31/05/2005 10:12:39 AM: ** Entering GetLocation()
31/05/2005 10:12:39 AM: TimerCheck(locTimer) Timer: 1.0 CurTimer: 1.1 TimerUp=True
31/05/2005 10:12:39 AM: GetTimer(locTimer) Timer: 1.0 CurTimer: 1.1
31/05/2005 10:12:39 AM: Reset Timer(locTimer) SET: 1.0 seconds
31/05/2005 10:12:39 AM: Turn to: 259 - CUR ANGLE: 187 Angle Diff: 72
31/05/2005 10:12:39 AM: Angle Diff=72
31/05/2005 10:12:39 AM: A2=72 factor=0.135 t=533.333333333333
31/05/2005 10:12:39 AM: + TURN RIGHT Turning MS=533.333333333333
31/05/2005 10:12:40 AM: CheckForAdd()
31/05/2005 10:12:40 AM: LOG TXT=< ** (1117548759)[Tue May 31 10:12:39 2005] There is no eligible target for this art.>
31/05/2005 10:12:40 AM: ** Your Health/Power= 100% / 100% - Monster Health = 0% - Pet Health - 100%
31/05/2005 10:12:40 AM: ** Entering CheckForRequestAndProcess()
31/05/2005 10:12:40 AM: ** Entering CheckForRequest()
31/05/2005 10:12:40 AM: ** Checking to see if we are being attacked...
31/05/2005 10:12:40 AM: ** Checking to see if any MASTERs or Pets are being attacked...
31/05/2005 10:12:40 AM: Checking for people talking to us - objRegEx = ([\w]*)\\/a tells you,"([\w *\.\?\!\']*)"
31/05/2005 10:12:40 AM: ** Entering GetLocation()
31/05/2005 10:12:40 AM: TimerCheck(locTimer) Timer: 1.0 CurTimer: 0.9 TimerUp=False
31/05/2005 10:12:40 AM: Turn to: 259 - CUR ANGLE: 193 Angle Diff: 66
31/05/2005 10:12:40 AM: Angle Diff=66
31/05/2005 10:12:40 AM: A2=66 factor=0.13 t=507.692307692308
31/05/2005 10:12:40 AM: + TURN RIGHT Turning MS=507.692307692308
31/05/2005 10:12:40 AM: CheckForAdd()
31/05/2005 10:12:40 AM: LOG TXT=< ** (1117548760)[Tue May 31 10:12:40 2005] There is no eligible target for this art.>
31/05/2005 10:12:41 AM: ** Your Health/Power= 100% / 100% - Monster Health = 0% - Pet Health - 100%


This seems to be in the section where it is trying to decide what to attack next.

I know the old version used to mash my 4 and 6 keys occasionally too... only during a fight though then. It would be triggering HOs (4) and taunting (6) for no good reason.

RedMan


Posted: May 31st, 2005, 10:36 am
 
richyrich
richyrich's Reps:
User avatar
redman";p="66041 (!empty($user->lang['WROTE'])) ? $user->lang['WROTE'] : ucwords(strtolower(str_replace('_', ' ', 'WROTE'))):
There is actually a use for "StopFightingPowerSTR" when soloing. If I get a group of 4-5 easy mobs, I want to blast hard early in the fight but save power for heals at the end. Typically in this situation, I'm down to 20% power or so when down to the last 2 mobs, and I'd rather just rely on heals at that point and melee dps. I THINK it already works like this but just mentioning that it is actually usefull.

I always keep enough power for a heal or two.

RedMan


Great use of it!


Posted: May 31st, 2005, 10:45 am
 
richyrich
richyrich's Reps:
User avatar
redman";p="66044 (!empty($user->lang['WROTE'])) ? $user->lang['WROTE'] : ucwords(strtolower(str_replace('_', ' ', 'WROTE'))):
I have this mostly working... a couple of questions...

It seems to be mashing a couple of buttons repeatedly. It's not switching quick bars but whatever bar I have up, its hitting 4 and 6 repeatedly. On my setup, I have hotkeys mapped to the numbers on the top of the keyboard AND to the same numbers on the numeric keypad. 4 and 6 on the keypad are left and right arrows.

Here's a log
(!empty($user->lang['QUOTE'])) ? $user->lang['QUOTE'] : ucwords(strtolower(str_replace('_', ' ', 'QUOTE'))):
31/05/2005 10:12:38 AM: ** Entering CheckForRequestAndProcess()
31/05/2005 10:12:38 AM: ** Entering CheckForRequest()
31/05/2005 10:12:38 AM: ** Entering GetLocation()
31/05/2005 10:12:38 AM: TimerCheck(locTimer) Timer: 1.0 CurTimer: 0.5 TimerUp=False
31/05/2005 10:12:38 AM: Turn to: 259 - CUR ANGLE: 187 Angle Diff: 72
31/05/2005 10:12:38 AM: Angle Diff=72
31/05/2005 10:12:38 AM: A2=72 factor=0.135 t=533.333333333333
31/05/2005 10:12:38 AM: + TURN RIGHT Turning MS=533.333333333333
31/05/2005 10:12:39 AM: CheckForAdd()
31/05/2005 10:12:39 AM: LOG TXT=< ** (1117548758)[Tue May 31 10:12:38 2005] There is no eligible target for this art. ** (1117548759)[Tue May 31 10:12:39 2005] There is no eligible target for this art.>
31/05/2005 10:12:39 AM: ** Your Health/Power= 100% / 100% - Monster Health = 0% - Pet Health - 100%
31/05/2005 10:12:39 AM: ** Entering CheckForRequestAndProcess()
31/05/2005 10:12:39 AM: ** Entering CheckForRequest()
31/05/2005 10:12:39 AM: ** Checking to see if we are being attacked...
31/05/2005 10:12:39 AM: ** Checking to see if any MASTERs or Pets are being attacked...
31/05/2005 10:12:39 AM: Checking for people talking to us - objRegEx = ([\w]*)\\/a tells you,"([\w *\.\?\!\']*)"
31/05/2005 10:12:39 AM: ** Entering GetLocation()
31/05/2005 10:12:39 AM: TimerCheck(locTimer) Timer: 1.0 CurTimer: 1.1 TimerUp=True
31/05/2005 10:12:39 AM: GetTimer(locTimer) Timer: 1.0 CurTimer: 1.1
31/05/2005 10:12:39 AM: Reset Timer(locTimer) SET: 1.0 seconds
31/05/2005 10:12:39 AM: Turn to: 259 - CUR ANGLE: 187 Angle Diff: 72
31/05/2005 10:12:39 AM: Angle Diff=72
31/05/2005 10:12:39 AM: A2=72 factor=0.135 t=533.333333333333
31/05/2005 10:12:39 AM: + TURN RIGHT Turning MS=533.333333333333
31/05/2005 10:12:40 AM: CheckForAdd()
31/05/2005 10:12:40 AM: LOG TXT=< ** (1117548759)[Tue May 31 10:12:39 2005] There is no eligible target for this art.>
31/05/2005 10:12:40 AM: ** Your Health/Power= 100% / 100% - Monster Health = 0% - Pet Health - 100%
31/05/2005 10:12:40 AM: ** Entering CheckForRequestAndProcess()
31/05/2005 10:12:40 AM: ** Entering CheckForRequest()
31/05/2005 10:12:40 AM: ** Checking to see if we are being attacked...
31/05/2005 10:12:40 AM: ** Checking to see if any MASTERs or Pets are being attacked...
31/05/2005 10:12:40 AM: Checking for people talking to us - objRegEx = ([\w]*)\\/a tells you,"([\w *\.\?\!\']*)"
31/05/2005 10:12:40 AM: ** Entering GetLocation()
31/05/2005 10:12:40 AM: TimerCheck(locTimer) Timer: 1.0 CurTimer: 0.9 TimerUp=False
31/05/2005 10:12:40 AM: Turn to: 259 - CUR ANGLE: 193 Angle Diff: 66
31/05/2005 10:12:40 AM: Angle Diff=66
31/05/2005 10:12:40 AM: A2=66 factor=0.13 t=507.692307692308
31/05/2005 10:12:40 AM: + TURN RIGHT Turning MS=507.692307692308
31/05/2005 10:12:40 AM: CheckForAdd()
31/05/2005 10:12:40 AM: LOG TXT=< ** (1117548760)[Tue May 31 10:12:40 2005] There is no eligible target for this art.>
31/05/2005 10:12:41 AM: ** Your Health/Power= 100% / 100% - Monster Health = 0% - Pet Health - 100%


This seems to be in the section where it is trying to decide what to attack next.

I know the old version used to mash my 4 and 6 keys occasionally too... only during a fight though then. It would be triggering HOs (4) and taunting (6) for no good reason.

RedMan


Redman - it's the new turning code which uses the keyboard to turn vs. the mouse. I hardcoded the turn keys not really thinking anyone would remap them even if not using them. I think most people use A & D to turn, but I left the bot using the LEFT/RIGHT as the default...

First thing is test it with and w/o NUMLOCK on, see if that affects it.

Then you can test some new code for me if it doesn't.

Modify the EQ2MEGABot_LocationFunctions_v25.vbs file.
Find the TURN() and TURNTOANGLE() Subs.
At the top of each one is the hardcoded turn keys.

kRight=VirtualKey.VK_RIGHT
kLeft=VirtualKey.VK_LEFT

Change both Subs to your keys. If you are using A & D, it would be:
kRight=VirtualKey.VK_D
kLeft=VirtualKey.VK_A

See if that works. If it does, I'll make them a variable INI in the next release - for anyone else who runs into this in the mean time, you have a work around.

Rich


Posted: May 31st, 2005, 5:26 pm
 
redman
redman's Reps:
User avatar
I'm in the process of trying that now. To be clear though. The arrow keys as in the 4 keys with arrows on them are not remapped. What I have remapped is my numeric keypad... There may be a bug in xunleasheds handling somewhere here.

RedMan


Posted: May 31st, 2005, 5:40 pm
 
tldtms
tldtms's Reps:
User avatar
Hey Rich great work. I'm having a few issues however...

I tried dropping the supplied UI loot window file in my eq2\UI\default directory, but the script doesnt want to seem to loot using the new loot method. I do see however the text 2$ being displayed in the text window. Do I need to bind a key here?

Also, when using CLOSETSCON it seems that sometimes it will just sit there and hit TAB forever, even though a mob is ight behing my character.

This is more of a feature, but maybe you can let us change the amount, in distance, the character can wonder from the starting point using closestscon? Or is this set using the randrundistance in seconds? is there anyway to change it to use distance??

OTHERside this thing is great, all the other features seem to work well, and the looting is 100% better.

Also how about a buff manager. I'l like to be able to run all my buffs, and even some that stack, but share the same recast timer. This would be nice.


Posted: May 31st, 2005, 6:05 pm
 
tldtms
tldtms's Reps:
User avatar
Question..How wide spread is the use of this UI file that loots by bitting enter? How exactly does it work, can SOE run a query and find everyone who presses enter to loot?


Posted: June 1st, 2005, 4:32 am
 
bitflux
bitflux's Reps:
User avatar
(!empty($user->lang['QUOTE'])) ? $user->lang['QUOTE'] : ucwords(strtolower(str_replace('_', ' ', 'QUOTE'))):
I tried dropping the supplied UI loot window file in my eq2\UI\default directory, but the script doesnt want to seem to loot using the new loot method. I do see however the text 2$ being displayed in the text window. Do I need to bind a key here?

You must install the loot window file to a custom UI folder, otherwise it is overwritten ever time you launch the game. My very best advice to you if you arnt using a Custom UI is to go to http://www.eq2interface.com/downloads/f ... hp?id=3509 and then download the installer to get EQ2map.

This puts points of intrest on your map in game, as well as new maps to zones not in game by default.

Now once you have EQ2map installed put the loot window file in the EQ2map folder, that way its not overwritten but any xml file in the custom UI Folder is used insted of default.



(!empty($user->lang['QUOTE'])) ? $user->lang['QUOTE'] : ucwords(strtolower(str_replace('_', ' ', 'QUOTE'))):
Also, when using CLOSETSCON it seems that sometimes it will just sit there and hit TAB forever, even though a mob is ight behing my character.

you can always modify the time it trys to look for a mob, if it finds nothing then it will do search again and run in range and try to target again. LookForMonsterTime is in seconds too
LookForMonsterTime=5



(!empty($user->lang['QUOTE'])) ? $user->lang['QUOTE'] : ucwords(strtolower(str_replace('_', ' ', 'QUOTE'))):
Question..How wide spread is the use of this UI file that loots by bitting enter? How exactly does it work, can SOE run a query and find everyone who presses enter to loot?

Simply put, NO, SOE cannot track it in any way, its the same thing as you pushing the button. the only thing that is changed is one little line of code:

<Button .... IsDefaultButton="true" ...

in fact you could add it to other things such as repeat button on your crafter UI. Just keep in mind whats active when you might be wanting to type in chat or something.


Posted: June 1st, 2005, 4:45 am
 
bitflux
bitflux's Reps:
User avatar
If you really don't want to use EQ2map or some other custom UI, which I really can't understand, you can just alter a few files to get it working.

First go to your EQ2 directory and find the eq2.ini file, if you dont have one, you can make one in notepad. If you have to make one make sure you have saved it as .ini and not .txt

open it up and make sure it reads:
cl_ui_skinname Loot
cl_ui_subdir UI/

now go into the UI directory and make a new folder called "Loot"
now you are free to drop the loot file included with megabot here
so it should be:
EverQuest II/UI/Loot/eq2ui_inventory_loot.xml


Posted: June 1st, 2005, 5:21 am
 
tldtms
tldtms's Reps:
User avatar
I fixed the problem with the UI by downloading EQ2MAPS.


Posted: June 1st, 2005, 5:31 am
 
richyrich
richyrich's Reps:
User avatar
tldtms";p="66073 (!empty($user->lang['WROTE'])) ? $user->lang['WROTE'] : ucwords(strtolower(str_replace('_', ' ', 'WROTE'))):
Hey Rich great work. I'm having a few issues however...

I tried dropping the supplied UI loot window file in my eq2\UI\default directory, but the script doesnt want to seem to loot using the new loot method. I do see however the text 2$ being displayed in the text window. Do I need to bind a key here?

Also, when using CLOSETSCON it seems that sometimes it will just sit there and hit TAB forever, even though a mob is ight behing my character.

This is more of a feature, but maybe you can let us change the amount, in distance, the character can wonder from the starting point using closestscon? Or is this set using the randrundistance in seconds? is there anyway to change it to use distance??

OTHERside this thing is great, all the other features seem to work well, and the looting is 100% better.

Also how about a buff manager. I'l like to be able to run all my buffs, and even some that stack, but share the same recast timer. This would be nice.


bitflux answered your question on the custom UI and a quick how to guide - thanks BITFLUX!

There are tons of UI mods for this game, and all are approved for use as it is an open XML based UI and Sony published the UI creator for people to do this. I actually took it from a modified UI that someone helped me find, so it's out there being used.

As far as the targetting, it SHOULD use the tab key for LookForMonsterTime time, then it loads the mobs again and should find the closets one, even if behind you and turn around. Now that I'm writing this though, I thought of one thing that might mess it up if the monster is within your MaxTargettingDistance, it will not run to it, and it might not be facing it... let me check into that.

The distance radius to run is controlled by RandomRunRange in seconds. I wrote it originally in seconds as there was no easy way w/o do some math to figure out how many locs it was away, but you could run it and count off the seconds and have a pretty good guess. If you know the loc radius you want, just divide it by 6 as that is the normal LocsPerSec and you will have seconds to enter in this variable.

Describe the buff manager a little better? The one thing the bot code does not handle right now is buffs on the same timer. This is actually going to be a big deal because of the way the classes are written. I have to completely rewrite the class code that controls the actions to do this, and will probably do it, but not on the priority list right now. I wish VB has pointers like I'm use to in C/C++, would make this sort of things much easier.

Rich


Posted: June 1st, 2005, 5:31 am
 
richyrich
richyrich's Reps:
User avatar
tldtms";p="66093 (!empty($user->lang['WROTE'])) ? $user->lang['WROTE'] : ucwords(strtolower(str_replace('_', ' ', 'WROTE'))):
I fixed the problem with the UI by downloading EQ2MAPS.


Excellent!


Posted: June 1st, 2005, 5:33 am
 
richyrich
richyrich's Reps:
User avatar
bitflux";p="66092 (!empty($user->lang['WROTE'])) ? $user->lang['WROTE'] : ucwords(strtolower(str_replace('_', ' ', 'WROTE'))):
If you really don't want to use EQ2map or some other custom UI, which I really can't understand, you can just alter a few files to get it working.

First go to your EQ2 directory and find the eq2.ini file, if you dont have one, you can make one in notepad. If you have to make one make sure you have saved it as .ini and not .txt

open it up and make sure it reads:
cl_ui_skinname Loot
cl_ui_subdir UI/

now go into the UI directory and make a new folder called "Loot"
now you are free to drop the loot file included with megabot here
so it should be:
EverQuest II/UI/Loot/eq2ui_inventory_loot.xml


Bitflux - thank you for both the quick guides to setting this up - just too many things for me to keep track of and great to have some help keeping people moving!

Rich


Posted: June 1st, 2005, 5:52 am
 
richyrich
richyrich's Reps:
User avatar
tldtms";p="66073 (!empty($user->lang['WROTE'])) ? $user->lang['WROTE'] : ucwords(strtolower(str_replace('_', ' ', 'WROTE'))):
Also, when using CLOSETSCON it seems that sometimes it will just sit there and hit TAB forever, even though a mob is ight behing my character.


tldms - I think I found the problem, good catch. I don't have time to actually test it, but I'm 99% sure this is it.

Please try this code for me and see if it works for the things "behind" you.

Modify the EQ2MEGABot_LocationFunctions_v25.vbs file
Find the RunToLoc() Function
Starting on line 377, replace this code:
(!empty($user->lang['CODE'])) ? $user->lang['CODE'] : ucwords(strtolower(str_replace('_', ' ', 'CODE'))):
      ' We are here, so break to outer loop where we'll break again
      if (DisToTarget < MinDis) then
         objDebug.Print "We are <" & DisToTarget & "> units away and MinDis is <" & MinDis &"> ... so we are there!!!", 0
         exit do
      end if


with this code

(!empty($user->lang['CODE'])) ? $user->lang['CODE'] : ucwords(strtolower(str_replace('_', ' ', 'CODE'))):
      ' We are here, so break to outer loop where we'll break again
      if (DisToTarget < MinDis) then
         objDebug.Print "We are <" & DisToTarget & "> units away and MinDis is <" & MinDis &"> ... so we are there!!!", 0
         ' If we never ran anywhere, at least face the new loc before we exit
         if NumLegs=0 then
            Call FaceLoc(TargetX, TargetY)
         end if
         exit do
      end if


I think the things were close to you, it found them, went to run to them, saw you were withing you min, and exited out... never facing them. This little fix should force a face on them even if you never actually ran.

Please post if this fixes it.

Thanks,
Rich


Last edited by Guest on June 1st, 2005, 4:38 pm, edited 1 time in total.

Want Advertisements After The Last Post Removed? Create A Free Account!

blue large dot Who is online
Users browsing this forum: No registered users and 89 guests

Popular Sections
SWTOR Cheats
Guild Wars 2 Cheats
Guild Wars 2 Hacks
Guild Wars 2 Bots
Diablo 3 Cheats
Guild Wars 2 Mods

Popular Sections
WoW Cataclysm Cheats & Exploits
WoW Cataclysm Hacks & Bots
Star Wars The Old Republic Cheats
SWTOR Mods
Torchlight 2 Cheats
SWTOR Space Mission Bots
Site Nav and RSS
RSS Feed of EverQuest 2 Premium Discussions RSS Feed 
Sitemap of EverQuest 2 Premium Discussions Sitemap 
SitemapIndex SitemapIndex
RSS Feed RSS Feed
Channel list Channel list
left bottom corner Site and Contents Copyright 2001-2012 All Rights Reserved TaultUnleashed.com bottom corner
top left
top right
createaccount
Username:   Password:   Remember Me?