Eu fazia com o buff de frutas e de poções dos antigos na época que dava pra editar os arquivos e funcionava, mais tarde eu puxo o nome interno do buff dessas poções e passo aqui.
Se der pra editar o valor do status as também, é beleza.
(edit 1)
A forma que eu usava via script para dobrar o ataque (buff da pocao de atq dos antigos):
local Player = g_MyD3D:GetPlayer(iPlayer)
if not Player:IsMagicEffect( EGC_EFFECT_EVENT_TWICE_ATTACK ) then
Player:SetMagicEffect( EGC_EFFECT_EVENT_TWICE_ATTACK, math.huge )
end
Defesa : EGC_EFFECT_EVENT_TWICE_DEFENSE
Acerto Critico: EGC_EFFECT_EVENT_TWICE_CRITICAL
(edit 2)
Adicionando o script de forma persistente ou em qualquer ação do personagem em seu respectiro script/statefunc que chame a função g_MyD3D:GetPlayer(iPlayer) checará se o buff está ativo, e se não estiver, ele ativa.