Jump to content
  • 0

Monsters Hit and Flee Rate


nakano15

Question


  • Group:  Members
  • Topic Count:  19
  • Topics Per Day:  0.01
  • Content Count:  102
  • Reputation:   8
  • Joined:  01/26/15
  • Last Seen:  

Hey guys, I need help in some creative way to solve this issue:

So, I'm still trying to make my Deleveling program work independend of the level, but I'm bumping into a problem. I'm having issues with the monsters Hit and Flee rates, 

I actually have not much idea of how It's being handled, but those two status are causing me problems when testing the Deleveling program, because either the player has high evasion and hit rate, or the inverse happens, and that isn't nice. (For example, when testing level 1 and level 99 player characters)

Someone has any idea how I can control It to not make the values so overpowered?

Link to comment
Share on other sites

4 answers to this question

Recommended Posts

  • 0

  • Group:  Members
  • Topic Count:  20
  • Topics Per Day:  0.01
  • Content Count:  416
  • Reputation:   73
  • Joined:  05/16/19
  • Last Seen:  

If i had no choice id re do it all or somehow just set hit to something lower when it reachs a certain point. 

try around here

 

static void status_calc_misc(struct block_list *bl, struct status_data *st, int level)
{
	nullpo_retv(bl);
	nullpo_retv(st);
	//Non players get the value set, players need to stack with previous bonuses.
	if ( bl->type != BL_PC )
		st->batk =
		st->hit = st->flee =
		st->def2 = st->mdef2 =
		st->cri = st->flee2 = 0;

#ifdef RENEWAL // renewal formulas
	if ( bl->type == BL_HOM ) {
		const struct homun_data *hd = BL_UCCAST(BL_HOM, bl);
		st->def2 = status_get_homvit(st, hd) + status_get_homagi(st, hd) / 2;
		st->mdef2 = (status_get_homvit(st, hd) + status_get_homint(st, hd)) / 2;
		st->def += status_get_homvit(st, hd) + level / 2; // Increase. Already initialized in status_calc_homunculus_
		st->mdef = (int)(((float)status_get_homvit(st, hd) + level) / 4 + (float)status_get_homint(st, hd) / 2);
		st->hit = level + st->dex + 150;
		st->flee = level + status_get_homagi(st, hd);
		st->rhw.atk = (status_get_homstr(st, hd) + status_get_homdex(st, hd)) / 5;
		st->rhw.atk2 = (status_get_homluk(st, hd) + status_get_homstr(st, hd) + status_get_homdex(st, hd)) / 3;
	} else {
		st->hit += level + st->dex + (bl->type == BL_PC ? st->luk / 3 + 175 : 150); //base level + ( every 1 dex = +1 hit ) + (every 3 luk = +1 hit) + 175
		st->flee += level + st->agi + (bl->type == BL_MER ? 0: (bl->type == BL_PC ? st->luk / 5 : 0) + 100); //base level + ( every 1 agi = +1 flee ) + (every 5 luk = +1 flee) + 100
		st->def2 += (int)(((float)level + st->vit) / 2 + (bl->type == BL_PC ? ((float)st->agi / 5) : 0)); //base level + (every 2 vit = +1 def) + (every 5 agi = +1 def)
		st->mdef2 += (int)(bl->type == BL_PC ? (st->int_ + ((float)level / 4) + ((float)(st->dex + st->vit) / 5)) : ((float)(st->int_ + level) / 4)); //(every 4 base level = +1 mdef) + (every 1 int = +1 mdef) + (every 5 dex = +1 mdef) + (every 5 vit = +1 mdef)
	}

 

Edited by Naruto
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  19
  • Topics Per Day:  0.01
  • Content Count:  102
  • Reputation:   8
  • Joined:  01/26/15
  • Last Seen:  

That's also where another problem enters, I can't modify or compile Rathena source, so I'll have to use an alternative way of solving that problem.

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  20
  • Topics Per Day:  0.01
  • Content Count:  416
  • Reputation:   73
  • Joined:  05/16/19
  • Last Seen:  

8 hours ago, nakano15 said:

That's also where another problem enters, I can't modify or compile Rathena source, so I'll have to use an alternative way of solving that problem.

why dont you just send me your code /meh

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  19
  • Topics Per Day:  0.01
  • Content Count:  102
  • Reputation:   8
  • Joined:  01/26/15
  • Last Seen:  

Because the way I'm using to delevel Ragnarok is by using a tool I've made that directly modifies the mob_db.txt entries.

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...