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

Plutonium

  1. Home
  2. BO2 Modding Releases & Resources
  3. Score multipler

Score multipler

Scheduled Pinned Locked Moved BO2 Modding Releases & Resources
10 Posts 4 Posters 893 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Decundefined Offline
    Decundefined Offline
    Dec Contributor
    wrote on last edited by
    #1
    #include common_scripts\utility;
    #include maps\mp\_utility;
    #include maps\mp\zombies\_zm_utility;
    #include maps\mp\zombies\_zm_stats;
    #include maps\mp\zombies\_zm_pers_upgrades_functions;
    #include maps\mp\zombies\_zm_score;
    
    main() {
    	replaceFunc(maps\mp\zombies\_zm_score::player_add_points, ::new_player_add_points);
    }
    
    new_player_add_points( event, mod, hit_location, is_dog, zombie_team, damage_weapon )
    {
        if ( level.intermission )
            return;
    
        if ( !is_player_valid( self ) )
            return;
    
        player_points = 0;
        team_points = 0;
        multiplier = get_points_multiplier( self );
    
    	switch ( mod )
    	{
    		case "MOD_MELEE":
    			self.score += 10 * int(self.pers["level"]);
    			break;
            case "MOD_GRENADE":
                self.score += 10 * int(self.pers["level"]);
    			break;
    	}
    
        switch ( event )
        {
            case "death":
                player_points = get_zombie_death_player_points();
                team_points = get_zombie_death_team_points();
                points = self player_add_points_kill_bonus( mod, hit_location );
    
    			self.score += 10 * int(self.pers["level"]);
    
                if ( level.zombie_vars[self.team]["zombie_powerup_insta_kill_on"] == 1 && mod == "MOD_UNKNOWN" )
                    points = points * 2;
    
                player_points = player_points + points;
    
                if ( team_points > 0 )
                    team_points = team_points + points;
    
                if ( mod == "MOD_GRENADE" || mod == "MOD_GRENADE_SPLASH" )
                {
                    self maps\mp\zombies\_zm_stats::increment_client_stat( "grenade_kills" );
                    self maps\mp\zombies\_zm_stats::increment_player_stat( "grenade_kills" );
                }
    
                break;
            case "ballistic_knife_death":
                player_points = get_zombie_death_player_points() + level.zombie_vars["zombie_score_bonus_melee"];
                self score_cf_increment_info( "death_melee" );
    			self.score += 10 * int(self.pers["level"]);
                break;
            case "damage_light":
                player_points = level.zombie_vars["zombie_score_damage_light"];
                self score_cf_increment_info( "damage" );
    			self.score += 10 * int(self.pers["level"]);
                break;
            case "damage":
                player_points = level.zombie_vars["zombie_score_damage_normal"];
                self score_cf_increment_info( "damage" );
    			self.score += 10 * int(self.pers["level"]);
                break;
            case "damage_ads":
                player_points = int( level.zombie_vars["zombie_score_damage_normal"] * 1.25 );
                self score_cf_increment_info( "damage" );
    			self.score += 10 * int(self.pers["level"]);
                break;
            case "carpenter_powerup":
            case "rebuild_board":
                player_points = mod;
    			self.score += 1 * int(self.pers["level"]);
                break;
            case "bonus_points_powerup":
                player_points = mod;
    			self.score += 1 * int(self.pers["level"]);
                break;
            case "nuke_powerup":
                player_points = mod;
                team_points = mod;
    			self.score += 1 * int(self.pers["level"]);
                break;
            case "jetgun_fling":
            case "riotshield_fling":
            case "thundergun_fling":
                player_points = mod;
                break;
            case "hacker_transfer":
                player_points = mod;
                break;
            case "reviver":
                player_points = mod;
    			self.score += 10 * int(self.pers["level"]);
                break;
            case "vulture":
                player_points = mod;
                break;
            case "build_wallbuy":
                player_points = mod;
                break;
            default:
                assert( 0, "Unknown point event" );
                break;
        }
    
        player_points = multiplier * round_up_score( player_points, 5 );
        team_points = multiplier * round_up_score( team_points, 5 );
    
        if ( is_true( level.pers_upgrade_pistol_points ) )
            player_points = self maps\mp\zombies\_zm_pers_upgrades_functions::pers_upgrade_pistol_points_set_score( player_points, event, mod, damage_weapon );
    
        self add_to_player_score( player_points );
        self.pers["score"] = self.score;
    
        if ( isdefined( level._game_module_point_adjustment ) )
            level [[ level._game_module_point_adjustment ]]( self, zombie_team, player_points );
    }
    

    few people keep asking me, this is how I do it at least which works

    Chiky-158undefined 1 Reply Last reply
    1
    • davidios23undefined Offline
      davidios23undefined Offline
      davidios23
      wrote on last edited by
      #2

      What does this do?

      Decundefined 1 Reply Last reply
      0
      • Decundefined Offline
        Decundefined Offline
        Dec Contributor
        replied to davidios23 on last edited by Dec
        #3

        davidios23

        for every hit on a zombie or window board placed and a couple other actions it will give the player 10 * level

        change "self.score += 10 * int(self.pers["level"]);" to "self.score += 50;" and it will give players + 50 on top of the normal 10 they get per hit and kill

        its what servers use to give multiplied points to players based on actions like hit, nuke, board placed, revived player, zombie death, grenade kill and melee kill pretty sure you can add more if you know the names of the action as well

        1 Reply Last reply
        0
        • Chiky-158undefined Offline
          Chiky-158undefined Offline
          Chiky-158
          replied to Dec on last edited by Chiky-158
          #4

          Dec HELLO... YOU COULD GIVE ME A GUIDE AS TO AGREGATE THE SCORE MULTIPLER PLIS

          asunaqqundefined Decundefined 3 Replies Last reply
          1
          • asunaqqundefined Offline
            asunaqqundefined Offline
            asunaqq
            replied to Chiky-158 on last edited by
            #5

            Chiky-158 idk change the multiplier from 10 to someting else? 🚮

            Decundefined 1 Reply Last reply
            0
            • Decundefined Offline
              Decundefined Offline
              Dec Contributor
              replied to Chiky-158 on last edited by
              #6

              Chiky-158 just got back from college gimmie some time to eat and what not ill write something to make it easier to implement!

              1 Reply Last reply
              0
              • Decundefined Offline
                Decundefined Offline
                Dec Contributor
                replied to asunaqq on last edited by
                #7

                asunaqq Not a lot of people use the same system like most people use ranks for levels when they should be levels for example i use "int(self.pers["level"]);" but other people will use something like "player.rank" or "player.pers['rank']" or so on will just add a changeable dvar to make it easier

                1 Reply Last reply
                0
                • Decundefined Offline
                  Decundefined Offline
                  Dec Contributor
                  replied to Chiky-158 on last edited by
                  #8

                  Chiky-158

                  #include maps\mp\zombies\_zm_score;
                  
                  main() {
                  	replaceFunc(maps\mp\zombies\_zm_score::player_add_points, ::new_player_add_points);
                  }
                  
                  init()
                  {
                      // Add 'set score_multiplier 10' to your config file
                      level.ClipstoneZombies["score_multiplier"] = GetDvar("api_password");
                  }
                  
                  new_player_add_points( event, mod, hit_location, is_dog, zombie_team, damage_weapon )
                  {
                      if ( level.intermission )
                          return;
                  
                      if ( !is_player_valid( self ) )
                          return;
                  
                      player_points = 0;
                      team_points = 0;
                      multiplier = get_points_multiplier( self );
                  
                  	switch ( mod )
                  	{
                  		case "MOD_MELEE":
                  			self.score += 10 * int(level.ClipstoneZombies["score_multiplier"]);
                  			break;
                          case "MOD_GRENADE":
                              self.score += 10 * int(self.pers["level"]);
                  			break;
                  	}
                  
                      switch ( event )
                      {
                          case "death":
                              player_points = get_zombie_death_player_points();
                              team_points = get_zombie_death_team_points();
                              points = self player_add_points_kill_bonus( mod, hit_location );
                  
                  			self.score += 10 * int(level.ClipstoneZombies["score_multiplier"]);
                  
                              if ( level.zombie_vars[self.team]["zombie_powerup_insta_kill_on"] == 1 && mod == "MOD_UNKNOWN" )
                                  points = points * 2;
                  
                              player_points = player_points + points;
                  
                              if ( team_points > 0 )
                                  team_points = team_points + points;
                  
                              if ( mod == "MOD_GRENADE" || mod == "MOD_GRENADE_SPLASH" )
                              {
                                  self maps\mp\zombies\_zm_stats::increment_client_stat( "grenade_kills" );
                                  self maps\mp\zombies\_zm_stats::increment_player_stat( "grenade_kills" );
                              }
                  
                              break;
                          case "ballistic_knife_death":
                              player_points = get_zombie_death_player_points() + level.zombie_vars["zombie_score_bonus_melee"];
                              self score_cf_increment_info( "death_melee" );
                  			self.score += 10 * int(level.ClipstoneZombies["score_multiplier"]);
                              break;
                          case "damage_light":
                              player_points = level.zombie_vars["zombie_score_damage_light"];
                              self score_cf_increment_info( "damage" );
                  			self.score += 10 * int(level.ClipstoneZombies["score_multiplier"]);
                              break;
                          case "damage":
                              player_points = level.zombie_vars["zombie_score_damage_normal"];
                              self score_cf_increment_info( "damage" );
                  			self.score += 10 * int(level.ClipstoneZombies["score_multiplier"]);
                              break;
                          case "damage_ads":
                              player_points = int( level.zombie_vars["zombie_score_damage_normal"] * 1.25 );
                              self score_cf_increment_info( "damage" );
                  			self.score += 10 * int(level.ClipstoneZombies["score_multiplier"]);
                              break;
                          case "carpenter_powerup":
                          case "rebuild_board":
                              player_points = mod;
                  			self.score += 1 * int(level.ClipstoneZombies["score_multiplier"]);
                              break;
                          case "bonus_points_powerup":
                              player_points = mod;
                  			self.score += 1 * int(level.ClipstoneZombies["score_multiplier"]);
                              break;
                          case "nuke_powerup":
                              player_points = mod;
                              team_points = mod;
                  			self.score += 1 * int(level.ClipstoneZombies["score_multiplier"]);
                              break;
                          case "jetgun_fling":
                          case "riotshield_fling":
                          case "thundergun_fling":
                              player_points = mod;
                              break;
                          case "hacker_transfer":
                              player_points = mod;
                              break;
                          case "reviver":
                              player_points = mod;
                  			self.score += 10 * int(level.ClipstoneZombies["score_multiplier"]);
                              break;
                          case "vulture":
                              player_points = mod;
                              break;
                          case "build_wallbuy":
                              player_points = mod;
                              break;
                          default:
                              assert( 0, "Unknown point event" );
                              break;
                      }
                  
                      player_points = multiplier * round_up_score( player_points, 5 );
                      team_points = multiplier * round_up_score( team_points, 5 );
                  
                      if ( is_true( level.pers_upgrade_pistol_points ) )
                          player_points = self maps\mp\zombies\_zm_pers_upgrades_functions::pers_upgrade_pistol_points_set_score( player_points, event, mod, damage_weapon );
                  
                      self add_to_player_score( player_points );
                      self.pers["score"] = self.score;
                  
                      if ( isdefined( level._game_module_point_adjustment ) )
                          level [[ level._game_module_point_adjustment ]]( self, zombie_team, player_points );
                  }
                  

                  Assuming this should work but i have not tested it!

                  asunaqqundefined 1 Reply Last reply
                  0
                  • asunaqqundefined Offline
                    asunaqqundefined Offline
                    asunaqq
                    replied to Dec on last edited by
                    #9

                    Dec good boy

                    Decundefined 1 Reply Last reply
                    1
                    • Decundefined Offline
                      Decundefined Offline
                      Dec Contributor
                      replied to asunaqq on last edited by
                      #10

                      asunaqq

                      same

                      1 Reply Last reply
                      1
                      • Decundefined Dec referenced this topic on
                      • Decundefined Dec referenced this topic on

                      • Login

                      • Don't have an account? Register

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