Ir para conteúdo

Pesquisar na Comunidade

Mostrando resultados para as tags ''system''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Fóruns

  • xTibia - Notícias e Suporte
    • Regras
    • Noticias
    • Soluções
    • Projetos Patrocinados
    • Tutoriais para Iniciantes
    • Imprensa
  • OTServ
    • Notícias e Debates
    • OTServlist
    • Downloads
    • Recursos
    • Suporte
    • Pedidos
    • Show-Off
    • Tutoriais
  • OFF-Topic
    • Barzinho do Éks
    • Design
    • Informática

Encontrar resultados em...

Encontrar resultados que contenham...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


Sou

  1. Pessoal, sou novo no XTibia e gostaria de pedir uma ajuda a vocês. Voltei a administrar servidor de Tibia e estava aqui tentando editar uns scripts para usar o comando de !reset. Esse comando funcionou bem no meu Server local config = { backToLevel = 40, redskull = false, -- need to be without redskull to reset? battle = true, -- need to be without battle to reset? pz = false, -- need to be in protect zone to reset? stages = { {resets = 4, level = 350, premium = 330}, {resets = 9, level = 355, premium = 340}, {resets = 14, level = 450, premium = 450}, {resets = 19, level = 600, premium = 600}, {resets = 24, level = 800, premium = 800}, {resets = 29, level = 1000, premium = 1000}, {resets = 34, level = 1100, premium = 1100}, {resets = 39, level = 1200, premium = 1200}, {resets = 44, level = 1300, premium = 1300}, {resets = 49, level = 1500, premium = 1500}, {resets = 54, level = 1600, premium = 1600}, {resets = 59, level = 1650, premium = 1650}, {resets = 64, level = 1700, premium = 1700}, {resets = 69, level = 1800, premium = 1800}, {resets = 74, level = 1850, premium = 1850}, {resets = 79, level = 1900, premium = 1900}, {resets = 84, level = 2200, premium = 2200}, {resets = 89, level = 2500, premium = 2500}, {resets = 94, level = 5000, premium = 5000}, {resets = 2^1024, level = 7000, premium = 7000} } } function onSay(cid, words, param) local function getPlayerResets(cid) local resets = getPlayerStorageValue(cid, 500) return resets < 0 and 0 or resets end local function doPlayerAddResets(cid, count) setPlayerStorageValue(cid, 500, getPlayerResets(cid) + count) end if config.redskull and getCreatureSkullType(cid) == 4 then return doPlayerSendCancel(cid, "Voce precisa estar sem red skull para resetar.") elseif config.pz and not getTilePzInfo(getCreaturePosition(cid)) then return doPlayerSendCancel(cid, "Voce precisa estar em protection zone para resetar.") elseif config.battle and getCreatureCondition(cid, CONDITION_INFIGHT) then return doPlayerSendCancel(cid, "Voce precisa estar sem battle para resetar.") end local resetLevel = 0 for x, y in ipairs(config.stages) do if getPlayerResets(cid) <= y.resets then resetLevel = isPremium(cid) and y.premium or y.level break end end if getPlayerLevel(cid) < resetLevel then return doPlayerSendCancel(cid, "Voce precida de level " .. resetLevel .. " para o proximo reset.") end doPlayerAddResets(cid, 1) local healthMax, manaMax = getCreatureMaxHealth(cid), getCreatureMaxMana(cid) doPlayerAddLevel(cid, -(getPlayerLevel(cid) - config.backToLevel)) setCreatureMaxHealth(cid, healthMax) setCreatureMaxMana(cid, manaMax) doSendMagicEffect(getCreaturePosition(cid), CONST_ME_FIREWORK_RED) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Now you have " .. getPlayerResets(cid) .. " " .. (getPlayerResets(cid) == 1 and "reset" or "resets") .. ".") return true end Porém, eu precisava de algumas modificações nele... eu precisava definir alguns pontos de mudança pós o reset, por exemplo, o jogador ganha 10% a mais de xp... esse tipo de coisa. Fora isso, o que eu precisava também (e mais importante) seria que esse reset fosse contabilizado numa row 'resets' da database do meu server que é MySQL. Vocês poderiam, por gentileza, me ajudar ou dar uma luz relacionado a isso? Ficaria muito grato!
  2. Alguem teria um script de reset preferencialmente por source para otx2 atualizado https://github.com/mattyx14/otxserver/tree/otxserv2 se for por distro as mudanças me diga aonde mudar eu mesmo compilo ou script normal mesmo, porem as configuraçoes do script seriam as seguintes level necessario para resetar = x aumento de x level para reset = x item e quantidade de item para resetar = x,x aumento de x items por reset= x vida e mana volta ao inicio ao resetar = true or false skills voltao ao inicio ao resetar = true false hp e mp adicional ganho /lvl por reset = 1% (configurável) dano e heal adicionado por reset = 1% configuravel reset voc = {x, x, x, x, x, x, x} (quando der o 10 reset por exemplo(configuravel) , será feito uma checagem de vocation para poder resetar, por exemplo até 10 resets qualquer voc reseta nao será feito checagem, porem no reset 10 só resetará se for uma das seguintes vocações, se for mais facil deixa só 1 reset configuravel assim se for dificil pode colocar apartir de tantos resets precisa da classe, coloque oque for mais pratico pois o efeito será o mesmo. teleport para o templo= true or false pode resetar com battle= true or false a cada x resets ganhe tal item (configuravel) reset x recebe item x ao resetar, reset =5 {2160, 100} - exemplo. nao me importa se será storage, source, script. só me importo com o resultado e que nao tenha bugs, quanto mais bem feito melhor na hora de negociar o preço, se nao for permitido este tipo de post aqui alguem me avise que eu retiro ele. se tem outro local por favor movam ele, mais informações mande msg no privado responderei assim que possível.
  3. Pessoal alguém teria um sistema que dê para ver o depot do player? por favor (REP+++)
  4. Olá Homo-Sapiens. Resolvi trazer para vocês esse sistema de Quest que eu criei para resolver alguns inconvenientes em meu ot serv. Quais são as características dele? Ele é totalmente inserido através do mapper sem precisar criar scripts. Ele contém um sistema de parâmetros que podem ser usados para determinar a quem pode receber o prêmio. Ele não usa marcação por storage evitando assim conflitos com outros scripts que usam storage como marcação. Com esse sistema inserido vocês podem criar quest por vocação única, promovidos, mages ou kinas/palas. Como ela pode usar os items dentro do baú como items obtiveis de quest, ela aceita qualquer tipo de item inserido, mesmo keys e runas. Implementação Em actions.xml adicione: <!-- Quests baus --> <action fromid="1740" toid="1741" event="script" value="quests/quests.lua"/> <action fromid="1747" toid="1749" event="script" value="quests/quests.lua"/> <action fromid="1410" toid="1420" event="script" value="quests/quests.lua"/> <action actionid="2000" event="script" value="quests/quests.lua"/> Agora em scripts/quests crie ou modifique seu quests.lua para esse: --[[ autor = Marcryzius data = segunda-feira, 28 de Dezembro de 2015 >> Alguns parametros de uso. item.uid = itemid << id do item que será ganho - caso o item esteja 'inside' no baú, não se faz nescessario usar o id do item na uid - para habilitar o bau com os items como sendo uma quest se faz necessario acrescentar uma AID. actionid = validação << o baú só será usado na forma de quest se tiver alguma aid. pode usar marcação de vocação como na instrução abaixo ou setar aid 2000 para validar o baú como uma quest. actionid = quantidade << desde que ela seja maior que 100 e menor que 200 (150 = 50 items, 200 = 100 items) actionid = vocação << o primeiro numero diz que é uma quest de vocação; o segundo habilita que, as vocações promovidas também podem fazer a quest; os dois ultimos numero é da vocação em questão. exemplo 1 = 1201 << sorceres e master sorceres -- promovidos exemplo 2 = 1200 << kina e EK -- promovidos exemplo 3 = 1102 << apenas druids e não elder druids -- vocação especifica exemplo 4 = 1000 << apenas knights e paladins. exemplo 5 = 1100 << apenas sorcerers e druids. inside = varios items << todos os items que forem colocados dentro do bau será usado como referencia do premio da quest; pode-se tambem usar aid para determinar a vocação nescessaria dessa quest. -- ### -- Com o uso da nova função, não está mais sendo "setado" no player a store da "quest" usando setPlayerStorageValue(). ]] function onUse(cid,item,pos) if(item.actionid >= 1000 and item.actionid < 3000)then if(item.actionid == 1000 and not(isPaladin(cid) or isKnight(cid)))then -- somente kina ou pala recebem o item return true,doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "It is locked.") elseif(item.actionid-1000 == 100 and not(isSorcerer(cid) or isDruid(cid)))then -- somente mages recebem o item return true,doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "It is locked.") elseif(item.actionid-1000 > 0 and item.actionid-1000 < 100 and not(getPlayerVocation(cid) == item.actionid-1000))then -- vocação especifica - kina pala. return true,doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "It is locked.") elseif(item.actionid-1000 > 100 and item.actionid-1000 < 200 and not(getPlayerVocation(cid) == item.actionid-1100))then -- vocação especifica - mages. return true,doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "It is locked.") elseif(item.actionid-1000 >= 200 and item.actionid-1000 < 300 and not(getPlayerVocation(cid) % 4 == item.actionid-1200))then -- vocações promovidas. return true,doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "It is locked.") end elseif(item.uid > 12000 and item.actionid == 0)then -- um baú qualquer return false -- abre o baú para pegarem os items 'inside' sem marcar nada, como se fosse abrir um baú qualquer sem ser de quest. end local quests_quant = (item.actionid-100 < 1) and 1 or (item.actionid-100 > 100) and 100 or item.actionid-100--Defini a quantidade de items. local playerCap,cap = getPlayerFreeCap(cid),getItemWeightById(item.uid,quests_quant) or 0 if(item.uid > 1000 and cap > 0)then -- quest por uid if(getSaveQuestsInfor(item.uid,cid))then --Função não usa marcação (getPlayerStore...) if(playerCap >= cap)then if(item.uid == 2493)then setPlayerStorageValue(cid,2493,1) end -- compatibilidade, verificar uso > ???...D:::H...??? doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, 'You have found a '..((quests_quant == 1) and '' or quests_quant)..' '..getItemNameById(item.uid)..'.') saveQuestsInfor(item.uid,getItemNameById(item.uid),cid,"Quest system by uid.") doPlayerAddItemEx(cid,doCreateItemEx(item.uid, quests_quant),true) else return false,doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, 'You have found a '..(quests_quant == 1 and '' or quests_quant)..' '..getItemNameById(item.uid)..' weighing '..math.floor(cap)..' oz it\'s too heavy.') end else--caso o player já tenha feito a quest, abri-se o baú de forma convencional, podendo obter os items que estejam dentro dele. return false end return true end local size,texto,rewards,peso = isContainer(item.uid) and getContainerSize(item.uid) or 0,'You have found a ',{},0 if(size > 0)then for i = size,0,-1 do local tmp = getContainerItem(item.uid, i) if(tmp.itemid > 0) then if(isItemContainer(tmp.itemid))then -- só é possível adicionar mais um inside. ou seja, uma bolsa com algo dentro desde que não tenha outra bolsa com mais coisas dentro, dentro dessa bolsa primária. table.insert(rewards,1,{[tmp.itemid] = {}}) texto = texto..' a '..getItemNameById(tmp.itemid)..''..(i+1<size and ',' or '.') for insize = getContainerSize(tmp.uid),0,-1 do local newtmp = getContainerItem(tmp.uid, insize) table.insert(rewards[1][tmp.itemid],{id=newtmp.itemid, val=(newtmp.actionid > 0 and newtmp.actionid or newtmp.type)}) end else --Foi feito dessa forma para não haver conflito com items do mesmo tipo. table.insert(rewards,{[tmp.itemid]=(tmp.actionid > 0 and tmp.actionid or tmp.type)}) if(tmp.type > 0)then texto = texto..' '..(tmp.type > 0 and tmp.type..' charges of ' or 1)..' '..getItemNameById(tmp.itemid)..''..(i+1<size and ',' or '.') elseif(tmp.actionid > 0)then texto = texto..' '..(tmp.type > 0 and tmp.type..' charges of ' or 1)..' '..getItemNameById(tmp.itemid)..''..(i+1<size and ',' or '.') else texto = texto..' '..getItemNameById(tmp.itemid)..''..(i+1<size and ',' or '.') end end peso = peso + getItemWeight(tmp.uid) end end if(getSaveQuestsInfor(tonumber(pos.x..''..pos.y..''..pos.z),cid))then --Função não usa marcação (getStore...)) if(playerCap >= peso)then for _,reward in pairs(rewards) do for item,valor in pairs(reward) do if(type(valor) == "table")then local bag = doCreateItemEx(item) for _,value in pairs(valor) do if(value and value.id > 0)then doAddContainerItemEx(bag,doCreateItemEx(value.id,(value.val<=0 and 1 or value.val))) end end doPlayerAddItemEx(cid,bag,true) elseif(isInArray(KEYS_DOOR,item))then -- se o item for uma key local ch = doCreateItemEx(item,1) doItemSetAttribute(ch,'aid',valor) doPlayerAddItemEx(cid,ch) else doPlayerAddItemEx(cid,doCreateItemEx(item, valor),true) end end end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, texto) saveQuestsInfor(tonumber((pos.x)..''..(pos.y)..''..(pos.z)),getItemNameById(table.maxn(rewards)),cid,"Quest system by Inside.") else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, texto..' weighing '..math.floor(peso)..' oz it\'s too heavy.' ) end else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "It is locked.") end else return false, doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "It is empty.") end return true end Em lib/050-functions.lua adicione: function getSaveQuestsInfor(uid,cid) --[[( Marcryzius )]]-- local str = false if not(db.executeQuery("SELECT * FROM `server_quests`;"))then -- caso a table não exista, será criada db.executeQuery("CREATE TABLE `server_quests` (`uid` INTEGER, `name` VARCHAR(255), `name_player` VARCHAR(255), `pos` VARCHAR(255), `other` TEXT);") return getSaveQuestsInfor(uid,cid) end if(tonumber(uid))then str = db.getResult("SELECT * FROM `server_quests` WHERE `uid` = '"..uid.."' AND `name_player` = ".. db.escapeString(getCreatureName(cid))..";") elseif(type(uid) == 'string')then str = db.getResult("SELECT * FROM `server_quests` WHERE `name_player` = " ..db.escapeString(getCreatureName(cid)).. " AND `name` = '"..uid.."';") else return false,print('getSaveQuestInfor: tipo de uid invalido > '..tostring(type(uid))) end return (str:getID() == -1) and true or false end function saveQuestsInfor(uid,name,cid,other) --[[( Marcryzius )]]-- --[[ uid = Item.uid usado no bau(entre outros) para receber o item da Quest name = nome do item dado ao player ou nome da quest cid = identificacao do player other = informacoes adicionais para serem salvas junto a quest ]]-- if not(db.executeQuery("SELECT * FROM `server_quests`;"))then -- caso a table não exista, será criada db.executeQuery("CREATE TABLE `server_quests` (`uid` INTEGER, `name` VARCHAR(255), `name_player` VARCHAR(255), `pos` VARCHAR(255), `other` TEXT);") end -- caso o parametro uid seja numero, pega-se a posição do item ou, caso não, pega-se a posição do player. local other,pos2 = other or '','' local pos = type(uid) == 'number' and getThingPos(uid) or getCreaturePosition(cid) pos2 = 'x='..pos.x..', y='..pos.y..', z='..pos.z -- verifica se tudo está correto. if not(type(name) == 'string') or not(tonumber(cid))then return false, print('Funcao requer parametros: name,cid') end -- salva as informações na database. db.executeQuery("INSERT INTO `server_quests` (`uid`, `name`, `name_player`,`pos`,`other`) VALUES ("..(uid or tonumber(pos.x..''..pos.y..''..pos.z))..",'"..name.."', '"..getCreatureName(cid).."','"..pos2.."','"..other.."');") return true end Exemplos de uso do sistema Quest na qual dá o prêmio de 100 gps: Quest na qual dá o prêmio apenas para knights (e não para EKs e outras promoções de knight): Quest na qual dá o prêmio apenas para paladins e suas promotions: Ressalva: Caso queira fazer para knights use o id 0 (zero) e não 4 (quatro). Quest na qual dá o prêmio apenas para todos: Nesse caso você pode usar AID 0 (zero) ou AID (2000). Caso usem o metodo 'inside' de items no baú pode-se também usar esses mesmos parâmetros para estabelecer a quem pode ganhar os items inseridos no baú. Lembre-se que em quests 'insides' não se usa UID, mantenha ela em 0 (zero): Utilizando o metodo 'inside' ela só se tornará uma quest caso tenha alguma AID para válidar como quest. Então para fazer uma validação na qual qualquer player possa obter os itens 'inside' como sendo uma quest, adicione a AID 2000 ao baú: Bem, é isso pessoal. Para finalizar, aqui vai uma crítica ao xtibia. MELHOREM ESSE SISTEMA DE EDIÇÃO DE TEXTO.
  5. Boa tarde, vim fazer um pedido pra quem puder me ajudar, a colocar um sistema de gender tipico do otpokemon.. Como é o sistema? Os pokemons summon e dos player que for do [SEXO MALE] ficar com o nome com a cor azul Os pokemons summon e dos player que for do [SEXO FEMALE] ficar com o nome com cor rosa Caso não puder ajudar, se puder falar onde fica esse tipo de sistema, irei atrás de bases com esse sistema e tentar pega-los.. Obrigado a todos ❤️
  6. Boa noite povo do xTibia vim fazer pedido sobre o Level System, queria saber se alguém poderia me ajudar a adicionar Level System básico Como seria esse Level system básico? Fica mostrando level nos Pokémons summon e nos próprios pokémons do jogadores Ele fica ganhando XP a cada pokémon matado e fica mostrando no chat quantos xp ganhou e quantos precisa pra subir de nível Assim que upa de nível apareça tipo uma mensagem falando q o povo subir de nível e qual foi o nível [Obs : se puder colocar pra cada vez q upa o nível adicionar uma % de vida ou força] Agradeço pela atenção, quem puder ou não puder ajuda não tem problema, Obrigado a todos pela atenção.
  7. Olá, estou contratando algum programador que consiga fazer o sistema e a module do PVP DO GLA. Que não seja caro, crise tá foda, rs. Bom o sistema é simples, porém a module no OTC é muito bonita e bem feita. Basicamente o sistema funciona assim: Você clica em uma aba no Cliente e abre a module onde aparece Player vs Player & Torneio. Eu por enquanto só quero a parte Player vs Player. Na parte de player vs player aparece um ranking ordenado por quem tem mais vitórias, e aparece suas derrotas e seu winrate. Para buscar partida precisaria clicar em "Buscar por grupo" onde iniciaria um Matchmaking com outras pessoas que estavam na fila. Ao encontrar outro jogador os 2 players seriam levado para uma arena livre e começariam o Duelo até 1 morrer. Quando 1 player conseguir vencer o outro vai aparecer Victory na tela assim: E também iria aparecer uma mensagem para todos do jogo assim: Como vocês perceberam há um contador de tempo mas para mim não é necessário. Lembrando meu servidor ainda não comecei, ou seja não tenho base nenhuma ainda, e isso é para um servidor de poketibia, então se vocês se sentirem mais a vontade com certa base para fazer o sistema sintam-se a vontade e eu utilizarei essa base.
  8. Olá galera do Xtibia Beleza?? Saco cheio da minha presença eu sei!! APSOAKS Gostaria de fazer um pedido hoje!! Estou com um projeto para lançar , claro , como todo projeto em fase de lançamento , e normal encontrar barreiras , erros , etc... Mas creio que meu erro e bem simples e ao mesmo tempo dificil de ser resolvido , como não manjo de WebSite... Gostaria de um Shop System que funcione com o meu Morden , pois pesquisei por diversos sites , fiz oque os tutoriais ensinava e nem um funcionou , então quem poder ajudar agradeço!!!
  9. Fala galera, depois de anos sem produzir nada venho mostrar um pouco do sistema que estou desenvolvendo para um amigo. Paper Doll System Nada mais é do que, equipar um item e ele aparecer no outfit do player. E nos monstros Por enquanto é isso pessoal, conforme eu atualizar o código eu mostro para vocês...
  10. Olá pessoal, achei um servidor em um fórum gringo de Tibia que continha este mod embutido no Client Não sei as configurações exatas do sistema mas vou posta-lo aqui caso saibam configurar... Arquivo.lua= Créditos: OtLand Shawak Slicer
  11. Alguém poderia me ajudar resolver o problema do meu ginasio? Meu script esta configurado com as seguintes mensagens Sabrina: Hello G U M B A L L, my name is Sabrina and I'm Saffron's Gym Leader. How may I help you? 12:48 G U M B A L L: battle 12:48 Sabrina: To battle agains't a gym leader you need pokemons. ja tentei falar com ela com o pokémon pra fora mas não funciona,ela não faz nada SE PUDEREM ME AJUDAR DOU REP
  12. Eu criei esse sistema de look at attack porquê eu acho ridículo quando o character fica atacando o oponente sem estar "olhando" para ele. O que ele faz? Ele volta o character que esteja atacando um oponente para o oponente. Ele não impede de andar ou de mudar de direção, porém ele vai ficar mantendo a direção voltada ao oponente. Vamos adicionar o sistema. Em: creaturescript/creaturescript.xml, adicione essa tag: Agora em: creaturescript/scripts, crie um arquivo lua e adicione isso: Dentro do mesmo diretório, abra o arquivo login.lua e adicione isso a ele onde existe outros semelhantes. Pronto. Instalado o seus sistema de look at attack. Agora quando o player atacar algum oponente, ele ficará "olhando" para ele.
  13. -Primeiramente, boa noite a todos ^^ Galera eu gostaria de um system completo de pesca, uso a a base stage do bluester, totalmente editada, mas é a base que uso, então, eu gostaria de um system de pesca da seguinte forma. -Tem de ser necessário o uso de uma outfit para pesca -uso de iscas, sendo cada isca com level e com seus respectivos pokemons -O player poderá ter livre movimento pescando, sem que de bug como no system que tenho, no script que tenho o player começa a pescar, ai se meche e buga a outfit, para de pescar mas ele continua com a outfit pescando, eu gostaria de um system como o da pxg, onde ele jogasse a vara de pesca no determinado lugar, mas poderia andar livremente até perder a visão da isca na tela. -Não pode ser possível pescar mais de uma vez ao mesmo tempo, por exemplo, enquanto o player estiver pescando ele não pode pescar novamente. -Efeito que aonde ele jogar a isca na água fique tipo uns pingos de água e quando o pokemon fisgar a isca(em determinados segundos) começe a borbulhar para alertar ao player que ele já pode puxar a isca. - hotkey para jogar a isca na água e hotkey para puxa-la novamente. -Função onde o player puxar a vara de pesca antes de começar a borbulhar não pescar nada. -Função de habilitar isca, por exemplo o player usa a isca da bag, se ele clicar na isca com id 1234 ele ative ela na vara de pesca para pescar apenas os pokes daquela isca e apareça a mensagem avisando que a isca está na vara de pesca, e quando a retirá-la da vara de pesca também de mensagem que ele retirou ela ou trocou. -Função de stage de level na isca, por exemplo, a isca que só pode usar no level 10 de pesca da mais xp pra upar o fishing do que a do level 5 entende. -e por último gostaria se possível de fazer que quando o player jogasse a vara de pesca na água ele automaticamente mudasse de outfit, e assim que parasse de pescar voltasse a outfit que ele estava. Como podem ver é a pesca da PxG por completo, se alguém estiver disponível a fazer esses script ai eu ficaria muito grato e tenho certeza que o Fórum todo iria utilizar este system, seria uma contribuição muito grande para com o fórum. Obrigado e desculpe se teve algum erro no tópico. Aguardo ansiosamente alguma resposta e tenham uma boa noite ^^
  14. Olá a todos, venho aqui mostrar um novo projeto que estou desenvolvendo com alguns sistemas Trata-se de um Projeto RPG Survival/Adventurer, onde o seu esforço será necessário para progredir, O servidor conta com um sistema de SOM feito e disponibilizado para todos pelo vyctor17, apenas peguei o sistema e modifiquei algumas linhas e funções, o projeto ainda está no começo, meu objetivo é tornar o jogo inteiro com som e com RPG, fazendo assim quests que serão fundamentais com som, exemplo: audios pelas cavernas avisando perigo sobre algum boss ou algo do tipo Aqui está um video de como estão ficando as coisas, só mostrei o basico, ainda irei fazer sistemas de interações com o cenario, no qual magias destruirão o cenario ou modificarão, será um jogo totalmente personalizado por dentro pelos jogadores. Antes que me perguntem! Sim, será possivel desativar o som, afinal nem todo mundo é acostumado a jogar tibia com som hahaha Terá opções de desativar partes do som Exemplo: Desativar sómente som dos items, só do ambiente, das criaturas, das magias, etc. E antes que perguntem, terão sons individuais, que só o propio jogador escutará e terão sons coletivos, que todos na tela escutarão. É um projeto que começou faz 3 dias Atualizações 26/04/2017 - Foi retirado o Livro de Skills do jogo e adicionado no própio cliente, basta apertar CTRL + A e uma janela informando os atributos será aberta. 27/04/2017 - Sistema de pesca e um pouco do ambiente do jogo.
  15. Lordbaxx

    Show-Off Task System module

    Bom só pra apresentar á vocês o modelo de task que será usado no Pokemon Imperium. Constitui-se em, o jogador conseguir e entregar alguns itens pedidos pelo NPC da task, após a entrega destes itens, o NPC dará uma quantidade de EXP ao jogador e ativará a quest de determinado pokemon (existe 1 Npc para cada pokemon da task). O jogador terá que caçar para alcançar a quantidade necessária de pokemons que é mostrada na janela da Task (atualiza automaticamente o número que já matou, sempre que você elimina 1 pokemon da task ativa), e quando completar, o jogador só precisará apertar em reward para coletar os itens do prêmio e mais uma quantidade de EXP. A janela ainda está sendo trabalhada, terá suporte as seguintes opções: Nome, foto e localização do NPC no qual o jogador precisará encontrar para ativar a task. Task diária em nova aba porém mesma window(janela). Task de pokemons shiny também em nova aba na mesma window(janela). Imagens Atenciosamente, Dougllas!
  16. Boa tarde galera , gostaria de adicionar ao lado de [Frags:0] no look do player [Critical:0] e [Dodge:0] Assim todos saberão a quantidade que um e outro possui para evitar acusações indevidas...
  17. Bom, creio que o script seja um pouco complexo (ou não) O player utiliza o firebug na fornalha Nisto ela acende, então ele da use na "sanfona" da fornalha e aparece o magic effect de vapor em cima da bigorna, então o item esta pronto para a forja Nos 100 iron ires necessários pra forjar o Huge of Crude iron (matéria prima para forja) Utiliza-se então a "sanfona" novamente para aquecer o item sob a bigorna e é utilizado o 'Foge Hammer' Conforme é utilizado o Forge Hammer aquece, então é necessário dar user nele e depois no barril para resfriá-lo e assim utilizar novamente (Quando os itens são recém forjados, eles ainda estão quentes, então pode-se reforjá-los dando user na "sanfona" para "derretê-los" e voltarem a ser matéria pria) O Foge Hammer tem a mesma Sprite que o War Hammer, porém seu id tanto 'frio' quanto 'quente' são diferentes do War Hammer e do War Hammer Enchanted E por final os itens que podem ser forjados aleatoriamente Desde já agradeço
  18. Olá, Venho agora mesmo lhes pedir para verificar o porque de não aparecer os cast no PHP. Query para verificação: e PHP cast completo: Verifiquem se a algum erro nesta parte por favor, se for o caso de mudar o SQL me ajudem. Obrigado a todos que me ajudarem.
  19. WANTEDOT.COM lá, trabalhamos duro para preparar o server para vocês, foi quase 1 semana de ajustes e correções para que o lançamento doWantedOT fosse um sucesso! Pra quem não me conhece, sou desenvolvedor e administrador dos antigos servidores: AnonyOT, Undera, Falconia, BaiakRPGServer e outros. Estou voltando depois de quase 5 anos devido aos estudos para me dedicar por bastante tempo a esse servidor de mapa global, clássico 8.6 e espero a colaboração de todos para que o servidor dure por muitos anos! Atualmente estou com o apoio do ADM Wanted que é quem vai me ajudar a tocar pra frente nossa aventura. Espero que nosso servidor cresça como antigamente, fruto da minha boa e reconhecida adminsitração. Informações importantes - Servidor com EXP 250x Stages, ML 7x Skill 25x. - Foco constante na qualidade do PVP, com ajustes e balancementos. - Updates e correções diárias, não deixaremos passar nada. - Sistema de BLESS e AOL por comando (!bless 50k, !aol 20k) - Sistema de Addons por Itens, valorizando a conquista dos players. Tentaremos deixar o servidor mais clássico possível. Qualquer BUG ou Sujestão, entrem em contato imediatamente pelo Help-Channel ou Fórum. Nosso servidor é novo e ainda serão implementados muitos sistemas e novidades,aproveite. WANTEDOT.COM
  20. Opa, eu tentei fazer esse script de mineração, ele até funciona, mas não parece que funfa 100% certin, ele faz o que era pra fazer, mas eu botei o percent bem alto usando o pickaxe e mesmo assim existe dificuldade de pegar o item, eu nunca usei o for, então não sei se usei ele corretamente, alguém que netende bem poderia dar uma olhada e dizer no que estou errado? a parte do ground podem ignorar, só a parte do stones mesmo local configs = {sign = {{level = {0,9}, quant = {1,2}, percent = 5},{level = {10,19}, quant = {2,4}, percent = 8},{level = {20,29}, quant = {3,6}, percent = 11},{level = {30,39}, quant = {4,8}, percent = 14},{level = {40,49}, quant = {5,10}, percent = 17},{level = {50,59}, quant = {6,12}, percent = 20},{level = {60,69}, quant = {7,14}, percent = 23},{level = {70,79}, quant = {8,16}, percent = 26},{level = {80,89}, quant = {9,18}, percent = 29},{level = {90,99}, quant = {10,20}, percent = 32},{level = {100,200}, quant = {11,22}, percent = 35}},stones = {1285, 1356},stones_prize = {{itemprize = 2160, percent = {1,10}},{itemprize = 2152, percent = {11,30}},{itemprize = 2148, percent = {31,100}},},grounds = {406},grounds_prize = {{itemprize = 2160, percent = {0,1}},{itemprize = 2157, percent = {2,3}}},}function onUse(cid, item, fromPosition, itemEx, toPosition)local skills = getPlayerSkill(cid, SKILL_SWORD)if isInArray(configs.stones, itemEx.itemid) thendoPlayerAddSkillTry(cid, SKILL_SWORD, 1)transform_stone = math.random(1, 100) if transform_stone < 16 then doTransformItem(itemEx.uid, 2160) doPlayerSendTextMessage(cid, 22, "More luck in your next time.") else for L = 1, #configs.sign do if skills >= configs.sign[L].level[1] and skills <= configs.sign[L].level[2] then quant = math.random(configs.sign[L].quant[1],configs.sign[L].quant[2]) if item.itemid == 4874 then percent = configs.sign[L].percent + 75 stry = 2 else percent = configs.sign[L].percent stry = 1 end print('Skill: '.. skills ..'.') print('Porce: '.. percent ..'%.') print('Stry: '.. stry ..'.') percent_chance = math.random(1, 100) print('PC '.. percent_chance ..'.') if percent_chance <= percent then for M = 1, #configs.stones_prize do for_stone_prize = math.random(1, 100) print('SP '.. for_stone_prize..'.') if for_stone_prize >= configs.stones_prize[M].percent[1] and for_stone_prize <= configs.stones_prize[M].percent[2] then doPlayerAddSkillTry(cid, SKILL_SWORD, stry) doPlayerAddItem(cid, configs.stones_prize[M].itemprize, quant) doPlayerSendTextMessage(cid, 22, "You won ".. quant .." ".. getItemNameById(configs.stones_prize[M].itemprize) ..".") break_chance = math.random(1,100) if break_chance < 6 then doTransformItem(itemEx.uid, 2160) end break else doPlayerSendTextMessage(cid, 22, "You have not won anything, try again..") break end end else doPlayerSendTextMessage(cid, 22, "You did not succeed in mining , try again.") end break end end end elseif isInArray(configs.grounds, itemEx.itemid) then doPlayerAddSkillTry(cid, SKILL_SWORD, 1) transform_ground = math.random(1, 100) if transform_ground < 16 then doTransformItem(itemEx.uid, 2160) doPlayerSendTextMessage(cid, 22, "Sorry, but this ground was empty.") else for L = 1, #configs.sign do if skills >= configs.sign[L].level[1] and skills <= configs.sign[L].level[2] then quant = math.random(configs.sign[L].quant[1],configs.sign[L].quant[2]) percent_chance = math.random(1, 100) if percent_chance <= percent then for M = 1, #configs.grounds_prize do for_ground_prize = math.random(1, 100) if for_ground_prize >= configs.grounds_prize[M].percent[1] and for_grounds_prize <= configs.grounds_prize[M].percent[2] then doPlayerAddItem(cid, configs.grounds_prize[M].itemprize, quant) doPlayerSendTextMessage(cid, 22, "You won ".. quant .." ".. getItemNameById(configs.grounds_prize[M].itemprize) ..".") doTransformItem(itemEx.uid, 2160) else doPlayerSendTextMessage(cid, 22, "You have not won anything, try again..") end break end else doPlayerSendTextMessage(cid, 22, "You did not succeed in mining , try again.") end break end end end endend
  21. Opa, pessoal, eu extrai o cast system do summ de um tfs 0.4 8.60 e coloquei no meu 0.4 8.71, e qdo alguem está sendo o caster ele não consegue falar nada no chat do cast, e quem está assistindo só recebe uma imagem parada do momento em que ele entrou no cast, alguem saberia me ajudar?
  22. Sem bla bla bla, mimimi, nhéco nhéco... to sem tempo para tirar print dos itens no OBJECT BUILD então segue print da pasta e façam bom aproveitos meus amigos... Held Itens.rar Ah... e o scan Held Itens.rar
  23. Hey, então, eu peguei o Bank System por talkaction feito pelo Mock e tentei fazer alguns cálculos para transformar o sistema (que é em cents) para dollar. EX: Para depositar 1k, devo falar /bank d 100000 o ideal seria eu falar /bank d 1000 o problema está no comando all, que deposita/saca todo seu dinheiro. Eu consegui transformar de cents para dollar, pegando a variável de adicionar/remover item e multiplicar por 100, o problema é que caso o jogador deposite algum dinheiro sem o all, assim: /bank d 100000000, quando ele for sacar com o /bank w all (comando que saca todo o dinheiro da sua conta bancária), ele vai receber 100 vezes mais do que ele depositou. Por que o all vai multiplicar o saldo da sua conta bancária por 100. O código está imprimindo em dollar, mas os comandos são em centavos. E outra coisa, caso o jogador deposit mais de 42 milhões, 969,4 mil, 76 dollares e 96 centavos, o saldo é zerado. E às vezes buga, dando saldo negativo, inclusive criando stacks de 226 notas. Não sei se ficou claro, se estiver confuso, me avisem. Agradeço se alguém puder ajudar. Amanhã vou tentar fazer o transfer, para transferir dinheiro da conta bancária para outros jogadores. Se eu conseguir, eu edito aqui, caso alguém queira. Código: talkactions.xml:
  24. ***IMPORTANTE*** A parte para website foi desenvolvida para funcionar em gesior, então dificilmente irá funcionar em outros sem alguma alteração. Recentemente fiz um top fragger e decidi disponibilizar, existe um parecido que foi feito pelo Ryzor usei ele como base e melhorei o código tanto php e lua, de acordo com o que eu precisei. ***IMAGEM DO TOP FRAGGERS*** Primeiramente vamos instalar a parte do website(PHP). Abram seu layout.php e procure por : <a href="?subtopic=guilds"> <div id="submenu_guilds" 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_guilds" class="ActiveSubmenuItemIcon" style="background-image:url(<?PHP echo $layout_name; ?>/images/menu/icon-activesubmenu.gif);"></div> <div id="ActiveSubmenuItemLabel_guilds" class="SubmenuitemLabel">Guilds</div> <div class="RightChain" style="background-image:url(<?PHP echo $layout_name; ?>/images/general/chain.gif);"></div> </div> </a> e cole logo abaixo : <a href="?subtopic=fraggers"> <div id="submenu_frags" 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_guilds" class="ActiveSubmenuItemIcon" style="background-image:url(<?PHP echo $layout_name; ?>/images/menu/icon-activesubmenu.gif);"></div> <div id="ActiveSubmenuItemLabel_guilds" class="SubmenuitemLabel"><span style="color:red">Top Fraggers</span></div> <div class="RightChain" style="background-image:url(<?PHP echo $layout_name; ?>/images/general/chain.gif);"></div> </div> </a> dps na pasta /pages/ e crie fraggers.php e adicione no arquivo : Com isso já poderemos verificar os top fraggers do nosso ot acessando www.meusite.com/?subtopic=fraggers Agora vamos instalar a parte de frags no servidor(LUA). Primeiramente rode esse comando na sua database : ALTER TABLE players ADD frags_all smallint(5) unsigned default 0 ; Vá em creatuscripts/scripts e crie topfrags.lua: local skulls = {SKULL_WHITE, SKULL_YELLOW, SKULL_RED, SKULL_BLACK}function addPlayerFrag(cid, value) db.executeQuery("UPDATE `players` SET `frags_all` = `frags_all` + " .. value .. " WHERE `id` = " .. getPlayerGUID(cid) .. ";") return trueendfunction onKill(cid, target) if isPlayer(cid) and isPlayer(target) then for i= 1, #skulls do if getPlayerSkullType(target) == skulls[i] then addPlayerFrag(cid, 1) break end end end return trueendfunction onLogin(cid) registerCreatureEvent(cid, "TopFrags") return trueend em creatuscripts.XML adicione: <event type="kill" name="TopFrags" event="script" value="topfrags.lua" /><event type="login" name="RTopFrags" event="script" value="topfrags.lua" /> Pronto!! sistema instalado. Confira como fica a página : http://baiakfontana.com/?subtopic=fraggers abrçs
  25. Boa Tarde Xtibia! Alguém poderia por favor me passa ou criar pra mim o System Top Level? Estou usando o Nicaw Acc, não encontro esse sistema em nenhum lugar
×
×
  • Criar Novo...