PDA

View Full Version : Buff Bot


theeris23
12-24-2008, 07:59 PM
I've seen this issue on multiply servers, but is it possible to fix the problem of the buff bot using the targets level to determine the length of the buff? For the first 5 or 10 levels, most buffs won't last long enough to port or run to the next zone to actually use it before it wears off. It would be nice to use the caster's level for spell duration.

trevius
12-28-2008, 06:27 AM
The length of buffs is dependent on the level of the character they are cast on and that is set in the spells file. Each buff uses a formula to calculate duration based on level and to adjust that would mean adjusting the formula for every buff spell on the server. It can be done, and probably even with a simple mysql query or 2, but it isn't anything that can really be adjusted in the code as far as I know. The only thing I can think of would be to code something that could change how the formulas are handled by the server.

secash
01-16-2009, 02:37 PM
The length of buffs is dependent on the level of the character they are cast on and that is set in the spells file.

The length of the buff is dependant on the character that cast the buff.

kayen85
01-16-2009, 07:53 PM
sub EVENT_SAY {

if ($text =~/buff/i) {
quest::say("Time for your Haste buff buff");
my $GetPlayerID = $client->GetID();
$npc->CastSpell(172, $GetPlayerID );
}
}

I tried this for a few spells and worked fine. Set the NPC for level 75. It will
use the npc's level to base the spell no the player. I set myself to lv 1 and lv 75 and buffs all had same duration.


Kayen
GM Stormhaven

secash
01-17-2009, 12:06 AM
sub EVENT_SAY {

if ($text =~/buff/i) {
quest::say("Time for your Haste buff buff");
my $GetPlayerID = $client->GetID();
$npc->CastSpell(172, $GetPlayerID );
}
}

I tried this for a few spells and worked fine. Set the NPC for level 75. It will
use the npc's level to base the spell no the player. I set myself to lv 1 and lv 75 and buffs all had same duration.


Kayen
GM Stormhaven


Please try spell id 5417 (champion) it is a group spell, I do not see a way to make it cast on a PC.

Secrets
01-17-2009, 04:21 AM
Please try spell id 5417 (champion) it is a group spell, I do not see a way to make it cast on a PC.

have not tried this personally, but if you change the spell file serversided to a PC group buff from a single target buff you should be able to have it effect the entire group without having to push out a new spells_us.txt to the client.

it'll look like a single target buff on the client, cast like a single target buff on the client, but should effect the whole group. this should go for any buff but not a DD. though i think in theory you could change burst of flame to a rain spell serversided and that should make it come down in 3 waves while still making it look like a DD spell clientsided (as in, you cast it on a single target mob, and it acts like a rain spell on that target.)

in addition, you can make non-duriation spells serversided only using this theory and have the client not download a thing. for example if you want to add a proc, for example, "theeris23's uber heal", make the spell but never show it to the client. it will give the bonus to the client but give them a message saying "You feel bogus as an unknown spell accosts you."

lots of fun things can be done with the spell file and tricking the client, i'm surprised people haven't yet :p