Ir para conteúdo

JustinnoTibianno

Conde
  • Total de itens

    696
  • Registro em

  • Última visita

  • Dias Ganhos

    2

Histórico de Reputação

  1. Upvote
    JustinnoTibianno deu reputação a Marco Oliveira em Servidor 10.90 | Windows 32/64 Bits | Versão Final   
    Depois de muitos pedidos e muita procura acabei compilando o TFS da versão 10.90, está estável. 
    As sources são originais, não houve modificações nelas, apenas os sistemas foram adicionados...
     
    Clique Aqui para fazer o download da versão 32 bits.
    Clique Aqui para fazer o download da versão 64 bits.
    Clique Aqui para fazer o download das sources.
    Clique aqui para fazer o download do gesior funcional.
     
     
    Clique Aqui para o scan de 32 bits.
    Clique Aqui para o scan de 64 bits.
    Clique Aqui para o scan das sources.
     
    Para usar o Reward Chest adicione a seguinte flag no monstro.
    <flag rewardchest="1" / Você também pode definir o drop para ser único, dessa forma só a pessoa que fez o maior dano irá obter este item. exemplo:
    <item id="5903" chance="100000" uniquedrop="1" /><!-- ferumbras' hat --> Na versão final foram corrigidos os bugs das mensagens do Server Log como as de potion e loot. Seguem as screen shots..
     
     

     

     
     
    PS: Eu autorizo postar em outro fórum, porem este conteúdo é oficialmente do XTibia, então coloque meus créditos e o link do fórum oficial.
  2. Upvote
    JustinnoTibianno deu reputação a Danihcv em [TFS 0.3/0.4] Messages types - Tipos de mensagens   
    Olá, xTibianos. Hoje venho lhes trazer algo simples mas bem prático: os tipos de mensagens que podem ser mandadas aos players (por meio de scripts, óbvio). Esses tipos de mensagens são os usados nas versões 0.3/0.4 do The Forgotten Server (TFS para os íntimos).

    Segue a lista dos tipos de mensagens:
    MESSAGE_STATUS_CONSOLE_BLUE = 4 MESSAGE_STATUS_CONSOLE_RED = 12 MESSAGE_STATUS_DEFAULT = 16 MESSAGE_STATUS_WARNING = 17 MESSAGE_EVENT_ADVANCE = 18 MESSAGE_STATUS_SMALL = 19 MESSAGE_INFO_DESCR = 20 MESSAGE_DAMAGE_DEALT = 21 MESSAGE_DAMAGE_RECEIVED = 22 MESSAGE_HEALED = 23 MESSAGE_EXPERIENCE = 24 MESSAGE_DAMAGE_OTHERS = 25 MESSAGE_HEALED_OTHERS = 26 MESSAGE_EXPERIENCE_OTHERS = 27 MESSAGE_EVENT_DEFAULT = 28 MESSAGE_LOOT = 29 MESSAGE_TRADE_NPC = 30 MESSAGE_EVENT_GUILD = 31 MESSAGE_PARTY_MANAGEMENT = 32 MESSAGE_PARTY = 33 MESSAGE_EVENT_ORANGE = 34 MESSAGE_STATUS_CONSOLE_ORANGE = 35 MESSAGE_REPORT = 36 MESSAGE_HOTKEY_USE = 37
    lembrando que no script pode ser usado tanto a "parte escrita" quanto o numero correspondente!  
    Agora segue uma sequencia de prints da execução de cada tipo de mensagem in-game:

    as divisórias "//" indicam que todas os tipos de mensagens presentes antes/depois delas surtem os mesmos efeitos (representados nas prints)  
    MESSAGE_STATUS_CONSOLE_BLUE



    MESSAGE_STATUS_CONSOLE_RED



    MESSAGE_STATUS_DEFAULT // MESSAGE_EVENT_DEFAULT



    MESSAGE_STATUS_WARNING



    MESSAGE_EVENT_ADVANCE // MESSAGE_REPORT



    MESSAGE_STATUS_SMALL



    MESSAGE_INFO_DESCR // MESSAGE_LOOT // MESSAGE_TRADE_NPC // MESSAGE_EVENT_GUILD // MESSAGE_PARTY_MANAGEMENT // MESSAGE_PARTY // MESSAGE_HOTKEY_USE



    MESSAGE_DAMAGE_DEALT // MESSAGE_DAMAGE_RECEIVED // MESSAGE_HEALED // MESSAGE_EXPERIENCE // MESSAGE_DAMAGE_OTHERS // MESSAGE_HEALED_OTHERS // MESSAGE_EXPERIENCE_OTHERS



    MESSAGE_EVENT_ORANGE // MESSAGE_STATUS_CONSOLE_ORANGE


     


    Por hoje é isso, galera. Espero que tenha sido útil. ^^
     
    Créditos:
    @Danihcv
  3. Upvote
    JustinnoTibianno recebeu reputação de Gabriel Couto em Zare City   
    Bom te ver voltando ao mapping, já estou esperando o download haha
  4. Upvote
    JustinnoTibianno recebeu reputação de Caronte em Zare City   
    Bom te ver voltando ao mapping, já estou esperando o download haha
  5. Upvote
    JustinnoTibianno deu reputação a Gabriel Couto em Zare City   
    Olá pessoal. A versão desse mapa é 9.60 e tenho a intenção de disponibilizá-lo para download futuramente aqui no XTibia.



    O objetivo principal primário é ser uma cidade com diversas casas, para que seja útil à um servidor que necessite de casas para seus usuários. A primeira versão para download sairá somente com a mesma. Posteriormente, pretendo ir atualizando com áreas de hunt, etc.



    Estou há pelo menos 2 anos sem fazer mapas de verdade e há pelo menos 1 sem abrir o editor de mapas! Então essas primeiras imagens são somente um esboço. Com mais treinamento, irei depois revisar as áreas para postar a primeira versão para download.



    Ainda assim, a intenção é que o mapa seja ao mesmo tempo simples e agradável, sem nenhum tipo de detalhe "mirabolante". Seria um mapa para o global, por exemplo.



    01/02/2016





    01/02/2016





    01/02/2016





    Abraços, Gabriel.





  6. Upvote
    JustinnoTibianno deu reputação a lhibanhi em [8.60] Potions Infinita - Definitivo   
    Olá Xtibianos,
    Estava com o mesmo problema que varios hosters enfrentam com o pedidos dos players...
    a famosa POT INFINITA no servidor, e resolvi, como consegui corrigir o SCRIPT final para isso
    sem BUGS.
     
    Lembrando que, eu simplesmente apaguei as partes que se refiriam a criação e remoção dos pot's
    no arquivo, não criei, não fiz nada, apenas modifiquei ao meu gosto!
     

    [TUTORIAL]


     
    Primeiramente siga este caminho na pasta do seu servidor :
     
    Data/Actions/Scripts/Liquids/Potions.lua
     
    No meu computador, neste caso o caminho é este
     

     
    O Script que tem que ser inserido nessa parte é
     

    local config = { removeOnUse = "no", usableOnTarget = "yes", -- can be used on target? (fe. healing friend) splashable = "no", realAnimation = "no", -- make text effect visible only for players in range 1x1 healthMultiplier = 1.0, manaMultiplier = 1.0 } config.removeOnUse = getBooleanFromString(config.removeOnUse) config.usableOnTarget = getBooleanFromString(config.usableOnTarget) config.splashable = getBooleanFromString(config.splashable) config.realAnimation = getBooleanFromString(config.realAnimation) local POTIONS = { [8704] = {empty = 7636, splash = 2, health = {50, 100}}, -- small health potion [7618] = {empty = 7636, splash = 2, health = {100, 200}}, -- health potion [7588] = {empty = 7634, splash = 2, health = {200, 400}, level = 50, vocations = {3, 4, 7, 8}, vocStr = "knights and paladins"}, -- strong health potion [7591] = {empty = 7635, splash = 2, health = {500, 700}, level = 80, vocations = {4, 8}, vocStr = "knights"}, -- great health potion [8473] = {empty = 7635, splash = 2, health = {800, 1000}, level = 130, vocations = {4, 8}, vocStr = "knights"}, -- ultimate health potion [7620] = {empty = 7636, splash = 7, mana = {70, 130}}, -- mana potion [7589] = {empty = 7634, splash = 7, mana = {110, 190}, level = 50, vocations = {1, 2, 3, 5, 6, 7}, vocStr = "sorcerers, druids and paladins"}, -- strong mana potion [7590] = {empty = 7635, splash = 7, mana = {200, 300}, level = 80, vocations = {1, 2, 5, 6}, vocStr = "sorcerers and druids"}, -- great mana potion [8472] = {empty = 7635, splash = 3, health = {200, 400}, mana = {110, 190}, level = 80, vocations = {3, 7}, vocStr = "paladins"} -- great spirit potion } local exhaust = createConditionObject(CONDITION_EXHAUST) setConditionParam(exhaust, CONDITION_PARAM_TICKS, (getConfigInfo('timeBetweenExActions') - 100)) function onUse(cid, item, fromPosition, itemEx, toPosition) local potion = POTIONS[item.itemid] if(not potion) then return false end if(not isPlayer(itemEx.uid) or (not config.usableOnTarget and cid ~= itemEx.uid)) then if(not config.splashable) then return false end if(toPosition.x == CONTAINER_POSITION) then toPosition = getThingPos(item.uid) end doDecayItem(doCreateItem(2016, potion.splash, toPosition)) return TRUE end if(hasCondition(cid, CONDITION_EXHAUST_HEAL)) then doPlayerSendDefaultCancel(cid, RETURNVALUE_YOUAREEXHAUSTED) return TRUE end if(((potion.level and getPlayerLevel(cid) < potion.level) or (potion.vocations and not isInArray(potion.vocations, getPlayerVocation(cid)))) and not getPlayerCustomFlagValue(cid, PLAYERCUSTOMFLAG_GAMEMASTERPRIVILEGES)) then doCreatureSay(itemEx.uid, "Only " .. potion.vocStr .. (potion.level and (" of level " .. potion.level) or "") .. " or above may drink this fluid.", TALKTYPE_ORANGE_1) return TRUE end local health = potion.health if(health and not doCreatureAddHealth(itemEx.uid, math.ceil(math.random(health[1], health[2]) * config.healthMultiplier))) then return false end local mana = potion.mana if(mana and not doPlayerAddMana(itemEx.uid, math.ceil(math.random(mana[1], mana[2]) * config.manaMultiplier))) then return false end doSendMagicEffect(getThingPos(itemEx.uid), CONST_ME_MAGIC_BLUE) if(not realAnimation) then doCreatureSay(itemEx.uid, "Aaaah...", TALKTYPE_ORANGE_1) else for i, tid in ipairs(getSpectators(getCreaturePosition(cid), 1, 1)) do if(isPlayer(tid)) then doCreatureSay(itemEx.uid, "Aaaah...", TALKTYPE_ORANGE_1, false, tid) end end end end
     
    após a inserção deste comando no servidor, se você não deseja reiniciar o servidor digite:
    /reload action
     
    feito isso, seu servidor estará com pot infinita, como mostro abaixo:
     

     
    está ai, a prova que seu servidor ficou com POT Infinita,
    lembrando eu não fiz este script editei de uma distro pronta.
     
    Tutorial by : LuuhIbanhi' (LuisH)
    Distro by : RealServer
  7. Upvote
    JustinnoTibianno deu reputação a Administrador em [Arquivado]Quem é você, player? Ganhe 05 REP + Conquista!   
    Com perguntas objetivas e divertidas, queremos saber quem é você, player de OTServer! Ah, Participe do "Você, Player!" recebendo prêmios. Veja abaixo:







    Para ganhar 05 Pontos de Reputação + esta conquista :

    Acesse o link clicando na imagem ou aqui.
    Adicione seu nick utilizado no fórum ao começar.
    Responda as outras perguntas.
    Comente neste tópico utilizando o Nickname que preencheu no formulário.
    Tentativas de fraude, resultarão na perda de 10% dos pontos de reputação do membro.
  8. Upvote
    JustinnoTibianno deu reputação a GustavoCastilho em [Show Off] Gustavo Castilho   
    Temple:
     

  9. Upvote
    JustinnoTibianno deu reputação a Mega Bomb em [Show Off] Mega Bomb s2   
    Entrada de uma cidade ...
     
     

  10. Upvote
    JustinnoTibianno deu reputação a CancerianO em CancerianO - Show Off   
    Quem ve até pensa que é bem esta ordem kkkkkkk
     
    @topic
    Nova imagem adicionada

     
  11. Upvote
    JustinnoTibianno deu reputação a Skulls em [Tutorial] Formulas e Callbacks das spells – Entendendo Melhor   
    Boa tarde pessoal, tudo bem?
     
    Hoje resolvi fazer um tutorial sobre dois recursos muito simples e úteis na hora de criar magias diferentes, inovadoras e divertidas.
     
    Motivação
     
    Eu nunca soube fazer spells direito, achava chato e monótono, portanto nunca procurei saber mais. Essa semana, acabei fazendo um evento que a recompensa era uma magia, então quis fazer algo diferente e bonito, que fugisse um pouco do padrão (dê uma olhada em: http://www.xtibia.com/forum/topic/238734-luna-event-bonus-spell-inspirado-no-sot-01/#entry1680858). Só que, na minha busca por aprender mais sobre as spells, eu vi que é um tanto nebuloso a parte de dano e de callbacks. Os tutoriais os utilizam nos scripts demonstrativos mas falam pouco a respeito. Li muito, descobri algumas coisas no empirismo e outras nas sources do TFS e me senti motivado a reunir tudo que encontrei em um tutorial.
     
    Importante: Este não é um tutorial que vai ensinar a criar uma spell, existem milhares com esse objetivo aqui no fórum e na internet em geral. O foco aqui é estudar dois recursos que podem tornar o processo criativo de spells muito mais interessante, divertido e único, abrindo possibilidades diferentes do que simplesmente uma magia que solta um efeito e dá dano.
     
    Bom, chega de mimimi e vamos ao que interessa.
     
    Conceitos
     
    Vamos começar definindo nossos dois objetos de estudo.
     
    Fórmulas, como o próprio nome já define, são expressões matemáticas usadas para representar algum valor. No nosso caso, as fórmulas de dano das magias são expressões matemáticas que sintetizam e representam o dano da nossa magia.
     
    Callbacks são, traduzindo ao pé da letra, funções que ligam de volta. Definindo melhor, são funções que disparam ações quando determinado evento/acontecimento ocorre. Isso é, elas nos dão um retorno a um evento ou chamad. Exemplos: addEvent, é um callback muito útil que dispara com o tempo chamando uma função; onDeath é um callback que dispara quando determinada criatura morre.
    Uma vez entendido teoricamente o que vamos estudar, mãos a obra.
     
    Entendendo
     
    Fórmulas
     
    O controle das fórmulas de dano das spells é feito pela função setCombatFormula, cuja chamada default é mostrada abaixo:
    setCombatFormula(combat, formulaType, min_a, min_b, max_a, max_b, min_lvl, max_lvl, min_mlvl, max_mlvl, min_dmg, max_dmg) Combat é o objeto combate em questão, normalmente ele é instanciado no inicio dos arquivos de spells como local combat = createCombatObject(). É esse objeto que controla, a partir de seus parâmetros, toda a dinâmica das spells: efeitos, dano, área, etc.
     
    Min_a e Max_a são múltiplicadores das fórmulas de dano máximo e mínimo
    Min_b e Max_b são números base das fórmulas de dano máximo e mínimo
    Min_lvl e Max_lvl são ponderadores do level na fórmula de dano máximo e mínimo baseado em ML, dividem o lvl do player.
    Min_mlvl e Max_mlvl são ponderadores do magic level na fórmula de dano máximo e mínimo baseado em ML, multiplicam o ml do player.
    Min_dmg e Max_dmg são os limites do dano máximo e mínimo, o menor dano possível é min_dmg e o maior dano possível é max_dmg.
    formulaType são os diferentes tipos de fórmulas que podem ser usados, isso é, formas diferentes de como os parâmetros de dano que foram passado serão utilizados.
     
    Existem três tipos relevantes de fórmulas, existe um quarto chamado undefined ou 0. Porém nele todos os parâmetros são zero. São eles:
     
    COMBAT_FORMULA_LEVELMAGIC ou 1
     
    Essa é a fórmula mais completa das três, utiliza de todos os parâmetros para definir o dano máximo e mínimo.
    Basicamente, a fórmula de dano é
    Dano mínimo = ((player_level / min_lvl + player_mlvl) * min_mlvl) * min_a + min_b) Dano máximo = ((player_level / max_lvl + player_mlvl * max_mlvl) * max_a + max_b) Se dano mínimo > min_dmg, então dano mínimo = min_dmg Se dano máximo > max_dmg, então dano máximo = max_dmg Considerações importantes, o valor final de dano máximo e dano mínimo deve ser negativo, o mesmo vale para os valores de min_dmg e max_dmg. Portanto, para evitar confusão vai uma dica simples: Sempre coloque min_a, min_b, max_a, max_b, min_dmg e max_dmg negativos e o restante positivo.
     
    COMBAT_FORMULA_SKILL ou 2
     
    Mais simples que o anterior, só utiliza em seu cálculo os parâmetros min_b, max_a e max_b. Leva em consideração, como veremos, level, arma e skill (referente à arma que ele estiver empunhando) do player. Min_dmg não serve para esse caso, mas max_dmg ainda vale como no anterior.
    Dano mínimo = min_b Dano máximo = Dano_Calculado * max_a + max_b Se dano máximo > max_dmg, então dano máximo = max_dmg Aqui Dano_Calculado é o calculo do seu dano com a sua arma, levando em conta seu level e skills.
    Novamente, o valor final dos danos deve ser negativo. Aqui, use todes os valores negativos e não terá problemas.
     
    COMBAT_FORMULA_DAMAGE ou 3
     
    A mais simples das três, leva em consideração somente min_b, que será o dano mínimo e max_b, que será o dano máximo. Para não ter problemas, use valores negativos.
     
    A respeito das fórmulas é isso. São as três fórmulas pré-definidas e seus funcionamentos.
     
    Callbacks
     
    Nosso estudo sobre callbacks vai se basear na função setCombatCallback que faz o controle dos callbacks dos objetos de combate. A seguir, a declaração da função setCombatCallback:
    setCombatCallback(combat, callbackType, “nome da funcao”) Vamos explicar primeiro o que essa função faz.
     
    Ela adiciona ao objeto combat especificado uma função como retorno a um determinado tipo de evento. Cada tipo de callback é referente a um evento e espera da função que você passou como parâmetro alguns parâmetros. Por exemplo, queremos adicionar um callback do tipo X com a função de retorno functionX, sabendo que callbacks do tipo x esperam funções que recebam x1, x2 e x3 como parâmetro.
     
    Então temos que definir a função functionX e criar a chamada do callback:
    function functionX(x1, x2, x3) code end setCombatCallback(combat, X, “functionX”) Acredito que tenham entendido um pouco do funcionamento, agora vou explicar cada tipo de callback. Temos quatro tipos, mostrados a seguir:
     
    CALLBACK_PARAM_LEVELMAGICVALUE ou 1
     
    Esse callback é definido para disparar quando o dano é aplicado. Não consegui descobrir exatamente em que momento ele é chamado, mas, quando definido, toda vez que sua magia causa dano ele vai disparar a função para a qual foi programado. Ele é utilizado para reprogramar a forma como o dano vai ser calculado. A grande sacada aqui é que você pode definir as formulas de dano como você bem entender (levando em conta level e ml) e melhor se encaixar ao seu propósito.
     
    Esse callback espera funções que recebam os parâmetros: cid, level, maglevel e um retorno com os valores máximos e mínimos de dano. Uma definição para esse callback seria:
    function functionX(cid, level, maglevel) min = -maglevel*1.1 + level max = -maglevel*2.2 + level*1.1 return min, max end setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, “functionX”) CALLBACK_PARAM_SKILLVALUE ou 2
     
    Similar ao anterior, porém danos com base em skills, esse callback é definido para disparar quando o dano é aplicado. Não consegui descobrir exatamente em que momento ele é chamado, mas, quando definido, toda vez que sua magia causa dano ele vai disparar a função para a qual foi programado. Ele é utilizado para reprogramar a forma como o dano vai ser calculado. A grande sacada aqui é que você pode definir as formulas de dano como você bem entender (levando em conta skills, level, ataque da arma e modo de ataque) e melhor se encaixar ao seu propósito.
     
    Esse callback espera funções que recebam os parâmetros: formulaBySkill(cid, level, skill, attack, p, factor) e um retorno com os valores máximos e mínimos de dano. Uma definição para esse callback seria:
    function functionX (cid, level, skill, attack, factor) min = -(1.2 * (attack * (skill + 5.8) / 25 + (level - 1) / 10) / factor) max = -(2 * (attack * (skill + 5.8) / 25 + (level - 1) / 10) / factor) return min, max end setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, “functionX”) Observação importante: no servidor que eu tenho aqui, por algum motivo sobrenatural desconhecido, tem um parâmetro nulo extra entre attack e factor. Então, se você tentar usar isso no seu servidor e der erro “factor attempt to call nil value” ou algo do tipo use isso:
    function functionX (cid, level, skill, attack, vazio, factor) Nos sources que eu olhei esse parâmetro não existe, não achei nada a respeito dele e ele é sempre 0. Se alguém souber o que ele significa, se ele significar algo, comente ai.
     
    CALLBACK_PARAM_TARGETTILE ou 3
     
    Esse callback é definido para disparar quando a magia atinge cada um dos tiles definidos em sua área. Ele pode ter uma diversidade de aplicações, que envolvem customizar efeitos e ações da magia de acordo com o tile que ela atinge. Vai depender da sua criatividade, mas há um leque infinito de coisas que podem ser feitas. Exemplo: Se uma área de neve for atingida por uma magia de fogo, ela descongela e vira um tile de terra ou pedra; se em um dos tiles que a magia acertar houver um item, esse item vai para a bp do player; em determinado tipo de terreno a magia dá um dano extra; e por ai vai.
     
    Esse callback espera funções que recebam os parâmetros: cid e tile. Uma definição para esse callback seria:
    function onTargetTile(cid, tile) addEvent(doSendMagicEffect, x*350, tile, config.effects.hit) End setCombatCallback(combat, CALLBACK_PARAM_TARGETTILE, "onTargetTile") CALLBACK_PARAM_TARGETCREATURE ou 4
     
    Esse callback é parecido com o anterior. Ele é definido para disparar quando a magia atinge um criatura dentro da área de atuação dela. Ele pode ter uma diversidade de aplicações, que envolvem customizar efeitos e ações da magia de acordo com o tipo de criatura (diferentes monstros, se é player ou não, etc) que ela atinge. Vai depender da sua criatividade, mas há um leque infinito de coisas que podem ser feitas.
     
    Exemplo: Se um fire elemental for atingido por uma magia de fogo a vida dele aumenta ou um novo fire elemental surge; se o alvo da magia for um player há um dano adicional; se um monstro for atingido por essa magia ele é convencido e passa ate ajudar; e por ai vai
     
    Em uma magia como a que eu fiz para o evento luna, por exemplo, que dá vários hits ao longo de uma execução dela, cada hit dispara esse callback. Uma aplicação seria, então, a cada hit há uma chance de congelar e imobilizar o player.
     
    Esse callback espera funções que recebam os parâmetros: cid e target. Uma definição para esse callback seria:
    function onTargetCreature(cid, target) local chance = math.random(1, 18) if getGlobalStorageValue(5545) == -1 and isPlayer(target) and chance == 1 then registerCreatureEvent(target, "NoAtt") registerCreatureEvent(target, "NoSpell") registerCreatureEvent(target, "NoTgt") setGlobalStorageValue(config.storages.event, 1) addEvent(setGlobalStorageValue, 3000, 5545, -1) end chance = math.random(1, 15) if chance == 1 then doSendMagicEffect(getCreaturePosition(target), config.effects.hit) doCreatureSetNoMove(target, true) doSetItemOutfit(target, config.frozen_humans[math.random(1, #config.frozen_humans)], 1500) addEvent(backToMovement, 1800, target) end end setCombatCallback(combat, CALLBACK_PARAM_TARGETCREATURE, "onTargetCreature") Bom gente, foi isso o que consegui coletar, entender e aprender sobre as fórmulas de dano e callbacks das magias. Qualquer coisa que queiram acrescentar ou corrigir, fiquem a vontade para comentar.
     
    Espero que gostem.
    Abraços,
  12. Upvote
    JustinnoTibianno deu reputação a Administrador em Amazon Camp   
    AMAZON CAMP
     

     
    Criadores: Daniel
     

     
    [infos]
     
    Versão: 8.60
    Tipo: Hunt
    Deixamos a hunt vazia caso alguém queira adicionar outras criaturas, fica a seu critério.



    [/infos]

    MINIMAP







    IMAGENS


     




    Mediafire
    Scan


  13. Upvote
    JustinnoTibianno deu reputação a Mega Bomb em [Show Off] Mega Bomb s2   
    Ps: dei os créditos na ultima imagem
     
    Caverna de gelo :
     


  14. Upvote
    JustinnoTibianno deu reputação a Mega Bomb em [Show Off] Mega Bomb s2   
    Vlw as dicas parça, mas os mapas não são para serem jogáveis... e tmb não utilizei auto border, nas próximas eu boto telhado(srry) continue dando dicas ae, vlw... ABS!!
     
    Vlw cara... tu é inspiração para mapear... ABS!
     
    Vai um mapinha novo ae... um vale das flores ! ficou meio bugadinho... foi mal clã
     


  15. Upvote
    JustinnoTibianno deu reputação a Mega Bomb em [Show Off] Mega Bomb s2   
    Opa.. agradeço, não sei como funciona esse negocia de iluminação.. mas agradeço hahah
     
     
    Talvez um pouco menos dessa frozen mud fique melhor mesmo.. agradeço os elogios
     
     
    Pra comemorar a volta do fórum... hehehe
     
    Mapinha novo(eu não sei fazer essas arvores gigantes então deixei inacabado) ESPERO QUE GOSTEM!!
     

  16. Upvote
    JustinnoTibianno deu reputação a Qwizer em Global 10/11.5 + OtherWorld + Hearth of Destruction Quest+ Eventos   
    Global Full
     
    [CLIENTS COMPATÍVEIS]
      10 e 11.5.
     
    [BUGS E DOWNLOAD]
    BAIXEM E REPORTEM EM: OTXGlobal Full
     
    [FEATURES]
    NEW DEPOT, NEW SPAWN, NEW CAST SYSTEM, NEW NPC SYSTEM VIA BANK BALANCE, NEW CRITICAL BOOST SYSTEM, NEW POTIONS, REWARD SYSTEM, PREY ...
     
    [MAPA]
    FULL GLOBAL MAP WITH FEYRIST
     
    TODAS CIDADES E NOVAS AREAS
    TODAS QUESTS FUNCIONANDO!
     

     

     

     

     

     

     

     

     

     

    [EVENTS]
    WAR-ANTIENTROSA
     
    [CONTATO]
    SKYPE: onjogos WHATSAPP: (66) 998427-4493
     
    [Créditos]Tfs 1.2 Developers -Zbizu - Pitis91 - MatheusMkalo - Gesior - Lundrial
    - M4G0 -
    Fish04k - Printer - Djarek - Ninjalulz - Slavidodo - Thexamx - Socket2810 - Ciroc -Absolute - Gordonbay - Mitsuig - Alissonfgp - Gunz - Bruno Minervino - Comedinha -Hirako - Maya - Mattyx14 – Darkjav - Viking Tibia
  17. Upvote
    JustinnoTibianno deu reputação a Kiing Creed em Styller HardLand [8.60]   
    Apresento a vocês, o styller mais completo feito até hoje.
     
    Ele é o HardLand Styller [8.60]
    .: Mapa base - Yourots 1.2 (Créditos LeozeraRox)
     
    • O mapa estava pronto a muito tempo, porém, eu abria meu servidor com este mesmo mapa, só que de um tempo pra cá, não tive mais tempo para ficar correndo atrás disso. Um pecado eu ter deixado um mapa tão bem feito guardado e não divulgado pra vocês que ainda gostam de jogar.
     
    Informações do otserv.
    (Obs: Servidor possui war-system, porém não é servidor de site, todas as informações são passadas pelo próprio jogo)
    • Versão 8.60
    • Contém sistema de War System
    • Contém o War of Emperium
    • Cidade vip inserida:
    - Novas hunts
    - Novas quests
    - Novos trainers
    - Novas casas
    [Itens foram criados para as novas quests]

    • Cidade principal totalmente modificada:
    - Novos trainers
    - Novas casas
    - Novas hunts
     
    Façam bom proveito, lembre-se que qualquer dúvida, estarei aqui!
    Link para dowload: http://www.4shared.com/rar/ZSI3uFABce/HARDLAND.html
     
    • Templo cidade principal.

     
    • Local onde account managers aparece, junto com King (onde coloca promotion)

     
    • Lojas (pots por alavancas)

     
    • Quests (Cidade VIP)

     
    • Teleports free

     
    • Teleports vips

     
    • Traines



  18. Upvote
    JustinnoTibianno deu reputação a Luizbaiak em [ORIGINAL] (10.10) New Baiak Yurots V1.0 32bits SQLITE CAST SYSTEM E WAR SYSTEM 100%   
    Olá Galerinha Tibiana!
    Durante 3 anos o baiak ainda está se atualizando cada vez mais e agora eu venho trazer a nova versao 10.10 não esta 100% mais garanto que vao gostar,entao vamos ver oque há de novo nele ?
     
    Essa Nova Versão eu conseguir criar em apenas 2 dias e meio e nao deu tempo de testar mais se houver bugs comentem por favor.
     
    Versão x10.1- 1.0 Oque há de novo ?
     
    • Todas as mountarias da versao 10.10
    • Todos os outfits 10.10
    • Todos os items 10.10
    • Monsters ainda em andamento.
    • Templo com cara de 10.10
    • City Vip com novo visual 10.10
    • War System 100%
    - Comandos :/war invite,nomedaguildrival outra guild ativar a war /accept war,guildrival cancelar war . /war cancel,guildrival
    • Cast System 100%
    - Comandos:!cast list para ver casts abertos,!cast nomedoplayer para entrar, !cast exit para sair do cast que voce está !cast on para voce abrir um cast e !cast off para sair
    • Novo Npc no templo que vende items 10.10
    • Novo npc que vende items vip
    • Bug das houses retirados
    • Bug da Sql retirado
    • Novos Comandos
    /rank
    !mount nomedamount
    !addon nomedoaddon
    !changesex
    !buyhouse,!leavehouse,alana res,!sellhouse funcionando 100%
    e muito mais que nao veio na cabeça mais quando eu lembrar posto.
    O Servidor está em SQL pronto para por online e os erros do distro nao encomodam o server.
     
    • Baiak Yurots V5.2 Oque Mudou ?

    •Tirei bug das houses
    •Tirei todos os erro do distro
    •Arrumei o lado >> da city vip agora mais rox.

    • Baiak Yurots V5.1 Oque Mudou ?

    • Mudei a Quest do templo lv 150 ganha 2kk agora ganha só 500k
    • Melhorei os teleports master lv 300+ agora tem 4 novas quest e 2 hunt +
    • Mudei respaw de todas as hunts free , vip e master agora ta 5x melhor.
    • Mudei Tempo da loteria tava 15 em 15 minutos agora ta de 1 em 1 hora.
    • Melhorei a Exori gran do kina.
    • Mudei os loot do monster bosses agora igual da versao 10.30 do global
    • Adicionei quest do addon doll na area d lvel 300+
    • Adicionei Quest do 2kk na area d Lvl 300+
    • Adicionei Quest do necromancer shield na area de Lv 300+
    • Adicionei Quest do Dwarven Set e hornede helmet na area de level 300+
    • Adicionei o novo monster Master Medusa Lv 300+
    • Adicionei 2 novas hunt de Master Medusa.
    Se eu lembrar mas alguma coisa eu posto. :S

    • Baiak Yurots V5.0 Oque Mudou ?

    • Agora a City Está Maior Mais Bonita e Com Mais Houses.
    • Novo Sistema de Treiner não prescisa andar muito para axar um livre.
    • Novos monstros vip ( Sea Serpent Vip , Hellhound vip , night mare vip , fury vip ) novos monstros master ( hydra master , frost master , grim master e demon master).
    • Nova Quest Master Com Armas Para todas as vocaçao.
    • Agora o NPC VIP Vende e compra items vip, pois se voce pegar item vip de algum red algo assim voce pode vender mais so que o npc compra 60% mais barato ☺
    • Novo Npc que vender Red Remover.
    • Novo Templo.
    • Novas Quests.
    • Novo Depot.
    • Novos Commandos ( !food Compra 100 , !topfrags Ver quem é o top frag , !glist ver as guild do server e !glist Nameguild para ver os player da guild.
    • Teleports Free e vip Agora com nova cara.
    • Novo Caminho Para Poi no mesmo lugar so que mais bonito.
    • Addon agora é com addon doll npc Varkhal Vende.
    • Systema de Loteria a cada 2 Horas.
    • Nova arena de team god que organiza.
    E muito Mais ..

    Novos Items.

     
    Master vip Quest

     
    Teleports Master

    Templo vip

    Templo city

     
    Teleports Master

    Teleport Free

    Documento baiak original

     
    O Server Está FULL EM SQL Só Baixar e Por Online Abaixo !
     
    Download Baiak 10.10 13/01/2014 - >http://www.4shared.com/rar/hOppT8_kba/Baiak_1010.html
    Scan Baiak 10.10 -> https://www.virustotal.com/pt-br/file/e18224ffa86a7a034e66d9d57e441cd179ed24a842fdcf9b532266227877f501/analysis/1389761678/
     
    Testado 32bits windowns 7.
     
    acc do god -> god/god
     
    Creditos
    10% GOD Bon | Por editar em 2008
    90% Baiak Lula = Luizbaiak | Por editar2010 a 2014

    Contato
    Face -> https://www.facebook...zhenrique.baiak
    Email -> Baiaklula@gmail.com

    Obrigado bom jogo! GOSTOU? DE REP+.
  19. Upvote
    JustinnoTibianno deu reputação a Mudrock em [8.6 ~ 9.x ] Gesior WebGesiorMudrocK 100%   
    Opa pessoal do XTIBIA tudo bem, tava editando um Gesior para o meu servidor a um tempo mais o projeto acabo dando errado por problemas técnicos, e eu fiquei com meu gesior pronto porem sem utilidade
    então resolvi trazer para vocês

    OBSERVAÇÃO : esse gesior erá de um projeto meu, finalizei ele hoje quando peguei uma base que um amigo meu me passo para ajuda-lo, e acabei implementando alguns sistemas e funções, ESSE GESIOR FOI FEITO APARTIR DOS MEUS GOSTOS, ESTOU SOMENTE DISPONIBILIZANDO-O PARA VOCÊS, PORTANTO FIQUEM A VONTADE PARA EDITAR NOMES, IMAGENS, CORES.


    Bugs arrumados








    Compatibilidade

    TFS 0.3 TFS 0.3.8 TFS 0.4

    Download em anexo
    DATABASE : http://www.mediafire.com/download/w3n1nnw0gtmc2k0/mudrock.sql
    GESIOR : http://www.mediafire.com/download/frfgq96jawas214/mudrockwebgesior.rar



    Créditos
    MudrocK
    Archez
    Aleh
    Hollister
    Matheus ( for top level )
  20. Upvote
    JustinnoTibianno deu reputação a meubk em Task infinitas.   
    -- Script por Killua, antigo Amoeba13 -- local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid if amoebaTask[msg] then if getPlayerStorageValue(cid, amoebaTask[msg].storagecount) == amoebaTask[msg].count then local esperiencia = amoebaTask[msg].exp > 0 and "" ..amoebaTask[msg].exp.. " exp e " or "" local dineiro = amoebaTask[msg].money > 0 and "" .. amoebaTask[msg].money .. " gold coins e " or "" selfSay("Voce conseguiu completar a task de ".. msg .. ", parabens! Eu vou te dar " .. esperiencia .. "" .. dineiro .."alguns itens como recompensa.", cid) doPlayerAddExperience(cid, amoebaTask[msg].exp) doPlayerAddMoney(cid, amoebaTask[msg].money) doPlayerSetStorageValue(cid, amoebaTask[msg].storage, -1) doPlayerSetStorageValue(cid, amoebaTask[msg].storagecount, 0) for juba, prize in pairs(amoebaTask[msg].premios) do doPlayerAddItem(cid, prize[1], prize[2]) end else selfSay("Desculpe, mas voce ainda nao matou todos os " .. msg .. "s. Voce so matou " .. taskKills(cid, amoebaTask[msg].storagecount) .. " de " .. amoebaTask[msg].count .. " " .. msg .. "s.", cid) end else selfSay("O que?", cid) end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) somente vai mudar o script do npc
  21. Upvote
    JustinnoTibianno deu reputação a Sematico em [REMAKE] Sematico's Styller - YourOTS   
    XTibia!
     
    Sempre gostei muito do YourOTS Styller, por conta de ser fácil de upar e tudo ser muito perto. Mas o mapa sempre foi um problema para mim. Então decidi fazer um REMAKE dele.

    Vou manter tudo no mesmo lugar, só vou deixar o mapa mais agradável de jogar e bem menos bagunçado.

    Vou sempre postar uma foto do ANTES e em seguida, uma do DEPOIS do mesmo lugar. Por enquanto, vou postar apenas fotos pelo map editor. Ainda não compilei um servidor e só vou depois que terminar o mapa. E, então, começo a postar fotos ingame.

    Espero que gostem!

    OBS: clique nas imagens para ter uma visualização com a qualidade máxima!
    ____________

    Para começar, essa era uma das áreas menos utilizadas e mais feias do mapa. A saída sudeste da cidade.
    ANTES:


    DEPOIS:


     
    Essa parte aqui é bem conhecida. A montanha de cyclops!
    ANTES:


    DEPOIS:


     
    ____________

    Índice:
    1. Saída Sudeste 25.09.2015
    2. Montanha de Cyclops 25.09.2015
    3. Dragons I 27.09.2015
    4. Dragons II 09.10.2015
    5. Dragons III 12.10.2015
    6. Bueiro de Rotworms 24.10.2015
    7. Bar e o Porto da Cidade 09.11.2015
    8. Ilha das Hydras I 21.02.2016

    ____________

    Progresso:

    IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII 40%


  22. Upvote
    JustinnoTibianno deu reputação a Administrador em Montanhas - Vegetação e Temática   
    Montanhas - Vegetação e Temática
    Conceito por Daniel


    Olá meus caros xTibianos, vim trazer este tutorial que queria ter criado a muito tempo atrás. Bom, decidi finalmente retirar um tempo para me dedicar a seção e trazer uns conteúdos bacanas para vocês. Este tutorial, no que se propõe o tema, tem como objetivo mostrar o meu estilo de fazer montanhas detalhar, e aplicar temáticas nestas, também como deixá-las agradáveis no mapa (no meu ponto de vista).


    Dicionário do Mapper

    AutoMagic: Mais conhecido como Auto-border. AutoMagic são ferramentas que atravéz de códigos adicionam estruturas prontas no seu mapa. Isto é ruim em parte, pois você não possui tanta flexibilidade para fazer um mapa corretamente. Por outro lado, o AutoMagic proporciona uma rapidez na produção de mapas; muitos que utilizam o Remere's Map Editor reconhecem que mesmo não optando pelo AutoMagic ele pode ser útil muitas vezes.
     
    RPG Map: Significa que o mapa citado é um mapa RPG, ou seja, segue conceitos sem deixar passar nada. Para observar se um mapa é RPG, basta verificar se: Há boas opções de mobilidade (conforme o tema propõe); fora criada uma temática conforme o gráfico disponível; detalhes impressionam.
     
    Dirty: É um mapa sujo, normalmente contém mais detalhes que o necessário para aquela temática. Não é a mesma coisa que um mapa sujo propositalmente.
     
    Oversquare: Concede-se à mapas com a ausência de detalhes importantes, pode-se dizer que um mapa oversquare é um mapa que pode ser melhorado adicionando detalhes essenciais.
     

    • Montanhas no Tibia
    Diferente da vida real, o Tibia tem um estilo gráfico na perspectiva 45º. Isso dificulta sim o mapeamento de estilos próprios ditos "pessoais". No que se refere à este conceito, digamos que vários estilos de mapeamento de montanhas podem chegar ao mesmo resultado. O que muda são alguns aspectos que eu estarei mostrando mais adiante.
     

    Itens para Montanhas Simples

    Base






    Estrutura




    Complementos


    As montanhas do tibia são praticamente iguais (com algumas exceções). Esta montanha mostrada acima é a mais utilizada e bem simples de compreender. Veja que há dois complementos (bordas) que podem ser utilizados em várias situações.
    Para ter um controle melhor na hora de criar a base das montanhas, comece utilizando os itens id: 4476, 4477, 4478, 4479. Que são as bordas diagonais mais utilizadas nas partes internas e na rotação da montanha.

    ESTRUTURA



    A seguir, complete as bordas da estrutura com os itens id: 4468, 4469, 4470, 4471, 4472.



    Note que algumas partes permaneceram sem estas bordas, isto é porque a repetição contínua delas pode ser impedida, em conceito de oversquare, com detalhamentos melhores que não fogem do tema. Por exemplo:



    BASE
    A base é iniciada, no meu estilo, pelas bordas e grounds. Por que iniciar com bordas? Desse jeito, você pode controlar o espaço trabalhado e definir melhor o rpg. Veja um exemplo de base aceitável para a montanha acima.



    Seguindo então com as bordas secundárias e grounds:



    Agora basta detalhar e, se decidir, expandir a montanha. Crie a vegetação conforme a base. A inclinação (muitas vezes abstrata) pode ser vista utilizando o 'mountain top ground' em contraste com a grama. É utilizado na maior parte da temática natural. Veja como a vegetação se comporta ao redor da montanha:









    É importante estudar a temática que você vai trabalhar, pois utilizará diferentes itens dependendo da temática. Quando se fala em montanhas, pode-se pensar em diversos tipos de montanhas. Montanhas em ambientes úmidos, onde a vegetação toma conta; montanhas desérticas, onde se encontra apenas pedras e alguns arbustos; entre outras. Procure observar imagens que se aproximam ao seu conceito de montanha (para a temática que está trabalhando). Isso pode facilitar a produção do mapa.
    Já foi dito acima que é um pouco complicado imitar alguns detalhes da vida real em um mapa de tibia, como uma inclinação do terreno, ligando o chão a outro ponto mais superior sem "pular um andar" no Tibia. Veja a imagem "Temática", podemos repetir esta temática utilizando os recursos do tibia. Claro, não precisamos utilizar 100% da ideia, até porque os recursos gráficos do tibia podem não ser suficientes as vezes. Veja uma sugestão de adaptação (na temática Selva):

     



    Veja que a montanha não foi o foco da temática mas ficou dentro do tema por causa de sua estrutura. Os detalhes principais se ligam à montanha formando uma harmonia geral; isto talvez não seria possível utilizando AutoMagic, pois alguns detalhes exigem a movimentação de itens (um em cima do outro) e a manutenção manual de bordas. O mapa não chega a ser um mapa "Dirty", pois todos os itens adicionados indicam RPG. Por exemplo, perceba que o mapa em si obriga o jogador a andar somente na estrada, ele não tem mobilidade para sair aos lados, uma vez que a vegetação seja fechada propositalmente e tematicamente para dar ênfase à entrada na montanha.
    Nesse caso, a temática vai dizer: Existe algo dentro da montanha".
     
    Até onde devo seguir uma temática?
    Observando o Tibia global, podemos dizer que a temática se estende e se modifica ao longo de um continente. Se você for andando de Thais até venore, vai perceber uma diferença na vegetação e no terreno. Você deve se basear no tamanho total da área que será mapeada, uma selva deve conter o interior mais denso e a vegetação se dissipar conforme se afasta deste centro.
     
    Como repetir os detalhes sem machucar o tema?
    Os detalhes devem ser adicionados proporcionalmente conforme a estrutura do mapa, se a vegetação possuir pouca variação ela deve ser mais aberta.



    Desafio!
    Complete o mapa:


    Faça download do mapa abaixo e termine um dos mapas feitos para este tutorial, poste o resultado neste tópico. Use sua criatividade.
    Recompensa: 10REP
    Versão do Mapa: 8.60

    Complete o Mapa.zip

    IMPORTANTE
    Foram mais de 2 horas para eu fazer este tutorial, embora não tenha ficado tão bom quanto eu esperava, peço que vocês tenham ética e não o copiem. Se este tutorial for postado em outro fórum, reporte a mim. E se você pretende fazer isto, saiba que temos vergonha de pessoas como você, que dão ctrl + c/ctrl + v para ganhar reputação (uma reputação que não vale de nada). Portanto crie vergonha na cara e aprenda a fazer algo que não seja copiar o conteúdo dos outros.


     

  23. Upvote
    JustinnoTibianno deu reputação a Bruno em Vanaheim global open source   
    m método diferente de agir. Escolhas diferentes, um projeto surpreendente, e o melhor é open source. Sim, você pode ter acesso a este servidor que estou desenvolvendo em parceria com a Serversoft para você.

    Um servidor com uma mega estrutura para suportar seus jogadores online sem nenhum problema como: debug, bug de clonagem, instabilidade entre diversos outros dos servidores free's disponíveis para download nessa vasta internet tibiana.

    Uma inovação no ramo de OTservers, distribuindo não só a datapack como as sourcers e os sistemas, absolutamente tudo que você procura. Basta baixar, compilar... Mas eu não sei compilar. Não há problema nisso, o OTPanel da Serversoft faz tudo isso para você. Basta clicar num botão de "play" e ver a mágica acontecer.

    O projeto Vanaheim, foi criado com o intuito de ser inteiramente grátis para toda a comunidade. Um servidor no qual a diversão é o fator principal, um projeto com viabilidade absoluta por todos os tibianos.

    O projeto conta com uma área exclusiva no GitHub para que todos possam acompanhar a evolução do mesmo, dia a dia, diversas atualizações estarão disponíveis a todos. Desde uma action até uma modificação na source vocês terão acesso.

    O servidor conta com um mapa Global Full, quando eu digo full, quero dizer que está 99.99% do mapa completo, sem bugs entre outros.
    Um servidor que você escolhe a rate experience/skill que desejar, ele vai se adaptar! Você pode escolher se quer ou não que as quests tenham as missões originais 100%!
     

    GITHUB  
    Para acompanhar e baixar o servidor atualizado, segue o link do nosso projeto no GitHub:

     

    DOWNLOADS  
     
    Servidor
    Mapa
    Yasir
    Scan
     

    CRÉDITOS
    TFS Team
    Orts Project
     
  24. Upvote
    JustinnoTibianno deu reputação a Caronte em [Show off] Caronte (Daniel)   
    Alguns dos poucos:  
    [
     

     

     

     

     
     
     
     
  25. Upvote
    JustinnoTibianno deu reputação a Administrador em A Melhor Sprite - Resultados!   
    RESULTADO





    1º lugar - Lumus (15 reps + medalha de ouro)


    2º lugar - @Daniel & @The Jv (10 reps + medalha de prata)


    3º lugar - @LinaInverse (6reps + medalha de bronze)



    Parabéns a todos que participaram do concurso, espero ver mais participantes no próximo!


  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...