Ir para conteúdo

Líderes


Conteúdo Popular

Mostrando conteúdo com a maior reputação desde 18/05/2018 em todas áreas

  1. 6 pontos
    xWhiteWolf

    Magnus Challenger

    Fala galera, hoje vim trazer o projeto pronto do Magnus Challenger pra vocês instalarem no servidor de vocês! Pra quem não conhece é um sistema de Tasks baseado no Zezenia onde você pode escolher entre tasks de matar monstros ou de coletar certos items para o npc Magnus, um guerreiro famoso da cidade que está atolado de tarefas e precisa da sua ajuda! Peguei os aspectos que eu julguei serem os principais do modelo do Zezenia e editei com algumas coisas que eu achei que ficariam melhores. Quem quiser pode ver um vídeo comentado de como o sistema funciona: Dito isso vou ensinar vocês como instalar isso no server: Pra começar vá em data\creaturescripts\scripts e procure login.lua, agora vá até o final do arquivo e antes do último return true coloque essas linhas abaixo ainda em creaturescripts procure creaturescripts.xml e adicione essa linha junto com as outras que já estão lá (seguindo o padrão) <!-- TASK SYSTEM --> <event type="kill" name="tasksystem" script="tasksystem.lua"/> Agora crie um arquivo em creaturescripts\scripts com o nome de tasksystem.lua e adicione o seguinte à ele: Terminada a parte da contagem de kill vamos ao NPC em si. Crie um arquivo chamado Magnus.xml em data\npc e coloque isso dentro dele: Agora em data\npc\scripts crie um arquivo chamado zezeniaa.lua e adicione esse conteúdo dentro do arquivo: ~~~~~~~~~~~~~~~~ FEITO ISSO ESTÁ TERMINADO ~~~~~~~~~~~~~~~~~~ Agora aprendendo a configurar: No tasksystem vc pode editar isso daqui: Eu fiz um sistema onde se vc estiver em party com alguém e a pessoa matar os bixos conta como se você tivesse matado; Assim incentiva o pessoal a ir numa cave de Dragon e ao invés de matar quem está lá pra ficar sozinho na cave, eles vão chamar party pra fazerem a task juntos.. assim fazer amigos fica mais fácil e com maiores laços é maior a chance do povo não abandonar o seu server. Apenas digite "true" ou "false" pra ativar/desativar esse sistema e em baixo temos a distancia máxima pro monstro estar do cara que está fazendo a task pra contar o kill. Se a distancia entre o monstro e a pessoa for maior que 7 não vai contar pra ele a kill. No zezeniaa.lua as coisas que dão pra configurar são maiores mas são igualmente simples: Toda vez que vc pedir uma task short (curta) vc vai ter de 100 a 400 monstros pra matar, ele gera um número de 0 a 6 e multiplica por 5 e soma com os 100 iniciais.. o mesmo vale pra todos os outros valores. levelcollect é o level mínimo pra fazer tasks do tipo collect. time é o tempo em segundos que você vai ficar sem poder falar com o npc caso desista de alguma task, o padrão é 8 * 60 * 60 (8 horas) bonus é por quanto vai multiplicar caso vc permita que o npc escolha aleatoriamente entre todas as opções.. o padrão é 20% de bonus (1.2) multiplicador é uma coisa que eu adicionei pra ficar mais fácil mexer na fórmula sem cometer cagadas, se vc tá ganhando 10% de exp e quer ganhar 80% é só colocar 8 no multiplicador. Isso daqui é o banco de dados principal do sistema de kill, toda vez que vc escolher uma task do tipo fácil, médio, dificil ele vai acessar essas tabelas contendo o nome das criaturas.. vc pode facilmente adicionar novos nomes, o npc já está programado pra lidar com isso, apenas siga o padrão e mantenha sempre o último sem vírgula! Ex: adicionando Morgaroth na tabela de hard local hard = { [1] = "Giant Spider", [2] = "Dragon Lord", [3] = "Grim Reaper", [4] = "Demon", [5] = "Crystal Spider", [6] = "Demon Skeleton", [7] = "Juggernaut", [8] = "Destroyer", [9] = "Hand of Cursed Fate", [10] = "Morgaroth" } atente-se também pra não repetir o número no index.. se o anterior era [9] use [10]. O restante das tabelas são separadas para o banco de dados das tasks de collect: segue a mesma lógica da de kill só que aqui você tem o id dos itens que serão usados... aquela count não tem nada a ver com o item pois ele vai gerar tanto o item aleatoriamente quanto à count; Ex: [1] = {id = 5880, count = 20}, -- iron ore isso não significa que se cair iron ore (id 5880) irá cair sempre 20.. até porque eu poderia escolher uma task long e easy e pegar a task de trazer até 50 iron ores, apenas tente manter os padrões que são os intervalos definidos. No easy ele varia de 10 a 20, no medium ele varia de 20 a 35 e no hard de 40 a 50. Espero que vocês tenham curtido, é um sistema grande mas bem simples de se mexer... se tiverem quaisquer problemas podem comentar aqui. Deu trabalho fazer isso então se você gostou deixe o seu comentário aí e o seu "Gostei" que vai me incentivar a trazer mais coisas desse tipo pra cá. Abraços do lobo. PS: Pra sumonar o npc digite com o GOD: /n Magnus ou coloque ele pelo map editor.
  2. 6 pontos
    DdJs

    Dark Complex | Cave Hunt | 8.60

    Cave hunt - Dark Complex. Download: Here Scan: Here Imagens:
  3. 4 pontos
    DdJs

    Forbidden Village | 8.60

    Cave hunt - Forbidden Village. Download: Here Scan: Here Imagens:
  4. 3 pontos
    JZDJ

    Download Clients 11+ IP 127.0.0.1

    Olá galera do TK. Hoje eu trago vários clientes de Tibia 11+ com IP 127.0.0.1. Vi que alguns usuários não estão conseguindo algumas versões 11 então resolvi postar aqui. Estou disponibilizando o EXECUTÁVEL DO CLIENTE. Para que funcione é só colocar na pasta BIN da versão correspondente. Também disponibilizei a pasta completa compactada. Vamos ao que interessa. Tibia 11.43.5504 127.0.0.1-11.43.5504.exe SCAN do cliente Pasta completa: Tibia 11.43.5504.rar SCAN pasta completa Tibia 11.44.5516 127.0.0.1-11.44.5516.exe SCAN do cliente Pasta completa: Tibia 11.44.5516.rar SCAN pasta completa Tibia 11.46.5556 127.0.0.1-11.46.5556.exe SCAN do cliente Pasta completa: Tibia 11.46.5556.rar SCAN pasta completa Tibia 11.47.5640 127.0.0.1-11.47.5640.exe SCAN do cliente Pasta completa: Tibia_11_47.5640.rar SCAN pasta completa Tibia 11.47.5674 127.0.0.1-11.47.5674.exe SCAN do cliente Pasta completa: Tibia_11_47.5674.rar SCAN pasta completa Tibia 11.48.5712 127.0.0.1-11.48.5712.exe SCAN do cliente Pasta completa: Tibia_11_48.5712.rar SCAN pasta completa Tibia 11.48.5753 127.0.0.1-11.48.5753.exe SCAN do cliente Pasta completa: Tibia_11_48.5753.rar SCAN pasta completa Tibia 11.49.5813 127.0.0.1-11.49.5813.exe SCAN do cliente Pasta completa: Tibia_11_49.5813.rar SCAN pasta completa Tibia 11.49.5884 127.0.0.1-11.49.5884.exe SCAN do cliente Pasta completa: Tibia_11_49.5884.rar SCAN pasta completa Tibia 11.49.5921 127.0.0.1-11.49.5921.exe SCAN do cliente Pasta completa: Tibia_11_49.5921.rar SCAN pasta completa Tibia 11.49.5983 127.0.0.1-11.49.5983.exe SCAN do cliente Pasta completa: Tibia_11_49.5983.rar SCAN pasta completa Tibia 11.49.6018 127.0.0.1-11.49.6018.exe SCAN do cliente Pasta completa: Tibia 11.49.6018.rar SCAN pasta completa Tibia 11.49.6030 127.0.0.1-11.49.6030.exe SCAN do cliente Tibia 11.49.6030.rar SCAN pasta completa Tibia 11.50.6055 127.0.0.1-11.50.6055.exe SCAN do cliente Tibia 11.50.6055.rar SCAN pasta completa Tibia 11.51.6099 127.0.0.1-11.51.6099.exe SCAN do cliente Tibia 11.51.6099.rar SCAN pasta completa Tibia 11.52.6104 127.0.0.1-11.52.6104.exe SCAN do cliente Tibia 11.52.6104.rar SCAN pasta completa Tibia 11.55.6239 127.0.0.1-11.55.6239.exe SCAN do cliente Tibia 11.55.6239.rar SCAN pasta completa Tibia 11.56.6239 127.0.0.1-11.56.6239.exe SCAN do cliente Tibia 11.56.6239.rar SCAN pasta completa Tibia 11.57.6239 127.0.0.1-11.57.6239.exe SCAN do cliente Tibia 11.57.6239.rar SCAN pasta completa Tibia 11.58.6239 127.0.0.1-11.58.6239.exe SCAN do cliente Tibia 11.58.6239.rar SCAN pasta completa Tibia 11.58.6239 ATUALIZADO 127.0.0.1-11_58.6239.exe ATUALIZADO SCAN do cliente Tibia 11.58.6239 ATUALIZADO.rar SCAN pasta completa Tibia 11.59.6424 127.0.0.1-11.59.6424.exe SCAN do cliente Tibia 11.59.6424.rar SCAN pasta completa Tibia 11.60.6457 127.0.0.1-11.60.6457.exe SCAN do cliente Tibia 11.60.6457.rar SCAN pasta completa Tibia 11.65.6492 127.0.0.1-11.65.6492.exe SCAN do cliente Tibia 11.65.6492.rar SCAN pasta completa Tibia 11.65.6507 127.0.0.1-11.65.6507.exe SCAN do cliente Tibia 11.65.6507.rar SCAN pasta completa Tibia 11.66.6516 127.0.0.1-11.66.6516.exe SCAN do cliente Tibia 11.66.6516.rar SCAN pasta completa Tibia 11.70.6535 127.0.0.1-11.70.6535.exe SCAN do cliente Tibia 11.70.6535.rar SCAN pasta completa Tibia 11.70.6543 127.0.0.1-11.70.6543.rar SCAN do cliente Tibia 11.70.6543.rar SCAN pasta completa Tibia 11.70.6548 127.0.0.1-11.70.6548.rar SCAN do cliente Tibia 11.70.6548.rar SCAN pasta completa Tibia 11.70.6555 127.0.0.1-11.70.6555.rar SCAN do cliente Tibia 11.70.6555.rar SCAN pasta completa Espero que eu tenha ajudado. Créditos: A Cip pelos clientes e a mim por ter alterado os ips nos mesmos. REP+ é sempre bom e não dói. Abraços. ATT , Jaurez/JZDJ
  5. 3 pontos
    Daniel

    [NPC] Elfo Ferreiro V1.0

    Testado em: TFS 1.0 (10.31) Funciona em: TFS 1.0 e TFS 0.4 Descrição: Você leva uma determinada espada até o npc, fala com ele, ele vai pegar essa espada e ficar com ela por um certo tempo (3min), claro, você irá pagar uma quantia. Ao retornar, sua espada estará melhorada (no caso dos ids utilizados o npc irá trocar o item). Se houver algum bug, reporte que arrumaremos. Créditos: Jamison, Daniel. ---------- • ---------- Diálogo: 22:21 Daniel [250]: hi 22:21 Blacksmith Elf: Hello Daniel! I'm a Blacksmith Elf, I can transform your item! 22:21 Daniel [250]: transform 22:21 Blacksmith Elf: From time to time fate smiles upon those who take great risks and have strong dreams! If you have money, we can try to transform your umbral swords, axes, clubs, bows, crossbows or spellbooks. 22:21 Daniel [250]: club 22:21 Blacksmith Elf: One handed or two handed? 22:21 Daniel [250]: one handed 22:21 Blacksmith Elf: Do you want to spend your money to transform your crude umbral mace, yes or no? 22:21 Daniel [250]: yes 22:21 Blacksmith Elf: Great! Alright, I need a while to finish this club for you. Come ask me later. 22:22 Daniel [250]: hi 22:22 Blacksmith Elf: Hello Daniel! I'm a Blacksmith Elf, I can transform your item! 22:22 Daniel [250]: transform 22:22 Blacksmith Elf: Have you left anything here to transform ? 22:22 Daniel [250]: yes 22:22 Blacksmith Elf: You must wait until : 22:24:49. 22:25 Daniel [250]: hi 22:25 Blacksmith Elf: Hello Daniel! I'm a Blacksmith Elf, I can transform your item! 22:25 Daniel [250]: transform 22:25 Blacksmith Elf: Have you left anything here to transform ? 22:25 Daniel [250]: yes 22:25 Blacksmith Elf: Here you have it. ---------- • ---------- Fotos ---------- • ---------- Script: data/npc/Blacksmith Elf.lua data/npc/scripts/blacksmith_elf.lua
  6. 3 pontos
    Sttorm

    RESPONDIDO Script Anti-roubo para tfs 0.4

    @quemtuacha function onMoveItem(moveItem, frompos, position, cid) if getHouseFromPos(frompos) then if getPlayerGUID(cid) == getHouseOwner(getHouseFromPos(frompos)) then return true else doPlayerSendTextMessage(cid, 27, "Voce nao pode mover itens desta house") doSendMagicEffect(getCreaturePosition(cid), 3) return false end end end
  7. 3 pontos
    sirarcken

    Quem vende servidor Global 10.x - 11.xx ?

    De coração mesmo cara. Não compre, vão te vender gato por lebre. E oque ta rolando hoje em dia, o cara até pode não te roubar e passar a parada, mais sempre vai ter alguma coisa a mais pra te deixar de cabelo em pé. Pega algum dos que ja tem aqui e vai corrigindo você mesmo os erros... Contrata programadores, scripters, vai sair mais barato do que comprar um cheio de bug.
  8. 3 pontos
    sirarcken

    Cliente 10- Versão 11.75+

    Como todos sabem acabaram-se o suporte ao cliente 10 do tibia e bla bla. Mais eu com muita vontade de não deixar isso morrer, arrumei o cliente 10(versão 11.49) para ser adaptado aos futuros updates do global. cujo eu estarei fazendo isso até que uma alma boa crie ou arrume o objct pra ele ler todas as sprs e o fucking dat do 11. Neste cliente contem quase todas as sprites. Só não adicionei os addons, isso foi pra não dar de mão beijada, e também porque e quase 1k de sprite pra cada addon é chato fazer addon. Elas estão compatíveis com o cliente 10 e 11 então é o fim dos debugs pra quem sofria desse problema. Com o tempo estarei atualizando, no próximo update do global ja tento trazer as novidades Esse cliente é um upgrade no primeiro cliente que eu fiz que alguns ots usam. Por isso deixo algum credito a esses caras que usaram meu cliente bugado, e me fizeram procurar saber aonde era o erro. .Scan Download Algumas imagens. Créditos: 70% Ao dega 25 % Cjaker 2.5% TibiaDump 2.5% Mignari objct builder
  9. 3 pontos
    EddyHavoc

    [TFS 1.2] Modal Window Helper Lib

    Resumo A maneira atual para implementar Modal Window é um pouco complicada. Atualmente precisamos cria-la em algum lugar, registrar o evento, adicionar os botões em uma ordem específica, definir o ID da janela, dos botões e da escolha. Isso não é o ideal, então esta biblioteca foi criada pelo Non Sequitur para ajudar nisso. E eu estou trazendo para a OtServBrasil. Exemplo/ Tutorial Usando Modal Window Instalando Adicionar em data/lib/lib.lua dofile('data/lib/modalwindow.lua') Crie o arquivo modalwindow.lua com o seguinte conteúdo em data/lib if not modalWindows then modalWindows = { modalWindowConstructor = ModalWindow, nextFreeId = 500, windows = {} } end local MT = {} MT.__index = MT function ModalWindow(...) local args = {...} if type(args[1]) == 'table' then local self = setmetatable(args[1], MT) local id = modalWindows.nextFreeId self.id = id self.buttons = {} self.choices = {} self.players = {} self.created = false modalWindows.nextFreeId = id + 1 table.insert(modalWindows.windows, self) return self end return modalWindows.modalWindowConstructor(...) end function MT:setDefaultCallback(callback) self.defaultCallback = callback end function MT:addButton(text, callback) local button = {text = tostring(text), callback = callback} table.insert(self.buttons, button) return button end function MT:addButtons(...) for _, text in ipairs({...}) do table.insert(self.buttons, {text = tostring(text)}) end end function MT:addChoice(text) local choice = {text = tostring(text)} table.insert(self.choices, choice) return choice end function MT:addChoices(...) for _, text in ipairs({...}) do table.insert(self.choices, {text = tostring(text)}) end end function MT:setDefaultEnterButton(text) self.defaultEnterButton = text end function MT:setDefaultEscapeButton(text) self.defaultEscapeButton = text end function MT:setTitle(title) self.title = tostring(title) end function MT:setMessage(message) self.message = tostring(message) end local buttonOrder = { [4] = {3, 4, 2, 1}, [3] = {2, 3, 1}, [2] = {1, 2}, [1] = {1} } function MT:create() local modalWindow = modalWindows.modalWindowConstructor(self.id, self.title, self.message) local order = buttonOrder[math.min(#self.buttons, 4)] if order then for _, i in ipairs(order) do local button = self.buttons[i] modalWindow:addButton(i, button.text) button.id = i if button.text == self.defaultEnterButton then modalWindow:setDefaultEnterButton(i) elseif button.text == self.defaultEscapeButton then modalWindow:setDefaultEscapeButton(i) end end end for _, choice in ipairs(self.choices) do modalWindow:addChoice(_, choice.text) choice.id = _ end self.modalWindow = modalWindow end function MT:sendToPlayer(player) if not self.modalWindow then self:create() end player:registerEvent('ModalWindowHelper') self.players[player:getId()] = true return self.modalWindow:sendToPlayer(player) end Adicionar em data/creaturescripts/craturescripts.xml <event type="modalwindow" name="ModalWindowHelper" script="modalwindowhelper.lua" /> Crie o arquivo modalwindowhelper.lua com o seguinte conteúdo em data/creaturescripts/scripts/ function onModalWindow(player, modalWindowId, buttonId, choiceId) local modalWindow for _, window in ipairs(modalWindows.windows) do if window.id == modalWindowId then modalWindow = window break end end if not modalWindow then return true end local playerId = player:getId() if not modalWindow.players[playerId] then return true end modalWindow.players[playerId] = nil local choice = modalWindow.choices[choiceId] for _, button in ipairs(modalWindow.buttons) do if button.id == buttonId then local callback = button.callback or modalWindow.defaultCallback if callback then callback(button, choice) break end end end return true end Pronto! Espero que gostem. Posteriormente irei postar um tutorial de como usar/ aplicar e alguns scripts utilizando a Biblioteca.
  10. 2 pontos
    AlphaLove

    ADVENTURE RPG

    Apresento a vocês o Adventure RPG. Servidor que foi criado do 0 (zero). Totalmente m português (diálogos com npcs, magias, monstros, itens, etc..), novos monstros, novas magias, novos itens, sistemas e muitas coisas próprias do servidor. Vou citar alguns dos sistemas do nosso servidor: Craft Refinar Cozinhar Plantar Sistema de task por rank Autoloot totalmente próprio Barra de spells própria Mapa 100% próprio Shop Online Nosso servidor ficou em beta durante um ano e meio, sempre atualizando e melhorando. Porém, nosso servidor já está 100% jogável e pronto para receber nossos players. Portanto, gostaria de convidá-los a conhecer nosso servidor e se aventurar neste mundo cheio de aventuras. O servidor conta com 3 classes e 4 sub-classes, sendo elas: Arqueiro -> Caçador Guerreiro -> Gladiador Mago -> Mago das Trevas, Mago Curandeiro Não vou prolongar muito o diálogo, pois acredito que é mais fácil vocês tirarem suas próprias conclusões sobre o jogo da melhor forma, jogando. Link: http://www.adventurerpg.com.br/ Rates : Experience = 1.5 Skill = 2 Magic = 1 Loot = 1 Espero vocês lá ! UPDATE 26/05/2018 Nossos sistemas foram implantados e estão "tinindo" para melhorar ainda mais o nosso servidor. Segue algumas imagens dos sistemas implantados (Spell Box, Task por Rank, Auto Loot e Shop Online).
  11. 2 pontos
    Danyel Varejao

    [System] Auto Loot Perfect

    ~~~~~ * Auto Loot System 100% * ~~~~~ TFS 0.4 / TFS 0.3.7 Fala galerinha do Tibiaking, então, várias pessoas estão tendo problema com o sistema de autoloot, aqui vai um sistema que eu editei para melhorar o uso do mesmo. Sem muita enrolação vamos ao que interessa. 1° - Acesse a pasta data/lib e crie um arquivo chamado Auto_Loot.lua, coloque isso dentro do arquivo: 2° - Abra a pasta data/actions/scripts e crie um arquivo chamado Auto_Loot_Boost.lua, dentro dele adicione: 3° - Abra a pasta data/creaturescripts/scripts e crie um arquivo chamado Auto_Loot.lua, dentro dele adicione: 4° - Abra a pasta data/talkactions/scripts e crie um arquivo chamado Auto_Loot.lua, dentro dele adicione: 5° - Em data/actions/actions.xml adicione a seguinte tag: <!-- Auto Loot --> <action itemid="7443" event="script" value="Auto_Loot_Boost.lua"/> Altere o numero 7443 caso queira mudar o id do item do seu auto loot boost. 6° - Em data/creaturescripts/creaturescripts.xml adicione a seguinte tag: <!-- Auto Loot --> <event type="login" name="Auto_Loot_Login" event="script" value="Auto_Loot.lua"/> <event type="kill" name="Auto_Loot_Kill" event="script" value="Auto_Loot.lua"/> 7° - Em data/talkactions/talkactions.xml adicione a seguinte tag: <!-- Auto Loot --> <talkaction access="0-4" words="/autoloot;!autoloot" event="script" value="Auto_Loot.lua"/> Créditos 50% Killua(Vitor Bertolucci) 50% Danyel Varejão
  12. 2 pontos
    Considerações iniciais (Leia): Este conteúdo faz parte do meu PDF pessoal. Como vai demorar pra eu terminar, decidi publicar a primeira parte que fala das opções, menus e ferramentas do Remeres. Se você observou alguma explicação confusa, comente no tópico que eu trabalharei para melhorá-la. O conteúdo é exclusivo ao Tibia King, ele não deve ser copiado para qualquer sites, fóruns, blogs ou redes sociais. Plágio é crime!!! http://www.planalto.gov.br/ccivil_03/Leis/L9610.htm Para download do RME acesse: http://www.tibiaking.com/forum/forums/forum/121-utilitários/ Sumário de tutoriais: Como usar Remere's Map Editor Parte 1 - Introdução e Menu File Parte 3 em construção... OUTROS MENUS DO REMERE'S MAP EDITOR Menus mostrados: EDIT, MAP, VIEW E WINDOW MENU EDIT a. Defazer e refazer são teclas de atalho que lhe permitem corrigir as últimas mudanças no mapa. b. Em Replace item é possível trocar certos ids do mapa por outros ids. Veja a imagem: c. Aqui em Selection você pode definir se a seleção de mapa marcará apenas o andar visível ou o visível + os inferiores. A seleção de mapa serve para copiar ou mover mapas, também servem de apoio para as ferramentas de exportação. d. Em Border Options: Auto Magic - Ativa ou desativa o auto border, pode-se usar a tecla A como atalho. Borderize Selection - Vai aplicar auto border na área selecionada (bordas de grounds). Borderize Map - Vai aplicar auto border no mapa todo (bordas de grounds). Randomize Selection - Vai embaralhar a organização dos tiles que possuem várias sprites na área selecionada. Randomize Map - Embaralha os grounds do mapa todo. e. Em Other Options: Remove items by ID - Remove do mapa todos os IDs do item que você selecionar aqui. Remove all corpses - Remove os corpos do mapa todo. Remove all unreachable tiles - Remove todos os tiles que não podem ser vistos pelo player. Clear Invalid Houses - Limpa as houses bugadas ou incorretas. Clear Modified state - Limpa tudo que foi feito no mapa, é quase como fechar o mapa e abrir novamente sem salvar as alterações. f. Goto Position - Serve para localizar posições no mapa. g. Jump to Brush - Te leva pra onde o item que você pesquisou está na paleta auto border (terrain, doodad, etc...). h. Jump to Item - Te leva para onde o item que você pesquisou está na paleta RAW. i. Cut corta a parte selecionada do mapa, Ctrl + c para copiar o mapa selecionado e Ctrl + v para colar. j. Para entender Find Item (Ctrl + f) e Find leia este tutorial: http://www.tibiaking.com/forum/forums/topic/83033-como-evitar-fraudes-no-mapa-rme/ MENU MAP A - Em edição de cidades você cadastra seus templos, é onde o player vai nascer ao logar a primeira vez ou morrer (no servidor você pode controlar as town ids) Cleanup vai limpar todos os itens inválidos do seu mapa. B - Em Properties: Map Description é a descrição do seu mapa, serve para identificá-lo ou deixar informações. Map Version é a rev do tfs que você usa, isso vai depender do protocolo do mapa. Aqui você seleciona a versão do mapa, se você mudar a versão e clicar em OK o mapa vai carregar os arquivos do client da versão nova, leia mais no tutorial Como mudar a versão de um mapa. Dimensões, tamanho do seu mapa. Você pode expandir se precisar de espaço pra mapear ou diminuir. Nome dos arquivos houses e spawn, se você mudar o nome deles aqui o programa vai procurar pelo arquivo com o nome novo na pasta do mapa, então é recomendado que eles estejam lá, ou de outra forma o editor carregará o mapa sem house e spawns e apresentará erros. C - Mostra estatísticas do mapa: a. Numero total de Tiles b. Numero total de tiles bloqueados c. Numero total de tiles andáveis d. Numero total de tiles detalhados e. Numero total de itens f. Numero total de itens movíveis g. Numero de depots h. Numero de recipientes i. Numero de itens com ActionIDs j. Numero de itens com UniqueIDs k. Contagem total de criaturas l. Contagem total de spawn m. Total de cidades n. Total de houses o. Total de tiles de houses MENU VIEW New View - Abre uma cópia da aba atual. Enter Fullscreen - Deixa o editor no modo tela cheia. Take Screenshot - Tira print do mapa, para configurar é em File - Preferences - Graphics. Show shade - Aplica uma sombra nos andares inferiores. Show all floors - Mostra todos os andares abaixo do que você está (com exceção do térreo), desativado vai escondê-los. Ghost loose items - Deixa itens mais transparentes, com exceção dos grounds e borders. Ghost higher floors - Mostra ou esconde outros andares. Show Ingame Box - Ativa visualização na tela com proporção da tela do Client do Tibia. Show gride - Ativa grades, todos os itens ficam com uma borda branca. Highlight Items - Destaca itens que possuem mais itens em cima deles, quando mais item tiver no mesmo lugar, diferente a cor vai ficar. Show Creaturas - Mostra ou esconde criaturas. Show Spawns - Mostra ou esconde os spawns. Show Special - Mostra ou esconde os tiles especiais, isto é, pz, battle, etc. Only show colors - Mostra apenas itens especiais do mapa. Only show modified - Mostra apenas o que foi modificado no mapa a partir de quando abriu ele. Show Houses - Mostra as houses, tilles e saídas. Show Pathing - Mostra os itens que são bloqueados, o player não pode pisar. MENU WINDOW Minimap, ou usando o atalho M, abre o minimap do mapa atual. New palette carrega uma paleta do 0, uso geralmente quando arrasto minha paleta sem querer e ela não volta pro lugar,, mas também serve pra resetar o histórico de seleções nas paletas. Terrain, doodad, item, house, creature, waypoint e raw abrem suas respectivas paletas Terrain - Paleta com itens de terreno Doodad - Paleta com atalhos para itens de detalhamento Item - Paleta com itens House - Paleta para edição de houses Creture - Paleta com monstros e NPCs Waypoint - Paleta para marcar posições no mapa Raw - Paleta com todos os itens Este tutorial continua, me siga para receber a notificação.
  13. 2 pontos
    henriquesafadao

    Pokepro2 30/05/2018

    Pra ajudar vocês que tem base Lendas Pokemon esto li dano a spr é dat Pokepro2 Atualizado Hoji 30/05/2018 Download : http://www.mediafire.com/file/syf7asqm8j00tli/Pokepro %2C.rar Scan :https://www.virustotal.com/pt/file/b2b41330849da3b3cbf0afa5bd58190de3b11d6d0e83bc894a569ff559daa1e3/analysis/1527717553/
  14. 2 pontos
    Sttorm

    RESPONDIDO [pedido] Npc Bless 0.4

    local itemid, count = 2160, 5 -- ID do item que precisa e sua count local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} 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 function creatureSayCallback(cid, type, msg) local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if msgcontains(msg, "yes") then for b = 1,5 do if getPlayerBlessing(cid, b) then selfSay('Voce ja tem Bless e nao precisa de outra!', cid) doSendMagicEffect(getPlayerPosition(cid), 3) else if doPlayerRemoveItem(cid, itemid, count) then for i = 1,5 do doPlayerAddBlessing(cid, i) end doSendMagicEffect(getPlayerPosition(cid), 6) selfSay("Voce comprou a bless!", cid) else selfSay("Voce precisa de ".. count .." ".. getItemInfo(itemid).name .." para comprar bless.", cid) end end end end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
  15. 2 pontos
    Sttorm

    Limite de uso item

    local storage = 43214 function onUse(cid, item, frompos, item2, topos) if getCreatureStorage(cid, storage) == 1 then doPlayerSendTextMessage(cid, 27, "Você só pode usar esse item uma vez") return true end if item.itemid == item.itemid then doPlayerAddSkillTry(cid,0,doPlayerAddSkill(cid, 0)) doPlayerAddSkillTry(cid,1,doPlayerAddSkill(cid, 1)) doPlayerAddSkillTry(cid,2,doPlayerAddSkill(cid, 2)) doPlayerAddSkillTry(cid,3,doPlayerAddSkill(cid, 3)) doPlayerAddSkillTry(cid,4,doPlayerAddSkill(cid, 4)) doPlayerAddSkillTry(cid,5,doPlayerAddSkill(cid, 5)) doPlayerAddSkillTry(cid,6,doPlayerAddSkill(cid, 6)) doPlayerAddSkillTry(cid,0,doPlayerAddSkill(cid, 0)) doPlayerAddSkillTry(cid,1,doPlayerAddSkill(cid, 1)) doPlayerAddSkillTry(cid,2,doPlayerAddSkill(cid, 2)) doPlayerAddSkillTry(cid,3,doPlayerAddSkill(cid, 3)) doPlayerAddSkillTry(cid,4,doPlayerAddSkill(cid, 4)) doPlayerAddSkillTry(cid,5,doPlayerAddSkill(cid, 5)) doPlayerAddSkillTry(cid,6,doPlayerAddSkill(cid, 6)) doPlayerAddSkillTry(cid,0,doPlayerAddSkill(cid, 0)) doPlayerAddSkillTry(cid,1,doPlayerAddSkill(cid, 1)) doPlayerAddSkillTry(cid,2,doPlayerAddSkill(cid, 2)) doPlayerAddSkillTry(cid,3,doPlayerAddSkill(cid, 3)) doPlayerAddSkillTry(cid,4,doPlayerAddSkill(cid, 4)) doPlayerAddSkillTry(cid,5,doPlayerAddSkill(cid, 5)) doPlayerAddSkillTry(cid,6,doPlayerAddSkill(cid, 6)) doPlayerAddSkillTry(cid,0,doPlayerAddSkill(cid, 0)) doPlayerAddSkillTry(cid,1,doPlayerAddSkill(cid, 1)) doPlayerAddSkillTry(cid,2,doPlayerAddSkill(cid, 2)) doPlayerAddSkillTry(cid,3,doPlayerAddSkill(cid, 3)) doPlayerAddSkillTry(cid,4,doPlayerAddSkill(cid, 4)) doPlayerAddSkillTry(cid,5,doPlayerAddSkill(cid, 5)) doPlayerAddSkillTry(cid,6,doPlayerAddSkill(cid, 6)) doPlayerAddSkillTry(cid,0,doPlayerAddSkill(cid, 0)) doPlayerAddSkillTry(cid,1,doPlayerAddSkill(cid, 1)) doPlayerAddSkillTry(cid,2,doPlayerAddSkill(cid, 2)) doPlayerAddSkillTry(cid,3,doPlayerAddSkill(cid, 3)) doPlayerAddSkillTry(cid,4,doPlayerAddSkill(cid, 4)) doPlayerAddSkillTry(cid,5,doPlayerAddSkill(cid, 5)) doPlayerAddSkillTry(cid,6,doPlayerAddSkill(cid, 6)) doRemoveItem(item.uid,1) doCreatureSetStorage(cid, storage, 1) doSendMagicEffect(frompos, 28) doSendAnimatedText(getPlayerPosition(cid), "Skill Up", TEXTCOLOR_BLUE) return true end end
  16. 2 pontos
    Madarada

    Aula 1 #Swords - Academia do Pixel

    Bem vindo todos ao primeiro tutorial da academia do pixel,neste tutorial iremos aprender como criar e desenvolver espadas,uma tema que é de interesse de muitas pessoas. Espero que nesta primeira aula todos se esforcem bastante pois no final da semana suas artes serão expostas e julgadas por membros do fórum inclusive eu. ---------------------------------------------------------------------------------------------------------------------------------------- - Moldando Outline - • Para começarmos devemos abrir o paint e selecionar a ferramenta do quadrado e fazer um quadrado de tamanho 32x32,pois esse é tamanho padrão de itens do tibia. • Começando outline iremos fazer ela de cima para baixo pelo fio da espada,usando o lápis vamos posicionando os pixels corretamente... • Lembrem-se que o fio nunca deve ser muito grande nem muito pequeno,mas sim de um tamanho médio considerando que o fio deve ter mais ou menos o dobro do tamanho do cabo (isso pode variar)... • Com o fio definido iremos começar o cabo da espada,o cabo em si deve não deve ser muito largo nem muito curto ele deve estar encaixado harmonicamente com a espada.É importante entender de maneira realista como o cabo funciona por exemplo,um cabo muito pequeno não seria confortável de segurar e um cabo muito deixaria a espada muito pesada. - Coloração - • As espadas seguem um padrão básico para gerar corte,todas em geral seguem um padrão de alto contraste pois o metal está presente em quase todas as espadas.O metal é um material que recebe bastante luminosidade então para alcançarmos o ponto chave das espadas devemos prestar atenção no contraste,que significa que devemos usar cores com diferencial de luminosidade grande. • Sabemos também que a luz está em todo o lugar,partindo deste conceito o metal recebe luz porém a luz é de alguma cor,seja do sol a luz amarelada,seja do céu a luz azulada ou de outros focos de luz que podem ter as mais variadas cores. Partindo desse conhecimento devemos entender que nunca se deve usar cores que tenham nenhuma saturação pois a saturação age como brilho e da vivacidade para nossa arte. • No exemplo,monto minha paleta com diferencial de Luminosidade +40 ou seja, a cada cor eu aumento 40 pontos de luminosidade seguindo 20 na 1ª cor,60 na 2ª cor,100 na 3ª cor e assim por diante. • A saturação eu deixo 26 ponto pois mais para frente iremos abordar esse assunto,por enquanto deixemos com pouca saturação. A matriz é a grade de cor, eu deixo 160 pois é a grade da cor azul,outra grade de matriz boa é a 45 que seria do amarelo.Não necessariamente deve-se trabalhar com essas grades,contudo são as que se encaixam melhores no metal. - Gerando Corte - • O corte da espada é característico por apresentar bastante contraste e respeitar o foco de luz que vem do noroeste.No exemplo a seguir os passos de como gerar um corte simples. Não exatamente o corte deve seguir esse padrão dividido no meio,muitas espadas podem possuir corte apenas nas laterais... - Cabo - • O cabo tem muito mais a ver com criatividade do que com técnica.Geralmente os cabos são dourados ou de bronze,grande parte deles possuem jóias no centro como no exemplo que fiz. Bom espero que tenham compreendido um pouco do tutorial,abaixo vou deixar 4 outlines de espadas para usarem como base se quiserem. Boa Sorte
  17. 2 pontos
    @Jociel Agora eu entendi , o problema é nos creatureevents : function removePlayerCTF(cid) doPlayerSetTown(cid, getPlayerStorageValue(cid, 16701)) doTeleportThing(cid, getTownTemplePosition(getPlayerStorageValue(cid, 16701))) doRemoveCondition(cid, CONDITION_OUTFIT) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) doCreatureAddMana(cid, getCreatureMaxMana(cid)) setPlayerStorageValue(cid, 16701, -1) setPlayerStorageValue(cid, 16700, -1) return true end function onStepIn(cid, item, position, fromPosition) removePlayerCTF(cid) unregisterCreatureEvent(cid, "CTFLogout") unregisterCreatureEvent(cid, "CTFAttack") unregisterCreatureEvent(cid, "CTFCombat") unregisterCreatureEvent(cid, "CTFDeath") return true end
  18. 2 pontos
    Sttorm

    Tfs 0.4

    Pode ser a máquina que não é muito boa e também pode ser o tamanho do mapa que está grande demais e isso consume muita memória.
  19. 2 pontos
    shaderas

    Dungeon and Dragons 3.5

    Bom dia/tarde/noite a todos, Projeto OTSERV DUNGEON AND DRAGONS 3.5 Discord: https://discord.gg/6zKrgS PM: Me mande uma Mensagem Privada para maiores informações Proposta Trazer o mundo do Dungeon and Dragons edição 3.5 para o Tibia, não apenas em conteúdo e cenário, mas também trazendo todo o sistema do mundo dos livros e tabuleiros para o jogo. Encontrar uma maneira de adaptar fielmente os sistemas existentes no Livro do Jogador 3.5 e Livro do Mestre em algo funcional. Vai ser difícil? Para caralho. Possível? Sem sombra de dúvidas. Quem pode participar? Como o projeto será fins lucrativos e será para aprendizado e também um hobby, não vejo motivos para vetar a participação de quem estiver interessado. Todavia, darei preferência àqueles que tiverem experiência e também tempo disponível durante a semana para fazermos juntos este projeto ambicioso acontecer. Por quê desse projeto? Sou um jogador Oldschool de Tibia e também de Dungeon and Dragons de tabuleiro, e hoje não encontro nenhum que consiga juntar a simplicidade do Tibia com a imensa liberdade de escolhas que o Dungeon and Dragons me dá. Se eu quero ter 4 classes diferentes, o D&D me deixa. Se eu quiser ser um monstro, ou um vilão e dominar o mundo, o D&D permite. Gostaria de juntar essas duas coisas para fazer um Otserv que não trouxesse diversão pelas novas descobertas que o jogador terá, mas também não cagasse regras para o jogador. Quer ficar nadando o dia todo? Sem problemas! Como funcionará o desenvolvimento do projeto? Eu decidi usar Github para toda a questão de versionamento dos códigos, Trello para alinhar as demandas que necessitam ser feitas, foram feitas e estão sendo feitas; e também Discord para a comunicação da equipe que será formada. Ou seja, vai ser um projeto de gente grande utilizando as metodologias de gente grande, porém sem cobranças. Precisa ser divertido para todos os envolvidos e oferecer aprendizado! De quem o projeto mais precisa no momento? Como o projeto está no estado mais inicial possível, irá precisar de dois programadores. Com isso, conseguiríamos pensar em como criar os sistemas mais básicos para podermos criar uma metodologia de teste destes sistemas. Além disso, se algum interessado desejar aprender a programar, não tenho problemas em ensinar. Quem sou eu? Sou formado em Ciência da Computação e especializado em estatística. Comecei a programar em ActionScript 3.5 mas hoje programo em várias linguagens, principalmente em Ruby, C, Python e Javascript. E aí, partiu? Junte-se a mim no seguinte link do discord para maiores informações! https://discord.gg/6zKrgS Ou me mande uma Mensagem Privada! Abraços!
  20. 2 pontos
    local ip = {} local function checkPlayerIp(cid) if not isPlayer(cid) then return end if ip[getPlayerIp(cid)] == true then return true end return false end function onStepIn(cid, item, position, fromPosition) if not isPlayer(cid) then return true end if checkPlayerIp(cid) then doTeleportThing(cid, fromPosition, false) doSendMagicEffect(position, CONST_ME_MAGIC_BLUE doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você não pode entrar aqui com mais de um IP") else ip[getPlayerIp(cid)] = true end return true end Tentei uma chance frustrada kk !
  21. 2 pontos
    Sttorm

    Duvida Rapida

    Source é todo o codigo fonte de seu trabalho/projeto, é lá onde fica todos os codigos utilizados para executar uma ação/função . Para isso se deve compilar a source , e essa compilação resulta no arquivo .exe que você liga o seu servidor.
  22. 2 pontos
    Sttorm

    Dano Adicional Por Item

    Fiz um esboço de como vai ficar e vê se é assim mesmo ; essa essência seria um item que tem que equipar ? Weapons local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, 4) setCombatFormula(combat, COMBAT_FORMULA_SKILL, 1, 0, 1, 0) -- Dano se não tiver a essencia equipada local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 4) setCombatFormula(combat1, COMBAT_FORMULA_SKILL, 5, 5, 5, 5) -- Dano se tiver a essencia FIRE equipada local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, 4) setCombatFormula(combat2, COMBAT_FORMULA_SKILL, 5, 5, 5, 5) -- Dano se tiver a essencia ICE equipada local config = { ice = 3150, -- ID da essencia ICE fire = 3151, -- ID da essencia fire slot = CONST_SLOT_RING -- Slot em que a essencia vai ser equipada } function onUseWeapon(cid, var) local item = getPlayerSlotItem(cid, config.slot).itemid if item == config.fire then return doCombat(cid, combat1, var) elseif item == config.ice then return doCombat(cid, combat2, var) else return doCombat(cid, combat, var) end end XML <melee id="7869" event="script" value="raijin.lua"/>
  23. 2 pontos
    Nogard

    Free for use!

  24. 2 pontos
    Jaurez

    Usando RME em 10.00/11.x

    Olá galera do TK. Depois de muito sufoco que eu passei tentando fazer "funcionar" o editor de mapa 10.x, descobri pesquisando aqui mesmo no Tibia King como resolver. Só que os posts que eu acessei não descreviam, digamos, o passo a passo, então vou tentar explicar o mais resumido possível como utilizar. Tutorial em fotos. Bem, vamos lá. Sigam os 10 passos após baixarem. 1- Descompactar o arquivo (dããããã); 2- Executar o RME; 3- Vai pedir a pasta do tibia 11.40; 4- Selecione o tibia 11.40 (Vem junto com o remeres no download); 5- Clique em OK----vai dar erro ( não se preocupe com isso ); 6- Cancele a próxima janela; 7- Vai cancelando até parar de aparecer aquelas janelinhas chatas de erro; 8- Não feche o RME; 9- Clique em FILE-depois em PREFERENCES- depois em CLIENT VERSIONS, desmarque o quadrinho CHECK FILE SIGNATURES- clique APPLY-depois OK; 10- SEJA FELIZ e dê um REP bem bacana se te ajudei. Remeres compatível com as versões atuais 10.00/11x Scan: FOTOS DO PASSO A PASSO, as fotos são da outra versão mas vale pro 11.40 ATT, Jaurez
  25. 2 pontos
    MaXwEllDeN

    Como funcionam os Scripts?

    Como funcionam os Scripts? Você já deve ter se perguntado como os scripts funcionam ou não. Por exemplo: Como o servidor sabe que quando eu apertar com o botão direito em um Health Potion ele terá que healar o player alvo? Em primeiro lugar devemos entender o que são callbacks. Do modo mais simples callback é algo que acontece devido a uma reação, é como a Terceira Lei de Newton que diz que toda ação gera uma reação, esse callback é a nossa reção, é uma função que vai ser executada assim que algo acontecer, no caso do Health Potion assim que ele for usado. Quando um item é usado ele provoca a chamada de um callback dessa função: function onUse(cid, item, fromPosition, itemEx, toPosition) end – Max, que parâmetros são esses? – É simples. O Script do Health Potion ficaria +/- assim: local config = { min_heal = 100, -- Minimo que vai healar max_heal = 200, -- Máximo que vai healar empty = 7636, -- Id do Potion vazio } function onUse(cid, item, fromPosition, itemEx, toPosition) if isCreature(itemEx.uid) then doCreatureSay(cid, "Aaaah...", 19) doSendMagicEffect(toPosition, 12) doCreatureAddHealth(itemEx.uid, math.random(config.min_heal, config.max_heal)) doTransformItem(item.uid, config.empty) else doPlayerSendCancel(cid, "You cannot use this object.") end return true end doSendMagicEffect(pos, id) - Manda um efeito de ID, id, na posição pos. Lista dos ids de efeito: CONST_ME_DRAWBLOOD = 0 CONST_ME_LOSEENERGY = 1 CONST_ME_POFF = 2 CONST_ME_BLOCKHIT = 3 CONST_ME_EXPLOSIONAREA = 4 CONST_ME_EXPLOSIONHIT = 5 CONST_ME_FIREAREA = 6 CONST_ME_YELLOW_RINGS = 7 CONST_ME_GREEN_RINGS = 8 CONST_ME_HITAREA = 9 CONST_ME_TELEPORT = 10 CONST_ME_ENERGYHIT = 11 CONST_ME_MAGIC_BLUE = 12 CONST_ME_MAGIC_RED = 13 CONST_ME_MAGIC_GREEN = 14 CONST_ME_HITBYFIRE = 15 CONST_ME_HITBYPOISON = 16 CONST_ME_MORTAREA = 17 CONST_ME_SOUND_GREEN = 18 CONST_ME_SOUND_RED = 19 CONST_ME_POISONAREA = 20 CONST_ME_SOUND_YELLOW = 21 CONST_ME_SOUND_PURPLE = 22 CONST_ME_SOUND_BLUE = 23 CONST_ME_SOUND_WHITE = 24 CONST_ME_BUBBLES = 25 CONST_ME_CRAPS = 26 CONST_ME_GIFT_WRAPS = 27 CONST_ME_FIREWORK_YELLOW = 28 CONST_ME_FIREWORK_RED = 29 CONST_ME_FIREWORK_BLUE = 30 CONST_ME_STUN = 31 CONST_ME_SLEEP = 32 CONST_ME_WATERCREATURE = 33 CONST_ME_GROUNDSHAKER = 34 CONST_ME_HEARTS = 35 CONST_ME_FIREATTACK = 36 CONST_ME_ENERGYAREA = 37 CONST_ME_SMALLCLOUDS = 38 CONST_ME_HOLYDAMAGE = 39 CONST_ME_BIGCLOUDS = 40 CONST_ME_ICEAREA = 41 CONST_ME_ICETORNADO = 42 CONST_ME_ICEATTACK = 43 CONST_ME_STONES = 44 CONST_ME_SMALLPLANTS = 45 CONST_ME_CARNIPHILA = 46 CONST_ME_PURPLEENERGY = 47 CONST_ME_YELLOWENERGY = 48 CONST_ME_HOLYAREA = 49 CONST_ME_BIGPLANTS = 50 CONST_ME_CAKE = 51 CONST_ME_GIANTICE = 52 CONST_ME_WATERSPLASH = 53 CONST_ME_PLANTATTACK = 54 CONST_ME_TUTORIALARROW = 55 CONST_ME_TUTORIALSQUARE = 56 CONST_ME_MIRRORHORIZONTAL = 57 CONST_ME_MIRRORVERTICAL = 58 CONST_ME_SKULLHORIZONTAL = 59 CONST_ME_SKULLVERTICAL = 60 CONST_ME_ASSASSIN = 61 CONST_ME_STEPSHORIZONTAL = 62 CONST_ME_BLOODYSTEPS = 63 CONST_ME_STEPSVERTICAL = 64 CONST_ME_YALAHARIGHOST = 65 CONST_ME_BATS = 66 CONST_ME_SMOKE = 67 CONST_ME_INSECTS = 68 CONST_ME_DRAGONHEAD = 69 CONST_ME_NONE = 255 CONST_ME_LAST = CONST_ME_DRAGONHEAD doCreatureAddHealth(uid, amount) - Adiciona amount de health à criatura uid. math.random(interval1, interval2) - Pega um número aleatório entre interval1 e interval2. doTransformItem(uid, newid) - Muda o id do item uid, para newid. Bem, esse aí é o script, agora só é você salvar, colocar na sua pasta actions/scripts e pronto! – Max, se existem vários scripts na pasta actions/scripts, como meu OT sabe qual usar? – Por causa das chamadas TAGs. – TAGs? – Sim, é uma linha que é colocada no .xml para dizer ao seu servido que o Callback para um item x será a função daquele script. As Tags das actions seguem esse modelo: <action itemid = "7618" event = "script" value = "HealthPotion.lua" /> Exercício: Crie uma Action que quando eu usar uma Warlord Sword em alguém essa pessoa diga "Aí, isso doi". Poste a TAG também! Resposta SÓ ABRA DEPOIS DE RESOLVER: É isso aí pessoal, essa foi a primeira aula de Scriptwriting que eu escreví, espero que gostem :3
Líderes está configurado para São Paulo/GMT-03:00
×
Close