I have a Buffer NPC with this script (I know, I know, it's A LOT of buffs) which I got from here and edited as I wanted:
// https://rathena.org/board/topic/81757-full-buffs-npc/?do=findComment&comment=194862
- script Buffer -1,{
if( @delay_buff ) end;
if ( rid2name(getcharid(3)) == "TestDummy" ) {
@buff_time = INFINITE_TICK;
}
else {
@buff_time = 600000 * 4;
}
skilleffect 384,0; sc_start SC_MELTDOWN,@buff_time,5;
skilleffect 383,0; sc_start SC_WINDWALK,@buff_time,5;
skilleffect 378,0; sc_start SC_EDP,@buff_time,5;
skilleffect 465,0; sc_start SC_KAITE,@buff_time,7;
skilleffect 464,0; sc_start SC_KAUPE,@buff_time,3;
skilleffect 462,0; sc_start SC_KAIZEL,@buff_time,7;
skilleffect 8,0; sc_start SC_ENDURE,@buff_time,10;
skilleffect 33,0; sc_start SC_ANGELUS,@buff_time,10;
skilleffect 45,0; sc_start SC_CONCENTRATE,@buff_time,10;
skilleffect 74,0; sc_start SC_MAGNIFICAT,@buff_time,5;
skilleffect 75,0; sc_start SC_GLORIA,@buff_time,5;
skilleffect 459,0; sc_start SC_ADRENALINE2,@buff_time,1;
skilleffect 66,0; sc_start SC_IMPOSITIO,@buff_time,5;
skilleffect 67,0; sc_start SC_SUFFRAGIUM,@buff_time,3;
skilleffect 34,0; sc_start SC_BLESSING,@buff_time,10;
skilleffect 29,0; sc_start SC_INCREASEAGI,@buff_time,10;
skilleffect 112,0; sc_start SC_WEAPONPERFECTION,@buff_time,10;
skilleffect 114,0; sc_start SC_MAXIMIZEPOWER,@buff_time,5;
skilleffect 357,0; sc_start SC_CONCENTRATION,@buff_time,5;
skilleffect 355,0; sc_start SC_AURABLADE,@buff_time,5;
skilleffect 155,0; sc_start SC_LOUD,@buff_time,1;
sc_start SC_ASPDPOTION2,@buff_time,0;
sc_start SC_STRFood,@buff_time,30;
sc_start SC_AGIFood,@buff_time,30;
sc_start SC_VITFood,@buff_time,30;
sc_start SC_INTFood,@buff_time,30;
sc_start SC_DEXFood,@buff_time,30;
sc_start SC_LUKFood,@buff_time,30;
sc_start SC_HitFood,@buff_time,30;
sc_start SC_FleeFood,@buff_time,30;
sc_start SC_BATKFood,@buff_time,30;
sc_start SC_MATKFood,@buff_time,30;
skilleffect 380,0; sc_start SC_TRUESIGHT,@buff_time,5;
skilleffect 361,0; sc_start SC_ASSUMPTIO,@buff_time,5;
if ( class == Job_Kagerou || class == Job_Oboro ) {
skilleffect 3022,0; sc_start SC_IZAYOI,@buff_time,5;
}
switch ( basejob ) {
case Job_Alchemist: set .@spirit, 445; break;
case Job_Monk: set .@spirit, 447; break;
case Job_Star_Gladiator: set .@spirit, 448; break;
case Job_Sage: set .@spirit, 449; break;
case Job_Crusader: set .@spirit, 450; break;
case Job_SuperNovice: set .@spirit, 451; break;
case Job_Knight: set .@spirit, 452; break;
case Job_Wizard: set .@spirit, 453; break;
case Job_Priest: set .@spirit, 454; break;
case Job_Bard: case Job_Dancer: set .@spirit, 455; break;
case Job_Rogue: set .@spirit, 456; break;
case Job_Assassin: set .@spirit, 457; break;
case Job_Blacksmith: set .@spirit, 458; break;
case Job_Hunter: set .@spirit, 460; break;
case Job_Soul_Linker: set .@spirit, 461; break;
default:
if ( upper == 1 && baselevel < 70 ) {
set .@spirit, 494;
}
}
if ( .@spirit ) {
sc_start4 sc_spirit, @buff_time, 5, .@spirit,0,0;
skilleffect .@spirit, 5;
}
percentheal 100,100;
if (Hp % 2 == 1) {
heal -1,0;
}
if (Mp % 2 == 1) {
heal 0,-1;
}
skilleffect 3026,0; sc_start SC_ZANGETSU,@buff_time,5;
percentheal 100,100;
@delay_buff++;
sleep2 2000;
@delay_buff = 0;
end;
}
prontera,147,174,6 duplicate(Buffer) Buffer#prt 758
e_tower,82,108,3 duplicate(Buffer) Buffer#wtower 758
and I'm having a bug of some kind (at least I think It's a bug). On the line which buffs Distorted Crescent,
skilleffect 3026,0; sc_start SC_ZANGETSU,@buff_time,5;
sometimes MATK gets reduced, even though the script heals the char, checks for odd amounts of HP and MP, reduce HP and MP if either is odd and then buffs the char. I don't know what's causing it. I made a video which show off the bug: