Líderes
-
-
KekezitoLHP
MembroPontos154Total de itens -
kaiquegabriel
MembroPontos803Total de itens -
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 07/03/13 em todas áreas
-
Sprites do Tibia 10.10 [c/ sprites 8frames]
Sprites do Tibia 10.10 [c/ sprites 8frames]
lazarocp e 3 outros reagiu a Guilherme por uma resposta no tópico
4 pontosTibia Sprites 10.10 Com as sprites de 8 frames Por: Ozai Trazendo aqui em primeira mão todas as sprites do cliente 10.10 que ainda vai sair, e está em teste server fechado para representantes de fansites e tutores. Download: http://www.mediafire.com/download/8ktko6c1zal4bjz/Tibia_Sprites_10.10.rar Screenshot:4 pontos -
[VIDEO] Crackeando magebot com volume serial
[VIDEO] Crackeando magebot com volume serial
Opudim e um outro reagiu a kaiquegabriel por uma resposta no tópico
2 pontosDownloads necessários: Volume Serial Magebot 10.2 (funciona em todas as versões). Site oficial Serial Number: 50B20B0D Serial Number: 6DGH7J8H Serial Number: AD55W387 Serial Number: AZK9COV8 Serial Number: 90A3E7F9 Serial Number: C09D33LC Serial Number: E4B982DB Serial Number: 6FG39IFD Serial Number: C0DN3RD Serial Number: C0DDEBA9 Serial Number: EK5HJ54A Serial Number: 097B1D9D Serial Number: 29DBB8EA Serial Number: 097B1D9D Serial Number: 0000AD55 Serial Number: CUDCU23R Serial Number: CUDCU61E Serial Number: AK4ZP3W8 Serial Number: 8UT45RT2 Serial Number: J2184023 Video: http://www.youtube.com/watch?v=K8ltDhbZdsI&feature=youtu.be Atenciosamente.2 pontos -
[Sistema] Cast System para 8.6
[Sistema] Cast System para 8.6
Vinicioss reagiu a KekezitoLHP por uma resposta no tópico
1 pontoBom 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.1 ponto -
[Link Quebrado][8.60] Nova Death Map RPG FULL - Frozen hell [Illumination] $ + War system + CTF
[Link Quebrado][8.60] Nova Death Map RPG FULL - Frozen hell [Illumination] $ + War system + CTF
CoyoteStark reagiu a Raell5 por uma resposta no tópico
1 pontoOFF TOPIC !!1 ponto -
Proteção contra ataques DoS
Proteção contra ataques DoS
Sematico reagiu a KekezitoLHP por uma resposta no tópico
1 pontoBom 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__1 ponto -
Conquistas + Concurso
Conquistas + Concurso
ferlations reagiu a Bruno Carvalho por uma resposta no tópico
1 pontoFaltou uma conquista pra programadores .-.1 ponto -
(Resolvido)Outfit e Sitema VIP
(Resolvido)Outfit e Sitema VIP
xPollo reagiu a GiovaniRodrigo por uma resposta no tópico
1 pontoTroque seu outfit Fisher por esse <outfit id="3" premium="no"> <list gender="0" lookType="521" name="Fisher"/> <list gender="1" lookType="520" name="Fisher"/> </outfit> O teleport do Cacaiu tem algum script? Se sim, poste.1 ponto -
Peça seu mapa-SprayPaint
Peça seu mapa-SprayPaint
dyroz reagiu a Spraypaint por uma resposta no tópico
1 ponto#edit Dyroz pronto seu mapa, irei postar o link para download abraços! ilha.otbm Abraços!1 ponto -
Nós queremos você!
Nós queremos você!
3visan reagiu a ferlations por uma resposta no tópico
1 pontoRaell, pra que ficar separando por grupinhos? ex: Mapper, Scripter, BLA BLA BLA. No caso do Designer, é que é algo à parte, fora dos assuntos de Tibia. Existe os cargos Suporter e Moderador pra isso. Separar só causa tragédia UHUEHA acredite.1 ponto -
Cyclocps - Mistrock - Yalahar
Cyclocps - Mistrock - Yalahar
Serial HellFiler reagiu a Matraka por uma resposta no tópico
1 pontoCyclopes de Mistrock. Cyclops Mistrock North - Yalahar.wpt Cyclops Mistrock Easy - Yalahar.wpt Cyclops Mistrock Medium - Yalahar.wpt Cyclops Mistrock Hardcore - Yalahar.wpt1 ponto -
Mapa Aertilo
Mapa Aertilo
kaiquegabriel reagiu a paulo thush por uma resposta no tópico
-1 pontosMan pra min vc e um bosta se sociopata bruno maciel anne motta sky matheus esses caras falava sobre meu mapa eu taria de boa pq os caras ja sao profisional vc e apenas um merda que vem tipicos dos outros fazer graça entao se nao gostoza vaza Ok-1 pontos