• Unfortunately, we have experienced significant hard drive damage that requires urgent maintenance and rebuilding. The forum will be a state of read only until we install our new drives and rebuild all the configurations needed. Please follow our Facebook page for updates, we will be back up shortly! (The forum could go offline at any given time due to the nature of the failed drives whilst awaiting the upgrades.) When you see an Incapsula error, you know we are in the process of migration.

[Help] Monster Drops

Status
Not open for further replies.
Newbie Spellweaver
Joined
May 11, 2022
Messages
11
Reaction score
1
I added different items to drop on a monster, but when I am a level higher than this the monster he does not drop anything, wanted to know where I can edit this. thanks
 
Newbie Spellweaver
Joined
Dec 17, 2018
Messages
33
Reaction score
25

I'd like to point out that the solution presented in this thread, even though it works, is a (minor) waste of resource.

Code:
			BOOL bAdjDropRate = TRUE;	// ÀϹÝÀûÀ¸·Ð ·¹º§Â÷¿¡ ÀÇÇÑ µå¶ø·üÀúÇÏ°¡ ÀÌ·ïÁø´Ù.

			if( GetIndex() == MI_CLOCKWORK1 )	//·¹º§Â÷¿¡ÀÇÇÑ µå¶ø·üÀúÇÏ°¡ ¾ø´Ù.
				bAdjDropRate = FALSE;

			if( GetIndex() == MI_DEMIAN5 || GetIndex() == MI_KEAKOON5 || GetIndex() == MI_MUFFRIN5 )
				bAdjDropRate = FALSE;		// À̺¥Æ®¸÷µéµµ ·¹º§Â÷¿¡ÀÇÇÑ µå¶ø·ü ÀúÇÏ°¡ ¾ø´Ù.
#ifdef __EVENT_MONSTER
			if( CEventMonster::GetInstance()->SetEventMonster( lpMoverProp->dwID ) )
				bAdjDropRate = FALSE;
#endif // __EVENT_MONSTER
#ifdef __EVENTLUA_SPAWN
			if( prj.m_EventLua.IsEventSpawnMonster( lpMoverProp->dwID ) )
				bAdjDropRate = FALSE;
#endif // __EVENTLUA_SPAWN
			if( bAdjDropRate )
			{
				int d	= pAttacker->m_nLevel - (int)lpMoverProp->dwLevel;
				if( d <= 1 )	{	nProbability	= 100;	nPenyaRate	= 100;	}
				else if( d <= 2 )	{	nProbability	= 80;	nPenyaRate	= 100;	}
				else if( d <= 4 )	{	nProbability	= 60;	nPenyaRate	= 80;	}
				else if( d <= 7 )	{	nProbability	= 30;	nPenyaRate	= 65;	}
				else	{	nProbability	= 10;	nPenyaRate	= 50;	}
			}

You can completely delete this part of the code (that is, if you want to remove any droprate adjustment regarding level difference), instead of replacing every nProbability = x to = 100. This avoids unnecessary operations.
 
Upvote 0
Status
Not open for further replies.
Back
Top