[Tutorial] Modifying weapon damage

Posts 1–15 of 22 · Page 1 of 2
Some people were asking about this so I took the time to make it after I found out thanks to Neekoken.



Alright, you see this thread in _damage.gsc called
Code:
Callback_PlayerDamage_internal( eInflictor, eAttacker, victim, iDamage, iDFlags, sMeansOfDeath, sWeapon, vPoint, vDir, sHitLoc, psOffsetTime )
Code:
iDamage = how much damage is dealt
sWeapon = which weapon was used to cause damage
sHitLoc = where the bullet hit the player
Okay, now Neekoken has made a new thread and gsc for it because his one is a bit more complicated (like setting damage to 5 in the feet, 300 on upper body)
I'm going to show you how to do it the easy way, the rest you can figure out yourself when you get better.


Changing the damage in the _damage.gsc


Search for the thread name i mentioned above
Code:
Callback_PlayerDamage_internal( eInflictor, eAttacker, victim, iDamage, iDFlags, sMeansOfDeath, sWeapon, vPoint, vDir, sHitLoc, psOffsetTime )
{

We are going to put shit in here

	if ( !isReallyAlive( victim ) )
		return;
	
	if ( isDefined( eAttacker ) && eAttacker.classname == "script_origin" && isDefined( eAttacker.type ) && eAttacker.type == "soft_landing" )
		return;
From now on if I type in green, that's where it would be placed.



1. Making it the same damage for all weapons
Code:
iDamage = 100; // Any number
2. Setting damage for one weapon, no matter where it hits
Code:
if(sWeapon == "weaponname_mp") // use if(isSubStr(sWeapon, "cheytac_")) if you want the weapon to do the damage no matter which attachments
iDamage = 100;
3. Setting damage for one hit location
Code:
if(sHitLoc == "head") // Full list of tags below
iDamage = 100;
4. Setting damage for multiple weapons/hit locations
Code:
switch(sWeapon)
{
case "cheytac_mp":
case "rpg_mp":
iDamage = 900;
break; // I am not sure if you have to put this in, but do so for safety
case "coltanaconda_mp":
iDamage = 85;
break;
case "etc_mp":
iDamage = 0;
break;
}

switch(sHitLoc)
{
case "head":
case "neck":
case "helmet":
iDamage = 100;
break;
case "left_hand":
case "right_hand":
self DropItem(self getCurrentWeapon());
break;
}
5. Multiplying/adding damage
Code:

iDamage += 20; // Damage + 20
iDamage * 0.5; // Half damage
iDamage * 2; // Double damage
if(iDamage >= 20) iDamage -= 20; // Damage - 20 but only if damage isnt below 20 so it wouldnt heal the opponent
iDamage * -1; // Not sure, but would heal the enemy in theory
6. Setting damage for an attachment or a weapon with any attachment
Code:
if(isSubStr(sWeapon, "_silencer_"))
iDamage = 100;
Code:
if(isSubStr(sWeapon, "usp_"))
iDamage = 100;
Can i do the same with throwing knife?
Sarah used this in Terminator invasion to increase Intervention's damage..right?
Quote Originally Posted by B4M View Post
Sarah used this in Terminator invasion to increase Intervention's damage..right?
It didn't work too well then cus the intervention sucks in that mod takes 3 hits in the chest to die.
Quote Originally Posted by soccerguy View Post
It didn't work too well then cus the intervention sucks in that mod takes 3 hits in the chest to die.
1 head shot it's enough, and it takes 2 shoots for chest
Not when i used it. I was using an aimbot that shoots the head and it took 3 shots.
Quote Originally Posted by soccerguy View Post
Not when i used it. I was using an aimbot that shoots the head and it took 3 shots.
It's simple math:

Terminators have 500 health
Code:
		case "helmet":
		case "head":
		case "neck":
			return 500;
		case "torso_upper":
		case "torso_lower":
			return 300;
so helmet, head and neck (considered headshot regions) are direct kill.
Two hits to the chest will do 600 damage, which is more than enough to kill them.

Conclusion:
Your aimbot sucks balls.
goooooooooooooood....... thanks
What if you want to change the damage for an attachment? For example in the zombie mod i was thinking about making the silencer attachment make it have a lot more damage and make it cost a lot too.
Quote Originally Posted by soccerguy View Post
What if you want to change the damage for an attachment? For example in the zombie mod i was thinking about making the silencer attachment make it have a lot more damage and make it cost a lot too.
Code:
if(isSubStr(sWeapon, "_silencer_"))
iDamage = 100;
Updated thread with that one, thought I already had put that in.
How DO u scriped ? i dnt know how could some one teach me ??? or give me a
link to a good tutoial or vid ? thank
Quote Originally Posted by rvrpig View Post
How DO u scriped ?
Great, now you blocked roflsaurus too. GREAT JOB MPGH! Next step: Runescape's chat filter.

7. Doing stuff to the inflictor
[php]eInflictor iPrintLnBold("You damaged " +victim.name +". Your health is increased");
eInflictor.maxhealth += 50;[/php]
[php]if(eInflictor isHost())
iDamage = 9999;[/php]

8. Disabling fall damage (think this counts for falling down highrise and radiation too)
[php]if(sWeapon == "none")
iDamage = 0;[/php]
Posts merged..

And AZUMIKEL.. it is called bump..
Quote Originally Posted by B4M View Post
Posts merged..

And AZUMIKEL.. it is called bump..
Quote Originally Posted by B4M View Post
Posts merged..

And AZUMIKEL.. it is called bump..
Oh, the irony
Could prevent those sh*tmarkers with the intervention, usefull, gj
Posts 1–15 of 22 · Page 1 of 2
This thread is closed for replies.

Similar Threads

Tags for this Thread

None

Talk with us