Líderes
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 09/05/13 em todas áreas
-
Tibia UnBinder v0.3
PostadorHunter e um outro reagiu a Fir3element por um tópico no fórum
Usando o UnBinder v0.1 vi que ele injetava a DLL pelo título do processo, logo algumas pessoas inseriram caracteres especiais nos seus clients, impossibilitando de usar o UnBinder. Pensando nisso, refiz o programa para usar o nome do arquivo (.exe). DLL's feitas pelo Beziak e Chojrak. Tutorial: Vou usar o client do NTOUltimate para ensinar... Link: http://www.mediafire.com/download/z2c21uxxsj26tqv/NtoShinobi2.5.rar Abra o Tibia UnBinder e o client do NTO. No UnBinder execute os seguintes comandos: process NtoShinobi2.5 client 860 inject Os arquivos pic/dat/spr vão ser extraídos na pasta do client. Para saber mais sobre os comandos digite 'help'. Download: http://www.mediafire.com/?869ax137366by3m Scan: https://www.virustotal.com/pt/file/32184500c5db59f88d619bb1760753f6a237a5c18c138f43e7b73825592e022e/analysis/1378836263/ Tibia UnBinder v0.3.rar2 pontos -
* Minha primeira manipulação; * Espero que gostem e comentem!2 pontos
-
[EQUIPE] Cargos e Funções
otdocao1 e um outro reagiu a Heeyisis por um tópico no fórum
Vou ser bem realista acho que eu não me encaixaria, ainda, sou um membro novo e ainda estou aprendendo2 pontos -
2 pontos
-
1 ponto
-
Informações: Tasks adquiridas ou canceladas em NPC As tasks podem ser feitas repetidas vezes, mas somente uma vez por dia e apenas uma de cada vez (tempo configurável) Comando para acompanhar o andamento da task Atualização (31/08/13) > agora é possível ganhar itens a cada vez que a task é terminada Atualização (05/09/13) > VÁRIOS bugs corrigidos e algumas novas opções adicionadas Agora você pode escolher se quer que as tasks sejam feitas por level ou na ordem Recomendo a todos os que baixaram alguma versão anterior que atualizem Códigos: Tags: Em creaturescripts.xml, adicione: <event type="kill" name="Tasks" script="taskkill.lua"/> Em talkactions.xml, adicione: <talkaction words="!countkills" event="script" value="countkills.lua"/> No arquivo creaturescripts/scripts/login.lua, adicione: registerCreatureEvent(cid, "Tasks") Scripts: Crie um arquivo tasklib.lua em lib Crie um arquivo countkills.lua e adicione em talkactions/scripts Crie um arquivo taskkill.lua em creaturescripts/scripts Crie um arquivo NomedoNPC.xml em npcs Crie um arquivo tasks.lua em npcs/scripts Configuração: É feita toda no tasklib.lua: Configuração dos monstros: taskmonsters ={[1] = {'rotworm', killstotal = 100},[2] = {'cyclop','cyclops','cyclops smith','cyclops drone', killstotal = 100},[3] = {'dragon','dragon lord','frost dragon', killstotal = 100}} - O [número] deve seguir a ordem - A primeira parte deve ser o nome dos monstros da task no singular. Por isso existem 'cyclop' (singular) e 'cyclops' (nome do monstro) - Os nomes de todos os monstros de cada task devem aparecer. Por exemplo, na task de cyclops, qualquer tipo deles servirá para completar a task. - killstotal é a quantidade de monstros que você deve matar para terminar a task. Configuração das recompensas: taskreward = -- em gps{[1] = {money = 5000,xp = 20000, points = 3}, -- nenhum item será adicionado e 3 pontos de task serão adicionados[2] = {money = 10000,xp = 50000, item = 2458}, -- 1 item(2458) será adicionado e nenhum ponto de task[3] = {money = 20000,xp = 75000,item = 2458,amount = 2, points = 5} -- aqui serão adicionados 2 itens com id 2458 (se ele for amontoável - stackable) e 5 pontos de task} - O [número] deve ter a mesma ordem dos monstros - money é a quantidade de dinheiro que cada um ganha ao terminar a task correspondente - xp é a quantidade de experiência ganha ao terminar a task correspondente - item é o ID do item que ganha ao terminar a task correspondente - points significa quantos pontos de task o personagem irá ganhar quando terminar a task correspondente Adicionando novos monstros: - Vou explicar com um exemplo de como adicionar uma task de hydra/serpent spawn No taskmonsters: (REPARE NA VÍRGULA QUANDO ADICIONEI UMA NOVA LINHA!) taskmonsters ={[1] = {'rotworm', killstotal = 100},[2] = {'cyclop','cyclops','cyclops smith','cyclops drone', killstotal = 100},[3] = {'dragon','dragon lord','frost dragon', killstotal = 100},[4] = {'hydras e serpent spawn','hydra','serpent spawn',killstotal = 200}} No taskrewards: taskreward = -- em gps{[1] = {money = 5000,xp = 20000, points = 3}, -- nenhum item será adicionado e 3 pontos de task serão adicionados[2] = {money = 10000,xp = 50000, item = 2458}, -- 1 item(2458) será adicionado e nenhum ponto de task[3] = {money = 20000,xp = 75000,item = 2458,amount = 2, points = 5}, -- aqui serão adicionados 2 itens com id 2458 (se ele for amontoável - stackable) e 5 pontos de task[4] = {money = 30000, xp = 5000, item = 2450, amount = 1, points = 3}} Agora na função doStartTask(cid) - somente se quiser que as tasks sejam feitas por level - O que aconteceu: - Antes até o lvl 20 o jogador recebia a task dos rotworms, até o lvl 50, a task dos cyclops e daí pra frente, task dos dragons. - As tasks iniciais são as mesmas, mas até o lvl 80 é a task dos dragons e daí pra frente, o jogador receberá a task das hydras e serpent spawns. Considerações finais: O sistema de pontos apenas adiciona e checa a quantidade de pontos: você deve escolher se quer adicionar alguma coisa a partir deles. Testei profundamente e corrigi todos os erros que encontrei, postem se encontrarem mais algum, enviem o log do erro que farei o possível para consertar.1 ponto
-
Uns dias atras estava correndo atras de um tutorial pra ensinar isso, depois de muito esforço, consegui achar, pois a maioria que sabia fazer isso, não compartilhava, então segue o tutorial ai.Esse tutorial é para que ninguem tenha acesso a account manager para trocar senha ou deletar Primeiramente vá na database do seu servidor vá em accounts procure pela conta name 1 e senha 1 (provavelmente será a primeira) depois disso vá em page access e modifique para 2 Após transfira os characters "samples" do account manager para outra conta deixe só o proprio Account Manager na acc. Em seguida abra a pasta do seu site depois abra a pasta config e logo depois abra o arquivo config.php Procure por // ACC MAKER OPTIONS config $config['site']['access_news'] = 2; // access level needed to edit news $config['site']['access_admin_panel'] = 3; // access level needed to open admin panel e modifique para // ACC MAKER OPTIONS config $config['site']['access_news'] = 3; // access level needed to edit news $config['site']['access_admin_panel'] = 3; // access level needed to open admin panel Feito isso volta a pasta do seu site e abra o arquivo accountmanagement.php logo depois do <?PHP adicione isso if($group_id_of_acc_logged == 2) $main_content .= '<h1>Account Manager Bloqueado.'; else Pronto após executar todos os passos seu account manager estará bloqueado para acessos no site Ele ficara impossibilitado de mudar o password do account manager pelo site . Credito: Desconhecido, pois de onde eu peguei, estava copia de outro trabalho, pois não peguei o original, por isso o motivo dos creditos desconhecidos1 ponto
-
Olááá galera do Ékz. Esses dias o XTibia tá muito parado, não tem nem pedido direito pra atender, e no último Sds teve poucos scripts. Entããão resolvi postar um sisteminha que eu fiz com base num pedido em algum lugar da internet. É o Partner System. O que ele faz: Você chama um amigo seu para jogar o server, mas para dar um ânimo nele, você convida-o para ser seu Partner, e enquanto ele for abaixo de tal level (configurável, default 50), ele terá um bônus de EXP (configurável, default 10%). Assim que chegar no level limite, o bônus acaba. Motivos para usar o sistema? Ora, como já disse anteriormente, serve para animar o jogo do player, para incentivá-lo a jogar mais. Chega de blablabla e vamos ao script: Novidades: • Agora você pode aceitar ou rejeitar convites mesmo que a pessoa que te convidou esteja offline • Quando você convida alguém e ele rejeita ou aceita o convite com você offline, ao logar você recebe uma mensagem informando a decisão da pessoa. • Todos os bugs corrigidos Configurando: waittime = 24 -- Tempo de espera em horas para convidar alguém novamente storage = 4651 level = 100 -- Level necessário para convidar alguém maxlevel = 50000 -- Level máximo para alguém virar partner e para ter bônus de EXP maxp = 5 -- Maximo de partners que alguém pode ter rate = 1.1 -- Rate do bônus Uso: Player: !partner Fulano -- Fulano foi convidado Fulano: !partner aceitar ou rejeitar -- Fulano aceita ou rejeita o convite. Observações: 1) Todos os bugs corrigidos. 2) Funciona em TFS versão 0.3.6 pra frente. Créditos: LuckOake -- Pelo sistema Vodkart -- Pela ideia e ajudas1 ponto
-
[Mapping] Mostre suas Idéias
vital900 reagiu a FalconObscurity por um tópico no fórum
Porque pararam de postar? Estavam tão top as idéias '-'1 ponto -
[Show Off] Barra Skill - baseada na pxg
supernetoo reagiu a Noninhouh por um tópico no fórum
@drakinho consegui fazer isso ae \/ @topic como é melhor, antes ou agora?1 ponto -
[GESIOR] VictorWEBMaster 2019v
Session Start reagiu a VictorWEBMaster por um tópico no fórum
Ja que voce fez o merda de seu IP no no-ip. Como voce não sabe qual endereço enviar aos seus amigos, envia o endereço do putero que voce perdeu a virgindade, se é que voce perdeu; Duvida? Utilize a ferramenta BUSCA1 ponto -
Se não for relativo ao tópico, me passa por PM que eu tento.1 ponto
-
Como mudar imagem do fundo de website?
AlekysRocha19 reagiu a luanluciano93 por uma questão
Dentro do htdocs tem a pasta 'layouts', abra, 'tibiacom', abra, 'images', abra, 'header', ai você encontrara a página de fundo, é só alterar a imagem e deixar com o mesmo nome! Abraços1 ponto -
Quest Diaria
vitorelias reagiu a Vodkart por uma questão
não tem problema em o servidor cair. porque o script sempre será executado as 00:00, como mostra no script: <globalevent name="questDay" time="00:00" event="script" value="questday.lua"/> ah não ser que o servidor caia 23:59 kkkkkk mas ai é só fazer pela função "onStartup()" tbm1 ponto -
[Pokémon] Gabrieltxu 3.2 Final version
mandeaded reagiu a Gabrieltxu por um tópico no fórum
/\ Só vc clicar em Curtir1 ponto -
Esse script é um simples sistema de alquimia, porém é diferente dos outros. Alquimia era uma prática antiga que combinava alguns elementos a fim de formar outros. Esse meu sistema, faz com que os itens sejam "misturados" em um caldeirão e se pareça mais como era antigamente. Abaixo, um vídeo de demonstração e de como instalar. Deixei as mesmas posições no script pra que vocês possam se basear ao instalar no seu. Bom, vamos ao script: -- Como funciona: O player deve colocar os itens da receita emcima do counter (balcão de pedra) e puxar a alavanca. Feito isso, os itens serão "misturados" no caldeirão e com a colher (wooden spoon) o player poderá pegar o seu item. Crie um arquivo.xml em data/mods chamado Alchemist.xml e cole isto dentro: <?xml version="1.0" encoding="UTF-8"?> <mod name="Alchemist System" version="1.0" author="Leoxtibia" contact="none" enabled="yes"> <config name="alch_sys"><![CDATA[ counter = {x = 17, y = 56, z = 7} efeitos = {x=17, y=53, z=7} receitas = { {items = {{2160,1}, {2157,2}} , itemgain = {{5878,100}}, storage = 56000}, {items = {{2148,5}, {2155,1}} , itemgain = {{2113,1}}, storage = 56001}, {items = {{2498,1}, {2113,1}} , itemgain = {{2472,1}}, storage = 56002} } function Caldeiron() local B = { {3693,{x=17, y=53, z=7, stackpos = 1}}, {3694,{x=18, y=53, z=7, stackpos = 1}} } for i = 1, #B do doTransformItem(getThingfromPos(B[i][2]).uid,getTileItemById(B[i][2], B[i][1]).uid == 0 and B[i][1] or (B[i][1]-4)) end end function getItemsInPos(items, pos) for i = 1,#items do local stack = getTileItemById(pos, items[i][1]) if stack.uid > 0 and math.max(1, stack.type) >= items[i][2] and i == #items then return true end end return false end function doRemoveItensInPos(items, pos) local items = type(items) == "table" and items or {items} for i = 1, table.maxn(items) do doRemoveItem(getThingFromPos({x=pos.x,y=pos.y,z=pos.z,stackpos=2}).uid) end return nil end function effets(position,delay) local text = {"Ishhh!", "Kaboom", "Tic Tac", "BUM!", "Blop Blop!", "Cronch!"} local effects = {2, 6, 25, 31, 36,40, 54, 51, 65, 66, 67, 68} if delay ~= 0 then doSendAnimatedText(position, text[math.random(1, #text)], math.random(1, 255)) doSendMagicEffect(position, effects[math.random(1, #effects)]) addEvent(effets, 1000, position, delay -1) end end]]></config> <action actionid="4780" event="script"><![CDATA[ domodlib('alch_sys') function onUse(cid, item, fromPosition, itemEx, toPosition) doTransformItem(item.uid, item.itemid == 1945 and 1946 or 1945) for _, t in ipairs(receitas) do if getItemsInPos(t.items, counter) then doRemoveItensInPos(t.items, counter) effets(efeitos,6) Caldeiron() return setPlayerStorageValue(cid, t.storage, 1) end end return doPlayerSendCancel(cid, "You must put the correct items in the counter.") end]]></action> <action itemid="2567" event="script"><![CDATA[ domodlib('alch_sys') function onUse(cid, item, fromPosition, itemEx, toPosition) if itemEx.actionid == 4781 then for _, x in ipairs(receitas) do if getPlayerStorageValue(cid, x.storage) >= 0 then for i=1,#x.itemgain do doPlayerAddItem(cid, x.itemgain[i][1], x.itemgain[i][2]) doPlayerPopupFYI(cid, "You have prepared ".. x.itemgain[i][2] .." ".. getItemNameById(x.itemgain[i][1]) ..".") end Caldeiron() setPlayerStorageValue(cid, x.storage, -1) end end end return true end]]></action> </mod> Configuração: Para adicionar mais receitas, é só adicionar mais uma linha, mudando o storage para +1. Lembrando que a última linha não tem vírgula no final. {items = {{2666,1}, {2671,1}} , itemgain = {{2672,1}}, storage = 56003} Ainda pretendo incrementar o sistema com novas funções. Mas, por hoje é isso. Espero que tenham gostado.1 ponto
-
[Encerrado] Poketibia, Pokemons Uparem Mais Rapido!
joseanpereira reagiu a BrunooMaciell por um tópico no fórum
Vc tem que editar aqui ... data/lib - configuration abra a script configuration procura esta linha \/ pokemonExpPerLevelRate = 6 baseExpRate = 0.5 1 - na primeira linha vc coloca quanto vc quer 2 - na segunda linha melhor vc deixa como base 0.5 Se ajudei Rep+ ^^1 ponto -
Aew, Criei meu sistema de prisão, ja que eu não vi nenhum parecido em lugar nenhum. Meu sistema tem umas coisas inovadoras: 1 - A rune que teleporta o prisioneiro para a prisão tem escolha de 3 penas facilmente configuraveis no script. 2 - Passado o tempo de prisão que o player recebeu de pena, ele poderá sair dando use na porta da prisão, caso não tenha passado o tempo, quando ele der use na door, irá aparecer quanto tempo falta para ele sair. Assim sua prisão ficará facil de gerenciar! Como escolher um dos 3 tempos de pena com a rune? Isso é muito facil, é só o "policia" dar use na rune e em cima de si próprio e vai mudar, ai é só ele repetir isso até chegar na pena desejada. agora o script: 1º na pasta data/actions/scripts crie um documento cujo nome cadeia.lua e dentro dele cole o seguinte: --------Prison System by Colex----------- function onUse(cid, item, frompos, item2, topos) preso = os.time() - getPlayerStorageValue(cid,1444) judge = getPlayerStorageValue(cid,1445) tqf = judge - preso if getPlayerStorageValue(cid,1444) == -1 then doPlayerSendTextMessage(cid,22,"You are not arrested.") else if preso >= judge then doPlayerSendTextMessage(cid,22,"You are not a prisioner anymore. Go to your home!") doTeleportThing(cid,getPlayerMasterPos(cid)) setPlayerStorageValue(cid,1444,-1) else doPlayerSendTextMessage(cid,22,"Wait "..tqf.." seconds to get out from here.") end end return 1 end 2º Agora na mesma pasta crie um documento com o nome cadeia_rune.lua e adicione o seguinte dentro dele: ---------Prison System by Colex---------- function onUse(cid, item, frompos, item2, topos) cadeia = {x=485, y=473, z=7} ---coordenadas da cadeia now = os.time() -----tempos de prisão em segundos------- time1 = 10 time2 = 30 time3 = 60 --------------------------------------- time = getPlayerStorageValue(cid,1533) choose = getPlayerStorageValue(cid,1532) access = 3 ---acesso para usar a rune access2 = 3 --- a partir deste acesso nao é preso if getPlayerAccess(cid) >= access then if item2.itemid == cid then if getPlayerName(item2.uid) == getPlayerName(cid) then if choose == -1 then doPlayerSendTextMessage(cid,22,""..time1.." seconds of prison system.") setPlayerStorageValue(cid,1532,0) setPlayerStorageValue(cid,1533,time1) elseif choose == 0 then doPlayerSendTextMessage(cid,22,""..time2.." seconds of prison system.") setPlayerStorageValue(cid,1532,1) setPlayerStorageValue(cid,1533,time2) elseif choose == 1 then doPlayerSendTextMessage(cid,22,""..time3.." seconds of prison system.") setPlayerStorageValue(cid,1532,-1) setPlayerStorageValue(cid,1533,time3) end else if getPlayerAccess(item2.uid) < access2 then if getPlayerStorageValue(item2.uid,1444) == -1 then doPlayerSendTextMessage(item2.uid,22,"You are arrested for "..time.." seconds! Any word that you say now can be used against you later.") doTeleportThing(item2.uid,cadeia) setPlayerStorageValue(item2.uid,1445,time) setPlayerStorageValue(item2.uid,1444,now) else doPlayerSendTextMessage(cid,22,""..getPlayerName(item2.uid).." is already arrested.") end else doPlayerSendCancel(cid,"You cannot make this player a prisioner.") end end else doPlayerSendCancel(cid,"You can only use this rune on a person.") end else doPlayerSendCancel(cid,"You do not have the needed access to use this rune.") end return 1 end 3º Agora para terminar, na pasta data/actions abra o documento actions.xml e adicione as seguintes tags: -------prison system------ <action actionid="1169" script="cadeia.lua" /> <action itemid="2312" script="cadeia_rune.lua" allowfaruse="1" blockwalls="0" /> -------------------------- NOTA 1 - a porta da prisão usa actionid 1169 NOTA 2 - a rune usada ali é 2312, caso queira usar outra é só trocar ali no actions.xml Espero que gostem e aproveitem bem cya~~ :hi:1 ponto