Ir para conteúdo

KekezitoLHP

Membro
  • Registro em

  • Última visita

Tudo que KekezitoLHP postou

  1. vai no site https://www.virustotal.com/pt/ ,é facil e poste ai, colaca mais fotos
  2. Muito bom pra da uma missão pro jogador, só tiraria a shovel colocaria a pick, shovel quebrado pedra?
  3. KekezitoLHP postou uma resposta no tópico em Suporte Tibia OTServer
    function onUse(cid, item, frompos, item2, topos, acc, days) if getPlayerStorageValue(cid, 22930) == -1 then if days > 0 then local daysValue = 3 * 24 * 60 * 60 local vipTime = getVipTimeByAccount(acc) local timeNow = os.time() local time = getVipDaysByAccount(acc) == 0 or > and (timeNow + daysValue) or (vipTime + daysValue) setVipTimeByAccount(acc, time) else doPlayerSendTextMessage(cid,22,"Você já pegou sua recompensa.") return FALSE end end não testei por completo, pois não uso seu script vip, no console não deu nenhum erro teste no seu e me fale OBS peguei o script daqui, caso não seja o correto me fale
  4. Muito bom, vão lança quando?,vão tambem disponibiliza a soures?
  5. en todas as magias embaixo de function onCastSpell(cid, var) se coloca isso. se não quem esta vendo vai usa magias
  6. Bom esse codigo não protege você de ataques DoS, ele simplesmente salvar tudo se internet cai, codigo simples mais ajuda um pouco, "sei que é ruim pra ca*****, seu ot cai e os jogadores fala eu tinha x lvl, tinha x item e você fica em duvida acaba dado as coisas pra não perde jogador" P: Mas como ver isso ? R: Ele ve se o site do www.google.com esta respondendo, se estiver, não entra em ação o código, se não estiver respondendo, o código entra em ação e nenhum player perde nada P: Se meu otserv cai por um bug ou eu fecho vai salva ? R: NÃO, so funciona com FALTA DE INTERNET, explicação melhor seu ot travo, o distro vai no google.com não abriu ele SALVA P:Como ele salva sem internet? R: o otserv não precisa de internet pra funciona apenas pra você se loga de um outro computador, um caso é abri o otserv com o ip 127.0.0.1, ele entra, salva etc. P: O QUE É DoS R: https://pt.wikipedia.org/wiki/DOS P: To live de nukes ? R NÃO, ele apenas uma solução pra ajuda a não ter muitos danos com rollback "volta no tempo" ELE NÃO FUNCIONA PRA DDoS, mais se seu caso for falta de internet ele salva RECOMENDADO: Use uma source de teste, teste tudo e muito bem, antes de coloca distro dentro do servidor oficial,LEMBRADO É DENTRO DAS SOURCE NÃO NA PASTA DATA Chega de blablabla e vamos la Em game.cpp, procure #include "talkaction.h" #include "spells.h" #include "configmanager.h" em baixo adicione: #include "tools.h" Procure : Game::Game() { em baixo adicione: #ifdef __UCB_DDOS_PROTECTION__ connectionTestFalseValidUntil = std::time(NULL) + 2*60; //Ignore verification in first 2 minutes connectionTestTrueValidUntil = connectionTestFalseValidUntil; connectionTestOk = true; #endif e na ultima linha adicione: #ifdef __UCB_DDOS_PROTECTION__ bool Game::isOutSideWorldResponding(){ uint32_t now = std::time(NULL); if( !connectionTestOk ){ if( now > connectionTestFalseValidUntil ){ //Redo test connectionTestOk = isWorldReachable(); connectionTestFalseValidUntil = now + 60; //False result is valid for 60 seconds } } else { if( now > connectionTestTrueValidUntil ){ //Redo test connectionTestOk = isWorldReachable(); connectionTestTrueValidUntil = now + 10; //Ok result is valid for 10 secongs } } return connectionTestOk; } #endif Em game.h, procure void internalCreatureChangeVisible(Creature* creature, bool visible); void changeLight(const Creature* creature); #ifdef __SKULLSYSTEM__ void changeSkull(Player* player, Skulls_t newSkull); #endif em baixo adicione: #ifdef __UCB_DDOS_PROTECTION__ bool isOutSideWorldResponding(); #endif Procure : uint32_t inFightTicks; uint32_t exhaustionTicks; uint32_t fightExhaustionTicks; Adicione: #ifdef __UCB_DDOS_PROTECTION__ bool connectionTestOk; uint32_t connectionTestTrueValidUntil; uint32_t connectionTestFalseValidUntil; #endif Em tools.cpp Adicione após a ultima linha: #ifdef __UCB_DDOS_PROTECTION__ bool isWorldReachable(){ int32_t ret; #if defined __WINDOWS__ ret = system("ping -n 1 -w 500 google.com > NUL"); #else ret = system("ping -q -c 1 -w 1 google.com > /dev/null"); #endif return (ret == 0); } #endif Em tools.h Adicione após a ultima linha: #ifdef __UCB_DDOS_PROTECTION__ bool isWorldReachable(); #endif Em player.cpp troca: if(skillLoss){ Por: #ifdef __UCB_DDOS_PROTECTION__ if(skillLoss && g_game.isOutSideWorldResponding()){ #else if(skillLoss){ #endif Troca experience -= getLostExperience(); Por: #ifdef __UCB_DDOS_PROTECTION__ if( g_game.isOutSideWorldResponding() ){ experience -= getLostExperience(); } #else experience -= getLostExperience(); #endif Agora vai em parametros e adicione no final -D__UCB_DDOS_PROTECTION__
  7. Entra no phpadmin "não sei se escrevi certo" e coloca na conta do adm acesso 3 no site ver se no lado do relogio do pc não tem nada como admin algo assim
  8. Eu usei por 1 mes normal, nunca deu nenhum tipo de bug com ele e sim outras coisas do ot "script mal feito,bug no map etc" , tenho um amigo que usa ele a pelo menos uns 3 meses, unica coisa q ele fala que raramente da debug em algum char, se abre tv algumas vez não vai mais so esses tbm, parei de usa ele depois que consegui o original Posta ai pra galera que precisa
  9. Não está faltado nada... ele não é aquele cast tv que tem em muitos ots como do globalwar, ele é apenas uma replica meia boca mais que funciona, ele não da crash pelo menos comigo não e nem com outras pessoas que testou ou usa esse sistema...
  10. sim esqueci de coloca versao teste =s TFS 8.6 0.4 E TFS 0.3.6 8.6
  11. Se foi no shop do administrador ou do usuario ?
  12. Bom galera com muita gente quer o tal cast tv está ai, LEMBRADO É SISTEMA REPLICA DO PARAGUAI , ENTÃO BOM USO Versão testada: TFS 8.6 0.4 e TFS 0.3.6 8.6 Comandos utilizados in-game: !cast on -- Ativa o seu Cast System, e permite os outros jogadores te assistirem; !cast off -- Desativa o seu Cast System; !cast exit -- Você sai do Cast no qual está assistindo; !cast NAME -- Começa a assistir um jogador (NAME). Instalação Vá em data/talkactions/scripts crie um arquivo chamado castSys.lua e adicione o seguinte código dentro do mesmo: --[[ Perfect Cast System 1.0 by Roksas ]]-- function onSay(cid, words, param) local player = getPlayerByName(param) if not isInArray({"list", "exit", "off", "on"}, param) and not param or param == "" then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "Enter the name of the player, which you want to cast in parameters.") return true end if param == "on" then if getPlayerStorageValue(cid, 10359) >= 1 then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "Your Cast System is already running ONLINE!") return true end castOn(cid) doSendMagicEffect(getThingPos(cid), 39) doPlayerSendTextMessage(cid, 20, "You have activated your Cast System, now others can cast you, to disable this feature, use the parameter '!cast off'.") return true end if param == "off" then if getPlayerStorageValue(cid, 10359) < 1 then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "Your Cast System is already OFFLINE!") return true end castOff(cid) doSendMagicEffect(getThingPos(cid), 39) doPlayerSendTextMessage(cid, 20, "You have disabled your Cast System, from now on no one can watch you, unless you turn on the Cast, using the parameter '!cast on'.") return true end if param == "exit" then if getPlayerStorageValue(cid, 12269) < 1 then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "You no are casting players.") return true end cancelCast(cid) doSendMagicEffect(getThingPos(cid), 39) doPlayerSendTextMessage(cid, 20, "You stopped casting, use the parameter '!cast list' to see who can be casted.") return true end if param == "list" then if #whoCasted() < 1 then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "At this time, no player can be casted, try again later.") return true end doPlayerSendTextMessage(cid, 20, "Players can be casteds:\n\n") for k, v in ipairs(whoCasted()) do doPlayerSendTextMessage(cid, 20, " - "..getCreatureName(v).."") end return true end if not isPlayer(player) then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "This player is offline or does not exist. Use the parameter '!cast list' to see who can be casted.") return true end if getPlayerStorageValue(player, 10359) < 1 then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "You can only cast one person with the Cast System is activated, use the parameter '!cast list' to see who can be assisted.") return true end if getPlayerStorageValue(cid, 10359) >= 1 then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "To cast a player, you must first disable your Cast System using the parameter '!cast off'.") return true end if not getTileInfo(getThingPos(cid)).protection then return doPlayerSendTextMessage(cid, 20, "You need enter in Protection Zone to use the Cast System.") and true end setPlayerStorageValue(cid, 12269, 1) castPlayer(cid, player) doSendMagicEffect(getThingPos(cid), 39) doPlayerSendTextMessage(cid, 20, "You are casting the player "..getCreatureName(player)..", to exit just use the command '!cast exit'.") doPlayerSendTextMessage(player, 20, "You are casted by "..getCreatureName(cid).." player to disable your Cast, simply use the parameter '!cast off'.") return true end function cancelCast(uid) mayNotMove(uid, false) doCreatureSetHideHealth(uid, false) setPlayerStorageValue(uid, 12269, -1) doRemoveCondition(uid, CONDITION_OUTFIT) return doTeleportThing(uid, getTownTemplePosition(getPlayerTown(uid))) or doTeleportThing(uid, getPlayerMasterPos(uid)) and true end function castOn(uid) return setPlayerStorageValue(uid, 10359, 1) and true end function castOff(uid) return setPlayerStorageValue(uid, 10359, -1) and true end function castPlayer(uid, player) if not isPlayer(player) then cancelCast(uid) return true end if getPlayerStorageValue(player, 10359) < 1 then cancelCast(uid) return true end if getPlayerStorageValue(uid, 12269) < 1 then cancelCast(uid) return true end mayNotMove(uid, true) doSetItemOutfit(uid, 1934, -1) doCreatureSetHideHealth(uid, true) doTeleportThing(uid, getThingPos(player)) return addEvent(castPlayer, 1 * 1000, uid, player) and true end function whoCasted() local casteds = {} for _, pid in ipairs(getPlayersOnline()) do if getPlayerStorageValue(pid, 10359) >= 1 then table.insert(casteds, pid) end end return #casteds > 0 and casteds or {} end Volte uma pasta (data/talkaction) abra com algum editor de texto o arquivo talkactions.xml e adicione essa tag em qualquer lugar: <talkaction words="!cast;/cast" event="script" value="castSys.lua"/> Muito bem, após isso siga para a pasta data/creaturescripts/scripts, faça o mesmo, crie um arquivo chamado castSys.lua e adicione isso function onLogout(cid) if getPlayerStorageValue(cid, 12269) > 0 then doPlayerSendCancel(cid, "To logout, you need to exit the Cast System first. Use the parameter '!cast exit'.") return false end setPlayerStorageValue(cid, 10359, -1) return true end function onStatsChange(cid, attacker, type, combat, value) if not isCreature(cid) then return true end if getPlayerStorageValue(cid, 12269) >= 1 and isMonster(attacker) or isPlayer(attacker) then return false end return true end function onAttack(cid, target) if not isPlayer(cid) or not isPlayer(target) then return true end if getPlayerStorageValue(cid, 12269) > 0 then doRemoveCondition(cid, CONDITION_INFIGHT) return false end return true end Já no arquivo creaturescripts.xml, você vai adicionar essa tag: <event type="attack" name="castAttack" event="script" value="castSys.lua"/> <event type="statschange" name="castHits" event="script" value="castSys.lua"/> <event type="logout" name="castLogout" event="script" value="castSys.lua"/> E no arquivo login.lua você vai adicionar essas 3 linhas: registerCreatureEvent(cid, "castAttack") registerCreatureEvent(cid, "castHits") registerCreatureEvent(cid, "castLogout") Para que o player que está assitindo ao outro não use magias enquanto está assistindo, coloque essas linhas abaixo dentro de cada script das magias, debaixo da linha: function onCastSpell(cid, var) Coloque: if getPlayerStorageValue(cid, 12269) >= 1 then return false end Prontinho galera, basta reiniciar o servidor e usar, é isto por hoje, espero que tenham gostado, ideias/sugestões para futuras versões, bugs ou críticas sobre o sistema, basta deixar um simples comentário aí no tópico, estarei aqui para atendê-los.
  13. KekezitoLHP postou uma resposta no tópico em Suporte & Pedidos
    Bom como todos eventos de otserv são pra mata outro jogador, tive uma ideia de fazer diferente.... Ideia: apenas oito (8) jogadores, ficaria na posição e um puxa a alavanca, voa la eles estão na sala, enquanto eles tive nessa sala "mais ou menos a inq" matado monstros em conjuto ate chega no teleport final. Enquanto tive jogador la dentro a alavanca não pode se usada, se o player morreu volta pro templo, pra pode libera a sala novamente todos tem q acaba ou morre, eles teria um tempo de 1 hora pra acaba se não todos vão pro templo e a alavanca abre de novo para novos jogadores tenta, os jogadores que completo a missao so pode volta a usa a missao daqui 10 min Objetivo: todos os jogadores tem que se uni pra chega a afinal, com uma falha de alguém pode fude tudo Map: pessoa que for instala script faça Para tibia 8.6 + Não sei se é pedir muito mais se caso você escolher fazer esse script se poderia me passa? antes de fazer algo que se queria com ele ?, tentei fazer ele mais não consegui
  14. Vish cara se sincero, quem tem não passa ainda mais o sem bug, vamos dizer o perfeito, ai só comprado com alguém mais mesmo assim, "pra que se vai vende algo que é inovador e pode trazer jogadores para seu otserv?" nem na net existe o sem bug com executario,sistema e o config.lua...
  15. eu nao testei em 9.60.. so copia e colar e veja se funciona....
  16. KekezitoLHP postou uma resposta no tópico em Tutoriais Websites
    Porque do Tutorial Já vi muitos sites que quando colocam acentos aparece algo assim: � (ou vários caracteres non sense) Então fiz esse tuto para ajudar aqueles que tem site que "buga" os acentos. Introdução * Vá até a pasta C:\xampp\htdocs\layouts\tibiacom (ou onde esteja instalado o layout do site) * Abra o arquivo layout.php * Procure por <meta http-equiv="content-type" * Deverá estar assim: <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> (ou algo parecido) * Mude para: <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1"/> Finish! Agora o site está funcionando com todos os acentos! x)
  17. Nome do Script: Upgrade System Verção testada: 8.60 TFS Descrição: Item que ao usar em uma arma ou equipamento o modifica deixando-o assim melhor (mais resistente/Forte) Imagem 1º vá na pasta de seu servidor e entre data/actions/scripts e crie um novo arquivo chamado Upgrade.lua Dentro deste arquivo coloque o seguinte código: function onUse (cid, item, fromPosition, itemEx, toPosition) -- Não Mecha if(itemEx.itemid == 7385) then -- ID Do item a ser transformado doRemoveItem(item.uid) doTransformItem(itemEx.uid, 8209) -- ID do item Após Transformação doSendMagicEffect(toPosition, 28) -- ID do efeito que irá aparescer doSendAnimatedText(toPosition,"Upgrade!",TEXTCOLOR _YELLOW) -- Menssagem que irá aparescer return true end end após isso volte em data/actions e abra actions.xml e adicione a seguinte linha: <action itemid="ID do Item" event="script" value="upgrade.lua"/> Coloque o ID de sua pedra de Upgrade Como adicionar mais itens ? Simples basta pegar o script e Copiar as seguintes linhas: if(itemEx.itemid == 7385) then doRemoveItem(item.uid) doTransformItem(itemEx.uid, 8209) doSendMagicEffect(toPosition, 28) doSendAnimatedText(toPosition,"Upgrade!",TEXTCOLOR _YELLOW) return true end e coloca-las novamente (lembrando de editar) Ficando de assim: function onUse (cid, item, fromPosition, itemEx, toPosition) if(itemEx.itemid == 7385) then doRemoveItem(item.uid) doTransformItem(itemEx.uid, 8209) doSendMagicEffect(toPosition, 28) doSendAnimatedText(toPosition,"Upgrade!",TEXTCOLOR _YELLOW) return true end end Para Assim: function onUse (cid, item, fromPosition, itemEx, toPosition) if(itemEx.itemid == 7385) then doRemoveItem(item.uid) doTransformItem(itemEx.uid, 8209) doSendMagicEffect(toPosition, 28) doSendAnimatedText(toPosition,"Upgrade!",TEXTCOLOR _YELLOW) return true end if(itemEx.itemid == 8209) then doRemoveItem(item.uid) doTransformItem(itemEx.uid, 7391) doSendMagicEffect(toPosition, 28) doSendAnimatedText(toPosition,"Upgrade!",TEXTCOLOR _YELLOW) return true end
  18. Nome do Script: Ganhar Montaria Nome do Autor: KekezitoLHP Servidor Testado e/ou Versão do Tibia: TFS 0.4 (8.70) Descrição e/ou Informações Adicionais: Ao fazer login vc automaticamente ganhará uma específica montaria. No arquivo creaturescript.xml adicione está linha: <event type="login" name="Montaria" event="script" value="montaria.lua"/> Crie um arquivo com o nome montaria.lua dentro da pasta scripts e coloque isso dentro: local montaria = IDDAMONTARIA function onLogin(cid) if getPlayerStorageValue(cid, 37561) == -1 then doPlayerAddMount(cid, montaria) setPlayerStorageValue(cid, 37561, 1) doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Por ter feito seu primeiro login no servidor, você acabou de ganhar uma montaria!") end return TRUE end No arquivo login.lua adicione está linha: registerCreatureEvent(cid, "Montaria")
  19. KekezitoLHP postou uma resposta no tópico em Scripts tfs 0.4 (OLD)
    so funciona no tfs 0.4
  20. Vai em globalevents cria um arquivo com qualquer nome e dentro coloque isso local config = { positions = { ["Mpa"] = { x = 1465, y = 569, z = 9 }, ["1kk"] = { x = 1467, y = 569, z = 9 }, ["Elemental"] = { x = 1470, y = 569, z = 9 }, ["Champions"] = { x = 1472, y = 569, z = 9 }, ["Great"] = { x = 1475, y = 569, z = 9 }, ["wind/eart"] = { x = 1477, y = 569, z = 9 }, ["Royal´s"] = { x = 1480, y = 570, z = 9 }, ["Arena"] = { x = 1480, y = 572, z = 9 }, ["Weapons"] = { x = 1480, y = 576, z = 9 }, ["Inq"] = { x = 1480, y = 581, z = 9 }, ["Demon Ork"] = { x = 1480, y = 586, z = 9 }, ["Dwarven"] = { x = 1480, y = 591, z = 9 }, ["TopsQuest"] = { x = 1480, y = 596, z = 9 }, ["Dh"] = { x = 1473, y = 596, z = 9 }, ["Big Quest"] = { x = 1473, y = 591, z = 9 }, ["Anni"] = { x = 1473, y = 586, z = 9 }, ["Poi"] = { x = 1473, y = 581, z = 9 }, ["Armor´s"] = { x = 1473, y = 576, z = 9 }, ["Dragon"] = { x = 1467, y = 573, z = 9 }, ["Lala"] = { x = 148, y = 573, z = 9 }, ["Hunts"] = { x = 1477, y = 573, z = 9 }, ["Quest"] = { x = 1477, y = 573, z = 8 }, ["Runas"] = { x = 796, y = 23, z = 6 }, ["Templo"] = { x = 803, y = 23, z = 7 }, ["Boss"] = { x = 1486, y = 574, z = 8 }, } } function onThink(cid, interval, lastExecution) for text, pos in pairs(config.positions) do doSendAnimatedText(pos, text, math.random(1, 255)) end return TRUE end os que não quise só tira ou edita <globalevent name="tiles" interval="2000" script="NOMEDOARQUIVO.LUA"/> Qualquer coisa so pergunta
  21. Autor: Eu mesmo Versão do tibia: 8.6 Descrição: O script tira o battle ao entrar em alguma área pz. 1° Passo: Abra o arquivo creaturescripts.xml localizado em: PastaDoOT/data/creaturescripts/ adicione a linha: <event type="think" name="TiraBattle" event="script" value="tirabattle.lua"/> 2° Passo: Abra a pasta "scripts" e abra o arquivo login.lua E adicione: registerCreatureEvent(cid, "TiraBattle") 3° Passo: Ainda na pasta scripts, crie o arquivo: tirabattle.lua e adicione o seguinte: function onThink(cid, interval) if(getTilePzInfo(getCreaturePosition(cid))) then doRemoveCondition(cid, CONDITION_INFIGHT) end end Pronto, o script foi adicionado ao seu servidor! Qualquer dúvida poste aqui embaixo. Abraços!
  22. KekezitoLHP postou uma resposta no tópico em Scripts tfs 0.4 (OLD)
    Nome: Target Spell Autor: Socket Versão: 0.1.0 Versão Testada: 8.54, TFS 0.3.6 Informações Adicionais Quando a magia é lançada, caso você tenha target, a magia vai "seguindo" o target, caso não tenha, ela se movimenta na mesma direção que a pessoa que usou está olhando. Lembrando que se você muda de target, ela segue o novo, e se você matar o target, ou não tiver com nenhum alvo marcado, ela começa a andar na direção que você está olhando. Bem, acho que já expliquei tudo nas Informações Adicionais. No processo de instalação, x será o nome do arquivo, que você deverá escolher. Em data/spells/scripts crie um arquivo chamado x com extensão .lua e mude seu conteúdo para isso: local config = { jumps = 50, walktime = 500 } combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TARGETCASTERORTOPMOST, true) setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREATTACK) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -10, -1, -15, 5, 5, 1.8, 3, -20, -40) function onCastSpell(cid) function move(cid, pos, n) local n = n or 0 if (n < config.jumps) then if (isCreature(cid)) then local pos = pos or getCreaturePosition(cid) local target = getCreatureTarget(cid) local dir = (target ~= 0) and getDirectionTo(pos, getCreaturePosition(target)) or getCreatureLookDirection(cid) local tpos = (target ~= 0) and getCreaturePosition(target) local newPos if ((target ~= 0) and ((pos.x == tpos.x) and (pos.y == tpos.y))) then newPos = tpos else newPos = getPosByDir(pos, dir) end if ((getTopCreature(newPos).uid == 0) and doTileQueryAdd(cid, newPos) ~= 1) then return false end doCombat(cid, combat, { pos = newPos, type = 2 }) addEvent(move, config.walktime, cid, newPos, n + 1) end end end move(cid) return true end Em data/spells abra o arquivo spells.lua e adcione a seguinte tag: <instant name="Target Spell" words="x" lvl="100" maglv="10" mana="500" exhaustion="30000" prem="1" enabled="1" script="x.lua"/> Lembre de escolher as words, (x) e arrumar o nome em script. Configuração local config = { jumps = 50, walktime = 500 } Em jumps, você defini quantos "passos", a magia pode dar, lembrando que quando a magia "chega" no alvo, cada ataque que ela dá conta como 1 passo. Em walktime, você defini o tempo de um "passo", lembrando que é o mesmo tempo do dano, no caso o alvo esteja imóvel. Se quiser editar alguma coisa, no efeito ou dano, edite o combat, no script. Bem, é só isso, como eu estou sem conexão com a internet, e estou na escola, nem deu para botar SS. Configure e gogo se divertir.
  23. KekezitoLHP postou uma resposta no tópico em Tutoriais Websites
    Tutorial: Como configurar o seu Gesior para mandar emails e assim poder recuperar a conta, pedir novas Recovery Keys, etc. Você pode configurar a vontade. O que você ira precisar: *Uma conta no GMAIL (Sim, tem que ser no GMAIL) *Desbloquear a porta 465 no seu firewall, antivirus, etc *Usar o Gesior (obviamente) Primeiro Passo: Configurando o config.php *Abra a pasta config e abra o config.php, procure pelo trecho a seguir e configure como manda: // E-MAIL config $config['site']['send_emails'] = 1; // Aqui deixe 1 $config['site']['mail_address'] = "[email protected]"; // Seu e-mail do GMAIL $config['site']['smtp_enabled'] = "yes"; // Aqui deixe yes $config['site']['smtp_host'] = "smtp.googlemail.com"; // Aqui deixe o que esta mesmo $config['site']['smtp_port'] = 465; // A porta, deixe como esta mesmo tambem $config['site']['smtp_auth'] = "true"; // Muito importante, deixe sempre como true $config['site']['smtp_user'] = "[email protected]"; // seu email do gmail $config['site']['smtp_pass'] = "suasenha"; // senha da sua conta do gmail *Apos configurar cuidadosamente a parte acima, configure a vontade a parte de baixo colocando quando o jogador vai receber emails do site (Colocando 1 para sim, e 0 para não): // USE ONLY IF YOU CONFIGURED E-MAIL AND IT WORK $config['site']['create_account_verify_mail'] = 1; // Quando o jogador cria a conta, ele precisa por um email correto, pois ira receber uma senha por email, como no TIBIA GLOBAL $config['site']['generate_new_reckey'] = 1; // Permite o jogador de trocar a Recovery Key, sendo que ela não é exebida, é apenas mandada para o email $config['site']['generate_new_reckey_price'] = 50; // Preço da nova Recovery Key em Premium Points $config['site']['send_mail_when_change_password'] = 1; // Manda um email toda vez que o jogador trocar a senha $config['site']['send_mail_when_generate_reckey'] = 1; // Manda um email toda vez que um jogador pedir sua Recovery Key $config['site']['send_register_email'] = 1; // Manda um email toda vez que o jogador se registrar Passo 2: Configurando lostaccount.php e accountmanager.php Aqui as coisas podem ficar um pouco chatas, mas é rapidinho! Abra os scripts, e procure por: $mail->IsSMTP(); E embaixo disso (não apague nada), coloque isto: $mail->SMTPDebug = 0; $mail->SMTPSecure = "ssl"; Você tera que fazer isso 3 vezes em cada script, pois existem 3 Trechos com "$mail->IsSMTP();" diferentes tanto no lostaccount.php tanto no accountmanager.php. Apos substituir tudo, seu Gesior esta pronto para mandar emails, e agora é so Felicidade \o/. Se tiverem alguma duvida, poste-a. Comentem!
  24. Desliga e liga o serv, ver se o ip está certo
  25. Para quem deseja ter um box igual a este em seu site: 1º Baixe o arquivo: http://www.sendspace.com/file/ejr1jt Virus Total: https://www.virustot...sis/1360784756/ 2º Extraia os arquivos na pasta do seu layout. 3º Abra layout.php e procure por: <div id="Themeboxes"> 4º Para quem tem pouco mais de experiencia vou falar da seguinte forma: Copie esta linha antes de fechar a div themeboxes. <?php include($layout_name.'/widget_rank.php'); ?> Para quem não entendeu o que eu disse, fica meio complicado explicar onde inserir a linha, então, depois desta linha que disse para pesquisar vá copiando a linha do passo 4º e atualizando o site até obter um resultado agradável. Meu layout.php fico assim: <div id="Themeboxes"> <div id="NewcomerBox" class="Themebox" style="background-image:url(<?PHP echo $layout_name; ?>/images/themeboxes/newcomer/newcomerbox.gif);"> <div class="ThemeboxButton" onClick="BigButtonAction('?subtopic=createaccount')" onMouseOver="MouseOverBigButton(this);" onMouseOut="MouseOutBigButton(this);" style="background-image:url(<?PHP echo $layout_name; ?>/images/buttons/sbutton.gif);"><div class="BigButtonOver" style="background-image:url(<?PHP echo $layout_name; ?>/images/buttons/sbutton_over.gif);"></div> <div class="ButtonText" style="background-image:url(<?PHP echo $layout_name; ?>/images/buttons/_sbutton_jointibia.gif);"></div> </div> <div class="Bottom" style="background-image:url(<?PHP echo $layout_name; ?>/images/general/box-bottom.gif);"></div> </div> <div id="PremiumBox" class="Themebox" style="background-image:url(layouts/tibiacom/images/themeboxes/premium/premiumbox.gif);"> <div class="ThemeboxButton" onClick="BigButtonAction('?subtopic=donate')" onMouseOver="MouseOverBigButton(this);" onMouseOut="MouseOutBigButton(this);" style="background-image:url(layouts/tibiacom/images/buttons/sbutton.gif);"><div class="BigButtonOver" style="background-image:url(layouts/tibiacom/images/buttons/sbutton_over.gif);"></div> <div class="ButtonText" style="background-image:url(http://i54.tinypic.com/25uqof8.gif);"></div> </div> <div class="Bottom" style="background-image:url(layouts/tibiacom/images/general/box-bottom.gif);"></div> </div> <?php include($layout_name.'/widget_rank.php'); ?> </div> Creditos Kekezitolhp Duvidas ou erros só pergunta

Informação Importante

Confirmação de Termo