galera o eu aki dnovo.eu colokei sistema vip no meu ot +n tem tempo e infinito. eu quero um script com dias tem como fazer isso?por exemplo 30 dias de vip para o player,dps remove e ele volta para templo, se ele estiver em um local vip.obrigado a atenção. versão do ot 8.1
Presiso De Ajuda Com Sistema Vip.

Poderia postar seu sistema VIP pelo menos??
Oie :D
amigo bote um npc como Jonnhy que adciona 15 dias de vip , ou entao !buypremium e se bota lá na config dela 30 dias ae dps só vc bota pros npc da area vip só falarem com premium account , e bota uma porta aonde só que tem + de 1 dia de premium passe....
obrigado!
Aqui vai uma talkaction
function onSay(cid, words, param) if getPlayerPremiumDays(cid) <= 365 then --- Configure aqui o preço por dia local preço_dia = 2000 -- Preço por dia if param == "" then custo = preço_dia um_dia = 1 if doPlayerRemoveMoney(cid, custo) == TRUE then doPlayerAddPremiumDays(cid, um_dia) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have bought one day of premium account.") else doPlayerSendCancel(cid, "You don't have enough money.") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) end else if getPlayerPremiumDays(cid) + param <= 365 then local custo = param * preço_dia if doPlayerRemoveMoney(cid, custo) == TRUE then doPlayerAddPremiumDays(cid, param) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have bought ".. param .." days of premium account.") else doPlayerSendCancel(cid, "You don't have enough money.") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) end else doPlayerSendCancel(cid, "You can not buy more than one year of Premium Account.") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) end end else doPlayerSendCancel(cid, "You can not buy more than one year of Premium Account.") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) end end
Explicando:
Fale !buypremium "7 --> quantidade de dias que você quer de premium account, lembrando que o preço por padrão no Script é de 2k, então ele irá multiplicar 2000 * 7 que no caso é a quantidade de dias que está no exemplo acima
Tibia World RPG OldSchool Developer!
ai kara muito bom +n cerve eu quero um com vip eu fis um npc q vende so q e infinito vou posta aki o script do npc para vcs ver.
local focus = 0
local talk_start = 0
local target = 0
local following = false
local attacking = false
function onThingMove(creature, thing, oldpos, oldstackpos)
end
function onCreatureAppear(creature)
end
function onCreatureDisappear(cid, pos)
if focus == cid then
selfSay('Good bye then.')
focus = 0
talk_start = 0
end
end
function onCreatureTurn(creature)
end
function msgcontains(txt, str)
return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)'))
end
function onCreatureSay(cid, type, msg)
msg = string.lower(msg)
if (msgcontains(msg, 'hi') and focus == 0) and getDistanceToCreature(cid) < 4 then
selfSay('Ola ' .. creatureGetName(cid) .. '! Eu vendo vips. Para comprar vips me de 100 vip coins!!!')
focus = cid
talk_start = os.clock()
elseif msgcontains(msg, 'hi') and (focus ~= cid) and getDistanceToCreature(cid) < 4 then
selfSay('Desculpe-me, ' .. creatureGetName(cid) .. '! Falo com voce em um minuto.')
elseif msgcontains(msg, 'vip') then
selfSay('Voce tem as 100 vip coins necessarias para adquirir a sua vip?')
talk_state = 1
talk_start = os.clock()
elseif getPlayerLevel(cid) < 8 then
selfSay('Desculpe, voce precisa de level 8 para comprar vip.')
talk_state = 0
elseif not isPremium(cid) then
selfSay('Desculpe, voce nao eh premium para comprar vip.')
talk_state = 0
elseif talk_state == 1 and msgcontains(msg, 'yes') then
if getPlayerItemCount(cid,6527) == 100 then
doPlayerRemoveItem(cid,6527,100)
setPlayerStorageValue(cid, 13540, 1)
selfSay('Parabens !!! Parabens voce Adiquiriu a sua vip.')
talk_state = 0
talk_start = os.clock()
else
selfSay('Desculpe Você só poderá ter 100VIP Coins na backpack para adquirir vip.Caso contrario não pegara.')
talk_state = 0
talk_start = os.clock()
end
elseif msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 5 then
selfSay('Ate mais, ' .. creatureGetName(cid) .. '!')
focus = 0
talk_start = 0
elseif msgcontains(msg, 'nao') and getDistanceToCreature(cid) < 5 then
selfSay('Desculpe, ' .. creatureGetName(cid) .. '! Volte aqui quando tiver os itens nescessarios.')
talk_start = os.clock()
talk_state = 0
end
end
function onCreatureChangeOutfit(creature)
end
function onThink()
doNpcSetCreatureFocus(focus)
if (os.clock() - talk_start) > 30 then
if focus > 0 then
selfSay('Proximo...')
end
focus = 0
end
if focus ~= 0 then
if getDistanceToCreature(focus) > 5 then
selfSay('Ate mais.')
focus = 0
end
end
end
se alguem pod me fala onde eu adiciono para contar os dias.
eu quero coloka o npc por dai e melhor pq dai por ex:ele dropa os vip e vai e fala com o npc e vira vip. e melhor doq o player fika esperando algum god ou gm entra para add os seus dias de vip.
Eu tenho uma ideia, mas é meio loka.Voce pode fzer por spell, tipo exura, dai o cara compra por spell e nem vai sabe q compro por spell, ai tu faz spell com tempo, tipo exura.Se quiser fazer assim a aew o script:
Vai na pasta data/spells/scripts, cria um arquivo lua, nomeia pra vip e cola isto nele:
function onCastSpell(cid, var, pos)
if doPlayerRemoveItem(cid, 6527, 100) == TRUE then
queststatus = getPlayerStorageValue(cid, 13540)
if queststatus == -1 then
setPlayerStorageValue(cid, 13540, 1)
doPlayerSendTextMessage(cid, 22, "Parabens, agora voce é VIP")
params = {cid=cid,var=var,pos=pos}
addEvent(k, 50000, params)
else
doPlayerSendCancel(cid, "Voca ja é VIP, compre mais quando acabar sua VIP")
doPlayerAddItem(cid, 6527, 100)
end
else
doPlayerSendCancel(cid, "Voce n tem o minimo de VIP coins para comprar VIP")
end
end
function k(params)
doPlayerSendTextMessage(params.cid, 22, "Acabo VIP")
setPlayerStorageValue(params.cid, 13540, -1)
end
Agora va na pasta data/spells, abra o arquivo spells.xml e cole isto nele em instant spells:
<instant name="Buy VIP" words="Buy Vip" lvl="8" mana="0" prem="1" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" script="vip.lua"><vocation name="Sorcerer" />
<vocation name="Druid" />
<vocation name="Paladin" />
<vocation name="Knight" />
<vocation name="Master Sorcerer" />
<vocation name="Elder Druid" />
<vocation name="Royal Paladin" />
<vocation name="Elite Knight" />
<vocation name="Slayer Sorcerer" />
<vocation name="Slayer Druid" />
<vocation name="Slayer Paladin" />
<vocation name="Slayer Knight" />
</instant>
Entao é isso aew, espero ter ajudado, se n quiser bota por spell, dexa keto, mas espero ter ajudado e qualquer problema so fla aew.Vc pode edita o tempo la no addEvent, eu botei 50 seg no caso 50000, mas se tu quiser tu pode bota dias, um dia é mais ou menos 86400 segundos, uma semana é 604800 mais ou menos e um mes com 30 dias é 2592000.Hehe, eu sei q ta meio confuso, mas n encontrei otro jeito de fazer e vc tb pode faze uma spell q fle com o player tipo a primera spell manda uma msg assim:Para comprar Vip fle "o nome da otra spell" e dai o player fla e roda esse script, se tu quise eu posso faze o da primera spell tb, mas é claro so se tu quise usa esse sistema.Fla aew oq achou.
Oie :D
bom cara muito bom vou coloka assim no meu ot. mais no entanto to com outro problema n sei se e aki q posta +, existe algum geito de um hacker bani o ip do pc? baniro meu ip do pc em outras palavras ninguem entra no ot nen eu nen outros players aparece q esta tudo ban. e tbm existe um geito de o cara consegui nuka o serve com 2 anti-nuker ativado? se vc poder me responder essas perguntas agradeço.
ahhh e muito obrigado pelo post vou add no meu serve. :smile_positivo:
tenho +1 duvida, fiko perfeito esse sistema so q eu queria q tivesse tipo um contador de dias e tal, tava pensando se dava pra fika tipo quando vc passa nos fogo q fika la embaixo dos itens do corpo um sinal de fogo, tipo dizendo q vc esta com fogo, n sei se vc vai consegui me entende, (ex:vc usa utamo, como vc sabe q ainda tah com utamo?, simples olhando no canto vc ve um circulo azul, significando q vc tah com utamo)eu queria tipo isso q fikasse tipo um sinal no canto dizendo q vc ainda tem vip.
n sei se da e uma teoria.
o noobinhu tem um script que faz esse negocio de ir temple quando acaba. link ai
pois e cara e um bom tuto +n funciona no meu pq ele presisa de uma pasta chamada >creaturescripts< q n tem no meu
eu acho q e para sql esse sistema o meu e xml ainda :smile_positivo: bom +vlw a intenção se soube de um melhor me avisa. a versão do meu ot e 8.1 xml
pois e cara e um bom tuto +n funciona no meu pq ele presisa de uma pasta chamada >creaturescripts< q n tem no meueu acho q e para sql esse sistema o meu e xml ainda :smile_positivo: bom +vlw a intenção se soube de um melhor me avisa. a versão do meu ot e 8.1 xml
Ta, quanto a sua duvida do Hacker eu n sei, acho q vc poderia baxa um Ot igual, copia as acc e o resto q vc quiser la do Ot Hackeado.Acho q isso deve resolve.E quanto a sua duvida do negocinho q aparece tipo utamo vita e fire field, eu entendi, vo ve se consigo faze, mas....n prometo nda, se eu conseguir edito esse post e te do ja.E quanto ao contador de dias na spell, admito q n sei fazer, o jeito bota aqueles segundos q eu te mandei no ultimo post.
--EDIT--
N consegui fazer o negocio do utamo vita, fire field etc...malz aew,
Oie :D
cara eu colokei akela spell q vc me mando fiko perfeito, eu ate fis o test colok 1 secundo so pra testa se o tempo tava certo e fiko certin, +n ten nenhum geito de fika marcando os dias e tal?, pq hora q vc fais a spell aparece vc e vip e da pra anda normal na area vip so q como o cara vai sabe qt tempo ele ainda tem ou se ja acabo ou n. se alguem pode me responde ^^. agradeço a compreenção!
cara eu colokei akela spell q vc me mando fiko perfeito, eu ate fis o test colok 1 secundo so pra testa se o tempo tava certo e fiko certin, +n ten nenhum geito de fika marcando os dias e tal?, pq hora q vc fais a spell aparece vc e vip e da pra anda normal na area vip so q como o cara vai sabe qt tempo ele ainda tem ou se ja acabo ou n. se alguem pode me responde ^^. agradeço a compreenção!
Assim cara, presta bem atençao:
Pra bota 1 dia de VIP tu tem q bota 86400 segundos, pra bota 1 semana de VIP tu tem q bota 604800 e pra bota 1 mes de VIP tu bota 2592000 segundos. E o cara vai sabe qnts dias ele tem de VIP contando tipo, se tu bota 1 semana de vip entao ele vai sabe q 1 semana dps vai acaba VIP.
function onCastSpell(cid, var, pos)
if doPlayerRemoveItem(cid, 6527, 100) == TRUE then
queststatus = getPlayerStorageValue(cid, 13540)
if queststatus == -1 then
setPlayerStorageValue(cid, 13540, 1)
doPlayerSendTextMessage(cid, 22, "Parabens, agora voce é VIP, voce tem 1 semana de VIP")
params = {cid=cid,var=var,pos=pos}
addEvent(k, 50000, params)
else
doPlayerSendCancel(cid, "Voca ja é VIP, compre mais quando acabar sua VIP")
doPlayerAddItem(cid, 6527, 100)
end
else
doPlayerSendCancel(cid, "Voce n tem o minimo de VIP coins para comprar VIP")
end
end
function k(params)
doPlayerSendTextMessage(params.cid, 22, "Acabo VIP")
setPlayerStorageValue(params.cid, 13540, -1)
end
Olha como eu mudei a mensagem em negrito, ai tu faz a mesma coisa.Entendeu???Se n tive entendido me fla.
Oie :D
eu entendi fera e so q tipo (Ex:se o player charea com uma pessoa e eu dou os vip coins para ele, ele fara a magia e conseguira um mes de vip, so q o cara q charea com ele n sabera, so se eles contarem) tipo assim eu queria faze para q eles visse q tem vip. Ex:uma bolinha azul tipo utamo, ou um contador tipo o de premium, ou uma roupinha diferente. alguma coisa assim (menos vocaçoes pq ja colokei em quest). :positive:
eu colokei assim fera no meu ot, colokei 2 magias uma q vende por 100 vip coins 1 mês de vip, e outra q vende 1 semana por 50 vip coins.acho q assim fiko roox.pq dai o cara coloka 50 em vip e o resto compra itens^^
eu entendi fera e so q tipo (Ex:se o player charea com uma pessoa e eu dou os vip coins para ele, ele fara a magia e conseguira um mes de vip, so q o cara q charea com ele n sabera, so se eles contarem) tipo assim eu queria faze para q eles visse q tem vip. Ex:uma bolinha azul tipo utamo, ou um contador tipo o de premium, ou uma roupinha diferente. alguma coisa assim (menos vocaçoes pq ja colokei em quest). :positive:
eu colokei assim fera no meu ot, colokei 2 magias uma q vende por 100 vip coins 1 mês de vip, e outra q vende 1 semana por 50 vip coins.acho q assim fiko roox.pq dai o cara coloka 50 em vip e o resto compra itens^^
Bom cara vc pode fazer o seguinte, bota um script pra quando o player entra no char, fla assim, "Voce é VIP", mas so q dai n vai dize o tempo restante de VIP, mas se quiser assim, so me fla q eu faço o script de quando o cara entra no char fla "Voce é VIP".
Oie :D
bom acho q assim ja da pq dai na hora q o vip acaba n vai aparece +essa mensagen certo? dai da para sabe +ou- ^^ se poder postar eu agradeço.