Jump to content

.raidboss NPC Boss Respawn error


Tamira

Recommended Posts

7 hours ago, Tamira said:

This

 

 

4 hours ago, Rootware said:

Looks like you didn't updated script in server folder and seeing old script version. The current script version even with wrong situation must showing something more than one the first line.

 

Link to comment
Share on other sites

4 hours ago, Rootware said:

Looks like you didn't updated script in server folder and seeing old script version. The current script version even with wrong situation must showing something more than one the first line.

  

4 minutes ago, melron said:

 

 

 



I did update it. its running right now.. but the .raidboss dont want to work x.x only shows up the msg 
 

==========<Raid Bosses>==========
Link to comment
Share on other sites

And no errors in console?

 

Just change

 

==========<Raid Bosses>==========

 

to

 

==========<Raid Bosses v2>==========

 

And check what you will see. I'm sure what you forget to update script in right place.

Link to comment
Share on other sites

16 hours ago, Rootware said:

And no errors in console?

 

Just change

 


==========<Raid Bosses>==========

 

to

 


==========<Raid Bosses v2>==========

 

And check what you will see. I'm sure what you forget to update script in right place.

 

Shot00001.png

 

Nothing below that = [

Edited by Tamira
Fix
Link to comment
Share on other sites

On 9/4/2020 at 12:51 AM, Rootware said:

You have 2 different scripts.

package handlers.voicedcommandhandlers;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.logging.Logger;
  
import com.l2jserver.gameserver.datatables.NpcTable;
import com.l2jserver.gameserver.handler.IVoicedCommandHandler;
import com.l2jserver.gameserver.instancemanager.GrandBossManager;
import com.l2jserver.gameserver.model.StatsSet;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
 
import com.l2jserver.gameserver.instancemanager.RaidBossSpawnManager;

 
public class RaidBoosStatus implements IVoicedCommandHandler
{
	static final Logger _log = Logger.getLogger(RaidBoosStatus.class.getName());
    private static final String[] _voicedCommands =
    {
		"grandboss",
		"raidboss"
	};

	@Override
	public boolean useVoicedCommand(String command, L2PcInstance activeChar, String params)
	{
		if (command.startsWith("grandboss"))
		{
			return Status(activeChar);
		}
		if (command.startsWith("raidboss"))
		{
			return Statusboss(activeChar);
		}
		else
		{
			return false;
		}
	}

	public boolean Status(L2PcInstance activeChar)
    {
		int[] BOSSES = { 29001, 29006, 29014, 29019, 29020, 29022, 29028, 29062, 29065, 29118, 29045, 29099, 29163, 29186, 29177 };
        SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
		activeChar.sendMessage("==========<Grand Bosses>==========");
        for (int boss : BOSSES)
		{
			String name = NpcTable.getInstance().getTemplate(boss).getName();
            StatsSet stats = GrandBossManager.getInstance().getStatsSet(boss);
            if (stats == null)
			{
				activeChar.sendMessage("Stats for GrandBoss " + boss + " not found!");
				continue;
			}
			if (boss == 29019)
			{
				long dmax = 0;
                for (int i = 29066; i <= 29068; i++)
				{
					StatsSet s = GrandBossManager.getInstance().getStatsSet(i);
                    if (s == null) continue;
					long d = s.getLong("respawn_time");
                    if (d >= dmax)
					{
						dmax = d;
                        stats = s;
					}
				}
			}
            long delay = stats.getLong("respawn_time");
            long currentTime = System.currentTimeMillis();
            if (delay <= currentTime)
			{
				activeChar.sendMessage(name +" = Is Alive");
			}
			else
			{
				activeChar.sendMessage(name +" = Is Death ( "+sdf.format(new Date(delay))+" )");
			}
		}
		activeChar.sendMessage("==============================");
		return true;
	}

	public boolean Statusboss(L2PcInstance activeChar)
    {
		int[] RBOSSES = { 18555, 25115 };
        SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
		activeChar.sendMessage("==========<Raid Bosses  v2>==========");
        for (int rboss : RBOSSES)
		{
			String namer = NpcTable.getInstance().getTemplate(rboss).getName();
			if (namer == null)
			{
				activeChar.sendMessage("Npc template for ID: " + rboss + " isn't exists!");
				continue;
			}
			StatsSet statsr = RaidBossSpawnManager.getInstance().getStoredInfo().get(rboss);
            if (statsr == null)
			{
				activeChar.sendMessage("Stats for RaidBoss " + rboss + " not found!");
				continue;
			}

            long delayr = statsr.getLong("respawn_time");
            long currentTime = System.currentTimeMillis();
            if (delayr <= currentTime)
			{
				activeChar.sendMessage(namer +" = Is Alive");
			}
			else
			{
				activeChar.sendMessage(namer +" = Is Death ( "+sdf.format(new Date(delayr))+" )");
			}
		}
		activeChar.sendMessage("==============================");
		return true;
	}



	@Override
	public String[] getVoicedCommandList()
	{
		return _voicedCommands;
	}
}

this is the one running right now on my server...

Link to comment
Share on other sites

7 hours ago, Tamira said:

package handlers.voicedcommandhandlers;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.logging.Logger;
  
import com.l2jserver.gameserver.datatables.NpcTable;
import com.l2jserver.gameserver.handler.IVoicedCommandHandler;
import com.l2jserver.gameserver.instancemanager.GrandBossManager;
import com.l2jserver.gameserver.model.StatsSet;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
 
import com.l2jserver.gameserver.instancemanager.RaidBossSpawnManager;

 
public class RaidBoosStatus implements IVoicedCommandHandler
{
	static final Logger _log = Logger.getLogger(RaidBoosStatus.class.getName());
    private static final String[] _voicedCommands =
    {
		"grandboss",
		"raidboss"
	};

	@Override
	public boolean useVoicedCommand(String command, L2PcInstance activeChar, String params)
	{
		if (command.startsWith("grandboss"))
		{
			return Status(activeChar);
		}
		if (command.startsWith("raidboss"))
		{
			return Statusboss(activeChar);
		}
		else
		{
			return false;
		}
	}

	public boolean Status(L2PcInstance activeChar)
    {
		int[] BOSSES = { 29001, 29006, 29014, 29019, 29020, 29022, 29028, 29062, 29065, 29118, 29045, 29099, 29163, 29186, 29177 };
        SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
		activeChar.sendMessage("==========<Grand Bosses>==========");
        for (int boss : BOSSES)
		{
			String name = NpcTable.getInstance().getTemplate(boss).getName();
            StatsSet stats = GrandBossManager.getInstance().getStatsSet(boss);
            if (stats == null)
			{
				activeChar.sendMessage("Stats for GrandBoss " + boss + " not found!");
				continue;
			}
			if (boss == 29019)
			{
				long dmax = 0;
                for (int i = 29066; i <= 29068; i++)
				{
					StatsSet s = GrandBossManager.getInstance().getStatsSet(i);
                    if (s == null) continue;
					long d = s.getLong("respawn_time");
                    if (d >= dmax)
					{
						dmax = d;
                        stats = s;
					}
				}
			}
            long delay = stats.getLong("respawn_time");
            long currentTime = System.currentTimeMillis();
            if (delay <= currentTime)
			{
				activeChar.sendMessage(name +" = Is Alive");
			}
			else
			{
				activeChar.sendMessage(name +" = Is Death ( "+sdf.format(new Date(delay))+" )");
			}
		}
		activeChar.sendMessage("==============================");
		return true;
	}

	public boolean Statusboss(L2PcInstance activeChar)
    {
		int[] RBOSSES = { 18555, 25115 };
        SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
		activeChar.sendMessage("==========<Raid Bosses  v2>==========");
        for (int rboss : RBOSSES)
		{
			String namer = NpcTable.getInstance().getTemplate(rboss).getName();
			if (namer == null)
			{
				activeChar.sendMessage("Npc template for ID: " + rboss + " isn't exists!");
				continue;
			}
			StatsSet statsr = RaidBossSpawnManager.getInstance().getStoredInfo().get(rboss);
            if (statsr == null)
			{
				activeChar.sendMessage("Stats for RaidBoss " + rboss + " not found!");
				continue;
			}

            long delayr = statsr.getLong("respawn_time");
            long currentTime = System.currentTimeMillis();
            if (delayr <= currentTime)
			{
				activeChar.sendMessage(namer +" = Is Alive");
			}
			else
			{
				activeChar.sendMessage(namer +" = Is Death ( "+sdf.format(new Date(delayr))+" )");
			}
		}
		activeChar.sendMessage("==============================");
		return true;
	}



	@Override
	public String[] getVoicedCommandList()
	{
		return _voicedCommands;
	}
}

this is the one running right now on my server...

If you're running a server under such code, shut it down now.

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now


×
×
  • Create New...