Ir para conteúdo
  • Cadastre-se

Posts Recomendados

galera, estou criando um servidor, ainda nao manjo muito, sou bem leigo ...

 

mas a ideia é um rpg, porem tem uma coisa que nossa equipe e eu principalmente quero saber ...

se é possivel manter a renegeração de hp/mana ativa, mesmo com fome, pois queremos remover o food do servidor, acho chato saca ...

e se tiver como, me ensine por favor, sério mesmo, brigadao galera

Conheça agora os planos e preços da TKS Host.

Qualidade e Preço Justo!

 

www.tkshost.com

Link para o post
Compartilhar em outros sites

Claro que é, só criar uma função que fica adicionando hp ou mana x tempo no login :)

fiz uma funçãozinha aqui simples, tu adiciona na LIB e coloca no login tipo

regen(cid, 100, 5) -- vai adicionar 100 de mana e hp a cada 5 segundos , se ajudei rep+ :D

 

function regen(cid, percent, time)
  if not isCreature(cid) then
    return true
  end

    doCreatureAddHealth(cid, percent)
    doCreatureAddMana(cid, percent
    addEvent(regen, time*1000, cid, percent, time)
end
Link para o post
Compartilhar em outros sites

Cara, ja até te dei rep pq vi que é possivel  :D  :D

mas queria ir mais a fundo e até abusar da sua vontade kkkkk  :wow:  :wow:  :wow:

meu servidor tem 10 vocations, eu queria que o regen hp/mana fosse diferente para cada uma delas, pq fica ruim um mage regenerando hp igual um crusader, ou o mesmo crusader regenerando mana igual o mage ...

 

mage, priest, warlock, druida = o mesmo regen de hp/mana para essas vocações ( exemplo, 10hp a cada 2 segundos, e 50 de mana a cada 2 segundos )

hunter e assassin = mesmo regen de hp/mana  para essas vocações ( exemplo, 20hp a cada 2 segundos, e 30 de mana a cada 2 segundos )

warrior, warlord, crusader e barbarian = mesmo regen de hp/mana para essas vocações ( exemplo, 50hp a cada 2 segundos, e 20 de mana a cada 2 segundos )

Editado por Tryaron (veja o histórico de edições)

Conheça agora os planos e preços da TKS Host.

Qualidade e Preço Justo!

 

www.tkshost.com

Link para o post
Compartilhar em outros sites

@Tryaron pode passar os ids das vocations ?


bom refiz a função e coloquei um exemplo de como fazer cada vocation ter um regen especifico ai é só você acerta

 

function regen(cid, percent_health, percent_mana, time)
  if not isCreature(cid) then
    return true
  end

    doCreatureAddHealth(cid, percent_health)
    doCreatureAddMana(cid, percent_mana)
    addEvent(regen, time*1000, cid, percent_health, percent_mana, time)
end

-------------------------------- abaixo coloca no login.lua

if getPlayerVocation(cid) == 1 or getPlayerVocation(cid) == 2 then
	regen(cid, 10, 50, 2)
elseif getPlayerVocation(cid) == 3 or getPlayerVocation(cid) == 4 then
	regen(cid, 20, 30, 2)
end
Editado por xBen (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Postarei aqui o vocations do servidor

 

<?xml version="1.0" encoding="UTF-8"?>

<vocations>
<vocation id="0" clientid="0" name="None" description="none" gaincap="0" gainhp="5" gainmana="5" gainhpticks="6" gainhpamount="1" gainmanaticks="6" gainmanaamount="1" manamultiplier="4.0" attackspeed="2000" basespeed="220" soulmax="100" gainsoulticks="120" fromvoc="0">
<formula meleeDamage="1.0" distDamage="1.0" defense="1.0" armor="1.0"/>
<skill id="0" multiplier="1.5"/>
<skill id="1" multiplier="2.0"/>
<skill id="2" multiplier="2.0"/>
<skill id="3" multiplier="2.0"/>
<skill id="4" multiplier="2.0"/>
<skill id="5" multiplier="1.5"/>
<skill id="6" multiplier="1.1"/>
</vocation>
<vocation id="1" clientid="3" name="Mage" description="a mage" gaincap="0" gainhp="30" gainmana="30" gainhpticks="1" gainhpamount="20" gainmanaticks="1" gainmanaamount="25" manamultiplier="1.1" attackspeed="2000" basespeed="220" soulmax="100" gainsoulticks="120" fromvoc="1">
<formula meleeDamage="1.0" distDamage="1.0" defense="1.0" armor="1.0"/>
<skill id="0" multiplier="1.5"/>
<skill id="1" multiplier="2.0"/>
<skill id="2" multiplier="2.0"/>
<skill id="3" multiplier="2.0"/>
<skill id="4" multiplier="2.0"/>
<skill id="5" multiplier="1.5"/>
<skill id="6" multiplier="1.1"/>
</vocation>
<vocation id="2" clientid="4" name="Druid" description="a druid" gaincap="0" gainhp="30" gainmana="30" gainhpticks="1" gainhpamount="20" gainmanaticks="1" gainmanaamount="25" manamultiplier="1.1" attackspeed="2000" basespeed="220" soulmax="100" gainsoulticks="120" fromvoc="2">
<formula meleeDamage="1.0" distDamage="1.0" defense="1.0" armor="1.0"/>
<skill id="0" multiplier="1.5"/>
<skill id="1" multiplier="1.8"/>
<skill id="2" multiplier="1.8"/>
<skill id="3" multiplier="1.8"/>
<skill id="4" multiplier="1.8"/>
<skill id="5" multiplier="1.5"/>
<skill id="6" multiplier="1.1"/>
</vocation>
<vocation id="3" clientid="2" name="Hunter" description="a hunter" gaincap="0" gainhp="40" gainmana="15" gainhpticks="1" gainhpamount="25" gainmanaticks="1" gainmanaamount="10" manamultiplier="1.4" attackspeed="1300" basespeed="220" soulmax="100" gainsoulticks="120" fromvoc="3">
<formula meleeDamage="1.0" distDamage="1.0" defense="1.0" armor="1.1"/>
<skill id="0" multiplier="1.2"/>
<skill id="1" multiplier="1.2"/>
<skill id="2" multiplier="1.2"/>
<skill id="3" multiplier="1.2"/>
<skill id="4" multiplier="1.1"/>
<skill id="5" multiplier="1.1"/>
<skill id="6" multiplier="1.1"/>
</vocation>
<vocation id="4" clientid="1" name="Warrior" description="a warrior" gaincap="0" gainhp="50" gainmana="0" gainhpticks="1" gainhpamount="30" gainmanaticks="0.2" gainmanaamount="3" manamultiplier="3.0" attackspeed="1300" basespeed="220" soulmax="100" gainsoulticks="120" fromvoc="4">
<formula meleeDamage="1.1" distDamage="1.0" defense="1.1" armor="1.2"/>
<skill id="0" multiplier="1.1"/>
<skill id="1" multiplier="1.1"/>
<skill id="2" multiplier="1.1"/>
<skill id="3" multiplier="1.1"/>
<skill id="4" multiplier="1.4"/>
<skill id="5" multiplier="1.1"/>
<skill id="6" multiplier="1.1"/>
</vocation>
<vocation id="5" clientid="3" name="Barbarian" description="a barbarian" gaincap="0" gainhp="50" gainmana="0" gainhpticks="1" gainhpamount="30" gainmanaticks="0.2" gainmanaamount="3" manamultiplier="1.1" attackspeed="1800" basespeed="220" soulmax="100" gainsoulticks="120" fromvoc="5">
<formula meleeDamage="1.1" distDamage="1.0" defense="1.1" armor="1.2"/>
<skill id="0" multiplier="1.5"/>
<skill id="1" multiplier="2.0"/>
<skill id="2" multiplier="2.0"/>
<skill id="3" multiplier="2.0"/>
<skill id="4" multiplier="2.0"/>
<skill id="5" multiplier="1.5"/>
<skill id="6" multiplier="1.1"/>
</vocation>
<vocation id="6" clientid="4" name="Assassin" description="an assassin" gaincap="0" gainhp="40" gainmana="0" gainhpticks="1" gainhpamount="25" gainmanaticks="0.2" gainmanaamount="3" manamultiplier="1.1" attackspeed="500" basespeed="220" soulmax="100" gainsoulticks="120" fromvoc="6">
<formula meleeDamage="1.3" distDamage="1.0" defense="1.0" armor="1.1"/>
<skill id="0" multiplier="1.5"/>
<skill id="1" multiplier="1.8"/>
<skill id="2" multiplier="1.8"/>
<skill id="3" multiplier="1.8"/>
<skill id="4" multiplier="1.8"/>
<skill id="5" multiplier="1.5"/>
<skill id="6" multiplier="1.1"/>
</vocation>
<vocation id="7" clientid="2" name="Priest" description="a priest" gaincap="0" gainhp="30" gainmana="30" gainhpticks="1" gainhpamount="20" gainmanaticks="1" gainmanaamount="25" manamultiplier="1.4" attackspeed="2000" basespeed="220" soulmax="100" gainsoulticks="120" fromvoc="7">
<formula meleeDamage="1.0" distDamage="1.0" defense="1.0" armor="1.0"/>
<skill id="0" multiplier="1.2"/>
<skill id="1" multiplier="1.2"/>
<skill id="2" multiplier="1.2"/>
<skill id="3" multiplier="1.2"/>
<skill id="4" multiplier="1.1"/>
<skill id="5" multiplier="1.1"/>
<skill id="6" multiplier="1.1"/>
</vocation>
<vocation id="8" clientid="1" name="Warlock" description="a warlock" gaincap="0" gainhp="30" gainmana="30" gainhpticks="1" gainhpamount="20" gainmanaticks="1" gainmanaamount="25" manamultiplier="3.0" attackspeed="2000" basespeed="220" soulmax="100" gainsoulticks="120" fromvoc="8">
<formula meleeDamage="1.0" distDamage="1.0" defense="1.0" armor="1.0"/>
<skill id="0" multiplier="1.1"/>
<skill id="1" multiplier="1.1"/>
<skill id="2" multiplier="1.1"/>
<skill id="3" multiplier="1.1"/>
<skill id="4" multiplier="1.4"/>
<skill id="5" multiplier="1.1"/>
<skill id="6" multiplier="1.1"/>
</vocation>
<vocation id="9" clientid="1" name="Crusader" description="a crusader" gaincap="0" gainhp="60" gainmana="10" gainhpticks="1" gainhpamount="35" gainmanaticks="1" gainmanaamount="10" manamultiplier="3.0" attackspeed="1800" basespeed="220" soulmax="100" gainsoulticks="120" fromvoc="9">
<formula meleeDamage="1.0" distDamage="1.0" defense="1.2" armor="1.3"/>
<skill id="0" multiplier="1.1"/>
<skill id="1" multiplier="1.1"/>
<skill id="2" multiplier="1.1"/>
<skill id="3" multiplier="1.1"/>
<skill id="4" multiplier="1.4"/>
<skill id="5" multiplier="1.1"/>
<skill id="6" multiplier="1.1"/>
</vocation>
<vocation id="10" clientid="1" name="Monk" description="a monk" gaincap="0" gainhp="50" gainmana="10" gainhpticks="1" gainhpamount="30" gainmanaticks="1" gainmanaamount="10" manamultiplier="3.0" attackspeed="1000" basespeed="220" soulmax="100" gainsoulticks="120" fromvoc="10">
<formula meleeDamage="1.1" distDamage="1.0" defense="1.1" armor="1.0"/>
<skill id="0" multiplier="1.1"/>
<skill id="1" multiplier="1.1"/>
<skill id="2" multiplier="1.1"/>
<skill id="3" multiplier="1.1"/>
<skill id="4" multiplier="1.4"/>
<skill id="5" multiplier="1.1"/>
<skill id="6" multiplier="1.1"/>
</vocation>
</vocations>

Conheça agora os planos e preços da TKS Host.

Qualidade e Preço Justo!

 

www.tkshost.com

Link para o post
Compartilhar em outros sites

Tem como por passo a passo onde devo por as coisas da script? sou burro pa caralho ¬¬  :facepalm:  :facepalm:  :facepalm:

Conheça agora os planos e preços da TKS Host.

Qualidade e Preço Justo!

 

www.tkshost.com

Link para o post
Compartilhar em outros sites

Data/Lib/000-const.lua no final do script adicione.

 

function regen(cid, percent_health, percent_mana, time)
  if not isCreature(cid) then
    return true
  end

    doCreatureAddHealth(cid, percent_health)
    doCreatureAddMana(cid, percent_mana)
    addEvent(regen, time*1000, cid, percent_health, percent_mana, time)
end

Data/Creaturescript/Script/login.lua

antes de registerCreatureEvent(cid, "AdvanceSave") adicione

if getPlayerVocation(cid) == 1 or getPlayerVocation(cid) == 2 then
	regen(cid, 10, 50, 2)
elseif getPlayerVocation(cid) == 3 or getPlayerVocation(cid) == 4 then
	regen(cid, 20, 30, 2)
end

no caso dessa forma que eu fiz mage e druid vão regenerar 10 de hp e 50 de mana
e hunter e warrior 20 de hp e 30 de mana, para adicionar mais vocaçoes é só dar um or getPlayerVocation(cid) == id then exemplo

if getPlayerVocation(cid) == 1 or getPlayerVocation(cid) == 2 or getPlayerVocation(cid) == 6 then

ou se você quiser que as outras vocations tenha um regen diferente você só coloca mais 1 elseif igual eu fiz ali exemplo

if getPlayerVocation(cid) == 1 or getPlayerVocation(cid) == 2 then
    regen(cid, 10, 50, 2)
elseif getPlayerVocation(cid) == 3 or getPlayerVocation(cid) == 4 then
    regen(cid, 20, 30, 2)

elseif getPlayerVocation(cid) == 5 or getPlayerVocation(cid) == 6 then
    regen(cid, 50, 60, 2) -- vocations 5 e 6 regenera 50 de hp e 60 de mana

end

 

Editado por xBen (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Nao tem essa pasta Lib na minha pasta Data e o meu Data/Creaturescript/Script/login.lua esta desta maneira;

 

 

function onLogin(cid)

registerCreatureEvent(cid, "PlayerDeath")
registerCreatureEvent(cid, "Outfit")
return TRUE
end

 

onde devo adicionar isto que voce me passou?

 

 

if getPlayerVocation(cid) == 1 or getPlayerVocation(cid) == 2 then
    regen(cid, 10, 50, 2)
elseif getPlayerVocation(cid) == 3 or getPlayerVocation(cid) == 4 then
    regen(cid, 20, 30, 2)
end

Editado por Tryaron (veja o histórico de edições)

Conheça agora os planos e preços da TKS Host.

Qualidade e Preço Justo!

 

www.tkshost.com

Link para o post
Compartilhar em outros sites

Quase todas as pastas que estao dentro do Data, tem uma pasta Lib, porem a propria Data/ nao tem uma lib aqui, to usando tfs 9.60

 

Reeditando pra postar como ficou o data/creaturescripts/scripts/login.lua

 

 

function onLogin(cid)

if getPlayerVocation(cid) == 1 or getPlayerVocation(cid) == 7 or getPlayerVocation(cid) == 8 then
    regen(cid, 20, 25, 1)
elseif getPlayerVocation(cid) == 2 then
    regen(cid, 20, 25, 1)
elseif getPlayerVocation(cid) == 3 then
    regen(cid, 25, 10, 1)
elseif getPlayerVocation(cid) == 4 or getPlayerVocation(cid) == 5 or getPlayerVocation(cid) == 6 then
    regen(cid, 30, 3, 0.2)
elseif getPlayerVocation(cid) == 9 then
    regen(cid, 35, 10, 1)
elseif getPlayerVocation(cid) == 10 then
    regen(cid, 25, 10, 1)
end
registerCreatureEvent(cid, "PlayerDeath")
registerCreatureEvent(cid, "Outfit")
return TRUE
end
 
 
Porem amigo, eu gostaria de saber oque é esse 1 após o ganho de hp/mana, pois eu configurei como se fosse segundos, no caso 1 segundo, porem nao acho que seja isso, e gostaria de saber como ponho o segundos, se nao for isto, é claro ...
Editado por Tryaron (veja o histórico de edições)

Conheça agora os planos e preços da TKS Host.

Qualidade e Preço Justo!

 

www.tkshost.com

Link para o post
Compartilhar em outros sites

Sim é exatamente isso, os segundos no caso 1 vai ser de 1 em 1 segundo, e pode adicionar a função em algum arquivo da pasta lib

Link para o post
Compartilhar em outros sites

Mas cara, nao tem pasta lib no Data

 

tu pode me dizer exatamente onde por isto?

 

 

 

function regen(cid, percent_health, percent_mana, time)
if not isCreature(cid) then
return true
end

doCreatureAddHealth(cid, percent_health)
doCreatureAddMana(cid, percent_mana)
addEvent(regen, time*1000, cid, percent_health, percent_mana, time)
end

Conheça agora os planos e preços da TKS Host.

Qualidade e Preço Justo!

 

www.tkshost.com

Link para o post
Compartilhar em outros sites
local function regen(cid, percent_health, percent_mana, time)
if not isCreature(cid) then
return true
end

doCreatureAddHealth(cid, percent_health)
doCreatureAddMana(cid, percent_mana)
addEvent(regen, time*1000, cid, percent_health, percent_mana, time)
end

function onLogin(cid)if getPlayerVocation(cid) == 1 or getPlayerVocation(cid) == 7 or getPlayerVocation(cid) == 8 then
    regen(cid, 20, 25, 1)
elseif getPlayerVocation(cid) == 2 then
    regen(cid, 20, 25, 1)
elseif getPlayerVocation(cid) == 3 then
    regen(cid, 25, 10, 1)
elseif getPlayerVocation(cid) == 4 or getPlayerVocation(cid) == 5 or getPlayerVocation(cid) == 6 then
    regen(cid, 30, 3, 0.2)
elseif getPlayerVocation(cid) == 9 then
    regen(cid, 35, 10, 1)
elseif getPlayerVocation(cid) == 10 then
    regen(cid, 25, 10, 1)
end
registerCreatureEvent(cid, "PlayerDeath")
registerCreatureEvent(cid, "Outfit")
return TRUE
end

coloca isso no login.lua

Link para o post
Compartilhar em outros sites

nao funciono, colei do jeito que voce citou no data/creaturescripts/scripts/login.lua ... nao deu pal, nem nada, apenas nao regenera ...

Algo mais que devo fazer?

Conheça agora os planos e preços da TKS Host.

Qualidade e Preço Justo!

 

www.tkshost.com

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo