Jump to content
  • 0

Flee rate modify


R a g n a r o k

Question

3 answers to this question

Recommended Posts


  • Group:  Members
  • Topic Count:  0
  • Topics Per Day:  0
  • Content Count:  25
  • Reputation:   2
  • Joined:  12/25/11
  • Last Seen:  

http://svn.code.sf.net/p/rathena/svn/trunk/src/map/status.c

#ifdef RENEWAL // Renewal formulas
	if (bl->type == BL_MOB) {
		//Hit
		stat = status->hit;
		stat += level + status->dex + 175;
		status->hit = cap_value(stat,1,SHRT_MAX);
		//Flee
		stat = status->flee;
		stat += level + status->agi + 100;
		status->flee = cap_value(stat,1,SHRT_MAX);
	} else if (bl->type == BL_HOM) {
		status->hit = cap_value(level + status->dex + 150,1,SHRT_MAX); // base level + dex + 150
		status->flee = cap_value(level + status->agi + level/10,1,SHRT_MAX); // base level + agi + base level/10
	} else {
		//Hit
		stat = status->hit;
		stat += level + status->dex + status->luk/3 + 175; // base level + ( every 1 dex = +1 hit ) + (every 3 luk = +1 hit) + 175
		status->hit = cap_value(stat,1,SHRT_MAX);
		//Flee
		stat = status->flee;
		stat += level + status->agi + status->luk/5 + 100; // base level + ( every 1 agi = +1 flee ) + (every 5 luk = +1 flee) + 100
		status->flee = cap_value(stat,1,SHRT_MAX);
	}
	status->matk_min = status->matk_max = status_base_matk(status, level);
	//Def2
	stat = status->def2;
	stat += (int)(((float)level + status->vit)/2 + ((float)status->agi/5)); // base level + (every 2 vit = +1 def) + (every 5 agi = +1 def)
	status->def2 = cap_value(stat,0,SHRT_MAX);
	//MDef2
	stat = status->mdef2;
	stat += (int)(status->int_ + ((float)level/4) + ((float)status->dex/5) + ((float)status->vit/5)); // (every 4 base level = +1 mdef) + (every 1 int = +1 mdef) + (every 5 dex = +1 mdef) + (every 5 vit = +1 mdef)
	status->mdef2 = cap_value(stat,0,SHRT_MAX);
#else
	status->matk_min = status_base_matk_min(status);
	status->matk_max = status_base_matk_max(status);
	//Hit
	stat = status->hit;
	stat += level + status->dex;
	status->hit = cap_value(stat,1,SHRT_MAX);
	//Flee
	stat = status->flee;
	stat += level + status->agi;
	status->flee = cap_value(stat,1,SHRT_MAX);
	//Def2
	stat = status->def2;
	stat += status->vit;
	status->def2 = cap_value(stat,0,SHRT_MAX);
	//MDef2
	stat = status->mdef2;
	stat += status->int_ + (status->vit>>1);
	status->mdef2 = cap_value(stat,0,SHRT_MAX);
#endif
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  8
  • Topics Per Day:  0.00
  • Content Count:  23
  • Reputation:   0
  • Joined:  01/21/13
  • Last Seen:  

is this for clown?

 

what line sir?

 

thx.

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  17
  • Topics Per Day:  0.00
  • Content Count:  754
  • Reputation:   186
  • Joined:  05/22/12
  • Last Seen:  

Reduce it for like how much %?

 

This reduces it by 10%.

 

 

status.c

     //Flee
     stat = status->flee;
     stat += level + status->agi;
+     if( bl->type == BL_PC && (((TBL_PC*)bl)->class_&MAPID_UPPERMASK) == MAPID_BARDDANCER)
+           stat -= stat * 10 / 100;
     status->flee = cap_value(stat,1,SHRT_MAX);
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...