Ir para conteúdo
Close

REFORMULAMOS A SEÇÃO DE CLASSIFICADOS! - Crie grátis os seus anúncios de procura e oferta de serviços e produtos relacionados ao OTServ! - Acesse através do nosso menu ou clique aqui e confira já!

Flaah

Membro
  • Total de itens

    45
  • Registro em

  • Última visita

Sobre Flaah

  • Rank
    Victor Hugo
  • Data de Nascimento 11/02/1993

Informação de Perfil

  • Genero
    Masculino
  • Localização
    Rio de Janeiro
  • Eu sou
    Tibiano
  • Meu personagem
    ADM Victor Hugo
  • OTServ favorito
    STNaruto
  • Interesses
    Aprende sobre programação de Tibia a cada dia ^^

Últimos Visitantes

3.564 visualizações
  1. Flaah

    Outro Advanced Sound

    Desculpe reviver o tópico @vyctor17, mais quando eu coloco seu sistema no meu otclient compilado, da esse crash. == application crashed app name: OTClient app version: 0.6.3 build compiler: msvc12 build date: Dec 4 2015 build type: RelWithDebInfo build revision: 0 (devel) crash date: Dec 04 2015 18:53:35 exception: Access violation (0xc0000005) exception address: 0xfffffffb backtrace: 0: Unknown [0x00000000FFFFFFFB] Nem abre o client. Minha source é otclient 0.6.6, só que quando abro o client (sem seu sistema) diz que é otclient 0.6.3. Isso tem algo a ver?
  2. Desculpe reviver o tópico e o assunto @Wise e @Caronte, mais teria como vcs me darem um help nesse errinho sobre storage e condition? Tipo, estou criando um script aqui, que pela tabela da storage posso adicionar uma condition ao meu personagem. Seria tipo uma "Pedra de Evolução", que ao usar ganharia uma condition de skills e nova vocation. exemplo: Quando o player com storage 3001 usa-se o item, ele ganharia a vocation 11 (Mega Guerreiro), junto de seus buffs de skills. A mesma coisa com o Elfo, com storage 4001, ao usar o item ele ganha a vocation 12 (Mega Elfo) e seus buffs respectivos. Segui a script aqui: local skey = 1234 local config = { [3001] = {LifeOld = 900, LifeNew = 1200, StorOld = 3001, StorNew = 3003, msg = "Mega Guerreiro", condition = megaguerreiro, lookType = 2, vocation = 11, effect = 2}, [4001] = {LifeOld = 800, LifeNew = 2400, StorOld = 4001, StorNew = 4003, msg = "Mega Elfo", condition = megaelfo, lookType = 8, vocation = 12, effect = 2}, } local megaguerreiro = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(megaguerreiro, CONDITION_PARAM_SKILL_FIST, 61) setConditionParam(megaguerreiro, CONDITION_PARAM_SKILL_CLUB, 62) setConditionParam(megaguerreiro, CONDITION_PARAM_SKILL_SWORD, 79) setConditionParam(megaguerreiro, CONDITION_PARAM_SKILL_AXE, 79) setConditionParam(megaguerreiro, CONDITION_PARAM_TICKS, -1) local megaelfo = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(megaelfo, CONDITION_PARAM_SKILL_FIST, 84) setConditionParam(megaelfo, CONDITION_PARAM_SKILL_CLUB, 79) setConditionParam(megaelfo, CONDITION_PARAM_SKILL_SWORD, 35) setConditionParam(megaelfo, CONDITION_PARAM_SKILL_AXE, 92) setConditionParam(megaelfo, CONDITION_PARAM_TICKS, -1) function onUse(cid, item, frompos) local vocu = config[getPlayerStorageValue(cid, skey)] if vocu then setPlayerStorageValue(cid, vocu.StorOld, 0) if not isInArray(vocu.vocation, getPlayerVocation(cid)) then local outfit = getCreatureOutfit(cid) outfit.lookType = vocu.lookType doCreatureChangeOutfit(cid, outfit) setCreatureMaxHealth(cid, getCreatureMaxHealth(cid) -vocu.LifeOld) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) doPlayerSetVocation(cid, vocu.vocation) setCreatureMaxHealth(cid, getCreatureMaxHealth(cid) +vocu.LifeNew) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) doSendMagicEffect(frompos, vocu.effect) doPlayerSendTextMessage(cid, 20, "Congratulations! You become a "..vocu.msg.."!") doAddCondition(cid, vocu.condition) setPlayerStorageValue(cid, vocu.StorNew, 1) else doPlayerSendCancel(cid, "You are now ready.") return true end end end Só que na hora da isso: [22/11/2015 21:18:57] [Error - Action Interface] [22/11/2015 21:18:57] data/actions/scripts/Classes/megastone.lua:onUse [22/11/2015 21:18:57] Description: [22/11/2015 21:18:57] (luaDoAddCondition) Condition not found Estou com dúvidas de como fazer isso, já tentei de tudo, PLIZ HELP ME..
  3. @Wise Você já começou a trabalhar nas ideias?
  4. Verdade, não adianta ser dono de um server sem saber como funciona kk'
  5. Huum.. quaase conseguir kkk' só esta dando 1 probleminha, tipo: Não to conseguindo retirar a storage setada junto da key 1234, pelo comando setPlayerStorageValue(cid, 3001, 0). Porq tenho um script no creaturescripts, que se reconhecer algum player com a storage 3001 no servidor, ele da um buff na skill. #EDIT Mil desculpas, era um erro totalmente meu kk'' Muuito obrigado pela ajuda de vcs, sério mesmo! Ainda sou novato em script kk', mesmo assim estou me esforçando muito pra aprender Obrigado @Caronte, @Wise e @Wakon, vcs 3 merecem um Gostei BRUTO pela ajuda, kk' Obs: Desculpa @Caronte pela encheção de saco de minha parte kkk' Obrigado TibiaKing e toda a equipe! bjs'
  6. E pra remover o valor 3001 é: setPlayerStorageValue(cid, 3001, 0) ou setPlayerStorageValue(cid, 0, 3001)? Não sei se isso vai fazer diferença, mais o server que estou trabalhando é 0.3.6 - 8.54 kk' :P
  7. @Wakon então eu tbm tenho q setar o valor 1234 no player além do valor da tabela (3001)?
  8. Mesmo com a storage eu não recebo o HP. Tbm não da erro algum no console.
  9. Eu pensei nesse sistema: Se o player tiver "X" level em Skill de Sword, ele tera 10% de proteção referente ao level da skill em "X" Spell? Exemplo: Meu skill de Sword tem level 150. Calculo: 150 x 10 ÷ 100 = 15 de proteção de Dano a Spell (Bafo do Dragão) Suponho que a spell (Bafo de Dragão) bata 140 de Dano, então logo com esse level de skill (150), será retirado do dano da spell (10% = 15 de dano). Dando assim no total 125, que é: (140 - 15 = 125). Bem.. é isso kk' Obs: Esse 10% de proteção é referente a minha defesa contra a spell (Bafo de Dragão) do oponente, logo a spell só ira bater 125 de dano em mim em vez de 140 por causa do meu level 150 de skill Sword Server: 8.54 (TFS: 0.3.6)
  10. Ocorreu esse erro: [19/11/2015 22:20:53] [Error - Action Interface] [19/11/2015 22:20:53] data/actions/scripts/Classes/guerreiro.lua:onUse [19/11/2015 22:20:53] Description: [19/11/2015 22:20:53] (luaGetCreatureStorage) Creature not found #EDIT Fiz uma pequena edição pra arrumar esse erro, só que agora o player mesmo com a storage, não da o HP referente a storage setada no player. Script: local config = { [3001] = {HP = 900}, -- [Storage] = {HP = Quantidade} [3002] = {HP = 780}, } function onUse(cid, item, frompos) if valor then local valor = config[getPlayerStorageValue(cid)] setCreatureMaxHealth(cid, getCreatureMaxHealth(cid) +valor.HP) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) doSendMagicEffect(frompos, 10) doPlayerSendTextMessage(cid, 20, "Congratulations!") end return true end
  11. Como faz pra um checar uma storage em tabela? exemplo: Fiz um item que ao usar ele checa a storage do player e se ele tiver X storage, ele ganha uma certa quantidade de HP. Só que da esse erro ao checar a storage pela tabela: [18/11/2015 23:50:00] data/actions/scripts/Classes/teste.lua:9: attempt to call global 'getPlayerStorage' (a nil value) local config = { [3001] = {HP = 900}, -- [Storage] = {HP = Quantidade} [3002] = {HP = 780}, } function onUse(cid, item, frompos) local valor = config[getPlayerStorageValue(cid)] setCreatureMaxHealth(cid, getCreatureMaxHealth(cid) +valor.HP) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) doSendMagicEffect(frompos, 10) doPlayerSendTextMessage(cid, 20, "Congratulations!") return true end Como faço pra não ocorrer esse erro e checar a storage? pliz
  12. Alguém conseguiria fazer um sistema que consiste em: Se o player tiver level "X" em Skill de Sword, ele tera 10% de proteção referente ao level da skill em "X" Spell? Exemplo: Meu skill de Sword tem level 150. Calculando: 150 x 10 ÷ 100 = 15 de proteção de Dano a Spell (Bafo do Dragão) Suponho que a spell (Bafo de Dragão) bata 140 de Dano, então logo com esse level de skill (150), sera retirado do dano da spell (10% = 15 de dano). Dando assim no total 125, que é: (140 - 15 = 125). Obs: Esse 10% de proteção é referente a minha defesa contra a spell (Bafo de Dragão) do oponente, logo a spell só ira bater 125 de dano em mim em vez de 140 por causa do meu level 150 de skill Sword Server: 8.54 (TFS: 0.3.6) Bem.. é isso, rezo a Deus que alguém possa me ajudar
  13. Fala ae galera, blz? Bem vamos lá.. eu to tentando adicionar novos elementos (Damage) no meu server de tibia, só que quando eu vou invocar a spell com a nova damage, ela simplesmente não aparece a cor do hit e nem o efeito, como uma damage normal (ex: Fire Damage). Eu queria sabe como faço pra essa nova damage funcionar 100%.. Uma observação: Quando eu troco o número da minha damage (COMBAT_BLUEFIREDAMAGE = 1993) para que uma já existente (Exemplo: COMBAT_ENERGYDAMAGE = 2), minha damage fica com o efeito e a cor do hit da Energy Damage, no arquivo 000-constant.lua. Minha dúvida é, como eu crio uma "ID" ou "Numeração" própria pra minha damage, para ela se tornar original? Obs²: Não ocorre erro na compilação do executável, The Forgotten Server 0.3.6 - Versão 8.54 Se alguém poder me esclarecer essa dúvida, vai ajudar muitas outras pessoas, pois quem não quer aprender a adicionar novos elementos no otserver? Até mesmo pra criar um ot de pokémon estável e do zero sem bugs.. seria daora Foi assim que adicionei minha nova damage na source: ======================================================================================== combat.cpp Abaixo de: case CONDITION_FIRE: return COMBAT_FIREDAMAGE; Adicione: case CONDITION_ELECTRIC: return COMBAT_ELECTRICDAMAGE; ----------------------------------------------------------------------------------------- Abaixo de: case COMBAT_FIREDAMAGE: return CONDITION_FIRE; Adicione: case COMBAT_ELECTRICDAMAGE: return CONDITION_ELECTRIC; ======================================================================================== condition.cpp Abaixo de: case CONDITION_FIRE: Adicione: case CONDITION_ELECTRIC: ----------------------------------------------------------------------------------------- Abaixo de: case CONDITION_FIRE: return ICON_BURN; Adicione: case CONDITION_ELECTRIC: return ICON_NONE; ======================================================================================== condition.h Abaixo de: CONDITION_HUNTING = 1 << 23, Coloque a vírgula na linha de cima e adc a próxima sem a vírgula: CONDITION_ELECTRIC = 1 << 24 ======================================================================================== const.h Abaixo de: TEXTCOLOR_WHITE = 215, Adicione: TEXTCOLOR_ELECTRIC = 210, ======================================================================================== enums.h Abaixo de: COMBAT_DEATHDAMAGE = 1 << 11, Adicione: COMBAT_ELECTRICDAMAGE = 1 << 12, E em: COMBAT_LAST = COMBAT_DEATHDAMAGE Você troca por: COMBAT_LAST = COMBAT_BLUEFIREDAMAGE ======================================================================================== game.cpp Abaixo de: case COMBAT_ENERGYDAMAGE: Adicione: case COMBAT_ELECTRICDAMAGE: ----------------------------------------------------------------------------------------- Abaixo de: case COMBAT_ENERGYDAMAGE: { textColor = TEXTCOLOR_PSYCHIC; magicEffect = MAGIC_EFFECT_DRAW_BLOOD; break; } Adicione: case COMBAT_ELECTRICDAMAGE: { textColor = TEXTCOLOR_ELECTRIC; magicEffect = MAGIC_EFFECT_DRAW_BLOOD; break; } ======================================================================================== monster.cpp Abaixo de: else if(tmpName == "drown") combat->setParam(COMBATPARAM_COMBATTYPE, COMBAT_DROWNDAMAGE); Adicione: else if(tmpName == "electric") combat->setParam(COMBATPARAM_COMBATTYPE, COMBAT_ELECTRICDAMAGE); ----------------------------------------------------------------------------------------- Abaixo de: else if(tmpStrValue == "energy") { mType->damageImmunities |= COMBAT_ENERGYDAMAGE; mType->conditionImmunities |= CONDITION_ENERGY; } Adicione: else if(tmpStrValue == "electric") { mType->damageImmunities |= COMBAT_ELECTRICDAMAGE; mType->conditionImmunities |= CONDITION_ELECTRIC; } ----------------------------------------------------------------------------------------- Abaixo de: else if(readXMLString(tmpNode, "fire", strValue) && booleanString(strValue)) { mType->damageImmunities |= COMBAT_FIREDAMAGE; mType->conditionImmunities |= CONDITION_FIRE; } Adicione: else if(readXMLString(tmpNode, "electric", strValue) && booleanString(strValue)) { mType->damageImmunities |= COMBAT_ELECTRICDAMAGE; mType->conditionImmunities |= CONDITION_ELECTRIC; } ----------------------------------------------------------------------------------------- Abaixo de: else if(readXMLInteger(tmpNode, "energyPercent", intValue)) mType->elementMap[COMBAT_ENERGYDAMAGE] = intValue; Adicione: else if(readXMLInteger(tmpNode, "electricPercent", intValue)) mType->elementMap[COMBAT_ELECTRICDAMAGE] = intValue; ======================================================================================== player.cpp Abaixo de: case CONDITION_FIRE: tmp = "burning"; break; Adicione: case CONDITION_ELECTRIC: tmp = "dashing"; break; ======================================================================================== tools.cpp Abaixo de: {"fire", COMBAT_FIREDAMAGE}, Adicione: {"electric", COMBAT_ELECTRICDAMAGE}, ----------------------------------------------------------------------------------------- Abaixo de: case COMBAT_ENERGYDAMAGE: return "energy"; Adicione: case COMBAT_ELECTRICDAMAGE: return "electric";
  14. Bom.. tomara que ele não ligue né.. Mesmo assim MEUS PARABÉNS Yoku pelas sprites e MUITO OBRIGADO nociam pela ajuda! Reputado

Open Tibia Server

Quer aprender a criar seu próprio servidor de Tibia? Então está no lugar certo, aqui você encontrará milhares de tutorias, scripts, códigos, mapas e utilitários para que você possa fazer o seu próprio servidor de Tibia partindo do zero.

Redes Sociais

Anuncie no Tibia King

Precisa de mais visibilidade em seus projetos? Quer publicidade para o seu servidor? Anuncie no Tibia King e faça sua divulgação, possuímos centenas de acessos simultâneos e milhares diários, com certeza será a sua solução! A publicação do seu anuncio é instantânea!

×