Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Flyff > Flyff Private Server
You last visited: Today at 06:32

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Making mobs stronger at certain player level

Discussion on Making mobs stronger at certain player level within the Flyff Private Server forum part of the Flyff category.

Reply
 
Old 09/10/2013, 16:17   #16



 
Sedrika's Avatar
 
elite*gold: 18
The Black Market: 103/0/0
Join Date: Sep 2009
Posts: 20,174
Received Thanks: 14,475
Go to AttackArbiter.cpp and search for
Code:
int CAttackArbiter::OnDamageMsgW()
and add this
Code:
#ifdef __MONSTER_STAT_PUSH
	if( m_pAttacker->IsPlayer() && !m_pDefender->IsPlayer() )
	{
		MoverProp* pMoverProp = m_pDefender->GetProp();
		if( pMoverProp )
		{
			int nAddStat = 0;
			if( m_pAttacker->GetLevel() >= 150 )
				nAddStat = 10;
			else if( m_pAttacker->GetLevel() >= 140 )
				nAddStat = 8;
			//....

			pMoverProp->dwStr += nAddStat;
			pMoverProp->dwSta += nAddStat;
			pMoverProp->dwDex += nAddStat;
			pMoverProp->dwInt += nAddStat;
		}
	}
#endif // __MONSTER_STAT_PUSH
below this
Code:
	ATTACK_INFO info;
	info.dwAtkFlags = m_dwAtkFlags;
	info.pAttacker  = m_pAttacker;
	info.pDefender  = m_pDefender;
	info.nParam     = m_nParam;
	info.nParts     = PARTS_RWEAPON;
and define this
Code:
__MONSTER_STAT_PUSH
only in WorldServer.

That's all.
Sedrika is offline  
Old 09/10/2013, 17:02   #17
 
elite*gold: 0
Join Date: Oct 2012
Posts: 948
Received Thanks: 157
Thank you verry much Sedrika.

Will this also have an effect on the Min atk and Max atk and the HP of the mob?

So if i will do this

Code:
#ifdef __MONSTER_STAT_PUSH
	if( m_pAttacker->IsPlayer() && !m_pDefender->IsPlayer() )
	{
		MoverProp* pMoverProp = m_pDefender->GetProp();
		if( pMoverProp )
		{
			int nAddStat = 0;
			if( m_pAttacker->GetLevel() >= 150 )
				nAddStat = 10;
				nAddAtkMin = 100;
				nAddAtkMax = 100;
				nAddMaxHP = 250;
			else if( m_pAttacker->GetLevel() >= 140 )
				nAddStat = 8;
			//....

			pMoverProp->dwStr += nAddStat;
			pMoverProp->dwSta += nAddStat;
			pMoverProp->dwDex += nAddStat;
			pMoverProp->dwInt += nAddStat;
			pMoverProp->dwAtkMax += nAddAtkMax;
			pMoverProp->dwAtkMin += nAddAtkMin;
			pMoverProp->dwAddHp += nAddMaxHP;
		}
	}
#endif // __MONSTER_STAT_PUSH
raventh1984 is offline  
Old 09/10/2013, 17:09   #18



 
Sedrika's Avatar
 
elite*gold: 18
The Black Market: 103/0/0
Join Date: Sep 2009
Posts: 20,174
Received Thanks: 14,475
I'd do it this way.

Code:
#ifdef __MONSTER_STAT_PUSH
	if( m_pAttacker->IsPlayer() && !m_pDefender->IsPlayer() )
	{
		MoverProp* pMoverProp = m_pDefender->GetProp();
		if( pMoverProp )
		{
			int nAddStat = 0;
			int nAddAtkMin = 0;
			int nAddAtkMax = 0;
			float nAddMaxHP = 1.0f; // Has to be 1.0f
			if( m_pAttacker->GetLevel() >= 150 )
			{
				nAddStat = 10;
				nAddAtkMin = 100;
				nAddAtkMax = 100;
				nAddMaxHP = 2.5f; // 250%
			}
			else if( m_pAttacker->GetLevel() >= 140 )
			{
				nAddStat = 8;
				nAddAtkMin = 80;
				nAddAtkMax = 80;
				nAddMaxHP = 2.0f; // 200%
			}
			//....

			pMoverProp->dwStr += nAddStat;
			pMoverProp->dwSta += nAddStat;
			pMoverProp->dwDex += nAddStat;
			pMoverProp->dwInt += nAddStat;
			pMoverProp->dwAtkMax += nAddAtkMax;
			pMoverProp->dwAtkMin += nAddAtkMin;
			pMoverProp->dwAddHp *= nAddMaxHP;
		}
	}
#endif // __MONSTER_STAT_PUSH
and you'd have a logicial error in the if/else statements for missing { and }.
And you shouldn't use an integer for changing the HP max value. Float values would be better and it is more comfortable.
Sedrika is offline  
Old 09/10/2013, 17:48   #19
 
elite*gold: 0
Join Date: Oct 2012
Posts: 948
Received Thanks: 157
Yes i was aware of that error. What i did was an example.

and i really must say thank you for an excellent explanation on how to do this.
raventh1984 is offline  
Old 09/10/2013, 17:54   #20
 
Mognakor's Avatar
 
elite*gold: 0
Join Date: Mar 2008
Posts: 598
Received Thanks: 465
Whats the sense with Modifying the prop? This function is getting called on each attack, so each time the monster attacks it gets stronger and this will not only affect the current boss but any boss until the you restart the worldserver....


Just open AttackArbiter.cpp and chose one of the various functions add the checks and increase the damage by a factor before returning it to the next function. Finding the right one takes less than 5 minutes and if you spend one hour you can completly adjust Critrate/Dmg,Block,Evasion etc. further you can check what kind of monster it is (Behemoth, Kalgas Worm etc.) so you can put different levels at which these grow stronger.
Mognakor is offline  
Reply


Similar Threads Similar Threads
mobs around player
09/18/2011 - SRO Coding Corner - 4 Replies
how to capture packet for this event in silkroad? i dont think there is single opcode for this
Level Mobs?!?
09/10/2009 - World of Warcraft - 1 Replies
Hi Leute ersma vorweg ich weiß jetzt nicht genau in welches Forum dass gehört aber ich schreibs einfach ma hier.. also ich suche bei google schon lange vergeblich nach Ascent Levelmobs in 5er schritten.. und machen geht auch voll schlecht weil dass Wochen dauert:mad:
[LOTF-Tutorial] Making & Spawning mobs.
08/14/2009 - CO2 Private Server - 3 Replies
Before you guys ask this is c#. Video tutorial on how to add mobs, and add mobspawns. A little on making mobs drop too... I know, I sound like a 20 year old emo xD before somebody points it out. Download(zip)
Help making Level 255
05/09/2008 - EO PServer Hosting - 4 Replies
i already make my char to lvl 255 then when i re-enter it said error connection is interrupted..and also who can teach me how to make compose rate higher???
Excellent Level 30-40 Gil Making
10/18/2005 - FFXI Guides & Templates - 0 Replies
If you are between/around, lets say level 30 and 40 go to Tahrongi Canyon with *damagedealer*/thf (before that level you can also go with *DD*/something or thf/war or things like that). Make sure you have huge free space in your Inventory. Near to the Crag of Mea there are a lot of Killer Bees, Pygmaioi, Saplings, Crawlers, Dhamels, Yagudo and Air & Earth Elementals. The Killer Bees drop Beehive Chips with sell for approx 10k. If you like bring Fire Crystals and Distilled Water with you,...



All times are GMT +1. The time now is 06:33.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.