Hud Optimization?

I’m currently in the process of optimizing my boss battle mode and wanted to know what the best/most efficient method would be for creating a HUD at the start of a round in the elimination mode and destroying it after the round is complete. My current method uses wait until and a loop. Would it be better to split this into 2 global ongoing events or keep it as is? I am trying to use less wait actions as my mode sometimes crashes to script overload.

rule("Initialize Boss Health HUD")
{
	event
	{
		Ongoing - Global;
	}

	actions
	{
		Wait Until(Is Game In Progress, 99999);
		Create Progress Bar HUD Text(All Players(Team 1), Normalized Health(Global.CurrentBoss) * 100, Custom String("{0} {1}% ({2})",
			Icon String(Plus), Round To Integer(Normalized Health(Global.CurrentBoss) * 100, To Nearest), String("{0} {1}", String(
			"Level"), Global.BossLevel)), Right, 0, Color(Team 2), Color(White), Values, Default Visibility);
		Wait Until(Is Between Rounds, 99999);
		Destroy Progress Bar HUD Text(Last Text ID);
		Loop;
	}
}

Looks fine, those conditions are not load intensive and I believe that Wait Until should have the same performance as an ongoing event rule.

Likely not, conditions are going to be checked regardless.

1 Like