Ir para conteúdo

Aluccard

Membro
  • Registro em

  • Última visita

Tudo que Aluccard postou

  1. Aluccard postou uma resposta no tópico em Suporte Bots
    Acho que é isso, testa ai qualquer coisa eu ajeito. auto 100 ifplayerattacking { if {$target.name != $pkname} { attack $pkname | wait 1000 }} Sem mais, Aluccard.
  2. Olá! Tambem tenho essa dúvida, porque um exemplo de menu que foi colocado no Tibia, foi o menu: Trade com Npcs, ele foi implantado por volta de 2008. Este mesmo foi implementado nas sources. Um outro exemplo, seria o questLog que nesse caso seria um menuPopup atraves também das sources. Voltando para o assunto otserv, temos tambem para OTPokemons, exemplos de Menus criados que seriam as "Spells Bar". Todos criados apartir das sources do servidor ou do client? Pelo que eu entendo, atraves das sorces do servidor chamamos esses menus. Porém eles estão implantados no client. Certo? Sem mais, Aluccard.
  3. Olá Renato! O script é muito util para muitos servidores, realmente será de grande ajuda! Até mesmo como uma grande forma de aprendizado! Você está de parabéns! Sem mais, Aluccard.
  4. Olá! A pedidos de muitos, resolvi fazer um npc de reflect que não possui segredo algum. Simplesmente coloque o código que segue abaixo na pasta indicada e pronto. Estará resolvido, você terá um npc que vende items de reflect. Coloque esse arquivo na pasta data\npc Cody.xml <?xml version="1.0" encoding="UTF-8"?> <npc name="Cody" script="data/npc/scripts/Cody.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="143" head="95" body="94" legs="132" feet="86" addons="2"/> </npc> Agora dentro da pasta data\npc\script Cody.lua local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end -- Config -- local reflectid = 2341 local percent = 20 local cost = 10000 function AddReflectItem(cid, message, keywords, parameters, node) if(not npcHandler:isFocused(cid)) then return false end if doPlayerRemoveMoney(cid, cost) then if doPlayerAddReflectedItem(cid, reflectid, percent) then return true else selfSay("No momento estou indisponivel.") doPlayerAddMoney(cid, cost) return false end else selSay("Voce não possui o dinheiro total!") return false end end reflect = keywordHandler:addKeyword({'reflect'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'You want to buy a reflect item? It cost '.. cost ..' gps'}) reflect:addChildKeyword({'yes'}, AddReflectItem, {}) reflect:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Alright then.', reset = true}) npcHandler:addModule(FocusModule:new()) É isso aí, um exemplo simples de como criar um item a sua escolha, só editar o reflectId e com custo em money só editar o cost. Sem mais, Aluccard. Obs: Esqueci de mencionar que É necessário ter o sistema de reflect que se encontra em mods no forum.
  5. Olá a Todos! Primeiramente o tutorial está em cima, siga ele corretamente que irá funcionar. Lembrando a todos que isso é um pequeno sistema de reflect. Ele não está configurado ainda para refletir cada tipo de elemento, ou seja, ele reflete todos. Continuando, lord bug sobre o npc, irei fazer um exemplo de um npc (o script dele) e postarei logo em seguida. Sobre o spell, quando tiver um pouco mais de tempo livre, faço um para o forum. Obrigado, Aluccard.
  6. Olá raulot! Deixa eu ver se eu entendi: Npc que pede um pokemon e dá item + pokemon para o player; Dúvida sobre se existe um meio para ativar pelo comando de gm um npc; Sobre a dúvida, sim isso é possivel, logo menos se não houver nenhuma resposta do seu tópico eu faço um exemplo para ti desse comando. Ele pode ser feito atravez de TalkActions e assim executar um procedimento de iteração com o NPC. Outra saída tambem é você só sumonar o npc quando for ter o evento! Atenciosamente, Aluccard.
  7. Olá Doughell! Sim, já joguei sim, mas parei porque ficou meio monótomo. Olá lordbug! Sobre a pasta, como o próprio titulo do tópico diz, "MODS"... o XML é para ser colocado na pasta MODs. Grato, Aluccard.
  8. Warp System[1.0] Olá a todos do TibiaKing! Já estou a um tempo devendo mais um sisteminha para vocês e aqui está ele. Simples, eficaz e completamente editavel. Utilidade Esse sistema de Warp significa ao jogador poder teleportar para várias posições, já armazenadas no mapa, quando estiver em uma dessas posições. Mapa Estive imaginando como fazer essa posição no mapa e tive a ideia de deixa-la assim.. Porém vocês decidem, isso é só um exemplo. Warp Helper Quando o player utiliza o comando "!warp help" ou "!warp helper". Warp Locations Quando o player utiliza o comando "!warp pos" ou "!warp locations". Informações Extras Como você pode notar, quando o player utiliza o Warp Helper, aparece várias configurações extras. Por exemplo: premmium account, promotion, quest... Essas configurações você poderá editar no script para o jeito que desejar. Do mesmo jeito que vocês poderam editar essas configurações, tambem poderam adicionar novos warps para a lista, com seu relativo valor. Código warpSystem.xml Configs Obs¹: Se necessitas que um player tenha feito alguma quest para utilizar o sistema, basta colocar em needQuest ( true ) e em questStorage o valor do storage da quest desejada. Adicionando Warps No próprio code você encontrará as seguintes variaveis: warpTotals; warpNames; POS; VALUES; Para adicionar novas warps, precisamos somente altera-los... No código temos para três warps, adicionando mais uma: Conclusões Esse é um script fácil de se manipular, porém pode haver alguns erros que não foi percebidos ainda, por isso está na versão [1.0], pois já foi corrigido vários erros e assim modificado. A versão inicial foi [0.1] e pretendo altera-lo sempre que possivel. Deixando cada vez mais perfeito o sistema. Obs²: Qualquer dúvida é só postar no tópico ou enviar uma mp. Espero que tenham gostado, Aproveitem! Atenciosamente, Aluccard.
  9. Hiho. What server are u using? I tested it and worked fine... If u need any help, ask me with pm. See u again, Allucard.
  10. Aluccard postou uma resposta no tópico em BBot
    File name: GetClassName.exe Submission date: 2011-10-14 23:03:23 (UTC) Current status: finished Result: 12/ 41 (29.3%) Nossa, nem tinha visto o SCAN desse arquivo ainda, não dessa maneira! Realmente, mas ainda bem que só é necessario o uso dele se não souber a ClassName adequada. Sem mais, Aluccard.
  11. Aluccard postou uma resposta no tópico em BBot
    [bBot] - Custom Tibia Client (OTServers) Olá a Todos! Venho informar mais uma novidade que poucos deveram saber como fazer isso, como rodar o BBot para custom clients que possuem classnames diferentes. Primeiramente vamos precisar de 2 Programinhas: HexEditor - Um editor HEX. (Utilizei o Hex Editor Neo) GetClassName - Programinha para pegar o classname da aplicação. O ultimo citado encontra-se no final do tópico e estará anexado para download! (Ele foi encontrado na internet e por isso, usem por sua conta em risco) Obviamente você precisará tambem do BBot... (Creio que você deverá pagar para poder ter o bot) Valores: PayPal - 3 Reais (30Dias) Daol - 5 Reais (30Dias) Vamos ao que interessa? Primeiramente instale o BBot no seu computador e o Hex Editor tambem. Precisamos achar a Classname. Abra o GetClassName e capture a classname do Client desejado. Para capiturar abra-o e coloque o mouse em cima do titulo do client. Apos acharmos a classname do client desejado, vamos altera-lo agora. Alterando o BBot para receber o client Abra o Hex Editor e vá em File > Open > Open File... [selecione o BMega.Exe] Quando o arquivo estiver aberto, va agora em Edit > Find Coloque em Type > String ( 1252 (ANSI - LATINO I)) Find what: tibiaclient Sabemso que tibiaclient é a classname do tibia, logo se trocarmos ela pela outra o bot funcionará. Vamos lá? Após localizarmos o local do arquivo que possui a classname. Alteramos para a classname desejada. Salvando o arquivo. Depois vá em File > Save As... > "Digite um outro nome" Exemplo: BMega Custom.exe Após ter feito todas as alterações e salvado corretamente o seu arquivo. O BBot deverá estar funcionando. Abra o BBot agora e se divirta! Atenciosamente, Aluccard. GetClassName [Download] - GetClassName.zip
  12. Obrigado a todos! E vamos lá, estou a trazer uma novidade ao TibiaKings, um novo sistema que tive a idéia hoje! Aguardem! Sem mais, Aluccard.
  13. Olá augusto! Resolvi fazer esse script atraves da ideia do macnowfhael, usuario aqui do forum. Depois da idéia dele só coloquei no "papel". Obrigado, Aluccard.
  14. Aluccard postou uma resposta no tópico em Suporte Tibia OTServer
    Olá! Fiz um mod que possui o reflect Physical e o Magic tambem ao mesmo tempo. Talvez sirva para seu server. [MOD] Reflect System [0.1] Atenciosamente, Aluccard.
  15. Olá Tibia King's! Reflect System[0.1] Função Ao ser obtido um item que possua o atributo Reflect o player será capaz de refletir danos Fisicos e Mágicos ao mesmo tempo. A idéia geral desse script é bem simples mesmo. Quando o player receber um damage de uma criatura (monstro ou player) esse attack será refletido em uma certa porcentagem. Exemplo: 22:46 You see a golden amulet. It weighs 8.30 oz. [Reflect: 80%] <?xml version="1.0" encoding="UTF-8"?> <mod name="Reflect System" version="0.1" author="Aluccard" contact="" enabled="yes"> <description> Script que funciona para refletir danos para as creatures que o atacar. </description> <event type="login" name="regReflectDamage" event="script"><![CDATA[ function onLogin(cid) registerCreatureEvent(cid,"ReflectDamage") return true end ]]></event> <event type="statschange" name="ReflectDamage" event="script"><![CDATA[ local slotPos = {CONST_SLOT_NECKLACE, CONST_SLOT_FEET, CONST_SLOT_RING} function onStatsChange(cid, attacker, type, combat, value) local reflectPercent = 0 local dmg = value local playerPos = getCreaturePosition(cid) local attackerPos = getCreaturePosition(attacker) for i = 1, #slotPos do if getPlayerSlotItem(cid, slotPos[i]).uid > 1 then if getItemReflectPercent(getPlayerSlotItem(cid, slotPos[i]).uid) then reflectPercent = reflectPercent + getItemReflectPercent(getPlayerSlotItem(cid, slotPos[i]).uid) end end end if reflectPercent > 0 then dmg = math.ceil(-value*((100-reflectPercent)/100)) if (dmg < 0) then doCreatureAddHealth(cid, dmg) doSendAnimatedText(playerPos, -dmg, COLOR_RED) doSendMagicEffect(playerPos, 0) else doSendMagicEffect(playerPos, 3) end dmg = math.ceil(-value*(reflectPercent/100)) if (dmg < 0) then doCreatureAddHealth(attacker, dmg) doSendAnimatedText(attackerPos, -dmg, COLOR_RED) doSendDistanceShoot(playerPos, attackerPos, CONST_ANI_SMALLHOLY) end else return true end end]]></event> </mod> function getItemReflectPercent(itemuid) return getItemAttribute(itemuid, "reflectPercent") end function doPlayerAddReflectedItem(cid, itemid, percent) local item = doPlayerAddItem(cid, itemid) doItemSetAttribute(item, "description", "[Reflect: "..percent.."%]") doItemSetAttribute(item, "reflectPercent", percent) end Obs³: Para adicionarmos novos items com o atributo Reflect usamos o comando doPlayerAddReflectedItem(cid,itemid,percent). {itemid = id do item escolhido / percent = porcentagem do reflect} Creio que não esqueci de nada. Qualquer dúvida é só postar! Sem mais, Aluccard. Edit: Npc que vende Reflect Item Obs¹: Os items pode ser acumulativo. Ou seja, se o amuleto der 10% de reflect e o ring der 35%. O player possuirá um Reflect = 45%. [MOD]reflectSystem.xml Obs²: O código está meio enferrujado, mas funciona. Como podes ver o sistema está na versão 0.1 e irá ser atualizada com o tempo. ReflectLib.lua
  16. Aluccard postou uma resposta no tópico em Suporte Tibia OTServer
    Olá! Esse script que você está querendo seria um reflect physical, reflect magic ou ambos? Já vi em algum forum falando sobre o sistema de reflecte physical, porém o reflect magic seria algo mais complexo de produzir. Se desejas o reflect physical eu posso fazer o sistema aqui para o forum e para ti. Se cuida, Aluccard.
  17. Aluccard postou uma resposta no tópico em Suporte Bots
    Olá! Se não me engano você deve usar no igual do == uma ? para capiturar se na mensagem existe alguma string igual a selecionada, com isso o script ficaria: auto 100 if [$curmsg.isdefault && $curmsg.sender == 'LEADERNAME' && $curmsg.content ? 'exevo gran mas flam'] {say 'exevo gran mas flam' | wait 1630} Existe outras maneiras de fazer essa hotkey tambem usando o foreach 'newmessages': auto 100 listas 'Combo Ue' | foreach 'newmessages' $m if [$m.content ? 'exevo gran mas flam' && $m.sender == 'LEADERNAME'] { say 'exevo gran mas flam' | wait 1630 } Obs¹: não testei ainda o script (ambos), qualquer bronca avisa aqui! Sem mais, Aluccard.
  18. Aluccard postou uma resposta no tópico em Suporte Tibia OTServer
    Olá! Fiz rapidinho aqui nem deu tempo de testar, amanhã eu testo qualquer coisa edit aqui. local config = { firstId = 2268, secId = 2268, thirdId = 2268, posTeleport = {x=32347,y=32228,z=7}, msg1 = "Ritual incomplete: first item.", msg2 = "Ritual incomplete: second item.", msg3 = "Ritual incomplete: third item.", msg4 = "Ritual completed: Congratulation!" } function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor) local corpse = { pos1 = getThingFromPos({x=32354,y=32228,z=7, stackpos=255}).itemid, pos2 = getThingFromPos({x=32354,y=32229,z=7, stackpos=255}).itemid, pos3 = getThingFromPos({x=32354,y=32230,z=7, stackpos=255}).itemid } local posTp = fromPosition if corpse.pos1 == config.firstId then if corpse.pos2 == config.secId then if corpse.pos3 == config.thirdId then posTp = config.posTeleport doPlayerSendTextMessage(cid, 20, config.msg4) else doPlayerSendTextMessage(cid, 20, config.msg3) end else doPlayerSendTextMessage(cid, 20, config.msg2) end else doPlayerSendTextMessage(cid, 20, config.msg1) end doTeleportThing(cid, posTp) doSendMagicEffect(posTp, CONST_ME_TELEPORT) return true end Tentei fazer de uma maneira mais simples para o entendimento, depois posto um mais organizado e mais eficiente! Atenciosamente, Aluccard.
  19. Olá! Só para quebrar o gelo! kkkk Felicidade é ter o que fazer. Nos fazemos para você. Veivanko Móveis para escritório. Sem mais, Aluccard.
  20. Olá! Tente explicar melhor seu pedido. Esse seu item é o que? (Armor? Amulet? Ring? Usable?) Você quer simplesmente que o item faça esse protection. Tente usar o attributes que existe no items.xml. [absorbpercentdeath], [absorbpercentfire], [absorbpercentholy], [absorbpercentice], [absorbpercentearth], [absorbpercentenergy], [absorbpercentphysical] Sem mais, Aluccard.
  21. É só por para quando apertar ESC o anuncio sumir! Ajudaria muito... Sem mais, Aluccard.
  22. Olá! Dá uma olhadinha nesse meu novo tópico. Inifinity Aol http://tibiaking.com/forum/topic/8195-infinity-aol/ Atenciosamente, Aluccard.
  23. Olá! A pedidos de usuarios, resolvi fazer esse script simples e eficaz. Como o própio nome do tópico diz: Aol Inifinito. No script possui um config onde pode ser alterado o ammyID = id do amuleto, lossExp = player perder exp, lossItems = player perder items. newAol.lua local config = { ammyID = 2130, lossExp = false, lossItems = false } function onDeath(cid, lastHitKiller, mostDamageKiller) if isPlayer(cid) then if (getPlayerSlotItem(cid, 2).itemid == config.ammyID) then if (config.lossExp == false) then doPlayerSetLossPercent(cid, experience, 0) end doCreatureSetDropLoot(cid, config.lossItems) return true end end return true end creaturescripts.xml <event type="death" name="NewAol" event="script" value="newAol.lua"/> Adicione no login.lua essa linha perto dos outros registercreatures. registerCreatureEvent(cid, "NewAol") Obs¹: Esse script serve para todos os players inclusive RedSkulls/BlackSkulls. Qualquer dúvida é só postar! Atenciosamente, Aluccard.
  24. Aluccard postou uma resposta no tópico em Recursos Avançados
    Olá! É sinistro criar um bot, acho que até hoje ninguem inventou. Por dois motivos: "Poucos players" e como normalmente visão o lucro... Sistema diferenciado, não existe o battlelist. Já fiz um Helper, com agumas funções, mas realmente básico! Seria uma ÓTIMA para o TibiaKing inovar mais uma vez e trazer o primeiro BOT para ZezeniaOnline! Atenciosamente, Aluccard.

Informação Importante

Confirmação de Termo