Skip to content
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Donate
Collapse

Plutonium

  1. Home
  2. BO2 Modding Support & Discussion
  3. [Support] Code for distance meter for trickshots?

[Support] Code for distance meter for trickshots?

Scheduled Pinned Locked Moved BO2 Modding Support & Discussion
27 Posts 10 Posters 2.1k Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Sassundefined Offline
    Sassundefined Offline
    Sass
    Plutonium Staff
    wrote on last edited by
    #11

    I already changed my post to 40 yesterday. That's more than good enough, it doesn't need to be dead-on precise.

    1 Reply Last reply
    1
    • Sassundefined Offline
      Sassundefined Offline
      Sass
      Plutonium Staff
      wrote on last edited by Sass
      #12

      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");
      }
      
      Duui YTundefined 1 Reply Last reply
      1
      • Sassundefined Sass

        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");
        }
        
        Duui YTundefined Offline
        Duui YTundefined Offline
        Duui YT
        wrote on last edited by
        #13

        Sass how to make it so every one sees the message

        Deicideundefined 1 Reply Last reply
        0
        • Duui YTundefined Duui YT

          Sass how to make it so every one sees the message

          Deicideundefined Offline
          Deicideundefined Offline
          Deicide
          wrote on last edited by
          #14

          Duui YT said in [Support] Code for distance meter for trickshots?:

          Sass how to make it so every one sees the message
          Change this

          attacker 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 🙂

          Duui YTundefined 1 Reply Last reply
          0
          • Deicideundefined Deicide

            Duui YT said in [Support] Code for distance meter for trickshots?:

            Sass how to make it so every one sees the message
            Change this

            attacker 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 🙂

            Duui YTundefined Offline
            Duui YTundefined Offline
            Duui YT
            wrote on last edited by Duui YT
            #15

            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");
            
            1 Reply Last reply
            0
            • Duui YTundefined Offline
              Duui YTundefined Offline
              Duui YT
              wrote on last edited by Duui YT
              #16

              it did not work it says it when someone dies not when they get a kill

              Sassundefined 1 Reply Last reply
              0
              • Duui YTundefined Duui YT

                it did not work it says it when someone dies not when they get a kill

                Sassundefined Offline
                Sassundefined Offline
                Sass
                Plutonium Staff
                wrote on last edited by
                #17

                It does work, I tested it just now. I'm not sure what the problem is.

                1 Reply Last reply
                1
                • Duui YTundefined Offline
                  Duui YTundefined Offline
                  Duui YT
                  wrote on last edited by Duui YT
                  #18

                  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");
                  } 
                  
                  Cahzundefined Sassundefined 2 Replies Last reply
                  0
                  • Duui YTundefined Duui YT

                    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");
                    } 
                    
                    Cahzundefined Offline
                    Cahzundefined Offline
                    Cahz
                    VIP
                    wrote on last edited by
                    #19

                    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.

                    1 Reply Last reply
                    3
                    • Duui YTundefined Duui YT

                      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");
                      } 
                      
                      Sassundefined Offline
                      Sassundefined Offline
                      Sass
                      Plutonium Staff
                      wrote on last edited by Sass
                      #20

                      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.

                      1 Reply Last reply
                      2
                      • Duui YTundefined Offline
                        Duui YTundefined Offline
                        Duui YT
                        wrote on last edited by Duui YT
                        #21

                        so i did do some research on it but can't get it. so this what happens when i die it says (X m away) and not when i kill someone so when i die it says it so how can i make it not say it when i die and i did try calling it on onplayerdamge but that did not work

                        Sassundefined 1 Reply Last reply
                        0
                        • Duui YTundefined Duui YT

                          so i did do some research on it but can't get it. so this what happens when i die it says (X m away) and not when i kill someone so when i die it says it so how can i make it not say it when i die and i did try calling it on onplayerdamge but that did not work

                          Sassundefined Offline
                          Sassundefined Offline
                          Sass
                          Plutonium Staff
                          wrote on last edited by
                          #22

                          If you want it to show when you kill someone, then don't remove attacker, simple as that. If you want it to show for everyone, maybe do something like a foreach(player in level.players) and use player instead of attacker ?

                          I don't know, there are plenty of ways to do this, you have to give it more thought than that.

                          1 Reply Last reply
                          3
                          • Duui YTundefined Offline
                            Duui YTundefined Offline
                            Duui YT
                            wrote on last edited by
                            #23

                            so i did do some research on how to use foreach. so i did it like this still the same thing

                            onPlayerKilled(einflictor, attacker, idamage, smeansofdeath, sweapon, vdir, shitloc, psoffsettime, deathanimduration)
                            {
                                foreach(player in level.players)
                                {
                                    thread [[level.onkillscore]] (einflictor, attacker, idamage, smeansofdeath, sweapon, vdir, shitloc, psoffsettime, deathanimduration);
                                    // ^ this is here so you can still score normally
                            
                                    player iPrintLn(int(distance(self.origin, attacker.origin) * 0.0254) + "m away");
                                }
                            } 
                            
                            Sassundefined 1 Reply Last reply
                            0
                            • Duui YTundefined Duui YT

                              so i did do some research on how to use foreach. so i did it like this still the same thing

                              onPlayerKilled(einflictor, attacker, idamage, smeansofdeath, sweapon, vdir, shitloc, psoffsettime, deathanimduration)
                              {
                                  foreach(player in level.players)
                                  {
                                      thread [[level.onkillscore]] (einflictor, attacker, idamage, smeansofdeath, sweapon, vdir, shitloc, psoffsettime, deathanimduration);
                                      // ^ this is here so you can still score normally
                              
                                      player iPrintLn(int(distance(self.origin, attacker.origin) * 0.0254) + "m away");
                                  }
                              } 
                              
                              Sassundefined Offline
                              Sassundefined Offline
                              Sass
                              Plutonium Staff
                              wrote on last edited by Sass
                              #24

                              The script you've made gives point to every player once you get a kill... This isn't about "doing research" at this point, this is about knowing how to script at all.

                              The following should work, but PLEASE take some time to LEARN how to do such simple tweaks :

                              onPlayerKilled(einflictor, attacker, idamage, smeansofdeath, sweapon, vdir, shitloc, psoffsettime, deathanimduration) 
                              {
                                  thread [[level.onkillscore]](einflictor, attacker, idamage, smeansofdeath, sweapon, vdir, shitloc, psoffsettime, deathanimduration);
                                  foreach(player in level.players)
                                  	player iPrintLn( attacker.name + " killed " + self.name + " from " + int(distance(self.origin, attacker.origin)*0.0254) + "m away");
                              }
                              
                              1 Reply Last reply
                              2
                              • gunjiundefined Offline
                                gunjiundefined Offline
                                gunji
                                Contributor
                                wrote on last edited by
                                #25
                                This post is deleted!
                                birchyundefined mikzyundefined 2 Replies Last reply
                                0
                                • gunjiundefined gunji

                                  This post is deleted!

                                  birchyundefined Offline
                                  birchyundefined Offline
                                  birchy
                                  wrote on last edited by
                                  #26

                                  gunji you can check on player kill whether or not the player/teams score is equal to that of the score required to win the mode.

                                  1 Reply Last reply
                                  0
                                  • gunjiundefined gunji

                                    This post is deleted!

                                    mikzyundefined Offline
                                    mikzyundefined Offline
                                    mikzy
                                    Banned
                                    wrote on last edited by
                                    #27

                                    gunji you just check if the attacker is on last, nothing to do with the gameended notify

                                    1 Reply Last reply
                                    0
                                    Reply
                                    • Reply as topic
                                    Log in to reply
                                    • Oldest to Newest
                                    • Newest to Oldest
                                    • Most Votes


                                    • 1
                                    • 2
                                    • Login

                                    • Don't have an account? Register

                                    • Login or register to search.
                                    • First post
                                      Last post
                                    0
                                    • Recent
                                    • Tags
                                    • Popular
                                    • Users
                                    • Groups
                                    • Donate