Jump to content

Roksas

Herói
  • Posts

    3611
  • Joined

  • Last visited

  • Days Won

    60

Reputation Activity

  1. Thanks
    Roksas got a reaction from M i s s in Tournament PVP V2.0   
    Sistema de Torneio V2.0


     



    Saudações galera, tudo de bão e do mió?
    Recebi alguns pedidos e vim trazer hoje para vocês o V2.0 do meu sistema de Torneio.
     
    Changelog:
     

    V2.0: Arrumado alguns BUGS. V2.0: Agora temos sala de espera. V2.0: Funciona também em Naruto, Pokemon & seus derivados!
     

    Instalação:


     



    Siga para data/lib, nessa mesma pasta crie um arquivo chamado tournament.lua e adicione dentro:
     
     
     
     
    Em data/npc/ crie um arquivo chamado Tournament.xml e adicione dentro:
     
     
     
     
    Entre na pasta scripts dentro de data/npc/ e crie um arquivo chamado tournament.lua e adicione dentro:
     
     
     
     
    Agora vá para a pasta data/globalevents/scripts, dentro dela crie um arquivo chamado tournament.lua e adicione dentro:
     
     
     
     
    Em globalevents.xml adicione essa tag:
     

    <globalevent name="TournamentStart" time="17:47" event="script" value="tournament.lua"/>
     
    Em data/actions/scripts, crie um arquivo chamado tournament.lua e adicione dentro:
     
     
     
     
    Abra com o bloco de notas o arquivo actions.xml e adicione a seguinte tag:
     

    <action uniqueid="18279" event="script" value="tournament.lua"/>
     
     
     
     
     
     
     
     
     

    Configuração:


     



    O arquivo que instalamos na pasta data/lib (tournament.lua), abra-o com o bloco de notas e vamos configurar esta parte:
     
    torneio = { awardTournament = 2148, awardAmount = 2, playerTemple = {x = 1008, y = 1018, z = 7}, tournamentFight = {x = 1017, y = 1026, z = 7}, area = {fromx = 1008, fromy = 1018, fromz = 7, tox = 1024, toy = 1033, toz= 7}, area2 = {x = 1008, y = 1018, z = 7}, {x = 1024, y = 1033, z = 7}, waitPlace = {x = 1017, y = 1044, z = 7}, waitArea = {fromx = 1010, fromy = 1040, fromz = 7, tox = 1024, toy = 1050, toz= 7}, startHour = "17:40:00", endHour = "17:50:00", price = 10000, revivePoke = 2494, }
    awardTournament colocamos o ItemID da recompensa do vencedor do torneio, awardAmount a quantidade.

    playerTemple colocamos as coordenadas do templo de alguma cidade, é para lá que ele vai ser teleportado ao vencer. tournamentFight colocamos as coordenadas do CENTRO da Arena de Torneios.

    Em area colocamos: (fromx, fromy e fromz) as coordenadas do canto superior esquerdo da Arena, (tox, toy e toz) colocamos as coordenadas do canto inferior direito da Arena.

    Em waitPlace colocamos as coordenadas do CENTRO, da Sala de Espera para começar o Torneio! Já o waitArea é a mesma coisa do "area" só que nesse é os cantos superior esquerdo e inferior direito da Sala de Espera.

    startHour colocamos a hora em que o NPC começa a vender entradas para o Torneio, é a hora do dia, com hora/minutos/e segundos, no formato "00:00:00", lá tem que ficar entre aspas! Já o endHour é a hora que ele para de vender as entradas e que começa o Torneio pra valer!

    Galera, o revivePoke, se seu OTServer for de Tibia, não MEXAM! Agora, se for Pokétibia, você muda o valor do revivePoke para o Item ID dos revives, isso serve para o player não levar revives pro Torneio.

    Em globalevents.xml na tag:

    <globalevent name="TournamentStart" time="17:47" event="script" value="tournament.lua"/> Aqui time="17:47" coloque o horário TERMINA as inscrições para o Torneio, é o mesmo do que endHour do lib. Mas aqui você só pode por em formato horas:minutos (00:00)

    Prontinho, agora é só ir no RME Map Editor e colocar UNIQUE ID 18279 em uma alavanca ou item dentro da Arena, isso serve para o player que ganhar ir embora com seu prêmio
     
     
     
     
     
     
     

    Finalizações:


     




     

    Bom galera, é isso por hoje, espero que façam um bom e ótimo uso. Estou disposto a aceitar DICAS/SUGESTÕES/CRÍTICAS & BUGS! Muito obrigado pela atenção!


     
     
     
     




     



     
     


    Download Tournament MAP (8.54)



    Download Sistema de Torneio V2.0

  2. Thanks
    Roksas got a reaction from Sudoudo in Create Teleport!   
    Create Teleport Event!


     
    Iaaae galera, suave bráite? Hoje venho trazer para vocês um comando bem legal, que facilita a vida do GOD, rsrs.
     

    /event createpos, topos
     
    É um comando que cria um teleport na posição desejada, e tem como destino a posição desejada, muito bom para criar eventos! Vamos á instalação..
     
    Siga até a pasta data/talkactions/scrips, crie um arquivo chamado event_create.lua e a adicione isso dentro:
     
     
     
     
    Agora volte uma pasta, em data/talkactions, abra o arquivo talkactions.xml com o bloco de notas e adicione essa tag:
     

    <talkaction words="/event" acess="5" event="script" value="event_create.lua"/>
     
     
    Prontinho, instalado! Agora você usa o comando desta maneira:
     

    /event createpos, topos
     
    Em createpos coloque a posição em que o teleport será criado, separando X,Y,Z por vírgulas, coloque mais uma vírgula e em topos coloque a posição aonde o teleport nos leva! Exemplo:
     

    /event 1000, 1000, 7, 998, 997, 6
     



  3. Upvote
    Roksas got a reaction from M i s s in Como funciona o "Interval"   
    Certo, a cada 1000 seria 1 segundo. Os números do interval são milesegundos!
    Se quiser 2 horas, então 120 mins*1000. "120000" Está correto! Mas em alguns servidores não precisa ser milesegundos, são segundos normais. Então o certo seria colocar "7200". Teste das duas formas para saber como funciona seu OT. Volte aqui e poste resultados.
  4. Upvote
    Roksas got a reaction from M i s s in Piso que Teleporta 1 paso a frente   
    Vá em data/movements/scripts, crie um arquivo chamado tileup.lua e adicione isso dentro:
     
     
     
     
    Agora vá em data/movements, abra o arquivo movements.xml com o bloco de notas e adicione essa tag em qualquer lugar:
    OBS: (SE EXISTIR APENAS UM UNICO PISO NO MAPA, QUE TELEPORTE 1 PASSO A FRENTE USE ESSE:
     

    <movevent type="StepIn" uniqueid="9979" event="script" value="tileup.lua"/>
     
    AGORA, EXEMPLO, SE TODOS PISOS COM ID 108, FIZESSE O TELEPORT 1 PASSO A FRENTE, USASSE ESSE
     

    <movevent type="StepIn" itemid="108" event="script" value="trap.lua"/>
     
    Aonde está 108 coloque o ID do Piso ) boa sorte
  5. Upvote
    Roksas got a reaction from MaycozCientesda in Consertando Erro while saving player   
    Muito bom, pode sanar a dúvida do pessoal hehe. Obrigado por compartilhar conosco, aprovado.
  6. Upvote
    Roksas got a reaction from narutomaniacos in [Tutorial] Conhecendo o math.random   
    Iaaae galera tudo bom? Hoje irei dar umas informações, ensinar mais a respeito do "math.random"!
    Introdução Modos de usá-lo Finalização


    math.random


    Bom galera, o math.random é uma função da linguagem Lua, que pertence á biblioteca MATH. Essa função é utilizada para gerar "valores" aleatórios, numa linguagem mais fácil de compreender: ele sorteia os valores!


    Como utilizar?

    A função math.random, por narutreza é composta desta forma:

    math.random(inicial, final)

    Aonde o "inicial" corresponde ao primeiro valor, e o "final" ao último valor. Exemplo:


    math.random (1, 20)

    Aqui sorteamos qualquer valor entre 1 e 20. (Valor inicial/final).

    Um outro exemplo de uso:

    doSendAnimatedText(position,"Hail Eks", math.random(1, 255))

    Aqui iremos mandar aquelas mensagens coloridas, as cores vão variar de 1 a 255 (Valor inicial/final). Entenderam?

    Ok, até aqui utilizamos valores "OBRIGATÓRIOS". Mas porque? Dei alguns exemplos acima, como:


    math.random(1, 20)

    Iremos sortear qualquer valor entre 1 e 20. MAS, e se eu não quiser passar pelo valor 15? Como fazemos?

    Simples, criamos uma variável com os valores desejados, e outra randomizando, exemplo:


    local quero_esses = {2,5,10}random = quero_esses[math.random(1, #quero_esses)]

    Vamos entender essa lógica? Na variável "random", especifiquei que quero randomizar entre 2, 5 e 10. que utilizei acima, coloquei o "VALOR INICIAL", que é o primeiro valor, não importa qual, da minha variável/table/array... e usando o símbolo #, verifico o "tamanho da tabela", ou seja, pego todos os valores da mesma. Que no caso estão na variável (quero_esses).

    Sorteando qualquer valor entre os da minha variável, pode ser 2, 5 ou 10!

    Podemos também utilizar essa lógica do sorteamento DESEJADO, para quests de sorte. Exemplo de uso:


    local possibilidades = {2148, 2450, 2555} -- Possíveis items a ganhar!local randomizar = possibilidades[math.random(1,#possibilidades)]function onUse(cid, item, frompos, item2, topos)if getPlayerStorageValue(cid,2033) == -1 thendoPlayerAddItem(cid,randomizar,1)doPlayerSendTextMessage(cid,27,"Parabéns, o seu prêmio da quest foi sorteado!")setPlayerStorageValue(cid,2033,1)endreturn trueend

    Viram? Depois de criar as duas variáveis, uma randomizando e a outra com os valores, basta usar o nome da variável que randomiza, para escolher os valores entre "2148,2450 e 2555" no caso!

    É isso galera, espero que façam bom uso do math.random, como por exemplo: Sistema de chance de dropar, ou acontecer X coisa


    Beijo grande.
  7. Upvote
    Roksas got a reaction from 1579091 in [RPG] Forge System   
    Forje System
     
    Como vai galerinha, tive uma ideia bem legal com a ajuda do vital900, é para dar um pouco mais de RPG ao seu servidor.

    No caso é um sistema de Forja, no qual um NPC te leva para uma ilha, nela você deve levar junto um minério (Iron Ore) e um Hammer, você vai aquecer o Iron Ore jogando-o no coal basin e clicando no assoprador, em seguida se obter chance vai criar um metal derretido, e aí você deve bater nele, novamente se obter chance poderá ser transformado num item, este item faz com que seus equipamentos subam + 1 de Ataque, Defesa e Armor.








    Instalação
     
    Vá em data/actions/scripts, copie algum arquivo da pasta e cole, ou crie, renomeie para forge_system.lua em seguida adicione isso dentro dele, usando algum editor de texto:




    Volte para a pasta (data/actions), abra com o bloco de notas o arquivo actions.xml, e dentro dele adicione essa tag:

    <action actionid="17000" itemid="4846;8299" event="script" value="forje.lua" /> Agora siga para a pasta data/npc, copie algum arquivo da pasta e cole, renomeie para Forger e adicione dentro usando o bloco de notas:


    <?xml version="1.0" encoding="UTF-8"?> <npc name="Forger" script="forge_npc.lua" walkinterval="0" floorchange="0"> <health now="150" max="150"/> <look type="71" head="114" body="119" legs="114" feet="114" corpse="2212"/> <parameters> <parameter key="message_greet" value="Hello |PLAYERNAME|. If you want forge say {forge}, need HAMMER and IRON ORE!"/> </parameters> </npc>
    Abra a pasta scripts dentro de data/npc, copie algum arquivo da pasta e cole, renomeie para forge_npc e adicione dentro usando algum editor de texto:









    Configuração
     
    No código de actions forge_system.lua, procure por este trecho e edite conforme citado abaixo:


    local cfg = { pos = {x = 1021, y = 1032, z = 7, stackpos = 255}, minerioTo = 5880, meltedTo = 5892, burnTo = 12404, hammerId = 4846, refinerId = 8299, secsInterval = 10, } pos = Coordenadas do coal basin do mapa postado para download minerioTo = O itemid do minério que vai ser derretido, (iron ore) meltedTo = ItemId do minério derretido burnTo = itemId do minério queimado hammerId = Item ID do martelo que vai bater na bigorna refinerId = O ID do item final, oque vai refinar os equips secsInterval = A cada quantos segundos pode fazer uma tentativa de forge. Na tag do actions.xml você encontra isso:


    <action actionid="17000" itemid="4846;8299" event="script" value="forje.lua" /> Mude apenas aonde está itemid, coloque na ordem: (O ItemID do Hammer e do Refiner derretido).

    No código de NPC, no caso o arquivo forge_npc.lua, você encontra esse trecho:


    local cfg = { area = {fromx = 1015, fromy = 1028, z = 7, tox = 1028, y = 1019, z = 7}, forgePosition = {x = 1018, y = 1034, z = 7}, templePosition = {x = 999, y = 1018, z = 7}, hammerId = 4846, minerioTo = 5880, needMoney = 1000, maxTime = 1, maxForge = 24, } area = Coloque as coordenadas do canto superior esquerdo da área de forja e do canto inferior direito forgePosition = coloque as coordenadas da sala de forja templePosition = pra aonde vai ser teleportado após acabar o tempo, no caso um Templo hammerId = O mesmo do forge_system.lua, coloque o Item ID do hammer (martelo) minerioTo = Coloque o Item ID do iron ore needMoney = Quanto de dinheiro precisa pra ir pra sala de forja maxTime = Quantos minutos no máximo pode ficar na sala de forja maxForge = A cada quantas horas pode entrar na sala de forja, coloquei 24, ou seja, 1x ao dia.



    Demonstração
     

    Créditos GIF: curruwilliam


    Finalizações
     
    Muito obrigado pela atenção galera e um forte abraço ao vital900 que me ajudou com o mapa e as ideias. Qualquer dúvida e/ou crítica estou aqui para atendê-los. Espero que façam um bom uso do mesmo


    Download Forge Mapa - Scan Forge Mapa
    Download Forge System - Scan Forge System
  8. Upvote
    Roksas got a reaction from gabriel28 in Torneio PVP!   
    Iaaae galera suave braaits ? Hoje venho trazer para vocês um sistema de Torneio, mas, como funciona?
     
    Vários players entram numa sala, falando com o NPC (tem horário configurável para poder falar), e para poder participar deve pagar uma quantia, ao pagar você é teleportado á Arena aonde começa a batalha.
     
    O último que sobreviver vence
    Vamos á instalação?
     
    ~~
     
    Vá em data/npc, copie algum arquivo .XML da pasta e cole, renomeie para Tournament,
    cole isso dentro:
     
     
     
     
    Ok, agora vá em data/npc/scripts, copie algum arquivo dessa pasta e cole, renomeie para tournament, cole isso:
     
     

    Configurando:


    local cfg = { price = 100, -- Money to sign in tournament startPos = {x = 1016, y = 1025, z = 7}, -- Posição central da sala de torneio hour = "18:00:00", -- Hour to start maxhour = "18:15:00" -- Max to start }
     
    Price é o preço que paga para entrar no Torneio, startPos é as coordenadas do meio da sala de Torneio, e Hour é a hora do dia que começa, o Torneio no caso é diário, mude o horário de "18:00:00" para o horário desejado, entre aspas e no formato 00:00:00! Já o maxhour determina até quando o NPC vende inscrições, no caso coloquei por 15 minutos.

     
     
    Agora vamos configurar a alavanca e o baú do vencedor! Vá em data/lib, abra o arquivo 050-function.lua ou function.lua, vá até a última linha de todas, pule 2 linhas e cole isso:
     
     
     
     
    Essa é a lib que usaremos no nosso Torneio, muito bem, agora vá em data/actions/scripts, copie algum arquivo desta pasta e cole, renomeie para tournament e cole isso dentro:
     
     

    Configurando:


    local cfg = { salaAward = {x = 1016, y = 1014 , z = 7}, -- Coordenates of the award place }
     
    salaAward, coloque as coordenadas da sala de prêmio do vencedor do Torneio!
     

    local area = {fromx = 1008, fromy = 1018, fromz = 7, tox = 1025, toy = 1033, toz = 7}
     
    fromx - fromy - fromz, coloque as coordenadas (X,Y e Z) do canto superior esquerdo da sala de Torneio, e tox - toy - toz, coloque as coordenadas (X, Y e Z) do canto inferior direito da sala de Torneio.
     
    local maxhour = "18:15:00", coloque igual ao script do NPC!
     
    Na mesma pasta crie outro arquivo, mas agora com o nome de tournamentchest e adicione isso dentro:
     
    ​Configurando:


    local cfg = { awardId = 2148, -- Item ID of winner prize awardAmount = 100, -- Amount of item ID }
     
    awardId coloque o ID do item que vai receber ao ganhar o Torneio, e awardAmount a quantidade!
     
    Em actions.xml adicione essas tags:
     
    <action actionid="13549" event="script" value="tournament.lua"/> <action uniqueid="5531" event="script" value="tournamentchest.lua"/>
     
    Muito bem, dirija-se á data/creaturescripts/scripts, copie algum arquivo da pasta e cole, renomeie para tournamentdeath, e adicione isso dentro:
     
    ​Configurando:


    local cfg = { leftPos = {x = 1008, y = 1018, z = 7}, rightPos = {x = 1025, y = 1033, z = 7}, }
     
    leftPos coloque as coordenadas do canto superior esquerdo da Sala de Torneio, e rightPos coloque o canto inferior direito da sala
     
    Agora em creaturescripts.xml adicione essa tag:
     

    <event type="preparedeath" name="TournamentDeath" event="script" value="tournamentdeath.lua"/>
     
    Prontinho galera, agora apenas adicione ACTION ID 13549 na alavanca e UNIQUE ID 5531 no baú do campeão
     



     
     
    Download Mapa Tournament (Tibia) - 4shared
  9. Upvote
    Roksas got a reaction from kauan13 in Porta de Reset   
    Vá em data/actions/scripts, crie uma arquivo chamado resetdoor.lua e adicione isso:
     
     
     
     
    O número 2 em vermelho, é o MÍNIMO de resets necessários para passar, mude para o valor desejado!
     
    <action actionid="31219" script="resetdoor.lua" />
     

    Agora no seu RME Map editor. Pegue alguma DOOR por Level, pode ser de quest, normalmente o ID é 1224,1223. Coloque essa DOOR no seu Map, clique 2x nela e adicione a ActionID 31219
     
    Agora vá em data/movements/scripts, crie um arquivo chamado resetclose.lua e adicione:
     
     
     
     
    Agora em movements.xml adicione essa tag:
     

    <movevent event="StepOut" actionid="31219" script="resetclose.lua" />
  10. Upvote
    Roksas got a reaction from gacjogos in [Encerrado] Erro doSendMagicEffect!   
    Não havia declarado a variável "pos", tente assim:
     
     
     
  11. Upvote
    Roksas got a reaction from Affzesquecioresto in Torneio PVP!   
    Iaaae galera suave braaits ? Hoje venho trazer para vocês um sistema de Torneio, mas, como funciona?
     
    Vários players entram numa sala, falando com o NPC (tem horário configurável para poder falar), e para poder participar deve pagar uma quantia, ao pagar você é teleportado á Arena aonde começa a batalha.
     
    O último que sobreviver vence
    Vamos á instalação?
     
    ~~
     
    Vá em data/npc, copie algum arquivo .XML da pasta e cole, renomeie para Tournament,
    cole isso dentro:
     
     
     
     
    Ok, agora vá em data/npc/scripts, copie algum arquivo dessa pasta e cole, renomeie para tournament, cole isso:
     
     

    Configurando:


    local cfg = { price = 100, -- Money to sign in tournament startPos = {x = 1016, y = 1025, z = 7}, -- Posição central da sala de torneio hour = "18:00:00", -- Hour to start maxhour = "18:15:00" -- Max to start }
     
    Price é o preço que paga para entrar no Torneio, startPos é as coordenadas do meio da sala de Torneio, e Hour é a hora do dia que começa, o Torneio no caso é diário, mude o horário de "18:00:00" para o horário desejado, entre aspas e no formato 00:00:00! Já o maxhour determina até quando o NPC vende inscrições, no caso coloquei por 15 minutos.

     
     
    Agora vamos configurar a alavanca e o baú do vencedor! Vá em data/lib, abra o arquivo 050-function.lua ou function.lua, vá até a última linha de todas, pule 2 linhas e cole isso:
     
     
     
     
    Essa é a lib que usaremos no nosso Torneio, muito bem, agora vá em data/actions/scripts, copie algum arquivo desta pasta e cole, renomeie para tournament e cole isso dentro:
     
     

    Configurando:


    local cfg = { salaAward = {x = 1016, y = 1014 , z = 7}, -- Coordenates of the award place }
     
    salaAward, coloque as coordenadas da sala de prêmio do vencedor do Torneio!
     

    local area = {fromx = 1008, fromy = 1018, fromz = 7, tox = 1025, toy = 1033, toz = 7}
     
    fromx - fromy - fromz, coloque as coordenadas (X,Y e Z) do canto superior esquerdo da sala de Torneio, e tox - toy - toz, coloque as coordenadas (X, Y e Z) do canto inferior direito da sala de Torneio.
     
    local maxhour = "18:15:00", coloque igual ao script do NPC!
     
    Na mesma pasta crie outro arquivo, mas agora com o nome de tournamentchest e adicione isso dentro:
     
    ​Configurando:


    local cfg = { awardId = 2148, -- Item ID of winner prize awardAmount = 100, -- Amount of item ID }
     
    awardId coloque o ID do item que vai receber ao ganhar o Torneio, e awardAmount a quantidade!
     
    Em actions.xml adicione essas tags:
     
    <action actionid="13549" event="script" value="tournament.lua"/> <action uniqueid="5531" event="script" value="tournamentchest.lua"/>
     
    Muito bem, dirija-se á data/creaturescripts/scripts, copie algum arquivo da pasta e cole, renomeie para tournamentdeath, e adicione isso dentro:
     
    ​Configurando:


    local cfg = { leftPos = {x = 1008, y = 1018, z = 7}, rightPos = {x = 1025, y = 1033, z = 7}, }
     
    leftPos coloque as coordenadas do canto superior esquerdo da Sala de Torneio, e rightPos coloque o canto inferior direito da sala
     
    Agora em creaturescripts.xml adicione essa tag:
     

    <event type="preparedeath" name="TournamentDeath" event="script" value="tournamentdeath.lua"/>
     
    Prontinho galera, agora apenas adicione ACTION ID 13549 na alavanca e UNIQUE ID 5531 no baú do campeão
     



     
     
    Download Mapa Tournament (Tibia) - 4shared
  12. Upvote
    Roksas got a reaction from pvpwar in Recompense Kill   
    Recompense Kill


     
     



     
    Saudações meus anjos, estive um tempo sem postar absolutamente nada, voltei já com algumas ideias e vim trazer para vocês! Este é um sistema, no qual ao matar um PK (White Skull), você recebe uma recompensa, (25 gold coins por level do PK) - Configurável.
     
    Exemplo, ele tem level 200 (200x25) = 5k para você disfrutar
     
     
     

    Instalação


     
     
     
     



     
    Vá em data/creaturescripts/scripts, copie algum arquivo da pasta e cole, renomeie para recompense.lua e coloque isto dentro:
     
     
     
     
    Abra com o bloco de notas o arquivo creaturescripts.xml e adicione estas tags:
     

    <event type="login" name="LoginRgst" event="script" value="recompense.lua"/> <event type="kill" name="Recompense" event="script" value="recompense.lua"/>
     
     

    Configuração


     
     



     
    Na primeira linha de todas do código, no caso esta:
     

    local moneyPerLevel = 25
     
    Você configura quantos gold coins recebe por level do PK. Assim formando uma conta como explicado na Introdução.
     
    Esta conta irá multiplicar o level do PK pela quantidade de gold coins recebe por level, assim dando uma leve recompensa ao killer.
     
     

    Demonstração


     
     



     



  13. Upvote
    Roksas got a reaction from adague in [Resolvido] book infinito de bless?   
    Vá em data/actions/scripts, crie um arquivo chamado book_bless.lua e adicione dentro:
     
     
    function onUse(cid, item) for a = 1, 8 do doPlayerAddBlessing(cid, i) end for b = 1, 5 do doPlayerSetLossPercent(cid, b, 0) end doPlayerSetLossSkill(cid, 0) doSendMagicEffect(getThingPos(cid), 29) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Congratulations, you are able to bless all.") return true end  
    Em actions.xml adicione a seguinte tag:
     
     
    <action itemid="9002" event="script" value="book_bless.lua"/>  
    @offtopic
     
    Olá, markindoot. Você se esqueceu de que ele não quer que remova o livro, aqui está um tutorial meu para a Escolinha de Scripting, sobre looping, aprendendo isso você poderia reduzir bastante o seu código ^^
    http://www.xtibia.com/forum/topic/222183-aula-9-loopings/
    ~~
     
    #GoodLuck.
  14. Upvote
    Roksas got a reaction from Shadow Phantom in [ALL VERSIONS] Mudando IP com HexEitor   
    http://www.xtibia.com/forum/topic/213351-peca-o-seu-cliente-proprio/
  15. Upvote
    Roksas got a reaction from Shadow Phantom in [ALL VERSIONS] Mudando IP com HexEitor   
    Reduz 4 letras que fica xuxu
  16. Upvote
    Roksas got a reaction from Shadow Phantom in [ALL VERSIONS] Mudando IP com HexEitor   
    Não não, aí a solução seria diminuir este IP. o máximo seria 19 caractéres.
  17. Upvote
    Roksas got a reaction from Shadow Phantom in [ALL VERSIONS] Mudando IP com HexEitor   
    Obrigado galerinha, qualquer coisa estou ae
  18. Upvote
    Roksas got a reaction from Shadow Phantom in [ALL VERSIONS] Mudando IP com HexEitor   
    Iaae galera, sussa? Hoje irei ensiná-los a mudar o IP de qualquer cliente usando o HexEditor, mais especificadamente o Cygnus. Vamos lá!
     

    Mudando IP com HexEditor


     
    Bom galera, primeiramente vocês deverão abrir o cliente desejado com o HexEditor (link para download no final do tópico).
     
    Vá em File > Open e abra o cliente. Em seguida verão todo o código fonte do cliente, todas traduções etc.
     
     
     
     
     



     
    Ok, agora para editar o IP dele, vamos procurar pelo IP que já está nele, você deve saber qual é, caso contrário vá até o fim do tópico e verá dicas para descubrir.
     
    Se for cliente de Tibia comum, o IP será o da CipSoft, agora vamos procurá-lo.
    Abra algum Editor de Texto (bloco de notas/MS Word) e digite o IP do cliente atual, vamos digitar isso:
     

    cipsoft
     
    Agora você seleciona, e copia. Mas por que isso?
    No CTRL+F do Cygnus HexEditor não é possível digitar corretamente, então copie de um Editor de Texto e cole lá no CTRL+F.
     
    Muito bem, após colar, aperte Enter para procurar, procure até encontrar uma sequência de IPS quase iguais e juntos, no caso da CipSoft vamos encontrar:





     
    Para mudar, não pode apagar nadinha, você clica entre o ponto (.) e a letra t, e digita o seu IP e perceberá que vai substituindo letra por letra. Os pontos separam cada IP, são 10 IPS para colocar, você não pode errar se não nem funciona!
     

    1º IP: tibia05.cipsoft.com 2º IP: tibia04.cipsoft.com 3º IP: tibia03.cipsoft.com 4º IP: tibia02.cipsoft.com 5º IP: tibia01.cipsoft.com 6º IP: login05.tibia.com 7º IP: login04.tibia.com 8º IP: login03.tibia.com 9º IP: login02.tibia.com 10º IP: login01.tibia.com
     
    Vai substituindo um por um com o seu IP, um exemplo preenchido:
     



     
    Caso sobrem letras do IP que você substituiu, você as substitui com pontos (....)
     
    Entre cada IP deve ter pelo menos 1 ponto (.), caso contrário o IP é muito grande e você deve trocá-lo para um menor, o máximo é de 19 caractéres por IP!
     
    Agora que já mudou o seu IP, aperte CTRL+F e procure:
     

    124710459426827943004376449897985582167801707960697037164044904862948569380850421396904597686953877022394604239428185498284169068581802277612081027966724336319448537811441719076484340922854929273517308661370727105382899118999403808045846444647284499123164879035103627004668521005328367415259939915284902061793
     
    Substitua por:
     

    109120132967399429278860960508995541528237502902798129123468757937266291492576446330739696001110603907230888610072655818825358503429057592827629436413108566029093628212635953836686562675849720620786279431090218017681061521755056710823876476444260558147179707119674283982419152118103759076030616683978566631413
     
    Após isso, vá em File > Save e prontinho, só abrir e se divertir
    Não encontrei o IP do cliente no HexEditor, oque eu faço?


    Caso for o cliente do PDA Slicer, abra-o com o Cygnus, aperte CTRL+G e cole [b]"1c62f0"[/b], sem as aspas, assim você irá encontrar a sequência de IPS para substituir! Se for Pokemon Nibe é igual do PDA Slicer Se for Tibia normal, é só dar CTRL+F e digitar "cipsoft" sem as aspas.
     
    Download Cygnus HexEditor
    Scan Cygnus HexEditor
  19. Upvote
    Roksas got a reaction from Developer Berg in [Tutorial] Adicionando Transforms Naruto   
    Bom galera, ultimamente bastante membros perguntando como adicionar transformações de Naruto e tals. Decidi criar um Tutorial pra que seja mais fácil e bem explicado a todos!
     
    Irei ensinar completamente, desde adicionando Sprites no client, até adicionando nos Scripts do servidor. Bora )
     
    • Colocando sprites no client!
     
     
     
    • Adicionando as sprites em seu Otserv
     
     
     
     
     
    • Criando as transformações
     
     
     
    Prontinho galera, agora basta entrar em seu Otserv e testar. Boa sorte, espero que tenham gostado e entendido, dúvidas só perguntar. Disponha ^^
     
    OBS: IMAGENS UPADAS POR DynkzDosOts
     
     
    DynkzDosOts
  20. Upvote
    Roksas got a reaction from Shyrriro in Tournament PVP V2.0   
    Sistema de Torneio V2.0


     



    Saudações galera, tudo de bão e do mió?
    Recebi alguns pedidos e vim trazer hoje para vocês o V2.0 do meu sistema de Torneio.
     
    Changelog:
     

    V2.0: Arrumado alguns BUGS. V2.0: Agora temos sala de espera. V2.0: Funciona também em Naruto, Pokemon & seus derivados!
     

    Instalação:


     



    Siga para data/lib, nessa mesma pasta crie um arquivo chamado tournament.lua e adicione dentro:
     
     
     
     
    Em data/npc/ crie um arquivo chamado Tournament.xml e adicione dentro:
     
     
     
     
    Entre na pasta scripts dentro de data/npc/ e crie um arquivo chamado tournament.lua e adicione dentro:
     
     
     
     
    Agora vá para a pasta data/globalevents/scripts, dentro dela crie um arquivo chamado tournament.lua e adicione dentro:
     
     
     
     
    Em globalevents.xml adicione essa tag:
     

    <globalevent name="TournamentStart" time="17:47" event="script" value="tournament.lua"/>
     
    Em data/actions/scripts, crie um arquivo chamado tournament.lua e adicione dentro:
     
     
     
     
    Abra com o bloco de notas o arquivo actions.xml e adicione a seguinte tag:
     

    <action uniqueid="18279" event="script" value="tournament.lua"/>
     
     
     
     
     
     
     
     
     

    Configuração:


     



    O arquivo que instalamos na pasta data/lib (tournament.lua), abra-o com o bloco de notas e vamos configurar esta parte:
     
    torneio = { awardTournament = 2148, awardAmount = 2, playerTemple = {x = 1008, y = 1018, z = 7}, tournamentFight = {x = 1017, y = 1026, z = 7}, area = {fromx = 1008, fromy = 1018, fromz = 7, tox = 1024, toy = 1033, toz= 7}, area2 = {x = 1008, y = 1018, z = 7}, {x = 1024, y = 1033, z = 7}, waitPlace = {x = 1017, y = 1044, z = 7}, waitArea = {fromx = 1010, fromy = 1040, fromz = 7, tox = 1024, toy = 1050, toz= 7}, startHour = "17:40:00", endHour = "17:50:00", price = 10000, revivePoke = 2494, }
    awardTournament colocamos o ItemID da recompensa do vencedor do torneio, awardAmount a quantidade.

    playerTemple colocamos as coordenadas do templo de alguma cidade, é para lá que ele vai ser teleportado ao vencer. tournamentFight colocamos as coordenadas do CENTRO da Arena de Torneios.

    Em area colocamos: (fromx, fromy e fromz) as coordenadas do canto superior esquerdo da Arena, (tox, toy e toz) colocamos as coordenadas do canto inferior direito da Arena.

    Em waitPlace colocamos as coordenadas do CENTRO, da Sala de Espera para começar o Torneio! Já o waitArea é a mesma coisa do "area" só que nesse é os cantos superior esquerdo e inferior direito da Sala de Espera.

    startHour colocamos a hora em que o NPC começa a vender entradas para o Torneio, é a hora do dia, com hora/minutos/e segundos, no formato "00:00:00", lá tem que ficar entre aspas! Já o endHour é a hora que ele para de vender as entradas e que começa o Torneio pra valer!

    Galera, o revivePoke, se seu OTServer for de Tibia, não MEXAM! Agora, se for Pokétibia, você muda o valor do revivePoke para o Item ID dos revives, isso serve para o player não levar revives pro Torneio.

    Em globalevents.xml na tag:

    <globalevent name="TournamentStart" time="17:47" event="script" value="tournament.lua"/> Aqui time="17:47" coloque o horário TERMINA as inscrições para o Torneio, é o mesmo do que endHour do lib. Mas aqui você só pode por em formato horas:minutos (00:00)

    Prontinho, agora é só ir no RME Map Editor e colocar UNIQUE ID 18279 em uma alavanca ou item dentro da Arena, isso serve para o player que ganhar ir embora com seu prêmio
     
     
     
     
     
     
     

    Finalizações:


     




     

    Bom galera, é isso por hoje, espero que façam um bom e ótimo uso. Estou disposto a aceitar DICAS/SUGESTÕES/CRÍTICAS & BUGS! Muito obrigado pela atenção!


     
     
     
     




     



     
     


    Download Tournament MAP (8.54)



    Download Sistema de Torneio V2.0

  21. Upvote
    Roksas got a reaction from Ryukiimaru in [Tutorial] Conhecendo o math.random   
    Iaaae galera tudo bom? Hoje irei dar umas informações, ensinar mais a respeito do "math.random"!
    Introdução Modos de usá-lo Finalização


    math.random


    Bom galera, o math.random é uma função da linguagem Lua, que pertence á biblioteca MATH. Essa função é utilizada para gerar "valores" aleatórios, numa linguagem mais fácil de compreender: ele sorteia os valores!


    Como utilizar?

    A função math.random, por narutreza é composta desta forma:

    math.random(inicial, final)

    Aonde o "inicial" corresponde ao primeiro valor, e o "final" ao último valor. Exemplo:


    math.random (1, 20)

    Aqui sorteamos qualquer valor entre 1 e 20. (Valor inicial/final).

    Um outro exemplo de uso:

    doSendAnimatedText(position,"Hail Eks", math.random(1, 255))

    Aqui iremos mandar aquelas mensagens coloridas, as cores vão variar de 1 a 255 (Valor inicial/final). Entenderam?

    Ok, até aqui utilizamos valores "OBRIGATÓRIOS". Mas porque? Dei alguns exemplos acima, como:


    math.random(1, 20)

    Iremos sortear qualquer valor entre 1 e 20. MAS, e se eu não quiser passar pelo valor 15? Como fazemos?

    Simples, criamos uma variável com os valores desejados, e outra randomizando, exemplo:


    local quero_esses = {2,5,10}random = quero_esses[math.random(1, #quero_esses)]

    Vamos entender essa lógica? Na variável "random", especifiquei que quero randomizar entre 2, 5 e 10. que utilizei acima, coloquei o "VALOR INICIAL", que é o primeiro valor, não importa qual, da minha variável/table/array... e usando o símbolo #, verifico o "tamanho da tabela", ou seja, pego todos os valores da mesma. Que no caso estão na variável (quero_esses).

    Sorteando qualquer valor entre os da minha variável, pode ser 2, 5 ou 10!

    Podemos também utilizar essa lógica do sorteamento DESEJADO, para quests de sorte. Exemplo de uso:


    local possibilidades = {2148, 2450, 2555} -- Possíveis items a ganhar!local randomizar = possibilidades[math.random(1,#possibilidades)]function onUse(cid, item, frompos, item2, topos)if getPlayerStorageValue(cid,2033) == -1 thendoPlayerAddItem(cid,randomizar,1)doPlayerSendTextMessage(cid,27,"Parabéns, o seu prêmio da quest foi sorteado!")setPlayerStorageValue(cid,2033,1)endreturn trueend

    Viram? Depois de criar as duas variáveis, uma randomizando e a outra com os valores, basta usar o nome da variável que randomiza, para escolher os valores entre "2148,2450 e 2555" no caso!

    É isso galera, espero que façam bom uso do math.random, como por exemplo: Sistema de chance de dropar, ou acontecer X coisa


    Beijo grande.
  22. Upvote
    Roksas got a reaction from curruwilliam in [ALL VERSIONS] Mudando IP com HexEitor   
    Iaae galera, sussa? Hoje irei ensiná-los a mudar o IP de qualquer cliente usando o HexEditor, mais especificadamente o Cygnus. Vamos lá!
     

    Mudando IP com HexEditor


     
    Bom galera, primeiramente vocês deverão abrir o cliente desejado com o HexEditor (link para download no final do tópico).
     
    Vá em File > Open e abra o cliente. Em seguida verão todo o código fonte do cliente, todas traduções etc.
     
     
     
     
     



     
    Ok, agora para editar o IP dele, vamos procurar pelo IP que já está nele, você deve saber qual é, caso contrário vá até o fim do tópico e verá dicas para descubrir.
     
    Se for cliente de Tibia comum, o IP será o da CipSoft, agora vamos procurá-lo.
    Abra algum Editor de Texto (bloco de notas/MS Word) e digite o IP do cliente atual, vamos digitar isso:
     

    cipsoft
     
    Agora você seleciona, e copia. Mas por que isso?
    No CTRL+F do Cygnus HexEditor não é possível digitar corretamente, então copie de um Editor de Texto e cole lá no CTRL+F.
     
    Muito bem, após colar, aperte Enter para procurar, procure até encontrar uma sequência de IPS quase iguais e juntos, no caso da CipSoft vamos encontrar:





     
    Para mudar, não pode apagar nadinha, você clica entre o ponto (.) e a letra t, e digita o seu IP e perceberá que vai substituindo letra por letra. Os pontos separam cada IP, são 10 IPS para colocar, você não pode errar se não nem funciona!
     

    1º IP: tibia05.cipsoft.com 2º IP: tibia04.cipsoft.com 3º IP: tibia03.cipsoft.com 4º IP: tibia02.cipsoft.com 5º IP: tibia01.cipsoft.com 6º IP: login05.tibia.com 7º IP: login04.tibia.com 8º IP: login03.tibia.com 9º IP: login02.tibia.com 10º IP: login01.tibia.com
     
    Vai substituindo um por um com o seu IP, um exemplo preenchido:
     



     
    Caso sobrem letras do IP que você substituiu, você as substitui com pontos (....)
     
    Entre cada IP deve ter pelo menos 1 ponto (.), caso contrário o IP é muito grande e você deve trocá-lo para um menor, o máximo é de 19 caractéres por IP!
     
    Agora que já mudou o seu IP, aperte CTRL+F e procure:
     

    124710459426827943004376449897985582167801707960697037164044904862948569380850421396904597686953877022394604239428185498284169068581802277612081027966724336319448537811441719076484340922854929273517308661370727105382899118999403808045846444647284499123164879035103627004668521005328367415259939915284902061793
     
    Substitua por:
     

    109120132967399429278860960508995541528237502902798129123468757937266291492576446330739696001110603907230888610072655818825358503429057592827629436413108566029093628212635953836686562675849720620786279431090218017681061521755056710823876476444260558147179707119674283982419152118103759076030616683978566631413
     
    Após isso, vá em File > Save e prontinho, só abrir e se divertir
    Não encontrei o IP do cliente no HexEditor, oque eu faço?


    Caso for o cliente do PDA Slicer, abra-o com o Cygnus, aperte CTRL+G e cole [b]"1c62f0"[/b], sem as aspas, assim você irá encontrar a sequência de IPS para substituir! Se for Pokemon Nibe é igual do PDA Slicer Se for Tibia normal, é só dar CTRL+F e digitar "cipsoft" sem as aspas.
     
    Download Cygnus HexEditor
    Scan Cygnus HexEditor
  23. Upvote
    Roksas got a reaction from Slyton in Comando de pula de clan   
    Tem sim, já estava no código desde o começo rs, mas eu retiro para você. Ficando assim:
     
     
     
     
    Flw!
  24. Upvote
    Roksas got a reaction from HenrikDiamond in Tournament PVP V2.0   
    Sistema de Torneio V2.0


     



    Saudações galera, tudo de bão e do mió?
    Recebi alguns pedidos e vim trazer hoje para vocês o V2.0 do meu sistema de Torneio.
     
    Changelog:
     

    V2.0: Arrumado alguns BUGS. V2.0: Agora temos sala de espera. V2.0: Funciona também em Naruto, Pokemon & seus derivados!
     

    Instalação:


     



    Siga para data/lib, nessa mesma pasta crie um arquivo chamado tournament.lua e adicione dentro:
     
     
     
     
    Em data/npc/ crie um arquivo chamado Tournament.xml e adicione dentro:
     
     
     
     
    Entre na pasta scripts dentro de data/npc/ e crie um arquivo chamado tournament.lua e adicione dentro:
     
     
     
     
    Agora vá para a pasta data/globalevents/scripts, dentro dela crie um arquivo chamado tournament.lua e adicione dentro:
     
     
     
     
    Em globalevents.xml adicione essa tag:
     

    <globalevent name="TournamentStart" time="17:47" event="script" value="tournament.lua"/>
     
    Em data/actions/scripts, crie um arquivo chamado tournament.lua e adicione dentro:
     
     
     
     
    Abra com o bloco de notas o arquivo actions.xml e adicione a seguinte tag:
     

    <action uniqueid="18279" event="script" value="tournament.lua"/>
     
     
     
     
     
     
     
     
     

    Configuração:


     



    O arquivo que instalamos na pasta data/lib (tournament.lua), abra-o com o bloco de notas e vamos configurar esta parte:
     
    torneio = { awardTournament = 2148, awardAmount = 2, playerTemple = {x = 1008, y = 1018, z = 7}, tournamentFight = {x = 1017, y = 1026, z = 7}, area = {fromx = 1008, fromy = 1018, fromz = 7, tox = 1024, toy = 1033, toz= 7}, area2 = {x = 1008, y = 1018, z = 7}, {x = 1024, y = 1033, z = 7}, waitPlace = {x = 1017, y = 1044, z = 7}, waitArea = {fromx = 1010, fromy = 1040, fromz = 7, tox = 1024, toy = 1050, toz= 7}, startHour = "17:40:00", endHour = "17:50:00", price = 10000, revivePoke = 2494, }
    awardTournament colocamos o ItemID da recompensa do vencedor do torneio, awardAmount a quantidade.

    playerTemple colocamos as coordenadas do templo de alguma cidade, é para lá que ele vai ser teleportado ao vencer. tournamentFight colocamos as coordenadas do CENTRO da Arena de Torneios.

    Em area colocamos: (fromx, fromy e fromz) as coordenadas do canto superior esquerdo da Arena, (tox, toy e toz) colocamos as coordenadas do canto inferior direito da Arena.

    Em waitPlace colocamos as coordenadas do CENTRO, da Sala de Espera para começar o Torneio! Já o waitArea é a mesma coisa do "area" só que nesse é os cantos superior esquerdo e inferior direito da Sala de Espera.

    startHour colocamos a hora em que o NPC começa a vender entradas para o Torneio, é a hora do dia, com hora/minutos/e segundos, no formato "00:00:00", lá tem que ficar entre aspas! Já o endHour é a hora que ele para de vender as entradas e que começa o Torneio pra valer!

    Galera, o revivePoke, se seu OTServer for de Tibia, não MEXAM! Agora, se for Pokétibia, você muda o valor do revivePoke para o Item ID dos revives, isso serve para o player não levar revives pro Torneio.

    Em globalevents.xml na tag:

    <globalevent name="TournamentStart" time="17:47" event="script" value="tournament.lua"/> Aqui time="17:47" coloque o horário TERMINA as inscrições para o Torneio, é o mesmo do que endHour do lib. Mas aqui você só pode por em formato horas:minutos (00:00)

    Prontinho, agora é só ir no RME Map Editor e colocar UNIQUE ID 18279 em uma alavanca ou item dentro da Arena, isso serve para o player que ganhar ir embora com seu prêmio
     
     
     
     
     
     
     

    Finalizações:


     




     

    Bom galera, é isso por hoje, espero que façam um bom e ótimo uso. Estou disposto a aceitar DICAS/SUGESTÕES/CRÍTICAS & BUGS! Muito obrigado pela atenção!


     
     
     
     




     



     
     


    Download Tournament MAP (8.54)



    Download Sistema de Torneio V2.0

  25. Upvote
    Roksas got a reaction from alanmtd in [Evento] Siege of Danger 1.0   
    Siege of Danger 1.0 [sOD]





     
    Opa opa galerinha zuera, estive dois dias fazendo um evento super legal para vocês, o SIEGE OF DANGER. Nesse evento, dois times são divididos e partem para a guerra sem dó nem piedade, o time que sobreviver ganhará um prêmio muito legal.
     


    Como instalar?
     
     
     
     
     
     

    ScreenShoots:
     
     
     


     
    Scan [sOD] 1.0
    Download [sOD] 1.0
     
    Trabalhei bastante nisso galera, espero que tenham gostado, obrigado por vizualizar s2
     
    OBS: Obrigado Celino (ScythePanthom) pelo mapa e pela logo!
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...