Histórico de Curtidas
-
larafaz recebeu reputação de robi123 em Outfit inicial da vocaçãFala ferinha depois de uns dias consegui resolver nossos problemas e vou postar aqui para te ajudar
primeiro de tudo esqueça esse papo de samples hahaha nao sera preciso...
ficou feliz neh
entao bora la
vai em:
data\creaturescripts
Pronto problema resolvido.. tem storage entao nao tera bug de sempre mudar o outfit Agora da um REP+ pra ajudar Precisar eh noix -
larafaz recebeu reputação de brasil0014 em Outfit inicial da vocaçãFala ferinha depois de uns dias consegui resolver nossos problemas e vou postar aqui para te ajudar
primeiro de tudo esqueça esse papo de samples hahaha nao sera preciso...
ficou feliz neh
entao bora la
vai em:
data\creaturescripts
Pronto problema resolvido.. tem storage entao nao tera bug de sempre mudar o outfit Agora da um REP+ pra ajudar Precisar eh noix -
larafaz recebeu reputação de 187742_1443728941 em Tutorial de OTCLIENTatraves deste tutorial vc podera compilar e manipular as sourcers do OTCLIENT para alterar o designer do client sigua estes passos basicos.
1. entre na pasta OTC_\data\images
dentro dessa pasta esta todas as imagens exibidas no client comece alterando elas.
2. para criar objetos, botoes enfim coisas novas ao cliente vc deve criar mods/ modules ao cliente para isso siga este tutorial basico
>>
Creditos ao Izac Ximenes
-
larafaz recebeu reputação de LeoTK em (Resolvido)[Dúvida] Como editar essa parte do otclientsimples broder segue este como base:
altere como preferir.
clientVersionLabel = background:getChildById('clientVersionLabel') clientVersionLabel:setText('ESCREVA OQUE QUISER NESSA LINHA\n' .. 'ESTA EH A LINHA 2\n' .. 'LINHA 3') lembrando que para adicionar linhas basta escrever "\n" nao aconselho acrescentar mais do q 3
-
larafaz deu reputação a MaTTch em [Pedido] - Script que manda um broad cast para todos no servidor.Adiciona isso no seu login.lua:
if(getPlayerGroupId(cid) >= 6) then doBroadcastMessage("O Admin acaba de logar e esta online para atende-los.", MESSAGE_STATUS_WARNING) end -
larafaz recebeu reputação de Angeles em [NPC Guard] Ataca Skulls e Monsters, Invasoresirei testar aqui e postarei o resultado
Reputado ScreMMo REP
Função de atacar monstros invasores perfeita!
Não testei com players PK mais creio que esta 100% caso não, creio q seria mt facil de corrigir.
Parabens pelo belo NPC e Script
-
larafaz recebeu reputação de vpa1 em Outfit inicial da vocaçãFala ferinha depois de uns dias consegui resolver nossos problemas e vou postar aqui para te ajudar
primeiro de tudo esqueça esse papo de samples hahaha nao sera preciso...
ficou feliz neh
entao bora la
vai em:
data\creaturescripts
Pronto problema resolvido.. tem storage entao nao tera bug de sempre mudar o outfit Agora da um REP+ pra ajudar Precisar eh noix -
larafaz recebeu reputação de Postulho em Bots para 7.4 ~ 7.72!estou jogando em um servidor oldschool que usa o client 7.72 mais os bot nao rodam nele por ter um client proprio e ip prorio como faço para rodar os bots nele ?
-
larafaz deu reputação a Rafael Mateus em (Resolvido)[RESOLVIDO] como fazer pra quando os chares morrerem dropar tudo 100%vai em config.lua e muda pra 100
deathLostPercent = 5
-
larafaz deu reputação a Hadggar em [NPC Guard] Ataca Skulls e Monsters, Invasoresso se foi no seu :3 olhem a print
-
larafaz recebeu reputação de ZenyJow em Outfit inicial da vocaçãFala ferinha depois de uns dias consegui resolver nossos problemas e vou postar aqui para te ajudar
primeiro de tudo esqueça esse papo de samples hahaha nao sera preciso...
ficou feliz neh
entao bora la
vai em:
data\creaturescripts
Pronto problema resolvido.. tem storage entao nao tera bug de sempre mudar o outfit Agora da um REP+ pra ajudar Precisar eh noix -
larafaz deu reputação a Natanael Beckman em (Resolvido)[RESOLVIDO] AOL InfinitaVocê viu o que eu falei?
-
larafaz deu reputação a kk4444 em [RESOLVIDO] quantidade de slots na Bagposta seu creaturescripts.xml pois n lembro o nome do arquivo .lua que e to sem nenhum ot aki
-
larafaz deu reputação a Bruno Carvalho em [TalkAction] Prision SystemVersão testada: 9.4+ (Pode funcionar em anteriores)
Descrição: O script de cadeia feito por FreaksOt onde eu modifiquei e fiz algumas alterações.
Alterações:
- Quando prende o player ele não fica mais em um local fixo, você pode configurar para coloca-lo em outras celas.
- O tempo pode ou não ser fixo, é só você digitar /jail (nome do player) para um tempo fixo ou /jail (nome do player), (tempo) para coloca-lo com um tempo especifico.
-- OBS: O tempo é posto em segundos. (120 segundos = 2 minutos)
TAG:
<talkaction log="yes" words="/jail;!jail;/prender;!prender;/unjail;!unjail;/desprender;!desprender" access="3" event="script" value="prisao.lua"/>
[/code] [i][b]Script:[/b][/i] data/talkaction/prisao.lua [code]
grouprequired = 3
jailedstoragevalue_time = 1338
jailedstoragevalue_bool = 1339
local jailpos = {
[1] = {x = 59, y = 52, z =6},
[2] = {x = 59, y = 52, z =5},
[3] = {x = 55, y = 47, z =6},
[4] = {x = 55, y = 47, z =5},
[5] = {x = 55, y = 52, z =6},
[6] = {x = 55, y = 52, z =5},
[7] = {x = 59, y = 47, z =5},
[8] = {x = 63, y = 52, z =5}
}
local unjailpos = { x = 63, y = 54, z =6 }
jail_list = {}
jail_list_work = 0
function checkJailList(param)
addEvent(checkJailList, 1000, {})
for targetID,player in ipairs(jail_list) do
if isPlayer(player) == TRUE then
if getPlayerStorageValue(player, jailedstoragevalue_time) < os.time() then
doTeleportThing(player, unjailpos, TRUE)
setPlayerStorageValue(player, jailedstoragevalue_time, 0)
setPlayerStorageValue(player, jailedstoragevalue_bool, 0)
table.remove(jail_list,targetID)
doPlayerSendTextMessage(player, MESSAGE_STATUS_CONSOLE_ORANGE, 'Você saiu da cadeia, tente não fazer coisas malvadas da próxima vez para não ser preso novamente. Cuide-se amigo.')
end
else
table.remove(jail_list,targetID)
end
end
end
function onSay(cid, words, param, channel)
if(param == '') then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command param required.")
return true
end
local t = string.explode(param, ",")
if jail_list_work == 0 then
jail_list_work = addEvent(checkJailList, 1000, {})
end
local jail_time = -1
for word in string.gmatch(tostring(t[1]), "(%w+)") do
if tostring(tonumber(word)) == word then
jail_time = tonumber(word)
end
end
local isplayer = getPlayerByName(t[1])
if isPlayer(isplayer) ~= TRUE then
isplayer = getPlayerByName(string.sub(t[1], string.len("jail_time")+1))
if isPlayer(isplayer) ~= TRUE then
isplayer = getPlayerByName(string.sub(t[1], string.len("jail_time")+2))
if isPlayer(isplayer) ~= TRUE then
isplayer = getPlayerByName(string.sub(t[1], string.len("jail_time")+3))
end
end
end
local default_jail = 30
if(t[2]) then
default_jail = t[2]
end
if jail_time ~= -1 then
jail_time = jail_time * 60
else
jail_time = default_jail
end
if (words == '!prender' or words == '/prender') then
if getPlayerGroupId(cid) >= grouprequired then
if isPlayer(isplayer) == TRUE then
doTeleportThing(isplayer, jailpos[math.random(#jailpos)], TRUE)
setPlayerStorageValue(isplayer, jailedstoragevalue_time, os.time()+jail_time)
setPlayerStorageValue(isplayer, jailedstoragevalue_bool, 1)
table.insert(jail_list,isplayer)
doPlayerSendTextMessage (cid, MESSAGE_STATUS_CONSOLE_ORANGE, 'Você prendeu o player: '.. getCreatureName(isplayer) ..' ate ' .. os.date("%H:%M:%S", getPlayerStorageValue(isplayer, jailedstoragevalue_time)) .. ' (agora é: ' .. os.date("%H:%M:%S", os.time()) .. ').')
doPlayerSendTextMessage (isplayer, MESSAGE_STATUS_CONSOLE_ORANGE, 'Voce foi preso por '.. getCreatureName(cid) ..' ate ' .. os.date("%H:%M:%S", getPlayerStorageValue(isplayer, jailedstoragevalue_time)) .. ' (agora é: ' .. os.date("%H:%M:%S", os.time()) .. ').')
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Este jogador não existe ou esta offline.")
end
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você não tem permissão para prender players.")
end
elseif (words == '!desprender' or words == '/desprender') then
if getPlayerGroupId(cid) >= grouprequired then
if isPlayer(isplayer) == TRUE then
if getPlayerStorageValue(isplayer, jailedstoragevalue_bool) == 1 then
doTeleportThing(isplayer, unjailpos, TRUE)
setPlayerStorageValue(isplayer, jailedstoragevalue_time, 0)
setPlayerStorageValue(isplayer, jailedstoragevalue_bool, 0)
table.remove(jail_list,targetID)
doPlayerSendTextMessage(isplayer, MESSAGE_STATUS_CONSOLE_ORANGE, 'O player '.. getCreatureName(cid) ..' te tirou da prisão. Te vejo em breve!!!')
doPlayerSendTextMessage (cid, MESSAGE_STATUS_CONSOLE_ORANGE, 'Você tirou da prisão o player: '.. getCreatureName(isplayer) ..'.')
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Este jogador não está preso.")
end
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Este jogador não existe ou esta offline.")
end
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você não tem permissão para prender players.")
end
end
return true
end
Config:
local jailpos = { -- Local das selas onde o player vai aparecer.
local unjailpos = { x = 63, y = 54, z =6 } -- Local onde ele irá sair.
local default_jail = 30 -- Tempo padrão.
[/code]
[i][b]Créditos:[/b][/i]
[i]FreaksOt[/i]
[i]Comedinha (Bruno Carvalho)[/i]
-
larafaz recebeu reputação de Avuenja em [Formação] Equipe Projeto Harry Potter Tibia Online (TRANCADO)Projeto trancado mais informações contenos via skype: Soltore-ats.projects
-
larafaz recebeu reputação de Ribeiro Foda em [Formação] Equipe Projeto Harry Potter Tibia Online (TRANCADO)Projeto trancado mais informações contenos via skype: Soltore-ats.projects
-
larafaz deu reputação a Jamison Collins em (Resolvido)[AJUDA] Item que uma outfit ao equipa-lo.Tente mudar o script por isso (apenas os scripts, pois as tags estão certas) :
function onEquip(cid, item, slot) local outfit = {lookType = 104} -- looktype doCreatureSay(cid, "SUBA.", TALKTYPE_ORANGE_1) doSetCreatureOutfit(cid, outfit, -1) doSendMagicEffect(getCreaturePosition(cid), 34) doChangeSpeed(cid, 500) -- speed almenta return TRUE end function onDeEquip(cid, item, slot) doRemoveCondition(cid, CONDITION_OUTFIT) doChangeSpeed(cid, -500) -- speed volta doSendMagicEffect(getCreaturePosition(cid), 34) doCreatureSay(cid, "DESCE.", TALKTYPE_ORANGE_1) return TRUE end -
larafaz deu reputação a EddyHavoc em Looking at you [Look]Looking at You
Fala galera do TK, faz tempo que não posto nada, aí vou postar um sistema simples aqui, que ainda não tem no fórum e vejo membros procurando.
DESCRIÇÃO DO SISTEMA: Quando um player der look em você aparecerá em branco uma mensagem no canto inferior da tela: "Nome do Player" is looking at you.
1° - Acesse a pasta MODS e crie um arquivo chamado lookingatyou.xml, coloque isso dentro do arquivo:
<?xml version="1.0" encoding="UTF-8"?> <mod name="peeper" version="1.0" author="" contact="" enabled="yes"> <config name="peeper-config"><![CDATA[ -- anonymously or display peeper name? anonymous = "no" -- ignore players with access (will not show message when they look on someone) hiddenAccess = 3 -- message color (type) messageType = MESSAGE_STATUS_DEFAULT ]]></config> <event type="look" name="peeper-event" event="script"><![CDATA[ domodlib('peeper-config') local config = { anonymous = getBooleanFromString(anonymous), hiddenAccess = hiddenAccess, messageType = messageType } function onLook(cid, thing, position, lookDistance) if(isPlayer(thing.uid) and getPlayerAccess(cid) < config.hiddenAccess) then doPlayerSendTextMessage(thing.uid, config.messageType, (config.anonymous and "Someone" or getPlayerName(cid)) .. " is looking at you.") end return true end ]]></event> <event type="login" name="peeper-login" event="buffer"><![CDATA[ registerCreatureEvent(cid, "peeper-event") _result = true ]]></event> </mod> Bom galera este é o sistema.
Créditos:
EddyHavoc
Slawkens
Testado e funcionando 100%
-
larafaz recebeu reputação de daesung em [AJUDA] Quest muito bem elaborada.Salve Galera hoje estou aqui por que tive uma ideia louca de criar uma quest bem RPG... Baseada na tumba do Horests...
vamos la ao meu pedido...
POR imagens para facilitar a vida de todos hehe
OBS: criei um map para a explicação de minha quest...
1- na imagem a baixo vocês estão vendo a sala básica como modelo para a quest..
explicação essa caveira esta substituindo uma alavanca para ficar mais RPG.. (todos estão enjoados de alavancas)
ou seja ela e o principal para a quest...
funcionamento da quest o player chega nessa sala..
Ohhh oque fazer temos 7 Basins e a caveira funciona como alavanca no caso ela ativa a quest..
Ja nesta imagem a baixo temos os tributos itens em cima dos basin correto ! com seus respectivos ids.
o player coloca os itens nos respectivos basins
com os itens tributes nos seus lugares ele clik no esqueleto..
e acontece isso:
mas isso oque meu irmão ?
simples os tributes são removidos,
os basins mudam de forma para essa do id : 6972
e a caveira some da parede (eh removida)
e cai no chão (eh adicionado a caveira o chão)
Sim mas e agora oque acontece ?
oque o player terá que fazer ?
agora o player tem q arrastar a caveira ate a lava como sacrifício...
e um tp aparecerá...
com as coordenadas para matar um boss em uma outra sala...
GALERA SO UMA OBS: a quest pode ser feita varias vezes pelos players porem ela so póde ser feita 1 vez por dia
estilo os vazos do horest
no caso apos o server save...
ou um respaw de 24hrs
pq meu saver nao tem serversave global que ele cai e volta
PARA AJUDAR:
DISPONIBILIZEI ESSE SCRIPT COMO BASE CASO PRECISE....
SCRIPT BASE CREDITOS : TecBreakerByLipe
aguardo ansioso '-' e garanto meu REP+
-
larafaz deu reputação a gpedro em Edição de Tibia Client parte 1/2http://www.youtube.com/watch?v=XcDsaEvjrdU
-
larafaz recebeu reputação de Markin em [Formação] Equipe Projeto Harry Potter Tibia Online (TRANCADO)Projeto trancado mais informações contenos via skype: Soltore-ats.projects
-
larafaz deu reputação a Markin em [NPC] Papai Noel por VocaçãoOlá abigos e abigas, fiz um script aqui meio atrasado para o natal rs, bom eu até que gostei espero que vocês achem algo útil para ele.
Abra a pasta NPC crie um arquivo com nome papainoel.xml e adicione isso dentro:
<?xml version="1.0"?> <npc name="Papai Noel" script="data/npc/scripts/papainoel.lua" walkinterval="1000" floorchange="0"> <health now="100" max="100"/> <look type="160" head="0" body="112" legs="93" feet="95"/> <parameters> <parameter key="message_greet" value="Ho-Ho! {|PLAYERNAME|}, para pegar seu presente basta voce falar {present druid}, {present sorcerer}, {present knight} ou {present paladin}!" /> </parameters> </npc> Depois abra a pasta NPC/scripts crie um arquivo com o nome papainoel.lua e adicione isso dentro:
local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid local itemdruid = {{2160, 100}, {9778, 1}, {6512, 1}} -- itens que Elder Druid ira ganhar local itemsorcerer = {{2160, 100}, {8867, 1}, {6512, 1}} -- itens que Master Sorcerer ira ganhar local itemknight = {{2160, 100}, {2472, 1}, {6512, 1}} -- itens que Elite Knight ira ganhar local itempaladin = {{2160, 100}, {2500, 1}, {6512, 1}} -- itens que Royal Paladin ira ganhar local a = { level = 150, -- Level para falar com o Papai Noel storage = 72621, -- Não trocar } if msgcontains(msg, 'present druid') then if getPlayerStorageValue(cid,a.storage) == -1 then if getPlayerVocation(cid) == 6 then if getPlayerLevel(cid) >= a.level then selfSay('Ho-ho Feliz Natal '..getPlayerName(cid)..', você recebeu seus itens de {Druid}!', cid) for _, b in pairs(itemdruid) do doPlayerAddItem(cid, b[1], b[2]) doSendMagicEffect(getPlayerPosition(cid), 28) setPlayerStorageValue(cid,a.storage,1) end else doSendMagicEffect(getPlayerPosition(cid), 2) selfSay('{'..getPlayerName(cid)..'} você precisa ser level {'..a.level..'} para receber sua recompensa, faltam apenas {'..a.level - getPlayerLevel(cid)..'}. Ho-ho!', cid) end else selfSay('Voce não é {Elder Druid} '..getPlayerName(cid)..'!', cid) end else selfSay('{'..getPlayerName(cid)..'} voce ja pegou seu presente!', cid) end end if msgcontains(msg, 'present sorcerer') then if getPlayerStorageValue(cid,a.storage) == -1 then if getPlayerVocation(cid) == 5 then if getPlayerLevel(cid) >= a.level then selfSay('Ho-ho Feliz Natal '..getPlayerName(cid)..', você recebeu seus itens de {Sorcerer}!', cid) for _, b in pairs(itemsorcerer) do doPlayerAddItem(cid, b[1], b[2]) doSendMagicEffect(getPlayerPosition(cid), 28) setPlayerStorageValue(cid,a.storage,1) end else doSendMagicEffect(getPlayerPosition(cid), 2) selfSay('{'..getPlayerName(cid)..'} você precisa ser level {'..a.level..'} para receber sua recompensa, faltam apenas {'..a.level - getPlayerLevel(cid)..'}. Ho-ho!', cid) end else selfSay('Voce não é {Master Sorcerer} '..getPlayerName(cid)..'!', cid) end else selfSay('{'..getPlayerName(cid)..'} voce ja pegou seu presente!', cid) end end if msgcontains(msg, 'present knight') then if getPlayerStorageValue(cid,a.storage) == -1 then if getPlayerVocation(cid) == 8 then if getPlayerLevel(cid) >= a.level then selfSay('Ho-ho Feliz Natal '..getPlayerName(cid)..', você recebeu seus itens de {Knight}!', cid) for _, b in pairs(itemknight) do doPlayerAddItem(cid, b[1], b[2]) doSendMagicEffect(getPlayerPosition(cid), 28) setPlayerStorageValue(cid,a.storage,1) end else doSendMagicEffect(getPlayerPosition(cid), 2) selfSay('{'..getPlayerName(cid)..'} você precisa ser level {'..a.level..'} para receber sua recompensa, faltam apenas {'..a.level - getPlayerLevel(cid)..'}. Ho-ho!', cid) end else selfSay('Voce não é {Elite Knight} '..getPlayerName(cid)..'!', cid) end else selfSay('{'..getPlayerName(cid)..'} voce ja pegou seu presente!', cid) end end if msgcontains(msg, 'present paladin') then if getPlayerStorageValue(cid,a.storage) == -1 then if getPlayerVocation(cid) == 7 then if getPlayerLevel(cid) >= a.level then selfSay('Ho-ho Feliz Natal '..getPlayerName(cid)..', você recebeu seus itens de {Paladin}!', cid) for _, b in pairs(itempaladin) do doPlayerAddItem(cid, b[1], b[2]) doSendMagicEffect(getPlayerPosition(cid), 28) setPlayerStorageValue(cid,a.storage,1) end else doSendMagicEffect(getPlayerPosition(cid), 2) selfSay('{'..getPlayerName(cid)..'} você precisa ser level {'..a.level..'} para receber sua recompensa, faltam apenas {'..a.level - getPlayerLevel(cid)..'}. Ho-ho!', cid) end else selfSay('Voce não é {Royal Paladin} '..getPlayerName(cid)..'!', cid) end else selfSay('{'..getPlayerName(cid)..'} voce ja pegou seu presente!', cid) end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
Informações:
- O npc verificar a vocação do player e adiciona itens conforme sua vocação.
- O level minimo para se usar o NPC é 150
- Só pode pegar o presente uma vez
- Itens e level minimo configurável.
Imagens do NPC:
Ao falar com o npc:
NPC verificando que o player pediu o presente que não é da sua vocação:
NPC verificando que o player não tem o level minimo para pegar o presente e informando quantos leveis faltam para o player poder pegar o presente:
Mensagem ao receber o presente:
NPC informando que o player já pegou o presente:
Créditos: Markin