Jump to content

Recommended Posts

  • Active Member

Hello community,

Today, I would like to share with you my boss info system:

  1. On the right side of the game window, you will see a new panel.
  2. The panel updates when a boss spawns, is killed, or dies.
  3. The visibility settings (hide/show) are saved in the client configuration.
  4. No database is used; everything is stored in core memory.

Preview:

spacer.png

 

GitHub link

Or download it directly via metin2.download

This is the hidden content, please

Metin2 Download

   Cheers.

  • Metin2 Dev 95
  • Eyes 1
  • Good 19
  • muscle 1
  • Love 2
  • Love 49
Link to comment
https://metin2.dev/topic/33209-info-about-livedead-bosses-on-map/
Share on other sites

  • Premium
10 hours ago, KolenMG said:

Can you tell us please what are the info from the panel? I can't actually understand that language. 😅 Thanks in advance!

Info about live/dead bosses on map.

  • Active Member
14 hours ago, KolenMG said:

Can you tell us please what are the info from the panel? I can't actually understand that language. 😅 Thanks in advance!

On the right side you see available bosses on current location

Window on the right side didn't show because there is a problem in this void
 

void CHARACTER_MANAGER::SendBossInfo(LPCHARACTER ch)

Specifically here

	if (m_MapBossInfo.find(ch->GetMapIndex()) == m_MapBossInfo.end())
	{
		ch->ChatPacket(CHAT_TYPE_INFO, "Debug::SendBossInfo m_MapBossInfo problem !");
		return;
	}

 

  • Active Member

It's because I forgot that by default there is no

bFisrtSpawn

in regen.cpp.

I updated GitHub repo, but you can find below how to fix this:
 

// find:
static void regen_spawn(LPREGEN regen, bool bOnce)

// change it to:
#ifdef BOSS_INFO
static void regen_spawn(LPREGEN regen, bool bOnce, bool bFirstSpawn = false)
#else
static void regen_spawn(LPREGEN regen, bool bOnce)
#endif


// find:
if (regen->time != 0)
{
	regen_spawn(regen, false);
	
// change to:
if (regen->time != 0)
{
#ifdef BOSS_INFO
	regen_spawn(regen, false, true);
#else
	regen_spawn(regen, false);
#endif

 

Syser error:

1116 21:44:05312 :: Traceback (most recent call last): 1116 21:44:05312 :: File "game.py", line 2144, in BINARYServerCommandRun 1116 21:44:05312 :: File "stringCommander.py", line 63, in Run 1116 21:44:05312 :: File "stringCommander.py", line 31, in call 1116 21:44:05313 :: File "stringCommander.py", line 11, in __call 1116 21:44:05313 :: File "game.py", line 2760, in __BossInfoLoadComplete 1116 21:44:05313 :: File "interfaceModule.py", line 2559, in BossInfoLoadComplete 1116 21:44:05313 :: File "uibossinfo.py", line 112, in BossInfoLoadComplete 1116 21:44:05313 :: AttributeError 1116 21:44:05313 :: : 1116 21:44:05313 :: 'module' object has no attribute 'MakeText' 1116 21:44:05313 :: 1116 21:44:05313 :: Unknown Server Command BossInfoLoadComplete | BossInfoLoadComplete 1116 21:44:15889 :: Traceback (most recent call last):

 

Thanks in advance.

I noticed that to read the BOSS in the maps, they must be marked as "m" (mob) and not as "g" (group) in the regen files (currently boss.txt is the first one I tried)

In any case the System works, with the author's permission I would like to extend it and apply different features, it gave me some ideas in mind!

 

 

  • Love 1
  • Active Member
14 hours ago, X E N O N said:

I noticed that to read the BOSS in the maps, they must be marked as "m" (mob) and not as "g" (group) in the regen files (currently boss.txt is the first one I tried)

In any case the System works, with the author's permission I would like to extend it and apply different features, it gave me some ideas in mind!

 

 

Feel free, repo is public 🙂

On 11/17/2024 at 5:59 PM, Denyse said:

Syser error:

1116 21:44:05312 :: Traceback (most recent call last): 1116 21:44:05312 :: File "game.py", line 2144, in BINARYServerCommandRun 1116 21:44:05312 :: File "stringCommander.py", line 63, in Run 1116 21:44:05312 :: File "stringCommander.py", line 31, in call 1116 21:44:05313 :: File "stringCommander.py", line 11, in __call 1116 21:44:05313 :: File "game.py", line 2760, in __BossInfoLoadComplete 1116 21:44:05313 :: File "interfaceModule.py", line 2559, in BossInfoLoadComplete 1116 21:44:05313 :: File "uibossinfo.py", line 112, in BossInfoLoadComplete 1116 21:44:05313 :: AttributeError 1116 21:44:05313 :: : 1116 21:44:05313 :: 'module' object has no attribute 'MakeText' 1116 21:44:05313 :: 1116 21:44:05313 :: Unknown Server Command BossInfoLoadComplete | BossInfoLoadComplete 1116 21:44:15889 :: Traceback (most recent call last):

 

Thanks in advance.

Add this code at the bottom of the ui.py file:

def MakeText(parent, textlineText, x, y, color):
    textline = TextLine()
    if parent:
        textline.SetParent(parent)
    textline.SetPosition(x, y)
    if color:
        textline.SetFontColor(color[0], color[1], color[2])
    textline.SetText(textlineText)
    textline.Show()
    return textline

 

  • 4 weeks later...
  • 6 months later...
  • 5 months later...
On 11/11/2024 at 9:31 PM, jking said:

Hello community,

Today, I would like to share with you my boss info system:

  1. On the right side of the game window, you will see a new panel.
  2. The panel updates when a boss spawns, is killed, or dies.
  3. The visibility settings (hide/show) are saved in the client configuration.
  4. No database is used; everything is stored in core memory.

Preview:

spacer.png

 

GitHub link

Or download it directly via metin2.download

This is the hidden content, please

Metin2 Download

   Cheers.

Hello my problem : 1204 21:29:20688 :: ResourceManager::GetResourcePointer: NOT SUPPORT FILE d:\ymir work\ui\boss_info\r_01.png 

  • 9 months later...

Don't use any images from : imgur, turkmmop, freakgamers, inforge, hizliresim... Or your content will be deleted without notice...
Use : https://metin2.download/media/add/

Please use https://metin2.download/ when uploading files smaller than 100MB, otherwise the approval will take longer due to manual upload.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.