Conhecendo Melhor A Pasta Globalevents

alissonlinneker

ñ frite bacon sem kmiza xP
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 15/12/07Posts: 239

Bem, como todos sabem, o TFS sempre está com uma nova atualização, e a casa atualização, novos conteúdos são adicionados. Este tópico tem o principal objetivo, de mostrar para vocês um dos novos sistemas das novas versões do The Forgotten Server.

Não garanto que haverá está pasta em todos os servidores. Mais garanto que será muito utilizado em pouco tempo.

Pois bem, vamos ao que interessa.

 

-Iniciando:

 

A pasta globalevents, é um sistema que facilita o uso de alguns scripts específicos que são ativados por um tempo X.

Apartir deste sistema, o administrador do servidor, poderá gerar diversas funções como mensagens pre-determinadas, raids personalizadas e até mesmo funções de manutenção, como saves e clears.

 

-Entendendo mais sobre a função:

 

Para saber se o seu servidor possui esta função, basta procurar a pasta globalevents, dentro da pasta data do seu servidor.

 

Confira se dentro desta pasta, existe uma outra pasta com o nome scripts, e um arquivo de nome globalevents.xml

 

Se for encontrada esta pasta, é sinal de que o servidor tem o 'sistema'.

Mais isso não indica certeza. dependendo ou não da pasta, o mais importante e a versão do servidor.

Creio que a maioria dos servidores de 8.31 á 8.4 (0.3beta2), possui este 'sistema'.

 

-Entendendo mais sobre o Globalevents.xml:

 

Este arquivo, é onde você vai definir as ações que serão executadas pelo servidor.

Veja um exemplo:

 

<globalevent name="save" interval="900" script="save.lua"/>

 

save = Nome da função a ser executada, no caso pegaremos um exemplo de um autosave pre-determinado. Obs: O nome da função não é o que a define.

 

900 = É o intervalo de tempo em segundos que aquela função será executada. Sendo então, 15 minutos.

 

save.lua = Sendo o save.lua, que será lido pela função declarada no arquivo.

 

Bem, ja que demos um nome a função, colocamos um tempo de ação e definimos o arquivo.lua da função, partiremos agora para o mais importante do sistema.

 

-Configurando o script da função:

 

Apos definir isso no globalevents.xml, veremos agora o save.lua dentro da pasta scripts.

 

Save.lua:

 

function onThink(interval, lastExecution)

saveServer()

return TRUE

end

 

Definimos a função onThink para iniciar o script, e declaramos o intervalo e a última execução (interval, lastExecution).

É simples...como todo os outros scripts, basta você adicionar o seu contúdo entre function onThink(interval, lastExecution) e o end, e seu script será executado de 15 em 15 minutos como aviamos feito no globalevents.xml.

 

Ou seja, a função de salvar no script, é apenas saveServer().

 

Podemos também complementar este script com uma mensagem global, determinada por " doBroadcastMessage(message, type)". Ficaria assim:

 

function onThink(cid, words, interval, lastExecution)

saveServer()

 

doBroadcastMessage("Feliz 2009!",21)

 

return TRUE

end

 

Veja que usei a function "broadcastMessage", para mandar uma mensagem global, seguida do texto 'Feliz 2009!', que é o texto que será exibido, com sua cor '21' (branca).

 

Pronto, agora você tem um autosave de 15 em 15 minutos com uma mensagem personalizada!

 

-Adicionais:

 

Como todo bom tutorial, deixo para vocês mais funções que podem ser usadas, fica por conta de vocês configurar o tempo e o nome do arquivo agora:

 

Mensagem para todos os jogadores:

function onThink(cid, words, param, interval, lastExecution)

broadcastMessage(" Tenha um bom jogo! ",21)

end

 

Auto Clean:

function onThink(cid, words, param, interval, lastExecution)

function executeClean()

cleanMap()

doBroadcastMessage("Próximo clean em 1 hora.")

return TRUE

end

 

function onThink(cid, words, interval, lastExecution)

doBroadcastMessage("Map clean em 30 segundos. Por favor, pegue seus itens!")

addEvent(executeClean, 30000)

return TRUE

end

 

Horas:

function onThink(cid, words, interval, lastExecution)

data = os.date("\nData: %d/%m/%Y \n\n Horário: %H:%M:%S \n")

 

doPlayerSendTextMessage(cid, 22, ""..data.."")

 

end

 

Uptime:

function onThink(cid, words, interval, lastExecution)

local hours = math.ceil(getWorldUpTime() / 3600) - 1

local minutes = math.ceil((getWorldUpTime() - (3600 * hours)) / 60)

if minutes == 60 then

minutes = 0

hours = hours + 1

end

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Uptime: " .. hours .. " hours and " .. minutes .. " minutes.")

return TRUE

end

 

Mostrando quanto de dinheiro o player tem:

function onThink(cid, words, interval, lastExecution)

local money = getPlayerMoney(cid)

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have " .. money .. " gold.")

return TRUE

end

 

Mostrando os frags do player:

local config = {

fragTime = getConfigInfo('timeToDecreaseFrags')

}

 

function onThink(cid, words, interval, lastExecution)

local amount = getPlayerRedSkullTicks(cid)

if(amount > 0 and config.fragTime > 0) then

local frags = math.floor((amount / config.fragTime) + 1)

local remainingTime = math.floor(amount - (config.fragTime * (frags - 1)))

 

local hours = math.floor(((remainingTime / 1000) / 60) / 60)

local minutes = math.floor(((remainingTime / 1000) / 60) - (hours * 60))

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have " .. frags .. " unjustified frag" .. (frags > 2 and "s" or "") .. ". The amount of unjustified frags will decrease after: " .. hours .. "h and " .. minutes .. "m.")

else

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You do not have any unjustified frag.")

end

return TRUE

end

 

 

Bom, por enquanto é so.

Bom aproveito a todos. =D

 

Até o próximo!



Devo esquecer aqueles que me impuseram obstáculos infundados e agradecer àqueles que me impulsionaram adiante. É hora, mais do que nunca, de valorizar as amizades e os conhecimentos adquiridos aqui. Agradeço a todos que me apoiaram. Vlw xTibia!
Amais!
[Retired]



~~>Meus Trabalhos:

---Sistema De Domínio De Castelos. (Action)
---Sistema De Mineraçao (Action)
---Scroll Que Da X Exp Quando é Usada (Action)
---Portas Não Abrem? Venha Aqui Ver Como Arruma! (Action)
---Crie Suas Quest´s De Uma Maneira Rapida E Facil. (Action)
---The Demon OaK Quest (Action)

---Addon Por Item, Com Todos Os Outfits. (Npc)

---Aprenda a colocar suas quests no Quest Log (Tutorial+scripts _ data/xml/quests.xml)
---Conhecendo Melhor A Pasta Globalevents (Tutorial+scripts)
---Gerencie O Seu Mysql Como Se Fosse Sqlite (Tutorial)
---Multi World Sistem - Como Funciona. (Tutorial)

---Projeto de tradução do TFS 8.31 SQL - Inglês para o Portugês (Server 8.31)

---2 Templantes para Web Site de OT (Websites de OTserv)
---Atualização de sites do Gesior para sistema de mult-world (Websites de OTserv)

---Thyrania editado (Map)
---Yalahar Global Completo (Map)

---Pic Editor para Tibia 8.2+ (Programa)
---Ztracker - Clone mapas 8.4 (Programa)



hpjp

Melhor de todos
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 05/05/08Posts: 70Char no Tibia: vários 400+

ESSE CARAI AI É UM GENIO NO MUNDO DOS OTSERVER DESCOBRE CADA COISA

UM TOPICO DESSE MERECE UM FIXO...

 

BOTA FIXO AI ADM'S.........

apenas lute mais para alcançar seu objetivo..

assim que você conseguir será bem mais praseroso...

 

comedinhasss

Comedinha
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 08/08/07Posts: 520Gênero: MasculinoChar no Tibia: Sir Morths

Parabéns ta ótimo amei S2

Bruno de Carvalho Câmara
[email protected]<script data-cfhash='f9e31' type="text/javascript"> /* */</script> / (18) 9 9640-4544
 

 

 

 

 

 

 

 

 

 

facebook.png&key=5c75f89868a8711c49cc20315645ab5fd3ef2d384bf666dd888f1c280a6b75ed&resource=1 twitter.png&key=a62b8fde99e302436f4cc04056c02768d777c0d27d77011e8931ced8099246e6&resource=1 googleplus.png&key=f287787442661f4422363039ba86e9c578c4921ad397c8f0d88f31709d26c48a&resource=1 youtube.png&key=08e8d5ba725e0a7bfedfe6c9d413ff55e2febb19493974e3a1fd5160d3cabc9f&resource=1 skype.png&key=0aee9c9483d4f4dee341915e654aa361f40598341a31a62afec9f83a2734e0ad&resource=1 steam-icon.png&key=b869d73d6be3b894b7204e151a9582d3b2a84a5d853d940297fec82e1ae25b55&resource=1

 

 

 

 

 

 

 

 

 

 

btn_donateCC_LG.gif&key=ea1b6265cec82d379c00914ab97fd15478f9983200fa273984872388d20f0b62&resource=1 180x25-doar.gif&key=8671e0307e2a7fd446670d1b16671d35069b1c91bed3d028b8f7db698c59eac5&resource=1

 

"Pesadelos? Sonhos? Calma, é apenas eu pensando em você!"

 

