ta off faz tempo amigo ...aqui o link http://www.mediafire.com/download/khzzcbhql02ab92/Azeroth+9.60.rar desfrute do server mais pfv respeite o mapa rpg...nao faça ele vira um baiak
TFS Roda em win 32 bits e 64 bits, Usando LaaTiDoo com windows 64bits ele abre mapa de até 115 mb que pelo- eu pude testar, agr se abre com mais eu nao sei.
Bom galera aqui nao deu para min remover esse bug pq ja tinha feito upload e minha net ja é meio lenta entao refazer iria demorar + ainda é só deleta um pizo na area vermelha tem uma borda trapando passagen dos player nesse canto.
Disse que iria postar sources e RME mas nao vou postar mais, depois que praticamente copiaram meu topico nao vou postar mais nada no forum, esse é meu ultimo post...
ADICIONADO AS SOURCES....
Qualquer bug me avisa que arrumo.
UPDATE FEITO ADICIONADOS ALGUMAS NOVAS AREAS 9.8X+ E REMOVIDOS OS BUGS ENCONTRADOS....
Já procurei em diversos tópicos do forúm mas nada que me ajudasse.
Sempre criei OT nas versões 8.6. , e resolvi criar um 10.53, mas não tem nada
a ver como era antes (euacho), eu baixei um servidor que está aqui no forúm
global full + oramond ...
Só que para mim (está faltando varias coisas) , para falar veerdade não sei nem como
colocar online nesse novo jeito, queria um tutorial que explicasse como colocar um otserver 10.53
online do zero...
Aeeeeeee carai, hoje vim trazer pra vocês meu mais novo sistema *-*. É uma fodenda spell que você seleciona alguém pra ser seu voodoo e a partir disso durante um tempo X ela vai receber todos os hit's que você deveria receber... INCRÍVEL, NÃO?
Agora se nesse meio tempo ela deslogar ou entrar em pz você vai tomar o dano normal, mas se ainda tiver nesse tempo X e ela sair ela vai receber o dano instantaneamente (É BOM DEMAIS PRA SER VERDADE).
Agora você deve estar imaginando, e se eu usar a magia pra transferir o dano pra um amigo e ele fizer a mesma coisa em mim, pra onde vai o dano?
PRA LUGAR NENHUM!!!! Até porque eu já me previni contra esse bug fazendo com que não seja possível fazer alguém de voodoo se ele já tiver alguém de voodoo.
Testado em versão 8.54 TFS Crying Damnson mas deve funcionar em todas as versões que tenham a função onStatsChange no creaturescripts.
Bom, o script tá 100% funcional e livre de bugs (se vc achar algum eu te dou 3 REP).
Agora vamos à mágica:
Crie um arquivo em mods com extensão .xml e adiciona isso daqui nele
<?xml version="1.0" encoding="UTF-8"?>
<mod name="Voodoo System" version="1.0" author="Night Wolf" contact="none" enabled="yes">
------------------------------------------------------------------------------------
<config name="feitisso"><![CDATA[
configuration = {
storage = 24567,
tempo = 20,
cooldown = 45,
effect1 = 13,
effect2 = 65
}
storagecool = 24568
]]></config>
----------------------------------------------------------------------------------
<event type="login" name="registerVoodoo" event="script"><![CDATA[
function onLogin(cid)
domodlib('feitisso')
if getPlayerStorageValue(cid, configuration.storage) > 0 then
doPlayerSendTextMessage(cid, 22, "Your victim is not receiving your hits anymore.")
doPlayerSetStorageValue(cid, configuration.storage, 0)
end
registerCreatureEvent(cid,"voodoo")
return true
end
]]></event>
------------------------------------------------------------------------------------
<instant name="Feitiço" words="voodoo" lvl="50" mana="10" prem="1" range="3" needtarget="1" blockwalls="1" exhaustion="1000" needlearn="0" event="script">
<vocation id="5"/>
<vocation id="6"/>
<vocation id="7"/>
<vocation id="8"/>
<![CDATA[
function onCastSpell(cid, var)
domodlib('feitisso')
if not (isPlayer(variantToNumber(var))) then
doPlayerSendCancel(cid, "You can only use this spell in players.")
return false
end
if getPlayerStorageValue(variantToNumber(var), configuration.storage) > 0 then
doPlayerSendCancel(cid, "You can't make a voodoo of someone who already has a voodoo.")
return false
end
if (os.time() - getPlayerStorageValue(cid, storagecool)) >= configuration.cooldown then
if getPlayerStorageValue(cid, configuration.storage) <= 0 then
timeleft = (os.time() + configuration.cooldown)
doPlayerSetStorageValue(cid, storagecool, timeleft)
local target = getPlayerGUID(variantToNumber(var))
doPlayerSetStorageValue(cid, configuration.storage, target)
doSendMagicEffect(getPlayerPosition(cid), configuration.effect1)
doSendMagicEffect(getThingPos(variantToNumber(var)), configuration.effect1)
addEvent(function()
if isCreature(cid) then
doSendMagicEffect(getPlayerPosition(cid), configuration.effect2)
doPlayerSendTextMessage(cid, 22, "Your victim is not receiving your hits anymore.")
doPlayerSetStorageValue(cid, configuration.storage, 0)
end
end, 100+1000*configuration.tempo)
elseif getPlayerStorageValue (cid, configuration.storage) > 0 then
doPlayerSendCancel(cid, "You've already set a target.")
end
else
doPlayerSendCancel(cid, "Your skill is in cooldown, you must wait "..(configuration.cooldown - (os.time() - getPlayerStorageValue(cid, storagecool))).." seconds.")
end
return true
end
]]></instant>
------------------------------------------------------------------------------------
<event type="statschange" name="voodoo" event="script"><![CDATA[
function onStatsChange(cid, attacker, type, combat, value)
domodlib('feitisso')
if isPlayer(cid) and (not (attacker == cid)) and (type == STATSCHANGE_HEALTHLOSS or type == STATSCHANGE_MANALOSS) and getPlayerStorageValue(cid, configuration.storage) >= 1 then
local name = getPlayerNameByGUID(getPlayerStorageValue(cid, configuration.storage))
local victim = getCreatureByName(name)
if isCreature(victim) and not (getTilePzInfo(getPlayerPosition(victim))) then
dano = math.ceil(value)
doSendMagicEffect(getPlayerPosition(cid), configuration.effect2)
if attacker == victim then
doTargetCombatHealth(cid, victim, combat, -dano, -dano, configuration.effect2)
else
doTargetCombatHealth(attacker, victim, combat, -dano, -dano, configuration.effect2)
end
return false
end
end
return true
end
]]></event>
------------------------------------------------------------------------------------
</mod>
aqui você edita os storages da magia e do cooldown, além do tempo que ela dura, o tempo de cooldown (um uso e outro) e os efeitos que vão sair.
-------------------------------------------------------------------------------------------------------------
aqui você edita o nome da spell, as palavras pra ela sair, level, custo de mana, se é preciso ser premium pra usar, o range dela, e as vocações que podem usá-la.
OBS: se vc quiser que essa spell seja ganha em uma quest (por se tratar de algo bastante apelativo), é só colocar needlearn = "1" e fazer uma quest pra ganhar a spell (tem no meu Darkness Pact Quest uma quest de ganhar Spell, é só ir lá no meu perfil e procurar o tópico).
Essa spell não serve somente pra ATS, use a criatividade pra criar uma história e fazer ela se encaixar... foque nos elementos de RPG e tcharam, está feito!.
Façam bom uso e espero que não saiam postando em outros lugares sem os devidos créditos. Abraços do lobinho pra vcs
PS: a foto ficou meio bosta mas vou postar mesmo assim
Eu (sorc) ataquei a zuera e tomei o dano de volta e ainda saiu esse efeitinho bonito.
Espero que tenham gostado e usem essa spell como base pra fazer outras coisas maravilhosas pra esse fórum
E não esqueça de clicar em "gostei" caso tenha curtido a idéia.
Ahhh, e antes que eu me esqueça dos agradecimentos:
@ViitinG por me ajudar a testar
@CreatServer por me dar a idéia
@MaXwEllDeN por me orientar a trocar a table pelo storage possibilitando que o script fosse possível.
Muito bom, aguardo mais tutoriais sobre PDO.
Eu estava fazendo um mini framework com pdo pra facilitar na criaçao de novas classes/objetos e utilizando pra executar novas querys exemplo $mysql->query("SELECT....") xd.
Zet0N0~
se quiser sabe mais sobre PDO veja este link http://wiki.locaweb.com.br/pt-br/PDO_-_PHP_Data_Object