Jump to content
  • 0

Modify Firebolt, Coldbolt, Lightningbolt


Question

Posted

Hello Everyone.

I want to modify the damage of this 3 skills, but i cant find the damage formula on battle.c, or any other important .c

This is the only formula i find but i suppose its related just with spellfist because i already changed the numbers and didnt work.

I think its the same problem that other person haves with Jupitel thunder, i cant find it neither.

			   	 case MG_COLDBOLT: {
						struct status_change *sc = status_get_sc(src);
						if ( sc && sc->count ) {
							if ( sc->data[sC_SPELLFIST] && mflag&BF_SHORT )  {
								skillratio += (sc->data[sC_SPELLFIST]->val4 * 100) + (sc->data[sC_SPELLFIST]->val2 * 100) - 100;// val4 = used bolt level, val2 = used spellfist level. [Rytech]
								ad.div_ = 1;// ad mods, to make it work similar to regular hits [Xazax]
								ad.flag = BF_WEAPON|BF_SHORT;
								ad.type = 0;
							}
							if( sc->data[sC_AQUAPLAY_OPTION] )
								skillratio += skillratio * sc->data[sC_AQUAPLAY_OPTION]->val3 / 100;
						}
					}
					break;
				case MG_FIREBOLT: {
						struct status_change *sc = status_get_sc(src);
						if ( sc && sc->count ) {
							if ( sc->data[sC_SPELLFIST] && mflag&BF_SHORT ) {
								skillratio += (sc->data[sC_SPELLFIST]->val4 * 100) + (sc->data[sC_SPELLFIST]->val2 * 100) - 100;
								ad.div_ = 1;
								ad.flag = BF_WEAPON|BF_SHORT;
								ad.type = 0;
							}
							if( sc->data[sC_PYROTECHNIC_OPTION] )
								skillratio += skillratio * sc->data[sC_PYROTECHNIC_OPTION]->val3 / 100;
						}
					}
					break;		
				case MG_LIGHTNINGBOLT: {
						struct status_change *sc = status_get_sc(src);
						if ( sc && sc->count ) {
							if ( sc->data[sC_SPELLFIST] && mflag&BF_SHORT ) {
								skillratio += (sc->data[sC_SPELLFIST]->val4 * 100) + (sc->data[sC_SPELLFIST]->val2 * 100) - 100;
								ad.div_ = 1;
								ad.flag = BF_WEAPON|BF_SHORT;
								ad.type = 0;
							}
							if( sc->data[sC_GUST_OPTION] )
								skillratio += skillratio * sc->data[sC_GUST_OPTION]->val2 / 100;
						}
					}
					break;

Thank You!

3 answers to this question

Recommended Posts

Posted (edited)

If not mistaken. They don't have formula because they act as BF_MAGIC which if not defined will read your MATK as damage.

as

skill_attack(BF_MAGIC,src,src,bl,skillid,skilllv,tick,flag);

Edited by darristan
Posted

Darristan is correct, those spells have their damage based off your MATK (100% per bolt) and therefore you'd have to re-create the skill calls to reduce your MATK similar to some other mage skills (I think Napalm Beat starts at a reduced percentage, I'm not sure off the top of my head).

Another solution, one I'd recommend, is to reduce the amount of bolts based on skill level, such as 1 bolt per 2 skill levels, this would effectively halve the damage done at skill level 10 and doesn't require source editing. This can be done by editing your skill_db.txt. Let me know if you need help doing so and I'll show you how.

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