VGA (Vanguard Assist) Feedback

Amadeus

The Maestro
Staff member
It has to say more than just that one line.... The actual error message would be helpful.
 

BigOleDick

Active Member
No changeformstance found in script.
Call failed
Dumping script
----------------------------------------

C:\Program Files (x86)\InnerSpace\Scripts\vga\vga.iss:257 Downtimefunction () call changeformstance

C:\Program Files (x86)\InnerSpace\Scripts\vga\vga.iss:235 main () call changeformstance
 

mmoaddict

Original Script Author: VGA
somehow you got an old file mixed in with the new ones. Might want to try redownloading vga from scratch and patching. That change was awhile ago and definetly should be working for you.

The known issues are:
  • bards dont swap Exact Name on their instrument or weapons..
  • Counterspelling is improperly timed
  • Stancepush and dispell.. dont trigger after criticals
  • Spell Types missing Mental
  • Selling Items is slow and can take 2 or 3 times to do completely
  • Some weirdness with healing in 24 person raids and targeting.

Future Tasks
  • Set up a system for requesting buffs from trusted nearby players
  • Set up standard replies and actions from tells
  • Include Alarms and optional logout systems
  • Finish a bunch of class area GUI
  • Finish the concepts of Triggers
  • Add in Weakness Exploiting in Main Combat Tab
  • Spell Types will discover automatically without being set
  • Create Friends List
  • AutoAccept Groups and Resses based on Friends List
  • Merge Mission Sharing Script with VGA
  • Get and turn in all quests from quest giver
  • Add Buttons for Individual Buffs to Guild members
  • Quit my full time job and just write scripts for Free
  • Create A Powerleveling mode for healers

mmoaddict
 

Kelly71

Active Member
somehow you got an old file mixed in with the new ones. Might want to try redownloading vga from scratch and patching. That change was awhile ago and definetly should be working for you.

The known issues are:
  • bards dont swap Exact Name on their instrument or weapons..
  • Counterspelling is improperly timed
  • Stancepush and dispell.. dont trigger after criticals
  • Spell Types missing Mental
  • Selling Items is slow and can take 2 or 3 times to do completely
  • Some weirdness with healing in 24 person raids and targeting.

Future Tasks
  • Set up a system for requesting buffs from trusted nearby players
  • Set up standard replies and actions from tells
  • Include Alarms and optional logout systems
  • Finish a bunch of class area GUI
  • Finish the concepts of Triggers
  • Add in Weakness Exploiting in Main Combat Tab
  • Spell Types will discover automatically without being set
  • Create Friends List
  • AutoAccept Groups and Resses based on Friends List
  • Merge Mission Sharing Script with VGA
  • Get and turn in all quests from quest giver
  • Add Buttons for Individual Buffs to Guild members
  • Quit my full time job and just write scripts for Free
  • Create A Powerleveling mode for healers

mmoaddict
Harvesting also?
 

mordacai

Active Member
The Shaman canni only works out of the box when you have rank IV of the spell, you can go into CLS_Shaman.iss and manually edit it for lower ranks of the spell. Thats what I did anyway.
 

mmoaddict

Original Script Author: VGA
little warning here.. looks like the RL bosses are going to make me grind on a couple big projects this month. Unless something is critically broken.. you willl have to wait till april to get the new stuff for VGA... On the bright side April and May.. i should be slammen vga full time getting it ready for additional levels and AAs.

mmo
 

BackseatScripter

