Chat global

Chat
Loading the chat ...
Pedido informações ...
 
Notifications
Clear all

Pedido informações Alerta BOSS

12 Posts
3 Usuários
3 Reactions
50 Visualizações
(@onept)
Posts: 7
Apoiador Ativo
Topic starter
 

Boa noite, estou com uma dúvida no desenvolvimento do meu servidor..

 

oque está acontecendo é o seguinte.. quando dá o horário do boss.. exemplo: Kelvezu irá nascer as 20:32 , se eu não estiver no mapa então não aparece no chat e o mob  não nasce, eu gostaria de alterar isso, gostaria que mostrasse os bosses no alerta sem eu estar dentro do mapa para que os players saibam onde cada um irá nascer, desde já agradeço muito

 
Postado : 01/08/2025 11:03 pm
alucard
(@alucard)
Posts: 21
Mentor Respeitado
 

os boss é colocado na pasta gameserver /Field , em boss.ase 

para avisar no char dependendo suas files, vai em onsever.cpp e acha esse if

if (lpStgArea->lpField->FieldCode == 36) //codigo do mapa (cav kelv)
wsprintf(TransChatMessage.szMessage, "[%s] nascerá em 5 minutos [%s]!", lpBossMonster->MasterMonster->szName, "Caverna do Kelvezu");

E você pode ir adicionando outros if copiando o primeiro só que trocando o fieldcode

 
Postado : 01/08/2025 11:39 pm
OnePT reacted
(@onept)
Posts: 7
Apoiador Ativo
Topic starter
 

então no meu servidor já existe o alerta, e ele avisa antes, mas só avisa se o player estiver no mapa, tem como colocar para avisar mesmo se o player não estiver no mapa?

 
Postado : 01/08/2025 11:47 pm
alucard
(@alucard)
Posts: 21
Mentor Respeitado
 

Qual files tu usa?

 
Postado : 02/08/2025 1:07 am
(@onept)
Posts: 7
Apoiador Ativo
Topic starter
 

uso a desk do drax

 
Postado : 02/08/2025 1:44 am
alucard
(@alucard)
Posts: 21
Mentor Respeitado
 

@onept precisa postar o trecho de como é o seu if de nascimento de boss.

 
Postado : 02/08/2025 11:21 am
Godfather
(@godfather)
Posts: 8
Apoiador Ativo
 

Atualmente deve estar assim
rsplayinfo[i].area ou field ou code enfim procura ai. == numero do mapa.
pra fazer o que vc quer ignora a verificaçao de mapa e so verifica se o player esta online se existe ponteiro de socket. que ficaria assim
for(playermax
(rsplayinfo[i].lpmsock)
send
assim ira enviar para todos

Só sei que nada eu sei

 
Postado : 02/08/2025 10:22 pm
Raka reacted
(@onept)
Posts: 7
Apoiador Ativo
Topic starter
 

seria aqui ?

 

for (cnt = 0; cnt < CONNECTMAX; cnt++) {
if (rsPlayInfo[cnt].lpsmSock && retornarNomeMapa(lpStgArea->lpField->FieldCode) != nullptr) {
if (rsPlayInfo[cnt].Position.Area == lpStgArea->lpField->FieldCode)
rsPlayInfo[cnt].lpsmSock->Send((char*)& TransChatMessage, TransChatMessage.size, TRUE);
}
}
return 0;
Este post foi modificado 5 dias atrás por PoTrAs18
 
Postado : 02/08/2025 11:24 pm
(@onept)
Posts: 7
Apoiador Ativo
Topic starter
 

@godfather rsplayinfo[i].area não achei , nem rsplayinfo[i].code nem rsplayinfo[i].field, poderia me ajudar?

 
Postado : 02/08/2025 11:31 pm
Godfather
(@godfather)
Posts: 8
Apoiador Ativo
 

@onept Sim ai mesmo.
Vamos la o que ai esta fazendo
Ele percorre todos os rsplayinfo alocados que geralmente sao 1024.
Depois ele verifica se existe lpsmSock  pra verificar se existe jogador naquele ponteiro.
E Depois verifica na funçao retornarmapa ai se ele encontrou um mapa valido para o lpstage.
Depois ele verifica Se a Position.Area<- Numero do mapa é igual ao do Stage do monstro.
Entao ele manda a mensagem no Send para todos os players que estao no Stage.
Depois de voce ler tudo que eu digitei e entender. Voce vai entender que se voce remover essa verificaçao
if (rsPlayInfo[cnt].Position.Area == lpStgArea->lpField->FieldCode)
Ele ja nao verifica mais se o player esta no mesmo mapa. 
Porem acho desnecessario rodar um loop de 1024 jogadores e a cada iteraçao ativa ta chamando a funçao retornarNomeMapa
Boa sorte!

Este post foi modificado 6 dias atrás 4 vezes por Godfather

Só sei que nada eu sei

 
Postado : 03/08/2025 12:37 am
Raka reacted
(@onept)
Posts: 7
Apoiador Ativo
Topic starter
 

@godfather sua explicação foi foda demais, entendi perfeitamente.  Analisando bem a situação eu não irei fazer essa alteração. Me fez entender que vai floodar muito o mapa deixando suja a visualização, os players podem identificar o boss que irá nascer pela descrição do mapa e visualizar o horário que os mesmos nascem para não perder os bosses, eu tenho algumas dúvidas em relação outras coisas e você foi o único cara que eu consegui entender kkkkkk tem a didática muito boa para orientar. Será que teria como me passar seu dc se não for incômodo? Nem que eu pague por alguns serviços

 
Postado : 03/08/2025 1:00 am
Godfather
(@godfather)
Posts: 8
Apoiador Ativo
 

@onept Eu nao trabalho com priston irmao. Eu ajudo a comunidade de boa fe e coraçao mesmo. 
pode ir postando no forum suas duvidas.
Eu nao vejo isso como um flood nao se voce tem poucos bosses durante o dia.
Concordo com voce que no chat realmente isso acaba incomodando muito e geralmente o pessoal faz um alerta que passa na tela e some apos alguns segundos definidos.
Nao importo e numca me importei de ajudar a comunidade se tiver alguma duvida pode postar ai ou mandar la no DC : godfather.copyright
Mas desde ja deixo claro. Eu nao vendo nada nem files nem dev nem correçao nem aula nem poha nenhuma se pedir eu bloqueio 🙂

Só sei que nada eu sei

 
Postado : 03/08/2025 1:27 am
Compartilhar:

Anúncio