Bom esse script foi postado em outro forum la sou conhecido como Mock e venho postar aqui tambem.
Bom esse script consta apenas um Bot que limpa o mapa.
porem não e um script comun e um script revolucionario
Bom antes de ver o script sugiro ver o video:
http://br.youtube.com/watch?v=KaQlnGKkVfY
Agora qu voçê ja viu vamos ao CONFIG 1º
Crie um arquivo chamado
lixoconfig.lua
Ai nele ponha esse script:
---------------------Bot cleanner config by Mock---------- -----------------------Feito exclusivamente para ot net e Xtibia----- ----- Voçê não tem autorização para remover os creditos velocidade = 700 --- Velocidade em milisegundos que ele ira dar 1 passo. Efeito_normal = 46 -- magic effect do bot (nesse caso seria aquela plantinha carnivora verde exclusoes1 = 1740 --- Id de item que não sera deleto pelo bot (esseção) exclusoes2 = 2106 --- Id de item que não sera deleto pelo bot (esseção) exclusoes3 = 2207 --- Id de item que não sera deleto pelo bot (esseção) exclusoes4 = 1027 --- Id de item que não sera deleto pelo bot (esseção) exclusoes5 = 7840 --- Id de item que não sera deleto pelo bot (esseção) exclusoes6 = 2207 --- Id de item que não sera deleto pelo bot (esseção) Bomb_chance = 6 --- Chance de ele usar um "Clean berserk" Bomb_efeito = 13 --- Magic effect do "clean berserk" ----=======---- ----Atenção! ----Antes de usar leia atentamente a isto. ----As exclusoes acima são de ID's de itens que não serão deletados. ----Apenas itens que se movem são deletados. ----E deletado apenas 1 item por vez. ----Para delimitar uma area que ele não passa em volta desta area ponha action id 500 exemplo: Casas NPCS ----O action id DEVE ser posto no chao! ----======----
Bom feito isso agora fassa o seguinte
va no actions.xml add esta tag:
<action actionid="1473" script="lixo.lua" />
Agora em seu map editor ponha um action id 1473 no meio do templo no chao em uma alavanca o que voçê quiser (pois so asses 6+ vai poder dar use)
feito isso sugjiro voçê por action id 500 no chao em volta do templo (CHAO! não conta como bordas paredes itens no chao é o chao mesmo o tile o sqm!)
Não deixe 1 brecha no qual seje possivel ele passar pois esse bot é perigoso se ele entra em uma house ele não ta nen ai ele sai limpando.
ele atravessa paredes
anda em sqms sem ground! (fica aparecendo msg de erro na janelinha do server )
Bom agora preparem-se pois ai vem o script
Script!
---------------Bot cleanner By mock-------------- ---------------Esclusivo para ot net e Xtibia------------- --------------- Hail limao server :) Hail ot net Hail xtibia---- dofile('lixoconfig.lua') local function andar(varli) ----- Falando local random = math.random(1,220) if random == 15 then doSendAnimatedText(varli.topos,"Olá",TEXTCOLOR_DAR KRED) elseif random == 20 then doSendAnimatedText(varli.topos,"Vou",TEXTCOLOR_DAR KRED) doSendAnimatedText({x = varli.topos.x+1, y = varli.topos.y ,z = varli.topos.z},"Destruir",TEXTCOLOR_DARKRED) elseif random == 25 then doSendAnimatedText(varli.topos,"Ahahaha",TEXTCOLOR _DARKRED) elseif random == 30 then doSendAnimatedText(varli.topos,"xD",TEXTCOLOR_DARK RED) elseif random == 35 then doSendAnimatedText(varli.topos,"Hail",TEXTCOLOR_DA RKRED) elseif random == 40 then doSendAnimatedText(varli.topos,"Blz?",TEXTCOLOR_DA RKRED) elseif random == 45 then doSendAnimatedText(varli.topos,"",TEXTCOLOR_DAR KRED) elseif random ==50 then doSendAnimatedText(varli.topos,"Limpo",TEXTCOLOR_D ARKRED) elseif random == 55 then doSendAnimatedText(varli.topos,":D",TEXTCOLOR_DARK RED) elseif random == 60 then doSendMagicEffect(varli.topos,math.random(1,53)) end if math.random(1,Bomb_chance) == 5 then maspos1 = {x = varli.topos.x, y = varli.topos.y +1,z = varli.topos.z,stackpos=255} doSendMagicEffect(maspos1,Bomb_efeito) Items = getThingfromPos(maspos1) if Items.itemid > 0 then if (isPlayer(Items.uid) == TRUE) then doSendAnimatedText(maspos1,"Player", TEXTCOLOR_PURPLE) else if Items.itemid == exclusoes1 or Items.itemid == exclusoes2 or Items.itemid == exclusoes3 or Items.itemid == exclusoes4 or Items.itemid == exclusoes5 or Items.itemid == exclusoes6 then doSendAnimatedText(maspos1,"Block", TEXTCOLOR_LIGHTGREEN) doSendMagicEffect(maspos1,31) else doRemoveItem(Items.uid, -1) doSendMagicEffect(maspos1,Efeito_normal) doSendAnimatedText(maspos1,"Deleted", TEXTCOLOR_DARKRED) end end end maspos1 = {x = varli.topos.x, y = varli.topos.y -1,z = varli.topos.z,stackpos=255} doSendMagicEffect(maspos1,Bomb_efeito) Items = getThingfromPos(maspos1) if Items.itemid > 0 then if (isPlayer(Items.uid) == TRUE) then doSendAnimatedText(maspos1,"Player", TEXTCOLOR_PURPLE) else if Items.itemid == exclusoes1 or Items.itemid == exclusoes2 or Items.itemid == exclusoes3 or Items.itemid == exclusoes4 or Items.itemid == exclusoes5 or Items.itemid == exclusoes6 then doSendAnimatedText(maspos1,"Block", TEXTCOLOR_LIGHTGREEN) doSendMagicEffect(maspos1,31) else doRemoveItem(Items.uid, -1) doSendMagicEffect(maspos1,Efeito_normal) doSendAnimatedText(maspos1,"Deleted", TEXTCOLOR_DARKRED) end end end maspos1 = {x = varli.topos.x+1, y = varli.topos.y +1,z = varli.topos.z,stackpos=255} doSendMagicEffect(maspos1,Bomb_efeito) Items = getThingfromPos(maspos1) if Items.itemid > 0 then if (isPlayer(Items.uid) == TRUE) then doSendAnimatedText(maspos1,"Player", TEXTCOLOR_PURPLE) else if Items.itemid == exclusoes1 or Items.itemid == exclusoes2 or Items.itemid == exclusoes3 or Items.itemid == exclusoes4 or Items.itemid == exclusoes5 or Items.itemid == exclusoes6 then doSendAnimatedText(maspos1,"Block", TEXTCOLOR_LIGHTGREEN) doSendMagicEffect(maspos1,31) else doRemoveItem(Items.uid, -1) doSendMagicEffect(maspos1,Efeito_normal) doSendAnimatedText(maspos1,"Deleted", TEXTCOLOR_DARKRED) end end end maspos1 = {x = varli.topos.x-1, y = varli.topos.y +1,z = varli.topos.z,stackpos=255} doSendMagicEffect(maspos1,Bomb_efeito) Items = getThingfromPos(maspos1) if Items.itemid > 0 then if (isPlayer(Items.uid) == TRUE) then doSendAnimatedText(maspos1,"Player", TEXTCOLOR_PURPLE) else if Items.itemid == exclusoes1 or Items.itemid == exclusoes2 or Items.itemid == exclusoes3 or Items.itemid == exclusoes4 or Items.itemid == exclusoes5 or Items.itemid == exclusoes6 then doSendAnimatedText(maspos1,"Block", TEXTCOLOR_LIGHTGREEN) doSendMagicEffect(maspos1,31) else doRemoveItem(Items.uid, -1) doSendMagicEffect(maspos1,Efeito_normal) doSendAnimatedText(maspos1,"Deleted", TEXTCOLOR_DARKRED) end end end maspos1 = {x = varli.topos.x-1, y = varli.topos.y -1,z = varli.topos.z,stackpos=255} doSendMagicEffect(maspos1,Bomb_efeito) Items = getThingfromPos(maspos1) if Items.itemid > 0 then if (isPlayer(Items.uid) == TRUE) then doSendAnimatedText(maspos1,"Player", TEXTCOLOR_PURPLE) else if Items.itemid == exclusoes1 or Items.itemid == exclusoes2 or Items.itemid == exclusoes3 or Items.itemid == exclusoes4 or Items.itemid == exclusoes5 or Items.itemid == exclusoes6 then doSendAnimatedText(maspos1,"Block", TEXTCOLOR_LIGHTGREEN) doSendMagicEffect(maspos1,31) else doRemoveItem(Items.uid, -1) doSendMagicEffect(maspos1,Efeito_normal) doSendAnimatedText(maspos1,"Deleted", TEXTCOLOR_DARKRED) end end end maspos1 = {x = varli.topos.x+1, y = varli.topos.y -1,z = varli.topos.z,stackpos=255} doSendMagicEffect(maspos1,Bomb_efeito) Items = getThingfromPos(maspos1) if Items.itemid > 0 then if (isPlayer(Items.uid) == TRUE) then doSendAnimatedText(maspos1,"Player", TEXTCOLOR_PURPLE) else if Items.itemid == exclusoes1 or Items.itemid == exclusoes2 or Items.itemid == exclusoes3 or Items.itemid == exclusoes4 or Items.itemid == exclusoes5 or Items.itemid == exclusoes6 then doSendAnimatedText(maspos1,"Block", TEXTCOLOR_LIGHTGREEN) doSendMagicEffect(maspos1,31) else doRemoveItem(Items.uid, -1) doSendMagicEffect(maspos1,Efeito_normal) doSendAnimatedText(maspos1,"Deleted", TEXTCOLOR_DARKRED) end end end maspos1 = {x = varli.topos.x-1, y = varli.topos.y ,z = varli.topos.z,stackpos=255} doSendMagicEffect(maspos1,Bomb_efeito) Items = getThingfromPos(maspos1) if Items.itemid > 0 then if (isPlayer(Items.uid) == TRUE) then doSendAnimatedText(maspos1,"Player", TEXTCOLOR_PURPLE) else if Items.itemid == exclusoes1 or Items.itemid == exclusoes2 or Items.itemid == exclusoes3 or Items.itemid == exclusoes4 or Items.itemid == exclusoes5 or Items.itemid == exclusoes6 then doSendAnimatedText(maspos1,"Block", TEXTCOLOR_LIGHTGREEN) doSendMagicEffect(maspos1,31) else doRemoveItem(Items.uid, -1) doSendMagicEffect(maspos1,Efeito_normal) doSendAnimatedText(maspos1,"Deleted", TEXTCOLOR_DARKRED) end end end maspos1 = {x = varli.topos.x+1, y = varli.topos.y ,z = varli.topos.z,stackpos=255} doSendMagicEffect(maspos1,Bomb_efeito) Items = getThingfromPos(maspos1) if Items.itemid > 0 then if (isPlayer(Items.uid) == TRUE) then doSendAnimatedText(maspos1,"Player", TEXTCOLOR_PURPLE) else if Items.itemid == exclusoes1 or Items.itemid == exclusoes2 or Items.itemid == exclusoes3 or Items.itemid == exclusoes4 or Items.itemid == exclusoes5 or Items.itemid == exclusoes6 then doSendAnimatedText(maspos1,"Block", TEXTCOLOR_LIGHTGREEN) doSendMagicEffect(maspos1,31) else doRemoveItem(Items.uid, -1) doSendMagicEffect(maspos1,Efeito_normal) doSendAnimatedText(maspos1,"Deleted", TEXTCOLOR_DARKRED) end end end end ---- Andando dire = math.random(1,4) if dire == 1 then maspos = {x = varli.topos.x, y = varli.topos.y +1,z = varli.topos.z,stackpos=255} Items = getThingfromPos(maspos) ------------------- Itempost = {x = varli.topos.x, y = varli.topos.y +1,z = varli.topos.z,stackpos=0} val = getThingfromPos(Itempost) if val.actionid ~= 500 then if Items.itemid > 0 then if (isPlayer(Items.uid) == TRUE) then doSendAnimatedText(maspos,"Player", TEXTCOLOR_PURPLE) varli = {cid = varli.cid, topos = maspos} else if Items.itemid == exclusoes1 or Items.itemid == exclusoes2 or Items.itemid == exclusoes3 or Items.itemid == exclusoes4 or Items.itemid == exclusoes5 or Items.itemid == exclusoes6 or val.actionid == 500 then doSendAnimatedText(maspos,"Block", TEXTCOLOR_LIGHTGREEN) masposa = {x = maspos.x, y = maspos.y -1,z = maspos.z,stackpos=255} varli = {cid = varli.cid, topos = masposa} doSendMagicEffect(masposa,31) else doRemoveItem(Items.uid, -1) doSendMagicEffect(maspos,Efeito_normal) doSendAnimatedText(maspos,"Deleted", TEXTCOLOR_DARKRED) varli = {cid = varli.cid, topos = maspos} end end else varli = {cid = varli.cid, topos = maspos} end else doSendAnimatedText(maspos,"Block", TEXTCOLOR_LIGHTGREEN) masposa = {x = maspos.x, y = maspos.y -1,z = maspos.z,stackpos=255} varli = {cid = varli.cid, topos = masposa} doSendMagicEffect(masposa,31) end --------------------- doSendMagicEffect(maspos,Efeito_normal) addEvent(andar, velocidade, varli) end if dire == 2 then maspos = {x = varli.topos.x, y = varli.topos.y -1,z = varli.topos.z,stackpos=255} Items = getThingfromPos(maspos) ----------- Itempost = {x = varli.topos.x, y = varli.topos.y -1,z = varli.topos.z,stackpos=0} val = getThingfromPos(Itempost) if val.actionid ~= 500 then if Items.itemid > 0 then if (isPlayer(Items.uid) == TRUE) then doSendAnimatedText(maspos,"Player", TEXTCOLOR_PURPLE) varli = {cid = varli.cid, topos = maspos} else if Items.itemid == exclusoes1 or Items.itemid == exclusoes2 or Items.itemid == exclusoes3 or Items.itemid == exclusoes4 or Items.itemid == exclusoes5 or Items.itemid == exclusoes6 or val.actionid == 500 then doSendAnimatedText(maspos,"Block", TEXTCOLOR_LIGHTGREEN) masposa = {x = maspos.x, y = maspos.y +1,z = maspos.z,stackpos=2} varli = {cid = varli.cid, topos = masposa} doSendMagicEffect(masposa,31) else doRemoveItem(Items.uid, -1) doSendMagicEffect(maspos,9) doSendAnimatedText(maspos,"Deleted", TEXTCOLOR_DARKRED) varli = {cid = varli.cid, topos = maspos} end end else varli = {cid = varli.cid, topos = maspos} end else doSendAnimatedText(maspos,"Block", TEXTCOLOR_LIGHTGREEN) masposa = {x = maspos.x, y = maspos.y +1,z = maspos.z,stackpos=2} varli = {cid = varli.cid, topos = masposa} doSendMagicEffect(masposa,31) end --------------------------- doSendMagicEffect(maspos,Efeito_normal) addEvent(andar, velocidade, varli) end if dire == 3 then maspos = {x = varli.topos.x +1, y = varli.topos.y ,z = varli.topos.z,stackpos=255} Items = getThingfromPos(maspos) Itempost = {x = varli.topos.x +1, y = varli.topos.y ,z = varli.topos.z,stackpos=0} val = getThingfromPos(Itempost) if val.actionid ~= 500 then if Items.itemid > 0 then if (isPlayer(Items.uid) == TRUE) then doSendAnimatedText(maspos,"Player", TEXTCOLOR_PURPLE) varli = {cid = varli.cid, topos = maspos} else if Items.itemid == exclusoes1 or Items.itemid == exclusoes2 or Items.itemid == exclusoes3 or Items.itemid == exclusoes4 or Items.itemid == exclusoes5 or Items.itemid == exclusoes6 or val.actionid == 500 then doSendAnimatedText(maspos,"Block", TEXTCOLOR_LIGHTGREEN) masposa = {x = maspos.x -1, y = maspos.y ,z = maspos.z,stackpos=255} varli = {cid = varli.cid, topos = masposa} doSendMagicEffect(masposa,31) else doRemoveItem(Items.uid, -1) doSendMagicEffect(maspos,9) doSendAnimatedText(maspos,"Deleted", TEXTCOLOR_DARKRED) varli = {cid = varli.cid, topos = maspos} end end else varli = {cid = varli.cid, topos = maspos} end else doSendAnimatedText(maspos,"Block", TEXTCOLOR_LIGHTGREEN) masposa = {x = maspos.x -1, y = maspos.y ,z = maspos.z,stackpos=255} varli = {cid = varli.cid, topos = masposa} doSendMagicEffect(masposa,31) end --------------------- doSendMagicEffect(maspos,Efeito_normal) addEvent(andar, velocidade, varli) end if dire == 4 then maspos = {x = varli.topos.x -1, y = varli.topos.y ,z = varli.topos.z,stackpos=255} Items = getThingfromPos(maspos) Itempost = {x = varli.topos.x -1, y = varli.topos.y ,z = varli.topos.z,stackpos=0} val = getThingfromPos(Itempost) if val.actionid ~= 500 then if Items.itemid > 0 then if (isPlayer(Items.uid) == TRUE) then doSendAnimatedText(maspos,"Player", TEXTCOLOR_PURPLE) varli = {cid = varli.cid, topos = maspos} else if Items.itemid == exclusoes1 or Items.itemid == exclusoes2 or Items.itemid == exclusoes3 or Items.itemid == exclusoes4 or Items.itemid == exclusoes5 or Items.itemid == exclusoes6 then doSendAnimatedText(maspos,"Block", TEXTCOLOR_LIGHTGREEN) masposa = {x = maspos.x +1, y = maspos.y ,z = maspos.z,stackpos=255} varli = {cid = varli.cid, topos = masposa} doSendMagicEffect(masposa,31) else doRemoveItem(Items.uid, -1) doSendMagicEffect(maspos,Efeito_normal) doSendAnimatedText(maspos,"Deleted", TEXTCOLOR_DARKRED) varli = {cid = varli.cid, topos = maspos} end end else varli = {cid = varli.cid, topos = maspos} end else doSendAnimatedText(maspos,"Block", TEXTCOLOR_LIGHTGREEN) masposa = {x = maspos.x +1, y = maspos.y ,z = maspos.z,stackpos=255} varli = {cid = varli.cid, topos = masposa} doSendMagicEffect(masposa,31) end ------------------- doSendMagicEffect(maspos,Efeito_normal) addEvent(andar, velocidade, varli) end end function onUse(cid, item, frompos, item2, topos) if getPlayerAccess(cid) >= 3 then varli = {cid = cid, topos = topos} addEvent(andar, velocidade, varli) end end
Bom crie um arquivo.lua ponha o nome de lixo.lua salve ligue seu bot e deixe ele o dia todo limpando o templo quando players jogarem itens no chao e ele passar por la ele vai limpar
*Ele não ve onde os itens estão
*O movimento e aleatorio
*Se ele passar por npcs vai ficar dando mensagem de erro
*Cuidado pois se ele sair da area que voçê especificou pelo map por um sqm sem action id ele pode ir nas houses.
voçê pode por quantos quiser de uma vez.
*Para parar o bot e so usar o comando /reload actions
Como esse script e meio revolucionario eu peço poucas coisas:
Comenten
Ponham em seus ot serves (se possivel)
Podem modificar o bot avontade contanto que não tire os creditos
Flws
Vou dar mais atenção a esse forum tambem vou postar meus outros scritps aqui tambem.
flws