• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

Lua Incredible Old Witch (Monster DEBUG)

Saper1995

Technologic
Joined
Jul 11, 2009
Messages
104
Reaction score
3
Location
Poland
Hi! I created this rune to the needs of my server and I have a problem. After a certain amount of use the runes on a monster and when i try use rune again then something do debug tibia client. I don't know what i write in code wrong. Please for help.


Code:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_TELEPORT)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SUDDENDEATH)
local arrea = {
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 1, 1, 3, 1, 1, 0, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
}
local area = createCombatArea(arrea)
setCombatArea(combat, area)

local condition1 = createConditionObject(CONDITION_OUTFIT)
setConditionParam(condition1, CONDITION_PARAM_TICKS, 20000)
local condition2 = createConditionObject(CONDITION_OUTFIT)
setConditionParam(condition2, CONDITION_PARAM_TICKS, 20000)
local condition3 = createConditionObject(CONDITION_OUTFIT)
setConditionParam(condition3, CONDITION_PARAM_TICKS, 20000)
local condition4 = createConditionObject(CONDITION_OUTFIT)
setConditionParam(condition4, CONDITION_PARAM_TICKS, 20000)
local condition5 = createConditionObject(CONDITION_OUTFIT)
setConditionParam(condition5, CONDITION_PARAM_TICKS, 20000)
local condition6 = createConditionObject(CONDITION_OUTFIT)
setConditionParam(condition6, CONDITION_PARAM_TICKS, 20000)
local condition7 = createConditionObject(CONDITION_OUTFIT)
setConditionParam(condition7, CONDITION_PARAM_TICKS, 20000)
local condition8 = createConditionObject(CONDITION_OUTFIT)
setConditionParam(condition8, CONDITION_PARAM_TICKS, 20000)

function onCastSpell(cid, var)
n = math.random(1,100)
if n <= 20 then
doRemoveCondition(cid, condition1)
doRemoveCondition(cid, condition2)
doRemoveCondition(cid, condition3)
doRemoveCondition(cid, condition4)
doRemoveCondition(cid, condition5)
doRemoveCondition(cid, condition6)
doRemoveCondition(cid, condition7)
doRemoveCondition(cid, condition8)
addOutfitCondition(condition1, {lookType = 60})
setCombatCondition(combat, condition1)
elseif n > 21 and n <= 40 then
doRemoveCondition(cid, condition1)
doRemoveCondition(cid, condition2)
doRemoveCondition(cid, condition3)
doRemoveCondition(cid, condition4)
doRemoveCondition(cid, condition5)
doRemoveCondition(cid, condition6)
doRemoveCondition(cid, condition7)
doRemoveCondition(cid, condition8)
addOutfitCondition(condition2, {lookType = 116})
setCombatCondition(combat, condition2)
elseif n > 41 and n <= 50 then
doRemoveCondition(cid, condition1)
doRemoveCondition(cid, condition2)
doRemoveCondition(cid, condition3)
doRemoveCondition(cid, condition4)
doRemoveCondition(cid, condition5)
doRemoveCondition(cid, condition6)
doRemoveCondition(cid, condition7)
doRemoveCondition(cid, condition8)
addOutfitCondition(condition3, {lookType = 21})
setCombatCondition(combat, condition3)
elseif n > 51 and n <= 60 then
doRemoveCondition(cid, condition1)
doRemoveCondition(cid, condition2)
doRemoveCondition(cid, condition3)
doRemoveCondition(cid, condition4)
doRemoveCondition(cid, condition5)
doRemoveCondition(cid, condition6)
doRemoveCondition(cid, condition7)
doRemoveCondition(cid, condition8)
addOutfitCondition(condition4, {lookType = 111})
setCombatCondition(combat, condition4)
elseif n > 61 and n <= 70 then
doRemoveCondition(cid, condition1)
doRemoveCondition(cid, condition2)
doRemoveCondition(cid, condition3)
doRemoveCondition(cid, condition4)
doRemoveCondition(cid, condition5)
doRemoveCondition(cid, condition6)
doRemoveCondition(cid, condition7)
doRemoveCondition(cid, condition8)
addOutfitCondition(condition5, {lookType = 45})
setCombatCondition(combat, condition5)
elseif n > 71 and n <= 80 then
doRemoveCondition(cid, condition1)
doRemoveCondition(cid, condition2)
doRemoveCondition(cid, condition3)
doRemoveCondition(cid, condition4)
doRemoveCondition(cid, condition5)
doRemoveCondition(cid, condition6)
doRemoveCondition(cid, condition7)
doRemoveCondition(cid, condition8)
addOutfitCondition(condition6, {lookType = 32})
setCombatCondition(combat, condition6)
elseif n > 81 and n <= 90 then
doRemoveCondition(cid, condition1)
doRemoveCondition(cid, condition2)
doRemoveCondition(cid, condition3)
doRemoveCondition(cid, condition4)
doRemoveCondition(cid, condition5)
doRemoveCondition(cid, condition6)
doRemoveCondition(cid, condition7)
doRemoveCondition(cid, condition8)
addOutfitCondition(condition7, {lookType = 106})
setCombatCondition(combat, condition7)
elseif n > 91 and n <= 100 then
doRemoveCondition(cid, condition1)
doRemoveCondition(cid, condition2)
doRemoveCondition(cid, condition3)
doRemoveCondition(cid, condition4)
doRemoveCondition(cid, condition5)
doRemoveCondition(cid, condition6)
doRemoveCondition(cid, condition7)
doRemoveCondition(cid, condition8)
addOutfitCondition(condition8, {lookType = 399})
setCombatCondition(combat, condition8)
end
return doCombat(cid, combat, var)
end


# NO ERROR IN CONSOLE
Debug arises only when the rune is used on a monster too many times.
(Using the runes on the player does not create debug)
 
Debug Assertation 10.10 Network.cpp 955
.
.
.
.
.
Player.cpp 343: exception occurred, reason:
Network.cpp 980: exception occurred (ErrorCode = 0), reason:
Network.cpp 955: assertion failed (BufferSize = 0) (NextToWrote = 24590), reason:
BufferSize>0

AND WHAT IS A PROBLEM?
 
Last edited:
Back
Top