Ir para conteúdo

Líderes

Conteúdo Popular

Exibindo conteúdo com a maior reputação em 03/19/14 em todas áreas

  1. Começando bem em um mundo novo! Tudo bem gente? Sim! Ótimo! Vim aqui trazer essa forma de se dar bem no Tibia Global (pra mim deu certo), eu mesmo fiz ele, o tutorial é pra low level pois tudo que você ver abaixo foi de minha experiência. Só pra esclarecer. - Esse é um tutorial para quem tem Premium Time, porém você não vai precisar colocar nenhum Premium Scroll no jogo para vender. - Não é um tutorial para rushar na velocidade da luz, nem tanto para parar no tempo, você upa talvez um pouco mais lento que o normal (depende de quantas horas você jogar). Entretanto, o lucro fica maior que o normal (pra quem não vende premium scrolls). Em Rookgaard Tudo começa quando você cria seu char, level 1 e tal. Em rook não se preocupre muito com a grana, eu vou mostrar o jeito que eu jogo, acredito que seja uma boa maneira, com o objetivo de não ficar muito tempo em rook. - Não de skip no tutorial, é chatinho mas você já entra em rook no level 2. - Lembra da ultima parte do tutorial quando você tem que pergar food pra vender e aprender a usar o trade? Então, nessa parte eu já faço a minha primeira parte pra começar bem em rook, eu simplismente coleto o máximo possível de food, até ficar sem cap, se eu me lembro bem da pra fazer uns 40gp, com isso você já compra um Leather Helmet e um Wooden Shield, pode não parecer dar muita diferença, mas da sim em! - Seu primeiro local de caça vai ser os Rats da área premium, mesmo com o set que eu falei acima, não abuse dos ratos, sempre que possível pegue os Rats de 1 em 1. Não vai demorar pra você pegar o level 4. Com a grana feita, compre uma armor, uma legs qualquer, compre o que der. - Embaixo dos ratos existe uma pequena subcave com Bugs, porém você não guenta muito bem 2 bugs. porém há na cave 2 locais que você se trapa e apenas um bug fica te atacando, procure entrar nessa subcave com sua life no máximo, pois mesmo com 1 bug você vai levar porrada, o segredo é que você vai upar antes de morrer! Sua vida volta ao 100% antes de morrer hehe. Não esqueça de pegar os golds, o nível 5 vem em questão de 10~15 minutos. - Se você tiver um Leather Helmet, Leather Armor, Leather Legs, Wooden Shield e um Sabre, não precisará mais gastar com set, já está razoável, guarde toda a grana, NÃO GASTE! - Com esse set e o level 5~6 alcançado, está na hora de você ir para a parte oeste da área premium de Rook! La você vai encontar várias pequenas caves e pequenas montanhas com wolfs, além de uma cave de snake (não despreze-a). A tática com todos eles é simples, no seu controle de combate, não deixe em full attack, coloque o "escudo-espada" , e não deixe o seu char correr atras da criatura, pois o wolf foje no red, isso é bom, porque quando você entrar na cave, uns 3 ou 4 wolfs vão estar te esperando, vá deixando um a um no red, para depois matá-los. Importante: Sempre quando você ficar no red, suba para a ponte que divide essa área oeste de hunts, e fale com o NPC Dallheim, e sempre coma aqueles bushes de blueberries que você encontar pelo caminho. (parte oeste de rook) - Fique lá até pegar o level 8, demora uns 40 minutos mais ou menos... - Depois de upar o nível 8, você já pode sair de rook, escolher sua vocação, e como você é premium, vá descansar (por 12 horas), deixe no offline training o máximo de tempo, provavelmente você voltará a jogar no seu char somente no dia seguinte. Em Mailand A coisa fica massa agora, saímos de rook, com o offline training seu skill vai estar legal (melhor do que nada), porém é agora o tutorial se divide na parte do lucro, quem mais vai ficar com grana vai ser os knights, por motivos já conhecidos por todos mas que vale relembrar: Knight não gasta tanto quanto as outras classes (paladin gasta muito em spear, mages em mana potions, os knight gastam só com health potions, e só gasta em emergências). - Sobre as hunts, eu prefiro começar em um lugar mais tranquilo, não gosto muito de rots em darashia, ou larvas em ankrahmun, o bom mesmo é comçar em trolls, sim, TROLLS! Pergunta: Mas João, a xp do troll não se compara com a de um rot, por que caçar aí? Resposta: De fato meu caro, mas o que você prefere? Ir em um lugar lotado de gente (as vezes até botters), ou ir em um lugar que você sabe que é mais vazio? (raro de encontrar alguém). - A ocupação é um fator importante na xp/hora, e também, quem não fica desanimado em um lugar cheio de gente dando ks nos seus bichos? - E a xp não fica tão baixa, a cave de trolls de edron é lurada, você entra na cave, vem uns 4 trolls e mais um troll champion. 20k/hora você pega sem muitas dificuldades. - Antes de ir caçar nos trolls, pegue a task do Daniel Steelsoul, ele irá lhe pedir para matar 100 trolls, a recompensa é de 200gp (não é muito mas é melhor que nada). Você faz a task em 30 minutos. - Outro ponto positivo nas diferenças Trolls de Edrons x Rots de Darashia é o perigo, em Darashia, 4 rots podem te dar dor de cabeça no level 8, já uns 6 Trolls em Edron não são nada de mais. Como chegar na hunt dos Trolls? Partindo do DP, vá até o local marcado com um losango e desça o bueiro, depois disso não tem erro, vão ser vários caminhos únicos até você sair la na estrela. A área circulada é a entrada da cave. Depois de fazer a task, reporte a Daniel, entregue a task , e pegue a task dos goblins, que da mais xp/hora, e não é perigosa também, a diferença é que você terá que matar 150 goblins, o prêmio de golds aumenta para 250gps. Como chegar na hunt dos Goblins? Mesmo caminho dos trolls, porém a cave dos goblins se localiza no sul. - Fique nos Goblins até o nível 14~16. A partir desse nível você pode chegar nos Rots de Darashia, ou Larvas de Ankrahmun, porém como eu já falei, são lugares que todo mundo vai, isso tira o potêncial de xp e lucro, eu prefiro caçar nos Rotworms de Edron, é um lugar um pouco menor, pode dar uma exp menor (ou não), mas é um lugar bom, pode demorar mais pra você upar (ou não), o lucro fica em volta de 400gp por cada volta completa na hunt. Eu fico aí até o level 20, se você ficar aí até esse nível, o seu balançe vai ficar bom, principalmente pros knights (cerca de 3~5k). Clique aqui para saber mais sobre a hunt. Nível 20 Você chegou ao nível 20, parabéns! mas, e agora, como fica a promotion? Você precisa de 20.000 gold coins e não tem metade desse valor, porém existe as quests para ajudar você a chegar nesse valor. Vamos deixar esses 3k de fora (guarde para supply e viagens) - Desert Quest = 10.000gps - Arito Task Quest = 5.000gps - Nomad Land Quest = 5.000gps - Custos para fazer a Arito Task Quest = 3.000gps (não pague mais do que isso) Isso já daria os 20.000gps, porém na arito task você precisa comprar uns itens necessários para fazer a quest, como uma Scimitar e um Nomad Parchment, as vezes eles podem chegar a valores absurdos, eu pago no máximo 3k nos dois juntos (não pague mais do que isso). Supondo que você fez tudo isso, e que conseguiu esses 17k. Faltou 3.000gp. Agora é que você vai ter que lucrar o resto caçando. Larvas é um bom lugar, não pense na xp, pois o local pode estar lotado. Enquanto ao supply, leve apenas o básico, potions, food nem precisa pois larva dropa muito meet. Quando chegar aos 20k, fale com o King Tibianus (Thais) ou a Queen Eloise (Carlin). Só mais uma coisa, se você tiver grana suficiente, compre seu bless, ou junte até grana até o nível 24 e faça a Pilgrimage of Ashes Quest, com essa quest o seu bless sai mais barato! (não é tão bom para players nível 25 ou mais). Você irá gastar 5k no total (mais as viagens), leve umas 10 health potions para fazer a quest, pois você irá passar por vários fire fields em um dos NPCs de bless. Mesmo com o bless, nunca se arrisque, se você ver que a coisa ta feia, fuja! Se não conseguir, faça grana em um lugar tranquilo e compre novamente o bless, nunca permaneça sem bless, pois morrer e perder algum equipamento não é nada legal, nem que seja uma plate legs. Agora você está no nível 20~22, e seu skill deve estar razoável, espero que sempre deixe 12 horas diárias trainando offline (sendo assim os knights devem estar com melee 60+, paladins 65+, e mages com ml... bem eu não tenho certeza, mas uma ml 25+ deve estar né!). Agora onde eu vou caçar? E nesse ponto que eu gosto de a fazer tasks, faça as três de crocodilles, da um lucro bom até, e a xp é boa, 20k/hora ou até mais. Crocodilles são fracos, se você for no andar das tartarugas, só tome um pouco mais de cuidado, porque elas são chatinhas, além do local ser um pouco mais lurado. A hunt se localiza em Port Hope, acho que todo mundo conheçe. (o circulo é a entrada) - Que nível pegou? se você estiver por volta do nível 25~27 já vai ficar bom. Até o level 30, você pode escolher aonde quer lucrar, em rot ou nos próprios crocodilles, pode ir nos scarab em ankrahmun (ficam abaixo das caves de larvas), fique a vontade. Nível 30, ta ficando bom... Pegando o Nível 30 está na hora de fazer algumas quests para você fazer uma graninha extra! São missões que passam despercebidas, não tem aquele lucro que vai pagar suas hunts, mas me ajudou e acredito que possa ajudar vocês, se não querer fazer alguma das quests, fique a vontade, segue a lista: - The Exterminator Quest: Aquela quest que você deve ir nos esgotos de Carlin, extremamente fácil, só encontará 2~3 slimes (não contando os summons), o lucro não chega a 1k, eu fiz porque eu não consigo não fazer, cara, isso paga umas 5 viajens! (se você acha que não faz muita diferença pra você, fique a vontade para não fazer). Recompemsas: 1 Small sapphire, 1 small ruby, 1 small amethyst e 1 small emerald. - The Ultimate Booze Quest: Também da pra se fazer bem antes, mas eu prefiro deixar pra fazer essas quests todas juntas, uma atras da outra, o lucro também não é o mais alto, mas de grão em grão... .Você só precisa falar com um NPC encima do dp de Venore, ele lhe entregará uma garrafa que você terá que encher ela em Kazordoon, e devolver ao NPC de Venore. Recompensas: Uma light shovel (fique com ela, não venda), 1.000gps e 100 pontos de xp. - Sea of Light Quest: Essa é um pouquinho mais difícil pela demora, você fala com uns NPCs, mata uns bichos. O lucro é um pouquinho maior que as outras quest que eu disse. Recompensas: 1.500 pontos de xp, 10 small diamonds e 1 Yellow Gem. Você aguenta todas as criaturas desses três quests sem problemas, eu mesmo não usei nem 5 health potion no meu kina. O Lucro das 3 quests juntas vai dar uns 5.000 gold coins mais ou menos, é alguma coisa, já que esse tutorial é pra quem é da humildade A respeito dos equipamentos, compre o que for possível: Knight: K Armor, K Legs, Crown Helmet, Dragon Shield, Arma do Nível// Paladin: Paladin Armor, Blue Legs, Crown Helmet, Dragon Shield, Royal Spear. Mages: Crown Helmet, Spirit Cloak, Plate Legs, Dragon Sehield, Wand/Rod do nível / Deixem para comprar a Knight Legs por último, se não sobrar grana, não se preocupe muito, pois você vai lucrar mais a partir de agora. A diferença de defesa da plate pra knight é de 1. Além dessas quests, há uma quest diária que você pode fazer, chamada Rottin Wood and the Married Men Quest, você pode fazê-la de 20 em 20 horas, existe uma remota chance de ganhar um Hunting Horn! ISSO MESMO, UM HUNTING HORN. Se você der uma cagada dessa, esqueça as hunt para fazer lucro, faça exatamente o contrário, waste! (não é facil, mas não desista!) Também há outra forma de conseguir um lucro extra, que é a chance de você droprar um Leech (item para domar o Water Buffalo). Você pode tentar "pescar" o item uma vez por semana. Para isso você precisa ir em um determinado sqm de swamp e usar a sua shovel nele. (Infelizmente eu não consegui o leech ) Aonde caçar agora? - Foi nesse nível que eu fiz as minhas 3 task de mammoths junto com as 3 de badgers. Aqui você lucra legal, eu fiz muita grana, ainda em 1 dos bosses dropou o querido Red PoC (vendi no market por 24k). - Em uma dessas task você consegue grana pra comprar a Knight Legs. - Eu upei do 30 até o 37 em tasks, porém era tempo de double exp, então provavelmente você irá pegar um nível 34. - Com a grana final dessas tasks, você ficará bem na fita! Se for mage, compre uma Focus Cape, se for paladin, compre uma Paladin Armor, o resto deixem como está. - Depois da task de Mammoths, é uma boa fazer a task de tarantulas. É uma task que lucra um pouco menos que os Mammoths, porém você faz ela muito rápido, a exp/hora fica bonita, eu já cheguei a fazer 35k/hora com bônus, eu acho uma xp legal. - O lucro do boss é agradável, veja: 0-7 platinum coins, 0-4 spider silks Knight Legs, Steel Helmet, Terra Hood, Time Ring. Então, você acha que não vai lucrar? Creio que depois de fazer essas 3 task, você vai upar 3 níveis, supondo então que esteja no nível 37, chegamos a mais um ponto que se diferencia entre as classes, pois, se você for Paladin ou Mage, você poderá fazer a task de Carniphilas, não é difícil de se matar, só é triste para os knights, pois essa platinha tem um bom melee. Para os Knights eu recomendo ir nos Cyclops de Cyclopolis (com cuidado), ou pode ir em scarabs, ir nas tumbas (apenas nos dois primeiros andares), mas se você for um jogador muito profissional, tente ir nas carniphilas mesmo. Fique nessas hunts até o nível 40. Nível 40 É o lindo nível 40, eu gosto desse nível, pois você a um passo dos 1.000.000 pontos de experiência. Nada de novo aqui, a tática são as mesmas, tasks, quando não tiver task pra fazer, lucre. - A Task de Terramite é perfeita para knights, fácil, exp rasoável, graninha legal, eu não recomendo muito para mages (pelo fato dos espaços estreitos), mas eu tentaria caçar la. Já vi um paladin caçando lá. Faça essa task na cave de Ankrahmun. Para saber mais clique aqui. Fazendo essa task 3x, você pegará uns 2 níveis, apenas isso, triste. Então você deve estar por volta do nível 42. Aqui fica aberto, até o nível 50 eu não fiz mais nada além de caçar (caçei em Cyclopolis, e nos próprios Terramites), porém eu esqueci que por volta do nível 45 já era tranquilo fazer a task de carniphila, fica a dica para os Elite Knights. Outro lugar que eu esqueci que poderia caçar era nos Mutated Humans, mesmo não valendo tanto assim (já que o lugar é lotado), o lucro é bom e a xp pode ficar boa. Essas hunts servem para Paladins e Mages também. - Para os Mages, especialmente os sorcerers, nesse level 42, vocês podem se arriscar a caçar Earth Elementals em Edron, lucro bonzinho, xp melhor ainda. Pode ir, aconselho não ir no andar dos Bog Raiders para os menos experientes, eu já vi um sorcerer nível 33 caçando lá, ele me disse que tinha ml 57, então é de se perceber que ele ficou no offline training por um bom tempo, o que não acontece no nosso tutorial. - Mais uma coisa que eu tinha esquecido e vocês podem fazer, a Troll Sabotage Quest (que lhe da a elvenhair rope). Nível 50 Ao respeito dos equipamentos: Knight: Crusader Helmet, Crown Armor, Zaoan Legs, Zaoan Shoes, Vampire Shield, Arma do Nível// Paladin: Crusader Helmet, Paladin Armor, Zaoan Legs, Zaoan Shoes, Vampire Shield, Royal Spear. Mages: Hat of The Mad, Focuas Cape, Zaoan Legs (Blue Legs se preferir), Zaoan Shoes, Vampire Shield, Wand/Rod dos nívels 33, 37 e 42 //// Até agora eu não tinha falado sobre as spells, mas acho que é óbvio dizer que é pra comprar todas elas, não deixe pra depois, eu sempre consegui comprar na hora, ou em 1, 2 níveis depois. A melhor coisa aqui são as novas tasks, principalmente a de Killers Caimans ( *-* ). Tudo bem que ela é infinitamente melhor para knights, mas eu já vi paladin caçando lá, mages tbm. Eu já não estava mais com a exp bônus, mesmo assim, upei do 50 até o 57. O meu lucro passou dos 100.000gps, então não se preocupe em gastar um pouco mais com pots, pois o Killer é perigoso nesse nível, todo cuidado é pouco, e a experiência/hora é absurda, eu já fiz 120k/hora (com bônus, sem double e com 1 knight 120 na cave). [saiba mais sobre os Killer Caimans aqui!]. Quando tiver grana, compre uma BoH. - Para os Mages: Se não conseguirem de forma nenhuma caçar nos caimans (o que é bem provável), não forçe a barra (para não morrer). Qual seria o Killer Caimans dos mages? Os Water Elementals, um lucro um pouco menor, uma exp maior, e mais fácil para os sorcerers e druids. Deixe para conseguir os task points em uma outra ocasião. - Fiquem nos killers até fazer as 3 task, pros mages, fiquem nos waters até mais ou menos o level 55. - Depois disso, é hora de fazer 3x a task de Ancient Scarabs! Essa task é voltada para tentar a sorte de conseguir um Ornamented Broch (200k +/-). Porém a exp é rasoável, podendo upar uns 3 nívels mais ou menos. - Pra quem não chegar ao nível 60, faça suas hunts nos Waters e Killers, até alcançar o 60. (Não hesite em vir nessas hunt, são ótimos locais para níveis 60,70,80,90...) - Se estiverem muito lotadas e vocês não gostarem, sempre existe os clássicos Dragons para se caçar; Yalahar, Darashia, tanto faz. - Os Knights tem também a opção de fazer a task de Mutated Tiger em Yalahar se preferirem. Creio que também seja boa para Paladins. - Os Mages podem arriscar também ir nos Bog Raiders de Edron, aqueles que eu falei que ficam juntos com os Earths. Nível 60 A respeito dos equipamentos: Knight: Zaoan Helmet, Golden Armor (se tiver grana pode comprar um DSM), Zaoan Legs, Demon Shield, BoH, Arma do Nível // Paladin: Zaoan Helmet, Paladin Armor, Zaoan Legs, BoH, Demon Shield, Arma do Nível // Mages: Hat of The Mad, Focus Cape, Zaoan Legs, BoH, Wand/Rod (tenham as de death e as do 65, se não custarem muito!)//// Hunt de ZOMBIES! - Ótima hunt de Liberty Bay, caçe sempre com stealth ring (pois você não aguenta 4, 5 zombies, o que não é difícil de se encrontrar). Quer saber como caçar nos Zombies? Clique Aqui! - Para os Mages eu aconselho continuar principalmente no Water Elementals, é o que há, upa muito rápido, só tenha cuidado, esse bicho é desgraçado. - Se você quer lucrar MUITO, vá nos pirates de Liberty Bay, e faça a task, demora, mas os loots dos boses fazem valer a pena. Esse tutorial acaba por aqui, na casa do 60, por que? R: Porque foi até aí que meu char no Global chegou até agora (64 pra ser exato), eu pretendo atualizá-lo de acordo com as novas coisas que eu ir aprendendo, níveis que eu ir upando, dicas que vou seguindo, e assim vai... Não se esqueça: - Nunca fique sem bless. - Nunca perca sua esperança de dropar um Hunting Horn. - Sempre tente pegar um Leech. - Se tiver sem opção de caça, lucre em locais mais fracos. - Offline Training sempre, 12horas por dia e você terá um skill bom com o tempo. - Sempre que puder, economize seu gold, faça todas as quests possíveis. Esse pode não ser o melhor jeito de se começar em um novo mundo, mas creio que seja uma maneira positiva, e tranquila, sem aquele compromisso de rushar, vai jogando e se divertindo, na tranquilidade, humildade. Críricas, sugestões, fiquem a vontade!
    4 pontos
  2. Eae galerinha do xtibia, vim aqui hoje para ensinar uma coisa simples, mas que muitos nao sabem, e queriam aprender de uma forma bem facil. Vou ensinar á criar spells básicas de damage, de area, e alvo unico... Primeiro, irei ensinar uma de alvo unico. Vá em data/spells/scripts copie um arquivo .lua e renomeie para o que desejar: Verde: é o tipo do dano, seja physical, fire, earth, ice, energy, lifedrain, manadrain, etc... setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 22) Vermelho: é o numero do efeito que irá até o alvo, voce pode escolher usando o comando "/x" setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -120.2, 1, -125.2, 1) Roxo: é o dano minimo, e maximo da spell. Baseado no level. doSendMagicEffect(position1, 196) Azul claro: Efeito que vai dar no target, quando o efeito "22" bater nele, voce pode escolher pelo comando "/z" E agora, vamos colocar sua spell no spells.xml: <instant name="Nome da spell" words="Nome da spell" lvl="Level necessario" mana="mana que ira gastar" aggressive="1" range="7" blockwalls="1" needtarget="1" exhaustion="1500" needlearn="0" event="script" value="Nome do arquivo.lua"> <vocation id="id da vocaçao"/> Agressive: se for para dar dano coloque "1" se nao for apra dano coloque "0" Blockwalls: se o jutsu pode atravessar paredes coloque "0", se nao atravessar coloque "1" Needtarget: se precisa estar atacando coloque "1" se nao, coloque "0" Exhaustion: Tempo de exalst, 1500 = 1,5 segundos. Bem, fazendo tudo isso certinho, sua spell estará pronta, agora vou explicar uma spell simples de area. ---------------------------------------------------------------------------------------------- Copie qualquer arquivo, e renomeie para o que desejar. Vou utilizar um script bem simples que eu criei agora, só para demonstraçao. local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 214) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -93.5, 1, -106.5, 1) arr1 = { {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0} } local area1 = createCombatArea(arr1) setCombatArea(combat1, area1) local function onCastSpell1(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat1, parameters.var) end function onCastSpell(cid, var) local position1 = {x=getCreaturePosition(cid).x+2, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z} local parameters = { cid = cid, var = var} addEvent(onCastSpell1, 100, parameters) return TRUE end setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) Essa parte, como expliquei na spell anterior, apenas mude o tipo de dano, á seu gosto. setCombatParam(combat1, COMBAT_PARAM_EFFECT, 214) Aqui, voce muda o efeito, que está o numero 214, voce pode modificar, vendo os numeros pelo comando "/z" setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -93.5, 1, -106.5, 1) Aqui, voce escolhe dano minimo e máximo, baseado no level. arr1 = { {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0} } Essa seria a area da spell, os numeros: 3: local onde o player que executou a spell irá estar. (sempre no meio) 1: local onde sairá a spell, ou seja, onde ira sair o efeito, e ira dar dano. 0: nao sairá nada Agora, vamos coloca a tag da spell em spells.xml: <instant name="Nome da spell" words="Nome da spell" lvl="level necessario" needtarget="0" mana="mana que ira gastar" aggressive="1" exhaustion="1600" needlearn="0" event="script" value="Nome do arquivo.lua"> <vocation id="id da vocaçao"/> O resto ja expliquei na spell anterior. Bem galera, por enquanto é isso, muito simples né.. Estou aceitando criticas e dicas para o topico, que eu estarei editando... e, em breve farei um tutorial mais aprofundado .... Se gostou nao esqueça de deixar seu rep
    3 pontos
  3. Madarada

    [Tutorial] Outline

    Olá Xtibianos,meu nick é Madarada e hoje venho lhes trazer um tutorial básico de spriting.Pretendo elevar o nível de nossos spriters e por isso todos os meus tutoriais serão minuciosamente detalhados do começo ao fim.Algumas pessoas podem achar este tutorial desnecessário e muito simples,porém vamos lembrar que muitos membros estão iniciando e não sabem por onde começar então vamos engatinhando até aprender a andar e talvez até correr. Enjoy. Antes de começarmos quero deixar claro que : Neste primeiro tutorial iremos abordar um assunto muito importante que se chama outline.Futuramente virão tutorias de outline de monstros,armas,cenários mais por enquanto apenas humanóide. - Outline - (humanóide) # Outline o que é ? Outline do inglês (linha de fora) é o contorno do sprite l - Criando uma base - Primeiramente devemos localizar e abrir o Ms paint do windows,ele será nossa ferramente principal e nós ajudará em nossa jornada. - Antes de começarmos devemos habilitar nosso abiguinho "miniatura" ele fica no canto superior como na imagem abaixo.Com ele habilitado podemos usar a lupa em resolução máxima e ter uma visão de como está ficando nosso sprite: - Em seguida selecione uma sprite para usar como base,eu uso o citizen por ser bem simples contudo,algumas pessoas preferem fazer uma outline do zero o que eu acho que para um iniciante um tanto avançado.Seguindo o exemplo do citizen pinte o todo de vermelho (por ser uma cor bem saturada para diferir da roupa do citizen) porém, sem atingir as linhas principais que separam as pernas,cabeça,braço e olhos como no exemplo: - Feito isso contorne as linhas as principais de preto (são as linhas contornadas de verde) para limpar o sprite.Pinte a parte interna da arte de branco como no exemplo. ll - Aprimorando sua base - Agora temos nossa base,porém ela ainda é um citizen então iremos criar o nosso próprio personagem.Para isso precisamos nos basear em alguma imagem (se você tem o dom de desenhar pode criar uma roupa para sua base e pular esta parte).Vamos nos fixar em fazer os detalhes mais básicos,por isso eu peguei está de um camponês medieval bem simples: - Como próximo passo iremos analisar a roupa do campones e tentar reproduzi-la em nossa base.Para facilitar iremos copiar a imagem do campones para dentro do paint e coloca-lo de canto,dessa maneira podemos observar a todo instante se a reprodução da imagem está correta: - Iremos começar pelo cabelo,essa parte pode ser fácil falando,mais deve ser feita com atenção para um bom resultado mais tarde.Primeiramente iremos selecionar a cor azul e fazer um rabiscado de cabelo caindo sobre os ombros,aos poucos vamos adaptando ele á cabeça e criando forma. - Na sequência,devemos tirar a margem de erro melhorando o cabelo e arredondando-o de uma maneira coerente à nossa imagem.Os pixels vermelhos devem ser removidos e pintados de branco,e os pixels verdes devem ser adicionados e pintado de azul.Segue abaixo um ilustrativo: - Após feito isso devemos colorir a margem de preto para tornar o cabelo parte da outline.Em rosa estáo os pontos aonde devem ser adicionado os pixels preto: - Com o cabelo terminado agora iremos direto para a cota de malha e mangás da roupa. De início iremos fazer uma blusa na parte superior do corpo. - Com a primeira parte da cota de malha pronta seguiremos para a segunda parte.Vamos começar fazendo pequenas alças nos extremos da blusa,cor cinza para podermos diferir as partes da malha.Aos poucos vamos prenchendo e seguindo com uma gola V. - Finalizando iremos terminar a calça e a bota.Fazendo um traçado curvado vamos dando forma á bota e dividindo a calça. - Por fim adicionamos detalhes na bota dando um pouco de volume e melhorando sua aparência lll - Detalhes Finais - Usando o conta gotas conseguimos pegar o tom da cor exata da roupa do camponês - Finalmente está pronto nossa primeira outline de humanóide Esse foi o #l tutorial básico de spriting (outline) Se gostou da um rep ae tio Até mais próximo tutorial #ll tutorial básico de spriting (perspectiva) Este tutorial foi feito por Madarada Postado em 14.03.2014
    3 pontos
  4. Zoobu

    Galeria [Keviz]

    Ola! Bom, já tinha esse Zoro há algum tempo já. Ta meio gordo... ------------------------------ Ino, como n é pra uso livre decidir n postar a sprite. #Vou tentar terminar o Madara que comecei...
    3 pontos
  5. Opa galera do XTibia, eu mais uma vez trazendo um bom e útil tutorial. Esse tutorial é pra quem tem a necessidade de uma pagina que confirme uma doação feita e automaticamente essa confirmação seja direcionada ao e-mail do administrador! Bom galera é um php simples, não tenho muito conhecimento com php, o que estou postando agora foi o resultado de algumas pesquisas e pouquinho de dor de cabeça mais saiu do jeito que eu queria. OBS: A imagem anexada chega no seu e-mail como um arquivo sem formato mais pode abrir com o Paint ou o Visualizador de imagem que abre normal! Lembrando que é obrigatório e necessário que toda parte de apache, php e send-mail estejam funcionando corretamente no seu servidor, como eu utilizo Linux apenas instalei apache2, php5 e sendmail. Comandos que eu utilizei no Linux: apt-get install apache2 apt-get install php5 apt-get install sendmail killall -9 apache2 /etc/init.d/apache2 start Outra coisa, dificilmente esse sistema funcione no seu computador, localhost, é necessário um configuração adequada, eu utilizo um servidor dedicado não tive dor de cabeça em relação a isso. Vamos ao que interessa... Crie dois arquivos .php chamados, confirmar.php e enviar.php, adicione os dois na pasta htdocs ou quem usa linux pasta www, quem utiliza o Novo Gesior ACC joga o confirmar.php na pasta pages e o enviar.php na pagina htdocs ou www. Dentro do arquivo confirmar.php você adiciona os seguintes code: CONFIRMAR.PHP SEM ANEXO: CONFIRMAR.PHP COM ANEXO: Dentro do arquivo enviar.php você adiciona os seguintes code: ENVIAR.PHP SEM ANEXO: ENVIAR.PHP COM ANEXO: O que deve ser alterado: Enviar.php Linhas, 3 e 60 03. $email_to = "natanbeckman@live.com"; // Seu e-mail 60. echo "<script> window.location.href = 'http://localhost'; </script>" ; // Site do seu server Confirmar.php Caso você utilize a opção Login: então altere na linha. 3 03. <label for="character">Character Name:</label> Em index.php adicione: case "confirmar"; $subtopic = "confirmar"; $topic = "Confirmar"; include("confirmar.php"); break; Em layout.php adicione abaixo de: <a href='?subtopic=shopsystem&action=show_history'> <div id='submenu_show_history' class='Submenuitem' onMouseOver='MouseOverSubmenuItem(this)'onMouseOut='MouseOutSubmenuItem(this)'> <div class='LeftChain' style='background-image:url(<?PHP echo $layout_name; ?>/images/general/chain.gif);'></div> <div id='ActiveSubmenuItemIcon_show_history' class='ActiveSubmenuItemIcon'style='background-image:url(<?PHP echo $layout_name; ?>/images/menu/icon-activesubmenu.gif);'></div> <div class='SubmenuitemLabel'>History</div> <div class='RightChain' style='background-image:url(<?PHP echo $layout_name; ?>/images/general/chain.gif);'></div> </div> </a> Adicione: <a href='?subtopic=confirmar'> <div id='submenu_confirmar' class='Submenuitem' onMouseOver='MouseOverSubmenuItem(this)'onMouseOut='MouseOutSubmenuItem(this)'> <div class='LeftChain' style='background-image:url(<?PHP echo $layout_name; ?>/images/general/chain.gif);'></div> <div id='ActiveSubmenuItemIcon_confirmar' class='ActiveSubmenuItemIcon' style='background-image:url(<?PHP echo $layout_name; ?>/images/menu/icon-activesubmenu.gif);'></div> <div class='SubmenuitemLabel'>Confirmar</div> <div class='RightChain' style='background-image:url(<?PHP echo $layout_name; ?>/images/general/chain.gif);'></div> </div> </a> Dessa forma somente que tiver com ACC logada vai ter acesso a pagina. E pronto galera terminamos, espero que todos façam atentamente pra sair tudo perfeito, espero ter ajudado. Qualquer pessoa pode fazer copia deste tutorial desde que mencione os devidos créditos. Vejam algumas imagens como ficou o meu: SEM ANEXO: COM ANEXO: COMO CHEGA NO E-MAIL: Creditos: Natanael Beckman
    2 pontos
  6. (Como fui ganhador do ultimo torneio, estou seguindo com ele) Segue abaixo como deverá ser o funcionamento deste evento. conto com a participação de todos. Premiação: 1° Lugar- 5 Reps + Medalha especial. 2° Lugar- 2 Reps. 3° Lugar - 1 Rep. Durante toda a semana este tópico estará aberto com uma proposta de temática particular para um desafio aberto à todos os usuários que se interessarem. A leitura das regras é crucial para um bom funcionamento do concurso. Para quem já participou, já tem conhecimento das regras, espero que não haja desclassificações. Espero que todos tenham entendido o funcionamento do evento e aguardo uma participação em massa, estou contando com vocês, segue abaixo o tema: Boa sorte. OBS: Sei que o tópico está igualzinho, mas o que importa é o conteúdo, eu espero que todos participem. Quem irá premiar o vencedor é o Lucasmml, eu estou apenas seguindo com a proposta, de continuar o evento. Espero que os próximos vencedores também continuem com a proposta. @IMPORTANTE - VOCÊS TEM 7 DIAS PARA POSTAR AS SPRITES, ATÉ O DIA 26/03 (QUARTA-FEIRA). SERÁ CRIADO UM TÓPICO PARA VOTAÇÃO.
    2 pontos
  7. Tonynh

    [Life Thread] Lock Sano

    Resolvi criar um novo char só para fazer um LT de sua jornada.. =) Ele está no mesmo mundo do meu EK, então o chamarei de "maker", levando em consideração que não é o meu char mais forte, e está em outra account. Estarei jogando de uma maneira mais "old-school", sem muito rush-level, e sim role-play.. focando nos detalhes do game. Nome: Lock Sano Vocation: Knight Level: 8 World: Honera Status: Free Account SET ATUAL SKILL's ATUAIS IMAGENS O TÓPICO SERÁ ATUALIZADO COM AS PRÓXIMAS POSTAGENS. FIQUE A VONTADE PARA ACOMPANHAR.
    2 pontos
  8. Alexclusive

    Comidas gigantes [fantástico]

    O hábito infantil de brincar com a comida ganha uma nova dimensão... Vejam só que fotos fodas: "Pegando no pesado para encher as uvas" "Atenção: homens trabalhando" "Manobras radicais no abacate" "Flagrado no ar" "Trabalhadores no horário do almoço em pleno Empire State?" "Esta mais uma pra uma marmita mesmo...rs" "O artista em seu ofício" "O mármore (ou amendoim) esculpido vira obra de arte" "Não deve ser nada fácil trabalhar neste solo cheio de água. Ops, é uma melancia kkkkkkk" "Um dia de brincadeiras na neve" "Ou um delicioso doce com claras em neve?" "Fogo, fogo!" "Não é todo mundo que aguenta o calor da pimenta dedo-de-moça" "Muitas bolas para um buraco só!" "Ainda bem que cada jogador tem o seu" Bem criativas né? Pra mim todas ficaram ótimas... Espero que também tenham gostado, Divirtam-se vendo as imagens
    2 pontos
  9. Alexclusive

    Assinaturas da Semana

    Dando aquela organizada de sempre no pc aqui, achei uma pasta que eu não via a muito tempo. Uma pasta que tinham algumas de minhas signs que fiz quando comecei a participar do concurso Assinatura da Semana, que hoje é o A Melhor Assinatura. (PARTICIPE VOCÊ TAMBÉM) (não estão em ordem de participação) Tenho certeza que teve outras...só que não estavam aqui e eu provavelmente devo ter deletado. De todas que participei só fiquei em primeiro 1x. Podem cair matando ai...kkkkkkkkkk
    2 pontos
  10. wesquel

    Duvida Sobre dat editor

    Ola eu vim saber pq quando eu vou compilar o dat no meu dat editor some tudo olhem eu faço tudo direito 1# Eu pego a sprite do pokemon,o corpo e a Foto 2#Vou Compila seleciono tudo dnv o dat e o spr 3# quando eu salvei aconteceu isso Obs: Uso o Servidor gabrielstux Editado pela sara
    2 pontos
  11. Zoobu

    Galeria [Keviz]

    Valew, vou continuar sim. Valeu Breno :} vlw kkkkk ué, vc sumiu cara :3
    2 pontos
  12. Olá comunidade, O meu nome é Lucas Melo, conhecido como LuquitossML, eu recebo muitas mensagens aqui no fórum de membros que gostariam de auxilio para a criação/edição de uma sprite e outros com interesse de aprender a spritear, como eu não tenho tempo para ajudar todo mundo, decidi fazer um tutorial, neste tutorial eu vou compilar tudo aquilo que você precisa saber para começar a arte da perspectiva 45°. Aqui nós vamos aprender passo a passo para a criação de uma sprite. Tutorial Básico sobre quase tudo aquilo que você precisa saber. Introdução: Definição Geral.No Tibia, assim como todos os jogos, os elementos gráficos são chamados de Sprites. Para criar estes sprites, utilizamos uma técnica de design gráfico conhecida pelo nome de Pixel Art. Pouca gente conhece essa arte, que surgiu com os primeiros videogames. Pixel art significa fazer Arte através da utilização de Pixels. Pixel são os pequenos quadrados que compõe as imagens gráficas de qualquer sistema televisual. A organização correta de pixels pode gerar formas que podem ser reconhecidas como animais, objetivos, fotografias, plantas, animações variadas, etc. Técnicas de pixel artPixel art conta com algumas técnicas diferentes de qualquer outro tipo de arte, por ser uma arte de baixa resolução. Dithering: É o uso de padrões de pixels para se criar a ilusão de que existem mais cores do que realmente se estão sendo usadas. Também é usado para se fazer texturas. Anti-Alias (ou AA): Técnica para se suavisar linhas, usando tons médios para reduzir o contraste entre a cor da linha e a cor que envolve a linha. Sombreamento: O sombreamento em pixel art deve ser feito como em objetos reais, com base em uma fonte de luz. Sombrear a figura das bordas para o centro é um erro bastante comum, chamado de Pillow Shading (ou sombreamento 'travesseiro') Salvando deu Trabalho:Para se salvar um trabalho seu no computador, deve-se usar o formato correto. JPG é um formato que usa um tipo de compressão bom apenas para imagens suaves e contínuas. Se usado no pixel art, causa uma enorme perda de qualidade BMP é um formato que apesar de manter a qualidade, acaba resultando em um arquivo muito pesado GIF e PNG são os formatos mais apropriados. GIF, com uma paleta limitada a 256 cores, é o formato ideal, já que é o menor e dificilmente o pixel art terá tantas cores. Se você usa o programa Paint para fazer pixel art, salve como PNG, pois quando o Paint salva como GIF, ele usa uma paleta de cores padrão, e causará alterações de cores no seu pixel art. Categorias:Pixel art é normalmente dividido em duas categorias. Isométrico é o pixel art que imita uma visão em 3 dimensões, mas que não possui perspectiva. Não-isométrico é qualquer outro tipo de visão como Front View (frente) ou Top View (de cima) Como começar a fazer Pixel Art? Existem vários programas para se fazer Pixel art. O mais simples deles é o conhecido Microsoft Paint, ou como dizem: MS Paint. A interface do Paint, é muito muito simples, e com o tempo você entenderá cada uma das funções que ele é capaz de realizar. Ferramentas Básicas:LUPA - Amplia ou reduz o CANVAS (Área onde se desenha ou Área selecionada). LÁPIS - Ferramente capaz de pintar um pixel por vez. BORRACHA - Apaga o que foi desenhado. LATA DE TINTA - Preenche formas com cores. Controles Básicos. CTRL + A = Seleciona todo o Canvas. CTRL + C = Copiar Canvas. CTRL + E = Abre a Janela de Atributos do Canvas. CTRL + F = Fullscreen CTRL + G = Cria uma grade de pixels nos aumentos de 6x e 8x da LUPA CTRL + R = Abre Janela de Inverter ou Girar o Canvas. CTRL + T = Ocultar Barra de Ferramentas. CTRL + V = Colar Canvas. CTRL + Z = Desfazer ação. Desenvolvimento: Agora que já temos uma abordagem geral sobre o tema, vamos aprofundar nossos estudos. Luz e Sombra na perspectiva 45°.Para quem está começando é essencial ter noção de como a luz se comporta na perspectiva que focamos. De modo simples, a luz tem sua fonte a 45 graus acima do objeto, ou seja, a parte "noroeste" do sprite precisa sempre estar mais iluminado do que a parte "sudeste". Vejamos: Obs: Virar a sprite horizontalmente permite verificar se a luz está se comportando da maneira correta (Vindo de uma fonte que está a esquerda e acima do sprite - ou seja, a noroeste ) Lembrem-se de sempre considerar que a parte sudeste não é totalmente escura. Pois a parte da luz que vem do noroeste e chega até sudeste cruzando o sprite, pode refletir/refracionar e iluminar a parte sudeste, mas lógicamente, essa luminosidade será menor. Uma das regras mais importantes e obrigatórias caso seu intuito seja seguir o padrão Tibia: A luz vem do noroeste, mas mesmo assim, ainda existe luz vinda das demais fontes naturais e refletidas pelas superfícies. Sendo assim, seu sprite recebe luz de todas as direções, mas preferencialmente pelo Noroeste. Anti-Aliasing (AA). Quando trabalhamos com pixels percebemos que as bordas dos desenhos costumam aparentar muito o fato de que os pixels são de fato quadrados. O problema de muitos desenvolvedores gráficos no começo do pixel art, foi justamente no momento em que precisavam desenhar elementos que não seguissem o padrão quadrado dos pixels, como por exemplo Círculos, Esferas, e bordas redondas. Para muitos, a solução desse problema surgiu com a criação da ténica de Anti-Aliasing ou simplesmente AA. O AA foi um grande avanço no desenho de formas esféricas ou outras que precisassem passar a idéia de uma superfícia lisa, sem irregularidades. Mas como isto é possível se todo sistema televisual utiliza PIXELS para formar gráficos? A resposta é simples: O AA utiliza pixels que misturam as linhas com o plano de fundo em que elas estão. Quando isto é feito, nossos olhos não conseguem distinguir as irregularidades dos pixels. Em primeiro lugar devido ao tamanho dos pixels e segundo lugar devido a uma boa suavização de bordas. Vejam no exemplo: http://img507.imageshack.us/img507/8484/aaexampleok2zl9.png Obs: Créditos da imagem: Galiant Na esquerda da 2° imagem, vemos o circulo formado de vários pixels pretos. Suas bordas estão "cruas" e sem AA. Assim, mesmo no aumento menor é possível perceber as falhas de suas bordas redondas. Na direita da imagem vemos o mesmo circulo após a aplicação da técnica de Anti-Aliasing. E agora, no aumento menor, não se pode mais ver as falhas das bordas. Como fazer Anti-Aliasing? O Anti aliasing é simples apesar de não parecer. Tudo se baseia em 3 passos: 1 - Observar primeiro o desenho que se quer suavizar. 2 - Observar o fundo no qual este desenho está inserido. 3 - Adicionar cores que simbolizam a mistura das cores do desenho, com o seu fundo. No exemplo acima (dos circulos) tinhamos um circulo PRETO, num fundo BRANCO, então apenas adicionamos tons de CINZA (PRETO + BRANCO) para suavizar a borda. No caso de uma sprite, o AA é feito internamente, ou seja, é feito dentro do outline/lineart da sprite, isso é feito utilizando no caso tons mais escuros nas partes cerrilhadas da sprite. Vejamos: Como podem ver na direita, a disposição dos pixels escuros nas partes mais cerrilhadas é o chamado AA, não é necessário que seja utilizado apenas preto para se fazer o Anti-Aliasing. Exemplo: "Ahh luquitos, eu quero fazer algo roxo, como eu faço AA nele?" Simples, apenas faça os passos iniciais para se fazer uma sprite: Faça um outline (contorno do sprite) Comece a pintar. comece a fazer o AA. (no caso do meu amigo da sprite roxa, utilize tons roxos escuros nas partes cerrilhadas da sprite) Logo depois do AA pronto faça a Iluminação, no caso, Luz e Sombra. Depois de todos esses passos, veja se não há mais nada para arrumar e "Voilá" Sua sprite está pronta. Conclusão: O Investimento do Tempo e Esforço. Trabalho em pixel art é demorado e muitas vezes de difícil processo. Quanto mais tempo você gasta trabalhando, e, em seguida, um pedaço de refino, Melhor será sua aparência. Isso muitas vezes pode levar horas, mas as recompensas valem a pena. Se você não está preparado para investir o tempo em seu trabalho, Ele não ira fluir, independentemente do número de tutoriais que você lê. Nada da certo na primeira vez? As primeiras interações com o seu outline/lineart ou imagem (sprite) sombreada pode muitas vezes ser frustrantes. Não desanime, mesmo os erros aparentemente mais hediondos podem ser editados em algo decente. Uma vez que a última versão de sua sprite é completa, sentar e dar uma boa olhada nela é essencial. Este reajuste geralmente divide-se em um simples ciclo de 3 etapas: 1 - O que aparentemente há de errado? 2 - Como posso corrigir? 3 - A fixação dele. O uso de referências. Muitas vezes, você pode compensar a falta de conhecimento sobre algum objeto através de imagens. Estes podem ser encontrados a partir de uma variedade de fontes, a mais imediata a ser através de um motor de busca na internet.Você também pode encontrar cores novas e interessantes a partir de fotografias e arte dos outros pixel. Lembre-se que o plágio direto, incluindo a edição do trabalho de outras pessoas, é distintamente ilegal. Espero que o tutorial tenha sido útil para alguém, caso o tutorial tenha uma grande repercussão e o pessoal mais duvidas, eu irei continuar atualizando ele com um conteúdo mais aprofundado sobre o tema. Obrigado a equipe do Xtibia pelo espaço. Atenciosamente, LuquitossML.
    1 ponto
  13. Olá Galerinha do xtibia, Tudo Bem ??? Antes de mais nada peço que movam para a área de Tutoriais de Website pois quando fui tentar criar um novo tópico la não estava dando tentei em Envie Seu Tutorial e nada. Vamos ao que interessa, estou fazendo esse tutorial ensinando a colocar o SHOP em seu Modern AAC pois vejo que muitos tem dúvida nesse assunto e eu quero que essas dúvidas acabem Quando acabarem de ler o Tópico veras que não é uma coisa dificil. Então vamos la para que funcione corretamente faça como eu peço no Tópico. Primeiramente vamos colocar para que o Shop entregue os items ao comprar certo ?!?! É Bem facil vá na pasta data/globalevents/script e crie um arquivo chamado shop.lua e coloco o seguinte script abaixo dentro e salve. Agora vá em globalevents.xml e coloque a seguinte tag <globalevent name="Shop" interval="3000" event="script" value="shop.lua"/> Pronto a parte do shop entregar os items após a compra está feito agora vamos instalar o SHOP. Peço que baixem o seguinte arquivo abaixo. http://www.4shared.com/rar/LLcxJq-dba/shop.html? Após baixarem, extraem em seu dekstop será extraida uma pasta chamada shop, renomeem ela para gifts e a coloque dentro da pasta do seu site(htdocs), após fazerem isso vá na pasta system/pages e crie um arquivo chamado gifts.php e coloque o codigo abaixo dentro e salve. Após fazerem isso va no phpmyadmin entre em sua DB e execulte o shop.sql que se encontra dentro da pasta SeuSite/gifts/config e pronto agora só entrar no link e terá la as instruções para finalizar a instalação. http://linkdoseusite/index.php/p/v/gifts.php Pronto SHOP instalado agora vamos colocar a aba de SHOP em seu site caso não tenha ou esteja com outro url. Vá na pasta seusite/templates/seutemplate e abra o index.php e coloque o seguinte url na parte onde tem as urls das paginas <li><a href="{$path}/index.php/p/v/gifts">SHOP</a></li> E pronto salve e entre em seu site e veja a magica Em Breve estarei fazendo um tópico ensinando a colocar o sistema de pagseguro automatico ou seja a pagina de DONATE do Server. Obrigado pela atenção de todos e até a próxima Creditos: Pelo Tutorial Junior Silva
    1 ponto
  14. PedroXtibiaaaa

    [8.6] Eternal Kingdoms Map

    Download: Clique aqui Scan: Clique aqui Remere's Map Editor 2.1 Créditos: Artii e o pessoal do Eternal Kingdoms (otland) Versão: 8.60/8.61, testei com 8.70 e funcionou também... O mapa possui o mínimo de bugs possíveis, talvez alguns pequenos bugs simples, todas as houses estão 100%. Cidades: Aleda Leafport Fallen Selroth Seldia Shadow Wood Screenshots
    1 ponto
  15. Vodkart

    Simple Task 3.0

    Mods: NPC Como configurar?
    1 ponto
  16. Shoguns

    Item Treiner

    Nome: Item Treiner Autor: Shoguns Tipo: Moveevents Oque ele faz? Quando o player equipar tal item, esse item vai servir como um treiner e ficara upando o skill de acordo com o item que tiver no seu Sloot Esquerdo e direito, que no caso é aonde se colocam a arma de atk e o shield Oque mas tem? O Player não poderá se mover enquanto estiver equipado com o item e ficara aparecendo uma mensagem "Treinando". Va em data/movements/scripts e crie um arquivo com nome de itemtreiner.lua e coloque isso lá dentro Agora em movements.lua cole essas 2 tags: <movevent type="Equip" itemid="1234" slot="feet" event="script" value="itemtreiner.lua"/> <movevent type="DeEquip" itemid="1234" slot="feet" event="script" value="itemtreiner.lua"/> Como configurar: No itemtreiner.lua local porcent = 4 Porcentagem que ira dar de skill local tempo = 3 * 1000 Intervalos para subir o skill local lock = 0 Se quiser colocar algo tipo um exausted antes de comecar nas tags: 1234 Id do item que ao equipar vai upar skill feet Tipo do item (usei feet = boots ) como um exemplo Alguma dúvida deixe um comentário que irei dar suporte.
    1 ponto
  17. O script de hoje eu não fiz sozinho. Fomos eu e o @zipter98 que fizemos e o @dalvorsn nos ajudou a solucioar um problema bem chato. Para ver os outros script de terça, clique aqui. Oq o script faz? A cada monstro que vc mata, os itens que vc está usando ganham 1 de exp. Quando seus itens alcançam números determinados de exp, eles upam ficam com o nome Demon Helmet + 1, etc e também são melhorados. Elmos, armaduras, calças e botas ganham 1 de arm por level, escudos, 1 de def e armas 1 de ataque. Crie itens upgrade.lua em data/creaturescripts/scripts e coloque: Em data/creaturescripts/creturescripts.xml, coloque essas duas TAGs: <event type="kill" name="Item level" event="script" value="itens upgrade.lua"/><event type="login" name="Item levell" event="script" value="itens upgrade.lua"/> Para configurar a seu gosto, basta alterar as tabelas conforme explicado nos comentários dentro do código. Abraços.
    1 ponto
  18. Centox

    TFS 0.4 (Revisado by Chaitosoft)

    Ola, Venho aqui disponibilizar o TFS 0.4_DEV mais cobiçado da ChaitoSoft com todas as features. Mirror¹: sources.rar Mirror²: http://www.sendspace.com/file/ceeetr Quem curtiu deixa 1 ReP+ como forma de agradecimento e assim me incentivando a postar mais e mais conteudos exclusivos. Scan (limpo)
    1 ponto
  19. lazarocp

    Novidade: Poketibia 9.60

    Servidor Poketibia 9.60 (Por Lazarocp) - Aprovado para download - - Servidor em desenvolvimento - Você também pode ajudar! • O servidor ainda não se encontra 100%, possui erros simples nas sources. • Os Scripts ainda estão desorganizados (peço desculpas). ○ Este servidor está na versão 9.60, sendo assim, tive que mexer nos scripts para deixá-lo funcional. Informações gerais: • Catch/Goback: 90%. (Havendo apenas um erro no data/creaturescripts/scripts/goback.lua). Ride: 100% Fly: 95% Surf: 99% Blink: 100% Rock Smash: 100% Demais: 100%. Clan system: 100%. M1 à M12: 100%. Portrait System: 100%. Nurse Joy: 100%. Nota: O nosso mapa está sendo feito do zero (0). Já contamos com seis (06) cidades e vários respawns. Pokémons: Primeira geração: 100% Segunda geração: 100% Terceira geração: 100% Quarta geração: 100% -- Evolução por stones: 100% Race e Combat: 100% Pokedex: 95% (Pokedex com descrição do pokémon e onde encontrá-lo. A função "onde encontrá-los", só está disponível em alguns Pokemons). Sistema de Pokémons iniciais: 100% • Novas Pokébolas! • Mega Stones: Retiradas. Downloads: Removidos , Servidor desatualizado e ultrapassado XD Créditos: Criação e postagem: Lazarocp • Ao divulgar ou utilizar, favor mantenham os devidos créditos. • REP'S serão sempre bem vindos, obrigado. Tópico editado e organizado por Avilack.
    1 ponto
  20. Killua

    Teleportar todos da guild para seu lado

    Esse código funciona assim: O player (somente líder da guild) da use no item escolhido e todos da guild recebem uma mensagem assim "PLAYER líder da guild está te chamando para o lado dele, você quer ir? Diga !yes para aceitar. Você tem X segundos para aceitar.". Depois disso, todos os membros da guild tem alguns segundos (configurável) para aceitar. Todos que aceitarem, vão ser teleportados para o lado do líder. Eu fiz ele para concorrer no OMS 5. Instalando: Crie guildCall.lua em data/actions/scripts e coloque: Em data/actions/actions.xml coloque essa tag: <action actionid="1433" script="guildCall.lua"/> Crie guildCall.lua em data/talkactions/scripts e coloque: function onSay(cid, words, param, channel) if getPlayerStorageValue(cid, 380121) < os.time() then doPlayerSendCancel(cid, "O tempo para aceitar ja acabou.") return true end doPlayerSetStorageValue(cid, 125023, 1) doPlayerSendTextMessage(cid, 25, "Voce aceitou ser teleportado! Daqui a " .. getPlayerStorageValue(cid, 380121) - os.time() .. " voce vai ser teleportado.") return true end Em data/talkactions/talkactions.xml coloca essa tag: <talkaction words="!yes" event="script" value="guildCall.lua"/> Coloque o actionID 1433 em todos os itens que poderão ser usados para "chamar" os membros da guild.
    1 ponto
  21. Fearlet155

    [WONDERLAND] Sword Art Online RPG

    - Introdução Do Jogo - Toda a história do game se passará no mundo de Aincrad, onde o jogador poderá explorar mais de 70 cidades e interagir com os personagens dessas cidades. Ao longo da aventura o player poderá conhecer e adicionar novos membros ao seu grupo, assim como também poderá aprofundar relacionamentos com seus parceiros. - Propostas e infomações e sistemas ja existentes no servidor você encontra no video abaixo - Estamos dando créditos ao antigo servidor do thalia que pegamos ele de base para continuar o projeto quem quiser ver o que ja tem no projeto passado só da uma olha neste link http://www.xtibia.com/forum/topic/223216-slayer-art-online-sao/
    1 ponto
  22. Poxa, lembro que antigamente existia servidor NPvP aos montes, hoje em dia está infestado dessas porcarias de servidores derivados, o que será que causou essa queda de popularidade dos servidores NPvP?
    1 ponto
  23. u n d e r

    Tibia, otserv e equipe!

    Cansados de mudanças? Esperamos que não! Dia após dia a equipe têm trabalhado com afinco para melhorar nossa comunidade. Vamos as mudanças dos últimos dias: Equipe​Rodrigo recebeu a capa de Diretor. A trajetória deste rapaz inicia-se junto com a minha. Vivenciamos o Xtibia nascer de uma canal no Irc, um portal em Phpnuke e um sistema de Fórum gratuito foram os primeiros passos desta comunidade. Em sua jornada pelo Xtibia chegou a hierarquia máxima de Sub-administração/Direção, gerenciando principalmente as relações com os usuários, defensor nato do Barzinho do Ekz junto ao nosso herói JV Chequer. Desejamos não só votos de sucesso, mas que agregue muito valor a esta comunidade e nos sentimos honrados em aceitar o convite. Bem-vindo de volta! -- vital900 recebeu a capa de Supervisor. Se bem conheço nosso amigo vital, eita rapaz que gosta de um pedestal, não é mesmo? Com suas propostas para revitalização da nossa área de Tibia, bem como jogador nato e extremamente viciado, uma importante missão foi dada ao nosso ex-moderador. Com anos de experiência em nosso fórum, sentimos tranquilidade em dizer que ele desempenhará um bom trabalho nesta nova seção. Parabéns Vital! -- caotic recebeu a capa de Assistente. Extremamente dedicado. Caotic já fez parte de nossa equipe a algum tempo atrás, suas experiências com moderação provam que merecidamente receba sua nova capa. Desejamos que continue firme nesta jornada e que a cada dia não só compartilhe seu conhecimento, como também tenha a oportunidade de aprender. Parabéns Caotic! -- Jacques Tony recebeu a capa de Assistente. E quem é que disse que a área de design está parada? Recentemente chegamos ao nosso A Melhor Assinatura (AMA) de número 100. Responsabilidade total de nosso antes estagiário Jacques, que em dois meses tem mostrado competência em suas atividades no fórum. Continue conosco e que você possa influenciar novas pessoas a seguirem este caminho. Parabéns Tony! -- JPedroTibianno recebeu a capa de Estagiário Indicação fervorosa do nosso novo supervisor, também jogador de Tibia Global, JPedroTibianno promete alcançar níveis altos em seu mundo e trazer o melhor conteúdo para a seção do Xtibia. Bem-vindo a equipe e desejamos a você sucesso na sua jornada in-game. -- Junior Silva recebeu a capa de Estagiário Este é o novo pupilo do nosso moderador VictorWEBMaster. Junior nos ajudará na área de websites, compartilhando e aprendendo um pouco mais no mundo da programação para web. Bem-vindo a equipe e que você cresça pessoalmente e profissionalmente dentro da família Xtibia! -- BrenoNeto recebeu a capa de Estagiário Representando a capa de Desenvolvedor de forma extraordinária e competente, nosso responsável pela seção Lucasmml o indicou para seguir com um estágio em nossa equipe. Recebemos de portas abertas esta indicação e acreditamos no potencial de Breno! Agradecemos o que tem feito até aqui e que você possa nos surpreender na área de Spriting. Bem-vindo! -- eryrrel recebeu a capa de Estagiário Erryrel estará responsável pela área de client, recentemente já fez algumas movimentações bacanas pela seção. Um de seus desafios é aprender .lua. Seja bem-vindo ao time e tenha todo o apoio necessário para que você possa crescer dentro de nossa comunidade. Vamos em frente eryrrel! ​EstruturaNovo supervisor na área de Tibia, pede uma revitalização da seção, concordam? Com um bate-bola, jogo rápido, restauramos parte do conteúdo que fora descartado em administrações anteriores e claro, reorganizado de acordo com as regras da seção. Tudo passou pela determinação e aprovação da nossa Supervisão e Direção que estarão trabalhando arduamente para levantarmos o astral e participação do jogo que originou nossos projetos open-sources. Preview: Além disso, optamos também por trazer a categoria de Roleplay um pouco mais acima das outras seções com o objetivo de melhorar o reconhecimento e também a visualização da área por parte de jogadores de otserv e tibia. A seção se encaixou perfeitamente entre ambos, veja no preview abaixo! Preview: ​GooglePlusCriamos nossa página também no GooglePlus, compartilhamos ideias, dicas, tópicos ou qualquer informação que interesse programadores e jogadores do Open Tibia e também Tibia Global. Acessem: https://plus.google.com/+XtibiaBr/ Por hoje é só pessoal, deixe sua opinião a respeito de nossas alterações! Seu feedback é muito importante para nós.
    1 ponto
  24. Shoguns

    Script de Dimensão

    Poste sua dúvida aki mesmo no fórum, que eu ou outras pessoas vai lhe ajuda Agora vou durmir, então so amanhan agora.... Obs: fica a dica pro dono do tópico que o seu script não esta funcional !
    1 ponto
  25. Shoguns

    Tibia, otserv e equipe!

    so corrigindo mais uma coisinha, é vital900, não vital90
    1 ponto
  26. BananaFight

    Cooldown OTC

    é porcentagem não tempo... e sim, você só precisa definir qual será o progressSpell
    1 ponto
  27. mkbrabsolute

    Compilar em CentOS e VPS

    Meu caro, você tem que se importar com, Processador, Ram e UPLINK Memória RAM será mais para rodar seu mapa, dependendo do tamanho, quanto maior a memória com mais eficaz e rapidez sua distro rodará ele. Processador é o mais importante, você terá de manter o uso da CPU entre 1 até 30%, caso atinga os 99% irá crashar o servidor ou até mesmo perder a conexão com o mysql. Uplink é a conexão onde quanto maior melhor a jogabilidade, o ping e melhor para ataques, é difícil qualquer banda tomar mais que seu uplink. Espero ter ajudado.
    1 ponto
  28. JonatasLucasf

    Compilar em CentOS e VPS

    Precisa dos dois' e esses vps ai de baixo dependendo do peso do seu mapa guenta 500 player+
    1 ponto
  29. Slicer

    Usando Opcode

    eu tb nunca usei isso ae mas acredito q se seja algu +/- assim...
    1 ponto
  30. Tinha um end a mais no script este era a questao do erro , sempre quando aparecer isso verifique se tem varios end e remova alguns.. isso e o modo mais facil de resolver esse erro! Reportado para que movam!
    1 ponto
  31. function onCastSpell(cid, var) local playerpos = getPlayerPosition(cid) local MaximoSummon = 1 if(table.maxn(summons) < MaximoSummon) then return doPlayerSendCancel (cid, "You can't control more monsters.") end local clone = doCreateMonster("bear", playerpos) doConvinceCreature(cid, clone) return TRUE end
    1 ponto
  32. wesquel

    Duvida Sobre dat editor

    Cara nao pode ser isso pq tentei com o do mysterio serve e tbm sumiu
    1 ponto
  33. zipter98

    [AJUDA] Erro MoveEvents

    function onStepIn(cid, item, position, fromPosition) if not isPlayer(cid) then return true else if getPlayerLevel(cid) <= 210000 then doTeleportThing(cid, fromPosition) doPlayerSendTextMessage(cid, 22, "voce nao e nivel maior que 210000 e nao pode entrar") doSendMagicEffect(fromPosition, CONST_ME_POFF) return true end end return true end
    1 ponto
  34. Avuenja

    Galeria [Keviz]

    Muito bom Keviz... E aquele nosso projeto maroto hein! UAEIOUA
    1 ponto
  35. Shoguns

    Treinamento Online!

    /\ Calmera ___________________________________________________________________________- Boa vital, já tava na hora
    1 ponto
  36. http://www.xtibia.com/forum/topic/184846-video-aula-como-criar-seu-client-proprio/ lê isso ai
    1 ponto
  37. Shoguns

    [AJUDA] Erro MoveEvents

    local corde = {x = 123, y = 123, z = 7} function onStepIn(cid, item, position, fromPosition) if getPlayerLevel(cid) == 210000 then doTeleportThing(cid, corde) doSendMagicEffect(fromPosition, CONST_ME_POFF) else doPlayerSendTextMessage(cid, 22, "voce nao e nivel maior que 210000 e nao pode entrar") end return true end so mudar as cordenadas em {x = 123, y = 123, z = 7}
    1 ponto
  38. Concurso de Web, sem code, vira concurso de Design.. A propósito, gostei do layout Avuenja!
    1 ponto
  39. DarkIntensy

    Primeiro Templo

    Como o titulo diz esse é meu primeiro templo, e post também.Comentem e por favor opinem. EDIT:Eu errei na verdade e o depot e nao temple
    1 ponto
  40. 1 ponto
  41. Madarada

    {Tutorial Básico Sobre .Lua}

    Ta meio que um trem sem freio esse tutorial já chega explicando if,else,elseif...Tem que prestar atenção que um cara leigo não sabe nem o que é sintaxe,parâmetros e coisa e tal,tu devia te editado desde o começo.
    1 ponto
  42. masdead

    [Show Off] Thiago Carvalho

    É o seguinte eu estou juntando todos os mapas que tenho aqui e vou formar só um, não vou postar imagem in game pois tem mapas de vários outros autores como: Beto06, AundSoul, Luffy, Left4Dead, Neon, entre outros.
    1 ponto
  43. beto06

    erro remeres

    você localiza a pasta do tibia 8.60 daí escreva corretamente, foi difícil entender na primeira leitura
    1 ponto
  44. Alexclusive

    Minhas fotografias [iPhone]

    "Admiro" bastante quase todo por de sol:
    1 ponto
  45. krex

    Khorem - Atualizações

    Não vital, o projeto não está parado, o mapa e história continuam sendo feitos. Na verdade, só preciso de um sistema pra colocar ele como "pronto" e começar com os test servers. O problema é que não encontrei ninguém ainda com habilidade/disposição pra faze-lo.
    1 ponto
  46. Skyen

    Weather System

    Vou postar alguns scripts meus que estiveram engavetados. Faz algum tempo que fiz estes scripts, então não vou postar screenshots ou como configurar, mas as configurações são fáceis de entender, então divirtam-se. Edit: Cuidado, se usar muitas chuvas ao mesmo tempo ou em áreas muito grandes, é muito provável que vá dar lag no seu servidor! Porém, tenho planos de fazer um remake desse sistema, deixando muito melhor e praticamente sem lag numa área imensa, realmente imensa, do porte de 100000x100000 SQMs! Esse é de longe o meu melhor script para open tibia. Fiz todo usando a "orientação à objetos" de Lua, o que torna o sistema altamente customizável, podendo adicionar novos tipos de clima apenas com uma linha de comando. O Weather System é basicamente um sistema de chuva que te permite adicionar o clima que você quiser, como chuva ácida, chuva de meteoros e et cetera. Porém, o maior atrativo deste sistema é que ele não chove aonde há telhado, ou seja, os efeitos só vão acontecer no andar mais alto onde há tiles. Não vai chover embaixo de uma ponte, vai chover em cima dela. Não vai chover dentro da loja daquele NPC, vai chover no telhado da loja. Não vai chover dentro de cavernas, montanhas, ou qualquer lugar onde haja um tile por cima. Você pode criar uma chuva eterna, uma chuva que acontece de vez em quando em algum lugar, ou criar a chuva com o comando /weather com um GM. /data/lib/weather-system.lua -- This script is part of Weather System -- Copyright (C) 2011 Skyen Hasus -- -- This program is free software: you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation, either version 3 of the License, or -- (at your option) any later version. -- -- This program is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -- -- You should have received a copy of the GNU General Public License -- along with this program. If not, see <http://www.gnu.org/licenses/>. -- base (class) for weather types WeatherType = { effects = CONST_ME_NONE, interval = 10, items = {}, chance = 0, callback = nil, param = {}, } -- base (class) for weathers Weather = { type = nil, topleft = {x=0, y=0}, bottomright = {x=0, y=0}, intensity = 0, } -- create new instances of WeatherType function WeatherType:new(effects, interval, items, chance, callback, ...) local new_weathertype = { effects = effects, interval = interval, items = items, chance = chance, callback = callback, param = {...}, } return setmetatable(new_weathertype, {__index = self}) end -- create new instances of Weather function WeatherType:create(topleft, bottomright, intensity) if bottomright.x < topleft.x then local tmp_x = topleft.x topleft.x = bottomright.x bottomright.x = tmp_x end if bottomright.y < topleft.y then local tmp_y = topleft.y topleft.y = bottomright.y bottomright.y = tmp_y end local new_weather = { type = self, topleft = topleft, bottomright = bottomright, intensity = intensity, } return setmetatable(new_weather, {__index = Weather}) end -- start the weather's main loop function Weather:start(duration) if duration and duration <= 0 then return true end local area = (self.bottomright.x - self.topleft.x) * (self.bottomright.y - self.topleft.y) for i = 1, (area * self.intensity / 40) + 1 do local pos = {} pos.x = math.random(self.topleft.x, self.bottomright.x) pos.y = math.random(self.topleft.y, self.bottomright.y) pos.z = get_roof_tile(pos) if is_walkable(pos) then local send_effect = true -- if the weather type for this weather has a callback, call it if type(self.type.callback) == "function" then send_effect = self.type.callback(self.type, pos) end -- if callback returned true, send effect, no effect otherwise if send_effect then doSendMagicEffect(pos, type(self.type.effects) == "table" and self.type.effects[math.random(1, #self.type.effects)] or self.type.effects) end -- create item based on chance if math.random(1, 100) <= self.type.chance / 40 then doCreateItem(type(self.type.items) == "table" and self.type.items[math.random(1, #self.type.items)] or self.type.items, pos) end end end if not duration then addEvent(self.start, self.type.interval, self, false) else addEvent(self.start, self.type.interval, self, duration - self.type.interval) end return true end -- itemids that count as void when being checked for the top-most tile local include = { 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 3188, 3189, 3218, 3221, 3222, 3298, 3299, 3300, 3301, 3302, 3303, 3304, 3305, 3306, 3307, 3308, 3309, 4456, 4457, 4458, 4459, 4460, 4461, 4462, 4463, 4464, 4465, 4466, 4467, 4514, 4542, 4543, 4544, 4545, 4546, 4547, 4548, 4549, 4550, 4551, 4552, 4553, 4554, 4555, 4556, 4557, 4558, 4559, 4560, 4561, 4562, 4563, 4564, 4565, 4596, 4597, 4598, 4599, 4600, 4601, 4602, 4603, 4604, 4605, 4606, 4607, 4667, 4668, 4669, 4670, 4671, 4672, 4673, 4674, 4675, 4676, 4677, 4678, 4679, 4680, 4681, 4682, 4683, 4684, 4685, 4686, 4687, 4688, 4689, 4690, 4713, 4714, 4715, 4716, 4717, 4718, 4719, 4720, 4721, 4722, 4723, 4724, 4725, 4726, 4727, 4728, 4729, 4730, 4731, 4732, 4733, 4734, 4735, 4736, 4737, 4738, 4739, 4740, 4741, 4742, 4760, 4761, 4762, 4763, 4764, 4765, 4766, 4767, 4768, 4769, 4770, 4771, 4772, 4773, 4774, 4775, 4776, 4777, 4778, 4779, 4780, 4781, 4782, 4783, 4784, 4785, 4786, 4787, 4788, 4789, 4790, 4791, 4792, 4793, 4794, 4795, 4796, 4797, 4798, 4799, 4800, 4801, 4802, 4803, 4804, 4805, 4806, 4807, 3226, 3227, 3228, 3229, 3230, 3231, 3232, 3233, 3234, 3235, 3236, 3237, 3238, 3239, 3240, 3241, 4514, 4515, 4516, 4517, 4518, 4519, 4520, 4521, 4522, 4523, 4524, 4525, 5045, 5046, 5047, 5048, 5049, 5050, 5051, 5052, 5053, 5054, 5816, 5817, 5818, 5819, 5820, 5821, 5822, 5823, 5824, 5825, 5826, 5827, 6160, 6161, 6162, 6163, 6164, 6165, 6166, 6167, 6168, 6169, 6170, 6171, 6695, 6696, 6697, 6698, 6699, 6700, 6701, 6702, 6703, 6704, 6705, 6706, 7067, 7068, 7069, 7070, 7071, 7072, 7073, 7074, 7075, 7076, 7077, 7078, 7079, 7080, 7081, 7082, 7083, 7084, 7085, 7086, 7087, 7088, 7089, 7090, 7107, 7108, 7109, 7110, 7111, 7112, 7113, 7114, 7115, 7116, 7117, 7118, 7119, 7120, 5771, 5772, 5773, 5774, 6211, 6212, 6213, 6214, 6215, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 6810, 6811, 6812, 6813, 6814, 6815, 6816, 6817, 6818, 6819, 6820, 6821, 7201, 7202, 7203, 7204, 7205, 7206, 7207, 7208, 7209, 7210, 7211, 7212, 7641, 7642, 7643, 7644, 7645, 7646, 7647, 7648, 7649, 7650, 7651, 7652, 7653, 7709, 7710, 7656, 7657, 7658, 7659, 7660, 7661, 7662, 7663, 7664, 7654, 7833, 7834, 7666, 7667, 7668, 7669, 7835, 7671, 7672, 7836, 7837, 477, 478, 487, 488, 8053, 8054, 8055, 8056, 8057, 8117, 8118, 8119, 8120, 8021, 8022, 8023, 8024, 8025, 8026, 8027, 8028, 8365, 8030, 8031, 8032, 3349, 3350, 3351, 3352, 3353, 3354, 3355, 3356, 3357, 3358, 3359, 3360, 3225, 3242, 3243, 3244, 3245, 3140, 3141, 3142, 3143, 3144, 3145, 3146, 3147, 3148, 3149, 3150, 3151, 8349, 8350, 8351, 8352, 8353, 8354, 8355, 8356, 8357, 8358, 8359, 8360, 8435, 8436, 8437, 8438, 8439, 8440, 8441, 8442, 8443, 8444, 8445, 8446, 8447, 8448, 8449, 8450, 8451, 8452, 8453, 8454, 8455, 8456, 8457, 8458, 8460, 8461, 8462, 8463, 8464, 8465, 8466, 8467, 8468, 8469, 8470, 8471, 9233, 9234, 9537, 9538, 9539, 9540, 9541, 9542, 9543, 9544, 9545, 9546, 9547, 9548, 9549, 9550, 9551, 9552, 9553, 9554, 9555, 9556, 9557, 9558, 9559, 9560, 9569, 9570, } -- get the top-most existent tile, and returns its z position function get_roof_tile(pos) pos.stackpos = 0 pos.z = 7 local thing = getTileThingByPos(pos) while pos.z >= 0 do if thing.uid == 0 or isInArray(include, thing.itemid) then return pos.z + 1 end pos.z = pos.z - 1 thing = getTileThingByPos(pos) end return 0 end -- checks if the position is walkable function is_walkable(pos) pos.stackpos = 0 if getTileThingByPos(pos).uid == 0 then return false end local thing = getThingFromPos(pos) while thing.uid ~= 0 and pos.stackpos <= 252 do if not isCreature(thing.uid) and (hasItemProperty(thing.uid, 3) or hasItemProperty(thing.uid, 7)) then return false end pos.stackpos = pos.stackpos + 1 thing = getThingFromPos(pos) end return true end -- simple callback for weathers to heal creatures function weather_heal(rain_type, pos) pos.stackpos = 253 if getTileThingByPos(pos).uid == 0 then return false end local thing = getThingFromPos(pos) if thing.uid ~= 0 then doCreatureAddHealth(thing.uid, rain_type.param[1]) doSendMagicEffect(pos, CONST_ME_MAGIC_BLUE) end return true end -- simple callback for weathers to damage creatures function weather_damage(rain_type, pos) pos.stackpos = 253 if getTileThingByPos(pos).uid == 0 then return false end local thing = getThingFromPos(pos) if thing.uid ~= 0 then doCreatureAddHealth(thing.uid, -rain_type.param[1]) doSendMagicEffect(pos, CONST_ME_MAGIC_BLUE) end return true end -- simple callback for weathers to teleport creatures function weather_teleport(rain_type, pos) pos.stackpos = 253 if getTileThingByPos(pos).uid == 0 then return false end local thing = getThingFromPos(pos) if isCreature(thing.uid) then local topos = {x=rain_type.param[1], y=rain_type.param[2], z=rain_type.param[3]} doTeleportThing(thing.uid, topos) end return true end -- import the weathers definition's file dofile(getDataDir() .. "/lib/weather-types.lua") Para criar novos tipos de chuva, use o comando "WeatherType:new" como exemplificado no script abaixo: /data/lib/weather-types.lua -- This script is part of Weather System -- Copyright (C) 2011 Skyen Hasus -- -- This program is free software: you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation, either version 3 of the License, or -- (at your option) any later version. -- -- This program is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -- -- You should have received a copy of the GNU General Public License -- along with this program. If not, see <http://www.gnu.org/licenses/>. -- WeatherType:new(<table|number: effect(s)>, <number: interval>, <table|number: items>, <number: chance>[, function: callback[, ...]]) Rain = WeatherType:new(1, 15, {2016, 2017, 2018}, 60) DivineRain = WeatherType:new(1, 15, {2016, 2017, 2018}, 60, weather_heal, 200) Storm = WeatherType:new({1, 40}, 18, {2016, 2017, 2018}, 60) ThunderStorm = WeatherType:new({1, 40}, 18, {2016, 2017, 2018}, 60, weather_damage, 80) Blizzard = WeatherType:new({42, 43}, 20, {}, 0) AcidRain = WeatherType:new({8, 20}, 18, 1496, 60) MeteorRain = WeatherType:new(36, 18, {1492, 1493, 1494}, 10, weather_damage, 120) Sandstorm = WeatherType:new(34, 20, {}, 0) Snowfall = WeatherType:new(27, 15, {}, 0) Teleporter = WeatherType:new(10, 18, {}, 0, weather_teleport, 100, 100, 7) Fissure = WeatherType:new(6, 18, {1492, 1493, 1494}, 30, weather_damage, 300) StaticEnergy = WeatherType:new({11, 47}, 15, {}, 0, weather_damage, 30) Fireworks = WeatherType:new({28, 29, 30}, 18, {}, 0, weather_heal, 50) IceStorm = WeatherType:new(41, 20, {}, 0) Avalanche = WeatherType:new(44, 20, {}, 0) Para criar uma chuva eterna, altere a tabela "weathers" no script abaixo. /data/globalevents/scripts/weather-eternal.lua -- This script is part of Weather System -- Copyright (C) 2011 Skyen Hasus -- -- This program is free software: you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation, either version 3 of the License, or -- (at your option) any later version. -- -- This program is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -- -- You should have received a copy of the GNU General Public License -- along with this program. If not, see <http://www.gnu.org/licenses/>. -- erase the two examples and add your own new locations inside this table, so they will start when the server start local weathers = { -- Storm:create({x=100, y=100}, {x=200, y=200}, 0.5), -- Blizzard:create({x=100, y=100}, {x=200, y=200}, 0.3), } -- globalevent's callback event function onStartup() for i, weather in pairs(weathers) do weather:start(false) end return true end Para criar uma chuva aleatória (acontece de vez em quando em uma área), altere a tabela "weathers" no script abaixo. /data/globalevents/scripts/weather.lua -- This script is part of Weather System -- Copyright (C) 2011 Skyen Hasus -- -- This program is free software: you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation, either version 3 of the License, or -- (at your option) any later version. -- -- This program is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -- -- You should have received a copy of the GNU General Public License -- along with this program. If not, see <http://www.gnu.org/licenses/>. -- erase the two examples and add your own new locations inside this table, so they will be randomized local weathers = { -- Rain:create({x=100, y=100}, {x=200, y=200}, 0.5), -- Storm:create({x=100, y=100}, {x=200, y=200}, 0.3), } -- min and max durations of a weather, the value will be randomized local minduration = 240000 local maxduration = 600000 -- globalevent's callback event function onThink(interval, lastExecution, thinkInterval) if #weathers > 0 then weathers[math.random(1, #weathers)]:start(math.random(minduration, maxduration)) end return true end /data/globalevents/globalevents.xml <!-- Weather System --> <globalevent name="weather-eternal" type="start" event="script" value="weather-eternal.lua"/> <globalevent name="weather" interval="900" event="script" value="weather.lua"/> /data/talkactions/scripts/weather.lua -- This script is part of Weather System -- Copyright (C) 2011 Skyen Hasus -- -- This program is free software: you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation, either version 3 of the License, or -- (at your option) any later version. -- -- This program is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -- -- You should have received a copy of the GNU General Public License -- along with this program. If not, see <http://www.gnu.org/licenses/>. -- types of weather that can be passed as <weather type> argument to the command local weathers = { ["rain"] = Rain, ["divine-rain"] = DivineRain, ["storm"] = Storm, ["thunder-storm"] = ThunderStorm, ["blizzard"] = Blizzard, ["acid-rain"] = AcidRain, ["meteor-rain"] = MeteorRain, ["sandstorm"] = Sandstorm, ["snowfall"] = Snowfall, ["teleporter"] = Teleporter, ["fissure"] = Fissure, ["static-energy"] = StaticEnergy, ["fireworks"] = Fireworks, ["ice-storm"] = IceStorm, ["avalanche"] = Avalanche, } -- auxiliary function, checks if a given value is an index of a given table local function is_index(t, v) for i in pairs(t) do if i == v then return true end end return false end -- talkaction's callback event function onSay(cid, words, param) local param = string.explode(param, " ") local weather local topleft = {} local bottomright = {} local duration = 1000 local intensity = 0.5 -- number of arguments' validation if #param < 3 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Usage: " .. words .. " <weather type> <top-left position> <bottom-right position> [duration=3000] [intensity=0.5]") return true end -- weather type's validation if not is_index(weathers, string.lower(param[1])) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Invalid weather type.") return true end weather = weathers[param[1]] -- top-left position's validation if not param[2] then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Top-left position must be specified.") return true end -- top-left position's format validation local param_topleft = string.explode(param[2], "x") param_topleft[1] = tonumber(param_topleft[1]) param_topleft[2] = tonumber(param_topleft[2]) if not param_topleft[1] or param_topleft[1] < 0 or not param_topleft[2] or param_topleft[2] < 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Top-left position is invalid. Use format <x>x<y> like this: 100x100. Values must be valid positive numbers.") return true end topleft.x = param_topleft[1] topleft.y = param_topleft[2] -- bottom-right position's validation if not param[3] then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Bottom-right position must be specified.") return true end -- bottom-right position's format validation local param_bottomright = string.explode(param[3], "x") param_bottomright[1] = tonumber(param_bottomright[1]) param_bottomright[2] = tonumber(param_bottomright[2]) if not param_bottomright[1] or param_bottomright[1] < 0 or not param_bottomright[2] or param_bottomright[2] < 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Bottom-right position is invalid. Use format <x>x<y> like this: 100x100. Values must be valid positive numbers.") return true end bottomright.x = param_bottomright[1] bottomright.y = param_bottomright[2] -- duration's validation param[4] = tonumber(param[4]) if not param[4] then duration = 3000 elseif param[4] <= 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Weather duration must be a valid number greater than 0.") return true else duration = param[4] end -- intensity's validation param[5] = tonumber(param[5]) if param[5] and param[5] >= 0 and param[5] <= 1 then intensity = param[5] elseif param[5] then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Weather intensity must be a valid number between 0 and 1.") return true end -- create and start the weather with the specified arguments weather:create(topleft, bottomright, intensity):start(duration) return true end /data/talkactions/talkactions.xml <!-- Rain System --> <talkaction log="yes" words="/weather" access="3" event="script" value="weather.lua"/>
    1 ponto
  47. Sim claro, fassa oque voçe quiser com o servidor. @AlexandreGiacobo vlw. se for aprovado, eu irei atualizando o servidor, eu ja arrumei varios bugs ja.
    1 ponto
  48. • SPR & DAT Pokemon 5° Geraçao - Stigal [Download]• • Menu: ├ Informações; ├ Download; ├ PrintScreen; └ Creditos. • Informações Basicas • • Download's • [Pokemon] SPR e DAT [Pokemons 5 Geração] (4shared) http://www.4shared.com/rar/E836cXv0/Pokemon_Sprite_5_Gerao_-_Stiga.html Sprite Editor [v1.3.0] (4shared) http://www.4shared.com/rar/ZQ1w2BpH/Stigal_-_Spriter_Editor.html? Scan [Pokemon] SPR e DAT [Pokemons 5 Geração] (Virus Total) https://www.virustotal.com/file/030d85e9fe0bb5cab4e8159e3247b86a633acb35dc0773a03effe17da08cef87/analysis/1347751884/ • Prints De Algumas SPR • • Creditos • Stigal - {Master}
    1 ponto
  49. Miineero

    Baiak O Melhor Editador Por Minero

    mudei os Tp's adicionei imagens atras deles coloquei mais Rpg nas hunt vip em algumas e Tirei a Systema vip 2 q axo chato Adicionei mais houses Mudei Visual templo e da City Qualquer Coisas Perguntem :smile_positivo:
    1 ponto
Líderes está configurado para São Paulo/GMT-03:00
×
×
  • Criar Novo...