Jump to content
  • 0

Baby Class HP/SP/STATS = Upper Class


Question

Posted

I'm trying to make all the 3rd baby classes have the same exact amount of hp/sp/stats as the 3rd Trans Classes.
I have figured out the HP/SP part of this.
 
In Status.c change this:

	if (flag == 0) { //Calculates MaxHP
		max = job_info[idx].base_hp[level-1] * (1 + (max(sd->battle_status.vit,1) * 0.01)) * ((sd->class_&JOBL_UPPER)?1.25:1);
		max += status_get_hpbonus(&sd->bl,STATUS_BONUS_FIX);
		max = max * (1 + status_get_hpbonus(&sd->bl,STATUS_BONUS_RATE) * 0.01);
	}
	else if (flag == 1) { //Calculates MaxSP
		max = job_info[idx].base_sp[level-1] * (1 + (max(sd->battle_status.int_,1) * 0.01));
		max += status_get_spbonus(&sd->bl,STATUS_BONUS_FIX);
		max = max * (1 + status_get_spbonus(&sd->bl,STATUS_BONUS_RATE) * 0.01);
		max = (max * ((sd->class_&JOBL_UPPER)?1.25:1)) + 0.5; //Don't have round()

To This:
 

	if (flag == 0) { //Calculates MaxHP
		max = job_info[idx].base_hp[level-1] * (1 + (max(sd->battle_status.vit,1) * 0.01)) * ((sd->class_&JOBL_UPPER || sd->class_&JOBL_BABY)?1.25:1);
		max += status_get_hpbonus(&sd->bl,STATUS_BONUS_FIX);
		max = max * (1 + status_get_hpbonus(&sd->bl,STATUS_BONUS_RATE) * 0.01);
	}
	else if (flag == 1) { //Calculates MaxSP
		max = job_info[idx].base_sp[level-1] * (1 + (max(sd->battle_status.int_,1) * 0.01));
		max += status_get_spbonus(&sd->bl,STATUS_BONUS_FIX);
		max = max * (1 + status_get_spbonus(&sd->bl,STATUS_BONUS_RATE) * 0.01);
		max = (max * ((sd->class_&JOBL_UPPER || sd->class_&JOBL_BABY)?1.25:1)) + 0.5; //Don't have round()

The above change worked fine, but I think this effects all the baby classes. If there is a way to make this only effect 3rd babies please correct me.

 

Now I'm looking for the stats part. I want the Baby 3rds to have the same amount of stats as the Trans 3rds. This is where I need your help guys.

 

Also, I want Baby Super Novice to have the same amount of HP/SP as the Super Novice. 

 

Any help would be greatly appreciated! Thank you!

2 answers to this question

Recommended Posts

Posted (edited)

1. change your 

(sd->class_&JOBL_UPPER || sd->class_&JOBL_BABY)
to

(sd->class_&JOBL_UPPER || sd->class_&(JOBL_THIRD|JOBL_BABY))

This works with all the 3rd job babies, but when I do this, the super baby's hp/sp differ from the Super novice. When I don't do this super baby and super novice have same amount of hp/sp.

here's an image showing the difference:

 

ms15hg.jpg

EDIT:

change:

 

(sd->class_&JOBL_UPPER)

to

 

(sd->class_&JOBL_UPPER || (job_id >= JOB_BABY_RUNE && job_id <= JOB_BABY_MECHANIC2))  

Thank you Cydh for all the help!

Edited by Phenex
Posted

1. change your 

(sd->class_&JOBL_UPPER || sd->class_&JOBL_BABY)

to

(sd->class_&JOBL_UPPER || sd->class_&(JOBL_THIRD|JOBL_BABY))

or maybe with a little exception for exp. super novice: MAPID_SUPER_NOVICE_E and MAPID_SUPER_BABY_E. so

(sd->class_&JOBL_UPPER || (sd->class_&(JOBL_THIRD|JOBL_BABY) && sd->class_ != MAPID_SUPER_NOVICE_E && sd->class_ != MAPID_SUPER_BABY_E))

2. for stats, you can adjust the max_baby_third_parameter, player.conf
3. Super Novice and Super Baby should has same values, except if there is modifier for it on src (or maybe I missed something) /hmm

  • Upvote 1

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.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...