TibiaFace » RECURSOS » Mods & Sistema » [Sistema] Critical Skill System DODGE

Votar:

[Sistema] Critical Skill System DODGE

Compartir:

Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje (Página 1 de 1.)

1default [Sistema] Critical Skill System DODGE el Jue Ene 04, 2018 12:46 pm

[Admin] God Maya

[Admin] God Maya
Administrador
Administrador
Hola usuarios de tibiaface


bueno aqui le dejo un sistema de critical, el sistema es simple un objeto te entrega critical % puedes usar solo 100 objetos. el cual te daran un % de critical de 30%

instalacion:

data/creaturescripts/creaturescripts.xml

Código:
<event type="statschange" name="critical" event="script" value="critical.lua"/>

creaturescripts\scripts\login.lua

pegar esto dentro del archivo login.lua

Código:
registerCreatureEvent(cid, "critical")
if getPlayerStorageValue(cid, 48913) == -1 then
        setPlayerStorageValue(cid, 48913, 0)
    end

Ahora nos vamos a :

creaturescritps\scripts

copiamos cualquier archivo y renombramos por critical.lua y pegamos esto dentro

Código:
--[[Critical System
-------------------------  By Night Wolf]]


local lvlcrit = 48913
local multiplier = 1.5


function onStatsChange(cid, attacker, type, combat, value)
if isPlayer(attacker) and (not (attacker == cid)) and (type == STATSCHANGE_HEALTHLOSS or type == STATSCHANGE_MANALOSS)  then
if (getPlayerStorageValue(attacker, lvlcrit)*3) >= math.random (0,1000) then
dano = math.ceil(value*(multiplier))
doTargetCombatHealth(attacker, cid, combat, -dano, -dano, 255)
doSendAnimatedText(getCreaturePos(attacker), "CRITICAL!!", 144)
return false
end
end
return true
end

ahora nos vamos a:

Data/actions/actions.xml

Código:
<action itemid="1294" script="criticalrock.lua"/>

ahora nos vamos a:

data/actions\scripts

copiamos cualquier archivo y renombramos por criticalrock.lua y pegamos esto dentro

Código:
--- CRITICAL System by Night Wolf
 
  local config = {
  effectonuse = 14, -- efeito que sai
  levelscrit = 100,  --- leveis que terão
  storagecrit = 48913 -- storage que será verificado
  }
 
function onUse(cid, item, frompos, item2, topos)
    if getPlayerStorageValue(cid, config.storagecrit) < config.levelscrit then
  doRemoveItem(item.uid, 1)
doSendMagicEffect(topos,config.effectonuse)
doPlayerSendTextMessage(cid,22,"You've Leveled your Critical Skill to ["..(getPlayerStorageValue(cid, config.storagecrit)+1).."/"..config.levelscrit.."].")
setPlayerStorageValue(cid, config.storagecrit, getPlayerStorageValue(cid, config.storagecrit)+1)
elseif getPlayerStorageValue(cid, config.storagecrit) >= config.levelscrit then
doPlayerSendTextMessage(cid,22,"You've already reached the MAX level of Critical Skill.\nCongratulations!!!!")
    return 0
    end
return 1
end

Recordando que cada piedra utilizada dará 0,3% más posibilidades .. 10 piedras dar 3% de probabilidad de atacar y cada piedras críticos 100 (nivel máximo STANDARD) dará una probabilidad del 30% para atacar en absoluto crítico.

como el sistema solo funciona para persona contra persona y si quieren para moustros solo basta añadir esta tag al moustro:

Código:
<script>
<event name="critical"/>
</script>

y listo



[Sistema] Critical Skill System DODGE YNU5B25
Ver perfil de usuario https://www.tibiaface.com

2default Re: [Sistema] Critical Skill System DODGE el Vie Mayo 04, 2018 2:59 pm

Deget92

Deget92
Miembro
Miembro
¿Y harías eso cuando recibo un diagnóstico crítico, entonces esos números que muestran la cantidad de lesiones fueron más grandes de lo normal?

20:54 You've Leveled your Critical Skill to [100/100].
y no hay diferencia cuando golpeo durante media hora ...

Ver perfil de usuario

3default Re: [Sistema] Critical Skill System DODGE el Vie Mayo 04, 2018 7:47 pm

[Admin] God Maya

[Admin] God Maya
Administrador
Administrador
[Tienes que estar registrado y conectado para ver este vínculo] escribió:¿Y harías eso cuando recibo un diagnóstico crítico, entonces esos números que muestran la cantidad de lesiones fueron más grandes de lo normal?

20:54 You've Leveled your Critical Skill to [100/100].
y no hay diferencia cuando golpeo durante media hora ...

esposible el que este muy alto el random

Código:
math.random (0,1000)

esta 1000 y no este llegando a dar el critical

puede a ver reducirlo a 100 e ir probando



[Sistema] Critical Skill System DODGE YNU5B25
Ver perfil de usuario https://www.tibiaface.com

4default Re: [Sistema] Critical Skill System DODGE el Vie Mayo 04, 2018 8:17 pm

El Script esta bueno pero... le falta una bandera de control.

