Líderes
-
-
Adriano SwaTT
MembroPontos1645Total de itens -
Skydangerous
MembroPontos1432Total de itens -
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 03/08/12 em todas áreas
-
Forge System
Forge System
Soaresdk e 2 outros reagiu a Garou por uma resposta no tópico
3 pontosADVANCED FORGE SYSTEM O SISTEMA DE CRIAÇÃO DE ITENS PARA SEU SERVIDOR Creio que muitos já conhecem o sistema de forja criado por mim, acontece que o código já estava um pouco obsoleto, então resolvi reescrever ele do 0. Simplesmente consiste em um sistema de criação de itens avançado que ressuscita um pouco do RPG perdido nos servidores de hoje em dia. O jogador poderá criar itens através de forja, agindo como um verdadeiro ferreiro medieval. Adiciona itens em cima de uma bigorna previamente colocada no mapa e com um martelo cria um item totalmente novo. CARACTERÍSTICAS DA VERSÃO FINAL: - Configuração intuitiva e fácil de compreender; - Mini-tutorial auxiliando criação de novas receitas; - Receitas podem conter até 250 itens diferentes com suas respectivas quantidades; - Sistema inteligente que identifica uma receita em qualquer ordem; - Código totalmente orientado a objetos; - Possibilidade de configurar diferentes requerimentos, diferentes skills, magic level e level Há dois modos de instalar o Advanced Forge System, o primeiro é seguir os passos deste tópico e o segundo e baixar pasta data/ anexada no tópico com os arquivos em seus respectivos diretórios, precisando apenas o registro das chaves nos arquivos XML. Escolha o modo que mais convém a você. Crie um arquivo em data/lib chamado forgesystem.lua e cole o conteúdo abaixo: --[[ ADVANCED FORGE SYSTEM FINAL Criado por Oneshot É proibido a venda ou a cópia sem os devidos créditos desse script. ]]-- RecipeHandler = { itemtype = 0, items = {}, level = 1, maglevel = 0, skills = {[0] = 0, [1] = 0, [2] = 0, [3] = 0, [4] = 0, [5] = 0, [6] = 0} } Forge = { type = nil, position = nil, magicEffect = CONST_ME_MAGIC_GREEN, messages = { class = MESSAGE_STATUS_DEFAULT, success = "You have successfully forged a %s.", needskill = "You don't have enough %s to create a %s.", needlevel = "You need level %s to create a %s.", needmaglevel = "You need magic level %s to create a %s." } } function RecipeHandler:new(itemtype, items, level, maglevel, skills) local obj = { itemtype = (itemtype or 0), items = (items or {}), level = (level or 1), maglevel = (maglevel or 0), skills = (skills or {[0] = 0, [1] = 0, [2] = 0, [3] = 0, [4] = 0, [5] = 0, [6] = 0}) } table.insert(Recipes, obj) return setmetatable(obj, {__index = self}) end function RecipeHandler:setItem(itemtype) self.itemtype = (itemtype or 0) end function RecipeHandler:setRecipe(...) self.items = {...} end function RecipeHandler:setRecipeItem(itemid, amount) table.insert(self.items, {itemid, amount}) end function RecipeHandler:setSkill(skillid, value) self.skills[skillid] = value end function RecipeHandler:setLevel(value) self.level = value end function RecipeHandler:setMagLevel(value) self.maglevel = value end function RecipeHandler:check(position) local match = false for n, item in ipairs(self.items) do local thing = getTileItemById(position, item[1]) if thing.uid > 0 and math.max(1, thing.type) >= item[2] then if n == #self.items then match = true end else break end end return match end function RecipeHandler:get(position) if self:check(position) == true then return setmetatable({type = self, position = position}, {__index = Forge}) end return false end function Forge:create(cid) if self.type.itemid == 0 then print("[FORGE SYSTEM - ERROR] ATTEMPT TO CREATE A RECIPE ITEMID 0") return end local status = true if(cid) then if getPlayerLevel(cid) < self.type.level then doPlayerSendTextMessage(cid, self.messages.class, self.messages.needlevel:format(self.type.level, getItemNameById(self.type.itemtype))) return end if getPlayerMagLevel(cid) < self.type.maglevel then doPlayerSendTextMessage(cid, self.messages.class, self.messages.needmaglevel:format(self.type.maglevel, getItemNameById(self.type.itemtype))) return end for skillid, value in pairs(self.type.skills) do if getPlayerSkillLevel(cid, skillid) < value then status = false doPlayerSendTextMessage(cid, self.messages.class, self.messages.needskill:format(SKILL_NAMES[skillid], getItemNameById(self.type.itemtype))) break end end end if status == true then for _, item in ipairs(self.type.items) do local thing = getTileItemById(self.position, item[1]) doRemoveItem(thing.uid, item[2]) end doSendMagicEffect(self.position, self.magicEffect) doPlayerSendTextMessage(cid, self.messages.class, self.messages.success:format(getItemNameById(self.type.itemtype))) doCreateItem(self.type.itemtype, self.position) end end dofile(getDataDir() .."/lib/recipes.lua") Crie um arquivo em data/lib chamado recipes.lua e adicione o conteúdo abaixo: ---------------------------------------- -----** TUTORIAL DE CONFIGURAÇÃO **----- ---------------------------------------- --[[ O 'ADVANCED FORGE SYSTEM' é muito fácil e intuitivo de configurar, você só precisa chamar a função RecipeHandler:new(...), sendo que você já configurar os atributos da receita nela ou usar outras funções para isso. Por exemplo, quero criar uma Magic Sword que precise de 100 Gold Nuggets. RecipeHandler:new(2400, {{2157, 100}}) Ou então Magic_Sword = RecipeHandler:new() Magic_Sword:setItem(2400) Magic_Sword:setRecipe({2157, 100}) Funções do Sistema: RecipeHandler:new(itemtype, items, level, maglevel, skills) --> Cria uma nova instância de forja. RecipeHandler:setItem(itemtype) --> Atribui um certo itemid como resultado da receita. RecipeHandler:setRecipe(recipe) --> Atribui uma receita. RecipeHandler:setRecipeItem(itemid, amount) --> Adiciona um itemid e sua quantidade a receita. RecipeHandler:setSkill(skillid, value) --> Atribui um valor necessário de uma certa skill para poder criar a receita. RecipeHandler:setLevel(value) --> Atribui o level necessário para criar uma receita. RecipeHandler:setMagLevel(value) --> Atribui o magic level necessário para criar uma receita. ]]-- --[[ Este é um exemplo de receita usando algumas funções. É uma Magic Sword (ITEMID: 2400) que precisa de 100 Gold Nuggets (ITEMID: 2157), além disso, o personagem que tentar forjar, precisa ter Level 100 e Sword Fighting 50. ]]-- Recipes = {} magicsword = RecipeHandler:new() magicsword:setItem(2400) magicsword:setRecipeItem(2157, 100) magicsword:setLevel(100) magicsword:setSkill(2, 50) Agora em data/actions/scripts, crie um arquivo chamado iron_hammer.lua e adicione o conteúdo abaixo: function onUse(cid, item, fromPosition, itemEx, toPosition) local recipe = nil for _, v in ipairs(Recipes) do recipe = v:get(toPosition) if(recipe ~= false) then break end end if(recipe) then recipe:create(cid) else doPlayerSendCancel(cid, "This is not a valid recipe.") end return true end E por fim em actions.xml, adicione a seguinte linha: <action itemid="4846" event="script" value="iron_hammer.lua"/> OPCIONAL - TALKACTION A talkaction abaixo mostra ao jogadoras receitas configuradas no servidor que ele pode fazer. Em data/talkactions/scripts, crie um arquivo chamado recipes.lua e adicione o conteúdo abaixo: function onSay(cid, words, param, channel) local ret = {} local msg = " ADVANCED FORGE SYSTEM\n" for _, recipe in ipairs(Recipes) do local skills = true for skillid, value in pairs(recipe.skills) do if getPlayerSkillLevel(cid, skillid) < value then skills = false break end end if skills == true then if getPlayerLevel(cid) >= recipe.level and getPlayerMagLevel(cid) >= recipe.maglevel then table.insert(ret, {recipe, true}) else table.insert(ret, {recipe, false}) end else table.insert(ret, {recipe, false}) end end for _, recipe in ipairs(ret) do msg = msg .."\nRecipe for ".. getItemNameById(recipe[1].itemtype) ..":\n\n" if recipe[2] == true then for _, item in ipairs(recipe[1].items) do msg = msg .."* ".. getItemNameById(item[1]) .." [".. math.min(item[2], math.max(0, getPlayerItemCount(cid, item[1]))) .."/".. item[2] .."]\n" end else msg = msg .."[LOCKED]\n" end end doShowTextDialog(cid, 2555, msg) return true end Em data/talkactions/talkactions.xml, adicione a linha: <talkaction words="/recipes" event="script" value="recipes.lua"/> Siga as instruções para configuração de novas receitas. Em breve vídeo de funcionamento Advanced Forge System.rar3 pontos -
[Talkaction] Comando !guild
[Talkaction] Comando !guild
gacjogos e 2 outros reagiu a Vodkart por uma resposta no tópico
3 pontosO comando checa: - O total de membros que sua guild possui - Quantos Players Tem online - Mostra o nome e o Rank dos jogadores Online Em lib/050-function adicione: function CountGuildMembers(GuildName) -- function by vodkart local count = 0 local lista = db.getResult("SELECT `name`, `rank_id` FROM `players` WHERE `rank_id` IN (SELECT `id` FROM `guild_ranks` WHERE `guild_id` = " .. getGuildId(GuildName) .. ");") if(lista:getID() ~= -1) then repeat count = count + 1 until not lista:next() lista:free() return count end end Em talkactions/script guildinformation.lua function onSay(cid, words, param, channel) local players,str,GuildName = {},'',getPlayerGuildName(cid) if getPlayerGuildId(cid) <= 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"Você precisa estar em uma Guild.") return true end for _, cid in pairs(getPlayersOnline()) do if getPlayerGuildName(cid) == GuildName then table.insert(players, cid) end end str = str .. "Membros total da guild: "..CountGuildMembers(GuildName).." Players.\n\nExiste "..#players.." Players online na sua guild:\n\n" for i = 1, #players do str = str.."\n["..getPlayerName(players[i]).."]["..getPlayerGuildRank(players[i]).."]" end return doShowTextDialog(cid, 2533, str) end talkactions.xml <talkaction words="!guild" event="script" value="guildinformation.lua"/>3 pontos -
[NPC] First Items
[NPC] First Items
Augusto e um outro reagiu a Skydangerous por uma resposta no tópico
2 pontosO script é simples, para quem quiser dar uma inovada no servidor.. chega de first item creaturescript , vamos utilizar um npc Em data/npcs/scripts crie um npc chamado firstitem.lua e cole o script a seguir local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end npcHandler:setMessage(MESSAGE_GREET, "Hello |PLAYERNAME| I am a very rich person, and I'm donating my items you want? say {first item}.") function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid local items = { [0] = { 8819, 8820}, [1] = { 8819, 8820}, [2] = { 8819, 8820}, [3] = { 2509, 2643}, [4] = { 2643, 2478 } } if msgcontains(msg, 'first item') or msgcontains (msg, 'first items') then if getPlayerStorageValue(cid,15003) < 1 then selfSay('You want the items? say {yes}', cid) talkState[talkUser] = 1 else selfSay('Sorry,I have given to you!', cid) end elseif talkState[talkUser] == 1 then if msgcontains(msg, 'yes') then selfSay('You receive your items.', cid) doPlayerAddItem(cid, 2554, 1) doPlayerAddItem(cid, 2120, 1) doPlayerAddItem(cid, 2160, 2) for voca, item in pairs(items) do if getPlayerVocation(cid) == voca then for i = 1, table.maxn(items) do doPlayerAddItem(cid, items[i], 1) end setPlayerStorageValue(cid, 15003, 1) end end talkState[talkUser] = 0 else selfSay('Sorry,I have given to you!', cid) end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) agora data/nps crie um arquivo chamado Helper.xml(Formato XML, copie e cole se você não souber) <?xml version="1.0" encoding="UTF-8"?> <npc name="Helper" script="firstitem.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="133" head="78" body="92" legs="76" feet="0" addons="3"/> </npc> Editando os Items a Receber: [0] = { 8819, 8820}, [1] = { 8819, 8820}, [2] = { 8819, 8820}, [3] = { 2509, 2643}, [4] = { 2643, 2478 } Em [] são os ids das vocações Ex: [0] = None [1] = Sorcerer Entre {} são os ids dos items. Ex: {2160,2160,2160} Sempre coloque uma virgula após o outro id. Pronto, agora só ligar seu servidor ou dar /reload npc e rodar2 pontos -
Anél de Experiência' [Exp Ring]
Anél de Experiência' [Exp Ring]
HaragOT reagiu a Adriano SwaTT por uma resposta no tópico
1 pontoEu tentei achar aqui no TibiaKing o Anél de Experiência (Ring of Experience ou Exp Ring), e só achei um tutorial, mas está meio imcompleto e confuso... No entanto decidi postar este que criei há alguns meses. Como o nome diz, é um anél que aumenta a experiência de sua caçada' (configurável) \o/ Vamos lá... 1º Passo 2º Passo <movevent type="Equip" itemid="7697" slot="ring" event="script" value="exp_ring.lua"/> <movevent type="DeEquip" itemid="7697" slot="ring" event="script" value="exp_ring.lua"/> <movevent type="Equip" itemid="7708" slot="ring" event="script" value="exp_ring.lua"/> <movevent type="DeEquip" itemid="7708" slot="ring" event="script" value="exp_ring.lua"/> Pronto, em "movements.xml" é só. 3º Passo Aqui, temos duas opções... O Exp Ring Tradicional é para server com Experiência fixa, ou seja, a EXP é sempre a mesma.. Já o Exp Ring por Stages é para server que a Experiência varia de acordo com o level do player. Clique no Spoiler referente ao seu server. EXP RING Tradicional: function onEquip(cid, item, slot) doTransformItem(item.uid, 7697, 1) doPlayerSendTextMessage(cid, 22, 'Agora ganha 2x mais experiencia!') doPlayerSetExperienceRate(cid, getConfigValue("rateExperience")*0.2) return TRUE end function onDeEquip(cid, item, slot) doTransformItem(item.uid, 7708, 1) doPlayerSendTextMessage(cid, 22, 'Experiencia extra cancelada.') doPlayerSetExperienceRate(cid, 1) return TRUE end EXP RING por Stages: function onEquip(cid, item, slot) local rate = {} if getPlayerLevel(cid) <= 200 then rate = 1.3 elseif getPlayerLevel(cid) > 200 and getPlayerLevel(cid) <= 280 then rate = 1.15 elseif getPlayerLevel(cid) > 280 then rate = 1.05 end doTransformItem(item.uid, 7697, 1) doPlayerSendTextMessage(cid, 22, "Sua experiencia foi aumentada em "..((rate - 1)*100).." %.") doPlayerSetExperienceRate(cid, rate) return TRUE end function onDeEquip(cid, item, slot) doTransformItem(item.uid, 7708, 1) doPlayerSendTextMessage(cid, 22, "Sua experiencia esta de volta ao normal.") doPlayerSetExperienceRate(cid, 1.0) return TRUE end Salve-o e feche o arquivo. Para aprender configurar a rate do Script clique no spoiler abaixo: Azul: É o valor em vezes que aumentará a experiência. Ex: Onde está o "2" no código, você pode substituir por quantas vezes que que seja a multiplicação da EXP' (2 é igual a 2x mais Exp)... Ou pode por em porcentagens usando como está abaixo: 1.5 = 50% 1.2 = 20% E assim sucessivamente. Se quer um Anel de Experiencia Recarregável (como soft boots), clique no Spoiler abaixo. Configurações do NPC: Recolhe: "broken experience ring" Custo: "50k" Devolte: "Brand-New Experience Ring" 5º Passo É, acho que é isso... Qualquer coisa postem aqui para resolvermos juntos. Eu editei o Script, criei o NPC e criei o Tutorial. Créditos pelo tutorial: AdrianoSwaTT Créditos pelo Exp Ring Stages: Vodkart Créditos pelo Script: OTLand Abraços, espero que seja útil' 2º Passo <movevent type="Equip" itemid="7697" slot="ring" event="script" value="exp_ring.lua"/> <movevent type="DeEquip" itemid="7697" slot="ring" event="script" value="exp_ring.lua"/> <movevent type="Equip" itemid="7708" slot="ring" event="script" value="exp_ring.lua"/> <movevent type="DeEquip" itemid="7708" slot="ring" event="script" value="exp_ring.lua/"> Pronto, em "movements.xml" é só. 3º Passo function onEquip(cid, item, slot) doTransformItem(item.uid, 7697, 1) doPlayerSendTextMessage(cid, 22, 'Agora ganha 2x mais experiencia!') doPlayerSetExperienceRate(cid, getConfigValue("rateExperience")*0.2) return TRUE end function onDeEquip(cid, item, slot) doTransformItem(item.uid, 7708, 1) doPlayerSendTextMessage(cid, 22, 'Experiencia extra cancelada.') doPlayerSetExperienceRate(cid, 1) return TRUE end 4º Passo <!--?xml version="1.0" encoding="UTF-8"?--> <npc name="Joalheiro" script="data/npc/scripts/Sell/ring_repair.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"> <look type="128" head="40" body="37" legs="116" feet="95" addons="0"> <parameters> <parameter key="message_greet" value="Just great, another ... 'customer'. Hello, |PLAYERNAME|. If you want to trade, let's get it over with."> <parameter key="message_farewell" value="That's music in my ears."> <parameter key="message_walkaway" value="Yeah, get lost."> <parameter key="message_onsendtrade" value="Yeah, buy something."> <parameter key="module_shop" value="1"> </parameters> </npc> Salve e feche. Agora vá na pasta ( Data / NPC / Scripts / Sell ) e crie um arquivo com o nome "ring_repair.lua" (pode copiar um arquivo existente e renomeá-lo). Após fazer isto, abra este arquivo (ring_repair.lua) e cole o código abaixo dentro. Obs: se tiver algo escrito do arquivo, apague-o e deixe somente o código abaixo. local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if(msgcontains(msg, 'ring') or msgcontains(msg, 'experience')) then selfSay('Do you want to repair your experience ring for 50000 gold coins?', cid) talkState[talkUser] = 1 elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then if(getPlayerItemCount(cid, 2122) >= 1) then if(doPlayerRemoveMoney(cid, 50000) == TRUE) then doPlayerRemoveItem(cid, 2122, 1) doPlayerAddItem(cid, 7697) selfSay('Here you are.', cid) else selfSay('Sorry, you don\'t have enough gold.', cid) end else selfSay('Sorry, you don\'t have the item.', cid) end talkState[talkUser] = 0 elseif(msgcontains(msg, 'no') and isInArray({1}, talkState[talkUser]) == TRUE) then talkState[talkUser] = 0 selfSay('Ok then.', cid) return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Salve e feche.1 ponto -
Baiak editado ice map [Vale apena ver]
Ola Pessoal Do Tibia King, vim aqui para postar meu primeiro Mapa ( postado ), pois faço mapas a anos, mas arrecem Hoje, criei coragem de espor Um deles. Intaum Segue Abaixo o que ele contem de novo! Flws Baiak Yurots V2.2 Oque Mudou ? Mudou a City ta 90% 8.5 Foi Arrumada As Houses. Adicioano Npc Papai Noel no Templo Vende Items 8.54! Novos Items Novos Outifits Novas Hunts E Muito Mais... Baiak Yurots V2.7 Oque Mudou ? Foi Adicionada um Nova Cidade Chamada Baiak City Foi Adidionada Um Teleport no Templo Que Vai para Alumas City's Foi Adicionado Npc de Bless,Pagando Todas as Bless você nao prescisa usar aol... Foi Adicionado Uma Ilha de GM's ... Bug do Account Mananger Arrumado. Novo Executer adicionado,se o ot cai ele salva sozinhoo. E Muito Mas Estara por vim ... Baiak Yurots v1.0.9 Oque Mudou ? Foi Adicionado Sistema Vip.. Foi Adicionado 5 Novos Portais Vip Foi Adicionado Novos Bixos Vip,Warlock Vip,Medusa Vip,Bossing of Baiak.. Foi Adicionado New Quest Baiak Super Foda !! Foi Modificado o Templo Foi Adicionado Mais Treiners ! Entre Alguns Bugs Retirados Baiak Yurots v1.1.0 Oque Mudou ? Mudou o Protocolo de 8.57 para 8.60 Novos Item Novo Outfit Baiak Yurots V1.1.4 Oque Mudou ? Tirei o Pz tool do Templo Fiz um Novo System Vip por Comando Fiz o Novo Addon do Outfit do Wayfarer Baiak Yurots Edited , Oque mudou ? Modifiquei o templo, totalmente ICE Fiz novos comandos, !aol, !bless, !jail playername &--#60;para gods&--#62;, !removeskull (retira sua black ou red skull por 1kk), entre outros Criei novos itens vips II! (obtidos na vip quest) Fiz quest para axe vip, star vip,club vip,sword vip,wand e rod vip Fiz uma vip II Fiz Um Castelo, onde ocorre batalhas do time Verde X Vermelho. Fiz uma Area Pvp, onde quem morrer nao perde level Fiz uma quest vip, onde se ganha a vip II E mais um amuleto vip(permite que red skull e black skull nao percam itens, funciona como aol tambem, possui 30 cargas) e tambem um item vip de sua escolha( axe,sword,club,star,rod ou wand vip.) Novos Teleports Adcionados na Vip II Monstros novos como Medusa vip II, Hydra Vip II, entre outros. Fiz uma Super Poi para vips II Vocaçoes Balanciadas Teleports Especiais [ARENA, CASTELO DO REI E HOUSE ISLAND] para level 300+ Bug Da baiak cape que nao dava ml+6, arrumado, entre outros varios bugs System Vip Como Funciona ? A Vip I é free, portanto o comando !buyvip, foi removido, pois implicava com a vip II. A Vip II é somente para quem conseguiu completar a Vip Quest, onde la voce ganha a vip stone, e vira vip usando ela. Acc do God. god/god ScreenShoots TEMPLO Castelo Entrada Vip2 Teleports Vip II Monstros Vip II Vip II - Templo Downloads Baiak Yurots Edited [Via 4Shared] CLIQUE AQUI PARA FAZER O DOWNLOAD Scan Scan Baiak yurots [CLIQUE AQUI] Para Quem ja jogou esse ip: baiak-24h.no-ip.info, aqui esta o download do mapa &--#62;&--#62; DOWNLOAD AQUI &--#60;&--#60; Estou fazendo isso porque, o ADM desse otserver pego o meu mapa, que eu havia passado para outra pessoa e se entitula dono dele (cendo que eu fiz o mapa) ai toda vez que logo tomo ban, intaum o download esta ali em cima. Para que ele nao seja o unico com o meu mapa.! Flws &--#60;3 OBS::::: Se voce encontrou os bugs, aparentemente encontrado por muitos.... Apenas apague os arquivos .Xml, Alavancca e transdec Do Data&--#62;actions! OK?? Belezinha?? Valeu!! Caso Tenha Gostado do #post e do #otserver , me de um Gostei é facil e pratico, preciso de sua ajuda para evoluir1 ponto
-
[NPC] Bank'
[NPC] Bank'
juvelino reagiu a Adriano SwaTT por uma resposta no tópico
1 pontoBom, aqui nem tem muito oque explicar... É um NPC de BANK como todos conhecem' Vamos lá... 1º Passo Vá na pasta "Data / NPC", crie um arquivo com o nome de "Banker.xml", abra o arquivo criado e cole o código abaixo dentro. Obs: O nome do arquivo pode ser o que desejar, só o que está em azul, ou seja, a extensão, que não pode ser alterada' 2º Passo Dentro da pasta "Scripts", crie um arquivo chamado "bank.lua" e dentro do mesmo cole o código abaixo: Salve e feche o arquivo. Agora seu NPC está pronto, basta adicioná-lo ao seu mapa usando o Map Editor. Espero que seja de utilidade de alguém... Abraços e bom uso ae' Script feito por: Vodkart Alterado por: Adriano Swatt Pequeno Tutorial feito por: Adriano Swatt1 ponto -
Layout OtServ
1 pontoBem eu tava fazendo esse layout pra um amigo ai, porem ele desistiu de comprar porque fecho o server e talz. Ele me pediu algo livre,alegre, cores azuladas e que lembrase o céu. Só pra lembrar, não curto fazer layouts nesse estilo, prefiro coisas medievais ou diabolescas. http://2.imgland.net/DqCTz.png1 ponto
-
Baiak lukinhas editado (mapa eu editei)
Baiak lukinhas editado (mapa eu editei)
Gui Guilherme reagiu a Grimmjow por uma resposta no tópico
1 pontoEntão pessoal arrumei punhado de bugs e visual no baiak LukinhasAcedo vamo la arrumei o tp para tibia bug >(NewMonsters) > dava em media 600k arrumei a parede da inqui antes n dava pra passa arrumei visual fica mais rox pq akele tava paia arrumei lich staff 120 de atk agr ta 20 etc.. aki ta ss Inquisition Arrumada Tp de tibia bug Arrumado Armas Adicionadas no npc Armas Adicionadas Novo visu Do templo Novo visu dos tps Vip Download aki Meu pc n ta entrando o site virus total eu agradeco quem fazer o scam pra mim mais pode confiar Ei eu editei o mapa da hora vc vai abaixa n vai custa nada um rep+ ali em baixo ne Quem for cria com o meu mapa passa o ip pra mim joga pq n posso deixa ele on pq tenho aulas etc.. e meu pc n suporta fica muito tempo ligado acc do god douglas/bho27i Bom teve um infeliz que copiou meu topico no tibiaking e postou que era dele. Como voces podem saber que e o meu, olhe meu msn no meu perfil sasuke.n3 no download o nome do cara que postou e sasuke.n3 inicial do meu msn Bom ta comprovado que o mapa e meu1 ponto -
[PEDIDO] Cartao de credito ou de debito xD
[PEDIDO] Cartao de credito ou de debito xD
Allberes reagiu a Adriano SwaTT por uma resposta no tópico
1 pontoEu criei um sistema assim... Você precisará criar uma Sala para o NPC, nesta sala só entrará quem tiver o cartão de débito (um item id em sua backpack)... 1º Passo' Vamos criar o NPC' 2º Passo Dentro da pasta "Scripts", crie um arquivo chamado "bank.lua" e dentro do mesmo cole o código abaixo: Salve e feche o arquivo. 2º Passo' Vamos criar o Tile Verificar de ITEM' No Map Editor você poe a "ActionID", que está em Laranja, no piso que verificará se o player tem o ITEM' E edite as coordenadas, lembrando que a que está em vermelha é pra onde o player será teleportado caso tenha o item, e a segunda é o oposto' (pra onde irá se não possuir o item) Espero ter ajudado, Tive que sair correndo e não deu pra deixar melhor explicado... Abraços'1 ponto -
[Resolvido] [DUVIDA] Como faço pro meu ot aluga casas?
Olá, Alberess Basta a configuração de alguns parâmetros no arquivo config.lua: houseRentAsPrice = true -- O preço das casas deve ser o aluguel? housePriceAsRent = false -- O preço do aluguel deve ser o preço da casa? housePriceEachSquare = 1000 -- Preço por cada sqm da casa houseRentPeriod = "monthly" -- Período de cobrança do aluguel. No exemplo acima, configurei para o jogador pagar o preço de aluguel para comprar a casa e o período de aluguel como "monthly", ou seja, um período mensal. Os valores para o parâmetro houseRentPeriod são: houseRentPeriod Values: yearly, monthly, weekly, daily, never -- Anual, Mensal, Semanal, Diário, Nunca Lembrando que o aluguel deve ser configurado diretamente no mapa. Abraços1 ponto
-
Anél de Experiência' [Exp Ring]
Anél de Experiência' [Exp Ring]
Alberess reagiu a Adriano SwaTT por uma resposta no tópico
1 pontoSim, eu creio que seja isso que explicou... Só não entendi o "return doPlayerSetRate(cid, SKILL__LEVEL, value)"... Nem manjo de Script, estou começando agora (meio que sem querer) eiahieuha Abraços & valeu por comentar'1 ponto -
[Resolvido] Virus no MB?
[Resolvido] Virus no MB?
Eduardo Dantas reagiu a Kimoszin por uma resposta no tópico
1 pontoNão passa de um falso positivo. Se os demais antivirus tivessem acusado, ai sim você deveria se preocupar.1 ponto -
[RECRUTAMENTO] Forgotten Realms OTSERVER
[RECRUTAMENTO] Forgotten Realms OTSERVER
Gui Guilherme reagiu a Skydangerous por uma resposta no tópico
1 pontoDependendo do andamento do projeto, se liberar algo pra comunidade ou mostrar bastante progresso irei ajudar. Nome: Pedro SkyDangerous Desejo atuar na vaga: Mapper ou Scripter Tempo disponível no computador: todos os dias de manhã até anoite Já trabalhei no: Não lembro Contato: Por Mensagem Particular, ou MSN. eu envio por pm Trabalhos: Procure nos nos forum, tem muitos1 ponto -
Exevo grav Vis
1 pontoCara, no fiz sempre tira 30 nao sei pq o.o Eu fiz com poison e tira quanto eu quiser. Se interessar. Troque: local condition = createConditionObject(CONDITION_ENERGY) Por: local condition = createConditionObject(CONDITION_POISON) Abraços.1 ponto
-
Arena de Pixels #4 Ed.
1 ponto1 ponto
- [Resolvido] ponte com sensor de level
[Resolvido] ponte com sensor de level
Strogonofff reagiu a Coyoty por uma resposta no tópico
1 pontoBom cara no meu script funcionou perfeitamente, vou testar o do Huziwara e ja edito! EDIT: Huziwara realmente tem algo errado com seu script.. =/ eu testei aqui e só aparece você não pode voltar! não faz mais nada, lembrando que no action id no RME eu colokei 50002! coloquei o comando no movements.xml e não funcionou!! EDIT2: Huziwara =D tomei a liberdade de editar o seu script bl? function onStepIn(cid, item, position, fromPosition) if(item.actionid > 50000 and item.actionid < 50200) then local level = (item.actionid - 50000) local kickposition = {x=95, y=125, z=7} -- AQUI A POSIÇÃO QUE O PLAYER VAI SER TELEPORTADO SE ELE TIVER ABAIXO DO LEVEL local kickposition2 = {x=95, y=123, z=7} -- AQUI A POSIÇÃO QUE O PLAYER SERAR TELEPORTADO SE ELE TENTAR VOLTAR ! if getPlayerLevel(cid) ~= level then doTeleportThing(cid, kickposition, TRUE) doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_BLUE) doPlayerSendCancel(cid,"Só players de level " .. level .. " podem passar.") elseif getPlayerLevel(cid) == level then setPlayerStorageValue (cid, 3456787, 1) end if getPlayerStorageValue(cid, 3456787) == 1 then doTeleportThing(cid, kickposition2, TRUE) doPlayerSendCancel(cid,"Você não pode voltar !") end end return TRUE end Agora funcionou !1 ponto- Desvendando o RME - Aba "View"
Desvendando o RME - Aba "View"
Champz Silva reagiu a ElderDark por uma resposta no tópico
1 pontoEntão galera, meu primeiro tutorial e resolvi abordar um assunto que creio que ninguem veio exclarecer a todos, alguns amigos meus vem me perguntando qua a função de cada opção então resolvi fazer tal tutorial. Como chegar a Aba "View" Opções da aba New View - Hotkey Ctrl-Shift-N Esta opção você poderar abrir uma nova visão do mapa que você estiver fazendo. Exemplo : Sem o New View Com o New View Take Screenshot - Hotkey F11 Apertando sua hotkey ou clicando no Menu você irar tirar uma Screenshot do mapa, a imagen é geralmente salva no "Meus Documentos/My Pictures/RME" Show Shade - Hotkey Q Quando estiver vendo um andar superior do mapa, ativando esta opção a parte escura que costuma ficar na parte inferior do mapa que esta aparecendo ira sumir. Exemplo : Show Shade Ativado Show Shade Desativado Show all floors - Hotkey Ctrl-w Em geral ela fica ativada, mais ela e utilizada para você poder vizualizar todos os andares de uma vez. Exemplo: Show all floors Desativado Show all floors Ativado Ghost loose items - Hotkey G Ativando esta opção tudo menos o chão ira ficar um pouco transparente permitindo ver o que tem atras das paredes. Exemplo: Ghost loose items Ativado Ghost higher floors - Hotkey Ctrl-L Enquanto estiver vendo o primeiro andar, você poderar ver o segundo andar, porem ele estara um pouco transparente. Exemplo: Ghost higher floors Ativado Show Ingame Box - Hotkey Shift-I Da-se foco ao centro da tela do editor, onde no centro ficará mais claro e no contorno mais escuro. Exemplo: Show Ingame Box Ativado Show Grid - Hotkey Shift-G Ira exibir uma grade aonde cada quadrado é equivalente a um "SQM" Exemplo: Show Grid Ativado Highlight items - Hotkey V Irá ficar de cor diferente "SQMs" que tiverem mais de um item no lugar, quanto mais escuro a cor maior a quantia de itens no "SQM" Exemplo: Highlight items Ativado Show creatures - Hotkey F Abilitado você vera as creaturas existentes no mapa. Show spawns - Hotkey S Você poderar ver os spawns existentes no mapa Show special - Hotkey E Ainda não sei o que a sua função (Quem souber e poder me falar ficaria feliz) Only show colors - Hotkey Ctrl-E só ficara visivel as cores de opções especiais como : spawns, casas, protection zone Exemplo: Only show colors Ativado Show houses - Hotkey Ctrl-H Ficara visivel os pisos especiais de Houses. Exemplo: Show Houses Ativado Show pathing - Hotkey O Mostrara os lugares aonde você nao pode passar. Exemplo: Show pathing Ativado Então galera é isso ai, caso tenha duvidas só postar que ficarei contente em soluciona-las. Gostaram do tutorial ? De um Rep+, Não custa nada Att ElderDark1 ponto- Desvendando o RME - Aba "View"
1 pontoTutorial bom, organizado, etc... As vezes tem pessoas que mechem no RME e não sabe porque ta de tal forma a visualização... Parabéns ! REP + Att. Huziwara no Mokou1 ponto- Desvendando o RME - Aba "View"
1 pontoMuito bom mesmo Bem organizado o Topico e muito bem ilustrado pra quem nao sabe ta ai. Parabéns1 pontoLíderes está configurado para São Paulo/GMT-03:00 - [Resolvido] ponte com sensor de level
Informação Importante
Confirmação de Termo