Servidor testado 0.3.6 8.60 ✅ - Podendo funcionar em 0.4 ⚠️
Primeiro vou explicar um pouco sobre ele é base do script do @xWhiteWolf e modificado para escalar com skill pelo @BangxD e agora modificado novamente para não só funcionar com players mas também com todos os monstros.
Instalação
Se ja tem instalado siga as instruções abaixo
para instalar o script basta remover o registro do login.lua, alterar a tag XML pela nova fornecida
Caso não tenha instalado basta instalar normalmente criando o arquivo critical.lua e adicionando as tag no XML
Tag XML
<event type="login" name="critilogin" event="script" value="critical.lua"/> <event type="statschange" name="critical" event="script" value="critical.lua"/> <event type="combat" name="comcriti" event="script" value="critical.lua"/>
Script
local config = { SKILL_ID = 2, -- id do skill... multiplier = 1.5, percentual = 0.3, MAGIC_EFFECT = 772, -- id do magic effect } function onLogin(cid) registerCreatureEvent(cid, "critical") registerCreatureEvent(cid, "comcriti") return true end function onStatsChange(cid, attacker, type, combat, value) if isPlayer(attacker) and (not (attacker == cid)) and (type == STATSCHANGE_HEALTHLOSS or type == STATSCHANGE_MANALOSS) then local chance = (getPlayerSkillLevel(attacker, config.SKILL_ID) * config.percentual) * 10 if math.random(1, 1000) <= chance then dano = math.ceil(value*(config.multiplier)) doTargetCombatHealth(attacker, cid, combat, -dano, -dano, 255) doSendMagicEffect(getCreaturePosition(cid), config.MAGIC_EFFECT) return false end end return true end function onCombat(cid, target) if isPlayer(cid) and isMonster(target) then registerCreatureEvent(target, "critical") end return true end