
Histórico de Curtidas
-
Tauzyu recebeu reputação de thalesvenceslau em Attack speed - 2018Ficou muito top, parabéns.
-
Tauzyu deu reputação a Luan Zero em Attack speed - 2018Olá pessoal, desejo um ótimo dia para todos, é notório que 90% da galera que tem um servidor com derivado de nto/dbo procuram pelo sistema de Speed Attack igual do NtoBrasil, então hoje venho disponibilizar para vocês, o sistema, eu fiz com a ajuda ADM do ultiimate "LKS", lembrando que o sistema eu testei em uma sources 0.4, alguns amigos meu disseram que funcionou em 0.3.6.
Vamos lá, na sua sources procure pelo arquivo : Player.cpp.
e procure por :
uint32_t Player::getAttackSpeed() { Item* weapon = getWeapon(); if(weapon && weapon->getAttackSpeed() != 0) return weapon->getAttackSpeed(); return vocation->getAttackSpeed(); } e substitua pelo código.
uint32_t Player::getAttackSpeed() const { int32_t SpeedAttack; SpeedAttack = getSkill(SKILL_FIST, SKILL_LEVEL); if(SpeedAttack < 100) SpeedAttack = 1000; else if(SpeedAttack >= 100 && SpeedAttack < 110) SpeedAttack = 800; else if(SpeedAttack >= 110 && SpeedAttack < 120) SpeedAttack = 600; else SpeedAttack = 500; return SpeedAttack; } Explicando, onde tem 100, 110, 120, é o que precisa de fist para bater rápido,
Onde tem SpeedAtacck = 500, é 2 hits por segundos, quanto menor mais rápido o personagem vai hitar.
Créditos ao LKS Pela ajuda.
-
Tauzyu deu reputação a Darcio Antonio em Remover a XP que o summon ganha. tfs 0.4Bom vi em vários tutoriais ai da vida, que se colocar isso no config.lua já removia a xp que o summon ganha.
NoShareExpSummonMonster = true MAS NÃO FUNCIONA
O correto é ir na sua source e em criature.cpp e editar essa parte aqui.
void Creature::addDamagePoints(Creature* attacker, int32_t damagePoints) { if(damagePoints < 0) return; uint32_t attackerId = 0; if(attacker) attackerId = attacker->getID(); CountMap::iterator it = damageMap.find(attackerId); if(it != damageMap.end()) { it->second.ticks = OTSYS_TIME(); if(damagePoints > 0) it->second.total += damagePoints; } else damageMap[attackerId] = CountBlock_t(damagePoints); if(damagePoints > 0) lastHitCreature = attackerId; } por essa aqui.
void Creature::addDamagePoints(Creature* attacker, int32_t damagePoints) { uint32_t attackerId = 0; if(attacker) { if(Creature* master = attacker->getMaster()) attacker = master; attackerId = attacker->getID(); } if(attacker->getPlayer()) { CountMap::iterator it = damageMap.find(attackerId); if(it != damageMap.end()) { it->second.ticks = OTSYS_TIME(); if(damagePoints > 0) it->second.total += damagePoints; } else damageMap[attackerId] = CountBlock_t(damagePoints); } if(damagePoints > 0) lastHitCreature = attackerId; } Compila e pronto quando o summon matar a xp vai toda pra você.
-
Tauzyu deu reputação a xWhiteWolf em (Resolvido)FASTER REGENERATIONSó editar no items.xml os itens vip e depois colocar no movements.xml pra fazer a função que vc declarou no items.xml. Se isso soou muito vago pra você me manda PM que eu te ajudo
-
Tauzyu deu reputação a Alencar123 em Summon ProtectSe for player quem vai perder hp e quem tirar for summon vai ser cancelado
Se o player for atacante (qualquer player, caso queira que mude somente para o dono me avise) e summon quem vai perder o hp então vai ser cancelado
Se um summon fazer outro summon perder hp e eles tiverem o mesmo dono vai ser cancelado
-
Tauzyu deu reputação a Alencar123 em Summon Protectem creaturescripts/scripts:
function onTarget(cid, target) if isPlayer(cid) and isSummon(target) then doPlayerSendCancel(cid, "Você não pode atacar seu summon") end return false end function onStatsChange(cid, attacker, type) if type == STATSCHANGE_HEALTHLOSS then if isPlayer(cid) and isSummon(attacker) or isPlayer(attacker) and isSummon(cid) or isSummon(cid) and isSummon(attacker) and getCreatureMaster(cid) == attacker then end end return false end tags em creaturescripts.xml:
<event type="target" name="nomeevent1" event="script" value="summonattack.lua"/> <event type="statschange" name="nomeevent2" event="script" value="summonattack.lua"/> em login.lua
registerCreatureEvent(cid, "nomeevent1") registerCreatureEvent(cid, "nomeevent2") no arquivo .xml do summon/monstro registre o evento 2:
<script> <event name="nameevent2"/> </script>
-
Tauzyu deu reputação a KotZletY em Botar Spell Sequencia - Combo@joaopedrosilvano qual a dificuldade disso ? Você não declara uma sequência, você declara as spells e os players escolhe as sequência.
Então o que você deve fazer é, criar as spells com seus devidos exhaustion e pronto, basta o player criar o combo, mas se você quiser criar, a ideia é, por exemplo:
usarei sasuke de exemplo:
Amaterasu, hawk chidori, susano punch e susano attack.
Amaterasu com 20s de exhaustion,
hawk chidori com 8s de exhaustion,
susano punch 4s,
e susano attack uns 800 mili-s.
Essa seria uma bela sequência, então é isso que você deve fazer!!
-
Tauzyu recebeu reputação de GaspaR1 em (DÚVIDA) Alguém me poderia me ajudarAmigo na parte em movements está errado, testa assim.
-
Tauzyu recebeu reputação de KotZletY em (DÚVIDA) Alguém me poderia me ajudarAmigo na parte em movements está errado, testa assim.
-
Tauzyu deu reputação a antharaz em Alavanca 5min@Leomonti
Assim?
-
Tauzyu recebeu reputação de Malborus em Servidor Offline SOCORROhttps://m.youtube.com/watch?v=Pbzxrk65Y2s
joguei a marca do seu roteador no youtube e apareceu varios videos falando sobre abre portas é bom você da uma olha.
-
Tauzyu recebeu reputação de Malborus em Servidor Offline SOCORROEu acho que só falta você abrir a porta do roteador. Qual marca do roteador voce usa.
-
Tauzyu deu reputação a Nyksad em [SHOW-OFF] DLL AnTiDecompilerDLL - AnTiDecompiler
Fala, galera, suavidade, eu sou Nyksad, e atualmente estou entrando no ramo de criação de DLLs...
Pelo fato, do OLDClient, está muito esquecido, resolvi começar a retornar um pouco no mesmo, para que ele não seja esquecido completamente.. Assim, decidi iniciar, pela proteção da SPR do mesmo, que hoje em dia, após
acompanhar os forúms de suporte a OTServer, vi, que está sendo o fator principal, para impedir a criação de novos servidores.
Sendo assim, eu, Nyksad, resolvi, desenvolver, minha própria, DLL, logo minha própria proteção, pois atualmente, “a que está no mercado”, já passou a ser ultrapassada, e está sujeita a ser quebrada facilmente.. Para que todos
possam ver como é eficaz a proteção na qual foi desenvolvida, fiz um vídeo comparativo, com a utilização das 2 (nâo descompilando nenhum dos 2 [mesmo que minha DLL, seja quase impossível de ser descompilada, apenas
refazendo o processo de compilação], para que não haja obtenção de sprites pelos meus métodos, (para não ser cuzão) que, no vídeo, apenas é mostrado que com a utilização da DLL já desenvolvida e utilizada nos
servidores presentes, é possível, descompactar arquivos (mesmo que sejam Okb. mas que com bastante estudos, podem ser transformados, com as alterações de chaves no .exe).
Então é isso, espero que tenham entendido o tópico e que curtam o vídeo.
https://www.youtube.com/watch?time_continue=1&v=xioOrvjNSO0
Desde já agradeço a todos
-
Tauzyu deu reputação a Dwarfer em ANTI MC - EVENTOS - GLOBALEVENTSremovemc.lua
local hour = "00:00" --- altere para a hora que desejar local frompos, topos = {x = 25477, y = 25134, z = 7},{x = 25490, y = 25139, z = 7} function onThink(interval, lastExecution) if hour == tostring(os.date("%X")):sub(1, 5) then removeMc(frompos, topos) end return true end function removeMc(frompos, topos) local ips = {} for a,b in pairs(getPlayersOnline()) do if isInArea(getThingPos(b),frompos, topos) then if isInArray(ips,getPlayerIp(b)) then doTeleportThing(b,getTownTemplePosition(getPlayerTown(b))) end table.insert(ips,getPlayerIp(b)) end end end
<globalevent name="RemoveMc" interval="60000" event="script" value="removemc.lua"/>