Ir para conteúdo

Featured Replies

Postado

Então, as chances das minhas raids não estão sendo respeitadas. Já tentei colocar 0, 1, 2, ..., 100, mas qualquer que seja o número que ponho ali, ela sempre acontece, e eu queria que a probabilidade fosse respeitada. Alguém sabe dizer o motivo? Pode ser erro da distro? Tem alguma gambiarra que eu possa usar? Eu uso OTX

 

Meu raids.xml

<?xml version="1.0" encoding="UTF-8"?>
<raids>
	<raid name="OrcsThais" file="normal/OrcsThais.xml" chance="0" interval2="60" margin="0" />
	<raid name="Pirates" file="normal/Pirates.xml" chance="0" interval2="65" margin="0" />
</raids>

Um dos meus arquivos de raid

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

<announce delay="1000" type="event" message="Pirates are launching a surprise attack on Liberty Bay! Take care, they seem to be everywhere." />
<announce delay="60000" type="event" message="Pirates have invaded the city." />

  <areaspawn delay="60000" fromx = "32211" fromy = "32821" fromz = "7" tox = "32248" toy = "32876" toz = "7">
    <monster name="Pirate Corsair" amount="30" />
    <monster name="Pirate Buccaneer" amount="30" />
    <monster name="Pirate Cutthroat" amount="30" />
    <monster name="Pirate Marauder" amount="30" />
    <monster name="Smuggler" amount="30" />
	<monster name="Deadeye Devious" amount="1" />
	<monster name="Ron the Ripper" amount="1" />
	<monster name="Brutus Bloodbeard" amount="1" />
	<monster name="Lethal Lissy" amount="1" />
  </areaspawn>

  </raid>

 

Editado por jefersonzc
erro de grafia (veja o histórico de edições)

Postado

pelo que eu vi ai, voce esta colocando as chances no lugar errado, o "interval" significa "intervalo", ou seja, o tempo que vai acontecer as raids, tente colocar a chance no chance="0"

Postado
  • Autor
2 horas atrás, Pepeco disse:

pelo que eu vi ai, voce esta colocando as chances no lugar errado, o "interval" significa "intervalo", ou seja, o tempo que vai acontecer as raids, tente colocar a chance no chance="0"

 

Creio que você não entendeu bem. Eu coloquei chance="0" justamente para testar se a raid não iria acontecer, e mesmo assim ela aconteceu. Ou seja, independente do número que eu coloque no chance, a raid SEMPRE acontece.

Mas tudo bem, fiz uma gambiarra que deu certo, vou postar aqui para futuras pessoas com o mesmo problema. 

 

------------------------------------------ SOLUÇÃO --------------------------------------------

 

Bom, aqui vai a gambiarra solução:

 

Já que o servidor em questão dá SS uma vez por dia, vou colocar um tempo e uma margem alta o suficiente no meu arquivo raids.xml (maior que 1 dia), de forma que as raids NUNCA aconteçam através dele. 

<?xml version="1.0" encoding="UTF-8"?>
<raids>
	<raid name="Orcs" file="normal/Orcs.xml" chance="0" interval2="99999" margin="99999" />
	<raid name="Pirates" file="normal/Pirates.xml" chance="0" interval2="99999" margin="99999" />
</raids>

Agora em globalevents.xml vou inserir a seguinte linha:

<globalevent name="Raids" interval="3600000" script="raids.lua"/>

OBS 1.: interval="3600000" equivale à 1h, ou seja, de hora em hora o arquivo vai tentar executar as raids

 

Então criei um raids.lua dentro de /data/globalevents/scripts 

local RAIDS = {
[1] = {name = "Orcs", chance = 1}, -- nome da raid e chance em %
[2] = {name = "Pirates", chance = 1}, -- nome da raid e chance em %
}

function onThink(interval, lastExecution)
	for i = 1,#RAIDS do
		local x = math.random(1, 100)
		if x <= RAIDS[i].chance then
			executeRaid(RAIDS[i].name)
		end
	end
	return true
end

OBS 2.: O nome da raid nesse arquivo tem que ser igual ao nome da raid em raids.xml

OBS 3.: Não cheguei a testar, mas acho que quando uma raid acontece, outra não pode acontecer imediatamente em seguida. Para manter um melhor equilíbrio, aconselho a deixar as raids em ordem crescente de chances 

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

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 520.1k

Informação Importante

Confirmação de Termo