wMwSJFE.png?1&key=101925b29f8396357ec8f63d177a708785a8da5f96f154f44e9a4c6599794673&resource=1

delton

Ex-Xtibian
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 16/11/07Posts: 389Gênero: MasculinoChar no Tibia: Tiger Darm

AlissonLinneker

 

Fico muito legal seu tutorial, APROVADO.

 

Mas tipo você poderia explicar as funções lua, tipo "onThink" ou "broadcastMessage" para que a pessoa entenda o que está acontecendo e não venha aqui nesse post fazer um geral de "Copiar e Colar", até para chamar mais atenção também xD

 

Delton~~

Olá XTibiano:

Sua assinatura estava com um problema na TAG SPOILER e foi movida para a parte "Sobre mim".
Agradecemos a sua compreensão.

Atenciosamente,
JV Chequer

alissonlinneker

ñ frite bacon sem kmiza xP
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 15/12/07Posts: 239
AlissonLinneker

 

Fico muito legal seu tutorial, APROVADO.

 

Mas tipo você poderia explicar as funções lua, tipo "onThink" ou "broadcastMessage" para que a pessoa entenda o que está acontecendo e não venha aqui nesse post fazer um geral de "Copiar e Colar", até para chamar mais atenção também xD

 

Delton~~

 

Vlw por lembrar...

adicionei algumas linhas explicando melhor as funções...



Devo esquecer aqueles que me impuseram obstáculos infundados e agradecer àqueles que me impulsionaram adiante. É hora, mais do que nunca, de valorizar as amizades e os conhecimentos adquiridos aqui. Agradeço a todos que me apoiaram. Vlw xTibia!
Amais!
[Retired]



~~>Meus Trabalhos:

---Sistema De Domínio De Castelos. (Action)
---Sistema De Mineraçao (Action)
---Scroll Que Da X Exp Quando é Usada (Action)
---Portas Não Abrem? Venha Aqui Ver Como Arruma! (Action)
---Crie Suas Quest´s De Uma Maneira Rapida E Facil. (Action)
---The Demon OaK Quest (Action)

---Addon Por Item, Com Todos Os Outfits. (Npc)

---Aprenda a colocar suas quests no Quest Log (Tutorial+scripts _ data/xml/quests.xml)
---Conhecendo Melhor A Pasta Globalevents (Tutorial+scripts)
---Gerencie O Seu Mysql Como Se Fosse Sqlite (Tutorial)
---Multi World Sistem - Como Funciona. (Tutorial)

---Projeto de tradução do TFS 8.31 SQL - Inglês para o Portugês (Server 8.31)

---2 Templantes para Web Site de OT (Websites de OTserv)
---Atualização de sites do Gesior para sistema de mult-world (Websites de OTserv)

---Thyrania editado (Map)
---Yalahar Global Completo (Map)

---Pic Editor para Tibia 8.2+ (Programa)
---Ztracker - Clone mapas 8.4 (Programa)



Skywar

Mapping é uma arte, seja um artista.
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 09/01/09Posts: 236Char no Tibia: Stron Kolosso

Tutorial básico, porém bem útil. Parabéns Alisson.

2SOof8veH.jpg

1070vog.png

att, Skywar

contato via email - skywar@hotmail.com.br

concursos conquistados -

CEM#3 ; CEM#6 ; Xmapping#11

aulas de mapping -

aula#1 ; aula#2 ; aula#3 ; aula#4 ; aula#5 ; aula#6

tibiaa4e

Ex amante de Tibia
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 18/12/05Posts: 912Gênero: MasculinoChar no Tibia: Kohzete

Muito bom... Esse até que aprendi facil

 

To me enrolando um pouco com o creature events

 

Não foi aprovado ainda ?

Aposentado de OTserver e Tibia

Meus melhores tutoriais
Enciclopédia Pasta Data
Tutorial de quest

alissonlinneker

ñ frite bacon sem kmiza xP
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 15/12/07Posts: 239
Muito bom... Esse até que aprendi facil

 

vlw...=D

 

To me enrolando um pouco com o creature events

 

suahsuahusah

com esse creature event, vai ser bem melhor...melhor do que jah táh

 

Não foi aprovado ainda ?

 

pois é..

=/



Devo esquecer aqueles que me impuseram obstáculos infundados e agradecer àqueles que me impulsionaram adiante. É hora, mais do que nunca, de valorizar as amizades e os conhecimentos adquiridos aqui. Agradeço a todos que me apoiaram. Vlw xTibia!
Amais!
[Retired]



~~>Meus Trabalhos:

---Sistema De Domínio De Castelos. (Action)
---Sistema De Mineraçao (Action)
---Scroll Que Da X Exp Quando é Usada (Action)
---Portas Não Abrem? Venha Aqui Ver Como Arruma! (Action)
---Crie Suas Quest´s De Uma Maneira Rapida E Facil. (Action)
---The Demon OaK Quest (Action)

