Ir para conteúdo

Líderes

Conteúdo Popular

Exibindo conteúdo com a maior reputação em 09/04/13 em %

  1. Objetivo do Moderador (de cada área) (Sendo sempre bem experiente e maturo em sua determinada área) - Tirar duvidas - Organizar sua área - Contato direto com o Administrador - Idealizar novidades - Responsável pelo concurso oficial Os moderadores vão ter as mesmas vantagens de agora. + Vou liberar as medalhas dos concursos pras eles. Objetivo do Colaborador (de cada área)Um colaborador traz conteúdo para o XTibia, sendo você o autor ou não. Claro que se não for tem que ter os devidos créditos ou será RIP. (Queremos aqueles que estão realmente disposto a contribuir!) - Ter experiência e saber o que esta fazendo. - Trazer conteúdo (Tutoriais/Utilitários/Novidades e etc...) - Ajudar na organização de sua área. (Movendo e fechando tópicos indevidos) - Contato direto com o Administrador O Colaborador, não tem a obrigação de responder Denuncias/Reports, a responsabilidade fica pro moderador da área. Vantagens: Ganha uma PIP exclusiva de Colaborador. Postar tutorial da sua área sem precisar passar pela aprovação. Direito de 4 likes diários. Medalha de Membro da Equipe. Objetivo da Imprensa - Trazer notícias para o XTibia.com (Tibia e OTServ) - Criação de Artigos e Matérias(Polêmicos ou não polêmicos...Fatos ou mitos...) - Realizar Entrevistas e Reportagens - Auxiliar na organização do setor de notícias - Contato direto com o Administrador Vantagens: Ganha uma PIP exclusiva de Imprensa. Postar tutorial da sua área sem precisar passar pela aprovação. Direito de 3 likes diários. Medalha de Membro da Equipe Objetivo do Estagiário (de cada área)O estagiário, é o cara que está sendo observado para entrar na colaboração, ou dependendo da função que vai exercer, moderação sendo assim. - Auxiliar na Organização do Fórum (Reports/relatar floods/qualquer coisa fora do normal) - Manter contato direto com Moderação/Colaboradores (de sua devida área) Vantagens: Ganha uma PIP exclusiva de Estagiário. Postar tutorial da sua área sem precisar passar pela aprovação. Direito de 3 likes diários. Medalha de Membro da Equipe. Espero que tenham gostado, logo estarei efetuando as mudanças necessárias! E vocês? Acham que se encaixariam em algum cargo?
    3 pontos
  2. Tonynh

    Wallpapers XTIBIA 2013/2014

    Como é de costume, sempre posto algum wallpaper do xtibia para quem curte algo personalizado. Fiz em 3 diferentes tamanhos, e pelo tempo, não o considero completo, mas o considero usável. Estarei disponibilizando para vocês, e qualquer modificação será postada aqui nesse mesmo tópico. Para baixar, selecione a resolução desejada: 1920x1080-1366x768-1024x768 Wallpaper 2 1920x1080
    2 pontos
  3. Insight

    Gift pro Mophus

    Eu estava aqui no skype com o DJ Sky e o Mophus, e o Mophus pediu para criar um avatar, e saiu isso:
    2 pontos
  4. Fir3element

    Tibia UnBinder v0.3

    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.rar
    1 ponto
  5. JulioLancetti

    Sistema De Resets Sem Bug com tempo.

    Sistema de Reset por Talkactions com Exhausted para não ser bugado. Vá em talkaction.xml e adicione : <talkaction words="!resetar;/installreset" event="script" value="resetar.lua"/> Agora va em talkaction/scripts e crie um arquivo lua chamado resetar.lua e cole dentro do arquivo : -------------------------------------------------------------------------- Copie acima --------------------------------------------------------------------------- Dentro da pasta data/lib terá um arquivo chamado "- 034-exhaustion.lua" : Adicione dentro do arquivo, Sistema está funcionando normalmente após a instalação.
    1 ponto
  6. Outland completa para POKÉMON. Atualizado 26/11/2013 DOWNLOAD: http://www.4shared.com/rar/VaQnQ718/Outlands_26112013.html? O 4shared já faz o scan. Outlands Leaf Ghost Psychic Fire (East) Bug Rock Fire (South) Normal Fly Ice Electric Earth Fight Dragon SE GOSTOU, DÁ UM CURTIR E DEIXE SEU COMENTÁRIO Créditos: murluka
    1 ponto
  7. 1 ponto
  8. Roksas

    [Evento] Siege of Danger 1.0

    Siege of Danger 1.0 [sOD] Opa opa galerinha zuera, estive dois dias fazendo um evento super legal para vocês, o SIEGE OF DANGER. Nesse evento, dois times são divididos e partem para a guerra sem dó nem piedade, o time que sobreviver ganhará um prêmio muito legal. Como instalar? ScreenShoots: Scan [sOD] 1.0 Download [sOD] 1.0 Trabalhei bastante nisso galera, espero que tenham gostado, obrigado por vizualizar s2 OBS: Obrigado Celino (ScythePanthom) pelo mapa e pela logo!
    1 ponto
  9. "Queremos seu dinheiro ;)" Estou disponibilizando este layout, podemos dizer "copiado" da PokeXGames. Logo vou dizendo que não haverá edição para diferenciar o mesmo do atual. O site da mesma não é muito bom elaborado, mais trago porque não encontrei nenhum, é talvez alguém quer usar. [DOWNLOAD] PokeXCasH [NOVA] VERSÃO 2.0 Print 1 | Live Demo | Download: Mega | Vírus Total VERSÃO 1.1 Print 1 | Print 2 | Download: Mega | Virus Total [TUTORIAIS] - Editar o Logo: Para editar o logo você deve ter o Adobe Photoshop em sua maquina. O PSD esta localizado em arquivos, apenas abra ele com o Photoshop. Lembrando que para editar o logo é necessário ter a fonte instalada que vem junto no diretório. Logo aberto a imagem clique sobre "Ferramenta de Texto" e clique sobre o nome PokeXCash, edite "PokeXCash" pelo nome do seu servidor e de CTRL + S e salve no diretório do layout do pokexcash/img com o nome de logo.png O formato salvo deve ser em .png [ATENÇÃO] Esta é uma versão simples do layout! Não espere futuras atualizações do mesmo, isto farei quando tiver tempo. O layout não tem alguns links, cabe a você aprender a edita-la! Se tiver dúvidas pode comentar no tópico. Você tem um Feedback para o layout? Só comentar no tópico. [CRÉDITOS] PokeXGames pela criação do layout/imagens. LekoDS pela edição da conversão do CSS/HTML para Modern Lembrando que: Se você for postar em outra comunidade lembre-se de postar os devidos créditos do criador, os meus é colocar o link do meu perfil do XTibia!
    1 ponto
  10. SmiX

    DarkXPoke (DXP)

    E ai galera, venho lhes informar que agora estou focado no otCliente do servidor. Atualização 1.0 do otCliente: - Skin System Imagens:
    1 ponto
  11. Mykez

    DarkXPoke (DXP)

    Olá galera ! hoje vim postar a pedido do Smix, Algumas imagens do mapa de como esta ficando,irei postar pouco pois não a Muita coisa,más oque já esta feito esta perfeito não uma arvore diferente da PxG,Esta e a Cidade De Viridian - Que esta completa 100 %- Tirando as Hunts de fora que ate amanhã eu acho que já posto mais sobre as hunts ao redores etc. PRINTS.
    1 ponto
  12. JohnBonner

    Show Off JohnBonner

    bom demoro mais ta ai depois de mt e eis que vem a HSUAUHSAHUSUHAUHSA oque acharam ? Por favor avaliem, se gostaram podem dar um rep+ ai rsrsrsrsrsrs
    1 ponto
  13. Omega

    remover loot

    Cara, se você usa windows faz assim: pega o id do item que você quer tirar do drop dos bichos e bota o windows pra procurar por esse número na pasta dos monstros. Quando eu quero ver se algum bicho dropa tal e item e tirar, eu faço assim.
    1 ponto
  14. Jackgoku

    remover loot

    Olha, é bem difícil outros bichos dropar alem do que é certo. Muitos faltam, mas não tem alem do certo.
    1 ponto
  15. roocapaneli

    Show off Roo

    Roo Mapping Bom dia galerinha do mal! Como estou de ferias esses dias e não to afim de mass kick baixei o Remere's Map Editor pra testar, e na verdade é um maneira bem amena de passar as madrugadas, espero que valorem as horas dedicadas e talvez algum dia faça um server com este mapa, muito chão pela frente... Descrição Como imagino que acontece com muitos mappers; a ideia do mapa foi evoluindo conforme as horas passavam e tambem de muitas ideias que tem rodando pelo forum de xtibia.com, ainda falta muito por evoluir (com isso tambem digo que irei postando novas mudanças no mapa) é um mapa com uma ideia um pouco diferente; não quero dizer muito, porem se der certo poderemos ter um servidor com um bom pvp-pve. vou explicar um paso a paso do mapa; Primeiro construí a parte sul do mapa, com sua Cidade, esgoto, e caves e depois disso temos uma area para upar até aproximadamente 70~90 que é quando passamos a parte do pvp onde estão as melhores hunts, essa parte será a parte central do mapa e onde esperamos ver grandes batalhas, e logo ao norte depois de outra muralha algo semelhante a parte sul. tendo assim algo semelhante a uma disputa entre dois reinos. obrigado se leu até aqui ;D Imagens Pra acabar ... Espero que se alguem tiver tempo e possa me ensinar ou passar um tutorial pra como por um mapa 8.6 online postem aqui embaixo obrigado
    1 ponto
  16. Veja esse video no youtube quando eu começei me ajudou muito
    1 ponto
  17. Caro amigo </wand> <wand id="2189" level="26" mana="8" min="40" max="30" type="energy" event="function" value="default"> <!-- Wand of Cosmic Energy --> <vocation id="1"/> temos isto aqui em Weapons XMl então vou lhe explicar! <wand id="Id Da sua Wand", level ="level minimo para ultiliza-la", Mana="Mana gasta por cada Hit", Min="dano minimo da wand", Max="dano maximo da Wand", Type="typo de dano", vc pode mudar por Holy e etc, <!-- Nome da sua Wand --!> <vocation id=" id do personagem que poderá uza-la" se ajudei REP+
    1 ponto
  18. Smox

    [Ajuda] VIP

    Ikaro, peço que remova o Link, pois está divulgando outro Forum. caso contrario irei reporta para a Moderação. Reportado - Dúvida Sanada e Para a Moderação Edita o Post do Muleque.
    1 ponto
  19. Smox

    [Encerrado] Adicionar novas Pokebols

    Mais respeito com os Membros do Forum. Ele até fez certo em lhe avisar que você estava citando o nome do Forum.. pois não é Permitido divulgar. eu sei que vc nao ta divulgando, mas só em citar o nome, já é uma divulgação. @Topic: se nao me engano já foi postado esse System. Usando a barra de Busca você procura Icon System e achará Topicos relacionados a Tal.
    1 ponto
  20. vlw Julio rep+ pra tu
    1 ponto
  21. Omega

    Spell que da 5 hits

    Tá aí: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HOLYDAMAGE) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SMALLHOLY) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -10, -1, -20, 5, 5, 1.4, 2.1) function onCastSpell(cid, var) local time = 100 for i=1,5 do addEvent(doCombat,time,cid, combat, var) time = time + 100 end end
    1 ponto
  22. 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ços
    1 ponto
  23. masdead

    ajuda com escadas no respaw

    Salvei como 9.83 porque é o unica versão que eu tenho aqui. http://www.mediafire.com/download/9k0zhznuqzaaimi/copia2.otbm O erro era exatamente o que eu disse, tinha pedra de montanha "debaixo" da escada, preste atenção nisso quando for fazer seus mapas. (essa foi a única vez que eu fiz isso não adianta pedir pra fazer outra vez)
    1 ponto
  24. vital900

    [Encerrado] Nto Map

    Local errado/movido. Não sei muito sobre derivados.. Mas tente fazer como é ensinado neste tutorial.
    1 ponto
  25. Ola Bom dia, Eu posso lhe ajudar. Bom abra o primeiro mapa normalmente, apos isso voce clique em File/New. Apos isso ira abrir um novo mapa com tudo preto. Va ate File/Import/Import Map e escolha seu mapa. Pronto os 2 mapas estarao abertos. Atenciosamente Equipe ChineloOt.
    1 ponto
  26. Lordfireot

    Show Off JohnBonner

    AAAA amigo pode ter certeza com o vitall você vai vira um maper profissional professor bom esse vital parabéns aos 2
    1 ponto
  27. Omega

    Anel Ressucitador

    Ah, sim, foi mal. Tinha entendido errado mesmo. Agora vai checar: se o cara tiver o anel e o anel estiver carregado, vai ignorar a parte do script que desenergiza o AOL.
    1 ponto
  28. Não, eles não tem acesso ao seu PC. Fique tranquilo
    1 ponto
  29. A primeira talk: TAG talkactions.xml <talkaction words="/addprem" access="5" event="script" value="addprem.lua"/> Arquivo addprem.lua function onSay(cid, words, param) local param = string.explode(param,',') if param[1] == "free" then local days = tonumber(param[2]) ~= nil and tonumber(param[2]) or 5 if db.executeQuery("UPDATE `accounts` SET `premdays`="..days.." WHERE `premdays` = 0;") then doPlayerSendTextMessage(cid,27,"Foram adicionados "..days.." dias de Premium para todas as contas Free.") return true else doPlayerSendTextMessage(cid,27,"Ocorreu um erro.") return true end end doPlayerSendTextMessage(cid,27,"Sintaxe do comando: /addprem free,days") return true end Essa talk se usa assim: /addprem free,dias (de premium account). Se você não puser um número depois de free, o padrão é 5 (como você pediu). Cara, quando for pedir coisa pra VIP, diz qual sistema você usa, pois existem vários. Se der erro com essa mensagem: executeQuery (nil value), muda o executeQuery pra query.
    1 ponto
  30. Heeyisis

    outfits

    Abra seu config.lua e localize essa linha apague e coloque isso no luga
    1 ponto
  31. LucaSAyreeS

    War of Shinobis

    WooooooooW Parece esta ficando muito bom, as sprites realmente ficaram ótimas tanto das outfits como das magias. BOA SORTE COM SEU OTSERVER.
    1 ponto
  32. Session Start

    Rainbow shield vip

    beleza, quando testar, posta o resultado, se funcionou ou não.
    1 ponto
  33. garep

    Emblemas na Skill Bar

    ->Emblemas na Skill Bar Pxg <- Pra quem esta fazendo um otserv de poketibia ta um script. >Tudo isso no Client< 1 - paga tudo que esta em Skills.OTUI e add esse SkillFirstWidget < UIWidget SkillButton < UIButton height: 21 margin-bottom: 2 &onClick: onSkillButtonClick SkillNameLabel < GameLabel font: verdana-11px-monochrome anchors.left: parent.left anchors.top: parent.top anchors.bottom: parent.bottom SkillValueLabel < GameLabel id: value font: verdana-11px-monochrome text-align: topright anchors.right: parent.right anchors.top: parent.top anchors.bottom: parent.bottom anchors.left: prev.left SkillPercentPanel < ProgressBar id: percent background-color: green height: 5 image-source: /modules/game_skills/img/skillprogress image-border-left: 2 image-border-right: 3 margin-top: 15 anchors.left: parent.left anchors.right: parent.right anchors.top: parent.top phantom: false MiniWindow id: skillWindow !text: tr('Skills') height: 150 icon: /modules/game_skills/img/perfil_icon @onClose: modules.game_skills.onMiniWindowClose() &save: true MiniWindowContents padding-left: 5 padding-right: 5 layout: verticalBox SkillButton margin-top: 5 id: experience height: 13 SkillValueLabel width: 130 text-align: top anchors.horizontalCenter: parent.horizontalCenter margin-left: 15 UIButton id: clanicon width: 37 height: 36 image-source: /modules/game_skills/img/skillicon anchors.top: parent.top anchors.left: parent.left SkillButton margin-top: 5 id: experiencee height: 13 SkillValueLabel width: 130 font: sans-bold-16px text-align: top anchors.horizontalCenter: parent.horizontalCenter margin-top: -6 margin-left: 15 SkillButton id: level SkillNameLabel !text: tr('Experience') SkillValueLabel SkillPercentPanel background-color: red SkillButton id: skillId6 SkillNameLabel !text: tr('Fishing') SkillValueLabel SkillPercentPanel SkillButton id: skillId3 SkillNameLabel !text: tr('Headbutt') SkillValueLabel SkillPercentPanel SkillButton id: health height: 15 SkillNameLabel !text: tr('Hit Points') SkillValueLabel visible: false SkillButton id: mana height: 15 SkillNameLabel !text: tr('Mana') SkillValueLabel visible: false SkillButton id: capacity height: 15 SkillNameLabel !text: tr('Capacity') SkillValueLabel visible: false SkillButton id: regenerationTime SkillNameLabel !text: tr('Regeneration Time') SkillValueLabel visible: false SkillButton id: offlineTraining SkillNameLabel !text: tr('Offline Training') SkillValueLabel SkillPercentPanel visible: false SkillButton id: magiclevel SkillNameLabel !text: tr('Magic Level') SkillValueLabel SkillPercentPanel background-color: red visible: false SkillButton id: stamina height: 15 SkillNameLabel !text: tr('Stamina') SkillValueLabel margin-top: 8 HorizontalSeparator height: 7 anchors.top: parent.top anchors.left: parent.left anchors.right: parent.right margin-top: -6 SkillButton id: soul height: 15 SkillNameLabel !text: tr('All Catches') SkillValueLabel SkillButton id: speed height: 15 SkillNameLabel !text: tr('Speed') SkillValueLabel SkillButton id: skillId1 margin-top: 8 height: 15 SkillNameLabel !text: tr('Duels Won') SkillValueLabel HorizontalSeparator height: 7 anchors.top: parent.top anchors.left: parent.left anchors.right: parent.right margin-top: -6 SkillButton id: skillId0 height: 15 SkillNameLabel !text: tr('Duels Lost') SkillValueLabel SkillButton id: skillId2 SkillNameLabel !text: tr('Sword Fighting') SkillValueLabel SkillPercentPanel visible: false SkillButton id: skillId4 SkillNameLabel !text: tr('Distance Fighting') SkillValueLabel SkillPercentPanel visible: false SkillButton id: skillId5 SkillNameLabel !text: tr('Shielding') SkillValueLabel SkillPercentPanel visible: false 2 - agora vai em skills.lua paga tudo e add esse ai skillsWindow = nil skillsButton = nil local imgs = { [-1] = "/modules/game_skills/img/trainer", -- -1 quer dizer esta sem clan... [1] = "/modules/game_skills/img/volcanic", [2] = "/modules/game_skills/img/seavell", [3] = "/modules/game_skills/img/orebound", [4] = "/modules/game_skills/img/wingeon", [5] = "/modules/game_skills/img/malefic", [6] = "/modules/game_skills/img/gardestrike", [7] = "/modules/game_skills/img/psycraft ", [8] = "/modules/game_skills/img/naturia", [9] = "/modules/game_skills/img/raibolt", } function init() connect(LocalPlayer, { onExperienceChange = onExperienceChange, onLevelChange = onLevelChange, onHealthChange = onHealthChange, onManaChange = onManaChange, onSoulChange = onSoulChange, onFreeCapacityChange = onFreeCapacityChange, onTotalCapacityChange = onTotalCapacityChange, onStaminaChange = onStaminaChange, onOfflineTrainingChange = onOfflineTrainingChange, onRegenerationChange = onRegenerationChange, onSpeedChange = onSpeedChange, onBaseSpeedChange = onBaseSpeedChange, onMagicLevelChange = onMagicLevelChange, onBaseMagicLevelChange = onBaseMagicLevelChange, onSkillChange = onSkillChange, onBaseSkillChange = onBaseSkillChange }) connect(g_game, { onGameStart = refresh, onGameEnd = offline }) connect(g_game, 'onTextMessage', getParams) connect(g_game, {onGameStart = changeImg}) skillsButton = modules.client_topmenu.addCustomRightButton('skillsButton', tr('skills') .. ' (Ctrl+S)', '/modules/game_skills/img/perfil_icon', toggle, true) skillsButton:setOn(true) skillsWindow = g_ui.loadUI('skills', modules.game_interface.getRightPanel()) -- skills g_keyboard.bindKeyDown('Ctrl+S', toggle) refresh() skillsWindow:setup() end function terminate() disconnect(LocalPlayer, { onExperienceChange = onExperienceChange, onLevelChange = onLevelChange, onHealthChange = onHealthChange, onManaChange = onManaChange, onSoulChange = onSoulChange, onFreeCapacityChange = onFreeCapacityChange, onTotalCapacityChange = onTotalCapacityChange, onStaminaChange = onStaminaChange, onOfflineTrainingChange = onOfflineTrainingChange, onRegenerationChange = onRegenerationChange, onSpeedChange = onSpeedChange, onBaseSpeedChange = onBaseSpeedChange, onMagicLevelChange = onMagicLevelChange, onBaseMagicLevelChange = onBaseMagicLevelChange, onSkillChange = onSkillChange, onBaseSkillChange = onBaseSkillChange }) disconnect(g_game, { onGameStart = refresh, onGameEnd = offline }) disconnect(g_game, 'onTextMessage', getParams) disconnect(g_game, {onGameStart = changeImg}) g_keyboard.unbindKeyDown('Ctrl+S') skillsWindow:destroy() skillsButton:destroy() end function changeImg() local player = g_game.getLocalPlayer() if not player then return end g_game.talk("#getSto# 86228") end function getParams(mode, text) if not g_game.isOnline() then return end if mode == MessageModes.Failure then if text:find("#getSto#") then local icon = skillsWindow:recursiveGetChildById("clanicon") if icon then local t = string.explode(text, " ") icon:setImageSource(imgs[tonumber(t[2])]) end end end end function expForLevel(level) return math.floor((50*level*level*level)/3 - 100*level*level + (850*level)/3 - 200) end function expToAdvance(currentLevel, currentExp) return expForLevel(currentLevel+1) - currentExp end function resetSkillColor(id) local skill = skillsWindow:recursiveGetChildById(id) local widget = skill:getChildById('value') widget:setColor('#bbbbbb') end function setSkillBase(id, value, baseValue) if baseValue <= 0 or value < 0 then return end local skill = skillsWindow:recursiveGetChildById(id) local widget = skill:getChildById('value') if value > baseValue then widget:setColor('#008b00') -- green skill:setTooltip(baseValue .. ' +' .. (value - baseValue)) elseif value < baseValue then widget:setColor('#b22222') -- red skill:setTooltip(baseValue .. ' ' .. (value - baseValue)) else widget:setColor('#bbbbbb') -- default skill:removeTooltip() end end function setSkillValue(id, value) local skill = skillsWindow:recursiveGetChildById(id) local widget = skill:getChildById('value') widget:setText(value) end function setSkillColor(id, value) local skill = skillsWindow:recursiveGetChildById(id) local widget = skill:getChildById('value') widget:setColor(value) end function setSkillTooltip(id, value) local skill = skillsWindow:recursiveGetChildById(id) local widget = skill:getChildById('value') widget:setTooltip(value) end function setSkillPercent(id, percent, tooltip) local skill = skillsWindow:recursiveGetChildById(id) local widget = skill:getChildById('percent') widget:setPercent(math.floor(percent)) if tooltip then widget:setTooltip(tooltip) end end function checkAlert(id, value, maxValue, threshold, greaterThan) if greaterThan == nil then greaterThan = false end local alert = false -- maxValue can be set to false to check value and threshold -- used for regeneration checking if type(maxValue) == 'boolean' then if maxValue then return end if greaterThan then if value > threshold then alert = true end else if value < threshold then alert = true end end elseif type(maxValue) == 'number' then if maxValue < 0 then return end local percent = math.floor((value / maxValue) * 100) if greaterThan then if percent > threshold then alert = true end else if percent < threshold then alert = true end end end if alert then setSkillColor(id, '#b22222') -- red else resetSkillColor(id) end end function update() local offlineTraining = skillsWindow:recursiveGetChildById('offlineTraining') if not g_game.getFeature(GameOfflineTrainingTime) then offlineTraining:hide() else offlineTraining:show() end local regenerationTime = skillsWindow:recursiveGetChildById('regenerationTime') if not g_game.getFeature(GamePlayerRegenerationTime) then regenerationTime:hide() else regenerationTime:show() end end function refresh() local player = g_game.getLocalPlayer() if not player then return end if expSpeedEvent then expSpeedEvent:cancel() end expSpeedEvent = cycleEvent(checkExpSpeed, 30*1000) onExperienceChange(player, player:getExperience()) onLevelChange(player, player:getLevel(), player:getLevelPercent()) onHealthChange(player, player:getHealth(), player:getMaxHealth()) onManaChange(player, player:getMana(), player:getMaxMana()) onSoulChange(player, player:getSoul()) onFreeCapacityChange(player, player:getFreeCapacity()) onStaminaChange(player, player:getStamina()) onMagicLevelChange(player, player:getMagicLevel(), player:getMagicLevelPercent()) onOfflineTrainingChange(player, player:getOfflineTrainingTime()) onRegenerationChange(player, player:getRegenerationTime()) onSpeedChange(player, player:getSpeed()) for i=0,6 do onSkillChange(player, i, player:getSkillLevel(i), player:getSkillLevelPercent(i)) onBaseSkillChange(player, i, player:getSkillBaseLevel(i)) end update() local contentsPanel = skillsWindow:getChildById('contentsPanel') skillsWindow:setContentMinimumHeight(110) skillsWindow:setContentMaximumHeight(210) end function offline() if expSpeedEvent then expSpeedEvent:cancel() expSpeedEvent = nil end end function toggle() if skillsButton:isOn() then skillsWindow:close() skillsButton:setOn(false) else skillsWindow:open() skillsButton:setOn(true) skillsButton:setOpacity(1.0) end end function checkExpSpeed() local player = g_game.getLocalPlayer() if not player then return end local currentExp = player:getExperience() local currentTime = g_clock.seconds() if player.lastExps ~= nil then player.expSpeed = (currentExp - player.lastExps[1][1])/(currentTime - player.lastExps[1][2]) onLevelChange(player, player:getLevel(), player:getLevelPercent()) else player.lastExps = {} end table.insert(player.lastExps, {currentExp, currentTime}) if #player.lastExps > 30 then table.remove(player.lastExps, 1) end end function onMiniWindowClose() skillsButton:setOn(false) skillsButton:setOpacity(0.5) end function onSkillButtonClick(button) local percentBar = button:getChildById('percent') if percentBar then percentBar:setVisible(not percentBar:isVisible()) if percentBar:isVisible() then button:setHeight(21) else button:setHeight(21 - 6) end end end function onExperienceChange(localPlayer, value) setSkillValue('level', value) end function onLevelChange(localPlayer, value, percent) setSkillValue('experience', localPlayer:getName()) setSkillValue('experiencee', value) local text = tr('You have %s percent to go', 100 - percent) .. '\n' .. tr('%s of experience left', expToAdvance(localPlayer:getLevel(), localPlayer:getExperience())) if localPlayer.expSpeed ~= nil then local expPerHour = math.floor(localPlayer.expSpeed * 3600) if expPerHour > 0 then local nextLevelExp = expForLevel(localPlayer:getLevel()+1) local hoursLeft = (nextLevelExp - localPlayer:getExperience()) / expPerHour local minutesLeft = math.floor((hoursLeft - math.floor(hoursLeft))*60) hoursLeft = math.floor(hoursLeft) text = text .. '\n' .. tr('%d of experience per hour', expPerHour) text = text .. '\n' .. tr('Next level in %d hours and %d minutes', hoursLeft, minutesLeft) end end setSkillPercent('level', percent, text) end function onHealthChange(localPlayer, health, maxHealth) setSkillValue('health', health) checkAlert('health', health, maxHealth, 30) end function onManaChange(localPlayer, mana, maxMana) setSkillValue('mana', mana) checkAlert('mana', mana, maxMana, 30) end function onSoulChange(localPlayer, soul) setSkillValue('soul', soul) end function onFreeCapacityChange(localPlayer, freeCapacity) setSkillValue('capacity', freeCapacity) checkAlert('capacity', freeCapacity, localPlayer:getTotalCapacity(), 20) end function onTotalCapacityChange(localPlayer, totalCapacity) checkAlert('capacity', localPlayer:getFreeCapacity(), totalCapacity, 20) end function onStaminaChange(localPlayer, stamina) local hours = math.floor(stamina / 60) local minutes = stamina % 60 if minutes < 10 then minutes = '0' .. minutes end setSkillValue('stamina', hours .. ":" .. minutes) end function onOfflineTrainingChange(localPlayer, offlineTrainingTime) if not g_game.getFeature(GameOfflineTrainingTime) then return end local hours = math.floor(offlineTrainingTime / 60) local minutes = offlineTrainingTime % 60 if minutes < 10 then minutes = '0' .. minutes end local percent = 100 * offlineTrainingTime / (12 * 60) -- max is 12 hours setSkillValue('offlineTraining', hours .. ":" .. minutes) setSkillPercent('offlineTraining', percent, tr('You have %s percent', percent)) end function onRegenerationChange(localPlayer, regenerationTime) if not g_game.getFeature(GamePlayerRegenerationTime) or regenerationTime < 0 then return end local minutes = math.floor(regenerationTime / 60) local seconds = regenerationTime % 60 if seconds < 10 then seconds = '0' .. seconds end setSkillValue('regenerationTime', minutes .. ":" .. seconds) checkAlert('regenerationTime', regenerationTime, false, 300) end function onSpeedChange(localPlayer, speed) setSkillValue('speed', speed) onBaseSpeedChange(localPlayer, localPlayer:getBaseSpeed()) end function onBaseSpeedChange(localPlayer, baseSpeed) setSkillBase('speed', localPlayer:getSpeed(), baseSpeed) end function onMagicLevelChange(localPlayer, magiclevel, percent) setSkillValue('magiclevel', magiclevel) setSkillPercent('magiclevel', percent, tr('You have %s percent to go', 100 - percent)) onBaseMagicLevelChange(localPlayer, localPlayer:getBaseMagicLevel()) end function onBaseMagicLevelChange(localPlayer, baseMagicLevel) setSkillBase('magiclevel', localPlayer:getMagicLevel(), baseMagicLevel) end function onSkillChange(localPlayer, id, level, percent) setSkillValue('skillId' .. id, level) setSkillPercent('skillId2', percent, tr('You have %s percent to go', 100 - percent)) setSkillPercent('skillId3', percent, tr('You have %s percent to go', 100 - percent)) setSkillPercent('skillId4', percent, tr('You have %s percent to go', 100 - percent)) setSkillPercent('skillId5', percent, tr('You have %s percent to go', 100 - percent)) setSkillPercent('skillId6', percent, tr('You have %s percent to go', 100 - percent)) onBaseSkillChange(localPlayer, id, localPlayer:getSkillBaseLevel(id)) end function onBaseSkillChange(localPlayer, id, baseLevel) setSkillBase('skillId'..id, localPlayer:getSkillLevel(id), baseLevel) end --------------------------------------------------------------Client----------------------------------------------- --------------------------------------------------------------Serve-------------------------------------------- 1- data>talkactions> e crie um arquivo chamado. talkClan.lua e add isso nele. function onSay(cid, words, param) if not tonumber(param) then return true end doPlayerSendCancel(cid, "#getSto# ".. getPlayerStorageValue(cid, tonumber(param))) return true end 2- agora vai em talkactions.xml e add essa tag. <talkaction words="#getSto#" event="script" value="talkClan.lua"/> pronto agora é so testa, somente para PDA, pois so testei la... agora vamos la esse script peguei do client do "pokemon world" e a talk quem fez foi eu. Gosto da +rep
    1 ponto
  34. masdead

    [Show Off] Thiago Carvalho

    Tem um tempinho já que eu não to mappeando, mas ontem eu vi uma imagem de um mapa do neon que me deu vontade de mappear, então ai vai algumas imgs de um remake de thais que eu comecei a fazer ontem. Não botei gravel e pedrinhas nessas duas eu queria ver como ficaria. Essa ultima tem um pedacinho de um mapa do Neon (ele posto pra download o mapa) essa é a versão dele.
    1 ponto
  35. manoelouro

    Show off Roo

    Bom o meu disser e que o mapa ficou em partes bom,porem existem varios detalhes que precisam levar em consideraçao,e importante ressaltar o estudo de grandes mapas,Eternal kings e um otimo meio de aprendizagem,mas algo aqui tem que ser concordado,o seu mapa esta original.
    1 ponto
  36. LuckOake

    Aprendendo A Scriptear

    Olá galera. Muitos de vocês que são iniciantes em scripting tem certa dificuldade para criar scripts, uns por falta de ideias, outros por realmente não conseguirem montar nada. Por isso, resolvi fazer esse tutorial simples e claro. Aprendendo a Scriptear Introdução: Bom, primeiramente, você já se perguntou "por quê quero scriptear"? Se sim, legal, mas chegou à uma resposta? Se não, pense nisso. Tente chegar à algo que te inspire, seja observando trabalhos de scripters mais conhecidos e habilidosos ou simplesmente querendo criar novas coisas para ter seu nome conhecido. Sem uma inspiração você não vai avançar, acredite em mim. Começando no mundo dos scripts: Quando você tentou aprender a scriptear pela primeira vez, o que você fez? 95% das pessoas responderiam: "Eu li tutoriais". Tudo bem, mas será que isso é certo? Posso te assegurar que não. É claro, ler um tutorial abre sua mente para a parte teórica de scriptear, mas nada muito grande, de pouco adianta a teoria se você não entende a prática. Como praticar: Vou compartilhar com vocês uma experiência de vida. Eu tenho um server que está atualmente fechado para reformas, mas antigamente, eu necessitava sempre de inovar para agradar os players, só que os scripts que eu queria nem sempre estavam disponíveis na net. O que eu fazia? Simples, procurava scripts que possuiam as funções que eu precisava e ia juntando os pedaços até formar o que eu queria. Não, nunca funcionava de primeira, tinha vez que eu levava umas 2 horas para montar um script não muito avançado. Resultados da prática: Com a prática dita acima, você aprende as funções (como elas funcionam, o que significam, etc), aprende a estrutura de um script (if, else, end, etc), e o principal, aprende a criar. Moral: Não leia tutoriais apenas, pratique à partir do que você já conhece. Exemplo disso: Você conhece as cores azul e vermelho. Se você juntar as duas, você conhecerá uma nova cor, a cor roxa. Ou seja, juntando seus conhecimentos você obtêm mais sabedoria. Aprendendo a Imaginar Introdução: Bom, o maior problema de todo scripter é a falta de idéias, mas nem todos sabem resolver isso e encalham, alguns até desistem. Como resolver? Mas antes de tudo, vamos ao por quê. Por quê não tenho ideias? Você provavelmente já se perguntou isso. Se não, SE PERGUNTE. É importante. Parte das pessoas diriam que é porquê tudo já foi inventado, mas acredite, isso tá errado. Eu mesmo tinha essa visão, mas aprendi a imaginar, mesmo que às vezes seja difícil. Você não tem ideias bem provavelmente porquê você não tentou ter. Ou se tentou, fez da maneira errada. Então como ter ideias? Cara, você mora num universo que provavelmente está dentro de outras imensidões que seres humanos como nós são incapazes de compreender, mas fiquemos na Terra mesmo. O que tem na Terra? Muitas coisas, e a cada dia são criadas mais e mais coisas. Observe o mundo ao seu redor, se você prestar atenção em cada detalhe, verá que existem objetos, pessoas e até ambientes que você nunca imaginava que existisse. Você, tendo um pingo de criatividade, pode criar na sua mente um paraíso inteiro à partir de um simples campo de futebol. Moral: Você aprende a imaginar à partir do que já existe, isso é fato, mas com isso, você pode muito bem tirar uma base da sua imaginação ou até mesmo da realidade e criar um sistema que não existe, afinal, muitas coisas ainda não existem. Conclusão Final Você aprende praticando, e com a prática você evolui, mas para praticar você precisa de uma inspiração, e a partir da inspiração você tem ideias, e a partir das ideias você pratica, e com a prática você evolui, e fica nesse ciclo infinito. --------------------------------------------------------------------------------------------- Obrigado galera, espero que vocês tenham entendido o que eu quis dizer. Att. Luck Oake
    1 ponto
  37. 1 ponto
  38. Pelo o que entendi meu caro voce quer editar um cliente com o seu ip né ?! Entao vamos lá : Requisitos: Cliente creator: Download aqui: http://www.4shared.c...te_Creator.html Esse programa permite que voce edite o ip do cliente Tibia para augum seu. Lá em arquivo do programa voce seleciona o executavel do Tibia 8.54, em seu ip voce coloca o ip que desejar ^^. Ai pronto seu cliente já está voltado para seu ip, agora só voce ir em config.lua do seu OT e achar o ip e substituir. -- Connection config worldId = 0 ip = "coloque sei ip aqui !" bindOnlyConfiguredIpAddress = false loginPort = 7171 gamePort = 7172 adminPort = 7171 statusPort = 7171 loginTries = 10 retryTimeout = 5 * 1000 loginTimeout = 60 * 1000 maxPlayers = 1000 motd = "Welcome to Zig OT!" displayOnOrOffAtCharlist = true onePlayerOnlinePerAccount = true allowClones = false serverName = "Zig OT" loginMessage = "Welcome to Zig OT" statusTimeout = 5 * 60 * 1000 replaceKickOnLogin = true forceSlowConnectionsToDisconnect = false loginOnlyWithLoginServer = false premiumPlayerSkipWaitList = false Outra coisa para mudar a cor do menu, o plano de fundo vc baixa o seguinte programa : Pic Editor: http://www.4shared.c...25_install.html Ok, agora, tendo o Pic Editor em mãos copie o PicEditor v2.5 by Isaac.EXE para seu diretório de Tibia (O mesmo que está seu cliente). Abra o PicEditor que está dentro da pasta do seu cliente e clique em "Arquivo" e selecione o Tibia.pic que está nessa mesma pasta. Após ter selecionado o arquivo Tibia.pic clique em "Extract". Vão aparecer 8 arquivos Bitmap, do 0.bmp ao 7.bmp. Você só irá mecher no 0.bmp, pois ele é a imagem de fundo. Para alterar, simplesmente clique com o botão direito editar. Apague a imagem que tem e cole a que você quer. LEMBRE-SE QUE A IMAGEM NÃO PODE SER MAIOR NEM MENOR QUE A DO TIBIA.Salve e clique em "Compilar" Pronto! Mais fácil do que parecia neh? Mas pode haver um pequeno probleminha.... Fiquem calmos, pois esse problema é perfeitamente comum e bem fácil de resolver! Caso suas letras fiquem assim: Você terá que seguir este meu outro tutorial: Letras Embaralhadas? Créditos 100% meus, postem ai, isso é muito importante pra mim (: Credits: amoeba13 por desponibilizar as imagens e parte do tutorial !
    1 ponto
  39. 1º O YTC foi eu que fiz em 2010. As sources do Client Flash foram liberadas pelo SItju(TPforums.org, recomendo para quem quiser aprender mais sobre o client). 2º Não irei postar scan, não acho necessidade. As sources do YTC provavelmente serão pegas no scan por que eu não retirei a dll do YTC que contem codigo que é considerado malicioso(hook, etc, tudo voltado para o client). 2² e 4: Obrigado e de nada. Espero que o povo faça algo com isso, nem que seja aumentar seus conhecimentos e prosseguir em suas buscas por mais capacidade na hora de programar, é o que tá faltando aqui. Quem quiser mais informação do client, como eu disse antes, procure no Tpforums.org.
    1 ponto
Líderes está configurado para São Paulo/GMT-03:00
×
×
  • Criar Novo...