Código:
--[[Critical System
-------------------------  By Night Wolf]]


local lvlcrit = 48913
local multiplier = 1.5
local bandera = {}

function onStatsChange(cid, attacker, type, combat, value)
if bandera[cid] then
bandera[cid] = nil
return true
end
if isPlayer(attacker) and (not (attacker == cid)) and (type == STATSCHANGE_HEALTHLOSS or type == STATSCHANGE_MANALOSS)  then
if (getPlayerStorageValue(attacker, lvlcrit)*3) >= math.random (0,1000) then
dano = math.ceil(value*(multiplier))
bandera[cid] = true
doTargetCombatHealth(attacker, cid, combat, -dano, -dano, 255)
doSendAnimatedText(getCreaturePos(attacker), "CRITICAL!!", 144)
return false
end
end
return true
end



Si necesitas hospedaje para tu servidor usa este enlace y mira los buenos planes de Windows y Linux:
Si tu cuenta de PayPal no esta verificada no importara, igual aceptan pagos con cuentas no verificadas.


[Sistema] Critical Skill System DODGE TRJEB8aSRYK5IulEU6ilJw
Ver perfil de usuario

5default Re: [Sistema] Critical Skill System DODGE el Vie Mayo 04, 2018 9:45 pm

[Admin] God Maya

[Admin] God Maya
Administrador
Administrador
The_Pain escribió:El Script esta bueno pero... le falta una bandera de control.

Código:
--[[Critical System
-------------------------  By Night Wolf]]


local lvlcrit = 48913
local multiplier = 1.5
local bandera = {}

function onStatsChange(cid, attacker, type, combat, value)
if bandera[cid] then
bandera[cid] = nil
return true
end
if isPlayer(attacker) and (not (attacker == cid)) and (type == STATSCHANGE_HEALTHLOSS or type == STATSCHANGE_MANALOSS)  then
if (getPlayerStorageValue(attacker, lvlcrit)*3) >= math.random (0,1000) then
dano = math.ceil(value*(multiplier))
bandera[cid] = true
doTargetCombatHealth(attacker, cid, combat, -dano, -dano, 255)
doSendAnimatedText(getCreaturePos(attacker), "CRITICAL!!", 144)
return false
end
end
return true
end



Código:
if bandera[cid] then   
bandera[cid] = nil
return true
end

en anterior pretegia el attack pero aqui lo estas protegiendo el cid este me imagino es el player el que esta pegando ?



[Sistema] Critical Skill System DODGE YNU5B25
Ver perfil de usuario https://www.tibiaface.com

6default Re: [Sistema] Critical Skill System DODGE el Sáb Mayo 05, 2018 1:03 pm

Deget92

Deget92
Miembro
Miembro
cómo voy a agregar a la criatura "
<script>
<event name="critical"/>
</script>"

pero no funciona en otros jugadores:/

Ver perfil de usuario

7default Re: [Sistema] Critical Skill System DODGE el Sáb Mayo 05, 2018 1:10 pm

[Admin] God Maya

[Admin] God Maya
Administrador
Administrador
[Tienes que estar registrado y conectado para ver este vínculo] escribió:cómo voy a agregar a la criatura "
<script>
<event name="critical"/>
</script>"

pero no funciona en otros jugadores:/

añadelo arriba de la flag del moustro que quieras



[Sistema] Critical Skill System DODGE YNU5B25
Ver perfil de usuario https://www.tibiaface.com

8default Re: [Sistema] Critical Skill System DODGE el Sáb Mayo 05, 2018 1:12 pm

Deget92

Deget92
Miembro
Miembro
pero no funciona en otros jugadores,

en criaturas funciona

Ver perfil de usuario

9default Re: [Sistema] Critical Skill System DODGE el Dom Mayo 06, 2018 10:51 pm

[Admin] God Maya

[Admin] God Maya
Administrador
Administrador
[Tienes que estar registrado y conectado para ver este vínculo] escribió:pero no funciona en otros jugadores,

en criaturas funciona

a ver pruebe con este

Código:
local lvldodge = 48913
local percent = 0.5
local bandera = {}


function onStatsChange(cid, attacker, type, combat, value)
if bandera[cid] then
bandera[cid] = nil
return true
end
if type == STATSCHANGE_HEALTHLOSS and isCreature(attacker) then
if (getPlayerStorageValue(cid, lvldodge)*3) >= math.random (0,1000) then
value = math.ceil(value*(percent))
bandera[cid] = true
doTargetCombatHealth(attacker, cid, combat, -value, -value, 255)
doSendAnimatedText(getCreaturePos(cid), "DODGE", 6)
return false
end
end
return true
end



[Sistema] Critical Skill System DODGE YNU5B25
Ver perfil de usuario https://www.tibiaface.com

10default Re: [Sistema] Critical Skill System DODGE el Lun Mayo 07, 2018 1:40 pm

Deget92

Deget92
Miembro
Miembro
todavía no funciona en las personas .. No tengo errores en la consola

Ver perfil de usuario

11default Re: [Sistema] Critical Skill System DODGE el Lun Mayo 07, 2018 6:23 pm

[Admin] God Maya

