[Support] Code for distance meter for trickshots?
-
Does anybody know it? If so can they post below?
-
did you find the code yet?
-
Step 1 - Add the following in
init()
:level.onkillscore = level.onplayerkilled; level.onplayerkilled = ::onplayerkilled;
Step 2 - Copy the following somewhere in your file :
onPlayerKilled(einflictor, attacker, idamage, smeansofdeath, sweapon, vdir, shitloc, psoffsettime, deathanimduration) { thread [[level.onkillscore]](einflictor, attacker, idamage, smeansofdeath, sweapon, vdir, shitloc, psoffsettime, deathanimduration); // ^ this is here so you can still score normally attacker iPrintLn("You killed " + self.name + " from " + int(distance(self.origin, attacker.origin)/40) + "m away"); }
-
I'm not going to give an outright copy paste of the code, but I will give you the biggest piece that you need for it.
meterdist = floor( Distance( self.origin, eattacker.origin ) / 46 );
Note that I chose the number 46 to divide by because it seemed the most accurate with testing. It may not be 100% correct but it does the job. Good luck.
-
I used 25 instead of 46. I tried 50, but 25 looked alot more accurate to me.
Edit : nvm, I think somewhere around 40 is indeed better.
-
One CoD world unit is 2.54cm.
And for distance, an easy way is just in compare distance between the attacker andself
(player who's about to get killed) in e.g thelevel.callbackplayerkilled
function. -
-
Cahz said in Code for distance meter for trickshots?:
Ox_ Okay so if one CoD world unit is 2.54cm, then you would actually divide by 39.37.
2.54 cm = 1 unit
100 cm = 39.3700 units = 1 m
Well actually you'd divide by
5000/127
, but maybe just multiply by0.0254
, be easier. -
Ox_ said in Code for distance meter for trickshots?:
Cahz said in Code for distance meter for trickshots?:
Ox_ Okay so if one CoD world unit is 2.54cm, then you would actually divide by 39.37.
2.54 cm = 1 unit
100 cm = 39.3700 units = 1 m
Well actually you'd divide by
5000/127
, but maybe just multiply by0.0254
, be easier.5000/127 is literally 39.37... which works totally fine by the way. So no need to multiply
-
Cahz said in Code for distance meter for trickshots?:
Ox_ said in Code for distance meter for trickshots?:
Cahz said in Code for distance meter for trickshots?:
Ox_ Okay so if one CoD world unit is 2.54cm, then you would actually divide by 39.37.
2.54 cm = 1 unit
100 cm = 39.3700 units = 1 m
Well actually you'd divide by
5000/127
, but maybe just multiply by0.0254
, be easier.5000/127 is literally 39.37... which works totally fine by the way. So no need to multiply
It's not, but sure, it's close enough for most uses.
-
I already changed my post to 40 yesterday. That's more than good enough, it doesn't need to be dead-on precise.
-
I also feel so fucking dumb for not posting the right thing. I thought OP wanted a function that detects a player you almost hit and the distance between the impact and the player, not the distance from the player you just killed...
Edit )
Here's what you want to do. I also edited my first reply to include this script instead, sorry for the confusion. While I'm at it I included the "more precise" multiplier too since it seems to cause alot of debate for whatever reason.Step 1 - Add the following in
init()
:level.onkillscore = level.onplayerkilled; level.onplayerkilled = ::onplayerkilled;
Step 2 - Copy the following somewhere in your file :
onPlayerKilled(einflictor, attacker, idamage, smeansofdeath, sweapon, vdir, shitloc, psoffsettime, deathanimduration) { thread [[level.onkillscore]](einflictor, attacker, idamage, smeansofdeath, sweapon, vdir, shitloc, psoffsettime, deathanimduration); // ^ this is here so you can still score normally attacker iPrintLn("You killed " + self.name + " from " + int(distance(self.origin, attacker.origin)*0.0254) + "m away"); }
-
Sass how to make it so every one sees the message
-
Duui YT said in [Support] Code for distance meter for trickshots?:
Sass how to make it so every one sees the message
Change thisattacker iPrintLn("You killed " + self.name + " from " + int(distance(self.origin, attacker.origin)*0.0254) + "m away");
iPrintLn("You killed " + self.name + " from " + int(distance(self.origin, attacker.origin)*0.0254) + "m away");
To this. You should try experimenting and figuring out some things yourself too
-
Deicide can i do this or it will not work
iPrintLn("+ self.name + " + self.name + " from " + int(distance(self.origin, attacker.origin)*0.0254) + "m away");
-
it did not work it says it when someone dies not when they get a kill
-
It does work, I tested it just now. I'm not sure what the problem is.
-
Sass this is what i do as Deicide told me but it says it when someone dies not when they get a kill
onPlayerKilled(einflictor, attacker, idamage, smeansofdeath, sweapon, vdir, shitloc, psoffsettime, deathanimduration) { thread [[level.onkillscore]](einflictor, attacker, idamage, smeansofdeath, sweapon, vdir, shitloc, psoffsettime, deathanimduration); // ^ this is here so you can still score normally iPrintLn(int(distance(self.origin, attacker.origin)*0.0254) + "m away"); }
-
Duui YT
When someone dies, does another player not get a kill?
1 KILL (attacker) = 1 DEATH (self)You're literally making no sense when it comes to this. Instead of spamming the forums with questions over and over, how about do some research into the game files and ask YOURSELF, "why is this script behaving like this?" Instead of asking a million questions on the forums. (Which could all be solved on your own if you put a little time into learning)
I personally don't like the idea of someone running a server that only knows how to copy and paste other people's scripts, but couldn't tell you how any of them work. This is exactly the type of stuff that leads to servers crashing more frequently due to poorly made/unstable scripts being used by someone who doesn't know that it is poorly made/unstable.
Research GSC there's plenty of information out on the internet.
-
Backing up on what Cahz , this is basic GSC knowledge. If you're willing to host servers with mods, you should atleast take the time to learn and comprehend how the script works. We could babysit you through the whole process, but that will never play in your favor and you'll be stuck because of the smallest issues such as this one. You can find plenty of resources and even tutorials with enough searching. Please take some time to learn, it will help you alot.