Jump to content

Need some help making a simple headshot script


trashgarbage666

Recommended Posts

OIC ... I guess was cuz I was looking at the post prior to your last edit ... and testing stuff in the geck.

Then posted a bit after you last edit not realizing you ninja'd me LOL ... Gad you got it working.

 

But on having the player get possible head shots ...

Try a Perk / EntryPoint / Adjust Limb damage / What ever for adjustment ...

 

In conditions ... Perk Owner tab ... Use GetHitLocation ... And whatever else here.

And then you have the Attacker and Attacker weapon tabs to further conditionalize it.

 

Hope that helps.

Link to comment
Share on other sites

  • Replies 59
  • Created
  • Last Reply

Top Posters In This Topic

Actually, it seems that headshots are lethal to the player with my current setup! No idea why, but I'm not complaining!

Link to comment
Share on other sites

Through playtesting, I've seen a small handful non-lethal headshots, but I can't consistently recreate them. They happen very infrequently, and only in VATS. I'm pretty happy with it now, but if I ever find a guaranteed way to recreate the bug, I'll be sure to share my findings here!

Link to comment
Share on other sites

I'm actually not sure when release will be! It's a pretty big project. A "total rebalance", I suppose. The change log is already pretty long, but I would guess I'm only about 50% done. Maybe less.

Link to comment
Share on other sites

Turns out I was wrong about NPCs being able to headshot the player. Not really sure how I got tricked into thinking that was working! I'm pretty sure this is an easy fix, but I'm having trouble finding a replacement for the part that references the player.

 

Like I said in previous posts, the script finds its target with "Player.GetCombatTarget". I'd like to change the "Player." part to instead reference the person who owns the gun. I'm not sure if it will work, but here's what I have in mind:

Ref rShooter
Ref rTarget

Set rShooter to (MYSELF).GetOwner
Set rTarget to rShooter.GetCombatTarget

Since this script is attached to the ammo that comes out of the gun, I'm assuming the game considers the bullet to be owned by the person shooting the gun. However, as you can see from the example script, I'm not really sure how to tell the script to reference itself or the bullet it's attached to. I've been searching google and reading relevant GECK wiki articles, but the example scripts are a little vague, and haven't had any luck yet.

Link to comment
Share on other sites

Ya I was a bit perplexed it was working with "Player.GetCombatTarget" But I have seen stranger things.

 

Hmmm ... maybe something like this in its own gamemode block same script ? which is saving , but I don't know if it will execute ?

~~~~~~~~~~~~~~~~~~~~~~~~
Ref rTarget
Int IamTarget
Begin GameMode
Set rTarget to GetOwnerLastTarget
If rTarget.GetIsReference PlayerRef == 1
Set IamTarget to 1 ; Then use this in one of the other blocks or continue here to check/kill player.
endif
End
~~~~~~~~~~~~~~~~~~~~~~~~
If you get no love with that ... I still say the perk / entry point / adjust limb dmg ... would do it ... albeit not same execution as for player shooting npc's
Link to comment
Share on other sites

After a little tinkering, I found a way to work your suggestion into my script, and unfortunately it didn't work. When I loaded up the game, there was about a 50/50 chance I'd be killed from a headshot, helmet or not. It almost felt like the outcome was random each time. I'm assuming your script is able to accurately differentiate between players and NPCs, but in the next script block, the target is still being determined by Player.GetCombatTarget.

 

As for giving perks a try, I really don't want to scrap this script when there's only one bug left to work out. My first attempt at working headshots in the game involved me cranking up the damage mult on human heads, and applying a hidden perk to all helmets that would cancel out the damage bonus. Unfortunately, I wasn't able to successfully get the perk to apply to NPCs. Maybe I will give the helmet perk thing a second try, but I'd also really like to know how to change the subject of GetCombatTarget to the person who owns the weapon.

 

EDIT: Also, just as a side thing, I'm almost certain "Adjust Limb Damage" is for limb crippling, not health points. (Just confirmed it.)

 

EDIT: Actually, after thinking on it for a bit, I realized the reason why I couldn't get perks to apply to NPCs -- because I was trying to reference the player then, too. I need to be able to reference the item's owner in both scenarios. Like...

Ref rHelmetWearer

Set rHelmetWearer to (this item).GetOwner

I don't know how to get the item to reference itself.

Edited by punchbattle
Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...