[Admin] God Maya
Administrador
Administrador
[Tienes que estar registrado y conectado para ver este vínculo] escribió:todavía no funciona en las personas .. No tengo errores en la consola

prueba

Código:
local storagedodge = 48913 -- storage do dodge
local cor = 35 -- cor do texto
local effect = 30 -- id do magic effect
local msg = "DODGE" -- msg
 
local dodge = {
    {min = 1, max = 2, chance = 10}, -- se o dodge tiver entre 1 e 2 tem 10% de chance de da dodge.
    {min = 3, max = 4, chance = 15}, -- podem ser configurada portanto que não passe do limite
    {min = 5, max = 6, chance = 20}, -- vocês pode adicionar mas se quiserem
    {min = 7, max = 8, chance = 25},
    {min = 9, max = 10, chance = 30},
    {min = 11, max = math.huge, chance = 35}
}
 
function onStatsChange(cid, attacker, type, combat, value)
    if not isCreature(cid) then
        return false
    end
    for _, tudo in pairs(dodge) do
        if getPlayerStorageValue(cid, storagedodge) >= tudo.min and getPlayerStorageValue(cid, storagedodge) <= tudo.max then
            local chancex = math.random(1, 100)
            if chancex <= tudo.chance then
                if combat ~= COMBAT_HEALING then
                    doSendMagicEffect(getCreaturePosition(cid), effect)
                    doSendAnimatedText(getCreaturePosition(cid), msg, cor)
                    return false
                end
            end
        end
    end
    return true
end



[Sistema] Critical Skill System DODGE YNU5B25
Ver perfil de usuario https://www.tibiaface.com

12default Re: [Sistema] Critical Skill System DODGE el Lun Mayo 07, 2018 10:22 pm

[Tienes que estar registrado y conectado para ver este vínculo] escribió:
The_Pain escribió:El Script esta bueno pero... le falta una bandera de control.

Código:
--[[Critical System
-------------------------  By Night Wolf]]


local lvlcrit = 48913
local multiplier = 1.5
local bandera = {}

function onStatsChange(cid, attacker, type, combat, value)
if bandera[cid] then
bandera[cid] = nil
return true
end
if isPlayer(attacker) and (not (attacker == cid)) and (type == STATSCHANGE_HEALTHLOSS or type == STATSCHANGE_MANALOSS)  then
if (getPlayerStorageValue(attacker, lvlcrit)*3) >= math.random (0,1000) then
dano = math.ceil(value*(multiplier))
bandera[cid] = true
doTargetCombatHealth(attacker, cid, combat, -dano, -dano, 255)
doSendAnimatedText(getCreaturePos(attacker), "CRITICAL!!", 144)
return false
end
end
return true
end



Código:
if bandera[cid] then   
bandera[cid] = nil
return true
end

en anterior pretegia el attack pero aqui lo estas protegiendo el cid este me imagino es el player el que esta pegando ?

En realidad no se necesita una tabla, solo una variable booleana para ello, solo es tabla por lujo. funciona 100% igual sea con attacker o cid, o cualquier numero constante



Si necesitas hospedaje para tu servidor usa este enlace y mira los buenos planes de Windows y Linux:
Si tu cuenta de PayPal no esta verificada no importara, igual aceptan pagos con cuentas no verificadas.


[Sistema] Critical Skill System DODGE TRJEB8aSRYK5IulEU6ilJw
Ver perfil de usuario

13default Re: [Sistema] Critical Skill System DODGE el Vie Nov 23, 2018 11:04 am

darksenki

darksenki
Miembro
Miembro
me di cuenta de algo que la configuracion de critical esta afectada por el config.lua

Ver perfil de usuario

14default Re: [Sistema] Critical Skill System DODGE el Vie Mayo 24, 2019 2:11 am

Jemrelias5

Jemrelias5
Miembro
Miembro
Hola amigos porque cuando tengo utamo vita y me pegan no me salen las letras de Dodge y cuando se me acaba el utamo y me pegan ay si se ven las letras donde le puedo aumentar el ataque al critical veo que pega lo mismo

Ver perfil de usuario

15default Re: [Sistema] Critical Skill System DODGE el Vie Mayo 24, 2019 7:58 am

[Admin] God Maya

[Admin] God Maya
Administrador
Administrador
[Tienes que estar registrado y conectado para ver este vínculo] escribió:Hola amigos porque cuando tengo utamo vita y me pegan no me salen las letras de Dodge y cuando se me acaba el utamo y me pegan ay si se ven las letras donde le puedo aumentar el ataque al critical veo que pega lo mismo


if (getPlayerStorageValue(attacker, lvlcrit)*3) ------ el multiplicador 3 aumentalo



[Sistema] Critical Skill System DODGE YNU5B25
Ver perfil de usuario https://www.tibiaface.com

Contenido patrocinado


Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje (Página 1 de 1.)

TibiaFace » RECURSOS » Mods & Sistema » [Sistema] Critical Skill System DODGE

Permisos de este foro:
No puedes responder a temas en este foro.

Temas Recomendados×+

 

BienvenidosTibiaFace es una comunidad de Open Tibia. Para participar debes estar registrado (click para Regístrate).