---Addon Por Item, Com Todos Os Outfits. (Npc)

---Aprenda a colocar suas quests no Quest Log (Tutorial+scripts _ data/xml/quests.xml)
---Conhecendo Melhor A Pasta Globalevents (Tutorial+scripts)
---Gerencie O Seu Mysql Como Se Fosse Sqlite (Tutorial)
---Multi World Sistem - Como Funciona. (Tutorial)

---Projeto de tradução do TFS 8.31 SQL - Inglês para o Portugês (Server 8.31)

---2 Templantes para Web Site de OT (Websites de OTserv)
---Atualização de sites do Gesior para sistema de mult-world (Websites de OTserv)

---Thyrania editado (Map)
---Yalahar Global Completo (Map)

---Pic Editor para Tibia 8.2+ (Programa)
---Ztracker - Clone mapas 8.4 (Programa)



soulblaster

avatar
Cavaleiro
Cavaleiro

INFOS

Grupo: CavaleiroRegistrado: 22/10/05Posts: 196

Hiho!

 

@Topico

Legal alguém falar do globalevent :)

Mas, não querendo ser chato, a maioria dos exemplos ai não vai funcionar O_O'

A função do global event é descrita por: onThink(interval, lastExecution)

O que seria isso que você utilizou:

function onThink(cid, words, param, interval, lastExecution)

!? Talvéz uma mistura de globalevent com talkaction haha :p

Otro exemplo é o cid que você utilizou, não existe cid como parâmetro :X

De uma arrumada nos scripts.

 

cya ^^'

Assinatura feita por Kilerzinhow:
untitled3mg3.jpg
| Wey.Ctba | Wey.Ctba | Rafix | UnderNight | Xedegux |

tibiaa4e

Ex amante de Tibia
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 18/12/05Posts: 912Gênero: MasculinoChar no Tibia: Kohzete

@up

 

E laia auhauha

 

Global eu não vi nada eu nem percebi...

 

Só to tentando aprender mesmo o creature o0

Aposentado de OTserver e Tibia

Meus melhores tutoriais
Enciclopédia Pasta Data
Tutorial de quest

alissonlinneker

ñ frite bacon sem kmiza xP
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 15/12/07Posts: 239

Ixi...

foi na correria...fiquei de colocar isso na hora de terminar e acabei esquecendo...

vo atualizar aqui..

vlw por lembrar..

:withstupidsmiley:



Devo esquecer aqueles que me impuseram obstáculos infundados e agradecer àqueles que me impulsionaram adiante. É hora, mais do que nunca, de valorizar as amizades e os conhecimentos adquiridos aqui. Agradeço a todos que me apoiaram. Vlw xTibia!
Amais!
[Retired]



~~>Meus Trabalhos:

---Sistema De Domínio De Castelos. (Action)
---Sistema De Mineraçao (Action)
---Scroll Que Da X Exp Quando é Usada (Action)
---Portas Não Abrem? Venha Aqui Ver Como Arruma! (Action)
---Crie Suas Quest´s De Uma Maneira Rapida E Facil. (Action)
---The Demon OaK Quest (Action)

---Addon Por Item, Com Todos Os Outfits. (Npc)

---Aprenda a colocar suas quests no Quest Log (Tutorial+scripts _ data/xml/quests.xml)
---Conhecendo Melhor A Pasta Globalevents (Tutorial+scripts)
---Gerencie O Seu Mysql Como Se Fosse Sqlite (Tutorial)
---Multi World Sistem - Como Funciona. (Tutorial)

---Projeto de tradução do TFS 8.31 SQL - Inglês para o Portugês (Server 8.31)

---2 Templantes para Web Site de OT (Websites de OTserv)
---Atualização de sites do Gesior para sistema de mult-world (Websites de OTserv)

---Thyrania editado (Map)
---Yalahar Global Completo (Map)

---Pic Editor para Tibia 8.2+ (Programa)
---Ztracker - Clone mapas 8.4 (Programa)



ronka

Ronka
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 15/12/07Posts: 14Char no Tibia: Mezinho

FERA !

RedZL

Never mind, I'll find someone like you.
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 06/11/06Posts: 850Char no Tibia: Xearius Thor

Desculpe-me a demora.

 

Aprovado.

Administrador

xTibia 2017
avatar
Administrador
Administrador

INFOS

Grupo: AdministradorRegistrado: 09/07/05Posts: 5780Gênero: Outro

Realmente essa funcionalidade foi genial para o Open Tibia =p

Parabéns pelo tutorial e pelos desenvolvedores que proporcionaram GlobalEvents =p

 

Abraços

DICA

Utilize botão @UP, no início de seu tópico, para atualizar o destaque de seu tópico em "Tópicos Recentes" na index, fará com que mais pessoas o vejam.