Jump to content
  • 0

R>Adjusting status damages guide


Question

Posted

Hello everyone...I just wanna ask where do I adjust damages on status effects ( poison, bleeding, burning. etc)

Pls point out the path and the lines I have to edit...coz I cant find it on my own....THX

4 answers to this question

Recommended Posts

Posted

Just find their respective codes in src/map/status.c

 

For example, here's Burning's status formula


	case SC_BURNING:
		if( --(sce->val4) >= 0 ) {
			struct block_list *src = map_id2bl(sce->val3);
			int damage = 1000 + 3 * status_get_max_hp(bl) / 100; // Deals fixed (1000 + 3%*MaxHP)

			map_freeblock_lock();
			clif_damage(bl,bl,tick,0,0,damage,1,9,0); // Damage is like endure effect with no walk delay
			status_damage(src, bl, damage, 0, 0, 1);
			if( sc->data[type]) { // Target still lives. [LimitLine]
				sc_timer_next(2000 + tick, status_change_timer, bl->id, data);
			}
			map_freeblock_unlock();
			return 0;
		}
		break;

Change

int damage = 1000 + 3 * status_get_max_hp(bl) / 100; // Deals fixed (1000 + 3%*MaxHP)

To

int damage = 500 + 1 * status_get_max_hp(bl) / 100; // Deals fixed (500 + 1%*MaxHP)
Posted

conf/battle/status.conf

// Adjustment for the natural rate of resistance from status changes.
// If 50, status defense is halved, and you need twice as much stats to block
// them (eg: 200 vit to completely block stun)
pc_status_def_rate: 100
mob_status_def_rate: 100
Posted

 

conf/battle/status.conf

// Adjustment for the natural rate of resistance from status changes.
// If 50, status defense is halved, and you need twice as much stats to block
// them (eg: 200 vit to completely block stun)
pc_status_def_rate: 100
mob_status_def_rate: 100

I dont mean this part...I meant adjusting damages from status effects like increasing poison damage not the resistance/chance of being inflicted...

 

example:

 

according to irowiki: 

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Burning

Deals fixed (1000 + 3%*MaxHP) damage every 3 seconds.

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

I want  to change it to (500 + 1%MaxHP)damage per second

 

something like that....

Posted

 

Just find their respective codes in src/map/status.c

 

For example, here's Burning's status formula


	case SC_BURNING:
		if( --(sce->val4) >= 0 ) {
			struct block_list *src = map_id2bl(sce->val3);
			int damage = 1000 + 3 * status_get_max_hp(bl) / 100; // Deals fixed (1000 + 3%*MaxHP)

			map_freeblock_lock();
			clif_damage(bl,bl,tick,0,0,damage,1,9,0); // Damage is like endure effect with no walk delay
			status_damage(src, bl, damage, 0, 0, 1);
			if( sc->data[type]) { // Target still lives. [LimitLine]
				sc_timer_next(2000 + tick, status_change_timer, bl->id, data);
			}
			map_freeblock_unlock();
			return 0;
		}
		break;

Change

int damage = 1000 + 3 * status_get_max_hp(bl) / 100; // Deals fixed (1000 + 3%*MaxHP)

To

int damage = 500 + 1 * status_get_max_hp(bl) / 100; // Deals fixed (500 + 1%*MaxHP)

thx...

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