Jump to content
  • 0
REKT

Stop gaining EXP at Specific Level

Question

Hello, i just need this source modifications badly, is there way or how can i stop gaining the player EXP and JOB at level 200 and job at 99?

Since my server is 255/120 and i want them to achieved through quest or my custom quest board etc etc.


maybe in the mob.c or i dont know where. just in my mind lol :P

If someone help that would be greatly appreciateed!

Share this post


Link to post
Share on other sites

8 answers to this question

Recommended Posts

  • 0

in mob.c

		if (map->list[m].flag.nobaseexp || !md->db->base_exp)			base_exp = 0;		else			base_exp = (unsigned int)cap_value(md->db->base_exp * per * bonus/100. * map->list[m].bexp/100., 1, UINT_MAX);		if (map->list[m].flag.nojobexp || !md->db->job_exp || md->dmglog[i].flag == MDLF_HOMUN) //Homun earned job-exp is always lost.			job_exp = 0;		else			job_exp = (unsigned int)cap_value(md->db->job_exp * per * bonus/100. * map->list[m].jexp/100., 1, UINT_MAX);
Edit mob.c
		if (map->list[m].flag.nobaseexp || !md->db->base_exp || (sd->status.base_level >= 200))			base_exp = 0;		else			base_exp = (unsigned int)cap_value(md->db->base_exp * per * bonus/100. * map->list[m].bexp/100., 1, UINT_MAX);		if (map->list[m].flag.nojobexp || !md->db->job_exp || md->dmglog[i].flag == MDLF_HOMUN || (sd->status.job_level >= 99)) //Homun earned job-exp is always lost.			job_exp = 0;		else			job_exp = (unsigned int)cap_value(md->db->job_exp * per * bonus/100. * map->list[m].jexp/100., 1, UINT_MAX);

Share this post


Link to post
Share on other sites
  • 0

 

in mob.c

		if (map->list[m].flag.nobaseexp || !md->db->base_exp)			base_exp = 0;		else			base_exp = (unsigned int)cap_value(md->db->base_exp * per * bonus/100. * map->list[m].bexp/100., 1, UINT_MAX);		if (map->list[m].flag.nojobexp || !md->db->job_exp || md->dmglog[i].flag == MDLF_HOMUN) //Homun earned job-exp is always lost.			job_exp = 0;		else			job_exp = (unsigned int)cap_value(md->db->job_exp * per * bonus/100. * map->list[m].jexp/100., 1, UINT_MAX);
Edit mob.c
		if (map->list[m].flag.nobaseexp || !md->db->base_exp || (sd->status.base_level >= 200))			base_exp = 0;		else			base_exp = (unsigned int)cap_value(md->db->base_exp * per * bonus/100. * map->list[m].bexp/100., 1, UINT_MAX);		if (map->list[m].flag.nojobexp || !md->db->job_exp || md->dmglog[i].flag == MDLF_HOMUN || (sd->status.job_level >= 99)) //Homun earned job-exp is always lost.			job_exp = 0;		else			job_exp = (unsigned int)cap_value(md->db->job_exp * per * bonus/100. * map->list[m].jexp/100., 1, UINT_MAX);

Alright thank you, i'll try this i'll let you know if its working.

Share this post


Link to post
Share on other sites
  • 0

nope, tested, this modification only stop gain exp normally

it doesn't stop MVP exp

 

also, the one who should stop gaining exp,

can still gain exp by having other party member kill the monster for him/her with party share exp enabled

 

@@Vlync

http://herc.ws/board/topic/11587-maxlvexpgain/

Edited by AnnieRuru

Share this post


Link to post
Share on other sites
  • 0

nope, tested, this modification only stop gain exp normally

it doesn't stop MVP exp

 

also, the one who should stop gaining exp,

can still gain exp by having other party member kill the monster for him/her with party share exp enabled

 

@@Vlync

http://herc.ws/board/topic/11587-maxlvexpgain/

 

@@AnnieRuru

LOL, what a coincidence! i didn't know that some of the user here is already requesting.

Wow, plugin~ Thank you for this :P

 

Can i request a mapflag nightmap?

Credits: Masao

https://www.eathena.ws/board/index.php?act=attach&type=post&id=10131

Edited by Vlync

Share this post


Link to post
Share on other sites
  • 0

 

nope, tested, this modification only stop gain exp normally

it doesn't stop MVP exp

 

also, the one who should stop gaining exp,

can still gain exp by having other party member kill the monster for him/her with party share exp enabled

 

@@Vlync

http://herc.ws/board/topic/11587-maxlvexpgain/

 

@@AnnieRuru

LOL, what a coincidence! i didn't know that some of the user here is already requesting.

Wow, plugin~ Thank you for this :P

 

Can i request a mapflag nightmap?

Credits: Masao

https://www.eathena.ws/board/index.php?act=attach&type=post&id=10131

already exist  https://github.com/HerculesWS/Hercules/blob/master/npc/mapflag/night.txt

Share this post


Link to post
Share on other sites
  • 0

I actually found a bug in our repo while writing this plugin

it seems that when nightenabled mapflag is on, and atcommand @@Night,

when the player with soul link buff wear off, the night effect disappear until the player switch map

 src/map/clif.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-)diff --git a/src/map/clif.c b/src/map/clif.cindex a26fece..f474d23 100644--- a/src/map/clif.c+++ b/src/map/clif.c@@ -17580,8 +17580,15 @@ void clif_status_change_end(struct block_list *bl, int tid, enum send_target tar  	nullpo_retv(bl); -	if( bl->type == BL_PC && !((TBL_PC*)bl)->state.active )-		return;+	if (bl->type == BL_PC) {+		TBL_PC *sd = BL_CAST(BL_PC, bl);+		if (!(sd->state.active))+			return;+		ShowDebug("%d %d %d %d", map->night_flag, map->list[sd->bl.m].flag.nightenabled, type, SI_SOULLINK );+		if (map->night_flag && map->list[sd->bl.m].flag.nightenabled && type == SI_SOULLINK) // player still has the blue aura ...+//		if (map->night_flag && map->list[sd->bl.m].flag.nightenabled && type == SI_SKE) // doesn't work+			return;+	}  	p.PacketType = status_change_endType; 	p.index = type;
but I don't know the correct code to fix it,

in clif_parse_LoadEndAck function, it uses SI_SKE, but doesn't work, because the type doesn't match

but when use SI_SOULLINK, the player still having the blue aura ...

 

@@Vlync

plugin

 

@@Angelmelody

nope, this patch only turns 1 single map to night mode

I remember I saw this patch on eathena forum

https://www.eathena.ws/board/index.php?showtopic=273585

 

EDIT: good... now there is another member name @@Night ....

Edited by AnnieRuru

Share this post


Link to post
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.   Restore formatting

  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.

Loading...

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.