Ir para conteúdo

LucasM010203

Campones
  • Total de itens

    1
  • Registro em

  • Última visita

Histórico de Reputação

  1. Upvote
    LucasM010203 recebeu reputação de Demonio007 em [Encerrado] [Antigo~] Ajuda Com Tempo Da Skull / Red Skull   
    Funciona assim:
     
    o tempo é em milissegundos, ou seja: 1000 = 1 segundo, mas para facilitar, é dividido esse tempo assim:
     
    1000 = 1 segundo;
    * = vezes.
     
    ou seja coloca 1000 * 60
     
    é igual a 60 segundos ai vai aumentando de minuto em minuto, assim:
     
    1000 * 60 * 60 (1 hora) 1000 * 60 * 60 * 24 (1 dia) e assim por diante...
     
    o * (vezes) é só patra facilitar a organização
  2. Upvote
    LucasM010203 deu reputação a LuckOake em Lua Script Maker   
    Olá galera, para testar minhas habilidades de programador em Lua resolvi fazer um programa que cria scripts a seu gosto. Atualmente ele tem suporte para Actions, Talkactions e StepIn (Movement).
     
    Nada muito complexo, é apenas pra ajudar os iniciantes mesmo. O programa e sua source seguem em anexo na mensagem.
     
    Imagem:
     
     
    OBS: Programa feito em Lua.
     
    Download aqui em baixo \/
     



    Lua Script Maker.rar
  3. Upvote
    LucasM010203 deu reputação a shumagora em item ao clica-lo, items aleatórios   
    Estava precisando de um item, "gnomish supply package". ao ser usado, você ganha aleatoriamente um de 24 items.
    Procurei e não encontrei. Lembrei do item, "winning lottery ticket". Fiz modificações para me satisfazer.
     
    Créditos Desconhecido.
    Porque já estava incluído no servidor Global 9.81 do xtibia.
    2% Shumagora
     
    Então vamo lá:
     
    data/actions/actions.xml

    <action itemid="18215" event="script" value="Gnomish.lua"/>
    itemid="18215" -> id do item ao ser usado
     
     
    data/actions/scripts/Gnomish.lua
     
     
     
    Explicações:
     
    local rand = math.random(0, 24) -> Ao clicar no item, é bem parecido com loteria. Você chuta um número, de 0 a 24 e reza pra cair o número escolhido.
     
    local lotteryid = 18215 -> id do item para clicar.
     

    if rand == 0 then elseif rand == 1 then elseif rand == 2 then
    ... etc... são os números "do sorteio". que ao clicar no item aparecerá um item de 0 a 24 como no exemplo acima.
     

    doCreatureSay(cid, "You have a 15 Crystalline Arrows!", TALKTYPE_ORANGE_1)
    Mensagem quando aparece o item.
     
    doPlayerAddItem(cid, 2154,1) -> id do item, quantidade
     
    caso você queira adicionar mais items, é só da ctrl+c mais ctrl+v e editar:
    elseif rand == 24 then doCreatureSay(cid, "You have a Yellow Gem!", TALKTYPE_ORANGE_1) doPlayerAddItem(cid, 2154,1) doRemoveItem(cid, item.uid, 1)
    Você edita elseif rand == 24 then e coloca: elseif rand == 25 then
    e edita o resto.
    (não se esqueça de editar math.random(0, 24) para (0, 25)
     
     
    se quiser deixar para que ele quebre também
     
     
     
    Suponhamos que: "mega sena tem 0 a 40 números. você joga os dados e reza pra não cair acima de 24, porque não ganhará premio algum.
     
     
    É bem isso ai, poste suas dúvidas, que ano vem respondo = )
  4. Upvote
    LucasM010203 deu reputação a Demonbholder em Duelo De Summons   
    Faaala galerinha, tranquilo? Esses dias eu estava conversando com um membro aqui do XTibia, e, quase sem querer, ele me deu uma idéia! Não é muito util, mas pode melhorar a diversão do seu servidor, vamos ver o que vocês acham...
     
    Como funciona: Dois jogadores devem ir a dois extremos de um local, lá, ao usar o comando !start o jogo começa. Após usado este comando, uma mensagem irá informar que o jogo começou. O próximo passo e usa comando !summon junto com o nome de uma criatura. Você é que escolhe quais criaturas podem ser usadas e quantas vitórias são necessárias para poder usá-las!
     
    Bom, eu fiz em mod para facilitar, caso alguém não possua esta pasta no seu servidor, me comunique pelo tópico ou por mensagem privada que eu estarei adaptando.
     
     
    Mod:
     
     

    <?xml version="1.0" encoding="UTF-8"?> <mod name="SummonDuel" enabled="yes" author="Demonbholder" forum="XTibia.com"> <config name="SumLib"><![CDATA[ pla1 = getThingFromPos({x=151, y=39, z=7, stackpos=253}).uid pla2 = getThingFromPos({x=152, y=39, z=7, stackpos=253}).uid pos = {x=152, y=43, z=7} monsters = { ["rat"] = {sto = -1, awa = 300}, ["skeleton"] = {sto = 3, awa = 500}, ["orc"] = {sto = 5, awa = 700}, ["rotworm"] = {sto = 7, awa = 900}, ["dwarf"] = {sto = 7, awa = 900}, ["minotaur"] = {sto = 8, awa = 1000}, ["dwarf soldier"] = {sto = 10, awa = 1200}, ["minotaur archer"] = {sto = 10, awa = 1200}, ["carrion worm"] = {sto = 10, awa = 1200}, ["slime"] = {sto = 15, awa = 1700}, ["cyclops drone"] = {sto = 18, awa = 2000}, ["minotaur guard"] = {sto = 18, awa = 2000}, ["minotaur mage"] = {sto = 23, awa = 2500}, ["dwarf guard"] = {sto = 26, awa = 2800}, ["demon skeleton"] = {sto = 30, awa = 3200}, ["dragon hatchling"] = {sto = 35, awa = 3700}, ["dragon"] = {sto = 45, awa = 5000}, } ]]></config> <creaturescript type="login" name="SummonL" event="script"><![CDATA[ registerCreatureEvent(cid, "SummonC") return TRUE ]]></creaturescript> <creaturescript type="combat" name="SummonC" event="script"><![CDATA[ if getPlayerStorageValue(cid, 34570) ~= -1 and isPlayer(target) then return FALSE, doPlayerSendCancel(cid, "Voce nao pode atacar enquanto esta no jogo.") elseif getPlayerStorageValue(target, 34570) ~= -1 then return FALSE end return TRUE ]]></creaturescript> <creaturescript type="statschange" name="SummonS" event="script"><![CDATA[ if type == STATSCHANGE_HEALTHLOSS then if isPlayer(attacker) and isPlayer(getCreatureMaster(cid)) then if getPlayerStorageValue(getCreatureMaster(cid), 34570) ~= -1 then return FALSE end end end return TRUE ]]></creaturescript> <creaturescript type="kill" name="SummonK" event="script"><![CDATA[ domodlib('SumLib') setPlayerStorageValue(pla1, 34570, -1) setPlayerStorageValue(pla2, 34570, -1) setPlayerStorageValue(getCreatureMaster(cid), 34571, getPlayerStorageValue(getCreatureMaster(cid), 34571) +1) doCreatureSetNoMove(pla1, FALSE) doCreatureSetNoMove(pla2, FALSE) doPlayerAddMoney(getCreatureMaster(cid), monsters[string.lower(getCreatureName(target))].awa) doSendMagicEffect(getCreaturePosition(getCreatureMaster(cid)), 49) doRemoveCreature(cid) return TRUE ]]></creaturescript> <talkaction words="!start;!summon" event="script"><![CDATA[ domodlib('SumLib') if cid ~= pla1 and cid ~= pla2 then return doPlayerSendCancel(cid, "Voce precisa ser um dos jogadores."), doSendMagicEffect(getCreaturePosition(cid), 2) elseif isPlayer(pla1) == FALSE or isPlayer(pla2) == FALSE then return doPlayerSendCancel(cid, "Voce precisa de dois jogadores."), doSendMagicEffect(getCreaturePosition(cid), 2) end if words == "!start" then if getPlayerStorageValue(pla1, 34570) == -1 and getPlayerStorageValue(pla2, 34570) == -1 then setPlayerStorageValue(pla1, 34570, 1) setPlayerStorageValue(pla2, 34570, 1) doPlayerSendTextMessage(pla1, 4, "Partida comecada.") doPlayerSendTextMessage(pla2, 4, "Partida comecada.") doSendMagicEffect(getCreaturePosition(pla1), 10) doSendMagicEffect(getCreaturePosition(pla2), 10) doCreatureSetNoMove(pla1, TRUE) doCreatureSetNoMove(pla2, TRUE) else doPlayerSendCancel(cid, "A partida ja iniciou.") doSendMagicEffect(getCreaturePosition(cid), 2) end elseif words == "!summon" then if param ~= "" then if getPlayerStorageValue(cid, 34570) == 1 then if monsters[string.lower(param)] then if getPlayerStorageValue(cid, 34571) >= monsters[string.lower(param)].sto then local mom = doCreateMonster(string.lower(param), pos) doConvinceCreature(cid, mom) setPlayerStorageValue(cid, 34570, 2) registerCreatureEvent(mom, "SummonC") registerCreatureEvent(mom, "SummonS") registerCreatureEvent(mom, "SummonK") else doPlayerSendCancel(cid, "Voce nao pode sumonar este monstro.") doSendMagicEffect(getCreaturePosition(cid), 2) end else doPlayerSendCancel(cid, "Este monstro nao pode ser sumonado.") doSendMagicEffect(getCreaturePosition(cid), 2) end else doPlayerSendCancel(cid, "A partida nao esta nesta parte.") doSendMagicEffect(getCreaturePosition(cid), 2) end else doPlayerSendCancel(cid, "Diga o nome do monstro a ser sumonado.") doSendMagicEffect(getCreaturePosition(cid), 2) end end return TRUE ]]></talkaction> </mod>
     
     
    Como configurar:
     
     
    Adicionando novos monstros e editando recompensas
     
     
     
     
    Como fazer o monstro poder ser convencido
     
     
     
     
    Editando as posições
     
     
     
     
     
    Bom, então é isso galera, qualquer dúvida só postar aqui. Em breve melhorarei o sistema! Até mais.
  5. Upvote
    LucasM010203 deu reputação a Kimoszin em [Tutorial] Criando Magias   
    Introdução


    Ao Motivo de fechar a minha "fabrica de spells" resolvi criar esse tutorial. Para os iniciantes aprederem sozinhos. Organizei em Spoiler os Tipos de Magia.


     
    Spell De Attack:
     
     
     
     
    Spell De Cura:
     
     
     
    Spell de Suport:
     
     
     
    Bom é isso Pessoal.
    Espero que tenham Gostado!
    Obs: Quando eu tiver tempo, mostrarei todos os effects
     
    Abraços
  6. Upvote
    LucasM010203 deu reputação a MatheusGlad em Como Editar Magias [Novo Update]   
    Versao 0.1b Tutorial
    Voce nao Sabe nada sobre scripts e nem mesmo como funcionao e quer criar uma magia
    Voce pode ir no classico copy/paste:
    Primeiro Passo:
    Copie uma tag no spells.xml Exemplo:


    E cole logo a baixo uma identica.
    Agora edite certos campos:



    Vermelho Palavras a serem ditas para a magia sair
    Verde Level para Usar a magia
    Amarelo Mana pra Usar a magia

    Negrito Voce deve mudar para o nome do seu script, no caso usaremos eternal extreme winter

    Procure na pasta scripts/attack o bloco de notas chamado eternal winter copieo e cole renomeie-o para eternal extreme winter, abaixo ensino como editar.


    Em seguida voce pode editar certas coisas



    Azul Minimo Dano -- Leve em base que dakele geito que esta 2.7 ira dar 500 de dano se voce multiplicar por 2 o 2.7 ira ficar 5.4 e ira dar 1000 de dano
    Rosa Maximo Dano -- mesmo conceito de cima

    Laranja se voce nao conhece o comando pode ser !z 1,2,3...66 ou /z 1,2,3...66 useo no seu ot e veja um bem legal e apague toda a parte laranja e bote o efeito que voce quer no meu caso irei botar 61

    Conclusao a magia ira ficar com a forma do exevo gran mas frigo com otro dano e com otro efeito

    ___________
    Update 0.2a

    Usando tambem o comando !x ou /x 1,2,3...41

    Na linha da sua magia vai estar assim:




    Para usar os efeitos do /x ou !x voce deve botar antes do EFFECT a palavra DISTANCE e ficara assim:




    Negrito Como devera ficar para utilizar o comando !x ou /x

    Listinha de efeitos e seus devidos nomes:


    ___________________
    Update 0.2b

    Mudando a area da sua spell:

    Repare a linha da nossa primeira spell la em cima




    Neste local voce edita a area da sua magia vamos começar:

    Apague toda akela linha acima em negrito e bote isto:






    Legenda dos numeros:
    0 = nao vai acertar a magia
    1 = aonde a magia vai acertar
    2 = centro que eh o player (nao acertara tambem)

    Agora voce pode fazer uma area que voce queira de qualquer forma
    ___________________
    Update 0.3a

    Como Trocar o Dano da sua Magia:

    Para trocar o tipo de dano repare a linha da magia:



    Vermelho Eh o tipo de dano que ira dar eh so mudalo para outro tipo

    Listinha de Danos:

    COMBAT_PHYSICALDAMAGE - 1COMBAT_ENERGYDAMAGE - 2COMBAT_EARTHDAMAGE - 4COMBAT_POISONDAMAGE - 4COMBAT_FIREDAMAGE - 8COMBAT_UNDEFINEDDAMAGE - 16COMBAT_LIFEDRAIN - 32COMBAT_MANADRAIN - 64COMBAT_HEALING - 128COMBAT_DROWNDAMAGE - 256COMBAT_ICEDAMAGE - 512COMBAT_HOLYDAMAGE - 1024COMBAT_DEATHDAMAGE - 2048PS:Voce pode usar os numeros no lugar das palavras

    ___________________
    Update 0.3b
    Botando em pratica tudo que aprendemos!

    Neste update nos iremos usar todo o conteudo do tutorial para fazer uma magia com varios efeitos,danos e areas diferentes

    Aqui esta o script que criei para trabalharmos em cima dele:


    Legenda:
    Azul Dano de cada wave (onda) da sua magia
    Negrito Area das magias (arr)
    Vermelho Pausa de uma wave para outra, se quizer aumente bote 100,300,500...

    Pronto agora se voce viu os outros updates sabera mudar dano efeito e fazer uma otima magia bem louca

    Video de Demonstraçao:




    __________
    Fim dos Updates (Se voce tiver alguma opniao de update MP para mim que eu faço mais updates)
  7. Upvote
    LucasM010203 deu reputação a ArthurFavilla em Fazendo A Superfície Do Seu Mapa.   
    Fazendo a Superfície do seu Mapa.




    Talvez mais de 70% de um mapa, fique na superfície. Ela é composta por cidades, locais para caça, montanhas, algumas construções e florestas... Mas e o resto?

     

    Provavelmente todos já jogaram Tibia (*), e já perceberem que em uma viagem de Carlin para Thais, uma boa parte do mapa não tem nada! Ou melhor, não tem nada mais que alguma decoração, e é exatamente isso que vou ensinar a fazer:

    A superfície do seu mapa, as partes teoricamente inúteis, mas que fazem muita diferença no seu mapa.



    Parte #1: As Bordas.

     

    O problema mais comum nesta primeira parte são as famosas bordas quadradas:

     



     

    Na foto acima temos um exemplo bem nítido de bordas quadradas, o que não é muito comum de se encontrar por aí, mas que AINDA existe, infelizmente.

     



     

    Talvez você esteja pensando: "Mas estas bordas NÃO estão quadradas!"

    Realmente... elas não estão quadradas, mas isso é o que eu chamo de borda "escadinha", aonde o mapper traça uma diagonal em uma direção e faz as bordas.

    Não é uma borda ruim, mas hoje em dia, o que conta é a diferença, então você pode ser um pouco mais ousado...

     



     

    Nesse caso temos uma borda bem irregular, nada geométrico. Assim seria uma borda IDEAL, mas uma dica: Não exagere demais! Bordas muito irregulares também são feias.

     

    Parte #2: A vegetação.

     

    Outra parte muito importante de uma superfície, se não a mais importante: A vegetação.

    Ao contrário do que muitos pensam uma paisagem natural não depende exclusivamente de árvores. Uma grande planície composta por arbustos, árvores, pedras e pedregulhos pode ser um grande diferencial. Na foto abaixo, coloquei algumas árvores espalhadas randomicamente pelo mapa, que é o que vemos em GRANDE parte dos mapas atualmente.

     



     

     

    Sim, ainda costumam errar muito neste ponto... Na imagem acima vemos um exemplo TOTALMENTE errado de vegetação, até para uma floresta: Árvores em todos os pontos do mapa e com intervalos regulares (quase todas as árvores têm o mesmo espaçamento entre uma e outra). Isso é um erro extremamente comum.

     

    O Certo seria basicamente isso:

     



     

    Pouca quantidade de árvores (lembrem-se: não estamos fazendo uma floresta), separadas em intervalos irregulares e com quantidades diferentes de árvores em cada "grupo".

    Queria deixar claro que essa distribuição de árvores não é regra, mas temos que pensar que nenhum jardineiro plantou essas árvores, logo uma distribuição irregular seria muito mais correta.

     

    E obviamente, uma superfície não é composta apenas de árvores, também encontramos alguns arbustos e plantas baixas:

     



     

    Lembrando, como no exemplo das árvores, nada de espaçamentos regulares entre os arbustos!

     

    Mas não podemos esquecer também das rochas e pedras! São essenciais no seu mapa e dão um toque muito bonito. Como nossa superfície é imperfeita, adicionei outro tipo de solo, um rochoso (você também pode usar outros tipos de solo: como outras variações de grama e terra). Mas também não exagere!

     

     

     

    Nossa superfície está quase pronta, ela já tem uma vegetação muito bem distribuída, pedras e solo diferenciado. Mas ainda existem algumas áreas "peladas", por isso adicionei outros tipos de plantas, flores e até um tronco:

     



     

    Finalmente nós podemos finalizar nossa superfície, colocando os detalhes finais: Randomizar o solo e adicionar aqueles pequenos tufos de grama.

     

    Obs.: Escolhi randomizar a superfície depois de acabar a vegetação, mas isso varia de pessoa pra pessoa

     



     



     

    Pronto! Sua superfície está pronta! E agora que você já aprendeu como fazer, poste aqui o resultado.

     

    Se você ainda acha sua superfície monótona e quer colocar algo diferente, você pode adicionar uma montanha, uma floresta mais densa ou até uma casa abandonada.

     

    E lembre-se: Partes inúteis no seu mapa são muito mais do que você imagina!

     

    Espero que vocês tenham gostado, abraços!

    Tutorial feito por Vufusuf e revisado por Lambix.



  8. Upvote
    LucasM010203 recebeu reputação de DaNDaNrOxX em [Encerrado] [Antigo~] Ajuda Com Tempo Da Skull / Red Skull   
    Funciona assim:
     
    o tempo é em milissegundos, ou seja: 1000 = 1 segundo, mas para facilitar, é dividido esse tempo assim:
     
    1000 = 1 segundo;
    * = vezes.
     
    ou seja coloca 1000 * 60
     
    é igual a 60 segundos ai vai aumentando de minuto em minuto, assim:
     
    1000 * 60 * 60 (1 hora) 1000 * 60 * 60 * 24 (1 dia) e assim por diante...
     
    o * (vezes) é só patra facilitar a organização
  9. Upvote
    LucasM010203 deu reputação a MatheusGlad em Como Cria Uma Magia Que Cria Itens Em Volta De Você Por Um Tempo Para Trapar?   
    data/spells/scripts/trapw.lua:

    local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_EARTH) setCombatParam(combat, COMBAT_PARAM_CREATEITEM, 1499) local area = { {0, 1, 1, 1, 1, 1, 0}, {1, 1, 0, 0, 0, 1, 1}, {1, 0, 0, 0, 0, 0, 1}, {1, 0, 0, 3, 0, 0, 1}, {1, 0, 0, 0, 0, 0, 1}, {1, 1, 0, 0, 0, 1, 1}, {0, 1, 1, 1, 1, 1, 0} } setCombatArea(combat, createCombatArea(area)) function onCastSpell(cid, var) return doCombat(cid, combat, var) end
     
    data/spells/spells.xml:

    <instant name="Trap Wild" words="exevo mas trap" lvl="50" mana="160" prem="1" selftarget="1" exhaustion="2000" needlearn="0" event="script" value="trapw.lua"> </instant>
     
    Nao precisa fazer a runa, pra isso existe o machete. Caso ainda queria a runa eh so falar.
  10. Upvote
    LucasM010203 deu reputação a Vancini em Vancini Ot 8.55   
    Vancini OT 8.55
     
     
    Área VIP
     
    Para comprar VIP, o player deve falar com o NPC VIP Seller ( o NPC está em todos os templos ), a VIP custa 4kk, na área vip tem bixos editados.
     
     
     
    Quests
     
     
     
     
    Itens Novos :
     
     
     
     
     
     
     
    Umas Imagens agora :
     
     
    Templo Vancini City
     
     
     
     
    DP
     
     
     
     
    Cidade de Gelo
     
     
     
     
    TPs
     
     
     
     
    TPs VIP
     
     
     
     
    Quests
     
     
     
     
    Cidade VIP
     
     
     
     
    Itens Vancini
     
     
     
     
     
     
    Download : Aqui
     
     
    Scan : Aqui
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...