Active Member
The known issues are:
  • bards dont swap Exact Name on their instrument or weapons..


  • I had a little play with the CLS_Bard.iss, my version of the code is:

    ;********************************************
    function BardSong()
    {
    if ${Me.Class.Equal[Bard]}
    {
    If ${fight.ShouldIAttack} && !${Me.Effect[${Me.FName}'s Bard Song - "${FightSong}"](exists)}
    {

    Songs[${FightSong}]:perform
    }
    If ${fight.ShouldIAttack} && !${Me.Inventory[${PrimaryWeapon}].CurrentEquipSlot.Equal[Primary Hand]}
    {
    Me.Inventory[${PrimaryWeapon}]:Equip[Primary Hand]
    Wait 3
    }
    If ${fight.ShouldIAttack} && !${Me.Inventory[${SecondaryWeapon}].CurrentEquipSlot.Equal[Secondary Hand]}
    {
    Me.Inventory[${SecondaryWeapon}]:Equip[Secondary Hand]
    Wait 3
    }
    If !${fight.ShouldIAttack} && !${Me.Effect[${Me.FName}'s Bard Song - "${RunSong}"](exists)}
    {
    Me.Inventory[${Drum}]:Equip
    wait 3
    Songs[${RunSong}]:perform
    }
    }
    }

    Song, primary and secondary are checked separately (I tend to song swap in combat), changing the wait seems to have eliminated the weapon juggling.
 

Kelly71

Active Member
Some bugs i found today.

I tried 2 seperate computers with cleric on both here.

Buffing wether it was with regular buffs or the lazy book would just keep spamming every minute.

Healing. I set up the insta heal at 90% on the tank. it took about 3-4 mobs before it started going. then i lowered it to 70% and it never restarted or kicked in any of the other heals at 60, 50 and 30%

ok i reset it and i have 1 heal working now but its not working 100% of the time.

I went into melee and added strike down and auto attack.
Walked up to a mob and it never hit stike down or turned on auto attack..

Either im doing things way way wrong here or visa versa
 
Last edited:

skumby

Active Member
I just noticed an issue, not sure if anyone's brought it up before or not, there are like 9 pages of responses. Druids aren't flagged as healers, so the autohealing won't work for them.

The simple fix of course is in UTL_Objects.iss, change:
Code:
	member:bool healer()
		{
		if (${MyClass.Equal[Blood Mage]} || ${MyClass.Equal[Cleric]} || ${MyClass.Equal[Disciple]} || ${MyClass.Equal[Shaman]} || ${MyClass.Equal[Paladin]})
		return TRUE
		}
so it reads
Code:
	member:bool healer()
		{
		if (${MyClass.Equal[Blood Mage]} || ${MyClass.Equal[Cleric]} || ${MyClass.Equal[Disciple]} || ${MyClass.Equal[Shaman]} || ${MyClass.Equal[Paladin]} || ${MyClass.Equal[Druid]})
		return TRUE
		}
Thought I'd try to help others out, and request this to be done for future versions so I don't have to edit it by hand every time there's an update :)

Edit: Except, this doesn't seem to be enough to make it work. I'm really banging my head against a wall here, any additional help that someone can provide would be appreciated, I'd like to be able to backup heal with my druid just by setting thresholds for healing low.
 
Last edited:

mmoaddict

Original Script Author: VGA
i am still in hell month for RL work stuff. Gonna be april till i can get back to working on this project . I do want to fix up the druid thing.. prolly take that out all together.. since it would be nice if rogues and pali, and all them could use clickies and little heals for others.
 

scorpion1666

Active Member
i am still in hell month for RL work stuff. Gonna be april till i can get back to working on this project . I do want to fix up the druid thing.. prolly take that out all together.. since it would be nice if rogues and pali, and all them could use clickies and little heals for others.
Probably add rangers because I think they also have some heals in their list of abilities so you are in there only once. =D
 

Ipkis

Active Member
getting into game and right after I load vga it pops up the normal window then crashes, this happening to anyone else?
 

mmoaddict

Original Script Author: VGA
shouldnt be.. vga is stable and only rarely crashes my xp 32bit machine. This is most likely your install of isxvg. Try reinstalling isxvg and continue from there. Are other scripts crashing?
 

Dornie

Active Member
getting into game and right after I load vga it pops up the normal window then crashes, this happening to anyone else?
Yes. There's a post by Amadeus instructing to reinstall ISXVG and reapply the ISXVG.dll. There seems to still be problems, though, especially with VGA.
 

mmoaddict

Original Script Author: VGA
VGA limitations

VGA limitations:

VGA is really designed to help you with multiboxing, to kick back when you are relaxing on a casual raid, or to enhance kbot with a better combat sequence. VGA can not replace good playing, or better yet, a totally custom script for a specific char. If VGA plays better than you. TURN IT OFF and learn your char :)

So here are some known weaknesses of VGA
1. HEALING!
This is a problem with any script. Healing is a major issue in VG. Its not like EQ where we could just spam complete heal with the cleric. Because we can't see what dots or effects our tank or other group members have on themselves, and we cant see their actual hit points, only percentages and add to that the problem of the UI not refreshing as quickly as we can heal, and we are screwed when it comes to writing healing scripts.
So VGA can only heal normal groups where the mob really behaves themselves. Once you get 50 and have to mess with raid encounters and SoD mobs. Turn your scripts OFF if you are a main healer. If you are up for a programming challenge, the only way i see to make a healing script better than a player is to write the following
  • Create a full Parse, DPS system for mobs against players. Adjust healing according to the mobs dps
  • Create a IRC chat system between your chars to declare dots and debuffs placed on other group members.
  • Capture all incoming combat text from the mob so you can predict what they just hit your tank with before your ui registers it
  • Create a slider delay of UI health monitoring to adjust for lag
  • Create Timers for HoT heals so you know how often to recast
  • Create Sequenses for weaving in energy gathering abilities and dps, while still protecting the group.

2. DPS BURST DAMAGE
VGA can do about 80% of your total damage per second depending on your class. Only a custom script can get you to 100%. The problem is every char has to balance energy, endurance, and health drain in order to know when they should do a specific attack. There are so many factors in when is the best time to pop a potion and look for a specific buff on you or debuff on a mob that it would be complicated to try and program that into a script that many people use. I doubt even if i programmed the perfect Rogue script, that any of use could actually agree to what "Perfect" is. So use VGA when you need a helping hand or want to relax, but using it against Guar is just silly dumb. You will suck and anyone parsing you will know it.

3. GAME LAG
VGA is no little script. It does a lot and that can be good and bad. In 24 man raids with all your settings turned up, VGA will lag a bit trying to process what it should do. Not to mention it assumes you have a pretty decent machine. If you are trying to Main Tank on a raid.. VGA will help when you are killing trash and easy bosses. Against complicated encounters it can lag a bit. Watch your refreshs.. if you can easily press keys while vga is running.. then it is running slower than it should.
 

mmoaddict

Original Script Author: VGA
ya your going to have to work on why isxvg isnt working. You can work with Amadeus by PMing him or jumping irc and catching him there. once your isxvg is working, scripts will behave and work for you.

mmo
 

Kelly71

Active Member
VGA limitations:

VGA is really designed to help you with multiboxing, to kick back when you are relaxing on a casual raid, or to enhance kbot with a better combat sequence. VGA can not replace good playing, or better yet, a totally custom script for a specific char. If VGA plays better than you. TURN IT OFF and learn your char :)

So here are some known weaknesses of VGA
1. HEALING!
This is a problem with any script. Healing is a major issue in VG. Its not like EQ where we could just spam complete heal with the cleric. Because we can't see what dots or effects our tank or other group members have on themselves, and we cant see their actual hit points, only percentages and add to that the problem of the UI not refreshing as quickly as we can heal, and we are screwed when it comes to writing healing scripts.
So VGA can only heal normal groups where the mob really behaves themselves. Once you get 50 and have to mess with raid encounters and SoD mobs. Turn your scripts OFF if you are a main healer. If you are up for a programming challenge, the only way i see to make a healing script better than a player is to write the following
  • Create a full Parse, DPS system for mobs against players. Adjust healing according to the mobs dps
  • Create a IRC chat system between your chars to declare dots and debuffs placed on other group members.
  • Capture all incoming combat text from the mob so you can predict what they just hit your tank with before your ui registers it
  • Create a slider delay of UI health monitoring to adjust for lag
  • Create Timers for HoT heals so you know how often to recast
  • Create Sequenses for weaving in energy gathering abilities and dps, while still protecting the group.

2. DPS BURST DAMAGE
VGA can do about 80% of your total damage per second depending on your class. Only a custom script can get you to 100%. The problem is every char has to balance energy, endurance, and health drain in order to know when they should do a specific attack. There are so many factors in when is the best time to pop a potion and look for a specific buff on you or debuff on a mob that it would be complicated to try and program that into a script that many people use. I doubt even if i programmed the perfect Rogue script, that any of use could actually agree to what "Perfect" is. So use VGA when you need a helping hand or want to relax, but using it against Guar is just silly dumb. You will suck and anyone parsing you will know it.

3. GAME LAG
VGA is no little script. It does a lot and that can be good and bad. In 24 man raids with all your settings turned up, VGA will lag a bit trying to process what it should do. Not to mention it assumes you have a pretty decent machine. If you are trying to Main Tank on a raid.. VGA will help when you are killing trash and easy bosses. Against complicated encounters it can lag a bit. Watch your refreshs.. if you can easily press keys while vga is running.. then it is running slower than it should.
MMO when you have time ( i know your swamped ) can you figure out why vga is in a constant state of rebuffing? I have tried this on 3 sep characters and on 2 computers. Each one it just startes to buff. I primarliy use this for a boxin a shammy. it helps on back up heals only as the cleric that is a RP is doing soem dps. If i take out all buffs I can sometimes get it to heal the tank but it wont pick different heals dependin on the %ages i put in to pick heal.
 

mmoaddict

Original Script Author: VGA
ok.. there are some issues with v31innerspace and isx newest download.. lots of crashing :()

basically ${Me.Ability[].Equal[]}.. will get more data on this
 

BackseatScripter

Active Member
May just be me but I've noticed that counterattacks are no longer triggering.

Tried this with both autocounter and manually setting them.

Chain attacks still register and trigger the appropriate responses (both auto and manually set)



Could this be anything to do with a recent .NET 3.5 upgrade that I ran?
 
Last edited:

maras

Active Member
May just be me but I've noticed that counterattacks are no longer triggering.

Tried this with both autocounter and manually setting them.

Chain attacks still register and trigger the appropriate responses (both auto and manually set)
Got the same problem, no countering. Just thought it was me and my settings - but I hadn't any problems in the past. Not sure, when and how it got bugged :(
 

BackseatScripter

Active Member
Got the same problem, no countering. Just thought it was me and my settings - but I hadn't any problems in the past. Not sure, when and how it got bugged :(
I've done some fairly extensive testing of the countering system.

Disclaimer: I have no idea how much of this has been caused by my own coding this week and how much is pre-existing, nor do I claim to fully understand segments of the code that I may have removed while testing.

Firstly in Act_GUI_Utility

Code:
	;; Auto Counter...
	if ${DoCountersASAP} && ${CounterReactionReady}
	{
		if (${Time.Timestamp} <= ${CounterReactionTimer})
		{
			CurrentTargetID:Set[${Me.Target.ID}]
			if ${Me.Target.ID} != ${CounterReactionPawnID}
			{
				Pawn[id,${CounterReactionPawnID}]:Target
				wait 2
			}
			
			CounterReactionAbilities:GetIterator[iAbs]
			if ${iAbs:First(exists)}
			do
			{	
				echo ${Me.Ability[id,${iAbs.Value}].IsReady}			
				if ${Me.Ability[id,${iAbs.Value}].IsReady}
				{
					echo "executeability()-Debug: Casting Counter '${Me.Ability[id,${iAbs.Value}].Name}'! (Total abilities available for counter: ${CounterReactionAbilities.Used})"
					Me.Ability[id,${iAbs.Value}]:Use
					CounterReactionAbilities:Clear
					wait 3
				}
			}
			while ${iAbs:Next(exists)}
			
			if ${Me.Target.ID} != ${CurrentTargetID}
			{
				Pawn[id,${CurrentTargetID}]:Target
				wait 2
			}
		}
		CounterReactionReady:Set[FALSE]
	}
${Me.Ability[id,${iAbs.Value}].IsReady} is returning NULL when using autocounters. I have no idea why, it maybe something on our machines or elsewhere


Secondly in Act_Crits

Code:
;; Amadeus ssys "This function has some odd logic in it..."
function functCounterAttacks()
{
	variable iterator anIter
	
	debuglog "Running Counter Attacks"

	if ${doCounterAttack} && ${fight.ShouldIAttack}
	{
		call CheckPosition
		CounterAttack:GetSettingIterator[anIter]
		anIter:First

		while ( ${anIter.Key(exists)} )
		{
			call CheckPosition
			call checkabilitytocast "${anIter.Value}"
			if ${Return} && ${Me.Ability[${anIter.Value}].IsReady} 
			{
				if ${Me.Effect[${anIter.Value}](exists)}
				{
					anIter:Next
				}
				if ${Me.TargetDebuff[${anIter.Value}](exists)}
				{
					anIter:Next
				}
				call checkabilitytocast "${anIter.Value}"
				if ${Return} && ${Me.Ability[${anIter.Value}].IsReady} && ${fight.ShouldIAttack} && ${Me.Ability[${anIter.Value}].TriggeredCountdown} == 0
				{
					call executeability "${anIter.Value}" "counter" "Both"
				}
			}
			anIter:Next
			if !${fight.ShouldIAttack} 
			return
		}
	}
	
	return
}
I have replaced

if ${Return} && ${Me.Ability[${anIter.Value}].IsReady} && ${fight.ShouldIAttack} && ${Me.Ability[${anIter.Value}].TriggeredCountdown} == 0

with if ${Return}

since I already know its ready from a previous check and I also have already checked I'm in a fight.

${Me.Ability[${anIter.Value}].TriggeredCountdown} == 0 seems to be the problem in the original, probably should be

${Me.Ability[${anIter.Value}].TriggeredCountdown} >= 0

I've also added case statements for 'counter' in Act_GUI_Utility.

I now have the user defined couter attacks working on my system
 
Last edited:

Zandros

Script Author: VGA
I agree with BackseatScripter on the TriggeredCountdown needing to be greater than 0. Once it reaches 0, you are outside the window of executing it. Below is an example of my crit subroutine which seems to work for me:
Code:
	if ${Me.Ability[Blood Tribute VI].TriggeredCountdown}>0 && ${Me.Ability[Blood Tribute VI].IsReady}
	{
		Me.Ability[Blood Tribute VI]:Use
		echo "[${Time}][VG:Crit] --> Blood Tribute VI"
		wait 10
	}
PS - I put a wait there to keep the system from re-executing the routine during the 2.5s cooldown.
 

BackseatScripter

Active Member
I've made a number of changes to VGA in the last week.

Fixed the merchant repair feature
Fixes for counterattacks
Fixes for counterspells
Change to dispel buff function, so it now dipells even if mob has only one buff on it

Added a feature to allow a trash list for items to be deleted from inventory

Is there somewhere I can mail/post the modified files for review or inclusion?
 

BlackShadow

Active Member
Fixes to make mounting work.

In Act_GUI_Utility.iss fix the if statement in function shouldimount()
Code:
	if ${Domount} && !${Pawn[${Me}].IsMounted} && ${Pawn[exactname,${followpawn}].IsMounted} && !${Me.InCombat}
Then in vga.iss just add that function ("call shouldimount") to downtimefunction() before ShiftingImage or so.
 

BackseatScripter

Active Member
I've sent the modified files to MMOAddict and asked him to check over the changes I've made. These changes and the suggestions of other people need to be vetted and integrated with any work MMO has already done. Some of what I've done involves removing small sections of code, code that could be important for features or classes that I don't use.

Given that VGA uses a revision control system to update and maintain these changes I would not be happy posting my changes without a direct go ahead from Amadeus and MMOAddict. Once you manually modify a file it is excluded from further updates, more importantly its rude to hijack someone else's project. :eek:

Keep in mind that he has clearly stated real life and work commitments are taking priority over this project (as they should imo).
 

mmoaddict

Original Script Author: VGA
Life is getting back to normal.. i am looking over all of the changes and making sure they dont mess anything up. You should see some updates going in again
-----
ok merged backseatscripter's trash addition and the counterattack fix and aoe thing. Keep in mind.. For now VGA is locked to me and amadeus's changes. (My changes are better than Amadeus's) if the rest of you hacks want to screw up my code.. make sure to surround your changes with

;***************edited by insert_idiots_name_here**************
<the code you think works better>
;***************end edited by insert_idiots_name_here**************

that way i can entirely dismiss your changes more easily.

Seriously, it just helps me figure out what you did and what i forgot i did.

mmo
 
Last edited:

BackseatScripter

Active Member
Life is getting back to normal.. i am looking over all of the changes and making sure they dont mess anything up. You should see some updates going in again
-----
ok merged backseatscripter's trash addition and the counterattack fix and aoe thing. Keep in mind.. For now VGA is locked to me and amadeus's changes. (My changes are better than Amadeus's) if the rest of you hacks want to screw up my code.. make sure to surround your changes with

;***************edited by insert_idiots_name_here**************
<the code you think works better>
;***************end edited by insert_idiots_name_here**************

that way i can entirely dismiss your changes more easily.

Seriously, it just helps me figure out what you did and what i forgot i did.

mmo
I'll be sure to add those comments from now on, I use a diff utility to spot my changes.
 

mmoaddict

Original Script Author: VGA
btw.. i rewrote the trash and sell routine.. should go a lot faster. I also slowed down how often the script runs the downtie routine to 3 seconds.
 

mordacai

Active Member
Stance changing doesn't appear to work, only tried with BMG(so easy to bot bmg with the script regardless). Does not kill creatures that are at %0 health but are still alive, I thought this was just a growing pain of the character at lower levels, But i am consistanly getting stuck in a situation where the mob is at %0 and All I do is cast heals, hopeing this will be overcome in a level or 2 with extra abilitys to que, Dots FTW.
 

BackseatScripter

Active Member
Stance changing is likely to be a pain with BMG as they have a stance change cooldown (don't ask me why!!). I don't play one myself so I haven't noticed this problem nor do I use the combat/non combat stance features for any toons.

I'll give it a try and see if I can provide some info on if/why its not working for other classes.


The zero percent issue has been around for ages and does pretty much stop once you level up a bit, since this isn't an afk bot you should be there to press and attack button of one form or another ;) Either with the toon in question or if multiboxing on another account, that toon.

That said it should be possible to replace the zero health check with an is target dead check

From Act_Combat.iss

Code:
objectdef fight
{
	member:bool ShouldIAttack()
	{
	If ${Group.Count} < 2 && ${Pawn[${Me}].CombatState} == 1 && ${Me.Target(exists)} && ${Me.TargetHealth} > 0 && !${Pawn[${Me.Target}].IsDead} && ${Pawn[${Me.Target}].HaveLineOfSightTo}
		{
		if ${lastattack.Equal[${Me.Target.ID}]}
			{
			return TRUE
			}
		if !${lastattack.Equal[${Me.Target.ID}]}
			{
			newattack:Set[TRUE]
			StartAttackTime:Set[${Script.RunningTime}]
			DamageDone:Set[0]
			lastattack:Set[${Me.Target.ID}]
			debuglog "I Should Attack"
			return TRUE
			}

		}
	If ${Group.Count} > 1 && (${Me.TargetHealth} < ${AssistBattlePct} && ${Me.TargetHealth} > 0 && !${Pawn[${Me.Target}].IsDead}) || (${Me.TargetHealth} < ${AssistBattlePct} && ${Pawn[${Me}].CombatState} == 1) && ${Me.TargetHealth} > 0 && !${Pawn[${Me.Target}].IsDead}
		{
		if ${lastattack.Equal[${Me.Target.ID}]}
			{
			return TRUE
			}
		if !${lastattack.Equal[${Me.Target.ID}]}
			{
			newattack:Set[TRUE]
			lastattack:Set[${Me.Target.ID}]
			StartAttackTime:Set[${Script.RunningTime}]
			DamageDone:Set[0]
			debuglog "I Should Attack"
			return TRUE
			}
		}
	return FALSE
	}

}

variable fight fight

It might be that all instances of

&& ${Me.TargetHealth} > 0

could be replaced with

&& !${Pawn[${Me.Target}].IsDead}

since any mob with health > 0 is not dead. Then again MMO may well have written that check for a reason I'm not aware of.

You could try backing up the file(s) containing this logic, make the change and see what happens. Let us know how it goes.
 

mmoaddict

Original Script Author: VGA
Small Change

You should notice some more screens going in. The interface screens are not working yet.. but soon.

There is a new button on the main screen. It basically will cause your chars to follow your main char.. even in combat. If they are close to the mobs.. they will turn and fight the mob. If the main character moves more than 7 away.. they will turn and follow that charecter. Make sure to turn off move to mob and face mob option if you want to use this. If you dont know why this was added, dont worry about it. Lets just say there are some bugger mobs out there that like to make you move a lot.

mmo
 

Sharedor

Active Member
i want ask for a additional feature.

as a sorcerer we have chaos volley. if we cast it 1 time, it adds a 20sec-buff with 2% dmg-plus for the whole group. the second time the buff gives 5% and third time 10%. every cast restart the 20 sec-timer.

is there a way to let the sorc start casting with chaos volley as often until the buff grows to the 10% (with a check, if there are more sorcs).
and maybe with a recast it one time before the 20 secs are gone to restart the timer (so it will stay on 10% all the time)

would be very nice :)

mfg
Share
 

mmoaddict

Original Script Author: VGA
vga

the mechanical interactions are working.. basically if someone in your group says a specific phrase.. you will kill levitate or start following or stop following. This is nice for multiboxing.

The sorc ramp up thing is cool.. we do it with a customized script for the sorcs. I can port that over to VGA. Look for it in the class section soon.

mmo
 

Kelly71

Active Member
MMO is there a way to change bard song change to a phrase instead of a percentage..

Would be nice for the tank whos bottin a bard to be able to change the song for dps vrs the mobs dps auto attack change
 

bricky2690

Active Member
Is the a "how to use VGA for dummies"? I used vgshaman and it worked good with major limitations. I was excited when I saw this due to more abilities being used and the over all options. However, I am running into some issues. I read all the forums and enrtered all the spells and abilities I want to use. I also have my follow/assist/tank set. However, there seems to be a huge delay. For example, when i hit the "buff" icon it takes about 2 minutes before it actually buffs. This goes for following as well. The script has to run for about 5 minutes before the toon will begin following. So in a nut shell i guess i am looking for a little guidance on to get this to work properly.
Thanks
 

marloboro

Active Member
Is the a "how to use VGA for dummies"? I used vgshaman and it worked good with major limitations. I was excited when I saw this due to more abilities being used and the over all options. However, I am running into some issues. I read all the forums and enrtered all the spells and abilities I want to use. I also have my follow/assist/tank set. However, there seems to be a huge delay. For example, when i hit the "buff" icon it takes about 2 minutes before it actually buffs. This goes for following as well. The script has to run for about 5 minutes before the toon will begin following. So in a nut shell i guess i am looking for a little guidance on to get this to work properly.
Thanks
I recently came back to Vanguard, i have been using vgshaman and had it set up to work on my shaman and cleric as well as monk, after resubbing this week i seen the new script vga, downloaded it and have been trying to set it up to work, Bricky and i have been in vent together trying to figure out how to use this one. and niether of us are having much luck. for the most part set up looks pretty simple. as he mentioned when we hit buff theres a long delay to buff any of the group members, same with following and the actual assist. i know asking for a step by step set up would take a while but can someone post a basic getting started post? or if one already exisits post a link to it, i hunted around a little but didnt see one. thanks in advance.
 

marloboro

Active Member
ok, after messing aroung with it ive got it working for me, very badass script btw, but im still having a small issue with the auto follow and buffs. when i load up the script it takes about a minute to kick in and start following and doing its thing.. also when i click on the buff button it pauses for about 2 minutes buffs then another minute to start following again. any help on this?

just thought of two more questions, are shammy pets going to be integrated into script? and does the script work outside of group for healers like vgshaman did? i ask because i still have a few lower level toons i would like to powerlevel.
 
Last edited:

scorpion1666

Active Member
I've noticed it does take a while for the buffs to take off, but not that long for me. As for the auto-follow, it works fine for me on both systems I use it on. How far away are you setting it for? When I get back from work in the morning, I'll post what I've been entering into some of the standard fields that's worked best for me so far.
 

marloboro

Active Member
i have auto follow set at 4 meters. and something new ive noticed is if i click the buff button then quit and restart it works perfectly till i click the buff button again..
 

vah shir

Active Member
I used to be able to set my start attack percent to 100% and my vga healbot would assist my main even when he was harvesting.. for some reason early may or so it stopped doing this feature. Was that intended? or there be a trick to get this working again?
 

mmoaddict

Original Script Author: VGA
I will look into the buff delay. It used to work just fine but ya, it is so sluggish even i lean over and do it myself sometimes.

This script does not heal out of group so i have attached what i use for PLing. It is fast, it is simple. It works! If you have a shaman PLing someone and that shaman is not level 50 at least. You will want to change the area called shamanmana. I have the shaman auto canning, and turning on bosrids. So you will need to modify the names of the spells there to reflect the lower level version.

There is no VGA for dummies walkthrough. It is complicated because you are basically piggy backing on my script to accomplish the goals and needs i have in game. I know it doesnt do much for classes that have many unique casting needs, like disciples, druids, bloodmages. It doesnt do croud control.. (though i am starting to consider it)

Even i admit sometimes i get started on something and get distracted by game levels.. etc.

oh and for havesting stuff.. just use something like harv at the same time as vga

i actually added harvesting assisting.... last patch..
 

Attachments

Last edited:

Kelly71

Active Member
MMO, i got 2 questions.

1st as a caster can it detect Furious and stop casting? problem i see if tanks stop but i dont and i get agro then.

2nd I know you said for melee furious was either built in or you had to add the text somewhere. The only thing i can see like this is under triggers ( On incomming text) but there is nothing there like turn off auto attack.
 

mmoaddict

Original Script Author: VGA
its on the combat main screen.. under turn off attack.. basically when it sees a buff like Furious. It turns off autoattack if it is on.. and waits till it is down. I will have to mod that so casters dont burn through it now.. tomorrow morning i can do that.

Triggers are still unfinished. Ran out of time when i was working on that. I will hide that tab till i finish it.. so it is less confusing

mmo
 

mmoaddict

Original Script Author: VGA
There is currently an issue with furious going off before notifying the client that furious is up on the mob. So some plowing will occur. There is no fix for this at the moment.
 

maras

Active Member
There are some buff abilities, which are named different than the buff they are apply.
Like cleric:
Maul of Divinity xxx (melee attack) - buff is named "Endowment of Divinity xxx"
Maul of Gods xxx (Finishing attack) - buff is named "Strength of Gods xxx"

Any solution other than listing exact names in your source code of act_crits.iss/functBuffCrits or whereever these things are calculated ?

And another problem: HOTs. In my opinion they shouldn't get reappllied, if they are already on a target. But VGA does it. Or did I make a configuration error ? Any advice, how I should order/configure the different heals ? It looks like HOTs get handled in the same kind as direct heals (fire off at a specific %HP) - which makes them not really usable.
Like Alleviate for my cleric - he uses it over and over, killing his mana very quickly. It's a great pity, since this HOT a one of the strongest healing abilities for clerics.
 
Last edited:

mmoaddict

Original Script Author: VGA
ya hots are a pain cause of different cycle down timers etc. A really good cleric weaves in Hot heals on not only the main tank but also the squishies, especially when the cleric knows an AoE is about to go off. The difficulty is creating a set of rules by which to tell the cleric to Hot Heal Someone.

IF Encounter > 80 health, and Groupmember is Tank Class, and GroupMember Health is > 70 and Nobody else in the Group needs healed, and Encounter is Targeted on the Tank. THEN Cast Hot Heal No faster than every 30 seconds..

I would need a bunch of sudo code rules like that to play with.

I will hard code those rules in the Buffs for hte cleric

BTW. I do have some working Mob Control stuff working,, Mez and sleep. I should be able to put it up by the weekend. It will work for basic mezzes, Enchanters are going to need a little more so i will look into it.
 

maras

Active Member
My idea for implementing HOTs would be: check target, if the HOT is already aktiv at it. If no and %HP (Healer Main Values) is reached, cast the HOT. If yes, don't reapply it and check for other healing abilities.

You are right, a good cleric could do much more with this powerful ability. But such (relative simple) implementation would at least give us the possibility to use HOTs. Actually we can't, because VGA chain casts the HOT like a direct heal once the %HP is reached.

Just a note to the buffs, I mispelled one in my last post. It reads:
Maul of the Gods xxx (Finishing attack) - buff is named "Strength of the Gods xxx"
(forgot 2x "the")

Btw - great work and thanks for your effort. I 2-box a lot and VGA is a really powerful script.
 

Zandros

Script Author: VGA
HOTS: This is an interesting topic. Correct me if I am wrong, the only way to find out if the HOT is on your DTarget is to target your DTarget as your offensive target and then check if it has the HOT.

I wouldn't recommend doing this because all it takes is a spike, lag, forgetfullness, or a missed packed and your next damaging spell could kill your friendly target.

The way mmoAddict has it set up is probably the best way to do it and that is to treat it like a direct heal.

If there were a command such as ${Me.DTargetMyDebuff[${ability}](exists)}, then surely this will resolve our HOT problem.
 

maras

Active Member
Oh, I didn't know about the impossibility to check DTargets status. Sounds like a pain to make HOTs useful in this case, too bad :(

But actually I would say, HOTs are 100% useless. They only run the initial tick, and after it they get reapplied in most situations. This is extremly inefficient.

Just an example of my Lvl27 cleric:
option 1 - alleviate (HOT) (262 energy, casttime 1 sek) heals 421/per tick, 4 ticks for 1684 total
option 2 - healing touch (339 energy, casttime 1,5 sek) heals 1118
option 3 - rejuvenate (384 energy, casttime 3 sek) heals 2206

If the HOT can tick all 4 times, it heals quite well, fast and efficient. The cleric can fight while the HOT heals the DTarget.
But with only 1 tick, noone in their right mind would use it - would be a waste of energy. And the cleric is busy with reappliying the HOT over and over, cannot fight and cannot apply all his strong melee buffs (Gift of Ardor, Endowment of Divinity, Strength of the Gods) or his healing weapon consecration.

The way mmoAddict has it set up is probably the best way to do it and that is to treat it like a direct heal.
It's not his fault and I don't blame him for it - but actually this "best way solution" give us only 1 option: not to use HOTs.
 
Last edited:

Zandros

Script Author: VGA
Actually, HOTs are useful and has its advantages and disadvantages. I do know there is a cooldown before you can use another ability and it works great when used when you want to heal some health but not all health.

A tactic I sometimes use is when your DTarget's hp drops really low so cast a big heal followed by a HOT. Using a HOT first will delay the big heal and personnally I don't like to gamble on the results.

There are many variations of when you can use it... its up to you on what makes you feel comfortable.
 

maras

Active Member
Hm, I am not quite sure, if we talk about the same thing - I didn't meant HOTs would be useless at all.
My opinion was only, they are next to useless if you use them like direct heals (allowing them to tick only once). And I was not able to configure VGA to use them in another way, but maybe I did something wrong. How do you get VGA working in your described way ? How can I avoid chain casting of a HOT ?
 

Zandros

Script Author: VGA
For me, I play a Blood Mage and the HOT stays up for 16s but its recastable every 8s. So I spam it every 8s when its available. I'm not sure about the other classes and how it takes a toll on them.
 

maras

Active Member
I too had no problems with boxing Bloodmage, Shaman and Disci.
It's the cleric class. His HOT is one of his strongest heals and has no own cooldown. 1 Tick itsself is not really big and is often not enough to bring the DTarget from below the %HP limit above it. That's why VGA recasts it after GCD and heal delay.

The cleric class design wants him to throw out HOTs before/during fighting. His special melee attacks boost the whole group with short time buffs and heals the group while attacking the mobs. He also gains energy through melee combat.
If a cleric only chain cast direct heals, he loses most of his potential. If using VGA to box a cleric I have to turn off the HOT completely, because otherwise it will get chain casted. This works - to some degree. The cleric can do most needed things, he only can't use his strongest and most efficient healing ability.

But with the interface restriction you brought to my knowledge (no DTarget state) probably the only solution would be to track the time of a running HOT. Which mmoaddict already took into consideration. I am quite sure, it will be really hard to implement a working cleric HOT script.
 

Zandros

Script Author: VGA
Thank you for the explaination which helps me understand what you're asking which gives me an idea which I will write right here (haven't tested it though because this is just an idea how I would tackle it)....

Code:
variable int HOTReady[24]

function SetupHOTtimer()
{
	variable int GroupNumber

	if ${Me.IsGrouped}
	{
		for ( GroupNumber:Set[1] ; ${Group[${GroupNumber}].ID(exists)} ; GroupNumber:Inc )
		{
			HOTReady[${GroupNumber}]:Set[${LavishScript.RunningTime}]
		}
	}
}

function UseAbilityHOT(string Ability, int GroupNumber)
{
	if !${Me.IsGrouped} || !${Me.Ability[${Ability}].IsReady}
		return

	if ${LavishScript.RunningTime}<${HOTReady[${GroupNumber}]}
		return

	Me.Ability[${Ability}]:Use

	variable int DelaySeconds = 15

	HOTReady[${GroupNumber}]:Set[${Math.Calc[${LavishScript.RunningTime}+(1000*${DelaySeconds})]}]

	wait 3
}
Basically, this sets the timer for each group member and once the time is up, you may cast the HOT. Once the HOT is casted, update the timer by xx amount of seconds which you define by DelaySeconds.

Its not perfect but I hope it helps.
 

maras

Active Member
Works great, thanks. Hopefully this can help mmoaddict a bit.

Had the same problem with "Kiss of Heaven" from my disciple and it helped too (also a HOT with no cooldown).

I also use it now in KBOT, which had a similar problem (not only when grouped, but also when soloing with disci or cleri).
 
Last edited:

zimzzat

Active Member
Maras,

Could I inquire what area of the code you inserted Zandros's timer function? I'm not that great at code, but I've been going through the files and thinking about how to incorporate it. I play a Cleric as well, and I'm very excited about seeing a solution! Thanks...
 

maras

Active Member
So far I have only put it in my KBot version.
I am sure, we will get the VGA solution from mmoaddict soon.
 

Shortankard

Active Member
SO I just figured out that I need to get my adventure class up to atleast the mids 35s to complete my crafting class. What is the primary difference between kbot and vga if I'm gonna invest the time to learn them? What primary task does each answer?
 

locutus71

Active Member
Attack not turning off fast enough..

With the new click button on the main tab to turn off attack during furious, i dont think its turning off fast enough.

Anyone else notice this?
 

Kelly71

Active Member
With the new click button on the main tab to turn off attack during furious, i dont think its turning off fast enough.

Anyone else notice this?
Scroll up where MMO says there is a time difference in game and its a known bug, No work around atm
 
Top Bottom