Ir para conteúdo

Líderes

Conteúdo Popular

Exibindo conteúdo com a maior reputação em 11/08/23 em todas áreas

  1. 2 pontos
    Olá galera, em 02/12/23 o projeto Canary atualizou seu release para a versão 3.1.2 e como estou desenvolvendo um servidor usando esta base decidi divulga-la, pois a cada dia ela melhor muito, é um projeto promissor. Para quem não conhece, Canary é um projeto desenvolvido no github de um servidor completo na versão 13.21 (atualmente) com todas as features do tibia global. Ele tem duas opções de datapack que seriam o global e um custom. Aqui está o link do projeto para quem quiser conhecer melhor: https://github.com/opentibiabr/canary Aqui está o link do lançamento do release para a versão 3.1.2 e suas mudanças e melhorias: https://github.com/opentibiabr/canary/compare/v3.1.1...v3.1.2 Aqui está o link do discord do projeto para dúvidas e etc: https://discord.com/invite/gvTj5sh9Mp Aqui está o link de tutoriais e a documentação do projeto: https://docs.opentibiabr.com/home/welcome Algumas das features existentes no projeto: BOOSTED CREATURE: EVENT SCHEDULE: CYCLOPEDIA: CHARMS: DAILY REWARD: PREY: IMBUEMENTS: MARKET: STORE: CUSTOM CHARACTERS: DENTRE MUITOS OUTROS!
  2. MercadoPago Retorno automatico (PIX)

    BrunoWots reagiu a Qwizer por uma resposta no tópico

    1 ponto
    MercadoPago Retorno automatico (PIX) Abaixo Segue código PHP de pagamento via pix pelo mercado pago com retorno para quem quiser adaptar em seus sites ter uma direção de onde ir testado em Znote e MyAcc. pix.zip https://mega.nz/folder/m4QkWBLS#PIvJ_scVm7w8-5FLlStTHg
  3. (Resolvido)HELP House Doors TFS 0.4

    AMokk reagiu a Underewar por uma resposta no tópico

    1 ponto
    Movido para a area correta mais atenção na proxima. Acho que você esta com problemas no RME na hora de cadastrar casas então você pode configurar portas diretamente no seu RME data/ClientVersion/Walls.xml Configure as portas corretamente e use F5 apartir disso deve ser possivel inserir houseids nas portas normalmente. Pelo que vejo não ha problemas no sistemas de portas no servidor.
  4. TAG XML. <event type="login" name="AntiMc" event="script" value="AntiMc.lua"/> LUA. function doKickPlayerIf(cid) if isPlayer(cid) then doRemoveCreature(cid) return true end return false end function onLogin(cid) local ips_permitidos = 3 -- configure aqui quantos jogadores podem logar com o mesmo ip local players = getPlayersOnline() local playerip = getPlayerIp(cid) local i = 0 for _,pid in ipairs(players) do if getPlayerIp(pid) == playerip then i = i + 1 end end if i > ips_permitidos then doTeleportThing(cid,getTownTemplePosition(getPlayerTown(cid))) doPlayerSendTextMessage(cid,MESSAGE_STATUS_WARNING,'Seu IP foi detectado pelo Anti-MC. Voce sera kickado em 5 segundos.') mayNotMove(cid,true) addEvent(doKickPlayerIf,5000,cid) end return true end Quando for postar na próxima vez, não esqueça de incluir informações sobre o seu TFS e a versão, ok?
  5. ElfBot Windows 10 fix - dash/light & minimize

    Learner reagiu a Cjaker por uma resposta no tópico

    1 ponto
    Heyo, estou disponibilizando essa DLL pelo motivo de ter corrigido os problemas que ocorrem ao usar no Windows 10 pra dois amigos e em relação à um tópico antigo que requisitaram o fix, sintam-se a vontade pra usar. Testei as funções básicas do ElfBot, incluindo dash, minimize e lighthack, até o momento não tive problemas. Caso encontre algum favor, notificar neste tópico. Tutorial: apenas mova pra pasta do seu ElfBot substituindo a dll deles, simples não? elfbot.dll Download: Em anexo no tópico VirusTotal: https://www.virustotal.com/gui/file/dfa6e58b0ec56a0d199960867dd96ecdc04c2d7381bc2022977be6d7fd9d38f0/detection
  6. Dash.

    Kranxz reagiu a xWhiteWolf por uma resposta no tópico

    1 ponto
    Uma magia que solta um dash, que é controlado ao mudar a direção que você está olhando (ctrl + seta) ~~~~Script baseado no AvaOT/Korelin dash.lua -- dash as it was in avaOT by Night Wolf local damage = 20 -- dano que toma qnd bate em algum obstáculo local speed = 910 -- velocidade do player ao usar o dash (vai de 0 a mil) local pzprotect = true -- nao deixa entrar em pz com a spell local distance = 15 -- quantos sqms anda local function isWalkable(pos, creature, proj, pz)-- by Nord if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false end if getTopCreature(pos).uid > 0 and creature then return false end if getTileInfo(pos).protection and pz then return false, true end local n = not proj and 3 or 2 for i = 0, 255 do pos.stackpos = i local tile = getTileThingByPos(pos) if tile.itemid ~= 0 and not isCreature(tile.uid) then if hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) then return false end end end return true end function onWalk(cid) if isCreature(cid) then local poslook = getCreatureLookPosition(cid) poslook.stackpos = STACKPOS_TOP_MOVEABLE_ITEM_OR_CREATURE if isWalkable(poslook, false, false, pzprotect) then if not isCreature(getThingfromPos(poslook).uid) then doMoveCreature(cid, getPlayerLookDirection(cid)) doSendMagicEffect(getPlayerPosition(cid), 14) else doCreatureAddHealth(cid, -damage) doSendMagicEffect(getPlayerPosition(cid), 31) doSendAnimatedText(getPlayerPosition(cid), "-"..damage , 180) end else doCreatureAddHealth(cid, -damage) doSendMagicEffect(getPlayerPosition(cid), 31) doSendAnimatedText(getPlayerPosition(cid), "-"..damage , 180) end end return true end function onCastSpell(cid, var) for i = 0, distance do addEvent(onWalk, (1001- math.min(speed, 1000)) *i, cid) end return true end no começo você edita o dano que recebe ao bater num obstáculo e aqui local distance = 15 você configura a distancia máxima que o player percorre antes do dash acabar. no Spells.xml você adiciona essa tag aqui <instant name="Dash" words="utani dash hur" direction="1" lvl="100" mana="200" prem="1" exhaustion="7000" event="script" value="dash.lua"> <vocation id="7"/> <vocation id="6"/> <vocation id="5"/> </instant> EDIT:: ALGUMAS IMAGENS
  7. Experience Weapon System

    JowL reagiu a xWhiteWolf por uma resposta no tópico

    1 ponto
    Eai galera, hoje eu to trazendo pra vocês o meu Experience Weapon System. Pra quem não conhece é um sistema em que conforme você vai matando os monstros sua arma vai adquirindo parte da experiencia e upando de nível junto com você! Eu abri um tópico pra sugestões mas os players foram tão criativos que eu decidi seguir meus instintos e fazer da minha própria maneira se não ia ficar muito ruim pra servers que não fossem derivados. Testado em TFS 0.3.6 mas deve funcionar em qualquer um que tenha getThing(Pos) e onAttack e onKill ;] Foi decidido por mim então fazer da seguinte maneira: • Axes/ Swords/ Bows/ Crossbows: Tem 5% de chance (pra cada nivel) de ferir gravemente o oponente e deixar ele sangrando, o nível do ferimento é proporcional ao nível da arma. • Clubs: Tem 5% de chance (pra cada nivel) de bater com tanta força que faça todos ao redor sentirem o tremor do seu ataque e levarem um dano baseado no nivel da arma e no ataque da mesma. • Wands/ Rods: Tem 5% de chance (pra cada nivel) de retirar uma quantidade de mana do player (proporcional ao nivel da arma) e ficar recuperando mana mais rapidamente durante 5 segundos após isso Dito isso vamos ao que interessa: Adiciona essas duas linhas no seu creaturescripts.xml: <event type="kill" name="itemexp" script="itemexp.lua"/> <event type="attack" name="conditionitem" script="conditionitem.lua"/> e no login.lua: --------------- Experience System ---------------- registerCreatureEvent(cid,"itemexp") registerCreatureEvent(cid,"conditionitem") Agora crie um arquivo em data\lib\ chamado 037 - Experience System.lua e coloque isso dentro dele: Feito isso crie um arquivo em creaturescripts\scripts chamado itemexp.lua e adicione isso daqui: Agora crie outro arquivo em creaturescripts\scripts, adicione isso daqui nele e chame de conditionitem.lua: Agora configurando: Obs: tudo que está no local um serve pros locais dois, tres, quatro e cinco pra configurar o nivel de sangramento em cada nível, tanto a velocidade que sangra como o dano que sai. No caso, sendo nivel 1 ele vai tirar 3x de -5, 3x de -3 e 3x de -2 antes de sumir, isso dá -30 de dano total em 9 segundos. Bom, é isso aí, a minha idéia era trazer um pouco a mais de RPG e fazer o pessoal pensar 2x antes de sair trocando suas armas pela primeira que ele dropa que tenha + ataque que a dele pois assim ele passa a ter que valorizar mais os itens que já possui a um bom tempo; Outro motivo é que agora os items vão valer mais e agora seu server vai ter mais movimento nas trocas ;] Espero que tenham gostado e qualquer coisa é só falar nos comentários. Abraço do lobinho. Ps: aqui tem duas fotinhas mas o resto só instalando mesmo porque tem bastante coisa pra mostrar. E lembrando, se te ajudei clica em Gostei aqui embaixo. Fuis
  8. Acentos no cliente

    Kramer reagiu a luanluciano93 por uma resposta no tópico

    1 ponto
    Certamente todos aqueles que já programaram em C e C++ por console repararam que no momento de 'escrever' os acentos não aparecem correctamente, isto acontece devido a serem caracteres especiais da tabelas ASCII. No entanto é possível contornar esta situação recorrendo a uma biblioteca e uma função específica. Para a correta utilização dos acentos é necessário usar a biblioteca: “#include <tchar.h>” e também a função: “_tsetlocale(LC_ALL, _T(“portuguese”));”. Aqui fica a implementação de um pequeno exemplo que demonstra a correto forma de 'escrever' acentos no console: #include <iostream> #include <windows .h> #include <tchar .h> using namespace std; int main() { _tsetlocale(LC_ALL, _T("portuguese")); cout < < "Acentuação."; return 0; } Espero ter ajudado :*
  9. (Resolvido)Bônus no Conjunto de itens

    Kranxz reagiu a xWhiteWolf por uma resposta no tópico

    1 ponto
    segue essa lógica: movements\scripts\set.lua: -- NW SET SYSTEM local config = { slot1 = 4, slot2 = 8, item1 = 8889, item2 = 11234 } local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, -1) setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, 50) setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, 50) setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, 50) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, 50) function onEquip(cid, item, slot) if getPlayerSlotItem(cid, config.slot2).itemid == config.item2 and getPlayerSlotItem(cid, config.slot1).itemid == config.item1 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Now that you're using the full set you'll receive a special bonus...") doAddCondition(cid, condition) doSendMagicEffect(getCreaturePos(cid), 10) end return true end function onDeEquip(cid, item, slot) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You're no longer receiving the special bonus..") doRemoveCondition(cid, CONDITION_ATTRIBUTES) return true end movements.xml <!-- Set Items --> <movevent type="Equip" itemid="11234" slot="feet" event="script" value="set.lua"/> <movevent type="Equip" itemid="8889" slot="armor" event="script" value="set.lua"/> <movevent type="DeEquip" itemid="11234" slot="feet" event="script" value="set.lua"/> <movevent type="DeEquip" itemid="8889" slot="armor" event="script" value="set.lua"/>
  10. (Resolvido)Bônus no Conjunto de itens

    Kranxz reagiu a xWhiteWolf por uma resposta no tópico

    1 ponto
    adorei a ideia mas não sei ao certo como fazer.. vou tentar aqui e te dou um feedback dos meus avanços. Ao que o jeito seria criar uma condition que desse o atributo a mais em questão e fazer um creaturescripts q se tivesse com o set adicionaria a condition.. como se fosse uma magia mesmo
Líderes está configurado para São Paulo/GMT-03:00

Informação Importante

Confirmação de Termo